Updates following boost::function removal from adaptor
[platform/core/uifw/dali-toolkit.git] / automated-tests / src / dali-toolkit / dali-toolkit-test-utils / toolkit-accessibility-manager.h
1 // Prevent normal accessibility manager declaration from loading
2 #define __DALI_ACCESSIBILITY_MANAGER_H__
3
4 #ifndef __DALI_TOOLKIT_ACCESSIBILITY_MANAGER_H__
5 #define __DALI_TOOLKIT_ACCESSIBILITY_MANAGER_H__
6
7 /*
8  * Copyright (c) 2014 Samsung Electronics Co., Ltd.
9  *
10  * Licensed under the Apache License, Version 2.0 (the "License");
11  * you may not use this file except in compliance with the License.
12  * You may obtain a copy of the License at
13  *
14  * http://www.apache.org/licenses/LICENSE-2.0
15  *
16  * Unless required by applicable law or agreed to in writing, software
17  * distributed under the License is distributed on an "AS IS" BASIS,
18  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19  * See the License for the specific language governing permissions and
20  * limitations under the License.
21  *
22  */
23
24 // EXTERNAL INCLUDES
25 #include <string>
26 #include <dali/public-api/object/base-handle.h>
27 #include <dali/public-api/signals/dali-signal.h>
28 #include <dali/public-api/events/touch-point.h>
29
30 namespace Dali
31 {
32 namespace Internal
33 {
34 namespace Adaptor
35 {
36 class AccessibilityManager;
37 }
38 }
39 class AccessibilityActionHandler;
40 class AccessibilityGestureHandler;
41 class TouchPoint;
42
43 /**
44  * This creates a stubbed AccessibilityManager so that internal Toolkit Adaptor calls work.
45  */
46 class AccessibilityManager : public BaseHandle
47 {
48 public: // Typedefs
49   typedef Signal< bool ( AccessibilityManager& ) > AccessibilityActionSignalType;
50
51 public: // Construction & Destruction
52   AccessibilityManager();
53   ~AccessibilityManager();
54
55 public: // Getters
56   static AccessibilityManager Get();
57   Vector2 GetReadPosition() const;
58   bool IsEnabled() const;
59   void SetActionHandler(AccessibilityActionHandler& handler);
60   void SetGestureHandler(AccessibilityGestureHandler& handler);
61   bool HandleActionNextEvent();
62   bool HandleActionPreviousEvent();
63   bool HandleActionActivateEvent();
64   bool HandleActionReadEvent(unsigned int x, unsigned int y, bool allowReadAgain);
65   bool HandleActionReadNextEvent();
66   bool HandleActionReadPreviousEvent();
67   bool HandleActionUpEvent();
68   bool HandleActionDownEvent();
69   bool HandleActionClearFocusEvent();
70   bool HandleActionScrollEvent(TouchPoint& point, unsigned long timeStamp);
71   bool HandleActionBackEvent();
72   void HandleActionEnableEvent();
73   void HandleActionDisableEvent();
74
75 public:  // Signals
76   AccessibilityActionSignalType& StatusChangedSignal();
77   AccessibilityActionSignalType& ActionNextSignal();
78   AccessibilityActionSignalType& ActionPreviousSignal();
79   AccessibilityActionSignalType& ActionActivateSignal();
80   AccessibilityActionSignalType& ActionReadSignal();
81   AccessibilityActionSignalType& ActionOverSignal();
82   AccessibilityActionSignalType& ActionReadNextSignal();
83   AccessibilityActionSignalType& ActionReadPreviousSignal();
84   AccessibilityActionSignalType& ActionUpSignal();
85   AccessibilityActionSignalType& ActionDownSignal();
86   AccessibilityActionSignalType& ActionClearFocusSignal();
87   AccessibilityActionSignalType& ActionBackSignal();
88
89   AccessibilityManager( Internal::Adaptor::AccessibilityManager* manager );
90 };
91
92 } // namespace Dali
93
94 #endif // __DALI_TOOLKIT_ACCESSIBILITY_MANAGER_H__