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