LibreOffice Module accessibility (master) 1
AccessibleGridControlTable.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
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/.
8 *
9 * This file incorporates work covered by the following license notice:
10 *
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 .
18 */
19
20
21#pragma once
22
25#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
27
28
29namespace accessibility {
30
31
32typedef ::cppu::ImplHelper1 < css::accessibility::XAccessibleSelection >
38{
39public:
41 const css::uno::Reference< css::accessibility::XAccessible >& rxParent,
43
44private:
45 virtual ~AccessibleGridControlTable() override = default;
46 std::vector< rtl::Reference<AccessibleGridControlTableCell> > m_aCellVector;
47public:
48 // XAccessibleContext
49
51 virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL
52 getAccessibleChild( sal_Int64 nChildIndex ) override;
53
55 virtual sal_Int64 SAL_CALL getAccessibleIndexInParent() override;
56
57 // XAccessibleComponent
58
60 virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL
61 getAccessibleAtPoint( const css::awt::Point& rPoint ) override;
62
64 virtual void SAL_CALL grabFocus() override;
65
66 // XAccessibleTable
67
69 virtual OUString SAL_CALL getAccessibleRowDescription( sal_Int32 nRow ) override;
70
72 virtual OUString SAL_CALL getAccessibleColumnDescription( sal_Int32 nColumn ) override;
73
75 virtual css::uno::Reference< css::accessibility::XAccessibleTable > SAL_CALL
76 getAccessibleRowHeaders() override;
77
79 virtual css::uno::Reference< css::accessibility::XAccessibleTable > SAL_CALL
81
83 virtual css::uno::Sequence< sal_Int32 > SAL_CALL
85
87 virtual css::uno::Sequence< sal_Int32 > SAL_CALL
89
91 virtual sal_Bool SAL_CALL isAccessibleRowSelected( sal_Int32 nRow ) override;
92
94 virtual sal_Bool SAL_CALL isAccessibleColumnSelected( sal_Int32 nColumn ) override;
95
98 virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL
99 getAccessibleCellAt( sal_Int32 nRow, sal_Int32 nColumn ) override;
100
102 virtual sal_Bool SAL_CALL isAccessibleSelected( sal_Int32 nRow, sal_Int32 nColumn ) override;
103
104 // XAccessibleSelection
105
107 virtual void SAL_CALL selectAccessibleChild( sal_Int64 nChildIndex ) override;
108
110 virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int64 nChildIndex ) override;
111
113 virtual void SAL_CALL clearAccessibleSelection() override;
114
116 virtual void SAL_CALL selectAllAccessibleChildren() override;
117
119 virtual sal_Int64 SAL_CALL getSelectedAccessibleChildCount() override;
120
122 virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL
123 getSelectedAccessibleChild( sal_Int64 nSelectedChildIndex ) override;
124
126 virtual void SAL_CALL deselectAccessibleChild( sal_Int64 nSelectedChildIndex ) override;
127 // XInterface
128
130 css::uno::Any SAL_CALL queryInterface( const css::uno::Type& rType ) override;
131
133 virtual void SAL_CALL acquire() noexcept override;
134
136 virtual void SAL_CALL release() noexcept override;
137 // XServiceInfo
138
140 virtual OUString SAL_CALL getImplementationName() override;
141
142 // XComponent
143 virtual void SAL_CALL dispose() override;
144
145 virtual void commitEvent(sal_Int16 nEventId, const css::uno::Any& rNewValue,
146 const css::uno::Any& rOldValue) override;
147
148private:
149 // internal virtual methods
150
153 virtual tools::Rectangle implGetBoundingBox() override;
155 // @return The bounding box (VCL rect.) in screen coordinates. */
156 virtual tools::Rectangle implGetBoundingBoxOnScreen() override;
157
158
161 // @return The XAccessibleTable interface of the specified header bar. */
163 css::uno::Reference< css::accessibility::XAccessibleTable >
164 implGetHeaderBar( sal_Int32 nChildIndex );
165};
166
167
168} // namespace accessibility
169
170
171
172/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
The Grid Control accessible table objects inherit from this base class.
This class represents the accessible object of the data table of a Grid control.
virtual css::uno::Reference< css::accessibility::XAccessibleTable > SAL_CALL getAccessibleRowHeaders() override
virtual OUString SAL_CALL getImplementationName() override
virtual sal_Int64 SAL_CALL getSelectedAccessibleChildCount() override
virtual sal_Bool SAL_CALL isAccessibleChildSelected(sal_Int64 nChildIndex) override
virtual css::uno::Sequence< sal_Int32 > SAL_CALL getSelectedAccessibleColumns() override
virtual void SAL_CALL selectAccessibleChild(sal_Int64 nChildIndex) override
Selects the specified child (row or column of the table).
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint(const css::awt::Point &rPoint) override
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleChild(sal_Int64 nChildIndex) override
AccessibleGridControlTable(const css::uno::Reference< css::accessibility::XAccessible > &rxParent, ::vcl::table::IAccessibleTable &rTable)
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild(sal_Int64 nSelectedChildIndex) override
virtual void SAL_CALL selectAllAccessibleChildren() override
Selects all children or first, if multiselection is not supported.
virtual sal_Bool SAL_CALL isAccessibleColumnSelected(sal_Int32 nColumn) override
virtual OUString SAL_CALL getAccessibleRowDescription(sal_Int32 nRow) override
virtual void commitEvent(sal_Int16 nEventId, const css::uno::Any &rNewValue, const css::uno::Any &rOldValue) override
Commits an event to all listeners.
virtual void SAL_CALL deselectAccessibleChild(sal_Int64 nSelectedChildIndex) override
Removes the specified row/column from the selection.
virtual sal_Bool SAL_CALL isAccessibleSelected(sal_Int32 nRow, sal_Int32 nColumn) override
virtual void SAL_CALL clearAccessibleSelection() override
Clears the complete selection.
virtual css::uno::Reference< css::accessibility::XAccessibleTable > SAL_CALL getAccessibleColumnHeaders() override
virtual css::uno::Sequence< sal_Int32 > SAL_CALL getSelectedAccessibleRows() override
css::uno::Any SAL_CALL queryInterface(const css::uno::Type &rType) override
Queries for a new interface.
virtual OUString SAL_CALL getAccessibleColumnDescription(sal_Int32 nColumn) override
virtual tools::Rectangle implGetBoundingBox() override
virtual tools::Rectangle implGetBoundingBoxOnScreen() override
‍**
virtual void SAL_CALL grabFocus() override
Grabs the focus to (the current cell of) the data table.
virtual sal_Bool SAL_CALL isAccessibleRowSelected(sal_Int32 nRow) override
virtual void SAL_CALL acquire() noexcept override
Acquires the object (calls acquire() on base class).
virtual sal_Int64 SAL_CALL getAccessibleIndexInParent() override
virtual void SAL_CALL release() noexcept override
Releases the object (calls release() on base class).
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL getAccessibleCellAt(sal_Int32 nRow, sal_Int32 nColumn) override
std::vector< rtl::Reference< AccessibleGridControlTableCell > > m_aCellVector
css::uno::Reference< css::accessibility::XAccessibleTable > implGetHeaderBar(sal_Int32 nChildIndex)
internal helper methods **
virtual ~AccessibleGridControlTable() override=default
::cppu::ImplHelper1< css::accessibility::XAccessibleSelection > AccessibleGridControlTableSelectionImplHelper
unsigned char sal_Bool