ad84d9575e2856c70d9e503ee78ec72306edefdf
[platform/core/uifw/dali-adaptor.git] / dali / devel-api / adaptor-framework / window-devel.cpp
1 /*
2  * Copyright (c) 2019 Samsung Electronics Co., Ltd.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  * http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  *
16  */
17
18 // EXTERNAL INCLUDES
19 #include <dali/public-api/events/key-event.h>
20 #include <dali/public-api/events/touch-event.h>
21 #include <dali/public-api/events/wheel-event.h>
22
23 // INTERNAL INCLUDES
24 #include <dali/devel-api/adaptor-framework/window-devel.h>
25 #include <dali/internal/window-system/common/window-impl.h>
26
27 namespace Dali
28 {
29
30 namespace DevelWindow
31 {
32
33 void SetPositionSize( Window window, PositionSize positionSize )
34 {
35   GetImplementation( window ).SetPositionSize( positionSize );
36 }
37
38 Dali::RenderTaskList GetRenderTaskList( Window window )
39 {
40   return GetImplementation( window ).GetRenderTaskList();
41 }
42
43 Window Get( Actor actor )
44 {
45   return Internal::Adaptor::Window::Get( actor );
46 }
47
48 EventProcessingFinishedSignalType& EventProcessingFinishedSignal( Window window )
49 {
50   return GetImplementation( window ).EventProcessingFinishedSignal();
51 }
52
53 KeyEventSignalType& KeyEventSignal( Window window )
54 {
55   return GetImplementation( window ).KeyEventSignal();
56 }
57
58 TouchSignalType& TouchSignal( Window window )
59 {
60   return GetImplementation( window ).TouchSignal();
61 }
62
63 WheelEventSignalType& WheelEventSignal( Window window )
64 {
65   return GetImplementation( window ).WheelEventSignal();
66 }
67
68 VisibilityChangedSignalType& VisibilityChangedSignal( Window window )
69 {
70   return GetImplementation( window ).VisibilityChangedSignal();
71 }
72
73 TransitionEffectEventSignalType& TransitionEffectEventSignal( Window window )
74 {
75   return GetImplementation( window ).TransitionEffectEventSignal();
76 }
77
78 void SetParent( Window window, Window parent )
79 {
80   GetImplementation( window ).SetParent( parent );
81 }
82
83 void Unparent( Window window )
84 {
85   GetImplementation( window ).Unparent();
86 }
87
88 Window GetParent( Window window )
89 {
90   return GetImplementation( window ).GetParent();
91 }
92
93 Window DownCast( BaseHandle handle )
94 {
95   return Window( dynamic_cast<Dali::Internal::Adaptor::Window*>( handle.GetObjectPtr()) );
96 }
97
98 Dali::Window::WindowOrientation GetCurrentOrientation( Window window )
99 {
100   return GetImplementation( window ).GetCurrentOrientation();
101 }
102
103 void SetAvailableOrientations( Window window, const Dali::Vector<Dali::Window::WindowOrientation>& orientations )
104 {
105   GetImplementation( window ).SetAvailableOrientations( orientations );
106 }
107
108 } // namespace DevelWindow
109
110 } // namespace Dali