summaryrefslogtreecommitdiff
path: root/xml/Component.xml
blob: 087dc0aba217aa5cf00f91995ffd1608678cee1c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
<?xml version="1.0" encoding="UTF-8"?>
<node xmlns:doc="http://www.freedesktop.org/dbus/1.0/doc.dtd">
  <!--
      org.a11y.atspi.Component:
      @short_description: Interface for GUI components like widgets or other visible elements.
  -->
  <interface name="org.a11y.atspi.Component">

    <!--
        Contains:
        @x: X coordinate of point.
        @y: Y coordinate of point.
        @coord_type: Whether the coordinates are relative to the screen or to the
        component's top level window; see the description.

        Queries whether a point (x, y) is inside the component.

        The @coord_type values are as follows, and correspond to AtkCoordType:

        0 - Coordinates are relative to the screen.
        1 - Coordinates are relative to the component's toplevel window.
        2 - Coordinates are relative to the component's immediate parent.
    -->
    <method name="Contains">
      <arg direction="in" name="x" type="i"/>
      <arg direction="in" name="y" type="i"/>
      <arg direction="in" name="coord_type" type="u"/>
      <arg direction="out" type="b"/>
    </method>

    <!--
        GetAccessibleAtPoint:
        @x: X coordinate of point.
        @y: Y coordinate of point.
        @coord_type: Whether the coordinates are relative to the screen or to the
        component's top level window; see the description.

        Gets a reference to the accessible object that contains an (x, y) pair of
        coordinates.

        The @coord_type values are as follows, and correspond to AtkCoordType:

        0 - Coordinates are relative to the screen.
        1 - Coordinates are relative to the component's toplevel window.
        2 - Coordinates are relative to the component's immediate parent.

        Returns: A DBus name and object reference (so) for the sought object, or a null
        object reference "/org/a11y/atspi/null" if there is no object at the specified
        coordinates.
    -->
    <method name="GetAccessibleAtPoint">
      <arg direction="in" name="x" type="i"/>
      <arg direction="in" name="y" type="i"/>
      <arg direction="in" name="coord_type" type="u"/>
      <arg direction="out" type="(so)"/>
      <annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="QSpiObjectReference"/>
    </method>

    <!--
        GetExtents:
        @coord_type: Whether the coordinates are relative to the screen or to the
        component's top level window; see the description.

        Queries the pixel extents of a component.

        The @coord_type values are as follows, and correspond to AtkCoordType:

        0 - Coordinates are relative to the screen.
        1 - Coordinates are relative to the component's toplevel window.
        2 - Coordinates are relative to the component's immediate parent.

        Returns: a tuple (x, y, width, height) corresponding to the rectangle for the
        component's extents.
    -->
    <method name="GetExtents">
      <arg direction="in" name="coord_type" type="u"/>
      <arg direction="out" type="(iiii)"/>
      <annotation name="org.qtproject.QtDBus.QtTypeName.Out0" value="QSpiRect"/>
    </method>

    <!--
        GetPosition:
        @coord_type: Whether the coordinates are relative to the screen or to the
        component's top level window; see the description.

        Queries the upper-left position of a component.

        The @coord_type values are as follows, and correspond to AtkCoordType:

        0 - Coordinates are relative to the screen.
        1 - Coordinates are relative to the component's toplevel window.
        2 - Coordinates are relative to the component's immediate parent.

        Returns: (x, y) coordinates of the component's upper-left corner.
    -->
    <method name="GetPosition">
      <arg direction="in" name="coord_type" type="u"/>
      <arg direction="out" name="x" type="i"/>
      <arg direction="out" name="y" type="i"/>
    </method>

    <!--
        GetSize:
        Queries the pixel size of a component.

        Returns: (width, height) of the component's rectangular area.
    -->
    <method name="GetSize">
      <arg direction="out" name="width" type="i"/>
      <arg direction="out" name="height" type="i"/>
    </method>

    <!--
        GetLayer:

        Queries the UI layer at which a component is rendered, which can help in
        determining when components occlude one another.

        The layer of a component indicates its relative stacking order with respect to the
        onscreen visual representation of the UI.  The layer index, in combination
        with the component's extents, can be used to compute the visibility of
        all or part of a component.  This is important in programmatic determination of
        region-of-interest for magnification, and in flat screen review models of the
        screen, as well as for other uses.  Objects residing in two of the
        Layer categories support further z-ordering information, with
        respect to their peers in the same layer: namely, WINDOW and
        MDI.  Relative stacking order for other objects within the same layer
        is not available; the recommended heuristic is first child paints first. In other
        words, assume that the first siblings in the child list are subject to being
        overpainted by later siblings if their bounds intersect. The order of layers, from
        bottom to top, is as follows:

        0 - INVALID: Error condition.

        1 - BACKGROUND: Reserved for the desktop background; this is the bottom-most
        layer, over which everything else is painted.

        2 - CANVAS: The 'background' layer for most content renderers and UI component containers.

        3 - WIDGET: The layer in which the majority of ordintary 'foreground' widgets reside.

        4 - MDI: A special layer between CANVAS and WIDGET, in which the 'pseudo-windows'
        (e.g. the Multiple-Document Interface frames) reside.  See the GetMDIZOrder
        method.

        5 - POPUP: Layer for popup window content, above WIDGET.

        6 - OVERLAY: The topmost layer.

        7 - WINDOW: The layer in which a toplevel window background usually resides.
    -->
    <method name="GetLayer">
      <arg direction="out" type="u"/>
    </method>

    <!--
        GetMDIZOrder:

        Queries the Z stacking order of a component which is in the MDI or WINDOW layer,
        per the GetLayer method.  Bigger z-order numbers are nearer the top.

        Returns: The z order of the component, or -1 if it is not in the MDI layer.
    -->
    <method name="GetMDIZOrder">
      <arg direction="out" type="n"/>
    </method>

    <method name="GrabFocus">
      <arg direction="out" type="b"/>
    </method>

    <method name="GetAlpha">
      <arg direction="out" type="d"/>
    </method>

    <method name="SetExtents">
      <arg direction="in" name="x" type="i"/>
      <arg direction="in" name="y" type="i"/>
      <arg direction="in" name="width" type="i"/>
      <arg direction="in" name="height" type="i"/>
      <arg direction="in" name="coord_type" type="u"/>
      <arg direction="out" type="b"/>
    </method>

    <method name="SetPosition">
      <arg direction="in" name="x" type="i"/>
      <arg direction="in" name="y" type="i"/>
      <arg direction="in" name="coord_type" type="u"/>
      <arg direction="out" type="b"/>
    </method>

    <method name="SetSize">
      <arg direction="in" name="width" type="i"/>
      <arg direction="in" name="height" type="i"/>
      <arg direction="out" type="b"/>
    </method>

    <method name="ScrollTo">
      <arg direction="in" name="type" type="u"/>
      <arg direction="out" type="b"/>
    </method>

    <method name="ScrollToPoint">
      <arg direction="in" name="type" type="u"/>
      <arg direction="in" name="x" type="i"/>
      <arg direction="in" name="y" type="i"/>
      <arg direction="out" type="b"/>
    </method>

  </interface>
</node>