Tizen 2.1 base
[framework/osp/uifw.git] / src / ui / inc / FUi_AccessibilityElementImpl.h
1 //
2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
4 //
5 // Licensed under the Flora License, Version 1.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
8 //
9 //     http://floralicense.org/license/
10 //
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an AS IS BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
16 //
17
18 /**
19  * @file        FUi_AccessibilityElementImpl.h
20  * @brief       This is the header file for the _AccessibilityElementImpl class.
21  *
22  * This header file contains the declarations of the _AccessibilityElementImpl class.
23  *
24  */
25 #ifndef _FUI_INTERNAL_ACCESSIBILITY_ELEMENT_IMPL_H_
26 #define _FUI_INTERNAL_ACCESSIBILITY_ELEMENT_IMPL_H_
27
28 #include <FBaseResult.h>
29 #include <FUi_AccessibilityContainer.h>
30
31 namespace Tizen { namespace Base
32 {
33 class String;
34 }} //Tizen::Base
35 namespace Tizen { namespace Graphics
36 {
37 class Rectangle;
38 }} //Tizen::Graphics
39 namespace Tizen { namespace Ui
40 {
41
42 class AccessibilityElement;
43 class _AccessibilityElement;
44 class IAccessibilityListener;
45
46 class _AccessibilityElementImpl
47 {
48 public:
49         _AccessibilityElementImpl(const AccessibilityElement& element);
50         _AccessibilityElementImpl(const _AccessibilityElement& element);
51         virtual ~_AccessibilityElementImpl(void);
52         result Construct(const Tizen::Base::String& name, const Tizen::Graphics::Rectangle& bounds);
53         void SetBounds(const Tizen::Graphics::Rectangle& bounds);
54         void SetName(const Tizen::Base::String& name);
55         void SetLabel(const Tizen::Base::String& label);
56         void SetHint(const Tizen::Base::String& hint);
57         void SetStatus(const Tizen::Base::String& status);
58         void SetTrait(AccessibilityTraits trait);
59         void SetTrait(const Tizen::Base::String& trait);
60         void SetValue(const Tizen::Base::String& value);  //variant gogogo
61
62         AccessibilityElement& GetPublic();
63         const AccessibilityElement& GetPublic() const;
64         void SetCore(_AccessibilityElement* pCore);
65         _AccessibilityElement& GetCore();
66         const _AccessibilityElement& GetCore() const;
67         Tizen::Base::String GetName(void) const;
68         Tizen::Graphics::Rectangle GetBounds(void) const;
69         Tizen::Base::String GetLabel(void) const;
70         Tizen::Base::String GetHint(void) const;
71         Tizen::Base::String GetStatus(void) const;
72         AccessibilityTraits GetTrait(void) const;
73         Tizen::Base::String GetTraitString(void) const;
74         Tizen::Base::String GetValue(void) const;  //variant gogogo
75
76         static _AccessibilityElementImpl* GetInstance(AccessibilityElement& element);
77         static const _AccessibilityElementImpl* GetInstance(const AccessibilityElement& element);
78
79 private:
80         _AccessibilityElementImpl(const _AccessibilityElementImpl& rhs);
81         _AccessibilityElementImpl& operator =(const _AccessibilityElementImpl& rhs);
82
83 private:
84         AccessibilityElement* __pPublic;
85         _AccessibilityElement* __pCore;
86 }; //class _AccessibilityElementImpl
87 }} //Tizen::Ui
88
89 #endif //_FUI_INTERNAL_ACCESSIBILITY_ELEMENT_IMPL_H_