1 /*************************************************************************
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 * Copyright 2008 by Sun Microsystems, Inc.
7 * OpenOffice.org - a multi-platform office productivity suite
9 * $RCSfile: AccessibleTextDocumentView.idl,v $
12 * This file is part of OpenOffice.org.
14 * OpenOffice.org is free software: you can redistribute it and/or modify
15 * it under the terms of the GNU Lesser General Public License version 3
16 * only, as published by the Free Software Foundation.
18 * OpenOffice.org is distributed in the hope that it will be useful,
19 * but WITHOUT ANY WARRANTY; without even the implied warranty of
20 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
21 * GNU Lesser General Public License version 3 for more details
22 * (a copy is included in the LICENSE file that accompanied this code).
24 * You should have received a copy of the GNU Lesser General Public License
25 * version 3 along with OpenOffice.org. If not, see
26 * <http://www.openoffice.org/license.html>
27 * for a copy of the LGPLv3 License.
29 ************************************************************************/
30 #ifndef __com_sun_star_text_AccessibleTextDocumentView_idl__
31 #define __com_sun_star_text_AccessibleTextDocumentView_idl__
33 #ifndef __com_sun_star_accessibility_XAccessibleContext_idl__
34 #include
<com
/sun
/star
/accessibility
/XAccessibleContext.idl
>
37 #ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__
38 #include
<com
/sun
/star
/accessibility
/XAccessibleComponent.idl
>
41 #ifndef __com_sun_star_accessibility_XAccessibleSelection_idl__
42 #include
<com
/sun
/star
/accessibility
/XAccessibleSelection.idl
>
45 #ifndef __com_sun_star_accessibility_XAccessibleEventBroadcaster_idl__
46 #include
<com
/sun
/star
/accessibility
/XAccessibleEventBroadcaster.idl
>
50 //=============================================================================
52 module com
{ module sun
{ module star
{ module text
{
54 //=============================================================================
56 /** The accessible view of a text document.
60 published service AccessibleTextDocumentView
62 /** This interface gives access to any text, table, graphic, embedded
63 object and drawing that is at least partially visible on the screen.
64 The tree that arises from the children of this object reflects the
65 structure of the document as it is displayed.
68 <li>The children returned by
69 <method scope="::com::sun::star::accessibility"
70 >XAccessibleContext::getAccessibleChild</method> all support
71 the interface XAccessible. Calling
72 <method scope="::com::sun::star::accessibility"
73 >XAccessible::getAccessibleContext</method> for these children
74 returns an object that supports one of the following
77 <li><type scope="::com::sun::star::text"
78 >AccessibleHeaderFooterView</type>:
79 A child of this kind is returned for every header
80 and footer that is at least partially visible.
81 <li><type scope="::com::sun::star::text"
82 >AccessibleFootnoteView</type>:
83 A child of this kind is returned for every footnote
84 that is at least partially visible.
85 <li><type scoep="::com::sun::star::text"
86 >AccessibleEndnoteView</type>:
87 A child of this kind is returned for every endnote
88 that is at least partially visible.
89 <li><type scope="::com::sun::star::text"
90 >AccessibleParagraphView</type>:
91 A child of this kind is returned for every paragraph
92 fragment that is contained in the document body and
93 is at least partially visible. A paragraph fragment is
94 the part of a paragraph that is displayed on a
96 <li><type scope="::com::sun::star::table"
97 >AccessibleTableView</type>:
98 A child of this kind is returned for every table
99 fragment that is contained in the document body
100 and is at least partially visible. A table fragment is
101 the part of a table that is displayed on a certain page.
102 <li><type scope="::com::sun::star::text"
103 >AccessibleTextFrameView</type>: A child of this
104 kind is returned for every text frame that is at
105 least partially visible. These objects are children
107 <type>AccessibleTextDocumentView</type> regardless
108 whether they are bound to a page, a paragarph, a
109 frame, or a character. The only exception are text
110 frames that are bound as character. They are childen
111 of the paragraph they are contained in.
112 <li><type scope="::com::sun::star::text"
113 >AccessibleTextGraphicObject</type>:
114 A child of this kind is returned for every graphic that
115 is at least partially visible. These objects are
116 children of the <type>AccessibleTextDocumentView</type>
117 regardless whether they are bound to a page, paragraph,
118 a frame or a character. The only exception
119 are text frames that are bound as character. They are
120 childen of the paragraph they are contained in.
121 <li><type scope="::com::sun::star::text"
122 >AccessibleTextEmbeddedObject</type>:
123 A child of this kind is returned for every embedded
124 object that is at least partially visible.
125 These objects are children of the
126 <type>AccessibleTextDocumentView</type> regardless
127 whether they are bound to a page, a paragarph, a frame,
128 or a character. They are childen of the paragraph they
130 <li><type scope="::com::sun::star::drawing"
131 >AccessibleShape</type>: A child of this kind (or a
132 derived interface) is returned for every shape that
133 is at least partially visible. These objects are
135 <type>AccessibleTextDocumentView</type> regardless
136 whether they are bound to a page, a paragraph, a
137 frame or a character.
139 <p>The following rules apply to the children order:
141 <li>The logical order of paragraph and table fragments is
143 <li>Headers appear immediately before the first paragraph or
144 table fragment of the header's page.
145 <li>Footnotes appear immediately after the last paragraph or
146 table fragment of the footnote's page. The logical order
147 of footnotes isn't changed.
148 <li>Endnotes appear immediately after the last footnote of
149 the endnote's page or after the last paragraph or
150 table fragment of this page if there are no footnotes.
151 The logical order of endnotes isn't changed.
152 <li>Footers appear immediately after the last endnote,
153 footnote, paragraph or table fragment of the footer's
155 <li>Text frames, graphics, embedded objects and shapes that
156 are painted in the background appear before any other
157 children. Their order reflects the z order.
158 <li>Text frames, graphics, embedded objects and shapes
159 that are painted in the foreground appear behind any
160 other children. Their order reflects the z order,
161 with the exception of controls that appear really last,
162 but also keep the z order.
164 <li>The role is <const scope="::com::sun::star::accessibility"
165 >AccessibleRole::DOCUMENT</const>.
166 <li>The name is "document view" (or the equivalent term
167 in application's language).
168 <li>The description also is "document view" (or the equivalent term
169 in application's language).
170 <li>There are no relation sets.
171 <li>The following states might be contained in the state set
172 returned by <method scope="::com::sun::star::accessibility"
173 >XAccessibleContext::getAccessibleStateSet</method>:
175 <li><const scope="::com::sun::star::accessibility"
176 >AccessibleStateType::DEFUNC</const> (indicates that
177 the document window has been closed)
178 <li><const scope="::com::sun::star::accessibility"
179 >AccessibleStateType::EDITABLE</const>
180 <li><const scope="::com::sun::star::accessibility"
181 >AccessibleStateType::ENABLED</const> (always
183 <li><const scope="::com::sun::star::accessibility"
184 >AccessibleStateType::MULTI_SELECTABLE</const>
186 <li><const scope="::com::sun::star::accessibility"
187 >AccessibleStateType::OPAQUE</const> (always
189 <li><const scope="::com::sun::star::accessibility"
190 >AccessibleStateType::SHOWING</const>
191 <li><const scope="::com::sun::star::accessibility"
192 >AccessibleStateType::VISIBLE</const>
194 <li>Depending of the application's region setting, the locale is
195 the western, asian or complex default language of the document.
199 interface ::com
::sun
::star
::accessibility
::XAccessibleContext
;
201 /** This interface describes the graphical representation of a text
204 interface ::com
::sun
::star
::accessibility
::XAccessibleComponent
;
206 /** This interface is for selecting the document's children. Selectable
207 are any children with the exception of headers, footers, footnotes
208 and endnotes, where only the grandchildren might be selectable.
210 interface ::com
::sun
::star
::accessibility
::XAccessibleSelection
;
212 /** This is the interface for listeners
214 interface ::com
::sun
::star
::accessibility
::XAccessibleEventBroadcaster
;
217 //=============================================================================