Branch data Line data Source code
1 : : /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 : : /*************************************************************************
3 : : *
4 : : * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
5 : : *
6 : : * Copyright 2000, 2010 Oracle and/or its affiliates.
7 : : *
8 : : * OpenOffice.org - a multi-platform office productivity suite
9 : : *
10 : : * This file is part of OpenOffice.org.
11 : : *
12 : : * OpenOffice.org is free software: you can redistribute it and/or modify
13 : : * it under the terms of the GNU Lesser General Public License version 3
14 : : * only, as published by the Free Software Foundation.
15 : : *
16 : : * OpenOffice.org is distributed in the hope that it will be useful,
17 : : * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 : : * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
19 : : * GNU Lesser General Public License version 3 for more details
20 : : * (a copy is included in the LICENSE file that accompanied this code).
21 : : *
22 : : * You should have received a copy of the GNU Lesser General Public License
23 : : * version 3 along with OpenOffice.org. If not, see
24 : : * <http://www.openoffice.org/license.html>
25 : : * for a copy of the LGPLv3 License.
26 : : *
27 : : ************************************************************************/
28 : :
29 : : #ifndef SVTOOLS_ACCESSIBLE_FACTORY_HXX
30 : : #define SVTOOLS_ACCESSIBLE_FACTORY_HXX
31 : :
32 : : #include "AccessibleBrowseBoxObjType.hxx"
33 : : #include "accessibletableprovider.hxx"
34 : :
35 : : #include <com/sun/star/uno/Reference.hxx>
36 : :
37 : : #include <rtl/ref.hxx>
38 : :
39 : : namespace com { namespace sun { namespace star {
40 : : namespace accessibility {
41 : : class XAccessible;
42 : : class XAccessibleContext;
43 : : }
44 : : namespace awt {
45 : : class XWindow;
46 : : }
47 : : } } }
48 : : class SvHeaderTabListBox;
49 : : class SvtIconChoiceCtrl;
50 : : class TabBar;
51 : : class SvTreeListBox;
52 : : class VCLXWindow;
53 : : class TextEngine;
54 : : class TextView;
55 : :
56 : : //........................................................................
57 : : namespace svt
58 : : {
59 : : //........................................................................
60 : :
61 : : class ToolPanelDeck;
62 : : class IToolPanelDeck;
63 : : class PanelTabBar;
64 : : namespace table
65 : : {
66 : : class IAccessibleTable;
67 : : class IAccessibleTableControl;
68 : : }
69 : :
70 : : /** a function which is able to create a factory for the standard Accessible/Context
71 : : components needed for standard toolkit controls
72 : :
73 : : The returned pointer denotes an instance of the IAccessibleFactory, which has been acquired
74 : : <em>once</em>. The caller is responsible for holding this reference as long as it needs the
75 : : factory, and release it afterwards.
76 : : */
77 : : typedef void* (SAL_CALL * GetSvtAccessibilityComponentFactory)( );
78 : :
79 : : //================================================================
80 : : //= IAccessibleFactory
81 : : //================================================================
82 : 22 : class IAccessibleFactory : public ::rtl::IReference
83 : : {
84 : : public:
85 : : virtual IAccessibleTabListBox*
86 : : createAccessibleTabListBox(
87 : : const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent,
88 : : SvHeaderTabListBox& rBox
89 : : ) const = 0;
90 : :
91 : : virtual IAccessibleBrowseBox*
92 : : createAccessibleBrowseBox(
93 : : const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
94 : : IAccessibleTableProvider& _rBrowseBox
95 : : ) const = 0;
96 : : virtual table::IAccessibleTableControl*
97 : : createAccessibleTableControl(
98 : : const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
99 : : table::IAccessibleTable& _rTable
100 : : ) const = 0;
101 : :
102 : : virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
103 : : createAccessibleIconChoiceCtrl(
104 : : SvtIconChoiceCtrl& _rIconCtrl,
105 : : const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xParent
106 : : ) const = 0;
107 : :
108 : : virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
109 : : createAccessibleTabBar(
110 : : TabBar& _rTabBar
111 : : ) const = 0;
112 : :
113 : : virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
114 : : createAccessibleTextWindowContext(
115 : : VCLXWindow* pVclXWindow, TextEngine& rEngine, TextView& rView, bool bCompoundControlChild
116 : : ) const = 0;
117 : :
118 : : virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
119 : : createAccessibleTreeListBox(
120 : : SvTreeListBox& _rListBox,
121 : : const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xParent
122 : : ) const = 0;
123 : :
124 : : virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
125 : : createAccessibleBrowseBoxHeaderBar(
126 : : const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent,
127 : : IAccessibleTableProvider& _rOwningTable,
128 : : AccessibleBrowseBoxObjType _eObjType
129 : : ) const = 0;
130 : :
131 : : virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
132 : : createAccessibleBrowseBoxTableCell(
133 : : const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
134 : : IAccessibleTableProvider& _rBrowseBox,
135 : : const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
136 : : sal_Int32 _nRowId,
137 : : sal_uInt16 _nColId,
138 : : sal_Int32 _nOffset
139 : : ) const = 0;
140 : :
141 : : virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
142 : : createAccessibleBrowseBoxHeaderCell(
143 : : sal_Int32 _nColumnRowId,
144 : : const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent,
145 : : IAccessibleTableProvider& _rBrowseBox,
146 : : const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
147 : : AccessibleBrowseBoxObjType _eObjType
148 : : ) const = 0;
149 : :
150 : : virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
151 : : createAccessibleCheckBoxCell(
152 : : const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
153 : : IAccessibleTableProvider& _rBrowseBox,
154 : : const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
155 : : sal_Int32 _nRowPos,
156 : : sal_uInt16 _nColPos,
157 : : const TriState& _eState,
158 : : sal_Bool _bEnabled,
159 : : sal_Bool _bIsTriState
160 : : ) const = 0;
161 : :
162 : : virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
163 : : createEditBrowseBoxTableCellAccess(
164 : : const ::com::sun::star::uno::Reference< com::sun::star::accessibility::XAccessible >& _rxParent,
165 : : const ::com::sun::star::uno::Reference< com::sun::star::accessibility::XAccessible >& _rxControlAccessible,
166 : : const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _rxFocusWindow,
167 : : IAccessibleTableProvider& _rBrowseBox,
168 : : sal_Int32 _nRowPos,
169 : : sal_uInt16 _nColPos
170 : : ) const = 0;
171 : :
172 : : virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
173 : : createAccessibleToolPanelDeck(
174 : : const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& i_rAccessibleParent,
175 : : ::svt::ToolPanelDeck& i_rPanelDeck
176 : : ) = 0;
177 : : virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
178 : : createAccessibleToolPanelTabBar(
179 : : const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& i_rAccessibleParent,
180 : : ::svt::IToolPanelDeck& i_rPanelDeck,
181 : : ::svt::PanelTabBar& i_rTabBar
182 : : ) = 0;
183 : :
184 : : protected:
185 : 0 : ~IAccessibleFactory() {}
186 : : };
187 : :
188 : : //........................................................................
189 : : } // namespace svt
190 : : //........................................................................
191 : :
192 : : #endif // SVTOOLS_ACCESSIBLE_FACTORY_HXX
193 : :
194 : : /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
|