// EXTERNAL HEADERS
#include <dali/integration-api/core.h>
-#include <dali/integration-api/system-overlay.h>
#include <dali/integration-api/render-task-list-integ.h>
#include <dali/public-api/actors/camera-actor.h>
#include <dali/public-api/render-tasks/render-task.h>
mIndicatorOrientation( Dali::Window::PORTRAIT ),
mNextIndicatorOrientation( Dali::Window::PORTRAIT ),
mIndicatorOpacityMode( Dali::Window::OPAQUE ),
- mOverlay( NULL ),
mAdaptor( NULL ),
mType( Dali::Window::NORMAL ),
mPreferredOrientation( Dali::Window::PORTRAIT ),
{
if( mIndicator )
{
- mOverlay->Remove( mIndicator->GetActor() );
- Dali::RenderTaskList taskList = mOverlay->GetOverlayRenderTasks();
- Dali::RenderTask indicatorTask = taskList.GetTask(0);
- mOverlay->GetOverlayRenderTasks().RemoveTask(indicatorTask);
mIndicator->Close();
}
// Create one overlay for the main window only
Internal::Adaptor::Adaptor& adaptorImpl = Internal::Adaptor::Adaptor::GetImplementation(adaptor);
- Integration::Core& core = adaptorImpl.GetCore();
- mOverlay = &core.GetSystemOverlay();
-
- // Only create render task list for the overlay once
- if (!mOverlay->GetOverlayRenderTasks())
- {
- Dali::RenderTaskList overlayRenderTaskList = Integration::RenderTaskList::New();
-
- Dali::Actor overlayRootActor = mOverlay->GetDefaultRootActor();
- Dali::CameraActor overlayCameraActor = mOverlay->GetDefaultCameraActor();
- Integration::RenderTaskList::CreateTask( overlayRenderTaskList, overlayRootActor, overlayCameraActor );
-
- mOverlay->SetOverlayRenderTasks( overlayRenderTaskList );
- }
-
mAdaptor = &adaptorImpl;
mAdaptor->AddObserver( *this );
mIndicator->SetOpacityMode( mIndicatorOpacityMode );
Dali::Actor actor = mIndicator->GetActor();
SetIndicatorActorRotation();
- mOverlay->Add(actor);
}
}
// else don't create a hidden indicator