0110ef72c90c3d2a3615378c1da5da2eafc8ac2d
[platform/core/uifw/dali-toolkit.git] / dali-toolkit / public-api / accessibility-manager / accessibility-manager.cpp
1 /*
2  * Copyright (c) 2015 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 // CLASS HEADER
19 #include <dali-toolkit/public-api/accessibility-manager/accessibility-manager.h>
20
21 // EXTERNAL INCLUDES
22 #include <dali/devel-api/adaptor-framework/singleton-service.h>
23
24 // INTERNAL INCLUDES
25 #include <dali-toolkit/internal/accessibility-manager/accessibility-manager-impl.h>
26
27 namespace Dali
28 {
29
30 namespace Toolkit
31 {
32
33 AccessibilityManager::AccessibilityManager()
34 {
35 }
36
37 AccessibilityManager::~AccessibilityManager()
38 {
39 }
40
41 AccessibilityManager AccessibilityManager::Get()
42 {
43   AccessibilityManager manager;
44
45   // Check whether the accessibility manager is already created
46   SingletonService singletonService( SingletonService::Get() );
47   if ( singletonService )
48   {
49     Dali::BaseHandle handle = singletonService.GetSingleton(typeid(AccessibilityManager));
50     if(handle)
51     {
52       // If so, downcast the handle of singleton to focus manager
53       manager = AccessibilityManager(dynamic_cast<Internal::AccessibilityManager*>(handle.GetObjectPtr()));
54     }
55
56     if(!manager)
57     {
58       // If not, create the accessibility manager and register it as a singleton
59       Internal::AccessibilityManager* internalManager = new Internal::AccessibilityManager();
60       manager = AccessibilityManager( internalManager );
61       internalManager->Initialise();
62       singletonService.Register( typeid(manager), manager );
63     }
64   }
65
66   return manager;
67 }
68
69 AccessibilityManager::AccessibilityManager(Internal::AccessibilityManager *impl)
70   : BaseHandle(impl)
71 {
72 }
73
74 void AccessibilityManager::SetAccessibilityAttribute(Actor actor, AccessibilityAttribute type, const std::string& text)
75 {
76   GetImpl(*this).SetAccessibilityAttribute(actor, type, text);
77 }
78
79 std::string AccessibilityManager::GetAccessibilityAttribute(Actor actor, AccessibilityAttribute type) const
80 {
81   return GetImpl(*this).GetAccessibilityAttribute(actor, type);
82 }
83
84 void AccessibilityManager::SetFocusOrder(Actor actor, const unsigned int order)
85 {
86   GetImpl(*this).SetFocusOrder(actor, order);
87 }
88
89 unsigned int AccessibilityManager::GetFocusOrder(Actor actor) const
90 {
91   return GetImpl(*this).GetFocusOrder(actor);
92 }
93
94 unsigned int AccessibilityManager::GenerateNewFocusOrder() const
95 {
96   return GetImpl(*this).GenerateNewFocusOrder();
97 }
98
99 Actor AccessibilityManager::GetActorByFocusOrder(const unsigned int order)
100 {
101   return GetImpl(*this).GetActorByFocusOrder(order);
102 }
103
104 bool AccessibilityManager::SetCurrentFocusActor(Actor actor)
105 {
106   return GetImpl(*this).SetCurrentFocusActor(actor);
107 }
108
109 Actor AccessibilityManager::GetCurrentFocusActor()
110 {
111   return GetImpl(*this).GetCurrentFocusActor();
112 }
113
114 Actor AccessibilityManager::GetCurrentFocusGroup()
115 {
116   return GetImpl(*this).GetCurrentFocusGroup();
117 }
118
119 unsigned int AccessibilityManager::GetCurrentFocusOrder()
120 {
121   return GetImpl(*this).GetCurrentFocusOrder();
122 }
123
124 bool AccessibilityManager::MoveFocusForward()
125 {
126   return GetImpl(*this).MoveFocusForward();
127 }
128
129 bool AccessibilityManager::MoveFocusBackward()
130 {
131   return GetImpl(*this).MoveFocusBackward();
132 }
133
134 void AccessibilityManager::ClearFocus()
135 {
136   GetImpl(*this).ClearFocus();
137 }
138
139 void AccessibilityManager::Reset()
140 {
141   GetImpl(*this).Reset();
142 }
143
144 void AccessibilityManager::SetFocusGroup(Actor actor, bool isFocusGroup)
145 {
146   GetImpl(*this).SetFocusGroup(actor, isFocusGroup);
147 }
148
149 bool AccessibilityManager::IsFocusGroup(Actor actor) const
150 {
151   return GetImpl(*this).IsFocusGroup(actor);
152 }
153
154 void AccessibilityManager::SetGroupMode(bool enabled)
155 {
156   GetImpl(*this).SetGroupMode(enabled);
157 }
158
159 bool AccessibilityManager::GetGroupMode() const
160 {
161   return GetImpl(*this).GetGroupMode();
162 }
163
164 void AccessibilityManager::SetWrapMode(bool wrapped)
165 {
166   GetImpl(*this).SetWrapMode(wrapped);
167 }
168
169 bool AccessibilityManager::GetWrapMode() const
170 {
171   return GetImpl(*this).GetWrapMode();
172 }
173
174 void AccessibilityManager::SetFocusIndicatorActor(Actor indicator)
175 {
176   GetImpl(*this).SetFocusIndicatorActor(indicator);
177 }
178
179 Actor AccessibilityManager::GetFocusIndicatorActor()
180 {
181   return GetImpl(*this).GetFocusIndicatorActor();
182 }
183
184 Actor AccessibilityManager::GetFocusGroup(Actor actor)
185 {
186   return GetImpl(*this).GetFocusGroup(actor);
187 }
188
189 AccessibilityManager::FocusChangedSignalType& AccessibilityManager::FocusChangedSignal()
190 {
191   return GetImpl(*this).FocusChangedSignal();
192 }
193
194 AccessibilityManager::FocusOvershotSignalType& AccessibilityManager::FocusOvershotSignal()
195 {
196   return GetImpl(*this).FocusOvershotSignal();
197 }
198
199 AccessibilityManager::FocusedActorActivatedSignalType& AccessibilityManager::FocusedActorActivatedSignal()
200 {
201   return GetImpl(*this).FocusedActorActivatedSignal();
202 }
203
204 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::StatusChangedSignal()
205 {
206   return GetImpl(*this).StatusChangedSignal();
207 }
208
209 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionNextSignal()
210 {
211   return GetImpl(*this).ActionNextSignal();
212 }
213
214 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionPreviousSignal()
215 {
216   return GetImpl(*this).ActionPreviousSignal();
217 }
218
219 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionActivateSignal()
220 {
221   return GetImpl(*this).ActionActivateSignal();
222 }
223
224 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionOverSignal()
225 {
226   return GetImpl(*this).ActionOverSignal();
227 }
228
229 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionReadSignal()
230 {
231   return GetImpl(*this).ActionReadSignal();
232 }
233
234 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionReadNextSignal()
235 {
236   return GetImpl(*this).ActionReadNextSignal();
237 }
238
239 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionReadPreviousSignal()
240 {
241   return GetImpl(*this).ActionReadPreviousSignal();
242 }
243
244 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionUpSignal()
245 {
246   return GetImpl(*this).ActionUpSignal();
247 }
248
249 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionDownSignal()
250 {
251   return GetImpl(*this).ActionDownSignal();
252 }
253
254 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionClearFocusSignal()
255 {
256   return GetImpl(*this).ActionClearFocusSignal();
257 }
258
259 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionBackSignal()
260 {
261   return GetImpl(*this).ActionBackSignal();
262 }
263
264 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionScrollUpSignal()
265 {
266   return GetImpl(*this).ActionScrollUpSignal();
267 }
268
269 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionScrollDownSignal()
270 {
271   return GetImpl(*this).ActionScrollDownSignal();
272 }
273
274 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionPageLeftSignal()
275 {
276   return GetImpl(*this).ActionPageLeftSignal();
277 }
278
279 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionPageRightSignal()
280 {
281   return GetImpl(*this).ActionPageRightSignal();
282 }
283
284 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionPageUpSignal()
285 {
286   return GetImpl(*this).ActionPageUpSignal();
287 }
288
289 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionPageDownSignal()
290 {
291   return GetImpl(*this).ActionPageDownSignal();
292 }
293
294 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionMoveToFirstSignal()
295 {
296   return GetImpl(*this).ActionMoveToFirstSignal();
297 }
298
299 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionMoveToLastSignal()
300 {
301   return GetImpl(*this).ActionMoveToLastSignal();
302 }
303
304 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionReadFromTopSignal()
305 {
306   return GetImpl(*this).ActionReadFromTopSignal();
307 }
308
309 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionReadFromNextSignal()
310 {
311   return GetImpl(*this).ActionReadFromNextSignal();
312 }
313
314 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionZoomSignal()
315 {
316   return GetImpl(*this).ActionZoomSignal();
317 }
318
319 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionReadIndicatorInformationSignal()
320 {
321   return GetImpl(*this).ActionReadIndicatorInformationSignal();
322 }
323
324 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionReadPauseResumeSignal()
325 {
326   return GetImpl(*this).ActionReadPauseResumeSignal();
327 }
328
329 AccessibilityManager::AccessibilityActionSignalType& AccessibilityManager::ActionStartStopSignal()
330 {
331   return GetImpl(*this).ActionStartStopSignal();
332 }
333
334 AccessibilityManager::AccessibilityActionScrollSignalType& AccessibilityManager::ActionScrollSignal()
335 {
336   return GetImpl(*this).ActionScrollSignal();
337 }
338
339 } // namespace Toolkit
340
341 } // namespace Dali