1*cdf0e10cSrcweir/************************************************************************* 2*cdf0e10cSrcweir * 3*cdf0e10cSrcweir * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 4*cdf0e10cSrcweir * 5*cdf0e10cSrcweir * Copyright 2000, 2010 Oracle and/or its affiliates. 6*cdf0e10cSrcweir * 7*cdf0e10cSrcweir * OpenOffice.org - a multi-platform office productivity suite 8*cdf0e10cSrcweir * 9*cdf0e10cSrcweir * This file is part of OpenOffice.org. 10*cdf0e10cSrcweir * 11*cdf0e10cSrcweir * OpenOffice.org is free software: you can redistribute it and/or modify 12*cdf0e10cSrcweir * it under the terms of the GNU Lesser General Public License version 3 13*cdf0e10cSrcweir * only, as published by the Free Software Foundation. 14*cdf0e10cSrcweir * 15*cdf0e10cSrcweir * OpenOffice.org is distributed in the hope that it will be useful, 16*cdf0e10cSrcweir * but WITHOUT ANY WARRANTY; without even the implied warranty of 17*cdf0e10cSrcweir * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18*cdf0e10cSrcweir * GNU Lesser General Public License version 3 for more details 19*cdf0e10cSrcweir * (a copy is included in the LICENSE file that accompanied this code). 20*cdf0e10cSrcweir * 21*cdf0e10cSrcweir * You should have received a copy of the GNU Lesser General Public License 22*cdf0e10cSrcweir * version 3 along with OpenOffice.org. If not, see 23*cdf0e10cSrcweir * <http://www.openoffice.org/license.html> 24*cdf0e10cSrcweir * for a copy of the LGPLv3 License. 25*cdf0e10cSrcweir * 26*cdf0e10cSrcweir ************************************************************************/ 27*cdf0e10cSrcweir 28*cdf0e10cSrcweir#ifndef __com_sun_star_drawing_AccessibleGraphicShape_idl__ 29*cdf0e10cSrcweir#define __com_sun_star_drawing_AccessibleGraphicShape_idl__ 30*cdf0e10cSrcweir 31*cdf0e10cSrcweir#ifndef __com_sun_star_accessibility_XAccessible_idl__ 32*cdf0e10cSrcweir#include <com/sun/star/accessibility/XAccessible.idl> 33*cdf0e10cSrcweir#endif 34*cdf0e10cSrcweir#ifndef __com_sun_star_accessibility_XAccessibleContext_idl__ 35*cdf0e10cSrcweir#include <com/sun/star/accessibility/XAccessibleContext.idl> 36*cdf0e10cSrcweir#endif 37*cdf0e10cSrcweir#ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__ 38*cdf0e10cSrcweir#include <com/sun/star/accessibility/XAccessibleComponent.idl> 39*cdf0e10cSrcweir#endif 40*cdf0e10cSrcweir 41*cdf0e10cSrcweirmodule com { module sun { module star { module drawing { 42*cdf0e10cSrcweir 43*cdf0e10cSrcweir/** The <type>AccessibleDrawDocumentView</type> service is implemented by 44*cdf0e10cSrcweir views of Draw and Impress documents. 45*cdf0e10cSrcweir 46*cdf0e10cSrcweir <p>An object that implements the <type>AccessibleDrawDocumentView</type> 47*cdf0e10cSrcweir service provides information about the view of a Draw or Impress 48*cdf0e10cSrcweir document in one of the various view modes. With its children it gives 49*cdf0e10cSrcweir access to the current page and the shapes on that page.</p> 50*cdf0e10cSrcweir 51*cdf0e10cSrcweir <p>This service gives a simplified view on the underlying document. It 52*cdf0e10cSrcweir tries both to keep the structure of the accessibility representation 53*cdf0e10cSrcweir tree as simple as possible and provide as much relevant information as 54*cdf0e10cSrcweir possible. This has the following consequences: 55*cdf0e10cSrcweir <ol> 56*cdf0e10cSrcweir <li>Only the current draw page and only the visible shapes are 57*cdf0e10cSrcweir accessible. To switch to another page or to access shapes that lie 58*cdf0e10cSrcweir outside the currently visible area, the user has to issue these requests 59*cdf0e10cSrcweir manually or programmatically through the usual chanels, e.g. pressing 60*cdf0e10cSrcweir keys or selecting menu entries.</li> 61*cdf0e10cSrcweir <li>The hierarchy exposed through the 62*cdf0e10cSrcweir <type scope="::com::sun::star::accessibility">XAccessibleContext</type> 63*cdf0e10cSrcweir interface does not necessarily correspond directly to the underlying 64*cdf0e10cSrcweir draw page structure. Internal nodes in this hierarchy are introduced 65*cdf0e10cSrcweir by group shapes, 3D scenes, and OLE objects.</li> 66*cdf0e10cSrcweir <li>The view modes editing view, outline view, slides view, notes view, 67*cdf0e10cSrcweir handout view, and presentation view are not exposed explicitly. 68*cdf0e10cSrcweir However, if there happens to be a view mode change which results in a 69*cdf0e10cSrcweir rearrangement of the visible shapes, the user gets notified of this.</li> 70*cdf0e10cSrcweir </ol></p> 71*cdf0e10cSrcweir 72*cdf0e10cSrcweir @since OOo 1.1.2 73*cdf0e10cSrcweir*/ 74*cdf0e10cSrcweirpublished service AccessibleDrawDocumentView 75*cdf0e10cSrcweir{ 76*cdf0e10cSrcweir /** Base interface for being accessible. It gives access to the 77*cdf0e10cSrcweir <type scope="::com::sun::star::accessibility">XAccessibleContext</type> 78*cdf0e10cSrcweir interface. 79*cdf0e10cSrcweir */ 80*cdf0e10cSrcweir interface ::com::sun::star::accessibility::XAccessible; 81*cdf0e10cSrcweir 82*cdf0e10cSrcweir /** Provide access to the view of a document. 83*cdf0e10cSrcweir 84*cdf0e10cSrcweir <p>You can access the following information: 85*cdf0e10cSrcweir <ul> 86*cdf0e10cSrcweir <li>Role: The object's role is <const 87*cdf0e10cSrcweir scope="com::sun::star::accessibility" 88*cdf0e10cSrcweir >AccessibleRole::DOCUMENT</const>.</li> 89*cdf0e10cSrcweir <li>Name: Its name is "AccessibleDrawDocumentView", 90*cdf0e10cSrcweir "AccessibleOutlineView", or "slide window".</li> 91*cdf0e10cSrcweir <li>Description: The description is "Draw Document", "Accessible 92*cdf0e10cSrcweir Draw Document Outline", or "slide window".</li> 93*cdf0e10cSrcweir <li>Children: The shapes of the current draw page that are currently 94*cdf0e10cSrcweir visible are direct and indirect children of (an object 95*cdf0e10cSrcweir implementing) 96*cdf0e10cSrcweir this service. Group shapes, 3D scenes, and OLE objects 97*cdf0e10cSrcweir introduce further levels into the hierarchy. If the visibility 98*cdf0e10cSrcweir of shapes changes--due to 99*cdf0e10cSrcweir scrolling, switching the current draw page, or changing the view 100*cdf0e10cSrcweir mode--the appropriate listeners are called and the user gets 101*cdf0e10cSrcweir informed of this.</li> 102*cdf0e10cSrcweir <li>Parent: The parent will usually be the window that contains the 103*cdf0e10cSrcweir draw document view. It has to be set via implementation dependend 104*cdf0e10cSrcweir ways.</li> 105*cdf0e10cSrcweir <li>Relations: Relations are set and modified from the outside.</li> 106*cdf0e10cSrcweir <li>States: <const scope="com::sun::star::accessibility" 107*cdf0e10cSrcweir >AccessibleStateType::DEFUNC</const> is set if a document view 108*cdf0e10cSrcweir becomes obsolete like when the window, which displays the view, 109*cdf0e10cSrcweir is closed. Otherwise the states 110*cdf0e10cSrcweir <const scope="com::sun::star::accessibility" 111*cdf0e10cSrcweir >AccessibleStateType::ENABLED</const>, 112*cdf0e10cSrcweir <const scope="com::sun::star::accessibility" 113*cdf0e10cSrcweir >AccessibleStateType::SHOWING</const>, 114*cdf0e10cSrcweir <const scope="com::sun::star::accessibility" 115*cdf0e10cSrcweir >AccessibleStateType::VISIBLE</const>, 116*cdf0e10cSrcweir <const scope="com::sun::star::accessibility" 117*cdf0e10cSrcweir >AccessibleStateType::FOCUSABLE</const>, and 118*cdf0e10cSrcweir <const scope="com::sun::star::accessibility" 119*cdf0e10cSrcweir >AccessibleStateType::SELECTABLE</const> 120*cdf0e10cSrcweir are always set.</li> 121*cdf0e10cSrcweir <li>Locale: Is obtained from the parent and returned unchanged.</li> 122*cdf0e10cSrcweir </ul></p> 123*cdf0e10cSrcweir */ 124*cdf0e10cSrcweir interface ::com::sun::star::accessibility::XAccessibleContext; 125*cdf0e10cSrcweir 126*cdf0e10cSrcweir /** Provide access to a draw document's graphical representation. 127*cdf0e10cSrcweir 128*cdf0e10cSrcweir <p>The main purpose of this interface is to provide a bounding box 129*cdf0e10cSrcweir of the currently visible area and to let the user find children 130*cdf0e10cSrcweir (i.e. shapes) that cover a given test point. The more interesting 131*cdf0e10cSrcweir part of the graphical representation of a draw page lies in its 132*cdf0e10cSrcweir children. See the <type>AccessibleShape</type> service for more 133*cdf0e10cSrcweir information about shapes.</p> 134*cdf0e10cSrcweir 135*cdf0e10cSrcweir @see AccessibleShape 136*cdf0e10cSrcweir */ 137*cdf0e10cSrcweir interface ::com::sun::star::accessibility::XAccessibleComponent; 138*cdf0e10cSrcweir}; 139*cdf0e10cSrcweir 140*cdf0e10cSrcweir}; }; }; }; 141*cdf0e10cSrcweir 142*cdf0e10cSrcweir#endif 143