1/**************************************************************
2 *
3 * Licensed to the Apache Software Foundation (ASF) under one
4 * or more contributor license agreements.  See the NOTICE file
5 * distributed with this work for additional information
6 * regarding copyright ownership.  The ASF licenses this file
7 * to you under the Apache License, Version 2.0 (the
8 * "License"); you may not use this file except in compliance
9 * with the License.  You may obtain a copy of the License at
10 *
11 *   http://www.apache.org/licenses/LICENSE-2.0
12 *
13 * Unless required by applicable law or agreed to in writing,
14 * software distributed under the License is distributed on an
15 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
16 * KIND, either express or implied.  See the License for the
17 * specific language governing permissions and limitations
18 * under the License.
19 *
20 *************************************************************/
21
22
23#ifndef __com_sun_star_text_AccessibleTextFrameView_idl__
24#define __com_sun_star_text_AccessibleTextFrameView_idl__
25
26#ifndef __com_sun_star_accessibility_XAccessibleContext_idl__
27#include <com/sun/star/accessibility/XAccessibleContext.idl>
28#endif
29
30#ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__
31#include <com/sun/star/accessibility/XAccessibleComponent.idl>
32#endif
33
34
35#ifndef __com_sun_star_accessibility_XAccessibleEventBroadcaster_idl__
36#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.idl>
37#endif
38
39//=============================================================================
40
41module com {  module sun {  module star {  module text {
42
43//=============================================================================
44
45/** The accessible view of text frames.
46
47	 @since OpenOffice 1.1.2
48 */
49published service AccessibleTextFrameView
50{
51	/** This interface gives access to any paragraph fragment and table
52	    fragment that is contained in a text frame and at least
53		partially visible on the screen.
54
55		<ul>
56			<li>The parent returned by
57                <method scope="::com::sun::star::accessibility"
58                >XAccessibleContext::getAccessibleParent</type> is the
59                accessible view of a paragraph if the text frame is bound as
60                character, and the accessible view (or of a page in the page
61                preview) of the document in any other case.
62			<li>The children returned by
63                <method scope="::com::sun::star::accessibility"
64                >XAccessibleContext::getAccessibleChild</type> all support the
65                interface XAccessible. Calling
66				<method scope="::com::sun::star::accessibility"
67                >XAccessible::getAccessibleContext</type> for these children
68                returns an object that supports one of the following
69                services.
70				<ul>
71					<li><type scope="::com::sun::star::text"
72                        >AccessibleParagraphView</type>: A child of this
73                        kind is returned for every paragraph fragment that
74                        is contained in the document body and is at least
75                        partially visible. A paragraph fragment is the part
76                        of a paragraph that is displayed on a certain page
77                        or a certain column.
78					<li><type scope="::com::sun::star::table"
79                        >AccessibleTableView</type>: A child of this kind is
80                        returned for every table fragment that is contained
81                        in the document body and is at least partially
82                        visible. A table fragment is the part of a table
83                        that is displayed on a certain page or a certain
84                        column.
85				</ul>
86				<p>The logical order of paragraph and table fragments is never
87				   changed.
88			<li>The role is <const scope="::com::sun::star::accessibility"
89                >AccessibleRole::TEXT_FRAME</const>
90			<li>The name is the one assigned to the text frame in the text
91				document. This means that it is not internationalized.
92			<li>The description is the one assigned to the text frame in the
93				text document. This means that it is not internationalized. If
94				no description has been set, the description equals the name.
95			<li>There are no relations.
96			<li>The following states might be contained in the state set
97				returned by <method scope="::com::sun::star::accessibility"
98				>XAccessibleContext::getAccessibleStateSet</method>:
99				<ul>
100					<li><const scope="::com::sun::star::accessibility"
101                        >AccessibleStateType::DEFUNC</const> (indicates that
102                        the document window has been closed or the graphic
103                        is not existing any longer)
104					<li><const scope="::com::sun::star::accessibility"
105                        >AccessibleStateType::EDITABLE</const>
106					<li><const scope="::com::sun::star::accessibility"
107                        >AccessibleStateType::ENABLED</const> (always
108                        contained)
109					<li><const scope="::com::sun::star::accessibility"
110                        >AccessibleStateType::OPAQUE</const>
111					<li><const scope="::com::sun::star::accessibility"
112                        >AccessibleStateType::SELECTABLE</const>
113					<li><const scope="::com::sun::star::accessibility"
114                        >AccessibleStateType::SELECTED</const>
115					<li><const scope="::com::sun::star::accessibility"
116                        >AccessibleStateType::FOCUSABLE</const>
117					<li><const scope="::com::sun::star::accessibility"
118                        >AccessibleStateType::FOCUSED</const>
119					<li><const scope="::com::sun::star::accessibility"
120                        >AccessibleStateType::SHOWING</const>
121					<li><const scope="::com::sun::star::accessibility"
122                        >AccessibleStateType::VISIBLE</const>
123				</ul>
124			<li>The locale is the one the text document itself.
125			<li>There are the two relations CONTENT_FLOWS_FROM and
126				CONTENT_FLOWS_TO supported.
127		</ul>
128
129	 */
130	interface ::com::sun::star::accessibility::XAccessibleContext;
131
132	/** This interface describes the graphical representation of a
133	  	text frame.
134	 */
135	interface ::com::sun::star::accessibility::XAccessibleComponent;
136
137	/** This is the interface for listeners */
138	interface ::com::sun::star::accessibility::XAccessibleEventBroadcaster;
139};
140
141//=============================================================================
142
143}; }; }; };
144
145#endif
146