2 * Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
18 namespace ElmSharp.Accessible
21 /// IAccessibleRelation is a interface which defines the relationship between two accessible objects.
23 public interface IAccessibleRelation
26 AccessibleObject Target { get; set; }
31 /// To define label info for accessible object.
33 public class LabelledBy : IAccessibleRelation
36 /// Gets or sets the target object which is LabelledBy.
38 public AccessibleObject Target { get; set; }
41 /// Gets the LabelledBy type.
45 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_LABELLED_BY; }
50 /// To define label info for accessible object.
52 public class LabelFor : IAccessibleRelation
55 /// Gets or sets the target object which is LabelFor.
57 public AccessibleObject Target { get; set; }
60 /// Gets the LabelFor type.
64 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_LABEL_FOR; }
69 /// To define control relationship for accessible object.
71 public class ControllerFor : IAccessibleRelation
74 /// Gets or sets the target object which is ControllerFor.
76 public AccessibleObject Target { get; set; }
79 /// Gets the ControllerFor type.
83 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_CONTROLLER_FOR; }
88 /// To define control relationship for accessible object.
90 public class ControlledBy : IAccessibleRelation
93 /// Gets or sets the target object which is ControlledBy.
95 public AccessibleObject Target { get; set; }
98 /// Gets the ControlledBy type.
102 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_CONTROLLED_BY; }
107 /// To define member relationship for accessible object.
109 public class MemberOf : IAccessibleRelation
112 /// Gets or sets the target object which is MemberOf.
114 public AccessibleObject Target { get; set; }
117 /// Gets the MemberOf type.
121 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_MEMBER_OF; }
126 /// To define tooltip for accessible object.
128 public class TooltipFor : IAccessibleRelation
131 /// Gets or sets the target object which is TooltipFor.
133 public AccessibleObject Target { get; set; }
136 /// Gets the TooltipFor type.
140 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_TOOLTIP_FOR; }
145 /// To define child for accessible object.
147 public class ChildOf : IAccessibleRelation
150 /// Gets or sets the target object which is ChildOf.
152 public AccessibleObject Target { get; set; }
155 /// Gets the ChildOf type.
159 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_NODE_CHILD_OF; }
164 /// To define parent for accessible object.
166 public class ParentOf : IAccessibleRelation
169 /// Gets or sets the target object which is ParentOf.
171 public AccessibleObject Target { get; set; }
174 /// Gets the ParentOf type.
178 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_NODE_PARENT_OF; }
183 /// To define extend for accessible object.
185 public class Extended : IAccessibleRelation
188 /// Gets or sets the target object which is Extended.
190 public AccessibleObject Target { get; set; }
193 /// Gets the Extended type.
197 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_EXTENDED; }
202 /// To define the custom reading order.
204 public class FlowsTo : IAccessibleRelation
207 /// Gets or sets the target object which is FlowsTo.
209 public AccessibleObject Target { get; set; }
212 /// Gets the FlowsTo type.
216 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_FLOWS_TO; }
221 /// To define the custom reading order.
223 public class FlowsFrom : IAccessibleRelation
226 /// Gets or sets the target object which is FlowsFrom.
228 public AccessibleObject Target { get; set; }
231 /// Gets the FlowsFrom type.
235 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_FLOWS_FROM; }
240 /// To define subwindow for accessible object.
242 public class SubwindowOf : IAccessibleRelation
245 /// Gets or sets the target object which is SubwindowOf.
247 public AccessibleObject Target { get; set; }
250 /// Gets the SubwindowOf type.
254 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_SUBWINDOW_OF; }
259 /// To define embed for accessible object.
261 public class Embeds : IAccessibleRelation
264 /// Gets or sets the target object which is Embeds.
266 public AccessibleObject Target { get; set; }
269 /// Gets the Embeds type.
273 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_EMBEDS; }
278 /// To define embed for accessible object.
280 public class EmbeddedBy : IAccessibleRelation
283 /// Gets or sets the target object which is EmbeddedBy.
285 public AccessibleObject Target { get; set; }
288 /// Gets the EmbeddedBy type.
292 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_EMBEDDED_BY; }
297 /// To define popup for accessible object.
299 public class PopupFor : IAccessibleRelation
302 /// Gets or sets the target object which is PopupFor.
304 public AccessibleObject Target { get; set; }
307 /// Gets the PopupFor type.
311 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_POPUP_FOR; }
316 /// To define parent window for accessible object.
318 public class ParentWindowOf : IAccessibleRelation
321 /// Gets or sets the target object which is ParentWindowOf.
323 public AccessibleObject Target { get; set; }
326 /// Gets the ParentWindowOf type.
330 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_PARENT_WINDOW_OF; }
335 /// To define description for accessible object.
337 public class DescriptionFor : IAccessibleRelation
340 /// Gets or sets the target object which is DescriptionFor.
342 public AccessibleObject Target { get; set; }
345 /// Gets the DescriptionFor type.
349 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_DESCRIPTION_FOR; }
354 /// To define description for accessible object.
356 public class DescribedBy : IAccessibleRelation
359 /// Gets or sets the target object which is DescribedBy.
361 public AccessibleObject Target { get; set; }
364 /// Gets the DescribedBy type.
368 get { return (int)Interop.Elementary.Elm_Atspi_Relation_Type.ELM_ATSPI_RELATION_DESCRIBED_BY; }