X-Git-Url: http://review.tizen.org/git/?p=platform%2Fcore%2Fuifw%2Fdali-toolkit.git;a=blobdiff_plain;f=automated-tests%2Fsrc%2Fdali-toolkit%2Fdali-toolkit-test-utils%2Ftoolkit-window.cpp;h=b770e14ccfc737b77941f997c94d6f1ca2be98ed;hp=d4c5807324641cb3d995818ae31ce4d948853066;hb=HEAD;hpb=37aa8e50d140ee95be5f03fadbc269a0a239adde diff --git a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/toolkit-window.cpp b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/toolkit-window.cpp index d4c5807..b770e14 100644 --- a/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/toolkit-window.cpp +++ b/automated-tests/src/dali-toolkit/dali-toolkit-test-utils/toolkit-window.cpp @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 Samsung Electronics Co., Ltd. + * Copyright (c) 2024 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,6 +22,7 @@ #include #include #include +#include #define DALI_WINDOW_H #include @@ -31,7 +32,6 @@ using AdaptorImpl = Dali::Internal::Adaptor::Adaptor; namespace Dali { - class Window; /******************************************************************************** @@ -42,32 +42,62 @@ namespace Internal { namespace Adaptor { - -Window::Window( const PositionSize& positionSize ) -: SceneHolder( positionSize ), +Window::Window(const PositionSize& positionSize) +: SceneHolder(positionSize), mFocusChangeSignal(), + mResizeSignal(), + mRotationAngle(90), // dummy angle for test coverage + mVisible(true), mVisibilityChangedSignal() { } Window* Window::New(const PositionSize& positionSize, const std::string& name, const std::string& className, bool isTransparent) { - return new Window( positionSize ); + return new Window(positionSize); +} + +Dali::Window::WindowPosition Window::GetPosition() const +{ + PositionSize positionSize = mRenderSurface.GetPositionSize(); + + return Dali::Window::WindowPosition(positionSize.x, positionSize.y); +} + +PositionSize Window::GetPositionSize() const +{ + return mRenderSurface.GetPositionSize(); } -} // Adaptor -} // Internal +Dali::Window::WindowSize Window::GetSize() const +{ + PositionSize positionSize = mRenderSurface.GetPositionSize(); + + return Dali::Window::WindowSize(positionSize.width, positionSize.height); +} + +void Window::SetPositionSize(PositionSize positionSize) +{ + mRenderSurface.MoveResize(positionSize); + + Uint16Pair newSize(positionSize.width, positionSize.height); + Dali::Window handle(this); + mResizeSignal.Emit(handle, newSize); +} + +} // namespace Adaptor +} // namespace Internal inline Internal::Adaptor::Window& GetImplementation(Dali::Window& window) { - DALI_ASSERT_ALWAYS( window && "Window handle is empty" ); + DALI_ASSERT_ALWAYS(window && "Window handle is empty"); BaseObject& object = window.GetBaseObject(); return static_cast(object); } inline const Internal::Adaptor::Window& GetImplementation(const Dali::Window& window) { - DALI_ASSERT_ALWAYS( window && "Window handle is empty" ); + DALI_ASSERT_ALWAYS(window && "Window handle is empty"); const BaseObject& object = window.GetBaseObject(); return static_cast(object); } @@ -80,151 +110,187 @@ Window::~Window() { } -Window::Window( const Window& copy ) = default; +Window::Window(const Window& copy) = default; -Window& Window::operator=( const Window& rhs ) = default; +Window& Window::operator=(const Window& rhs) = default; -Window::Window( Window&& rhs ) = default; +Window::Window(Window&& rhs) = default; -Window& Window::operator=( Window&& rhs ) = default; +Window& Window::operator=(Window&& rhs) = default; -Dali::Window Window::New( PositionSize windowPosition, const std::string& name, bool isTransparent ) +Dali::Window Window::New(PositionSize windowPosition, const std::string& name, bool isTransparent) { - return New( windowPosition, name, "", isTransparent ); + return New(windowPosition, name, "", isTransparent); } -Dali::Window Window::New(PositionSize windowPosition, const std::string& name, const std::string& className, bool isTransparent ) +Dali::Window Window::New(PositionSize windowPosition, const std::string& name, const std::string& className, bool isTransparent) { - Internal::Adaptor::Window* window = Internal::Adaptor::Window::New( windowPosition, name, className, isTransparent ); + Internal::Adaptor::Window* window = Internal::Adaptor::Window::New(windowPosition, name, className, isTransparent); - Dali::Window result( window ); + Dali::Window result(window); // This will also emit the window created signals - AdaptorImpl::GetImpl( AdaptorImpl::Get() ).AddWindow( window ); + AdaptorImpl::GetImpl(AdaptorImpl::Get()).AddWindow(window); return result; } -Window::Window( Internal::Adaptor::Window* window ) -: BaseHandle( window ) +Window Window::DownCast(BaseHandle handle) +{ + Internal::Adaptor::Window* windowImpl = nullptr; + if(Dali::Adaptor::IsAvailable()) + { + windowImpl = dynamic_cast(handle.GetObjectPtr()); + } + return Dali::Window(windowImpl); +} + +Window::Window(Internal::Adaptor::Window* window) +: BaseHandle(window) { } Integration::Scene Window::GetScene() { - return GetImplementation( *this ).GetScene(); + return GetImplementation(*this).GetScene(); } Dali::RenderSurfaceInterface& Window::GetRenderSurface() { - return GetImplementation( *this ).GetRenderSurface(); + return GetImplementation(*this).GetRenderSurface(); } -void Window::Add( Actor actor ) +void Window::Add(Actor actor) { - GetImplementation( *this ).Add( actor ); + GetImplementation(*this).Add(actor); } -void Window::Remove( Actor actor ) +void Window::Remove(Actor actor) { - GetImplementation( *this ).Remove( actor ); + GetImplementation(*this).Remove(actor); } Dali::Layer Window::GetRootLayer() const { - return GetImplementation( *this ).GetRootLayer(); + return GetImplementation(*this).GetRootLayer(); } -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(); } void Window::Raise() { - GetImplementation( *this ).mFocusChangeSignal.Emit(*this, true); + GetImplementation(*this).mFocusChangeSignal.Emit(*this, true); +} + +void Window::Show() +{ + GetImplementation(*this).mVisible = true; + GetImplementation(*this).mVisibilityChangedSignal.Emit(*this, true); } void Window::Hide() { - GetImplementation( *this ).mVisibilityChangedSignal.Emit( *this, false ); + GetImplementation(*this).mVisible = false; + GetImplementation(*this).mVisibilityChangedSignal.Emit(*this, false); +} + +bool Window::IsVisible() const +{ + return GetImplementation(*this).mVisible; } FocusChangeSignalType& Window::FocusChangeSignal() { - return GetImplementation( *this ).mFocusChangeSignal; + return GetImplementation(*this).mFocusChangeSignal; +} + +ResizeSignalType& Window::ResizeSignal() +{ + return GetImplementation(*this).mResizeSignal; } Window::KeyEventSignalType& Window::KeyEventSignal() { - return GetImplementation( *this ).KeyEventSignal(); + return GetImplementation(*this).KeyEventSignal(); } -Window::TouchSignalType& Window::TouchSignal() +Window::TouchEventSignalType& Window::TouchedSignal() { - return GetImplementation( *this ).TouchSignal(); + return GetImplementation(*this).TouchedSignal(); } -namespace DevelWindow +Dali::RenderTaskList Window::GetRenderTaskList() { + return GetImplementation(*this).GetRenderTaskList(); +} -Window Get( Actor actor ) +namespace DevelWindow +{ +Window Get(Actor actor) { Internal::Adaptor::Window* windowImpl = nullptr; - if ( Dali::Adaptor::IsAvailable() ) + if(Dali::Adaptor::IsAvailable()) { - windowImpl = static_cast( AdaptorImpl::GetImpl( AdaptorImpl::Get() ).GetWindow( actor ) ); + windowImpl = static_cast(AdaptorImpl::GetImpl(AdaptorImpl::Get()).GetWindow(actor)); } - return Dali::Window( windowImpl ); + return Dali::Window(windowImpl); } -Window DownCast( BaseHandle handle ) +void SetPositionSize(Window window, PositionSize positionSize) { - Internal::Adaptor::Window* windowImpl = nullptr; - if ( Dali::Adaptor::IsAvailable() ) - { - windowImpl = dynamic_cast( handle.GetObjectPtr()); - } - return Dali::Window( windowImpl ); + GetImplementation(window).SetPositionSize(positionSize); +} + +int GetPhysicalOrientation(Window window) +{ + return GetImplementation(window).mRotationAngle; +} + +void AddFrameRenderedCallback(Window window, std::unique_ptr callback, int32_t frameId) +{ + CallbackBase::Execute(*callback, frameId); } -void AddFrameRenderedCallback( Window window, std::unique_ptr< CallbackBase > callback, int32_t frameId ) +void AddFramePresentedCallback(Window window, std::unique_ptr callback, int32_t frameId) { - CallbackBase::Execute( *callback, frameId ); + CallbackBase::Execute(*callback, frameId); } -void AddFramePresentedCallback( Window window, std::unique_ptr< CallbackBase > callback, int32_t frameId ) +EventProcessingFinishedSignalType& EventProcessingFinishedSignal(Window window) { - CallbackBase::Execute( *callback, frameId ); + return GetImplementation(window).GetScene().EventProcessingFinishedSignal(); } -EventProcessingFinishedSignalType& EventProcessingFinishedSignal( Window window ) +KeyEventGeneratedSignalType& KeyEventGeneratedSignal(Window window) { - return GetImplementation( window ).GetScene().EventProcessingFinishedSignal(); + return GetImplementation(window).KeyEventGeneratedSignal(); } -KeyEventGeneratedSignalType& KeyEventGeneratedSignal( Window window ) +WheelEventSignalType& WheelEventSignal(Window window) { - return GetImplementation( window ).KeyEventGeneratedSignal(); + return GetImplementation(window).WheelEventSignal(); } -WheelEventSignalType& WheelEventSignal( Window window ) +WheelEventGeneratedSignalType& WheelEventGeneratedSignal(Window window) { - return GetImplementation( window ).WheelEventSignal(); + return GetImplementation(window).WheelEventGeneratedSignal(); } -VisibilityChangedSignalType& VisibilityChangedSignal( Window window ) +VisibilityChangedSignalType& VisibilityChangedSignal(Window window) { - return GetImplementation( window ).mVisibilityChangedSignal; + return GetImplementation(window).mVisibilityChangedSignal; } } // namespace DevelWindow -} // Dali +} // namespace Dali