1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
9 * This file incorporates work covered by the following license notice:
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
19 #ifndef __com_sun_star_sheet_AccessibleSpreadsheet_idl__
20 #define __com_sun_star_sheet_AccessibleSpreadsheet_idl__
22 #include
<com
/sun
/star
/accessibility
/XAccessibleContext.idl
>
23 #include
<com
/sun
/star
/accessibility
/XAccessibleComponent.idl
>
24 #include
<com
/sun
/star
/accessibility
/XAccessibleTable.idl
>
25 #include
<com
/sun
/star
/accessibility
/XAccessibleSelection.idl
>
26 #include
<com
/sun
/star
/accessibility
/XAccessibleEventBroadcaster.idl
>
29 module com
{ module sun
{ module star
{ module sheet
{
32 /** The accessible view of a spreadsheet document
36 service AccessibleSpreadsheet
38 /** This interface gives access to any object in the currently visible table
42 <li>The parent returned by
43 ::com::sun::star::accessibility::XAccessibleContext::getAccessibleParent()
44 is the accessible spreadsheet document view.</li>
45 <li>The children returned by
46 ::com::sun::star::accessibility::XAccessibleContext::getAccessibleChild()
47 all support the interface XAccessible. Calling
48 ::com::sun::star::accessibility::XAccessible::getAccessibleContext()
50 returns an object that supports the following service.</li>
52 <li>::com::sun::star::sheet::AccessibleCell:
54 ::com::sun::star::accessibility::XAccessibleContext::getAccessibleChild()
55 an object that supports this service is returned for
56 every cell in this table.</li>
58 <p>The following rules apply to the children order.</p>
60 <li>All the children are cells. The order of this cells is to
61 the order on the screen. This means that the first cell is the
62 cell in the left top edge of the table and the last one is the
63 cell in the right bottom edge of the table. The second is the
64 cell in the first row and second column and so on.</li>
66 <li>The description is ???.</li>
67 <li>The name is the given table name.</li>
68 <li>The role is ::com::sun::star::accessibility::AccessibleRole::TABLE
70 <li>There are relations between the table and the shapes with an anchor
71 on this table (not with an anchor on a cell in this table).</li>
72 <li>The following states are supported:
74 <li>::com::sun::star::accessibility::AccessibleStateType::DEFUNC
75 is always false if the
76 table is not deleted and the document is open, otherwise it
78 <li>::com::sun::star::accessibility::AccessibleStateType::EDITABLE
80 table is protected, otherwise it is true.</li>
81 <li>::com::sun::star::accessibility::AccessibleStateType::ENABLED
83 <li>::com::sun::star::accessibility::AccessibleStateType::MULTI_SELECTABLE
85 <li>::com::sun::star::accessibility::AccessibleStateType::OPAQUE
87 <li>::com::sun::star::accessibility::AccessibleStateType::RESIZABLE
89 <li>::com::sun::star::accessibility::AccessibleStateType::SELECTABLE
91 <li>::com::sun::star::accessibility::AccessibleStateType::SELECTED
92 is true if the complete table (all cells) is selected.</li>
93 <li>::com::sun::star::accessibility::AccessibleStateType::SHOWING
95 Bounding Box lies in the Bounding Box of the parent.
96 Otherwise it is false.</li>
97 <li>::com::sun::star::accessibility::AccessibleStateType::VISIBLE
103 interface ::com
::sun
::star
::accessibility
::XAccessibleContext
;
105 /** This interface gives access to the visibility of the table.
107 interface ::com
::sun
::star
::accessibility
::XAccessibleComponent
;
109 /** This interface gives access to any cell that is at least partially
110 visible on the screen. So this interface gives access to the same
111 things like the XAccessibleContext interface. Therefore it use more
112 usable methods. Also it gives access to some table specific data.
114 interface ::com
::sun
::star
::accessibility
::XAccessibleTable
;
116 /** This interface is for selecting the cells.
118 interface ::com
::sun
::star
::accessibility
::XAccessibleSelection
;
120 /** This is the interface for listeners */
121 interface ::com
::sun
::star
::accessibility
::XAccessibleEventBroadcaster
;
129 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */