73d1bbfa2477f73515c73b3a261a09805c870cab
[platform/core/csapi/tizenfx.git] / src / Tizen.NUI / src / public / BaseComponents / ViewAccessibilityProperties.cs
1 /*
2  * Copyright(c) 2021 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 using System;
19 using System.ComponentModel;
20 using System.Runtime.InteropServices;
21 using Tizen.NUI;
22
23 namespace Tizen.NUI.BaseComponents
24 {
25     /// <summary>
26     /// View is the base class for all views.
27     /// </summary>
28     /// <since_tizen> 3 </since_tizen>
29     public partial class View
30     {
31         /// <summary>
32         /// Gets or sets accessibility name.
33         /// </summary>
34         [EditorBrowsable(EditorBrowsableState.Never)]
35         public string AccessibilityName
36         {
37             get
38             {
39                 return (string)GetValue(AccessibilityNameProperty);
40             }
41             set
42             {
43                 SetValue(AccessibilityNameProperty, value);
44                 NotifyPropertyChanged();
45             }
46         }
47
48         /// <summary>
49         /// Gets or sets accessibility description.
50         /// </summary>
51         [EditorBrowsable(EditorBrowsableState.Never)]
52         public string AccessibilityDescription
53         {
54             get
55             {
56                 return (string)GetValue(AccessibilityDescriptionProperty);
57             }
58             set
59             {
60                 SetValue(AccessibilityDescriptionProperty, value);
61                 NotifyPropertyChanged();
62             }
63         }
64
65         /// <summary>
66         /// Gets or sets accessibility translation domain.
67         /// </summary>
68         [EditorBrowsable(EditorBrowsableState.Never)]
69         public string AccessibilityTranslationDomain
70         {
71             get
72             {
73                 return (string)GetValue(AccessibilityTranslationDomainProperty);
74             }
75             set
76             {
77                 SetValue(AccessibilityTranslationDomainProperty, value);
78                 NotifyPropertyChanged();
79             }
80         }
81
82         /// <summary>
83         /// Gets or sets accessibility role.
84         /// </summary>
85         [EditorBrowsable(EditorBrowsableState.Never)]
86         public Role AccessibilityRole
87         {
88             get
89             {
90                 return (Role)GetValue(AccessibilityRoleProperty);
91             }
92             set
93             {
94                 SetValue(AccessibilityRoleProperty, value);
95                 NotifyPropertyChanged();
96             }
97         }
98
99         /// <summary>
100         /// Gets or sets whether the view is highlightable for accessibility or not.
101         /// </summary>
102         /// <remarks>
103         /// For views, which intend to receive accessibility highlight focus, this value should  be set as true.
104         /// Otherwise it is set to false by default and the object is omitted in AT-SPI2 navigation.
105         /// </remarks>
106         [EditorBrowsable(EditorBrowsableState.Never)]
107         public bool AccessibilityHighlightable
108         {
109             get
110             {
111                 return (bool)GetValue(AccessibilityHighlightableProperty);
112             }
113             set
114             {
115                 SetValue(AccessibilityHighlightableProperty, value);
116                 NotifyPropertyChanged();
117             }
118         }
119
120         /// <summary>
121         /// Controls whether the view is hidden from the AT-SPI tree.
122         /// </summary>
123         /// <remarks>
124         /// False by default. Hiding an object means that any AT-SPI clients are not able to see it.
125         /// </remarks>
126         [EditorBrowsable(EditorBrowsableState.Never)]
127         public bool AccessibilityHidden
128         {
129             get
130             {
131                 return (bool)GetValue(AccessibilityHiddenProperty);
132             }
133             set
134             {
135                 SetValue(AccessibilityHiddenProperty, value);
136                 NotifyPropertyChanged();
137             }
138         }
139
140         /// <summary>
141         /// Gets or sets a value that allows the automation framework to find and interact with this element.
142         /// </summary>
143         [EditorBrowsable(EditorBrowsableState.Never)]
144         public new string AutomationId
145         {
146             get
147             {
148                 return GetValue(AutomationIdProperty) as string;
149             }
150             set
151             {
152                 SetValue(AutomationIdProperty, value);
153                 NotifyPropertyChanged();
154             }
155         }
156     }
157 }