1d1766043SAndrew Rist/**************************************************************
2cdf0e10cSrcweir *
3d1766043SAndrew Rist * Licensed to the Apache Software Foundation (ASF) under one
4d1766043SAndrew Rist * or more contributor license agreements.  See the NOTICE file
5d1766043SAndrew Rist * distributed with this work for additional information
6d1766043SAndrew Rist * regarding copyright ownership.  The ASF licenses this file
7d1766043SAndrew Rist * to you under the Apache License, Version 2.0 (the
8d1766043SAndrew Rist * "License"); you may not use this file except in compliance
9d1766043SAndrew Rist * with the License.  You may obtain a copy of the License at
10d1766043SAndrew Rist *
11d1766043SAndrew Rist *   http://www.apache.org/licenses/LICENSE-2.0
12d1766043SAndrew Rist *
13d1766043SAndrew Rist * Unless required by applicable law or agreed to in writing,
14d1766043SAndrew Rist * software distributed under the License is distributed on an
15d1766043SAndrew Rist * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16d1766043SAndrew Rist * KIND, either express or implied.  See the License for the
17d1766043SAndrew Rist * specific language governing permissions and limitations
18d1766043SAndrew Rist * under the License.
19d1766043SAndrew Rist *
20d1766043SAndrew Rist *************************************************************/
21d1766043SAndrew Rist
22d1766043SAndrew Rist
23cdf0e10cSrcweir#ifndef __com_sun_star_text_AccessibleTextDocumentView_idl__
24cdf0e10cSrcweir#define __com_sun_star_text_AccessibleTextDocumentView_idl__
25cdf0e10cSrcweir
26cdf0e10cSrcweir#ifndef __com_sun_star_accessibility_XAccessibleContext_idl__
27cdf0e10cSrcweir#include <com/sun/star/accessibility/XAccessibleContext.idl>
28cdf0e10cSrcweir#endif
29cdf0e10cSrcweir
30cdf0e10cSrcweir#ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__
31cdf0e10cSrcweir#include <com/sun/star/accessibility/XAccessibleComponent.idl>
32cdf0e10cSrcweir#endif
33cdf0e10cSrcweir
34cdf0e10cSrcweir#ifndef __com_sun_star_accessibility_XAccessibleSelection_idl__
35cdf0e10cSrcweir#include <com/sun/star/accessibility/XAccessibleSelection.idl>
36cdf0e10cSrcweir#endif
37cdf0e10cSrcweir
38cdf0e10cSrcweir#ifndef __com_sun_star_accessibility_XAccessibleEventBroadcaster_idl__
39cdf0e10cSrcweir#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.idl>
40cdf0e10cSrcweir#endif
41cdf0e10cSrcweir
42cdf0e10cSrcweir
43cdf0e10cSrcweir//=============================================================================
44cdf0e10cSrcweir
45cdf0e10cSrcweirmodule com {  module sun {  module star {  module text {
46cdf0e10cSrcweir
47cdf0e10cSrcweir//=============================================================================
48cdf0e10cSrcweir
49cdf0e10cSrcweir/** The accessible view of a text document.
50cdf0e10cSrcweir
512a413f17SJürgen Schmidt	 @since OpenOffice 1.1.2
52cdf0e10cSrcweir */
53cdf0e10cSrcweirpublished service AccessibleTextDocumentView
54cdf0e10cSrcweir{
55cdf0e10cSrcweir	/** This interface gives access to any text, table, graphic, embedded
56cdf0e10cSrcweir	  	object and drawing that is at least partially visible on the screen.
57cdf0e10cSrcweir		The tree that arises from the children of this object reflects the
58cdf0e10cSrcweir		structure of the document as it is displayed.
59cdf0e10cSrcweir
60cdf0e10cSrcweir		<ul>
61cdf0e10cSrcweir			<li>The children returned by
62cdf0e10cSrcweir                <method scope="::com::sun::star::accessibility"
63cdf0e10cSrcweir                >XAccessibleContext::getAccessibleChild</method> all support
64cdf0e10cSrcweir                the interface XAccessible. Calling
65cdf0e10cSrcweir				<method scope="::com::sun::star::accessibility"
66cdf0e10cSrcweir                >XAccessible::getAccessibleContext</method> for these children
67cdf0e10cSrcweir                returns an object that supports one of the following
68cdf0e10cSrcweir                services.
69cdf0e10cSrcweir				<ul>
70cdf0e10cSrcweir					<li><type scope="::com::sun::star::text"
71cdf0e10cSrcweir                        >AccessibleHeaderFooterView</type>:
72cdf0e10cSrcweir						A child of this kind is returned for every header
73cdf0e10cSrcweir						and footer that is at least partially visible.
74cdf0e10cSrcweir					<li><type scope="::com::sun::star::text"
75cdf0e10cSrcweir                        >AccessibleFootnoteView</type>:
76cdf0e10cSrcweir						A child of this kind is returned for every footnote
77cdf0e10cSrcweir						that is at least partially visible.
78cdf0e10cSrcweir					<li><type scoep="::com::sun::star::text"
79cdf0e10cSrcweir                        >AccessibleEndnoteView</type>:
80cdf0e10cSrcweir						A child of this kind is returned for every endnote
81cdf0e10cSrcweir						that is at least partially visible.
82cdf0e10cSrcweir					<li><type scope="::com::sun::star::text"
83cdf0e10cSrcweir                        >AccessibleParagraphView</type>:
84cdf0e10cSrcweir						A child of this kind is returned for every paragraph
85cdf0e10cSrcweir						fragment that is contained in the document body and
86cdf0e10cSrcweir						is at least partially visible. A paragraph fragment is
87cdf0e10cSrcweir						the part of a paragraph that is displayed on a
88cdf0e10cSrcweir						certain page.
89cdf0e10cSrcweir					<li><type scope="::com::sun::star::table"
90cdf0e10cSrcweir                        >AccessibleTableView</type>:
91cdf0e10cSrcweir						A child of this kind is returned for every table
92cdf0e10cSrcweir						fragment that is contained in the document body
93cdf0e10cSrcweir						and is at least partially visible. A table fragment is
94cdf0e10cSrcweir						the part of a table that is displayed on a certain page.
95cdf0e10cSrcweir					<li><type scope="::com::sun::star::text"
96cdf0e10cSrcweir                        >AccessibleTextFrameView</type>: A child of this
97cdf0e10cSrcweir                        kind is returned for every text frame that is at
98cdf0e10cSrcweir                        least partially visible. These objects are children
99cdf0e10cSrcweir                        of the
100cdf0e10cSrcweir						<type>AccessibleTextDocumentView</type> regardless
101cdf0e10cSrcweir						whether they are bound to a page, a paragarph, a
102cdf0e10cSrcweir						frame, or a character. The only exception are text
103*a893be29SPedro Giffuni						frames that are bound as character. They are children
104cdf0e10cSrcweir						of the paragraph they are contained in.
105cdf0e10cSrcweir					<li><type scope="::com::sun::star::text"
106cdf0e10cSrcweir                        >AccessibleTextGraphicObject</type>:
107cdf0e10cSrcweir						A child of this kind is returned for every graphic that
108cdf0e10cSrcweir						is at least partially visible. These objects are
109cdf0e10cSrcweir						children of the <type>AccessibleTextDocumentView</type>
110cdf0e10cSrcweir						regardless whether they are bound to a page, paragraph,
111cdf0e10cSrcweir						a frame or a character. The only exception
112cdf0e10cSrcweir						are text frames that are bound as character. They are
113*a893be29SPedro Giffuni						children of the paragraph they are contained in.
114cdf0e10cSrcweir					<li><type scope="::com::sun::star::text"
115cdf0e10cSrcweir                        >AccessibleTextEmbeddedObject</type>:
116cdf0e10cSrcweir						A child of this kind is returned for every embedded
117cdf0e10cSrcweir						object that is at least partially visible.
118cdf0e10cSrcweir						These objects are children of the
119cdf0e10cSrcweir						<type>AccessibleTextDocumentView</type> regardless
120cdf0e10cSrcweir						whether they are bound to a page, a paragarph, a frame,
121*a893be29SPedro Giffuni						or a character.  They are children of the paragraph they
122cdf0e10cSrcweir						are contained in.
123cdf0e10cSrcweir					<li><type scope="::com::sun::star::drawing"
124cdf0e10cSrcweir                        >AccessibleShape</type>: A child of this kind (or a
125cdf0e10cSrcweir                        derived interface) is returned for every shape that
126cdf0e10cSrcweir                        is at least partially visible. These objects are
127cdf0e10cSrcweir                        children of the
128cdf0e10cSrcweir                        <type>AccessibleTextDocumentView</type> regardless
129cdf0e10cSrcweir                        whether they are bound to a page, a paragraph, a
130cdf0e10cSrcweir                        frame or a character.
131cdf0e10cSrcweir				</ul>
132cdf0e10cSrcweir				<p>The following rules apply to the children order:
133cdf0e10cSrcweir				<ul>
134cdf0e10cSrcweir					<li>The logical order of paragraph and table fragments is
135cdf0e10cSrcweir						never changed.
136cdf0e10cSrcweir					<li>Headers appear immediately before the first paragraph or
137cdf0e10cSrcweir						table fragment of the header's page.
138cdf0e10cSrcweir					<li>Footnotes appear immediately after the last paragraph or
139cdf0e10cSrcweir						table fragment of the footnote's page. The logical order
140cdf0e10cSrcweir						of footnotes isn't changed.
141cdf0e10cSrcweir					<li>Endnotes appear immediately after the last footnote of
142cdf0e10cSrcweir						the endnote's page or after the last paragraph or
143cdf0e10cSrcweir						table fragment of this page if there are no footnotes.
144cdf0e10cSrcweir						The logical order of endnotes isn't changed.
145cdf0e10cSrcweir					<li>Footers appear immediately after the last endnote,
146cdf0e10cSrcweir						footnote, paragraph or table fragment of the footer's
147cdf0e10cSrcweir						page.
148cdf0e10cSrcweir					<li>Text frames, graphics, embedded objects and shapes that
149cdf0e10cSrcweir						are painted in the background appear before any other
150cdf0e10cSrcweir						children. Their order reflects the z order.
151cdf0e10cSrcweir					<li>Text frames, graphics, embedded objects and shapes
152cdf0e10cSrcweir						that are painted in the foreground appear behind any
153cdf0e10cSrcweir					   	other children. Their order reflects the z order,
154cdf0e10cSrcweir						with the exception of controls that appear really last,
155cdf0e10cSrcweir						but also keep the z order.
156cdf0e10cSrcweir				</ul>
157cdf0e10cSrcweir			<li>The role is <const scope="::com::sun::star::accessibility"
158cdf0e10cSrcweir                >AccessibleRole::DOCUMENT</const>.
159cdf0e10cSrcweir			<li>The name is "document view" (or the equivalent term
160cdf0e10cSrcweir				in application's language).
161cdf0e10cSrcweir			<li>The description also is "document view" (or the equivalent term
162cdf0e10cSrcweir				in application's language).
163cdf0e10cSrcweir			<li>There are no relation sets.
164cdf0e10cSrcweir			<li>The following states might be contained in the state set
165cdf0e10cSrcweir				returned by <method scope="::com::sun::star::accessibility"
166cdf0e10cSrcweir                >XAccessibleContext::getAccessibleStateSet</method>:
167cdf0e10cSrcweir				<ul>
168cdf0e10cSrcweir					<li><const scope="::com::sun::star::accessibility"
169cdf0e10cSrcweir                        >AccessibleStateType::DEFUNC</const> (indicates that
170cdf0e10cSrcweir                        the document window has been closed)
171cdf0e10cSrcweir					<li><const scope="::com::sun::star::accessibility"
172cdf0e10cSrcweir                        >AccessibleStateType::EDITABLE</const>
173cdf0e10cSrcweir					<li><const scope="::com::sun::star::accessibility"
174cdf0e10cSrcweir                        >AccessibleStateType::ENABLED</const> (always
175cdf0e10cSrcweir                        contained)
176cdf0e10cSrcweir					<li><const scope="::com::sun::star::accessibility"
177cdf0e10cSrcweir                        >AccessibleStateType::MULTI_SELECTABLE</const>
178cdf0e10cSrcweir                        (always contained)
179cdf0e10cSrcweir					<li><const scope="::com::sun::star::accessibility"
180cdf0e10cSrcweir                        >AccessibleStateType::OPAQUE</const> (always
181cdf0e10cSrcweir                        contained)
182cdf0e10cSrcweir					<li><const scope="::com::sun::star::accessibility"
183cdf0e10cSrcweir                        >AccessibleStateType::SHOWING</const>
184cdf0e10cSrcweir					<li><const scope="::com::sun::star::accessibility"
185cdf0e10cSrcweir                        >AccessibleStateType::VISIBLE</const>
186cdf0e10cSrcweir				</ul>
187cdf0e10cSrcweir			<li>Depending of the application's region setting, the locale is
188cdf0e10cSrcweir				the western, asian or complex default language of the document.
189cdf0e10cSrcweir		</ul>
190cdf0e10cSrcweir
191cdf0e10cSrcweir    */
192cdf0e10cSrcweir	interface ::com::sun::star::accessibility::XAccessibleContext;
193cdf0e10cSrcweir
194cdf0e10cSrcweir	/** This interface describes the graphical representation of a text
195cdf0e10cSrcweir	  	document view.
196cdf0e10cSrcweir    */
197cdf0e10cSrcweir	interface ::com::sun::star::accessibility::XAccessibleComponent;
198cdf0e10cSrcweir
199cdf0e10cSrcweir	/** This interface is for selecting the document's children. Selectable
200cdf0e10cSrcweir	  	are any children with the exception of headers, footers, footnotes
201cdf0e10cSrcweir		and endnotes, where only the grandchildren might be selectable.
202cdf0e10cSrcweir    */
203cdf0e10cSrcweir	interface ::com::sun::star::accessibility::XAccessibleSelection;
204cdf0e10cSrcweir
205cdf0e10cSrcweir	/** This is the interface for listeners
206cdf0e10cSrcweir    */
207cdf0e10cSrcweir	interface ::com::sun::star::accessibility::XAccessibleEventBroadcaster;
208cdf0e10cSrcweir};
209cdf0e10cSrcweir
210cdf0e10cSrcweir//=============================================================================
211cdf0e10cSrcweir
212cdf0e10cSrcweir}; }; }; };
213cdf0e10cSrcweir
214cdf0e10cSrcweir#endif
215