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
24cdf0e10cSrcweir#ifndef __com_sun_star_drawing_AccessibleGraphicShape_idl__
25cdf0e10cSrcweir#define __com_sun_star_drawing_AccessibleGraphicShape_idl__
26cdf0e10cSrcweir
27cdf0e10cSrcweir#ifndef __com_sun_star_accessibility_XAccessible_idl__
28cdf0e10cSrcweir#include <com/sun/star/accessibility/XAccessible.idl>
29cdf0e10cSrcweir#endif
30cdf0e10cSrcweir#ifndef __com_sun_star_accessibility_XAccessibleContext_idl__
31cdf0e10cSrcweir#include <com/sun/star/accessibility/XAccessibleContext.idl>
32cdf0e10cSrcweir#endif
33cdf0e10cSrcweir#ifndef __com_sun_star_accessibility_XAccessibleComponent_idl__
34cdf0e10cSrcweir#include <com/sun/star/accessibility/XAccessibleComponent.idl>
35cdf0e10cSrcweir#endif
36cdf0e10cSrcweir
37cdf0e10cSrcweirmodule com {  module sun {  module star {  module drawing {
38cdf0e10cSrcweir
39cdf0e10cSrcweir/** The <type>AccessibleDrawDocumentView</type> service is implemented by
40cdf0e10cSrcweir    views of Draw and Impress documents.
41cdf0e10cSrcweir
42cdf0e10cSrcweir    <p>An object that implements the <type>AccessibleDrawDocumentView</type>
43cdf0e10cSrcweir    service provides information about the view of a Draw or Impress
44cdf0e10cSrcweir    document in one of the various view modes.  With its children it gives
45cdf0e10cSrcweir    access to the current page and the shapes on that page.</p>
46cdf0e10cSrcweir
47cdf0e10cSrcweir    <p>This service gives a simplified view on the underlying document.  It
48cdf0e10cSrcweir    tries both to keep the structure of the accessibility representation
49cdf0e10cSrcweir    tree as simple as possible and provide as much relevant information as
50cdf0e10cSrcweir    possible.  This has the following consequences:
51cdf0e10cSrcweir    <ol>
52cdf0e10cSrcweir    <li>Only the current draw page and only the visible shapes are
53cdf0e10cSrcweir    accessible.  To switch to another page or to access shapes that lie
54cdf0e10cSrcweir    outside the currently visible area, the user has to issue these requests
55cdf0e10cSrcweir    manually or programmatically through the usual chanels, e.g. pressing
56cdf0e10cSrcweir    keys or selecting menu entries.</li>
57cdf0e10cSrcweir    <li>The hierarchy exposed through the
58cdf0e10cSrcweir    <type scope="::com::sun::star::accessibility">XAccessibleContext</type>
59cdf0e10cSrcweir    interface does not necessarily correspond directly to the underlying
60cdf0e10cSrcweir    draw page structure.  Internal nodes in this hierarchy are introduced
61cdf0e10cSrcweir    by group shapes, 3D scenes, and OLE objects.</li>
62cdf0e10cSrcweir    <li>The view modes editing view, outline view, slides view, notes view,
63cdf0e10cSrcweir    handout view, and presentation view are not exposed explicitly.
64cdf0e10cSrcweir    However, if there happens to be a view mode change which results in a
65cdf0e10cSrcweir    rearrangement of the visible shapes, the user gets notified of this.</li>
66cdf0e10cSrcweir    </ol></p>
67cdf0e10cSrcweir
68*96af39f7SJürgen Schmidt	 @since OpenOffice 1.1.2
69cdf0e10cSrcweir*/
70cdf0e10cSrcweirpublished service AccessibleDrawDocumentView
71cdf0e10cSrcweir{
72cdf0e10cSrcweir    /** Base interface for being accessible.  It gives access to the
73cdf0e10cSrcweir        <type scope="::com::sun::star::accessibility">XAccessibleContext</type>
74cdf0e10cSrcweir        interface.
75cdf0e10cSrcweir    */
76cdf0e10cSrcweir    interface ::com::sun::star::accessibility::XAccessible;
77cdf0e10cSrcweir
78cdf0e10cSrcweir    /** Provide access to the view of a document.
79cdf0e10cSrcweir
80cdf0e10cSrcweir        <p>You can access the following information:
81cdf0e10cSrcweir        <ul>
82cdf0e10cSrcweir        <li>Role: The object's role is <const
83cdf0e10cSrcweir            scope="com::sun::star::accessibility"
84cdf0e10cSrcweir                >AccessibleRole::DOCUMENT</const>.</li>
85cdf0e10cSrcweir        <li>Name: Its name is "AccessibleDrawDocumentView",
86cdf0e10cSrcweir        "AccessibleOutlineView", or "slide window".</li>
87cdf0e10cSrcweir        <li>Description: The description is "Draw Document", "Accessible
88cdf0e10cSrcweir        Draw Document Outline", or "slide window".</li>
89cdf0e10cSrcweir        <li>Children: The shapes of the current draw page that are currently
90cdf0e10cSrcweir            visible are direct and indirect children of (an object
91cdf0e10cSrcweir            implementing)
92cdf0e10cSrcweir            this service.  Group shapes, 3D scenes, and OLE objects
93cdf0e10cSrcweir            introduce further levels into the hierarchy.  If the visibility
94cdf0e10cSrcweir            of shapes changes--due to
95cdf0e10cSrcweir            scrolling, switching the current draw page, or changing the view
96cdf0e10cSrcweir            mode--the appropriate listeners are called and the user gets
97cdf0e10cSrcweir            informed of this.</li>
98cdf0e10cSrcweir        <li>Parent: The parent will usually be the window that contains the
99cdf0e10cSrcweir            draw document view.  It has to be set via implementation dependend
100cdf0e10cSrcweir            ways.</li>
101cdf0e10cSrcweir        <li>Relations: Relations are set and modified from the outside.</li>
102cdf0e10cSrcweir        <li>States: <const scope="com::sun::star::accessibility"
103cdf0e10cSrcweir                >AccessibleStateType::DEFUNC</const> is set if a document view
104cdf0e10cSrcweir                becomes obsolete like when the window, which displays the view,
105cdf0e10cSrcweir                is closed.  Otherwise the states
106cdf0e10cSrcweir                <const scope="com::sun::star::accessibility"
107cdf0e10cSrcweir                    >AccessibleStateType::ENABLED</const>,
108cdf0e10cSrcweir                <const scope="com::sun::star::accessibility"
109cdf0e10cSrcweir                    >AccessibleStateType::SHOWING</const>,
110cdf0e10cSrcweir                <const scope="com::sun::star::accessibility"
111cdf0e10cSrcweir                    >AccessibleStateType::VISIBLE</const>,
112cdf0e10cSrcweir                <const scope="com::sun::star::accessibility"
113cdf0e10cSrcweir                    >AccessibleStateType::FOCUSABLE</const>, and
114cdf0e10cSrcweir                <const scope="com::sun::star::accessibility"
115cdf0e10cSrcweir                   >AccessibleStateType::SELECTABLE</const>
116cdf0e10cSrcweir            are always set.</li>
117cdf0e10cSrcweir        <li>Locale: Is obtained from the parent and returned unchanged.</li>
118cdf0e10cSrcweir        </ul></p>
119cdf0e10cSrcweir    */
120cdf0e10cSrcweir    interface ::com::sun::star::accessibility::XAccessibleContext;
121cdf0e10cSrcweir
122cdf0e10cSrcweir    /** Provide access to a draw document's graphical representation.
123cdf0e10cSrcweir
124cdf0e10cSrcweir        <p>The main purpose of this interface is to provide a bounding box
125cdf0e10cSrcweir        of the currently visible area and to let the user find children
126cdf0e10cSrcweir        (i.e. shapes) that cover a given test point.  The more interesting
127cdf0e10cSrcweir        part of the graphical representation of a draw page lies in its
128cdf0e10cSrcweir        children.  See the <type>AccessibleShape</type> service for more
129cdf0e10cSrcweir        information about shapes.</p>
130cdf0e10cSrcweir
131cdf0e10cSrcweir        @see AccessibleShape
132cdf0e10cSrcweir    */
133cdf0e10cSrcweir    interface ::com::sun::star::accessibility::XAccessibleComponent;
134cdf0e10cSrcweir};
135cdf0e10cSrcweir
136cdf0e10cSrcweir}; }; }; };
137cdf0e10cSrcweir
138cdf0e10cSrcweir#endif
139