X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=dali%2Fpublic-api%2Fadaptor-framework%2Fwindow.cpp;h=f1b67fe2f1a29646e456d091cdb6a26d58159010;hb=9d6174cffaea69180402db990f4e27edb067481b;hp=2e6a28c739ee898c2a91204943d3f3e73c676d4b;hpb=e4b2c8c6447fd947245d10cf14481d1fb8788a26;p=platform%2Fcore%2Fuifw%2Fdali-adaptor.git diff --git a/dali/public-api/adaptor-framework/window.cpp b/dali/public-api/adaptor-framework/window.cpp index 2e6a28c..f1b67fe 100644 --- a/dali/public-api/adaptor-framework/window.cpp +++ b/dali/public-api/adaptor-framework/window.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 Samsung Electronics Co., Ltd. + * Copyright (c) 2020 Samsung Electronics Co., Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,35 +22,49 @@ #include // INTERNAL INCLUDES -#include -#include #include +#include +#include namespace Dali { - -class DALI_INTERNAL DragAndDropDetector : public BaseHandle {}; // Empty class only required to compile Deprecated API GetDragAndDropDetector - Window Window::New(PositionSize posSize, const std::string& name, bool isTransparent) { - Internal::Adaptor::Window* window = Internal::Adaptor::Window::New(posSize, name, "", isTransparent); - - Dali::Adaptor& adaptor = Internal::Adaptor::Adaptor::Get(); - Integration::SceneHolder sceneHolder = Integration::SceneHolder( window ); - Internal::Adaptor::Adaptor::GetImplementation( adaptor ).AddWindow( &sceneHolder, name, "", isTransparent ); - - return Window(window); + return Dali::Window::New(posSize, name, "", isTransparent); } Window Window::New(PositionSize posSize, const std::string& name, const std::string& className, bool isTransparent) { - Internal::Adaptor::Window* window = Internal::Adaptor::Window::New(posSize, name, className, isTransparent); + Window newWindow; + + const bool isAdaptorAvailable = Dali::Adaptor::IsAvailable(); + bool isNewWindowAllowed = true; + + if(isAdaptorAvailable) + { + Dali::Adaptor& adaptor = Internal::Adaptor::Adaptor::Get(); + isNewWindowAllowed = Internal::Adaptor::Adaptor::GetImplementation(adaptor).IsMultipleWindowSupported(); + } + + if(isNewWindowAllowed) + { + Internal::Adaptor::Window* window = Internal::Adaptor::Window::New(posSize, name, className, isTransparent); - Dali::Adaptor& adaptor = Internal::Adaptor::Adaptor::Get(); - Integration::SceneHolder sceneHolder = Integration::SceneHolder( window ); - Internal::Adaptor::Adaptor::GetImplementation( adaptor ).AddWindow( &sceneHolder, name, className, isTransparent ); + Integration::SceneHolder sceneHolder = Integration::SceneHolder(window); - return Window(window); + if(isAdaptorAvailable) + { + Dali::Adaptor& adaptor = Internal::Adaptor::Adaptor::Get(); + Internal::Adaptor::Adaptor::GetImplementation(adaptor).AddWindow(sceneHolder); + } + newWindow = Window(window); + } + else + { + DALI_LOG_ERROR("This device can't support multiple windows.\n"); + } + + return newWindow; } Window::Window() @@ -61,83 +75,57 @@ Window::~Window() { } -Window::Window(const Window& handle) -: BaseHandle(handle) -{ -} +Window::Window(const Window& copy) = default; -Window& Window::operator=(const Window& rhs) -{ - BaseHandle::operator=(rhs); - return *this; -} +Window& Window::operator=(const Window& rhs) = default; + +Window::Window(Window&& rhs) = default; -void Window::Add( Dali::Actor actor ) +Window& Window::operator=(Window&& rhs) = default; + +void Window::Add(Dali::Actor actor) { - GetImplementation( *this ).Add( actor ); + GetImplementation(*this).Add(actor); } -void Window::Remove( Dali::Actor actor ) +void Window::Remove(Dali::Actor actor) { - GetImplementation( *this ).Remove( actor ); + GetImplementation(*this).Remove(actor); } -void Window::SetBackgroundColor( const Vector4& color ) +void Window::SetBackgroundColor(const Vector4& color) { - GetImplementation( *this ).SetBackgroundColor( color ); + GetImplementation(*this).SetBackgroundColor(color); } Vector4 Window::GetBackgroundColor() const { - return GetImplementation( *this ).GetBackgroundColor(); + return GetImplementation(*this).GetBackgroundColor(); } Layer Window::GetRootLayer() const { - return GetImplementation( *this ).GetRootLayer(); + return GetImplementation(*this).GetRootLayer(); } uint32_t Window::GetLayerCount() const { - return GetImplementation( *this ).GetLayerCount(); + return GetImplementation(*this).GetLayerCount(); } -Layer Window::GetLayer( uint32_t depth ) const +Layer Window::GetLayer(uint32_t depth) const { - return GetImplementation( *this ).GetLayer( depth ); + return GetImplementation(*this).GetLayer(depth); } -void Window::ShowIndicator( IndicatorVisibleMode visibleMode ) +Uint16Pair Window::GetDpi() const { - DALI_LOG_WARNING_NOFN("DEPRECATION WARNING: ShowIndicator is deprecated and will be removed from next release.\n" ); - - GetImplementation(*this).ShowIndicator( visibleMode ); + return GetImplementation(*this).GetDpi(); } -Window::IndicatorSignalType& Window::IndicatorVisibilityChangedSignal() +void Window::SetClass(std::string name, std::string klass) { - DALI_LOG_WARNING_NOFN("DEPRECATION WARNING: IndicatorVisibilityChangedSignal is deprecated and will be removed from next release.\n" ); - - return GetImplementation(*this).IndicatorVisibilityChangedSignal(); -} - -void Window::SetIndicatorBgOpacity( IndicatorBgOpacity opacity ) -{ - DALI_LOG_WARNING_NOFN("DEPRECATION WARNING: SetIndicatorBgOpacity is deprecated and will be removed from next release.\n" ); - - GetImplementation(*this).SetIndicatorBgOpacity( opacity ); -} - -void Window::RotateIndicator( WindowOrientation orientation ) -{ - DALI_LOG_WARNING_NOFN("DEPRECATION WARNING: RotateIndicator is deprecated and will be removed from next release.\n" ); - - GetImplementation(*this).RotateIndicator( orientation ); -} - -void Window::SetClass( std::string name, std::string klass ) -{ - GetImplementation(*this).SetClass( name, klass ); + GetImplementation(*this).SetClass(name, klass); } void Window::Raise() @@ -155,46 +143,39 @@ void Window::Activate() GetImplementation(*this).Activate(); } -void Window::AddAvailableOrientation( WindowOrientation orientation ) +void Window::AddAvailableOrientation(WindowOrientation orientation) { - GetImplementation(*this).AddAvailableOrientation( orientation ); + GetImplementation(*this).AddAvailableOrientation(orientation); } -void Window::RemoveAvailableOrientation( WindowOrientation orientation ) +void Window::RemoveAvailableOrientation(WindowOrientation orientation) { - GetImplementation(*this).RemoveAvailableOrientation( orientation ); + GetImplementation(*this).RemoveAvailableOrientation(orientation); } -void Window::SetPreferredOrientation( Dali::Window::WindowOrientation orientation ) +void Window::SetPreferredOrientation(WindowOrientation orientation) { - GetImplementation(*this).SetPreferredOrientation( orientation ); + GetImplementation(*this).SetPreferredOrientation(orientation); } -Dali::Window::WindowOrientation Window::GetPreferredOrientation() +WindowOrientation Window::GetPreferredOrientation() { return GetImplementation(*this).GetPreferredOrientation(); } -DragAndDropDetector Window::GetDragAndDropDetector() const -{ - DALI_LOG_WARNING_NOFN("DEPRECATION WARNING: GetDragAndDropDetector is deprecated and will be removed from the next release.\n" ); - DALI_ASSERT_ALWAYS( &GetImplementation( *this ) == GetObjectPtr() && "Empty Handle" ); - return Dali::DragAndDropDetector(); -} - Any Window::GetNativeHandle() const { return GetImplementation(*this).GetNativeHandle(); } -Window::FocusSignalType& Window::FocusChangedSignal() +Window::FocusChangeSignalType& Window::FocusChangeSignal() { - return GetImplementation(*this).FocusChangedSignal(); + return GetImplementation(*this).FocusChangeSignal(); } -void Window::SetAcceptFocus( bool accept ) +void Window::SetAcceptFocus(bool accept) { - GetImplementation(*this).SetAcceptFocus( accept ); + GetImplementation(*this).SetAcceptFocus(accept); } bool Window::IsFocusAcceptable() const @@ -222,64 +203,64 @@ unsigned int Window::GetSupportedAuxiliaryHintCount() const return GetImplementation(*this).GetSupportedAuxiliaryHintCount(); } -std::string Window::GetSupportedAuxiliaryHint( unsigned int index ) const +std::string Window::GetSupportedAuxiliaryHint(unsigned int index) const { - return GetImplementation(*this).GetSupportedAuxiliaryHint( index ); + return GetImplementation(*this).GetSupportedAuxiliaryHint(index); } -unsigned int Window::AddAuxiliaryHint( const std::string& hint, const std::string& value ) +unsigned int Window::AddAuxiliaryHint(const std::string& hint, const std::string& value) { - return GetImplementation(*this).AddAuxiliaryHint( hint, value ); + return GetImplementation(*this).AddAuxiliaryHint(hint, value); } -bool Window::RemoveAuxiliaryHint( unsigned int id ) +bool Window::RemoveAuxiliaryHint(unsigned int id) { - return GetImplementation(*this).RemoveAuxiliaryHint( id ); + return GetImplementation(*this).RemoveAuxiliaryHint(id); } -bool Window::SetAuxiliaryHintValue( unsigned int id, const std::string& value ) +bool Window::SetAuxiliaryHintValue(unsigned int id, const std::string& value) { - return GetImplementation(*this).SetAuxiliaryHintValue( id, value ); + return GetImplementation(*this).SetAuxiliaryHintValue(id, value); } -std::string Window::GetAuxiliaryHintValue( unsigned int id ) const +std::string Window::GetAuxiliaryHintValue(unsigned int id) const { - return GetImplementation(*this).GetAuxiliaryHintValue( id ); + return GetImplementation(*this).GetAuxiliaryHintValue(id); } -unsigned int Window::GetAuxiliaryHintId( const std::string& hint ) const +unsigned int Window::GetAuxiliaryHintId(const std::string& hint) const { - return GetImplementation(*this).GetAuxiliaryHintId( hint ); + return GetImplementation(*this).GetAuxiliaryHintId(hint); } -void Window::SetInputRegion( const Rect< int >& inputRegion ) +void Window::SetInputRegion(const Rect& inputRegion) { - return GetImplementation(*this).SetInputRegion( inputRegion ); + return GetImplementation(*this).SetInputRegion(inputRegion); } -void Window::SetType( Window::Type type ) +void Window::SetType(WindowType type) { - GetImplementation(*this).SetType( type ); + GetImplementation(*this).SetType(type); } -Window::Type Window::GetType() const +WindowType Window::GetType() const { return GetImplementation(*this).GetType(); } -bool Window::SetNotificationLevel( Window::NotificationLevel::Type level ) +bool Window::SetNotificationLevel(WindowNotificationLevel level) { - return GetImplementation(*this).SetNotificationLevel( level ); + return GetImplementation(*this).SetNotificationLevel(level); } -Window::NotificationLevel::Type Window::GetNotificationLevel() const +WindowNotificationLevel Window::GetNotificationLevel() const { return GetImplementation(*this).GetNotificationLevel(); } -void Window::SetOpaqueState( bool opaque ) +void Window::SetOpaqueState(bool opaque) { - GetImplementation(*this).SetOpaqueState( opaque ); + GetImplementation(*this).SetOpaqueState(opaque); } bool Window::IsOpaqueState() const @@ -287,19 +268,19 @@ bool Window::IsOpaqueState() const return GetImplementation(*this).IsOpaqueState(); } -bool Window::SetScreenOffMode(Window::ScreenOffMode::Type screenMode) +bool Window::SetScreenOffMode(WindowScreenOffMode screenMode) { return GetImplementation(*this).SetScreenOffMode(screenMode); } -Window::ScreenOffMode::Type Window::GetScreenOffMode() const +WindowScreenOffMode Window::GetScreenOffMode() const { return GetImplementation(*this).GetScreenOffMode(); } -bool Window::SetBrightness( int brightness ) +bool Window::SetBrightness(int brightness) { - return GetImplementation(*this).SetBrightness( brightness ); + return GetImplementation(*this).SetBrightness(brightness); } int Window::GetBrightness() const @@ -307,14 +288,14 @@ int Window::GetBrightness() const return GetImplementation(*this).GetBrightness(); } -Window::ResizedSignalType& Window::ResizedSignal() +Window::ResizeSignalType& Window::ResizeSignal() { - return GetImplementation(*this).ResizedSignal(); + return GetImplementation(*this).ResizeSignal(); } -void Window::SetSize( Window::WindowSize size ) +void Window::SetSize(Window::WindowSize size) { - GetImplementation(*this).SetSize( size ); + GetImplementation(*this).SetSize(size); } Window::WindowSize Window::GetSize() const @@ -322,9 +303,9 @@ Window::WindowSize Window::GetSize() const return GetImplementation(*this).GetSize(); } -void Window::SetPosition( Window::WindowPosition position ) +void Window::SetPosition(Window::WindowPosition position) { - GetImplementation(*this).SetPosition( position ); + GetImplementation(*this).SetPosition(position); } Window::WindowPosition Window::GetPosition() const @@ -332,13 +313,28 @@ Window::WindowPosition Window::GetPosition() const return GetImplementation(*this).GetPosition(); } -void Window::SetTransparency( bool transparent ) +void Window::SetTransparency(bool transparent) +{ + GetImplementation(*this).SetTransparency(transparent); +} + +Dali::RenderTaskList Window::GetRenderTaskList() +{ + return GetImplementation(*this).GetRenderTaskList(); +} + +Window::KeyEventSignalType& Window::KeyEventSignal() +{ + return GetImplementation(*this).KeyEventSignal(); +} + +Window::TouchEventSignalType& Window::TouchedSignal() { - GetImplementation(*this).SetTransparency( transparent ); + return GetImplementation(*this).TouchedSignal(); } -Window::Window( Internal::Adaptor::Window* window ) -: BaseHandle( window ) +Window::Window(Internal::Adaptor::Window* window) +: BaseHandle(window) { }