Bump for 3.6-28
[LibreOffice.git] / offapi / com / sun / star / accessibility / AccessibleEventId.idl
blob378cbbb6cf7c749474e64d7fe9b241c33970a4bf
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*************************************************************************
4 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
6 * Copyright 2000, 2010 Oracle and/or its affiliates.
8 * OpenOffice.org - a multi-platform office productivity suite
10 * This file is part of OpenOffice.org.
12 * OpenOffice.org is free software: you can redistribute it and/or modify
13 * it under the terms of the GNU Lesser General Public License version 3
14 * only, as published by the Free Software Foundation.
16 * OpenOffice.org is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 * GNU Lesser General Public License version 3 for more details
20 * (a copy is included in the LICENSE file that accompanied this code).
22 * You should have received a copy of the GNU Lesser General Public License
23 * version 3 along with OpenOffice.org. If not, see
24 * <http://www.openoffice.org/license.html>
25 * for a copy of the LGPLv3 License.
27 ************************************************************************/
28 #ifndef __com_sun_star_accessibility_AccessibleEventId_idl__
29 #define __com_sun_star_accessibility_AccessibleEventId_idl__
31 module com { module sun { module star { module accessibility {
33 /** These constants identify the type of <type>AccessibleEventObject</type>
34 objects.
36 <p>The <member>AccessibleEventObject::OldValue</member> and
37 <member>AccessibleEventObject::NewValue</member> fields contain, where
38 applicable and not otherwise stated, the old and new value of the
39 property in question.</p>
41 @see AccessibleEventObject
42 @see XAccessibleEventListener
44 @since OOo 1.1.2
46 published constants AccessibleEventId
48 /** Use this event type to indicate a change of the name string
49 of an accessible object. The
50 <member>AccessibleEventObject::OldValue</member> and
51 <member>AccessibleEventObject::NewValue</member> fields contain the
52 name before and after the change.
54 const short NAME_CHANGED = 1;
56 /** Use this event type to indicate a change of the description string
57 of an accessible object. The
58 <member>AccessibleEventObject::OldValue</member> and
59 <member>AccessibleEventObject::NewValue</member> fields contain the
60 description before and after the change.
62 const short DESCRIPTION_CHANGED = 2;
64 /** The change of the number or attributes of actions of an accessible
65 object is signaled by events of this type.
66 <p>The <member>AccessibleEventObject::OldValue</member> and
67 <member>AccessibleEventObject::NewValue</member> fields contain the
68 old and new number of actions.
70 const short ACTION_CHANGED = 3;
72 /** State changes are signaled with this event type. Use one event for
73 every state that is set or reset. The
74 <member>AccessibleEventObject::OldValue</member> and
75 <member>AccessibleEventObject::NewValue</member> fields contain the
76 old and new value respectively. To set a state put the state id
77 into the <member>AccessibleEventObject::NewValue</member> field and
78 leave <member>AccessibleEventObject::OldValue</member> empty. To
79 reset a state put the state id into the
80 <member>AccessibleEventObject::OldValue</member> field and leave
81 <member>AccessibleEventObject::NewValue</member> empty.
83 const short STATE_CHANGED = 4;
85 /** Constant used to determine when the active descendant of a component
86 has changed. The active descendant is used in objects with
87 transient children. The <member>AccessibleEventObject::NewValue</member>
88 contains the now active object. The
89 <member>AccessibleEventObject::OldValue</member> contains the
90 previously active child. Empty references indicate that no child
91 has been respectively is currently active.
93 const short ACTIVE_DESCENDANT_CHANGED = 5;
95 /** This event indicates a change of the bounding rectangle of an
96 accessible object with respect only to its size or relative
97 position. If the absolute position changes but not the relative
98 position then its is not necessary to send an event.
100 <p>Use this event rather than the
101 <const>VISIBLE_DATA_EVENT</const> when really only the
102 (relative) bounding box of an accessible object has changed. It is
103 much more specific than the later one and reduces the number of
104 calls an AT-Tool has to make to retrieve all affected data.</p>
106 <p>The <member>AccessibleEventObject::OldValue</member> and
107 <member>AccessibleEventObject::NewValue</member> remain empty. Use
108 a call to the <member>XAccessibleComponent::getBounds()</member>
109 method to determine the new bounding box.</p>
111 const short BOUNDRECT_CHANGED = 6;
113 /** A child event indicates the addition of a new or the removal of an
114 existing child. The contents of the
115 <member>AccessibleEventObject::OldValue</member> and
116 <member>AccessibleEventObject::NewValue</member> fields determines
117 which of both has taken place.
119 <p>If a new child has been added then
120 the <member>AccessibleEventObject::NewValue</member> contains a
121 reference to this new object and
122 <member>AccessibleEventObject::OldValue</member> remains empty.</p>
124 <p>If a child has been removed then the
125 <member>AccessibleEventObject::OldValue</member> contains a
126 reference to this object and
127 <member>AccessibleEventObject::NewValue</member> remains empty.</p>
129 <p>If a child has been added and a another one has been removed
130 don't set both fields at the same. Send separate events
131 instead.</p>
133 <p>Note that a child event is sent after a child has been added or
134 removed. Especially in the case of a removal this means that the
135 removed object does not have a parent anymore.</p>
137 const short CHILD = 7;
139 /** Use this event to tell the listeners to re-retrieve the whole set of
140 children. This should be used by a parent object which exchanges all
141 or most of its children. It is a short form of first sending one
142 <const>CHILD</const> event for every old child indicating that
143 this child is about to be removed and then sending one
144 <const>CHILD</const> for every new child indicating that this
145 child has been added to the list of children.
147 <p>When this API is used by Java or Gnome AT-Tools then a bridge can
148 generate the events described above automatically.</p>
150 const short INVALIDATE_ALL_CHILDREN = 8;
152 /** Events of this type indicate changes of the selection. The
153 <member>AccessibleEventObject::OldValue</member> and
154 <member>AccessibleEventObject::NewValue</member> fields remain empty.
156 const short SELECTION_CHANGED = 9;
158 /** A visible data event indicates the change of the visual appearance
159 of an accessible object. This includes for example most of the
160 attributes available over the <type>XAccessibleComponent</type> and
161 <type>XAccessibleExtendedComponent</type> interfaces. The
162 <member>AccessibleEventObject::OldValue</member> and
163 <member>AccessibleEventObject::NewValue</member> fields are left empty.
165 const short VISIBLE_DATA_CHANGED = 10;
167 /** This constant indicates changes of the value of an
168 <type>XAccessibleValue</type> interface. The
169 <member>AccessibleEventObject::OldValue</member> and
170 <member>AccessibleEventObject::NewValue</member> field contain the
171 old and new value as a number. Its exact type is implementation
172 dependent but has to be the same as is returned by the
173 <member>XAccessibleValue::getCurrentValue</member> function.
176 const short VALUE_CHANGED = 11;
178 /** Identifies the change of a relation set: The content flow has
179 changed.
181 <p>Not used: The <member>AccessibleEventObject::OldValue</member> and
182 <member>AccessibleEventObject::NewValue</member> fields contain
183 references to the old and new predecessor. Note that both references
184 my be <NULL/> to indicate that a flow to the sending object has not
185 existed or does not exist anymore.</p>
187 const short CONTENT_FLOWS_FROM_RELATION_CHANGED = 12;
189 /** Identifies the change of a relation set: The content flow has
190 changed.
192 <p>Not used: The <member>AccessibleEventObject::OldValue</member> and
193 <member>AccessibleEventObject::NewValue</member> fields contain
194 references to the old and new successor. Note that both references
195 my be <NULL/> to indicate that a flow from the sending object has not
196 existed or does not exist anymore.</p>
198 const short CONTENT_FLOWS_TO_RELATION_CHANGED = 13;
200 /** Identifies the change of a relation set: The target object that is
201 doing the controlling has changed. The
202 <member>AccessibleEventObject::OldValue</member> and
203 <member>AccessibleEventObject::NewValue</member> fields contain the
204 old and new controlling objects.
206 const short CONTROLLED_BY_RELATION_CHANGED = 14;
208 /** Identifies the change of a relation set: The controller for the
209 target object has changed. The
210 <member>AccessibleEventObject::OldValue</member> and
211 <member>AccessibleEventObject::NewValue</member> fields contain the
212 old and new number of controlled objects.
214 const short CONTROLLER_FOR_RELATION_CHANGED = 15;
216 /** Identifies the change of a relation set: The target group for a
217 label has changed. The
218 <member>AccessibleEventObject::OldValue</member> and
219 <member>AccessibleEventObject::NewValue</member> fields contain the
220 old and new number labeled objects.
222 const short LABEL_FOR_RELATION_CHANGED = 16;
224 /** Identifies the change of a relation set: The objects that are doing
225 the labeling have changed. The
226 <member>AccessibleEventObject::OldValue</member> and
227 <member>AccessibleEventObject::NewValue</member> fields contain the
228 old and new accessible label.
230 const short LABELED_BY_RELATION_CHANGED = 17;
232 /** Identifies the change of a relation set: The group membership has
233 changed. The
234 <member>AccessibleEventObject::OldValue</member> and
235 <member>AccessibleEventObject::NewValue</member> fields contain the
236 old and new number of members.
238 const short MEMBER_OF_RELATION_CHANGED = 18;
240 /** Identifies the change of a relation set: The sub-window-of relation
241 has changed. The
242 <member>AccessibleEventObject::OldValue</member> and
243 <member>AccessibleEventObject::NewValue</member> fields contain the
244 old and new accessible parent window objects.
246 const short SUB_WINDOW_OF_RELATION_CHANGED = 19;
248 /** Events of this type are sent when the caret has moved to a new
249 position. The old and new position can be found in the
250 <member>AccessibleEventObject::OldValue</member> and
251 <member>AccessibleEventObject::NewValue</member> fields.
253 const short CARET_CHANGED = 20;
255 /** Events of this type signal changes of the selection. The old or new
256 selection is <em>not</em> available through the event object. You
257 have to query the <type>XAccessibleText</type> interface of the
258 event source for this information. The type of content of the
259 <member>AccessibleEventObject::OldValue</member> and
260 <member>AccessibleEventObject::NewValue</member> fields is not
261 specified at the moment. This may change in the future.
263 const short TEXT_SELECTION_CHANGED = 21;
265 /** Use this id to indicate general text changes, i.e. changes to text
266 that is exposed through the <type>XAccessibleText</type> and
267 <type>XAccessibleEditableText</type> interfaces.
269 <p>The affected text ranges are represented by <type
270 scope="com::sun::star::accessibility">TextSegment</type> structures.<p>
272 <p>The content of the <member>AccessibleEventObject::OldValue</member> and
273 <member>AccessibleEventObject::NewValue</member> expresses the type
274 of text change: <ul> <li>Insertion: the
275 <member>AccessibleEventObject::NewValue</member> field specifies the
276 inserted text after the insertion, the
277 <member>AccessibleEventObject::OldValue</member> field remains
278 empty.</li> <li>Deletion: the
279 <member>AccessibleEventObject::OldValue</member> field specifies the
280 deleted text before the deletion, the
281 <member>AccessibleEventObject::NewValue</member> field remains
282 empty.</li> <li>Update/Replace/Modification: the
283 <member>AccessibleEventObject::OldValue</member> and
284 <member>AccessibleEventObject::NewValue</member> fields specify the
285 modified text before respectively after the modification.</li>
286 <li>Unknown: when the type of text change or the place where it took
287 place can not be determined by the event broadcaster then both
288 fields remain empty. In this case the whole text may have changed
289 and the listener should refetch the text completely.</li> </ol>
291 <p>When broadcasting an event always prefer the first three cases
292 to the last one. Use it only as a last resort.</p>
294 <p> Text ranges should be as small as possible but, of course,
295 include all the text that is involved in a modification. That means
296 that when two or more discontinuous text ranges are inserted,
297 deleted, or otherwise modified the two fields of the event have to
298 cover all the affected text ranges as well as the text in
299 between.</p>
301 const short TEXT_CHANGED = 22;
304 /** This entry is reserved for future extension. Don't use it right now.
306 const short TEXT_ATTRIBUTE_CHANGED = 23;
308 /** Constant used to indicate that a hypertext element has received
309 focus. The <member>AccessibleEventObject::OldValue</member> field
310 contains the start index of previously focused element. The
311 <member>AccessibleEventObject::NewValue</member> field holds the
312 start index in the document of the current element that has focus. A
313 value of -1 indicates that an element does not or did not have
314 focus.
316 const short HYPERTEXT_CHANGED = 24;
317 /** Constant used to indicate that the table caption has changed. The
318 <member>AccessibleEventObject::OldValue</member> and
319 <member>AccessibleEventObject::NewValue</member> fields contain the
320 old and new accessible objects representing the table caption.
322 const short TABLE_CAPTION_CHANGED = 25;
324 /** Constant used to indicate that the column description has changed.
325 The <member>AccessibleEventObject::NewValue</member> field contains
326 the column index. The
327 <member>AccessibleEventObject::OldValue</member> is left empty.
329 const short TABLE_COLUMN_DESCRIPTION_CHANGED = 26;
331 /** Constant used to indicate that the column header has changed. The
332 <member>AccessibleEventObject::OldValue</member> is empty, the
333 <member>AccessibleEventObject::NewValue</member> field contains an
334 <type>AccessibleTableModelChange</type> representing the header
335 change.
337 const short TABLE_COLUMN_HEADER_CHANGED = 27;
339 /** Constant used to indicate that the table data has changed. The
340 <member>AccessibleEventObject::OldValue</member> is empty, the
341 <member>AccessibleEventObject::NewValue</member> field contains an
342 <type>AccessibleTableModelChange</type> representing the data
343 change.
345 const short TABLE_MODEL_CHANGED = 28;
347 /** Constant used to indicate that the row description has changed. The
348 <member>AccessibleEventObject::NewValue</member> field contains the
349 row index. The <member>AccessibleEventObject::OldValue</member> is
350 left empty.
352 const short TABLE_ROW_DESCRIPTION_CHANGED = 29;
354 /** Constant used to indicate that the row header has changed. The
355 <member>AccessibleEventObject::OldValue</member> is empty, the
356 <member>AccessibleEventObject::NewValue</member> field contains an
357 <type>AccessibleTableModelChange</type> representing the header
358 change.
360 const short TABLE_ROW_HEADER_CHANGED = 30;
362 /** Constant used to indicate that the table summary has changed. The
363 <member>AccessibleEventObject::OldValue</member> and
364 <member>AccessibleEventObject::NewValue</member> fields contain the
365 old and new accessible objects representing the table summary.
367 const short TABLE_SUMMARY_CHANGED = 31;
369 /** Constant used to indicate that a list box entry has been expanded.
370 <member>AccessibleEventObject::OldValue</member> is empty.
371 <member>AccessibleEventObject::NewValue</member> contains the expanded list box entry.
373 @since OOo 3.2
375 const short LISTBOX_ENTRY_EXPANDED = 32;
377 /** Constant used to indicate that a list box entry has been collapsed.
378 <member>AccessibleEventObject::OldValue</member> is empty.
379 <member>AccessibleEventObject::NewValue</member> contains the collapsed list box entry.
381 @since OOo 3.2
383 const short LISTBOX_ENTRY_COLLAPSED = 33;
386 }; }; }; };
388 #endif
390 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */