summaryrefslogtreecommitdiff
path: root/accessibility
diff options
context:
space:
mode:
Diffstat (limited to 'accessibility')
-rwxr-xr-xaccessibility/bridge/org/openoffice/accessibility/AccessBridge.java245
-rwxr-xr-xaccessibility/bridge/org/openoffice/accessibility/KeyHandler.java138
-rw-r--r--accessibility/bridge/org/openoffice/accessibility/PopupWindow.java210
-rw-r--r--accessibility/bridge/org/openoffice/accessibility/WindowsAccessBridgeAdapter.java654
-rw-r--r--accessibility/bridge/org/openoffice/accessibility/java_uno_accessbridge.component34
-rwxr-xr-xaccessibility/bridge/org/openoffice/accessibility/makefile.mk62
-rwxr-xr-xaccessibility/bridge/org/openoffice/accessibility/manifest2
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/AbstractButton.java176
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/AccessibleActionImpl.java71
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/AccessibleComponentImpl.java233
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/AccessibleEditableTextImpl.java367
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/AccessibleExtendedState.java53
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/AccessibleHypertextImpl.java191
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/AccessibleIconImpl.java73
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/AccessibleKeyBinding.java386
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/AccessibleObjectFactory.java545
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/AccessibleRelationAdapter.java64
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/AccessibleRoleAdapter.java148
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/AccessibleSelectionImpl.java99
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/AccessibleStateAdapter.java214
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/AccessibleTextImpl.java678
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/AccessibleValueImpl.java96
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Alert.java66
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Application.java45
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Button.java157
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/CheckBox.java51
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/ComboBox.java117
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Component.java740
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Container.java763
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/DescendantManager.java161
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Dialog.java633
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/FocusTraversalPolicy.java89
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Frame.java646
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Icon.java76
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Label.java130
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/List.java452
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Menu.java328
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/MenuContainer.java167
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/MenuItem.java99
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/NativeFrame.java35
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Paragraph.java222
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/RadioButton.java50
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/ScrollBar.java126
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Separator.java71
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Table.java727
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/TextComponent.java194
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/ToggleButton.java62
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/ToolTip.java117
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Tree.java768
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/Window.java551
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleEventLog.java186
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleHypertextLog.java61
-rw-r--r--accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleTextLog.java270
-rwxr-xr-xaccessibility/bridge/org/openoffice/java/accessibility/makefile.mk115
-rw-r--r--accessibility/bridge/source/java/WindowsAccessBridgeAdapter.cxx317
-rw-r--r--accessibility/bridge/source/java/exports.dxp4
-rw-r--r--accessibility/bridge/source/java/makefile.mk70
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleBrowseBox.hxx313
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleBrowseBoxBase.hxx515
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleBrowseBoxCheckBoxCell.hxx95
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleBrowseBoxHeaderBar.hxx283
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleBrowseBoxHeaderCell.hxx83
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleBrowseBoxTable.hxx177
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleBrowseBoxTableBase.hxx282
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleBrowseBoxTableCell.hxx145
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleGridControl.hxx267
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleGridControlBase.hxx457
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleGridControlHeader.hxx220
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleGridControlHeaderCell.hxx104
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleGridControlTable.hxx228
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleGridControlTableBase.hxx230
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleGridControlTableCell.hxx170
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleToolPanelDeck.hxx94
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleToolPanelDeckTabBar.hxx95
-rw-r--r--accessibility/inc/accessibility/extended/AccessibleToolPanelDeckTabBarItem.hxx110
-rw-r--r--accessibility/inc/accessibility/extended/accessiblebrowseboxcell.hxx89
-rw-r--r--accessibility/inc/accessibility/extended/accessibleeditbrowseboxcell.hxx156
-rw-r--r--accessibility/inc/accessibility/extended/accessibleiconchoicectrl.hxx121
-rw-r--r--accessibility/inc/accessibility/extended/accessibleiconchoicectrlentry.hxx199
-rw-r--r--accessibility/inc/accessibility/extended/accessiblelistbox.hxx127
-rw-r--r--accessibility/inc/accessibility/extended/accessiblelistboxentry.hxx225
-rw-r--r--accessibility/inc/accessibility/extended/accessibletabbar.hxx122
-rw-r--r--accessibility/inc/accessibility/extended/accessibletabbarbase.hxx80
-rw-r--r--accessibility/inc/accessibility/extended/accessibletabbarpage.hxx139
-rw-r--r--accessibility/inc/accessibility/extended/accessibletabbarpagelist.hxx143
-rw-r--r--accessibility/inc/accessibility/extended/accessibletablistbox.hxx117
-rw-r--r--accessibility/inc/accessibility/extended/accessibletablistboxtable.hxx124
-rw-r--r--accessibility/inc/accessibility/extended/listboxaccessible.hxx98
-rw-r--r--accessibility/inc/accessibility/extended/textwindowaccessibility.hxx714
-rw-r--r--accessibility/inc/accessibility/helper/IComboListBoxHelper.hxx71
-rw-r--r--accessibility/inc/accessibility/helper/acc_factory.hxx53
-rw-r--r--accessibility/inc/accessibility/helper/accessiblestrings.hrc53
-rw-r--r--accessibility/inc/accessibility/helper/accresmgr.hxx72
-rw-r--r--accessibility/inc/accessibility/helper/characterattributeshelper.hxx61
-rw-r--r--accessibility/inc/accessibility/helper/listboxhelper.hxx198
-rw-r--r--accessibility/inc/accessibility/standard/accessiblemenubasecomponent.hxx157
-rw-r--r--accessibility/inc/accessibility/standard/accessiblemenucomponent.hxx102
-rw-r--r--accessibility/inc/accessibility/standard/accessiblemenuitemcomponent.hxx98
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblebox.hxx182
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblebutton.hxx88
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblecheckbox.hxx95
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblecombobox.hxx67
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessibledropdowncombobox.hxx69
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessibledropdownlistbox.hxx69
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessibleedit.hxx121
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblefixedhyperlink.hxx56
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblefixedtext.hxx56
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblelist.hxx226
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblelistbox.hxx65
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblelistitem.hxx198
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblemenu.hxx86
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblemenubar.hxx75
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblemenuitem.hxx119
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblemenuseparator.hxx56
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblepopupmenu.hxx62
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessibleradiobutton.hxx86
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblescrollbar.hxx85
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblestatusbar.hxx82
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessiblestatusbaritem.hxx144
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessibletabcontrol.hxx105
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessibletabpage.hxx148
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessibletabpagewindow.hxx69
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessibletextcomponent.hxx95
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessibletextfield.hxx105
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessibletoolbox.hxx115
-rw-r--r--accessibility/inc/accessibility/standard/vclxaccessibletoolboxitem.hxx168
-rw-r--r--accessibility/inc/makefile.mk47
-rw-r--r--accessibility/inc/pch/precompiled_accessibility.cxx31
-rw-r--r--accessibility/inc/pch/precompiled_accessibility.hxx40
-rw-r--r--accessibility/prj/build.lst18
-rw-r--r--accessibility/prj/d.lst8
-rw-r--r--accessibility/prj/l10n1
-rw-r--r--accessibility/source/extended/AccessibleBrowseBox.cxx395
-rw-r--r--accessibility/source/extended/AccessibleBrowseBoxBase.cxx652
-rw-r--r--accessibility/source/extended/AccessibleBrowseBoxCheckBoxCell.cxx174
-rw-r--r--accessibility/source/extended/AccessibleBrowseBoxHeaderBar.cxx424
-rw-r--r--accessibility/source/extended/AccessibleBrowseBoxHeaderCell.cxx175
-rw-r--r--accessibility/source/extended/AccessibleBrowseBoxTable.cxx280
-rw-r--r--accessibility/source/extended/AccessibleBrowseBoxTableBase.cxx360
-rw-r--r--accessibility/source/extended/AccessibleBrowseBoxTableCell.cxx357
-rw-r--r--accessibility/source/extended/AccessibleGridControl.cxx375
-rw-r--r--accessibility/source/extended/AccessibleGridControlBase.cxx529
-rw-r--r--accessibility/source/extended/AccessibleGridControlHeader.cxx289
-rw-r--r--accessibility/source/extended/AccessibleGridControlHeaderCell.cxx172
-rw-r--r--accessibility/source/extended/AccessibleGridControlTable.cxx378
-rw-r--r--accessibility/source/extended/AccessibleGridControlTableBase.cxx296
-rw-r--r--accessibility/source/extended/AccessibleGridControlTableCell.cxx370
-rw-r--r--accessibility/source/extended/AccessibleToolPanelDeck.cxx410
-rw-r--r--accessibility/source/extended/AccessibleToolPanelDeckTabBar.cxx457
-rw-r--r--accessibility/source/extended/AccessibleToolPanelDeckTabBarItem.cxx453
-rw-r--r--accessibility/source/extended/accessiblebrowseboxcell.cxx94
-rw-r--r--accessibility/source/extended/accessibleeditbrowseboxcell.cxx276
-rw-r--r--accessibility/source/extended/accessibleiconchoicectrl.cxx374
-rw-r--r--accessibility/source/extended/accessibleiconchoicectrlentry.cxx734
-rw-r--r--accessibility/source/extended/accessiblelistbox.cxx433
-rw-r--r--accessibility/source/extended/accessiblelistboxentry.cxx962
-rw-r--r--accessibility/source/extended/accessibletabbar.cxx557
-rw-r--r--accessibility/source/extended/accessibletabbarbase.cxx116
-rw-r--r--accessibility/source/extended/accessibletabbarpage.cxx514
-rw-r--r--accessibility/source/extended/accessibletabbarpagelist.cxx808
-rw-r--r--accessibility/source/extended/accessibletablistbox.cxx137
-rw-r--r--accessibility/source/extended/accessibletablistboxtable.cxx374
-rw-r--r--accessibility/source/extended/listboxaccessible.cxx106
-rwxr-xr-xaccessibility/source/extended/makefile.mk81
-rw-r--r--accessibility/source/extended/textwindowaccessibility.cxx2258
-rw-r--r--accessibility/source/helper/acc_factory.cxx555
-rw-r--r--accessibility/source/helper/accessiblestrings.src76
-rw-r--r--accessibility/source/helper/accresmgr.cxx83
-rw-r--r--accessibility/source/helper/characterattributeshelper.cxx114
-rw-r--r--accessibility/source/helper/makefile.mk53
-rw-r--r--accessibility/source/inc/floatingwindowaccessible.hxx45
-rw-r--r--accessibility/source/standard/accessiblemenubasecomponent.cxx786
-rw-r--r--accessibility/source/standard/accessiblemenucomponent.cxx474
-rw-r--r--accessibility/source/standard/accessiblemenuitemcomponent.cxx506
-rw-r--r--accessibility/source/standard/floatingwindowaccessible.cxx73
-rw-r--r--accessibility/source/standard/makefile.mk78
-rw-r--r--accessibility/source/standard/vclxaccessiblebox.cxx375
-rw-r--r--accessibility/source/standard/vclxaccessiblebutton.cxx329
-rw-r--r--accessibility/source/standard/vclxaccessiblecheckbox.cxx364
-rw-r--r--accessibility/source/standard/vclxaccessiblecombobox.cxx98
-rw-r--r--accessibility/source/standard/vclxaccessibledropdowncombobox.cxx122
-rw-r--r--accessibility/source/standard/vclxaccessibledropdownlistbox.cxx112
-rw-r--r--accessibility/source/standard/vclxaccessibleedit.cxx629
-rw-r--r--accessibility/source/standard/vclxaccessiblefixedhyperlink.cxx87
-rw-r--r--accessibility/source/standard/vclxaccessiblefixedtext.cxx99
-rw-r--r--accessibility/source/standard/vclxaccessiblelist.cxx851
-rw-r--r--accessibility/source/standard/vclxaccessiblelistbox.cxx110
-rw-r--r--accessibility/source/standard/vclxaccessiblelistitem.cxx677
-rw-r--r--accessibility/source/standard/vclxaccessiblemenu.cxx258
-rw-r--r--accessibility/source/standard/vclxaccessiblemenubar.cxx214
-rw-r--r--accessibility/source/standard/vclxaccessiblemenuitem.cxx610
-rw-r--r--accessibility/source/standard/vclxaccessiblemenuseparator.cxx88
-rw-r--r--accessibility/source/standard/vclxaccessiblepopupmenu.cxx114
-rw-r--r--accessibility/source/standard/vclxaccessibleradiobutton.cxx317
-rw-r--r--accessibility/source/standard/vclxaccessiblescrollbar.cxx282
-rw-r--r--accessibility/source/standard/vclxaccessiblestatusbar.cxx369
-rw-r--r--accessibility/source/standard/vclxaccessiblestatusbaritem.cxx632
-rw-r--r--accessibility/source/standard/vclxaccessibletabcontrol.cxx518
-rw-r--r--accessibility/source/standard/vclxaccessibletabpage.cxx705
-rw-r--r--accessibility/source/standard/vclxaccessibletabpagewindow.cxx144
-rw-r--r--accessibility/source/standard/vclxaccessibletextcomponent.cxx365
-rw-r--r--accessibility/source/standard/vclxaccessibletextfield.cxx156
-rw-r--r--accessibility/source/standard/vclxaccessibletoolbox.cxx884
-rw-r--r--accessibility/source/standard/vclxaccessibletoolboxitem.cxx708
-rw-r--r--accessibility/util/acc.map7
-rw-r--r--accessibility/util/makefile.mk82
-rw-r--r--accessibility/workben/TODO13
-rw-r--r--accessibility/workben/makefile9
-rw-r--r--accessibility/workben/makefile.in31
-rw-r--r--accessibility/workben/makefile.mk39
-rw-r--r--accessibility/workben/org/openoffice/accessibility/Makefile6
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/AccessibilityWorkBench.java702
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/HelpWindow.java187
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/Makefile11
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/canvas/Canvas.java322
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/canvas/CanvasShape.java412
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/canvas/Makefile13
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/canvas/MouseObserver.java104
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/canvas/ShapeContainer.java237
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/canvas/makefile.common34
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/canvas/makefile.mk47
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/makefile.common30
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/makefile.mk57
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/manifest3
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityModel.java154
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityNode.java163
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityTree.java89
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityTreeModel.java217
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/tree/DynamicAccessibilityModel.java123
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/tree/DynamicAccessibilityNode.java92
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/tree/Makefile40
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/tree/ToolkitNode.java215
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/tree/makefile.common35
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/tree/makefile.mk51
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/ComponentView.java195
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/ContextView.java115
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/EditableTextView.java119
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/EventMonitorView.java126
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/FocusView.java148
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/LayoutManager.java160
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/Makefile11
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/ObjectView.java90
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/ObjectViewContainer.java310
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/ObjectViewContainerWindow.java35
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/ParentView.java147
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/SelectionView.java267
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/ServiceInterfaceView.java150
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/StateSetView.java199
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/TableView.java161
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/TextView.java467
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/ViewGridLayout.java117
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/makefile.common45
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/makefile.mk51
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/text/CaretSpinnerModel.java122
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/text/Makefile11
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/text/TextActionDialog.java208
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/text/TextAttributeDialog.java179
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/text/TextDialogFactory.java136
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/text/TextEditDialog.java122
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/text/makefile.common34
-rw-r--r--accessibility/workben/org/openoffice/accessibility/awb/view/text/makefile.mk51
-rw-r--r--accessibility/workben/org/openoffice/accessibility/misc/AccessibleEventMulticaster.java92
-rw-r--r--accessibility/workben/org/openoffice/accessibility/misc/Connector.java50
-rw-r--r--accessibility/workben/org/openoffice/accessibility/misc/InformationWriter.java421
-rw-r--r--accessibility/workben/org/openoffice/accessibility/misc/Makefile38
-rw-r--r--accessibility/workben/org/openoffice/accessibility/misc/MessageArea.java125
-rw-r--r--accessibility/workben/org/openoffice/accessibility/misc/NameProvider.java263
-rw-r--r--accessibility/workben/org/openoffice/accessibility/misc/OfficeConnection.java169
-rw-r--r--accessibility/workben/org/openoffice/accessibility/misc/Options.java106
-rw-r--r--accessibility/workben/org/openoffice/accessibility/misc/SimpleOffice.java413
-rw-r--r--accessibility/workben/org/openoffice/accessibility/misc/makefile.common36
-rw-r--r--accessibility/workben/org/openoffice/accessibility/misc/makefile.mk46
272 files changed, 0 insertions, 60119 deletions
diff --git a/accessibility/bridge/org/openoffice/accessibility/AccessBridge.java b/accessibility/bridge/org/openoffice/accessibility/AccessBridge.java
deleted file mode 100755
index e881dffce..000000000
--- a/accessibility/bridge/org/openoffice/accessibility/AccessBridge.java
+++ /dev/null
@@ -1,245 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-package org.openoffice.accessibility;
-
-import com.sun.star.accessibility.AccessibleRole;
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.awt.XExtendedToolkit;
-import com.sun.star.awt.XTopWindow;
-import com.sun.star.awt.XTopWindowListener;
-import com.sun.star.awt.XWindow;
-import com.sun.star.comp.loader.FactoryHelper;
-import com.sun.star.lang.XComponent;
-import com.sun.star.lang.XInitialization;
-import com.sun.star.lang.XMultiServiceFactory;
-import com.sun.star.lang.XSingleServiceFactory;
-import com.sun.star.registry.*;
-import com.sun.star.uno.*;
-
-import org.openoffice.java.accessibility.*;
-
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-
-import javax.accessibility.Accessible;
-
-
-public class AccessBridge {
- //
- protected static java.util.Hashtable topWindowMap = new java.util.Hashtable();
-
- private static java.awt.Window getTopWindowImpl(XAccessible xAccessible) {
- // Because it can not be garantied that
- // WindowsAccessBridgeAdapter.registerTopWindow() is called
- // before windowOpened(), we have to make this operation
- // atomic.
- synchronized (topWindowMap) {
- String oid = UnoRuntime.generateOid(xAccessible);
- java.awt.Window w = (java.awt.Window) topWindowMap.get(oid);
-
- if (w == null) {
- w = AccessibleObjectFactory.getTopWindow(xAccessible);
-
- if (w != null) {
- topWindowMap.put(oid, w);
- }
- }
-
- return w;
- }
- }
-
- protected static java.awt.Window getTopWindow(XAccessible xAccessible) {
- if (xAccessible != null) {
- XAccessibleContext xAccessibleContext = xAccessible.getAccessibleContext();
- if (xAccessibleContext != null) {
-
- // Toolkit reports the VCL peer windows as toplevels. These have an
- // accessible parent which represents the native frame window
- switch(xAccessibleContext.getAccessibleRole()) {
- case AccessibleRole.ROOT_PANE:
- case AccessibleRole.POPUP_MENU:
- return getTopWindow(xAccessibleContext.getAccessibleParent());
-
- case AccessibleRole.WINDOW:
- case AccessibleRole.FRAME:
- case AccessibleRole.DIALOG:
- case AccessibleRole.ALERT:
- return getTopWindowImpl(xAccessible);
-
- default:
- break;
- }
- }
- }
-
- return null;
- }
-
- protected static java.awt.Window removeTopWindow(XAccessible xAccessible) {
- if (xAccessible != null) {
- XAccessibleContext xAccessibleContext = xAccessible.getAccessibleContext();
- if (xAccessibleContext != null) {
-
- // Toolkit reports the VCL peer windows as toplevels. These have an
- // accessible parent which represents the native frame window
- switch(xAccessibleContext.getAccessibleRole()) {
- case AccessibleRole.ROOT_PANE:
- case AccessibleRole.POPUP_MENU:
- return removeTopWindow(xAccessibleContext.getAccessibleParent());
-
- case AccessibleRole.WINDOW:
- case AccessibleRole.FRAME:
- case AccessibleRole.DIALOG:
- return (java.awt.Window) topWindowMap.remove(UnoRuntime.generateOid(xAccessible));
-
- default:
- break;
- }
- }
- }
-
- return null;
- }
-
- public static XSingleServiceFactory __getServiceFactory(String implName,
- XMultiServiceFactory multiFactory, XRegistryKey regKey) {
- XSingleServiceFactory xSingleServiceFactory = null;
-
- if (implName.equals(AccessBridge.class.getName())) {
- // Initialize toolkit to register at Java <-> Windows access bridge
- java.awt.Toolkit tk = java.awt.Toolkit.getDefaultToolkit();
-
- xSingleServiceFactory = FactoryHelper.getServiceFactory(_AccessBridge.class,
- _AccessBridge._serviceName, multiFactory, regKey);
- }
-
- return xSingleServiceFactory;
- }
-
- static public class _AccessBridge implements XTopWindowListener,
- XInitialization, XComponent {
- static final String _serviceName = "com.sun.star.accessibility.AccessBridge";
- XComponentContext xComponentContext;
-
- public _AccessBridge(XComponentContext xComponentContext) {
- this.xComponentContext = xComponentContext;
- }
-
- /*
- * XInitialization
- */
- public void initialize(java.lang.Object[] arguments) {
- try {
- // FIXME: Currently there is no way to determine if key event forwarding is needed or not,
- // so we have to do it always ..
- XExtendedToolkit unoToolkit = (XExtendedToolkit) AnyConverter.toObject(new Type(
- XExtendedToolkit.class), arguments[0]);
-
- if (unoToolkit != null) {
- // FIXME this should be done in VCL
- unoToolkit.addTopWindowListener(this);
-
- String os = (String) System.getProperty("os.name");
-
- // Try to initialize the WindowsAccessBridgeAdapter
- if (os.startsWith("Windows")) {
- WindowsAccessBridgeAdapter.attach(xComponentContext);
- } else {
- unoToolkit.addKeyHandler(new KeyHandler());
- }
- } else if (Build.DEBUG) {
- System.err.println(
- "argument 0 is not of type XExtendedToolkit.");
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- // FIXME: output
- }
- }
-
- /*
- * XTopWindowListener
- */
- public void windowOpened(com.sun.star.lang.EventObject event) {
- XAccessible xAccessible = (XAccessible) UnoRuntime.queryInterface(XAccessible.class,
- event.Source);
- java.awt.Window w = getTopWindow(xAccessible);
- }
-
- public void windowActivated(com.sun.star.lang.EventObject event) {
- }
-
- public void windowDeactivated(com.sun.star.lang.EventObject event) {
- }
-
- public void windowMinimized(com.sun.star.lang.EventObject event) {
- }
-
- public void windowNormalized(com.sun.star.lang.EventObject event) {
- }
-
- public void windowClosing(com.sun.star.lang.EventObject event) {
- }
-
- public void windowClosed(com.sun.star.lang.EventObject event) {
- XAccessible xAccessible = (XAccessible) UnoRuntime.queryInterface(XAccessible.class,
- event.Source);
-
- java.awt.Window w = removeTopWindow(xAccessible);
-
- if (w != null) {
- w.dispose();
- }
- }
-
- public void disposing(com.sun.star.lang.EventObject event) {
- }
-
- /*
- * XComponent
- */
-
- public void addEventListener(com.sun.star.lang.XEventListener listener) {
- }
-
- public void removeEventListener(com.sun.star.lang.XEventListener listener) {
- }
-
- public void dispose() {
- try {
- java.awt.Toolkit.getDefaultToolkit().getSystemEventQueue().invokeAndWait(
- new Runnable() {
- public void run() {
- }
- } );
- } catch (java.lang.InterruptedException e) {
- } catch (java.lang.reflect.InvocationTargetException e) {
- }
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/accessibility/KeyHandler.java b/accessibility/bridge/org/openoffice/accessibility/KeyHandler.java
deleted file mode 100755
index 655399c65..000000000
--- a/accessibility/bridge/org/openoffice/accessibility/KeyHandler.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-
-package org.openoffice.accessibility;
-
-import com.sun.star.uno.UnoRuntime;
-import com.sun.star.awt.XKeyHandler;
-import org.openoffice.java.accessibility.AccessibleKeyBinding;
-import org.openoffice.java.accessibility.Build;
-
-import java.awt.*;
-import java.awt.event.KeyEvent;
-import javax.accessibility.*;
-
-public class KeyHandler extends Component implements XKeyHandler, java.awt.KeyEventDispatcher {
- EventQueue eventQueue;
-
- public class VCLKeyEvent extends KeyEvent implements Runnable {
- boolean consumed = true;
-
- public VCLKeyEvent(Component c, int id, int modifiers, int keyCode, char keyChar) {
- super(c, id, System.currentTimeMillis(), modifiers, keyCode, keyChar);
- }
-
- public void run() {
- // This is a no-op ..
- }
-
- public void setConsumed(boolean b) {
- consumed = b;
- }
-
- public boolean isConsumed() {
- return consumed;
- }
- }
-
- public KeyHandler() {
- eventQueue = Toolkit.getDefaultToolkit().getSystemEventQueue();
- java.awt.KeyboardFocusManager.getCurrentKeyboardFocusManager().addKeyEventDispatcher(this);
- }
-
- /** This method is called by the current KeyboardFocusManager requesting that this KeyEventDispatcher
- * dispatch the specified event on its behalf
- */
- public boolean dispatchKeyEvent(java.awt.event.KeyEvent e) {
- if (e instanceof VCLKeyEvent) {
- VCLKeyEvent event = (VCLKeyEvent) e;
- event.setConsumed(false);
- return true;
- }
- return false;
- }
-
- /** Handler for KeyPressed events */
- public boolean keyPressed(com.sun.star.awt.KeyEvent event) {
-// try {
- VCLKeyEvent vke = new VCLKeyEvent(this, KeyEvent.KEY_PRESSED,
- AccessibleKeyBinding.convertModifiers(event.Modifiers),
- AccessibleKeyBinding.convertKeyCode(event.KeyCode),
- event.KeyChar != 0 ? event.KeyChar : KeyEvent.CHAR_UNDEFINED);
-
- eventQueue.postEvent(vke);
-
- // VCL events for TABs have empty KeyChar
- if (event.KeyCode == com.sun.star.awt.Key.TAB ) {
- event.KeyChar = '\t';
- }
-
- // Synthesize KEY_TYPED event to emulate Java behavior
- if (event.KeyChar != 0) {
- eventQueue.postEvent(new VCLKeyEvent(this,
- KeyEvent.KEY_TYPED,
- AccessibleKeyBinding.convertModifiers(event.Modifiers),
- KeyEvent.VK_UNDEFINED,
- event.KeyChar));
- }
-
- // Wait until the key event is processed
- return false;
-// eventQueue.invokeAndWait(vke);
-// return vke.isConsumed();
-// } catch(java.lang.InterruptedException e) {
-// return false;
-// } catch(java.lang.reflect.InvocationTargetException e) {
-// return false;
-// }
- }
-
- /** Handler for KeyReleased events */
- public boolean keyReleased(com.sun.star.awt.KeyEvent event) {
-// try {
- VCLKeyEvent vke = new VCLKeyEvent(this, KeyEvent.KEY_RELEASED,
- AccessibleKeyBinding.convertModifiers(event.Modifiers),
- AccessibleKeyBinding.convertKeyCode(event.KeyCode),
- event.KeyChar != 0 ? event.KeyChar : KeyEvent.CHAR_UNDEFINED);
- eventQueue.postEvent(vke);
-
- // Wait until the key event is processed
- return false;
-// eventQueue.invokeAndWait(vke);
-// return vke.isConsumed();
-// } catch(java.lang.InterruptedException e) {
-// return false;
-// } catch(java.lang.reflect.InvocationTargetException e) {
-// return false;
-// }
- }
-
- public void disposing(com.sun.star.lang.EventObject event) {
- java.awt.KeyboardFocusManager.getCurrentKeyboardFocusManager().removeKeyEventDispatcher(this);
- }
-};
diff --git a/accessibility/bridge/org/openoffice/accessibility/PopupWindow.java b/accessibility/bridge/org/openoffice/accessibility/PopupWindow.java
deleted file mode 100644
index 291fd8c09..000000000
--- a/accessibility/bridge/org/openoffice/accessibility/PopupWindow.java
+++ /dev/null
@@ -1,210 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-package org.openoffice.accessibility;
-
-import org.openoffice.java.accessibility.*;
-
-
-/**
- *
- */
-public class PopupWindow extends java.awt.Window {
- javax.accessibility.AccessibleContext accessibleContext = null;
- ContainerProxy layeredPane = new ContainerProxy(javax.accessibility.AccessibleRole.LAYERED_PANE);
- ContainerProxy rootPane = new ContainerProxy(javax.accessibility.AccessibleRole.ROOT_PANE);
- ContainerProxy popupLayer = new ContainerProxy(javax.accessibility.AccessibleRole.PANEL);
- boolean opened = false;
- boolean visible = false;
-
- /** Creates a new instance of PopupWindow */
- public PopupWindow(java.awt.Window owner) {
- super(owner);
- super.add(rootPane);
- rootPane.add(layeredPane);
-
- javax.accessibility.AccessibleContext ac = rootPane.getAccessibleContext();
-
- if (ac != null) {
- ac.setAccessibleParent(this);
- }
- }
-
- static PopupWindow create(
- com.sun.star.accessibility.XAccessible xAccessible) {
- java.awt.Window parent = java.awt.KeyboardFocusManager.getCurrentKeyboardFocusManager()
- .getActiveWindow();
-
- if (parent != null) {
- PopupWindow w = new PopupWindow(parent);
- w.setVisible(true);
- AccessibleObjectFactory.invokeAndWait();
- AccessibleObjectFactory.addChild(w, xAccessible);
-
- return w;
- }
-
- return null;
- }
-
- public boolean isShowing() {
- if (isVisible()) {
- java.awt.Container parent = getParent();
-
- return (parent == null) || parent.isShowing();
- }
-
- return false;
- }
-
- public void addNotify() {
- }
-
- public void removeNotify() {
- }
-
- public boolean isVisible() {
- return visible;
- }
-
- public void setVisible(boolean b) {
- if (visible != b) {
- visible = b;
-
- if (b) {
- // If it is the first show, fire WINDOW_OPENED event
- if (!opened) {
- AccessibleObjectFactory.postWindowOpened(this);
- opened = true;
- }
- }
- }
- }
-
- public java.awt.Component add(java.awt.Component c) {
- popupLayer.add(c);
- layeredPane.add(popupLayer);
-
- if (c instanceof javax.accessibility.Accessible) {
- javax.accessibility.AccessibleContext ac = layeredPane.getAccessibleContext();
-
- if (ac != null) {
- ac.firePropertyChange(ac.ACCESSIBLE_CHILD_PROPERTY, null,
- popupLayer.getAccessibleContext());
- }
- }
-
- return c;
- }
-
- public void remove(java.awt.Component c) {
- layeredPane.remove(popupLayer);
-
- if (c instanceof javax.accessibility.Accessible) {
- javax.accessibility.AccessibleContext ac = layeredPane.getAccessibleContext();
-
- if (ac != null) {
- ac.firePropertyChange(ac.ACCESSIBLE_CHILD_PROPERTY,
- popupLayer.getAccessibleContext(), null);
- }
- }
-
- popupLayer.remove(c);
- }
-
- public void dispose() {
- setVisible(false);
- AccessibleObjectFactory.postWindowClosed(this);
- }
-
- public javax.accessibility.AccessibleContext getAccessibleContext() {
- if (accessibleContext == null) {
- accessibleContext = new AccessiblePopupWindow();
- }
-
- return accessibleContext;
- }
-
- protected class AccessiblePopupWindow
- extends java.awt.Window.AccessibleAWTWindow {
- AccessiblePopupWindow() {
- }
- }
-
- protected class ContainerProxy extends java.awt.Container
- implements javax.accessibility.Accessible {
- javax.accessibility.AccessibleContext accessibleContext = null;
- javax.accessibility.AccessibleRole role;
-
- protected ContainerProxy(javax.accessibility.AccessibleRole role) {
- this.role = role;
- }
-
- public java.awt.Component add(java.awt.Component c) {
- if (c instanceof javax.accessibility.Accessible) {
- javax.accessibility.Accessible a = (javax.accessibility.Accessible) c;
- javax.accessibility.AccessibleContext ac = a.getAccessibleContext();
-
- if (ac != null) {
- ac.setAccessibleParent(this);
- }
- }
-
- return super.add(c);
- }
-
- public void remove(java.awt.Component c) {
- if (c instanceof javax.accessibility.Accessible) {
- javax.accessibility.Accessible a = (javax.accessibility.Accessible) c;
- javax.accessibility.AccessibleContext ac = a.getAccessibleContext();
-
- if (ac != null) {
- ac.setAccessibleParent(null);
- }
- }
-
- super.remove(c);
- }
-
- public javax.accessibility.AccessibleContext getAccessibleContext() {
- if (accessibleContext == null) {
- accessibleContext = new AccessibleContainerProxy();
- }
-
- return accessibleContext;
- }
-
- private class AccessibleContainerProxy
- extends java.awt.Container.AccessibleAWTContainer {
- AccessibleContainerProxy() {
- }
-
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return ContainerProxy.this.role;
- }
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/accessibility/WindowsAccessBridgeAdapter.java b/accessibility/bridge/org/openoffice/accessibility/WindowsAccessBridgeAdapter.java
deleted file mode 100644
index 299c5cc83..000000000
--- a/accessibility/bridge/org/openoffice/accessibility/WindowsAccessBridgeAdapter.java
+++ /dev/null
@@ -1,654 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-package org.openoffice.accessibility;
-
-import com.sun.star.accessibility.AccessibleRole;
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.java.XJavaVM;
-import com.sun.star.uno.*;
-
-import org.openoffice.java.accessibility.*;
-
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-
-import javax.accessibility.*;
-
-
-public class WindowsAccessBridgeAdapter {
- private static Method registerVirtualFrame;
- private static Method revokeVirtualFrame;
- private static java.util.Hashtable frameMap;
-
- protected static native byte[] getProcessID();
-
- protected static native boolean createMapping(long jvmaccess);
-
- // On Windows all native frames must be registered to the access bridge.
- // Therefor the bridge exports two methods that we try to find here.
- protected static void attach(XComponentContext xComponentContext) {
- try {
- Class bridge = Class.forName(
- "com.sun.java.accessibility.AccessBridge");
- Class[] parameterTypes = {
- javax.accessibility.Accessible.class, Integer.class
- };
-
- if (bridge != null) {
- registerVirtualFrame = bridge.getMethod("registerVirtualFrame",
- parameterTypes);
- revokeVirtualFrame = bridge.getMethod("revokeVirtualFrame",
- parameterTypes);
-
- // load the native dll
- System.loadLibrary("java_uno_accessbridge");
-
- Object any = xComponentContext.getValueByName(
- "/singletons/com.sun.star.java.theJavaVirtualMachine");
-
- if (AnyConverter.isObject(any)) {
- XJavaVM xJavaVM = (XJavaVM) UnoRuntime.queryInterface(XJavaVM.class,
- AnyConverter.toObject(new Type(XJavaVM.class), any));
-
- if (xJavaVM != null) {
- any = xJavaVM.getJavaVM(getProcessID());
-
- if (AnyConverter.isLong(any)) {
- createMapping(AnyConverter.toLong(any));
- frameMap = new java.util.Hashtable();
- }
- }
- }
- }
- } catch (NoSuchMethodException e) {
- System.err.println("ERROR: incompatible AccessBridge found: " +
- e.getMessage());
-
- // Forward this exception to UNO to indicate that the service will
- // not work correctly.
- throw new com.sun.star.uno.RuntimeException(
- "incompatible AccessBridge class: " + e.getMessage());
- } catch (java.lang.SecurityException e) {
- System.err.println("ERROR: no access to AccessBridge: " +
- e.getMessage());
-
- // Forward this exception to UNO to indicate that the service will not work correctly.
- throw new com.sun.star.uno.RuntimeException(
- "Security exception caught: " + e.getMessage());
- } catch (ClassNotFoundException e) {
- // Forward this exception to UNO to indicate that the service will not work correctly.
- throw new com.sun.star.uno.RuntimeException(
- "ClassNotFound exception caught: " + e.getMessage());
- } catch (IllegalArgumentException e) {
- System.err.println("IllegalArgumentException caught: " +
- e.getMessage());
-
- // Forward this exception to UNO to indicate that the service will not work correctly.
- throw new com.sun.star.uno.RuntimeException(
- "IllegalArgumentException caught: " + e.getMessage());
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- System.err.println("UNO IllegalArgumentException caught: " +
- e.getMessage());
-
- // Forward this exception to UNO to indicate that the service will not work correctly.
- throw new com.sun.star.uno.RuntimeException(
- "UNO IllegalArgumentException caught: " + e.getMessage());
- }
- }
-
- protected static boolean isAttached() {
- return frameMap != null;
- }
-
- protected static Accessible getAccessibleWrapper(XAccessible xAccessible) {
- Accessible a = null;
-
- try {
- XAccessibleContext xAccessibleContext = xAccessible.getAccessibleContext();
-
- if (xAccessibleContext != null) {
- switch (xAccessibleContext.getAccessibleRole()) {
- case AccessibleRole.LIST:
- a = (Accessible) AccessibleObjectFactory.getAccessibleComponent(xAccessible);
- if (a != null) {
- a = new ListProxy(a.getAccessibleContext());
- }
- break;
-
- case AccessibleRole.MENU:
-
- Accessible tmp = (Accessible) AccessibleObjectFactory.getAccessibleComponent(xAccessible);
- if (tmp != null) {
- AccessibleContext ac = tmp.getAccessibleContext();
-
- if (ac != null) {
- a = new PopupMenuProxy(ac);
- }
- }
-
- break;
-
- case AccessibleRole.TOOL_TIP:
- a = PopupWindow.create(xAccessible);
- break;
-
- default:
- a = (Accessible) AccessBridge.getTopWindow(xAccessible);
- break;
- }
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
-
- return a;
- }
-
- /** Registers a native frame at the Java AccessBridge for Windows */
- public static void registerTopWindow(int handle, XAccessible xAccessible) {
- Integer hwnd = new Integer(handle);
-
- if (!frameMap.contains(hwnd)) {
- if (Build.DEBUG) {
- System.err.println("Native frame " + hwnd + " of role " +
- AccessibleRoleAdapter.getAccessibleRole(xAccessible) +
- " has been opened");
- }
-
- Accessible a = getAccessibleWrapper(xAccessible);
-
- if (a != null) {
- Object[] args = { a, hwnd };
-
- frameMap.put(hwnd, a);
-
- if (Build.DEBUG) {
- System.err.println("registering native frame " + hwnd);
- }
-
- try {
- registerVirtualFrame.invoke(null, args);
- } catch (IllegalAccessException e) {
- System.err.println("IllegalAccessException caught: " +
- e.getMessage());
- } catch (IllegalArgumentException e) {
- System.err.println("IllegalArgumentException caught: " +
- e.getMessage());
- } catch (InvocationTargetException e) {
- System.err.println("InvokationTargetException caught: " +
- e.getMessage());
- }
- }
- }
- }
-
- /** Revokes a native frame at the Java AccessBridge for Windows */
- public static void revokeTopWindow(int handle, XAccessible xAccessible) {
- Integer hwnd = new Integer(handle);
-
- Accessible a = (Accessible) frameMap.remove(hwnd);
-
- if (a != null) {
- Object[] args = { a, hwnd };
-
- if (Build.DEBUG) {
- System.err.println("revoking native frame " + hwnd);
- }
-
- try {
- revokeVirtualFrame.invoke(null, args);
- } catch (IllegalAccessException e) {
- System.err.println("IllegalAccessException caught: " +
- e.getMessage());
- } catch (IllegalArgumentException e) {
- System.err.println("IllegalArgumentException caught: " +
- e.getMessage());
- } catch (InvocationTargetException e) {
- System.err.println("InvokationTargetException caught: " +
- e.getMessage());
- }
- }
-
- if (a instanceof PopupWindow) {
- PopupWindow toolTipWindow = (PopupWindow) a;
- toolTipWindow.removeAll();
- toolTipWindow.dispose();
- }
- }
-
- protected static class PopupMenuProxy extends AccessibleContext
- implements Accessible, AccessibleComponent {
- AccessibleContext menu;
- AccessibleComponent menuComponent;
- int x = 0; int y = 0; int width = 0; int height = 0;
-
- PopupMenuProxy(AccessibleContext ac) {
- menu = ac;
- menuComponent = menu.getAccessibleComponent();
-
- /** calculate the bounding rectangle by iterating over the
- * the children.
- */
- int x2 = 0; int y2 = 0;
- int count = ac.getAccessibleChildrenCount();
- for (int i = 0; i < count; i++) {
- Accessible a = menu.getAccessibleChild(i);
-
- if (a != null) {
- AccessibleContext childAC = a.getAccessibleContext();
-
- if (childAC != null) {
- AccessibleComponent comp = ac.getAccessibleComponent();
-
- if (comp != null) {
- java.awt.Point p = comp.getLocationOnScreen();
- java.awt.Dimension d = comp.getSize();
-
- if (p != null && d != null) {
- if (p.x < x) {
- x = p.x;
- }
- if (p.y < y) {
- y = p.y;
- }
- if (p.x + d.width > x2) {
- x2 = p.x + d.width;
- }
- if (p.y + d.height > y2) {
- y2 = p.y + d.height;
- }
- }
- }
- }
- }
- }
-
- width = x2 - x;
- height = y2 - y;
- }
-
- /** Returns the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext getAccessibleContext() {
- return this;
- }
-
- /** Returns the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleComponent getAccessibleComponent() {
- return this;
- }
-
- /** Returns the AccessibleText associated with this object */
- public javax.accessibility.AccessibleText getAccessibleText() {
- return menu.getAccessibleText();
- }
-
- /** Returns the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
- return menu.getAccessibleStateSet();
- }
-
- public java.util.Locale getLocale() {
- return menu.getLocale();
- }
-
- public int getAccessibleIndexInParent() {
- return -1;
- }
-
- public int getAccessibleChildrenCount() {
- return menu.getAccessibleChildrenCount();
- }
-
- public javax.accessibility.Accessible getAccessibleChild(int i) {
- return menu.getAccessibleChild(i);
- }
-
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return javax.accessibility.AccessibleRole.POPUP_MENU;
- }
-
- /*
- * AccessibleComponent
- */
- public void addFocusListener(java.awt.event.FocusListener fl) {
- menuComponent.addFocusListener(fl);
- }
-
- public void removeFocusListener(java.awt.event.FocusListener fl) {
- menuComponent.removeFocusListener(fl);
- }
-
- /** Returns the background color of the object */
- public java.awt.Color getBackground() {
- return menuComponent.getBackground();
- }
-
- public void setBackground(java.awt.Color c) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the foreground color of the object */
- public java.awt.Color getForeground() {
- return menuComponent.getForeground();
- }
-
- public void setForeground(java.awt.Color c) {
- menuComponent.setForeground(c);
- }
-
- public java.awt.Cursor getCursor() {
- return menuComponent.getCursor();
- }
-
- public void setCursor(java.awt.Cursor cursor) {
- menuComponent.setCursor(cursor);
- }
-
- public java.awt.Font getFont() {
- return menuComponent.getFont();
- }
-
- public void setFont(java.awt.Font f) {
- menuComponent.setFont(f);
- }
-
- public java.awt.FontMetrics getFontMetrics(java.awt.Font f) {
- return menuComponent.getFontMetrics(f);
- }
-
- public boolean isEnabled() {
- return menuComponent.isEnabled();
- }
-
- public void setEnabled(boolean b) {
- menuComponent.setEnabled(b);
- }
-
- public boolean isVisible() {
- return menuComponent.isVisible();
- }
-
- public void setVisible(boolean b) {
- menuComponent.setVisible(b);
- }
-
- public boolean isShowing() {
- return menuComponent.isShowing();
- }
-
- public boolean contains(java.awt.Point p) {
- java.awt.Dimension d = getSize();
-
- if (Build.DEBUG) {
- System.err.println("PopupMenuProxy.containsPoint(" + p.x + "," +
- p.y + ") returns " +
- (((d.width >= 0) && (p.x < d.width) && (d.height >= 0) &&
- (p.y < d.height)) ? "true" : "false"));
- }
-
- if ((d.width >= 0) && (p.x < d.width) && (d.height >= 0) &&
- (p.y < d.height)) {
- return true;
- }
-
- return false;
- }
-
- /** Returns the location of the object on the screen. */
- public java.awt.Point getLocationOnScreen() {
- return new java.awt.Point(x,y);
- }
-
- /** Gets the location of this component in the form of a point specifying the component's top-left corner */
- public java.awt.Point getLocation() {
- // This object represents a toplevel, so this is the same as getLocationOnScreen()
- return getLocationOnScreen();
- }
-
- /** Moves this component to a new location */
- public void setLocation(java.awt.Point p) {
- // Not supported by UNO accessibility API
- }
-
- /** Gets the bounds of this component in the form of a Rectangle object */
- public java.awt.Rectangle getBounds() {
- return new java.awt.Rectangle(x, y, width, height);
- }
-
- /** Moves and resizes this component to conform to the new bounding rectangle r */
- public void setBounds(java.awt.Rectangle r) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the size of this component in the form of a Dimension object */
- public java.awt.Dimension getSize() {
- return new java.awt.Dimension(width, height);
- }
-
- /** Resizes this component so that it has width d.width and height d.height */
- public void setSize(java.awt.Dimension d) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the Accessible child, if one exists, contained at the local
- * coordinate Point
- */
- public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
- java.awt.Point p2 = menuComponent.getLocationOnScreen();
- return menuComponent.getAccessibleAt(
- new java.awt.Point(p.x + x - p2.x, p.y + y - p2.y));
- }
-
- public boolean isFocusTraversable() {
- return menuComponent.isFocusTraversable();
- }
-
- public void requestFocus() {
- menuComponent.requestFocus();
- }
- }
-
- protected static class ListProxy extends AccessibleContext
- implements Accessible, AccessibleComponent {
- AccessibleContext list;
- AccessibleComponent listComponent;
-
- ListProxy(AccessibleContext ac) {
- list = ac;
- listComponent = list.getAccessibleComponent();
- }
-
- /** Returns the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext getAccessibleContext() {
- return this;
- }
-
- /** Returns the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleComponent getAccessibleComponent() {
- return this;
- }
-
- /** Returns the AccessibleSelection associated with this object */
- public javax.accessibility.AccessibleSelection getAccessibleSelection() {
- return list.getAccessibleSelection();
- }
-
- /** Returns the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
- return list.getAccessibleStateSet();
- }
-
- public java.util.Locale getLocale() {
- return list.getLocale();
- }
-
- public int getAccessibleIndexInParent() {
- return -1;
- }
-
- public int getAccessibleChildrenCount() {
- return list.getAccessibleChildrenCount();
- }
-
- public javax.accessibility.Accessible getAccessibleChild(int i) {
- return list.getAccessibleChild(i);
- }
-
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return javax.accessibility.AccessibleRole.LIST;
- }
-
- /*
- * AccessibleComponent
- */
- public void addFocusListener(java.awt.event.FocusListener fl) {
- listComponent.addFocusListener(fl);
- }
-
- public void removeFocusListener(java.awt.event.FocusListener fl) {
- listComponent.removeFocusListener(fl);
- }
-
- /** Returns the background color of the object */
- public java.awt.Color getBackground() {
- return listComponent.getBackground();
- }
-
- public void setBackground(java.awt.Color c) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the foreground color of the object */
- public java.awt.Color getForeground() {
- return listComponent.getForeground();
- }
-
- public void setForeground(java.awt.Color c) {
- listComponent.setForeground(c);
- }
-
- public java.awt.Cursor getCursor() {
- return listComponent.getCursor();
- }
-
- public void setCursor(java.awt.Cursor cursor) {
- listComponent.setCursor(cursor);
- }
-
- public java.awt.Font getFont() {
- return listComponent.getFont();
- }
-
- public void setFont(java.awt.Font f) {
- listComponent.setFont(f);
- }
-
- public java.awt.FontMetrics getFontMetrics(java.awt.Font f) {
- return listComponent.getFontMetrics(f);
- }
-
- public boolean isEnabled() {
- return listComponent.isEnabled();
- }
-
- public void setEnabled(boolean b) {
- listComponent.setEnabled(b);
- }
-
- public boolean isVisible() {
- return listComponent.isVisible();
- }
-
- public void setVisible(boolean b) {
- listComponent.setVisible(b);
- }
-
- public boolean isShowing() {
- return listComponent.isShowing();
- }
-
- public boolean contains(java.awt.Point p) {
- return listComponent.contains(p);
- }
-
- /** Returns the location of the object on the screen. */
- public java.awt.Point getLocationOnScreen() {
- return listComponent.getLocationOnScreen();
- }
-
- /** Gets the location of this component in the form of a point specifying
- * the component's top-left corner
- */
- public java.awt.Point getLocation() {
- // This object represents a toplevel object, so getLocation() should
- // return the same as getLocationOnScreen().
- return getLocationOnScreen();
- }
-
- /** Moves this component to a new location */
- public void setLocation(java.awt.Point p) {
- // Not supported by UNO accessibility API
- }
-
- /** Gets the bounds of this component in the form of a Rectangle object */
- public java.awt.Rectangle getBounds() {
- java.awt.Point p = getLocationOnScreen();
- java.awt.Dimension d = getSize();
- return new java.awt.Rectangle(p.x, p.y, d.width, d.height);
- }
-
- /** Moves and resizes this component to conform to the new bounding rectangle r */
- public void setBounds(java.awt.Rectangle r) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the size of this component in the form of a Dimension object */
- public java.awt.Dimension getSize() {
- return listComponent.getSize();
- }
-
- /** Resizes this component so that it has width d.width and height d.height */
- public void setSize(java.awt.Dimension d) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the Accessible child, if one exists, contained at the local
- * coordinate Point
- */
- public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
- return listComponent.getAccessibleAt(p);
- }
-
- public boolean isFocusTraversable() {
- return listComponent.isFocusTraversable();
- }
-
- public void requestFocus() {
- listComponent.requestFocus();
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/accessibility/java_uno_accessbridge.component b/accessibility/bridge/org/openoffice/accessibility/java_uno_accessbridge.component
deleted file mode 100644
index 5fc897f2d..000000000
--- a/accessibility/bridge/org/openoffice/accessibility/java_uno_accessbridge.component
+++ /dev/null
@@ -1,34 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--**********************************************************************
-*
-* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-*
-* Copyright 2000, 2010 Oracle and/or its affiliates.
-*
-* OpenOffice.org - a multi-platform office productivity suite
-*
-* This file is part of OpenOffice.org.
-*
-* OpenOffice.org is free software: you can redistribute it and/or modify
-* it under the terms of the GNU Lesser General Public License version 3
-* only, as published by the Free Software Foundation.
-*
-* OpenOffice.org is distributed in the hope that it will be useful,
-* but WITHOUT ANY WARRANTY; without even the implied warranty of
-* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-* GNU Lesser General Public License version 3 for more details
-* (a copy is included in the LICENSE file that accompanied this code).
-*
-* You should have received a copy of the GNU Lesser General Public License
-* version 3 along with OpenOffice.org. If not, see
-* <http://www.openoffice.org/license.html>
-* for a copy of the LGPLv3 License.
-*
-**********************************************************************-->
-
-<component loader="com.sun.star.loader.Java2"
- xmlns="http://openoffice.org/2010/uno-components">
- <implementation name="org.openoffice.accessibility.AccessBridge">
- <service name="com.sun.star.accessibility.AccessBridge"/>
- </implementation>
-</component>
diff --git a/accessibility/bridge/org/openoffice/accessibility/makefile.mk b/accessibility/bridge/org/openoffice/accessibility/makefile.mk
deleted file mode 100755
index 1fa29f5bf..000000000
--- a/accessibility/bridge/org/openoffice/accessibility/makefile.mk
+++ /dev/null
@@ -1,62 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJNAME = accessibility
-PRJ = ..$/..$/..$/..
-TARGET = java_uno_accessbridge
-PACKAGE = org$/openoffice$/accessibility
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-JARFILES = jurt.jar unoil.jar ridl.jar
-JAVAFILES = \
- AccessBridge.java \
- KeyHandler.java \
- PopupWindow.java \
- WindowsAccessBridgeAdapter.java
-
-JAVACLASSFILES= $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:b).class)
-
-JARTARGET = $(TARGET).jar
-JARCOMPRESS = TRUE
-JARCLASSDIRS = $(PACKAGE) org/openoffice/java/accessibility
-CUSTOMMANIFESTFILE = manifest
-
-# --- Targets ------------------------------------------------------
-
-
-.INCLUDE : target.mk
-
-ALLTAR : $(MISC)/java_uno_accessbridge.component
-
-$(MISC)/java_uno_accessbridge.component .ERRREMOVE : \
- $(SOLARENV)/bin/createcomponent.xslt java_uno_accessbridge.component
- $(XSLTPROC) --nonet --stringparam uri \
- '$(COMPONENTPREFIX_BASIS_JAVA)$(JARTARGET)' -o $@ \
- $(SOLARENV)/bin/createcomponent.xslt java_uno_accessbridge.component
diff --git a/accessibility/bridge/org/openoffice/accessibility/manifest b/accessibility/bridge/org/openoffice/accessibility/manifest
deleted file mode 100755
index 4b5ffd54d..000000000
--- a/accessibility/bridge/org/openoffice/accessibility/manifest
+++ /dev/null
@@ -1,2 +0,0 @@
-RegistrationClassName: org.openoffice.accessibility.AccessBridge
-UNO-Type-Path:
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AbstractButton.java b/accessibility/bridge/org/openoffice/java/accessibility/AbstractButton.java
deleted file mode 100644
index 1540ba8f7..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/AbstractButton.java
+++ /dev/null
@@ -1,176 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import javax.accessibility.AccessibleState;
-
-import com.sun.star.uno.*;
-import com.sun.star.accessibility.*;
-
-/**
- */
-public abstract class AbstractButton extends Component {
-
- protected AbstractButton(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
- super(xAccessible, xAccessibleContext);
- }
-
- protected abstract class AccessibleAbstractButton extends AccessibleUNOComponent
- implements javax.accessibility.AccessibleAction {
-
- /**
- * Though the class is abstract, this should be called by all sub-classes
- */
- protected AccessibleAbstractButton() {
- super();
- }
-
- /*
- * AccessibleContext
- */
-
- /** Gets the AccessibleAction associated with this object that supports one or more actions */
- public javax.accessibility.AccessibleAction getAccessibleAction() {
- return this;
- }
-
- /** Gets the AccessibleText associated with this object presenting text on the display */
- public javax.accessibility.AccessibleText getAccessibleText() {
-
- if (disposed)
- return null;
-
- try {
- XAccessibleText unoAccessibleText = (XAccessibleText)
- UnoRuntime.queryInterface(XAccessibleText.class,unoAccessibleComponent);
- if (unoAccessibleText != null) {
- return new AccessibleTextImpl(unoAccessibleText);
- } else {
- return null;
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Returns the relation set of this object */
- public javax.accessibility.AccessibleRelationSet getAccessibleRelationSet() {
- try {
- XAccessibleRelationSet unoAccessibleRelationSet = unoAccessibleContext.getAccessibleRelationSet();
-
- if (unoAccessibleRelationSet == null) {
- return null;
- }
-
- javax.accessibility.AccessibleRelationSet relationSet = new javax.accessibility.AccessibleRelationSet();
- int count = unoAccessibleRelationSet.getRelationCount();
-
- for (int i = 0; i < count; i++) {
- AccessibleRelation unoAccessibleRelation = unoAccessibleRelationSet.getRelation(i);
-
- switch (unoAccessibleRelation.RelationType) {
- case AccessibleRelationType.MEMBER_OF:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.MEMBER_OF,
- getAccessibleComponents(
- unoAccessibleRelation.TargetSet)));
- break;
-
- case AccessibleRelationType.LABELED_BY:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.LABELED_BY,
- getAccessibleComponents(
- unoAccessibleRelation.TargetSet)));
- break;
- default:
- break;
- }
- }
-
- return relationSet;
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /*
- * AccessibleAction
- */
-
- /** Performs the specified Action on the object */
- public boolean doAccessibleAction(int param) {
- if (param == 0) {
- // HACK: this action might open a modal dialog and therefor block
- // until the dialog is closed. In case of this thread being the
- // AWT EventDispatcherThread this means, the opened dialog will
- // not be accessible, so deligate this request to another thread.
- if (java.awt.EventQueue.isDispatchThread()) {
- Thread t = new Thread () {
- public void run() {
- AbstractButton.AccessibleAbstractButton.this.doAccessibleAction(0);
- }
- };
- t.start();
- return true;
- } else {
- // Actions of MenuItems may also be performed if the item is not
- // visible, so just try ..
- try {
- XAccessibleContext xAccessibleContext = unoAccessibleContext;
- if (xAccessibleContext != null) {
- // Query for XAccessibleAction interface
- XAccessibleAction xAccessibleAction = (XAccessibleAction)
- UnoRuntime.queryInterface(XAccessibleAction.class, xAccessibleContext);
-
- if (xAccessibleAction != null) {
- return xAccessibleAction.doAccessibleAction(0);
- }
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
- }
-
- return false;
- }
-
- /** Returns a description of the specified action of the object */
- public java.lang.String getAccessibleActionDescription(int param) {
- return javax.swing.UIManager.getString("AbstractButton.clickText");
- }
-
- /** Returns the number of accessible actions available in this object */
- public int getAccessibleActionCount() {
- return 1;
- }
- }
-}
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleActionImpl.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleActionImpl.java
deleted file mode 100644
index ec250f68a..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleActionImpl.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.XAccessibleAction;
-
-/** The AccessibleActionWrapper maps the calls to the java AccessibleAction interface
- * to the corresponding methods of the UNO XAccessibleAction interface.
- */
-public class AccessibleActionImpl implements javax.accessibility.AccessibleAction {
-
- protected XAccessibleAction unoObject;
-
- /** Creates new AccessibleActionWrapper */
- public AccessibleActionImpl(XAccessibleAction xAccessibleAction) {
- unoObject = xAccessibleAction;
- }
-
- public boolean doAccessibleAction(int param) {
- try {
- return unoObject.doAccessibleAction(param);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return false;
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- }
- }
-
- public java.lang.String getAccessibleActionDescription(int param) {
- try {
- return unoObject.getAccessibleActionDescription(param);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public int getAccessibleActionCount() {
- try {
- return unoObject.getAccessibleActionCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleComponentImpl.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleComponentImpl.java
deleted file mode 100644
index 93df646e8..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleComponentImpl.java
+++ /dev/null
@@ -1,233 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.AccessibleStateType;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleComponent;
-// import com.sun.star.accessibility.XAccessibleExtendedComponent;
-import com.sun.star.uno.UnoRuntime;
-
-public class AccessibleComponentImpl implements javax.accessibility.AccessibleComponent {
-
- protected XAccessibleComponent unoObject;
-// protected XAccessibleExtendedComponent unoAccessibleExtendedComponent = null;
-
- /** Creates new AccessibleComponentImpl */
- public AccessibleComponentImpl(XAccessibleComponent xAccessibleComponent) {
- unoObject = xAccessibleComponent;
- }
-
- protected boolean hasState(short state) {
- try {
- XAccessibleContext unoAccessibleContext = (XAccessibleContext)
- UnoRuntime.queryInterface(XAccessibleContext.class, unoObject);
- // All UNO accessibility implementations must support XAccessibleContext
- // and return a valid XAccessibleStateSet ..
- return unoAccessibleContext.getAccessibleStateSet().contains(state);
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- } catch (java.lang.NullPointerException e) {
- System.err.println("XAccessibleContext unsupported or no XAccessibleStateSet returned.");
- return false;
- }
- }
-
- /*
- * XAccessibleComponent
- */
-
- /** Returns the background color of the object */
- public java.awt.Color getBackground() {
- try {
- return new java.awt.Color(unoObject.getBackground());
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public void setBackground(java.awt.Color c) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the foreground color of the object */
- public java.awt.Color getForeground() {
- try {
- return new java.awt.Color(unoObject.getForeground());
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public void setForeground(java.awt.Color c) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.Cursor getCursor() {
- // Not supported by UNO accessibility API
- return null;
- }
-
- public void setCursor(java.awt.Cursor cursor) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.Font getFont() {
- // FIXME
- return null;
- }
-
- public void setFont(java.awt.Font f) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.FontMetrics getFontMetrics(java.awt.Font f) {
- // FIXME
- return null;
- }
-
- public boolean isEnabled() {
- return hasState(AccessibleStateType.ENABLED);
- }
-
- public void setEnabled(boolean b) {
- // Not supported by UNO accessibility API
- }
-
- public boolean isVisible() {
- return hasState(AccessibleStateType.VISIBLE);
- }
-
- public void setVisible(boolean b) {
- // Not supported by UNO accessibility API
- }
-
- public boolean isShowing() {
- return hasState(AccessibleStateType.SHOWING);
- }
-
- public boolean contains(java.awt.Point p) {
- try {
- return unoObject.containsPoint(new com.sun.star.awt.Point(p.x, p.y));
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- }
- }
-
- /** Returns the location of the object on the screen. */
- public java.awt.Point getLocationOnScreen() {
- try {
- com.sun.star.awt.Point unoPoint = unoObject.getLocationOnScreen();
- return new java.awt.Point(unoPoint.X, unoPoint.Y);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the location of this component in the form of a point specifying the component's top-left corner */
- public java.awt.Point getLocation() {
- try {
- com.sun.star.awt.Point unoPoint = unoObject.getLocation();
- return new java.awt.Point( unoPoint.X, unoPoint.Y );
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Moves this component to a new location */
- public void setLocation(java.awt.Point p) {
- // Not supported by UNO accessibility API
- }
-
- /** Gets the bounds of this component in the form of a Rectangle object */
- public java.awt.Rectangle getBounds() {
- try {
- com.sun.star.awt.Rectangle unoRect = unoObject.getBounds();
- return new java.awt.Rectangle(unoRect.X, unoRect.Y, unoRect.Width, unoRect.Height);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Moves and resizes this component to conform to the new bounding rectangle r */
- public void setBounds(java.awt.Rectangle r) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the size of this component in the form of a Dimension object */
- public java.awt.Dimension getSize() {
- try {
- com.sun.star.awt.Size unoSize = unoObject.getSize();
- return new java.awt.Dimension(unoSize.Width, unoSize.Height);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Resizes this component so that it has width d.width and height d.height */
- public void setSize(java.awt.Dimension d) {
- // Not supported by UNO accessibility API
- }
-
- public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
- // Not supported by this implementation
- return null;
- }
-
- public boolean isFocusTraversable() {
- return hasState(AccessibleStateType.FOCUSABLE);
- }
-
- public void requestFocus() {
- unoObject.grabFocus();
- }
-
- /**
- * Adds the specified focus listener to receive focus events from
- * this component when this component gains input focus.
- * If listener <code>l</code> is <code>null</code>,
- * no exception is thrown and no action is performed.
- */
-
- public void addFocusListener(java.awt.event.FocusListener l) {
- // Not supported by this implementation
- }
-
- /**
- * Removes the specified focus listener so that it no longer
- * receives focus events from this component. This method performs
- * no function, nor does it throw an exception, if the listener
- * specified by the argument was not previously added to this component.
- * If listener <code>l</code> is <code>null</code>,
- * no exception is thrown and no action is performed.
- */
-
- public void removeFocusListener(java.awt.event.FocusListener l) {
- // Not supported by this implementation
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleEditableTextImpl.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleEditableTextImpl.java
deleted file mode 100644
index 6749aaad5..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleEditableTextImpl.java
+++ /dev/null
@@ -1,367 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import com.sun.star.awt.*;
-import com.sun.star.style.*;
-import com.sun.star.uno.*;
-import com.sun.star.accessibility.AccessibleTextType;
-import com.sun.star.accessibility.XAccessibleEditableText;
-
-import javax.accessibility.AccessibleText;
-import javax.swing.text.StyleConstants;
-
-/** The GenericAccessibleEditableText mapps the calls to the java AccessibleEditableText
- * interface to the corresponding methods of the UNO XAccessibleEditableText interface.
- */
-public class AccessibleEditableTextImpl extends AccessibleTextImpl implements javax.accessibility.AccessibleEditableText {
- final static double toPointFactor = 1 / (7/10 + 34.5);
-
- /** Creates new GenericAccessibleEditableText object */
- public AccessibleEditableTextImpl(XAccessibleEditableText xAccessibleEditableText) {
- super(xAccessibleEditableText);
- }
-
- /** Cuts the text between two indices into the system clipboard */
- public void cut(int startIndex, int endIndex) {
- try {
- ((XAccessibleEditableText) unoObject).cutText(startIndex, endIndex);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- /** Deletes the text between two indices */
- public void delete(int startIndex, int endIndex) {
- try {
- ((XAccessibleEditableText) unoObject).deleteText(startIndex, endIndex);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- /** Returns the text range between two indices */
- public String getTextRange(int startIndex, int endIndex) {
- try {
- return unoObject.getTextRange(startIndex, endIndex);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return null;
- }
-
- /** Inserts the specified string at the given index */
- public void insertTextAtIndex(int index, String s){
- try {
- ((XAccessibleEditableText) unoObject).insertText(s, index);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- /** Pastes the text form the system clipboard into the text starting at the specified index */
- public void paste(int startIndex) {
- try {
- ((XAccessibleEditableText) unoObject).pasteText(startIndex);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- /** Replaces the text between two indices with the specified string */
- public void replaceText(int startIndex, int endIndex, String s) {
- try {
- ((XAccessibleEditableText) unoObject).replaceText(startIndex, endIndex, s);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- /** Selects the text between two indices */
- public void selectText(int startIndex, int endIndex) {
- try {
- unoObject.setSelection(startIndex, endIndex);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- /** Sets the attributes for the text between two indices */
- public void setAttributes(int startIndex, int endIndex, javax.swing.text.AttributeSet as) {
- java.util.Vector propertyValues = new java.util.Vector();
-
- // Convert Alignment attribute
- Object attribute = as.getAttribute(StyleConstants.Alignment);
- if (null != attribute) {
- com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
- propertyValue.Name = "ParaAdjust";
-
- switch (StyleConstants.getAlignment(as)) {
- case StyleConstants.ALIGN_RIGHT:
- propertyValue.Value = ParagraphAdjust.RIGHT;
- break;
- case StyleConstants.ALIGN_CENTER:
- propertyValue.Value = ParagraphAdjust.CENTER;
- break;
- case StyleConstants.ALIGN_JUSTIFIED:
- propertyValue.Value = ParagraphAdjust.BLOCK;
- break;
- default:
- propertyValue.Value = ParagraphAdjust.LEFT;
- break;
- }
- propertyValues.add(propertyValue);
- }
-
- // Convert Background attribute
- attribute = as.getAttribute(StyleConstants.Background);
- if (null != attribute) {
- com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
- propertyValue.Name = "CharBackColor";
- propertyValue.Value = new Integer(StyleConstants.getBackground(as).getRGB());
- propertyValues.add(propertyValue);
- }
-
- // FIXME: BidiLevel
-
- // Set Bold attribute
- attribute = as.getAttribute(StyleConstants.Bold);
- if (null != attribute) {
- com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
- propertyValue.Name = "CharWeight";
- if (StyleConstants.isBold(as)) {
- propertyValue.Value = new Float(150);
- } else {
- propertyValue.Value = new Float(100);
- }
- propertyValues.add(propertyValue);
- }
-
- // FIXME: Java 1.4 ComponentAttribute, ComponentElementName, ComposedTextAttribute
-
- // Set FirstLineIndent attribute
- attribute = as.getAttribute(StyleConstants.FirstLineIndent);
- if (null != attribute) {
- com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
- propertyValue.Name = "ParaFirstLineIndent";
- propertyValue.Value = new Double(StyleConstants.getFirstLineIndent(as) / toPointFactor);
- propertyValues.add(propertyValue);
- }
-
- // Set font family attribute
- attribute = as.getAttribute(StyleConstants.FontFamily);
- if (null != attribute) {
- com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
- propertyValue.Name = "CharFontPitch";
-
- if (StyleConstants.getFontFamily(as).equals( "Proportional" )) {
- propertyValue.Value = new Short("2");
- } else {
- propertyValue.Value = new Short("1");
- }
- propertyValues.add(propertyValue);
- }
-
- // Set font size attribute
- attribute = as.getAttribute(StyleConstants.FontSize);
- if (null != attribute) {
- com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
- propertyValue.Name = "CharHeight";
- propertyValue.Value = new Integer(StyleConstants.getFontSize(as));
- propertyValues.add(propertyValue);
- }
-
- // Map foreground color
- attribute = as.getAttribute(StyleConstants.Foreground);
- if (null != attribute) {
- com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
- propertyValue.Name = "CharColor";
- propertyValue.Value = new Integer (StyleConstants.getForeground(as).getRGB());
- propertyValues.add(propertyValue);
- }
-
- // FIXME: IconAttribute, IconElementName
-
- // Set italic attribute
- attribute = as.getAttribute(StyleConstants.Italic);
- if (null != attribute) {
- com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
- propertyValue.Name = "CharPosture";
-
- if (StyleConstants.isItalic(as)) {
- propertyValue.Value = FontSlant.ITALIC;
- } else {
- propertyValue.Value = FontSlant.DONTKNOW;
- }
- propertyValues.add(propertyValue);
- }
-
- // Set left indent attribute
- attribute = as.getAttribute(StyleConstants.LeftIndent);
- if (null != attribute) {
- com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
- propertyValue.Name = "ParaFirstLeftMargin";
- propertyValue.Value = new Integer(new Double(StyleConstants.getLeftIndent(as) / toPointFactor).intValue());
- propertyValues.add(propertyValue);
- }
-
- // Set right indent attribute
- attribute = as.getAttribute(StyleConstants.RightIndent);
- if (null != attribute) {
- com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
- propertyValue.Name = "ParaFirstRightMargin";
- propertyValue.Value = new Integer(new Double(StyleConstants.getRightIndent(as) / toPointFactor).intValue());
- propertyValues.add(propertyValue);
- }
-
- // Set line spacing attribute
- attribute = as.getAttribute(StyleConstants.LineSpacing);
- if (null != attribute) {
- com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
- propertyValue.Name = "ParaLineSpacing";
- propertyValue.Value = new Integer(new Double(StyleConstants.getLineSpacing(as) / toPointFactor).intValue());
- propertyValues.add(propertyValue);
- }
-
- // FIXME: Java 1.4 NameAttribute, Orientation, ResolveAttribute
-
- // Set space above attribute
- attribute = as.getAttribute(StyleConstants.SpaceAbove);
- if (null != attribute) {
- com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
- propertyValue.Name = "ParaTopMargin";
- propertyValue.Value = new Integer(new Double( StyleConstants.getSpaceAbove(as) / toPointFactor).intValue());
- propertyValues.add(propertyValue);
- }
-
- // Set space below attribute
- attribute = as.getAttribute(StyleConstants.SpaceBelow);
- if (null != attribute) {
- com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
- propertyValue.Name = "ParaBottomMargin";
- propertyValue.Value = new Integer(new Double(StyleConstants.getSpaceBelow(as) / toPointFactor).intValue());
- propertyValues.add(propertyValue);
- }
-
- // Set strike through attribute
- attribute = as.getAttribute(StyleConstants.StrikeThrough);
- if (null != attribute) {
- com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
- propertyValue.Name = "CharPosture";
- if (StyleConstants.isStrikeThrough(as)) {
- propertyValue.Value = new Short(FontStrikeout.SINGLE);
- } else {
- propertyValue.Value = new Short(FontStrikeout.NONE);
- }
- propertyValues.add(propertyValue);
- }
-
- // Set sub-/superscript attribute
- attribute = as.getAttribute(StyleConstants.Superscript);
- if (null == attribute) {
- attribute = as.getAttribute(StyleConstants.Subscript);
- }
- if (null != attribute) {
- com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
- propertyValue.Name = "CharEscapement";
-
- if (StyleConstants.isSuperscript(as)) {
- propertyValue.Value = new Short( "1" );
- } else if (StyleConstants.isSubscript(as)) {
- propertyValue.Value = new Short( "-1" );
- } else {
- propertyValue.Value = new Short( "0" );
- }
- propertyValues.add(propertyValue);
- }
-
- // Set tabset attribute
- attribute = as.getAttribute(StyleConstants.TabSet);
- if (null != attribute) {
- com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
- propertyValue.Name = "ParaTabStops";
-
- javax.swing.text.TabSet tabSet = StyleConstants.getTabSet(as);
- java.util.ArrayList tabStops = new java.util.ArrayList(tabSet.getTabCount());
-
- for (int i = 0, max = tabSet.getTabCount(); i < max; i++) {
- javax.swing.text.TabStop tab = tabSet.getTab(i);
- com.sun.star.style.TabStop unoTab = new com.sun.star.style.TabStop();
-
- unoTab.Position = new Double(tab.getPosition() / toPointFactor).intValue();
-
- switch (tab.getAlignment()) {
- case javax.swing.text.TabStop.ALIGN_CENTER:
- unoTab.Alignment = TabAlign.CENTER;
- break;
- case javax.swing.text.TabStop.ALIGN_RIGHT:
- unoTab.Alignment = TabAlign.RIGHT;
- break;
- case javax.swing.text.TabStop.ALIGN_DECIMAL:
- unoTab.Alignment = TabAlign.DECIMAL;
- break;
- default:
- unoTab.Alignment = TabAlign.LEFT;
- break;
- }
-
- tabStops.add(unoTab);
- }
- propertyValue.Value = (com.sun.star.style.TabStop[]) tabStops.toArray();
- propertyValues.add(propertyValue);
- }
-
- // Set underline attribute
- attribute = as.getAttribute(StyleConstants.Underline);
- if (null != attribute) {
- com.sun.star.beans.PropertyValue propertyValue = new com.sun.star.beans.PropertyValue();
- propertyValue.Name = "CharUnderline";
-
- if (StyleConstants.isUnderline(as)) {
- propertyValue.Value = new Short(FontUnderline.SINGLE);
- } else {
- propertyValue.Value = new Short(FontUnderline.NONE);
- }
- propertyValues.add(propertyValue);
- }
-
- try {
- ((XAccessibleEditableText) unoObject).setAttributes(startIndex, endIndex, (com.sun.star.beans.PropertyValue[]) propertyValues.toArray());
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- /** Sets the text contents to the specified string */
- public void setTextContents(String s) {
- try {
- ((XAccessibleEditableText) unoObject).setText(s);
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleExtendedState.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleExtendedState.java
deleted file mode 100644
index a6eb653ef..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleExtendedState.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import javax.accessibility.AccessibleState;
-
-public class AccessibleExtendedState extends AccessibleState {
- public static final AccessibleState DEFUNCT;
- public static final AccessibleState INDETERMINATE;
- public static final AccessibleState MANAGES_DESCENDANTS;
- public static final AccessibleState SENSITIVE;
- public static final AccessibleState STALE;
-
- static {
- DEFUNCT = new AccessibleExtendedState("defunct");
-
- // JAVA 1.5: will come with manages_descendants and indeterminate
- INDETERMINATE = new AccessibleExtendedState("indeterminate");
- MANAGES_DESCENDANTS = new AccessibleExtendedState("managesDescendants");
-
- SENSITIVE = new AccessibleExtendedState("sensitive");
- STALE = new AccessibleExtendedState("stale");
- }
-
- protected AccessibleExtendedState(String key) {
- super(key);
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleHypertextImpl.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleHypertextImpl.java
deleted file mode 100644
index 3927f78de..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleHypertextImpl.java
+++ /dev/null
@@ -1,191 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import org.openoffice.java.accessibility.logging.*;
-
-import com.sun.star.accessibility.*;
-import com.sun.star.uno.*;
-
-/** The AccessibleHypertextImpl mapps all calls to the java AccessibleHypertext
- * interface to the corresponding methods of the UNO XAccessibleHypertext
- * interface.
- */
-public class AccessibleHypertextImpl extends AccessibleTextImpl
- implements javax.accessibility.AccessibleHypertext {
-
- protected class Hyperlink extends javax.accessibility.AccessibleHyperlink {
- protected XAccessibleHyperlink unoObject;
-
- public Hyperlink(XAccessibleHyperlink xHyperlink) {
- unoObject = xHyperlink;
- }
-
- public int getStartIndex() {
- try {
- System.err.println("StartIndex: " + unoObject.getStartIndex());
- return unoObject.getStartIndex();
- } catch (com.sun.star.uno.RuntimeException e) {
- return -1;
- }
- }
-
- public Object getAccessibleActionObject(int param) {
- System.err.println("getActionObject");
- try {
- Object any = unoObject.getAccessibleActionObject(param);
- if (AnyConverter.isString(any)) {
- String url = AnyConverter.toString(any);
- if (null != url) {
- return new java.net.URL(url);
- }
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- } catch (java.net.MalformedURLException exception) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
-
- return null;
- }
-
- public int getEndIndex() {
- try {
- System.err.println("StartIndex: " + unoObject.getEndIndex());
- return unoObject.getEndIndex();
- } catch (com.sun.star.uno.RuntimeException e) {
- return -1;
- }
- }
-
- public Object getAccessibleActionAnchor(int param) {
- System.err.println("getActionAnchor");
- try {
- Object any = unoObject.getAccessibleActionObject(param);
- if (AnyConverter.isString(any)) {
- System.err.println("Anchor: " + AnyConverter.toString(any));
- return AnyConverter.toString(any);
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return null;
- }
-
- public boolean isValid() {
- return unoObject.isValid();
- }
-
- public boolean doAccessibleAction(int param) {
- try {
- return unoObject.doAccessibleAction(param);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return false;
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- }
- }
-
- public String getAccessibleActionDescription(int param) {
- try {
- return unoObject.getAccessibleActionDescription(param);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return null;
- }
- }
-
- public int getAccessibleActionCount() {
- try {
- return unoObject.getAccessibleActionCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
- }
-
- /** Creates new AccessibleHypertextImpl */
- public AccessibleHypertextImpl(XAccessibleHypertext xAccessibleHypertext) {
- if (Build.PRODUCT) {
- unoObject = xAccessibleHypertext;
- } else {
- String property = System.getProperty("AccessBridgeLogging");
- if ((property != null) && (property.indexOf("text") != -1)) {
- unoObject = new XAccessibleHypertextLog(xAccessibleHypertext);
- } else {
- unoObject = xAccessibleHypertext;
- }
- }
- }
-
- public static javax.accessibility.AccessibleText get(com.sun.star.uno.XInterface unoObject) {
- try {
- XAccessibleHypertext unoAccessibleHypertext = (XAccessibleHypertext)
- UnoRuntime.queryInterface(XAccessibleHypertext.class, unoObject);
- if (unoAccessibleHypertext != null) {
- return new AccessibleHypertextImpl(unoAccessibleHypertext);
- }
-
- XAccessibleText unoAccessibleText = (XAccessibleText)
- UnoRuntime.queryInterface(XAccessibleText.class, unoObject);
- if (unoAccessibleText != null) {
- return new AccessibleTextImpl(unoAccessibleText);
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return null;
- }
-
- public javax.accessibility.AccessibleHyperlink getLink(int param) {
- try {
- return new Hyperlink(((XAccessibleHypertext) unoObject).getHyperLink(param));
- }
-
- catch(com.sun.star.lang.IndexOutOfBoundsException exception) {
- throw new IndexOutOfBoundsException(exception.getMessage());
- }
- }
-
- public int getLinkCount() {
- try {
- return ((XAccessibleHypertext) unoObject).getHyperLinkCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- public int getLinkIndex(int param) {
- try {
- return ((XAccessibleHypertext) unoObject).getHyperLinkIndex(param);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return -1;
- } catch (com.sun.star.uno.RuntimeException e) {
- return -1;
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleIconImpl.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleIconImpl.java
deleted file mode 100644
index c79fbae89..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleIconImpl.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.XAccessibleImage;
-
-/**
- */
-public class AccessibleIconImpl implements javax.accessibility.AccessibleIcon {
-
- XAccessibleImage unoAccessibleImage;
-
- public AccessibleIconImpl(XAccessibleImage xImage) {
- unoAccessibleImage = xImage;
- }
-
- /** Gets the description of the icon */
- public String getAccessibleIconDescription() {
- try {
- return unoAccessibleImage.getAccessibleImageDescription();
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the height of the icon */
- public int getAccessibleIconHeight() {
- try {
- return unoAccessibleImage.getAccessibleImageHeight();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Gets the width of the icon */
- public int getAccessibleIconWidth() {
- try {
- return unoAccessibleImage.getAccessibleImageWidth();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Sets the description of the icon */
- public void setAccessibleIconDescription(String s) {
- // Not supported
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleKeyBinding.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleKeyBinding.java
deleted file mode 100644
index fc58e6b38..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleKeyBinding.java
+++ /dev/null
@@ -1,386 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.*;
-import com.sun.star.awt.KeyStroke;
-
-/**
- *
- */
-public class AccessibleKeyBinding extends Object implements javax.accessibility.AccessibleKeyBinding {
-
- XAccessibleKeyBinding unoAccessibleKeybinding;
-
- public AccessibleKeyBinding(XAccessibleKeyBinding unoKB) {
- unoAccessibleKeybinding = unoKB;
- }
-
- public static int convertModifiers(short s) {
- int modifiers = 0;
- if ((s & com.sun.star.awt.KeyModifier.SHIFT) != 0) {
- modifiers = modifiers | java.awt.event.KeyEvent.SHIFT_DOWN_MASK;
- }
-
- if ((s & com.sun.star.awt.KeyModifier.MOD1) != 0) {
- modifiers = modifiers | java.awt.event.KeyEvent.CTRL_DOWN_MASK;
- }
-
- if ((s & com.sun.star.awt.KeyModifier.MOD2) != 0) {
- modifiers = modifiers | java.awt.event.KeyEvent.ALT_DOWN_MASK;
- }
-
- if ((s & com.sun.star.awt.KeyModifier.MOD3) != 0) {
- modifiers = modifiers | java.awt.event.KeyEvent.META_DOWN_MASK;
- }
-
- return modifiers;
- }
-
- public static int convertKeyCode(short s) {
- int keycode = java.awt.event.KeyEvent.VK_UNDEFINED;
-
- switch(s) {
- case com.sun.star.awt.Key.NUM0:
- keycode = java.awt.event.KeyEvent.VK_0;
- break;
- case com.sun.star.awt.Key.NUM1:
- keycode = java.awt.event.KeyEvent.VK_1;
- break;
- case com.sun.star.awt.Key.NUM2:
- keycode = java.awt.event.KeyEvent.VK_2;
- break;
- case com.sun.star.awt.Key.NUM3:
- keycode = java.awt.event.KeyEvent.VK_3;
- break;
- case com.sun.star.awt.Key.NUM4:
- keycode = java.awt.event.KeyEvent.VK_4;
- break;
- case com.sun.star.awt.Key.NUM5:
- keycode = java.awt.event.KeyEvent.VK_5;
- break;
- case com.sun.star.awt.Key.NUM6:
- keycode = java.awt.event.KeyEvent.VK_6;
- break;
- case com.sun.star.awt.Key.NUM7:
- keycode = java.awt.event.KeyEvent.VK_7;
- break;
- case com.sun.star.awt.Key.NUM8:
- keycode = java.awt.event.KeyEvent.VK_8;
- break;
- case com.sun.star.awt.Key.NUM9:
- keycode = java.awt.event.KeyEvent.VK_9;
- break;
- case com.sun.star.awt.Key.A:
- keycode = java.awt.event.KeyEvent.VK_A;
- break;
- case com.sun.star.awt.Key.B:
- keycode = java.awt.event.KeyEvent.VK_B;
- break;
- case com.sun.star.awt.Key.C:
- keycode = java.awt.event.KeyEvent.VK_C;
- break;
- case com.sun.star.awt.Key.D:
- keycode = java.awt.event.KeyEvent.VK_D;
- break;
- case com.sun.star.awt.Key.E:
- keycode = java.awt.event.KeyEvent.VK_E;
- break;
- case com.sun.star.awt.Key.F:
- keycode = java.awt.event.KeyEvent.VK_F;
- break;
- case com.sun.star.awt.Key.G:
- keycode = java.awt.event.KeyEvent.VK_G;
- break;
- case com.sun.star.awt.Key.H:
- keycode = java.awt.event.KeyEvent.VK_H;
- break;
- case com.sun.star.awt.Key.I:
- keycode = java.awt.event.KeyEvent.VK_I;
- break;
- case com.sun.star.awt.Key.J:
- keycode = java.awt.event.KeyEvent.VK_J;
- break;
- case com.sun.star.awt.Key.K:
- keycode = java.awt.event.KeyEvent.VK_K;
- break;
- case com.sun.star.awt.Key.L:
- keycode = java.awt.event.KeyEvent.VK_L;
- break;
- case com.sun.star.awt.Key.M:
- keycode = java.awt.event.KeyEvent.VK_M;
- break;
- case com.sun.star.awt.Key.N:
- keycode = java.awt.event.KeyEvent.VK_N;
- break;
- case com.sun.star.awt.Key.O:
- keycode = java.awt.event.KeyEvent.VK_O;
- break;
- case com.sun.star.awt.Key.P:
- keycode = java.awt.event.KeyEvent.VK_P;
- break;
- case com.sun.star.awt.Key.Q:
- keycode = java.awt.event.KeyEvent.VK_Q;
- break;
- case com.sun.star.awt.Key.R:
- keycode = java.awt.event.KeyEvent.VK_R;
- break;
- case com.sun.star.awt.Key.S:
- keycode = java.awt.event.KeyEvent.VK_S;
- break;
- case com.sun.star.awt.Key.T:
- keycode = java.awt.event.KeyEvent.VK_T;
- break;
- case com.sun.star.awt.Key.U:
- keycode = java.awt.event.KeyEvent.VK_U;
- break;
- case com.sun.star.awt.Key.V:
- keycode = java.awt.event.KeyEvent.VK_V;
- break;
- case com.sun.star.awt.Key.W:
- keycode = java.awt.event.KeyEvent.VK_W;
- break;
- case com.sun.star.awt.Key.X:
- keycode = java.awt.event.KeyEvent.VK_X;
- break;
- case com.sun.star.awt.Key.Y:
- keycode = java.awt.event.KeyEvent.VK_Y;
- break;
- case com.sun.star.awt.Key.Z:
- keycode = java.awt.event.KeyEvent.VK_Z;
- break;
- case com.sun.star.awt.Key.F1:
- keycode = java.awt.event.KeyEvent.VK_F1;
- break;
- case com.sun.star.awt.Key.F2:
- keycode = java.awt.event.KeyEvent.VK_F2;
- break;
- case com.sun.star.awt.Key.F3:
- keycode = java.awt.event.KeyEvent.VK_F3;
- break;
- case com.sun.star.awt.Key.F4:
- keycode = java.awt.event.KeyEvent.VK_F4;
- break;
- case com.sun.star.awt.Key.F5:
- keycode = java.awt.event.KeyEvent.VK_F5;
- break;
- case com.sun.star.awt.Key.F6:
- keycode = java.awt.event.KeyEvent.VK_F6;
- break;
- case com.sun.star.awt.Key.F7:
- keycode = java.awt.event.KeyEvent.VK_F7;
- break;
- case com.sun.star.awt.Key.F8:
- keycode = java.awt.event.KeyEvent.VK_F8;
- break;
- case com.sun.star.awt.Key.F9:
- keycode = java.awt.event.KeyEvent.VK_F9;
- break;
- case com.sun.star.awt.Key.F10:
- keycode = java.awt.event.KeyEvent.VK_F10;
- break;
- case com.sun.star.awt.Key.F11:
- keycode = java.awt.event.KeyEvent.VK_F11;
- break;
- case com.sun.star.awt.Key.F12:
- keycode = java.awt.event.KeyEvent.VK_F12;
- break;
- case com.sun.star.awt.Key.F13:
- keycode = java.awt.event.KeyEvent.VK_F13;
- break;
- case com.sun.star.awt.Key.F14:
- keycode = java.awt.event.KeyEvent.VK_F14;
- break;
- case com.sun.star.awt.Key.F15:
- keycode = java.awt.event.KeyEvent.VK_F15;
- break;
- case com.sun.star.awt.Key.F16:
- keycode = java.awt.event.KeyEvent.VK_F16;
- break;
- case com.sun.star.awt.Key.F17:
- keycode = java.awt.event.KeyEvent.VK_F17;
- break;
- case com.sun.star.awt.Key.F18:
- keycode = java.awt.event.KeyEvent.VK_F18;
- break;
- case com.sun.star.awt.Key.F19:
- keycode = java.awt.event.KeyEvent.VK_F19;
- break;
- case com.sun.star.awt.Key.F20:
- keycode = java.awt.event.KeyEvent.VK_F20;
- break;
- case com.sun.star.awt.Key.F21:
- keycode = java.awt.event.KeyEvent.VK_F21;
- break;
- case com.sun.star.awt.Key.F22:
- keycode = java.awt.event.KeyEvent.VK_F22;
- break;
- case com.sun.star.awt.Key.F23:
- keycode = java.awt.event.KeyEvent.VK_F23;
- break;
- case com.sun.star.awt.Key.F24:
- keycode = java.awt.event.KeyEvent.VK_F24;
- break;
- case com.sun.star.awt.Key.DOWN:
- keycode = java.awt.event.KeyEvent.VK_DOWN;
- break;
- case com.sun.star.awt.Key.UP:
- keycode = java.awt.event.KeyEvent.VK_UP;
- break;
- case com.sun.star.awt.Key.LEFT:
- keycode = java.awt.event.KeyEvent.VK_LEFT;
- break;
- case com.sun.star.awt.Key.RIGHT:
- keycode = java.awt.event.KeyEvent.VK_RIGHT;
- break;
- case com.sun.star.awt.Key.HOME:
- keycode = java.awt.event.KeyEvent.VK_HOME;
- break;
- case com.sun.star.awt.Key.END:
- keycode = java.awt.event.KeyEvent.VK_END;
- break;
- case com.sun.star.awt.Key.PAGEUP:
- keycode = java.awt.event.KeyEvent.VK_PAGE_UP;
- break;
- case com.sun.star.awt.Key.PAGEDOWN:
- keycode = java.awt.event.KeyEvent.VK_PAGE_DOWN;
- break;
- case com.sun.star.awt.Key.RETURN:
- keycode = java.awt.event.KeyEvent.VK_ENTER;
- break;
- case com.sun.star.awt.Key.ESCAPE:
- keycode = java.awt.event.KeyEvent.VK_ESCAPE;
- break;
- case com.sun.star.awt.Key.TAB:
- keycode = java.awt.event.KeyEvent.VK_TAB;
- break;
- case com.sun.star.awt.Key.BACKSPACE:
- keycode = java.awt.event.KeyEvent.VK_BACK_SPACE;
- break;
- case com.sun.star.awt.Key.SPACE:
- keycode = java.awt.event.KeyEvent.VK_SPACE;
- break;
- case com.sun.star.awt.Key.INSERT:
- keycode = java.awt.event.KeyEvent.VK_INSERT;
- break;
- case com.sun.star.awt.Key.DELETE:
- keycode = java.awt.event.KeyEvent.VK_DELETE;
- break;
- case com.sun.star.awt.Key.ADD:
- keycode = java.awt.event.KeyEvent.VK_ADD;
- break;
- case com.sun.star.awt.Key.SUBTRACT:
- keycode = java.awt.event.KeyEvent.VK_SUBTRACT;
- break;
- case com.sun.star.awt.Key.MULTIPLY:
- keycode = java.awt.event.KeyEvent.VK_MULTIPLY;
- break;
- case com.sun.star.awt.Key.DIVIDE:
- keycode = java.awt.event.KeyEvent.VK_DIVIDE;
- break;
- case com.sun.star.awt.Key.POINT:
- keycode = java.awt.event.KeyEvent.VK_PERIOD;
- break;
- case com.sun.star.awt.Key.COMMA:
- keycode = java.awt.event.KeyEvent.VK_COMMA;
- break;
- case com.sun.star.awt.Key.LESS:
- keycode = java.awt.event.KeyEvent.VK_LESS;
- break;
- case com.sun.star.awt.Key.GREATER:
- keycode = java.awt.event.KeyEvent.VK_GREATER;
- break;
- case com.sun.star.awt.Key.EQUAL:
- keycode = java.awt.event.KeyEvent.VK_EQUALS;
- break;
- case com.sun.star.awt.Key.CUT:
- keycode = java.awt.event.KeyEvent.VK_CUT;
- break;
- case com.sun.star.awt.Key.COPY:
- keycode = java.awt.event.KeyEvent.VK_COPY;
- break;
- case com.sun.star.awt.Key.PASTE:
- keycode = java.awt.event.KeyEvent.VK_PASTE;
- break;
- case com.sun.star.awt.Key.UNDO:
- keycode = java.awt.event.KeyEvent.VK_UNDO;
- break;
- case com.sun.star.awt.Key.FIND:
- keycode = java.awt.event.KeyEvent.VK_FIND;
- break;
- case com.sun.star.awt.Key.PROPERTIES:
- keycode = java.awt.event.KeyEvent.VK_PROPS;
- break;
- case com.sun.star.awt.Key.HELP:
- keycode = java.awt.event.KeyEvent.VK_HELP;
- break;
- default:
- ;
- }
- return keycode;
- }
-
- /*
- * AccessibleKeyBinding
- */
-
- /** Returns a key binding for this object */
- public Object getAccessibleKeyBinding(int i) {
- try {
- KeyStroke[] keys = unoAccessibleKeybinding.getAccessibleKeyBinding(i);
- javax.swing.KeyStroke[] data = new javax.swing.KeyStroke[keys.length];
- for (int j=0; j < keys.length; j++) {
- int keyCode = convertKeyCode(keys[j].KeyCode);
- if (keyCode != java.awt.event.KeyEvent.VK_UNDEFINED) {
- data[j] = javax.swing.KeyStroke.getKeyStroke(keyCode, convertModifiers(keys[j].Modifiers));
- } else {
- data[j] = null;
- }
- }
-
- if (keys.length == 1) {
- return data[0];
- } else {
- return data;
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Returns the number of key bindings for this object */
- public int getAccessibleKeyBindingCount() {
- try {
- return unoAccessibleKeybinding.getAccessibleKeyBindingCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleObjectFactory.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleObjectFactory.java
deleted file mode 100644
index aa227692a..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleObjectFactory.java
+++ /dev/null
@@ -1,545 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import java.lang.ref.WeakReference;
-import javax.accessibility.Accessible;
-import javax.accessibility.AccessibleStateSet;
-
-import com.sun.star.uno.*;
-import com.sun.star.accessibility.*;
-import org.openoffice.java.accessibility.logging.XAccessibleEventLog;
-
-/**
-*/
-public class AccessibleObjectFactory {
- // This type is needed for conversions from/to uno Any
- public static final Type XAccessibleType = new Type(XAccessible.class);
-
- private static java.util.Hashtable objectList = new java.util.Hashtable();
- private static java.awt.FocusTraversalPolicy focusTraversalPolicy = new FocusTraversalPolicy();
-
- private static java.awt.EventQueue theEventQueue = java.awt.Toolkit.getDefaultToolkit().
- getSystemEventQueue();
-
- public static java.awt.EventQueue getEventQueue() {
- return theEventQueue;
- }
-
- public static void postFocusGained(java.awt.Component c) {
- getEventQueue().postEvent(new java.awt.event.FocusEvent(c, java.awt.event.FocusEvent.FOCUS_GAINED));
- }
-
- public static void postWindowGainedFocus(java.awt.Window w) {
- postWindowEvent(w, java.awt.event.WindowEvent.WINDOW_GAINED_FOCUS);
- }
-
- public static void postWindowLostFocus(java.awt.Window w) {
- postWindowEvent(w, java.awt.event.WindowEvent.WINDOW_LOST_FOCUS);
- }
-
- public static void postWindowActivated(java.awt.Window w) {
- postWindowEvent(w, java.awt.event.WindowEvent.WINDOW_ACTIVATED);
- }
-
- public static void postWindowDeactivated(java.awt.Window w) {
- postWindowEvent(w, java.awt.event.WindowEvent.WINDOW_DEACTIVATED);
- }
-
- public static void postWindowOpened(java.awt.Window w) {
- postWindowEvent(w, java.awt.event.WindowEvent.WINDOW_OPENED);
- }
-
- public static void postWindowClosed(java.awt.Window w) {
- postWindowEvent(w, java.awt.event.WindowEvent.WINDOW_CLOSED);
- }
-
- public static void invokeAndWait() {
- try {
- theEventQueue.invokeAndWait( new java.lang.Runnable () {
- public void run() {
- }
- });
- } catch (java.lang.reflect.InvocationTargetException e) {
- } catch (java.lang.InterruptedException e) {
- }
- }
-
- private static void postWindowEvent(java.awt.Window w, int i) {
- theEventQueue.postEvent(new java.awt.event.WindowEvent(w, i));
- }
-
- public static java.awt.Component getAccessibleComponent(XAccessible xAccessible) {
- java.awt.Component c = null;
- if (xAccessible != null) {
- // Retrieve unique id for the original UNO object to be used as a hash key
- String oid = UnoRuntime.generateOid(xAccessible);
-
- // Check if we already have a wrapper object for this context
- synchronized (objectList) {
- WeakReference r = (WeakReference) objectList.get(oid);
- if(r != null) {
- c = (java.awt.Component) r.get();
- }
- }
- }
- return c;
- }
-
- public static void addChild(java.awt.Container parent, Object any) {
- try {
- addChild(parent, (XAccessible) AnyConverter.toObject(XAccessibleType, any));
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- System.err.println(e.getClass().getName() + " caught: " + e.getMessage());
- }
- }
-
- public static void addChild(java.awt.Container parent, XAccessible child) {
- try {
- if (child != null) {
- XAccessibleContext childAC = child.getAccessibleContext();
- if (childAC != null) {
- XAccessibleStateSet stateSet = childAC.getAccessibleStateSet();
- if (stateSet != null) {
- java.awt.Component c = getAccessibleComponent(child);
-
- // Re-use existing wrapper if possible, create a new one otherwise
- if (c != null) {
- // Seems to be already in child list
- if (parent.equals(c.getParent()))
- return;
- // Update general component states
- c.setEnabled(stateSet.contains(AccessibleStateType.ENABLED));
- c.setVisible(stateSet.contains(AccessibleStateType.VISIBLE));
- } else {
- c = createAccessibleComponentImpl(child, childAC, stateSet);
- }
-
- if (c != null) {
- if (c instanceof java.awt.Container) {
- populateContainer((java.awt.Container) c, childAC);
- }
- parent.add(c);
- // Simulate focus gained event for new child
- if (stateSet.contains(AccessibleStateType.FOCUSED)) {
- postFocusGained(c);
- }
- }
- }
- }
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- System.err.println(e.getClass().getName() + " caught: " + e.getMessage());
- e.printStackTrace();
- }
- }
-
- protected static void removeChild(java.awt.Container parent, Object any) {
- try {
- XAccessible xAccessible = (XAccessible) AnyConverter.toObject(XAccessibleType, any);
- java.awt.Component c = getAccessibleComponent(xAccessible);
-
- if (c != null) {
- parent.remove(c);
-
- if (c instanceof java.awt.Container) {
- clearContainer((java.awt.Container) c);
- }
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- System.err.println(e.getClass().getName() + " caught: " + e.getMessage());
- }
- }
-
-
- /**
- * Removes all children from the container parent
- */
-
- protected static void clearContainer(java.awt.Container parent) {
- // Purge all children from this container
- int count = parent.getComponentCount();
- for (int i = 0; i < count; i++) {
- java.awt.Component c = parent.getComponent(i);
- if (c instanceof java.awt.Container) {
- clearContainer((java.awt.Container) c);
- }
- }
- parent.removeAll();
- }
-
-
- /**
- * Populates the given Container parent with wrapper objects for all children of parentAC. This method is
- * intended to be called when a container is added using a CHILDREN_CHANGED event.
- */
-
- protected static void populateContainer(java.awt.Container parent, XAccessibleContext parentAC) {
- if (parentAC != null) {
- try {
- int childCount = parentAC.getAccessibleChildCount();
- for (int i=0; i<childCount; i++) {
- addChild(parent, parentAC.getAccessibleChild(i));
- }
- } catch (java.lang.Exception e) {
- System.err.println(e.getClass().getName() + " caught: " + e.getMessage());
- e.printStackTrace();
- }
- }
- }
-
- /**
- * Populates the given Container parent with wrapper objects for all children of parentAC. This method is
- * intended to be called when a new window has been opened.
- */
- protected static void populateContainer(java.awt.Container parent, XAccessibleContext parentAC, java.awt.Window frame) {
- if (parentAC != null) {
- try {
- int childCount = parentAC.getAccessibleChildCount();
- for (int i=0; i<childCount; i++) {
- XAccessible child = parentAC.getAccessibleChild(i);
- if (child != null) {
- XAccessibleContext childAC = child.getAccessibleContext();
- java.awt.Component c = createAccessibleComponent(child, childAC, frame);
- if (c != null) {
- if (c instanceof java.awt.Container) {
- populateContainer((java.awt.Container) c, childAC, frame);
- }
- parent.add(c);
- }
- } else if (Build.DEBUG) {
- System.err.println("ignoring not accessible child " + i);
- }
- }
- }
-
- catch (java.lang.Exception e) {
- System.err.println(e.getClass().getName() + " caught: " + e.getMessage());
- e.printStackTrace();
- }
- }
- }
-
- protected static java.awt.Component createAccessibleComponent(XAccessible xAccessible) {
- try {
- XAccessibleContext xAccessibleContext = xAccessible.getAccessibleContext();
- if (xAccessibleContext != null) {
- return createAccessibleComponentImpl(xAccessible, xAccessibleContext, xAccessibleContext.getAccessibleStateSet());
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- System.err.println(e.getClass().getName() + " caught: " + e.getMessage());
- e.printStackTrace();
- }
- return null;
- }
-
- protected static java.awt.Component createAccessibleComponent(XAccessible xAccessible, XAccessibleContext xAccessibleContext,
- java.awt.Window frame) {
- if (xAccessibleContext != null) {
- try {
- XAccessibleStateSet xAccessibleStateSet = xAccessibleContext.getAccessibleStateSet();
- java.awt.Component c = createAccessibleComponentImpl(xAccessible, xAccessibleContext, xAccessibleStateSet);
- if (c != null) {
- // Set this component as initial component
- if (xAccessibleStateSet.contains(AccessibleStateType.FOCUSED)) {
- if (frame instanceof NativeFrame) {
- ((NativeFrame) frame).setInitialComponent(c);
- }
- }
- return c;
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- System.err.println(e.getClass().getName() + " caught: " + e.getMessage());
- e.printStackTrace();
- }
- }
- return null;
- }
-
- protected static java.awt.Component createAccessibleComponentImpl(XAccessible xAccessible, XAccessibleContext xAccessibleContext,
- XAccessibleStateSet xAccessibleStateSet) {
- java.awt.Component c = null;
- short role = xAccessibleContext.getAccessibleRole();
- switch (role) {
- case AccessibleRole.CANVAS:
- c = new Container(javax.accessibility.AccessibleRole.CANVAS,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.CHECK_BOX:
- c = new CheckBox(xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.COMBO_BOX:
- c = new ComboBox(xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.DOCUMENT:
- c = new Container(javax.accessibility.AccessibleRole.CANVAS,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.EMBEDDED_OBJECT:
- c = new Container(javax.accessibility.AccessibleRole.PANEL,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.END_NOTE:
- c = new Container(javax.accessibility.AccessibleRole.PANEL,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.FILLER:
- c = new Container(javax.accessibility.AccessibleRole.FILLER,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.FOOTNOTE:
- c = new Container(javax.accessibility.AccessibleRole.PANEL,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.FOOTER:
- c = new Container(javax.accessibility.AccessibleRole.PANEL,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.GRAPHIC:
- c = new Container(javax.accessibility.AccessibleRole.PANEL,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.HEADER:
- c = new Container(javax.accessibility.AccessibleRole.PANEL,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.ICON:
- c = new Icon(xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.LABEL:
- c = new Label(xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.LAYERED_PANE:
- c = new Container(javax.accessibility.AccessibleRole.LAYERED_PANE,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.LIST:
- if (xAccessibleStateSet.contains(AccessibleStateType.MANAGES_DESCENDANTS)) {
- c = new List(xAccessible, xAccessibleContext);
- } else {
- c = new Container(javax.accessibility.AccessibleRole.LIST,
- xAccessible, xAccessibleContext);
- }
- break;
- case AccessibleRole.MENU:
- c = new Menu(xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.MENU_BAR:
- c = new MenuContainer(javax.accessibility.AccessibleRole.MENU_BAR, xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.MENU_ITEM:
- c = new MenuItem(xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.POPUP_MENU:
- c = new MenuContainer(javax.accessibility.AccessibleRole.POPUP_MENU, xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.OPTION_PANE:
- c = new Container(javax.accessibility.AccessibleRole.OPTION_PANE,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.PAGE_TAB:
- c = new Container(javax.accessibility.AccessibleRole.PAGE_TAB, xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.PAGE_TAB_LIST:
- c = new Container(javax.accessibility.AccessibleRole.PAGE_TAB_LIST, xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.PARAGRAPH:
- case AccessibleRole.HEADING:
- c = new Paragraph(xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.PANEL:
- c = new Container(javax.accessibility.AccessibleRole.PANEL,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.PUSH_BUTTON:
- c = new Button(xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.RADIO_BUTTON:
- c = new RadioButton(xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.ROOT_PANE:
- c = new Container(javax.accessibility.AccessibleRole.ROOT_PANE,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.SCROLL_BAR:
- c = new ScrollBar(xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.SCROLL_PANE:
- c = new Container(javax.accessibility.AccessibleRole.SCROLL_PANE,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.SEPARATOR:
- c = new Separator(xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.SHAPE:
- c = new Container(javax.accessibility.AccessibleRole.CANVAS,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.SPLIT_PANE:
- c = new Container(javax.accessibility.AccessibleRole.SPLIT_PANE,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.STATUS_BAR:
- c = new Container(javax.accessibility.AccessibleRole.STATUS_BAR,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.COLUMN_HEADER:
- case AccessibleRole.TABLE:
- if (xAccessibleStateSet.contains(AccessibleStateType.MANAGES_DESCENDANTS)) {
- c = new Table(xAccessible, xAccessibleContext,
- xAccessibleStateSet.contains(AccessibleStateType.MULTI_SELECTABLE));
- } else {
- c = new Container(javax.accessibility.AccessibleRole.TABLE,
- xAccessible, xAccessibleContext);
- }
- break;
- case AccessibleRole.TABLE_CELL:
- if( xAccessibleContext.getAccessibleChildCount() > 0 )
- c = new Container(javax.accessibility.AccessibleRole.PANEL,
- xAccessible, xAccessibleContext);
- else
- c = new Label(xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.TEXT:
- c = new TextComponent(xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.TEXT_FRAME:
- c = new Container(javax.accessibility.AccessibleRole.PANEL,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.TOGGLE_BUTTON:
- c = new ToggleButton(xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.TOOL_BAR:
- c = new Container(javax.accessibility.AccessibleRole.TOOL_BAR,
- xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.TOOL_TIP:
- c = new ToolTip(xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.TREE:
- c = new Tree(xAccessible, xAccessibleContext);
- break;
- case AccessibleRole.VIEW_PORT:
- c = new Container(javax.accessibility.AccessibleRole.VIEWPORT,
- xAccessible, xAccessibleContext);
- break;
- default:
- System.err.println("Unmapped accessible object " + role);
- System.err.println("usually mapped to " + AccessibleRoleAdapter.getAccessibleRole(role));
- c = new Container(AccessibleRoleAdapter.getAccessibleRole(role),
- xAccessible, xAccessibleContext);
- break;
- }
- if (c != null) {
- // Add the newly created object to the cache list
- synchronized (objectList) {
- objectList.put(c.toString(), new WeakReference(c));
- if (Build.DEBUG) {
-// System.out.println("Object cache now contains " + objectList.size() + " objects.");
- }
- }
-
- AccessibleStateAdapter.setComponentState(c, xAccessibleStateSet);
-
- if (! Build.PRODUCT) {
- String property = System.getProperty("AccessBridgeLogging");
- if ((property != null) && (property.indexOf("event") != -1)) {
- XAccessibleEventLog.addEventListener(xAccessibleContext, c);
- }
- }
- }
-
- return c;
- }
-
- protected static void disposing(java.awt.Component c) {
- if (c != null) {
- synchronized (objectList) {
- objectList.remove(c.toString());
- }
- }
- }
-
- public static java.awt.Window getTopWindow(XAccessible xAccessible) {
- XAccessibleContext xAccessibleContext = xAccessible.getAccessibleContext();
-
- if (xAccessibleContext != null) {
- short role = xAccessibleContext.getAccessibleRole();
- XAccessibleStateSet xAccessibleStateSet = xAccessibleContext.getAccessibleStateSet();
- XAccessibleComponent xAccessibleComponent = (XAccessibleComponent)
- UnoRuntime.queryInterface(XAccessibleComponent.class, xAccessibleContext);
-
- java.awt.Window w;
- if (role == AccessibleRole.DIALOG) {
- w = new Dialog(new Application(),
- xAccessibleContext.getAccessibleName(),
- xAccessibleStateSet.contains(AccessibleStateType.MODAL),
- xAccessibleComponent);
- } else if (role == AccessibleRole.ALERT) {
- w = new Alert(new Application(),
- xAccessibleContext.getAccessibleName(),
- xAccessibleStateSet.contains(AccessibleStateType.MODAL),
- xAccessibleComponent);
- } else if (role == AccessibleRole.FRAME) {
- w = new Frame(xAccessibleContext.getAccessibleName(),
- xAccessibleComponent);
- } else if (role == AccessibleRole.WINDOW) {
- java.awt.Window activeWindow =
- java.awt.KeyboardFocusManager.getCurrentKeyboardFocusManager().getActiveWindow();
- if (activeWindow != null) {
- w = new Window(activeWindow, xAccessibleComponent);
- } else {
- if (Build.DEBUG) {
- System.err.println("no active frame found for Window: " + role);
- }
- return null;
- }
- } else {
- if (Build.DEBUG) {
- System.err.println("invalid role for toplevel window: " + role);
- }
- return null;
- }
- populateContainer(w, xAccessibleContext, w);
- w.setFocusTraversalPolicy(focusTraversalPolicy);
- w.setVisible(true);
-
- // Make the new window the focused one if it has an initialy focused object set.
- java.awt.Component c = ((NativeFrame) w).getInitialComponent();
- if (c != null) {
- postWindowGainedFocus(w);
- }
- return w;
- }
-
- return null;
- }
-}
-
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleRelationAdapter.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleRelationAdapter.java
deleted file mode 100644
index 18f3638ee..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleRelationAdapter.java
+++ /dev/null
@@ -1,64 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import javax.accessibility.Accessible;
-import com.sun.star.accessibility.AccessibleRelation;
-import com.sun.star.accessibility.XAccessible;
-
-/**
- */
-public abstract class AccessibleRelationTypeMap {
-
- final static String[] data = {
- null,
- javax.accessibility.AccessibleRelation.CONTROLLED_BY,
- javax.accessibility.AccessibleRelation.CONTROLLED_BY,
- javax.accessibility.AccessibleRelation.CONTROLLER_FOR,
- javax.accessibility.AccessibleRelation.CONTROLLER_FOR,
- javax.accessibility.AccessibleRelation.LABEL_FOR,
- javax.accessibility.AccessibleRelation.LABEL_FOR,
- javax.accessibility.AccessibleRelation.LABELED_BY,
- javax.accessibility.AccessibleRelation.LABELED_BY,
- javax.accessibility.AccessibleRelation.MEMBER_OF,
- javax.accessibility.AccessibleRelation.MEMBER_OF
- };
-
- public static void fillAccessibleRelationSet(javax.accessibility.AccessibleRelationSet s, AccessibleRelation[] relations) {
- AccessibleObjectFactory factory = AccessibleObjectFactory.getDefault();
- for(int i=0; i<relations.length; i++) {
- if( relations[i].RelationType < data.length && data[relations[i].RelationType] != null ) {
- javax.accessibility.AccessibleRelation r =
- new javax.accessibility.AccessibleRelation(data[relations[i].RelationType]);
-
- r.setTarget(factory.getAccessibleObjectSet(relations[i].TargetSet));
- s.add(r);
- }
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleRoleAdapter.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleRoleAdapter.java
deleted file mode 100644
index 468b641c9..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleRoleAdapter.java
+++ /dev/null
@@ -1,148 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleContext;
-
-/** This class maps the AccessibleRole(s) of the UNO accessibility API
- * to the corresponding javax.accessibility objects.
- */
-public abstract class AccessibleRoleAdapter {
-
- /* This array is used as a mapping between the UNO AccessibleRole
- * and the AccessibleRole objects of the Java accessibility API.
- */
- public static final javax.accessibility.AccessibleRole[] data = {
- javax.accessibility.AccessibleRole.UNKNOWN,
- javax.accessibility.AccessibleRole.ALERT,
- javax.accessibility.AccessibleRole.COLUMN_HEADER,
- javax.accessibility.AccessibleRole.CANVAS,
- javax.accessibility.AccessibleRole.CHECK_BOX,
- javax.accessibility.AccessibleRole.CHECK_BOX, // CHECK_MENU_ITEM
- javax.accessibility.AccessibleRole.COLOR_CHOOSER,
- javax.accessibility.AccessibleRole.COMBO_BOX,
- javax.accessibility.AccessibleRole.DATE_EDITOR,
- javax.accessibility.AccessibleRole.DESKTOP_ICON,
- javax.accessibility.AccessibleRole.DESKTOP_PANE,
- javax.accessibility.AccessibleRole.DIRECTORY_PANE,
- javax.accessibility.AccessibleRole.DIALOG,
- javax.accessibility.AccessibleRole.CANVAS, // DOCUMENT
- javax.accessibility.AccessibleRole.PANEL, // EMBEDDED_OBJECT
- javax.accessibility.AccessibleRole.PANEL, // ENDNOTE
- javax.accessibility.AccessibleRole.FILE_CHOOSER,
- javax.accessibility.AccessibleRole.FILLER,
- javax.accessibility.AccessibleRole.FONT_CHOOSER,
- javax.accessibility.AccessibleRole.FOOTER,
- javax.accessibility.AccessibleRole.PANEL, // FOOTNOTE
- javax.accessibility.AccessibleRole.FRAME,
- javax.accessibility.AccessibleRole.GLASS_PANE,
- javax.accessibility.AccessibleRole.PANEL, // GRAPHIC
- javax.accessibility.AccessibleRole.GROUP_BOX,
- javax.accessibility.AccessibleRole.HEADER,
- javax.accessibility.AccessibleRole.TEXT, // HEADING
- javax.accessibility.AccessibleRole.HYPERLINK,
- javax.accessibility.AccessibleRole.ICON,
- javax.accessibility.AccessibleRole.INTERNAL_FRAME,
- javax.accessibility.AccessibleRole.LABEL,
- javax.accessibility.AccessibleRole.LAYERED_PANE,
- javax.accessibility.AccessibleRole.LIST,
- javax.accessibility.AccessibleRole.LABEL, // LIST_ITEM - required by Zoomtext
- javax.accessibility.AccessibleRole.MENU,
- javax.accessibility.AccessibleRole.MENU_BAR,
- javax.accessibility.AccessibleRole.MENU_ITEM,
- javax.accessibility.AccessibleRole.OPTION_PANE,
- javax.accessibility.AccessibleRole.PAGE_TAB,
- javax.accessibility.AccessibleRole.PAGE_TAB_LIST,
- javax.accessibility.AccessibleRole.PANEL,
- javax.accessibility.AccessibleRole.PARAGRAPH,
- javax.accessibility.AccessibleRole.PASSWORD_TEXT,
- javax.accessibility.AccessibleRole.POPUP_MENU,
- javax.accessibility.AccessibleRole.PUSH_BUTTON,
- javax.accessibility.AccessibleRole.PROGRESS_BAR,
- javax.accessibility.AccessibleRole.RADIO_BUTTON,
- javax.accessibility.AccessibleRole.RADIO_BUTTON, // RADIO_MENU_ITEM
- javax.accessibility.AccessibleRole.ROW_HEADER,
- javax.accessibility.AccessibleRole.ROOT_PANE,
- javax.accessibility.AccessibleRole.SCROLL_BAR,
- javax.accessibility.AccessibleRole.SCROLL_PANE,
- javax.accessibility.AccessibleRole.CANVAS, // SHAPE
- javax.accessibility.AccessibleRole.SEPARATOR,
- javax.accessibility.AccessibleRole.SLIDER,
- javax.accessibility.AccessibleRole.SPIN_BOX,
- javax.accessibility.AccessibleRole.SPLIT_PANE,
- javax.accessibility.AccessibleRole.STATUS_BAR,
- javax.accessibility.AccessibleRole.TABLE,
- javax.accessibility.AccessibleRole.LABEL, // TABLE_CELL - required by ZoomText
- javax.accessibility.AccessibleRole.TEXT,
- javax.accessibility.AccessibleRole.PANEL, // TEXT_FRAME
- javax.accessibility.AccessibleRole.TOGGLE_BUTTON,
- javax.accessibility.AccessibleRole.TOOL_BAR,
- javax.accessibility.AccessibleRole.TOOL_TIP,
- javax.accessibility.AccessibleRole.TREE,
- javax.accessibility.AccessibleRole.VIEWPORT,
- javax.accessibility.AccessibleRole.WINDOW,
- javax.accessibility.AccessibleRole.RADIO_BUTTON, // BUTTON_DROPDOWN
- javax.accessibility.AccessibleRole.RADIO_BUTTON, // BUTTON_MENU
- javax.accessibility.AccessibleRole.PANEL, // CAPTION
- javax.accessibility.AccessibleRole.PANEL, // CHART
- javax.accessibility.AccessibleRole.EDITBAR,
- javax.accessibility.AccessibleRole.PANEL, // FORM
- javax.accessibility.AccessibleRole.PANEL, // IMAGE_MAP
- javax.accessibility.AccessibleRole.PANEL, // NOTE
- javax.accessibility.AccessibleRole.PANEL, // PAGE
- javax.accessibility.AccessibleRole.RULER,
- javax.accessibility.AccessibleRole.PANEL, // SECTION
- javax.accessibility.AccessibleRole.LABEL, // TREE_ITEM
- javax.accessibility.AccessibleRole.TABLE // TREE_TABLE
- };
-
- public static javax.accessibility.AccessibleRole getAccessibleRole(short role) {
- if(role < data.length) {
- if(data[role] == null) {
- System.err.println("Unmapped role: " + role);
- }
- return data[role];
- }
- // FIXME: remove debug out
- System.err.println("Unmappable role: " + role);
- return null;
- }
-
- public static javax.accessibility.AccessibleRole getAccessibleRole(XAccessible unoAccessible) {
- try {
- XAccessibleContext unoAccessibleContext = unoAccessible.getAccessibleContext();
- if (unoAccessibleContext != null) {
- return getAccessibleRole(unoAccessibleContext.getAccessibleRole());
- }
- return null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return javax.accessibility.AccessibleRole.UNKNOWN;
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleSelectionImpl.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleSelectionImpl.java
deleted file mode 100644
index 312460f23..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleSelectionImpl.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.*;
-
-class AccessibleSelectionImpl implements javax.accessibility.AccessibleSelection {
- XAccessibleSelection unoAccessibleSelection;
-
- AccessibleSelectionImpl(XAccessibleSelection xAccessibleSelection) {
- unoAccessibleSelection = xAccessibleSelection;
- }
-
- /** Returns an Accessible representing the specified selected child of the object */
- public javax.accessibility.Accessible getAccessibleSelection(int i) {
- try {
- return (javax.accessibility.Accessible) AccessibleObjectFactory.getAccessibleComponent(
- unoAccessibleSelection.getSelectedAccessibleChild(i));
- } catch (com.sun.star.uno.Exception e) {
- return null;
- }
- }
-
- /** Adds the specified Accessible child of the object to the object's selection */
- public void addAccessibleSelection(int i) {
- try {
- unoAccessibleSelection.selectAccessibleChild(i);
- } catch (com.sun.star.uno.Exception e) {
- }
- }
-
- /** Clears the selection in the object, so that no children in the object are selected */
- public void clearAccessibleSelection() {
- try {
- unoAccessibleSelection.clearAccessibleSelection();
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- /** Returns the number of Accessible children currently selected */
- public int getAccessibleSelectionCount() {
- try {
- return unoAccessibleSelection.getSelectedAccessibleChildCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Determines if the current child of this object is selected */
- public boolean isAccessibleChildSelected(int i) {
- try {
- return unoAccessibleSelection.isAccessibleChildSelected(i);
- } catch (com.sun.star.uno.Exception e) {
- return false;
- }
- }
-
- /** Removes the specified child of the object from the object's selection */
- public void removeAccessibleSelection(int i) {
- try {
- unoAccessibleSelection.deselectAccessibleChild(i);
- } catch (com.sun.star.uno.Exception e) {
- }
- }
-
- /** Causes every child of the object to be selected if the object supports multiple selection */
- public void selectAllAccessibleSelection() {
- try {
- unoAccessibleSelection.selectAllAccessibleChildren();
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleStateAdapter.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleStateAdapter.java
deleted file mode 100644
index 36ed08466..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleStateAdapter.java
+++ /dev/null
@@ -1,214 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import javax.accessibility.AccessibleState;
-import javax.accessibility.AccessibleStateSet;
-
-import com.sun.star.uno.AnyConverter;
-import com.sun.star.accessibility.AccessibleStateType;
-import com.sun.star.accessibility.XAccessibleStateSet;
-
-public class AccessibleStateAdapter {
-
- private static final AccessibleState[] stateTypeMap = {
- null,
- AccessibleState.ACTIVE,
- AccessibleState.ARMED,
- AccessibleState.BUSY,
- AccessibleState.CHECKED,
- AccessibleExtendedState.DEFUNCT,
- AccessibleState.EDITABLE,
- AccessibleState.ENABLED,
- AccessibleState.EXPANDABLE,
- AccessibleState.EXPANDED,
- AccessibleState.FOCUSABLE,
- AccessibleState.FOCUSED,
- AccessibleState.HORIZONTAL,
- AccessibleState.ICONIFIED,
- AccessibleExtendedState.INDETERMINATE,
- AccessibleExtendedState.MANAGES_DESCENDANTS,
- AccessibleState.MODAL,
- AccessibleState.MULTI_LINE,
- AccessibleState.MULTISELECTABLE,
- AccessibleState.OPAQUE,
- AccessibleState.PRESSED,
- AccessibleState.RESIZABLE,
- AccessibleState.SELECTABLE,
- AccessibleState.SELECTED,
- AccessibleExtendedState.SENSITIVE,
- AccessibleState.SHOWING,
- AccessibleState.SINGLE_LINE,
- AccessibleExtendedState.STALE,
- AccessibleState.TRANSIENT,
- AccessibleState.VERTICAL,
- AccessibleState.VISIBLE
- };
-
- private static void printToplevelStateMessage(AccessibleState s, java.awt.Component c) {
- System.err.println("*** ERROR *** " + s + " state is a toplevel window state " + c);
- }
-
- private static String getDisplayName(java.awt.Component c) {
- javax.accessibility.Accessible a = (javax.accessibility.Accessible) c;
- if( a != null) {
- javax.accessibility.AccessibleContext ac = a.getAccessibleContext();
- return "[" + ac.getAccessibleRole() + "] " + ac.getAccessibleName();
- } else {
- return c.toString();
- }
- }
-
- private static void printOutOfSyncMessage(AccessibleState s, java.awt.Component c, boolean enabled) {
- System.err.println("*** ERROR *** " + s + " state out of sync (UNO state set: " + !enabled + ", Java component state: " + enabled + ") for " + getDisplayName(c));
- }
-
- public static AccessibleState getAccessibleState(Object any) {
- try {
- if (AnyConverter.isShort(any)) {
- return getAccessibleState(AnyConverter.toShort(any));
- }
- return null;
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- return null;
- }
- }
-
- public static AccessibleState getAccessibleState(short unoStateType) {
- if (unoStateType > 0 && unoStateType < stateTypeMap.length) {
- return stateTypeMap[unoStateType];
- }
- return null;
- }
-
- public static AccessibleStateSet getDefunctStateSet() {
- AccessibleStateSet ass = new AccessibleStateSet();
- ass.add(AccessibleExtendedState.DEFUNCT);
- return ass;
- }
-
- public static void setComponentState(java.awt.Component c,
- XAccessibleStateSet xAccessibleStateSet) {
-
- try {
- if (xAccessibleStateSet != null) {
- // Set the boundings of the component if it is visible ..
- if (!xAccessibleStateSet.contains(AccessibleStateType.VISIBLE)) {
- c.setVisible(false);
- }
- // Set the components' enabled state ..
- if (!xAccessibleStateSet.contains(AccessibleStateType.ENABLED)) {
- c.setEnabled(false);
- }
- // Set the components' focusable state ..
- if (!xAccessibleStateSet.contains(AccessibleStateType.FOCUSABLE)) {
- c.setFocusable(false);
- }
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- public static AccessibleStateSet getAccessibleStateSet(java.awt.Component c,
- XAccessibleStateSet xAccessibleStateSet) {
-
- try {
- if (xAccessibleStateSet != null) {
- AccessibleStateSet as = new AccessibleStateSet();
- short[] unoStateTypes = xAccessibleStateSet.getStates();
- for (int i=0; i<unoStateTypes.length; i++) {
- if (unoStateTypes[i] > 0 &&
- unoStateTypes[i] < stateTypeMap.length) {
- as.add(stateTypeMap[unoStateTypes[i]]);
- }
- }
-
- // Note: COLLAPSED does not exists in the UAA.
- if (as.contains(AccessibleState.EXPANDABLE) &&
- ! as.contains(AccessibleState.EXPANDED)) {
- as.add(AccessibleState.COLLAPSED);
- }
-
- // Sync office and Java FOCUSED state
- boolean isFocusInSync;
- if (c.isFocusOwner()) {
- isFocusInSync = !as.add(AccessibleState.FOCUSED);
- } else {
- isFocusInSync = !as.remove(AccessibleState.FOCUSED);
- }
-
- // Sync office and Java ACTIVE state
- boolean isActiveInSync;
- if (c instanceof java.awt.Window && ((java.awt.Window) c).isActive()) {
- isActiveInSync = !as.add(AccessibleState.ACTIVE);
- } else {
- isActiveInSync = !as.remove(AccessibleState.ACTIVE);
- }
-
- // Report out-of-sync messages
- if (!Build.PRODUCT) {
- if (!isFocusInSync) {
- printOutOfSyncMessage(AccessibleState.FOCUSED, c, c.isFocusOwner());
- }
- if (!isActiveInSync) {
- printOutOfSyncMessage(AccessibleState.ACTIVE, c, ((java.awt.Window) c).isActive());
- }
- if (as.contains(AccessibleState.ENABLED) != c.isEnabled()) {
- printOutOfSyncMessage(AccessibleState.ENABLED, c, c.isEnabled());
- }
- if (as.contains(AccessibleState.FOCUSABLE) != c.isFocusable()) {
- printOutOfSyncMessage(AccessibleState.FOCUSABLE, c, c.isFocusable());
- }
- if (as.contains(AccessibleState.SHOWING) != c.isShowing()) {
- printOutOfSyncMessage(AccessibleState.SHOWING, c, c.isShowing());
- }
- if (as.contains(AccessibleState.VISIBLE) != c.isVisible()) {
- printOutOfSyncMessage(AccessibleState.VISIBLE, c, c.isVisible());
- }
-
- // The following states are for toplevel windows only
- if (! (c instanceof java.awt.Window)) {
- if (as.contains(AccessibleState.ACTIVE)) {
- printToplevelStateMessage(AccessibleState.ACTIVE, c);
- }
- if (as.contains(AccessibleState.ICONIFIED)) {
- printToplevelStateMessage(AccessibleState.ICONIFIED, c);
- }
- if (as.contains(AccessibleState.MODAL)) {
- printToplevelStateMessage(AccessibleState.MODAL, c);
- }
- }
- }
- return as;
- }
- return null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return getDefunctStateSet();
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleTextImpl.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleTextImpl.java
deleted file mode 100644
index 112b7744b..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleTextImpl.java
+++ /dev/null
@@ -1,678 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.*;
-import com.sun.star.awt.*;
-import com.sun.star.style.*;
-import com.sun.star.uno.*;
-
-import org.openoffice.java.accessibility.logging.*;
-
-import java.text.BreakIterator;
-import java.util.Locale;
-
-import javax.accessibility.AccessibleContext;
-import javax.accessibility.AccessibleText;
-
-import javax.swing.text.StyleConstants;
-
-/** The GenericAccessibleEditableText mapps the calls to the java AccessibleEditableText
- * interface to the corresponding methods of the UNO XAccessibleEditableText interface.
- */
-public class AccessibleTextImpl implements javax.accessibility.AccessibleText {
- final static double toPointFactor = 1 / ((7 / 10) + 34.5);
- final static String[] attributeList = {
- "ParaAdjust", "CharBackColor", "CharWeight", "ParaFirstLineIndent",
- "CharFontPitch", "CharHeight", "CharColor", "CharPosture",
- "ParaLeftMargin", "ParaLineSpacing", "ParaTopMargin", "ParaBottomMargin",
- "CharStrikeout", "CharEscapement", "ParaTabStops", "CharUnderline"
- };
-
- final static String[] localeAttributeList = {
- "CharLocale", "CharLocaleAsian", "CharLocaleComplex"
- };
-
- XAccessibleText unoObject;
- private javax.swing.text.TabSet tabSet = null;
- private javax.swing.text.TabStop[] tabStops = null;
- private static Type TextSegmentType = new Type(TextSegment.class);
- private static Type UnoLocaleType = new Type(com.sun.star.lang.Locale.class);
-
- /** Creates new GenericAccessibleEditableText object */
- public AccessibleTextImpl(XAccessibleText xAccessibleText) {
-
- if (Build.PRODUCT) {
- unoObject = xAccessibleText;
- } else {
- String property = System.getProperty("AccessBridgeLogging");
- if ((property != null) && (property.indexOf("text") != -1)) {
- unoObject = new XAccessibleTextLog(xAccessibleText);
- } else {
- unoObject = xAccessibleText;
- }
- }
- }
-
- public AccessibleTextImpl() {
- }
-
- public static javax.accessibility.AccessibleText get(com.sun.star.uno.XInterface unoObject) {
- try {
- XAccessibleText unoAccessibleText = (XAccessibleText)
- UnoRuntime.queryInterface(XAccessibleText.class, unoObject);
- if (unoAccessibleText != null) {
- return new AccessibleTextImpl(unoAccessibleText);
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return null;
- }
-
- protected static Object convertTextSegment(Object any) {
- try {
- if (AnyConverter.isObject(any)) {
- TextSegment ts = (TextSegment)
- AnyConverter.toObject(TextSegmentType, any);
- if (ts != null) {
- // Since there is nothing like a "range" object in the JAA yet,
- // the Object[3] is a private negotiation with the JABG
- Object[] array = { new Integer(ts.SegmentStart),
- new Integer(ts.SegmentEnd), ts.SegmentText };
- return array;
- }
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
-
- return null;
- }
-
- /** Returns the locale object.
- *
- * Since switching the UI language only takes effect on the next
- * office start, UI elements can return a cached value here - given
- * that Java UNO initializes the default locale correctly, this is
- * the perfect place to grab this cached values.
- *
- * However, since there are more sophisticated components with
- * potentially more than one locale, we first check for the
- * CharLocale[Asian|Complex] property.
- */
-
- protected java.util.Locale getLocale(int index) {
- try {
- com.sun.star.beans.PropertyValue[] propertyValues =
- unoObject.getCharacterAttributes(index, localeAttributeList);
-
- if (null != propertyValues) {
- for (int i = 0; i < propertyValues.length; i++) {
- com.sun.star.lang.Locale unoLocale = (com.sun.star.lang.Locale)
- AnyConverter.toObject(UnoLocaleType, propertyValues[i]);
- if (unoLocale != null) {
- return new java.util.Locale(unoLocale.Language, unoLocale.Country);
- }
- }
- }
-
- return java.util.Locale.getDefault();
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- return java.util.Locale.getDefault();
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return java.util.Locale.getDefault();
- }
- }
-
-
- /** Returns the string after a given index
- *
- * The Java word iterator has a different understanding of what
- * a word is than the word iterator used by OOo, so we use the
- * Java iterators to ensure maximal compatibility with Java.
- */
- public String getAfterIndex(int part, int index) {
- switch (part) {
- case AccessibleText.CHARACTER:
- try {
- String s = unoObject.getText();
- return s.substring(index+1, index+2);
- } catch (IndexOutOfBoundsException e) {
- return null;
- }
- case AccessibleText.WORD:
- try {
- String s = unoObject.getText();
- BreakIterator words = BreakIterator.getWordInstance(getLocale(index));
- words.setText(s);
- int start = words.following(index);
- if (start == BreakIterator.DONE || start >= s.length()) {
- return null;
- }
- int end = words.following(start);
- if (end == BreakIterator.DONE || end >= s.length()) {
- return null;
- }
- return s.substring(start, end);
- } catch (IllegalArgumentException e) {
- return null;
- } catch (IndexOutOfBoundsException e) {
- return null;
- }
- case AccessibleText.SENTENCE:
- try {
- String s = unoObject.getText();
- BreakIterator sentence =
- BreakIterator.getSentenceInstance(getLocale(index));
- sentence.setText(s);
- int start = sentence.following(index);
- if (start == BreakIterator.DONE || start >= s.length()) {
- return null;
- }
- int end = sentence.following(start);
- if (end == BreakIterator.DONE || end >= s.length()) {
- return null;
- }
- return s.substring(start, end);
- } catch (IllegalArgumentException e) {
- return null;
- } catch (IndexOutOfBoundsException e) {
- return null;
- }
- case 4:
- try {
- TextSegment ts = unoObject.getTextBehindIndex(index, AccessibleTextType.LINE);
- return ts.SegmentText;
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- // Workaround for #104847#
- if (index > 0 && getCharCount() == index) {
- return getAfterIndex(part, index - 1);
- }
- return null;
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- return null;
- }
- case 5:
- try {
- TextSegment ts = unoObject.getTextBehindIndex(index, AccessibleTextType.ATTRIBUTE_RUN);
- return ts.SegmentText;
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return null;
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- return null;
- }
- default:
- return null;
- }
- }
-
- /** Returns the zero-based offset of the caret */
- public int getCaretPosition() {
- try {
- return unoObject.getCaretPosition();
- } catch (com.sun.star.uno.RuntimeException e) {
- return -1;
- }
- }
-
- /** Returns the start offset within the selected text */
- public int getSelectionStart() {
- try {
- int index = unoObject.getSelectionStart();
-
- if (index == -1) {
- index = getCaretPosition();
- }
-
- return index;
- } catch (com.sun.star.uno.RuntimeException e) {
- return -1;
- }
- }
-
- protected void setAttribute(javax.swing.text.MutableAttributeSet as,
- com.sun.star.beans.PropertyValue property) {
- try {
- // Map alignment attribute
- if (property.Name.equals("ParaAdjust")) {
- ParagraphAdjust adjust = null;
-
- if (property.Value instanceof ParagraphAdjust) {
- adjust = (ParagraphAdjust) property.Value;
- } else if (property.Value instanceof Any) {
- adjust = (ParagraphAdjust) AnyConverter.toObject(new Type(
- ParagraphAdjust.class), property.Value);
- } else {
- adjust = ParagraphAdjust.fromInt(AnyConverter.toInt(
- property.Value));
- }
-
- if (adjust != null) {
- if (adjust.equals(ParagraphAdjust.LEFT)) {
- StyleConstants.setAlignment(as,
- StyleConstants.ALIGN_LEFT);
- } else if (adjust.equals(ParagraphAdjust.RIGHT)) {
- StyleConstants.setAlignment(as,
- StyleConstants.ALIGN_RIGHT);
- } else if (adjust.equals(ParagraphAdjust.CENTER)) {
- StyleConstants.setAlignment(as,
- StyleConstants.ALIGN_CENTER);
- } else if (adjust.equals(ParagraphAdjust.BLOCK) ||
- adjust.equals(ParagraphAdjust.STRETCH)) {
- StyleConstants.setAlignment(as,
- StyleConstants.ALIGN_JUSTIFIED);
- }
- } else if (Build.DEBUG) {
- System.err.println(
- "Invalid property value for key ParaAdjust: " +
- property.Value.getClass().getName());
- }
-
- // Map background color
- } else if (property.Name.equals("CharBackColor")) {
- StyleConstants.setBackground(as,
- new java.awt.Color(AnyConverter.toInt(property.Value)));
-
- // FIXME: BidiLevel
- // Set bold attribute
- } else if (property.Name.equals("CharWeight")) {
- boolean isBold = AnyConverter.toFloat(property.Value) > 125;
- StyleConstants.setBold(as, isBold);
-
- // FIXME: Java 1.4 ComponentAttribute, ComponentElementName, ComposedTextAttribute
- // Set FirstLineIndent attribute
- } else if (property.Name.equals("ParaFirstLineIndent")) {
- StyleConstants.setFirstLineIndent(as,
- (float) (toPointFactor * AnyConverter.toInt(property.Value)));
-
- // Set font family attribute
- } else if (property.Name.equals("CharFontPitch")) {
- if (AnyConverter.toShort(property.Value) == 2) {
- StyleConstants.setFontFamily(as, "Proportional");
- }
-
- // Set font size attribute
- } else if (property.Name.equals("CharHeight")) {
- StyleConstants.setFontSize(as,
- (int) AnyConverter.toFloat(property.Value));
-
- // Map foreground color
- } else if (property.Name.equals("CharColor")) {
- StyleConstants.setForeground(as,
- new java.awt.Color(AnyConverter.toInt(property.Value)));
-
- // FIXME: IconAttribute, IconElementName
- // Set italic attribute
- } else if (property.Name.equals("CharPosture")) {
- FontSlant fs = null;
-
- if (property.Value instanceof FontSlant) {
- fs = (FontSlant) property.Value;
- } else if (property.Value instanceof Any) {
- fs = (FontSlant) AnyConverter.toObject(new Type(
- FontSlant.class), property.Value);
- }
-
- if (fs != null) {
- StyleConstants.setItalic(as, FontSlant.ITALIC.equals(fs));
- }
-
- // Set left indent attribute
- } else if (property.Name.equals("ParaLeftMargin")) {
- StyleConstants.setLeftIndent(as,
- (float) (toPointFactor * AnyConverter.toInt(property.Value)));
-
- // Set right indent attribute
- } else if (property.Name.equals("ParaRightMargin")) {
- StyleConstants.setRightIndent(as,
- (float) (toPointFactor * AnyConverter.toInt(property.Value)));
- }
- // Set line spacing attribute
- else if (property.Name.equals("ParaLineSpacing")) {
- LineSpacing ls = null;
-
- if (property.Value instanceof LineSpacing) {
- ls = (LineSpacing) property.Value;
- } else if (property.Value instanceof Any) {
- ls = (LineSpacing) AnyConverter.toObject(new Type(
- LineSpacing.class), property.Value);
- }
-
- if (ls != null) {
- StyleConstants.setLineSpacing(as,
- (float) (toPointFactor * ls.Height));
- }
- }
- // FIXME: Java 1.4 NameAttribute, Orientation, ResolveAttribute
- // Set space above attribute
- else if (property.Name.equals("ParaTopMargin")) {
- StyleConstants.setSpaceAbove(as,
- (float) (toPointFactor * AnyConverter.toInt(property.Value)));
- }
- // Set space below attribute
- else if (property.Name.equals("ParaBottomMargin")) {
- StyleConstants.setSpaceBelow(as,
- (float) (toPointFactor * AnyConverter.toInt(property.Value)));
-
- // Set strike through attribute
- } else if (property.Name.equals("CharStrikeout")) {
- boolean isStrikeThrough = (FontStrikeout.NONE != AnyConverter.toShort(property.Value));
- StyleConstants.setStrikeThrough(as, isStrikeThrough);
-
- // Set sub-/superscript attribute
- } else if (property.Name.equals("CharEscapement")) {
- short value = AnyConverter.toShort(property.Value);
-
- if (value > 0) {
- StyleConstants.setSuperscript(as, true);
- } else if (value < 0) {
- StyleConstants.setSubscript(as, true);
- }
-
- // Set tabset attribute
- } else if (property.Name.equals("ParaTabStops")) {
- TabStop[] unoTabStops = (TabStop[]) AnyConverter.toArray(property.Value);
- javax.swing.text.TabStop[] tabStops = new javax.swing.text.TabStop[unoTabStops.length];
-
- for (int index2 = 0; index2 < unoTabStops.length; index2++) {
- float pos = (float) (toPointFactor * unoTabStops[index2].Position);
-
- if (unoTabStops[index2].Alignment.equals(TabAlign.LEFT)) {
- tabStops[index2] = new javax.swing.text.TabStop(pos,
- javax.swing.text.TabStop.ALIGN_LEFT,
- javax.swing.text.TabStop.LEAD_NONE);
- } else if (unoTabStops[index2].Alignment.equals(
- TabAlign.CENTER)) {
- tabStops[index2] = new javax.swing.text.TabStop(pos,
- javax.swing.text.TabStop.ALIGN_CENTER,
- javax.swing.text.TabStop.LEAD_NONE);
- } else if (unoTabStops[index2].Alignment.equals(
- TabAlign.RIGHT)) {
- tabStops[index2] = new javax.swing.text.TabStop(pos,
- javax.swing.text.TabStop.ALIGN_RIGHT,
- javax.swing.text.TabStop.LEAD_NONE);
- } else if (unoTabStops[index2].Alignment.equals(
- TabAlign.DECIMAL)) {
- tabStops[index2] = new javax.swing.text.TabStop(pos,
- javax.swing.text.TabStop.ALIGN_DECIMAL,
- javax.swing.text.TabStop.LEAD_NONE);
- } else {
- tabStops[index2] = new javax.swing.text.TabStop(pos);
- }
- }
-
- // Re-use tabSet object if possible to make AttributeSet.equals work
- if ((this.tabSet == null) ||
- !java.util.Arrays.equals(tabStops, this.tabStops)) {
- this.tabStops = tabStops;
- this.tabSet = new javax.swing.text.TabSet(tabStops);
- }
-
- StyleConstants.setTabSet(as, this.tabSet);
-
- // Set underline attribute
- } else if (property.Name.equals("CharUnderline")) {
- boolean isUnderline = (FontUnderline.NONE != AnyConverter.toShort(property.Value));
- StyleConstants.setUnderline(as, isUnderline);
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- if (Build.DEBUG) {
- System.err.println("*** ERROR *** " + e.getClass().getName() +
- " caught for property " + property.Name + ": " +
- e.getMessage());
- System.err.println(" value is of type " +
- property.Value.getClass().getName());
- }
- }
- }
-
- /** Returns the AttributSet for a given character at a given index */
- public javax.swing.text.AttributeSet getCharacterAttribute(int index) {
- try {
- com.sun.star.beans.PropertyValue[] propertyValues = unoObject.getCharacterAttributes(index,
- attributeList);
- javax.swing.text.SimpleAttributeSet attributeSet = new javax.swing.text.SimpleAttributeSet();
-
- if (null != propertyValues) {
- for (int i = 0; i < propertyValues.length; i++) {
- setAttribute(attributeSet, propertyValues[i]);
- }
- }
-
- return attributeSet;
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- if ((index > 0) && (getCharCount() == index)) {
- return getCharacterAttribute(index - 1);
- }
- return null;
- }
- }
-
- /** Given a point in local coordinates, return the zero-based index of the character under that point */
- public int getIndexAtPoint(java.awt.Point point) {
- try {
- return unoObject.getIndexAtPoint(new Point(point.x, point.y));
- } catch (com.sun.star.uno.RuntimeException e) {
- return -1;
- }
- }
-
- /** Returns the end offset within the selected text */
- public int getSelectionEnd() {
- try {
- int index = unoObject.getSelectionEnd();
-
- if (index == -1) {
- index = getCaretPosition();
- }
-
- return index;
- } catch (com.sun.star.uno.RuntimeException e) {
- return -1;
- }
- }
-
- /** Returns the string before a given index
- *
- * The Java word iterator has a different understanding of what
- * a word is than the word iterator used by OOo, so we use the
- * Java iterators to ensure maximal compatibility with Java.
- */
- public java.lang.String getBeforeIndex(int part, int index) {
- switch (part) {
- case AccessibleText.CHARACTER:
- try {
- String s = unoObject.getText();
- return s.substring(index-1, index);
- } catch (IndexOutOfBoundsException e) {
- return null;
- }
- case AccessibleText.WORD:
- try {
- String s = unoObject.getText();
- BreakIterator words = BreakIterator.getWordInstance(getLocale(index));
- words.setText(s);
- int end = words.following(index);
- end = words.previous();
- int start = words.previous();
- if (start == BreakIterator.DONE) {
- return null;
- }
- return s.substring(start, end);
- } catch (IllegalArgumentException e) {
- return null;
- } catch (IndexOutOfBoundsException e) {
- return null;
- }
- case AccessibleText.SENTENCE:
- try {
- String s = unoObject.getText();
- BreakIterator sentence =
- BreakIterator.getSentenceInstance(getLocale(index));
- sentence.setText(s);
- int end = sentence.following(index);
- end = sentence.previous();
- int start = sentence.previous();
- if (start == BreakIterator.DONE) {
- return null;
- }
- return s.substring(start, end);
- } catch (IllegalArgumentException e) {
- return null;
- } catch (IndexOutOfBoundsException e) {
- return null;
- }
- case 4:
- try {
- TextSegment ts = unoObject.getTextBeforeIndex(index, AccessibleTextType.LINE);
- return ts.SegmentText;
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- // Workaround for #104847#
- if (index > 0 && getCharCount() == index) {
- return getBeforeIndex(part, index - 1);
- }
- return null;
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- return null;
- }
- case 5:
- try {
- TextSegment ts = unoObject.getTextBeforeIndex(index, AccessibleTextType.ATTRIBUTE_RUN);
- return ts.SegmentText;
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return null;
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- return null;
- }
- default:
- return null;
- }
- }
-
-
- /** Returns the string at a given index
- *
- * The Java word iterator has a different understanding of what
- * a word is than the word iterator used by OOo, so we use the
- * Java iterators to ensure maximal compatibility with Java.
- */
- public java.lang.String getAtIndex(int part, int index) {
- switch (part) {
- case AccessibleText.CHARACTER:
- try {
- String s = unoObject.getText();
- return s.substring(index, index + 1);
- } catch (IndexOutOfBoundsException e) {
- return null;
- }
- case AccessibleText.WORD:
- try {
- String s = unoObject.getText();
- BreakIterator words = BreakIterator.getWordInstance(getLocale(index));
- words.setText(s);
- int end = words.following(index);
- return s.substring(words.previous(), end);
- } catch (IllegalArgumentException e) {
- return null;
- } catch (IndexOutOfBoundsException e) {
- return null;
- }
- case AccessibleText.SENTENCE:
- try {
- String s = unoObject.getText();
- BreakIterator sentence =
- BreakIterator.getSentenceInstance(getLocale(index));
- sentence.setText(s);
- int end = sentence.following(index);
- return s.substring(sentence.previous(), end);
- } catch (IllegalArgumentException e) {
- return null;
- } catch (IndexOutOfBoundsException e) {
- return null;
- }
- case 4:
- try {
- TextSegment ts = unoObject.getTextAtIndex(index, AccessibleTextType.LINE);
- return ts.SegmentText;
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- // Workaround for #104847#
- if (index > 0 && getCharCount() == index) {
- return getAtIndex(part, index - 1);
- }
- return null;
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- return null;
- }
- case 5:
- try {
- TextSegment ts = unoObject.getTextAtIndex(index, AccessibleTextType.ATTRIBUTE_RUN);
- return ts.SegmentText;
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return null;
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- return null;
- }
-
- default:
- return null;
- }
- }
-
- /** Returns the number of characters (valid indicies) */
- public int getCharCount() {
- try {
- return unoObject.getCharacterCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- }
-
- return 0;
- }
-
- /** Returns the portion of the text that is selected */
- public java.lang.String getSelectedText() {
- try {
- return unoObject.getSelectedText();
- } catch (com.sun.star.uno.RuntimeException e) {
- }
-
- return null;
- }
-
- /** Determines the bounding box of the character at the given index into the string */
- public java.awt.Rectangle getCharacterBounds(int index) {
- try {
- Rectangle unoRect = unoObject.getCharacterBounds(index);
- return new java.awt.Rectangle(unoRect.X, unoRect.Y, unoRect.Width, unoRect.Height);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- if ((index > 0) && (getCharCount() == index)) {
- return getCharacterBounds(index - 1);
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
-
- return new java.awt.Rectangle();
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleValueImpl.java b/accessibility/bridge/org/openoffice/java/accessibility/AccessibleValueImpl.java
deleted file mode 100644
index d386e9bcc..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/AccessibleValueImpl.java
+++ /dev/null
@@ -1,96 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.XAccessibleValue;
-import com.sun.star.uno.AnyConverter;
-
-/** The AccessibleValueImpl mappes the calls to the java AccessibleValue
- * interface to the corresponding methods of the UNO XAccessibleValue interface
- */
-public class AccessibleValueImpl implements javax.accessibility.AccessibleValue {
- protected XAccessibleValue unoObject;
-
- /** Creates new AccessibleValueImpl */
- public AccessibleValueImpl(XAccessibleValue xAccessibleValue) {
- unoObject = xAccessibleValue;
- }
-
- public static java.lang.Number toNumber(java.lang.Object any) {
- try {
- if(AnyConverter.isByte(any)) {
- return new Byte(AnyConverter.toByte(any));
- } else if (AnyConverter.isShort(any)) {
- return new Short(AnyConverter.toShort(any));
- } else if (AnyConverter.isInt(any)) {
- return new Integer(AnyConverter.toInt(any));
- } else if (AnyConverter.isLong(any)) {
- return new Long(AnyConverter.toLong(any));
- } else if (AnyConverter.isFloat(any)) {
- return new Float(AnyConverter.toFloat(any));
- } else if (AnyConverter.isDouble(any)) {
- return new Double(AnyConverter.toDouble(any));
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
-
- return null;
- }
-
- public java.lang.Number getMinimumAccessibleValue() {
- try {
- return toNumber(unoObject.getMinimumValue());
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public java.lang.Number getCurrentAccessibleValue() {
- try {
- return toNumber(unoObject.getCurrentValue());
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public java.lang.Number getMaximumAccessibleValue() {
- try {
- return toNumber(unoObject.getMaximumValue());
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public boolean setCurrentAccessibleValue(java.lang.Number number) {
- try {
- return unoObject.setCurrentValue(number);
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Alert.java b/accessibility/bridge/org/openoffice/java/accessibility/Alert.java
deleted file mode 100644
index 158fb0d7c..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/Alert.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import javax.accessibility.AccessibleRole;
-import com.sun.star.accessibility.*;
-
-public class Alert extends Dialog {
-
- protected Alert(java.awt.Frame owner, XAccessibleComponent xAccessibleComponent) {
- super(owner, xAccessibleComponent);
- }
-
- protected Alert(java.awt.Frame owner, String name, XAccessibleComponent xAccessibleComponent) {
- super(owner, name, xAccessibleComponent);
- }
-
- protected Alert(java.awt.Frame owner, String name, boolean modal, XAccessibleComponent xAccessibleComponent) {
- super(owner, name, modal, xAccessibleComponent);
- }
-
- /** Returns the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext getAccessibleContext() {
- if (accessibleContext == null) {
- accessibleContext = new AccessibleAlert();
- accessibleContext.setAccessibleName(getTitle());
- }
- return accessibleContext;
- }
-
- protected class AccessibleAlert extends AccessibleDialog {
-
- protected AccessibleAlert() {
- super();
- }
-
- public AccessibleRole getAccessibleRole() {
- return AccessibleRole.ALERT;
- }
- };
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Application.java b/accessibility/bridge/org/openoffice/java/accessibility/Application.java
deleted file mode 100644
index c16f30c37..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/Application.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import javax.accessibility.Accessible;
-import javax.accessibility.AccessibleContext;
-
-public class Application extends java.awt.Frame implements Accessible {
-
- protected AccessibleContext accessibleContext = null;
-
- protected Application() {
- super();
- }
-
- public boolean isShowing() {
- return true;
- }
-}
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Button.java b/accessibility/bridge/org/openoffice/java/accessibility/Button.java
deleted file mode 100644
index 08cf7d7c6..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/Button.java
+++ /dev/null
@@ -1,157 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import com.sun.star.uno.*;
-import com.sun.star.accessibility.*;
-
-class Button extends AbstractButton implements javax.accessibility.Accessible {
-
- public Button(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
- super(xAccessible, xAccessibleContext);
- }
-
- protected XAccessibleEventListener createEventListener() {
- return new AccessibleButtonListener();
- }
-
- protected class AccessibleButtonListener
- extends AccessibleUNOComponentListener {
- protected AccessibleButtonListener() {
- super();
- }
-
- protected javax.accessibility.AccessibleContext getContext( Object any ) {
- try {
- XAccessible xAccessible = (XAccessible)
- AnyConverter.toObject( AccessibleObjectFactory.XAccessibleType, any );
-
- javax.accessibility.Accessible accessible =
- (javax.accessibility.Accessible) Button.this.getComponent( xAccessible );
-
- return accessible.getAccessibleContext();
- } catch( com.sun.star.uno.Exception e ) {
- return null;
- }
- }
-
- /** Called by OpenOffice process to notify property changes */
- public void notifyEvent(AccessibleEventObject event) {
- switch (event.EventId) {
- case AccessibleEventId.CHILD:
- java.awt.Component c = getComponent(unoAccessible);
-
- Object values[] = { null, null };
-
- if (AnyConverter.isObject(event.OldValue)) {
- values[0] = getContext( event.OldValue );
- }
-
- if (AnyConverter.isObject(event.NewValue)) {
- values[1] = getContext( event.NewValue);
- }
-
- firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- values[0], values[1]);
- break;
-
- default:
- super.notifyEvent(event);
- }
- }
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleButton();
- }
-
- protected java.awt.Component getComponent(XAccessible unoAccessible) {
- java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(unoAccessible);
-
- if (c == null) {
- c = AccessibleObjectFactory.createAccessibleComponent(unoAccessible);
-
- if (c instanceof javax.accessibility.Accessible) {
- ((javax.accessibility.Accessible) c).getAccessibleContext()
- .setAccessibleParent(this);
- }
-
- if( c instanceof java.awt.Container ) {
- AccessibleObjectFactory.populateContainer((java.awt.Container) c, unoAccessible.getAccessibleContext() );
- }
- }
-
- return c;
- }
-
- protected class AccessibleButton extends AccessibleAbstractButton {
-
- /** Gets the role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return javax.accessibility.AccessibleRole.PUSH_BUTTON;
- }
-
- /** Returns the number of accessible children of the object */
- public int getAccessibleChildrenCount() {
- try {
- return unoAccessibleContext.getAccessibleChildCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Returns the specified Accessible child of the object */
- public synchronized javax.accessibility.Accessible getAccessibleChild( int i) {
- try {
- return (javax.accessibility.Accessible) getComponent( unoAccessibleContext.getAccessibleChild(i) );
- } catch (com.sun.star.uno.RuntimeException e) {
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- }
- return null;
- }
-
- /*
- * AccessibleComponent
- */
-
- /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
- public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
- try {
- java.awt.Component c = getComponent(unoAccessibleComponent.getAccessibleAtPoint(
- new com.sun.star.awt.Point(p.x, p.y)));
-
- return (javax.accessibility.Accessible) c;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- }
-}
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/CheckBox.java b/accessibility/bridge/org/openoffice/java/accessibility/CheckBox.java
deleted file mode 100644
index b7a401497..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/CheckBox.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import com.sun.star.uno.*;
-import com.sun.star.accessibility.*;
-
-class CheckBox extends ToggleButton {
-
- public CheckBox(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
- super(xAccessible, xAccessibleContext);
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleCheckBox();
- }
-
- protected class AccessibleCheckBox extends AccessibleToggleButton {
- /** Gets the role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return javax.accessibility.AccessibleRole.CHECK_BOX;
- }
- }
-}
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/ComboBox.java b/accessibility/bridge/org/openoffice/java/accessibility/ComboBox.java
deleted file mode 100644
index 5f36ff42a..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/ComboBox.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.*;
-import com.sun.star.uno.*;
-
-import javax.accessibility.AccessibleContext;
-import javax.accessibility.AccessibleState;
-import javax.accessibility.AccessibleStateSet;
-
-import javax.swing.SwingConstants;
-
-
-/**
- */
-public class ComboBox extends Container {
- private XAccessibleAction unoAccessibleAction = null;
-
- public ComboBox(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
- super(javax.accessibility.AccessibleRole.COMBO_BOX, xAccessible,
- xAccessibleContext);
- }
-
- /** Appends the specified component to the end of this container */
- public java.awt.Component add(java.awt.Component c) {
- // List should be always the first child
- if (c instanceof List) {
- return super.add(c, 0);
- } else {
- return super.add(c);
- }
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleComboBox();
- }
-
- protected class AccessibleComboBox extends AccessibleContainer
- implements javax.accessibility.AccessibleAction {
- /**
- * Though the class is abstract, this should be called by all sub-classes
- */
- protected AccessibleComboBox() {
- super();
- }
-
- /*
- * AccessibleContext
- */
-
- /** Gets the AccessibleAction associated with this object that supports one or more actions */
- public javax.accessibility.AccessibleAction getAccessibleAction() {
- if (unoAccessibleAction == null) {
- unoAccessibleAction = (XAccessibleAction) UnoRuntime.queryInterface(XAccessibleAction.class,
- unoAccessibleContext);
-
- if (unoAccessibleAction == null) {
- return null;
- }
- }
-
- return this;
- }
-
- /*
- * AccessibleAction
- */
-
- /** Performs the specified Action on the object */
- public boolean doAccessibleAction(int param) {
- if (param == 0) {
- try {
- return unoAccessibleAction.doAccessibleAction(0);
- } catch (com.sun.star.uno.Exception e) {
- }
- }
-
- return false;
- }
-
- /** Returns a description of the specified action of the object */
- public java.lang.String getAccessibleActionDescription(int param) {
- return javax.swing.UIManager.getString("ComboBox.togglePopupText");
- }
-
- /** Returns the number of accessible actions available in this object */
- public int getAccessibleActionCount() {
- return 1;
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Component.java b/accessibility/bridge/org/openoffice/java/accessibility/Component.java
deleted file mode 100644
index 5101080f9..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/Component.java
+++ /dev/null
@@ -1,740 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import javax.accessibility.AccessibleContext;
-import javax.accessibility.AccessibleState;
-
-import com.sun.star.uno.*;
-import com.sun.star.accessibility.*;
-
-public abstract class Component extends java.awt.Component {
- public static final Type RectangleType = new Type(com.sun.star.awt.Rectangle.class);
- public static final Type SelectionType = new Type(com.sun.star.awt.Selection.class);
-
- protected XAccessible unoAccessible;
- protected XAccessibleContext unoAccessibleContext;
- protected XAccessibleComponent unoAccessibleComponent;
-
- protected boolean disposed = false;
-
- protected Component(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
- super();
- unoAccessible = xAccessible;
- unoAccessibleContext = xAccessibleContext;
- unoAccessibleComponent = (XAccessibleComponent)
- UnoRuntime.queryInterface(XAccessibleComponent.class, xAccessibleContext);
- // Add the event listener right away, because the global focus notification doesn't
- // work yet ..
- XAccessibleEventBroadcaster broadcaster = (XAccessibleEventBroadcaster)
- UnoRuntime.queryInterface(XAccessibleEventBroadcaster.class,
- unoAccessibleComponent);
- if (broadcaster != null) {
- broadcaster.addEventListener(createEventListener());
- }
- }
-
- /**
- * Determines whether this <code>Component</code> is showing on screen.
- * This means that the component must be visible, and it must be in a
- * <code>container</code> that is visible and showing.
- * @see #addNotify
- * @see #removeNotify
- * @since JDK1.0
- */
- public boolean isShowing() {
- if (isVisible()) {
- java.awt.Container parent = getParent();
- return (parent == null) || parent.isShowing();
- }
- return false;
- }
-
- /**
- * Makes this <code>Component</code> displayable by connecting it to a
- * native screen resource.
- * This method is called internally by the toolkit and should
- * not be called directly by programs.
- * @see #isDisplayable
- * @see #removeNotify
- * @since JDK1.0
- */
- public void addNotify() {
- }
-
- /**
- * Makes this <code>Component</code> undisplayable by destroying it native
- * screen resource.
- * This method is called by the toolkit internally and should
- * not be called directly by programs.
- * @see #isDisplayable
- * @see #addNotify
- * @since JDK1.0
- */
- public void removeNotify() {
- }
-
- /*
- * Fake the java focus handling. This is necessary to keep OOo focus
- * in sync with the java focus. See java.awt.DefaultKeyboardFocusManager
- * for implementation details.
- **/
-
- /** Requests focus for this object */
- public void requestFocus() {
- }
-
- /** Requests focus for this object */
- public boolean requestFocus(boolean temporary) {
- // Must be a no-op to make focus handling work
- return true;
- }
-
- /** Requests the focus for this object in the containing window */
- public boolean requestFocusInWindow() {
- return requestFocusInWindow(false);
- }
-
- /** Requests the focus for this object in the containing window */
- protected boolean requestFocusInWindow(boolean temporary) {
- if (isFocusable() && isVisible()) {
- getEventQueue().postEvent(new java.awt.event.FocusEvent(this, java.awt.event.FocusEvent.FOCUS_GAINED, temporary));
- return true;
- }
- return false;
- }
-
- public Object[] getAccessibleComponents(Object[] targetSet) {
- try {
- java.util.ArrayList list = new java.util.ArrayList(targetSet.length);
- for (int i=0; i < targetSet.length; i++) {
- java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(
- (XAccessible) UnoRuntime.queryInterface(XAccessible.class, targetSet[i]));
- if (c != null) {
- list.add(c);
- }
- }
- list.trimToSize();
- return list.toArray();
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- protected java.awt.EventQueue getEventQueue() {
- return java.awt.Toolkit.getDefaultToolkit().getSystemEventQueue();
- }
-
- protected class PropertyChangeBroadcaster implements Runnable {
- String propertyName;
- Object oldValue;
- Object newValue;
-
- public PropertyChangeBroadcaster(String name, Object param1, Object param2) {
- propertyName = name;
- oldValue = param1;
- newValue = param2;
- }
-
- public void run() {
- // Because this code is executed in the DispatchThread, it is better to catch every
- // exception that might occur
- try {
- AccessibleContext ac = accessibleContext;
- if (ac != null) {
- ac.firePropertyChange(propertyName, oldValue, newValue);
- }
- } catch (java.lang.Exception e) {
- if (Build.DEBUG) {
- System.err.println(e.getClass().getName() + " caught propagating " + propertyName + " event: " + e.getMessage());
- e.printStackTrace();
- }
- }
- }
- }
-
- protected void firePropertyChange(String property, Object oldValue, Object newValue) {
- getEventQueue().invokeLater(new PropertyChangeBroadcaster(property, oldValue, newValue));
- }
-
- protected void fireStatePropertyChange(AccessibleState state, boolean set) {
- PropertyChangeBroadcaster broadcaster;
-
-// if (Build.DEBUG) {
-// System.err.println("[" + AccessibleRoleAdapter.getAccessibleRole(unoAccessibleContext.getAccessibleRole()) + "] " +
-// unoAccessibleContext.getAccessibleName() + " is " + (set ? "now " : "no longer ") + state);
-// }
-
- if (set) {
- broadcaster = new PropertyChangeBroadcaster(
- accessibleContext.ACCESSIBLE_STATE_PROPERTY,
- null, state);
- } else {
- broadcaster = new PropertyChangeBroadcaster(
- accessibleContext.ACCESSIBLE_STATE_PROPERTY,
- state, null);
- }
- getEventQueue().invokeLater(broadcaster);
- }
-
- /**
- * Update the proxy objects appropriatly on property change events
- */
- protected class AccessibleUNOComponentListener implements XAccessibleEventListener {
-
- protected AccessibleUNOComponentListener() {
- }
-
- protected void setComponentState(short state, boolean enable) {
- switch (state) {
- case AccessibleStateType.ACTIVE:
- // Only frames should be active
- break;
- case AccessibleStateType.ARMED:
- fireStatePropertyChange(AccessibleState.ARMED, enable);
- break;
- case AccessibleStateType.CHECKED:
- fireStatePropertyChange(AccessibleState.CHECKED, enable);
- break;
- case AccessibleStateType.ENABLED:
- setEnabled(enable);
- // Since we can't access awt.Componet.accessibleContext, we need to fire
- // this event manually ..
- fireStatePropertyChange(AccessibleState.ENABLED, enable);
- break;
- case AccessibleStateType.FOCUSED:
- getEventQueue().postEvent(new java.awt.event.FocusEvent(
- Component.this, enable ?
- java.awt.event.FocusEvent.FOCUS_GAINED :
- java.awt.event.FocusEvent.FOCUS_LOST));
- break;
- case AccessibleStateType.PRESSED:
- fireStatePropertyChange(AccessibleState.PRESSED, enable);
- break;
- case AccessibleStateType.SELECTED:
- fireStatePropertyChange(AccessibleState.SELECTED, enable);
- break;
- case AccessibleStateType.SENSITIVE:
- // This state equals ENABLED in OOo (but not in Gtk+) and does not exist in Java 1.5
- break;
- case AccessibleStateType.SHOWING:
-// fireStatePropertyChange(AccessibleState.SHOWING, enable);
- break;
- case AccessibleStateType.VISIBLE:
- Component.this.setVisible(enable);
- break;
- default:
- if (Build.DEBUG) {
- System.err.println("[component]: " + getName() + "unexpected state change " + state);
- }
- break;
- }
- }
-
- /** Updates the accessible name and fires the appropriate PropertyChangedEvent */
- protected void handleNameChangedEvent(Object any) {
- try {
- // This causes the property change event to be fired in the VCL thread
- // context. If this causes problems, it has to be deligated to the java
- // dispatch thread ..
- if (accessibleContext != null) {
- accessibleContext.setAccessibleName(AnyConverter.toString(any));
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /** Updates the accessible description and fires the appropriate PropertyChangedEvent */
- protected void handleDescriptionChangedEvent(Object any) {
- try {
- // This causes the property change event to be fired in the VCL thread
- // context. If this causes problems, it has to be deligated to the java
- // dispatch thread ..
- if (accessibleContext != null) {
- accessibleContext.setAccessibleDescription(AnyConverter.toString(any));
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /** Updates the internal states and fires the appropriate PropertyChangedEvent */
- protected void handleStateChangedEvent(Object any1, Object any2) {
- try {
- if (AnyConverter.isShort(any1)) {
- setComponentState(AnyConverter.toShort(any1), false);
- }
-
- if (AnyConverter.isShort(any2)) {
- setComponentState(AnyConverter.toShort(any2), true);
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /** Called by OpenOffice process to notify property changes */
- public void notifyEvent(AccessibleEventObject event) {
-
- if ( !disposed ) {
-
- switch (event.EventId) {
- case AccessibleEventId.ACTION_CHANGED:
- firePropertyChange(accessibleContext.ACCESSIBLE_ACTION_PROPERTY,
- toNumber(event.OldValue), toNumber(event.NewValue));
- break;
- case AccessibleEventId.NAME_CHANGED:
- // Set the accessible name for the corresponding context, which will fire a property
- // change event itself
- handleNameChangedEvent(event.NewValue);
- break;
- case AccessibleEventId.DESCRIPTION_CHANGED:
- // Set the accessible description for the corresponding context, which will fire a property
- // change event itself - so do not set propertyName !
- handleDescriptionChangedEvent(event.NewValue);
- break;
- case AccessibleEventId.CHILD:
- if (Build.DEBUG) {
- System.out.println("Unexpected child event for object of role " + getAccessibleContext().getAccessibleRole());
- }
- break;
- case AccessibleEventId.STATE_CHANGED:
- // Update the internal state set and fire the appropriate PropertyChangedEvent
- handleStateChangedEvent(event.OldValue, event.NewValue);
- break;
- case AccessibleEventId.VISIBLE_DATA_CHANGED:
- case AccessibleEventId.BOUNDRECT_CHANGED:
- firePropertyChange(AccessibleContext.ACCESSIBLE_VISIBLE_DATA_PROPERTY, null, null);
- break;
- case AccessibleEventId.TEXT_CHANGED:
- firePropertyChange(AccessibleContext.ACCESSIBLE_TEXT_PROPERTY,
- AccessibleTextImpl.convertTextSegment(event.OldValue),
- AccessibleTextImpl.convertTextSegment(event.NewValue));
- break;
- /*
- * the Java AccessBridge for GNOME maps SELECTION_PROPERTY change events
- * for objects of role TEXT to object:text-selection-changed
- */
- case AccessibleEventId.TEXT_SELECTION_CHANGED:
- firePropertyChange(AccessibleContext.ACCESSIBLE_SELECTION_PROPERTY, null, null);
- break;
- case AccessibleEventId.CARET_CHANGED:
- firePropertyChange(accessibleContext.ACCESSIBLE_CARET_PROPERTY, toNumber(event.OldValue), toNumber(event.NewValue));
- break;
- case AccessibleEventId.VALUE_CHANGED:
- firePropertyChange(accessibleContext.ACCESSIBLE_VALUE_PROPERTY, toNumber(event.OldValue), toNumber(event.NewValue));
- default:
- // Warn about unhandled events
- if(Build.DEBUG) {
- System.out.println(this + ": unhandled accessibility event id=" + event.EventId);
- }
- }
- }
- }
-
- /** Called by OpenOffice process to notify that the UNO component is disposing */
- public void disposing(com.sun.star.lang.EventObject eventObject) {
- disposed = true;
- AccessibleObjectFactory.disposing(Component.this);
- }
- }
-
- protected XAccessibleEventListener createEventListener() {
- return new AccessibleUNOComponentListener();
- }
-
- protected javax.accessibility.AccessibleContext accessibleContext = null;
-
- /** This method actually creates the AccessibleContext object returned by
- * getAccessibleContext().
- */
- protected javax.accessibility.AccessibleContext createAccessibleContext() {
- return null;
- }
-
- /** Returns the AccessibleContext associated with this object */
- public final javax.accessibility.AccessibleContext getAccessibleContext() {
- if (accessibleContext == null) {
- try {
- AccessibleContext ac = createAccessibleContext();
- if (ac != null) {
- // Set accessible name and description here to avoid
- // unnecessary property change events later ..
- ac.setAccessibleName(unoAccessibleContext.getAccessibleName());
- ac.setAccessibleDescription(unoAccessibleContext.getAccessibleDescription());
- accessibleContext = ac;
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
- return accessibleContext;
- }
-
- protected abstract class AccessibleUNOComponent extends java.awt.Component.AccessibleAWTComponent
- implements javax.accessibility.AccessibleExtendedComponent {
-
- protected java.awt.event.ComponentListener accessibleComponentHandler = null;
-
- /**
- * Fire PropertyChange listener, if one is registered,
- * when shown/hidden..
- */
- protected class AccessibleComponentHandler implements java.awt.event.ComponentListener {
- public void componentHidden(java.awt.event.ComponentEvent e) {
- AccessibleUNOComponent.this.firePropertyChange(
- AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- AccessibleState.VISIBLE, null);
- }
-
- public void componentShown(java.awt.event.ComponentEvent e) {
- AccessibleUNOComponent.this.firePropertyChange(
- AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- null, AccessibleState.VISIBLE);
- }
-
- public void componentMoved(java.awt.event.ComponentEvent e) {
- }
-
- public void componentResized(java.awt.event.ComponentEvent e) {
- }
- } // inner class AccessibleComponentHandler
-
- protected java.awt.event.FocusListener accessibleFocusHandler = null;
-
- /**
- * Fire PropertyChange listener, if one is registered,
- * when focus events happen
- */
- protected class AccessibleFocusHandler implements java.awt.event.FocusListener {
- public void focusGained(java.awt.event.FocusEvent event) {
- AccessibleUNOComponent.this.firePropertyChange(
- AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- null, AccessibleState.FOCUSED);
- if (Build.DEBUG) {
- System.err.println("[" + getAccessibleRole() + "] " + getAccessibleName() + " is now focused");
- }
- }
- public void focusLost(java.awt.event.FocusEvent event) {
- AccessibleUNOComponent.this.firePropertyChange(
- AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- AccessibleState.FOCUSED, null);
- if (Build.DEBUG) {
- System.err.println("[" + getAccessibleRole() + "] " + getAccessibleName() + " is no longer focused");
- }
- }
- } // inner class AccessibleFocusHandler
-
- protected int propertyChangeListenerCount = 0;
-
- /**
- * Add a PropertyChangeListener to the listener list.
- *
- * @param listener The PropertyChangeListener to be added
- */
- public void addPropertyChangeListener(java.beans.PropertyChangeListener listener) {
- if (propertyChangeListenerCount++ == 0) {
- accessibleComponentHandler = new AccessibleComponentHandler();
- Component.this.addComponentListener(accessibleComponentHandler);
-
- accessibleFocusHandler = new AccessibleFocusHandler();
- Component.this.addFocusListener(accessibleFocusHandler);
- }
- super.addPropertyChangeListener(listener);
- }
-
- /**
- * Remove a PropertyChangeListener from the listener list.
- * This removes a PropertyChangeListener that was registered
- * for all properties.
- *
- * @param listener The PropertyChangeListener to be removed
- */
- public void removePropertyChangeListener(java.beans.PropertyChangeListener listener) {
- if (--propertyChangeListenerCount == 0) {
- Component.this.removeComponentListener(accessibleComponentHandler);
- accessibleComponentHandler = null;
-
- Component.this.removeFocusListener(accessibleFocusHandler);
- accessibleFocusHandler = null;
- }
- super.removePropertyChangeListener(listener);
- }
-
- /**
- * Gets the current state set of this object.
- *
- * @return an instance of <code>AccessibleStateSet</code>
- * containing the current state set of the object
- * @see AccessibleState
- */
- public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
- if (disposed)
- return AccessibleStateAdapter.getDefunctStateSet();
-
- try {
- return AccessibleStateAdapter.getAccessibleStateSet(Component.this,
- unoAccessibleContext.getAccessibleStateSet());
- } catch (com.sun.star.uno.RuntimeException e) {
- return AccessibleStateAdapter.getDefunctStateSet();
- }
- }
-
- /** Gets the locale of the component */
- public java.util.Locale getLocale() throws java.awt.IllegalComponentStateException {
- try {
- com.sun.star.lang.Locale unoLocale = unoAccessible.getAccessibleContext().getLocale();
- return new java.util.Locale(unoLocale.Language, unoLocale.Country);
- } catch (IllegalAccessibleComponentStateException e) {
- throw new java.awt.IllegalComponentStateException(e.getMessage());
- } catch (com.sun.star.uno.RuntimeException e) {
- return java.util.Locale.getDefault();
- }
- }
-
- /*
- * AccessibleExtendedComponent
- */
-
- /** Returns the background color of the object */
- public java.awt.Color getBackground() {
- try {
- return new java.awt.Color(unoAccessibleComponent.getBackground());
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public void setBackground(java.awt.Color c) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the foreground color of the object */
- public java.awt.Color getForeground() {
- try {
- return new java.awt.Color(unoAccessibleComponent.getForeground());
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public void setForeground(java.awt.Color c) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.Cursor getCursor() {
- // Not supported by UNO accessibility API
- return null;
- }
-
- public void setCursor(java.awt.Cursor cursor) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.Font getFont() {
- // FIXME
- return null;
- }
-
- public void setFont(java.awt.Font f) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.FontMetrics getFontMetrics(java.awt.Font f) {
- // FIXME
- return null;
- }
-
- public boolean isEnabled() {
- return Component.this.isEnabled();
- }
-
- public void setEnabled(boolean b) {
- // Not supported by UNO accessibility API
- }
-
- public boolean isVisible() {
- return Component.this.isVisible();
- }
-
- public void setVisible(boolean b) {
- // Not supported by UNO accessibility API
- }
-
- public boolean isShowing() {
- return Component.this.isShowing();
- }
-
- public boolean contains(java.awt.Point p) {
- try {
- return unoAccessibleComponent.containsPoint(new com.sun.star.awt.Point(p.x, p.y));
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- }
- }
-
- /** Returns the location of the object on the screen. */
- public java.awt.Point getLocationOnScreen() {
- try {
- com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocationOnScreen();
-// if (Build.DEBUG) {
-// System.err.println("Returning location on screen( " + unoPoint.X + ", " + unoPoint.Y + " )" );
-// }
- return new java.awt.Point(unoPoint.X, unoPoint.Y);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the location of this component in the form of a point specifying the component's top-left corner */
- public java.awt.Point getLocation() {
- try {
- com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocation();
- return new java.awt.Point( unoPoint.X, unoPoint.Y );
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Moves this component to a new location */
- public void setLocation(java.awt.Point p) {
- // Not supported by UNO accessibility API
- }
-
- /** Gets the bounds of this component in the form of a Rectangle object */
- public java.awt.Rectangle getBounds() {
- try {
- com.sun.star.awt.Rectangle unoRect = unoAccessibleComponent.getBounds();
- return new java.awt.Rectangle(unoRect.X, unoRect.Y, unoRect.Width, unoRect.Height);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Moves and resizes this component to conform to the new bounding rectangle r */
- public void setBounds(java.awt.Rectangle r) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the size of this component in the form of a Dimension object */
- public java.awt.Dimension getSize() {
- try {
- com.sun.star.awt.Size unoSize = unoAccessibleComponent.getSize();
- return new java.awt.Dimension(unoSize.Width, unoSize.Height);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Resizes this component so that it has width d.width and height d.height */
- public void setSize(java.awt.Dimension d) {
- // Not supported by UNO accessibility API
- }
-
- public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
- // Not supported by this implementation
- return null;
- }
-
- public boolean isFocusTraversable() {
- return Component.this.isFocusable();
- }
-
- public void requestFocus() {
- unoAccessibleComponent.grabFocus();
- }
-
- public String getToolTipText() {
- try {
- XAccessibleExtendedComponent unoAccessibleExtendedComponent = (XAccessibleExtendedComponent)
- UnoRuntime.queryInterface(XAccessibleExtendedComponent.class, unoAccessibleComponent);
- if (unoAccessibleExtendedComponent != null) {
- return unoAccessibleExtendedComponent.getToolTipText();
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- return null;
- }
-
- public String getTitledBorderText() {
- try {
- XAccessibleExtendedComponent unoAccessibleExtendedComponent = (XAccessibleExtendedComponent)
- UnoRuntime.queryInterface(XAccessibleExtendedComponent.class, unoAccessibleComponent);
- if (unoAccessibleExtendedComponent != null) {
- return unoAccessibleExtendedComponent.getTitledBorderText();
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- return null;
- }
-
- public javax.accessibility.AccessibleKeyBinding getAccessibleKeyBinding() {
- try {
- XAccessibleAction unoAccessibleAction = (XAccessibleAction)
- UnoRuntime.queryInterface(XAccessibleAction.class, unoAccessibleComponent);
- if (unoAccessibleAction != null) {
- XAccessibleKeyBinding unoAccessibleKeyBinding = unoAccessibleAction.getAccessibleActionKeyBinding(0);
- if (unoAccessibleKeyBinding != null) {
- return new AccessibleKeyBinding(unoAccessibleKeyBinding);
- }
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- return null;
- }
- }
-
- // Extract a number from a UNO any
- public static java.lang.Number toNumber(java.lang.Object any) {
- try {
- if (AnyConverter.isByte(any)) {
- return new Byte(AnyConverter.toByte(any));
- } else if (AnyConverter.isShort(any)) {
- return new Short(AnyConverter.toShort(any));
- } else if (AnyConverter.isInt(any)) {
- return new Integer(AnyConverter.toInt(any));
- } else if (AnyConverter.isLong(any)) {
- return new Long(AnyConverter.toLong(any));
- } else if (AnyConverter.isFloat(any)) {
- return new Float(AnyConverter.toFloat(any));
- } else if (AnyConverter.isDouble(any)) {
- return new Double(AnyConverter.toDouble(any));
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- throw new IllegalArgumentException(e.getMessage());
- }
- return null;
- }
-
- public String toString() {
- return UnoRuntime.generateOid(unoAccessible);
- }
-}
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Container.java b/accessibility/bridge/org/openoffice/java/accessibility/Container.java
deleted file mode 100644
index b04707560..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/Container.java
+++ /dev/null
@@ -1,763 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import javax.accessibility.AccessibleContext;
-import javax.accessibility.AccessibleState;
-
-import com.sun.star.uno.*;
-import com.sun.star.accessibility.*;
-
-public class Container extends java.awt.Container implements javax.accessibility.Accessible {
-
- protected XAccessible unoAccessible;
- protected XAccessibleContext unoAccessibleContext;
- protected XAccessibleComponent unoAccessibleComponent = null;
-
- protected javax.accessibility.AccessibleRole accessibleRole;
- protected javax.accessibility.AccessibleText accessibleText;
- protected boolean disposed = false;
-
- protected Container(javax.accessibility.AccessibleRole role,
- XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
- accessibleRole = role;
- unoAccessible = xAccessible;
- unoAccessibleContext = xAccessibleContext;
- unoAccessibleComponent = (XAccessibleComponent)
- UnoRuntime.queryInterface(XAccessibleComponent.class,
- xAccessibleContext);
-
- // Add the event listener right away, because the global focus notification doesn't
- // work yet ..
- XAccessibleEventBroadcaster broadcaster = (XAccessibleEventBroadcaster)
- UnoRuntime.queryInterface(XAccessibleEventBroadcaster.class,
- unoAccessibleContext);
- if (broadcaster != null) {
- broadcaster.addEventListener(createEventListener());
- }
- }
-
- /**
- * Determines whether this <code>Container</code> is showing on screen.
- * This means that the component must be visible, and it must be in a
- * <code>container</code> that is visible and showing.
- * @see #addNotify
- * @see #removeNotify
- * @since JDK1.0
- */
- public boolean isShowing() {
- if (isVisible()) {
- java.awt.Container parent = getParent();
- return (parent == null) || parent.isShowing();
- }
- return false;
- }
-
- /**
- * Makes this <code>Container</code> displayable by connecting it to a
- * native screen resource.
- * This method is called internally by the toolkit and should
- * not be called directly by programs.
- * @see #isDisplayable
- * @see #removeNotify
- * @since JDK1.0
- */
- public void addNotify() {
- }
-
- /**
- * Makes this <code>Container</code> undisplayable by destroying it native
- * screen resource.
- * This method is called by the toolkit internally and should
- * not be called directly by programs.
- * @see #isDisplayable
- * @see #addNotify
- * @since JDK1.0
- */
- public void removeNotify() {
- }
-
- /*
- * Fake the java focus handling. This is necessary to keep OOo focus
- * in sync with the java focus. See java.awt.DefaultKeyboardFocusManager
- * for implementation details.
- **/
-
- /** Requests focus for this object */
- public void requestFocus() {
- }
-
- /** Requests focus for this object */
- public boolean requestFocus(boolean temporary) {
- // Must be a no-op to make focus handling work
- return true;
- }
-
- /** Requests the focus for this object in the containing window */
- public boolean requestFocusInWindow() {
- return requestFocusInWindow(false);
- }
-
- /** Requests the focus for this object in the containing window */
- protected boolean requestFocusInWindow(boolean temporary) {
- if (isFocusable() && isVisible()) {
- getEventQueue().postEvent(new java.awt.event.FocusEvent(this, java.awt.event.FocusEvent.FOCUS_GAINED, temporary));
- return true;
- }
- return false;
- }
-
- public Object[] getAccessibleComponents(Object[] targetSet) {
- try {
- java.util.ArrayList list = new java.util.ArrayList(targetSet.length);
- for (int i=0; i < targetSet.length; i++) {
- java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(
- (XAccessible) UnoRuntime.queryInterface(XAccessible.class, targetSet[i]));
- if (c != null) {
- list.add(c);
- }
- }
- list.trimToSize();
- return list.toArray();
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- protected java.awt.EventQueue getEventQueue() {
- return java.awt.Toolkit.getDefaultToolkit().getSystemEventQueue();
- }
-
- protected class PropertyChangeBroadcaster implements Runnable {
- String propertyName;
- Object oldValue;
- Object newValue;
-
- public PropertyChangeBroadcaster(String name, Object param1, Object param2) {
- propertyName = name;
- oldValue = param1;
- newValue = param2;
- }
-
- public void run() {
- // Because this code is executed in the DispatchThread, it is better tocatch every
- // exception that might occur
- try {
- AccessibleContext ac = Container.this.accessibleContext;
- if (ac != null) {
- ac.firePropertyChange(propertyName, oldValue, newValue);
- }
- } catch (java.lang.Exception e) {
- if (Build.DEBUG) {
- System.err.println(e.getClass().getName() + " caught propagating " + propertyName + " event: " + e.getMessage());
- e.printStackTrace();
- }
- }
- }
- }
-
- protected void firePropertyChange(String property, Object oldValue, Object newValue) {
- getEventQueue().invokeLater(new PropertyChangeBroadcaster(property, oldValue, newValue));
- }
-
- protected void fireStatePropertyChange(AccessibleState state, boolean set) {
- PropertyChangeBroadcaster broadcaster;
- if (set) {
- broadcaster = new PropertyChangeBroadcaster(
- AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- null, state);
- } else {
- broadcaster = new PropertyChangeBroadcaster(
- AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- state, null);
- }
- getEventQueue().invokeLater(broadcaster);
- }
-
- /**
- * Update the proxy objects appropriatly on property change events
- */
- protected class AccessibleContainerListener implements XAccessibleEventListener {
-
- protected AccessibleContainerListener() {
- }
-
- protected java.awt.EventQueue getEventQueue() {
- return java.awt.Toolkit.getDefaultToolkit().getSystemEventQueue();
- }
-
- protected void setComponentState(short state, boolean enable) {
- switch (state) {
- case AccessibleStateType.ACTIVE:
- // Only frames should be active
- break;
- case AccessibleStateType.ENABLED:
- setEnabled(enable);
- // Since we can't access awt.Componet.accessibleContext, we need to fire
- // this event manually ..
- fireStatePropertyChange(AccessibleState.ENABLED, enable);
- break;
- case AccessibleStateType.FOCUSED:
- getEventQueue().postEvent(new java.awt.event.FocusEvent(
- Container.this, enable ?
- java.awt.event.FocusEvent.FOCUS_GAINED :
- java.awt.event.FocusEvent.FOCUS_LOST));
- break;
- case AccessibleStateType.SELECTED:
- fireStatePropertyChange(AccessibleState.SELECTED, enable);
- break;
- case AccessibleStateType.SENSITIVE:
- // This state equals ENABLED in OOo (but not in Gtk+) and does not exist in Java 1.5
- break;
- case AccessibleStateType.SHOWING:
- case AccessibleStateType.VISIBLE:
- setVisible(enable);
- break;
- default:
- if (Build.DEBUG) {
- System.err.println(Container.this + "unexpected state change " + state);
- }
- break;
- }
- }
- /** Updates the accessible name and fires the appropriate PropertyChangedEvent */
- protected void handleNameChangedEvent(Object any) {
- try {
- // This causes the property change event to be fired in the VCL thread
- // context. If this causes problems, it has to be deligated to the java
- // dispatch thread ..
- if (accessibleContext != null) {
- accessibleContext.setAccessibleName(AnyConverter.toString(any));
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /** Updates the accessible description and fires the appropriate PropertyChangedEvent */
- protected void handleDescriptionChangedEvent(Object any) {
- try {
- // This causes the property change event to be fired in the VCL thread
- // context. If this causes problems, it has to be deligated to the java
- // dispatch thread ..
- if (accessibleContext != null) {
- accessibleContext.setAccessibleDescription(AnyConverter.toString(any));
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /** Updates the internal states and fires the appropriate PropertyChangedEvent */
- protected void handleStateChangedEvent(Object any1, Object any2) {
- try {
- if (AnyConverter.isShort(any1)) {
- setComponentState(AnyConverter.toShort(any1), false);
- }
-
- if (AnyConverter.isShort(any2)) {
- setComponentState(AnyConverter.toShort(any2), true);
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /* This event is only necessary because some objects in the office don't know their parent
- * and are therefor unable to revoke and re-insert themselves.
- */
- protected void handleAllChildrenChangedEvent() {
- javax.accessibility.Accessible parent = (javax.accessibility.Accessible) getParent();
- if (parent != null) {
- javax.accessibility.AccessibleContext parentAC = parent.getAccessibleContext();
- if (parentAC != null) {
-
- parentAC.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- Container.this,
- null);
-
- AccessibleObjectFactory.clearContainer(Container.this);
- AccessibleObjectFactory.populateContainer(Container.this, unoAccessibleContext);
-
- parentAC.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- null,
- Container.this);
- }
- }
- }
-
- /** Called by OpenOffice process to notify property changes */
- public void notifyEvent(AccessibleEventObject event) {
-
- if ( !disposed ) {
-
- switch (event.EventId) {
- case AccessibleEventId.NAME_CHANGED:
- // Set the accessible name for the corresponding context, which will fire a property
- // change event itself
- handleNameChangedEvent(event.NewValue);
- break;
- case AccessibleEventId.DESCRIPTION_CHANGED:
- // Set the accessible description for the corresponding context, which will fire a property
- // change event itself - so do not set propertyName !
- handleDescriptionChangedEvent(event.NewValue);
- break;
- case AccessibleEventId.STATE_CHANGED:
- // Update the internal state set and fire the appropriate PropertyChangedEvent
- handleStateChangedEvent(event.OldValue, event.NewValue);
- break;
- case AccessibleEventId.TEXT_CHANGED:
- firePropertyChange(AccessibleContext.ACCESSIBLE_TEXT_PROPERTY,
- AccessibleTextImpl.convertTextSegment(event.OldValue),
- AccessibleTextImpl.convertTextSegment(event.NewValue));
- break;
- case AccessibleEventId.CHILD:
- if (AnyConverter.isObject(event.OldValue)) {
- AccessibleObjectFactory.removeChild(Container.this, event.OldValue);
- } else if (AnyConverter.isObject(event.NewValue)) {
- AccessibleObjectFactory.addChild(Container.this, event.NewValue);
- }
- break;
- case AccessibleEventId.VISIBLE_DATA_CHANGED:
- case AccessibleEventId.BOUNDRECT_CHANGED:
- firePropertyChange(AccessibleContext.ACCESSIBLE_VISIBLE_DATA_PROPERTY, null, null);
- break;
- /*
- * the Java AccessBridge for GNOME maps SELECTION_PROPERTY change events
- * for objects of role TEXT to object:text-selection-changed
- */
- case AccessibleEventId.TEXT_SELECTION_CHANGED:
- case AccessibleEventId.SELECTION_CHANGED:
- firePropertyChange(AccessibleContext.ACCESSIBLE_SELECTION_PROPERTY, null, null);
- break;
- case AccessibleEventId.INVALIDATE_ALL_CHILDREN:
- handleAllChildrenChangedEvent();
- break;
- default:
- // Warn about unhandled events
- if(Build.DEBUG) {
- System.out.println(this + ": unhandled accessibility event id=" + event.EventId);
- }
- }
- }
- }
-
- /** Called by OpenOffice process to notify that the UNO component is disposing */
- public void disposing(com.sun.star.lang.EventObject eventObject) {
- disposed = true;
- AccessibleObjectFactory.disposing(Container.this);
- }
- }
-
- protected XAccessibleEventListener createEventListener() {
- return new AccessibleContainerListener();
- }
-
- protected javax.accessibility.AccessibleContext accessibleContext = null;
-
- /** This method actually creates the AccessibleContext object returned by
- * getAccessibleContext().
- */
- protected javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleContainer();
- }
-
- /** Returns the AccessibleContext associated with this object */
- public final javax.accessibility.AccessibleContext getAccessibleContext() {
- if (accessibleContext == null) {
- try {
- AccessibleContext ac = createAccessibleContext();
- if (ac != null) {
- // Set accessible name and description here to avoid
- // unnecessary property change events later ..
- ac.setAccessibleName(unoAccessibleContext.getAccessibleName());
- ac.setAccessibleDescription(unoAccessibleContext.getAccessibleDescription());
- accessibleContext = ac;
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
- return accessibleContext;
- }
-
- protected class AccessibleContainer extends java.awt.Container.AccessibleAWTContainer {
-
- protected AccessibleContainer() {
- /* Since getAccessibleText() is heavily used by the java access
- * bridge for gnome and the gnome at-tools, we do a query interface
- * here and remember the result.
- */
- accessibleText = AccessibleTextImpl.get(unoAccessibleContext);
- }
-
- protected AccessibleContainer(boolean query) {
- /* This constructor is explicitly for subclasses that implement
- * AccessibleHypertext and therefor the default constructor would
- * bring unnecessary overhead.
- */
- }
-
- protected java.awt.event.ComponentListener accessibleComponentHandler = null;
-
- /**
- * Fire PropertyChange listener, if one is registered,
- * when shown/hidden..
- */
- protected class AccessibleComponentHandler implements java.awt.event.ComponentListener {
- public void componentHidden(java.awt.event.ComponentEvent e) {
- AccessibleContainer.this.firePropertyChange(
- AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- AccessibleState.VISIBLE, null);
- }
-
- public void componentShown(java.awt.event.ComponentEvent e) {
- AccessibleContainer.this.firePropertyChange(
- AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- null, AccessibleState.VISIBLE);
- }
-
- public void componentMoved(java.awt.event.ComponentEvent e) {
- }
-
- public void componentResized(java.awt.event.ComponentEvent e) {
- }
- } // inner class AccessibleContainerHandler
-
- protected java.awt.event.FocusListener accessibleFocusHandler = null;
-
- /**
- * Fire PropertyChange listener, if one is registered,
- * when focus events happen
- */
- protected class AccessibleFocusHandler implements java.awt.event.FocusListener {
- public void focusGained(java.awt.event.FocusEvent event) {
- AccessibleContainer.this.firePropertyChange(
- AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- null, AccessibleState.FOCUSED);
- if (Build.DEBUG) {
- System.err.println("[" + getAccessibleRole() + "] " + getAccessibleName() + " is now focused");
- }
- }
- public void focusLost(java.awt.event.FocusEvent event) {
- AccessibleContainer.this.firePropertyChange(
- AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- AccessibleState.FOCUSED, null);
- if (Build.DEBUG) {
- System.err.println("[" + getAccessibleRole() + "] " + getAccessibleName() + " is no longer focused");
- }
- }
- } // inner class AccessibleFocusHandler
-
- protected java.awt.event.ContainerListener accessibleContainerHandler = null;
-
- /**
- * Fire PropertyChange listener, if one is registered,
- * when children added/removed.
- */
-
- protected class AccessibleContainerHandler implements java.awt.event.ContainerListener {
- public void componentAdded(java.awt.event.ContainerEvent e) {
- java.awt.Component c = e.getChild();
- if (c != null && c instanceof javax.accessibility.Accessible) {
- AccessibleContainer.this.firePropertyChange(
- AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- null, ((javax.accessibility.Accessible) c).getAccessibleContext());
- }
- }
- public void componentRemoved(java.awt.event.ContainerEvent e) {
- java.awt.Component c = e.getChild();
- if (c != null && c instanceof javax.accessibility.Accessible) {
- AccessibleContainer.this.firePropertyChange(
- AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- ((javax.accessibility.Accessible) c).getAccessibleContext(), null);
- }
- }
- }
-
- protected int propertyChangeListenerCount = 0;
-
- /**
- * Add a PropertyChangeListener to the listener list.
- *
- * @param listener The PropertyChangeListener to be added
- */
- public void addPropertyChangeListener(java.beans.PropertyChangeListener listener) {
- if (propertyChangeListenerCount++ == 0) {
- accessibleFocusHandler = new AccessibleFocusHandler();
- Container.this.addFocusListener(accessibleFocusHandler);
-
- accessibleContainerHandler = new AccessibleContainerHandler();
- Container.this.addContainerListener(accessibleContainerHandler);
-
- accessibleComponentHandler = new AccessibleComponentHandler();
- Container.this.addComponentListener(accessibleComponentHandler);
- }
- super.addPropertyChangeListener(listener);
- }
-
- /**
- * Remove a PropertyChangeListener from the listener list.
- * This removes a PropertyChangeListener that was registered
- * for all properties.
- *
- * @param listener The PropertyChangeListener to be removed
- */
- public void removePropertyChangeListener(java.beans.PropertyChangeListener listener) {
- if (--propertyChangeListenerCount == 0) {
- Container.this.removeComponentListener(accessibleComponentHandler);
- accessibleComponentHandler = null;
-
- Container.this.removeContainerListener(accessibleContainerHandler);
- accessibleContainerHandler = null;
-
- Container.this.removeFocusListener(accessibleFocusHandler);
- accessibleFocusHandler = null;
- }
- super.removePropertyChangeListener(listener);
- }
-
- /** Gets the role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return accessibleRole;
- }
-
- /** Gets the AccessibleText associated with this object presenting text on the display */
- public javax.accessibility.AccessibleText getAccessibleText() {
-
- if (disposed)
- return null;
-
- return accessibleText;
- }
-
- /**
- * Gets the current state set of this object.
- *
- * @return an instance of <code>AccessibleStateSet</code>
- * containing the current state set of the object
- * @see AccessibleState
- */
- public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
- if (disposed)
- return AccessibleStateAdapter.getDefunctStateSet();
-
- try {
- return AccessibleStateAdapter.getAccessibleStateSet(Container.this,
- unoAccessibleContext.getAccessibleStateSet());
- } catch (com.sun.star.uno.RuntimeException e) {
- return AccessibleStateAdapter.getDefunctStateSet();
- }
- }
-
- /** Returns the AccessibleSelection interface for this object */
- public javax.accessibility.AccessibleSelection getAccessibleSelection() {
- try {
- XAccessibleSelection unoAccessibleSelection = (XAccessibleSelection)
- UnoRuntime.queryInterface(XAccessibleSelection.class, unoAccessibleContext);
- if (unoAccessibleSelection != null) {
- return new AccessibleSelectionImpl(unoAccessibleSelection);
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
-
- return null;
- }
-
- /** Gets the locale of the component */
- public java.util.Locale getLocale() throws java.awt.IllegalComponentStateException {
- try {
- com.sun.star.lang.Locale unoLocale = unoAccessible.getAccessibleContext().getLocale();
- return new java.util.Locale(unoLocale.Language, unoLocale.Country);
- } catch (IllegalAccessibleComponentStateException e) {
- throw new java.awt.IllegalComponentStateException(e.getMessage());
- } catch (com.sun.star.uno.RuntimeException e) {
- return super.getLocale();
- }
- }
-
- /*
- * AccessibleComponent
- */
-
- /** Returns the background color of the object */
- public java.awt.Color getBackground() {
- try {
- return new java.awt.Color(unoAccessibleComponent.getBackground());
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public void setBackground(java.awt.Color c) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the foreground color of the object */
- public java.awt.Color getForeground() {
- try {
- return new java.awt.Color(unoAccessibleComponent.getForeground());
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public void setForeground(java.awt.Color c) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.Cursor getCursor() {
- // Not supported by UNO accessibility API
- return null;
- }
-
- public void setCursor(java.awt.Cursor cursor) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.Font getFont() {
- // FIXME
- return null;
- }
-
- public void setFont(java.awt.Font f) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.FontMetrics getFontMetrics(java.awt.Font f) {
- // FIXME
- return null;
- }
-
- public boolean isEnabled() {
- return Container.this.isEnabled();
- }
-
- public void setEnabled(boolean b) {
- // Not supported by UNO accessibility API
- }
-
- public boolean isVisible() {
- return Container.this.isVisible();
- }
-
- public void setVisible(boolean b) {
- // Not supported by UNO accessibility API
- }
-
- public boolean isShowing() {
- return Container.this.isShowing();
- }
-
- public boolean contains(java.awt.Point p) {
- try {
- return unoAccessibleComponent.containsPoint(new com.sun.star.awt.Point(p.x, p.y));
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- }
- }
-
- /** Returns the location of the object on the screen. */
- public java.awt.Point getLocationOnScreen() {
- try {
- com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocationOnScreen();
- return new java.awt.Point(unoPoint.X, unoPoint.Y);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the location of this component in the form of a point specifying the component's top-left corner */
- public java.awt.Point getLocation() {
- try {
- com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocation();
- return new java.awt.Point( unoPoint.X, unoPoint.Y );
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Moves this component to a new location */
- public void setLocation(java.awt.Point p) {
- // Not supported by UNO accessibility API
- }
-
- /** Gets the bounds of this component in the form of a Rectangle object */
- public java.awt.Rectangle getBounds() {
- try {
- com.sun.star.awt.Rectangle unoRect = unoAccessibleComponent.getBounds();
- return new java.awt.Rectangle(unoRect.X, unoRect.Y, unoRect.Width, unoRect.Height);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Moves and resizes this component to conform to the new bounding rectangle r */
- public void setBounds(java.awt.Rectangle r) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the size of this component in the form of a Dimension object */
- public java.awt.Dimension getSize() {
- try {
- com.sun.star.awt.Size unoSize = unoAccessibleComponent.getSize();
- return new java.awt.Dimension(unoSize.Width, unoSize.Height);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Resizes this component so that it has width d.width and height d.height */
- public void setSize(java.awt.Dimension d) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
- public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
- try {
- java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(
- unoAccessibleComponent.getAccessibleAtPoint(new com.sun.star.awt.Point(p.x, p.y)));
-
- return (javax.accessibility.Accessible) c;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public boolean isFocusTraversable() {
- return Container.this.isFocusable();
- }
-
- public void requestFocus() {
- unoAccessibleComponent.grabFocus();
- }
- }
-
- public String toString() {
- return UnoRuntime.generateOid(unoAccessible);
- }
-}
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/DescendantManager.java b/accessibility/bridge/org/openoffice/java/accessibility/DescendantManager.java
deleted file mode 100644
index 039eea34d..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/DescendantManager.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.*;
-import com.sun.star.uno.AnyConverter;
-import com.sun.star.uno.UnoRuntime;
-
-import javax.accessibility.AccessibleState;
-
-
-public abstract class DescendantManager extends Component {
- protected XAccessibleSelection unoAccessibleSelection = null;
- protected javax.accessibility.Accessible activeDescendant = null;
- protected boolean multiselectable = false;
-
- protected DescendantManager(XAccessible xAccessible,
- XAccessibleContext xAccessibleContext) {
- super(xAccessible, xAccessibleContext);
- }
-
- protected DescendantManager(XAccessible xAccessible,
- XAccessibleContext xAccessibleContext, boolean multiselectable) {
- super(xAccessible, xAccessibleContext);
- this.multiselectable = multiselectable;
- }
-
- /**
- * Update the proxy objects appropriatly on property change events
- */
- protected class AccessibleDescendantManagerListener
- extends AccessibleUNOComponentListener {
- protected AccessibleDescendantManagerListener() {
- unoAccessibleSelection = (XAccessibleSelection) UnoRuntime.queryInterface(XAccessibleSelection.class,
- unoAccessibleContext);
- }
-
- /** Called by OpenOffice process to notify property changes */
- public void notifyEvent(AccessibleEventObject event) {
- switch (event.EventId) {
- case AccessibleEventId.SELECTION_CHANGED:
- firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_SELECTION_PROPERTY,
- null, null);
-
- break;
-
- default:
- super.notifyEvent(event);
- }
- }
- }
-
- protected abstract class AccessibleDescendantManager
- extends AccessibleUNOComponent
- implements javax.accessibility.AccessibleSelection {
- protected AccessibleDescendantManager() {
- unoAccessibleSelection = (XAccessibleSelection) UnoRuntime.queryInterface(XAccessibleSelection.class,
- unoAccessibleContext);
- }
-
- /*
- * AccessibleContext
- */
-
- /** Returns the number of accessible children of the object */
- public int getAccessibleChildrenCount() {
- try {
- return unoAccessibleContext.getAccessibleChildCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Returns the AccessibleSelection interface for this object */
- public javax.accessibility.AccessibleSelection getAccessibleSelection() {
- return (unoAccessibleSelection != null) ? this : null;
- }
-
- /*
- * AccessibleSelection
- */
-
- /** Adds the specified Accessible child of the object to the object's selection */
- public void addAccessibleSelection(int i) {
- try {
- unoAccessibleSelection.selectAccessibleChild(i);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- /** Clears the selection in the object, so that no children in the object are selected */
- public void clearAccessibleSelection() {
- try {
- unoAccessibleSelection.clearAccessibleSelection();
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- /** Returns the number of Accessible children currently selected */
- public int getAccessibleSelectionCount() {
- try {
- return unoAccessibleSelection.getSelectedAccessibleChildCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Determines if the current child of this object is selected */
- public boolean isAccessibleChildSelected(int i) {
- try {
- return unoAccessibleSelection.isAccessibleChildSelected(i);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return false;
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- }
- }
-
- /** Removes the specified child of the object from the object's selection */
- public void removeAccessibleSelection(int i) {
- try {
- unoAccessibleSelection.deselectAccessibleChild(i);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- /** Causes every child of the object to be selected if the object supports multiple selection */
- public void selectAllAccessibleSelection() {
- try {
- unoAccessibleSelection.selectAllAccessibleChildren();
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Dialog.java b/accessibility/bridge/org/openoffice/java/accessibility/Dialog.java
deleted file mode 100644
index 64b5572a2..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/Dialog.java
+++ /dev/null
@@ -1,633 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import javax.accessibility.AccessibleState;
-
-import com.sun.star.uno.*;
-import com.sun.star.accessibility.*;
-
-public class Dialog extends java.awt.Dialog implements javax.accessibility.Accessible, NativeFrame {
- protected XAccessibleComponent unoAccessibleComponent;
-
- boolean opened = false;
- boolean visible = false;
- boolean active = false;
-
- java.awt.EventQueue eventQueue = null;
-
- protected Dialog(java.awt.Frame owner, XAccessibleComponent xAccessibleComponent) {
- super(owner);
- initialize(xAccessibleComponent);
- }
-
- protected Dialog(java.awt.Frame owner, String name, XAccessibleComponent xAccessibleComponent) {
- super(owner, name);
- initialize(xAccessibleComponent);
- }
-
- protected Dialog(java.awt.Frame owner, String name, boolean modal, XAccessibleComponent xAccessibleComponent) {
- super(owner, name, modal);
- initialize(xAccessibleComponent);
- }
-
- private void initialize(XAccessibleComponent xAccessibleComponent) {
- unoAccessibleComponent = xAccessibleComponent;
- eventQueue = java.awt.Toolkit.getDefaultToolkit().getSystemEventQueue();
- XAccessibleEventBroadcaster broadcaster = (XAccessibleEventBroadcaster)
- UnoRuntime.queryInterface(XAccessibleEventBroadcaster.class,
- xAccessibleComponent);
- if (broadcaster != null) {
- broadcaster.addEventListener(new AccessibleDialogListener());
- }
- }
-
- java.awt.Component initialComponent = null;
-
- public java.awt.Component getInitialComponent() {
- return initialComponent;
- }
-
- public void setInitialComponent(java.awt.Component c) {
- initialComponent = c;
- }
-
- public Integer getHWND() {
- return null;
- }
-
- /**
- * Determines whether this <code>Component</code> is showing on screen.
- * This means that the component must be visible, and it must be in a
- * <code>container</code> that is visible and showing.
- * @see #addNotify
- * @see #removeNotify
- * @since JDK1.0
- */
- public boolean isShowing() {
- if (isVisible()) {
- java.awt.Container parent = getParent();
- return (parent == null) || parent.isShowing();
- }
- return false;
- }
-
- /**
- * Makes this <code>Component</code> displayable by connecting it to a
- * native screen resource.
- * This method is called internally by the toolkit and should
- * not be called directly by programs.
- * @see #isDisplayable
- * @see #removeNotify
- * @since JDK1.0
- */
- public void addNotify() {
-// createHierarchyEvents(0, null, null, 0, false);
- }
-
- /**
- * Makes this <code>Component</code> undisplayable by destroying it native
- * screen resource.
- * This method is called by the toolkit internally and should
- * not be called directly by programs.
- * @see #isDisplayable
- * @see #addNotify
- * @since JDK1.0
- */
- public void removeNotify() {
- }
-
- /**
- * Determines if the object is visible. Note: this means that the
- * object intends to be visible; however, it may not in fact be
- * showing on the screen because one of the objects that this object
- * is contained by is not visible. To determine if an object is
- * showing on the screen, use <code>isShowing</code>.
- *
- * @return true if object is visible; otherwise, false
- */
- public boolean isVisible(){
- return visible;
- }
-
- /**
- * Shows or hides this component depending on the value of parameter
- * <code>b</code>.
- * @param b if <code>true</code>, shows this component;
- * otherwise, hides this component
- * @see #isVisible
- * @since JDK1.1
- */
- public void setVisible(boolean b) {
- if (visible != b){
- visible = b;
- if (b) {
- // If it is the first show, fire WINDOW_OPENED event
- if (!opened) {
- postWindowEvent(java.awt.event.WindowEvent.WINDOW_OPENED);
- opened = true;
- }
- postComponentEvent(java.awt.event.ComponentEvent.COMPONENT_SHOWN);
- } else {
- postComponentEvent(java.awt.event.ComponentEvent.COMPONENT_HIDDEN);
- }
- }
- }
-
- public void dispose() {
- setVisible(false);
- postWindowEvent(java.awt.event.WindowEvent.WINDOW_CLOSED);
- }
-
- protected void postWindowEvent(int i) {
- eventQueue.postEvent(new java.awt.event.WindowEvent(this, i));
- }
-
- protected void postComponentEvent(int i) {
- eventQueue.postEvent(new java.awt.event.ComponentEvent(this, i));
- }
-
- /**
- * Update the proxy objects appropriatly on property change events
- */
- protected class AccessibleDialogListener implements XAccessibleEventListener {
-
- protected AccessibleDialogListener() {
- }
-
- protected void setComponentState(short state, boolean enable) {
- switch (state) {
- case AccessibleStateType.ACTIVE:
- active = enable;
- if (enable) {
- AccessibleObjectFactory.postWindowActivated(Dialog.this);
- } else {
- AccessibleObjectFactory.postWindowLostFocus(Dialog.this);
- }
- break;
- case AccessibleStateType.ICONIFIED:
- postWindowEvent(enable ?
- java.awt.event.WindowEvent.WINDOW_ICONIFIED :
- java.awt.event.WindowEvent.WINDOW_DEICONIFIED);
- break;
- case AccessibleStateType.VISIBLE:
- Dialog.this.setVisible(enable);
- break;
- default:
- if (Build.DEBUG) {
- System.err.println("[dialog]: " + getTitle() + "unexpected state change " + state);
- }
- break;
- }
- }
-
- /** Updates the accessible name and fires the appropriate PropertyChangedEvent */
- protected void handleNameChangedEvent(Object any) {
- try {
- String title = AnyConverter.toString(any);
- setTitle(title);
- // This causes the property change event to be fired in the VCL thread
- // context. If this causes problems, it has to be deligated to the java
- // dispatch thread ..
- javax.accessibility.AccessibleContext ac = accessibleContext;
- if (ac!= null) {
- ac.setAccessibleName(title);
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /** Updates the accessible description and fires the appropriate PropertyChangedEvent */
- protected void handleDescriptionChangedEvent(Object any) {
- try {
- // This causes the property change event to be fired in the VCL thread
- // context. If this causes problems, it has to be deligated to the java
- // dispatch thread ..
- javax.accessibility.AccessibleContext ac = accessibleContext;
- if (ac!= null) {
- ac.setAccessibleDescription(AnyConverter.toString(any));
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /** Updates the internal states and fires the appropriate PropertyChangedEvent */
- protected void handleStateChangedEvent(Object any1, Object any2) {
- try {
- if (AnyConverter.isShort(any1)) {
- setComponentState(AnyConverter.toShort(any1), false);
- }
-
- if (AnyConverter.isShort(any2)) {
- setComponentState(AnyConverter.toShort(any2), true);
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /** Fires a visible data property change event */
- protected void handleVisibleDataEvent() {
- javax.accessibility.AccessibleContext ac = accessibleContext;
- if (ac != null) {
- ac.firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_VISIBLE_DATA_PROPERTY, null, null);
- }
- }
-
- /** Called by OpenOffice process to notify property changes */
- public void notifyEvent(AccessibleEventObject event) {
- switch (event.EventId) {
- case AccessibleEventId.NAME_CHANGED:
- // Set the accessible name for the corresponding context, which will fire a property
- // change event itself
- handleNameChangedEvent(event.NewValue);
- break;
- case AccessibleEventId.DESCRIPTION_CHANGED:
- // Set the accessible description for the corresponding context, which will fire a property
- // change event itself - so do not set propertyName !
- handleDescriptionChangedEvent(event.NewValue);
- break;
- case AccessibleEventId.STATE_CHANGED:
- // Update the internal state set and fire the appropriate PropertyChangedEvent
- handleStateChangedEvent(event.OldValue, event.NewValue);
- break;
- case AccessibleEventId.CHILD:
- if (AnyConverter.isObject(event.OldValue)) {
- AccessibleObjectFactory.removeChild(Dialog.this, event.OldValue);
- } else if (AnyConverter.isObject(event.NewValue)) {
- AccessibleObjectFactory.addChild(Dialog.this, event.NewValue);
- }
- break;
- case AccessibleEventId.VISIBLE_DATA_CHANGED:
- case AccessibleEventId.BOUNDRECT_CHANGED:
- handleVisibleDataEvent();
- break;
- default:
- // Warn about unhandled events
- if(Build.DEBUG) {
- System.out.println(this + ": unhandled accessibility event id=" + event.EventId);
- }
- }
- }
-
- /** Called by OpenOffice process to notify that the UNO component is disposing */
- public void disposing(com.sun.star.lang.EventObject eventObject) {
- }
- }
-
- javax.accessibility.AccessibleContext accessibleContext = null;
-
- /** Returns the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext getAccessibleContext() {
- if (accessibleContext == null) {
- accessibleContext = new AccessibleDialog();
- accessibleContext.setAccessibleName(getTitle());
- }
- return accessibleContext;
- }
-
- protected class AccessibleDialog extends java.awt.Dialog.AccessibleAWTDialog {
- protected AccessibleDialog() {
- super();
- }
-
- protected java.awt.event.ComponentListener accessibleComponentHandler = null;
-
- /**
- * Fire PropertyChange listener, if one is registered,
- * when shown/hidden..
- */
- protected class AccessibleComponentHandler implements java.awt.event.ComponentListener {
- public void componentHidden(java.awt.event.ComponentEvent e) {
- AccessibleDialog.this.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- javax.accessibility.AccessibleState.VISIBLE, null);
- }
-
- public void componentShown(java.awt.event.ComponentEvent e) {
- AccessibleDialog.this.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- null, javax.accessibility.AccessibleState.VISIBLE);
- }
-
- public void componentMoved(java.awt.event.ComponentEvent e) {
- }
-
- public void componentResized(java.awt.event.ComponentEvent e) {
- }
- } // inner class AccessibleComponentHandler
-
- protected java.awt.event.WindowListener accessibleWindowHandler = null;
-
- /**
- * Fire PropertyChange listener, if one is registered,
- * when window events happen
- */
- protected class AccessibleWindowHandler implements java.awt.event.WindowListener {
- /** Invoked when the Window is set to be the active Window. */
- public void windowActivated(java.awt.event.WindowEvent e) {
- AccessibleDialog.this.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- null, javax.accessibility.AccessibleState.ACTIVE);
- if (Build.DEBUG) {
- System.err.println("[Dialog] " + getTitle() + " is now active");
- }
- }
-
- /** Invoked when a window has been closed as the result of calling dispose on the window. */
- public void windowClosed(java.awt.event.WindowEvent e) {
- if (Build.DEBUG) {
- System.err.println("[Dialog] " + getTitle() + " has been closed");
- }
- }
-
- /** Invoked when the user attempts to close the window from the window's system menu. */
- public void windowClosing(java.awt.event.WindowEvent e) {
- if (Build.DEBUG) {
- System.err.println("[Dialog] " + getTitle() + " is closing");
- }
- }
-
- /** Invoked when a Window is no longer the active Window. */
- public void windowDeactivated(java.awt.event.WindowEvent e) {
- AccessibleDialog.this.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- javax.accessibility.AccessibleState.ACTIVE, null);
- if (Build.DEBUG) {
- System.err.println("[Dialog] " + getTitle() + " is no longer active");
- }
- }
-
- /** Invoked when a window is changed from a minimized to a normal state. */
- public void windowDeiconified(java.awt.event.WindowEvent e) {
- if (Build.DEBUG) {
- System.err.println("[Dialog] " + getTitle() + " has been deiconified");
- }
- }
-
- /** Invoked when a window is changed from a normal to a minimized state. */
- public void windowIconified(java.awt.event.WindowEvent e) {
- if (Build.DEBUG) {
- System.err.println("[Dialog] " + getTitle() + " has been iconified");
- }
- }
-
- /** Invoked the first time a window is made visible. */
- public void windowOpened(java.awt.event.WindowEvent e) {
- if (Build.DEBUG) {
- System.err.println("[Dialog] " + getTitle() + " has been opened");
- }
- }
-
- } // inner class AccessibleWindowHandler
-
- protected java.awt.event.ContainerListener accessibleContainerHandler = null;
-
- /**
- * Fire PropertyChange listener, if one is registered,
- * when children added/removed.
- */
-
- protected class AccessibleContainerHandler implements java.awt.event.ContainerListener {
- public void componentAdded(java.awt.event.ContainerEvent e) {
- java.awt.Component c = e.getChild();
- if (c != null && c instanceof javax.accessibility.Accessible) {
- AccessibleDialog.this.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- null, ((javax.accessibility.Accessible) c).getAccessibleContext());
- }
- }
- public void componentRemoved(java.awt.event.ContainerEvent e) {
- java.awt.Component c = e.getChild();
- if (c != null && c instanceof javax.accessibility.Accessible) {
- AccessibleDialog.this.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- ((javax.accessibility.Accessible) c).getAccessibleContext(), null);
- }
- }
- }
-
- protected int propertyChangeListenerCount = 0;
-
- /**
- * Add a PropertyChangeListener to the listener list.
- *
- * @param listener The PropertyChangeListener to be added
- */
- public void addPropertyChangeListener(java.beans.PropertyChangeListener listener) {
- if (propertyChangeListenerCount++ == 0) {
- accessibleWindowHandler = new AccessibleWindowHandler();
- Dialog.this.addWindowListener(accessibleWindowHandler);
-
- accessibleContainerHandler = new AccessibleContainerHandler();
- Dialog.this.addContainerListener(accessibleContainerHandler);
-
- accessibleComponentHandler = new AccessibleComponentHandler();
- Dialog.this.addComponentListener(accessibleComponentHandler);
- }
- super.addPropertyChangeListener(listener);
- }
-
- /**
- * Remove a PropertyChangeListener from the listener list.
- * This removes a PropertyChangeListener that was registered
- * for all properties.
- *
- * @param listener The PropertyChangeListener to be removed
- */
- public void removePropertyChangeListener(java.beans.PropertyChangeListener listener) {
- if (--propertyChangeListenerCount == 0) {
- Dialog.this.removeComponentListener(accessibleComponentHandler);
- accessibleComponentHandler = null;
-
- Dialog.this.removeContainerListener(accessibleContainerHandler);
- accessibleContainerHandler = null;
-
- Dialog.this.removeWindowListener(accessibleWindowHandler);
- accessibleWindowHandler = null;
- }
- super.removePropertyChangeListener(listener);
- }
-
- /*
- * AccessibleComponent
- */
-
- /** Returns the background color of the object */
- public java.awt.Color getBackground() {
- try {
- return new java.awt.Color(unoAccessibleComponent.getBackground());
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public void setBackground(java.awt.Color c) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the foreground color of the object */
- public java.awt.Color getForeground() {
- try {
- return new java.awt.Color(unoAccessibleComponent.getForeground());
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public void setForeground(java.awt.Color c) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.Cursor getCursor() {
- // Not supported by UNO accessibility API
- return null;
- }
-
- public void setCursor(java.awt.Cursor cursor) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.Font getFont() {
- // FIXME
- return null;
- }
-
- public void setFont(java.awt.Font f) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.FontMetrics getFontMetrics(java.awt.Font f) {
- // FIXME
- return null;
- }
-
- public boolean isEnabled() {
- return Dialog.this.isEnabled();
- }
-
- public void setEnabled(boolean b) {
- // Not supported by UNO accessibility API
- }
-
- public boolean isVisible() {
- return Dialog.this.isVisible();
- }
-
- public void setVisible(boolean b) {
- // Not supported by UNO accessibility API
- }
-
- public boolean isShowing() {
- return Dialog.this.isShowing();
- }
-
- public boolean contains(java.awt.Point p) {
- try {
- return unoAccessibleComponent.containsPoint(new com.sun.star.awt.Point(p.x, p.y));
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- }
- }
-
- /** Returns the location of the object on the screen. */
- public java.awt.Point getLocationOnScreen() {
- try {
- com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocationOnScreen();
- return new java.awt.Point(unoPoint.X, unoPoint.Y);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the location of this component in the form of a point specifying the component's top-left corner */
- public java.awt.Point getLocation() {
- try {
- com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocation();
- return new java.awt.Point( unoPoint.X, unoPoint.Y );
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Moves this component to a new location */
- public void setLocation(java.awt.Point p) {
- // Not supported by UNO accessibility API
- }
-
- /** Gets the bounds of this component in the form of a Rectangle object */
- public java.awt.Rectangle getBounds() {
- try {
- com.sun.star.awt.Rectangle unoRect = unoAccessibleComponent.getBounds();
- return new java.awt.Rectangle(unoRect.X, unoRect.Y, unoRect.Width, unoRect.Height);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Moves and resizes this component to conform to the new bounding rectangle r */
- public void setBounds(java.awt.Rectangle r) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the size of this component in the form of a Dimension object */
- public java.awt.Dimension getSize() {
- try {
- com.sun.star.awt.Size unoSize = unoAccessibleComponent.getSize();
- return new java.awt.Dimension(unoSize.Width, unoSize.Height);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Resizes this component so that it has width d.width and height d.height */
- public void setSize(java.awt.Dimension d) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
- public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
- try {
- java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(
- unoAccessibleComponent.getAccessibleAtPoint(new com.sun.star.awt.Point(p.x, p.y)));
-
- return (javax.accessibility.Accessible) c;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public boolean isFocusTraversable() {
- return Dialog.this.isFocusable();
- }
-
- public void requestFocus() {
- unoAccessibleComponent.grabFocus();
- }
- }
-}
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/FocusTraversalPolicy.java b/accessibility/bridge/org/openoffice/java/accessibility/FocusTraversalPolicy.java
deleted file mode 100644
index 0f1c03c94..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/FocusTraversalPolicy.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-
-public class FocusTraversalPolicy extends java.awt.FocusTraversalPolicy {
-
- protected javax.accessibility.Accessible getSelectedAccessibleChild(javax.accessibility.Accessible a) {
- javax.accessibility.AccessibleContext ac = a.getAccessibleContext();
- if (ac != null) {
- javax.accessibility.AccessibleSelection as = ac.getAccessibleSelection();
- if (as != null) {
- return as.getAccessibleSelection(0);
- }
- }
- return null;
- }
-
- /** Returns the Component that should receive the focus after aComponent */
- public java.awt.Component getComponentAfter(java.awt.Container focusCycleRoot,
- java.awt.Component aComponent) {
- return null;
- }
-
- /** Returns the Component that should receive the focus before aComponent */
- public java.awt.Component getComponentBefore(java.awt.Container focusCycleRoot,
- java.awt.Component aComponent) {
- return null;
- }
-
- /** Returns the default Component to focus */
- public java.awt.Component getDefaultComponent(java.awt.Container focusCycleRoot) {
- // getDefaultComponent must not return null for Windows to make them focusable.
- if (focusCycleRoot instanceof NativeFrame) {
- java.awt.Component c = ((NativeFrame) focusCycleRoot).getInitialComponent();
- if (c != null) {
- return c;
- }
- }
-
- if (focusCycleRoot instanceof javax.accessibility.Accessible) {
- return (java.awt.Component) getSelectedAccessibleChild((javax.accessibility.Accessible) focusCycleRoot);
- }
- return null;
- }
-
- /** Returns the first Component in the traversal cycle */
- public java.awt.Component getFirstComponent(java.awt.Container focusCycleRoot) {
- return null;
- }
-
- /** Returns the Component that should receive the focus when a Window is made visible for the first time */
- public java.awt.Component getInitialComponent(java.awt.Window window) {
- if (window instanceof NativeFrame) {
- return ((NativeFrame) window).getInitialComponent();
- }
- return null;
- }
-
- /** Returns the last Component in the traversal cycle */
- public java.awt.Component getLastComponent(java.awt.Container focusCycleRoot) {
- return null;
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Frame.java b/accessibility/bridge/org/openoffice/java/accessibility/Frame.java
deleted file mode 100644
index 7768afdc8..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/Frame.java
+++ /dev/null
@@ -1,646 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import com.sun.star.uno.*;
-import com.sun.star.accessibility.*;
-
-public class Frame extends java.awt.Frame implements javax.accessibility.Accessible, NativeFrame {
- protected XAccessibleComponent unoAccessibleComponent;
-
- boolean opened = false;
- boolean visible = false;
- boolean active = false;
-
- java.awt.EventQueue eventQueue = null;
-
- protected Frame(XAccessibleComponent xAccessibleComponent) {
- initialize(xAccessibleComponent);
- }
-
- protected Frame(String name, XAccessibleComponent xAccessibleComponent) {
- super(name);
- initialize(xAccessibleComponent);
- }
-
- private void initialize(XAccessibleComponent xAccessibleComponent) {
- unoAccessibleComponent = xAccessibleComponent;
- eventQueue = java.awt.Toolkit.getDefaultToolkit().getSystemEventQueue();
- XAccessibleEventBroadcaster broadcaster = (XAccessibleEventBroadcaster)
- UnoRuntime.queryInterface(XAccessibleEventBroadcaster.class,
- unoAccessibleComponent);
- if (broadcaster != null) {
- broadcaster.addEventListener(new AccessibleFrameListener());
- }
- }
-
- java.awt.Component initialComponent = null;
-
- public java.awt.Component getInitialComponent() {
- return initialComponent;
- }
-
- public void setInitialComponent(java.awt.Component c) {
- initialComponent = c;
- }
-
- public Integer getHWND() {
- return null;
- }
-
- /**
- * Determines whether this <code>Component</code> is showing on screen.
- * This means that the component must be visible, and it must be in a
- * <code>container</code> that is visible and showing.
- * @see #addNotify
- * @see #removeNotify
- * @since JDK1.0
- */
- public boolean isShowing() {
- if (isVisible()) {
- java.awt.Container parent = getParent();
- return (parent == null) || parent.isShowing();
- }
- return false;
- }
-
- /**
- * Makes this <code>Component</code> displayable by connecting it to a
- * native screen resource.
- * This method is called internally by the toolkit and should
- * not be called directly by programs.
- * @see #isDisplayable
- * @see #removeNotify
- * @since JDK1.0
- */
- public void addNotify() {
-// createHierarchyEvents(0, null, null, 0, false);
- }
-
- /**
- * Makes this <code>Component</code> undisplayable by destroying it native
- * screen resource.
- * This method is called by the toolkit internally and should
- * not be called directly by programs.
- * @see #isDisplayable
- * @see #addNotify
- * @since JDK1.0
- */
- public void removeNotify() {
- }
-
- /**
- * Determines if the object is visible. Note: this means that the
- * object intends to be visible; however, it may not in fact be
- * showing on the screen because one of the objects that this object
- * is contained by is not visible. To determine if an object is
- * showing on the screen, use <code>isShowing</code>.
- *
- * @return true if object is visible; otherwise, false
- */
- public boolean isVisible(){
- return visible;
- }
-
- /**
- * Shows or hides this component depending on the value of parameter
- * <code>b</code>.
- * @param b if <code>true</code>, shows this component;
- * otherwise, hides this component
- * @see #isVisible
- * @since JDK1.1
- */
- public void setVisible(boolean b) {
- if (visible != b){
- visible = b;
- if (b) {
- // If it is the first show, fire WINDOW_OPENED event
- if (!opened) {
- postWindowEvent(java.awt.event.WindowEvent.WINDOW_OPENED);
- opened = true;
- }
- postComponentEvent(java.awt.event.ComponentEvent.COMPONENT_SHOWN);
- } else {
- postComponentEvent(java.awt.event.ComponentEvent.COMPONENT_HIDDEN);
- }
- }
- }
-
- public void dispose() {
- setVisible(false);
- postWindowEvent(java.awt.event.WindowEvent.WINDOW_CLOSED);
- }
-
- protected void postWindowEvent(int i) {
- eventQueue.postEvent(new java.awt.event.WindowEvent(this, i));
- }
-
- protected void postComponentEvent(int i) {
- eventQueue.postEvent(new java.awt.event.ComponentEvent(this, i));
- }
-
- /**
- * Update the proxy objects appropriatly on property change events
- */
- protected class AccessibleFrameListener implements XAccessibleEventListener {
-
- protected AccessibleFrameListener() {
- }
-
- // The only expected state changes are ACTIVE and VISIBLE
- protected void setComponentState(short state, boolean enable) {
- switch (state) {
- case AccessibleStateType.ACTIVE:
- active = enable;
- if (enable) {
- AccessibleObjectFactory.postWindowActivated(Frame.this);
- } else {
- AccessibleObjectFactory.postWindowLostFocus(Frame.this);
- }
- break;
- case AccessibleStateType.ICONIFIED:
- if (Build.DEBUG) {
- System.err.println("[frame]" + getTitle() + (enable ? " is now " : " is no longer ") + "iconified");
- }
- postWindowEvent(enable ?
- java.awt.event.WindowEvent.WINDOW_ICONIFIED :
- java.awt.event.WindowEvent.WINDOW_DEICONIFIED);
- break;
- case AccessibleStateType.VISIBLE:
- Frame.this.setVisible(enable);
- break;
- default:
- if (Build.DEBUG) {
- System.err.println("[frame]: " + getTitle() + "unexpected state change " + state);
- }
- break;
- }
- }
-
- /** Updates the accessible name and fires the appropriate PropertyChangedEvent */
- protected void handleNameChangedEvent(Object any) {
- try {
- String title = AnyConverter.toString(any);
- setTitle(title);
- // This causes the property change event to be fired in the VCL thread
- // context. If this causes problems, it has to be deligated to the java
- // dispatch thread ..
- javax.accessibility.AccessibleContext ac = accessibleContext;
- if (ac!= null) {
- ac.setAccessibleName(title);
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /** Updates the accessible description and fires the appropriate PropertyChangedEvent */
- protected void handleDescriptionChangedEvent(Object any) {
- try {
- // This causes the property change event to be fired in the VCL thread
- // context. If this causes problems, it has to be deligated to the java
- // dispatch thread ..
- javax.accessibility.AccessibleContext ac = accessibleContext;
- if (ac!= null) {
- ac.setAccessibleDescription(AnyConverter.toString(any));
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /** Updates the internal states and fires the appropriate PropertyChangedEvent */
- protected void handleStateChangedEvent(Object any1, Object any2) {
- try {
- if (AnyConverter.isShort(any1)) {
- setComponentState(AnyConverter.toShort(any1), false);
- }
-
- if (AnyConverter.isShort(any2)) {
- setComponentState(AnyConverter.toShort(any2), true);
- }
- }
-
- catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /** Fires a visible data property change event */
- protected void handleVisibleDataEvent() {
- javax.accessibility.AccessibleContext ac = accessibleContext;
- if (ac != null) {
- ac.firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_VISIBLE_DATA_PROPERTY, null, null);
- }
- }
-
- /** Called by OpenOffice process to notify property changes */
- public void notifyEvent(AccessibleEventObject event) {
- switch (event.EventId) {
- case AccessibleEventId.NAME_CHANGED:
- // Set the accessible name for the corresponding context, which will fire a property
- // change event itself
- handleNameChangedEvent(event.NewValue);
- break;
- case AccessibleEventId.DESCRIPTION_CHANGED:
- // Set the accessible description for the corresponding context, which will fire a property
- // change event itself - so do not set propertyName !
- handleDescriptionChangedEvent(event.NewValue);
- break;
- case AccessibleEventId.STATE_CHANGED:
- // Update the internal state set and fire the appropriate PropertyChangedEvent
- handleStateChangedEvent(event.OldValue, event.NewValue);
- break;
- case AccessibleEventId.CHILD:
- if (AnyConverter.isObject(event.OldValue)) {
- AccessibleObjectFactory.removeChild(Frame.this, event.OldValue);
- } else if (AnyConverter.isObject(event.NewValue)) {
- AccessibleObjectFactory.addChild(Frame.this, event.NewValue);
- }
- break;
- case AccessibleEventId.VISIBLE_DATA_CHANGED:
- case AccessibleEventId.BOUNDRECT_CHANGED:
- handleVisibleDataEvent();
- break;
- default:
- // Warn about unhandled events
- if(Build.DEBUG) {
- System.out.println(this + ": unhandled accessibility event id=" + event.EventId);
- }
- }
- }
-
- /** Called by OpenOffice process to notify that the UNO component is disposing */
- public void disposing(com.sun.star.lang.EventObject eventObject) {
- }
- }
-
- protected javax.accessibility.AccessibleContext accessibleContext = null;
-
- /** Returns the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext getAccessibleContext() {
- if (accessibleContext == null) {
- accessibleContext = new AccessibleFrame();
- accessibleContext.setAccessibleName(getTitle());
- }
- return accessibleContext;
- }
-
- protected class AccessibleFrame extends java.awt.Frame.AccessibleAWTFrame {
- protected AccessibleFrame() {
- super();
- }
-
- protected java.awt.event.ComponentListener accessibleComponentHandler = null;
-
- /**
- * Fire PropertyChange listener, if one is registered,
- * when shown/hidden..
- */
- protected class AccessibleComponentHandler implements java.awt.event.ComponentListener {
- public void componentHidden(java.awt.event.ComponentEvent e) {
- AccessibleFrame.this.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- javax.accessibility.AccessibleState.VISIBLE, null);
- }
-
- public void componentShown(java.awt.event.ComponentEvent e) {
- AccessibleFrame.this.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- null, javax.accessibility.AccessibleState.VISIBLE);
- }
-
- public void componentMoved(java.awt.event.ComponentEvent e) {
- }
-
- public void componentResized(java.awt.event.ComponentEvent e) {
- }
- } // inner class AccessibleComponentHandler
-
- protected java.awt.event.WindowListener accessibleWindowHandler = null;
-
- /**
- * Fire PropertyChange listener, if one is registered,
- * when window events happen
- */
- protected class AccessibleWindowHandler implements java.awt.event.WindowListener {
- /** Invoked when the Window is set to be the active Window. */
- public void windowActivated(java.awt.event.WindowEvent e) {
- AccessibleFrame.this.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- null, javax.accessibility.AccessibleState.ACTIVE);
- if (Build.DEBUG) {
- System.err.println("[frame] " + getTitle() + " is now active");
- }
- }
-
- /** Invoked when a window has been closed as the result of calling dispose on the window. */
- public void windowClosed(java.awt.event.WindowEvent e) {
- if (Build.DEBUG) {
- System.err.println("[frame] " + getTitle() + " has been closed");
- }
- }
-
- /** Invoked when the user attempts to close the window from the window's system menu. */
- public void windowClosing(java.awt.event.WindowEvent e) {
- if (Build.DEBUG) {
- System.err.println("[frame] " + getTitle() + " is closing");
- }
- }
-
- /** Invoked when a Window is no longer the active Window. */
- public void windowDeactivated(java.awt.event.WindowEvent e) {
- AccessibleFrame.this.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- javax.accessibility.AccessibleState.ACTIVE, null);
- if (Build.DEBUG) {
- System.err.println("[frame] " + getTitle() + " is no longer active");
- }
- }
-
- /** Invoked when a window is changed from a minimized to a normal state. */
- public void windowDeiconified(java.awt.event.WindowEvent e) {
- if (Build.DEBUG) {
- System.err.println("[frame] " + getTitle() + " is no longer iconified");
- }
- }
-
- /** Invoked when a window is changed from a normal to a minimized state. */
- public void windowIconified(java.awt.event.WindowEvent e) {
- if (Build.DEBUG) {
- System.err.println("[frame] " + getTitle() + " has been iconified");
- }
- }
-
- /** Invoked the first time a window is made visible. */
- public void windowOpened(java.awt.event.WindowEvent e) {
- if (Build.DEBUG) {
- System.err.println("[frame] " + getTitle() + " has been opened");
- }
- }
-
- } // inner class AccessibleWindowHandler
-
- protected java.awt.event.ContainerListener accessibleContainerHandler = null;
-
- /**
- * Fire PropertyChange listener, if one is registered,
- * when children added/removed.
- */
-
- protected class AccessibleContainerHandler implements java.awt.event.ContainerListener {
- public void componentAdded(java.awt.event.ContainerEvent e) {
- java.awt.Component c = e.getChild();
- if (c != null && c instanceof javax.accessibility.Accessible) {
- AccessibleFrame.this.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- null, ((javax.accessibility.Accessible) c).getAccessibleContext());
- }
- }
- public void componentRemoved(java.awt.event.ContainerEvent e) {
- java.awt.Component c = e.getChild();
- if (c != null && c instanceof javax.accessibility.Accessible) {
- AccessibleFrame.this.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- ((javax.accessibility.Accessible) c).getAccessibleContext(), null);
- }
- }
- }
-
- protected int propertyChangeListenerCount = 0;
-
- /**
- * Add a PropertyChangeListener to the listener list.
- *
- * @param listener The PropertyChangeListener to be added
- */
- public void addPropertyChangeListener(java.beans.PropertyChangeListener listener) {
- if (propertyChangeListenerCount++ == 0) {
- accessibleWindowHandler = new AccessibleWindowHandler();
- Frame.this.addWindowListener(accessibleWindowHandler);
-
- accessibleContainerHandler = new AccessibleContainerHandler();
- Frame.this.addContainerListener(accessibleContainerHandler);
-
- accessibleComponentHandler = new AccessibleComponentHandler();
- Frame.this.addComponentListener(accessibleComponentHandler);
- }
- super.addPropertyChangeListener(listener);
- }
-
- /**
- * Remove a PropertyChangeListener from the listener list.
- * This removes a PropertyChangeListener that was registered
- * for all properties.
- *
- * @param listener The PropertyChangeListener to be removed
- */
- public void removePropertyChangeListener(java.beans.PropertyChangeListener listener) {
- if (--propertyChangeListenerCount == 0) {
- Frame.this.removeComponentListener(accessibleComponentHandler);
- accessibleComponentHandler = null;
-
- Frame.this.removeContainerListener(accessibleContainerHandler);
- accessibleContainerHandler = null;
-
- Frame.this.removeWindowListener(accessibleWindowHandler);
- accessibleWindowHandler = null;
- }
- super.removePropertyChangeListener(listener);
- }
-
- /**
- * Get the state set of this object.
- *
- * @return an instance of AccessibleState containing the current state
- * of the object
- * @see AccessibleState
- */
- public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
- javax.accessibility.AccessibleStateSet states = super.getAccessibleStateSet();
- if ((getExtendedState() & java.awt.Frame.ICONIFIED) > 0) {
- states.add(javax.accessibility.AccessibleState.ICONIFIED);
- }
- return states;
- }
-
- /*
- * AccessibleComponent
- */
-
- /** Returns the background color of the object */
- public java.awt.Color getBackground() {
- try {
- return new java.awt.Color(unoAccessibleComponent.getBackground());
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public void setBackground(java.awt.Color c) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the foreground color of the object */
- public java.awt.Color getForeground() {
- try {
- return new java.awt.Color(unoAccessibleComponent.getForeground());
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public void setForeground(java.awt.Color c) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.Cursor getCursor() {
- // Not supported by UNO accessibility API
- return null;
- }
-
- public void setCursor(java.awt.Cursor cursor) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.Font getFont() {
- // FIXME
- return null;
- }
-
- public void setFont(java.awt.Font f) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.FontMetrics getFontMetrics(java.awt.Font f) {
- // FIXME
- return null;
- }
-
- public boolean isEnabled() {
- return Frame.this.isEnabled();
- }
-
- public void setEnabled(boolean b) {
- // Not supported by UNO accessibility API
- }
-
- public boolean isVisible() {
- return Frame.this.isVisible();
- }
-
- public void setVisible(boolean b) {
- // Not supported by UNO accessibility API
- }
-
- public boolean isShowing() {
- return Frame.this.isShowing();
- }
-
- public boolean contains(java.awt.Point p) {
- try {
- return unoAccessibleComponent.containsPoint(new com.sun.star.awt.Point(p.x, p.y));
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- }
- }
-
- /** Returns the location of the object on the screen. */
- public java.awt.Point getLocationOnScreen() {
- try {
- com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocationOnScreen();
- return new java.awt.Point(unoPoint.X, unoPoint.Y);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the location of this component in the form of a point specifying the component's top-left corner */
- public java.awt.Point getLocation() {
- try {
- com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocation();
- return new java.awt.Point( unoPoint.X, unoPoint.Y );
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Moves this component to a new location */
- public void setLocation(java.awt.Point p) {
- // Not supported by UNO accessibility API
- }
-
- /** Gets the bounds of this component in the form of a Rectangle object */
- public java.awt.Rectangle getBounds() {
- try {
- com.sun.star.awt.Rectangle unoRect = unoAccessibleComponent.getBounds();
- return new java.awt.Rectangle(unoRect.X, unoRect.Y, unoRect.Width, unoRect.Height);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Moves and resizes this component to conform to the new bounding rectangle r */
- public void setBounds(java.awt.Rectangle r) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the size of this component in the form of a Dimension object */
- public java.awt.Dimension getSize() {
- try {
- com.sun.star.awt.Size unoSize = unoAccessibleComponent.getSize();
- return new java.awt.Dimension(unoSize.Width, unoSize.Height);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Resizes this component so that it has width d.width and height d.height */
- public void setSize(java.awt.Dimension d) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
- public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
- try {
- java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(
- unoAccessibleComponent.getAccessibleAtPoint(new com.sun.star.awt.Point(p.x, p.y)));
-
- return (javax.accessibility.Accessible) c;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public boolean isFocusTraversable() {
- return Frame.this.isFocusable();
- }
-
- public void requestFocus() {
- unoAccessibleComponent.grabFocus();
- }
- }
-}
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Icon.java b/accessibility/bridge/org/openoffice/java/accessibility/Icon.java
deleted file mode 100644
index 1dd151eaf..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/Icon.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.*;
-import com.sun.star.uno.*;
-
-import javax.accessibility.AccessibleState;
-import javax.accessibility.AccessibleStateSet;
-
-
-/**
- */
-public class Icon extends Component implements javax.accessibility.Accessible {
- protected Icon(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
- super(xAccessible, xAccessibleContext);
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleIcon();
- }
-
- protected class AccessibleIcon extends AccessibleUNOComponent {
- /**
- * Though the class is abstract, this should be called by all sub-classes
- */
- protected AccessibleIcon() {
- super();
- }
-
- /** Gets the AccessibleText associated with this object presenting text on the display */
- public javax.accessibility.AccessibleIcon[] getAccessibleIcon() {
- try {
- XAccessibleImage unoAccessibleImage = (XAccessibleImage) UnoRuntime.queryInterface(XAccessibleImage.class,
- unoAccessibleComponent);
-
- if (unoAccessibleImage != null) {
- javax.accessibility.AccessibleIcon[] icons = {
- new AccessibleIconImpl(unoAccessibleImage)
- };
-
- return icons;
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
-
- return null;
- }
-
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Label.java b/accessibility/bridge/org/openoffice/java/accessibility/Label.java
deleted file mode 100644
index 62c2155c7..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/Label.java
+++ /dev/null
@@ -1,130 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.*;
-import com.sun.star.uno.*;
-
-import javax.accessibility.AccessibleState;
-import javax.accessibility.AccessibleStateSet;
-
-
-/**
- */
-public class Label extends Component implements javax.accessibility.Accessible {
- protected Label(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
- super(xAccessible, xAccessibleContext);
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleLabel();
- }
-
- protected class AccessibleLabel extends AccessibleUNOComponent {
- /**
- * Though the class is abstract, this should be called by all sub-classes
- */
- protected AccessibleLabel() {
- super();
- }
-
- /*
- * AccessibleContext
- */
-
- /** Gets the role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return javax.accessibility.AccessibleRole.LABEL;
- }
-
- /** Gets the AccessibleText associated with this object presenting text on the display */
- public javax.accessibility.AccessibleText getAccessibleText() {
-
- if (disposed)
- return null;
-
- try {
- XAccessibleText unoAccessibleText = (XAccessibleText) UnoRuntime.queryInterface(XAccessibleText.class,
- unoAccessibleContext);
-
- if (unoAccessibleText != null) {
- return new AccessibleTextImpl(unoAccessibleText);
- } else {
- return null;
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Returns the relation set of this object */
- public javax.accessibility.AccessibleRelationSet getAccessibleRelationSet() {
- try {
- XAccessibleRelationSet unoAccessibleRelationSet = unoAccessibleContext.getAccessibleRelationSet();
-
- if (unoAccessibleRelationSet == null) {
- return null;
- }
-
- javax.accessibility.AccessibleRelationSet relationSet = new javax.accessibility.AccessibleRelationSet();
- int count = unoAccessibleRelationSet.getRelationCount();
-
- for (int i = 0; i < count; i++) {
- AccessibleRelation unoAccessibleRelation = unoAccessibleRelationSet.getRelation(i);
-
- switch (unoAccessibleRelation.RelationType) {
- case AccessibleRelationType.LABEL_FOR:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.LABEL_FOR,
- getAccessibleComponents(
- unoAccessibleRelation.TargetSet)));
-
- break;
-
- case AccessibleRelationType.MEMBER_OF:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.MEMBER_OF,
- getAccessibleComponents(
- unoAccessibleRelation.TargetSet)));
-
- break;
-
- default:
- break;
- }
- }
-
- return relationSet;
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/List.java b/accessibility/bridge/org/openoffice/java/accessibility/List.java
deleted file mode 100644
index 7a0a86d16..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/List.java
+++ /dev/null
@@ -1,452 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import javax.accessibility.AccessibleContext;
-import javax.accessibility.AccessibleState;
-
-import com.sun.star.uno.AnyConverter;
-import com.sun.star.uno.UnoRuntime;
-import com.sun.star.accessibility.*;
-
-public class List extends DescendantManager implements javax.accessibility.Accessible {
-
- protected List(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
- super(xAccessible, xAccessibleContext);
- }
-
- protected void setActiveDescendant(javax.accessibility.Accessible descendant) {
- javax.accessibility.Accessible oldAD = activeDescendant;
- activeDescendant = descendant;
- firePropertyChange(AccessibleContext.ACCESSIBLE_ACTIVE_DESCENDANT_PROPERTY,
- oldAD, descendant);
- }
-
- protected void setActiveDescendant(Object any) {
- javax.accessibility.Accessible descendant = null;
- try {
- if (AnyConverter.isObject(any)) {
- XAccessible unoAccessible = (XAccessible) AnyConverter.toObject(
- AccessibleObjectFactory.XAccessibleType, any);
- if (unoAccessible != null) {
- // FIXME: have to handle non transient objects here ..
- descendant = new ListItem(unoAccessible);
- if (Build.DEBUG) {
- try {
- if (Build.DEBUG) {
- System.err.println("[List] retrieved active descendant event: new descendant is " +
- unoAccessible.getAccessibleContext().getAccessibleName());
- }
- } catch (java.lang.NullPointerException e) {
- System.err.println("*** ERROR *** new active descendant not accessible");
- }
- }
- }
- }
- setActiveDescendant(descendant);
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- protected void add(XAccessible unoAccessible) {
- if (unoAccessible != null) {
- ListItem item = new ListItem(unoAccessible);
- // The AccessBridge for Windows expects an instance of AccessibleContext
- // as parameters
- firePropertyChange(AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- null, item.getAccessibleContext());
- }
- }
-
- protected void remove(XAccessible unoAccessible) {
- if (unoAccessible != null) {
- ListItem item = new ListItem(unoAccessible);
- // The AccessBridge for Windows expects an instance of AccessibleContext
- // as parameters
- firePropertyChange(AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- item.getAccessibleContext(), null);
- }
- }
-
- protected void add(Object any) {
- try {
- add((XAccessible) AnyConverter.toObject(AccessibleObjectFactory.XAccessibleType, any));
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- protected void remove(Object any) {
- try {
- remove((XAccessible) AnyConverter.toObject(AccessibleObjectFactory.XAccessibleType, any));
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /**
- * Update the proxy objects appropriatly on property change events
- */
- protected class AccessibleListListener extends AccessibleDescendantManagerListener {
-
- protected AccessibleListListener() {
- super();
- }
-
- /** Called by OpenOffice process to notify property changes */
- public void notifyEvent(AccessibleEventObject event) {
- switch (event.EventId) {
- case AccessibleEventId.ACTIVE_DESCENDANT_CHANGED:
- setActiveDescendant(event.NewValue);
- break;
- case AccessibleEventId.CHILD:
- if (AnyConverter.isObject(event.OldValue)) {
- remove(event.OldValue);
- }
- if (AnyConverter.isObject(event.NewValue)) {
- add(event.NewValue);
- }
- break;
- case AccessibleEventId.INVALIDATE_ALL_CHILDREN:
- // Since List items a transient a child events are mostly used
- // to attach/detach listeners, it is save to ignore it here
- break;
- default:
- super.notifyEvent(event);
- }
- }
- }
-
- protected XAccessibleEventListener createEventListener() {
- return new AccessibleListListener();
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleList();
- }
-
- protected class AccessibleList extends AccessibleDescendantManager {
-
- /** Gets the role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return javax.accessibility.AccessibleRole.LIST;
- }
-
- /** Returns the specified Accessible child of the object */
- public javax.accessibility.Accessible getAccessibleChild(int i) {
- javax.accessibility.Accessible child = null;
- try {
- XAccessible xAccessible = unoAccessibleContext.getAccessibleChild(i);
- if (xAccessible != null) {
- // Re-use the active descandant wrapper if possible
- javax.accessibility.Accessible activeDescendant = List.this.activeDescendant;
- if ((activeDescendant instanceof ListItem) && xAccessible.equals(((ListItem) activeDescendant).unoAccessible)) {
- child = activeDescendant;
- } else {
- child = new ListItem(xAccessible);
- }
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return child;
- }
-
- /*
- * AccessibleComponent
- */
-
- /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
- public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
- javax.accessibility.Accessible child = null;
- try {
- XAccessible xAccessible = unoAccessibleComponent.getAccessibleAtPoint(new com.sun.star.awt.Point(p.x, p.y));
- if (xAccessible != null) {
- // Re-use the active descandant wrapper if possible
- javax.accessibility.Accessible activeDescendant = List.this.activeDescendant;
- if ((activeDescendant instanceof ListItem) && xAccessible.equals(((ListItem) activeDescendant).unoAccessible)) {
- child = activeDescendant;
- } else {
- child = new ListItem(xAccessible);
- }
- }
- return child;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /*
- * AccessibleSelection
- */
-
- /** Returns an Accessible representing the specified selected child of the object */
- public javax.accessibility.Accessible getAccessibleSelection(int i) {
- javax.accessibility.Accessible child = null;
- try {
- XAccessible xAccessible = unoAccessibleSelection.getSelectedAccessibleChild(i);
- if (xAccessible != null) {
- // Re-use the active descandant wrapper if possible
- javax.accessibility.Accessible activeDescendant = List.this.activeDescendant;
- if ((activeDescendant instanceof ListItem) && xAccessible.equals(((ListItem) activeDescendant).unoAccessible)) {
- child = activeDescendant;
- } else {
- child = new ListItem(xAccessible);
- }
- } else if (Build.DEBUG) {
- System.out.println(i + "th selected child is not accessible");
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- if (Build.DEBUG) {
- System.err.println("IndexOutOfBoundsException caught for AccessibleList.getAccessibleSelection(" + i + ")");
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return child;
- }
- }
-
- class ListItem extends java.awt.Component implements javax.accessibility.Accessible {
-
- protected XAccessible unoAccessible;
-
- public ListItem(XAccessible xAccessible) {
- unoAccessible = xAccessible;
- }
-
- public Object[] create(Object[] targetSet) {
- try {
- java.util.ArrayList list = new java.util.ArrayList(targetSet.length);
- for (int i=0; i < targetSet.length; i++) {
- XAccessible xAccessible = (XAccessible) UnoRuntime.queryInterface(
- XAccessible.class, targetSet[i]);
- if (xAccessible != null) {
- list.add(new ListItem(xAccessible));
- }
- }
- list.trimToSize();
- return list.toArray();
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- javax.accessibility.AccessibleContext accessibleContext = null;
-
- /** Returns the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext getAccessibleContext() {
- if (accessibleContext == null) {
- try {
- XAccessibleContext xAccessibleContext = unoAccessible.getAccessibleContext();
- if (xAccessibleContext != null) {
- javax.accessibility.AccessibleContext ac = new AccessibleListItem(xAccessibleContext);
- if (ac != null) {
- ac.setAccessibleParent(List.this);
- accessibleContext = ac;
- }
- AccessibleStateAdapter.setComponentState(this, xAccessibleContext.getAccessibleStateSet());
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
- return accessibleContext;
- }
-
- protected class AccessibleListItem extends javax.accessibility.AccessibleContext {
-
- XAccessibleContext unoAccessibleContext;
-
- public AccessibleListItem(XAccessibleContext xAccessibleContext) {
- unoAccessibleContext = xAccessibleContext;
- }
-
- /** Returns the accessible name of this object */
- public String getAccessibleName() {
- try {
- return unoAccessibleContext.getAccessibleName();
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Sets the accessible name of this object */
- public void setAccessibleName(String name) {
- // Not supported
- }
-
- /** Returns the accessible name of this object */
- public String getAccessibleDescription() {
- try {
- return unoAccessibleContext.getAccessibleDescription();
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Sets the accessible name of this object */
- public void setAccessibleDescription(String name) {
- // Not supported
- }
-
- /** Returns the accessible role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- try {
- javax.accessibility.AccessibleRole role = AccessibleRoleAdapter.getAccessibleRole(
- unoAccessibleContext.getAccessibleRole());
- return (role != null) ? role : javax.accessibility.AccessibleRole.LABEL;
- } catch(com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the locale of the component */
- public java.util.Locale getLocale() throws java.awt.IllegalComponentStateException {
- try {
- com.sun.star.lang.Locale unoLocale = unoAccessibleContext.getLocale();
- return new java.util.Locale(unoLocale.Language, unoLocale.Country);
- } catch (IllegalAccessibleComponentStateException e) {
- throw new java.awt.IllegalComponentStateException(e.getMessage());
- } catch (com.sun.star.uno.RuntimeException e) {
- return List.this.getLocale();
- }
- }
-
- /** Gets the 0-based index of this object in its accessible parent */
- public int getAccessibleIndexInParent() {
- try {
- return unoAccessibleContext.getAccessibleIndexInParent();
- } catch (com.sun.star.uno.RuntimeException e) {
- return -1;
- }
- }
-
- /** Returns the number of accessible children of the object. */
- public int getAccessibleChildrenCount() {
- try {
- return unoAccessibleContext.getAccessibleChildCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Returns the specified Accessible child of the object. */
- public javax.accessibility.Accessible getAccessibleChild(int i) {
- javax.accessibility.Accessible child = null;
- try {
- XAccessible xAccessible = unoAccessibleContext.getAccessibleChild(i);
- // Re-use the active descandant wrapper if possible
- javax.accessibility.Accessible activeDescendant = List.this.activeDescendant;
- if ((activeDescendant instanceof ListItem) && ((ListItem) activeDescendant).unoAccessible.equals(xAccessible)) {
- child = activeDescendant;
- } else if (xAccessible != null) {
- child = new ListItem(xAccessible);
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return child;
- }
-
- /** Returns the state set of this object */
- public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
- try {
- return AccessibleStateAdapter.getAccessibleStateSet(ListItem.this,
- unoAccessibleContext.getAccessibleStateSet());
- } catch (com.sun.star.uno.RuntimeException e) {
- return AccessibleStateAdapter.getDefunctStateSet();
- }
- }
-
- /** Gets the AccessibleComponent associated with this object that has a graphical representation */
- public javax.accessibility.AccessibleComponent getAccessibleComponent() {
- try {
- XAccessibleComponent unoAccessibleComponent = (XAccessibleComponent)
- UnoRuntime.queryInterface(XAccessibleComponent.class, unoAccessibleContext);
- return (unoAccessibleComponent != null) ?
- new AccessibleComponentImpl(unoAccessibleComponent) : null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the AccessibleAction associated with this object that has a graphical representation */
- public javax.accessibility.AccessibleAction getAccessibleAction() {
- try {
- XAccessibleAction unoAccessibleAction = (XAccessibleAction)
- UnoRuntime.queryInterface(XAccessibleAction.class, unoAccessibleContext);
- return (unoAccessibleAction != null) ?
- new AccessibleActionImpl(unoAccessibleAction) : null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the AccessibleText associated with this object that has a graphical representation */
- public javax.accessibility.AccessibleText getAccessibleText() {
-
- if (disposed)
- return null;
-
- try {
- XAccessibleText unoAccessibleText = (XAccessibleText)
- UnoRuntime.queryInterface(XAccessibleText.class, unoAccessibleContext);
- return (unoAccessibleText != null) ?
- new AccessibleTextImpl(unoAccessibleText) : null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the AccessibleValue associated with this object that has a graphical representation */
- public javax.accessibility.AccessibleValue getAccessibleValue() {
- try {
- XAccessibleValue unoAccessibleValue = (XAccessibleValue)
- UnoRuntime.queryInterface(XAccessibleValue.class, unoAccessibleContext);
- return (unoAccessibleValue != null) ?
- new AccessibleValueImpl(unoAccessibleValue) : null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the AccessibleText associated with this object presenting text on the display */
- public javax.accessibility.AccessibleIcon[] getAccessibleIcon() {
- try {
- XAccessibleImage unoAccessibleImage = (XAccessibleImage)
- UnoRuntime.queryInterface(XAccessibleImage.class, unoAccessibleContext);
- if (unoAccessibleImage != null) {
- javax.accessibility.AccessibleIcon[] icons = { new AccessibleIconImpl(unoAccessibleImage) };
- return icons;
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return null;
- }
- }
- }
-}
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Menu.java b/accessibility/bridge/org/openoffice/java/accessibility/Menu.java
deleted file mode 100644
index 7ece90dcc..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/Menu.java
+++ /dev/null
@@ -1,328 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.*;
-import com.sun.star.uno.AnyConverter;
-import com.sun.star.uno.UnoRuntime;
-
-
-public class Menu extends AbstractButton
- implements javax.accessibility.Accessible {
- private java.util.Vector children;
- protected XAccessibleSelection unoAccessibleSelection = null;
-
- protected Menu(XAccessible xAccessible,
- XAccessibleContext xAccessibleContext) {
- super(xAccessible, xAccessibleContext);
-
- try {
- // Create a vector with the correct initial capacity
- int count = unoAccessibleContext.getAccessibleChildCount();
- children = new java.util.Vector(count);
-
- // Fill the vector with objects
- for (int i = 0; i < count; i++) {
- java.awt.Component c = getComponent(unoAccessibleContext.getAccessibleChild(i));
-
- if (c != null) {
- children.add(c);
- }
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- if (Build.DEBUG) {
- System.err.println(
- "RuntimeException caught during menu initialization: " +
- e.getMessage());
- }
-
- if (children == null) {
- children = new java.util.Vector(0);
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- }
- }
-
- protected synchronized void add(XAccessible unoAccessible) {
- // The AccessBridge for Windows expects an instance of AccessibleContext
- // as parameters
- java.awt.Component c = getComponent(unoAccessible);
-
- if (c != null) {
- try {
- children.add(unoAccessible.getAccessibleContext()
- .getAccessibleIndexInParent(), c);
- firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- null,
- ((javax.accessibility.Accessible) c).getAccessibleContext());
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
- }
-
- protected synchronized void remove(XAccessible unoAccessible) {
- // The AccessBridge for Windows expects an instance of AccessibleContext
- // as parameters
- java.awt.Component c = getComponent(unoAccessible);
-
- if (c != null) {
- try {
- children.remove(c);
- firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- ((javax.accessibility.Accessible) c).getAccessibleContext(),
- null);
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
- }
-
- protected void add(Object any) {
- try {
- add((XAccessible) AnyConverter.toObject(
- AccessibleObjectFactory.XAccessibleType, any));
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- protected void remove(Object any) {
- try {
- remove((XAccessible) AnyConverter.toObject(
- AccessibleObjectFactory.XAccessibleType, any));
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- protected synchronized int indexOf(Object child) {
- return children.indexOf(child);
- }
-
- protected java.awt.Component getComponent(XAccessible unoAccessible) {
- java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(unoAccessible);
-
- if (c == null) {
- c = AccessibleObjectFactory.createAccessibleComponent(unoAccessible);
-
- if (c instanceof javax.accessibility.Accessible) {
- ((javax.accessibility.Accessible) c).getAccessibleContext()
- .setAccessibleParent(this);
- }
- }
-
- return c;
- }
-
- protected XAccessibleEventListener createEventListener() {
- return new AccessibleMenuListener();
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleMenu();
- }
-
- /**
- * Update the proxy objects appropriatly on property change events
- */
- protected class AccessibleMenuListener
- extends AccessibleUNOComponentListener {
- protected AccessibleMenuListener() {
- super();
- }
-
- /** Called by OpenOffice process to notify property changes */
- public void notifyEvent(AccessibleEventObject event) {
- switch (event.EventId) {
- case AccessibleEventId.CHILD:
-
- if (AnyConverter.isObject(event.OldValue)) {
- remove(event.OldValue);
- }
-
- if (AnyConverter.isObject(event.NewValue)) {
- add(event.NewValue);
- }
-
- break;
-
- // #i56539# Java 1.5 does not fire ACCESSIBLE_SELECTION_PROPERTY for menus
- case AccessibleEventId.SELECTION_CHANGED:
- break;
-
- default:
- super.notifyEvent(event);
- }
- }
- }
-
- protected class AccessibleMenu extends AccessibleAbstractButton
- implements javax.accessibility.AccessibleSelection {
- protected AccessibleMenu() {
- unoAccessibleSelection = (XAccessibleSelection) UnoRuntime.queryInterface(XAccessibleSelection.class,
- unoAccessibleContext);
- }
-
- /** Gets the role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return javax.accessibility.AccessibleRole.MENU;
- }
-
- /** Gets the 0-based index of this object in its accessible parent */
- public int getAccessibleIndexInParent() {
- if (getAccessibleParent() instanceof Menu) {
- return ((Menu) getAccessibleParent()).indexOf(Menu.this);
- } else {
- return super.getAccessibleIndexInParent();
- }
- }
-
- /** Returns the number of accessible children of the object */
- public synchronized int getAccessibleChildrenCount() {
- return children.size();
- }
-
- /** Returns the specified Accessible child of the object */
- public synchronized javax.accessibility.Accessible getAccessibleChild(
- int i) {
- try {
- if (i < children.size()) {
- return (javax.accessibility.Accessible) children.get(i);
- } else {
- return null;
- }
- } catch (ArrayIndexOutOfBoundsException e) {
- return null;
- }
- }
-
- /** Returns the AccessibleSelection interface for this object */
- public javax.accessibility.AccessibleSelection getAccessibleSelection() {
- // This method is called to determine the SELECTABLE state of every
- // child, so don't do the query interface here.
- return this;
- }
-
- /*
- * AccessibleComponent
- */
-
- /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
- public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
- try {
- java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(unoAccessibleComponent.getAccessibleAtPoint(
- new com.sun.star.awt.Point(p.x, p.y)));
-
- return (javax.accessibility.Accessible) c;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /*
- * AccessibleSelection
- */
-
- /** Returns an Accessible representing the specified selected child of the object */
- public javax.accessibility.Accessible getAccessibleSelection(int i) {
- try {
- return (javax.accessibility.Accessible) getComponent(unoAccessibleSelection.getSelectedAccessibleChild(
- i));
- } catch (java.lang.Exception e) {
- /*
- * Possible exceptions are:
- * java.lang.NullPointerException
- * com.sun.star.uno.RuntimeException
- * com.sun.star.lang.IndexOutOfBoundsException
- */
- return null;
- }
- }
-
- /** Adds the specified Accessible child of the object to the object's selection */
- public void addAccessibleSelection(int i) {
- try {
- javax.accessibility.Accessible a = getAccessibleChild(i);
-
- // selecting menu items invokes the click action in Java 1.5
- if( a instanceof MenuItem )
- a.getAccessibleContext().getAccessibleAction().doAccessibleAction(0);
- else
- unoAccessibleSelection.selectAccessibleChild(i);
- } catch (java.lang.Exception e) {
- /*
- * Possible exceptions are:
- * java.lang.NullPointerException
- * com.sun.star.uno.RuntimeException
- * com.sun.star.lang.IndexOutOfBoundsException
- */
- }
- }
-
- /** Clears the selection in the object, so that no children in the object are selected */
- public void clearAccessibleSelection() {
- try {
- unoAccessibleSelection.clearAccessibleSelection();
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- /** Returns the number of Accessible children currently selected */
- public int getAccessibleSelectionCount() {
- try {
- return unoAccessibleSelection.getSelectedAccessibleChildCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Determines if the current child of this object is selected */
- public boolean isAccessibleChildSelected(int i) {
- try {
- return unoAccessibleSelection.isAccessibleChildSelected(i);
- } catch (java.lang.Exception e) {
- /*
- * Possible exceptions are:
- * java.lang.NullPointerException
- * com.sun.star.uno.RuntimeException
- * com.sun.star.lang.IndexOutOfBoundsException
- */
- return false;
- }
- }
-
- /** Removes the specified child of the object from the object's selection */
- public void removeAccessibleSelection(int i) {
- if (isAccessibleChildSelected(i)) {
- clearAccessibleSelection();
- }
- }
-
- /** Causes every child of the object to be selected if the object supports multiple selection */
- public void selectAllAccessibleSelection() {
- // not supported
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/MenuContainer.java b/accessibility/bridge/org/openoffice/java/accessibility/MenuContainer.java
deleted file mode 100644
index 090c122f3..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/MenuContainer.java
+++ /dev/null
@@ -1,167 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import javax.accessibility.AccessibleContext;
-
-import com.sun.star.uno.*;
-import com.sun.star.accessibility.*;
-
-/**
- * Specialized container for MenuBar and Popup-Menu(s)
- * FIXME: join with Menu ?
- */
-public class MenuContainer extends Container implements javax.accessibility.Accessible {
-
- protected XAccessibleSelection unoAccessibleSelection = null;
-
- protected MenuContainer(javax.accessibility.AccessibleRole role, XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
- super(role, xAccessible, xAccessibleContext);
- }
-
- protected class AccessibleMenuContainerListener extends AccessibleContainerListener {
-
- protected AccessibleMenuContainerListener() {
- super();
- }
-
- /** Called by OpenOffice process to notify property changes */
- public void notifyEvent(AccessibleEventObject event) {
- switch (event.EventId) {
-
- // #i56539# Java 1.5 does not fire ACCESSIBLE_SELECTION_PROPERTY for menus
- case AccessibleEventId.SELECTION_CHANGED:
- break;
-
- default:
- super.notifyEvent(event);
- }
- }
- }
-
- protected XAccessibleEventListener createEventListener() {
- return new AccessibleMenuContainerListener();
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleMenuContainer();
- }
-
- protected class AccessibleMenuContainer extends AccessibleContainer implements javax.accessibility.AccessibleSelection {
-
- protected AccessibleMenuContainer() {
- unoAccessibleSelection = (XAccessibleSelection) UnoRuntime.queryInterface(XAccessibleSelection.class,
- unoAccessibleContext);
- }
-
- /** Returns the AccessibleSelection interface for this object */
- public javax.accessibility.AccessibleSelection getAccessibleSelection() {
- return this;
- }
-
- /*
- * AccessibleSelection
- */
-
- /** Returns an Accessible representing the specified selected child of the object */
- public javax.accessibility.Accessible getAccessibleSelection(int i) {
- try {
- return (javax.accessibility.Accessible) AccessibleObjectFactory.getAccessibleComponent(
- unoAccessibleSelection.getSelectedAccessibleChild(i));
- } catch (com.sun.star.uno.Exception e) {
- return null;
- }
- }
-
- /** Adds the specified Accessible child of the object to the object's selection */
- public void addAccessibleSelection(int i) {
- try {
- javax.accessibility.Accessible a = getAccessibleChild(i);
-
- // selecting menu items invokes the click action in Java 1.5
- if( a instanceof MenuItem )
- a.getAccessibleContext().getAccessibleAction().doAccessibleAction(0);
- else
- unoAccessibleSelection.selectAccessibleChild(i);
- } catch (java.lang.Exception e) {
- /*
- * Possible exceptions are:
- * java.lang.NullPointerException
- * com.sun.star.uno.RuntimeException
- * com.sun.star.lang.IndexOutOfBoundsException
- */
- }
- }
-
- /** Clears the selection in the object, so that no children in the object are selected */
- public void clearAccessibleSelection() {
- try {
- unoAccessibleSelection.clearAccessibleSelection();
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- /** Returns the number of Accessible children currently selected */
- public int getAccessibleSelectionCount() {
- try {
- return unoAccessibleSelection.getSelectedAccessibleChildCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Determines if the current child of this object is selected */
- public boolean isAccessibleChildSelected(int i) {
- try {
- return unoAccessibleSelection.isAccessibleChildSelected(i);
- } catch (java.lang.Exception e) {
- /*
- * Possible exceptions are:
- * java.lang.NullPointerException
- * com.sun.star.uno.RuntimeException
- * com.sun.star.lang.IndexOutOfBoundsException
- */
- return false;
- }
- }
-
- /** Removes the specified child of the object from the object's selection */
- public void removeAccessibleSelection(int i) {
- if (isAccessibleChildSelected(i)) {
- clearAccessibleSelection();
- }
- }
-
- /** Causes every child of the object to be selected if the object supports multiple selection */
- public void selectAllAccessibleSelection() {
- // not supported
- }
- }
-}
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/MenuItem.java b/accessibility/bridge/org/openoffice/java/accessibility/MenuItem.java
deleted file mode 100644
index 56886bcb7..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/MenuItem.java
+++ /dev/null
@@ -1,99 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleEventListener;
-
-
-class MenuItem extends ToggleButton {
- public MenuItem(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
- super(xAccessible, xAccessibleContext);
- }
-
- protected class AccessibleMenuItemListener extends AccessibleUNOComponentListener {
-
- protected AccessibleMenuItemListener() {
- }
-
- protected void setComponentState(short state, boolean enable) {
-
- // #i56538# menu items in Java 1.5 are ARMED, not SELECTED
- if( state == com.sun.star.accessibility.AccessibleStateType.SELECTED )
- fireStatePropertyChange(javax.accessibility.AccessibleState.ARMED, enable);
- else
- super.setComponentState(state, enable);
- }
- };
-
- protected XAccessibleEventListener createEventListener() {
- return new AccessibleMenuItemListener();
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleMenuItem();
- }
-
- protected class AccessibleMenuItem extends AccessibleToggleButton {
- /** Gets the role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return javax.accessibility.AccessibleRole.MENU_ITEM;
- }
-
- /** Gets the 0-based index of this object in its accessible parent */
- public int getAccessibleIndexInParent() {
- if (getAccessibleParent() instanceof Menu) {
- return ((Menu) getAccessibleParent()).indexOf(MenuItem.this);
- } else {
- return super.getAccessibleIndexInParent();
- }
- }
-
- /**
- * Gets the current state set of this object.
- *
- * @return an instance of <code>AccessibleStateSet</code>
- * containing the current state set of the object
- * @see AccessibleState
- */
- public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
- javax.accessibility.AccessibleStateSet stateSet = super.getAccessibleStateSet();
-
- // #i56538# menu items in Java do not have SELECTABLE ..
- stateSet.remove(javax.accessibility.AccessibleState.SELECTABLE);
-
- // .. and also ARMED insted of SELECTED
- if( stateSet.remove(javax.accessibility.AccessibleState.SELECTED) )
- stateSet.add(javax.accessibility.AccessibleState.ARMED);
-
- return stateSet;
- }
-
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/NativeFrame.java b/accessibility/bridge/org/openoffice/java/accessibility/NativeFrame.java
deleted file mode 100644
index d11bf4a44..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/NativeFrame.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-public interface NativeFrame {
- public java.awt.Component getInitialComponent();
- public void setInitialComponent(java.awt.Component c);
-// public Integer getHWND();
-}
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Paragraph.java b/accessibility/bridge/org/openoffice/java/accessibility/Paragraph.java
deleted file mode 100644
index 62d5441e9..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/Paragraph.java
+++ /dev/null
@@ -1,222 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import javax.accessibility.AccessibleContext;
-import javax.accessibility.AccessibleText;
-
-import com.sun.star.uno.*;
-import com.sun.star.accessibility.*;
-
-/**
- */
-public class Paragraph extends Container implements javax.accessibility.Accessible {
-
- protected Paragraph(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
- super(javax.accessibility.AccessibleRole.TEXT, xAccessible, xAccessibleContext);
- }
-
- protected class AccessibleParagraphListener extends AccessibleContainerListener {
-
- protected AccessibleParagraphListener() {
- super();
- }
-
- protected void setComponentState(short state, boolean enable) {
- switch (state) {
- case AccessibleStateType.EDITABLE:
- fireStatePropertyChange(javax.accessibility.AccessibleState.EDITABLE, enable);
- break;
- case AccessibleStateType.MULTI_LINE:
- fireStatePropertyChange(javax.accessibility.AccessibleState.MULTI_LINE, enable);
- break;
- case AccessibleStateType.SINGLE_LINE:
- break;
- default:
- super.setComponentState(state, enable);
- break;
- }
- }
-
-
- protected void handleVisibleDataChanged() {
- if (Paragraph.this.isFocusOwner()) {
- AccessibleContext ac = accessibleContext;
- if (ac != null) {
- AccessibleText at = ac.getAccessibleText();
- if (at != null) {
- int pos = at.getCaretPosition();
- // Simulating a caret event here should help at tools
- // that re not aware of the paragraph approach of OOo.
- firePropertyChange(ac.ACCESSIBLE_CARET_PROPERTY,
- new Integer(-1), new Integer(pos));
- }
- }
- }
- }
-
- /** Called by OpenOffice process to notify property changes */
- public void notifyEvent(AccessibleEventObject event) {
- switch (event.EventId) {
- case AccessibleEventId.CARET_CHANGED:
- firePropertyChange(accessibleContext.ACCESSIBLE_CARET_PROPERTY,
- Component.toNumber(event.OldValue),
- Component.toNumber(event.NewValue));
- break;
- case AccessibleEventId.VISIBLE_DATA_CHANGED:
- case AccessibleEventId.BOUNDRECT_CHANGED:
- // Whenever a paragraph gets inserted above the currently
- // focused one, this is the only event that will occur for.
- handleVisibleDataChanged();
- default:
- super.notifyEvent(event);
- break;
- }
- }
- }
-
- protected XAccessibleEventListener createEventListener() {
- return new AccessibleParagraphListener();
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleParagraph();
- }
-
- protected class AccessibleParagraph extends AccessibleContainer {
-
- protected AccessibleParagraph() {
- // Don't do the queryInterface on XAccessibleText already ..
- super(false);
- /* Since getAccessibleText() is heavily used by the java access
- * bridge for gnome and the gnome at-tools, we do a query interface
- * here and remember the result.
- */
- accessibleText = AccessibleHypertextImpl.get(unoAccessibleContext);
- }
-
- /*
- * AccessibleContext
- */
-
- /** Gets the role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return javax.accessibility.AccessibleRole.TEXT;
- }
-
- /** Gets the AccessibleEditableText associated with this object presenting text on the display */
- public javax.accessibility.AccessibleEditableText getAccessibleEditableText() {
-
- if (disposed)
- return null;
-
- try {
- XAccessibleEditableText unoAccessibleText = (XAccessibleEditableText)
- UnoRuntime.queryInterface(XAccessibleEditableText.class,
- unoAccessibleComponent);
- if (unoAccessibleText != null) {
- return new AccessibleEditableTextImpl(unoAccessibleText);
- } else {
- return null;
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the AccessibleAction associated with this object that has a graphical representation */
- public javax.accessibility.AccessibleAction getAccessibleAction() {
- try {
- XAccessibleAction unoAccessibleAction = (XAccessibleAction)
- UnoRuntime.queryInterface(XAccessibleAction.class, unoAccessibleComponent);
- return (unoAccessibleAction != null) ?
- new AccessibleActionImpl(unoAccessibleAction) : null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Returns the relation set of this object */
- public javax.accessibility.AccessibleRelationSet getAccessibleRelationSet() {
- try {
- XAccessibleRelationSet unoAccessibleRelationSet =
- unoAccessible.getAccessibleContext().getAccessibleRelationSet();
- if (unoAccessibleRelationSet == null) {
- return super.getAccessibleRelationSet();
- }
-
- javax.accessibility.AccessibleRelationSet relationSet = new javax.accessibility.AccessibleRelationSet();
- int count = unoAccessibleRelationSet.getRelationCount();
- for (int i = 0; i < count; i++) {
- AccessibleRelation unoAccessibleRelation = unoAccessibleRelationSet.getRelation(i);
- switch (unoAccessibleRelation.RelationType) {
- case AccessibleRelationType.CONTROLLED_BY:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.CONTROLLED_BY,
- getAccessibleComponents(unoAccessibleRelation.TargetSet)));
- break;
- case AccessibleRelationType.CONTROLLER_FOR:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.CONTROLLER_FOR,
- getAccessibleComponents(unoAccessibleRelation.TargetSet)));
- break;
- case AccessibleRelationType.LABELED_BY:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.LABELED_BY,
- getAccessibleComponents(unoAccessibleRelation.TargetSet)));
- break;
- case AccessibleRelationType.MEMBER_OF:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.MEMBER_OF,
- getAccessibleComponents(unoAccessibleRelation.TargetSet)));
- break;
- case AccessibleRelationType.CONTENT_FLOWS_TO:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- "flowsTo",
- getAccessibleComponents(unoAccessibleRelation.TargetSet)));
- break;
- case AccessibleRelationType.CONTENT_FLOWS_FROM:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- "flowsFrom",
- getAccessibleComponents(unoAccessibleRelation.TargetSet)));
- break;
- default:
- break;
- }
- }
- return relationSet;
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return super.getAccessibleRelationSet();
- } catch (com.sun.star.uno.RuntimeException e) {
- return super.getAccessibleRelationSet();
- }
- }
- }
-}
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/RadioButton.java b/accessibility/bridge/org/openoffice/java/accessibility/RadioButton.java
deleted file mode 100644
index 53f4bc128..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/RadioButton.java
+++ /dev/null
@@ -1,50 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.*;
-import com.sun.star.uno.*;
-
-
-class RadioButton extends ToggleButton {
- public RadioButton(XAccessible xAccessible,
- XAccessibleContext xAccessibleContext) {
- super(xAccessible, xAccessibleContext);
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleRadioButton();
- }
-
- protected class AccessibleRadioButton extends AccessibleToggleButton {
- /** Gets the role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return javax.accessibility.AccessibleRole.RADIO_BUTTON;
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/ScrollBar.java b/accessibility/bridge/org/openoffice/java/accessibility/ScrollBar.java
deleted file mode 100644
index 68e0a7ab0..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/ScrollBar.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import javax.accessibility.AccessibleState;
-import javax.accessibility.AccessibleStateSet;
-import javax.swing.SwingConstants;
-
-import com.sun.star.uno.*;
-import com.sun.star.accessibility.*;
-
-/**
- */
-public class ScrollBar extends Component implements SwingConstants, javax.accessibility.Accessible {
-
- public ScrollBar(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
- super(xAccessible, xAccessibleContext);
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleScrollBar();
- }
-
- protected class AccessibleScrollBar extends AccessibleUNOComponent implements
- javax.accessibility.AccessibleAction {
-
- protected XAccessibleAction unoAccessibleAction;
- protected int actionCount = 0;
-
- /**
- * Though the class is abstract, this should be called by all sub-classes
- */
- protected AccessibleScrollBar() {
- super();
- unoAccessibleAction = (XAccessibleAction) UnoRuntime.queryInterface(
- XAccessibleAction.class, unoAccessibleContext);
- if (unoAccessibleAction != null) {
- actionCount = unoAccessibleAction.getAccessibleActionCount();
- }
- }
-
- /*
- * AccessibleContext
- */
-
- /** Gets the role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return javax.accessibility.AccessibleRole.SCROLL_BAR;
- }
-
- /** Gets the AccessibleValue associated with this object that has a graphical representation */
- public javax.accessibility.AccessibleValue getAccessibleValue() {
- try {
- XAccessibleValue unoAccessibleValue = (XAccessibleValue)
- UnoRuntime.queryInterface(XAccessibleValue.class, unoAccessibleContext);
- return (unoAccessibleValue != null) ?
- new AccessibleValueImpl(unoAccessibleValue) : null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the AccessibleAction associated with this object that supports one or more actions */
- public javax.accessibility.AccessibleAction getAccessibleAction() {
- return this;
- }
-
- /*
- * AccessibleAction
- */
-
- /** Performs the specified Action on the object */
- public boolean doAccessibleAction(int param) {
- if (param < actionCount) {
- try {
- return unoAccessibleAction.doAccessibleAction(param);
- } catch(com.sun.star.lang.IndexOutOfBoundsException e) {
- }
- }
- return false;
- }
-
- /** Returns a description of the specified action of the object */
- public java.lang.String getAccessibleActionDescription(int param) {
- if(param < actionCount) {
- try {
- return unoAccessibleAction.getAccessibleActionDescription(param);
- } catch(com.sun.star.lang.IndexOutOfBoundsException e) {
- }
- }
- return null;
- }
-
- /** Returns the number of accessible actions available in this object */
- public int getAccessibleActionCount() {
- return actionCount;
- }
- }
-}
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Separator.java b/accessibility/bridge/org/openoffice/java/accessibility/Separator.java
deleted file mode 100644
index 54ddcf0b0..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/Separator.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.*;
-import com.sun.star.uno.*;
-
-import javax.accessibility.AccessibleState;
-import javax.accessibility.AccessibleStateSet;
-
-import javax.swing.SwingConstants;
-
-
-/**
- */
-public class Separator extends Component implements SwingConstants,
- javax.accessibility.Accessible {
-
- public Separator(XAccessible xAccessible,
- XAccessibleContext xAccessibleContext) {
- super(xAccessible, xAccessibleContext);
- setFocusable(false);
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleSeparator();
- }
-
- protected class AccessibleSeparator extends AccessibleUNOComponent {
- /**
- * Though the class is abstract, this should be called by all sub-classes
- */
- protected AccessibleSeparator() {
- super();
- }
-
- /*
- * AccessibleContext
- */
-
- /** Gets the role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return javax.accessibility.AccessibleRole.SEPARATOR;
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Table.java b/accessibility/bridge/org/openoffice/java/accessibility/Table.java
deleted file mode 100644
index d304cb7cd..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/Table.java
+++ /dev/null
@@ -1,727 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import javax.accessibility.AccessibleState;
-
-import com.sun.star.uno.AnyConverter;
-import com.sun.star.uno.UnoRuntime;
-import com.sun.star.accessibility.*;
-
-public class Table extends DescendantManager implements javax.accessibility.Accessible {
-
- protected Table(XAccessible xAccessible, XAccessibleContext xAccessibleContext, boolean multiselectable) {
- super(xAccessible, xAccessibleContext, multiselectable);
- }
-
- protected void setActiveDescendant(javax.accessibility.Accessible descendant) {
- javax.accessibility.Accessible oldAD = activeDescendant;
- activeDescendant = descendant;
- firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_ACTIVE_DESCENDANT_PROPERTY,
- oldAD, descendant);
- }
-
- protected void setActiveDescendant(Object any) {
- javax.accessibility.Accessible descendant = null;
- try {
- if (AnyConverter.isObject(any)) {
- XAccessible unoAccessible = (XAccessible) AnyConverter.toObject(
- AccessibleObjectFactory.XAccessibleType, any);
- if (unoAccessible != null) {
- // FIXME: have to handle non transient objects here ..
- descendant = new TableCell(unoAccessible);
- }
- }
- setActiveDescendant(descendant);
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- protected void add(XAccessible unoAccessible) {
- if (unoAccessible != null) {
- TableCell cell = new TableCell(unoAccessible);
- // The AccessBridge for Windows expects an instance of AccessibleContext
- // as parameters
- firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- null, cell.getAccessibleContext());
- }
- }
-
- protected void remove(XAccessible unoAccessible) {
- if (unoAccessible != null) {
- TableCell cell = new TableCell(unoAccessible);
- // The AccessBridge for Windows expects an instance of AccessibleContext
- // as parameters
- firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- cell.getAccessibleContext(), null);
- }
- }
-
- protected void add(Object any) {
- try {
- add((XAccessible) AnyConverter.toObject(AccessibleObjectFactory.XAccessibleType, any));
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- protected void remove(Object any) {
- try {
- remove((XAccessible) AnyConverter.toObject(AccessibleObjectFactory.XAccessibleType, any));
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /**
- * Update the proxy objects appropriatly on property change events
- */
- protected class AccessibleTableListener extends AccessibleDescendantManagerListener {
-
- protected AccessibleTableListener() {
- super();
- }
-
- /** Called by OpenOffice process to notify property changes */
- public void notifyEvent(AccessibleEventObject event) {
- switch (event.EventId) {
- case AccessibleEventId.ACTIVE_DESCENDANT_CHANGED:
- setActiveDescendant(event.NewValue);
- break;
- case AccessibleEventId.CHILD:
- if (AnyConverter.isObject(event.OldValue)) {
- remove(event.OldValue);
- }
- if (AnyConverter.isObject(event.NewValue)) {
- add(event.NewValue);
- }
- break;
- default:
- super.notifyEvent(event);
- }
- }
- }
-
- protected XAccessibleEventListener createEventListener() {
- return new AccessibleTableListener();
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleTable();
- }
-
- protected class AccessibleTable extends AccessibleDescendantManager implements javax.accessibility.AccessibleExtendedTable {
-
- protected XAccessibleTable unoAccessibleTable;
-
- public AccessibleTable() {
- unoAccessibleTable = (XAccessibleTable) UnoRuntime.queryInterface(XAccessibleTable.class, unoAccessibleContext);
- }
-
- /** Gets the role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return javax.accessibility.AccessibleRole.TABLE;
- }
-
- /** Returns the AccessibleTable interface of this object */
- public javax.accessibility.AccessibleTable getAccessibleTable() {
- return this;
- }
-
- /** Returns the specified Accessible child of the object */
- public javax.accessibility.Accessible getAccessibleChild(int i) {
- javax.accessibility.Accessible child = null;
- try {
- XAccessible xAccessible = unoAccessibleContext.getAccessibleChild(i);
- if (xAccessible != null) {
- // Re-use the active descandant wrapper if possible
- javax.accessibility.Accessible activeDescendant = Table.this.activeDescendant;
- if ((activeDescendant instanceof TableCell) && xAccessible.equals(((TableCell) activeDescendant).unoAccessible)) {
- child = activeDescendant;
- } else {
- child = new TableCell(xAccessible);
- }
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return child;
- }
-
- /*
- * AccessibleComponent
- */
-
- /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
- public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
- javax.accessibility.Accessible child = null;
- try {
- XAccessible xAccessible = unoAccessibleComponent.getAccessibleAtPoint(
- new com.sun.star.awt.Point(p.x, p.y));
- if (xAccessible != null) {
- // Re-use the active descandant wrapper if possible
- javax.accessibility.Accessible activeDescendant = Table.this.activeDescendant;
- if ((activeDescendant instanceof TableCell) && xAccessible.equals(((TableCell) activeDescendant).unoAccessible)) {
- child = activeDescendant;
- } else {
- child = new TableCell(xAccessible);
- }
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return child;
- }
-
- /*
- * AccessibleSelection
- */
-
- /** Returns an Accessible representing the specified selected child of the object */
- public javax.accessibility.Accessible getAccessibleSelection(int i) {
- javax.accessibility.Accessible child = null;
- try {
- XAccessible xAccessible = unoAccessibleSelection.getSelectedAccessibleChild(i);
- if (xAccessible != null) {
- // Re-use the active descandant wrapper if possible
- javax.accessibility.Accessible activeDescendant = Table.this.activeDescendant;
- if ((activeDescendant instanceof TableCell) && xAccessible.equals(((TableCell) activeDescendant).unoAccessible)) {
- child = activeDescendant;
- } else {
- child = new TableCell(xAccessible);
- }
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return child;
- }
-
- /*
- * AccessibleTable
- */
-
- /** Returns the Accessible at a specified row and column in the table. */
- public javax.accessibility.Accessible getAccessibleAt(int r, int c) {
- javax.accessibility.Accessible child = null;
- try {
- XAccessible xAccessible = unoAccessibleTable.getAccessibleCellAt(r,c);
- if (xAccessible != null) {
- // Re-use the active descandant wrapper if possible
- javax.accessibility.Accessible activeDescendant = Table.this.activeDescendant;
- if ((activeDescendant instanceof TableCell) && xAccessible.equals(((TableCell) activeDescendant).unoAccessible)) {
- child = activeDescendant;
- } else {
- child = new TableCell(xAccessible);
- }
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return child;
- }
-
- /** Returns the caption for the table. */
- public javax.accessibility.Accessible getAccessibleCaption() {
- // Not yet supported.
- return null;
- }
-
- /** Returns the number of columns in the table. */
- public int getAccessibleColumnCount() {
- try {
- return unoAccessibleTable.getAccessibleColumnCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Returns the description text of the specified column in the table. */
- public javax.accessibility.Accessible getAccessibleColumnDescription(int c) {
- try {
- return new javax.swing.JLabel(
- unoAccessibleTable.getAccessibleColumnDescription(c));
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /**
- * Returns the number of columns occupied by the Accessible
- * at a specified row and column in the table.
- */
- public int getAccessibleColumnExtentAt(int r, int c) {
- try {
- return unoAccessibleTable.getAccessibleColumnExtentAt(r,c);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return 0;
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Returns the column headers as an AccessibleTable. */
- public javax.accessibility.AccessibleTable getAccessibleColumnHeader() {
- // Not yet supported
- return null;
- }
-
- /** Returns the number of rows in the table. */
- public int getAccessibleRowCount() {
- try {
- return unoAccessibleTable.getAccessibleRowCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Returns the description of the specified row in the table. */
- public javax.accessibility.Accessible getAccessibleRowDescription(int r) {
- try {
- return new javax.swing.JLabel(
- unoAccessibleTable.getAccessibleRowDescription(r));
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /**
- * Returns the number of rows occupied by the Accessible
- * at a specified row and column in the table.
- */
- public int getAccessibleRowExtentAt(int r, int c) {
- try {
- return unoAccessibleTable.getAccessibleRowExtentAt(r,c);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return 0;
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Returns the row headers as an AccessibleTable. */
- public javax.accessibility.AccessibleTable getAccessibleRowHeader() {
- // Not yet supported
- return null;
- }
-
- /** Returns the summary description of the table. */
- public javax.accessibility.Accessible getAccessibleSummary() {
- // Not yet supported.
- return null;
- }
-
- /** Returns the selected columns in a table. */
- public int[] getSelectedAccessibleColumns() {
- try {
- return unoAccessibleTable.getSelectedAccessibleColumns();
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Returns the selected rows in a table. */
- public int[] getSelectedAccessibleRows() {
- try {
- return unoAccessibleTable.getSelectedAccessibleRows();
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Returns a boolean value indicating whether the specified column is selected. */
- public boolean isAccessibleColumnSelected(int c) {
- try {
- return unoAccessibleTable.isAccessibleColumnSelected(c);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return false;
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- }
- }
-
- /** Returns a boolean value indicating whether the specified row is selected. */
- public boolean isAccessibleRowSelected(int r) {
- try {
- return unoAccessibleTable.isAccessibleRowSelected(r);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return false;
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- }
- }
-
- /**
- * Returns a boolean value indicating whether the accessible
- * at a specified row and column is selected.
- */
- public boolean isAccessibleSelected(int r, int c) {
- try {
- return unoAccessibleTable.isAccessibleSelected(r,c);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return false;
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- }
- }
-
- /** Sets the caption for the table. */
- public void setAccessibleCaption(javax.accessibility.Accessible accessible) {
- // Not supported by the UNO Accessibility API
- }
-
- /** Sets the description text of the specified column in the table. */
- public void setAccessibleColumnDescription(int param, javax.accessibility.Accessible accessible) {
- // Not supported by the UNO Accessibility API
- }
-
- /** Sets the column headers. */
- public void setAccessibleColumnHeader(javax.accessibility.AccessibleTable accessibleTable) {
- // Not supported by the UNO Accessibility API
- }
-
- /** Sets the description text of the specified row of the table. */
- public void setAccessibleRowDescription(int param, javax.accessibility.Accessible accessible) {
- // Not supported by the UNO Accessibility API
- }
-
- /** Sets the row headers. */
- public void setAccessibleRowHeader(javax.accessibility.AccessibleTable accessibleTable) {
- // Not supported by the UNO Accessibility API
- }
-
- /** Sets the summary description of the table */
- public void setAccessibleSummary(javax.accessibility.Accessible accessible) {
- // Not supported by the UNO Accessibility API
- }
-
- /** Returns the column number of an index in the table */
- public int getAccessibleColumn(int index) {
- try {
- return unoAccessibleTable.getAccessibleColumn(index);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return -1;
- } catch (com.sun.star.uno.RuntimeException e) {
- return -1;
- }
- }
-
- /** Returns the index of a specified row and column in the table. */
- public int getAccessibleIndex(int r, int c) {
- try {
- return unoAccessibleTable.getAccessibleIndex(r,c);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return -1;
- } catch (com.sun.star.uno.RuntimeException e) {
- return -1;
- }
- }
-
- /** Returns the row number of an index in the table */
- public int getAccessibleRow(int index) {
- try {
- return unoAccessibleTable.getAccessibleRow(index);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return -1;
- } catch (com.sun.star.uno.RuntimeException e) {
- return -1;
- }
- }
- }
-
- class TableCell extends java.awt.Component implements javax.accessibility.Accessible {
-
- protected XAccessible unoAccessible;
-
- public TableCell(XAccessible xAccessible) {
- unoAccessible = xAccessible;
- }
-
- public Object[] create(Object[] targetSet) {
- try {
- java.util.ArrayList list = new java.util.ArrayList(targetSet.length);
- for (int i=0; i < targetSet.length; i++) {
- XAccessible xAccessible = (XAccessible) UnoRuntime.queryInterface(
- XAccessible.class, targetSet[i]);
- if (xAccessible != null) {
- list.add(new TableCell(xAccessible));
- }
- }
- list.trimToSize();
- return list.toArray();
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- javax.accessibility.AccessibleContext accessibleContext = null;
-
- /** Returns the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext getAccessibleContext() {
- if (accessibleContext == null) {
- try {
- XAccessibleContext xAccessibleContext = unoAccessible.getAccessibleContext();
- if (xAccessibleContext != null) {
- javax.accessibility.AccessibleContext ac = new AccessibleTableCell(xAccessibleContext);
- if (ac != null) {
- ac.setAccessibleParent(Table.this);
- accessibleContext = ac;
- }
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
- return accessibleContext;
- }
-
- protected class AccessibleTableCell extends javax.accessibility.AccessibleContext {
-
- XAccessibleContext unoAccessibleContext;
-
- public AccessibleTableCell(XAccessibleContext xAccessibleContext) {
- unoAccessibleContext = xAccessibleContext;
- }
-
- /** Returns the accessible name of this object */
- public String getAccessibleName() {
- try {
- return unoAccessibleContext.getAccessibleName();
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Sets the accessible name of this object */
- public void setAccessibleName(String name) {
- // Not supported
- }
-
- /** Returns the accessible name of this object */
- public String getAccessibleDescription() {
- try {
- return unoAccessibleContext.getAccessibleDescription();
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Sets the accessible name of this object */
- public void setAccessibleDescription(String name) {
- // Not supported
- }
-
- /** Returns the accessible role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- try {
- javax.accessibility.AccessibleRole role = AccessibleRoleAdapter.getAccessibleRole(
- unoAccessibleContext.getAccessibleRole());
- return (role != null) ? role : javax.accessibility.AccessibleRole.LABEL;
- } catch(com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the locale of the component */
- public java.util.Locale getLocale() throws java.awt.IllegalComponentStateException {
- try {
- com.sun.star.lang.Locale unoLocale = unoAccessibleContext.getLocale();
- return new java.util.Locale(unoLocale.Language, unoLocale.Country);
- } catch (IllegalAccessibleComponentStateException e) {
- throw new java.awt.IllegalComponentStateException(e.getMessage());
- } catch (com.sun.star.uno.RuntimeException e) {
- return Table.this.getLocale();
- }
- }
-
- /** Gets the 0-based index of this object in its accessible parent */
- public int getAccessibleIndexInParent() {
- try {
- return unoAccessibleContext.getAccessibleIndexInParent();
- } catch (com.sun.star.uno.RuntimeException e) {
- return -1;
- }
- }
-
- /** Returns the number of accessible children of the object. */
- public int getAccessibleChildrenCount() {
- try {
- return unoAccessibleContext.getAccessibleChildCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Returns the specified Accessible child of the object. */
- public javax.accessibility.Accessible getAccessibleChild(int i) {
- javax.accessibility.Accessible child = null;
- try {
- XAccessible xAccessible = unoAccessibleContext.getAccessibleChild(i);
- // Re-use the active descandant wrapper if possible
- javax.accessibility.Accessible activeDescendant = Table.this.activeDescendant;
- if ((activeDescendant instanceof TableCell) && ((TableCell) activeDescendant).unoAccessible.equals(xAccessible)) {
- child = activeDescendant;
- } else if (xAccessible != null) {
- child = new TableCell(xAccessible);
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return child;
- }
-
- /** Returns the state set of this object */
- public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
- try {
- return AccessibleStateAdapter.getAccessibleStateSet(TableCell.this,
- unoAccessibleContext.getAccessibleStateSet());
- } catch (com.sun.star.uno.RuntimeException e) {
- return AccessibleStateAdapter.getDefunctStateSet();
- }
- }
-
- /** Returns the relation set of this object */
- public javax.accessibility.AccessibleRelationSet getAccessibleRelationSet() {
- try {
- XAccessibleRelationSet unoAccessibleRelationSet = unoAccessibleContext.getAccessibleRelationSet();
- if (unoAccessibleRelationSet == null) {
- return null;
- }
-
- javax.accessibility.AccessibleRelationSet relationSet = new javax.accessibility.AccessibleRelationSet();
- int count = unoAccessibleRelationSet.getRelationCount();
- for (int i = 0; i < count; i++) {
- AccessibleRelation unoAccessibleRelation = unoAccessibleRelationSet.getRelation(i);
- switch (unoAccessibleRelation.RelationType) {
- case AccessibleRelationType.CONTROLLED_BY:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.CONTROLLED_BY,
- create(unoAccessibleRelation.TargetSet)));
- break;
- case AccessibleRelationType.CONTROLLER_FOR:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.CONTROLLER_FOR,
- create(unoAccessibleRelation.TargetSet)));
- break;
- case AccessibleRelationType.LABELED_BY:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.LABELED_BY,
- create(unoAccessibleRelation.TargetSet)));
- break;
- case AccessibleRelationType.LABEL_FOR:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.LABEL_FOR,
- create(unoAccessibleRelation.TargetSet)));
- break;
- case AccessibleRelationType.MEMBER_OF:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.MEMBER_OF,
- create(unoAccessibleRelation.TargetSet)));
- break;
- default:
- break;
- }
- }
- return relationSet;
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the AccessibleComponent associated with this object that has a graphical representation */
- public javax.accessibility.AccessibleComponent getAccessibleComponent() {
- try {
- XAccessibleComponent unoAccessibleComponent = (XAccessibleComponent)
- UnoRuntime.queryInterface(XAccessibleComponent.class, unoAccessibleContext);
- return (unoAccessibleComponent != null) ?
- new AccessibleComponentImpl(unoAccessibleComponent) : null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the AccessibleAction associated with this object that has a graphical representation */
- public javax.accessibility.AccessibleAction getAccessibleAction() {
- try {
- XAccessibleAction unoAccessibleAction = (XAccessibleAction)
- UnoRuntime.queryInterface(XAccessibleAction.class, unoAccessibleContext);
- return (unoAccessibleAction != null) ?
- new AccessibleActionImpl(unoAccessibleAction) : null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the AccessibleText associated with this object that has a graphical representation */
- public javax.accessibility.AccessibleText getAccessibleText() {
-
- if (disposed)
- return null;
-
- try {
- XAccessibleText unoAccessibleText = (XAccessibleText)
- UnoRuntime.queryInterface(XAccessibleText.class, unoAccessibleContext);
- return (unoAccessibleText != null) ?
- new AccessibleTextImpl(unoAccessibleText) : null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the AccessibleValue associated with this object that has a graphical representation */
- public javax.accessibility.AccessibleValue getAccessibleValue() {
- try {
- XAccessibleValue unoAccessibleValue = (XAccessibleValue)
- UnoRuntime.queryInterface(XAccessibleValue.class, unoAccessibleContext);
- return (unoAccessibleValue != null) ?
- new AccessibleValueImpl(unoAccessibleValue) : null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the AccessibleText associated with this object presenting text on the display */
- public javax.accessibility.AccessibleIcon[] getAccessibleIcon() {
- try {
- XAccessibleImage unoAccessibleImage = (XAccessibleImage)
- UnoRuntime.queryInterface(XAccessibleImage.class, unoAccessibleContext);
- if (unoAccessibleImage != null) {
- javax.accessibility.AccessibleIcon[] icons = { new AccessibleIconImpl(unoAccessibleImage) };
- return icons;
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return null;
- }
- }
- }
-}
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/TextComponent.java b/accessibility/bridge/org/openoffice/java/accessibility/TextComponent.java
deleted file mode 100644
index 86fa4e604..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/TextComponent.java
+++ /dev/null
@@ -1,194 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import com.sun.star.uno.UnoRuntime;
-import com.sun.star.accessibility.*;
-
-/**
- */
-public class TextComponent extends Component implements javax.accessibility.Accessible {
-
- protected TextComponent(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
- super(xAccessible, xAccessibleContext);
- }
-
- protected class AccessibleTextComponentListener extends AccessibleUNOComponentListener {
-
- protected AccessibleTextComponentListener() {
- super();
- }
-
- protected void setComponentState(short state, boolean enable) {
- switch (state) {
- case AccessibleStateType.EDITABLE:
- fireStatePropertyChange(javax.accessibility.AccessibleState.EDITABLE, enable);
- break;
- case AccessibleStateType.MULTI_LINE:
- fireStatePropertyChange(javax.accessibility.AccessibleState.MULTI_LINE, enable);
- break;
- case AccessibleStateType.SINGLE_LINE:
- break;
- default:
- super.setComponentState(state, enable);
- break;
- }
- }
- }
-
- protected XAccessibleEventListener createEventListener() {
- return new AccessibleTextComponentListener();
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleTextComponent();
- }
-
- protected class AccessibleTextComponent extends AccessibleUNOComponent {
-
- /**
- * Though the class is abstract, this should be called by all sub-classes
- */
- protected AccessibleTextComponent() {
- super();
- }
-
- /*
- * AccessibleContext
- */
-
- /** Gets the role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return javax.accessibility.AccessibleRole.TEXT;
- }
-
- /** Gets the AccessibleText associated with this object presenting text on the display */
- public javax.accessibility.AccessibleText getAccessibleText() {
-
- if (disposed)
- return null;
-
- try {
- XAccessibleText unoAccessibleText = (XAccessibleText)
- UnoRuntime.queryInterface(XAccessibleText.class,unoAccessibleComponent);
- if (unoAccessibleText != null) {
- return new AccessibleTextImpl(unoAccessibleText);
- } else {
- return null;
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the AccessibleEditableText associated with this object presenting text on the display */
- public javax.accessibility.AccessibleEditableText getAccessibleEditableText() {
- try {
- XAccessibleEditableText unoAccessibleText = (XAccessibleEditableText)
- UnoRuntime.queryInterface(XAccessibleEditableText.class,unoAccessibleComponent);
- if (unoAccessibleText != null) {
- return new AccessibleEditableTextImpl(unoAccessibleText);
- } else {
- return null;
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the AccessibleAction associated with this object that has a graphical representation */
- public javax.accessibility.AccessibleAction getAccessibleAction() {
- try {
- XAccessibleAction unoAccessibleAction = (XAccessibleAction)
- UnoRuntime.queryInterface(XAccessibleAction.class, unoAccessibleComponent);
- return (unoAccessibleAction != null) ?
- new AccessibleActionImpl(unoAccessibleAction) : null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Returns the relation set of this object */
- public javax.accessibility.AccessibleRelationSet getAccessibleRelationSet() {
- try {
- XAccessibleRelationSet unoAccessibleRelationSet =
- unoAccessible.getAccessibleContext().getAccessibleRelationSet();
- if (unoAccessibleRelationSet == null) {
- return super.getAccessibleRelationSet();
- }
-
- javax.accessibility.AccessibleRelationSet relationSet = new javax.accessibility.AccessibleRelationSet();
- int count = unoAccessibleRelationSet.getRelationCount();
- for (int i = 0; i < count; i++) {
- AccessibleRelation unoAccessibleRelation = unoAccessibleRelationSet.getRelation(i);
- switch (unoAccessibleRelation.RelationType) {
- case AccessibleRelationType.CONTROLLED_BY:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.CONTROLLED_BY,
- getAccessibleComponents(unoAccessibleRelation.TargetSet)));
- break;
- case AccessibleRelationType.CONTROLLER_FOR:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.CONTROLLER_FOR,
- getAccessibleComponents(unoAccessibleRelation.TargetSet)));
- break;
- case AccessibleRelationType.LABELED_BY:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.LABELED_BY,
- getAccessibleComponents(unoAccessibleRelation.TargetSet)));
- break;
- case AccessibleRelationType.MEMBER_OF:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.MEMBER_OF,
- getAccessibleComponents(unoAccessibleRelation.TargetSet)));
- break;
- case AccessibleRelationType.CONTENT_FLOWS_TO:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- "flowsTo",
- getAccessibleComponents(unoAccessibleRelation.TargetSet)));
- break;
- case AccessibleRelationType.CONTENT_FLOWS_FROM:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- "flowsFrom",
- getAccessibleComponents(unoAccessibleRelation.TargetSet)));
- break;
- default:
- break;
- }
- }
- return relationSet;
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return super.getAccessibleRelationSet();
- } catch (com.sun.star.uno.RuntimeException e) {
- return super.getAccessibleRelationSet();
- }
- }
- }
-}
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/ToggleButton.java b/accessibility/bridge/org/openoffice/java/accessibility/ToggleButton.java
deleted file mode 100644
index ff8c87137..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/ToggleButton.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.*;
-import com.sun.star.uno.*;
-
-
-class ToggleButton extends AbstractButton implements javax.accessibility.Accessible {
- public ToggleButton(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
- super(xAccessible, xAccessibleContext);
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleToggleButton();
- }
-
- protected class AccessibleToggleButton extends AccessibleAbstractButton {
- /** Gets the role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return javax.accessibility.AccessibleRole.TOGGLE_BUTTON;
- }
-
- /** Gets the AccessibleValue associated with this object that has a graphical representation */
- public javax.accessibility.AccessibleValue getAccessibleValue() {
- try {
- XAccessibleValue unoAccessibleValue = (XAccessibleValue) UnoRuntime.queryInterface(XAccessibleValue.class,
- unoAccessibleContext);
-
- return (unoAccessibleValue != null)
- ? new AccessibleValueImpl(unoAccessibleValue) : null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/ToolTip.java b/accessibility/bridge/org/openoffice/java/accessibility/ToolTip.java
deleted file mode 100644
index 9391d0f6c..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/ToolTip.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-package org.openoffice.java.accessibility;
-
-import com.sun.star.accessibility.*;
-import com.sun.star.uno.*;
-
-import javax.accessibility.AccessibleState;
-import javax.accessibility.AccessibleStateSet;
-
-
-/**
- */
-public class ToolTip extends Component implements javax.accessibility.Accessible {
- protected ToolTip(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
- super(xAccessible, xAccessibleContext);
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleToolTip();
- }
-
- protected class AccessibleToolTip extends AccessibleUNOComponent {
-
- /*
- * AccessibleContext
- */
-
- /** Gets the role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return javax.accessibility.AccessibleRole.TOOL_TIP;
- }
-
- /** Gets the AccessibleText associated with this object presenting text on the display */
- public javax.accessibility.AccessibleText getAccessibleText() {
-
- if (disposed)
- return null;
-
- try {
- XAccessibleText unoAccessibleText = (XAccessibleText) UnoRuntime.queryInterface(XAccessibleText.class,
- unoAccessibleComponent);
-
- if (unoAccessibleText != null) {
- return new AccessibleTextImpl(unoAccessibleText);
- } else {
- return null;
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Returns the relation set of this object */
-
- /*
- public javax.accessibility.AccessibleRelationSet getAccessibleRelationSet() {
- try {
- XAccessibleRelationSet unoAccessibleRelationSet = unoAccessibleContext.getAccessibleRelationSet();
- if (unoAccessibleRelationSet == null) {
- return null;
- }
-
- javax.accessibility.AccessibleRelationSet relationSet = new javax.accessibility.AccessibleRelationSet();
- int count = unoAccessibleRelationSet.getRelationCount();
- for (int i = 0; i < count; i++) {
- AccessibleRelation unoAccessibleRelation = unoAccessibleRelationSet.getRelation(i);
- switch (unoAccessibleRelation.RelationType) {
- case AccessibleRelationType.LABEL_FOR:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.LABEL_FOR,
- getAccessibleComponents(unoAccessibleRelation.TargetSet)));
- break;
- case AccessibleRelationType.MEMBER_OF:
- relationSet.add(new javax.accessibility.AccessibleRelation(
- javax.accessibility.AccessibleRelation.MEMBER_OF,
- getAccessibleComponents(unoAccessibleRelation.TargetSet)));
- break;
- default:
- break;
- }
- }
- return relationSet;
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
- */
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Tree.java b/accessibility/bridge/org/openoffice/java/accessibility/Tree.java
deleted file mode 100644
index b93752679..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/Tree.java
+++ /dev/null
@@ -1,768 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import javax.accessibility.AccessibleContext;
-import javax.accessibility.AccessibleState;
-
-import com.sun.star.uno.AnyConverter;
-import com.sun.star.uno.UnoRuntime;
-import com.sun.star.accessibility.*;
-
-public class Tree extends DescendantManager implements javax.accessibility.Accessible {
-
- protected Tree(XAccessible xAccessible, XAccessibleContext xAccessibleContext) {
- super(xAccessible, xAccessibleContext);
- }
-
- protected void setActiveDescendant(javax.accessibility.Accessible descendant) {
- javax.accessibility.Accessible oldAD = activeDescendant;
- activeDescendant = descendant;
- firePropertyChange(AccessibleContext.ACCESSIBLE_ACTIVE_DESCENDANT_PROPERTY,
- oldAD, descendant);
- }
-
- protected void setActiveDescendant(Object any) {
- javax.accessibility.Accessible descendant = null;
- try {
- if (AnyConverter.isObject(any)) {
- XAccessible unoAccessible = (XAccessible) AnyConverter.toObject(
- AccessibleObjectFactory.XAccessibleType, any);
- if (unoAccessible != null) {
- // FIXME: have to handle non transient objects here ..
- descendant = new TreeItem(unoAccessible);
- }
- }
- setActiveDescendant(descendant);
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- protected void add(XAccessible unoAccessible) {
- if (unoAccessible != null) {
- firePropertyChange(AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- null, new TreeItem(unoAccessible));
- }
- }
-
- protected void remove(XAccessible unoAccessible) {
- if (unoAccessible != null) {
- firePropertyChange(AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- new TreeItem(unoAccessible), null);
- }
- }
-
- protected void add(Object any) {
- try {
- add((XAccessible) AnyConverter.toObject(AccessibleObjectFactory.XAccessibleType, any));
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- protected void remove(Object any) {
- try {
- remove((XAccessible) AnyConverter.toObject(AccessibleObjectFactory.XAccessibleType, any));
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /**
- * Update the proxy objects appropriatly on property change events
- */
- protected class AccessibleTreeListener extends AccessibleDescendantManagerListener {
-
- protected AccessibleTreeListener() {
- super();
- }
-
- /** Called by OpenOffice process to notify property changes */
- public void notifyEvent(AccessibleEventObject event) {
- switch (event.EventId) {
- case AccessibleEventId.ACTIVE_DESCENDANT_CHANGED:
- setActiveDescendant(event.NewValue);
- break;
- case AccessibleEventId.CHILD:
- if (AnyConverter.isObject(event.OldValue)) {
- remove(event.OldValue);
- }
- if (AnyConverter.isObject(event.NewValue)) {
- add(event.NewValue);
- }
- break;
-
- case AccessibleEventId.LISTBOX_ENTRY_EXPANDED:
- firePropertyChange(AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- AccessibleState.COLLAPSED, AccessibleState.EXPANDED);
- break;
-
- case AccessibleEventId.LISTBOX_ENTRY_COLLAPSED:
- firePropertyChange(AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- AccessibleState.EXPANDED, AccessibleState.COLLAPSED);
- break;
-
- default:
- super.notifyEvent(event);
- }
- }
- }
-
- protected XAccessibleEventListener createEventListener() {
- return new AccessibleTreeListener();
- }
-
- /** Creates the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext createAccessibleContext() {
- return new AccessibleTree();
- }
-
- protected class AccessibleTree extends AccessibleDescendantManager implements javax.accessibility.AccessibleExtendedTable {
-
- protected XAccessibleTable unoAccessibleTable;
-
- public AccessibleTree() {
- unoAccessibleTable = (XAccessibleTable) UnoRuntime.queryInterface(XAccessibleTable.class, unoAccessibleContext);
- }
-
- /*
- * AccessibleContext
- */
-
- /** Gets the role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- return javax.accessibility.AccessibleRole.TREE;
- }
-
- /** Returns the AccessibleTable interface of this object */
- public javax.accessibility.AccessibleTable getAccessibleTable() {
- return ( unoAccessibleTable != null ) ? this : null;
- }
-
- /** Returns the specified Accessible child of the object */
- public javax.accessibility.Accessible getAccessibleChild(int i) {
- javax.accessibility.Accessible child = null;
- try {
- XAccessible xAccessible = unoAccessibleContext.getAccessibleChild(i);
- if (xAccessible != null) {
- // Re-use the active descandant wrapper if possible
- javax.accessibility.Accessible activeDescendant = Tree.this.activeDescendant;
- if ((activeDescendant instanceof TreeItem) && xAccessible.equals(((TreeItem) activeDescendant).unoAccessible)) {
- child = activeDescendant;
- } else {
- child = new TreeItem(xAccessible);
- }
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return child;
- }
-
- /*
- * AccessibleComponent
- */
-
- /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
- public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
- javax.accessibility.Accessible child = null;
- try {
- XAccessible xAccessible = unoAccessibleComponent.getAccessibleAtPoint(
- new com.sun.star.awt.Point(p.x, p.y));
- if (xAccessible != null) {
- // Re-use the active descandant wrapper if possible
- javax.accessibility.Accessible activeDescendant = Tree.this.activeDescendant;
- if ((activeDescendant instanceof TreeItem) && xAccessible.equals(((TreeItem) activeDescendant).unoAccessible)) {
- child = activeDescendant;
- } else {
- child = new TreeItem(xAccessible);
- }
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return child;
- }
-
- /*
- * AccessibleSelection
- */
-
- /** Returns an Accessible representing the specified selected child of the object */
- public javax.accessibility.Accessible getAccessibleSelection(int i) {
- javax.accessibility.Accessible child = null;
- try {
- XAccessible xAccessible = unoAccessibleContext.getAccessibleChild(i);
- if (xAccessible != null) {
- // Re-use the active descandant wrapper if possible
- javax.accessibility.Accessible activeDescendant = Tree.this.activeDescendant;
- if ((activeDescendant instanceof TreeItem) && xAccessible.equals(((TreeItem) activeDescendant).unoAccessible)) {
- child = activeDescendant;
- } else {
- child = new TreeItem(xAccessible);
- }
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return child;
- }
-
- /*
- * AccessibleTable
- */
-
- /** Returns the Accessible at a specified row and column in the table. */
- public javax.accessibility.Accessible getAccessibleAt(int r, int c) {
- javax.accessibility.Accessible child = null;
- try {
- XAccessible xAccessible = unoAccessibleTable.getAccessibleCellAt(r,c);
- if (xAccessible != null) {
- // Re-use the active descandant wrapper if possible
- javax.accessibility.Accessible activeDescendant = Tree.this.activeDescendant;
- if ((activeDescendant instanceof TreeItem) && xAccessible.equals(((TreeItem) activeDescendant).unoAccessible)) {
- child = activeDescendant;
- } else {
- child = new TreeItem(xAccessible);
- }
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return child;
- }
-
- /** Returns the caption for the table. */
- public javax.accessibility.Accessible getAccessibleCaption() {
- // Not yet supported.
- return null;
- }
-
- /** Returns the number of columns in the table. */
- public int getAccessibleColumnCount() {
- try {
- return unoAccessibleTable.getAccessibleColumnCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Returns the description text of the specified column in the table. */
- public javax.accessibility.Accessible getAccessibleColumnDescription(int c) {
- try {
- return new javax.swing.JLabel(
- unoAccessibleTable.getAccessibleColumnDescription(c));
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /**
- * Returns the number of columns occupied by the Accessible
- * at a specified row and column in the table.
- */
- public int getAccessibleColumnExtentAt(int r, int c) {
- try {
- return unoAccessibleTable.getAccessibleColumnExtentAt(r,c);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return 0;
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Returns the column headers as an AccessibleTable. */
- public javax.accessibility.AccessibleTable getAccessibleColumnHeader() {
- // Not yet supported
- return null;
- }
-
- /** Returns the number of rows in the table. */
- public int getAccessibleRowCount() {
- try {
- return unoAccessibleTable.getAccessibleRowCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Returns the description of the specified row in the table. */
- public javax.accessibility.Accessible getAccessibleRowDescription(int r) {
- try {
- return new javax.swing.JLabel(
- unoAccessibleTable.getAccessibleRowDescription(r));
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /**
- * Returns the number of rows occupied by the Accessible
- * at a specified row and column in the table.
- */
- public int getAccessibleRowExtentAt(int r, int c) {
- try {
- return unoAccessibleTable.getAccessibleRowExtentAt(r,c);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return 0;
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Returns the row headers as an AccessibleTable. */
- public javax.accessibility.AccessibleTable getAccessibleRowHeader() {
- // Not yet supported
- return null;
- }
-
- /** Returns the summary description of the table. */
- public javax.accessibility.Accessible getAccessibleSummary() {
- // Not yet supported.
- return null;
- }
-
- /** Returns the selected columns in a table. */
- public int[] getSelectedAccessibleColumns() {
- try {
- return unoAccessibleTable.getSelectedAccessibleColumns();
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Returns the selected rows in a table. */
- public int[] getSelectedAccessibleRows() {
- try {
- return unoAccessibleTable.getSelectedAccessibleRows();
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Returns a boolean value indicating whether the specified column is selected. */
- public boolean isAccessibleColumnSelected(int c) {
- try {
- return unoAccessibleTable.isAccessibleColumnSelected(c);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return false;
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- }
- }
-
- /** Returns a boolean value indicating whether the specified row is selected. */
- public boolean isAccessibleRowSelected(int r) {
- try {
- return unoAccessibleTable.isAccessibleRowSelected(r);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return false;
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- }
- }
-
- /**
- * Returns a boolean value indicating whether the accessible
- * at a specified row and column is selected.
- */
- public boolean isAccessibleSelected(int r, int c) {
- try {
- return unoAccessibleTable.isAccessibleSelected(r,c);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return false;
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- }
- }
-
- /** Sets the caption for the table. */
- public void setAccessibleCaption(javax.accessibility.Accessible accessible) {
- // Not supported by the UNO Accessibility API
- }
-
- /** Sets the description text of the specified column in the table. */
- public void setAccessibleColumnDescription(int param, javax.accessibility.Accessible accessible) {
- // Not supported by the UNO Accessibility API
- }
-
- /** Sets the column headers. */
- public void setAccessibleColumnHeader(javax.accessibility.AccessibleTable accessibleTable) {
- // Not supported by the UNO Accessibility API
- }
-
- /** Sets the description text of the specified row of the table. */
- public void setAccessibleRowDescription(int param, javax.accessibility.Accessible accessible) {
- // Not supported by the UNO Accessibility API
- }
-
- /** Sets the row headers. */
- public void setAccessibleRowHeader(javax.accessibility.AccessibleTable accessibleTable) {
- // Not supported by the UNO Accessibility API
- }
-
- /** Sets the summary description of the table */
- public void setAccessibleSummary(javax.accessibility.Accessible accessible) {
- // Not supported by the UNO Accessibility API
- }
-
- /** Returns the column number of an index in the table */
- public int getAccessibleColumn(int index) {
- try {
- return unoAccessibleTable.getAccessibleColumn(index);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return -1;
- } catch (com.sun.star.uno.RuntimeException e) {
- return -1;
- }
- }
-
- /** Returns the index of a specified row and column in the table. */
- public int getAccessibleIndex(int r, int c) {
- try {
- return unoAccessibleTable.getAccessibleIndex(r,c);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return -1;
- } catch (com.sun.star.uno.RuntimeException e) {
- return -1;
- }
- }
-
- /** Returns the row number of an index in the table */
- public int getAccessibleRow(int index) {
- try {
- return unoAccessibleTable.getAccessibleRow(index);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return -1;
- } catch (com.sun.star.uno.RuntimeException e) {
- return -1;
- }
- }
- }
-
- class TreeItem extends java.awt.Component implements javax.accessibility.Accessible {
-
- protected XAccessible unoAccessible;
-
- public TreeItem(XAccessible xAccessible) {
- unoAccessible = xAccessible;
- }
-
- public Object[] create(Object[] targetSet) {
- try {
- java.util.ArrayList list = new java.util.ArrayList(targetSet.length);
- for (int i=0; i < targetSet.length; i++) {
- XAccessible xAccessible = (XAccessible) UnoRuntime.queryInterface(
- XAccessible.class, targetSet[i]);
- if (xAccessible != null) {
- list.add(new TreeItem(xAccessible));
- }
- }
- list.trimToSize();
- return list.toArray();
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- javax.accessibility.AccessibleContext accessibleContext = null;
-
- /** Returns the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext getAccessibleContext() {
- if (accessibleContext == null) {
- try {
- XAccessibleContext xAccessibleContext = unoAccessible.getAccessibleContext();
- if (xAccessibleContext != null) {
- javax.accessibility.AccessibleContext ac = new AccessibleTreeItem(xAccessibleContext);
- if (ac != null) {
- ac.setAccessibleParent(Tree.this);
- accessibleContext = ac;
- }
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
- return accessibleContext;
- }
-
- protected class AccessibleTreeItem extends javax.accessibility.AccessibleContext
- implements javax.accessibility.AccessibleSelection {
-
- XAccessibleContext unoAccessibleContext;
- XAccessibleSelection unoAccessibleSelection;
-
- public AccessibleTreeItem(XAccessibleContext xAccessibleContext) {
- unoAccessibleContext = xAccessibleContext;
- unoAccessibleSelection = (XAccessibleSelection)
- UnoRuntime.queryInterface(XAccessibleSelection.class, xAccessibleContext);
- }
-
- /** Returns the accessible name of this object */
- public String getAccessibleName() {
- try {
- return unoAccessibleContext.getAccessibleName();
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Sets the accessible name of this object */
- public void setAccessibleName(String name) {
- // Not supported
- }
-
- /** Returns the accessible name of this object */
- public String getAccessibleDescription() {
- try {
- return unoAccessibleContext.getAccessibleDescription();
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Sets the accessible name of this object */
- public void setAccessibleDescription(String name) {
- // Not supported
- }
-
- /** Returns the accessible role of this object */
- public javax.accessibility.AccessibleRole getAccessibleRole() {
- try {
- javax.accessibility.AccessibleRole role = AccessibleRoleAdapter.getAccessibleRole(
- unoAccessibleContext.getAccessibleRole());
- return (role != null) ? role : javax.accessibility.AccessibleRole.LABEL;
- } catch(com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the locale of the component */
- public java.util.Locale getLocale() throws java.awt.IllegalComponentStateException {
- try {
- com.sun.star.lang.Locale unoLocale = unoAccessibleContext.getLocale();
- return new java.util.Locale(unoLocale.Language, unoLocale.Country);
- } catch (IllegalAccessibleComponentStateException e) {
- throw new java.awt.IllegalComponentStateException(e.getMessage());
- } catch (com.sun.star.uno.RuntimeException e) {
- return Tree.this.getLocale();
- }
- }
-
- /** Gets the 0-based index of this object in its accessible parent */
- public int getAccessibleIndexInParent() {
- try {
- return unoAccessibleContext.getAccessibleIndexInParent();
- } catch (com.sun.star.uno.RuntimeException e) {
- return -1;
- }
- }
-
- /** Returns the number of accessible children of the object. */
- public int getAccessibleChildrenCount() {
- try {
- return unoAccessibleContext.getAccessibleChildCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Returns the specified Accessible child of the object. */
- public javax.accessibility.Accessible getAccessibleChild(int i) {
- javax.accessibility.Accessible child = null;
- try {
- XAccessible xAccessible = unoAccessibleContext.getAccessibleChild(i);
- // Re-use the active descandant wrapper if possible
- javax.accessibility.Accessible activeDescendant = Tree.this.activeDescendant;
- if ((activeDescendant instanceof TreeItem) && ((TreeItem) activeDescendant).unoAccessible.equals(xAccessible)) {
- child = activeDescendant;
- } else if (xAccessible != null) {
- child = new TreeItem(xAccessible);
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return child;
- }
-
- /** Returns the state set of this object */
- public javax.accessibility.AccessibleStateSet getAccessibleStateSet() {
- try {
- return AccessibleStateAdapter.getAccessibleStateSet(TreeItem.this,
- unoAccessibleContext.getAccessibleStateSet());
- } catch (com.sun.star.uno.RuntimeException e) {
- return AccessibleStateAdapter.getDefunctStateSet();
- }
- }
-
- /** Gets the AccessibleComponent associated with this object that has a graphical representation */
- public javax.accessibility.AccessibleComponent getAccessibleComponent() {
- try {
- XAccessibleComponent unoAccessibleComponent = (XAccessibleComponent)
- UnoRuntime.queryInterface(XAccessibleComponent.class, unoAccessibleContext);
- return (unoAccessibleComponent != null) ?
- new AccessibleComponentImpl(unoAccessibleComponent) : null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Returns the AccessibleSelection interface for this object */
- public javax.accessibility.AccessibleSelection getAccessibleSelection() {
- return (unoAccessibleSelection != null) ? this : null;
- }
-
- /** Gets the AccessibleAction associated with this object that has a graphical representation */
- public javax.accessibility.AccessibleAction getAccessibleAction() {
- try {
- XAccessibleAction unoAccessibleAction = (XAccessibleAction)
- UnoRuntime.queryInterface(XAccessibleAction.class, unoAccessibleContext);
- return (unoAccessibleAction != null) ?
- new AccessibleActionImpl(unoAccessibleAction) : null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the AccessibleText associated with this object that has a graphical representation */
- public javax.accessibility.AccessibleText getAccessibleText() {
-
- if (disposed)
- return null;
-
- try {
- XAccessibleText unoAccessibleText = (XAccessibleText)
- UnoRuntime.queryInterface(XAccessibleText.class, unoAccessibleContext);
- return (unoAccessibleText != null) ?
- new AccessibleTextImpl(unoAccessibleText) : null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the AccessibleValue associated with this object that has a graphical representation */
- public javax.accessibility.AccessibleValue getAccessibleValue() {
- try {
- XAccessibleValue unoAccessibleValue = (XAccessibleValue)
- UnoRuntime.queryInterface(XAccessibleValue.class, unoAccessibleContext);
- return (unoAccessibleValue != null) ?
- new AccessibleValueImpl(unoAccessibleValue) : null;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the AccessibleText associated with this object presenting text on the display */
- public javax.accessibility.AccessibleIcon[] getAccessibleIcon() {
- try {
- XAccessibleImage unoAccessibleImage = (XAccessibleImage)
- UnoRuntime.queryInterface(XAccessibleImage.class, unoAccessibleContext);
- if (unoAccessibleImage != null) {
- javax.accessibility.AccessibleIcon[] icons = { new AccessibleIconImpl(unoAccessibleImage) };
- return icons;
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return null;
- }
-
- /*
- * AccessibleSelection
- */
-
- /** Returns an Accessible representing the specified selected child of the object */
- public javax.accessibility.Accessible getAccessibleSelection(int i) {
- javax.accessibility.Accessible child = null;
- try {
- XAccessible xAccessible = unoAccessibleContext.getAccessibleChild(i);
- if (xAccessible != null) {
- child = new TreeItem(xAccessible);
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- return child;
- }
-
- /** Adds the specified Accessible child of the object to the object's selection */
- public void addAccessibleSelection(int i) {
- try {
- unoAccessibleSelection.selectAccessibleChild(i);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- /** Clears the selection in the object, so that no children in the object are selected */
- public void clearAccessibleSelection() {
- try {
- unoAccessibleSelection.clearAccessibleSelection();
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- /** Returns the number of Accessible children currently selected */
- public int getAccessibleSelectionCount() {
- try {
- return unoAccessibleSelection.getSelectedAccessibleChildCount();
- } catch (com.sun.star.uno.RuntimeException e) {
- return 0;
- }
- }
-
- /** Determines if the current child of this object is selected */
- public boolean isAccessibleChildSelected(int i) {
- try {
- return unoAccessibleSelection.isAccessibleChildSelected(i);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- return false;
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- }
- }
-
- /** Removes the specified child of the object from the object's selection */
- public void removeAccessibleSelection(int i) {
- try {
- unoAccessibleSelection.deselectAccessibleChild(i);
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- /** Causes every child of the object to be selected if the object supports multiple selection */
- public void selectAllAccessibleSelection() {
- try {
- unoAccessibleSelection.selectAllAccessibleChildren();
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
- }
- }
-}
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/Window.java b/accessibility/bridge/org/openoffice/java/accessibility/Window.java
deleted file mode 100644
index 22a701963..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/Window.java
+++ /dev/null
@@ -1,551 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility;
-
-import com.sun.star.uno.*;
-import com.sun.star.accessibility.*;
-
-public class Window extends java.awt.Window implements javax.accessibility.Accessible, NativeFrame {
- protected XAccessibleComponent unoAccessibleComponent;
-
- boolean opened = false;
- boolean visible = false;
-
- java.awt.EventQueue eventQueue = null;
-
- public Window(java.awt.Window owner, XAccessibleComponent xAccessibleComponent) {
- super(owner);
- initialize(xAccessibleComponent);
- }
-
- private void initialize(XAccessibleComponent xAccessibleComponent) {
- unoAccessibleComponent = xAccessibleComponent;
- eventQueue = java.awt.Toolkit.getDefaultToolkit().getSystemEventQueue();
- XAccessibleEventBroadcaster broadcaster = (XAccessibleEventBroadcaster)
- UnoRuntime.queryInterface(XAccessibleEventBroadcaster.class,
- unoAccessibleComponent);
- if (broadcaster != null) {
- broadcaster.addEventListener(new AccessibleWindowListener());
- }
- }
-
- java.awt.Component initialComponent = null;
-
- public java.awt.Component getInitialComponent() {
- if (Build.DEBUG) {
- System.err.println("returning initial component object of class: " + initialComponent.getClass().getName());
- }
- return initialComponent;
- }
-
- public void setInitialComponent(java.awt.Component c) {
- initialComponent = c;
- }
-
- public Integer getHWND() {
- return null;
- }
-
- /**
- * Determines whether this <code>Component</code> is showing on screen.
- * This means that the component must be visible, and it must be in a
- * <code>container</code> that is visible and showing.
- * @see #addNotify
- * @see #removeNotify
- * @since JDK1.0
- */
- public boolean isShowing() {
- if (isVisible()) {
- java.awt.Container parent = getParent();
- return (parent == null) || parent.isShowing();
- }
- return false;
- }
-
- /**
- * Makes this <code>Component</code> displayable by connecting it to a
- * native screen resource.
- * This method is called internally by the toolkit and should
- * not be called directly by programs.
- * @see #isDisplayable
- * @see #removeNotify
- * @since JDK1.0
- */
- public void addNotify() {
-// createHierarchyEvents(0, null, null, 0, false);
- }
-
- /**
- * Makes this <code>Component</code> undisplayable by destroying it native
- * screen resource.
- * This method is called by the toolkit internally and should
- * not be called directly by programs.
- * @see #isDisplayable
- * @see #addNotify
- * @since JDK1.0
- */
- public void removeNotify() {
- }
-
- /**
- * Determines if the object is visible. Note: this means that the
- * object intends to be visible; however, it may not in fact be
- * showing on the screen because one of the objects that this object
- * is contained by is not visible. To determine if an object is
- * showing on the screen, use <code>isShowing</code>.
- *
- * @return true if object is visible; otherwise, false
- */
- public boolean isVisible(){
- return visible;
- }
-
- /**
- * Shows or hides this component depending on the value of parameter
- * <code>b</code>.
- * @param b if <code>true</code>, shows this component;
- * otherwise, hides this component
- * @see #isVisible
- * @since JDK1.1
- */
- public void setVisible(boolean b) {
- if (visible != b){
- visible = b;
- if (b) {
- // If it is the first show, fire WINDOW_OPENED event
- if (!opened) {
- postWindowEvent(java.awt.event.WindowEvent.WINDOW_OPENED);
- opened = true;
- }
- postComponentEvent(java.awt.event.ComponentEvent.COMPONENT_SHOWN);
- } else {
- postComponentEvent(java.awt.event.ComponentEvent.COMPONENT_HIDDEN);
- }
- }
- }
-
- public void dispose() {
- setVisible(false);
- postWindowEvent(java.awt.event.WindowEvent.WINDOW_CLOSED);
-
- // Transfer window focus back to the owner window if it is still the active frame
- if ((getOwner() instanceof Frame && ((Frame) getOwner()).active) ||
- (getOwner() instanceof Dialog && ((Dialog) getOwner()).active)) {
- eventQueue.postEvent(new java.awt.event.WindowEvent(getOwner(),
- java.awt.event.WindowEvent.WINDOW_GAINED_FOCUS));
- }
- }
-
- protected void postWindowEvent(int i) {
- eventQueue.postEvent(new java.awt.event.WindowEvent(this, i));
- }
-
- protected void postComponentEvent(int i) {
- eventQueue.postEvent(new java.awt.event.ComponentEvent(this, i));
- }
-
- /**
- * Update the proxy objects appropriatly on property change events
- */
- protected class AccessibleWindowListener implements XAccessibleEventListener {
-
- protected AccessibleWindowListener() {
- }
-
- // The only expected state changes are ACTIVE and VISIBLE
- protected void setComponentState(short state, boolean enable) {
- switch (state) {
- case AccessibleStateType.ICONIFIED:
- postWindowEvent(enable ?
- java.awt.event.WindowEvent.WINDOW_ICONIFIED :
- java.awt.event.WindowEvent.WINDOW_DEICONIFIED);
- break;
- case AccessibleStateType.SHOWING:
- case AccessibleStateType.VISIBLE:
- setVisible(enable);
- break;
- default:
- if (Build.DEBUG) {
-// System.err.println("[frame]: " + getTitle() + "unexpected state change " + state);
- }
- break;
- }
- }
-
- /** Updates the accessible name and fires the appropriate PropertyChangedEvent */
- protected void handleNameChangedEvent(Object any) {
- try {
- // This causes the property change event to be fired in the VCL thread
- // context. If this causes problems, it has to be deligated to the java
- // dispatch thread ..
- javax.accessibility.AccessibleContext ac = accessibleContext;
- if (ac!= null) {
- ac.setAccessibleName(AnyConverter.toString(any));
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /** Updates the accessible description and fires the appropriate PropertyChangedEvent */
- protected void handleDescriptionChangedEvent(Object any) {
- try {
- // This causes the property change event to be fired in the VCL thread
- // context. If this causes problems, it has to be deligated to the java
- // dispatch thread ..
- if (accessibleContext != null) {
- accessibleContext.setAccessibleDescription(AnyConverter.toString(any));
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /** Updates the internal states and fires the appropriate PropertyChangedEvent */
- protected void handleStateChangedEvent(Object any1, Object any2) {
- try {
- if (AnyConverter.isShort(any1)) {
- setComponentState(AnyConverter.toShort(any1), false);
- }
-
- if (AnyConverter.isShort(any2)) {
- setComponentState(AnyConverter.toShort(any2), true);
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- /** Fires a visible data property change event */
- protected void handleVisibleDataEvent() {
- javax.accessibility.AccessibleContext ac = accessibleContext;
- if (ac != null) {
- ac.firePropertyChange(javax.accessibility.AccessibleContext.ACCESSIBLE_VISIBLE_DATA_PROPERTY, null, null);
- }
- }
-
- /** Called by OpenOffice process to notify property changes */
- public void notifyEvent(AccessibleEventObject event) {
- switch (event.EventId) {
- case AccessibleEventId.NAME_CHANGED:
- // Set the accessible name for the corresponding context, which will fire a property
- // change event itself
- handleNameChangedEvent(event.NewValue);
- break;
- case AccessibleEventId.DESCRIPTION_CHANGED:
- // Set the accessible description for the corresponding context, which will fire a property
- // change event itself - so do not set propertyName !
- handleDescriptionChangedEvent(event.NewValue);
- break;
- case AccessibleEventId.STATE_CHANGED:
- // Update the internal state set and fire the appropriate PropertyChangedEvent
- handleStateChangedEvent(event.OldValue, event.NewValue);
- break;
- case AccessibleEventId.CHILD:
- if (AnyConverter.isObject(event.OldValue)) {
- AccessibleObjectFactory.removeChild(Window.this, event.OldValue);
- } else if (AnyConverter.isObject(event.NewValue)) {
- AccessibleObjectFactory.addChild(Window.this, event.NewValue);
- }
- break;
- case AccessibleEventId.VISIBLE_DATA_CHANGED:
- case AccessibleEventId.BOUNDRECT_CHANGED:
- handleVisibleDataEvent();
- break;
- default:
- // Warn about unhandled events
- if(Build.DEBUG) {
- System.out.println(this + ": unhandled accessibility event id=" + event.EventId);
- }
- }
- }
-
- /** Called by OpenOffice process to notify that the UNO component is disposing */
- public void disposing(com.sun.star.lang.EventObject eventObject) {
- }
- }
-
- protected javax.accessibility.AccessibleContext accessibleContext = null;
-
- /** Returns the AccessibleContext associated with this object */
- public javax.accessibility.AccessibleContext getAccessibleContext() {
- if (accessibleContext == null) {
- accessibleContext = new AccessibleWindow();
-// accessibleContext.setAccessibleName(getTitle());
- }
- return accessibleContext;
- }
-
- protected class AccessibleWindow extends java.awt.Window.AccessibleAWTWindow {
- protected AccessibleWindow() {
- super();
- }
-
- protected java.awt.event.ComponentListener accessibleComponentHandler = null;
-
- /**
- * Fire PropertyChange listener, if one is registered,
- * when shown/hidden..
- */
- protected class AccessibleComponentHandler implements java.awt.event.ComponentListener {
- public void componentHidden(java.awt.event.ComponentEvent e) {
- AccessibleWindow.this.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- javax.accessibility.AccessibleState.VISIBLE, null);
- }
-
- public void componentShown(java.awt.event.ComponentEvent e) {
- AccessibleWindow.this.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_STATE_PROPERTY,
- null, javax.accessibility.AccessibleState.VISIBLE);
- }
-
- public void componentMoved(java.awt.event.ComponentEvent e) {
- }
-
- public void componentResized(java.awt.event.ComponentEvent e) {
- }
- } // inner class AccessibleComponentHandler
-
- protected java.awt.event.ContainerListener accessibleContainerHandler = null;
-
- /**
- * Fire PropertyChange listener, if one is registered,
- * when children added/removed.
- */
-
- protected class AccessibleContainerHandler implements java.awt.event.ContainerListener {
- public void componentAdded(java.awt.event.ContainerEvent e) {
- java.awt.Component c = e.getChild();
- if (c != null && c instanceof javax.accessibility.Accessible) {
- AccessibleWindow.this.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- null, ((javax.accessibility.Accessible) c).getAccessibleContext());
- }
- }
- public void componentRemoved(java.awt.event.ContainerEvent e) {
- java.awt.Component c = e.getChild();
- if (c != null && c instanceof javax.accessibility.Accessible) {
- AccessibleWindow.this.firePropertyChange(
- javax.accessibility.AccessibleContext.ACCESSIBLE_CHILD_PROPERTY,
- ((javax.accessibility.Accessible) c).getAccessibleContext(), null);
- }
- }
- }
-
- protected int propertyChangeListenerCount = 0;
-
- /**
- * Add a PropertyChangeListener to the listener list.
- *
- * @param listener The PropertyChangeListener to be added
- */
- public void addPropertyChangeListener(java.beans.PropertyChangeListener listener) {
- if (propertyChangeListenerCount++ == 0) {
- accessibleContainerHandler = new AccessibleContainerHandler();
- Window.this.addContainerListener(accessibleContainerHandler);
-
- accessibleComponentHandler = new AccessibleComponentHandler();
- Window.this.addComponentListener(accessibleComponentHandler);
- }
- super.addPropertyChangeListener(listener);
- }
-
- /**
- * Remove a PropertyChangeListener from the listener list.
- * This removes a PropertyChangeListener that was registered
- * for all properties.
- *
- * @param listener The PropertyChangeListener to be removed
- */
- public void removePropertyChangeListener(java.beans.PropertyChangeListener listener) {
- if (--propertyChangeListenerCount == 0) {
- Window.this.removeComponentListener(accessibleComponentHandler);
- accessibleComponentHandler = null;
-
- Window.this.removeContainerListener(accessibleContainerHandler);
- accessibleContainerHandler = null;
- }
- super.removePropertyChangeListener(listener);
- }
-
- /*
- * AccessibleComponent
- */
-
- /** Returns the background color of the object */
- public java.awt.Color getBackground() {
- try {
- return new java.awt.Color(unoAccessibleComponent.getBackground());
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public void setBackground(java.awt.Color c) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the foreground color of the object */
- public java.awt.Color getForeground() {
- try {
- return new java.awt.Color(unoAccessibleComponent.getForeground());
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public void setForeground(java.awt.Color c) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.Cursor getCursor() {
- // Not supported by UNO accessibility API
- return null;
- }
-
- public void setCursor(java.awt.Cursor cursor) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.Font getFont() {
- // FIXME
- return null;
- }
-
- public void setFont(java.awt.Font f) {
- // Not supported by UNO accessibility API
- }
-
- public java.awt.FontMetrics getFontMetrics(java.awt.Font f) {
- // FIXME
- return null;
- }
-
- public boolean isEnabled() {
- return Window.this.isEnabled();
- }
-
- public void setEnabled(boolean b) {
- // Not supported by UNO accessibility API
- }
-
- public boolean isVisible() {
- return Window.this.isVisible();
- }
-
- public void setVisible(boolean b) {
- // Not supported by UNO accessibility API
- }
-
- public boolean isShowing() {
- return Window.this.isShowing();
- }
-
- public boolean contains(java.awt.Point p) {
- try {
- return unoAccessibleComponent.containsPoint(new com.sun.star.awt.Point(p.x, p.y));
- } catch (com.sun.star.uno.RuntimeException e) {
- return false;
- }
- }
-
- /** Returns the location of the object on the screen. */
- public java.awt.Point getLocationOnScreen() {
- try {
- com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocationOnScreen();
- return new java.awt.Point(unoPoint.X, unoPoint.Y);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Gets the location of this component in the form of a point specifying the component's top-left corner */
- public java.awt.Point getLocation() {
- try {
- com.sun.star.awt.Point unoPoint = unoAccessibleComponent.getLocationOnScreen();
- return new java.awt.Point( unoPoint.X, unoPoint.Y );
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Moves this component to a new location */
- public void setLocation(java.awt.Point p) {
- // Not supported by UNO accessibility API
- }
-
- /** Gets the bounds of this component in the form of a Rectangle object */
- public java.awt.Rectangle getBounds() {
- try {
- com.sun.star.awt.Rectangle unoRect = unoAccessibleComponent.getBounds();
- return new java.awt.Rectangle(unoRect.X, unoRect.Y, unoRect.Width, unoRect.Height);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Moves and resizes this component to conform to the new bounding rectangle r */
- public void setBounds(java.awt.Rectangle r) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the size of this component in the form of a Dimension object */
- public java.awt.Dimension getSize() {
- try {
- com.sun.star.awt.Size unoSize = unoAccessibleComponent.getSize();
- return new java.awt.Dimension(unoSize.Width, unoSize.Height);
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- /** Resizes this component so that it has width d.width and height d.height */
- public void setSize(java.awt.Dimension d) {
- // Not supported by UNO accessibility API
- }
-
- /** Returns the Accessible child, if one exists, contained at the local coordinate Point */
- public javax.accessibility.Accessible getAccessibleAt(java.awt.Point p) {
- try {
- java.awt.Component c = AccessibleObjectFactory.getAccessibleComponent(
- unoAccessibleComponent.getAccessibleAtPoint(new com.sun.star.awt.Point(p.x, p.y)));
-
- return (javax.accessibility.Accessible) c;
- } catch (com.sun.star.uno.RuntimeException e) {
- return null;
- }
- }
-
- public boolean isFocusTraversable() {
- return Window.this.isFocusable();
- }
-
- public void requestFocus() {
- unoAccessibleComponent.grabFocus();
- }
- }
-}
-
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleEventLog.java b/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleEventLog.java
deleted file mode 100644
index 365243fe6..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleEventLog.java
+++ /dev/null
@@ -1,186 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility.logging;
-
-import com.sun.star.accessibility.*;
-import com.sun.star.uno.*;
-
-/**
- *
- */
-public class XAccessibleEventLog implements XAccessibleEventListener {
-
- private static XAccessibleEventLog theEventListener = null;
-
- private static java.util.Hashtable proxyList = new java.util.Hashtable();
-
- /** Creates a new instance of UNOAccessibleEventListener */
- public XAccessibleEventLog() {
- }
-
- private static XAccessibleEventListener get() {
- if (theEventListener == null) {
- theEventListener = new XAccessibleEventLog();
- }
- return theEventListener;
- }
-
- public static void addEventListener(XAccessibleContext xac, java.awt.Component c) {
- XAccessibleEventBroadcaster broadcaster = (XAccessibleEventBroadcaster)
- UnoRuntime.queryInterface(XAccessibleEventBroadcaster.class, xac);
- if (broadcaster != null) {
- broadcaster.addEventListener(XAccessibleEventLog.get());
-
- // remember the proxy objects
- synchronized (proxyList) {
-// proxyList.put(UnoRuntime.generateOid(xac), new WeakReference(c));
- proxyList.put(UnoRuntime.generateOid(xac), c);
- }
- }
- }
-
- public void disposing(com.sun.star.lang.EventObject eventObject) {
- }
-
- public void notifyEvent(com.sun.star.accessibility.AccessibleEventObject accessibleEventObject) {
- switch (accessibleEventObject.EventId) {
- case AccessibleEventId.ACTIVE_DESCENDANT_CHANGED:
- logMessage(accessibleEventObject.Source, "Retrieved active descendant event.");
- break;
- case AccessibleEventId.STATE_CHANGED:
- logStateChange(accessibleEventObject.Source,
- accessibleEventObject.OldValue,
- accessibleEventObject.NewValue);
- break;
- case AccessibleEventId.CHILD:
- logMessage(accessibleEventObject.Source, "Retrieved children event.");
- break;
- case AccessibleEventId.BOUNDRECT_CHANGED:
- logMessage(accessibleEventObject.Source, "Retrieved boundrect changed event.");
- break;
- case AccessibleEventId.VISIBLE_DATA_CHANGED:
- logMessage(accessibleEventObject.Source, "Retrieved visible data changed event.");
- break;
- case AccessibleEventId.INVALIDATE_ALL_CHILDREN:
- logMessage(accessibleEventObject.Source, "Retrieved invalidate children event.");
- break;
- default:
- break;
- }
- }
-
- public void logStateChange(Object o, Object any1, Object any2) {
- try {
- if (AnyConverter.isShort(any1)) {
- logStateChange(o, AnyConverter.toShort(any1), " is no longer ");
- }
-
- if (AnyConverter.isShort(any2)) {
- logStateChange(o, AnyConverter.toShort(any2), " is now ");
- }
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- }
- }
-
- public void logStateChange(Object o, short n, String s) {
- switch(n) {
- case AccessibleStateType.ACTIVE:
- logMessage(o, s + javax.accessibility.AccessibleState.ACTIVE);
- break;
- case AccessibleStateType.ARMED:
- logMessage(o, s + javax.accessibility.AccessibleState.ARMED);
- break;
- case AccessibleStateType.CHECKED:
- logMessage(o, s + javax.accessibility.AccessibleState.CHECKED);
- break;
- case AccessibleStateType.ENABLED:
- logMessage(o, s + javax.accessibility.AccessibleState.ENABLED);
- break;
- case AccessibleStateType.FOCUSED:
- logMessage(o, s + javax.accessibility.AccessibleState.FOCUSED);
- break;
- case AccessibleStateType.PRESSED:
- logMessage(o, s + javax.accessibility.AccessibleState.PRESSED);
- break;
- case AccessibleStateType.SELECTED:
- logMessage(o, s + javax.accessibility.AccessibleState.SELECTED);
- break;
- case AccessibleStateType.SENSITIVE:
- logMessage(o, s + "sensitive");
- break;
- case AccessibleStateType.SHOWING:
- logMessage(o, s + javax.accessibility.AccessibleState.SHOWING);
- break;
- case AccessibleStateType.VISIBLE:
- logMessage(o, s + javax.accessibility.AccessibleState.VISIBLE);
- break;
- default:
- logMessage(o, s + "??? (FIXME)");
- break;
- }
- }
-
- protected static void logMessage(Object o, String s) {
- XAccessibleContext xac = (XAccessibleContext) UnoRuntime.queryInterface(XAccessibleContext.class, o);
- if( xac != null ) {
- String oid = UnoRuntime.generateOid(xac);
- synchronized (proxyList) {
- logMessage( (javax.accessibility.Accessible) proxyList.get( oid ), s );
-// WeakReference r = (WeakReference) proxyList.get( oid );
-// if(r != null) {
-// System.err.println( "*** Warning *** event is " + r.get() );
-// logMessage( (javax.accessibility.Accessible) r.get(), s );
-// } else {
-// System.err.println( "*** Warning *** event source not found in broadcaster list" );
-// }
- }
- } else
- System.err.println( "*** Warning *** event source does not implement XAccessibleContext" );
- }
-
- protected static void logMessage(javax.accessibility.Accessible a, String s) {
- if (a != null) {
- logMessage(a.getAccessibleContext(), s);
- } else {
- logMessage(s);
- }
- }
-
- protected static void logMessage(javax.accessibility.AccessibleContext ac, String s) {
- if (ac != null) {
- logMessage("[" + ac.getAccessibleRole() + "] "
- + ac.getAccessibleName() + ": " + s);
- } else {
- logMessage(s);
- }
- }
-
- protected static void logMessage(String s) {
- System.err.println(s);
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleHypertextLog.java b/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleHypertextLog.java
deleted file mode 100644
index 13e9b2f6d..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleHypertextLog.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.java.accessibility.logging;
-
-import com.sun.star.accessibility.*;
-import com.sun.star.uno.*;
-
-/** The AccessibleHypertextImpl mapps all calls to the java AccessibleHypertext
- * interface to the corresponding methods of the UNO XAccessibleHypertext
- * interface.
- */
-public class XAccessibleHypertextLog extends XAccessibleTextLog
- implements com.sun.star.accessibility.XAccessibleHypertext {
-
- private com.sun.star.accessibility.XAccessibleHypertext unoObject;
-
- /** Creates a new instance of XAccessibleTextLog */
- public XAccessibleHypertextLog(XAccessibleHypertext xAccessibleHypertext) {
- super(xAccessibleHypertext);
- unoObject = xAccessibleHypertext;
- }
-
- public XAccessibleHyperlink getHyperLink(int param)
- throws com.sun.star.lang.IndexOutOfBoundsException {
- return unoObject.getHyperLink(param);
- }
-
- public int getHyperLinkCount() {
- return unoObject.getHyperLinkCount();
- }
-
- public int getHyperLinkIndex(int param)
- throws com.sun.star.lang.IndexOutOfBoundsException {
- return unoObject.getHyperLinkIndex(param);
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleTextLog.java b/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleTextLog.java
deleted file mode 100644
index b7a2ffc70..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/logging/XAccessibleTextLog.java
+++ /dev/null
@@ -1,270 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-package org.openoffice.java.accessibility.logging;
-
-import org.openoffice.java.accessibility.*;
-
-
-/**
- *
- */
-public class XAccessibleTextLog
- implements com.sun.star.accessibility.XAccessibleText {
- private com.sun.star.accessibility.XAccessibleText unoObject;
- private String name = "[Unknown] NoName";
-
- /** Creates a new instance of XAccessibleTextLog */
- public XAccessibleTextLog(
- com.sun.star.accessibility.XAccessibleText xAccessibleText) {
- unoObject = xAccessibleText;
- setName(xAccessibleText);
- }
-
- private void setName(
- com.sun.star.accessibility.XAccessibleText xAccessibleText) {
- try {
- com.sun.star.accessibility.XAccessibleContext unoAccessibleContext = (com.sun.star.accessibility.XAccessibleContext) com.sun.star.uno.UnoRuntime.queryInterface(com.sun.star.accessibility.XAccessibleContext.class,
- xAccessibleText);
-
- if (unoAccessibleContext != null) {
- name = "[" +
- AccessibleRoleAdapter.getAccessibleRole(unoAccessibleContext.getAccessibleRole()) +
- "] " + unoAccessibleContext.getAccessibleName() + ": ";
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
-
- private String getPartString(short s) {
- String part = "INVALID";
-
- switch (s) {
- case com.sun.star.accessibility.AccessibleTextType.CHARACTER:
- part = "CHARACTER";
-
- break;
-
- case com.sun.star.accessibility.AccessibleTextType.WORD:
- part = "WORD";
-
- break;
-
- case com.sun.star.accessibility.AccessibleTextType.SENTENCE:
- part = "SENTENCE";
-
- break;
-
- case com.sun.star.accessibility.AccessibleTextType.LINE:
- part = "LINE";
-
- break;
-
- case com.sun.star.accessibility.AccessibleTextType.ATTRIBUTE_RUN:
- part = "ATTRIBUTE_RUN";
-
- break;
-
- default:
- break;
- }
-
- return part;
- }
-
- private String dumpTextSegment(com.sun.star.accessibility.TextSegment ts) {
- if (ts != null) {
- return "(" + ts.SegmentStart + "," + ts.SegmentEnd + "," +
- ts.SegmentText + ")";
- }
-
- return "NULL";
- }
-
- public boolean copyText(int param, int param1)
- throws com.sun.star.lang.IndexOutOfBoundsException {
- return unoObject.copyText(param, param1);
- }
-
- public int getCaretPosition() {
- int pos = unoObject.getCaretPosition();
- System.err.println(name + "getCaretPosition() returns " + pos);
-
- return pos;
- }
-
- public char getCharacter(int param)
- throws com.sun.star.lang.IndexOutOfBoundsException {
- return unoObject.getCharacter(param);
- }
-
- public com.sun.star.beans.PropertyValue[] getCharacterAttributes(
- int param, String[] str)
- throws com.sun.star.lang.IndexOutOfBoundsException {
- return unoObject.getCharacterAttributes(param, str);
- }
-
- public com.sun.star.awt.Rectangle getCharacterBounds(int param)
- throws com.sun.star.lang.IndexOutOfBoundsException {
- try {
- com.sun.star.awt.Rectangle r = unoObject.getCharacterBounds(param);
- System.err.println(name + "getCharacterBounds(" + param +
- ") returns (" + r.X + "," + r.Y + "," + r.Width + "," +
- r.Height + ")");
-
- return r;
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- System.err.println("IndexOutOufBoundsException caught for " + name +
- "getCharacterBounds(" + param + ")");
- throw e;
- }
- }
-
- public int getCharacterCount() {
- return unoObject.getCharacterCount();
- }
-
- public int getIndexAtPoint(com.sun.star.awt.Point point) {
- try {
- int index = unoObject.getIndexAtPoint(point);
- System.err.println(name + "getIndexAtPoint(" + point.X + ", " +
- point.Y + ") returns " + index);
-
- return index;
- } catch (com.sun.star.uno.RuntimeException e) {
- System.err.println(name +
- "RuntimeException caught for getIndexAtPoint(" + point.X +
- ", " + point.Y + ")");
- System.err.println(e.getMessage());
- throw e;
- }
- }
-
- public String getSelectedText() {
- return unoObject.getSelectedText();
- }
-
- public int getSelectionEnd() {
- return unoObject.getSelectionEnd();
- }
-
- public int getSelectionStart() {
- return unoObject.getSelectionStart();
- }
-
- public String getText() {
- return unoObject.getText();
- }
-
- public com.sun.star.accessibility.TextSegment getTextAtIndex(int param,
- short param1)
- throws com.sun.star.lang.IndexOutOfBoundsException,
- com.sun.star.lang.IllegalArgumentException {
- try {
- com.sun.star.accessibility.TextSegment ts = unoObject.getTextAtIndex(param,
- param1);
- System.err.println(name + "getTextAtIndex(" +
- getPartString(param1) + "," + param + ") returns " +
- dumpTextSegment(ts));
-
- return ts;
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- System.err.println("IndexOutOufBoundsException caught for " + name +
- " getTextAtIndex(" + getPartString(param1) + "," + param1 +
- ")");
- throw e;
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- System.err.println("IllegalArgumentException caught for " + name +
- " getTextAtIndex(" + getPartString(param1) + "," + param + ")");
- throw e;
- }
- }
-
- public com.sun.star.accessibility.TextSegment getTextBeforeIndex(
- int param, short param1)
- throws com.sun.star.lang.IndexOutOfBoundsException,
- com.sun.star.lang.IllegalArgumentException {
- try {
- com.sun.star.accessibility.TextSegment ts = unoObject.getTextBeforeIndex(param,
- param1);
- System.err.println(name + " getTextBeforeIndex(" +
- getPartString(param1) + "," + param + ") returns " +
- dumpTextSegment(ts));
-
- return ts;
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- System.err.println("IndexOutOufBoundsException caught for " + name +
- " getTextBeforeIndex(" + getPartString(param1) + "," + param1 +
- ")");
- throw e;
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- System.err.println("IllegalArgumentException caught for " + name +
- " getTextBeforeIndex(" + getPartString(param1) + "," + param +
- ")");
- throw e;
- }
- }
-
- public com.sun.star.accessibility.TextSegment getTextBehindIndex(
- int param, short param1)
- throws com.sun.star.lang.IndexOutOfBoundsException,
- com.sun.star.lang.IllegalArgumentException {
- try {
- com.sun.star.accessibility.TextSegment ts = unoObject.getTextBehindIndex(param,
- param1);
- System.err.println(name + " getTextBehindIndex(" +
- getPartString(param1) + "," + param + ") returns " +
- dumpTextSegment(ts));
-
- return ts;
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- System.err.println("IndexOutOufBoundsException caught for " + name +
- " getTextBehindIndex(" + getPartString(param1) + "," + param1 +
- ")");
- throw e;
- } catch (com.sun.star.lang.IllegalArgumentException e) {
- System.err.println("IllegalArgumentException caught for " + name +
- " getTextBehindIndex(" + getPartString(param1) + "," + param +
- ")");
- throw e;
- }
- }
-
- public String getTextRange(int param, int param1)
- throws com.sun.star.lang.IndexOutOfBoundsException {
- return unoObject.getTextRange(param, param1);
- }
-
- public boolean setCaretPosition(int param)
- throws com.sun.star.lang.IndexOutOfBoundsException {
- return unoObject.setCaretPosition(param);
- }
-
- public boolean setSelection(int param, int param1)
- throws com.sun.star.lang.IndexOutOfBoundsException {
- return unoObject.setSelection(param, param1);
- }
-}
diff --git a/accessibility/bridge/org/openoffice/java/accessibility/makefile.mk b/accessibility/bridge/org/openoffice/java/accessibility/makefile.mk
deleted file mode 100755
index 0d98760a3..000000000
--- a/accessibility/bridge/org/openoffice/java/accessibility/makefile.mk
+++ /dev/null
@@ -1,115 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJNAME = accessibility
-PRJ = ..$/..$/..$/..$/..
-TARGET = java_accessibility
-PACKAGE = org$/openoffice$/java$/accessibility
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-JAVADIR = $(OUT)$/misc$/java
-JARFILES = jurt.jar unoil.jar ridl.jar
-JAVAFILES = \
- logging$/XAccessibleEventLog.java \
- logging$/XAccessibleHypertextLog.java \
- logging$/XAccessibleTextLog.java \
- AbstractButton.java \
- AccessibleActionImpl.java \
- AccessibleComponentImpl.java \
- AccessibleEditableTextImpl.java \
- AccessibleExtendedState.java \
- AccessibleHypertextImpl.java \
- AccessibleIconImpl.java \
- AccessibleKeyBinding.java \
- AccessibleObjectFactory.java \
- AccessibleRoleAdapter.java \
- AccessibleSelectionImpl.java \
- AccessibleStateAdapter.java \
- AccessibleTextImpl.java \
- AccessibleValueImpl.java \
- Alert.java \
- Application.java \
- Button.java \
- CheckBox.java \
- ComboBox.java \
- Component.java \
- Container.java \
- DescendantManager.java \
- Dialog.java \
- FocusTraversalPolicy.java \
- Frame.java \
- Icon.java \
- Label.java \
- List.java \
- Menu.java \
- MenuItem.java \
- MenuContainer.java \
- NativeFrame.java \
- Paragraph.java \
- RadioButton.java \
- ScrollBar.java \
- Separator.java \
- Table.java \
- TextComponent.java \
- ToggleButton.java \
- ToolTip.java \
- Tree.java \
- Window.java
-
-JAVACLASSFILES = $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:s/.java//).class) $(CLASSDIR)$/$(PACKAGE)$/Build.class
-
-JARTARGET = $(TARGET).jar
-JARCOMPRESS = TRUE
-JARCLASSDIRS = $(PACKAGE)
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : target.mk
-
-# Enable logging in non-product only
-.IF "$(PRODUCT)"!=""
-DEBUGSWITCH = false
-PRODUCTSWITCH = true
-.ELSE
-PRODUCTSWITCH = false
-DEBUGSWITCH = true
-.ENDIF
-
-$(JAVADIR)$/$(PACKAGE)$/%.java: makefile.mk
- @@-$(MKDIRHIER) $(JAVADIR)$/$(PACKAGE)
- @-echo package org.openoffice.java.accessibility\; > $@
- @-echo public class Build { >> $@
- @-echo public static final boolean DEBUG = $(DEBUGSWITCH)\; >> $@
- @-echo public static final boolean PRODUCT = $(PRODUCTSWITCH)\; >> $@
- @-echo } >> $@
-
-$(CLASSDIR)$/$(PACKAGE)$/Build.class : $(JAVADIR)$/$(PACKAGE)$/Build.java
- -$(JAVAC) -d $(CLASSDIR) $(JAVADIR)$/$(PACKAGE)$/Build.java
-
diff --git a/accessibility/bridge/source/java/WindowsAccessBridgeAdapter.cxx b/accessibility/bridge/source/java/WindowsAccessBridgeAdapter.cxx
deleted file mode 100644
index 0466a646a..000000000
--- a/accessibility/bridge/source/java/WindowsAccessBridgeAdapter.cxx
+++ /dev/null
@@ -1,317 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-//------------------------------------------------------------------------
-// includes
-//------------------------------------------------------------------------
-
-#ifdef WNT
-#include <prewin.h>
-#include <postwin.h>
-#endif
-
-#include <WindowsAccessBridgeAdapter.h>
-
-#include <wtypes.h>
-#include <rtl/process.h>
-#include <tools/link.hxx>
-
-#include <vcl/svapp.hxx>
-#include <vcl/window.hxx>
-#include <vcl/sysdata.hxx>
-#include <uno/current_context.hxx>
-#include <uno/environment.h>
-#include <uno/mapping.hxx>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/XAccessible.hpp>
-
-#include "jvmaccess/unovirtualmachine.hxx"
-
-#include "jvmaccess/virtualmachine.hxx"
-
-#include <osl/diagnose.h>
-
-using ::rtl::OUString;
-using ::com::sun::star::uno::Mapping;
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::RuntimeException;
-using namespace ::com::sun::star::accessibility;
-
-long VCLEventListenerLinkFunc(void * pInst, void * pData);
-
-//------------------------------------------------------------------------
-// global vatiables
-//------------------------------------------------------------------------
-
-Link g_aEventListenerLink(NULL, VCLEventListenerLinkFunc);
-
-rtl::Reference< jvmaccess::UnoVirtualMachine > g_xUnoVirtualMachine;
-typelib_InterfaceTypeDescription * g_pTypeDescription = NULL;
-Mapping g_unoMapping;
-
-jclass g_jcWindowsAccessBridgeAdapter = NULL;
-jmethodID g_jmRegisterTopWindow = 0;
-jmethodID g_jmRevokeTopWindow = 0;
-
-//------------------------------------------------------------------------
-// functions
-//------------------------------------------------------------------------
-
-JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *, void *)
-{
- return JNI_VERSION_1_2;
-}
-
-JNIEXPORT jbyteArray JNICALL
-Java_org_openoffice_accessibility_WindowsAccessBridgeAdapter_getProcessID(JNIEnv *pJNIEnv, jclass clazz)
-{
- // Initialize global class and method references
- g_jcWindowsAccessBridgeAdapter =
- static_cast< jclass > (pJNIEnv->NewGlobalRef(clazz));
- if (NULL == g_jcWindowsAccessBridgeAdapter) {
- return 0; /* jni error occurred */
- }
- g_jmRegisterTopWindow =
- pJNIEnv->GetStaticMethodID(clazz, "registerTopWindow", "(ILcom/sun/star/accessibility/XAccessible;)V");
- if (0 == g_jmRegisterTopWindow) {
- return 0; /* jni error occurred */
- }
- g_jmRevokeTopWindow =
- pJNIEnv->GetStaticMethodID(clazz, "revokeTopWindow", "(ILcom/sun/star/accessibility/XAccessible;)V");
- if (0 == g_jmRevokeTopWindow) {
- return 0; /* jni error occurred */
- }
-
- // Use the special protocol of XJavaVM.getJavaVM: If the passed in
- // process ID has an extra 17th byte of value one, the returned any
- // contains a pointer to a jvmaccess::UnoVirtualMachine, instead of
- // the underlying JavaVM pointer:
- jbyte processID[17];
- rtl_getGlobalProcessId(reinterpret_cast<sal_uInt8 *> (processID));
- // #i51265# we need a jvmaccess::UnoVirtualMachine pointer for the
- // uno_getEnvironment() call later.
- processID[16] = 1;
-
- // Copy the result into a java byte[] and return.
- jbyteArray jbaProcessID = pJNIEnv->NewByteArray(17);
- pJNIEnv->SetByteArrayRegion(jbaProcessID, 0, 17, processID);
- return jbaProcessID;
-}
-
-JNIEXPORT jboolean JNICALL
-Java_org_openoffice_accessibility_WindowsAccessBridgeAdapter_createMapping(JNIEnv *, jclass, jlong pointer)
-{
- uno_Environment * pJava_environment = NULL;
- uno_Environment * pUno_environment = NULL;
-
- try {
- // We get a non-refcounted pointer to a jvmaccess::VirtualMachine
- // from the XJavaVM service (the pointer is guaranteed to be valid
- // as long as our reference to the XJavaVM service lasts), and
- // convert the non-refcounted pointer into a refcounted one
- // immediately:
- g_xUnoVirtualMachine = reinterpret_cast< jvmaccess::UnoVirtualMachine * >(pointer);
-
- if ( g_xUnoVirtualMachine.is() )
- {
- OUString sJava(RTL_CONSTASCII_USTRINGPARAM("java"));
- uno_getEnvironment(&pJava_environment, sJava.pData, g_xUnoVirtualMachine.get());
-
- OUString sCppu_current_lb_name(RTL_CONSTASCII_USTRINGPARAM(CPPU_CURRENT_LANGUAGE_BINDING_NAME));
- uno_getEnvironment(&pUno_environment, sCppu_current_lb_name.pData, NULL);
-
- if ( pJava_environment && pUno_environment )
- {
- g_unoMapping = Mapping(pUno_environment, pJava_environment);
- getCppuType((::com::sun::star::uno::Reference< XAccessible > *) 0).getDescription((typelib_TypeDescription **) & g_pTypeDescription);
- }
-
- if ( pJava_environment )
- {
- // release java environment
- pJava_environment->release(pJava_environment);
- pJava_environment = NULL;
- }
-
- if ( pUno_environment )
- {
- // release uno environment
- pUno_environment->release(pUno_environment);
- pUno_environment = NULL;
- }
- }
- }
-
- catch ( RuntimeException &e)
- {
- OSL_TRACE("RuntimeException caught while initializing the mapping");
- }
-
- if ( (0 != g_jmRegisterTopWindow) && (0 != g_jmRevokeTopWindow) )
- {
- ::Application::AddEventListener(g_aEventListenerLink);
- }
- return JNI_TRUE;
-}
-
-JNIEXPORT void JNICALL JNI_OnUnload(JavaVM *jvm, void *)
-{
- ::Application::RemoveEventListener(g_aEventListenerLink);
-
- if ( NULL != g_jcWindowsAccessBridgeAdapter )
- {
- JNIEnv * pJNIEnv;
- if ( ! jvm->GetEnv((void **) &pJNIEnv, JNI_VERSION_1_2) )
- {
- pJNIEnv->DeleteGlobalRef(g_jcWindowsAccessBridgeAdapter);
- g_jcWindowsAccessBridgeAdapter = NULL;
- }
- }
-
- if ( NULL != g_pTypeDescription )
- {
- typelib_typedescription_release( reinterpret_cast< typelib_TypeDescription * > (g_pTypeDescription) );
- g_pTypeDescription = NULL;
- }
-
- g_unoMapping.clear();
- g_xUnoVirtualMachine.clear();
-}
-
-HWND GetHWND(Window * pWindow)
-{
- const SystemEnvData * pEnvData = pWindow->GetSystemData();
- if (pEnvData != NULL)
- {
- return pEnvData->hWnd;
- }
- return (HWND) -1;
-}
-
-void handleWindowEvent(Window * pWindow, bool bShow)
-{
- if ( pWindow && pWindow->IsTopWindow() )
- {
- ::com::sun::star::uno::Reference< XAccessible > xAccessible;
-
- // Test for combo box - drop down floating windows first
- Window * pParentWindow = pWindow->GetParent();
-
- if ( pParentWindow )
- {
- try
- {
- // The parent window of a combo box floating window should have the role COMBO_BOX
- ::com::sun::star::uno::Reference< XAccessible > xParentAccessible(pParentWindow->GetAccessible());
- if ( xParentAccessible.is() )
- {
- ::com::sun::star::uno::Reference< XAccessibleContext > xParentAC(xParentAccessible->getAccessibleContext());
- if ( xParentAC.is() && (AccessibleRole::COMBO_BOX == xParentAC->getAccessibleRole()) )
- {
- // O.k. - this is a combo box floating window corresponding to the child of role LIST of the parent.
- // Let's not rely on a specific child order, just search for the child with the role LIST
- sal_Int32 nCount = xParentAC->getAccessibleChildCount();
- for ( sal_Int32 n = 0; (n < nCount) && !xAccessible.is(); n++)
- {
- ::com::sun::star::uno::Reference< XAccessible > xChild = xParentAC->getAccessibleChild(n);
- if ( xChild.is() )
- {
- ::com::sun::star::uno::Reference< XAccessibleContext > xChildAC = xChild->getAccessibleContext();
- if ( xChildAC.is() && (AccessibleRole::LIST == xChildAC->getAccessibleRole()) )
- {
- xAccessible = xChild;
- }
- }
- }
- }
- }
- }
- catch (::com::sun::star::uno::RuntimeException &e)
- {
- // Ignore show events that throw DisposedExceptions in getAccessibleContext(),
- // but keep revoking these windows in hide(s).
- if (bShow)
- return;
- }
- }
-
- // We have to rely on the fact that Window::GetAccessible()->getAccessibleContext() returns a valid XAccessibleContext
- // also for other menus than menubar or toplevel popup window. Otherwise we had to traverse the hierarchy to find the
- // context object to this menu floater. This makes the call to Window->IsMenuFloatingWindow() obsolete.
- if ( ! xAccessible.is() )
- xAccessible = pWindow->GetAccessible();
-
- if ( xAccessible.is() && g_unoMapping.is() )
- {
- jobject * joXAccessible = reinterpret_cast < jobject * > (g_unoMapping.mapInterface(
- xAccessible.get(), g_pTypeDescription));
-
- if ( NULL != joXAccessible )
- {
- jvmaccess::VirtualMachine::AttachGuard aGuard(g_xUnoVirtualMachine->getVirtualMachine());
- JNIEnv * pJNIEnv = aGuard.getEnvironment();
-
- if ( NULL != pJNIEnv )
- {
- // g_jmRegisterTopWindow and g_jmRevokeTopWindow are ensured to be != 0 - otherwise
- // the event listener would not have been attached.
- pJNIEnv->CallStaticVoidMethod(g_jcWindowsAccessBridgeAdapter,
- (bShow) ? g_jmRegisterTopWindow : g_jmRevokeTopWindow,
- (jint) GetHWND(pWindow), joXAccessible );
-
- // Clear any exception that might have been occurred.
- if (pJNIEnv->ExceptionCheck()) {
- pJNIEnv->ExceptionClear();
- }
- }
- }
- }
- }
-}
-
-long VCLEventListenerLinkFunc(void *, void * pData)
-{
- ::VclSimpleEvent const * pEvent = (::VclSimpleEvent const *) pData;
-
- switch (pEvent->GetId())
- {
- case VCLEVENT_WINDOW_SHOW:
- handleWindowEvent(((::VclWindowEvent const *) pEvent)->GetWindow(), true);
- break;
- case VCLEVENT_WINDOW_HIDE:
- handleWindowEvent(((::VclWindowEvent const *) pEvent)->GetWindow(), false);
- break;
- }
-
- return 0;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/bridge/source/java/exports.dxp b/accessibility/bridge/source/java/exports.dxp
deleted file mode 100644
index c97dba7d0..000000000
--- a/accessibility/bridge/source/java/exports.dxp
+++ /dev/null
@@ -1,4 +0,0 @@
-JNI_OnLoad
-JNI_OnUnload
-Java_org_openoffice_accessibility_WindowsAccessBridgeAdapter_getProcessID
-Java_org_openoffice_accessibility_WindowsAccessBridgeAdapter_createMapping
diff --git a/accessibility/bridge/source/java/makefile.mk b/accessibility/bridge/source/java/makefile.mk
deleted file mode 100644
index 5aeb21c11..000000000
--- a/accessibility/bridge/source/java/makefile.mk
+++ /dev/null
@@ -1,70 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..$/..$/..
-PRJNAME=accessibility
-TARGET=accessbridge
-LIBTARGET=NO
-USE_DEFFILE=TRUE
-ENABLE_EXCEPTIONS=TRUE
-VERSIONOBJ=
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Files --------------------------------------------------------
-
-.IF "$(GUI)"=="WNT" && "$(SOLAR_JAVA)" != ""
-
-SLOFILES= $(SLO)$/WindowsAccessBridgeAdapter.obj
-
-SHL1TARGET=java_uno_accessbridge
-SHL1IMPLIB=i$(SHL1TARGET)
-SHL1STDLIBS=$(VCLLIB) $(TOOLSLIB) $(JVMACCESSLIB) $(CPPULIB) $(SALLIB)
-SHL1OBJS=$(SLOFILES)
-SHL1VERSIONOBJ=
-
-DEF1NAME=$(SHL1TARGET)
-DEF1EXPORTFILE=exports.dxp
-
-SHL1HEADER=$(OUT)$/inc$/WindowsAccessBridgeAdapter.h
-
-.ENDIF # "$(GUI)"=="WNT" && "$(SOLAR_JAVA)" != ""
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : target.mk
-
-.IF "$(GUI)"=="WNT" && "$(SOLAR_JAVA)" != ""
-
-$(SLO)$/WindowsAccessBridgeAdapter.obj : $(SHL1HEADER)
-
-$(SHL1HEADER) :
- javah -classpath $(OUT)$/class -o $(SHL1HEADER) org.openoffice.accessibility.WindowsAccessBridgeAdapter
-
-.ENDIF # "$(GUI)"=="WNT" && "$(SOLAR_JAVA)" != ""
diff --git a/accessibility/inc/accessibility/extended/AccessibleBrowseBox.hxx b/accessibility/inc/accessibility/extended/AccessibleBrowseBox.hxx
deleted file mode 100644
index 0944dc679..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleBrowseBox.hxx
+++ /dev/null
@@ -1,313 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOX_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOX_HXX
-
-#include <accessibility/extended/AccessibleBrowseBoxBase.hxx>
-#include <cppuhelper/weakref.hxx>
-#include <svtools/accessibletableprovider.hxx>
-
-
-#include <memory>
-
-// ============================================================================
-
-namespace accessibility {
-
- class AccessibleBrowseBoxImpl;
- class AccessibleBrowseBoxTable;
-
-// ============================================================================
-
-/** This class represents the complete accessible BrowseBox object. */
-class AccessibleBrowseBox : public AccessibleBrowseBoxBase
-{
- friend class AccessibleBrowseBoxAccess;
-
-protected:
- AccessibleBrowseBox(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxCreator,
- ::svt::IAccessibleTableProvider& _rBrowseBox
- );
-
- virtual ~AccessibleBrowseBox();
-
- /** sets the XAccessible which created the context
-
- <p>To be called only once, and only if in the ctor NULL was passed.</p>
- */
- void setCreator(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxCreator
- );
-
- /** Cleans up members. */
- using AccessibleBrowseBoxBase::disposing;
- virtual void SAL_CALL disposing();
-
-protected:
- // XAccessibleContext -----------------------------------------------------
-
- /** @return The count of visible children. */
- virtual sal_Int32 SAL_CALL getAccessibleChildCount()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The XAccessible interface of the specified child. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleChild( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The role of this object (a table). */
-// virtual sal_Int16 SAL_CALL getAccessibleRole()
-// throw ( ::com::sun::star::uno::RuntimeException );
-
- // XAccessibleComponent ---------------------------------------------------
-
- /** @return
- The accessible child rendered under the given point.
- */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleAtPoint( const ::com::sun::star::awt::Point& rPoint )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Grabs the focus to the BrowseBox. */
- virtual void SAL_CALL grabFocus()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The key bindings associated with this object. */
- virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleKeyBinding()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XServiceInfo -----------------------------------------------------------
-
- /** @return
- The name of this class.
- */
- virtual ::rtl::OUString SAL_CALL getImplementationName()
- throw ( ::com::sun::star::uno::RuntimeException );
-
-public:
- // helper functions
- /** commitHeaderBarEvent commit the event at all listeners of the column/row header bar
- @param nEventId
- the event id
- @param rNewValue
- the new value
- @param rOldValue
- the old value
- */
- void commitHeaderBarEvent(sal_Int16 nEventId,
- const ::com::sun::star::uno::Any& rNewValue,
- const ::com::sun::star::uno::Any& rOldValue,sal_Bool _bColumnHeaderBar = sal_True);
-
- // helper functions
- /** commitTableEvent commit the event at all listeners of the table
- @param nEventId
- the event id
- @param rNewValue
- the new value
- @param rOldValue
- the old value
- */
- void commitTableEvent(sal_Int16 nEventId,
- const ::com::sun::star::uno::Any& rNewValue,
- const ::com::sun::star::uno::Any& rOldValue);
-
- /** returns the accessible object for the row or the column header bar
- */
- inline ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >
- getHeaderBar( ::svt::AccessibleBrowseBoxObjType _eObjType )
- {
- return implGetHeaderBar(_eObjType);
- }
-
- /** returns the accessible object for the table representation
- */
- inline ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >
- getTable( )
- {
- return implGetTable();
- }
-
-protected:
- // internal virtual methods -----------------------------------------------
-
- /** @attention This method requires locked mutex's and a living object.
- @return The bounding box (VCL rect.) relative to the parent window. */
- virtual Rectangle implGetBoundingBox();
- /** @attention This method requires locked mutex's and a living object.
- @return The bounding box (VCL rect.) in screen coordinates. */
- virtual Rectangle implGetBoundingBoxOnScreen();
-
- // internal helper methods ------------------------------------------------
-
- /** This method creates (once) and returns the accessible data table child.
- @attention This method requires locked mutex's and a living object.
- @return The XAccessible interface of the data table. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > implGetTable();
-
- /** This method creates (once) and returns the specified header bar.
- @attention This method requires locked mutex's and a living object.
- @return The XAccessible interface of the header bar. */
- ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >
- implGetHeaderBar( ::svt::AccessibleBrowseBoxObjType eObjType );
-
- /** This method returns one of the children that are always present:
- Data table, row and column header bar or corner control.
- @attention This method requires locked mutex's and a living object.
- @return The XAccessible interface of the specified child. */
- ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >
- implGetFixedChild( sal_Int32 nChildIndex );
-
- /** This method creates and returns an accessible table.
- @return An AccessibleBrowseBoxTable. */
- virtual AccessibleBrowseBoxTable* createAccessibleTable();
-
-private:
- // members ----------------------------------------------------------------
- ::std::auto_ptr< AccessibleBrowseBoxImpl > m_pImpl;
-};
-
-// ============================================================================
-/** the XAccessible which creates/returns an AccessibleBrowseBox
-
- <p>The instance holds it's XAccessibleContext with a hard reference, while
- the contxt holds this instance weak.</p>
-*/
-typedef ::cppu::WeakImplHelper1 < ::com::sun::star::accessibility::XAccessible
- > AccessibleBrowseBoxAccess_Base;
-
-class AccessibleBrowseBoxAccess :public AccessibleBrowseBoxAccess_Base
- ,public ::svt::IAccessibleBrowseBox
-{
-private:
- ::osl::Mutex m_aMutex;
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- m_xParent;
- ::svt::IAccessibleTableProvider& m_rBrowseBox;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- m_xContext;
- AccessibleBrowseBox* m_pContext;
- // note that this pointer is valid as long as m_xContext is valid!
-
-public:
- AccessibleBrowseBoxAccess(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
- ::svt::IAccessibleTableProvider& _rBrowseBox
- );
-
- /// checks whether the accessible context is still alive
- bool isContextAlive() const;
-
- /// returns the AccessibleContext belonging to this Accessible
- inline AccessibleBrowseBox* getContext() { return m_pContext; }
- inline const AccessibleBrowseBox* getContext() const { return m_pContext; }
-
-protected:
- virtual ~AccessibleBrowseBoxAccess();
-
- // XAccessible
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- SAL_CALL getAccessibleContext() throw ( ::com::sun::star::uno::RuntimeException );
-
- // IAccessibleBrowseBox
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- getMyself()
- {
- return this;
- }
- void dispose();
- virtual sal_Bool isAlive() const
- {
- return isContextAlive();
- }
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- getHeaderBar( ::svt::AccessibleBrowseBoxObjType _eObjType )
- {
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xAccessible;
- AccessibleBrowseBox* pContext( getContext() );
- if ( pContext )
- xAccessible = pContext->getHeaderBar( _eObjType );
- return xAccessible;
- }
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- getTable()
- {
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xAccessible;
- AccessibleBrowseBox* pContext( getContext() );
- if ( pContext )
- xAccessible = pContext->getTable();
- return xAccessible;
- }
- virtual void commitHeaderBarEvent( sal_Int16 nEventId, const ::com::sun::star::uno::Any& rNewValue,
- const ::com::sun::star::uno::Any& rOldValue, sal_Bool _bColumnHeaderBar )
- {
- AccessibleBrowseBox* pContext( getContext() );
- if ( pContext )
- pContext->commitHeaderBarEvent( nEventId, rNewValue, rOldValue, _bColumnHeaderBar );
- }
- virtual void commitTableEvent( sal_Int16 nEventId,
- const ::com::sun::star::uno::Any& rNewValue, const ::com::sun::star::uno::Any& rOldValue )
- {
- AccessibleBrowseBox* pContext( getContext() );
- if ( pContext )
- pContext->commitTableEvent( nEventId, rNewValue, rOldValue );
- }
- virtual void commitEvent( sal_Int16 nEventId,
- const ::com::sun::star::uno::Any& rNewValue, const ::com::sun::star::uno::Any& rOldValue )
- {
- AccessibleBrowseBox* pContext( getContext() );
- if ( pContext )
- pContext->commitEvent( nEventId, rNewValue, rOldValue );
- }
-
-private:
- AccessibleBrowseBoxAccess(); // never implemented
- AccessibleBrowseBoxAccess( const AccessibleBrowseBoxAccess& ); // never implemented
- AccessibleBrowseBoxAccess& operator=( const AccessibleBrowseBoxAccess& ); // never implemented
-};
-
-// ============================================================================
-} // namespace accessibility
-
-// ============================================================================
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxBase.hxx b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxBase.hxx
deleted file mode 100644
index 912080532..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxBase.hxx
+++ /dev/null
@@ -1,515 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXBASE_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXBASE_HXX
-
-#include <svtools/AccessibleBrowseBoxObjType.hxx>
-#include <tools/debug.hxx>
-#include <rtl/ustring.hxx>
-#include <tools/gen.hxx>
-#include <vcl/svapp.hxx>
-#include <cppuhelper/compbase5.hxx>
-#include <comphelper/broadcasthelper.hxx>
-#include <unotools/accessiblestatesethelper.hxx>
-#include <toolkit/helper/convert.hxx>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/lang/DisposedException.hpp>
-#include <com/sun/star/awt/XWindow.hpp>
-#include <com/sun/star/accessibility/XAccessible.hpp>
-#include <com/sun/star/accessibility/XAccessibleContext.hpp>
-#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
-#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/awt/XFocusListener.hpp>
-#include <comphelper/accessibleeventnotifier.hxx>
-#include <comphelper/uno3.hxx>
-
-// ============================================================================
-
-class Window;
-
-namespace utl {
- class AccessibleStateSetHelper;
-}
-
-namespace svt {
- class IAccessibleTableProvider;
-}
-
-// ============================================================================
-
-namespace accessibility {
-
-// ============================================================================
-
-typedef ::cppu::WeakAggComponentImplHelper5<
- ::com::sun::star::accessibility::XAccessibleContext,
- ::com::sun::star::accessibility::XAccessibleComponent,
- ::com::sun::star::accessibility::XAccessibleEventBroadcaster,
- ::com::sun::star::awt::XFocusListener,
- ::com::sun::star::lang::XServiceInfo >
- AccessibleBrowseBoxImplHelper;
-
-/** The BrowseBox accessible objects inherit from this base class. It
- implements basic functionality for various Accessibility interfaces and
- the event broadcaster and contains the ::osl::Mutex. */
-class AccessibleBrowseBoxBase :
- public ::comphelper::OBaseMutex,
- public AccessibleBrowseBoxImplHelper
-{
-public:
- /** Constructor sets specified name and description. If the constant of a
- text is BBTEXT_NONE, the derived class has to set the text via
- implSetName() and implSetDescription() (in Ctor) or later via
- setAccessibleName() and setAccessibleDescription() (these methods
- notify the listeners about the change).
- @param rxParent XAccessible interface of the parent object.
- @param rBrowseBox The BrowseBox control.
- @param eNameText The constant for the name text.
- @param eDescrText The constant for the description text. */
- AccessibleBrowseBoxBase(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >& rxParent,
- ::svt::IAccessibleTableProvider& rBrowseBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- ::svt::AccessibleBrowseBoxObjType eObjType );
-
- /** Constructor sets specified name and description.
- @param rxParent XAccessible interface of the parent object.
- @param rBrowseBox The BrowseBox control.
- @param rName The name of this object.
- @param rDescription The description text of this object. */
- AccessibleBrowseBoxBase(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >& rxParent,
- ::svt::IAccessibleTableProvider& rBrowseBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- ::svt::AccessibleBrowseBoxObjType eObjType,
- const ::rtl::OUString& rName,
- const ::rtl::OUString& rDescription );
-
-protected:
- virtual ~AccessibleBrowseBoxBase();
-
- /** Commits DeFunc event to listeners and cleans up members. */
- virtual void SAL_CALL disposing();
-
-public:
- // XAccessibleContext -----------------------------------------------------
-
- /** @return A reference to the parent accessible object. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleParent()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The index of this object among the parent's children. */
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The description of this object.
- */
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The name of this object.
- */
- virtual ::rtl::OUString SAL_CALL getAccessibleName()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The relation set (the BrowseBox does not have one).
- */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL
- getAccessibleRelationSet()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The set of current states. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL
- getAccessibleStateSet()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The parent's locale. */
- virtual ::com::sun::star::lang::Locale SAL_CALL getLocale()
- throw ( ::com::sun::star::accessibility::IllegalAccessibleComponentStateException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The role of this object. Panel, ROWHEADER, COLUMNHEADER, TABLE, TABLE_CELL are supported.
- */
- virtual sal_Int16 SAL_CALL getAccessibleRole()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /* Derived classes have to implement:
- - getAccessibleChildCount,
- - getAccessibleChild,
- - getAccessibleRole.
- Derived classes may overwrite getAccessibleIndexInParent to increase
- performance. */
-
- // XAccessibleComponent ---------------------------------------------------
-
- /** @return
- <TRUE/>, if the point lies within the bounding box of this object. */
- virtual sal_Bool SAL_CALL containsPoint( const ::com::sun::star::awt::Point& rPoint )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The bounding box of this object. */
- virtual ::com::sun::star::awt::Rectangle SAL_CALL getBounds()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The upper left corner of the bounding box relative to the parent. */
- virtual ::com::sun::star::awt::Point SAL_CALL getLocation()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The upper left corner of the bounding box in screen coordinates. */
- virtual ::com::sun::star::awt::Point SAL_CALL getLocationOnScreen()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The size of the bounding box. */
- virtual ::com::sun::star::awt::Size SAL_CALL getSize()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the object is showing. */
- virtual sal_Bool SAL_CALL isShowing()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the object is visible. */
- virtual sal_Bool SAL_CALL isVisible()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the object can accept the focus. */
- virtual sal_Bool SAL_CALL isFocusTraversable()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XFocusListener
- virtual void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& Source ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL focusGained( const ::com::sun::star::awt::FocusEvent& e ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL focusLost( const ::com::sun::star::awt::FocusEvent& e ) throw (::com::sun::star::uno::RuntimeException);
-
- /* Derived classes have to implement:
- - getAccessibleAt,
- - grabFocus,
- - getAccessibleKeyBinding. */
-
- /** @return
- No key bindings supported by default.
- */
- virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleKeyBinding()
- throw ( ::com::sun::star::uno::RuntimeException );
- /** @return
- The accessible child rendered under the given point.
- */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleAtPoint( const ::com::sun::star::awt::Point& rPoint )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XAccessibleEventBroadcaster --------------------------------------------
-
- /** Adds a new event listener */
- using cppu::WeakAggComponentImplHelperBase::addEventListener;
- virtual void SAL_CALL addEventListener(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleEventListener>& rxListener )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Removes an event listener. */
- using cppu::WeakAggComponentImplHelperBase::removeEventListener;
- virtual void SAL_CALL removeEventListener(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleEventListener>& rxListener )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XTypeProvider ----------------------------------------------------------
-
- /** @return An unique implementation ID. */
- virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XServiceInfo -----------------------------------------------------------
-
- /** @return Whether the specified service is supported by this class. */
- virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return A list of all supported services. */
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
- getSupportedServiceNames()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /* Derived classes have to implement:
- - getImplementationName. */
-
- // helper methods ---------------------------------------------------------
-
- /** @return The BrowseBox object type. */
- inline ::svt::AccessibleBrowseBoxObjType getType() const;
-
- /** Changes the name of the object and notifies listeners. */
- void setAccessibleName( const ::rtl::OUString& rName );
- /** Changes the description of the object and notifies listeners. */
- void setAccessibleDescription( const ::rtl::OUString& rDescription );
-
- /** Commits an event to all listeners. */
- void commitEvent(
- sal_Int16 nEventId,
- const ::com::sun::star::uno::Any& rNewValue,
-
- const ::com::sun::star::uno::Any& rOldValue );
- /** @return <TRUE/>, if the object is not disposed or disposing. */
- sal_Bool isAlive() const;
-
-protected:
- // internal virtual methods -----------------------------------------------
-
- /** Determines whether the BrowseBox control is really showing inside of
- its parent accessible window. Derived classes may implement different
- behaviour.
- @attention This method requires locked mutex's and a living object.
- @return <TRUE/>, if the object is really showing. */
- virtual sal_Bool implIsShowing();
-
- /** Derived classes return the bounding box relative to the parent window.
- @attention This method requires locked mutex's and a living object.
- @return The bounding box (VCL rect.) relative to the parent window. */
- virtual Rectangle implGetBoundingBox() = 0;
- /** Derived classes return the bounding box in screen coordinates.
- @attention This method requires locked mutex's and a living object.
- @return The bounding box (VCL rect.) in screen coordinates. */
- virtual Rectangle implGetBoundingBoxOnScreen() = 0;
-
- /** Creates a new AccessibleStateSetHelper and fills it with states of the
- current object. This method calls FillStateSet at the BrowseBox which
- fills it with more states depending on the object type. Derived classes
- may overwrite this method and add more states.
- @attention This method requires locked mutex's.
- @return A filled AccessibleStateSetHelper. */
- virtual ::utl::AccessibleStateSetHelper* implCreateStateSetHelper();
-
- // internal helper methods ------------------------------------------------
-
- /** @throws <type>DisposedException</type> If the object is not alive. */
- void ensureIsAlive() const
- throw ( ::com::sun::star::lang::DisposedException );
-
- /** @return The ::osl::Mutex member provided by the class OBaseMutex. */
- inline ::osl::Mutex& getOslMutex();
- /** @return Pointer to the global ::osl::Mutex. */
- static inline ::osl::Mutex* getOslGlobalMutex();
-
- /** Changes the name of the object (flat assignment, no notify).
- @attention This method requires a locked mutex. */
- inline void implSetName( const ::rtl::OUString& rName );
- /** Changes the description of the object (flat assignment, no notify).
- @attention This method requires a locked mutex. */
- inline void implSetDescription( const ::rtl::OUString& rDescription );
-
- /** Locks all mutex's and calculates the bounding box relative to the
- parent window.
- @return The bounding box (VCL rect.) relative to the parent object. */
- Rectangle getBoundingBox()
- throw ( ::com::sun::star::lang::DisposedException );
- /** Locks all mutex's and calculates the bounding box in screen
- coordinates.
- @return The bounding box (VCL rect.) in screen coordinates. */
- Rectangle getBoundingBoxOnScreen()
- throw ( ::com::sun::star::lang::DisposedException );
-
- ::comphelper::AccessibleEventNotifier::TClientId getClientId() const { return m_aClientId; }
- void setClientId(::comphelper::AccessibleEventNotifier::TClientId _aNewClientId) { m_aClientId = _aNewClientId; }
-
-public:
- // public versions of internal helper methods, with access control
- struct AccessControl { friend class SolarMethodGuard; private: AccessControl() { } };
-
- inline ::osl::Mutex& getMutex( const AccessControl& ) { return getOslMutex(); }
- inline void ensureIsAlive( const AccessControl& ) { ensureIsAlive(); }
-
-protected:
- // members ----------------------------------------------------------------
-
- /** The parent accessible object. */
- ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > mxParent;
- /** The VCL BrowseBox control. */
- ::svt::IAccessibleTableProvider* mpBrowseBox;
-
- /** This is the window which get all the nice focus events
- */
- ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow > m_xFocusWindow;
-
-private:
- /** Localized name. */
- ::rtl::OUString maName;
- /** Localized description text. */
- ::rtl::OUString maDescription;
-
- /** The type of this object (for names, descriptions, state sets, ...). */
- ::svt::AccessibleBrowseBoxObjType meObjType;
-
- ::comphelper::AccessibleEventNotifier::TClientId m_aClientId;
-};
-
-// ============================================================================
-// a version of AccessibleBrowseBoxBase which implements not only the XAccessibleContext,
-// but also the XAccessible
-
-typedef ::cppu::ImplHelper1 < ::com::sun::star::accessibility::XAccessible
- > BrowseBoxAccessibleElement_Base;
-
-class BrowseBoxAccessibleElement
- :public AccessibleBrowseBoxBase
- ,public BrowseBoxAccessibleElement_Base
-{
-protected:
- /** Constructor sets specified name and description. If the constant of a
- text is BBTEXT_NONE, the derived class has to set the text via
- implSetName() and implSetDescription() (in Ctor) or later via
- setAccessibleName() and setAccessibleDescription() (these methods
- notify the listeners about the change).
-
- @param rxParent XAccessible interface of the parent object.
- @param rBrowseBox The BrowseBox control.
- @param eNameText The constant for the name text.
- @param eDescrText The constant for the description text.
- */
- BrowseBoxAccessibleElement(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >& rxParent,
- ::svt::IAccessibleTableProvider& rBrowseBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- ::svt::AccessibleBrowseBoxObjType eObjType );
-
- /** Constructor sets specified name and description.
-
- @param rxParent XAccessible interface of the parent object.
- @param rBrowseBox The BrowseBox control.
- @param rName The name of this object.
- @param rDescription The description text of this object.
- */
- BrowseBoxAccessibleElement(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >& rxParent,
- ::svt::IAccessibleTableProvider& rBrowseBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- ::svt::AccessibleBrowseBoxObjType eObjType,
- const ::rtl::OUString& rName,
- const ::rtl::OUString& rDescription );
-
-public:
- // XInterface
- DECLARE_XINTERFACE( )
- // XTypeProvider
- DECLARE_XTYPEPROVIDER( )
-
-protected:
- virtual ~BrowseBoxAccessibleElement();
-
-protected:
- // XAccessible ------------------------------------------------------------
-
- /** @return The XAccessibleContext interface of this object. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL
- getAccessibleContext()
- throw ( ::com::sun::star::uno::RuntimeException );
-
-private:
- BrowseBoxAccessibleElement(); // never implemented
- BrowseBoxAccessibleElement( const BrowseBoxAccessibleElement& ); // never implemented
- BrowseBoxAccessibleElement& operator=( const BrowseBoxAccessibleElement& ); // never implemented
-};
-
-// ============================================================================
-// a helper class for protecting methods which need to lock the solar mutex in addition to the own mutex
-
-typedef ::osl::MutexGuard OslMutexGuard;
-
-class SolarMethodGuard : public SolarMutexGuard, public OslMutexGuard
-{
-public:
- inline SolarMethodGuard( AccessibleBrowseBoxBase& _rOwner, bool _bEnsureAlive = true )
- :SolarMutexGuard( )
- ,OslMutexGuard( _rOwner.getMutex( AccessibleBrowseBoxBase::AccessControl() ) )
- {
- if ( _bEnsureAlive )
- _rOwner.ensureIsAlive( AccessibleBrowseBoxBase::AccessControl() );
- }
-};
-
-// inlines --------------------------------------------------------------------
-
-inline ::svt::AccessibleBrowseBoxObjType AccessibleBrowseBoxBase::getType() const
-{
- return meObjType;
-}
-
-inline ::osl::Mutex& AccessibleBrowseBoxBase::getOslMutex()
-{
- return m_aMutex;
-}
-
-inline ::osl::Mutex* AccessibleBrowseBoxBase::getOslGlobalMutex()
-{
- return ::osl::Mutex::getGlobalMutex();
-}
-
-inline void AccessibleBrowseBoxBase::implSetName(
- const ::rtl::OUString& rName )
-{
- maName = rName;
-}
-
-inline void AccessibleBrowseBoxBase::implSetDescription(
- const ::rtl::OUString& rDescription )
-{
- maDescription = rDescription;
-}
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxCheckBoxCell.hxx b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxCheckBoxCell.hxx
deleted file mode 100644
index 550dd40d1..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxCheckBoxCell.hxx
+++ /dev/null
@@ -1,95 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXCHECKBOXCELL_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXCHECKBOXCELL_HXX
-
-#include <com/sun/star/accessibility/XAccessibleValue.hpp>
-#include <com/sun/star/accessibility/XAccessible.hpp>
-#include <com/sun/star/lang/XTypeProvider.hpp>
-#include "accessibility/extended/accessiblebrowseboxcell.hxx"
-#include <cppuhelper/implbase2.hxx>
-#include <tools/wintypes.hxx>
-// ============================================================================
-namespace accessibility
-{
-// ============================================================================
- typedef ::cppu::ImplHelper2 < ::com::sun::star::accessibility::XAccessible,
- ::com::sun::star::accessibility::XAccessibleValue
- > AccessibleCheckBoxCell_BASE;
-
- class AccessibleCheckBoxCell : public AccessibleBrowseBoxCell
- ,public AccessibleCheckBoxCell_BASE
- {
- private:
- TriState m_eState;
- sal_Bool m_bEnabled;
- sal_Bool m_bIsTriState;
-
- protected:
- virtual ~AccessibleCheckBoxCell() {}
-
- virtual ::utl::AccessibleStateSetHelper* implCreateStateSetHelper();
-
- public:
- AccessibleCheckBoxCell(const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
- ::svt::IAccessibleTableProvider& _rBrowseBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- sal_Int32 _nRowPos,
- sal_uInt16 _nColPos,
- const TriState& _eState,
- sal_Bool _bEnabled,
- sal_Bool _bIsTriState = sal_True);
-
- // XInterface
- DECLARE_XINTERFACE( )
- // XTypeProvider
- DECLARE_XTYPEPROVIDER( )
-
- // XAccessible
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw ( ::com::sun::star::uno::RuntimeException );
- virtual ::sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
-
-
- // XAccessibleValue
- virtual ::com::sun::star::uno::Any SAL_CALL getCurrentValue( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCurrentValue( const ::com::sun::star::uno::Any& aNumber ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Any SAL_CALL getMaximumValue( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Any SAL_CALL getMinimumValue( ) throw (::com::sun::star::uno::RuntimeException);
-
- // internal
- void SetChecked( sal_Bool _bChecked );
- };
-}
-#endif // ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXCHECKBOXCELL_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxHeaderBar.hxx b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxHeaderBar.hxx
deleted file mode 100644
index 2cf5d0930..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxHeaderBar.hxx
+++ /dev/null
@@ -1,283 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXHEADERBAR_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXHEADERBAR_HXX
-
-#include "accessibility/extended/AccessibleBrowseBoxTableBase.hxx"
-#include <cppuhelper/implbase1.hxx>
-#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-
-// ============================================================================
-
-namespace accessibility {
-
-// ============================================================================
-
-typedef ::cppu::ImplHelper1<
- ::com::sun::star::accessibility::XAccessibleSelection >
- AccessibleBrowseBoxHeaderBarImplHelper;
-
-/** This class represents the accessible object of a header bar of a BrowseBox
- control (row or column header bar). This object supports the
- XAccessibleSelection interface. Selecting a child of this object selects
- complete rows or columns of the data table. */
-class AccessibleBrowseBoxHeaderBar :
- public AccessibleBrowseBoxTableBase,
- public AccessibleBrowseBoxHeaderBarImplHelper
-{
-public:
- /** @param eObjType One of the two allowed types BBTYPE_ROWHEADERBAR or
- BBTYPE_COLUMNHEADERBAR. */
- AccessibleBrowseBoxHeaderBar(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >& rxParent,
- ::svt::IAccessibleTableProvider& rBrowseBox,
- ::svt::AccessibleBrowseBoxObjType eObjType );
-
-protected:
- virtual ~AccessibleBrowseBoxHeaderBar();
-
-public:
- // XAccessibleContext -----------------------------------------------------
-
- /** @return
- The XAccessible interface of the specified child.
- */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleChild( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The index of this object among the parent's children. */
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XAccessibleComponent ---------------------------------------------------
-
- /** @return The accessible child rendered under the given point. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleAtPoint( const ::com::sun::star::awt::Point& rPoint )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Grabs the focus to (the current cell of) the data table. */
- virtual void SAL_CALL grabFocus()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The key bindings associated with this object. */
- virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleKeyBinding()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XAccessibleTable -------------------------------------------------------
-
- /** @return The description text of the specified row. */
- virtual ::rtl::OUString SAL_CALL
- getAccessibleRowDescription( sal_Int32 nRow )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The description text of the specified column. */
- virtual ::rtl::OUString SAL_CALL
- getAccessibleColumnDescription( sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The XAccessibleTable interface of the row header bar. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL
- getAccessibleRowHeaders()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The XAccessibleTable interface of the column header bar. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL
- getAccessibleColumnHeaders()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return An index list of completely selected rows. */
- virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL
- getSelectedAccessibleRows()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return An index list of completely selected columns. */
- virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL
- getSelectedAccessibleColumns()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the specified row is completely selected. */
- virtual sal_Bool SAL_CALL isAccessibleRowSelected( sal_Int32 nRow )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the specified column is completely selected. */
- virtual sal_Bool SAL_CALL isAccessibleColumnSelected( sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The XAccessible interface of the cell object at the specified
- cell position. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleCellAt( sal_Int32 nRow, sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the specified cell is selected. */
- virtual sal_Bool SAL_CALL isAccessibleSelected( sal_Int32 nRow, sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- // XAccessibleSelection ---------------------------------------------------
-
- /** Selects the specified child (row or column of the table). */
- virtual void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the specified child (row/column) is selected. */
- virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** Clears the complete selection. */
- virtual void SAL_CALL clearAccessibleSelection()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Selects all children or first, if multiselection is not supported. */
- virtual void SAL_CALL selectAllAccessibleChildren()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The number of selected rows/columns. */
- virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The specified selected row/column. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** Removes the specified row/column from the selection. */
- virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nSelectedChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- // XInterface -------------------------------------------------------------
-
- /** Queries for a new interface. */
- ::com::sun::star::uno::Any SAL_CALL queryInterface(
- const ::com::sun::star::uno::Type& rType )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Aquires the object (calls acquire() on base class). */
- virtual void SAL_CALL acquire() throw ();
-
- /** Releases the object (calls release() on base class). */
- virtual void SAL_CALL release() throw ();
-
- // XServiceInfo -----------------------------------------------------------
-
- /** @return The name of this class. */
- virtual ::rtl::OUString SAL_CALL getImplementationName()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return An unique implementation ID. */
- virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
- throw ( ::com::sun::star::uno::RuntimeException );
-
-protected:
- // internal virtual methods -----------------------------------------------
-
- /** @attention This method requires locked mutex's and a living object.
- @return The bounding box (VCL rect.) relative to the parent window. */
- virtual Rectangle implGetBoundingBox();
- /** @attention This method requires locked mutex's and a living object.
- @return The bounding box (VCL rect.) in screen coordinates. */
- virtual Rectangle implGetBoundingBoxOnScreen();
-
- /** @attention This method requires locked mutex's and a living object.
- @return The count of used rows. */
- virtual sal_Int32 implGetRowCount() const;
- /** @attention This method requires locked mutex's and a living object.
- @return The count of used columns. */
- virtual sal_Int32 implGetColumnCount() const;
-
- // internal helper methods ------------------------------------------------
-
- /** @return <TRUE/>, if the objects is a header bar for rows. */
- inline sal_Bool isRowBar() const;
- /** @return <TRUE/>, if the objects is a header bar for columns. */
- inline sal_Bool isColumnBar() const;
-
- /** Returns the specified row or column. Uses one of the parameters,
- depending on object type.
- @attention This method requires locked mutex's and a living object.
- @return The XAccessible interface of the specified column/row. */
- ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >
- implGetChild( sal_Int32 nRow, sal_uInt16 nColumnPos );
-
- /** @attention This method requires locked mutex's and a living object.
- @return The absolute child index from the index of selected children.
- @throws <type>IndexOutOfBoundsException</type>
- If the specified index is invalid. */
- sal_Int32 implGetChildIndexFromSelectedIndex( sal_Int32 nSelectedChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
-
- /** @attention This method requires locked mutex's and a living object.
- @throws <type>IndexOutOfBoundsException</type>
- If the specified row/column index (depending on type) is invalid. */
- void ensureIsValidHeaderIndex( sal_Int32 nIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
-};
-
-// inlines --------------------------------------------------------------------
-
-inline sal_Bool AccessibleBrowseBoxHeaderBar::isRowBar() const
-{
- return getType() == ::svt::BBTYPE_ROWHEADERBAR;
-}
-
-inline sal_Bool AccessibleBrowseBoxHeaderBar::isColumnBar() const
-{
- return getType() == ::svt::BBTYPE_COLUMNHEADERBAR;
-}
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxHeaderCell.hxx b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxHeaderCell.hxx
deleted file mode 100644
index f23822f5e..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxHeaderCell.hxx
+++ /dev/null
@@ -1,83 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXHEADERCELL_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXHEADERCELL_HXX
-
-#include "accessibility/extended/AccessibleBrowseBoxBase.hxx"
-
-namespace accessibility
-{
- class AccessibleBrowseBoxHeaderCell : public BrowseBoxAccessibleElement
- {
- sal_Int32 m_nColumnRowId;
- public:
- AccessibleBrowseBoxHeaderCell(sal_Int32 _nColumnRowId,
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent,
- ::svt::IAccessibleTableProvider& _rBrowseBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- ::svt::AccessibleBrowseBoxObjType _eObjType);
- /** @return The count of visible children. */
- virtual sal_Int32 SAL_CALL getAccessibleChildCount() throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The XAccessible interface of the specified child. */
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleChild( sal_Int32 nChildIndex ) throw ( ::com::sun::star::lang::IndexOutOfBoundsException,::com::sun::star::uno::RuntimeException );
-
- /** @return The index of this object among the parent's children. */
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent() throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Grabs the focus to the BrowseBox. */
- virtual void SAL_CALL grabFocus() throw ( ::com::sun::star::uno::RuntimeException );
-
- inline sal_Bool isRowBarCell() const
- {
- return getType() == ::svt::BBTYPE_ROWHEADERCELL;
- }
-
- /** @return
- The name of this class.
- */
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Creates a new AccessibleStateSetHelper and fills it with states of the
- current object.
- @return
- A filled AccessibleStateSetHelper.
- */
- ::utl::AccessibleStateSetHelper* implCreateStateSetHelper();
-
- protected:
- virtual Rectangle implGetBoundingBox();
-
- virtual Rectangle implGetBoundingBoxOnScreen();
- };
-}
-
-#endif // ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXHEADERCELL_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTable.hxx b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTable.hxx
deleted file mode 100644
index 0aca86571..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTable.hxx
+++ /dev/null
@@ -1,177 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXTABLE_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXTABLE_HXX
-
-#include "accessibility/extended/AccessibleBrowseBoxTableBase.hxx"
-
-// ============================================================================
-
-namespace accessibility {
-
-// ============================================================================
-
-/** This class represents the accessible object of the data table of a
- BrowseBox control. */
-class AccessibleBrowseBoxTable : public AccessibleBrowseBoxTableBase
-{
- friend class AccessibleBrowseBox; // to create header bars
-
-public:
- AccessibleBrowseBoxTable(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >& rxParent,
- ::svt::IAccessibleTableProvider& rBrowseBox );
-
-protected:
- virtual ~AccessibleBrowseBoxTable();
-
-public:
- // XAccessibleContext -----------------------------------------------------
-
- /** @return The XAccessible interface of the specified child. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleChild( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The index of this object among the parent's children. */
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XAccessibleComponent ---------------------------------------------------
-
- /** @return The accessible child rendered under the given point. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleAtPoint( const ::com::sun::star::awt::Point& rPoint )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Grabs the focus to (the current cell of) the data table. */
- virtual void SAL_CALL grabFocus()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The key bindings associated with this object. */
- virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleKeyBinding()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XAccessibleTable -------------------------------------------------------
-
- /** @return The description text of the specified row. */
- virtual ::rtl::OUString SAL_CALL getAccessibleRowDescription( sal_Int32 nRow )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The description text of the specified column. */
- virtual ::rtl::OUString SAL_CALL getAccessibleColumnDescription( sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The XAccessibleTable interface of the row header bar. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL
- getAccessibleRowHeaders()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The XAccessibleTable interface of the column header bar. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL
- getAccessibleColumnHeaders()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return An index list of completely selected rows. */
- virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL
- getSelectedAccessibleRows()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return An index list of completely selected columns. */
- virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL
- getSelectedAccessibleColumns()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the specified row is completely selected. */
- virtual sal_Bool SAL_CALL isAccessibleRowSelected( sal_Int32 nRow )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the specified column is completely selected. */
- virtual sal_Bool SAL_CALL isAccessibleColumnSelected( sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The XAccessible interface of the cell object at the specified
- cell position. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleCellAt( sal_Int32 nRow, sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the specified cell is selected. */
- virtual sal_Bool SAL_CALL isAccessibleSelected( sal_Int32 nRow, sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- // XServiceInfo -----------------------------------------------------------
-
- /** @return The name of this class. */
- virtual ::rtl::OUString SAL_CALL getImplementationName()
- throw ( ::com::sun::star::uno::RuntimeException );
-
-protected:
- // internal virtual methods -----------------------------------------------
-
- /** @attention This method requires locked mutex's and a living object.
- @return The bounding box (VCL rect.) relative to the parent window. */
- virtual Rectangle implGetBoundingBox();
- /** @attention This method requires locked mutex's and a living object.
- @return The bounding box (VCL rect.) in screen coordinates. */
- virtual Rectangle implGetBoundingBoxOnScreen();
-
- // internal helper methods ------------------------------------------------
-
- /** @attention This method requires a locked mutex.
- @return The XAccessibleTable interface of the specified header bar. */
- ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleTable >
- implGetHeaderBar( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::uno::RuntimeException );
-};
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTableBase.hxx b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTableBase.hxx
deleted file mode 100644
index c24001f31..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTableBase.hxx
+++ /dev/null
@@ -1,282 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXTABLEBASE_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBLEBROWSEBOXTABLEBASE_HXX
-
-#include "accessibility/extended/AccessibleBrowseBoxBase.hxx"
-#include <cppuhelper/implbase1.hxx>
-#include <com/sun/star/accessibility/XAccessibleTable.hpp>
-
-// ============================================================================
-
-namespace accessibility {
-
-typedef ::cppu::ImplHelper1<
- ::com::sun::star::accessibility::XAccessibleTable >
- AccessibleBrowseBoxTableImplHelper;
-
-/** The BrowseBox accessible table objects inherit from this base class. It
- implements basic functionality for the XAccessibleTable interface.
- BrowseBox table objects are: the data table, the column header bar and the
- row header bar. */
-class AccessibleBrowseBoxTableBase :
- public BrowseBoxAccessibleElement,
- public AccessibleBrowseBoxTableImplHelper
-{
-public:
- /** Constructor sets specified name and description. If the constant of a
- text is BBTEXT_NONE, the derived class has to set the text via
- implSetName() and implSetDescription() (in Ctor) or later via
- setAccessibleName() and setAccessibleDescription() (these methods
- notify the listeners about the change).
- @param rxParent XAccessible interface of the parent object.
- @param rBrowseBox The BrowseBox control.
- @param eNameText The constant for the name text.
- @param eDescrText The constant for the description text. */
- AccessibleBrowseBoxTableBase(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >& rxParent,
- ::svt::IAccessibleTableProvider& rBrowseBox,
- ::svt::AccessibleBrowseBoxObjType eObjType );
-
-protected:
- virtual ~AccessibleBrowseBoxTableBase();
-
-public:
- // XAccessibleContext -----------------------------------------------------
-
- /** @return The count of visible children. */
- virtual sal_Int32 SAL_CALL getAccessibleChildCount()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The role of this object (a table). */
- virtual sal_Int16 SAL_CALL getAccessibleRole()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /* Derived classes have to implement:
- - getAccessibleChild,
- - getAccessibleIndexInParent. */
-
- // XAccessibleComponent ---------------------------------------------------
-
- /* Derived classes have to implement:
- - getAccessibleAt,
- - grabFocus,
- - getAccessibleKeyBinding. */
-
- // XAccessibleTable -------------------------------------------------------
-
- /** @return The number of used rows in the table (0 = empty table). */
- virtual sal_Int32 SAL_CALL getAccessibleRowCount()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The number of used columns in the table (0 = empty table). */
- virtual sal_Int32 SAL_CALL getAccessibleColumnCount()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The row extent of the specified cell (always 1). */
- virtual sal_Int32 SAL_CALL
- getAccessibleRowExtentAt( sal_Int32 nRow, sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The column extent of the specified cell (always 1). */
- virtual sal_Int32 SAL_CALL
- getAccessibleColumnExtentAt( sal_Int32 nRow, sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The caption cell of the table (not supported). */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleCaption()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The summary object of the table (not supported). */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleSummary()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The child index of the specified cell. */
- virtual sal_Int32 SAL_CALL getAccessibleIndex( sal_Int32 nRow, sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The row index of the specified child cell. */
- virtual sal_Int32 SAL_CALL getAccessibleRow( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The column index of the specified child cell. */
- virtual sal_Int32 SAL_CALL getAccessibleColumn( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /* Derived classes have to implement:
- - getAccessibleRowDescription,
- - getAccessibleColumnDescription,
- - getAccessibleRowHeaders,
- - getAccessibleColumnHeaders,
- - getSelectedAccessibleRows,
- - getSelectedAccessibleColumns,
- - isAccessibleRowSelected,
- - isAccessibleColumnSelected,
- - getAccessibleCellAt,
- - isAccessibleSelected. */
-
- // XInterface -------------------------------------------------------------
-
- /** Queries for a new interface. */
- ::com::sun::star::uno::Any SAL_CALL queryInterface(
- const ::com::sun::star::uno::Type& rType )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Aquires the object (calls acquire() on base class). */
- virtual void SAL_CALL acquire() throw ();
-
- /** Releases the object (calls release() on base class). */
- virtual void SAL_CALL release() throw ();
-
- // XTypeProvider ----------------------------------------------------------
-
- /** @return A sequence of possible types (received from base classes). */
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return An unique implementation ID. */
- virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XServiceInfo -----------------------------------------------------------
-
- /* Derived classes have to implement:
- - getImplementationName */
-
-protected:
- // internal virtual methods -----------------------------------------------
-
- /** @attention This method requires locked mutex's and a living object.
- @return The count of data rows without header bar. */
- virtual sal_Int32 implGetRowCount() const;
- /** @attention This method requires locked mutex's and a living object.
- @return The count of data columns without "handle column". */
- virtual sal_Int32 implGetColumnCount() const;
-
- // internal helper methods ------------------------------------------------
-
- /** @return <TRUE/>, if first BrowseBox column is the "handle column". */
- sal_Bool implHasHandleColumn() const;
-
- /** @attention This method requires locked mutex's and a living object.
- @param nColumn
- the position of the column in the Accessible world
- @return
- the position of the column in VCL the Accessible world
- */
- sal_uInt16 implToVCLColumnPos( sal_Int32 nColumn ) const;
-
- /** @attention This method requires locked mutex's and a living object.
- @return The number of cells of the table. */
- sal_Int32 implGetChildCount() const;
-
- /** @attention This method requires locked mutex's and a living object.
- @return The row index of the specified cell index. */
- sal_Int32 implGetRow( sal_Int32 nChildIndex ) const;
- /** @attention This method requires locked mutex's and a living object.
- @return The column index of the specified cell index. */
- sal_Int32 implGetColumn( sal_Int32 nChildIndex ) const;
- /** @attention This method requires locked mutex's and a living object.
- @return The child index of the specified cell address. */
- sal_Int32 implGetChildIndex( sal_Int32 nRow, sal_Int32 nColumn ) const;
-
- /** @attention This method requires locked mutex's and a living object.
- @return <TRUE/>, if the specified row is selected. */
- sal_Bool implIsRowSelected( sal_Int32 nRow ) const;
- /** @attention This method requires locked mutex's and a living object.
- @return <TRUE/>, if the specified column is selected. */
- sal_Bool implIsColumnSelected( sal_Int32 nColumn ) const;
-
- /** Selects/deselects a row (tries to expand selection).
- @attention This method requires locked mutex's and a living object.
- @param bSelect <TRUE/> = select, <FALSE/> = deselect */
- void implSelectRow( sal_Int32 nRow, sal_Bool bSelect );
- /** Selects/deselects a column (tries to expand selection).
- @attention This method requires locked mutex's and a living object.
- @param bSelect <TRUE/> = select, <FALSE/> = deselect */
- void implSelectColumn( sal_Int32 nColumnPos, sal_Bool bSelect );
-
- /** @attention This method requires locked mutex's and a living object.
- @return The count of selected rows. */
- sal_Int32 implGetSelectedRowCount() const;
- /** @attention This method requires locked mutex's and a living object.
- @return The count of selected columns. */
- sal_Int32 implGetSelectedColumnCount() const;
-
- /** Fills a sequence with sorted indexes of completely selected rows.
- @attention This method requires locked mutex's and a living object.
- @param rSeq Out-parameter that takes the sorted row index list. */
- void implGetSelectedRows( ::com::sun::star::uno::Sequence< sal_Int32 >& rSeq );
- /** Fills a sequence with sorted indexes of completely selected columns.
- @attention This method requires locked mutex's and a living object.
- @param rSeq Out-parameter that takes the sorted column index list. */
- void implGetSelectedColumns( ::com::sun::star::uno::Sequence< sal_Int32 >& rSeq );
-
- /** @attention This method requires locked mutex's and a living object.
- @throws <type>IndexOutOfBoundsException</type>
- If the specified row index is invalid. */
- void ensureIsValidRow( sal_Int32 nRow )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
- /** @attention This method requires locked mutex's and a living object.
- @throws <type>IndexOutOfBoundsException</type>
- If the specified column index is invalid. */
- void ensureIsValidColumn( sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
- /** @attention This method requires locked mutex's and a living object.
- @throws <type>IndexOutOfBoundsException</type>
- If the specified cell address is invalid. */
- void ensureIsValidAddress( sal_Int32 nRow, sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
- /** @attention This method requires locked mutex's and a living object.
- @throws <type>IndexOutOfBoundsException</type>
- If the specified child index is invalid. */
- void ensureIsValidIndex( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
-};
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTableCell.hxx b/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTableCell.hxx
deleted file mode 100644
index cc2f2d6cc..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleBrowseBoxTableCell.hxx
+++ /dev/null
@@ -1,145 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef ACCESSIBILITY_EXT_ACCESSIBILEBROWSEBOXTABLECELL_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBILEBROWSEBOXTABLECELL_HXX
-
-#include "accessibility/extended/accessiblebrowseboxcell.hxx"
-#include <comphelper/accessibletexthelper.hxx>
-#include <cppuhelper/implbase2.hxx>
-
-namespace accessibility
-{
- typedef ::cppu::ImplHelper2 < ::com::sun::star::accessibility::XAccessibleText
- , ::com::sun::star::accessibility::XAccessible
- > AccessibleTextHelper_BASE;
-
- // implementation of a table cell of BrowseBox
- class AccessibleBrowseBoxTableCell :public AccessibleBrowseBoxCell
- ,public AccessibleTextHelper_BASE
- ,public ::comphelper::OCommonAccessibleText
- {
- private:
- sal_Int32 m_nOffset;
-
- protected:
- // OCommonAccessibleText
- virtual ::rtl::OUString implGetText();
- virtual ::com::sun::star::lang::Locale implGetLocale();
- virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
-
- public:
- AccessibleBrowseBoxTableCell( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
- ::svt::IAccessibleTableProvider& _rBrowseBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- sal_Int32 _nRowId,
- sal_uInt16 _nColId,
- sal_Int32 _nOffset );
-
- void nameChanged( const ::rtl::OUString& rNewName, const ::rtl::OUString& rOldName );
-
- // XInterface -------------------------------------------------------------
-
- /** Queries for a new interface. */
- ::com::sun::star::uno::Any SAL_CALL queryInterface(
- const ::com::sun::star::uno::Type& rType )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Aquires the object (calls acquire() on base class). */
- virtual void SAL_CALL acquire() throw ();
-
- /** Releases the object (calls release() on base class). */
- virtual void SAL_CALL release() throw ();
-
- // XEventListener
- using AccessibleBrowseBoxBase::disposing;
- virtual void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& Source )
- throw(::com::sun::star::uno::RuntimeException);
-
- /** @return The index of this object among the parent's children. */
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The name of this class.
- */
- virtual ::rtl::OUString SAL_CALL getImplementationName()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The count of visible children.
- */
- virtual sal_Int32 SAL_CALL getAccessibleChildCount()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The XAccessible interface of the specified child.
- */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleChild( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** Creates a new AccessibleStateSetHelper and fills it with states of the
- current object.
- @return
- A filled AccessibleStateSetHelper.
- */
- ::utl::AccessibleStateSetHelper* implCreateStateSetHelper();
-
- // XAccessible ------------------------------------------------------------
-
- /** @return The XAccessibleContext interface of this object. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL
- getAccessibleContext()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XAccessibleText
- virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getCharacterCount() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getSelectedText() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectionStart() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectionEnd() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getText() throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- };
-}
-#endif // ACCESSIBILITY_EXT_ACCESSIBILEBROWSEBOXTABLECELL_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/AccessibleGridControl.hxx b/accessibility/inc/accessibility/extended/AccessibleGridControl.hxx
deleted file mode 100644
index df113fa7a..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleGridControl.hxx
+++ /dev/null
@@ -1,267 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROL_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROL_HXX
-
-#include <accessibility/extended/AccessibleGridControlBase.hxx>
-#include <accessibility/extended/AccessibleGridControlTable.hxx>
-#include <cppuhelper/weakref.hxx>
-#include <svtools/accessibletable.hxx>
-
-
-#include <memory>
-
-using namespace ::svt::table;
-
-// ============================================================================
-
-namespace accessibility {
-
- class AccessibleGridControl_Impl;
-
-// ============================================================================
-
-/** This class represents the complete accessible Grid Control object. */
-class AccessibleGridControl : public AccessibleGridControlBase
-{
- friend class AccessibleGridControlAccess;
-
-protected:
- AccessibleGridControl(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxCreator,
- ::svt::table::IAccessibleTable& _rTable
- );
-
- virtual ~AccessibleGridControl();
-
- /** Cleans up members. */
- using AccessibleGridControlBase::disposing;
- virtual void SAL_CALL disposing();
-
-protected:
- // XAccessibleContext -----------------------------------------------------
-
- /** @return The count of visible children. */
- virtual sal_Int32 SAL_CALL getAccessibleChildCount()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The XAccessible interface of the specified child. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleChild( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The role of this object (a table). */
- virtual sal_Int16 SAL_CALL getAccessibleRole()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XAccessibleComponent ---------------------------------------------------
-
- /** @return
- The accessible child rendered under the given point.
- */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleAtPoint( const ::com::sun::star::awt::Point& rPoint )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Grabs the focus to the Grid Control. */
- virtual void SAL_CALL grabFocus()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The key bindings associated with this object. */
- virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleKeyBinding()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XServiceInfo -----------------------------------------------------------
-
- /** @return
- The name of this class.
- */
- virtual ::rtl::OUString SAL_CALL getImplementationName()
- throw ( ::com::sun::star::uno::RuntimeException );
-
-public:
- // helper functions
- /** returns the accessible object for the row or the column header bar
- */
- inline ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >
- getHeaderBar( ::svt::table::AccessibleTableControlObjType _eObjType )
- {
- return implGetHeaderBar(_eObjType);
- }
-
- /** returns the accessible object for the table representation
- */
- inline ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >
- getTable( )
- {
- return implGetTable();
- }
-
-protected:
- // internal virtual methods -----------------------------------------------
-
- /** @attention This method requires locked mutex's and a living object.
- @return The bounding box (VCL rect.) relative to the parent window. */
- virtual Rectangle implGetBoundingBox();
- /** @attention This method requires locked mutex's and a living object.
- @return The bounding box (VCL rect.) in screen coordinates. */
- virtual Rectangle implGetBoundingBoxOnScreen();
-
- // internal helper methods ------------------------------------------------
-
- /** This method creates (once) and returns the accessible data table child.
- @attention This method requires locked mutex's and a living object.
- @return The XAccessible interface of the data table. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > implGetTable();
-
- /** This method creates (once) and returns the specified header bar.
- @attention This method requires locked mutex's and a living object.
- @return The XAccessible interface of the header bar. */
- ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >
- implGetHeaderBar( ::svt::table::AccessibleTableControlObjType eObjType );
-
- /** This method returns one of the children that are always present:
- Data table, row and column header bar or corner control.
- @attention This method requires locked mutex's and a living object.
- @return The XAccessible interface of the specified child. */
- ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >
- implGetFixedChild( sal_Int32 nChildIndex );
-
- /** This method creates and returns an accessible table.
- @return An AccessibleGridControlTable. */
- virtual AccessibleGridControlTable* createAccessibleTable();
-
-private:
- // members ----------------------------------------------------------------
- ::std::auto_ptr< AccessibleGridControl_Impl > m_pImpl;
-};
-
-// ============================================================================
-/** the XAccessible which creates/returns an AccessibleGridControl
-
- <p>The instance holds it's XAccessibleContext with a hard reference, while
- the contxt holds this instance weak.</p>
-*/
-typedef ::cppu::WeakImplHelper1 < ::com::sun::star::accessibility::XAccessible > AccessibleGridControlAccess_Base;
-
-class AccessibleGridControlAccess :public AccessibleGridControlAccess_Base
- ,public ::svt::table::IAccessibleTableControl
-{
-private:
- ::osl::Mutex m_aMutex;
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- m_xParent;
- ::svt::table::IAccessibleTable& m_rTable;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- m_xContext;
- AccessibleGridControl* m_pContext;
- // note that this pointer is valid as long as m_xContext is valid!
-
-public:
- AccessibleGridControlAccess(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
- ::svt::table::IAccessibleTable& _rTable
- );
-
- /// checks whether the accessible context is still alive
- bool isContextAlive() const;
-
- /// returns the AccessibleContext belonging to this Accessible
- inline AccessibleGridControl* getContext() { return m_pContext; }
- inline const AccessibleGridControl* getContext() const { return m_pContext; }
-
-protected:
- virtual ~AccessibleGridControlAccess();
-
- // XAccessible
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- SAL_CALL getAccessibleContext() throw ( ::com::sun::star::uno::RuntimeException );
-
- // IAccessibleTable
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- getMyself()
- {
- return this;
- }
- void dispose();
- virtual sal_Bool isAlive() const
- {
- return isContextAlive();
- }
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- getTableHeader( ::svt::table::AccessibleTableControlObjType _eObjType )
- {
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xAccessible;
- AccessibleGridControl* pContext( getContext() );
- if ( pContext )
- xAccessible = pContext->getHeaderBar( _eObjType );
- return xAccessible;
- }
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- getTable()
- {
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > xAccessible;
- AccessibleGridControl* pContext( getContext() );
- if ( pContext )
- xAccessible = pContext->getTable();
- return xAccessible;
- }
- virtual void commitEvent( sal_Int16 nEventId,
- const ::com::sun::star::uno::Any& rNewValue, const ::com::sun::star::uno::Any& rOldValue )
- {
- AccessibleGridControl* pContext( getContext() );
- if ( pContext )
- pContext->commitEvent( nEventId, rNewValue, rOldValue );
- }
-
-private:
- AccessibleGridControlAccess(); // never implemented
- AccessibleGridControlAccess( const AccessibleGridControlAccess& ); // never implemented
- AccessibleGridControlAccess& operator=( const AccessibleGridControlAccess& ); // never implemented
-};
-
-// ============================================================================
-} // namespace accessibility
-
-// ============================================================================
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/AccessibleGridControlBase.hxx b/accessibility/inc/accessibility/extended/AccessibleGridControlBase.hxx
deleted file mode 100644
index 8cb276413..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleGridControlBase.hxx
+++ /dev/null
@@ -1,457 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLBASE_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLBASE_HXX
-
-#include <svtools/accessibletable.hxx>
-#include <tools/debug.hxx>
-#include <rtl/ustring.hxx>
-#include <tools/gen.hxx>
-#include <vcl/svapp.hxx>
-#include <cppuhelper/compbase4.hxx>
-#include <comphelper/broadcasthelper.hxx>
-#include <unotools/accessiblestatesethelper.hxx>
-#include <toolkit/helper/convert.hxx>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/lang/DisposedException.hpp>
-#include <com/sun/star/awt/XWindow.hpp>
-#include <com/sun/star/accessibility/XAccessible.hpp>
-#include <com/sun/star/accessibility/XAccessibleContext.hpp>
-#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
-#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/awt/XFocusListener.hpp>
-#include <comphelper/accessibleeventnotifier.hxx>
-#include <comphelper/uno3.hxx>
-
-// ============================================================================
-
-class Window;
-
-namespace utl {
- class AccessibleStateSetHelper;
-}
-
-// ============================================================================
-
-namespace accessibility {
-
-// ============================================================================
-
-// ============================================================================
-
-typedef ::cppu::WeakAggComponentImplHelper4<
- ::com::sun::star::accessibility::XAccessibleContext,
- ::com::sun::star::accessibility::XAccessibleComponent,
- ::com::sun::star::accessibility::XAccessibleEventBroadcaster,
- ::com::sun::star::lang::XServiceInfo >
- AccessibleGridControlImplHelper;
-
-/** The GridControl accessible objects inherit from this base class. It
- implements basic functionality for various Accessibility interfaces and
- the event broadcaster and contains the ::osl::Mutex. */
-class AccessibleGridControlBase :
- public ::comphelper::OBaseMutex,
- public AccessibleGridControlImplHelper
-{
-public:
- /** Constructor sets specified name and description.
- @param rxParent XAccessible interface of the parent object.
- @param rTable The Table control.
- @param eNameText The constant for the name text.
- @param eDescrText The constant for the description text. */
- AccessibleGridControlBase(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >& rxParent,
- ::svt::table::IAccessibleTable& rTable,
- ::svt::table::AccessibleTableControlObjType eObjType );
-
-protected:
- virtual ~AccessibleGridControlBase();
-
- /** Commits DeFunc event to listeners and cleans up members. */
- virtual void SAL_CALL disposing();
-
-public:
- // XAccessibleContext -----------------------------------------------------
-
- /** @return A reference to the parent accessible object. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleParent()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The index of this object among the parent's children. */
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The description of this object.
- */
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The name of this object.
- */
- virtual ::rtl::OUString SAL_CALL getAccessibleName()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The relation set (the GridControl does not have one).
- */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL
- getAccessibleRelationSet()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The set of current states. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL
- getAccessibleStateSet()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The parent's locale. */
- virtual ::com::sun::star::lang::Locale SAL_CALL getLocale()
- throw ( ::com::sun::star::accessibility::IllegalAccessibleComponentStateException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The role of this object. Panel, ROWHEADER, COLUMNHEADER, TABLE, TABLE_CELL are supported.
- */
- virtual sal_Int16 SAL_CALL getAccessibleRole()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /* Derived classes have to implement:
- - getAccessibleChildCount,
- - getAccessibleChild,
- - getAccessibleRole.
- Derived classes may overwrite getAccessibleIndexInParent to increase
- performance. */
-
- // XAccessibleComponent ---------------------------------------------------
-
- /** @return
- <TRUE/>, if the point lies within the bounding box of this object. */
- virtual sal_Bool SAL_CALL containsPoint( const ::com::sun::star::awt::Point& rPoint )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The bounding box of this object. */
- virtual ::com::sun::star::awt::Rectangle SAL_CALL getBounds()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The upper left corner of the bounding box relative to the parent. */
- virtual ::com::sun::star::awt::Point SAL_CALL getLocation()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The upper left corner of the bounding box in screen coordinates. */
- virtual ::com::sun::star::awt::Point SAL_CALL getLocationOnScreen()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The size of the bounding box. */
- virtual ::com::sun::star::awt::Size SAL_CALL getSize()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the object is showing. */
- virtual sal_Bool SAL_CALL isShowing()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the object is visible. */
- virtual sal_Bool SAL_CALL isVisible()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the object can accept the focus. */
- virtual sal_Bool SAL_CALL isFocusTraversable()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
-
-
- /* Derived classes have to implement:
- - getAccessibleAt,
- - grabFocus,
- - getAccessibleKeyBinding. */
-
- /** @return
- No key bindings supported by default.
- */
- virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleKeyBinding()
- throw ( ::com::sun::star::uno::RuntimeException );
- /** @return
- The accessible child rendered under the given point.
- */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleAtPoint( const ::com::sun::star::awt::Point& rPoint )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XAccessibleEventBroadcaster --------------------------------------------
-
- /** Adds a new event listener */
- using cppu::WeakAggComponentImplHelperBase::addEventListener;
- virtual void SAL_CALL addEventListener(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleEventListener>& rxListener )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Removes an event listener. */
- using cppu::WeakAggComponentImplHelperBase::removeEventListener;
- virtual void SAL_CALL removeEventListener(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleEventListener>& rxListener )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XTypeProvider ----------------------------------------------------------
-
- /** @return An unique implementation ID. */
- virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XServiceInfo -----------------------------------------------------------
-
- /** @return Whether the specified service is supported by this class. */
- virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return A list of all supported services. */
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
- getSupportedServiceNames()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /* Derived classes have to implement:
- - getImplementationName. */
-
- // helper methods ---------------------------------------------------------
-
- /** @return The GridControl object type. */
- inline ::svt::table::AccessibleTableControlObjType getType() const;
-
- /** Commits an event to all listeners. */
- void commitEvent(
- sal_Int16 nEventId,
- const ::com::sun::star::uno::Any& rNewValue,
-
- const ::com::sun::star::uno::Any& rOldValue );
- /** @return <TRUE/>, if the object is not disposed or disposing. */
- sal_Bool isAlive() const;
-
-protected:
- // internal virtual methods -----------------------------------------------
-
- /** Determines whether the Grid control is really showing inside of
- its parent accessible window. Derived classes may implement different
- behaviour.
- @attention This method requires locked mutex's and a living object.
- @return <TRUE/>, if the object is really showing. */
- virtual sal_Bool implIsShowing();
-
- /** Derived classes return the bounding box relative to the parent window.
- @attention This method requires locked mutex's and a living object.
- @return The bounding box (VCL rect.) relative to the parent window. */
- virtual Rectangle implGetBoundingBox() = 0;
- ///** Derived classes return the bounding box in screen coordinates.
- // @attention This method requires locked mutex's and a living object.
- // @return The bounding box (VCL rect.) in screen coordinates. */
- virtual Rectangle implGetBoundingBoxOnScreen() = 0;
-
- /** Creates a new AccessibleStateSetHelper and fills it with states of the
- current object. This method calls FillStateSet at the GridControl which
- fills it with more states depending on the object type. Derived classes
- may overwrite this method and add more states.
- @attention This method requires locked mutex's.
- @return A filled AccessibleStateSetHelper. */
- virtual ::utl::AccessibleStateSetHelper* implCreateStateSetHelper();
-
- // internal helper methods ------------------------------------------------
-
- /** @throws <type>DisposedException</type> If the object is not alive. */
- void ensureIsAlive() const
- throw ( ::com::sun::star::lang::DisposedException );
-
- /** @return The ::osl::Mutex member provided by the class OBaseMutex. */
- inline ::osl::Mutex& getOslMutex();
- /** @return Pointer to the global ::osl::Mutex. */
- static inline ::osl::Mutex* getOslGlobalMutex();
-
- /** Changes the name of the object (flat assignment, no notify).
- @attention This method requires a locked mutex. */
- inline void implSetName( const ::rtl::OUString& rName );
- /** Changes the description of the object (flat assignment, no notify).
- @attention This method requires a locked mutex. */
- inline void implSetDescription( const ::rtl::OUString& rDescription );
-
- /** Locks all mutex's and calculates the bounding box relative to the
- parent window.
- @return The bounding box (VCL rect.) relative to the parent object. */
- Rectangle getBoundingBox()
- throw ( ::com::sun::star::lang::DisposedException );
- ///** Locks all mutex's and calculates the bounding box in screen
- // coordinates.
- // @return The bounding box (VCL rect.) in screen coordinates. */
- Rectangle getBoundingBoxOnScreen()
- throw ( ::com::sun::star::lang::DisposedException );
-
- ::comphelper::AccessibleEventNotifier::TClientId getClientId() const { return m_aClientId; }
- void setClientId(::comphelper::AccessibleEventNotifier::TClientId _aNewClientId) { m_aClientId = _aNewClientId; }
-
-public:
- // public versions of internal helper methods, with access control
- struct TC_AccessControl { friend class TC_SolarMethodGuard; private: TC_AccessControl() { } };
-
- inline ::osl::Mutex& getMutex( const TC_AccessControl& ) { return getOslMutex(); }
- inline void ensureIsAlive( const TC_AccessControl& ) { ensureIsAlive(); }
-
-protected:
- // members ----------------------------------------------------------------
-
- /** The parent accessible object. */
- ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > m_xParent;
- /** The SVT Table control. */
- ::svt::table::IAccessibleTable& m_aTable;
- /** The type of this object (for names, descriptions, state sets, ...). */
- ::svt::table::AccessibleTableControlObjType m_eObjType;
-
-private:
- /** Localized name. */
- ::rtl::OUString m_aName;
- /** Localized description text. */
- ::rtl::OUString m_aDescription;
- ::comphelper::AccessibleEventNotifier::TClientId m_aClientId;
-};
-
-// ============================================================================
-// a version of AccessibleGridControlBase which implements not only the XAccessibleContext,
-// but also the XAccessible
-
-typedef ::cppu::ImplHelper1 < ::com::sun::star::accessibility::XAccessible
- > GridControlAccessibleElement_Base;
-
-class GridControlAccessibleElement
- :public AccessibleGridControlBase
- ,public GridControlAccessibleElement_Base
-{
-protected:
- /** Constructor sets specified name and description.
-
- @param rxParent XAccessible interface of the parent object.
- @param rTable The Table control.
- @param eNameText The constant for the name text.
- @param eDescrText The constant for the description text.
- */
- GridControlAccessibleElement(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >& rxParent,
- ::svt::table::IAccessibleTable& rTable,
- ::svt::table::AccessibleTableControlObjType eObjType );
-
-public:
- // XInterface
- DECLARE_XINTERFACE( )
- // XTypeProvider
- DECLARE_XTYPEPROVIDER( )
-
-protected:
- virtual ~GridControlAccessibleElement();
-
-protected:
- // XAccessible ------------------------------------------------------------
-
- /** @return The XAccessibleContext interface of this object. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL
- getAccessibleContext()
- throw ( ::com::sun::star::uno::RuntimeException );
-
-private:
- GridControlAccessibleElement(); // never implemented
- GridControlAccessibleElement( const GridControlAccessibleElement& ); // never implemented
- GridControlAccessibleElement& operator=( const GridControlAccessibleElement& ); // never implemented
-};
-
-// ============================================================================
-// a helper class for protecting methods which need to lock the solar mutex in addition to the own mutex
-
-typedef ::osl::MutexGuard OslMutexGuard;
-
-class TC_SolarMethodGuard : public SolarMutexGuard, public OslMutexGuard
-{
-public:
- inline TC_SolarMethodGuard( AccessibleGridControlBase& _rOwner, bool _bEnsureAlive = true )
- : SolarMutexGuard(),
- OslMutexGuard( _rOwner.getMutex( AccessibleGridControlBase::TC_AccessControl() ) )
- {
- if ( _bEnsureAlive )
- _rOwner.ensureIsAlive( AccessibleGridControlBase::TC_AccessControl() );
- }
-};
-
-// inlines --------------------------------------------------------------------
-
-inline ::svt::table::AccessibleTableControlObjType AccessibleGridControlBase::getType() const
-{
- return m_eObjType;
-}
-
-inline ::osl::Mutex& AccessibleGridControlBase::getOslMutex()
-{
- return m_aMutex;
-}
-
-inline ::osl::Mutex* AccessibleGridControlBase::getOslGlobalMutex()
-{
- return ::osl::Mutex::getGlobalMutex();
-}
-
-inline void AccessibleGridControlBase::implSetName(
- const ::rtl::OUString& rName )
-{
- m_aName = rName;
-}
-
-inline void AccessibleGridControlBase::implSetDescription(
- const ::rtl::OUString& rDescription )
-{
- m_aDescription = rDescription;
-}
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-#endif // ACCESSIBILITY_EXT_ACCESSIBILEGRIDCONTROLBASE_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/AccessibleGridControlHeader.hxx b/accessibility/inc/accessibility/extended/AccessibleGridControlHeader.hxx
deleted file mode 100644
index 21cd9d8bc..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleGridControlHeader.hxx
+++ /dev/null
@@ -1,220 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLHEADER_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLHEADER_HXX
-
-
-#include "accessibility/extended/AccessibleGridControlHeaderCell.hxx"
-#include "accessibility/extended/AccessibleGridControlTableBase.hxx"
-
-// ============================================================================
-
-namespace accessibility {
-
-// ============================================================================
-
-/** This class represents the accessible object of a header bar of a Grid Control
- (row or column header bar). This object supports the
- XAccessibleSelection interface. Selecting a child of this object selects
- complete rows or columns of the data table. */
-class AccessibleGridControlHeader : public AccessibleGridControlTableBase
-{
-public:
- /** @param eObjType One of the two allowed types TCTYPE_ROWHEADERBAR or
- TCTYPE_COLUMNHEADERBAR. */
- AccessibleGridControlHeader(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >& rxParent,
- ::svt::table::IAccessibleTable& rTable,
- ::svt::table::AccessibleTableControlObjType eObjType );
-
-protected:
- virtual ~AccessibleGridControlHeader();
-
-public:
- // XAccessibleContext -----------------------------------------------------
-
- /** @return
- The XAccessible interface of the specified child.
- */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleChild( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The index of this object among the parent's children. */
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XAccessibleComponent ---------------------------------------------------
-
- /** @return The accessible child rendered under the given point. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleAtPoint( const ::com::sun::star::awt::Point& rPoint )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Grabs the focus to (the current cell of) the data table. */
- virtual void SAL_CALL grabFocus()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The key bindings associated with this object. */
- virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleKeyBinding()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XAccessibleTable -------------------------------------------------------
-
- /** @return The description text of the specified row. */
- virtual ::rtl::OUString SAL_CALL
- getAccessibleRowDescription( sal_Int32 nRow )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The description text of the specified column. */
- virtual ::rtl::OUString SAL_CALL
- getAccessibleColumnDescription( sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The XAccessibleTable interface of the row header bar. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL
- getAccessibleRowHeaders()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The XAccessibleTable interface of the column header bar. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL
- getAccessibleColumnHeaders()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return An index list of completely selected rows. */
- virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL
- getSelectedAccessibleRows()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return An index list of completely selected columns. */
- virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL
- getSelectedAccessibleColumns()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the specified row is completely selected. */
- virtual sal_Bool SAL_CALL isAccessibleRowSelected( sal_Int32 nRow )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the specified column is completely selected. */
- virtual sal_Bool SAL_CALL isAccessibleColumnSelected( sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The XAccessible interface of the cell object at the specified
- cell position. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleCellAt( sal_Int32 nRow, sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the specified cell is selected. */
- virtual sal_Bool SAL_CALL isAccessibleSelected( sal_Int32 nRow, sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- // XServiceInfo -----------------------------------------------------------
-
- /** @return The name of this class. */
- virtual ::rtl::OUString SAL_CALL getImplementationName()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return An unique implementation ID. */
- virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
- throw ( ::com::sun::star::uno::RuntimeException );
-
-protected:
- // internal virtual methods -----------------------------------------------
- /** @attention This method requires locked mutex's and a living object.
- @return The absolute child index from the index of selected children.
- @throws <type>IndexOutOfBoundsException</type>
- If the specified index is invalid. */
- //sal_Int32 implGetChildIndexFromSelectedIndex( sal_Int32 nSelectedChildIndex )
- // throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
-
- /** Returns the specified row or column. Uses one of the parameters,
- depending on object type.
- @attention This method requires locked mutex's and a living object.
- @return The XAccessible interface of the specified column/row. */
- ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >
- implGetChild( sal_Int32 nRow, sal_uInt32 nColumnPos );
- /** @attention This method requires locked mutex's and a living object.
- @return The bounding box (VCL rect.) relative to the parent window. */
- virtual Rectangle implGetBoundingBox();
- /** @attention This method requires locked mutex's and a living object.
- @return The bounding box (VCL rect.) in screen coordinates. */
- virtual Rectangle implGetBoundingBoxOnScreen();
-
- /** @attention This method requires locked mutex's and a living object.
- @return The count of used rows. */
- virtual sal_Int32 implGetRowCount() const;
- /** @attention This method requires locked mutex's and a living object.
- @return The count of used columns. */
- virtual sal_Int32 implGetColumnCount() const;
-
- // internal helper methods ------------------------------------------------
-
- /** @return <TRUE/>, if the objects is a header bar for rows. */
- inline sal_Bool isRowBar() const;
- /** @return <TRUE/>, if the objects is a header bar for columns. */
- inline sal_Bool isColumnBar() const;
-};
-
-// inlines --------------------------------------------------------------------
-
-inline sal_Bool AccessibleGridControlHeader::isRowBar() const
-{
- return getType() == ::svt::table::TCTYPE_ROWHEADERBAR;
-}
-
-inline sal_Bool AccessibleGridControlHeader::isColumnBar() const
-{
- return getType() == ::svt::table::TCTYPE_COLUMNHEADERBAR;
-}
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-#endif // ACCESSIBILITY_EXT_ACCESSIBILEGRIDCONTROLHEADER_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/AccessibleGridControlHeaderCell.hxx b/accessibility/inc/accessibility/extended/AccessibleGridControlHeaderCell.hxx
deleted file mode 100644
index e8b495205..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleGridControlHeaderCell.hxx
+++ /dev/null
@@ -1,104 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLHEADERCELL_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLHEADERCELL_HXX
-
-#include "accessibility/extended/AccessibleGridControlTableCell.hxx"
-
-namespace accessibility
-{
- class AccessibleGridControlHeaderCell : public AccessibleGridControlCell, public ::com::sun::star::accessibility::XAccessible
- {
- sal_Int32 m_nColumnRowId;
- public:
- AccessibleGridControlHeaderCell(sal_Int32 _nColumnRowId,
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent,
- ::svt::table::IAccessibleTable& _rTable,
- ::svt::table::AccessibleTableControlObjType _eObjType);
- /** @return The count of visible children. */
- virtual sal_Int32 SAL_CALL getAccessibleChildCount() throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The XAccessible interface of the specified child. */
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleChild( sal_Int32 nChildIndex ) throw ( ::com::sun::star::lang::IndexOutOfBoundsException,::com::sun::star::uno::RuntimeException );
-
- /** @return The index of this object among the parent's children. */
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent() throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Grabs the focus to the GridControl. */
- virtual void SAL_CALL grabFocus() throw ( ::com::sun::star::uno::RuntimeException );
-
- // XInterface -------------------------------------------------------------
-
- /** Queries for a new interface. */
- ::com::sun::star::uno::Any SAL_CALL queryInterface(
- const ::com::sun::star::uno::Type& rType )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Aquires the object (calls acquire() on base class). */
- virtual void SAL_CALL acquire() throw ();
-
- /** Releases the object (calls release() on base class). */
- virtual void SAL_CALL release() throw ();
- // XAccessible ------------------------------------------------------------
-
- /** @return The XAccessibleContext interface of this object. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL
- getAccessibleContext()
- throw ( ::com::sun::star::uno::RuntimeException );
- //-------------------------------------------------------------------------
- inline sal_Bool isRowBarCell() const
- {
- return getType() == ::svt::table::TCTYPE_ROWHEADERCELL;
- }
-
- /** @return
- The name of this class.
- */
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Creates a new AccessibleStateSetHelper and fills it with states of the
- current object.
- @return
- A filled AccessibleStateSetHelper.
- */
- ::utl::AccessibleStateSetHelper* implCreateStateSetHelper();
-
- protected:
- virtual Rectangle implGetBoundingBox();
-
- virtual Rectangle implGetBoundingBoxOnScreen();
- private:
- ::rtl::OUString m_sHeaderName;
- };
-}
-
-#endif // ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLHEADERCELL_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/AccessibleGridControlTable.hxx b/accessibility/inc/accessibility/extended/AccessibleGridControlTable.hxx
deleted file mode 100644
index 63ac7545e..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleGridControlTable.hxx
+++ /dev/null
@@ -1,228 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLTABLE_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLTABLE_HXX
-
-#include "accessibility/extended/AccessibleGridControlTableBase.hxx"
-#include <cppuhelper/implbase1.hxx>
-#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-
-// ============================================================================
-
-namespace accessibility {
-
-// ============================================================================
-typedef ::cppu::ImplHelper1<
- ::com::sun::star::accessibility::XAccessibleSelection >
- AccessibleGridControlTableImplHelper1;
-/** This class represents the accessible object of the data table of a
- Grid control. */
-class AccessibleGridControlTable : public AccessibleGridControlTableBase,
- public AccessibleGridControlTableImplHelper1
-{
-public:
- AccessibleGridControlTable(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >& rxParent,
- ::svt::table::IAccessibleTable& rTable,
- ::svt::table::AccessibleTableControlObjType _eType);
-
-protected:
- virtual ~AccessibleGridControlTable();
-
-public:
- // XAccessibleContext -----------------------------------------------------
-
- /** @return The XAccessible interface of the specified child. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleChild( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The index of this object among the parent's children. */
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XAccessibleComponent ---------------------------------------------------
-
- /** @return The accessible child rendered under the given point. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleAtPoint( const ::com::sun::star::awt::Point& rPoint )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Grabs the focus to (the current cell of) the data table. */
- virtual void SAL_CALL grabFocus()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The key bindings associated with this object. */
- virtual ::com::sun::star::uno::Any SAL_CALL getAccessibleKeyBinding()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XAccessibleTable -------------------------------------------------------
-
- /** @return The description text of the specified row. */
- virtual ::rtl::OUString SAL_CALL getAccessibleRowDescription( sal_Int32 nRow )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The description text of the specified column. */
- virtual ::rtl::OUString SAL_CALL getAccessibleColumnDescription( sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The XAccessibleTable interface of the row header bar. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL
- getAccessibleRowHeaders()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The XAccessibleTable interface of the column header bar. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleTable > SAL_CALL
- getAccessibleColumnHeaders()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return An index list of completely selected rows. */
- virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL
- getSelectedAccessibleRows()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return An index list of completely selected columns. */
- virtual ::com::sun::star::uno::Sequence< sal_Int32 > SAL_CALL
- getSelectedAccessibleColumns()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the specified row is completely selected. */
- virtual sal_Bool SAL_CALL isAccessibleRowSelected( sal_Int32 nRow )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the specified column is completely selected. */
- virtual sal_Bool SAL_CALL isAccessibleColumnSelected( sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The XAccessible interface of the cell object at the specified
- cell position. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleCellAt( sal_Int32 nRow, sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the specified cell is selected. */
- virtual sal_Bool SAL_CALL isAccessibleSelected( sal_Int32 nRow, sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- // XAccessibleSelection ---------------------------------------------------
-
- /** Selects the specified child (row or column of the table). */
- virtual void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return <TRUE/>, if the specified child (row/column) is selected. */
- virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** Clears the complete selection. */
- virtual void SAL_CALL clearAccessibleSelection()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Selects all children or first, if multiselection is not supported. */
- virtual void SAL_CALL selectAllAccessibleChildren()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The number of selected rows/columns. */
- virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The specified selected row/column. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** Removes the specified row/column from the selection. */
- virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nSelectedChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
- // XInterface -------------------------------------------------------------
-
- /** Queries for a new interface. */
- ::com::sun::star::uno::Any SAL_CALL queryInterface(
- const ::com::sun::star::uno::Type& rType )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Aquires the object (calls acquire() on base class). */
- virtual void SAL_CALL acquire() throw ();
-
- /** Releases the object (calls release() on base class). */
- virtual void SAL_CALL release() throw ();
- // XServiceInfo -----------------------------------------------------------
-
- /** @return The name of this class. */
- virtual ::rtl::OUString SAL_CALL getImplementationName()
- throw ( ::com::sun::star::uno::RuntimeException );
-
-protected:
- // internal virtual methods -----------------------------------------------
-
- /** @attention This method requires locked mutex's and a living object.
- @return The bounding box (VCL rect.) relative to the parent window. */
- virtual Rectangle implGetBoundingBox();
- ///** @attention This method requires locked mutex's and a living object.
- // @return The bounding box (VCL rect.) in screen coordinates. */
- virtual Rectangle implGetBoundingBoxOnScreen();
-
-
- //// internal helper methods ------------------------------------------------
- ///** @attention This method requires a locked mutex.
- // @return The XAccessibleTable interface of the specified header bar. */
- ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleTable >
- implGetHeaderBar( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::uno::RuntimeException );
-};
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-#endif // ACCESSIBILITY_EXT_ACCESSIBILEGRIDCONTROLTABLE_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/AccessibleGridControlTableBase.hxx b/accessibility/inc/accessibility/extended/AccessibleGridControlTableBase.hxx
deleted file mode 100644
index 92bd1e2e8..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleGridControlTableBase.hxx
+++ /dev/null
@@ -1,230 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLTABLEBASE_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBLEGRIDCONTROLTABLEBASE_HXX
-
-#include "accessibility/extended/AccessibleGridControlBase.hxx"
-#include <cppuhelper/implbase1.hxx>
-#include <com/sun/star/accessibility/XAccessibleTable.hpp>
-
-// ============================================================================
-
-namespace accessibility {
-
-typedef ::cppu::ImplHelper1<
- ::com::sun::star::accessibility::XAccessibleTable >
- AccessibleGridControlTableImplHelper;
-
-/** The Grid Control accessible table objects inherit from this base class. It
- implements basic functionality for the XAccessibleTable interface.
- Grid COntrol table objects are: the data table, the column header bar and the
- row header bar. */
-class AccessibleGridControlTableBase :
- public GridControlAccessibleElement,
- public AccessibleGridControlTableImplHelper
-{
-public:
- /** Constructor sets specified name and description.
- @param rxParent XAccessible interface of the parent object.
- @param rTable The Table control.
- @param eNameText The constant for the name text.
- @param eDescrText The constant for the description text. */
- AccessibleGridControlTableBase(
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >& rxParent,
- ::svt::table::IAccessibleTable& rTable,
- ::svt::table::AccessibleTableControlObjType eObjType );
-
-protected:
- virtual ~AccessibleGridControlTableBase();
-
-public:
- // XAccessibleContext -----------------------------------------------------
-
- /** @return The count of visible children. */
- virtual sal_Int32 SAL_CALL getAccessibleChildCount()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The role of this object (a table). */
- virtual sal_Int16 SAL_CALL getAccessibleRole()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /* Derived classes have to implement:
- - getAccessibleChild,
- - getAccessibleIndexInParent. */
-
- // XAccessibleComponent ---------------------------------------------------
-
- /* Derived classes have to implement:
- - getAccessibleAt,
- - grabFocus,
- - getAccessibleKeyBinding. */
-
- // XAccessibleTable -------------------------------------------------------
-
- /** @return The number of used rows in the table (0 = empty table). */
- virtual sal_Int32 SAL_CALL getAccessibleRowCount()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The number of used columns in the table (0 = empty table). */
- virtual sal_Int32 SAL_CALL getAccessibleColumnCount()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The row extent of the specified cell (always 1). */
- virtual sal_Int32 SAL_CALL
- getAccessibleRowExtentAt( sal_Int32 nRow, sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The column extent of the specified cell (always 1). */
- virtual sal_Int32 SAL_CALL
- getAccessibleColumnExtentAt( sal_Int32 nRow, sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The caption cell of the table (not supported). */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleCaption()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The summary object of the table (not supported). */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleSummary()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The child index of the specified cell. */
- virtual sal_Int32 SAL_CALL getAccessibleIndex( sal_Int32 nRow, sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The row index of the specified child cell. */
- virtual sal_Int32 SAL_CALL getAccessibleRow( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** @return The column index of the specified child cell. */
- virtual sal_Int32 SAL_CALL getAccessibleColumn( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /* Derived classes have to implement:
- - getAccessibleRowDescription,
- - getAccessibleColumnDescription,
- - getAccessibleRowHeaders,
- - getAccessibleColumnHeaders,
- - getSelectedAccessibleRows,
- - getSelectedAccessibleColumns,
- - isAccessibleRowSelected,
- - isAccessibleColumnSelected,
- - getAccessibleCellAt,
- - isAccessibleSelected. */
-
- // XInterface -------------------------------------------------------------
-
- /** Queries for a new interface. */
- ::com::sun::star::uno::Any SAL_CALL queryInterface(
- const ::com::sun::star::uno::Type& rType )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Aquires the object (calls acquire() on base class). */
- virtual void SAL_CALL acquire() throw ();
-
- /** Releases the object (calls release() on base class). */
- virtual void SAL_CALL release() throw ();
-
- // XTypeProvider ----------------------------------------------------------
-
- /** @return A sequence of possible types (received from base classes). */
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return An unique implementation ID. */
- virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId()
- throw ( ::com::sun::star::uno::RuntimeException );
-
-protected:
- // internal helper methods ------------------------------------------------
-
- /** @attention This method requires locked mutex's and a living object.
- @return The number of cells of the table. */
- sal_Int32 implGetChildCount() const;
-
- /** @attention This method requires locked mutex's and a living object.
- @return The row index of the specified cell index. */
- sal_Int32 implGetRow( sal_Int32 nChildIndex ) const;
- /** @attention This method requires locked mutex's and a living object.
- @return The column index of the specified cell index. */
- sal_Int32 implGetColumn( sal_Int32 nChildIndex ) const;
- /** @attention This method requires locked mutex's and a living object.
- @return The child index of the specified cell address. */
- sal_Int32 implGetChildIndex( sal_Int32 nRow, sal_Int32 nColumn ) const;
-
- /** Fills a sequence with sorted indexes of completely selected rows.
- @attention This method requires locked mutex's and a living object.
- @param rSeq Out-parameter that takes the sorted row index list. */
- void implGetSelectedRows( ::com::sun::star::uno::Sequence< sal_Int32 >& rSeq );
- /** Fills a sequence with sorted indexes of completely selected columns.
- @attention This method requires locked mutex's and a living object.
- @param rSeq Out-parameter that takes the sorted column index list. */
- //void implGetSelectedColumns( ::com::sun::star::uno::Sequence< sal_Int32 >& rSeq );
-
- /** @attention This method requires locked mutex's and a living object.
- @throws <type>IndexOutOfBoundsException</type>
- If the specified row index is invalid. */
- void ensureIsValidRow( sal_Int32 nRow )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
- /** @attention This method requires locked mutex's and a living object.
- @throws <type>IndexOutOfBoundsException</type>
- If the specified column index is invalid. */
- void ensureIsValidColumn( sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
- /** @attention This method requires locked mutex's and a living object.
- @throws <type>IndexOutOfBoundsException</type>
- If the specified cell address is invalid. */
- void ensureIsValidAddress( sal_Int32 nRow, sal_Int32 nColumn )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
- /** @attention This method requires locked mutex's and a living object.
- @throws <type>IndexOutOfBoundsException</type>
- If the specified child index is invalid. */
- void ensureIsValidIndex( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException );
-};
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-#endif // ACCESSIBILITY_EXT_ACCESSIBILEGRIDCONTROLTABLEBASE_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/AccessibleGridControlTableCell.hxx b/accessibility/inc/accessibility/extended/AccessibleGridControlTableCell.hxx
deleted file mode 100644
index d52aaee2e..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleGridControlTableCell.hxx
+++ /dev/null
@@ -1,170 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef ACCESSIBILITY_EXT_ACCESSIBILEGRIDCONTROLTABLECELL_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBILEGRIDCONTROLTABLECELL_HXX
-
-#include <comphelper/accessibletexthelper.hxx>
-#include <cppuhelper/implbase2.hxx>
-#include "accessibility/extended/AccessibleGridControlBase.hxx"
-#include <svtools/accessibletable.hxx>
-
-namespace accessibility
-{
- class AccessibleGridControlCell : public AccessibleGridControlBase
- {
- private:
- sal_Int32 m_nRowPos; // the row number of the table cell
- sal_Int32 m_nColPos; // the column id of the table cell
-
- protected:
- // attribute access
- inline sal_Int32 getRowPos( ) const { return m_nRowPos; }
- inline sal_Int32 getColumnPos( ) const { return m_nColPos; }
-
- // XAccessibleComponent
- virtual void SAL_CALL grabFocus() throw ( ::com::sun::star::uno::RuntimeException );
-
- protected:
- AccessibleGridControlCell(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
- ::svt::table::IAccessibleTable& _rTable,
- sal_Int32 _nRowPos,
- sal_uInt16 _nColPos,
- ::svt::table::AccessibleTableControlObjType _eType
- );
-
- virtual ~AccessibleGridControlCell();
-
- private:
- AccessibleGridControlCell(); // never implemented
- AccessibleGridControlCell( const AccessibleGridControlCell& ); // never implemented
- AccessibleGridControlCell& operator=( const AccessibleGridControlCell& ); // never implemented
- };
-
- typedef ::cppu::ImplHelper2 < ::com::sun::star::accessibility::XAccessibleText
- , ::com::sun::star::accessibility::XAccessible
- > AccessibleTextHelper_BASE;
- // implementation of a table cell of GridControl
- class AccessibleGridControlTableCell :public AccessibleGridControlCell
- ,public AccessibleTextHelper_BASE
- ,public ::comphelper::OCommonAccessibleText
- {
- private:
- sal_Int32 m_nOffset;
-
- protected:
- // OCommonAccessibleText
- virtual ::rtl::OUString implGetText();
- virtual ::com::sun::star::lang::Locale implGetLocale();
- virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
- virtual Rectangle implGetBoundingBox();
- virtual Rectangle implGetBoundingBoxOnScreen();
-
- public:
- AccessibleGridControlTableCell( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
- ::svt::table::IAccessibleTable& _rTable,
- sal_Int32 _nRowId,
- sal_uInt16 _nColId,
- svt::table::AccessibleTableControlObjType eObjType);
-
- // XInterface -------------------------------------------------------------
-
- /** Queries for a new interface. */
- ::com::sun::star::uno::Any SAL_CALL queryInterface(
- const ::com::sun::star::uno::Type& rType )
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** Aquires the object (calls acquire() on base class). */
- virtual void SAL_CALL acquire() throw ();
-
- /** Releases the object (calls release() on base class). */
- virtual void SAL_CALL release() throw ();
-
- /** @return The index of this object among the parent's children. */
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The name of this class.
- */
- virtual ::rtl::OUString SAL_CALL getImplementationName()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The count of visible children.
- */
- virtual sal_Int32 SAL_CALL getAccessibleChildCount()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return
- The XAccessible interface of the specified child.
- */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleChild( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- /** Creates a new AccessibleStateSetHelper and fills it with states of the
- current object.
- @return
- A filled AccessibleStateSetHelper.
- */
- ::utl::AccessibleStateSetHelper* implCreateStateSetHelper();
-
- // XAccessible ------------------------------------------------------------
-
- /** @return The XAccessibleContext interface of this object. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL
- getAccessibleContext()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- // XAccessibleText
- virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getCharacterCount() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getSelectedText() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectionStart() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectionEnd() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getText() throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- };
-}
-#endif // ACCESSIBILITY_EXT_ACCESSIBILEGRIDCONTROLTABLECELL_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/AccessibleToolPanelDeck.hxx b/accessibility/inc/accessibility/extended/AccessibleToolPanelDeck.hxx
deleted file mode 100644
index 30eef85cf..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleToolPanelDeck.hxx
+++ /dev/null
@@ -1,94 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACC_ACCESSIBLETOOLPANELDECK_HXX
-#define ACC_ACCESSIBLETOOLPANELDECK_HXX
-
-/** === begin UNO includes === **/
-/** === end UNO includes === **/
-
-#include <cppuhelper/implbase1.hxx>
-#include <toolkit/awt/vclxaccessiblecomponent.hxx>
-
-#include <boost/scoped_ptr.hpp>
-
-namespace svt
-{
- class ToolPanelDeck;
-}
-
-//......................................................................................................................
-namespace accessibility
-{
-//......................................................................................................................
-
- //==================================================================================================================
- //= AccessibleToolPanelDeck
- //==================================================================================================================
- class AccessibleToolPanelDeck_Impl;
- typedef VCLXAccessibleComponent AccessibleToolPanelDeck_Base;
- class AccessibleToolPanelDeck : public AccessibleToolPanelDeck_Base
- {
- public:
- AccessibleToolPanelDeck(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& i_rAccessibleParent,
- ::svt::ToolPanelDeck& i_rPanelDeck
- );
-
- using AccessibleToolPanelDeck_Base::NotifyAccessibleEvent;
-
- protected:
- virtual ~AccessibleToolPanelDeck();
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
-
- // OComponentHelper
- virtual void SAL_CALL disposing();
-
- // VCLXAccessibleComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > GetChildAccessible( const VclWindowEvent& i_rVclWindowEvent );
- virtual void FillAccessibleStateSet( ::utl::AccessibleStateSetHelper& i_rStateSet );
-
- private:
- ::boost::scoped_ptr< AccessibleToolPanelDeck_Impl > m_pImpl;
- };
-
-//......................................................................................................................
-} // namespace accessibility
-//......................................................................................................................
-
-#endif // ACC_ACCESSIBLETOOLPANELDECK_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/AccessibleToolPanelDeckTabBar.hxx b/accessibility/inc/accessibility/extended/AccessibleToolPanelDeckTabBar.hxx
deleted file mode 100644
index 1bdb6c854..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleToolPanelDeckTabBar.hxx
+++ /dev/null
@@ -1,95 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACC_ACCESSIBLETOOLPANELTABBAR_HXX
-#define ACC_ACCESSIBLETOOLPANELTABBAR_HXX
-
-/** === begin UNO includes === **/
-/** === end UNO includes === **/
-
-#include <cppuhelper/implbase1.hxx>
-#include <toolkit/awt/vclxaccessiblecomponent.hxx>
-
-#include <boost/scoped_ptr.hpp>
-
-namespace svt
-{
- class IToolPanelDeck;
- class PanelTabBar;
-}
-
-//......................................................................................................................
-namespace accessibility
-{
-//......................................................................................................................
-
- //==================================================================================================================
- //= AccessibleToolPanelTabBar
- //==================================================================================================================
- class AccessibleToolPanelTabBar_Impl;
- typedef VCLXAccessibleComponent AccessibleToolPanelTabBar_Base;
- class AccessibleToolPanelTabBar : public AccessibleToolPanelTabBar_Base
- {
- public:
- AccessibleToolPanelTabBar(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& i_rAccessibleParent,
- ::svt::IToolPanelDeck& i_rPanelDeck,
- ::svt::PanelTabBar& i_rTabBar
- );
-
- using AccessibleToolPanelTabBar_Base::NotifyAccessibleEvent;
-
- protected:
- virtual ~AccessibleToolPanelTabBar();
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
-
- // OComponentHelper
- virtual void SAL_CALL disposing();
-
- // VCLXAccessibleComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > GetChildAccessible( const VclWindowEvent& i_rVclWindowEvent );
- virtual void FillAccessibleStateSet( ::utl::AccessibleStateSetHelper& i_rStateSet );
-
- private:
- ::boost::scoped_ptr< AccessibleToolPanelTabBar_Impl > m_pImpl;
- };
-
-//......................................................................................................................
-} // namespace accessibility
-//......................................................................................................................
-
-#endif // ACC_ACCESSIBLETOOLPANELTABBAR_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/AccessibleToolPanelDeckTabBarItem.hxx b/accessibility/inc/accessibility/extended/AccessibleToolPanelDeckTabBarItem.hxx
deleted file mode 100644
index eb375eb8a..000000000
--- a/accessibility/inc/accessibility/extended/AccessibleToolPanelDeckTabBarItem.hxx
+++ /dev/null
@@ -1,110 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACC_ACCESSIBLETOOLPANELDECKTABBARITEM_HXX
-#define ACC_ACCESSIBLETOOLPANELDECKTABBARITEM_HXX
-
-/** === begin UNO includes === **/
-/** === end UNO includes === **/
-
-#include <comphelper/accessiblecomponenthelper.hxx>
-#include <cppuhelper/implbase1.hxx>
-
-#include <boost/scoped_ptr.hpp>
-
-namespace svt
-{
- class IToolPanelDeck;
- class PanelTabBar;
-}
-
-//......................................................................................................................
-namespace accessibility
-{
-//......................................................................................................................
-
- //==================================================================================================================
- //= AccessibleToolPanelDeckTabBarItem
- //==================================================================================================================
- class AccessibleToolPanelDeckTabBarItem_Impl;
- typedef ::comphelper::OAccessibleExtendedComponentHelper AccessibleToolPanelDeckTabBarItem_Base;
- class AccessibleToolPanelDeckTabBarItem : public AccessibleToolPanelDeckTabBarItem_Base
- {
- public:
- AccessibleToolPanelDeckTabBarItem(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& i_rAccessibleParent,
- ::svt::IToolPanelDeck& i_rPanelDeck,
- ::svt::PanelTabBar& i_rTabBar,
- const size_t i_nItemPos
- );
-
- using AccessibleToolPanelDeckTabBarItem_Base::NotifyAccessibleEvent;
- using AccessibleToolPanelDeckTabBarItem_Base::lateInit;
-
- protected:
- virtual ~AccessibleToolPanelDeckTabBarItem();
-
- public:
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleExtendedComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
-
- protected:
- // OCommonAccessibleComponent
- virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
-
- // OComponentHelper
- virtual void SAL_CALL disposing();
-
- protected:
- ::boost::scoped_ptr< AccessibleToolPanelDeckTabBarItem_Impl > m_pImpl;
- };
-
-//......................................................................................................................
-} // namespace accessibility
-//......................................................................................................................
-
-#endif // ACC_ACCESSIBLETOOLPANELDECKTABBARITEM_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/accessiblebrowseboxcell.hxx b/accessibility/inc/accessibility/extended/accessiblebrowseboxcell.hxx
deleted file mode 100644
index 6c7bd7da5..000000000
--- a/accessibility/inc/accessibility/extended/accessiblebrowseboxcell.hxx
+++ /dev/null
@@ -1,89 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_ACCESSIBLE_BROWSE_BOX_CELL_HXX
-#define ACCESSIBILITY_ACCESSIBLE_BROWSE_BOX_CELL_HXX
-
-#include "accessibility/extended/AccessibleBrowseBoxBase.hxx"
-#include <svtools/AccessibleBrowseBoxObjType.hxx>
-
-// .................................................................................
-namespace accessibility
-{
-// .................................................................................
-
- // =============================================================================
- // = AccessibleBrowseBoxCell
- // =============================================================================
- /** common accessibility-functionality for browse box elements which occupy a cell
- */
- class AccessibleBrowseBoxCell : public AccessibleBrowseBoxBase
- {
- private:
- sal_Int32 m_nRowPos; // the row number of the table cell
- sal_uInt16 m_nColPos; // the column id of the table cell
-
- protected:
- // attribute access
- inline sal_Int32 getRowPos( ) const { return m_nRowPos; }
- inline sal_Int32 getColumnPos( ) const { return m_nColPos; }
-
- protected:
- // AccessibleBrowseBoxBase overridables
- virtual Rectangle implGetBoundingBox();
- virtual Rectangle implGetBoundingBoxOnScreen();
-
- // XAccessibleComponent
- virtual void SAL_CALL grabFocus() throw ( ::com::sun::star::uno::RuntimeException );
-
- protected:
- AccessibleBrowseBoxCell(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
- ::svt::IAccessibleTableProvider& _rBrowseBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- sal_Int32 _nRowPos,
- sal_uInt16 _nColPos,
- ::svt::AccessibleBrowseBoxObjType _eType = ::svt::BBTYPE_TABLECELL
- );
-
- virtual ~AccessibleBrowseBoxCell();
-
- private:
- AccessibleBrowseBoxCell(); // never implemented
- AccessibleBrowseBoxCell( const AccessibleBrowseBoxCell& ); // never implemented
- AccessibleBrowseBoxCell& operator=( const AccessibleBrowseBoxCell& ); // never implemented
- };
-
-// .................................................................................
-} // namespace accessibility
-// .................................................................................
-
-
-#endif // ACCESSIBILITY_ACCESSIBLE_BROWSE_BOX_CELL_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/accessibleeditbrowseboxcell.hxx b/accessibility/inc/accessibility/extended/accessibleeditbrowseboxcell.hxx
deleted file mode 100644
index c30c4f768..000000000
--- a/accessibility/inc/accessibility/extended/accessibleeditbrowseboxcell.hxx
+++ /dev/null
@@ -1,156 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef ACCESSIBILITY_EXT_ACCESSIBILEEDITBROWSEBOXTABLECELL_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBILEEDITBROWSEBOXTABLECELL_HXX
-
-#include "accessiblebrowseboxcell.hxx"
-#include <com/sun/star/accessibility/XAccessibleAction.hpp>
-#include <com/sun/star/accessibility/XAccessibleEventListener.hpp>
-#include <com/sun/star/accessibility/XAccessibleRelationSet.hpp>
-#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-#include <com/sun/star/accessibility/XAccessibleValue.hpp>
-#include <cppuhelper/implbase1.hxx>
-#include <cppuhelper/compbase1.hxx>
-#include <comphelper/accessiblewrapper.hxx>
-
-namespace accessibility
-{
- // =============================================================================
- // = EditBrowseBoxTableCell
- // =============================================================================
- class EditBrowseBoxTableCell :public AccessibleBrowseBoxCell
- ,public ::comphelper::OAccessibleContextWrapperHelper
- {
- public:
- EditBrowseBoxTableCell(
- const com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
- const com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxOwningAccessible,
- const com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >& _xControlChild,
- ::svt::IAccessibleTableProvider& _rBrowseBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- sal_Int32 _nRowPos,
- sal_uInt16 _nColPos
- );
-
- protected:
- virtual ~EditBrowseBoxTableCell();
-
- protected:
- // XAccessibleComponent
- virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException) ;
- virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException) ;
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw ( ::com::sun::star::uno::RuntimeException );
-
- // XInterface
- DECLARE_XINTERFACE( )
- // XTypeProvider
- DECLARE_XTYPEPROVIDER( )
-
- // XAccessibleContext
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
-
- sal_Int16 SAL_CALL getAccessibleRole() throw ( ::com::sun::star::uno::RuntimeException );
-
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- virtual void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& Source ) throw (::com::sun::star::uno::RuntimeException);
- protected:
- // OComponentHelper
- virtual void SAL_CALL disposing();
-
- // XComponent/OComponentProxyAggregationHelper (needs to be disambiguated)
- virtual void SAL_CALL dispose() throw( ::com::sun::star::uno::RuntimeException );
-
- // OAccessibleContextWrapperHelper();
- void notifyTranslatedEvent( const ::com::sun::star::accessibility::AccessibleEventObject& _rEvent ) throw (::com::sun::star::uno::RuntimeException);
-
- private:
- EditBrowseBoxTableCell(); // never implemented
- EditBrowseBoxTableCell( const EditBrowseBoxTableCell& ); // never implemented
- EditBrowseBoxTableCell& operator=( const EditBrowseBoxTableCell& ); // never implemented
- };
-
- // =============================================================================
- // = EditBrowseBoxTableCell
- // =============================================================================
- typedef ::cppu::WeakComponentImplHelper1 < ::com::sun::star::accessibility::XAccessible
- > EditBrowseBoxTableCellAccess_Base;
- // XAccessible providing an EditBrowseBoxTableCell
- class EditBrowseBoxTableCellAccess
- :public ::comphelper::OBaseMutex
- ,public EditBrowseBoxTableCellAccess_Base
- {
- protected:
- ::com::sun::star::uno::WeakReference< ::com::sun::star::accessibility::XAccessibleContext >
- m_aContext;
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- m_xParent;
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- m_xControlAccessible;
- ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >
- m_xFocusWindow;
- ::svt::IAccessibleTableProvider* m_pBrowseBox;
- sal_Int32 m_nRowPos;
- sal_uInt16 m_nColPos;
-
- public:
- EditBrowseBoxTableCellAccess(
- const ::com::sun::star::uno::Reference< com::sun::star::accessibility::XAccessible >& _rxParent,
- const ::com::sun::star::uno::Reference< com::sun::star::accessibility::XAccessible > _xControlAccessible,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- ::svt::IAccessibleTableProvider& _rBrowseBox,
- sal_Int32 _nRowPos,
- sal_uInt16 _nColPos
- );
-
- protected:
- virtual ~EditBrowseBoxTableCellAccess();
-
- // XAccessible
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XComponent/OComponentHelper
- virtual void SAL_CALL disposing();
-
- private:
- EditBrowseBoxTableCellAccess(); // never implemented
- EditBrowseBoxTableCellAccess( const EditBrowseBoxTableCellAccess& ); // never implemented
- EditBrowseBoxTableCellAccess& operator=( const EditBrowseBoxTableCellAccess& ); // never implemented
- };
-}
-
-#endif // ACCESSIBILITY_EXT_ACCESSIBILEEDITBROWSEBOXTABLECELL_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/accessibleiconchoicectrl.hxx b/accessibility/inc/accessibility/extended/accessibleiconchoicectrl.hxx
deleted file mode 100644
index 55758bb80..000000000
--- a/accessibility/inc/accessibility/extended/accessibleiconchoicectrl.hxx
+++ /dev/null
@@ -1,121 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLEICONCHOICECTRL_HXX_
-#define ACCESSIBILITY_EXT_ACCESSIBLEICONCHOICECTRL_HXX_
-
-#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-#include <com/sun/star/lang/DisposedException.hpp>
-#include <cppuhelper/implbase2.hxx>
-#include <vcl/vclevent.hxx>
-#include <toolkit/awt/vclxaccessiblecomponent.hxx>
-
-// class AccessibleListBox -----------------------------------------------
-
-class SvtIconChoiceCtrl;
-
-//........................................................................
-namespace accessibility
-{
-//........................................................................
-
- typedef ::cppu::ImplHelper2< ::com::sun::star::accessibility::XAccessible
- , ::com::sun::star::accessibility::XAccessibleSelection> AccessibleIconChoiceCtrl_BASE;
-
- /** the class OAccessibleListBoxEntry represents the base class for an accessible object of a listbox entry
- */
- class AccessibleIconChoiceCtrl :public AccessibleIconChoiceCtrl_BASE
- ,public VCLXAccessibleComponent
- {
- protected:
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > m_xParent;
-
- protected:
- virtual ~AccessibleIconChoiceCtrl();
-
- /** this function is called upon disposing the component */
- virtual void SAL_CALL disposing();
-
- virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
-
- SvtIconChoiceCtrl* getCtrl();
- public:
- /** OAccessibleBase needs a valid view
- @param _rIconCtrl
- is the box for which we implement an accessible object
- @param _xParent
- is our parent accessible object
- */
- AccessibleIconChoiceCtrl( SvtIconChoiceCtrl& _rIconCtrl,
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xParent );
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw(com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw(com::sun::star::uno::RuntimeException);
-
- // XServiceInfo - static methods
- static com::sun::star::uno::Sequence< ::rtl::OUString > getSupportedServiceNames_Static(void) throw(com::sun::star::uno::RuntimeException);
- static ::rtl::OUString getImplementationName_Static(void) throw(com::sun::star::uno::RuntimeException);
-
- // XAccessible
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleSelection
- void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
- void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
- sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- void SAL_CALL deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- };
-
-//........................................................................
-}// namespace accessibility
-//........................................................................
-
-#endif // ACCESSIBILITY_EXT_ACCESSIBLEICONCHOICECTRL_HXX_
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/accessibleiconchoicectrlentry.hxx b/accessibility/inc/accessibility/extended/accessibleiconchoicectrlentry.hxx
deleted file mode 100644
index 1810c8f12..000000000
--- a/accessibility/inc/accessibility/extended/accessibleiconchoicectrlentry.hxx
+++ /dev/null
@@ -1,199 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLEICONCHOICECTRLENTRY_HXX_
-#define ACCESSIBILITY_EXT_ACCESSIBLEICONCHOICECTRLENTRY_HXX_
-
-#include <deque>
-#include <com/sun/star/accessibility/XAccessible.hpp>
-#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
-#include <com/sun/star/accessibility/XAccessibleContext.hpp>
-#include <com/sun/star/accessibility/XAccessibleStateSet.hpp>
-#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
-#include <com/sun/star/accessibility/XAccessibleAction.hpp>
-#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-#include <com/sun/star/lang/DisposedException.hpp>
-#include <com/sun/star/lang/XEventListener.hpp>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <cppuhelper/compbase8.hxx>
-#include <comphelper/broadcasthelper.hxx>
-#include <comphelper/accessibletexthelper.hxx>
-#include <tools/gen.hxx>
-
-// forward ---------------------------------------------------------------
-
-class SvxIconChoiceCtrlEntry;
-class SvtIconChoiceCtrl;
-
-//........................................................................
-namespace accessibility
-{
-//........................................................................
-
-// class AccessibleIconChoiceCtrlEntry ------------------------------------------
-
- typedef ::cppu::WeakAggComponentImplHelper8< ::com::sun::star::accessibility::XAccessible
- , ::com::sun::star::accessibility::XAccessibleContext
- , ::com::sun::star::accessibility::XAccessibleComponent
- , ::com::sun::star::accessibility::XAccessibleEventBroadcaster
- , ::com::sun::star::accessibility::XAccessibleText
- , ::com::sun::star::accessibility::XAccessibleAction
- , ::com::sun::star::lang::XServiceInfo
- , ::com::sun::star::lang::XEventListener > AccessibleIconChoiceCtrlEntry_BASE;
-
- /** the class AccessibleListBoxEntry represents the class for an accessible object of a listbox entry */
- class AccessibleIconChoiceCtrlEntry : public ::comphelper::OBaseMutex,
- public AccessibleIconChoiceCtrlEntry_BASE,
- public ::comphelper::OCommonAccessibleText
- {
- private:
- /** The treelistbox control */
- SvtIconChoiceCtrl* m_pIconCtrl;
- sal_Int32 m_nIndex;
-
- protected:
- /// client id in the AccessibleEventNotifier queue
- sal_uInt32 m_nClientId;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > m_xParent;
-
- private:
- Rectangle GetBoundingBox_Impl() const;
- Rectangle GetBoundingBoxOnScreen_Impl() const;
- sal_Bool IsAlive_Impl() const;
- sal_Bool IsShowing_Impl() const;
-
- Rectangle GetBoundingBox() throw ( ::com::sun::star::lang::DisposedException );
- Rectangle GetBoundingBoxOnScreen() throw ( ::com::sun::star::lang::DisposedException );
- void EnsureIsAlive() const throw ( ::com::sun::star::lang::DisposedException );
-
- protected:
- virtual ~AccessibleIconChoiceCtrlEntry();
- /** this function is called upon disposing the component
- */
- virtual void SAL_CALL disposing();
-
- // OCommonAccessibleText
- virtual ::rtl::OUString implGetText();
- virtual ::com::sun::star::lang::Locale implGetLocale();
- virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
-
- public:
- /** Ctor()
- @param _rListBox
- the view control
- @param _pEntry
- the entry
- @param _xParent
- is our parent accessible object
- */
- AccessibleIconChoiceCtrlEntry( SvtIconChoiceCtrl& _rIconCtrl,
- sal_uLong _nPos,
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xParent );
-
- // XTypeProvider
- virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() throw (::com::sun::star::uno::RuntimeException);
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw(com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw(com::sun::star::uno::RuntimeException);
-
- // XServiceInfo - static methods
- static com::sun::star::uno::Sequence< ::rtl::OUString > getSupportedServiceNames_Static(void) throw(com::sun::star::uno::RuntimeException);
- static ::rtl::OUString getImplementationName_Static(void) throw(com::sun::star::uno::RuntimeException);
-
- // XEventListener
- virtual void SAL_CALL disposing( const ::com::sun::star::lang::EventObject& Source ) throw(::com::sun::star::uno::RuntimeException);
-
- // XAccessible
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleComponent
- virtual sal_Bool SAL_CALL containsPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Rectangle SAL_CALL getBounds( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Point SAL_CALL getLocation( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Point SAL_CALL getLocationOnScreen( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Size SAL_CALL getSize( ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleText
- virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getCharacterCount() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getSelectedText() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectionStart() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectionEnd() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getText() throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleEventBroadcaster
- using cppu::WeakAggComponentImplHelperBase::addEventListener;
- virtual void SAL_CALL addEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
- using cppu::WeakAggComponentImplHelperBase::removeEventListener;
- virtual void SAL_CALL removeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleAction
- virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL doAccessibleAction( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- };
-
-//........................................................................
-}// namespace accessibility
-//........................................................................
-
-#endif // ACCESSIBILITY_EXT_ACCESSIBLELISTBOXENTRY_HXX_
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/accessiblelistbox.hxx b/accessibility/inc/accessibility/extended/accessiblelistbox.hxx
deleted file mode 100644
index c73266375..000000000
--- a/accessibility/inc/accessibility/extended/accessiblelistbox.hxx
+++ /dev/null
@@ -1,127 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLELISTBOX_HXX_
-#define ACCESSIBILITY_EXT_ACCESSIBLELISTBOX_HXX_
-
-#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-#include <com/sun/star/lang/DisposedException.hpp>
-#include <cppuhelper/implbase2.hxx>
-#include <vcl/vclevent.hxx>
-#include <toolkit/awt/vclxaccessiblecomponent.hxx>
-
-
-// class AccessibleListBox -----------------------------------------------
-
-class SvTreeListBox;
-
-//........................................................................
-namespace accessibility
-{
-//........................................................................
-
- typedef ::cppu::ImplHelper2< ::com::sun::star::accessibility::XAccessible
- , ::com::sun::star::accessibility::XAccessibleSelection> AccessibleListBox_BASE;
-
- /** the class OAccessibleListBoxEntry represents the base class for an accessible object of a listbox entry
- */
- class AccessibleListBox :public AccessibleListBox_BASE
- ,public VCLXAccessibleComponent
- {
- protected:
-
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > m_xParent;
-
- protected:
- virtual ~AccessibleListBox();
-
- // OComponentHelper overridables
- /** this function is called upon disposing the component */
- virtual void SAL_CALL disposing();
-
- // VCLXAccessibleComponent
- virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
- virtual void ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent );
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
-
- SvTreeListBox* getListBox() const;
-
- public:
- /** OAccessibleBase needs a valid view
- @param _rListBox
- is the box for which we implement an accessible object
- @param _xParent
- is our parent accessible object
- */
- AccessibleListBox( SvTreeListBox& _rListBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xParent );
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw(com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw(com::sun::star::uno::RuntimeException);
-
- // XServiceInfo - static methods
- static com::sun::star::uno::Sequence< ::rtl::OUString > getSupportedServiceNames_Static(void) throw(com::sun::star::uno::RuntimeException);
- static ::rtl::OUString getImplementationName_Static(void) throw(com::sun::star::uno::RuntimeException);
-
- // XAccessible
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleSelection
- void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
- void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
- sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- void SAL_CALL deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- };
-
-//........................................................................
-}// namespace accessibility
-//........................................................................
-
-#endif // ACCESSIBILITY_EXT_ACCESSIBLELISTBOX_HXX_
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/accessiblelistboxentry.hxx b/accessibility/inc/accessibility/extended/accessiblelistboxentry.hxx
deleted file mode 100644
index c7de9472b..000000000
--- a/accessibility/inc/accessibility/extended/accessiblelistboxentry.hxx
+++ /dev/null
@@ -1,225 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLELISTBOXENTRY_HXX_
-#define ACCESSIBILITY_EXT_ACCESSIBLELISTBOXENTRY_HXX_
-
-#include <deque>
-#include <com/sun/star/accessibility/XAccessible.hpp>
-#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
-#include <com/sun/star/accessibility/XAccessibleContext.hpp>
-#include <com/sun/star/accessibility/XAccessibleStateSet.hpp>
-#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
-#include <com/sun/star/accessibility/XAccessibleAction.hpp>
-#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-#include <com/sun/star/lang/DisposedException.hpp>
-#include <com/sun/star/lang/XEventListener.hpp>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <cppuhelper/compbase8.hxx>
-#include <comphelper/broadcasthelper.hxx>
-#include <comphelper/accessibletexthelper.hxx>
-#include <tools/gen.hxx>
-#include "accessibility/extended/listboxaccessible.hxx"
-
-// forward ---------------------------------------------------------------
-
-namespace com { namespace sun { namespace star { namespace awt {
- struct Point;
- struct Rectangle;
- struct Size;
- class XFocusListener;
-} } } }
-
-class SvTreeListBox;
-class SvLBoxEntry;
-
-//........................................................................
-namespace accessibility
-{
-//........................................................................
-
-// class AccessibleListBoxEntry ------------------------------------------
-
- typedef ::cppu::WeakAggComponentImplHelper8< ::com::sun::star::accessibility::XAccessible
- , ::com::sun::star::accessibility::XAccessibleContext
- , ::com::sun::star::accessibility::XAccessibleComponent
- , ::com::sun::star::accessibility::XAccessibleEventBroadcaster
- , ::com::sun::star::accessibility::XAccessibleAction
- , ::com::sun::star::accessibility::XAccessibleSelection
- , ::com::sun::star::accessibility::XAccessibleText
- , ::com::sun::star::lang::XServiceInfo > AccessibleListBoxEntry_BASE;
-
- /** the class AccessibleListBoxEntry represents the class for an accessible object of a listbox entry */
- class AccessibleListBoxEntry:public ::comphelper::OBaseMutex
- ,public AccessibleListBoxEntry_BASE
- ,public ::comphelper::OCommonAccessibleText
- ,public ListBoxAccessibleBase
- {
- friend class AccessibleListBox;
-
- private:
- /** The treelistbox control */
- SvTreeListBox* m_pListBox;
- ::std::deque< sal_Int32 > m_aEntryPath;
-
- protected:
- /// client id in the AccessibleEventNotifier queue
- sal_uInt32 m_nClientId;
-
- ::com::sun::star::uno::WeakReference< ::com::sun::star::accessibility::XAccessible >
- m_aParent;
-
- private:
- Rectangle GetBoundingBox_Impl() const;
- Rectangle GetBoundingBoxOnScreen_Impl() const;
- sal_Bool IsAlive_Impl() const;
- sal_Bool IsShowing_Impl() const;
-
- Rectangle GetBoundingBox() throw ( ::com::sun::star::lang::DisposedException );
- Rectangle GetBoundingBoxOnScreen() throw ( ::com::sun::star::lang::DisposedException );
- void EnsureIsAlive() const throw ( ::com::sun::star::lang::DisposedException );
-
- protected:
- virtual ~AccessibleListBoxEntry();
-
- /** this function is called upon disposing the component
- */
- virtual void SAL_CALL disposing();
-
- // ListBoxAccessible/XComponent
- virtual void SAL_CALL dispose() throw ( ::com::sun::star::uno::RuntimeException );
-
- // OCommonAccessibleText
- virtual ::rtl::OUString implGetText();
- virtual ::com::sun::star::lang::Locale implGetLocale();
- virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
-
- public:
- /** Ctor()
- @param _rListBox
- the view control
- @param _pEntry
- the entry
- @param _xParent
- is our parent accessible object
- */
- AccessibleListBoxEntry( SvTreeListBox& _rListBox, SvLBoxEntry* _pEntry,
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >& _xParent );
-
- protected:
- // XTypeProvider
- virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() throw (::com::sun::star::uno::RuntimeException);
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw(com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& ServiceName ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw(com::sun::star::uno::RuntimeException);
-
- // XServiceInfo - static methods
- static com::sun::star::uno::Sequence< ::rtl::OUString > getSupportedServiceNames_Static(void) throw(com::sun::star::uno::RuntimeException);
- static ::rtl::OUString getImplementationName_Static(void) throw(com::sun::star::uno::RuntimeException);
-
- // XAccessible
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleComponent
- virtual sal_Bool SAL_CALL containsPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Rectangle SAL_CALL getBounds( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Point SAL_CALL getLocation( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Point SAL_CALL getLocationOnScreen( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Size SAL_CALL getSize( ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleText
- virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getCharacterCount() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getSelectedText() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectionStart() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectionEnd() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getText() throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleEventBroadcaster
- using cppu::WeakAggComponentImplHelperBase::addEventListener;
- virtual void SAL_CALL addEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
- using cppu::WeakAggComponentImplHelperBase::removeEventListener;
- virtual void SAL_CALL removeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleAction
- virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL doAccessibleAction( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleSelection
- void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
- void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
- sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- void SAL_CALL deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- private:
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > implGetParentAccessible( ) const;
- };
-
-//........................................................................
-}// namespace accessibility
-//........................................................................
-
-#endif // ACCESSIBILITY_EXT_ACCESSIBLELISTBOXENTRY_HXX_
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/accessibletabbar.hxx b/accessibility/inc/accessibility/extended/accessibletabbar.hxx
deleted file mode 100644
index 23c18d90e..000000000
--- a/accessibility/inc/accessibility/extended/accessibletabbar.hxx
+++ /dev/null
@@ -1,122 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLETABBAR_HXX_
-#define ACCESSIBILITY_EXT_ACCESSIBLETABBAR_HXX_
-
-#include <com/sun/star/accessibility/XAccessible.hpp>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <cppuhelper/implbase2.hxx>
-#include "accessibility/extended/accessibletabbarbase.hxx"
-
-#include <vector>
-
-namespace utl {
-class AccessibleStateSetHelper;
-}
-
-//.........................................................................
-namespace accessibility
-{
-//.........................................................................
-
- // ----------------------------------------------------
- // class AccessibleTabBar
- // ----------------------------------------------------
-
- typedef ::cppu::ImplHelper2<
- ::com::sun::star::accessibility::XAccessible,
- ::com::sun::star::lang::XServiceInfo > AccessibleTabBar_BASE;
-
- class AccessibleTabBar : public AccessibleTabBarBase,
- public AccessibleTabBar_BASE
- {
- private:
- typedef ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > > AccessibleChildren;
-
- AccessibleChildren m_aAccessibleChildren;
-
- protected:
- virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
-
- // OCommonAccessibleComponent
- virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XComponent
- virtual void SAL_CALL disposing();
-
- public:
- AccessibleTabBar( TabBar* pTabBar );
- ~AccessibleTabBar();
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessible
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleExtendedComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
- };
-
-//.........................................................................
-} // namespace accessibility
-//.........................................................................
-
-#endif // ACCESSIBILITY_EXT_ACCESSIBLETABBAR_HXX_
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/accessibletabbarbase.hxx b/accessibility/inc/accessibility/extended/accessibletabbarbase.hxx
deleted file mode 100644
index 555dada90..000000000
--- a/accessibility/inc/accessibility/extended/accessibletabbarbase.hxx
+++ /dev/null
@@ -1,80 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLETABBARBASE_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBLETABBARBASE_HXX
-
-#include <comphelper/accessiblecomponenthelper.hxx>
-#include <tools/link.hxx>
-
-class TabBar;
-class VCLExternalSolarLock;
-class VclSimpleEvent;
-class VclWindowEvent;
-
-//.........................................................................
-namespace accessibility
-{
-//.........................................................................
-
-// ============================================================================
-
-typedef ::comphelper::OAccessibleExtendedComponentHelper AccessibleExtendedComponentHelper_BASE;
-
-class AccessibleTabBarBase : public AccessibleExtendedComponentHelper_BASE
-{
-public:
- explicit AccessibleTabBarBase( TabBar* pTabBar );
- virtual ~AccessibleTabBarBase();
-
-protected:
- DECL_LINK( WindowEventListener, VclSimpleEvent* );
-
- virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
-
- // XComponent
- virtual void SAL_CALL disposing();
-
-private:
- void SetTabBarPointer( TabBar* pTabBar );
- void ClearTabBarPointer();
-
-protected:
- VCLExternalSolarLock* m_pExternalLock;
- TabBar* m_pTabBar;
-};
-
-// ============================================================================
-
-//.........................................................................
-} // namespace accessibility
-//.........................................................................
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/accessibletabbarpage.hxx b/accessibility/inc/accessibility/extended/accessibletabbarpage.hxx
deleted file mode 100644
index 07f0945ef..000000000
--- a/accessibility/inc/accessibility/extended/accessibletabbarpage.hxx
+++ /dev/null
@@ -1,139 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLETABBARPAGE_HXX_
-#define ACCESSIBILITY_EXT_ACCESSIBLETABBARPAGE_HXX_
-
-#include <com/sun/star/accessibility/XAccessible.hpp>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <cppuhelper/implbase2.hxx>
-#include "accessibility/extended/accessibletabbarbase.hxx"
-
-#include <vector>
-
-namespace utl {
-class AccessibleStateSetHelper;
-}
-
-//.........................................................................
-namespace accessibility
-{
-//.........................................................................
-
- // ----------------------------------------------------
- // class AccessibleTabBarPage
- // ----------------------------------------------------
-
- typedef ::cppu::ImplHelper2<
- ::com::sun::star::accessibility::XAccessible,
- ::com::sun::star::lang::XServiceInfo > AccessibleTabBarPage_BASE;
-
- class AccessibleTabBarPage : public AccessibleTabBarBase,
- public AccessibleTabBarPage_BASE
- {
- friend class AccessibleTabBarPageList;
-
- private:
- sal_uInt16 m_nPageId;
- sal_Bool m_bEnabled;
- sal_Bool m_bShowing;
- sal_Bool m_bSelected;
- ::rtl::OUString m_sPageText;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > m_xParent;
-
- protected:
- sal_Bool IsEnabled();
- sal_Bool IsShowing();
- sal_Bool IsSelected();
-
- void SetEnabled( sal_Bool bEnabled );
- void SetShowing( sal_Bool bShowing );
- void SetSelected( sal_Bool bSelected );
- void SetPageText( const ::rtl::OUString& sPageText );
-
- sal_uInt16 GetPageId() const { return m_nPageId; }
-
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
-
- // OCommonAccessibleComponent
- virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XComponent
- virtual void SAL_CALL disposing();
-
- public:
- AccessibleTabBarPage( TabBar* pTabBar, sal_uInt16 nPageId,
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent );
- virtual ~AccessibleTabBarPage();
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessible
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleExtendedComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
- };
-
-//.........................................................................
-} // namespace accessibility
-//.........................................................................
-
-#endif // ACCESSIBILITY_EXT_ACCESSIBLETABBARPAGE_HXX_
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/accessibletabbarpagelist.hxx b/accessibility/inc/accessibility/extended/accessibletabbarpagelist.hxx
deleted file mode 100644
index 67b0ec7d0..000000000
--- a/accessibility/inc/accessibility/extended/accessibletabbarpagelist.hxx
+++ /dev/null
@@ -1,143 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLETABBARPAGELIST_HXX_
-#define ACCESSIBILITY_EXT_ACCESSIBLETABBARPAGELIST_HXX_
-
-#include <com/sun/star/accessibility/XAccessible.hpp>
-#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <cppuhelper/implbase3.hxx>
-#include "accessibility/extended/accessibletabbarbase.hxx"
-
-#include <vector>
-
-namespace utl {
-class AccessibleStateSetHelper;
-}
-
-//.........................................................................
-namespace accessibility
-{
-//.........................................................................
-
- // ----------------------------------------------------
- // class AccessibleTabBarPageList
- // ----------------------------------------------------
-
- typedef ::cppu::ImplHelper3<
- ::com::sun::star::accessibility::XAccessible,
- ::com::sun::star::accessibility::XAccessibleSelection,
- ::com::sun::star::lang::XServiceInfo > AccessibleTabBarPageList_BASE;
-
- class AccessibleTabBarPageList : public AccessibleTabBarBase,
- public AccessibleTabBarPageList_BASE
- {
- private:
- typedef ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > > AccessibleChildren;
-
- AccessibleChildren m_aAccessibleChildren;
- sal_Int32 m_nIndexInParent;
-
- protected:
- void UpdateEnabled( sal_Int32 i, sal_Bool bEnabled );
- void UpdateShowing( sal_Bool bShowing );
- void UpdateSelected( sal_Int32 i, sal_Bool bSelected );
- void UpdatePageText( sal_Int32 i );
-
- void InsertChild( sal_Int32 i );
- void RemoveChild( sal_Int32 i );
- void MoveChild( sal_Int32 i, sal_Int32 j );
-
- virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
-
- // OCommonAccessibleComponent
- virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XComponent
- virtual void SAL_CALL disposing();
-
- public:
- AccessibleTabBarPageList( TabBar* pTabBar, sal_Int32 nIndexInParent );
- virtual ~AccessibleTabBarPageList();
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessible
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleExtendedComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleSelection
- virtual void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- };
-
-//.........................................................................
-} // namespace accessibility
-//.........................................................................
-
-#endif // ACCESSIBILITY_EXT_ACCESSIBLETABBARPAGELIST_HXX_
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/accessibletablistbox.hxx b/accessibility/inc/accessibility/extended/accessibletablistbox.hxx
deleted file mode 100644
index 19da7b496..000000000
--- a/accessibility/inc/accessibility/extended/accessibletablistbox.hxx
+++ /dev/null
@@ -1,117 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLETABLISTBOX_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBLETABLISTBOX_HXX
-
-#include "AccessibleBrowseBox.hxx"
-#include <cppuhelper/implbase1.hxx>
-#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-#include <svtools/accessibletableprovider.hxx>
-
-class SvHeaderTabListBox;
-
-// ============================================================================
-
-namespace accessibility {
-
-class AccessibleBrowseBoxTable;
-
-typedef ::cppu::ImplHelper1 < ::com::sun::star::accessibility::XAccessible
- > AccessibleTabListBox_Base;
-
-/** !!! */
-class AccessibleTabListBox
- :public AccessibleBrowseBox
- ,public AccessibleTabListBox_Base
- ,public ::svt::IAccessibleTabListBox
-{
-private:
- SvHeaderTabListBox* m_pTabListBox;
-
-public:
- /** ctor()
- @param rxParent XAccessible interface of the parent object.
- @param rBox The HeaderTabListBox control. */
- AccessibleTabListBox(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent,
- SvHeaderTabListBox& rBox );
-
-public:
- // XInterface
- DECLARE_XINTERFACE( )
- // XTypeProvider
- DECLARE_XTYPEPROVIDER( )
-
- // XAccessibleContext -----------------------------------------------------
-
- /** @return The count of visible children. */
- virtual sal_Int32 SAL_CALL getAccessibleChildCount()
- throw ( ::com::sun::star::uno::RuntimeException );
-
- /** @return The XAccessible interface of the specified child. */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleChild( sal_Int32 nChildIndex )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException );
-
- // XAccessibleContext
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext() throw ( ::com::sun::star::uno::RuntimeException );
-
- // IAccessibleTabListBox
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- getMyself()
- {
- return this;
- }
-
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- getHeaderBar( ::svt::AccessibleBrowseBoxObjType _eObjType )
- {
- return AccessibleBrowseBox::getHeaderBar( _eObjType );
- }
-
-protected:
- /** dtor() */
- virtual ~AccessibleTabListBox();
-
- /** This method creates and returns an accessible table.
- @return An AccessibleBrowseBoxTable. */
- virtual AccessibleBrowseBoxTable* createAccessibleTable();
-};
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-#endif // ACCESSIBILITY_EXT_ACCESSIBLETABLISTBOX_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/accessibletablistboxtable.hxx b/accessibility/inc/accessibility/extended/accessibletablistboxtable.hxx
deleted file mode 100644
index 81d2964c7..000000000
--- a/accessibility/inc/accessibility/extended/accessibletablistboxtable.hxx
+++ /dev/null
@@ -1,124 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLETABLISTBOXTABLE_HXX
-#define ACCESSIBILITY_EXT_ACCESSIBLETABLISTBOXTABLE_HXX
-
-#include "AccessibleBrowseBoxTable.hxx"
-#include <comphelper/uno3.hxx>
-#include <cppuhelper/implbase1.hxx>
-#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-
-class SvHeaderTabListBox;
-
-// ============================================================================
-
-namespace accessibility {
-
-typedef ::cppu::ImplHelper1< ::com::sun::star::accessibility::XAccessibleSelection >
- AccessibleTabListBoxTableImplHelper;
-
-class AccessibleTabListBoxTable : public AccessibleBrowseBoxTable, public AccessibleTabListBoxTableImplHelper
-{
-private:
- SvHeaderTabListBox* m_pTabListBox;
-
- void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
- DECL_LINK( WindowEventListener, VclSimpleEvent* );
-
- // helpers ----------------------------------------------------------------
-
- /** Throws an exception, if nIndex is not a valid child index. */
- void ensureValidIndex( sal_Int32 _nIndex ) const
- SAL_THROW( ( ::com::sun::star::lang::IndexOutOfBoundsException ) );
-
- /** Returns true, if the specified row is selected. */
- sal_Bool implIsRowSelected( sal_Int32 _nRow ) const;
- /** Selects the specified row. */
- void implSelectRow( sal_Int32 _nRow, sal_Bool _bSelect );
-
- /** Returns the count of rows in the table. */
- sal_Int32 implGetRowCount() const;
- /** Returns the total column count in the table. */
- sal_Int32 implGetColumnCount() const;
- /** Returns the count of selected rows in the table. */
- sal_Int32 implGetSelRowCount() const;
- /** Returns the total cell count in the table (including header). */
- inline sal_Int32 implGetCellCount() const { return implGetRowCount() * implGetColumnCount(); }
-
- /** Returns the row index from cell index. */
- inline sal_Int32 implGetRow( sal_Int32 _nIndex ) const { return _nIndex / implGetColumnCount(); }
- /** Returns the column index from cell index. */
- inline sal_Int32 implGetColumn( sal_Int32 _nIndex ) const { return _nIndex % implGetColumnCount(); }
- /** Returns the absolute row index of the nSelRow-th selected row. */
- sal_Int32 implGetSelRow( sal_Int32 _nSelRow ) const;
- /** Returns the child index from cell position. */
- inline sal_Int32 implGetIndex( sal_Int32 _nRow, sal_Int32 _nColumn ) const { return _nRow * implGetColumnCount() + _nColumn; }
-
-public:
- /** ctor()
- @param rxParent XAccessible interface of the parent object.
- @param rBox The HeaderTabListBox control. */
- AccessibleTabListBoxTable(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent,
- SvHeaderTabListBox& rBox );
-
-protected:
- /** dtor() */
- virtual ~AccessibleTabListBoxTable();
-
-public:
- // XInterface
- DECLARE_XINTERFACE( )
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER( )
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName (void)
- throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleSelection
- void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
- void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
- sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- void SAL_CALL deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-};
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-#endif // ACCESSIBILITY_EXT_ACCESSIBLETABLISTBOX_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/listboxaccessible.hxx b/accessibility/inc/accessibility/extended/listboxaccessible.hxx
deleted file mode 100644
index ad8b4eed4..000000000
--- a/accessibility/inc/accessibility/extended/listboxaccessible.hxx
+++ /dev/null
@@ -1,98 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_EXT_LISTBOX_ACCESSIBLE
-#define ACCESSIBILITY_EXT_LISTBOX_ACCESSIBLE
-
-#include <com/sun/star/uno/RuntimeException.hpp>
-#include <tools/link.hxx>
-
-class SvTreeListBox;
-class VclSimpleEvent;
-class VclWindowEvent;
-
-//........................................................................
-namespace accessibility
-{
-//........................................................................
-
- //====================================================================
- //= ListBoxAccessibleBase
- //====================================================================
- /** helper class which couples it's life time to the life time of an
- SvTreeListBox
- */
- class ListBoxAccessibleBase
- {
- private:
- SvTreeListBox* m_pWindow;
-
- protected:
- inline SvTreeListBox* getListBox() const
- {
- return const_cast< ListBoxAccessibleBase* >( this )->m_pWindow;
- }
-
- inline bool isAlive() const { return NULL != m_pWindow; }
-
- public:
- ListBoxAccessibleBase( SvTreeListBox& _rWindow );
-
- protected:
- virtual ~ListBoxAccessibleBase( );
-
- // own overridables
- /// will be called for any VclWindowEvent events broadcasted by our VCL window
- virtual void ProcessWindowEvent( const VclWindowEvent& _rVclWindowEvent );
-
- /** will be called when our window broadcasts the VCLEVENT_OBJECT_DYING event
-
- <p>Usually, you derive your class from both ListBoxAccessibleBase and XComponent,
- and call XComponent::dispose here.</p>
- */
- virtual void SAL_CALL dispose() throw ( ::com::sun::star::uno::RuntimeException ) = 0;
-
- /// to be called in the dispose method of your derived class
- void disposing();
-
- private:
- DECL_LINK( WindowEventListener, VclSimpleEvent* );
-
- private:
- ListBoxAccessibleBase( ); // never implemented
- ListBoxAccessibleBase( const ListBoxAccessibleBase& ); // never implemented
- ListBoxAccessibleBase& operator=( const ListBoxAccessibleBase& ); // never implemented
- };
-
-//........................................................................
-} // namespace accessibility
-//........................................................................
-
-#endif // ACCESSIBILITY_EXT_LISTBOX_ACCESSIBLE
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/extended/textwindowaccessibility.hxx b/accessibility/inc/accessibility/extended/textwindowaccessibility.hxx
deleted file mode 100644
index 3da4e7325..000000000
--- a/accessibility/inc/accessibility/extended/textwindowaccessibility.hxx
+++ /dev/null
@@ -1,714 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#if !defined INCLUDED_ACCESSIBILITY_TEXTWINDOWACCESSIBILITY_HXX
-#define INCLUDED_ACCESSIBILITY_TEXTWINDOWACCESSIBILITY_HXX
-
-#include <toolkit/awt/vclxaccessiblecomponent.hxx>
-#include <svl/lstner.hxx>
-#include <svtools/textdata.hxx>
-#include <svtools/texteng.hxx>
-#include <svtools/textview.hxx>
-#include <svtools/txtattr.hxx>
-#include <com/sun/star/awt/FontWeight.hpp>
-#include <com/sun/star/lang/EventObject.hpp>
-#include <com/sun/star/uno/Reference.hxx>
-#include <com/sun/star/util/Color.hpp>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRelationType.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/accessibility/AccessibleTextType.hpp>
-#include <com/sun/star/accessibility/XAccessible.hpp>
-#include <com/sun/star/accessibility/XAccessibleContext.hpp>
-#include <com/sun/star/accessibility/XAccessibleEditableText.hpp>
-#include <com/sun/star/accessibility/XAccessibleMultiLineText.hpp>
-#include <com/sun/star/accessibility/XAccessibleTextAttributes.hpp>
-#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
-#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
-#include <toolkit/awt/vclxwindow.hxx>
-#include <cppuhelper/compbase7.hxx>
-#include <comphelper/accessiblecontexthelper.hxx>
-#include <comphelper/accessibletexthelper.hxx>
-#include <rtl/ref.hxx>
-
-#include <memory>
-#include <queue>
-#include <boost/unordered_map.hpp>
-
-class TextEngine;
-class TextView;
-
-namespace css = ::com::sun::star;
-
-namespace accessibility
-{
-
-class Paragraph;
-class Document;
-
-class SfxListenerGuard
-{
-public:
- inline SfxListenerGuard(::SfxListener & rListener):
- m_rListener(rListener), m_pNotifier(0) {}
-
- inline ~SfxListenerGuard() { endListening(); }
-
- // Not thread safe:
- void startListening(::SfxBroadcaster & rNotifier);
-
- // Not thread safe:
- void endListening();
-
-private:
- ::SfxListener & m_rListener;
- ::SfxBroadcaster * m_pNotifier;
-};
-
-class WindowListenerGuard
-{
-public:
- inline WindowListenerGuard(::Link const & rListener):
- m_aListener(rListener), m_pNotifier(0) {}
-
- inline ~WindowListenerGuard() { endListening(); }
-
- // Not thread safe:
- void startListening(::Window & rNotifier);
-
- // Not thread safe:
- void endListening();
-
-private:
- ::Link m_aListener;
- ::Window * m_pNotifier;
-};
-
-class ParagraphInfo
-{
-public:
- inline ParagraphInfo(::sal_Int32 nHeight): m_nHeight(nHeight) {}
-
- inline
- ::css::uno::WeakReference< ::css::accessibility::XAccessible > const &
- getParagraph() const { return m_xParagraph; }
-
- inline ::sal_Int32 getHeight() const { return m_nHeight; }
-
- inline void setParagraph(
- ::css::uno::Reference< ::css::accessibility::XAccessible > const &
- rParagraph) { m_xParagraph = rParagraph; }
-
- inline void changeHeight(::sal_Int32 nHeight) { m_nHeight = nHeight; }
-
-private:
- ::css::uno::WeakReference< ::css::accessibility::XAccessible >
- m_xParagraph;
- ::sal_Int32 m_nHeight;
-};
-
-typedef ::std::vector< ParagraphInfo > Paragraphs;
-
-typedef ::cppu::WeakAggComponentImplHelper7<
- ::css::accessibility::XAccessible,
- ::css::accessibility::XAccessibleContext,
- ::css::accessibility::XAccessibleComponent,
- ::css::accessibility::XAccessibleEditableText,
- ::css::accessibility::XAccessibleMultiLineText,
- ::css::accessibility::XAccessibleTextAttributes,
- ::css::accessibility::XAccessibleEventBroadcaster > ParagraphBase;
-
-// The Paragraph's number is the absolute position within the text engine (from
-// 0 to N - 1), whereas the Paragraph's index is the position within the text
-// view/accessible parent (from 0 to M - 1). Paragraphs outside the currently
-// visible range have an index of -1.
-class ParagraphImpl:
- public ParagraphBase, private ::comphelper::OCommonAccessibleText
-{
-public:
- ParagraphImpl(::rtl::Reference< Document > const & rDocument,
- Paragraphs::size_type nNumber, ::osl::Mutex & rMutex);
-
- // Not thread-safe.
- inline Paragraphs::size_type getNumber() const { return m_nNumber; }
-
- // Not thread-safe.
- void numberChanged(bool bIncremented);
-
- // Not thread-safe.
- void textChanged();
-
- // Thread-safe.
- void notifyEvent(::sal_Int16 nEventId, ::css::uno::Any const & rOldValue,
- ::css::uno::Any const & rNewValue);
-
-protected:
- // OCommonAccessibleText
- virtual void implGetParagraphBoundary( ::css::i18n::Boundary& rBoundary,
- ::sal_Int32 nIndex );
- virtual void implGetLineBoundary( ::css::i18n::Boundary& rBoundary,
- ::sal_Int32 nIndex );
-
-private:
- virtual ::css::uno::Reference< ::css::accessibility::XAccessibleContext >
- SAL_CALL getAccessibleContext() throw (::css::uno::RuntimeException);
-
- virtual ::sal_Int32 SAL_CALL getAccessibleChildCount()
- throw (::css::uno::RuntimeException);
-
- virtual ::css::uno::Reference< ::css::accessibility::XAccessible > SAL_CALL
- getAccessibleChild(::sal_Int32 i)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException);
-
- virtual ::css::uno::Reference< ::css::accessibility::XAccessible > SAL_CALL
- getAccessibleParent() throw (::css::uno::RuntimeException);
-
- virtual ::sal_Int32 SAL_CALL getAccessibleIndexInParent()
- throw (::css::uno::RuntimeException);
-
- virtual ::sal_Int16 SAL_CALL getAccessibleRole()
- throw (::css::uno::RuntimeException);
-
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription()
- throw (::css::uno::RuntimeException);
-
- virtual ::rtl::OUString SAL_CALL getAccessibleName()
- throw (::css::uno::RuntimeException);
-
- virtual
- ::css::uno::Reference< ::css::accessibility::XAccessibleRelationSet >
- SAL_CALL getAccessibleRelationSet() throw (::css::uno::RuntimeException);
-
- virtual
- ::css::uno::Reference< ::css::accessibility::XAccessibleStateSet > SAL_CALL
- getAccessibleStateSet() throw (::css::uno::RuntimeException);
-
- virtual ::css::lang::Locale SAL_CALL getLocale()
- throw (::css::accessibility::IllegalAccessibleComponentStateException,
- ::css::uno::RuntimeException);
-
- virtual ::sal_Bool SAL_CALL containsPoint(::css::awt::Point const & rPoint)
- throw (::css::uno::RuntimeException);
-
- virtual ::css::uno::Reference< ::css::accessibility::XAccessible > SAL_CALL
- getAccessibleAtPoint(::css::awt::Point const & rPoint)
- throw (::css::uno::RuntimeException);
-
- virtual ::css::awt::Rectangle SAL_CALL getBounds()
- throw (::css::uno::RuntimeException);
-
- virtual ::css::awt::Point SAL_CALL getLocation()
- throw (::css::uno::RuntimeException);
-
- virtual ::css::awt::Point SAL_CALL getLocationOnScreen()
- throw (::css::uno::RuntimeException);
-
- virtual ::css::awt::Size SAL_CALL getSize()
- throw (::css::uno::RuntimeException);
-
- virtual void SAL_CALL grabFocus() throw (::css::uno::RuntimeException);
-
- virtual ::css::uno::Any SAL_CALL getAccessibleKeyBinding()
- throw (::css::uno::RuntimeException);
-
- virtual ::css::util::Color SAL_CALL getForeground()
- throw (::css::uno::RuntimeException);
-
- virtual ::css::util::Color SAL_CALL getBackground()
- throw (::css::uno::RuntimeException);
-
- virtual ::sal_Int32 SAL_CALL getCaretPosition()
- throw (::css::uno::RuntimeException);
-
- virtual ::sal_Bool SAL_CALL setCaretPosition(::sal_Int32 nIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException);
-
- virtual ::sal_Unicode SAL_CALL getCharacter(::sal_Int32 nIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException);
-
- virtual ::css::uno::Sequence< ::css::beans::PropertyValue > SAL_CALL
- getCharacterAttributes(::sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes )
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException);
-
- virtual ::css::awt::Rectangle SAL_CALL
- getCharacterBounds(::sal_Int32 nIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException);
-
- virtual ::sal_Int32 SAL_CALL getCharacterCount()
- throw (::css::uno::RuntimeException);
-
- virtual ::sal_Int32 SAL_CALL
- getIndexAtPoint(::css::awt::Point const & rPoint)
- throw (::css::uno::RuntimeException);
-
- virtual ::rtl::OUString SAL_CALL getSelectedText()
- throw (::css::uno::RuntimeException);
-
- virtual ::sal_Int32 SAL_CALL getSelectionStart()
- throw (::css::uno::RuntimeException);
-
- virtual ::sal_Int32 SAL_CALL getSelectionEnd()
- throw (::css::uno::RuntimeException);
-
- virtual ::sal_Bool SAL_CALL setSelection(::sal_Int32 nStartIndex,
- ::sal_Int32 nEndIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException);
-
- virtual ::rtl::OUString SAL_CALL getText()
- throw (::css::uno::RuntimeException);
-
- virtual ::rtl::OUString SAL_CALL getTextRange(::sal_Int32 nStartIndex,
- ::sal_Int32 nEndIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException);
-
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
-
- virtual ::sal_Bool SAL_CALL copyText(::sal_Int32 nStartIndex,
- ::sal_Int32 nEndIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException);
-
- virtual ::sal_Bool SAL_CALL cutText(::sal_Int32 nStartIndex,
- ::sal_Int32 nEndIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException);
-
- virtual ::sal_Bool SAL_CALL pasteText(::sal_Int32 nIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException);
-
- virtual ::sal_Bool SAL_CALL deleteText(::sal_Int32 nStartIndex,
- ::sal_Int32 nEndIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException);
-
- virtual ::sal_Bool SAL_CALL insertText(::rtl::OUString const & rText,
- ::sal_Int32 nIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException);
-
- virtual ::sal_Bool SAL_CALL replaceText(
- ::sal_Int32 nStartIndex, ::sal_Int32 nEndIndex,
- ::rtl::OUString const & rReplacement)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException);
-
- virtual ::sal_Bool SAL_CALL setAttributes(
- ::sal_Int32 nStartIndex, ::sal_Int32 nEndIndex,
- ::css::uno::Sequence< ::css::beans::PropertyValue > const &
- rAttributeSet)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException);
-
- virtual ::sal_Bool SAL_CALL setText(::rtl::OUString const & rText)
- throw (::css::uno::RuntimeException);
-
- virtual ::css::uno::Sequence< ::css::beans::PropertyValue > SAL_CALL
- getDefaultAttributes(const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes)
- throw (::css::uno::RuntimeException);
-
- virtual ::css::uno::Sequence< ::css::beans::PropertyValue > SAL_CALL
- getRunAttributes(::sal_Int32 Index, const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException);
-
- virtual ::sal_Int32 SAL_CALL getLineNumberAtIndex( ::sal_Int32 nIndex )
- throw (::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException);
-
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtLineNumber( ::sal_Int32 nLineNo )
- throw (::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException);
-
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtLineWithCaret( )
- throw (::com::sun::star::uno::RuntimeException);
-
- virtual ::sal_Int32 SAL_CALL getNumberOfLineWithCaret( )
- throw (::com::sun::star::uno::RuntimeException);
-
- using cppu::WeakAggComponentImplHelperBase::addEventListener;
- virtual void SAL_CALL addEventListener(
- ::css::uno::Reference<
- ::css::accessibility::XAccessibleEventListener > const & rListener)
- throw (::css::uno::RuntimeException);
-
- using cppu::WeakAggComponentImplHelperBase::removeEventListener;
- virtual void SAL_CALL removeEventListener(
- ::css::uno::Reference<
- ::css::accessibility::XAccessibleEventListener > const & rListener)
- throw (::css::uno::RuntimeException);
-
- virtual void SAL_CALL disposing();
-
- virtual ::rtl::OUString implGetText();
-
- virtual ::css::lang::Locale implGetLocale();
-
- virtual void implGetSelection(::sal_Int32 & rStartIndex,
- ::sal_Int32 & rEndIndex);
-
- // Throws ::css::lang::DisposedException:
- void checkDisposed();
-
- ::rtl::Reference< Document > m_xDocument;
- Paragraphs::size_type m_nNumber;
-
-// ::cppu::OInterfaceContainerHelper m_aListeners;
- /// client id in the AccessibleEventNotifier queue
- sal_uInt32 m_nClientId;
-
- ::rtl::OUString m_aParagraphText;
-};
-
-
-typedef ::boost::unordered_map< ::rtl::OUString,
- ::css::beans::PropertyValue,
- ::rtl::OUStringHash,
- ::std::equal_to< ::rtl::OUString > > tPropValMap;
-
-class Document: public ::VCLXAccessibleComponent, public ::SfxListener
-{
-public:
- Document(::VCLXWindow * pVclXWindow, ::TextEngine & rEngine,
- ::TextView & rView, bool bCompoundControlChild);
-
- inline ::css::uno::Reference< ::css::accessibility::XAccessible >
- getAccessible() { return m_xAccessible; }
-
- // Must be called only after init has been called.
- ::css::lang::Locale retrieveLocale();
-
- // Must be called only after init has been called.
- // To make it possible for this method to be (indirectly) called from
- // within Paragraph's constructor (i.e., when the Paragraph's ref count is
- // still zero), pass a "ParagraphImpl const *" instead of a
- // "::rtl::Reference< ParagraphImpl > const &".
- ::sal_Int32 retrieveParagraphIndex(ParagraphImpl const * pParagraph);
-
- // Must be called only after init has been called.
- // To make it possible for this method to be (indirectly) called from
- // within Paragraph's constructor (i.e., when the Paragraph's ref count is
- // still zero), pass a "ParagraphImpl const *" instead of a
- // "::rtl::Reference< ParagraphImpl > const &".
- ::sal_Int64 retrieveParagraphState(ParagraphImpl const * pParagraph);
-
- // Must be called only after init has been called.
- // To make it possible for this method to be (indirectly) called from
- // within Paragraph's constructor (i.e., when the Paragraph's ref count is
- // still zero), pass a "ParagraphImpl const &" instead of a
- // "::rtl::Reference< ParagraphImpl > const &".
- ::css::awt::Rectangle
- retrieveParagraphBounds(ParagraphImpl const * pParagraph, bool bAbsolute);
-
- // Must be called only after init has been called.
- // To make it possible for this method to be (indirectly) called from
- // within Paragraph's constructor (i.e., when the Paragraph's ref count is
- // still zero), pass a "ParagraphImpl const &" instead of a
- // "::rtl::Reference< ParagraphImpl > const &".
- ::rtl::OUString retrieveParagraphText(ParagraphImpl const * pParagraph);
-
- // Must be called only after init has been called.
- // To make it possible for this method to be (indirectly) called from
- // within Paragraph's constructor (i.e., when the Paragraph's ref count is
- // still zero), pass a "ParagraphImpl const &" instead of a
- // "::rtl::Reference< ParagraphImpl > const &".
- void retrieveParagraphSelection(ParagraphImpl const * pParagraph,
- ::sal_Int32 * pBegin, ::sal_Int32 * pEnd);
-
- // Must be called only after init has been called.
- // To make it possible for this method to be (indirectly) called from
- // within Paragraph's constructor (i.e., when the Paragraph's ref count is
- // still zero), pass a "ParagraphImpl const *" instead of a
- // "::rtl::Reference< ParagraphImpl > const &".
- ::sal_Int32 retrieveParagraphCaretPosition(ParagraphImpl const * pParagraph);
-
- // Must be called only after init has been called.
- // To make it possible for this method to be (indirectly) called from
- // within Paragraph's constructor (i.e., when the Paragraph's ref count is
- // still zero), pass a "ParagraphImpl const &" instead of a
- // "::rtl::Reference< ParagraphImpl > const &".
- // Throws ::css::lang::IndexOutOfBoundsException.
- ::css::awt::Rectangle
- retrieveCharacterBounds(ParagraphImpl const * pParagraph,
- ::sal_Int32 nIndex);
-
- // Must be called only after init has been called.
- // To make it possible for this method to be (indirectly) called from
- // within Paragraph's constructor (i.e., when the Paragraph's ref count is
- // still zero), pass a "ParagraphImpl const &" instead of a
- // "::rtl::Reference< ParagraphImpl > const &".
- ::sal_Int32 retrieveCharacterIndex(ParagraphImpl const * pParagraph,
- ::css::awt::Point const & rPoint);
-
- // Must be called only after init has been called.
- // To make it possible for this method to be (indirectly) called from
- // within Paragraph's constructor (i.e., when the Paragraph's ref count is
- // still zero), pass a "ParagraphImpl const &" instead of a
- // "::rtl::Reference< ParagraphImpl > const &".
- // Throws ::css::lang::IndexOutOfBoundsException.
- ::css::uno::Sequence< ::css::beans::PropertyValue > retrieveCharacterAttributes(
- ParagraphImpl const * pParagraph, ::sal_Int32 nIndex,
- const ::css::uno::Sequence< ::rtl::OUString >& aRequestedAttributes);
-
- // Must be called only after init has been called.
- // To make it possible for this method to be (indirectly) called from
- // within Paragraph's constructor (i.e., when the Paragraph's ref count is
- // still zero), pass a "ParagraphImpl const &" instead of a
- // "::rtl::Reference< ParagraphImpl > const &".
- ::css::uno::Sequence< ::css::beans::PropertyValue > retrieveDefaultAttributes(
- ParagraphImpl const * pParagraph,
- const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes);
-
- // Must be called only after init has been called.
- // To make it possible for this method to be (indirectly) called from
- // within Paragraph's constructor (i.e., when the Paragraph's ref count is
- // still zero), pass a "ParagraphImpl const &" instead of a
- // "::rtl::Reference< ParagraphImpl > const &".
- // Throws ::css::lang::IndexOutOfBoundsException.
- ::css::uno::Sequence< ::css::beans::PropertyValue > retrieveRunAttributes(
- ParagraphImpl const * pParagraph, ::sal_Int32 Index,
- const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes);
-
- // Must be called only after init has been called.
- // To make it possible for this method to be (indirectly) called from
- // within Paragraph's constructor (i.e., when the Paragraph's ref count is
- // still zero), pass a "ParagraphImpl const &" instead of a
- // "::rtl::Reference< ParagraphImpl > const &".
- void changeParagraphText(ParagraphImpl * pParagraph,
- ::rtl::OUString const & rText);
-
- // Must be called only after init has been called.
- // To make it possible for this method to be (indirectly) called from
- // within Paragraph's constructor (i.e., when the Paragraph's ref count is
- // still zero), pass a "ParagraphImpl const &" instead of a
- // "::rtl::Reference< ParagraphImpl > const &".
- // Throws ::css::lang::IndexOutOfBoundsException.
- void changeParagraphText(ParagraphImpl * pParagraph, ::sal_Int32 nBegin,
- ::sal_Int32 nEnd, bool bCut, bool bPaste,
- ::rtl::OUString const & rText);
-
- // Must be called only after init has been called.
- // To make it possible for this method to be (indirectly) called from
- // within Paragraph's constructor (i.e., when the Paragraph's ref count is
- // still zero), pass a "ParagraphImpl const &" instead of a
- // "::rtl::Reference< ParagraphImpl > const &".
- // Throws ::css::lang::IndexOutOfBoundsException.
- void copyParagraphText(ParagraphImpl const * pParagraph,
- ::sal_Int32 nBegin, ::sal_Int32 nEnd);
-
- // Must be called only after init has been called.
- // To make it possible for this method to be (indirectly) called from
- // within Paragraph's constructor (i.e., when the Paragraph's ref count is
- // still zero), pass a "ParagraphImpl const &" instead of a
- // "::rtl::Reference< ParagraphImpl > const &".
- // Throws ::css::lang::IndexOutOfBoundsException.
- void changeParagraphAttributes(
- ParagraphImpl * pParagraph, ::sal_Int32 nBegin, ::sal_Int32 nEnd,
- ::css::uno::Sequence< ::css::beans::PropertyValue > const &
- rAttributeSet);
-
- // Must be called only after init has been called.
- // To make it possible for this method to be (indirectly) called from
- // within Paragraph's constructor (i.e., when the Paragraph's ref count is
- // still zero), pass a "ParagraphImpl const &" instead of a
- // "::rtl::Reference< ParagraphImpl > const &".
- // Throws ::css::lang::IndexOutOfBoundsException.
- void changeParagraphSelection(ParagraphImpl * pParagraph,
- ::sal_Int32 nBegin, ::sal_Int32 nEnd);
-
- ::css::i18n::Boundary
- retrieveParagraphLineBoundary( ParagraphImpl const * pParagraph,
- ::sal_Int32 nIndex, ::sal_Int32 *pLineNo = NULL);
-
- ::css::i18n::Boundary
- retrieveParagraphBoundaryOfLine( ParagraphImpl const * pParagraph,
- ::sal_Int32 nIndex );
-
- sal_Int32 retrieveParagraphLineWithCursor( ParagraphImpl const * pParagraph );
-
- ::css::uno::Reference< ::css::accessibility::XAccessibleRelationSet >
- retrieveParagraphRelationSet( ParagraphImpl const * pParagraph );
-
-protected:
- // window event listener from base class
- virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
-
-private:
- virtual ::sal_Int32 SAL_CALL getAccessibleChildCount()
- throw (::css::uno::RuntimeException);
-
- virtual ::css::uno::Reference< ::css::accessibility::XAccessible >
- SAL_CALL getAccessibleChild(::sal_Int32 i)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException);
-
- virtual ::sal_Int16 SAL_CALL getAccessibleRole()
- throw (::css::uno::RuntimeException);
-
- virtual ::css::uno::Reference< ::css::accessibility::XAccessible >
- SAL_CALL getAccessibleAtPoint(::css::awt::Point const & rPoint)
- throw (::css::uno::RuntimeException);
-
- // ??? Will be called with both the external (Solar) and internal mutex
- // locked:
- virtual void SAL_CALL disposing();
-
- // ??? Will be called with the external (Solar) mutex locked.
- // init will already have been called.
- virtual void Notify(::SfxBroadcaster & rBC, ::SfxHint const & rHint);
-
- // Assuming that this will only be called with the external (Solar) mutex
- // locked.
- // init will already have been called.
- DECL_LINK(WindowEventHandler, VclSimpleEvent *);
-
- // Must be called with both the external (Solar) and internal mutex
- // locked.
- void init();
-
- // Must be called with both the external (Solar) and internal mutex
- // locked, and after init has been called:
- ::rtl::Reference< ParagraphImpl >
- getParagraph(Paragraphs::iterator const & rIt);
-
- // Must be called with both the external (Solar) and internal mutex
- // locked, and after init has been called.
- // Throws ::css::uno::RuntimeException.
- ::css::uno::Reference< ::css::accessibility::XAccessible >
- getAccessibleChild(Paragraphs::iterator const & rIt);
-
- // Must be called with both the external (Solar) and internal mutex
- // locked, and after init has been called:
- void determineVisibleRange();
-
- // Must be called with both the external (Solar) and internal mutex
- // locked, and after init has been called:
- void notifyVisibleRangeChanges(
- Paragraphs::iterator const & rOldVisibleBegin,
- Paragraphs::iterator const & rOldVisibleEnd,
- Paragraphs::iterator const & rInserted);
-
- // Must be called with both the external (Solar) and internal mutex
- // locked, and after init has been called:
- void changeParagraphText(::sal_uLong nNumber, ::sal_uInt16 nBegin, ::sal_uInt16 nEnd,
- bool bCut, bool bPaste,
- ::rtl::OUString const & rText);
-
- void
- handleParagraphNotifications();
-
- void handleSelectionChangeNotification();
-
- void notifySelectionChange( sal_Int32 nFirst, sal_Int32 nLast );
-
- void justifySelection( TextPaM& rTextStart, TextPaM& rTextEnd );
-
- void disposeParagraphs();
-
- static ::css::uno::Any mapFontColor(::Color const & rColor);
-
- static ::Color mapFontColor(::css::uno::Any const & rColor);
-
- static ::css::uno::Any mapFontWeight(::FontWeight nWeight);
-
- static ::FontWeight mapFontWeight(::css::uno::Any const & rWeight);
-
- void retrieveDefaultAttributesImpl(
- ParagraphImpl const * pParagraph,
- const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes,
- tPropValMap& rDefAttrSeq);
-
- void retrieveRunAttributesImpl(
- ParagraphImpl const * pParagraph, ::sal_Int32 Index,
- const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes,
- tPropValMap& rRunAttrSeq);
-
- static ::css::uno::Sequence< ::css::beans::PropertyValue >
- convertHashMapToSequence(tPropValMap& rAttrSeq);
-
- ::css::uno::Reference< ::css::accessibility::XAccessible > m_xAccessible;
- ::TextEngine & m_rEngine;
- ::TextView & m_rView;
-
- SfxListenerGuard m_aEngineListener;
- WindowListenerGuard m_aViewListener;
-
- // All the following members have valid values only after calling init:
-
- ::std::auto_ptr< Paragraphs > m_xParagraphs;
-
- // m_nViewOffset is from the start of the document (0) to the start of the
- // current view, and m_nViewHeight is the height of the view:
- ::sal_Int32 m_nViewOffset;
- ::sal_Int32 m_nViewHeight;
-
- // m_aVisibleBegin points to the first Paragraph that is (partially)
- // contained in the view, and m_aVisibleEnd points past the last Paragraph
- // that is (partially) contained. If no Paragraphs are (partially) in the
- // view, both m_aVisibleBegin and m_aVisibleEnd are set to
- // m_xParagraphs->end(). These values are only changed by
- // determineVisibleRange.
- Paragraphs::iterator m_aVisibleBegin;
- Paragraphs::iterator m_aVisibleEnd;
-
- // m_nVisibleBeginOffset is from m_nViewOffset back to the start of the
- // Paragraph pointed to by m_aVisibleBegin (and always has a non-negative
- // value). If m_aVisibleBegin == m_xParagraphs->end(),
- // m_nVisibleBeginOffset is set to 0. These values are only changed by
- // determineVisibleRange.
- ::sal_Int32 m_nVisibleBeginOffset;
-
- // If no selection has yet been set, all the following four variables are
- // set to -1. m_nSelectionLastPara/Pos is also the cursor position.
- ::sal_Int32 m_nSelectionFirstPara;
- ::sal_Int32 m_nSelectionFirstPos;
- ::sal_Int32 m_nSelectionLastPara;
- ::sal_Int32 m_nSelectionLastPos;
-
- Paragraphs::iterator m_aFocused;
-
- ::std::queue< ::TextHint > m_aParagraphNotifications;
- bool m_bSelectionChangedNotification;
- bool m_bCompoundControlChild;
-};
-
-}
-
-#endif // INCLUDED_ACCESSIBILITY_TEXTWINDOWACCESSIBILITY_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/helper/IComboListBoxHelper.hxx b/accessibility/inc/accessibility/helper/IComboListBoxHelper.hxx
deleted file mode 100644
index c61274e7f..000000000
--- a/accessibility/inc/accessibility/helper/IComboListBoxHelper.hxx
+++ /dev/null
@@ -1,71 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef ACCESSIBILITY_HELPER_COMBOLISTBOXHELPER_HXX
-#define ACCESSIBILITY_HELPER_COMBOLISTBOXHELPER_HXX
-
-#include <tools/string.hxx>
-#include <tools/wintypes.hxx>
-
-namespace com { namespace sun { namespace star { namespace datatransfer { namespace clipboard {
- class XClipboard;
-} } } } }
-
-class Window;
-namespace accessibility
-{
- class SAL_NO_VTABLE IComboListBoxHelper
- {
- public:
- virtual String GetEntry( sal_uInt16 nPos ) const = 0;
- virtual Rectangle GetDropDownPosSizePixel( ) const = 0;
- virtual Rectangle GetBoundingRectangle( sal_uInt16 nItem ) const = 0;
- virtual Rectangle GetWindowExtentsRelative( Window* pRelativeWindow ) = 0;
- virtual sal_Bool IsActive() const = 0;
- virtual sal_Bool IsEntryVisible( sal_uInt16 nPos ) const = 0;
- virtual sal_uInt16 GetDisplayLineCount() const = 0;
- virtual void GetMaxVisColumnsAndLines( sal_uInt16& rnCols, sal_uInt16& rnLines ) const = 0;
- virtual WinBits GetStyle() const = 0;
- virtual sal_Bool IsMultiSelectionEnabled() const = 0;
- virtual sal_uInt16 GetTopEntry() const = 0;
- virtual sal_Bool IsEntryPosSelected( sal_uInt16 nPos ) const = 0;
- virtual sal_uInt16 GetEntryCount() const = 0;
- virtual void Select() = 0;
- virtual void SelectEntryPos( sal_uInt16 nPos, sal_Bool bSelect = sal_True ) = 0;
- virtual sal_uInt16 GetSelectEntryCount() const = 0;
- virtual void SetNoSelection() = 0;
- virtual sal_uInt16 GetSelectEntryPos( sal_uInt16 nSelIndex = 0 ) const = 0;
- virtual sal_Bool IsInDropDown() const = 0;
- virtual Rectangle GetEntryCharacterBounds( const sal_Int32 _nEntryPos, const sal_Int32 _nCharacterIndex ) const = 0;
- virtual long GetIndexForPoint( const Point& rPoint, sal_uInt16& nPos ) const = 0;
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::datatransfer::clipboard::XClipboard >
- GetClipboard() = 0;
- };
-}
-#endif // ACCESSIBILITY_HELPER_COMBOLISTBOXHELPER_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/helper/acc_factory.hxx b/accessibility/inc/accessibility/helper/acc_factory.hxx
deleted file mode 100644
index b0b0778a0..000000000
--- a/accessibility/inc/accessibility/helper/acc_factory.hxx
+++ /dev/null
@@ -1,53 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_HELPER_FACTORY_HXX
-#define ACCESSIBILITY_HELPER_FACTORY_HXX
-
-#include <toolkit/helper/accessiblefactory.hxx>
-#include <svtools/accessiblefactory.hxx>
-
-/** this is the entry point to retrieve a factory for the toolkit-level Accessible/Contexts supplied
- by this library
-
- This function implements the factory function needed in toolkit
- (of type GetStandardAccComponentFactory).
-*/
-extern "C" void* SAL_CALL getStandardAccessibleFactory();
-
-/** this is the entry point to retrieve a factory for the svtools-level Accessible/Contexts supplied
- by this library
-
- This function implements the factory function needed in svtools
- (of type GetSvtAccessibilityComponentFactory).
-*/
-extern "C" void* SAL_CALL getSvtAccessibilityComponentFactory();
-
-#endif // ACCESSIBILITY_HELPER_FACTORY_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/helper/accessiblestrings.hrc b/accessibility/inc/accessibility/helper/accessiblestrings.hrc
deleted file mode 100644
index 8040f3588..000000000
--- a/accessibility/inc/accessibility/helper/accessiblestrings.hrc
+++ /dev/null
@@ -1,53 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_HELPER_ACCESSIBLESTRINGS_HRC_
-#define ACCESSIBILITY_HELPER_ACCESSIBLESTRINGS_HRC_
-
-
-//------------------------------------------------------------------------------
-
-#define RID_TK_ACC_START 1000
-
-
-// Accessible Action Id's ------------------------------------------------------
-
-#define RID_STR_ACC_ACTION_CLICK ( RID_TK_ACC_START + 0 )
-#define RID_STR_ACC_ACTION_TOGGLEPOPUP ( RID_TK_ACC_START + 1 )
-#define RID_STR_ACC_ACTION_SELECT ( RID_TK_ACC_START + 2 )
-#define RID_STR_ACC_ACTION_INCLINE ( RID_TK_ACC_START + 3 )
-#define RID_STR_ACC_ACTION_DECLINE ( RID_TK_ACC_START + 4 )
-#define RID_STR_ACC_ACTION_INCBLOCK ( RID_TK_ACC_START + 5 )
-#define RID_STR_ACC_ACTION_DECBLOCK ( RID_TK_ACC_START + 6 )
-
-
-#define RID_STR_ACC_NAME_BROWSEBUTTON ( RID_TK_ACC_START + 100 )
-#define RID_STR_ACC_DESC_PANELDECL_TABBAR ( RID_TK_ACC_START + 101 )
-
-// -----------------------------------------------------------------------------
-
-#endif // ACCESSIBILITY_HELPER_ACCESSIBLESTRINGS_HRC_
diff --git a/accessibility/inc/accessibility/helper/accresmgr.hxx b/accessibility/inc/accessibility/helper/accresmgr.hxx
deleted file mode 100644
index 079ae6c83..000000000
--- a/accessibility/inc/accessibility/helper/accresmgr.hxx
+++ /dev/null
@@ -1,72 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_HELPER_TKARESMGR_HXX
-#define ACCESSIBILITY_HELPER_TKARESMGR_HXX
-
-#include <rtl/ustring.hxx>
-
-class SimpleResMgr;
-
-#define TK_RES_STRING(id) TkResMgr::loadString(id)
-
-// -----------------------------------------------------------------------------
-// TkResMgr
-// -----------------------------------------------------------------------------
-
-class TkResMgr
-{
- static SimpleResMgr* m_pImpl;
-
-private:
- // no instantiation allowed
- TkResMgr() { }
- ~TkResMgr() { }
-
- // we'll instantiate one static member of the following class,
- // which in it's dtor ensures that m_pImpl will be deleted
- class EnsureDelete
- {
- public:
- EnsureDelete() { }
- ~EnsureDelete();
- };
- friend class EnsureDelete;
-
-protected:
- static void ensureImplExists();
-
-public:
- // loads the string with the specified resource id
- static ::rtl::OUString loadString( sal_uInt16 nResId );
-};
-
-
-#endif // ACCESSIBILITY_HELPER_TKARESMGR_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/helper/characterattributeshelper.hxx b/accessibility/inc/accessibility/helper/characterattributeshelper.hxx
deleted file mode 100644
index 4e5cb90dc..000000000
--- a/accessibility/inc/accessibility/helper/characterattributeshelper.hxx
+++ /dev/null
@@ -1,61 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_HELPER_CHARACTERATTRIBUTESHELPER_HXX
-#define ACCESSIBILITY_HELPER_CHARACTERATTRIBUTESHELPER_HXX
-
-#include <com/sun/star/uno/Sequence.hxx>
-#include <com/sun/star/beans/PropertyValue.hpp>
-#include <vcl/font.hxx>
-
-#include <map>
-
-// -----------------------------------------------------------------------------
-// class CharacterAttributesHelper
-// -----------------------------------------------------------------------------
-
-class CharacterAttributesHelper
-{
-private:
-
- typedef ::std::map< ::rtl::OUString, ::com::sun::star::uno::Any, ::std::less< ::rtl::OUString > > AttributeMap;
-
- AttributeMap m_aAttributeMap;
-
-public:
-
- CharacterAttributesHelper( const Font& rFont, sal_Int32 nBackColor, sal_Int32 nColor );
- ~CharacterAttributesHelper();
-
- ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > GetCharacterAttributes();
- ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > GetCharacterAttributes( const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes );
-};
-
-#endif // ACCESSIBILITY_HELPER_CHARACTERATTRIBUTESHELPER_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/helper/listboxhelper.hxx b/accessibility/inc/accessibility/helper/listboxhelper.hxx
deleted file mode 100644
index 7747ba880..000000000
--- a/accessibility/inc/accessibility/helper/listboxhelper.hxx
+++ /dev/null
@@ -1,198 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_HELPER_LISTBOXHELPER_HXX
-#define ACCESSIBILITY_HELPER_LISTBOXHELPER_HXX
-
-#include <accessibility/helper/IComboListBoxHelper.hxx>
-#include <vcl/lstbox.hxx>
-#include <vcl/combobox.hxx>
-#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
-
-// -----------------------------------------------------------------------------
-// globals
-// -----------------------------------------------------------------------------
-
-const sal_Int32 DEFAULT_INDEX_IN_PARENT = -1;
-
-// -----------------------------------------------------------------------------
-// class VCLListBoxHelper
-// -----------------------------------------------------------------------------
-
-template< class T > class VCLListBoxHelper : public ::accessibility::IComboListBoxHelper
-{
-private:
- T& m_aComboListBox;
-
-public:
- inline
- VCLListBoxHelper( T& _pListBox ) :
- m_aComboListBox( _pListBox ){}
-
- // -----------------------------------------------------------------------------
- virtual String GetEntry( sal_uInt16 nPos ) const
- {
- return m_aComboListBox.GetEntry( nPos );
- }
- // -----------------------------------------------------------------------------
- virtual Rectangle GetDropDownPosSizePixel() const
- {
- Rectangle aTemp = m_aComboListBox.GetWindowExtentsRelative(NULL);
- Rectangle aRet = m_aComboListBox.GetDropDownPosSizePixel();
- aRet.Move(aTemp.TopLeft().X(),aTemp.TopLeft().Y());
- return aRet;
- }
- // -----------------------------------------------------------------------------
- virtual Rectangle GetBoundingRectangle( sal_uInt16 nItem ) const
- {
- Rectangle aRect;
- if ( m_aComboListBox.IsInDropDown() && IsEntryVisible( nItem ) )
- {
- Rectangle aTemp = m_aComboListBox.GetDropDownPosSizePixel();
- Size aSize = aTemp.GetSize();
- aSize.Height() /= m_aComboListBox.GetDisplayLineCount();
- Point aTopLeft = aTemp.TopLeft();
- aTopLeft.Y() += aSize.Height() * ( nItem - m_aComboListBox.GetTopEntry() );
- aRect = Rectangle( aTopLeft, aSize );
- }
- else
- aRect = m_aComboListBox.GetBoundingRectangle( nItem );
- return aRect;
- }
- // -----------------------------------------------------------------------------
- virtual Rectangle GetWindowExtentsRelative( Window* pRelativeWindow )
- {
- return m_aComboListBox.GetWindowExtentsRelative( pRelativeWindow );
- }
- // -----------------------------------------------------------------------------
- virtual sal_Bool IsActive() const
- {
- return m_aComboListBox.IsActive();
- }
- // -----------------------------------------------------------------------------
- virtual sal_Bool IsEntryVisible( sal_uInt16 nPos ) const
- {
- sal_uInt16 nTopEntry = m_aComboListBox.GetTopEntry();
- sal_uInt16 nLines = m_aComboListBox.GetDisplayLineCount();
- return ( nPos >= nTopEntry && nPos < ( nTopEntry + nLines ) );
- }
- // -----------------------------------------------------------------------------
- virtual sal_uInt16 GetDisplayLineCount() const
- {
- return m_aComboListBox.GetDisplayLineCount();
- }
- // -----------------------------------------------------------------------------
- virtual void GetMaxVisColumnsAndLines( sal_uInt16& rnCols, sal_uInt16& rnLines ) const
- {
- m_aComboListBox.GetMaxVisColumnsAndLines(rnCols,rnLines);
- }
- // -----------------------------------------------------------------------------
- virtual WinBits GetStyle() const
- {
- return m_aComboListBox.GetStyle();
- }
- // -----------------------------------------------------------------------------
- virtual sal_Bool IsMultiSelectionEnabled() const
- {
- return m_aComboListBox.IsMultiSelectionEnabled();
- }
- // -----------------------------------------------------------------------------
- virtual sal_uInt16 GetTopEntry() const
- {
- return m_aComboListBox.GetTopEntry();
- }
- // -----------------------------------------------------------------------------
- virtual sal_Bool IsEntryPosSelected( sal_uInt16 nPos ) const
- {
- return m_aComboListBox.IsEntryPosSelected(nPos);
- }
- // -----------------------------------------------------------------------------
- virtual sal_uInt16 GetEntryCount() const
- {
- return m_aComboListBox.GetEntryCount();
- }
- // -----------------------------------------------------------------------------
- virtual void Select()
- {
- m_aComboListBox.Select();
- }
- // -----------------------------------------------------------------------------
- virtual void SelectEntryPos( sal_uInt16 nPos, sal_Bool bSelect = sal_True )
- {
- m_aComboListBox.SelectEntryPos(nPos,bSelect);
- }
- // -----------------------------------------------------------------------------
- virtual sal_uInt16 GetSelectEntryCount() const
- {
- return m_aComboListBox.GetSelectEntryCount();
- }
- // -----------------------------------------------------------------------------
- virtual void SetNoSelection()
- {
- m_aComboListBox.SetNoSelection();
- }
- // -----------------------------------------------------------------------------
- virtual sal_uInt16 GetSelectEntryPos( sal_uInt16 nSelIndex = 0 ) const
- {
- return m_aComboListBox.GetSelectEntryPos(nSelIndex);
- }
- // -----------------------------------------------------------------------------
- virtual sal_Bool IsInDropDown() const
- {
- return m_aComboListBox.IsInDropDown();
- }
- // -----------------------------------------------------------------------------
- virtual Rectangle GetEntryCharacterBounds( const sal_Int32 _nEntryPos, const sal_Int32 _nCharacterIndex ) const
- {
- Rectangle aRect;
-
- Pair aEntryCharacterRange = m_aComboListBox.GetLineStartEnd( _nEntryPos );
- if ( aEntryCharacterRange.A() + _nCharacterIndex <= aEntryCharacterRange.B() )
- {
- long nIndex = aEntryCharacterRange.A() + _nCharacterIndex;
- aRect = m_aComboListBox.GetCharacterBounds( nIndex );
- }
- return aRect;
- }
- // -----------------------------------------------------------------------------
- long GetIndexForPoint( const Point& rPoint, sal_uInt16& nPos ) const
- {
- return m_aComboListBox.GetIndexForPoint( rPoint, nPos );
- }
- // -----------------------------------------------------------------------------
- ::com::sun::star::uno::Reference< ::com::sun::star::datatransfer::clipboard::XClipboard >
- GetClipboard()
- {
- return m_aComboListBox.GetClipboard();
- }
- // -----------------------------------------------------------------------------
-};
-
-#endif // ACCESSIBILITY_HELPER_LISTBOXHELPER_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/accessiblemenubasecomponent.hxx b/accessibility/inc/accessibility/standard/accessiblemenubasecomponent.hxx
deleted file mode 100644
index 52ed3e1e4..000000000
--- a/accessibility/inc/accessibility/standard/accessiblemenubasecomponent.hxx
+++ /dev/null
@@ -1,157 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_ACCESSIBLEMENUBASECOMPONENT_HXX
-#define ACCESSIBILITY_STANDARD_ACCESSIBLEMENUBASECOMPONENT_HXX
-
-#include <com/sun/star/accessibility/XAccessible.hpp>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <com/sun/star/awt/Point.hpp>
-#include <comphelper/accessiblecomponenthelper.hxx>
-#include <cppuhelper/implbase2.hxx>
-#include <tools/link.hxx>
-
-#include <vector>
-
-class Menu;
-class VclSimpleEvent;
-class VclMenuEvent;
-class VCLExternalSolarLock;
-
-namespace utl {
-class AccessibleStateSetHelper;
-}
-
-// ----------------------------------------------------
-// class OAccessibleMenuBaseComponent
-// ----------------------------------------------------
-
-typedef ::comphelper::OAccessibleExtendedComponentHelper AccessibleExtendedComponentHelper_BASE;
-
-typedef ::cppu::ImplHelper2<
- ::com::sun::star::accessibility::XAccessible,
- ::com::sun::star::lang::XServiceInfo > OAccessibleMenuBaseComponent_BASE;
-
-class OAccessibleMenuBaseComponent : public AccessibleExtendedComponentHelper_BASE,
- public OAccessibleMenuBaseComponent_BASE
-{
- friend class OAccessibleMenuItemComponent;
- friend class VCLXAccessibleMenuItem;
- friend class VCLXAccessibleMenu;
-
-private:
- VCLExternalSolarLock* m_pExternalLock;
-
-protected:
- typedef ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > > AccessibleChildren;
-
- AccessibleChildren m_aAccessibleChildren;
- Menu* m_pMenu;
-
- sal_Bool m_bEnabled;
- sal_Bool m_bFocused;
- sal_Bool m_bVisible;
- sal_Bool m_bSelected;
- sal_Bool m_bChecked;
-
- Menu* GetMenu() { return m_pMenu; }
-
- virtual sal_Bool IsEnabled();
- virtual sal_Bool IsFocused();
- virtual sal_Bool IsVisible();
- virtual sal_Bool IsSelected();
- virtual sal_Bool IsChecked();
-
- void SetEnabled( sal_Bool bEnabled );
- void SetFocused( sal_Bool bFocused );
- void SetVisible( sal_Bool bVisible );
- void SetSelected( sal_Bool bSelected );
- void SetChecked( sal_Bool bChecked );
-
- void UpdateEnabled( sal_Int32 i, sal_Bool bEnabled );
- void UpdateFocused( sal_Int32 i, sal_Bool bFocused );
- void UpdateVisible();
- void UpdateSelected( sal_Int32 i, sal_Bool bSelected );
- void UpdateChecked( sal_Int32 i, sal_Bool bChecked );
- void UpdateAccessibleName( sal_Int32 i );
- void UpdateItemText( sal_Int32 i );
-
- sal_Int32 GetChildCount();
-
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > GetChild( sal_Int32 i );
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > GetChildAt( const ::com::sun::star::awt::Point& rPoint );
-
- void InsertChild( sal_Int32 i );
- void RemoveChild( sal_Int32 i );
-
- virtual sal_Bool IsHighlighted();
- sal_Bool IsChildHighlighted();
-
- void SelectChild( sal_Int32 i );
- void DeSelectAll();
- sal_Bool IsChildSelected( sal_Int32 i );
-
- virtual void Select();
- virtual void DeSelect();
- virtual void Click();
- virtual sal_Bool IsPopupMenuOpen();
-
- DECL_LINK( MenuEventListener, VclSimpleEvent* );
-
- virtual void ProcessMenuEvent( const VclMenuEvent& rVclMenuEvent );
-
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) = 0;
-
- // XComponent
- virtual void SAL_CALL disposing();
-
-public:
- OAccessibleMenuBaseComponent( Menu* pMenu );
- virtual ~OAccessibleMenuBaseComponent();
-
- void SetStates();
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XServiceInfo
- virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessible
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_ACCESSIBLEMENUBASECOMPONENT_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/accessiblemenucomponent.hxx b/accessibility/inc/accessibility/standard/accessiblemenucomponent.hxx
deleted file mode 100644
index 2d292c98f..000000000
--- a/accessibility/inc/accessibility/standard/accessiblemenucomponent.hxx
+++ /dev/null
@@ -1,102 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_ACCESSIBLEMENUCOMPONENT_HXX
-#define ACCESSIBILITY_STANDARD_ACCESSIBLEMENUCOMPONENT_HXX
-
-#include <accessibility/standard/accessiblemenubasecomponent.hxx>
-#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-#include <cppuhelper/implbase1.hxx>
-
-
-// ----------------------------------------------------
-// class OAccessibleMenuComponent
-// ----------------------------------------------------
-
-typedef ::comphelper::OAccessibleExtendedComponentHelper AccessibleExtendedComponentHelper_BASE;
-
-typedef ::cppu::ImplHelper1<
- ::com::sun::star::accessibility::XAccessibleSelection > OAccessibleMenuComponent_BASE;
-
-class OAccessibleMenuComponent : public OAccessibleMenuBaseComponent,
- public OAccessibleMenuComponent_BASE
-{
-protected:
- virtual sal_Bool IsEnabled();
- virtual sal_Bool IsVisible();
-
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
-
- // OCommonAccessibleComponent
- virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
-
-public:
- OAccessibleMenuComponent( Menu* pMenu );
- virtual ~OAccessibleMenuComponent();
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Point SAL_CALL getLocationOnScreen( ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleExtendedComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleSelection
- virtual void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_ACCESSIBLEMENUCOMPONENT_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/accessiblemenuitemcomponent.hxx b/accessibility/inc/accessibility/standard/accessiblemenuitemcomponent.hxx
deleted file mode 100644
index f35e7ce8c..000000000
--- a/accessibility/inc/accessibility/standard/accessiblemenuitemcomponent.hxx
+++ /dev/null
@@ -1,98 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_ACCESSIBLEMENUITEMCOMPONENT_HXX
-#define ACCESSIBILITY_STANDARD_ACCESSIBLEMENUITEMCOMPONENT_HXX
-
-#include <accessibility/standard/accessiblemenubasecomponent.hxx>
-
-
-// ----------------------------------------------------
-// class OAccessibleMenuItemComponent
-// ----------------------------------------------------
-
-class OAccessibleMenuItemComponent : public OAccessibleMenuBaseComponent
-{
- friend class OAccessibleMenuBaseComponent;
-
-protected:
- Menu* m_pParent;
- sal_uInt16 m_nItemPos;
- ::rtl::OUString m_sAccessibleName;
- ::rtl::OUString m_sItemText;
-
- virtual sal_Bool IsEnabled();
- virtual sal_Bool IsVisible();
- virtual void Select();
- virtual void DeSelect();
- virtual void Click();
-
- void SetItemPos( sal_uInt16 nItemPos );
- void SetAccessibleName( const ::rtl::OUString& sAccessibleName );
- ::rtl::OUString GetAccessibleName();
- void SetItemText( const ::rtl::OUString& sItemText );
- ::rtl::OUString GetItemText();
-
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
-
- // OCommonAccessibleComponent
- virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XComponent
- virtual void SAL_CALL disposing();
-
-public:
- OAccessibleMenuItemComponent( Menu* pParent, sal_uInt16 nItemPos, Menu* pMenu );
- virtual ~OAccessibleMenuItemComponent();
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleExtendedComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_ACCESSIBLEMENUITEMCOMPONENT_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblebox.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblebox.hxx
deleted file mode 100644
index f5c8ba01a..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessiblebox.hxx
+++ /dev/null
@@ -1,182 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEBOX_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEBOX_HXX
-
-#include <map>
-#include <accessibility/standard/vclxaccessibleedit.hxx>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/XAccessibleKeyBinding.hpp>
-#include <cppuhelper/implbase2.hxx>
-
-
-typedef ::cppu::ImplHelper2<
- ::com::sun::star::accessibility::XAccessible,
- ::com::sun::star::accessibility::XAccessibleAction
- > VCLXAccessibleBox_BASE;
-
-
-/** Base class for list- and combo boxes. This class manages the box'
- children. The classed derived from this one have only to implement the
- <member>IsValid</member> method and return the corrent implementation name.
-*/
-class VCLXAccessibleBox
- : public VCLXAccessibleComponent,
- public VCLXAccessibleBox_BASE
-{
-public:
- enum BoxType {COMBOBOX, LISTBOX};
-
- /** The constructor is initialized with the box type whitch may be
- either <const>COMBOBOX</const> or <const>LISTBOX</const> and a flag
- indicating whether the box is a drop down box.
- */
- VCLXAccessibleBox (VCLXWindow* pVCLXindow, BoxType aType, bool bIsDropDownBox);
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XInterface
- DECLARE_XINTERFACE()
-
-
-
- // XAccessible
-
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL
- getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
-
- /** Each object has one or two children: an optional text field and the
- actual list. The text field is not provided for non drop down list
- boxes.
- */
- sal_Int32 SAL_CALL getAccessibleChildCount (void)
- throw (::com::sun::star::uno::RuntimeException);
- /** For drop down list boxes the text field is a not editable
- <type>VCLXAccessibleTextField</type>, for combo boxes it is an
- editable <type>VLCAccessibleEdit</type>.
- */
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible> SAL_CALL
- getAccessibleChild (sal_Int32 i)
- throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- /** The role is always <const
- scope="com::sun::star::accessibility">AccessibleRole::COMBO_BOX</const>.
- */
- sal_Int16 SAL_CALL getAccessibleRole (void)
- throw (::com::sun::star::uno::RuntimeException);
-
- sal_Int32 SAL_CALL getAccessibleIndexInParent (void)
- throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleAction
-
- /** There is one action for drop down boxes and none for others.
- */
- virtual sal_Int32 SAL_CALL getAccessibleActionCount (void)
- throw (::com::sun::star::uno::RuntimeException);
- /** The action for drop down boxes lets the user toggle the visibility of the
- popup menu.
- */
- virtual sal_Bool SAL_CALL doAccessibleAction (sal_Int32 nIndex)
- throw (::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException);
- /** The returned string is assoicated with resource
- <const>RID_STR_ACC_ACTION_TOGGLEPOPUP</const>.
- */
- virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription (sal_Int32 nIndex)
- throw (::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException);
- /** No keybinding returned so far.
- */
- virtual ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL
- getAccessibleActionKeyBinding( sal_Int32 nIndex )
- throw (::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException);
-
- // XComponent
-
- /** This method is called from the implementation helper during an
- XComponent::dispose() call.
- */
- virtual void SAL_CALL disposing (void);
-
-
-protected:
- /** Specifies whether the box is a combo box or a list box. List boxes
- have multi selection.
- */
- BoxType m_aBoxType;
-
- /// Specifies whether the box is a drop down box and thus has an action.
- bool m_bIsDropDownBox;
-
- /// The child that represents the text field if there is one.
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible>
- m_xText;
-
- /// The child that contains the items of this box.
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible>
- m_xList;
-
- /** This flag specifies whether an object has a text field as child
- regardless of whether that child being currently instantiated or
- not.
- */
- bool m_bHasTextChild;
-
- /** This flag specifies whether an object has a list as child regardless
- of whether that child being currently instantiated or not. This
- flag is always true in the current implementation because the list
- child is just another wrapper arround this object and thus has the
- same life time.
- */
- bool m_bHasListChild;
-
- virtual ~VCLXAccessibleBox (void);
-
- /** Returns </true> when the object is valid.
- */
- virtual bool IsValid (void) const = 0;
-
- virtual void ProcessWindowChildEvent (const VclWindowEvent& rVclWindowEvent);
- virtual void ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent);
-
-
-private:
- /// Index in parent. This is settable from the outside.
- sal_Int32 m_nIndexInParent;
-};
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblebutton.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblebutton.hxx
deleted file mode 100644
index 2702f2a5c..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessiblebutton.hxx
+++ /dev/null
@@ -1,88 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEBUTTON_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEBUTTON_HXX
-
-#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
-
-#include <com/sun/star/accessibility/XAccessibleAction.hpp>
-#include <com/sun/star/accessibility/XAccessibleValue.hpp>
-
-#include <cppuhelper/implbase2.hxx>
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleButton
-// ----------------------------------------------------
-
-typedef ::cppu::ImplHelper2<
- ::com::sun::star::accessibility::XAccessibleAction,
- ::com::sun::star::accessibility::XAccessibleValue > VCLXAccessibleButton_BASE;
-
-class VCLXAccessibleButton : public VCLXAccessibleTextComponent,
- public VCLXAccessibleButton_BASE
-{
-protected:
- virtual ~VCLXAccessibleButton();
-
- virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
-
-public:
- VCLXAccessibleButton( VCLXWindow* pVCLXindow );
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleAction
- virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL doAccessibleAction ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleValue
- virtual ::com::sun::star::uno::Any SAL_CALL getCurrentValue( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCurrentValue( const ::com::sun::star::uno::Any& aNumber ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Any SAL_CALL getMaximumValue( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Any SAL_CALL getMinimumValue( ) throw (::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEBUTTON_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblecheckbox.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblecheckbox.hxx
deleted file mode 100644
index da1714196..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessiblecheckbox.hxx
+++ /dev/null
@@ -1,95 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLECHECKBOX_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLECHECKBOX_HXX
-
-#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
-
-#include <com/sun/star/accessibility/XAccessibleAction.hpp>
-#include <com/sun/star/accessibility/XAccessibleValue.hpp>
-
-#include <cppuhelper/implbase2.hxx>
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleCheckBox
-// ----------------------------------------------------
-
-typedef ::cppu::ImplHelper2<
- ::com::sun::star::accessibility::XAccessibleAction,
- ::com::sun::star::accessibility::XAccessibleValue > VCLXAccessibleCheckBox_BASE;
-
-class VCLXAccessibleCheckBox : public VCLXAccessibleTextComponent,
- public VCLXAccessibleCheckBox_BASE
-{
-private:
- bool m_bChecked;
- bool m_bIndeterminate;
-
-protected:
- virtual ~VCLXAccessibleCheckBox();
-
- bool IsChecked();
- bool IsIndeterminate();
-
- void SetChecked( bool bChecked );
- void SetIndeterminate( bool bIndeterminate );
-
- virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
-
-public:
- VCLXAccessibleCheckBox( VCLXWindow* pVCLXindow );
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleAction
- virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL doAccessibleAction ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleValue
- virtual ::com::sun::star::uno::Any SAL_CALL getCurrentValue( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCurrentValue( const ::com::sun::star::uno::Any& aNumber ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Any SAL_CALL getMaximumValue( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Any SAL_CALL getMinimumValue( ) throw (::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLECHECKBOX_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblecombobox.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblecombobox.hxx
deleted file mode 100644
index 86fd455e0..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessiblecombobox.hxx
+++ /dev/null
@@ -1,67 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLECOMBOBOX_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLECOMBOBOX_HXX
-
-#include <map>
-#include <accessibility/standard/vclxaccessiblebox.hxx>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <cppuhelper/implbase1.hxx>
-
-
-/** The accessible combobox has two children. The first is the text field
- represented by an object of the <type>VCLXAccessibleEdit</type> class.
- The second is the list containing all items and is represented by an
- object of the <type>VCLXAccessibleList</type> class which does not
- support selection at the moment.
-*/
-class VCLXAccessibleComboBox
- : public VCLXAccessibleBox
-{
-public:
- VCLXAccessibleComboBox (VCLXWindow* pVCLXindow);
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName (void)
- throw (::com::sun::star::uno::RuntimeException);
- // Return combo box specific services.
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
- getSupportedServiceNames (void)
- throw (::com::sun::star::uno::RuntimeException);
-
-protected:
- virtual ~VCLXAccessibleComboBox (void);
-
- virtual bool IsValid (void) const;
- virtual void ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent);
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLECHECKBOX_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibledropdowncombobox.hxx b/accessibility/inc/accessibility/standard/vclxaccessibledropdowncombobox.hxx
deleted file mode 100644
index 8779fd4ca..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessibledropdowncombobox.hxx
+++ /dev/null
@@ -1,69 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEDROPDOWNCOMBOBOX_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEDROPDOWNCOMBOBOX_HXX
-
-#include <accessibility/standard/vclxaccessiblebox.hxx>
-#include <accessibility/standard/vclxaccessibleedit.hxx>
-#include <com/sun/star/accessibility/XAccessibleAction.hpp>
-
-#include <cppuhelper/implbase1.hxx>
-#include <cppuhelper/weakref.hxx>
-
-
-/** The accessible drop down combobox has two children. The first is the
- text field represented by an object of the
- <type>VCLXAccessibleEdit</type> class. The second is the list
- containing all items and is represented by an object of the
- <type>VCLXAccessibleList</type> class which does not support selection
- at the moment.
-*/
-class VCLXAccessibleDropDownComboBox : public VCLXAccessibleBox
-{
-public:
- VCLXAccessibleDropDownComboBox (VCLXWindow* pVCLXindow);
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName (void)
- throw (::com::sun::star::uno::RuntimeException);
- // Return drop down combo box specific services.
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
- getSupportedServiceNames (void)
- throw (::com::sun::star::uno::RuntimeException);
-
-protected:
- virtual ~VCLXAccessibleDropDownComboBox (void);
-
- virtual bool IsValid (void) const;
- virtual void ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent);
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEDROPDOWNCOMBOBOX_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibledropdownlistbox.hxx b/accessibility/inc/accessibility/standard/vclxaccessibledropdownlistbox.hxx
deleted file mode 100644
index de69facb7..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessibledropdownlistbox.hxx
+++ /dev/null
@@ -1,69 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEDROPDOWNLISTBOX_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEDROPDOWNLISTBOX_HXX
-
-#include <accessibility/standard/vclxaccessiblebox.hxx>
-#include <com/sun/star/accessibility/XAccessibleAction.hpp>
-
-#include <cppuhelper/implbase1.hxx>
-#include <cppuhelper/weakref.hxx>
-
-
-/** The accessible drop down combobox has two children. The first is the
- text field represented by an object of the
- <type>VCLXAccessibleTextField</type> class which can not be edited. The
- second is the list containing all items and is represented by an object
- of the <type>VCLXAccessibleListBoxList</type> class which does support
- selection.
-*/
-class VCLXAccessibleDropDownListBox : public VCLXAccessibleBox
-{
-public:
- VCLXAccessibleDropDownListBox (VCLXWindow* pVCLXindow);
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName (void)
- throw (::com::sun::star::uno::RuntimeException);
- // Return drop down list box specific services.
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
- getSupportedServiceNames (void)
- throw (::com::sun::star::uno::RuntimeException);
-
-protected:
- virtual ~VCLXAccessibleDropDownListBox (void);
-
- virtual bool IsValid (void) const;
- virtual void ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent);
-
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEDROPDOWNLISTBOX_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibleedit.hxx b/accessibility/inc/accessibility/standard/vclxaccessibleedit.hxx
deleted file mode 100644
index 3f4117b6d..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessibleedit.hxx
+++ /dev/null
@@ -1,121 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEEDIT_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEEDIT_HXX
-
-#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
-#include <com/sun/star/accessibility/XAccessibleEditableText.hpp>
-#include <com/sun/star/accessibility/XAccessibleAction.hpp>
-
-#include <cppuhelper/implbase2.hxx>
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleEdit
-// ----------------------------------------------------
-
-typedef ::cppu::ImplHelper2<
- ::com::sun::star::accessibility::XAccessibleAction,
- ::com::sun::star::accessibility::XAccessibleEditableText > VCLXAccessibleEdit_BASE;
-
-class VCLXAccessibleEdit : public VCLXAccessibleTextComponent,
- public VCLXAccessibleEdit_BASE
-{
- friend class VCLXAccessibleBox;
-
-private:
- sal_Int32 m_nSelectionStart;
- sal_Int32 m_nCaretPosition;
-
-protected:
- virtual ~VCLXAccessibleEdit();
-
- virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
-
- // OCommonAccessibleText
- virtual ::rtl::OUString implGetText();
- virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
-
-public:
- VCLXAccessibleEdit( VCLXWindow* pVCLXindow );
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleAction
- virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL doAccessibleAction ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleText
- virtual sal_Int32 SAL_CALL getCaretPosition( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getCharacterCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getSelectedText( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectionStart( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectionEnd( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getText( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleEditableText
- virtual sal_Bool SAL_CALL cutText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL pasteText( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL deleteText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL insertText( const ::rtl::OUString& sText, sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL replaceText( sal_Int32 nStartIndex, sal_Int32 nEndIndex, const ::rtl::OUString& sReplacement ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setAttributes( sal_Int32 nStartIndex, sal_Int32 nEndIndex, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aAttributeSet ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setText( const ::rtl::OUString& sText ) throw (::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEEDIT_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblefixedhyperlink.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblefixedhyperlink.hxx
deleted file mode 100644
index 9f9c769d3..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessiblefixedhyperlink.hxx
+++ /dev/null
@@ -1,56 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEFIXEDHYPERLINK_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEFIXEDHYPERLINK_HXX
-
-#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
-
-// ----------------------------------------------------
-// class VCLXAccessibleFixedHyperlink
-// ----------------------------------------------------
-
-class VCLXAccessibleFixedHyperlink : public VCLXAccessibleTextComponent
-{
-protected:
- virtual ~VCLXAccessibleFixedHyperlink();
-
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
- virtual void implGetLineBoundary( ::com::sun::star::i18n::Boundary& rBoundary, sal_Int32 nIndex );
-
-public:
- VCLXAccessibleFixedHyperlink( VCLXWindow* pVCLXindow );
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEFIXEDHYPERLINK_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblefixedtext.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblefixedtext.hxx
deleted file mode 100644
index 285ca562f..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessiblefixedtext.hxx
+++ /dev/null
@@ -1,56 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEFIXEDTEXT_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEFIXEDTEXT_HXX
-
-#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
-
-// ----------------------------------------------------
-// class VCLXAccessibleFixedText
-// ----------------------------------------------------
-
-class VCLXAccessibleFixedText : public VCLXAccessibleTextComponent
-{
-protected:
- virtual ~VCLXAccessibleFixedText();
-
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
- virtual void implGetLineBoundary( ::com::sun::star::i18n::Boundary& rBoundary, sal_Int32 nIndex );
-
-public:
- VCLXAccessibleFixedText( VCLXWindow* pVCLXindow );
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEFIXEDTEXT_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblelist.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblelist.hxx
deleted file mode 100644
index 78919ff9a..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessiblelist.hxx
+++ /dev/null
@@ -1,226 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLELIST_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLELIST_HXX
-
-#include <vector>
-#include <functional>
-#include "accessibility/standard/vclxaccessiblelistitem.hxx"
-#include <accessibility/standard/vclxaccessibleedit.hxx>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/XAccessibleAction.hpp>
-#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
-#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-#include <cppuhelper/implbase2.hxx>
-
-typedef ::cppu::ImplHelper2<
- ::com::sun::star::accessibility::XAccessible,
- ::com::sun::star::accessibility::XAccessibleSelection
- > VCLXAccessibleList_BASE;
-
-typedef std::vector< ::com::sun::star::uno::WeakReference< ::com::sun::star::accessibility::XAccessible > >
- ListItems;
-
-namespace accessibility
-{
- class IComboListBoxHelper;
-}
-
-
-/** Base class for the list contained in list- and combo boxes. This class
- does not support selection because lists of combo boxes give no direct
- access to their underlying list implementation. Look into derived
- classes for selection.
-*/
-class VCLXAccessibleList
- : public VCLXAccessibleComponent,
- public VCLXAccessibleList_BASE
-{
-public:
- enum BoxType {COMBOBOX, LISTBOX};
-
- VCLXAccessibleList (VCLXWindow* pVCLXindow, BoxType aBoxType,
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >& _xParent);
-
- /** The index that is passed to this method is returned on following
- calls to <member>getAccessibleIndexInParent</member>.
- */
- void SetIndexInParent (sal_Int32 nIndex);
-
- /** Process some of the events and delegate the rest to the base classes.
- */
- virtual void ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent);
-
- /** Called on reception of selection events this method checks all known
- list items for a possible change in their selection state and
- updates that accordingly. No accessibility events are send because
- the XAccessibleSelection interface is not supported and the items
- are transient.
- @param sTextOfSelectedItem
- This string contains the text of the the currently selected
- item. It is used to retrieve the index of that item.
- */
- void UpdateSelection (::rtl::OUString sTextOfSelectedItem);
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XAccessible
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext> SAL_CALL
- getAccessibleContext (void)
- throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount (void)
- throw (::com::sun::star::uno::RuntimeException);
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible> SAL_CALL
- getAccessibleChild (sal_Int32 i)
- throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleParent( )
- throw (::com::sun::star::uno::RuntimeException);
-
- /** The index returned as index in parent is always the one set with the
- <member>SetIndexInParent()</member> method.
- */
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent (void)
- throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole (void)
- throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleComponent
- virtual sal_Bool SAL_CALL contains (const ::com::sun::star::awt::Point& aPoint)
- throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible> SAL_CALL
- getAccessibleAt (const ::com::sun::star::awt::Point& aPoint)
- throw (::com::sun::star::uno::RuntimeException);
-
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName (void)
- throw (::com::sun::star::uno::RuntimeException);
- // Return list specific services.
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
- getSupportedServiceNames (void)
- throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleSelection
- virtual void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- virtual ::com::sun::star::awt::Point SAL_CALL getLocationOnScreen( ) throw (::com::sun::star::uno::RuntimeException);
-
-protected:
- BoxType m_aBoxType;
- ::accessibility::IComboListBoxHelper* m_pListBoxHelper;
- ListItems m_aAccessibleChildren;
- sal_Int32 m_nVisibleLineCount;
- /// Index in parent. This is settable from the outside.
- sal_Int32 m_nIndexInParent;
- sal_Int32 m_nLastTopEntry;
- sal_uInt16 m_nLastSelectedPos;
- bool m_bDisableProcessEvent;
- bool m_bVisible;
-
-
-
- /// The currently selected item.
- ::com::sun::star::uno::WeakReference< ::com::sun::star::accessibility::XAccessible>
- m_xSelectedItem;
-
- virtual ~VCLXAccessibleList (void);
-
- /** This function is called from the implementation helper during a
- XComponent::dispose call. Free the list of items and the items themselves.
- */
- virtual void SAL_CALL disposing (void);
-
- /** This method adds the states
- <const>AccessibleStateType::FOCUSABLE</const> and possibly
- <const>AccessibleStateType::MULTI_SELECTABLE</const> to the state set
- of the base classes.
- */
- virtual void FillAccessibleStateSet (utl::AccessibleStateSetHelper& rStateSet);
-
- /** Create the specified child and insert it into the list of children.
- Sets the child's states.
- */
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- CreateChild (sal_Int32 i);
-
- /** Call this method when the item list has been changed, i.e. items
- have been deleted or inserted.
- @param bItemInserted
- Indicate whether items have been inserted (<TRUE/>) or removed
- (<FALSE/>).
- @param nIndex
- Index of the new or removed item. A value of -1 indicates that
- the whole list has been cleared.
- */
- virtual void HandleChangedItemList (bool bItemInserted, sal_Int32 nIndex);
-
- // VCLXAccessibleComponent
- virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
-
-private:
- /** We need to save the accessible parent to return it in <type>getAccessibleParent()</type>,
- because this method of the base class returns the wrong parent.
- */
- ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > m_xParent;
-
-
- /** dispose all items aand clears the container
- */
- void clearItems();
-
- void adjustEntriesIndexInParent(ListItems::iterator& _aBegin,::std::mem_fun_t<bool,VCLXAccessibleListItem>& _rMemFun);
- void UpdateEntryRange_Impl (void);
-protected:
- void UpdateSelection_Impl (sal_uInt16 nPos = 0);
- sal_Bool checkEntrySelected(sal_uInt16 _nPos,
- ::com::sun::star::uno::Any& _rNewValue,
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxNewAcc);
-private:
- void notifyVisibleStates(sal_Bool _bSetNew );
- void UpdateVisibleLineCount();
-};
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblelistbox.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblelistbox.hxx
deleted file mode 100644
index 41829c0bb..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessiblelistbox.hxx
+++ /dev/null
@@ -1,65 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLELISTBOX_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLELISTBOX_HXX
-
-#include <accessibility/standard/vclxaccessiblebox.hxx>
-#include <com/sun/star/accessibility/XAccessibleAction.hpp>
-#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
-#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-
-
-/** The accessible drop down combobox has one children. It is the list
- containing all items and is represented by an object of the
- <type>VCLXAccessibleListBoxList</type> class which does support
- selection.
-*/
-class VCLXAccessibleListBox : public VCLXAccessibleBox
-{
-public:
- VCLXAccessibleListBox (VCLXWindow* pVCLXindow);
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName (void)
- throw (::com::sun::star::uno::RuntimeException);
- // Return list box specific services.
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
- getSupportedServiceNames (void)
- throw (::com::sun::star::uno::RuntimeException);
-
-protected:
- virtual ~VCLXAccessibleListBox (void);
-
- virtual bool IsValid (void) const;
- virtual void ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent);
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLELISTBOX_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblelistitem.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblelistitem.hxx
deleted file mode 100644
index 640f00241..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessiblelistitem.hxx
+++ /dev/null
@@ -1,198 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLELISTITEM_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLELISTITEM_HXX
-
-#include <com/sun/star/accessibility/XAccessible.hpp>
-#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
-#include <com/sun/star/accessibility/XAccessibleContext.hpp>
-#include <com/sun/star/accessibility/XAccessibleStateSet.hpp>
-#include <com/sun/star/accessibility/XAccessibleText.hpp>
-#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <cppuhelper/compbase6.hxx>
-#include <comphelper/broadcasthelper.hxx>
-#include <comphelper/accessibletexthelper.hxx>
-
-// forward ---------------------------------------------------------------
-
-namespace com { namespace sun { namespace star { namespace awt {
- struct Point;
- struct Rectangle;
- struct Size;
- class XFocusListener;
-} } } }
-
-namespace accessibility
-{
- class IComboListBoxHelper;
-}
-
-// class VCLXAccessibleListItem ------------------------------------------
-
-typedef ::cppu::WeakAggComponentImplHelper6< ::com::sun::star::accessibility::XAccessible
- , ::com::sun::star::accessibility::XAccessibleContext
- , ::com::sun::star::accessibility::XAccessibleComponent
- , ::com::sun::star::accessibility::XAccessibleEventBroadcaster
- , ::com::sun::star::accessibility::XAccessibleText
- , ::com::sun::star::lang::XServiceInfo > VCLXAccessibleListItem_BASE;
-
-/** the class OAccessibleListBoxEntry represents the base class for an accessible object of a listbox entry
-*/
-class VCLXAccessibleListItem : public ::comphelper::OBaseMutex,
- public ::comphelper::OCommonAccessibleText,
- public VCLXAccessibleListItem_BASE
-{
-private:
- ::rtl::OUString m_sEntryText;
- sal_Int32 m_nIndexInParent;
- sal_Bool m_bSelected;
- sal_Bool m_bVisible;
-
-protected:
- /// client id in the AccessibleEventNotifier queue
- sal_uInt32 m_nClientId;
- ::accessibility::IComboListBoxHelper* m_pListBoxHelper;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > m_xParent;
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > m_xParentContext;
-
-private:
- /** notifies all listeners that this object has changed
- @param _nEventId
- is the event id
- @param _aOldValue
- is the old value
- @param _aNewValue
- is the new value
- */
- void NotifyAccessibleEvent( sal_Int16 _nEventId,
- const ::com::sun::star::uno::Any& _aOldValue,
- const ::com::sun::star::uno::Any& _aNewValue );
-
-protected:
- virtual ~VCLXAccessibleListItem();
- /** this function is called upon disposing the component
- */
- virtual void SAL_CALL disposing();
-
- // OCommonAccessibleText
- virtual ::rtl::OUString implGetText();
- virtual ::com::sun::star::lang::Locale implGetLocale();
- virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
-
-public:
- /** OAccessibleBase needs a valid view
- @param _pListBoxHelper
- is the list- or combobox for which we implement an accessible object
- @param _nIndexInParent
- is the position of the entry inside the listbox
- @param _xParent
- is our parent accessible object
- */
- VCLXAccessibleListItem( ::accessibility::IComboListBoxHelper* _pListBoxHelper,
- sal_Int32 _nIndexInParent,
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xParent );
-
-
- inline sal_Bool IsSelected() const { return m_bSelected; }
- void SetSelected( sal_Bool _bSelected );
- void SetVisible( sal_Bool _bVisible );
- inline bool DecrementIndexInParent() { OSL_ENSURE(m_nIndexInParent != 0,"Invalid call!");--m_nIndexInParent; return true;}
- inline bool IncrementIndexInParent() { ++m_nIndexInParent; return true;}
-
- // XInterface
- virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type& aType ) throw(::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL acquire( ) throw();
- virtual void SAL_CALL release( ) throw();
-
- // XTypeProvider
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Type > SAL_CALL getTypes( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() throw (::com::sun::star::uno::RuntimeException);
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessible
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleComponent
- virtual sal_Bool SAL_CALL containsPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Rectangle SAL_CALL getBounds( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Point SAL_CALL getLocation( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Point SAL_CALL getLocationOnScreen( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Size SAL_CALL getSize( ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getForeground (void) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getBackground (void) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleText
- virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getCharacterCount() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getSelectedText() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectionStart() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectionEnd() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getText() throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleEventBroadcaster
- using cppu::WeakAggComponentImplHelperBase::addEventListener;
- using cppu::WeakAggComponentImplHelperBase::removeEventListener;
- virtual void SAL_CALL addEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL removeEventListener( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleEventListener >& xListener ) throw (::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_ACCESSIBLELISTBOXENTRY_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblemenu.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblemenu.hxx
deleted file mode 100644
index 0115d5d13..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessiblemenu.hxx
+++ /dev/null
@@ -1,86 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENU_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENU_HXX
-
-#include <accessibility/standard/vclxaccessiblemenuitem.hxx>
-#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-
-#include <cppuhelper/implbase1.hxx>
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleMenu
-// ----------------------------------------------------
-
-typedef ::cppu::ImplHelper1 <
- ::com::sun::star::accessibility::XAccessibleSelection > VCLXAccessibleMenu_BASE;
-
-class VCLXAccessibleMenu : public VCLXAccessibleMenuItem,
- public VCLXAccessibleMenu_BASE
-{
-protected:
- virtual sal_Bool IsFocused();
- virtual sal_Bool IsPopupMenuOpen();
-
-public:
- VCLXAccessibleMenu( Menu* pParent, sal_uInt16 nItemPos, Menu* pMenu );
- virtual ~VCLXAccessibleMenu();
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleSelection
- virtual void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENU_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblemenubar.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblemenubar.hxx
deleted file mode 100644
index 469fad4e9..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessiblemenubar.hxx
+++ /dev/null
@@ -1,75 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUBAR_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUBAR_HXX
-
-#include <accessibility/standard/accessiblemenucomponent.hxx>
-
-class VclSimpleEvent;
-class VclWindowEvent;
-class Window;
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleMenuBar
-// ----------------------------------------------------
-
-class VCLXAccessibleMenuBar : public OAccessibleMenuComponent
-{
-protected:
- Window* m_pWindow;
-
- virtual sal_Bool IsFocused();
-
- DECL_LINK( WindowEventListener, VclSimpleEvent* );
-
- virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
-
- // XComponent
- virtual void SAL_CALL disposing();
-
-public:
- VCLXAccessibleMenuBar( Menu* pMenu );
- virtual ~VCLXAccessibleMenuBar();
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleExtendedComponent
- virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUBAR_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblemenuitem.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblemenuitem.hxx
deleted file mode 100644
index f9d3ff12c..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessiblemenuitem.hxx
+++ /dev/null
@@ -1,119 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUITEM_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUITEM_HXX
-
-#include <accessibility/standard/accessiblemenuitemcomponent.hxx>
-
-#include <com/sun/star/accessibility/XAccessibleAction.hpp>
-#include <com/sun/star/accessibility/XAccessibleValue.hpp>
-
-#include <cppuhelper/implbase3.hxx>
-#include <comphelper/accessibletexthelper.hxx>
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleMenuItem
-// ----------------------------------------------------
-
-typedef ::cppu::ImplHelper3<
- ::com::sun::star::accessibility::XAccessibleText,
- ::com::sun::star::accessibility::XAccessibleAction,
- ::com::sun::star::accessibility::XAccessibleValue > VCLXAccessibleMenuItem_BASE;
-
-class VCLXAccessibleMenuItem : public OAccessibleMenuItemComponent,
- public ::comphelper::OCommonAccessibleText,
- public VCLXAccessibleMenuItem_BASE
-{
-protected:
- virtual sal_Bool IsFocused();
- virtual sal_Bool IsSelected();
- virtual sal_Bool IsChecked();
-
- virtual sal_Bool IsHighlighted();
-
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
-
- // OCommonAccessibleText
- virtual ::rtl::OUString implGetText();
- virtual ::com::sun::star::lang::Locale implGetLocale();
- virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
-
-public:
- VCLXAccessibleMenuItem( Menu* pParent, sal_uInt16 nItemPos, Menu* pMenu = 0 );
- virtual ~VCLXAccessibleMenuItem();
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleText
- virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getCharacterCount() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getSelectedText() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectionStart() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectionEnd() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getText() throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleAction
- virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL doAccessibleAction ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleValue
- virtual ::com::sun::star::uno::Any SAL_CALL getCurrentValue( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCurrentValue( const ::com::sun::star::uno::Any& aNumber ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Any SAL_CALL getMaximumValue( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Any SAL_CALL getMinimumValue( ) throw (::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUITEM_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblemenuseparator.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblemenuseparator.hxx
deleted file mode 100644
index 15fc571d6..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessiblemenuseparator.hxx
+++ /dev/null
@@ -1,56 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUSEPARATOR_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUSEPARATOR_HXX
-
-#include <accessibility/standard/accessiblemenuitemcomponent.hxx>
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleMenuSeparator
-// ----------------------------------------------------
-
-class VCLXAccessibleMenuSeparator : public OAccessibleMenuItemComponent
-{
-public:
- VCLXAccessibleMenuSeparator( Menu* pParent, sal_uInt16 nItemPos, Menu* pMenu = 0 );
- virtual ~VCLXAccessibleMenuSeparator();
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
-};
-
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEMENUSEPARATOR_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblepopupmenu.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblepopupmenu.hxx
deleted file mode 100644
index 812bcd831..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessiblepopupmenu.hxx
+++ /dev/null
@@ -1,62 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLEPOPUPMENU_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLEPOPUPMENU_HXX
-
-#include <accessibility/standard/accessiblemenucomponent.hxx>
-
-
-// ----------------------------------------------------
-// class VCLXAccessiblePopupMenu
-// ----------------------------------------------------
-
-class VCLXAccessiblePopupMenu : public OAccessibleMenuComponent
-{
-protected:
- virtual sal_Bool IsFocused();
-
-public:
- VCLXAccessiblePopupMenu( Menu* pMenu );
- virtual ~VCLXAccessiblePopupMenu();
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleExtendedComponent
- virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLEPOPUPMENU_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibleradiobutton.hxx b/accessibility/inc/accessibility/standard/vclxaccessibleradiobutton.hxx
deleted file mode 100644
index 1824bd1eb..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessibleradiobutton.hxx
+++ /dev/null
@@ -1,86 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLERADIOBUTTON_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLERADIOBUTTON_HXX
-
-#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
-
-#include <com/sun/star/accessibility/XAccessibleAction.hpp>
-#include <com/sun/star/accessibility/XAccessibleValue.hpp>
-
-#include <cppuhelper/implbase2.hxx>
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleRadioButton
-// ----------------------------------------------------
-
-typedef ::cppu::ImplHelper2<
- ::com::sun::star::accessibility::XAccessibleAction,
- ::com::sun::star::accessibility::XAccessibleValue > VCLXAccessibleRadioButton_BASE;
-
-class VCLXAccessibleRadioButton : public VCLXAccessibleTextComponent,
- public VCLXAccessibleRadioButton_BASE
-{
-protected:
- virtual ~VCLXAccessibleRadioButton();
-
- virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
- virtual void FillAccessibleRelationSet( utl::AccessibleRelationSetHelper& rRelationSet );
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
-
-public:
- VCLXAccessibleRadioButton( VCLXWindow* pVCLXindow );
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleAction
- virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL doAccessibleAction ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleValue
- virtual ::com::sun::star::uno::Any SAL_CALL getCurrentValue( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCurrentValue( const ::com::sun::star::uno::Any& aNumber ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Any SAL_CALL getMaximumValue( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Any SAL_CALL getMinimumValue( ) throw (::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLERADIOBUTTON_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblescrollbar.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblescrollbar.hxx
deleted file mode 100644
index 415887bf3..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessiblescrollbar.hxx
+++ /dev/null
@@ -1,85 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLESCROLLBAR_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLESCROLLBAR_HXX
-
-#include <toolkit/awt/vclxaccessiblecomponent.hxx>
-
-#include <com/sun/star/accessibility/XAccessibleAction.hpp>
-#include <com/sun/star/accessibility/XAccessibleValue.hpp>
-
-#include <cppuhelper/implbase2.hxx>
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleScrollBar
-// ----------------------------------------------------
-
-typedef ::cppu::ImplHelper2<
- ::com::sun::star::accessibility::XAccessibleAction,
- ::com::sun::star::accessibility::XAccessibleValue > VCLXAccessibleScrollBar_BASE;
-
-class VCLXAccessibleScrollBar : public VCLXAccessibleComponent,
- public VCLXAccessibleScrollBar_BASE
-{
-protected:
- virtual ~VCLXAccessibleScrollBar();
-
- virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
-
-public:
- VCLXAccessibleScrollBar( VCLXWindow* pVCLXindow );
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleAction
- virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL doAccessibleAction ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleValue
- virtual ::com::sun::star::uno::Any SAL_CALL getCurrentValue( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCurrentValue( const ::com::sun::star::uno::Any& aNumber ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Any SAL_CALL getMaximumValue( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Any SAL_CALL getMinimumValue( ) throw (::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLESCROLLBAR_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblestatusbar.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblestatusbar.hxx
deleted file mode 100644
index 2e1d06dea..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessiblestatusbar.hxx
+++ /dev/null
@@ -1,82 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLESTATUSBAR_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLESTATUSBAR_HXX
-
-#include <toolkit/awt/vclxaccessiblecomponent.hxx>
-
-#include <vector>
-
-class StatusBar;
-
-// ----------------------------------------------------
-// class VCLXAccessibleStatusBar
-// ----------------------------------------------------
-
-class VCLXAccessibleStatusBar : public VCLXAccessibleComponent
-{
-private:
- typedef ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > > AccessibleChildren;
-
- AccessibleChildren m_aAccessibleChildren;
- StatusBar* m_pStatusBar;
-
-protected:
- void UpdateShowing( sal_Int32 i, sal_Bool bShowing );
- void UpdateItemName( sal_Int32 i );
- void UpdateItemText( sal_Int32 i );
-
- void InsertChild( sal_Int32 i );
- void RemoveChild( sal_Int32 i );
-
- virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
-
- // XComponent
- virtual void SAL_CALL disposing();
-
-public:
- VCLXAccessibleStatusBar( VCLXWindow* pVCLXWindow );
- ~VCLXAccessibleStatusBar();
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
-};
-
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLESTATUSBAR_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessiblestatusbaritem.hxx b/accessibility/inc/accessibility/standard/vclxaccessiblestatusbaritem.hxx
deleted file mode 100644
index 77ce83c05..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessiblestatusbaritem.hxx
+++ /dev/null
@@ -1,144 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLESTATUSBARITEM_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLESTATUSBARITEM_HXX
-
-#include <com/sun/star/accessibility/XAccessible.hpp>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <comphelper/accessibletexthelper.hxx>
-#include <cppuhelper/implbase2.hxx>
-
-
-class StatusBar;
-class VCLExternalSolarLock;
-
-namespace utl {
-class AccessibleStateSetHelper;
-}
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleStatusBarItem
-// ----------------------------------------------------
-
-typedef ::comphelper::OAccessibleTextHelper AccessibleTextHelper_BASE;
-
-typedef ::cppu::ImplHelper2<
- ::com::sun::star::accessibility::XAccessible,
- ::com::sun::star::lang::XServiceInfo > VCLXAccessibleStatusBarItem_BASE;
-
-class VCLXAccessibleStatusBarItem : public AccessibleTextHelper_BASE,
- public VCLXAccessibleStatusBarItem_BASE
-{
- friend class VCLXAccessibleStatusBar;
-
-private:
- VCLExternalSolarLock* m_pExternalLock;
- StatusBar* m_pStatusBar;
- sal_uInt16 m_nItemId;
- ::rtl::OUString m_sItemName;
- ::rtl::OUString m_sItemText;
- sal_Bool m_bShowing;
-
-protected:
- sal_Bool IsShowing();
- void SetShowing( sal_Bool bShowing );
- void SetItemName( const ::rtl::OUString& sItemName );
- ::rtl::OUString GetItemName();
- void SetItemText( const ::rtl::OUString& sItemText );
- ::rtl::OUString GetItemText();
- sal_uInt16 GetItemId() const { return m_nItemId; }
-
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
-
- // OCommonAccessibleComponent
- virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
-
- // OCommonAccessibleText
- virtual ::rtl::OUString implGetText();
- virtual ::com::sun::star::lang::Locale implGetLocale();
- virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
-
- // XComponent
- virtual void SAL_CALL disposing();
-
-public:
- VCLXAccessibleStatusBarItem( StatusBar* pStatusBar, sal_uInt16 nItemId );
- virtual ~VCLXAccessibleStatusBarItem();
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessible
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleExtendedComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleText
- virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLESTATUSBARITEM_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibletabcontrol.hxx b/accessibility/inc/accessibility/standard/vclxaccessibletabcontrol.hxx
deleted file mode 100644
index 5097144fd..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessibletabcontrol.hxx
+++ /dev/null
@@ -1,105 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABCONTROL_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABCONTROL_HXX
-
-#include <toolkit/awt/vclxaccessiblecomponent.hxx>
-#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-
-#include <vector>
-
-class TabControl;
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleTabControl
-// ----------------------------------------------------
-
-typedef ::cppu::ImplHelper1 <
- ::com::sun::star::accessibility::XAccessibleSelection > VCLXAccessibleTabControl_BASE;
-
-class VCLXAccessibleTabControl : public VCLXAccessibleComponent,
- public VCLXAccessibleTabControl_BASE
-{
-private:
- typedef ::std::vector< ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > > AccessibleChildren;
-
- AccessibleChildren m_aAccessibleChildren;
- TabControl* m_pTabControl;
-
-protected:
- void UpdateFocused();
- void UpdateSelected( sal_Int32 i, bool bSelected );
- void UpdatePageText( sal_Int32 i );
- void UpdateTabPage( sal_Int32 i, bool bNew );
-
- void InsertChild( sal_Int32 i );
- void RemoveChild( sal_Int32 i );
-
- virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
- virtual void ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent );
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
-
- // XComponent
- virtual void SAL_CALL disposing();
-
-public:
- VCLXAccessibleTabControl( VCLXWindow* pVCLXWindow );
- ~VCLXAccessibleTabControl();
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleSelection
- virtual void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-};
-
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABCONTROL_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibletabpage.hxx b/accessibility/inc/accessibility/standard/vclxaccessibletabpage.hxx
deleted file mode 100644
index b29ab16aa..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessibletabpage.hxx
+++ /dev/null
@@ -1,148 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABPAGE_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABPAGE_HXX
-
-#include <com/sun/star/accessibility/XAccessible.hpp>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <comphelper/accessibletexthelper.hxx>
-#include <cppuhelper/implbase2.hxx>
-
-
-class TabControl;
-class VCLExternalSolarLock;
-
-namespace utl {
-class AccessibleStateSetHelper;
-}
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleTabPage
-// ----------------------------------------------------
-
-typedef ::comphelper::OAccessibleTextHelper AccessibleTextHelper_BASE;
-
-typedef ::cppu::ImplHelper2<
- ::com::sun::star::accessibility::XAccessible,
- ::com::sun::star::lang::XServiceInfo > VCLXAccessibleTabPage_BASE;
-
-class VCLXAccessibleTabPage : public AccessibleTextHelper_BASE,
- public VCLXAccessibleTabPage_BASE
-{
- friend class VCLXAccessibleTabControl;
-
-private:
- VCLExternalSolarLock* m_pExternalLock;
- TabControl* m_pTabControl;
- sal_uInt16 m_nPageId;
- bool m_bFocused;
- bool m_bSelected;
- ::rtl::OUString m_sPageText;
-
-protected:
- bool IsFocused();
- bool IsSelected();
-
- void SetFocused( bool bFocused );
- void SetSelected( bool bSelected );
- void SetPageText( const ::rtl::OUString& sPageText );
- ::rtl::OUString GetPageText();
-
- void Update( bool bNew );
-
- sal_uInt16 GetPageId() const { return m_nPageId; }
-
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
-
- // OCommonAccessibleComponent
- virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
-
- // OCommonAccessibleText
- virtual ::rtl::OUString implGetText();
- virtual ::com::sun::star::lang::Locale implGetLocale();
- virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
-
- // XComponent
- virtual void SAL_CALL disposing();
-
-public:
- VCLXAccessibleTabPage( TabControl* pTabControl, sal_uInt16 nPageId );
- virtual ~VCLXAccessibleTabPage();
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessible
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::lang::Locale SAL_CALL getLocale( ) throw (::com::sun::star::accessibility::IllegalAccessibleComponentStateException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleExtendedComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleText
- virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABPAGE_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibletabpagewindow.hxx b/accessibility/inc/accessibility/standard/vclxaccessibletabpagewindow.hxx
deleted file mode 100644
index 73586c558..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessibletabpagewindow.hxx
+++ /dev/null
@@ -1,69 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABPAGEWINDOW_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABPAGEWINDOW_HXX
-
-#include <toolkit/awt/vclxaccessiblecomponent.hxx>
-
-
-class TabControl;
-class TabPage;
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleTabPageWindow
-// ----------------------------------------------------
-
-class VCLXAccessibleTabPageWindow : public VCLXAccessibleComponent
-{
-private:
- TabControl* m_pTabControl;
- TabPage* m_pTabPage;
- sal_uInt16 m_nPageId;
-
-protected:
- // OCommonAccessibleComponent
- virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XComponent
- virtual void SAL_CALL disposing();
-
-public:
- VCLXAccessibleTabPageWindow( VCLXWindow* pVCLXWindow );
- ~VCLXAccessibleTabPageWindow();
-
- // XAccessibleContext
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
-};
-
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLETABPAGEWINDOW_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibletextcomponent.hxx b/accessibility/inc/accessibility/standard/vclxaccessibletextcomponent.hxx
deleted file mode 100644
index ea74885e8..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessibletextcomponent.hxx
+++ /dev/null
@@ -1,95 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLETEXTCOMPONENT_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLETEXTCOMPONENT_HXX
-
-#include <toolkit/awt/vclxaccessiblecomponent.hxx>
-#include <comphelper/accessibletexthelper.hxx>
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleTextComponent
-// ----------------------------------------------------
-
-typedef ::cppu::ImplHelper1 <
- ::com::sun::star::accessibility::XAccessibleText > VCLXAccessibleTextComponent_BASE;
-
-class VCLXAccessibleTextComponent : public VCLXAccessibleComponent,
- public ::comphelper::OCommonAccessibleText,
- public VCLXAccessibleTextComponent_BASE
-{
-protected:
- ::rtl::OUString m_sText;
-
- void SetText( const ::rtl::OUString& sText );
-
- virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
-
- // OCommonAccessibleText
- virtual ::rtl::OUString implGetText();
- virtual ::com::sun::star::lang::Locale implGetLocale();
- virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
-
- // XComponent
- virtual void SAL_CALL disposing();
-
-public:
- VCLXAccessibleTextComponent( VCLXWindow* pVCLXWindow );
- ~VCLXAccessibleTextComponent();
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XAccessibleText
- virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Unicode SAL_CALL getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getCharacterCount() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getSelectedText() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectionStart() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectionEnd() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getText() throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::accessibility::TextSegment SAL_CALL getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-};
-
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLETEXTCOMPONENT_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibletextfield.hxx b/accessibility/inc/accessibility/standard/vclxaccessibletextfield.hxx
deleted file mode 100644
index 244ef92c0..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessibletextfield.hxx
+++ /dev/null
@@ -1,105 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLETEXTFIELD_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLETEXTFIELD_HXX
-
-#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
-
-#include <cppuhelper/implbase1.hxx>
-
-typedef ::cppu::ImplHelper1<
- ::com::sun::star::accessibility::XAccessible
- > VCLXAccessible_BASE;
-
-
-/** This class represents non editable text fields. The object passed to
- the constructor is expected to be a list (a <type>ListBox</type> to be
- more specific). From this allways the selected item is token to be made
- accessible by this class. When the selected item changes then also the
- exported text changes.
-*/
-class VCLXAccessibleTextField :
- public VCLXAccessibleTextComponent,
- public VCLXAccessible_BASE
-{
-public:
- VCLXAccessibleTextField (VCLXWindow* pVCLXindow,
- const ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible >& _xParent);
-
- // XInterface
- DECLARE_XINTERFACE()
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER()
-
- // XAccessible
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext> SAL_CALL
- getAccessibleContext (void)
- throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- sal_Int32 SAL_CALL getAccessibleChildCount (void)
- throw (::com::sun::star::uno::RuntimeException);
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible> SAL_CALL
- getAccessibleChild (sal_Int32 i)
- throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- sal_Int16 SAL_CALL getAccessibleRole (void)
- throw (::com::sun::star::uno::RuntimeException);
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL
- getAccessibleParent( )
- throw (::com::sun::star::uno::RuntimeException);
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName (void)
- throw (::com::sun::star::uno::RuntimeException);
- // Return text field specific services.
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
- getSupportedServiceNames (void)
- throw (::com::sun::star::uno::RuntimeException);
-
-protected:
- virtual ~VCLXAccessibleTextField (void);
-
- /** With this method the text of the currently selected item is made
- available to the <type>VCLXAccessibleTextComponent</type> base class.
- */
- ::rtl::OUString implGetText (void);
-
-private:
- /** We need to save the accessible parent to return it in <type>getAccessibleParent()</type>,
- because this method of the base class returns the wrong parent.
- */
- ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > m_xParent;
-};
-
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibletoolbox.hxx b/accessibility/inc/accessibility/standard/vclxaccessibletoolbox.hxx
deleted file mode 100644
index 110493415..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessibletoolbox.hxx
+++ /dev/null
@@ -1,115 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLETOOLBOX_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLETOOLBOX_HXX
-
-#include <map>
-#include <toolkit/awt/vclxaccessiblecomponent.hxx>
-#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-
-// ----------------------------------------------------
-// class VCLXAccessibleToolBox
-// ----------------------------------------------------
-
-typedef ::cppu::ImplHelper1 < ::com::sun::star::accessibility::XAccessibleSelection > VCLXAccessibleToolBox_BASE;
-
-typedef std::map< sal_Int32, com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > > ToolBoxItemsMap;
-
-class VCLXAccessibleToolBoxItem;
-class ToolBox;
-
-class VCLXAccessibleToolBox : public VCLXAccessibleComponent, public VCLXAccessibleToolBox_BASE
-{
-private:
- ToolBoxItemsMap m_aAccessibleChildren;
-
- VCLXAccessibleToolBoxItem* GetItem_Impl( sal_Int32 _nPos, bool _bMustHaveFocus );
-
- void UpdateFocus_Impl();
- void ReleaseFocus_Impl( sal_Int32 _nPos );
- void UpdateChecked_Impl( sal_Int32 _nPos );
- void UpdateIndeterminate_Impl( sal_Int32 _nPos );
- void UpdateItem_Impl( sal_Int32 _nPos, sal_Bool _bItemAdded );
- void UpdateAllItems_Impl();
- void UpdateItemName_Impl( sal_Int32 _nPos );
- void UpdateItemEnabled_Impl( sal_Int32 _nPos );
- void UpdateCustomPopupItemp_Impl( Window* pWindow, bool bOpen );
- void HandleSubToolBarEvent( const VclWindowEvent& rVclWindowEvent, bool _bShow );
- void ReleaseSubToolBox( ToolBox* _pSubToolBox );
-
-protected:
- virtual ~VCLXAccessibleToolBox();
-
- virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
- virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
- virtual void ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent );
-
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > GetChildAccessible( const VclWindowEvent& rVclWindowEvent );
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > GetItemWindowAccessible( const VclWindowEvent& rVclWindowEvent );
-
- // XComponent
- virtual void SAL_CALL disposing();
-
-public:
- VCLXAccessibleToolBox( VCLXWindow* pVCLXWindow );
-
- // XInterface
- DECLARE_XINTERFACE( )
-
- // XTypeProvider
- DECLARE_XTYPEPROVIDER( )
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleSelection
- virtual void SAL_CALL selectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL clearAccessibleSelection( ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL selectAllAccessibleChildren( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getSelectedAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL deselectAccessibleChild( sal_Int32 nChildIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
-private:
- void implReleaseToolboxItem(
- ToolBoxItemsMap::iterator& _rMapPos,
- bool _bNotifyRemoval,
- bool _bDispose
- );
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLETOOLBOX_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/accessibility/standard/vclxaccessibletoolboxitem.hxx b/accessibility/inc/accessibility/standard/vclxaccessibletoolboxitem.hxx
deleted file mode 100644
index ef380176a..000000000
--- a/accessibility/inc/accessibility/standard/vclxaccessibletoolboxitem.hxx
+++ /dev/null
@@ -1,168 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-#ifndef ACCESSIBILITY_STANDARD_VCLXACCESSIBLETOOLBOXITEM_HXX
-#define ACCESSIBILITY_STANDARD_VCLXACCESSIBLETOOLBOXITEM_HXX
-
-#include <com/sun/star/accessibility/XAccessible.hpp>
-#include <com/sun/star/accessibility/XAccessibleAction.hpp>
-#include <com/sun/star/accessibility/XAccessibleComponent.hpp>
-#include <com/sun/star/accessibility/XAccessibleContext.hpp>
-#include <com/sun/star/accessibility/XAccessibleStateSet.hpp>
-#include <com/sun/star/accessibility/XAccessibleText.hpp>
-#include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
-#include <com/sun/star/accessibility/XAccessibleValue.hpp>
-#include <com/sun/star/lang/XServiceInfo.hpp>
-#include <cppuhelper/implbase4.hxx>
-#include <comphelper/accessibletexthelper.hxx>
-#include <tools/solar.h>
-
-// class VCLXAccessibleToolBoxItem ---------------------------------------------
-
-class ToolBox;
-
-typedef ::comphelper::OAccessibleTextHelper AccessibleTextHelper_BASE;
-typedef ::cppu::ImplHelper4 < ::com::sun::star::accessibility::XAccessible,
- ::com::sun::star::accessibility::XAccessibleAction,
- ::com::sun::star::accessibility::XAccessibleValue,
- ::com::sun::star::lang::XServiceInfo > VCLXAccessibleToolBoxItem_BASE;
-
-class VCLExternalSolarLock;
-
-class VCLXAccessibleToolBoxItem : public AccessibleTextHelper_BASE,
- public VCLXAccessibleToolBoxItem_BASE
-{
-private:
- ::rtl::OUString m_sOldName;
- ToolBox* m_pToolBox;
- VCLExternalSolarLock* m_pExternalLock;
- sal_Int32 m_nIndexInParent;
- sal_Int16 m_nRole;
- sal_uInt16 m_nItemId;
- sal_Bool m_bHasFocus;
- sal_Bool m_bIsChecked;
- bool m_bIndeterminate;
-
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > m_xChild;
-
-public:
- inline sal_Int32 getIndexInParent() const { return m_nIndexInParent; }
- inline void setIndexInParent( sal_Int32 _nNewIndex ) { m_nIndexInParent = _nNewIndex; }
-
-protected:
- virtual ~VCLXAccessibleToolBoxItem();
-
- virtual void SAL_CALL disposing();
-
- /// implements the calculation of the bounding rectangle
- virtual ::com::sun::star::awt::Rectangle SAL_CALL implGetBounds( ) throw (::com::sun::star::uno::RuntimeException);
-
- // OCommonAccessibleText
- virtual ::rtl::OUString implGetText();
- virtual ::com::sun::star::lang::Locale implGetLocale();
- virtual void implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex );
-
- ::rtl::OUString GetText( bool _bAsName );
-
-public:
- VCLXAccessibleToolBoxItem( ToolBox* _pToolBox, sal_Int32 _nPos );
-
- void SetFocus( sal_Bool _bFocus );
- inline sal_Bool HasFocus() const { return m_bHasFocus; }
- void SetChecked( sal_Bool _bCheck );
- inline sal_Bool IsChecked() const { return m_bIsChecked; }
- void SetIndeterminate( bool _bIndeterminate );
- inline bool IsIndeterminate() const { return m_bIndeterminate; }
- inline void ReleaseToolBox() { m_pToolBox = NULL; }
- void NameChanged();
- void SetChild( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xChild );
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- GetChild() const { return m_xChild; }
- void NotifyChildEvent( const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xChild, bool _bShow );
-
- void ToggleEnableState();
-
- // XInterface
- DECLARE_XINTERFACE( )
- DECLARE_XTYPEPROVIDER( )
-
- // XServiceInfo
- virtual ::rtl::OUString SAL_CALL getImplementationName() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL supportsService( const ::rtl::OUString& rServiceName ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getSupportedServiceNames() throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessible
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleContext
- virtual sal_Int32 SAL_CALL getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int16 SAL_CALL getAccessibleRole( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleDescription( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleName( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleText
- virtual sal_Int32 SAL_CALL getCaretPosition() throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCaretPosition( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::Rectangle SAL_CALL getCharacterBounds( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getIndexAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL getAccessibleAtPoint( const ::com::sun::star::awt::Point& aPoint ) throw (::com::sun::star::uno::RuntimeException);
- virtual void SAL_CALL grabFocus( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getForeground( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Int32 SAL_CALL getBackground( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleExtendedComponent
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont > SAL_CALL getFont( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::awt::FontDescriptor SAL_CALL getFontMetrics( const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XFont >& xFont ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getTitledBorderText( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getToolTipText( ) throw (::com::sun::star::uno::RuntimeException);
-
- // XAccessibleAction
- virtual sal_Int32 SAL_CALL getAccessibleActionCount( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL doAccessibleAction ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::rtl::OUString SAL_CALL getAccessibleActionDescription ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleKeyBinding > SAL_CALL getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException);
-
- // XAccessibleValue
- virtual ::com::sun::star::uno::Any SAL_CALL getCurrentValue( ) throw (::com::sun::star::uno::RuntimeException);
- virtual sal_Bool SAL_CALL setCurrentValue( const ::com::sun::star::uno::Any& aNumber ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Any SAL_CALL getMaximumValue( ) throw (::com::sun::star::uno::RuntimeException);
- virtual ::com::sun::star::uno::Any SAL_CALL getMinimumValue( ) throw (::com::sun::star::uno::RuntimeException);
-};
-
-#endif // ACCESSIBILITY_STANDARD_VCLXACCESSIBLETOOLBOXITEM_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/makefile.mk b/accessibility/inc/makefile.mk
deleted file mode 100644
index 3afcad166..000000000
--- a/accessibility/inc/makefile.mk
+++ /dev/null
@@ -1,47 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-PRJ=..
-
-PRJNAME=accessibility
-TARGET=inc
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Files --------------------------------------------------------
-# --- Targets -------------------------------------------------------
-
-.INCLUDE : target.mk
-
-.IF "$(ENABLE_PCH)"!=""
-ALLTAR : \
- $(SLO)$/precompiled.pch \
- $(SLO)$/precompiled_ex.pch
-
-.ENDIF # "$(ENABLE_PCH)"!=""
-
diff --git a/accessibility/inc/pch/precompiled_accessibility.cxx b/accessibility/inc/pch/precompiled_accessibility.cxx
deleted file mode 100644
index 2de9ca22a..000000000
--- a/accessibility/inc/pch/precompiled_accessibility.cxx
+++ /dev/null
@@ -1,31 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#include "precompiled_accessibility.hxx"
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/inc/pch/precompiled_accessibility.hxx b/accessibility/inc/pch/precompiled_accessibility.hxx
deleted file mode 100644
index ed7eaf8e4..000000000
--- a/accessibility/inc/pch/precompiled_accessibility.hxx
+++ /dev/null
@@ -1,40 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): Generated on 2006-09-01 17:49:28.952369
-
-#ifdef PRECOMPILED_HEADERS
-
-//---MARKER---
-
-#include "com/sun/star/accessibility/AccessibleRelationType.hpp"
-#include "unotools/accessiblerelationsethelper.hxx"
-#include "vcl/window.hxx"
-#endif
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/prj/build.lst b/accessibility/prj/build.lst
deleted file mode 100644
index 61692214b..000000000
--- a/accessibility/prj/build.lst
+++ /dev/null
@@ -1,18 +0,0 @@
-ac accessibility : TRANSLATIONS:translations tools jurt offapi unoil vcl javaunohelper jvmaccess cppu sal toolkit svtools LIBXSLT:libxslt NULL
-ac accessibility usr1 - all ac_mkout NULL
-ac accessibility\inc nmake - all ac_inc NULL
-ac accessibility\bridge\org\openoffice\java\accessibility nmake - w ac_ooja ac_inc NULL
-ac accessibility\bridge\org\openoffice\accessibility nmake - w ac_ooa ac_ooja.w ac_inc NULL
-ac accessibility\bridge\source\java nmake - w ac_ooan ac_ooa.w ac_inc NULL
-ac accessibility\inc get - all ac_inc NULL
-ac accessibility\source\helper nmake - all ac_helper ac_inc NULL
-ac accessibility\source\standard nmake - all ac_standard ac_helper ac_inc NULL
-ac accessibility\source\extended nmake - all ac_extended ac_inc NULL
-ac accessibility\util nmake - all ac_util ac_helper ac_standard ac_extended NULL
-ac accessibility\workben\org\openoffice\accessibility\awb nmake - all ac_awb_main ac_awb_misc ac_awb_canvas ac_awb_view ac_awb_tree NULL
-ac accessibility\workben\org\openoffice\accessibility\misc nmake - all ac_awb_misc NULL
-ac accessibility\workben\org\openoffice\accessibility\awb\canvas nmake - all ac_awb_canvas ac_awb_tree NULL
-ac accessibility\workben\org\openoffice\accessibility\awb\tree nmake - all ac_awb_tree ac_awb_misc NULL
-ac accessibility\workben\org\openoffice\accessibility\awb\view nmake - all ac_awb_view ac_awb_view_text NULL
-# dependency on ac_awb_misc to avoid concurrent creation of java_ver.mk
-ac accessibility\workben\org\openoffice\accessibility\awb\view\text nmake - all ac_awb_view_text ac_awb_misc NULL
diff --git a/accessibility/prj/d.lst b/accessibility/prj/d.lst
deleted file mode 100644
index 1e47390f9..000000000
--- a/accessibility/prj/d.lst
+++ /dev/null
@@ -1,8 +0,0 @@
-..\%__SRC%\class\java_uno_accessbridge.jar %_DEST%\bin\java_uno_accessbridge.jar
-..\%__SRC%\class\java_accessibility.jar %_DEST%\bin\java_accessibility.jar
-
-..\%__SRC%\bin\*.dll %_DEST%\bin\*.dll
-..\%__SRC%\bin\*.res %_DEST%\bin\*.res
-..\%__SRC%\lib\lib*.so %_DEST%\lib
-..\%__SRC%\lib\*.dylib %_DEST%\lib\*.dylib
-..\%__SRC%\misc\java_uno_accessbridge.component %_DEST%\xml\java_uno_accessbridge.component
diff --git a/accessibility/prj/l10n b/accessibility/prj/l10n
deleted file mode 100644
index 69f0d9e5e..000000000
--- a/accessibility/prj/l10n
+++ /dev/null
@@ -1 +0,0 @@
-#i49922# In this module en-US and de are used as source language
diff --git a/accessibility/source/extended/AccessibleBrowseBox.cxx b/accessibility/source/extended/AccessibleBrowseBox.cxx
deleted file mode 100644
index 282f29a65..000000000
--- a/accessibility/source/extended/AccessibleBrowseBox.cxx
+++ /dev/null
@@ -1,395 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include "accessibility/extended/AccessibleBrowseBox.hxx"
-#include "accessibility/extended/AccessibleBrowseBoxTable.hxx"
-#include "accessibility/extended/AccessibleBrowseBoxHeaderBar.hxx"
-#include <svtools/accessibletableprovider.hxx>
-#include <comphelper/types.hxx>
-#include <toolkit/helper/vclunohelper.hxx>
-
-// ============================================================================
-
-namespace accessibility
-{
-
-// ============================================================================
-
-using ::rtl::OUString;
-
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::accessibility;
-using namespace ::svt;
-
-// ============================================================================
-class AccessibleBrowseBoxImpl
-{
-public:
- /// the XAccessible which created the AccessibleBrowseBox
- WeakReference< XAccessible > m_aCreator;
-
- /** The data table child. */
- Reference<
- ::com::sun::star::accessibility::XAccessible > mxTable;
- AccessibleBrowseBoxTable* m_pTable;
-
- /** The header bar for rows ("handle column"). */
- Reference<
- ::com::sun::star::accessibility::XAccessible > mxRowHeaderBar;
- AccessibleBrowseBoxHeaderBar* m_pRowHeaderBar;
-
- /** The header bar for columns (first row of the table). */
- Reference<
- ::com::sun::star::accessibility::XAccessible > mxColumnHeaderBar;
- AccessibleBrowseBoxHeaderBar* m_pColumnHeaderBar;
-};
-
-// Ctor/Dtor/disposing --------------------------------------------------------
-
-DBG_NAME( AccessibleBrowseBox )
-
-AccessibleBrowseBox::AccessibleBrowseBox(
- const Reference< XAccessible >& _rxParent, const Reference< XAccessible >& _rxCreator,
- IAccessibleTableProvider& _rBrowseBox )
- : AccessibleBrowseBoxBase( _rxParent, _rBrowseBox,NULL, BBTYPE_BROWSEBOX )
-{
- DBG_CTOR( AccessibleBrowseBox, NULL );
- m_pImpl.reset( new AccessibleBrowseBoxImpl() );
- m_pImpl->m_aCreator = _rxCreator;
-
- m_xFocusWindow = VCLUnoHelper::GetInterface(mpBrowseBox->GetWindowInstance());
-}
-// -----------------------------------------------------------------------------
-void AccessibleBrowseBox::setCreator( const Reference< XAccessible >& _rxCreator )
-{
-#if OSL_DEBUG_LEVEL > 0
- Reference< XAccessible > xCreator = (Reference< XAccessible >)m_pImpl->m_aCreator;
- DBG_ASSERT( !xCreator.is(), "accessibility/extended/AccessibleBrowseBox::setCreator: creator already set!" );
-#endif
- m_pImpl->m_aCreator = _rxCreator;
-}
-
-// -----------------------------------------------------------------------------
-AccessibleBrowseBox::~AccessibleBrowseBox()
-{
- DBG_DTOR( AccessibleBrowseBox, NULL );
-}
-// -----------------------------------------------------------------------------
-
-void SAL_CALL AccessibleBrowseBox::disposing()
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- m_pImpl->m_pTable = NULL;
- m_pImpl->m_pColumnHeaderBar = NULL;
- m_pImpl->m_pRowHeaderBar = NULL;
- m_pImpl->m_aCreator = Reference< XAccessible >();
-
- Reference< XAccessible > xTable = m_pImpl->mxTable;
-
- Reference< XComponent > xComp( m_pImpl->mxTable, UNO_QUERY );
- if ( xComp.is() )
- {
- xComp->dispose();
-
- }
-//! ::comphelper::disposeComponent(m_pImpl->mxTable);
- ::comphelper::disposeComponent(m_pImpl->mxRowHeaderBar);
- ::comphelper::disposeComponent(m_pImpl->mxColumnHeaderBar);
-
- AccessibleBrowseBoxBase::disposing();
-}
-// -----------------------------------------------------------------------------
-
-// XAccessibleContext ---------------------------------------------------------
-
-sal_Int32 SAL_CALL AccessibleBrowseBox::getAccessibleChildCount()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return BBINDEX_FIRSTCONTROL + mpBrowseBox->GetAccessibleControlCount();
-}
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > SAL_CALL
-AccessibleBrowseBox::getAccessibleChild( sal_Int32 nChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- Reference< XAccessible > xRet;
- if( nChildIndex >= 0 )
- {
- if( nChildIndex < BBINDEX_FIRSTCONTROL )
- xRet = implGetFixedChild( nChildIndex );
- else
- {
- // additional controls
- nChildIndex -= BBINDEX_FIRSTCONTROL;
- if( nChildIndex < mpBrowseBox->GetAccessibleControlCount() )
- xRet = mpBrowseBox->CreateAccessibleControl( nChildIndex );
- }
- }
-
- if( !xRet.is() )
- throw lang::IndexOutOfBoundsException();
- return xRet;
-}
-
-// XAccessibleComponent -------------------------------------------------------
-
-Reference< XAccessible > SAL_CALL
-AccessibleBrowseBox::getAccessibleAtPoint( const awt::Point& rPoint )
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- Reference< XAccessible > xChild;
- sal_Int32 nIndex = 0;
- if( mpBrowseBox->ConvertPointToControlIndex( nIndex, VCLPoint( rPoint ) ) )
- xChild = mpBrowseBox->CreateAccessibleControl( nIndex );
- else
- {
- // try whether point is in one of the fixed children
- // (table, header bars, corner control)
- Point aPoint( VCLPoint( rPoint ) );
- for( nIndex = 0; (nIndex < BBINDEX_FIRSTCONTROL) && !xChild.is(); ++nIndex )
- {
- Reference< XAccessible > xCurrChild( implGetFixedChild( nIndex ) );
- Reference< XAccessibleComponent >
- xCurrChildComp( xCurrChild, uno::UNO_QUERY );
-
- if( xCurrChildComp.is() &&
- VCLRectangle( xCurrChildComp->getBounds() ).IsInside( aPoint ) )
- xChild = xCurrChild;
- }
- }
- return xChild;
-}
-// -----------------------------------------------------------------------------
-
-void SAL_CALL AccessibleBrowseBox::grabFocus()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- mpBrowseBox->GrabFocus();
-}
-// -----------------------------------------------------------------------------
-
-Any SAL_CALL AccessibleBrowseBox::getAccessibleKeyBinding()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return Any();
-}
-// -----------------------------------------------------------------------------
-
-// XServiceInfo ---------------------------------------------------------------
-
-OUString SAL_CALL AccessibleBrowseBox::getImplementationName()
- throw ( uno::RuntimeException )
-{
- return OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.AccessibleBrowseBox" ) );
-}
-// -----------------------------------------------------------------------------
-
-// internal virtual methods ---------------------------------------------------
-
-Rectangle AccessibleBrowseBox::implGetBoundingBox()
-{
- Window* pParent = mpBrowseBox->GetAccessibleParentWindow();
- DBG_ASSERT( pParent, "implGetBoundingBox - missing parent window" );
- return mpBrowseBox->GetWindowExtentsRelative( pParent );
-}
-// -----------------------------------------------------------------------------
-
-Rectangle AccessibleBrowseBox::implGetBoundingBoxOnScreen()
-{
- return mpBrowseBox->GetWindowExtentsRelative( NULL );
-}
-// -----------------------------------------------------------------------------
-
-// internal helper methods ----------------------------------------------------
-
-Reference< XAccessible > AccessibleBrowseBox::implGetTable()
-{
- if( !m_pImpl->mxTable.is() )
- {
- m_pImpl->m_pTable = createAccessibleTable();
- m_pImpl->mxTable = m_pImpl->m_pTable;
-
- }
- return m_pImpl->mxTable;
-}
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible >
-AccessibleBrowseBox::implGetHeaderBar( AccessibleBrowseBoxObjType eObjType )
-{
- Reference< XAccessible > xRet;
- Reference< XAccessible >* pxMember = NULL;
-
- if( eObjType == BBTYPE_ROWHEADERBAR )
- pxMember = &m_pImpl->mxRowHeaderBar;
- else if( eObjType == BBTYPE_COLUMNHEADERBAR )
- pxMember = &m_pImpl->mxColumnHeaderBar;
-
- if( pxMember )
- {
- if( !pxMember->is() )
- {
- AccessibleBrowseBoxHeaderBar* pHeaderBar = new AccessibleBrowseBoxHeaderBar(
- (Reference< XAccessible >)m_pImpl->m_aCreator, *mpBrowseBox, eObjType );
-
- if ( BBTYPE_COLUMNHEADERBAR == eObjType)
- m_pImpl->m_pColumnHeaderBar = pHeaderBar;
- else
- m_pImpl->m_pRowHeaderBar = pHeaderBar;
-
- *pxMember = pHeaderBar;
- }
- xRet = *pxMember;
- }
- return xRet;
-}
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible >
-AccessibleBrowseBox::implGetFixedChild( sal_Int32 nChildIndex )
-{
- Reference< XAccessible > xRet;
- switch( nChildIndex )
- {
- case BBINDEX_COLUMNHEADERBAR:
- xRet = implGetHeaderBar( BBTYPE_COLUMNHEADERBAR );
- break;
- case BBINDEX_ROWHEADERBAR:
- xRet = implGetHeaderBar( BBTYPE_ROWHEADERBAR );
- break;
- case BBINDEX_TABLE:
- xRet = implGetTable();
- break;
- }
- return xRet;
-}
-// -----------------------------------------------------------------------------
-AccessibleBrowseBoxTable* AccessibleBrowseBox::createAccessibleTable()
-{
- Reference< XAccessible > xCreator = (Reference< XAccessible >)m_pImpl->m_aCreator;
- DBG_ASSERT( xCreator.is(), "accessibility/extended/AccessibleBrowseBox::createAccessibleTable: my creator died - how this?" );
- return new AccessibleBrowseBoxTable( xCreator, *mpBrowseBox );
-}
-// -----------------------------------------------------------------------------
-void AccessibleBrowseBox::commitTableEvent(sal_Int16 _nEventId,const Any& _rNewValue,const Any& _rOldValue)
-{
- if ( m_pImpl->mxTable.is() )
- {
- m_pImpl->m_pTable->commitEvent(_nEventId,_rNewValue,_rOldValue);
- }
-}
-// -----------------------------------------------------------------------------
-void AccessibleBrowseBox::commitHeaderBarEvent( sal_Int16 _nEventId,
- const Any& _rNewValue,
- const Any& _rOldValue,sal_Bool _bColumnHeaderBar)
-{
- Reference< XAccessible > xHeaderBar = _bColumnHeaderBar ? m_pImpl->mxColumnHeaderBar : m_pImpl->mxRowHeaderBar;
- AccessibleBrowseBoxHeaderBar* pHeaderBar = _bColumnHeaderBar ? m_pImpl->m_pColumnHeaderBar : m_pImpl->m_pRowHeaderBar;
- if ( xHeaderBar.is() )
- pHeaderBar->commitEvent(_nEventId,_rNewValue,_rOldValue);
-}
-
-// ============================================================================
-// = AccessibleBrowseBoxAccess
-// ============================================================================
-DBG_NAME( AccessibleBrowseBoxAccess )
-// -----------------------------------------------------------------------------
-AccessibleBrowseBoxAccess::AccessibleBrowseBoxAccess( const Reference< XAccessible >& _rxParent, IAccessibleTableProvider& _rBrowseBox )
- :m_xParent( _rxParent )
- ,m_rBrowseBox( _rBrowseBox )
- ,m_pContext( NULL )
-{
- DBG_CTOR( AccessibleBrowseBoxAccess, NULL );
-}
-
-// -----------------------------------------------------------------------------
-AccessibleBrowseBoxAccess::~AccessibleBrowseBoxAccess()
-{
- DBG_DTOR( AccessibleBrowseBoxAccess, NULL );
-}
-
-// -----------------------------------------------------------------------------
-void AccessibleBrowseBoxAccess::dispose()
-{
- ::osl::MutexGuard aGuard( m_aMutex );
-
- m_pContext = NULL;
- ::comphelper::disposeComponent( m_xContext );
-}
-
-// -----------------------------------------------------------------------------
-Reference< XAccessibleContext > SAL_CALL AccessibleBrowseBoxAccess::getAccessibleContext() throw ( RuntimeException )
-{
- ::osl::MutexGuard aGuard( m_aMutex );
-
- DBG_ASSERT( ( m_pContext && m_xContext.is() ) || ( !m_pContext && !m_xContext.is() ),
- "accessibility/extended/AccessibleBrowseBoxAccess::getAccessibleContext: inconsistency!" );
-
- // if the context died meanwhile (there is no listener, so it won't tell us explicitily when this happens),
- // then reset and re-create.
- if ( m_pContext && !m_pContext->isAlive() )
- m_xContext = m_pContext = NULL;
-
- if ( !m_xContext.is() )
- m_xContext = m_pContext = new AccessibleBrowseBox( m_xParent, this, m_rBrowseBox );
-
- return m_xContext;
-}
-
-// -----------------------------------------------------------------------------
-bool AccessibleBrowseBoxAccess::isContextAlive() const
-{
- return ( NULL != m_pContext ) && m_pContext->isAlive();
-}
-
-// ============================================================================
-
-} // namespace accessibility
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/AccessibleBrowseBoxBase.cxx b/accessibility/source/extended/AccessibleBrowseBoxBase.cxx
deleted file mode 100644
index 98ed28c51..000000000
--- a/accessibility/source/extended/AccessibleBrowseBoxBase.cxx
+++ /dev/null
@@ -1,652 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include "accessibility/extended/AccessibleBrowseBoxBase.hxx"
-#include <svtools/accessibletableprovider.hxx>
-#include <comphelper/servicehelper.hxx>
-
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <unotools/accessiblerelationsethelper.hxx>
-
-// ============================================================================
-
-using ::rtl::OUString;
-
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Sequence;
-using ::com::sun::star::uno::Any;
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::accessibility;
-using namespace ::comphelper;
-using namespace ::svt;
-
-
-// ============================================================================
-
-namespace accessibility {
-
-using namespace com::sun::star::accessibility::AccessibleStateType;
-// ============================================================================
-
-// Ctor/Dtor/disposing --------------------------------------------------------
-
-DBG_NAME( AccessibleBrowseBoxBase )
-
-AccessibleBrowseBoxBase::AccessibleBrowseBoxBase(
- const Reference< XAccessible >& rxParent,
- IAccessibleTableProvider& rBrowseBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- AccessibleBrowseBoxObjType eObjType ) :
- AccessibleBrowseBoxImplHelper( m_aMutex ),
- mxParent( rxParent ),
- mpBrowseBox( &rBrowseBox ),
- m_xFocusWindow(_xFocusWindow),
- maName( rBrowseBox.GetAccessibleObjectName( eObjType ) ),
- maDescription( rBrowseBox.GetAccessibleObjectDescription( eObjType ) ),
- meObjType( eObjType ),
- m_aClientId(0)
-{
- DBG_CTOR( AccessibleBrowseBoxBase, NULL );
- if ( m_xFocusWindow.is() )
- m_xFocusWindow->addFocusListener( this );
-}
-
-AccessibleBrowseBoxBase::AccessibleBrowseBoxBase(
- const Reference< XAccessible >& rxParent,
- IAccessibleTableProvider& rBrowseBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- AccessibleBrowseBoxObjType eObjType,
- const ::rtl::OUString& rName,
- const ::rtl::OUString& rDescription ) :
- AccessibleBrowseBoxImplHelper( m_aMutex ),
- mxParent( rxParent ),
- mpBrowseBox( &rBrowseBox ),
- m_xFocusWindow(_xFocusWindow),
- maName( rName ),
- maDescription( rDescription ),
- meObjType( eObjType ),
- m_aClientId(0)
-{
- DBG_CTOR( AccessibleBrowseBoxBase, NULL );
- if ( m_xFocusWindow.is() )
- m_xFocusWindow->addFocusListener( this );
-}
-
-AccessibleBrowseBoxBase::~AccessibleBrowseBoxBase()
-{
- DBG_DTOR( AccessibleBrowseBoxBase, NULL );
-
- if( isAlive() )
- {
- // increment ref count to prevent double call of Dtor
- osl_incrementInterlockedCount( &m_refCount );
- dispose();
- }
-}
-
-void SAL_CALL AccessibleBrowseBoxBase::disposing()
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- if ( m_xFocusWindow.is() )
- {
- SolarMutexGuard aSolarGuard;
- m_xFocusWindow->removeFocusListener( this );
- }
-
- if ( getClientId( ) )
- {
- AccessibleEventNotifier::TClientId nId( getClientId( ) );
- setClientId( 0 );
- AccessibleEventNotifier::revokeClientNotifyDisposing( nId, *this );
- }
-
- mxParent = NULL;
- mpBrowseBox = NULL;
-}
-
-// XAccessibleContext ---------------------------------------------------------
-
-Reference< XAccessible > SAL_CALL AccessibleBrowseBoxBase::getAccessibleParent()
- throw ( uno::RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return mxParent;
-}
-
-sal_Int32 SAL_CALL AccessibleBrowseBoxBase::getAccessibleIndexInParent()
- throw ( uno::RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- // -1 for child not found/no parent (according to specification)
- sal_Int32 nRet = -1;
-
- Reference< uno::XInterface > xMeMyselfAndI( static_cast< XAccessibleContext* >( this ), uno::UNO_QUERY );
-
- // iterate over parent's children and search for this object
- if( mxParent.is() )
- {
- Reference< XAccessibleContext >
- xParentContext( mxParent->getAccessibleContext() );
- if( xParentContext.is() )
- {
- Reference< uno::XInterface > xChild;
-
- sal_Int32 nChildCount = xParentContext->getAccessibleChildCount();
- for( sal_Int32 nChild = 0; nChild < nChildCount; ++nChild )
- {
- xChild = xChild.query( xParentContext->getAccessibleChild( nChild ) );
-
- if ( xMeMyselfAndI.get() == xChild.get() )
- {
- nRet = nChild;
- break;
- }
- }
- }
- }
- return nRet;
-}
-
-OUString SAL_CALL AccessibleBrowseBoxBase::getAccessibleDescription()
- throw ( uno::RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return maDescription;
-}
-
-OUString SAL_CALL AccessibleBrowseBoxBase::getAccessibleName()
- throw ( uno::RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return maName;
-}
-
-Reference< XAccessibleRelationSet > SAL_CALL
-AccessibleBrowseBoxBase::getAccessibleRelationSet()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- // BrowseBox does not have relations.
- return new utl::AccessibleRelationSetHelper;
-}
-
-Reference< XAccessibleStateSet > SAL_CALL
-AccessibleBrowseBoxBase::getAccessibleStateSet()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- // don't check whether alive -> StateSet may contain DEFUNC
- return implCreateStateSetHelper();
-}
-
-lang::Locale SAL_CALL AccessibleBrowseBoxBase::getLocale()
- throw ( IllegalAccessibleComponentStateException, uno::RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- if( mxParent.is() )
- {
- Reference< XAccessibleContext >
- xParentContext( mxParent->getAccessibleContext() );
- if( xParentContext.is() )
- return xParentContext->getLocale();
- }
- throw IllegalAccessibleComponentStateException();
-}
-
-// XAccessibleComponent -------------------------------------------------------
-
-sal_Bool SAL_CALL AccessibleBrowseBoxBase::containsPoint( const awt::Point& rPoint )
- throw ( uno::RuntimeException )
-{
- return Rectangle( Point(), getBoundingBox().GetSize() ).IsInside( VCLPoint( rPoint ) );
-}
-
-awt::Rectangle SAL_CALL AccessibleBrowseBoxBase::getBounds()
- throw ( uno::RuntimeException )
-{
- return AWTRectangle( getBoundingBox() );
-}
-
-awt::Point SAL_CALL AccessibleBrowseBoxBase::getLocation()
- throw ( uno::RuntimeException )
-{
- return AWTPoint( getBoundingBox().TopLeft() );
-}
-
-awt::Point SAL_CALL AccessibleBrowseBoxBase::getLocationOnScreen()
- throw ( uno::RuntimeException )
-{
- return AWTPoint( getBoundingBoxOnScreen().TopLeft() );
-}
-
-awt::Size SAL_CALL AccessibleBrowseBoxBase::getSize()
- throw ( uno::RuntimeException )
-{
- return AWTSize( getBoundingBox().GetSize() );
-}
-
-sal_Bool SAL_CALL AccessibleBrowseBoxBase::isShowing()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return implIsShowing();
-}
-
-sal_Bool SAL_CALL AccessibleBrowseBoxBase::isVisible()
- throw ( uno::RuntimeException )
-{
- Reference< XAccessibleStateSet > xStateSet = getAccessibleStateSet();
- return xStateSet.is() ?
- xStateSet->contains( AccessibleStateType::VISIBLE ) : sal_False;
-}
-
-sal_Bool SAL_CALL AccessibleBrowseBoxBase::isFocusTraversable()
- throw ( uno::RuntimeException )
-{
- Reference< XAccessibleStateSet > xStateSet = getAccessibleStateSet();
- return xStateSet.is() ?
- xStateSet->contains( AccessibleStateType::FOCUSABLE ) : sal_False;
-}
-
-void SAL_CALL AccessibleBrowseBoxBase::focusGained( const ::com::sun::star::awt::FocusEvent& ) throw (::com::sun::star::uno::RuntimeException)
-{
- com::sun::star::uno::Any aFocused;
- com::sun::star::uno::Any aEmpty;
- aFocused <<= FOCUSED;
-
- commitEvent(AccessibleEventId::STATE_CHANGED,aFocused,aEmpty);
-}
-// -----------------------------------------------------------------------------
-
-void SAL_CALL AccessibleBrowseBoxBase::focusLost( const ::com::sun::star::awt::FocusEvent& ) throw (::com::sun::star::uno::RuntimeException)
-{
- com::sun::star::uno::Any aFocused;
- com::sun::star::uno::Any aEmpty;
- aFocused <<= FOCUSED;
-
- commitEvent(AccessibleEventId::STATE_CHANGED,aEmpty,aFocused);
-}
-// XAccessibleEventBroadcaster ------------------------------------------------
-
-void SAL_CALL AccessibleBrowseBoxBase::addEventListener(
- const Reference< XAccessibleEventListener>& _rxListener )
- throw ( uno::RuntimeException )
-{
- if ( _rxListener.is() )
- {
- ::osl::MutexGuard aGuard( getOslMutex() );
- if ( !getClientId( ) )
- setClientId( AccessibleEventNotifier::registerClient( ) );
-
- AccessibleEventNotifier::addEventListener( getClientId( ), _rxListener );
- }
-}
-
-void SAL_CALL AccessibleBrowseBoxBase::removeEventListener(
- const Reference< XAccessibleEventListener>& _rxListener )
- throw ( uno::RuntimeException )
-{
- if( _rxListener.is() && getClientId( ) )
- {
- ::osl::MutexGuard aGuard( getOslMutex() );
- sal_Int32 nListenerCount = AccessibleEventNotifier::removeEventListener( getClientId( ), _rxListener );
- if ( !nListenerCount )
- {
- // no listeners anymore
- // -> revoke ourself. This may lead to the notifier thread dying (if we were the last client),
- // and at least to us not firing any events anymore, in case somebody calls
- // NotifyAccessibleEvent, again
-
- AccessibleEventNotifier::TClientId nId( getClientId( ) );
- setClientId( 0 );
- AccessibleEventNotifier::revokeClient( nId );
- }
- }
-}
-
-// XTypeProvider --------------------------------------------------------------
-
-namespace
-{
- class theAccessibleBrowseBoxBaseImplementationId : public rtl::Static< UnoTunnelIdInit, theAccessibleBrowseBoxBaseImplementationId > {};
-}
-
-Sequence< sal_Int8 > SAL_CALL AccessibleBrowseBoxBase::getImplementationId()
- throw ( uno::RuntimeException )
-{
- return theAccessibleBrowseBoxBaseImplementationId::get().getSeq();
-}
-
-// XServiceInfo ---------------------------------------------------------------
-
-sal_Bool SAL_CALL AccessibleBrowseBoxBase::supportsService(
- const OUString& rServiceName )
- throw ( uno::RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- Sequence< OUString > aSupportedServices( getSupportedServiceNames() );
- const OUString* pArrBegin = aSupportedServices.getConstArray();
- const OUString* pArrEnd = pArrBegin + aSupportedServices.getLength();
- const OUString* pString = pArrBegin;
-
- for( ; ( pString != pArrEnd ) && ( rServiceName != *pString ); ++pString )
- ;
-
- return pString != pArrEnd;
-}
-
-Sequence< OUString > SAL_CALL AccessibleBrowseBoxBase::getSupportedServiceNames()
- throw ( uno::RuntimeException )
-{
- const OUString aServiceName( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleContext" ) );
- return Sequence< OUString >( &aServiceName, 1 );
-}
-
-// other public methods -------------------------------------------------------
-
-void AccessibleBrowseBoxBase::setAccessibleName( const OUString& rName )
-{
- ::osl::ClearableMutexGuard aGuard( getOslMutex() );
- Any aOld;
- aOld <<= maName;
- maName = rName;
-
- aGuard.clear();
-
- commitEvent(
- AccessibleEventId::NAME_CHANGED,
- uno::makeAny( maName ),
- aOld );
-}
-
-void AccessibleBrowseBoxBase::setAccessibleDescription( const OUString& rDescription )
-{
- ::osl::ClearableMutexGuard aGuard( getOslMutex() );
- Any aOld;
- aOld <<= maDescription;
- maDescription = rDescription;
-
- aGuard.clear();
-
- commitEvent(
- AccessibleEventId::DESCRIPTION_CHANGED,
- uno::makeAny( maDescription ),
- aOld );
-}
-
-// internal virtual methods ---------------------------------------------------
-
-sal_Bool AccessibleBrowseBoxBase::implIsShowing()
-{
- sal_Bool bShowing = sal_False;
- if( mxParent.is() )
- {
- Reference< XAccessibleComponent >
- xParentComp( mxParent->getAccessibleContext(), uno::UNO_QUERY );
- if( xParentComp.is() )
- bShowing = implGetBoundingBox().IsOver(
- VCLRectangle( xParentComp->getBounds() ) );
- }
- return bShowing;
-}
-
-::utl::AccessibleStateSetHelper* AccessibleBrowseBoxBase::implCreateStateSetHelper()
-{
- ::utl::AccessibleStateSetHelper*
- pStateSetHelper = new ::utl::AccessibleStateSetHelper;
-
- if( isAlive() )
- {
- // SHOWING done with mxParent
- if( implIsShowing() )
- pStateSetHelper->AddState( AccessibleStateType::SHOWING );
- // BrowseBox fills StateSet with states depending on object type
- mpBrowseBox->FillAccessibleStateSet( *pStateSetHelper, getType() );
- }
- else
- pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
-
- return pStateSetHelper;
-}
-
-// internal helper methods ----------------------------------------------------
-
-sal_Bool AccessibleBrowseBoxBase::isAlive() const
-{
- return !rBHelper.bDisposed && !rBHelper.bInDispose && mpBrowseBox;
-}
-
-void AccessibleBrowseBoxBase::ensureIsAlive() const
- throw ( lang::DisposedException )
-{
- if( !isAlive() )
- throw lang::DisposedException();
-}
-
-Rectangle AccessibleBrowseBoxBase::getBoundingBox()
- throw ( lang::DisposedException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- Rectangle aRect = implGetBoundingBox();
- if ( 0 == aRect.Left() && 0 == aRect.Top() && 0 == aRect.Right() && 0 == aRect.Bottom() )
- {
- DBG_ERRORFILE( "shit" );
- }
- return aRect;
-}
-
-Rectangle AccessibleBrowseBoxBase::getBoundingBoxOnScreen()
- throw ( lang::DisposedException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- Rectangle aRect = implGetBoundingBoxOnScreen();
- if ( 0 == aRect.Left() && 0 == aRect.Top() && 0 == aRect.Right() && 0 == aRect.Bottom() )
- {
- DBG_ERRORFILE( "shit" );
- }
- return aRect;
-}
-
-void AccessibleBrowseBoxBase::commitEvent(
- sal_Int16 _nEventId, const Any& _rNewValue, const Any& _rOldValue )
-{
- ::osl::ClearableMutexGuard aGuard( getOslMutex() );
- if ( !getClientId( ) )
- // if we don't have a client id for the notifier, then we don't have listeners, then
- // we don't need to notify anything
- return;
-
- // build an event object
- AccessibleEventObject aEvent;
- aEvent.Source = *this;
- aEvent.EventId = _nEventId;
- aEvent.OldValue = _rOldValue;
- aEvent.NewValue = _rNewValue;
-
- // let the notifier handle this event
-
- AccessibleEventNotifier::addEvent( getClientId( ), aEvent );
-}
-
-sal_Int16 SAL_CALL AccessibleBrowseBoxBase::getAccessibleRole()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- sal_Int16 nRole = AccessibleRole::UNKNOWN;
- switch ( meObjType )
- {
- case BBTYPE_ROWHEADERCELL:
- nRole = AccessibleRole::ROW_HEADER;
- break;
- case BBTYPE_COLUMNHEADERCELL:
- nRole = AccessibleRole::COLUMN_HEADER;
- break;
- case BBTYPE_COLUMNHEADERBAR:
- case BBTYPE_ROWHEADERBAR:
- case BBTYPE_TABLE:
- nRole = AccessibleRole::TABLE;
- break;
- case BBTYPE_TABLECELL:
- nRole = AccessibleRole::TABLE_CELL;
- break;
- case BBTYPE_BROWSEBOX:
- nRole = AccessibleRole::PANEL;
- break;
- case BBTYPE_CHECKBOXCELL:
- nRole = AccessibleRole::CHECK_BOX;
- break;
- }
- return nRole;
-}
-// -----------------------------------------------------------------------------
-Any SAL_CALL AccessibleBrowseBoxBase::getAccessibleKeyBinding()
- throw ( uno::RuntimeException )
-{
- return Any();
-}
-// -----------------------------------------------------------------------------
-Reference<XAccessible > SAL_CALL AccessibleBrowseBoxBase::getAccessibleAtPoint( const ::com::sun::star::awt::Point& )
- throw ( uno::RuntimeException )
-{
- return NULL;
-}
-// -----------------------------------------------------------------------------
-void SAL_CALL AccessibleBrowseBoxBase::disposing( const ::com::sun::star::lang::EventObject& ) throw (::com::sun::star::uno::RuntimeException)
-{
- m_xFocusWindow = NULL;
-}
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL AccessibleBrowseBoxBase::getForeground( ) throw (::com::sun::star::uno::RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- sal_Int32 nColor = 0;
- Window* pInst = mpBrowseBox->GetWindowInstance();
- if ( pInst )
- {
- if ( pInst->IsControlForeground() )
- nColor = pInst->GetControlForeground().GetColor();
- else
- {
- Font aFont;
- if ( pInst->IsControlFont() )
- aFont = pInst->GetControlFont();
- else
- aFont = pInst->GetFont();
- nColor = aFont.GetColor().GetColor();
- }
- }
-
- return nColor;
-}
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL AccessibleBrowseBoxBase::getBackground( ) throw (::com::sun::star::uno::RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- sal_Int32 nColor = 0;
- Window* pInst = mpBrowseBox->GetWindowInstance();
- if ( pInst )
- {
- if ( pInst->IsControlBackground() )
- nColor = pInst->GetControlBackground().GetColor();
- else
- nColor = pInst->GetBackground().GetColor().GetColor();
- }
-
- return nColor;
-}
-
-// ============================================================================
-DBG_NAME( BrowseBoxAccessibleElement )
-
-// XInterface -----------------------------------------------------------------
-IMPLEMENT_FORWARD_XINTERFACE2( BrowseBoxAccessibleElement, AccessibleBrowseBoxBase, BrowseBoxAccessibleElement_Base )
-
-// XTypeProvider --------------------------------------------------------------
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( BrowseBoxAccessibleElement, AccessibleBrowseBoxBase, BrowseBoxAccessibleElement_Base )
-
-// XAccessible ----------------------------------------------------------------
-
-Reference< XAccessibleContext > SAL_CALL BrowseBoxAccessibleElement::getAccessibleContext() throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return this;
-}
-
-// ----------------------------------------------------------------------------
-BrowseBoxAccessibleElement::BrowseBoxAccessibleElement( const Reference< XAccessible >& rxParent, IAccessibleTableProvider& rBrowseBox,
- const Reference< awt::XWindow >& _xFocusWindow, AccessibleBrowseBoxObjType eObjType )
- :AccessibleBrowseBoxBase( rxParent, rBrowseBox, _xFocusWindow, eObjType )
-{
- DBG_CTOR( BrowseBoxAccessibleElement, NULL );
-}
-
-// ----------------------------------------------------------------------------
-BrowseBoxAccessibleElement::BrowseBoxAccessibleElement( const Reference< XAccessible >& rxParent, IAccessibleTableProvider& rBrowseBox,
- const Reference< awt::XWindow >& _xFocusWindow, AccessibleBrowseBoxObjType eObjType,
- const ::rtl::OUString& rName, const ::rtl::OUString& rDescription )
- :AccessibleBrowseBoxBase( rxParent, rBrowseBox, _xFocusWindow, eObjType, rName, rDescription )
-{
- DBG_CTOR( BrowseBoxAccessibleElement, NULL );
-}
-
-// ----------------------------------------------------------------------------
-BrowseBoxAccessibleElement::~BrowseBoxAccessibleElement( )
-{
- DBG_DTOR( BrowseBoxAccessibleElement, NULL );
-}
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/AccessibleBrowseBoxCheckBoxCell.cxx b/accessibility/source/extended/AccessibleBrowseBoxCheckBoxCell.cxx
deleted file mode 100644
index 94b2947ee..000000000
--- a/accessibility/source/extended/AccessibleBrowseBoxCheckBoxCell.cxx
+++ /dev/null
@@ -1,174 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/extended/AccessibleBrowseBoxCheckBoxCell.hxx>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <svtools/accessibletableprovider.hxx>
-
-namespace accessibility
-{
- using namespace com::sun::star::accessibility;
- using namespace com::sun::star::uno;
- using namespace com::sun::star::accessibility::AccessibleEventId;
- using namespace ::svt;
-
- AccessibleCheckBoxCell::AccessibleCheckBoxCell(const Reference<XAccessible >& _rxParent,
- IAccessibleTableProvider& _rBrowseBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- sal_Int32 _nRowPos,
- sal_uInt16 _nColPos
- ,const TriState& _eState,
- sal_Bool _bEnabled,
- sal_Bool _bIsTriState)
- :AccessibleBrowseBoxCell(_rxParent, _rBrowseBox, _xFocusWindow, _nRowPos, _nColPos, BBTYPE_CHECKBOXCELL)
- ,m_eState(_eState)
- ,m_bEnabled(_bEnabled)
- ,m_bIsTriState(_bIsTriState)
- {
- }
- // -----------------------------------------------------------------------------
- IMPLEMENT_FORWARD_XINTERFACE2( AccessibleCheckBoxCell, AccessibleBrowseBoxCell, AccessibleCheckBoxCell_BASE )
- // -----------------------------------------------------------------------------
- IMPLEMENT_FORWARD_XTYPEPROVIDER2( AccessibleCheckBoxCell, AccessibleBrowseBoxCell, AccessibleCheckBoxCell_BASE )
- //--------------------------------------------------------------------
- Reference< XAccessibleContext > SAL_CALL AccessibleCheckBoxCell::getAccessibleContext( ) throw (RuntimeException)
- {
- ensureIsAlive();
- return this;
- }
- // -----------------------------------------------------------------------------
- ::utl::AccessibleStateSetHelper* AccessibleCheckBoxCell::implCreateStateSetHelper()
- {
- ::utl::AccessibleStateSetHelper* pStateSetHelper =
- AccessibleBrowseBoxCell::implCreateStateSetHelper();
- if( isAlive() )
- {
- mpBrowseBox->FillAccessibleStateSetForCell(
- *pStateSetHelper, getRowPos(), static_cast< sal_uInt16 >( getColumnPos() ) );
- if ( m_eState == STATE_CHECK )
- pStateSetHelper->AddState( AccessibleStateType::CHECKED );
- }
- return pStateSetHelper;
- }
- // -----------------------------------------------------------------------------
- // -----------------------------------------------------------------------------
- // XAccessibleValue
- // -----------------------------------------------------------------------------
-
- Any SAL_CALL AccessibleCheckBoxCell::getCurrentValue( ) throw (RuntimeException)
- {
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- sal_Int32 nValue = 0;
- switch( m_eState )
- {
- case STATE_NOCHECK:
- nValue = 0;
- break;
- case STATE_CHECK:
- nValue = 1;
- break;
- case STATE_DONTKNOW:
- nValue = 2;
- break;
- }
- return makeAny(nValue);
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Bool SAL_CALL AccessibleCheckBoxCell::setCurrentValue( const Any& ) throw (RuntimeException)
- {
- return sal_False;
- }
-
- // -----------------------------------------------------------------------------
-
- Any SAL_CALL AccessibleCheckBoxCell::getMaximumValue( ) throw (RuntimeException)
- {
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- Any aValue;
-
- if ( m_bIsTriState )
- aValue <<= (sal_Int32) 2;
- else
- aValue <<= (sal_Int32) 1;
-
- return aValue;
- }
-
- // -----------------------------------------------------------------------------
-
- Any SAL_CALL AccessibleCheckBoxCell::getMinimumValue( ) throw (RuntimeException)
- {
- Any aValue;
- aValue <<= (sal_Int32) 0;
-
- return aValue;
- }
- // -----------------------------------------------------------------------------
- // XAccessibleContext
- sal_Int32 SAL_CALL AccessibleCheckBoxCell::getAccessibleChildCount( ) throw (::com::sun::star::uno::RuntimeException)
- {
- return 0;
- }
- // -----------------------------------------------------------------------------
- ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible > SAL_CALL AccessibleCheckBoxCell::getAccessibleChild( sal_Int32 ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- throw ::com::sun::star::lang::IndexOutOfBoundsException();
- }
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleCheckBoxCell::getImplementationName() throw ( ::com::sun::star::uno::RuntimeException )
- {
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.TableCheckBoxCell" ) );
- }
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleCheckBoxCell::getAccessibleIndexInParent()
- throw ( ::com::sun::star::uno::RuntimeException )
- {
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- return ( getRowPos() * mpBrowseBox->GetColumnCount() ) + getColumnPos();
- }
- // -----------------------------------------------------------------------------
- void AccessibleCheckBoxCell::SetChecked( sal_Bool _bChecked )
- {
- m_eState = _bChecked ? STATE_CHECK : STATE_NOCHECK;
- Any aOldValue, aNewValue;
- if ( _bChecked )
- aNewValue <<= AccessibleStateType::CHECKED;
- else
- aOldValue <<= AccessibleStateType::CHECKED;
- commitEvent( AccessibleEventId::STATE_CHANGED, aNewValue, aOldValue );
- }
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/AccessibleBrowseBoxHeaderBar.cxx b/accessibility/source/extended/AccessibleBrowseBoxHeaderBar.cxx
deleted file mode 100644
index 55aa3a407..000000000
--- a/accessibility/source/extended/AccessibleBrowseBoxHeaderBar.cxx
+++ /dev/null
@@ -1,424 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-
-#include "accessibility/extended/AccessibleBrowseBoxHeaderBar.hxx"
-#include <svtools/accessibletableprovider.hxx>
-#include <comphelper/servicehelper.hxx>
-
-// ============================================================================
-
-using ::rtl::OUString;
-
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Sequence;
-using ::com::sun::star::uno::Any;
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::accessibility;
-using namespace ::svt;
-
-// ============================================================================
-
-namespace accessibility {
-
-// ============================================================================
-
-// Ctor/Dtor/disposing --------------------------------------------------------
-
-DBG_NAME( AccessibleBrowseBoxHeaderBar )
-
-AccessibleBrowseBoxHeaderBar::AccessibleBrowseBoxHeaderBar(
- const Reference< XAccessible >& rxParent,
- IAccessibleTableProvider& rBrowseBox,
- AccessibleBrowseBoxObjType eObjType ) :
- AccessibleBrowseBoxTableBase( rxParent, rBrowseBox,eObjType )
-{
- DBG_CTOR( AccessibleBrowseBoxHeaderBar, NULL );
-
- DBG_ASSERT( isRowBar() || isColumnBar(),
- "accessibility/extended/AccessibleBrowseBoxHeaderBar - invalid object type" );
-}
-
-AccessibleBrowseBoxHeaderBar::~AccessibleBrowseBoxHeaderBar()
-{
- DBG_DTOR( AccessibleBrowseBoxHeaderBar, NULL );
-}
-
-// XAccessibleContext ---------------------------------------------------------
-
-Reference< XAccessible > SAL_CALL
-AccessibleBrowseBoxHeaderBar::getAccessibleChild( sal_Int32 nChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidHeaderIndex( nChildIndex );
- return implGetChild( nChildIndex, implToVCLColumnPos( nChildIndex ) );
-}
-
-sal_Int32 SAL_CALL AccessibleBrowseBoxHeaderBar::getAccessibleIndexInParent()
- throw ( uno::RuntimeException )
-{
- return isRowBar() ? BBINDEX_ROWHEADERBAR : BBINDEX_COLUMNHEADERBAR;
-}
-
-// XAccessibleComponent -------------------------------------------------------
-
-Reference< XAccessible > SAL_CALL
-AccessibleBrowseBoxHeaderBar::getAccessibleAtPoint( const awt::Point& rPoint )
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- sal_Int32 nRow = 0;
- sal_uInt16 nColumnPos = 0;
- sal_Bool bConverted = isRowBar() ?
- mpBrowseBox->ConvertPointToRowHeader( nRow, VCLPoint( rPoint ) ) :
- mpBrowseBox->ConvertPointToColumnHeader( nColumnPos, VCLPoint( rPoint ) );
-
- return bConverted ? implGetChild( nRow, nColumnPos ) : Reference< XAccessible >();
-}
-
-void SAL_CALL AccessibleBrowseBoxHeaderBar::grabFocus()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- // focus on header not supported
-}
-
-Any SAL_CALL AccessibleBrowseBoxHeaderBar::getAccessibleKeyBinding()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return Any(); // no special key bindings for header
-}
-
-// XAccessibleTable -----------------------------------------------------------
-
-OUString SAL_CALL AccessibleBrowseBoxHeaderBar::getAccessibleRowDescription( sal_Int32 nRow )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidRow( nRow );
- return OUString(); // no headers in headers
-}
-
-OUString SAL_CALL AccessibleBrowseBoxHeaderBar::getAccessibleColumnDescription( sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidColumn( nColumn );
- return OUString(); // no headers in headers
-}
-
-Reference< XAccessibleTable > SAL_CALL AccessibleBrowseBoxHeaderBar::getAccessibleRowHeaders()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return NULL; // no headers in headers
-}
-
-Reference< XAccessibleTable > SAL_CALL AccessibleBrowseBoxHeaderBar::getAccessibleColumnHeaders()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return NULL; // no headers in headers
-}
-
-Sequence< sal_Int32 > SAL_CALL AccessibleBrowseBoxHeaderBar::getSelectedAccessibleRows()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- Sequence< sal_Int32 > aSelSeq;
- // row of column header bar not selectable
- if( isRowBar() )
- implGetSelectedRows( aSelSeq );
- return aSelSeq;
-}
-
-Sequence< sal_Int32 > SAL_CALL AccessibleBrowseBoxHeaderBar::getSelectedAccessibleColumns()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- Sequence< sal_Int32 > aSelSeq;
- // column of row header bar ("handle column") not selectable
- if( isColumnBar() )
- implGetSelectedColumns( aSelSeq );
- return aSelSeq;
-}
-
-sal_Bool SAL_CALL AccessibleBrowseBoxHeaderBar::isAccessibleRowSelected( sal_Int32 nRow )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidRow( nRow );
- return isRowBar() ? implIsRowSelected( nRow ) : sal_False;
-}
-
-sal_Bool SAL_CALL AccessibleBrowseBoxHeaderBar::isAccessibleColumnSelected( sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidColumn( nColumn );
- return isColumnBar() ? implIsColumnSelected( nColumn ) : sal_False;
-}
-
-Reference< XAccessible > SAL_CALL AccessibleBrowseBoxHeaderBar::getAccessibleCellAt(
- sal_Int32 nRow, sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidAddress( nRow, nColumn );
- return implGetChild( nRow, implToVCLColumnPos( nColumn ) );
-}
-
-sal_Bool SAL_CALL AccessibleBrowseBoxHeaderBar::isAccessibleSelected(
- sal_Int32 nRow, sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidAddress( nRow, nColumn );
- return isRowBar() ? implIsRowSelected( nRow ) : implIsColumnSelected( nColumn );
-}
-
-// XAccessibleSelection -------------------------------------------------------
-
-void SAL_CALL AccessibleBrowseBoxHeaderBar::selectAccessibleChild( sal_Int32 nChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidHeaderIndex( nChildIndex );
- if( isRowBar() )
- implSelectRow( nChildIndex, sal_True );
- else
- implSelectColumn( implToVCLColumnPos( nChildIndex ), sal_True );
-}
-
-sal_Bool SAL_CALL AccessibleBrowseBoxHeaderBar::isAccessibleChildSelected( sal_Int32 nChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- // using interface methods - no mutex
- return isRowBar() ?
- isAccessibleRowSelected( nChildIndex ) :
- isAccessibleColumnSelected( nChildIndex );
-}
-
-void SAL_CALL AccessibleBrowseBoxHeaderBar::clearAccessibleSelection()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- mpBrowseBox->SetNoSelection();
-}
-
-void SAL_CALL AccessibleBrowseBoxHeaderBar::selectAllAccessibleChildren()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- // no multiselection of columns possible
- if( isRowBar() )
- mpBrowseBox->SelectAll();
- else
- implSelectColumn( implToVCLColumnPos( 0 ), sal_True );
-}
-
-sal_Int32 SAL_CALL AccessibleBrowseBoxHeaderBar::getSelectedAccessibleChildCount()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return isRowBar() ? implGetSelectedRowCount() : implGetSelectedColumnCount();
-}
-
-Reference< XAccessible > SAL_CALL
-AccessibleBrowseBoxHeaderBar::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- // method may throw lang::IndexOutOfBoundsException
- sal_Int32 nIndex = implGetChildIndexFromSelectedIndex( nSelectedChildIndex );
- return implGetChild( nIndex, implToVCLColumnPos( nIndex ) );
-}
-
-void SAL_CALL AccessibleBrowseBoxHeaderBar::deselectAccessibleChild(
- sal_Int32 nSelectedChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- // method may throw lang::IndexOutOfBoundsException
- if ( isAccessibleChildSelected(nSelectedChildIndex) )
- {
- if( isRowBar() )
- implSelectRow( nSelectedChildIndex, sal_False );
- else
- implSelectColumn( implToVCLColumnPos( nSelectedChildIndex ), sal_False );
- }
-}
-
-// XInterface -----------------------------------------------------------------
-
-Any SAL_CALL AccessibleBrowseBoxHeaderBar::queryInterface( const uno::Type& rType )
- throw ( uno::RuntimeException )
-{
- Any aAny( AccessibleBrowseBoxTableBase::queryInterface( rType ) );
- return aAny.hasValue() ?
- aAny : AccessibleBrowseBoxHeaderBarImplHelper::queryInterface( rType );
-}
-
-void SAL_CALL AccessibleBrowseBoxHeaderBar::acquire() throw ()
-{
- AccessibleBrowseBoxTableBase::acquire();
-}
-
-void SAL_CALL AccessibleBrowseBoxHeaderBar::release() throw ()
-{
- AccessibleBrowseBoxTableBase::release();
-}
-
-// XServiceInfo ---------------------------------------------------------------
-
-OUString SAL_CALL AccessibleBrowseBoxHeaderBar::getImplementationName()
- throw ( uno::RuntimeException )
-{
- return OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.AccessibleBrowseBoxHeaderBar" ) );
-}
-
-namespace
-{
- class theAccessibleBrowseBoxHeaderBarImplementationId : public rtl::Static< UnoTunnelIdInit, theAccessibleBrowseBoxHeaderBarImplementationId > {};
-}
-
-Sequence< sal_Int8 > SAL_CALL AccessibleBrowseBoxHeaderBar::getImplementationId()
- throw ( uno::RuntimeException )
-{
- return theAccessibleBrowseBoxHeaderBarImplementationId::get().getSeq();
-}
-
-// internal virtual methods ---------------------------------------------------
-
-Rectangle AccessibleBrowseBoxHeaderBar::implGetBoundingBox()
-{
- return mpBrowseBox->calcHeaderRect(isColumnBar(),sal_False);
-}
-
-Rectangle AccessibleBrowseBoxHeaderBar::implGetBoundingBoxOnScreen()
-{
- return mpBrowseBox->calcHeaderRect(isColumnBar(),sal_True);
-}
-
-sal_Int32 AccessibleBrowseBoxHeaderBar::implGetRowCount() const
-{
- // column header bar: only 1 row
- return isRowBar() ? AccessibleBrowseBoxTableBase::implGetRowCount() : 1;
-}
-
-sal_Int32 AccessibleBrowseBoxHeaderBar::implGetColumnCount() const
-{
- // row header bar ("handle column"): only 1 column
- return isColumnBar() ? AccessibleBrowseBoxTableBase::implGetColumnCount() : 1;
-}
-
-// internal helper methods ----------------------------------------------------
-
-Reference< XAccessible > AccessibleBrowseBoxHeaderBar::implGetChild(
- sal_Int32 nRow, sal_uInt16 nColumnPos )
-{
- return isRowBar() ?
- mpBrowseBox->CreateAccessibleRowHeader( nRow ) :
- mpBrowseBox->CreateAccessibleColumnHeader( nColumnPos );
-}
-
-sal_Int32 AccessibleBrowseBoxHeaderBar::implGetChildIndexFromSelectedIndex(
- sal_Int32 nSelectedChildIndex )
- throw ( lang::IndexOutOfBoundsException )
-{
- Sequence< sal_Int32 > aSelSeq;
- if( isRowBar() )
- implGetSelectedRows( aSelSeq );
- else
- implGetSelectedColumns( aSelSeq );
-
- if( (nSelectedChildIndex < 0) || (nSelectedChildIndex >= aSelSeq.getLength()) )
- throw lang::IndexOutOfBoundsException();
-
- return aSelSeq[ nSelectedChildIndex ];
-}
-
-void AccessibleBrowseBoxHeaderBar::ensureIsValidHeaderIndex( sal_Int32 nIndex )
- throw ( lang::IndexOutOfBoundsException )
-{
- if( isRowBar() )
- ensureIsValidRow( nIndex );
- else
- ensureIsValidColumn( nIndex );
-}
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/AccessibleBrowseBoxHeaderCell.cxx b/accessibility/source/extended/AccessibleBrowseBoxHeaderCell.cxx
deleted file mode 100644
index 5ded893be..000000000
--- a/accessibility/source/extended/AccessibleBrowseBoxHeaderCell.cxx
+++ /dev/null
@@ -1,175 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-#include "accessibility/extended/AccessibleBrowseBoxHeaderCell.hxx"
-#include <svtools/accessibletableprovider.hxx>
-#include "accessibility/extended/AccessibleBrowseBox.hxx"
-
-namespace accessibility
-{
- using namespace ::com::sun::star::accessibility;
- using namespace ::com::sun::star::lang;
- using namespace ::com::sun::star::uno;
- using namespace ::svt;
-
-AccessibleBrowseBoxHeaderCell::AccessibleBrowseBoxHeaderCell(sal_Int32 _nColumnRowId,
- const Reference< XAccessible >& rxParent,
- IAccessibleTableProvider& rBrowseBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- AccessibleBrowseBoxObjType eObjType)
-: BrowseBoxAccessibleElement(rxParent,
- rBrowseBox,
- _xFocusWindow,
- eObjType,
- rBrowseBox.GetAccessibleObjectName( eObjType ,_nColumnRowId),
- rBrowseBox.GetAccessibleObjectDescription( eObjType ,_nColumnRowId))
-, m_nColumnRowId(_nColumnRowId)
-{
-}
-/** Creates a new AccessibleStateSetHelper and fills it with states of the
- current object.
- @return
- A filled AccessibleStateSetHelper.
-*/
-::utl::AccessibleStateSetHelper* AccessibleBrowseBoxHeaderCell::implCreateStateSetHelper()
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ::utl::AccessibleStateSetHelper*
- pStateSetHelper = new ::utl::AccessibleStateSetHelper;
-
- if( isAlive() )
- {
- // SHOWING done with mxParent
- if( implIsShowing() )
- pStateSetHelper->AddState( AccessibleStateType::SHOWING );
-
- SolarMutexGuard aSolarGuard;
- pStateSetHelper->AddState( AccessibleStateType::VISIBLE );
- pStateSetHelper->AddState( AccessibleStateType::FOCUSABLE );
- pStateSetHelper->AddState( AccessibleStateType::TRANSIENT );
- pStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
-
- sal_Bool bSelected = isRowBarCell() ? mpBrowseBox->IsRowSelected(m_nColumnRowId) : mpBrowseBox->IsColumnSelected(m_nColumnRowId);
- if ( bSelected )
- pStateSetHelper->AddState( AccessibleStateType::SELECTED );
- }
- else
- pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
-
- return pStateSetHelper;
-}
-// -----------------------------------------------------------------------------
-/** @return
- The count of visible children.
-*/
-sal_Int32 SAL_CALL AccessibleBrowseBoxHeaderCell::getAccessibleChildCount()
- throw ( RuntimeException )
-{
- return 0;
-}
-// -----------------------------------------------------------------------------
-
-/** @return
- The XAccessible interface of the specified child.
-*/
-Reference<XAccessible > SAL_CALL AccessibleBrowseBoxHeaderCell::getAccessibleChild( sal_Int32 )
- throw ( IndexOutOfBoundsException,RuntimeException )
-{
- throw IndexOutOfBoundsException();
-}
-// -----------------------------------------------------------------------------
-
-/** Grabs the focus to the column header. */
-void SAL_CALL AccessibleBrowseBoxHeaderCell::grabFocus()
- throw ( ::com::sun::star::uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- if ( isRowBarCell() )
- mpBrowseBox->SelectRow(m_nColumnRowId);
- else
- mpBrowseBox->SelectColumn(static_cast<sal_uInt16>(m_nColumnRowId)); //!!!
-}
-// -----------------------------------------------------------------------------
-/** @return
- The name of this class.
-*/
-::rtl::OUString SAL_CALL AccessibleBrowseBoxHeaderCell::getImplementationName()
- throw ( ::com::sun::star::uno::RuntimeException )
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.AccessibleBrowseBoxHeaderCell" ) );
-}
-// -----------------------------------------------------------------------------
-namespace
-{
- Rectangle getRectangle(IAccessibleTableProvider* _pBrowseBox,sal_Int32 _nRowColIndex, sal_Bool _bOnScreen,sal_Bool _bRowBar)
- {
- sal_Int32 nRow = 0;
- sal_uInt16 nCol = (sal_uInt16)_nRowColIndex;
- if ( _bRowBar )
- {
- nRow = _nRowColIndex + 1;
- nCol = 0;
- }
-
- Rectangle aRet(_pBrowseBox->GetFieldRectPixelAbs( nRow , nCol, sal_True, _bOnScreen));
- return Rectangle(aRet.TopLeft() - Point(0,aRet.GetHeight()),aRet.GetSize());
- }
-}
-
-Rectangle AccessibleBrowseBoxHeaderCell::implGetBoundingBox()
-{
- return getRectangle(mpBrowseBox,m_nColumnRowId,sal_False,isRowBarCell());
-}
-// -----------------------------------------------------------------------------
-
-Rectangle AccessibleBrowseBoxHeaderCell::implGetBoundingBoxOnScreen()
-{
- return getRectangle(mpBrowseBox,m_nColumnRowId,sal_True,isRowBarCell());
-}
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL AccessibleBrowseBoxHeaderCell::getAccessibleIndexInParent()
- throw ( RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- sal_Int32 nIndex = m_nColumnRowId;
- if ( mpBrowseBox->HasRowHeader() )
- --nIndex;
- return nIndex;
-}
-// -----------------------------------------------------------------------------
-} // namespace accessibility
-// -----------------------------------------------------------------------------
-
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/AccessibleBrowseBoxTable.cxx b/accessibility/source/extended/AccessibleBrowseBoxTable.cxx
deleted file mode 100644
index a14a990e0..000000000
--- a/accessibility/source/extended/AccessibleBrowseBoxTable.cxx
+++ /dev/null
@@ -1,280 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-
-#include "accessibility/extended/AccessibleBrowseBoxTable.hxx"
-#include <svtools/accessibletableprovider.hxx>
-
-// ============================================================================
-
-using ::rtl::OUString;
-
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Sequence;
-using ::com::sun::star::uno::Any;
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::accessibility;
-using namespace ::svt;
-
-// ============================================================================
-
-namespace accessibility {
-
-// ============================================================================
-
-// Ctor/Dtor/disposing --------------------------------------------------------
-
-DBG_NAME( AccessibleBrowseBoxTable )
-
-AccessibleBrowseBoxTable::AccessibleBrowseBoxTable(
- const Reference< XAccessible >& rxParent,
- IAccessibleTableProvider& rBrowseBox ) :
- AccessibleBrowseBoxTableBase( rxParent, rBrowseBox, BBTYPE_TABLE )
-{
- DBG_CTOR( AccessibleBrowseBoxTable, NULL );
-}
-
-AccessibleBrowseBoxTable::~AccessibleBrowseBoxTable()
-{
- DBG_DTOR( AccessibleBrowseBoxTable, NULL );
-}
-
-// XAccessibleContext ---------------------------------------------------------
-
-Reference< XAccessible > SAL_CALL
-AccessibleBrowseBoxTable::getAccessibleChild( sal_Int32 nChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidIndex( nChildIndex );
- return mpBrowseBox->CreateAccessibleCell(
- implGetRow( nChildIndex ), (sal_Int16)implGetColumn( nChildIndex ) );
-}
-
-sal_Int32 SAL_CALL AccessibleBrowseBoxTable::getAccessibleIndexInParent()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return BBINDEX_TABLE;
-}
-
-// XAccessibleComponent -------------------------------------------------------
-
-Reference< XAccessible > SAL_CALL
-AccessibleBrowseBoxTable::getAccessibleAtPoint( const awt::Point& rPoint )
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- Reference< XAccessible > xChild;
- sal_Int32 nRow = 0;
- sal_uInt16 nColumnPos = 0;
- if( mpBrowseBox->ConvertPointToCellAddress( nRow, nColumnPos, VCLPoint( rPoint ) ) )
- xChild = mpBrowseBox->CreateAccessibleCell( nRow, nColumnPos );
-
- return xChild;
-}
-
-void SAL_CALL AccessibleBrowseBoxTable::grabFocus()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- mpBrowseBox->GrabTableFocus();
-}
-
-Any SAL_CALL AccessibleBrowseBoxTable::getAccessibleKeyBinding()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return Any(); // no special key bindings for data table
-}
-
-// XAccessibleTable -----------------------------------------------------------
-
-OUString SAL_CALL AccessibleBrowseBoxTable::getAccessibleRowDescription( sal_Int32 nRow )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidRow( nRow );
- return mpBrowseBox->GetRowDescription( nRow );
-}
-
-OUString SAL_CALL AccessibleBrowseBoxTable::getAccessibleColumnDescription( sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidColumn( nColumn );
- return mpBrowseBox->GetColumnDescription( (sal_uInt16)nColumn );
-}
-
-Reference< XAccessibleTable > SAL_CALL AccessibleBrowseBoxTable::getAccessibleRowHeaders()
- throw ( uno::RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return implGetHeaderBar( BBINDEX_ROWHEADERBAR );
-}
-
-Reference< XAccessibleTable > SAL_CALL AccessibleBrowseBoxTable::getAccessibleColumnHeaders()
- throw ( uno::RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return implGetHeaderBar( BBINDEX_COLUMNHEADERBAR );
-}
-
-Sequence< sal_Int32 > SAL_CALL AccessibleBrowseBoxTable::getSelectedAccessibleRows()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- Sequence< sal_Int32 > aSelSeq;
- implGetSelectedRows( aSelSeq );
- return aSelSeq;
-}
-
-Sequence< sal_Int32 > SAL_CALL AccessibleBrowseBoxTable::getSelectedAccessibleColumns()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- Sequence< sal_Int32 > aSelSeq;
- implGetSelectedColumns( aSelSeq );
- return aSelSeq;
-}
-
-sal_Bool SAL_CALL AccessibleBrowseBoxTable::isAccessibleRowSelected( sal_Int32 nRow )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidRow( nRow );
- return implIsRowSelected( nRow );
-}
-
-sal_Bool SAL_CALL AccessibleBrowseBoxTable::isAccessibleColumnSelected( sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidColumn( nColumn );
- return implIsColumnSelected( nColumn );
-}
-
-Reference< XAccessible > SAL_CALL AccessibleBrowseBoxTable::getAccessibleCellAt(
- sal_Int32 nRow, sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidAddress( nRow, nColumn );
- return mpBrowseBox->CreateAccessibleCell( nRow, (sal_Int16)nColumn );
-}
-
-sal_Bool SAL_CALL AccessibleBrowseBoxTable::isAccessibleSelected(
- sal_Int32 nRow, sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidAddress( nRow, nColumn );
- return implIsRowSelected( nRow ) || implIsColumnSelected( nColumn );
-}
-
-// XServiceInfo ---------------------------------------------------------------
-
-OUString SAL_CALL AccessibleBrowseBoxTable::getImplementationName()
- throw ( uno::RuntimeException )
-{
- return OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.AccessibleBrowseBoxTable" ) );
-}
-
-// internal virtual methods ---------------------------------------------------
-
-Rectangle AccessibleBrowseBoxTable::implGetBoundingBox()
-{
- return mpBrowseBox->calcTableRect(sal_False);
-}
-
-Rectangle AccessibleBrowseBoxTable::implGetBoundingBoxOnScreen()
-{
- return mpBrowseBox->calcTableRect();
-}
-
-// internal helper methods ----------------------------------------------------
-
-Reference< XAccessibleTable > AccessibleBrowseBoxTable::implGetHeaderBar(
- sal_Int32 nChildIndex )
- throw ( uno::RuntimeException )
-{
- Reference< XAccessible > xRet;
- Reference< XAccessibleContext > xContext( mxParent, uno::UNO_QUERY );
- if( xContext.is() )
- {
- try
- {
- xRet = xContext->getAccessibleChild( nChildIndex );
- }
- catch (const lang::IndexOutOfBoundsException&)
- {
- OSL_FAIL( "implGetHeaderBar - wrong child index" );
- }
- // RuntimeException goes to caller
- }
- return Reference< XAccessibleTable >( xRet, uno::UNO_QUERY );
-}
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/AccessibleBrowseBoxTableBase.cxx b/accessibility/source/extended/AccessibleBrowseBoxTableBase.cxx
deleted file mode 100644
index 7c8355f56..000000000
--- a/accessibility/source/extended/AccessibleBrowseBoxTableBase.cxx
+++ /dev/null
@@ -1,360 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-
-#include "accessibility/extended/AccessibleBrowseBoxTableBase.hxx"
-#include <svtools/accessibletableprovider.hxx>
-#include <tools/multisel.hxx>
-#include <comphelper/sequence.hxx>
-#include <comphelper/servicehelper.hxx>
-
-// ============================================================================
-
-using ::rtl::OUString;
-
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Sequence;
-using ::com::sun::star::uno::Any;
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::accessibility;
-using namespace ::svt;
-
-// ============================================================================
-
-namespace accessibility {
-
-// ============================================================================
-
-// Ctor/Dtor/disposing --------------------------------------------------------
-
-DBG_NAME( AccessibleBrowseBoxTableBase )
-
-AccessibleBrowseBoxTableBase::AccessibleBrowseBoxTableBase(
- const Reference< XAccessible >& rxParent,
- IAccessibleTableProvider& rBrowseBox,
- AccessibleBrowseBoxObjType eObjType ) :
- BrowseBoxAccessibleElement( rxParent, rBrowseBox,NULL, eObjType )
-{
- DBG_CTOR( AccessibleBrowseBoxTableBase, NULL );
-}
-
-AccessibleBrowseBoxTableBase::~AccessibleBrowseBoxTableBase()
-{
- DBG_DTOR( AccessibleBrowseBoxTableBase, NULL );
-}
-
-// XAccessibleContext ---------------------------------------------------------
-
-sal_Int32 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleChildCount()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return implGetChildCount();
-}
-
-sal_Int16 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleRole()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return AccessibleRole::TABLE;
-}
-
-// XAccessibleTable -----------------------------------------------------------
-
-sal_Int32 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleRowCount()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return implGetRowCount();
-}
-
-sal_Int32 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleColumnCount()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return implGetColumnCount();
-}
-
-sal_Int32 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleRowExtentAt(
- sal_Int32 nRow, sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidAddress( nRow, nColumn );
- return 1; // merged cells not supported
-}
-
-sal_Int32 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleColumnExtentAt(
- sal_Int32 nRow, sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidAddress( nRow, nColumn );
- return 1; // merged cells not supported
-}
-
-Reference< XAccessible > SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleCaption()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return NULL; // not supported
-}
-
-Reference< XAccessible > SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleSummary()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return NULL; // not supported
-}
-
-sal_Int32 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleIndex(
- sal_Int32 nRow, sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidAddress( nRow, nColumn );
- return implGetChildIndex( nRow, nColumn );
-}
-
-sal_Int32 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleRow( sal_Int32 nChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidIndex( nChildIndex );
- return implGetRow( nChildIndex );
-}
-
-sal_Int32 SAL_CALL AccessibleBrowseBoxTableBase::getAccessibleColumn( sal_Int32 nChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidIndex( nChildIndex );
- return implGetColumn( nChildIndex );
-}
-
-// XInterface -----------------------------------------------------------------
-
-Any SAL_CALL AccessibleBrowseBoxTableBase::queryInterface( const uno::Type& rType )
- throw ( uno::RuntimeException )
-{
- Any aAny( BrowseBoxAccessibleElement::queryInterface( rType ) );
- return aAny.hasValue() ?
- aAny : AccessibleBrowseBoxTableImplHelper::queryInterface( rType );
-}
-
-void SAL_CALL AccessibleBrowseBoxTableBase::acquire() throw ()
-{
- BrowseBoxAccessibleElement::acquire();
-}
-
-void SAL_CALL AccessibleBrowseBoxTableBase::release() throw ()
-{
- BrowseBoxAccessibleElement::release();
-}
-
-// XTypeProvider --------------------------------------------------------------
-
-Sequence< uno::Type > SAL_CALL AccessibleBrowseBoxTableBase::getTypes()
- throw ( uno::RuntimeException )
-{
- return ::comphelper::concatSequences(
- BrowseBoxAccessibleElement::getTypes(),
- AccessibleBrowseBoxTableImplHelper::getTypes() );
-}
-
-namespace
-{
- class theAccessibleBrowseBoxTableBaseImplementationId : public rtl::Static< UnoTunnelIdInit, theAccessibleBrowseBoxTableBaseImplementationId > {};
-}
-
-Sequence< sal_Int8 > SAL_CALL AccessibleBrowseBoxTableBase::getImplementationId()
- throw ( uno::RuntimeException )
-{
- return theAccessibleBrowseBoxTableBaseImplementationId::get().getSeq();
-}
-
-// internal virtual methods ---------------------------------------------------
-
-sal_Int32 AccessibleBrowseBoxTableBase::implGetRowCount() const
-{
- return mpBrowseBox->GetRowCount();
-}
-
-sal_Int32 AccessibleBrowseBoxTableBase::implGetColumnCount() const
-{
- sal_uInt16 nColumns = mpBrowseBox->GetColumnCount();
- // do not count the "handle column"
- if( nColumns && implHasHandleColumn() )
- --nColumns;
- return nColumns;
-}
-
-// internal helper methods ----------------------------------------------------
-
-sal_Bool AccessibleBrowseBoxTableBase::implHasHandleColumn() const
-{
- return mpBrowseBox->HasRowHeader();
-}
-
-sal_uInt16 AccessibleBrowseBoxTableBase::implToVCLColumnPos( sal_Int32 nColumn ) const
-{
- sal_uInt16 nVCLPos = 0;
- if( (0 <= nColumn) && (nColumn < implGetColumnCount()) )
- {
- // regard "handle column"
- if( implHasHandleColumn() )
- ++nColumn;
- nVCLPos = static_cast< sal_uInt16 >( nColumn );
- }
- return nVCLPos;
-}
-
-sal_Int32 AccessibleBrowseBoxTableBase::implGetChildCount() const
-{
- return implGetRowCount() * implGetColumnCount();
-}
-
-sal_Int32 AccessibleBrowseBoxTableBase::implGetRow( sal_Int32 nChildIndex ) const
-{
- sal_Int32 nColumns = implGetColumnCount();
- return nColumns ? (nChildIndex / nColumns) : 0;
-}
-
-sal_Int32 AccessibleBrowseBoxTableBase::implGetColumn( sal_Int32 nChildIndex ) const
-{
- sal_Int32 nColumns = implGetColumnCount();
- return nColumns ? (nChildIndex % nColumns) : 0;
-}
-
-sal_Int32 AccessibleBrowseBoxTableBase::implGetChildIndex(
- sal_Int32 nRow, sal_Int32 nColumn ) const
-{
- return nRow * implGetColumnCount() + nColumn;
-}
-
-sal_Bool AccessibleBrowseBoxTableBase::implIsRowSelected( sal_Int32 nRow ) const
-{
- return mpBrowseBox->IsRowSelected( nRow );
-}
-
-sal_Bool AccessibleBrowseBoxTableBase::implIsColumnSelected( sal_Int32 nColumn ) const
-{
- if( implHasHandleColumn() )
- --nColumn;
- return mpBrowseBox->IsColumnSelected( nColumn );
-}
-
-void AccessibleBrowseBoxTableBase::implSelectRow( sal_Int32 nRow, sal_Bool bSelect )
-{
- mpBrowseBox->SelectRow( nRow, bSelect, sal_True );
-}
-
-void AccessibleBrowseBoxTableBase::implSelectColumn( sal_Int32 nColumnPos, sal_Bool bSelect )
-{
- mpBrowseBox->SelectColumn( (sal_uInt16)nColumnPos, bSelect );
-}
-
-sal_Int32 AccessibleBrowseBoxTableBase::implGetSelectedRowCount() const
-{
- return mpBrowseBox->GetSelectedRowCount();
-}
-
-sal_Int32 AccessibleBrowseBoxTableBase::implGetSelectedColumnCount() const
-{
- return mpBrowseBox->GetSelectedColumnCount();
-}
-
-void AccessibleBrowseBoxTableBase::implGetSelectedRows( Sequence< sal_Int32 >& rSeq )
-{
- mpBrowseBox->GetAllSelectedRows( rSeq );
-}
-
-void AccessibleBrowseBoxTableBase::implGetSelectedColumns( Sequence< sal_Int32 >& rSeq )
-{
- mpBrowseBox->GetAllSelectedColumns( rSeq );
-}
-
-void AccessibleBrowseBoxTableBase::ensureIsValidRow( sal_Int32 nRow )
- throw ( lang::IndexOutOfBoundsException )
-{
- if( nRow >= implGetRowCount() )
- throw lang::IndexOutOfBoundsException(
- OUString( RTL_CONSTASCII_USTRINGPARAM( "row index is invalid" ) ), *this );
-}
-
-void AccessibleBrowseBoxTableBase::ensureIsValidColumn( sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException )
-{
- if( nColumn >= implGetColumnCount() )
- throw lang::IndexOutOfBoundsException(
- OUString( RTL_CONSTASCII_USTRINGPARAM("column index is invalid") ), *this );
-}
-
-void AccessibleBrowseBoxTableBase::ensureIsValidAddress(
- sal_Int32 nRow, sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException )
-{
- ensureIsValidRow( nRow );
- ensureIsValidColumn( nColumn );
-}
-
-void AccessibleBrowseBoxTableBase::ensureIsValidIndex( sal_Int32 nChildIndex )
- throw ( lang::IndexOutOfBoundsException )
-{
- if( nChildIndex >= implGetChildCount() )
- throw lang::IndexOutOfBoundsException(
- OUString( RTL_CONSTASCII_USTRINGPARAM("child index is invalid") ), *this );
-}
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/AccessibleBrowseBoxTableCell.cxx b/accessibility/source/extended/AccessibleBrowseBoxTableCell.cxx
deleted file mode 100644
index 88c4251c1..000000000
--- a/accessibility/source/extended/AccessibleBrowseBoxTableCell.cxx
+++ /dev/null
@@ -1,357 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-#include "accessibility/extended/AccessibleBrowseBoxTableCell.hxx"
-#include <svtools/accessibletableprovider.hxx>
-#include "accessibility/extended/AccessibleBrowseBox.hxx"
-#include <tools/gen.hxx>
-#include <toolkit/helper/vclunohelper.hxx>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-
-namespace accessibility
-{
- namespace
- {
- static void checkIndex_Impl( sal_Int32 _nIndex, const ::rtl::OUString& _sText ) throw (::com::sun::star::lang::IndexOutOfBoundsException)
- {
- if ( _nIndex >= _sText.getLength() )
- throw ::com::sun::star::lang::IndexOutOfBoundsException();
- }
-
- static sal_Int32 getIndex_Impl( sal_Int32 _nRow, sal_uInt16 _nColumn, sal_uInt16 _nColumnCount )
- {
- return _nRow * _nColumnCount + _nColumn;
- }
- }
- using namespace ::com::sun::star::lang;
- using namespace utl;
- using namespace comphelper;
- using ::rtl::OUString;
- using ::accessibility::AccessibleBrowseBox;
- using namespace ::com::sun::star::uno;
- using ::com::sun::star::accessibility::XAccessible;
- using namespace ::com::sun::star::accessibility;
- using namespace ::svt;
-
-
- // implementation of a table cell
- ::rtl::OUString AccessibleBrowseBoxTableCell::implGetText()
- {
- ensureIsAlive();
- return mpBrowseBox->GetAccessibleCellText( getRowPos(), static_cast< sal_uInt16 >( getColumnPos() ) );
- }
-
- ::com::sun::star::lang::Locale AccessibleBrowseBoxTableCell::implGetLocale()
- {
- ensureIsAlive();
- return mpBrowseBox->GetAccessible()->getAccessibleContext()->getLocale();
- }
-
- void AccessibleBrowseBoxTableCell::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
- {
- nStartIndex = 0;
- nEndIndex = 0;
- }
-
- AccessibleBrowseBoxTableCell::AccessibleBrowseBoxTableCell(const Reference<XAccessible >& _rxParent,
- IAccessibleTableProvider& _rBrowseBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- sal_Int32 _nRowPos,
- sal_uInt16 _nColPos,
- sal_Int32 _nOffset )
- :AccessibleBrowseBoxCell( _rxParent, _rBrowseBox, _xFocusWindow, _nRowPos, _nColPos )
- {
- m_nOffset = ( OFFSET_DEFAULT == _nOffset ) ? (sal_Int32)BBINDEX_FIRSTCONTROL : _nOffset;
- sal_Int32 nIndex = getIndex_Impl( _nRowPos, _nColPos, _rBrowseBox.GetColumnCount() );
- setAccessibleName( _rBrowseBox.GetAccessibleObjectName( BBTYPE_TABLECELL, nIndex ) );
- setAccessibleDescription( _rBrowseBox.GetAccessibleObjectDescription( BBTYPE_TABLECELL, nIndex ) );
- // Need to register as event listener
- Reference< XComponent > xComponent(_rxParent, UNO_QUERY);
- if( xComponent.is() )
- xComponent->addEventListener(static_cast< XEventListener *> (this));
- }
-
- void AccessibleBrowseBoxTableCell::nameChanged( const ::rtl::OUString& rNewName, const ::rtl::OUString& rOldName )
- {
- implSetName( rNewName );
- Any aOldValue, aNewValue;
- aOldValue <<= rOldName;
- aNewValue <<= rNewName;
- commitEvent( AccessibleEventId::NAME_CHANGED, aOldValue, aNewValue );
- }
-
- // XInterface -------------------------------------------------------------
-
- /** Queries for a new interface. */
- ::com::sun::star::uno::Any SAL_CALL AccessibleBrowseBoxTableCell::queryInterface(
- const ::com::sun::star::uno::Type& rType )
- throw ( ::com::sun::star::uno::RuntimeException )
- {
- Any aRet = AccessibleBrowseBoxCell::queryInterface(rType);
- if ( !aRet.hasValue() )
- aRet = AccessibleTextHelper_BASE::queryInterface(rType);
- return aRet;
- }
-
- /** Aquires the object (calls acquire() on base class). */
- void SAL_CALL AccessibleBrowseBoxTableCell::acquire() throw ()
- {
- AccessibleBrowseBoxCell::acquire();
- }
-
- /** Releases the object (calls release() on base class). */
- void SAL_CALL AccessibleBrowseBoxTableCell::release() throw ()
- {
- AccessibleBrowseBoxCell::release();
- }
-
- ::com::sun::star::awt::Rectangle SAL_CALL AccessibleBrowseBoxTableCell::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- ensureIsAlive();
- if ( !implIsValidIndex( nIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- ::com::sun::star::awt::Rectangle aRect;
-
- if ( mpBrowseBox )
- {
- aRect = AWTRectangle( mpBrowseBox->GetFieldCharacterBounds( getRowPos(), getColumnPos(), nIndex ) );
- }
-
- return aRect;
- }
-
- sal_Int32 SAL_CALL AccessibleBrowseBoxTableCell::getIndexAtPoint( const ::com::sun::star::awt::Point& _aPoint ) throw (RuntimeException)
- {
- //! TODO CTL bidi
- // DBG_ASSERT(0,"Need to be done by base class!");
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- return mpBrowseBox->GetFieldIndexAtPoint( getRowPos(), getColumnPos(), VCLPoint( _aPoint ) );
- }
-
- /** @return
- The name of this class.
- */
- ::rtl::OUString SAL_CALL AccessibleBrowseBoxTableCell::getImplementationName()
- throw ( ::com::sun::star::uno::RuntimeException )
- {
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.AccessibleBrowseBoxTableCell" ) );
- }
-
- /** @return The count of visible children. */
- sal_Int32 SAL_CALL AccessibleBrowseBoxTableCell::getAccessibleChildCount()
- throw ( ::com::sun::star::uno::RuntimeException )
- {
- return 0;
- }
-
- /** @return The XAccessible interface of the specified child. */
- ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- AccessibleBrowseBoxTableCell::getAccessibleChild( sal_Int32 )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException )
- {
- throw ::com::sun::star::lang::IndexOutOfBoundsException();
- }
-
- /** Creates a new AccessibleStateSetHelper and fills it with states of the
- current object.
- @return
- A filled AccessibleStateSetHelper.
- */
- ::utl::AccessibleStateSetHelper* AccessibleBrowseBoxTableCell::implCreateStateSetHelper()
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- ::utl::AccessibleStateSetHelper* pStateSetHelper = new ::utl::AccessibleStateSetHelper;
-
- if( isAlive() )
- {
- // SHOWING done with mxParent
- if( implIsShowing() )
- pStateSetHelper->AddState( AccessibleStateType::SHOWING );
-
- mpBrowseBox->FillAccessibleStateSetForCell( *pStateSetHelper, getRowPos(), static_cast< sal_uInt16 >( getColumnPos() ) );
- }
- else
- pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
-
- return pStateSetHelper;
- }
-
-
- // XAccessible ------------------------------------------------------------
-
- /** @return The XAccessibleContext interface of this object. */
- Reference< XAccessibleContext > SAL_CALL AccessibleBrowseBoxTableCell::getAccessibleContext() throw ( RuntimeException )
- {
- ensureIsAlive();
- return this;
- }
-
- // XAccessibleContext -----------------------------------------------------
-
- sal_Int32 SAL_CALL AccessibleBrowseBoxTableCell::getAccessibleIndexInParent()
- throw ( ::com::sun::star::uno::RuntimeException )
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- return /*BBINDEX_FIRSTCONTROL*/ m_nOffset + ( getRowPos() * mpBrowseBox->GetColumnCount() ) + getColumnPos();
- }
-
- sal_Int32 SAL_CALL AccessibleBrowseBoxTableCell::getCaretPosition( ) throw (::com::sun::star::uno::RuntimeException)
- {
- return -1;
- }
- sal_Bool SAL_CALL AccessibleBrowseBoxTableCell::setCaretPosition ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
- }
- sal_Unicode SAL_CALL AccessibleBrowseBoxTableCell::getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getCharacter( nIndex );
- }
- ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL AccessibleBrowseBoxTableCell::getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- ::rtl::OUString sText( implGetText() );
-
- if ( !implIsValidIndex( nIndex, sText.getLength() ) )
- throw IndexOutOfBoundsException();
-
- return ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >();
- }
- sal_Int32 SAL_CALL AccessibleBrowseBoxTableCell::getCharacterCount( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getCharacterCount( );
- }
-
- ::rtl::OUString SAL_CALL AccessibleBrowseBoxTableCell::getSelectedText( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getSelectedText( );
- }
- sal_Int32 SAL_CALL AccessibleBrowseBoxTableCell::getSelectionStart( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getSelectionStart( );
- }
- sal_Int32 SAL_CALL AccessibleBrowseBoxTableCell::getSelectionEnd( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getSelectionEnd( );
- }
- sal_Bool SAL_CALL AccessibleBrowseBoxTableCell::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
- }
- ::rtl::OUString SAL_CALL AccessibleBrowseBoxTableCell::getText( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getText( );
- }
- ::rtl::OUString SAL_CALL AccessibleBrowseBoxTableCell::getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getTextRange( nStartIndex, nEndIndex );
- }
- ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleBrowseBoxTableCell::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getTextAtIndex( nIndex ,aTextType);
- }
- ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleBrowseBoxTableCell::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getTextBeforeIndex( nIndex ,aTextType);
- }
- ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleBrowseBoxTableCell::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getTextBehindIndex( nIndex ,aTextType);
- }
- sal_Bool SAL_CALL AccessibleBrowseBoxTableCell::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ::rtl::OUString sText = implGetText();
- checkIndex_Impl( nStartIndex, sText );
- checkIndex_Impl( nEndIndex, sText );
-
- //!!! don't know how to put a string into the clipboard
- return sal_False;
- }
- void AccessibleBrowseBoxTableCell::disposing( const EventObject& _rSource ) throw (RuntimeException)
- {
- if ( _rSource.Source == mxParent )
- {
- dispose();
- }
- }
-
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/AccessibleGridControl.cxx b/accessibility/source/extended/AccessibleGridControl.cxx
deleted file mode 100644
index dc5f45661..000000000
--- a/accessibility/source/extended/AccessibleGridControl.cxx
+++ /dev/null
@@ -1,375 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include "accessibility/extended/AccessibleGridControl.hxx"
-#include "accessibility/extended/AccessibleGridControlTable.hxx"
-#include "accessibility/extended/AccessibleGridControlHeader.hxx"
-#include <svtools/accessibletable.hxx>
-#include <comphelper/types.hxx>
-#include <toolkit/helper/vclunohelper.hxx>
-
-// ============================================================================
-
-namespace accessibility
-{
-
-// ============================================================================
-
-using ::rtl::OUString;
-
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::accessibility;
-using namespace ::svt;
-using namespace ::svt::table;
-
-// ============================================================================
-class AccessibleGridControl_Impl
-{
-public:
- /// the XAccessible which created the AccessibleGridControl
- WeakReference< XAccessible > m_aCreator;
-
- /** The data table child. */
- Reference<
- ::com::sun::star::accessibility::XAccessible > m_xTable;
- AccessibleGridControlTable* m_pTable;
-
- /** The header bar for rows. */
- Reference<
- ::com::sun::star::accessibility::XAccessible > m_xRowHeaderBar;
- AccessibleGridControlHeader* m_pRowHeaderBar;
-
- /** The header bar for columns (first row of the table). */
- Reference<
- ::com::sun::star::accessibility::XAccessible > m_xColumnHeaderBar;
- AccessibleGridControlHeader* m_pColumnHeaderBar;
-};
-
-DBG_NAME( AccessibleGridControl )
-
-AccessibleGridControl::AccessibleGridControl(
- const Reference< XAccessible >& _rxParent, const Reference< XAccessible >& _rxCreator,
- IAccessibleTable& _rTable )
- : AccessibleGridControlBase( _rxParent, _rTable, TCTYPE_GRIDCONTROL )
-{
- m_pImpl.reset( new AccessibleGridControl_Impl() );
- m_pImpl->m_aCreator = _rxCreator;
-}
-
-// -----------------------------------------------------------------------------
-AccessibleGridControl::~AccessibleGridControl()
-{
-}
-// -----------------------------------------------------------------------------
-
-void SAL_CALL AccessibleGridControl::disposing()
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- m_pImpl->m_pTable = NULL;
- m_pImpl->m_pColumnHeaderBar = NULL;
- m_pImpl->m_pRowHeaderBar = NULL;
- m_pImpl->m_aCreator = Reference< XAccessible >();
-
- Reference< XAccessible > xTable = m_pImpl->m_xTable;
-
- Reference< XComponent > xComp( m_pImpl->m_xTable, UNO_QUERY );
- if ( xComp.is() )
- {
- xComp->dispose();
- }
-
- AccessibleGridControlBase::disposing();
-}
-// -----------------------------------------------------------------------------
-
-// XAccessibleContext ---------------------------------------------------------
-
-sal_Int32 SAL_CALL AccessibleGridControl::getAccessibleChildCount()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return m_aTable.GetAccessibleControlCount();
-}
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > SAL_CALL
-AccessibleGridControl::getAccessibleChild( sal_Int32 nChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- if (nChildIndex<0 || nChildIndex>=getAccessibleChildCount())
- throw IndexOutOfBoundsException();
-
- Reference< XAccessible > xChild;
- if (isAlive())
- {
- if(nChildIndex == 0 && m_aTable.HasColHeader())
- {
- if(!m_pImpl->m_xColumnHeaderBar.is())
- {
- AccessibleGridControlHeader* pColHeaderBar = new AccessibleGridControlHeader(m_pImpl->m_aCreator, m_aTable, svt::table::TCTYPE_COLUMNHEADERBAR);
- m_pImpl->m_xColumnHeaderBar = pColHeaderBar;
- }
- xChild = m_pImpl->m_xColumnHeaderBar;
- }
- else if(m_aTable.HasRowHeader() && (nChildIndex == 1 || nChildIndex == 0))
- {
- if(!m_pImpl->m_xRowHeaderBar.is())
- {
- AccessibleGridControlHeader* pRowHeaderBar = new AccessibleGridControlHeader(m_pImpl->m_aCreator, m_aTable, svt::table::TCTYPE_ROWHEADERBAR);
- m_pImpl->m_xRowHeaderBar = pRowHeaderBar;
- }
- xChild = m_pImpl->m_xRowHeaderBar;
- }
- else
- {
- AccessibleGridControlTable* pTable = new AccessibleGridControlTable(m_pImpl->m_aCreator, m_aTable, svt::table::TCTYPE_TABLE);
- m_pImpl->m_xTable = pTable;
- xChild = m_pImpl->m_xTable;
- }
- }
- return xChild;
-}
-// -----------------------------------------------------------------------------
-
-sal_Int16 SAL_CALL AccessibleGridControl::getAccessibleRole()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return AccessibleRole::PANEL;
-}
-// -----------------------------------------------------------------------------
-
-// XAccessibleComponent -------------------------------------------------------
-
-Reference< XAccessible > SAL_CALL
-AccessibleGridControl::getAccessibleAtPoint( const awt::Point& rPoint )
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- Reference< XAccessible > xChild;
- sal_Int32 nIndex = 0;
- if( m_aTable.ConvertPointToControlIndex( nIndex, VCLPoint( rPoint ) ) )
- xChild = m_aTable.CreateAccessibleControl( nIndex );
- else
- {
- // try whether point is in one of the fixed children
- // (table, header bars, corner control)
- Point aPoint( VCLPoint( rPoint ) );
- for( nIndex = 0; (nIndex < 3) && !xChild.is(); ++nIndex )
- {
- Reference< XAccessible > xCurrChild( implGetFixedChild( nIndex ) );
- Reference< XAccessibleComponent >
- xCurrChildComp( xCurrChild, uno::UNO_QUERY );
-
- if( xCurrChildComp.is() &&
- VCLRectangle( xCurrChildComp->getBounds() ).IsInside( aPoint ) )
- xChild = xCurrChild;
- }
- }
- return xChild;
-}
-// -----------------------------------------------------------------------------
-
-void SAL_CALL AccessibleGridControl::grabFocus()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- m_aTable.GrabFocus();
-}
-// -----------------------------------------------------------------------------
-
-Any SAL_CALL AccessibleGridControl::getAccessibleKeyBinding()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return Any();
-}
-// -----------------------------------------------------------------------------
-
-// XServiceInfo ---------------------------------------------------------------
-
-OUString SAL_CALL AccessibleGridControl::getImplementationName()
- throw ( uno::RuntimeException )
-{
- return OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleGridControl" ) );
-}
-// -----------------------------------------------------------------------------
-
-// internal virtual methods ---------------------------------------------------
-
-Rectangle AccessibleGridControl::implGetBoundingBox()
-{
- Window* pParent = m_aTable.GetAccessibleParentWindow();
- DBG_ASSERT( pParent, "implGetBoundingBox - missing parent window" );
- return m_aTable.GetWindowExtentsRelative( pParent );
-}
-// -----------------------------------------------------------------------------
-
-Rectangle AccessibleGridControl::implGetBoundingBoxOnScreen()
-{
- return m_aTable.GetWindowExtentsRelative( NULL );
-}
-// internal helper methods ----------------------------------------------------
-
-Reference< XAccessible > AccessibleGridControl::implGetTable()
-{
- if( !m_pImpl->m_xTable.is() )
- {
- m_pImpl->m_pTable = createAccessibleTable();
- m_pImpl->m_xTable = m_pImpl->m_pTable;
- }
- return m_pImpl->m_xTable;
-}
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible >
-AccessibleGridControl::implGetHeaderBar( AccessibleTableControlObjType eObjType )
-{
- Reference< XAccessible > xRet;
- Reference< XAccessible >* pxMember = NULL;
-
- if( eObjType == TCTYPE_ROWHEADERBAR )
- pxMember = &m_pImpl->m_xRowHeaderBar;
- else if( eObjType == TCTYPE_COLUMNHEADERBAR )
- pxMember = &m_pImpl->m_xColumnHeaderBar;
-
- if( pxMember )
- {
- if( !pxMember->is() )
- {
- AccessibleGridControlHeader* pHeaderBar = new AccessibleGridControlHeader(
- (Reference< XAccessible >)m_pImpl->m_aCreator, m_aTable, eObjType );
-
- if ( TCTYPE_COLUMNHEADERBAR == eObjType)
- m_pImpl->m_pColumnHeaderBar = pHeaderBar;
- else
- m_pImpl->m_pRowHeaderBar = pHeaderBar;
-
- *pxMember = pHeaderBar;
- }
- xRet = *pxMember;
- }
- return xRet;
-}
-// -----------------------------------------------------------------------------
-Reference< XAccessible >
-AccessibleGridControl::implGetFixedChild( sal_Int32 nChildIndex )
-{
- Reference< XAccessible > xRet;
- switch( nChildIndex )
- {
- case TCINDEX_COLUMNHEADERBAR:
- xRet = implGetHeaderBar( TCTYPE_COLUMNHEADERBAR );
- break;
- case TCINDEX_ROWHEADERBAR:
- xRet = implGetHeaderBar( TCTYPE_ROWHEADERBAR );
- break;
- case TCINDEX_TABLE:
- xRet = implGetTable();
- break;
- }
- return xRet;
-}
-// -----------------------------------------------------------------------------
-AccessibleGridControlTable* AccessibleGridControl::createAccessibleTable()
-{
- Reference< XAccessible > xCreator = (Reference< XAccessible >)m_pImpl->m_aCreator;
- DBG_ASSERT( xCreator.is(), "accessibility/extended/AccessibleGirdControl::createAccessibleTable: my creator died - how this?" );
- return new AccessibleGridControlTable( xCreator, m_aTable, TCTYPE_TABLE );
-}
-// ============================================================================
-// = AccessibleGridControlAccess
-// ============================================================================
-DBG_NAME( AccessibleGridControlAccess )
-// -----------------------------------------------------------------------------
-AccessibleGridControlAccess::AccessibleGridControlAccess( const Reference< XAccessible >& _rxParent, IAccessibleTable& _rTable )
- :m_xParent( _rxParent )
- ,m_rTable( _rTable )
- ,m_pContext( NULL )
-{
-}
-
-// -----------------------------------------------------------------------------
-AccessibleGridControlAccess::~AccessibleGridControlAccess()
-{
-}
-
-// -----------------------------------------------------------------------------
-void AccessibleGridControlAccess::dispose()
-{
- ::osl::MutexGuard aGuard( m_aMutex );
-
- m_pContext = NULL;
- ::comphelper::disposeComponent( m_xContext );
-}
-
-// -----------------------------------------------------------------------------
-Reference< XAccessibleContext > SAL_CALL AccessibleGridControlAccess::getAccessibleContext() throw ( RuntimeException )
-{
- ::osl::MutexGuard aGuard( m_aMutex );
-
- DBG_ASSERT( ( m_pContext && m_xContext.is() ) || ( !m_pContext && !m_xContext.is() ),
- "accessibility/extended/AccessibleGridControlAccess::getAccessibleContext: inconsistency!" );
-
- // if the context died meanwhile (we're no listener, so it won't tell us explicitily when this happens),
- // then reset an re-create.
- if ( m_pContext && !m_pContext->isAlive() )
- m_xContext = m_pContext = NULL;
-
- if ( !m_xContext.is() )
- m_xContext = m_pContext = new AccessibleGridControl( m_xParent, this, m_rTable );
-
- return m_xContext;
-}
-
-// -----------------------------------------------------------------------------
-bool AccessibleGridControlAccess::isContextAlive() const
-{
- return ( NULL != m_pContext ) && m_pContext->isAlive();
-}
-
-// ============================================================================
-
-} // namespace accessibility
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/AccessibleGridControlBase.cxx b/accessibility/source/extended/AccessibleGridControlBase.cxx
deleted file mode 100644
index cdf0db3cb..000000000
--- a/accessibility/source/extended/AccessibleGridControlBase.cxx
+++ /dev/null
@@ -1,529 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include "accessibility/extended/AccessibleGridControlBase.hxx"
-#include <svtools/accessibletable.hxx>
-#include <comphelper/servicehelper.hxx>
-//
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <unotools/accessiblerelationsethelper.hxx>
-
-// ============================================================================
-
-using ::rtl::OUString;
-
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Sequence;
-using ::com::sun::star::uno::Any;
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::accessibility;
-using namespace ::comphelper;
-using namespace ::svt;
-using namespace ::svt::table;
-
-
-// ============================================================================
-
-namespace accessibility {
-
-using namespace com::sun::star::accessibility::AccessibleStateType;
-// ============================================================================
-
-DBG_NAME( AccessibleGridControlBase )
-
-AccessibleGridControlBase::AccessibleGridControlBase(
- const Reference< XAccessible >& rxParent,
- svt::table::IAccessibleTable& rTable,
- AccessibleTableControlObjType eObjType ) :
- AccessibleGridControlImplHelper( m_aMutex ),
- m_xParent( rxParent ),
- m_aTable( rTable),
- m_eObjType( eObjType ),
- m_aName( rTable.GetAccessibleObjectName( eObjType, 0, 0 ) ),
- m_aDescription( rTable.GetAccessibleObjectDescription( eObjType ) ),
- m_aClientId(0)
-{
-}
-
-AccessibleGridControlBase::~AccessibleGridControlBase()
-{
- if( isAlive() )
- {
- // increment ref count to prevent double call of Dtor
- osl_incrementInterlockedCount( &m_refCount );
- dispose();
- }
-}
-
-void SAL_CALL AccessibleGridControlBase::disposing()
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- m_xParent = NULL;
-}
-
-// XAccessibleContext ---------------------------------------------------------
-
-Reference< XAccessible > SAL_CALL AccessibleGridControlBase::getAccessibleParent()
- throw ( uno::RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return m_xParent;
-}
-
-sal_Int32 SAL_CALL AccessibleGridControlBase::getAccessibleIndexInParent()
- throw ( uno::RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- // -1 for child not found/no parent (according to specification)
- sal_Int32 nRet = -1;
-
- Reference< uno::XInterface > xMeMyselfAndI( static_cast< XAccessibleContext* >( this ), uno::UNO_QUERY );
-
- // iterate over parent's children and search for this object
- if( m_xParent.is() )
- {
- Reference< XAccessibleContext >
- xParentContext( m_xParent->getAccessibleContext() );
- if( xParentContext.is() )
- {
- Reference< uno::XInterface > xChild;
-
- sal_Int32 nChildCount = xParentContext->getAccessibleChildCount();
- for( sal_Int32 nChild = 0; nChild < nChildCount; ++nChild )
- {
- xChild = xChild.query( xParentContext->getAccessibleChild( nChild ) );
- if ( xMeMyselfAndI.get() == xChild.get() )
- {
- nRet = nChild;
- break;
- }
- }
- }
- }
- return nRet;
-}
-
-OUString SAL_CALL AccessibleGridControlBase::getAccessibleDescription()
- throw ( uno::RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return m_aDescription;
-}
-
-OUString SAL_CALL AccessibleGridControlBase::getAccessibleName()
- throw ( uno::RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return m_aName;
-}
-
-Reference< XAccessibleRelationSet > SAL_CALL
-AccessibleGridControlBase::getAccessibleRelationSet()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- // GridControl does not have relations.
- return new utl::AccessibleRelationSetHelper;
-}
-
-Reference< XAccessibleStateSet > SAL_CALL
-AccessibleGridControlBase::getAccessibleStateSet()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- // don't check whether alive -> StateSet may contain DEFUNC
- return implCreateStateSetHelper();
-}
-
-lang::Locale SAL_CALL AccessibleGridControlBase::getLocale()
- throw ( IllegalAccessibleComponentStateException, uno::RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- if( m_xParent.is() )
- {
- Reference< XAccessibleContext >
- xParentContext( m_xParent->getAccessibleContext() );
- if( xParentContext.is() )
- return xParentContext->getLocale();
- }
- throw IllegalAccessibleComponentStateException();
-}
-
-// XAccessibleComponent -------------------------------------------------------
-
-sal_Bool SAL_CALL AccessibleGridControlBase::containsPoint( const awt::Point& rPoint )
- throw ( uno::RuntimeException )
-{
- return Rectangle( Point(), getBoundingBox().GetSize() ).IsInside( VCLPoint( rPoint ) );
-}
-
-awt::Rectangle SAL_CALL AccessibleGridControlBase::getBounds()
- throw ( uno::RuntimeException )
-{
- return AWTRectangle( getBoundingBox() );
-}
-
-awt::Point SAL_CALL AccessibleGridControlBase::getLocation()
- throw ( uno::RuntimeException )
-{
- return AWTPoint( getBoundingBox().TopLeft() );
-}
-
-awt::Point SAL_CALL AccessibleGridControlBase::getLocationOnScreen()
- throw ( uno::RuntimeException )
-{
- return AWTPoint( getBoundingBoxOnScreen().TopLeft() );
-}
-
-awt::Size SAL_CALL AccessibleGridControlBase::getSize()
- throw ( uno::RuntimeException )
-{
- return AWTSize( getBoundingBox().GetSize() );
-}
-
-sal_Bool SAL_CALL AccessibleGridControlBase::isShowing()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return implIsShowing();
-}
-
-sal_Bool SAL_CALL AccessibleGridControlBase::isVisible()
- throw ( uno::RuntimeException )
-{
- Reference< XAccessibleStateSet > xStateSet = getAccessibleStateSet();
- return xStateSet.is() ?
- xStateSet->contains( AccessibleStateType::VISIBLE ) : sal_False;
-}
-
-sal_Bool SAL_CALL AccessibleGridControlBase::isFocusTraversable()
- throw ( uno::RuntimeException )
-{
- Reference< XAccessibleStateSet > xStateSet = getAccessibleStateSet();
- return xStateSet.is() ?
- xStateSet->contains( AccessibleStateType::FOCUSABLE ) : sal_False;
-}
-// XAccessibleEventBroadcaster ------------------------------------------------
-
-void SAL_CALL AccessibleGridControlBase::addEventListener(
- const Reference< XAccessibleEventListener>& _rxListener )
- throw ( uno::RuntimeException )
-{
- if ( _rxListener.is() )
- {
- ::osl::MutexGuard aGuard( getOslMutex() );
- if ( !getClientId( ) )
- setClientId( AccessibleEventNotifier::registerClient( ) );
-
- AccessibleEventNotifier::addEventListener( getClientId( ), _rxListener );
- }
-}
-
-void SAL_CALL AccessibleGridControlBase::removeEventListener(
- const Reference< XAccessibleEventListener>& _rxListener )
- throw ( uno::RuntimeException )
-{
- if( _rxListener.is() && getClientId( ) )
- {
- ::osl::MutexGuard aGuard( getOslMutex() );
- sal_Int32 nListenerCount = AccessibleEventNotifier::removeEventListener( getClientId( ), _rxListener );
- if ( !nListenerCount )
- {
- // no listeners anymore
- // -> revoke ourself. This may lead to the notifier thread dying (if we were the last client),
- // and at least to us not firing any events anymore, in case somebody calls
- // NotifyAccessibleEvent, again
- AccessibleEventNotifier::TClientId nId( getClientId( ) );
- setClientId( 0 );
- AccessibleEventNotifier::revokeClient( nId );
- }
- }
-}
-
-// XTypeProvider --------------------------------------------------------------
-
-namespace
-{
- class theAccessibleGridControlBaseImplementationId : public rtl::Static< UnoTunnelIdInit, theAccessibleGridControlBaseImplementationId > {};
-}
-
-Sequence< sal_Int8 > SAL_CALL AccessibleGridControlBase::getImplementationId()
- throw ( uno::RuntimeException )
-{
- return theAccessibleGridControlBaseImplementationId::get().getSeq();
-}
-
-// XServiceInfo ---------------------------------------------------------------
-
-sal_Bool SAL_CALL AccessibleGridControlBase::supportsService(
- const OUString& rServiceName )
- throw ( uno::RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- Sequence< OUString > aSupportedServices( getSupportedServiceNames() );
- const OUString* pArrBegin = aSupportedServices.getConstArray();
- const OUString* pArrEnd = pArrBegin + aSupportedServices.getLength();
- const OUString* pString = pArrBegin;
-
- for( ; ( pString != pArrEnd ) && ( rServiceName != *pString ); ++pString )
- ;
- return pString != pArrEnd;
-}
-
-Sequence< OUString > SAL_CALL AccessibleGridControlBase::getSupportedServiceNames()
- throw ( uno::RuntimeException )
-{
- const OUString aServiceName( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleContext" ) );
- return Sequence< OUString >( &aServiceName, 1 );
-}
-// internal virtual methods ---------------------------------------------------
-
-sal_Bool AccessibleGridControlBase::implIsShowing()
-{
- sal_Bool bShowing = sal_False;
- if( m_xParent.is() )
- {
- Reference< XAccessibleComponent >
- xParentComp( m_xParent->getAccessibleContext(), uno::UNO_QUERY );
- if( xParentComp.is() )
- bShowing = implGetBoundingBox().IsOver(
- VCLRectangle( xParentComp->getBounds() ) );
- }
- return bShowing;
-}
-
-::utl::AccessibleStateSetHelper* AccessibleGridControlBase::implCreateStateSetHelper()
-{
- ::utl::AccessibleStateSetHelper*
- pStateSetHelper = new ::utl::AccessibleStateSetHelper;
-
- if( isAlive() )
- {
- // SHOWING done with m_xParent
- if( implIsShowing() )
- pStateSetHelper->AddState( AccessibleStateType::SHOWING );
- // GridControl fills StateSet with states depending on object type
- m_aTable.FillAccessibleStateSet( *pStateSetHelper, getType() );
- }
- else
- pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
- return pStateSetHelper;
-}
-
-// internal helper methods ----------------------------------------------------
-
-sal_Bool AccessibleGridControlBase::isAlive() const
-{
- return !rBHelper.bDisposed && !rBHelper.bInDispose && &m_aTable;
-}
-
-void AccessibleGridControlBase::ensureIsAlive() const
- throw ( lang::DisposedException )
-{
- if( !isAlive() )
- throw lang::DisposedException();
-}
-
-Rectangle AccessibleGridControlBase::getBoundingBox()
- throw ( lang::DisposedException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- Rectangle aRect = implGetBoundingBox();
- if ( 0 == aRect.Left() && 0 == aRect.Top() && 0 == aRect.Right() && 0 == aRect.Bottom() )
- {
- DBG_ERRORFILE( "rectangle doesn't exist" );
- }
- return aRect;
-}
-
-Rectangle AccessibleGridControlBase::getBoundingBoxOnScreen()
- throw ( lang::DisposedException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- Rectangle aRect = implGetBoundingBoxOnScreen();
- if ( 0 == aRect.Left() && 0 == aRect.Top() && 0 == aRect.Right() && 0 == aRect.Bottom() )
- {
- DBG_ERRORFILE( "rectangle doesn't exist" );
- }
- return aRect;
-}
-
-void AccessibleGridControlBase::commitEvent(
- sal_Int16 _nEventId, const Any& _rNewValue, const Any& _rOldValue )
-{
- ::osl::ClearableMutexGuard aGuard( getOslMutex() );
- if ( !getClientId( ) )
- // if we don't have a client id for the notifier, then we don't have listeners, then
- // we don't need to notify anything
- return;
-
- // build an event object
- AccessibleEventObject aEvent;
- aEvent.Source = *this;
- aEvent.EventId = _nEventId;
- aEvent.OldValue = _rOldValue;
- aEvent.NewValue = _rNewValue;
-
- // let the notifier handle this event
-
- AccessibleEventNotifier::addEvent( getClientId( ), aEvent );
-}
-
-sal_Int16 SAL_CALL AccessibleGridControlBase::getAccessibleRole()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- sal_Int16 nRole = AccessibleRole::UNKNOWN;
- switch ( m_eObjType )
- {
- case TCTYPE_ROWHEADERCELL:
- nRole = AccessibleRole::ROW_HEADER;
- break;
- case TCTYPE_COLUMNHEADERCELL:
- nRole = AccessibleRole::COLUMN_HEADER;
- break;
- case TCTYPE_COLUMNHEADERBAR:
- case TCTYPE_ROWHEADERBAR:
- case TCTYPE_TABLE:
- nRole = AccessibleRole::TABLE;
- break;
- case TCTYPE_TABLECELL:
- nRole = AccessibleRole::TABLE_CELL;
- break;
- case TCTYPE_GRIDCONTROL:
- nRole = AccessibleRole::PANEL;
- break;
- }
- return nRole;
-}
-// -----------------------------------------------------------------------------
-Any SAL_CALL AccessibleGridControlBase::getAccessibleKeyBinding()
- throw ( uno::RuntimeException )
-{
- return Any();
-}
-// -----------------------------------------------------------------------------
-Reference<XAccessible > SAL_CALL AccessibleGridControlBase::getAccessibleAtPoint( const ::com::sun::star::awt::Point& )
- throw ( uno::RuntimeException )
-{
- return NULL;
-}
-//// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL AccessibleGridControlBase::getForeground( ) throw (::com::sun::star::uno::RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- sal_Int32 nColor = 0;
- Window* pInst = m_aTable.GetWindowInstance();
- if ( pInst )
- {
- if ( pInst->IsControlForeground() )
- nColor = pInst->GetControlForeground().GetColor();
- else
- {
- Font aFont;
- if ( pInst->IsControlFont() )
- aFont = pInst->GetControlFont();
- else
- aFont = pInst->GetFont();
- nColor = aFont.GetColor().GetColor();
- }
- }
- return nColor;
-}
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL AccessibleGridControlBase::getBackground( ) throw (::com::sun::star::uno::RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- sal_Int32 nColor = 0;
- Window* pInst = m_aTable.GetWindowInstance();
- if ( pInst )
- {
- if ( pInst->IsControlBackground() )
- nColor = pInst->GetControlBackground().GetColor();
- else
- nColor = pInst->GetBackground().GetColor().GetColor();
- }
- return nColor;
-}
-
-//// ============================================================================
-GridControlAccessibleElement::GridControlAccessibleElement( const Reference< XAccessible >& rxParent,
- IAccessibleTable& rTable,
- AccessibleTableControlObjType eObjType )
- :AccessibleGridControlBase( rxParent, rTable, eObjType )
-{
-}
-
-// XInterface -----------------------------------------------------------------
-IMPLEMENT_FORWARD_XINTERFACE2( GridControlAccessibleElement, AccessibleGridControlBase, GridControlAccessibleElement_Base)
-
-// XTypeProvider --------------------------------------------------------------
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( GridControlAccessibleElement, AccessibleGridControlBase, GridControlAccessibleElement_Base )
-
-// XAccessible ----------------------------------------------------------------
-
-Reference< XAccessibleContext > SAL_CALL GridControlAccessibleElement::getAccessibleContext() throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return this;
-}
-// ----------------------------------------------------------------------------
-GridControlAccessibleElement::~GridControlAccessibleElement( )
-{
-}
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/AccessibleGridControlHeader.cxx b/accessibility/source/extended/AccessibleGridControlHeader.cxx
deleted file mode 100644
index 66841796c..000000000
--- a/accessibility/source/extended/AccessibleGridControlHeader.cxx
+++ /dev/null
@@ -1,289 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-
-#include "accessibility/extended/AccessibleGridControlHeader.hxx"
-#include "accessibility/extended/AccessibleGridControlHeaderCell.hxx"
-#include "accessibility/extended/AccessibleGridControlTableCell.hxx"
-#include <svtools/accessibletable.hxx>
-#include <comphelper/servicehelper.hxx>
-
-
-// ============================================================================
-
-using ::rtl::OUString;
-
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Sequence;
-using ::com::sun::star::uno::Any;
-
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::accessibility;
-using namespace ::svt;
-using namespace ::svt::table;
-
-// ============================================================================
-
-namespace accessibility {
-
-// ============================================================================
-
-DBG_NAME( AccessibleGridControlHeader )
-
-AccessibleGridControlHeader::AccessibleGridControlHeader(
- const Reference< XAccessible >& rxParent,
- ::svt::table::IAccessibleTable& rTable,
- ::svt::table::AccessibleTableControlObjType eObjType):
- AccessibleGridControlTableBase( rxParent, rTable, eObjType )
-{
- DBG_ASSERT( isRowBar() || isColumnBar(),
- "accessibility/extended/AccessibleGridControlHeaderBar - invalid object type" );
-}
-
-AccessibleGridControlHeader::~AccessibleGridControlHeader()
-{
-}
-
-// XAccessibleContext ---------------------------------------------------------
-
-Reference< XAccessible > SAL_CALL
-AccessibleGridControlHeader::getAccessibleChild( sal_Int32 nChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- if (nChildIndex<0 || nChildIndex>=getAccessibleChildCount())
- throw IndexOutOfBoundsException();
- ensureIsAlive();
- Reference< XAccessible > xChild;
- if(m_eObjType == svt::table::TCTYPE_COLUMNHEADERBAR)
- {
- AccessibleGridControlHeaderCell* pColHeaderCell = new AccessibleGridControlHeaderCell(nChildIndex, this, m_aTable, svt::table::TCTYPE_COLUMNHEADERCELL);
- xChild = pColHeaderCell;
- }
- else if(m_eObjType == svt::table::TCTYPE_ROWHEADERBAR)
- {
- AccessibleGridControlHeaderCell* pRowHeaderCell = new AccessibleGridControlHeaderCell(nChildIndex, this, m_aTable, svt::table::TCTYPE_ROWHEADERCELL);
- xChild = pRowHeaderCell;
- }
- return xChild;
-}
-
-sal_Int32 SAL_CALL AccessibleGridControlHeader::getAccessibleIndexInParent()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- if(m_eObjType == svt::table::TCTYPE_ROWHEADERBAR && m_aTable.HasColHeader())
- return 1;
- else
- return 0;
-}
-
-// XAccessibleComponent -------------------------------------------------------
-
-Reference< XAccessible > SAL_CALL
-AccessibleGridControlHeader::getAccessibleAtPoint( const awt::Point& rPoint )
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- sal_Int32 nRow = 0;
- sal_Int32 nColumnPos = 0;
- sal_Bool bConverted = isRowBar() ?
- m_aTable.ConvertPointToCellAddress( nRow, nColumnPos, VCLPoint( rPoint ) ) :
- m_aTable.ConvertPointToCellAddress( nRow, nColumnPos, VCLPoint( rPoint ) );
-
- return bConverted ? implGetChild( nRow, nColumnPos ) : Reference< XAccessible >();
-}
-
-void SAL_CALL AccessibleGridControlHeader::grabFocus()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- // focus on header not supported
-}
-
-Any SAL_CALL AccessibleGridControlHeader::getAccessibleKeyBinding()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return Any(); // no special key bindings for header
-}
-
-// XAccessibleTable -----------------------------------------------------------
-
-OUString SAL_CALL AccessibleGridControlHeader::getAccessibleRowDescription( sal_Int32 nRow )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidRow( nRow );
- return OUString(); // no headers in headers
-}
-
-OUString SAL_CALL AccessibleGridControlHeader::getAccessibleColumnDescription( sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidColumn( nColumn );
- return OUString(); // no headers in headers
-}
-
-Reference< XAccessibleTable > SAL_CALL AccessibleGridControlHeader::getAccessibleRowHeaders()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return NULL; // no headers in headers
-}
-
-Reference< XAccessibleTable > SAL_CALL AccessibleGridControlHeader::getAccessibleColumnHeaders()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return NULL; // no headers in headers
-}
-//not selectable
-Sequence< sal_Int32 > SAL_CALL AccessibleGridControlHeader::getSelectedAccessibleRows()
- throw ( uno::RuntimeException )
-{
- Sequence< sal_Int32 > aSelSeq(0);
- return aSelSeq;
-}
-//columns aren't selectable
-Sequence< sal_Int32 > SAL_CALL AccessibleGridControlHeader::getSelectedAccessibleColumns()
- throw ( uno::RuntimeException )
-{
- Sequence< sal_Int32 > aSelSeq(0);
- return aSelSeq;
-}
-//row headers not selectable
-sal_Bool SAL_CALL AccessibleGridControlHeader::isAccessibleRowSelected( sal_Int32 /*nRow*/ )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- return sal_False;
-}
-//columns aren't selectable
-sal_Bool SAL_CALL AccessibleGridControlHeader::isAccessibleColumnSelected( sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- (void)nColumn;
- return sal_False;
-}
-//not implemented
-Reference< XAccessible > SAL_CALL AccessibleGridControlHeader::getAccessibleCellAt(
- sal_Int32 /*nRow*/, sal_Int32 /*nColumn*/ )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- return NULL;
-}
-// not selectable
-sal_Bool SAL_CALL AccessibleGridControlHeader::isAccessibleSelected(
- sal_Int32 /*nRow*/, sal_Int32 /*nColumn */)
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- return sal_False;
-}
-
-// XServiceInfo ---------------------------------------------------------------
-
-OUString SAL_CALL AccessibleGridControlHeader::getImplementationName()
- throw ( uno::RuntimeException )
-{
- return OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleGridControlHeader" ) );
-}
-
-namespace
-{
- class theAccessibleGridControlHeaderImplementationId : public rtl::Static< UnoTunnelIdInit, theAccessibleGridControlHeaderImplementationId > {};
-}
-
-Sequence< sal_Int8 > SAL_CALL AccessibleGridControlHeader::getImplementationId()
- throw ( uno::RuntimeException )
-{
- return theAccessibleGridControlHeaderImplementationId::get().getSeq();
-}
-
-// internal virtual methods ---------------------------------------------------
-
-Rectangle AccessibleGridControlHeader::implGetBoundingBox()
-{
- return m_aTable.calcHeaderRect(isColumnBar());
-}
-
-Rectangle AccessibleGridControlHeader::implGetBoundingBoxOnScreen()
-{
- return m_aTable.calcHeaderRect(isColumnBar());
-}
-
-sal_Int32 AccessibleGridControlHeader::implGetRowCount() const
-{
- return 1;
-}
-
-sal_Int32 AccessibleGridControlHeader::implGetColumnCount() const
-{
- return 1;
-}
-
-// internal helper methods ----------------------------------------------------
-
-Reference< XAccessible > AccessibleGridControlHeader::implGetChild(
- sal_Int32 nRow, sal_uInt32 nColumnPos )
-{
- Reference< XAccessible > xChild;
- if(m_eObjType == svt::table::TCTYPE_COLUMNHEADERBAR)
- {
- AccessibleGridControlHeaderCell* pColHeaderCell = new AccessibleGridControlHeaderCell(nColumnPos, this, m_aTable, svt::table::TCTYPE_COLUMNHEADERCELL);
- xChild = pColHeaderCell;
- }
- else if(m_eObjType == svt::table::TCTYPE_ROWHEADERBAR)
- {
- AccessibleGridControlHeaderCell* pRowHeaderCell = new AccessibleGridControlHeaderCell(nRow, this, m_aTable, svt::table::TCTYPE_ROWHEADERCELL);
- xChild = pRowHeaderCell;
- }
- return xChild;
-}
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/AccessibleGridControlHeaderCell.cxx b/accessibility/source/extended/AccessibleGridControlHeaderCell.cxx
deleted file mode 100644
index 671668ddc..000000000
--- a/accessibility/source/extended/AccessibleGridControlHeaderCell.cxx
+++ /dev/null
@@ -1,172 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-#include "accessibility/extended/AccessibleGridControlHeaderCell.hxx"
-#include <svtools/accessibletable.hxx>
-#include "accessibility/extended/AccessibleGridControl.hxx"
-
-namespace accessibility
-{
- using namespace ::com::sun::star::accessibility;
- using namespace ::com::sun::star::lang;
- using namespace ::com::sun::star::uno;
- using namespace ::svt;
- using namespace ::svt::table;
-
-AccessibleGridControlHeaderCell::AccessibleGridControlHeaderCell(sal_Int32 _nColumnRowId,
- const Reference< XAccessible >& rxParent,
- IAccessibleTable& rTable,
- AccessibleTableControlObjType eObjType)
-: AccessibleGridControlCell( rxParent, rTable, _nColumnRowId, 0, eObjType)
-, m_nColumnRowId(_nColumnRowId)
-{
-}
-/** Creates a new AccessibleStateSetHelper and fills it with states of the
- current object.
- @return
- A filled AccessibleStateSetHelper.
-*/
-::utl::AccessibleStateSetHelper* AccessibleGridControlHeaderCell::implCreateStateSetHelper()
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ::utl::AccessibleStateSetHelper*
- pStateSetHelper = new ::utl::AccessibleStateSetHelper;
-
- if( isAlive() )
- {
- // SHOWING done with mxParent
- if( implIsShowing() )
- pStateSetHelper->AddState( AccessibleStateType::SHOWING );
-
- SolarMutexGuard aSolarGuard;
- pStateSetHelper->AddState( AccessibleStateType::VISIBLE );
- pStateSetHelper->AddState( AccessibleStateType::FOCUSABLE );
- pStateSetHelper->AddState( AccessibleStateType::TRANSIENT );
- pStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
-
- if ( m_aTable.IsRowSelected(m_nColumnRowId) )
- pStateSetHelper->AddState( AccessibleStateType::SELECTED );
- }
- else
- pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
-
- return pStateSetHelper;
-}
-// -----------------------------------------------------------------------------
-/** @return
- The count of visible children.
-*/
-sal_Int32 SAL_CALL AccessibleGridControlHeaderCell::getAccessibleChildCount()
- throw ( RuntimeException )
-{
- return 0;
-}
-// -----------------------------------------------------------------------------
-
-/** @return
- The XAccessible interface of the specified child.
-*/
-Reference<XAccessible > SAL_CALL AccessibleGridControlHeaderCell::getAccessibleChild( sal_Int32 )
- throw ( IndexOutOfBoundsException,RuntimeException )
-{
- throw IndexOutOfBoundsException();
-}
-// XInterface -------------------------------------------------------------
-
- /** Queries for a new interface. */
- ::com::sun::star::uno::Any SAL_CALL AccessibleGridControlHeaderCell::queryInterface(
- const ::com::sun::star::uno::Type& rType )
- throw ( ::com::sun::star::uno::RuntimeException )
- {
- Any aRet = AccessibleGridControlCell::queryInterface(rType);
- return aRet;
- }
-
- /** Aquires the object (calls acquire() on base class). */
- void SAL_CALL AccessibleGridControlHeaderCell::acquire() throw ()
- {
- AccessibleGridControlCell::acquire();
- }
-
- /** Releases the object (calls release() on base class). */
- void SAL_CALL AccessibleGridControlHeaderCell::release() throw ()
- {
- AccessibleGridControlCell::release();
- }
- /** @return The XAccessibleContext interface of this object. */
- Reference< com::sun::star::accessibility::XAccessibleContext > SAL_CALL AccessibleGridControlHeaderCell::getAccessibleContext() throw ( RuntimeException )
- {
- ensureIsAlive();
- return this;
- }
-
-// -----------------------------------------------------------------------------
-
-/** Grabs the focus to the column header. */
-void SAL_CALL AccessibleGridControlHeaderCell::grabFocus()
- throw ( ::com::sun::star::uno::RuntimeException )
-{
-}
-// -----------------------------------------------------------------------------
-/** @return
- The name of this class.
-*/
-::rtl::OUString SAL_CALL AccessibleGridControlHeaderCell::getImplementationName()
- throw ( ::com::sun::star::uno::RuntimeException )
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleGridControlHeaderCell" ) );
-}
-// -----------------------------------------------------------------------------
-Rectangle AccessibleGridControlHeaderCell::implGetBoundingBox()
-{
- return Rectangle(Point(0,0),Point(0,0));//To Do - return headercell rectangle
-}
-// -----------------------------------------------------------------------------
-
-Rectangle AccessibleGridControlHeaderCell::implGetBoundingBoxOnScreen()
-{
- return Rectangle(Point(0,0),Point(0,0));//To Do - return headercell rectangle
-}
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL AccessibleGridControlHeaderCell::getAccessibleIndexInParent()
- throw ( RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- sal_Int32 nIndex = m_nColumnRowId;
- return nIndex;
-}
-// -----------------------------------------------------------------------------
-} // namespace accessibility
-// -----------------------------------------------------------------------------
-
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/AccessibleGridControlTable.cxx b/accessibility/source/extended/AccessibleGridControlTable.cxx
deleted file mode 100644
index 671277cbf..000000000
--- a/accessibility/source/extended/AccessibleGridControlTable.cxx
+++ /dev/null
@@ -1,378 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-
-#include "accessibility/extended/AccessibleGridControlTable.hxx"
-#include "accessibility/extended/AccessibleGridControlTableCell.hxx"
-#include <svtools/accessibletable.hxx>
-
-// ============================================================================
-
-using ::rtl::OUString;
-
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Sequence;
-using ::com::sun::star::uno::Any;
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::accessibility;
-using namespace ::svt;
-using namespace ::svt::table;
-// ============================================================================
-
-namespace accessibility {
-
-// ============================================================================
-
-DBG_NAME( AccessibleGridControlTable )
-
-AccessibleGridControlTable::AccessibleGridControlTable(
- const Reference< XAccessible >& rxParent,
- IAccessibleTable& rTable,
- AccessibleTableControlObjType _eType) :
- AccessibleGridControlTableBase( rxParent, rTable, _eType )
-{
-}
-
-AccessibleGridControlTable::~AccessibleGridControlTable()
-{
-}
-
-// XAccessibleContext ---------------------------------------------------------
-
-Reference< XAccessible > SAL_CALL
-AccessibleGridControlTable::getAccessibleChild( sal_Int32 nChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidIndex( nChildIndex );
- return new AccessibleGridControlTableCell(this, m_aTable, nChildIndex/m_aTable.GetColumnCount(), nChildIndex%m_aTable.GetColumnCount(), TCTYPE_TABLECELL);
-}
-
-sal_Int32 SAL_CALL AccessibleGridControlTable::getAccessibleIndexInParent()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- if(m_aTable.HasRowHeader() && m_aTable.HasColHeader())
- return 0;
- else if((!m_aTable.HasRowHeader() && m_aTable.HasColHeader()) || (m_aTable.HasRowHeader() && !m_aTable.HasColHeader()) )
- return 1;
- else
- return 2;
-}
-
-// XAccessibleComponent -------------------------------------------------------
-
-Reference< XAccessible > SAL_CALL
-AccessibleGridControlTable::getAccessibleAtPoint( const awt::Point& rPoint )
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- Reference< XAccessible > xChild;
- sal_Int32 nRow = 0;
- sal_Int32 nColumnPos = 0;
- if( m_aTable.ConvertPointToCellAddress( nRow, nColumnPos, VCLPoint( rPoint ) ) )
- xChild = new AccessibleGridControlTableCell(this, m_aTable, nRow, nColumnPos, TCTYPE_TABLECELL);
-
- return xChild;
-}
-
-void SAL_CALL AccessibleGridControlTable::grabFocus()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- m_aTable.GrabFocus();
-}
-
-Any SAL_CALL AccessibleGridControlTable::getAccessibleKeyBinding()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return Any(); // no special key bindings for data table
-}
-
-// XAccessibleTable -----------------------------------------------------------
-
-OUString SAL_CALL AccessibleGridControlTable::getAccessibleRowDescription( sal_Int32 nRow )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidRow( nRow );
- return m_aTable.GetRowDescription( nRow );
-}
-
-OUString SAL_CALL AccessibleGridControlTable::getAccessibleColumnDescription( sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidColumn( nColumn );
- return m_aTable.GetColumnDescription( (sal_uInt16)nColumn );
-}
-
-Reference< XAccessibleTable > SAL_CALL AccessibleGridControlTable::getAccessibleRowHeaders()
- throw ( uno::RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- if(m_aTable.HasColHeader())
- return implGetHeaderBar( 1 );
- else
- return implGetHeaderBar( 0 );
-}
-
-Reference< XAccessibleTable > SAL_CALL AccessibleGridControlTable::getAccessibleColumnHeaders()
- throw ( uno::RuntimeException )
-{
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return implGetHeaderBar( 0 );
-}
-
-Sequence< sal_Int32 > SAL_CALL AccessibleGridControlTable::getSelectedAccessibleRows()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- Sequence< sal_Int32 > aSelSeq;
- implGetSelectedRows( aSelSeq );
- return aSelSeq;
-}
-
-//columns aren't selectable
-Sequence< sal_Int32 > SAL_CALL AccessibleGridControlTable::getSelectedAccessibleColumns()
- throw ( uno::RuntimeException )
-{
- Sequence< sal_Int32 > aSelSeq(0);
- return aSelSeq;
-}
-
-sal_Bool SAL_CALL AccessibleGridControlTable::isAccessibleRowSelected( sal_Int32 nRow )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidRow( nRow );
- sal_Bool bSelected = sal_False;
- Sequence< sal_Int32 > selectedRows = getSelectedAccessibleRows();
- for(int i=0; i<selectedRows.getLength(); i++)
- {
- if(nRow == selectedRows[i])
- {
- bSelected = sal_True;
- continue;
- }
- }
- return bSelected;
-}
-
-//columns aren't selectable
-sal_Bool SAL_CALL AccessibleGridControlTable::isAccessibleColumnSelected( sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- (void) nColumn;
- return sal_False;
-}
-
-Reference< XAccessible > SAL_CALL AccessibleGridControlTable::getAccessibleCellAt(
- sal_Int32 nRow, sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidAddress( nRow, nColumn );
- return new AccessibleGridControlTableCell(this, m_aTable, nRow, nColumn, TCTYPE_TABLECELL);
-}
-
-sal_Bool SAL_CALL AccessibleGridControlTable::isAccessibleSelected(
- sal_Int32 nRow, sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidAddress( nRow, nColumn );
- (void) nColumn;
- //selection of single cells not possible, so if row is selected, the cell will be selected too
- return isAccessibleRowSelected(nRow);
-}
-void SAL_CALL AccessibleGridControlTable::selectAccessibleChild( sal_Int32 nChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidIndex( nChildIndex );
- sal_Int32 nColumns = m_aTable.GetColumnCount();
- sal_Int32 nRow = (nChildIndex / nColumns);
- m_aTable.SelectRow( nRow, sal_True );
-}
-sal_Bool SAL_CALL AccessibleGridControlTable::isAccessibleChildSelected( sal_Int32 nChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidIndex( nChildIndex );
- sal_Int32 nColumns = m_aTable.GetColumnCount();
- sal_Int32 nRow = (nChildIndex / nColumns);
- return isAccessibleRowSelected(nRow);
-}
-void SAL_CALL AccessibleGridControlTable::clearAccessibleSelection()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- m_aTable.SelectAllRows( false );
-}
-void SAL_CALL AccessibleGridControlTable::selectAllAccessibleChildren()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- Sequence< sal_Int32 > selectedRows = getSelectedAccessibleRows();
- for(int i=0;i<m_aTable.GetRowCount();i++)
- selectedRows[i]=i;
-}
-sal_Int32 SAL_CALL AccessibleGridControlTable::getSelectedAccessibleChildCount()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- Sequence< sal_Int32 > selectedRows = getSelectedAccessibleRows();
- sal_Int32 nColumns = m_aTable.GetColumnCount();
- return selectedRows.getLength()*nColumns;
-}
-Reference< XAccessible > SAL_CALL
-AccessibleGridControlTable::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- if(isAccessibleChildSelected(nSelectedChildIndex))
- return getAccessibleChild(nSelectedChildIndex);
- else
- return NULL;
-}
-//not implemented yet, because only row selection possible
-void SAL_CALL AccessibleGridControlTable::deselectAccessibleChild(
- sal_Int32 nSelectedChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- (void)nSelectedChildIndex;
-}
-// XInterface -----------------------------------------------------------------
-
-Any SAL_CALL AccessibleGridControlTable::queryInterface( const uno::Type& rType )
- throw ( uno::RuntimeException )
-{
- Any aAny( AccessibleGridControlTableBase::queryInterface( rType ) );
- return aAny.hasValue() ?
- aAny : AccessibleGridControlTableImplHelper1::queryInterface( rType );
-}
-
-void SAL_CALL AccessibleGridControlTable::acquire() throw ()
-{
- AccessibleGridControlTableBase::acquire();
-}
-
-void SAL_CALL AccessibleGridControlTable::release() throw ()
-{
- AccessibleGridControlTableBase::release();
-}
-// XServiceInfo ---------------------------------------------------------------
-
-OUString SAL_CALL AccessibleGridControlTable::getImplementationName()
- throw ( uno::RuntimeException )
-{
- return OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleGridControlTable" ) );
-}
-
-// internal virtual methods ---------------------------------------------------
-
-Rectangle AccessibleGridControlTable::implGetBoundingBox()
-{
- return m_aTable.calcTableRect();
-}
-
-Rectangle AccessibleGridControlTable::implGetBoundingBoxOnScreen()
-{
- return m_aTable.calcTableRect();
-}
-// internal helper methods ----------------------------------------------------
-Reference< XAccessibleTable > AccessibleGridControlTable::implGetHeaderBar(
- sal_Int32 nChildIndex )
- throw ( uno::RuntimeException )
-{
- Reference< XAccessible > xRet;
- Reference< XAccessibleContext > xContext( m_xParent, uno::UNO_QUERY );
- if( xContext.is() )
- {
- try
- {
- xRet = xContext->getAccessibleChild( nChildIndex );
- }
- catch (const lang::IndexOutOfBoundsException&)
- {
- OSL_FAIL( "implGetHeaderBar - wrong child index" );
- }
- // RuntimeException goes to caller
- }
- return Reference< XAccessibleTable >( xRet, uno::UNO_QUERY );
-}
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/AccessibleGridControlTableBase.cxx b/accessibility/source/extended/AccessibleGridControlTableBase.cxx
deleted file mode 100644
index 4c3ef1861..000000000
--- a/accessibility/source/extended/AccessibleGridControlTableBase.cxx
+++ /dev/null
@@ -1,296 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-
-#include "accessibility/extended/AccessibleGridControlTableBase.hxx"
-#include <svtools/accessibletable.hxx>
-#include <tools/multisel.hxx>
-#include <comphelper/sequence.hxx>
-#include <comphelper/servicehelper.hxx>
-
-// ============================================================================
-
-using ::rtl::OUString;
-
-using ::com::sun::star::uno::Reference;
-using ::com::sun::star::uno::Sequence;
-using ::com::sun::star::uno::Any;
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::accessibility;
-using namespace ::svt;
-using namespace ::svt::table;
-
-// ============================================================================
-
-namespace accessibility {
-
-// ============================================================================
-
-DBG_NAME( AccessibleGridControlTableBase )
-
-AccessibleGridControlTableBase::AccessibleGridControlTableBase(
- const Reference< XAccessible >& rxParent,
- IAccessibleTable& rTable,
- AccessibleTableControlObjType eObjType ) :
- GridControlAccessibleElement( rxParent, rTable, eObjType )
-{
-}
-
-AccessibleGridControlTableBase::~AccessibleGridControlTableBase()
-{
-}
-
-// XAccessibleContext ---------------------------------------------------------
-
-sal_Int32 SAL_CALL AccessibleGridControlTableBase::getAccessibleChildCount()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- sal_Int32 nChildren = 0;
- if(m_eObjType == TCTYPE_ROWHEADERBAR)
- nChildren = m_aTable.GetRowCount();
- else if(m_eObjType == TCTYPE_TABLE)
- nChildren = m_aTable.GetRowCount()*m_aTable.GetColumnCount();
- else if(m_eObjType == TCTYPE_COLUMNHEADERBAR)
- nChildren = m_aTable.GetColumnCount();
- return nChildren;
-}
-
-sal_Int16 SAL_CALL AccessibleGridControlTableBase::getAccessibleRole()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return AccessibleRole::TABLE;
-}
-
-// XAccessibleTable -----------------------------------------------------------
-
-sal_Int32 SAL_CALL AccessibleGridControlTableBase::getAccessibleRowCount()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return m_aTable.GetRowCount();
-}
-
-sal_Int32 SAL_CALL AccessibleGridControlTableBase::getAccessibleColumnCount()
- throw ( uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- return m_aTable.GetColumnCount();
-}
-
-sal_Int32 SAL_CALL AccessibleGridControlTableBase::getAccessibleRowExtentAt(
- sal_Int32 nRow, sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidAddress( nRow, nColumn );
- return 1; // merged cells not supported
-}
-
-sal_Int32 SAL_CALL AccessibleGridControlTableBase::getAccessibleColumnExtentAt(
- sal_Int32 nRow, sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidAddress( nRow, nColumn );
- return 1; // merged cells not supported
-}
-
-Reference< XAccessible > SAL_CALL AccessibleGridControlTableBase::getAccessibleCaption()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return NULL; // not supported
-}
-
-Reference< XAccessible > SAL_CALL AccessibleGridControlTableBase::getAccessibleSummary()
- throw ( uno::RuntimeException )
-{
- ensureIsAlive();
- return NULL; // not supported
-}
-
-sal_Int32 SAL_CALL AccessibleGridControlTableBase::getAccessibleIndex(
- sal_Int32 nRow, sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidAddress( nRow, nColumn );
- return implGetChildIndex( nRow, nColumn );
-}
-
-sal_Int32 SAL_CALL AccessibleGridControlTableBase::getAccessibleRow( sal_Int32 nChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidIndex( nChildIndex );
- return implGetRow( nChildIndex );
-}
-
-sal_Int32 SAL_CALL AccessibleGridControlTableBase::getAccessibleColumn( sal_Int32 nChildIndex )
- throw ( lang::IndexOutOfBoundsException, uno::RuntimeException )
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
- ensureIsValidIndex( nChildIndex );
- return implGetColumn( nChildIndex );
-}
-
-// XInterface -----------------------------------------------------------------
-
-Any SAL_CALL AccessibleGridControlTableBase::queryInterface( const uno::Type& rType )
- throw ( uno::RuntimeException )
-{
- Any aAny( GridControlAccessibleElement::queryInterface( rType ) );
- return aAny.hasValue() ?
- aAny : AccessibleGridControlTableImplHelper::queryInterface( rType );
-}
-
-void SAL_CALL AccessibleGridControlTableBase::acquire() throw ()
-{
- GridControlAccessibleElement::acquire();
-}
-
-void SAL_CALL AccessibleGridControlTableBase::release() throw ()
-{
- GridControlAccessibleElement::release();
-}
-
-// XTypeProvider --------------------------------------------------------------
-
-Sequence< uno::Type > SAL_CALL AccessibleGridControlTableBase::getTypes()
- throw ( uno::RuntimeException )
-{
- return ::comphelper::concatSequences(
- GridControlAccessibleElement::getTypes(),
- AccessibleGridControlTableImplHelper::getTypes() );
-}
-
-namespace
-{
- class theAccessibleGridControlTableBaseImplementationId : public rtl::Static< UnoTunnelIdInit, theAccessibleGridControlTableBaseImplementationId > {};
-}
-
-Sequence< sal_Int8 > SAL_CALL AccessibleGridControlTableBase::getImplementationId()
- throw ( uno::RuntimeException )
-{
- return theAccessibleGridControlTableBaseImplementationId::get().getSeq();
-}
-
-// internal helper methods ----------------------------------------------------
-
-sal_Int32 AccessibleGridControlTableBase::implGetChildCount() const
-{
- return m_aTable.GetRowCount()*m_aTable.GetColumnCount();
-}
-
-sal_Int32 AccessibleGridControlTableBase::implGetRow( sal_Int32 nChildIndex ) const
-{
- sal_Int32 nColumns = m_aTable.GetColumnCount();
- return nColumns ? (nChildIndex / nColumns) : 0;
-}
-
-sal_Int32 AccessibleGridControlTableBase::implGetColumn( sal_Int32 nChildIndex ) const
-{
- sal_Int32 nColumns = m_aTable.GetColumnCount();
- return nColumns ? (nChildIndex % nColumns) : 0;
-}
-
-sal_Int32 AccessibleGridControlTableBase::implGetChildIndex(
- sal_Int32 nRow, sal_Int32 nColumn ) const
-{
- return nRow * m_aTable.GetColumnCount() + nColumn;
-}
-
-void AccessibleGridControlTableBase::implGetSelectedRows( Sequence< sal_Int32 >& rSeq )
-{
- sal_Int32 const selectionCount( m_aTable.GetSelectedRowCount() );
- rSeq.realloc( selectionCount );
- for ( sal_Int32 i=0; i<selectionCount; ++i )
- rSeq[i] = m_aTable.GetSelectedRowIndex(i);
-}
-
-void AccessibleGridControlTableBase::ensureIsValidRow( sal_Int32 nRow )
- throw ( lang::IndexOutOfBoundsException )
-{
- if( nRow >= m_aTable.GetRowCount() )
- throw lang::IndexOutOfBoundsException(
- OUString( RTL_CONSTASCII_USTRINGPARAM( "row index is invalid" ) ), *this );
-}
-
-void AccessibleGridControlTableBase::ensureIsValidColumn( sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException )
-{
- if( nColumn >= m_aTable.GetColumnCount() )
- throw lang::IndexOutOfBoundsException(
- OUString( RTL_CONSTASCII_USTRINGPARAM("column index is invalid") ), *this );
-}
-
-void AccessibleGridControlTableBase::ensureIsValidAddress(
- sal_Int32 nRow, sal_Int32 nColumn )
- throw ( lang::IndexOutOfBoundsException )
-{
- ensureIsValidRow( nRow );
- ensureIsValidColumn( nColumn );
-}
-
-void AccessibleGridControlTableBase::ensureIsValidIndex( sal_Int32 nChildIndex )
- throw ( lang::IndexOutOfBoundsException )
-{
- if( nChildIndex >= implGetChildCount() )
- throw lang::IndexOutOfBoundsException(
- OUString( RTL_CONSTASCII_USTRINGPARAM("child index is invalid") ), *this );
-}
-
-// ============================================================================
-
-} // namespace accessibility
-
-// ============================================================================
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/AccessibleGridControlTableCell.cxx b/accessibility/source/extended/AccessibleGridControlTableCell.cxx
deleted file mode 100644
index 3b1a0d6ca..000000000
--- a/accessibility/source/extended/AccessibleGridControlTableCell.cxx
+++ /dev/null
@@ -1,370 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-#include "accessibility/extended/AccessibleGridControlTableCell.hxx"
-#include <svtools/accessibletable.hxx>
-#include "accessibility/extended/AccessibleGridControl.hxx"
-#include <tools/gen.hxx>
-#include <toolkit/helper/vclunohelper.hxx>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-
-namespace accessibility
-{
- namespace
- {
- // FIXME this is a copy'n'paste from
- // source/extended/AccessibleBrowseBoxTableCell.cxx, get rid of that...
- static void checkIndex_Impl( sal_Int32 _nIndex, const ::rtl::OUString& _sText ) throw (::com::sun::star::lang::IndexOutOfBoundsException)
- {
- if ( _nIndex >= _sText.getLength() )
- throw ::com::sun::star::lang::IndexOutOfBoundsException();
- }
- }
- using namespace ::com::sun::star::lang;
- using namespace utl;
- using namespace comphelper;
- using ::rtl::OUString;
- using ::accessibility::AccessibleGridControl;
- using namespace ::com::sun::star::uno;
- using ::com::sun::star::accessibility::XAccessible;
- using namespace ::com::sun::star::accessibility;
- using namespace ::svt;
- using namespace ::svt::table;
-
-
- // =============================================================================
- // = AccessibleGridControlCell
- // =============================================================================
- // -----------------------------------------------------------------------------
- AccessibleGridControlCell::AccessibleGridControlCell(
- const Reference< XAccessible >& _rxParent, IAccessibleTable& _rTable,
- sal_Int32 _nRowPos, sal_uInt16 _nColPos, AccessibleTableControlObjType _eType )
- :AccessibleGridControlBase( _rxParent, _rTable, _eType )
- ,m_nRowPos( _nRowPos )
- ,m_nColPos( _nColPos )
- {
- // set accessible name here, because for that we need the position of the cell
- // and so the base class isn't capable of doing this
- ::rtl::OUString aAccName;
- if(_eType == TCTYPE_TABLECELL)
- aAccName = _rTable.GetAccessibleObjectName( TCTYPE_TABLECELL, _nRowPos, _nColPos );
- else if(_eType == TCTYPE_ROWHEADERCELL)
- aAccName = _rTable.GetAccessibleObjectName( TCTYPE_ROWHEADERCELL, _nRowPos, 0 );
- else if(_eType == TCTYPE_COLUMNHEADERCELL)
- aAccName = _rTable.GetAccessibleObjectName( TCTYPE_COLUMNHEADERCELL, 0, _nRowPos );
- implSetName( aAccName );
- }
-
- // -----------------------------------------------------------------------------
- AccessibleGridControlCell::~AccessibleGridControlCell()
- {
- }
-
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleGridControlCell::grabFocus() throw ( RuntimeException )
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- m_aTable.GoToCell( m_nColPos, m_nRowPos );
- }
- //// -----------------------------------------------------------------------------
- // implementation of a table cell
- ::rtl::OUString AccessibleGridControlTableCell::implGetText()
- {
- ensureIsAlive();
- return m_aTable.GetAccessibleCellText( getRowPos(), getColumnPos() );
- }
-
- ::com::sun::star::lang::Locale AccessibleGridControlTableCell::implGetLocale()
- {
- ensureIsAlive();
- return m_aTable.GetAccessible()->getAccessibleContext()->getLocale();
- }
-
- void AccessibleGridControlTableCell::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
- {
- nStartIndex = 0;
- nEndIndex = 0;
- }
-
- AccessibleGridControlTableCell::AccessibleGridControlTableCell(const Reference<XAccessible >& _rxParent,
- IAccessibleTable& _rTable,
- sal_Int32 _nRowPos,
- sal_uInt16 _nColPos,
- AccessibleTableControlObjType eObjType)
- :AccessibleGridControlCell( _rxParent, _rTable, _nRowPos, _nColPos, eObjType )
- {
- }
-
- // XInterface -------------------------------------------------------------
-
- /** Queries for a new interface. */
- ::com::sun::star::uno::Any SAL_CALL AccessibleGridControlTableCell::queryInterface(
- const ::com::sun::star::uno::Type& rType )
- throw ( ::com::sun::star::uno::RuntimeException )
- {
- Any aRet = AccessibleGridControlCell::queryInterface(rType);
- if ( !aRet.hasValue() )
- aRet = AccessibleTextHelper_BASE::queryInterface(rType);
- return aRet;
- }
-
- /** Aquires the object (calls acquire() on base class). */
- void SAL_CALL AccessibleGridControlTableCell::acquire() throw ()
- {
- AccessibleGridControlCell::acquire();
- }
-
- /** Releases the object (calls release() on base class). */
- void SAL_CALL AccessibleGridControlTableCell::release() throw ()
- {
- AccessibleGridControlCell::release();
- }
-
- ::com::sun::star::awt::Rectangle SAL_CALL AccessibleGridControlTableCell::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- ensureIsAlive();
- if ( !implIsValidIndex( nIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- ::com::sun::star::awt::Rectangle aRect;
-
- if ( &m_aTable )
- aRect = AWTRectangle( m_aTable.GetFieldCharacterBounds( getRowPos(), getColumnPos(), nIndex ) );
- return aRect;
- }
-
- sal_Int32 SAL_CALL AccessibleGridControlTableCell::getIndexAtPoint( const ::com::sun::star::awt::Point& _aPoint ) throw (RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- return m_aTable.GetFieldIndexAtPoint( getRowPos(), getColumnPos(), VCLPoint( _aPoint ) );
- }
-
- /** @return
- The name of this class.
- */
- ::rtl::OUString SAL_CALL AccessibleGridControlTableCell::getImplementationName()
- throw ( ::com::sun::star::uno::RuntimeException )
- {
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleGridControlTableCell" ) );
- }
-
- /** @return The count of visible children. */
- sal_Int32 SAL_CALL AccessibleGridControlTableCell::getAccessibleChildCount()
- throw ( ::com::sun::star::uno::RuntimeException )
- {
- return 0;
- }
-
- /** @return The XAccessible interface of the specified child. */
- ::com::sun::star::uno::Reference<
- ::com::sun::star::accessibility::XAccessible > SAL_CALL
- AccessibleGridControlTableCell::getAccessibleChild( sal_Int32 )
- throw ( ::com::sun::star::lang::IndexOutOfBoundsException,
- ::com::sun::star::uno::RuntimeException )
- {
- throw ::com::sun::star::lang::IndexOutOfBoundsException();
- }
-
- /** Creates a new AccessibleStateSetHelper and fills it with states of the
- current object.
- @return
- A filled AccessibleStateSetHelper.
- */
- ::utl::AccessibleStateSetHelper* AccessibleGridControlTableCell::implCreateStateSetHelper()
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- ::utl::AccessibleStateSetHelper* pStateSetHelper = new ::utl::AccessibleStateSetHelper;
-
- if( isAlive() )
- {
- // SHOWING done with mxParent
- if( implIsShowing() )
- pStateSetHelper->AddState( AccessibleStateType::SHOWING );
-
- m_aTable.FillAccessibleStateSetForCell( *pStateSetHelper, getRowPos(), static_cast< sal_uInt16 >( getColumnPos() ) );
- }
- else
- pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
-
- return pStateSetHelper;
- }
-
-
- // XAccessible ------------------------------------------------------------
-
- /** @return The XAccessibleContext interface of this object. */
- Reference< XAccessibleContext > SAL_CALL AccessibleGridControlTableCell::getAccessibleContext() throw ( RuntimeException )
- {
- ensureIsAlive();
- return this;
- }
-
- // XAccessibleContext -----------------------------------------------------
-
- sal_Int32 SAL_CALL AccessibleGridControlTableCell::getAccessibleIndexInParent()
- throw ( ::com::sun::star::uno::RuntimeException )
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- return ( getRowPos() * m_aTable.GetColumnCount() ) + getColumnPos();
- }
-
- sal_Int32 SAL_CALL AccessibleGridControlTableCell::getCaretPosition( ) throw (::com::sun::star::uno::RuntimeException)
- {
- return -1;
- }
- sal_Bool SAL_CALL AccessibleGridControlTableCell::setCaretPosition ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
- }
- sal_Unicode SAL_CALL AccessibleGridControlTableCell::getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getCharacter( nIndex );
- }
- ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL AccessibleGridControlTableCell::getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- ::rtl::OUString sText( implGetText() );
-
- if ( !implIsValidIndex( nIndex, sText.getLength() ) )
- throw IndexOutOfBoundsException();
-
- return ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >();
- }
- sal_Int32 SAL_CALL AccessibleGridControlTableCell::getCharacterCount( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getCharacterCount( );
- }
-
- ::rtl::OUString SAL_CALL AccessibleGridControlTableCell::getSelectedText( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getSelectedText( );
- }
- sal_Int32 SAL_CALL AccessibleGridControlTableCell::getSelectionStart( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getSelectionStart( );
- }
- sal_Int32 SAL_CALL AccessibleGridControlTableCell::getSelectionEnd( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getSelectionEnd( );
- }
- sal_Bool SAL_CALL AccessibleGridControlTableCell::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
- }
- ::rtl::OUString SAL_CALL AccessibleGridControlTableCell::getText( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getText( );
- }
- ::rtl::OUString SAL_CALL AccessibleGridControlTableCell::getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getTextRange( nStartIndex, nEndIndex );
- }
- ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleGridControlTableCell::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getTextAtIndex( nIndex ,aTextType);
- }
- ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleGridControlTableCell::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getTextBeforeIndex( nIndex ,aTextType);
- }
- ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleGridControlTableCell::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- return OCommonAccessibleText::getTextBehindIndex( nIndex ,aTextType);
- }
- sal_Bool SAL_CALL AccessibleGridControlTableCell::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ::rtl::OUString sText = implGetText();
- checkIndex_Impl( nStartIndex, sText );
- checkIndex_Impl( nEndIndex, sText );
-
- //!!! don't know how to put a string into the clipboard
- return sal_False;
- }
-
- Rectangle AccessibleGridControlTableCell::implGetBoundingBox()
- {
- return Rectangle(Point(0,0),Point(0,0));//To Do - return headercell rectangle
- }
- // -----------------------------------------------------------------------------
- Rectangle AccessibleGridControlTableCell::implGetBoundingBoxOnScreen()
- {
- return Rectangle(Point(0,0),Point(0,0));//To Do - return headercell rectangle
- }
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/AccessibleToolPanelDeck.cxx b/accessibility/source/extended/AccessibleToolPanelDeck.cxx
deleted file mode 100644
index 9dcb47cca..000000000
--- a/accessibility/source/extended/AccessibleToolPanelDeck.cxx
+++ /dev/null
@@ -1,410 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#include "precompiled_accessibility.hxx"
-
-#include "accessibility/extended/AccessibleToolPanelDeck.hxx"
-
-/** === begin UNO includes === **/
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/lang/DisposedException.hpp>
-/** === end UNO includes === **/
-
-#include <svtools/toolpanel/toolpaneldeck.hxx>
-#include <toolkit/awt/vclxwindow.hxx>
-#include <toolkit/helper/vclunohelper.hxx>
-#include <vcl/svapp.hxx>
-#include <osl/mutex.hxx>
-#include <unotools/accessiblestatesethelper.hxx>
-#include <tools/diagnose_ex.h>
-
-#include <boost/noncopyable.hpp>
-#include <vector>
-
-//......................................................................................................................
-namespace accessibility
-{
-//......................................................................................................................
-
- /** === begin UNO using === **/
- using ::com::sun::star::uno::Reference;
- using ::com::sun::star::uno::XInterface;
- using ::com::sun::star::uno::UNO_QUERY;
- using ::com::sun::star::uno::UNO_QUERY_THROW;
- using ::com::sun::star::uno::UNO_SET_THROW;
- using ::com::sun::star::uno::Exception;
- using ::com::sun::star::uno::RuntimeException;
- using ::com::sun::star::uno::Any;
- using ::com::sun::star::uno::makeAny;
- using ::com::sun::star::uno::Sequence;
- using ::com::sun::star::uno::Type;
- using ::com::sun::star::accessibility::XAccessible;
- using ::com::sun::star::accessibility::XAccessibleContext;
- using ::com::sun::star::lang::DisposedException;
- using ::com::sun::star::lang::IndexOutOfBoundsException;
- using ::com::sun::star::lang::Locale;
- using ::com::sun::star::accessibility::XAccessibleRelationSet;
- using ::com::sun::star::accessibility::XAccessibleStateSet;
- using ::com::sun::star::accessibility::IllegalAccessibleComponentStateException;
- using ::com::sun::star::awt::XFont;
- /** === end UNO using === **/
- namespace AccessibleRole = ::com::sun::star::accessibility::AccessibleRole;
- namespace AccessibleEventId = ::com::sun::star::accessibility::AccessibleEventId;
- namespace AccessibleStateType = ::com::sun::star::accessibility::AccessibleStateType;
-
- typedef ::com::sun::star::awt::Rectangle UnoRectangle;
- typedef ::com::sun::star::awt::Point UnoPoint;
-
- //==================================================================================================================
- //= AccessibleToolPanelDeck_Impl - declaration
- //==================================================================================================================
- class AccessibleToolPanelDeck_Impl :public ::boost::noncopyable
- ,public ::svt::IToolPanelDeckListener
- {
- public:
- AccessibleToolPanelDeck_Impl(
- AccessibleToolPanelDeck& i_rAntiImpl,
- const Reference< XAccessible >& i_rAccessibleParent,
- ::svt::ToolPanelDeck& i_rPanelDeck
- );
-
- void checkDisposed();
- bool isDisposed() const { return m_pPanelDeck == NULL; }
- void dispose();
-
- ~AccessibleToolPanelDeck_Impl();
-
- Reference< XAccessible > getOwnAccessible() const;
- Reference< XAccessible > getActivePanelAccessible();
-
- protected:
- // IToolPanelDeckListener
- virtual void PanelInserted( const ::svt::PToolPanel& i_pPanel, const size_t i_nPosition );
- virtual void PanelRemoved( const size_t i_nPosition );
- virtual void ActivePanelChanged( const ::boost::optional< size_t >& i_rOldActive, const ::boost::optional< size_t >& i_rNewActive );
- virtual void LayouterChanged( const ::svt::PDeckLayouter& i_rNewLayouter );
- virtual void Dying();
-
- public:
- AccessibleToolPanelDeck& m_rAntiImpl;
- Reference< XAccessible > m_xAccessibleParent;
- ::svt::ToolPanelDeck* m_pPanelDeck;
-
- typedef ::std::vector< Reference< XAccessible > > AccessibleChildren;
- Reference< XAccessible > m_xActivePanelAccessible;
- };
-
- //==================================================================================================================
- //= MethodGuard
- //==================================================================================================================
- namespace
- {
- class MethodGuard
- {
- public:
- MethodGuard( AccessibleToolPanelDeck_Impl& i_rImpl )
- :m_aGuard()
- {
- i_rImpl.checkDisposed();
- }
- ~MethodGuard()
- {
- }
-
- private:
- SolarMutexGuard m_aGuard;
- };
- }
-
- //==================================================================================================================
- //= AccessibleToolPanelDeck_Impl - implementation
- //==================================================================================================================
- //------------------------------------------------------------------------------------------------------------------
- AccessibleToolPanelDeck_Impl::AccessibleToolPanelDeck_Impl( AccessibleToolPanelDeck& i_rAntiImpl, const Reference< XAccessible >& i_rAccessibleParent,
- ::svt::ToolPanelDeck& i_rPanelDeck )
- :m_rAntiImpl( i_rAntiImpl )
- ,m_xAccessibleParent( i_rAccessibleParent )
- ,m_pPanelDeck( &i_rPanelDeck )
- ,m_xActivePanelAccessible()
- {
- m_pPanelDeck->AddListener( *this );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- AccessibleToolPanelDeck_Impl::~AccessibleToolPanelDeck_Impl()
- {
- if ( !isDisposed() )
- dispose();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelDeck_Impl::dispose()
- {
- ENSURE_OR_RETURN_VOID( !isDisposed(), "disposed twice" );
- m_pPanelDeck->RemoveListener( *this );
- m_pPanelDeck = NULL;
- m_xAccessibleParent.clear();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelDeck_Impl::checkDisposed()
- {
- if ( isDisposed() )
- throw DisposedException( ::rtl::OUString(), *&m_rAntiImpl );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- Reference< XAccessible > AccessibleToolPanelDeck_Impl::getOwnAccessible() const
- {
- Reference< XAccessible > xOwnAccessible( static_cast< XAccessible* >( m_rAntiImpl.GetVCLXWindow() ) );
- OSL_ENSURE( xOwnAccessible->getAccessibleContext() == Reference< XAccessibleContext >( &m_rAntiImpl ),
- "AccessibleToolPanelDeck_Impl::getOwnAccessible: could not retrieve proper XAccessible for /myself!" );
- return xOwnAccessible;
- }
-
- //------------------------------------------------------------------------------------------------------------------
- Reference< XAccessible > AccessibleToolPanelDeck_Impl::getActivePanelAccessible()
- {
- ENSURE_OR_RETURN( !isDisposed(), "AccessibleToolPanelDeck_Impl::getActivePanelAccessible: already disposed!", NULL );
-
- if ( !m_xActivePanelAccessible.is() )
- {
- ::boost::optional< size_t > aActivePanel( m_pPanelDeck->GetActivePanel() );
- ENSURE_OR_RETURN( !!aActivePanel, "AccessibleToolPanelDeck_Impl::getActivePanelAccessible: this should not be called without an active panel!", NULL );
- ::svt::PToolPanel pActivePanel( m_pPanelDeck->GetPanel( *aActivePanel ) );
- ENSURE_OR_RETURN( pActivePanel.get() != NULL, "AccessibleToolPanelDeck_Impl::getActivePanelAccessible: no active panel!", NULL );
- m_xActivePanelAccessible = pActivePanel->CreatePanelAccessible( getOwnAccessible() );
- OSL_ENSURE( m_xActivePanelAccessible.is(), "AccessibleToolPanelDeck_Impl::getActivePanelAccessible: illegal accessible returned by the panel!" );
- }
-
- return m_xActivePanelAccessible;
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelDeck_Impl::PanelInserted( const ::svt::PToolPanel& i_pPanel, const size_t i_nPosition )
- {
- (void)i_pPanel;
- (void)i_nPosition;
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelDeck_Impl::PanelRemoved( const size_t i_nPosition )
- {
- (void)i_nPosition;
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelDeck_Impl::ActivePanelChanged( const ::boost::optional< size_t >& i_rOldActive, const ::boost::optional< size_t >& i_rNewActive )
- {
- if ( !!i_rOldActive )
- {
- if ( !m_xActivePanelAccessible.is() )
- {
- // again, this might in theory happen if the XAccessible for the active panel has never before been requested.
- // In this case, just say that all our children are invalid, so they all must be re-requested.
- m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::INVALIDATE_ALL_CHILDREN, Any(), Any() );
- }
- else
- {
- m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::CHILD, makeAny( m_xActivePanelAccessible ), Any() );
- }
- }
-
- m_xActivePanelAccessible.clear();
-
- if ( !!i_rNewActive )
- {
- m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::CHILD, Any(), makeAny( getActivePanelAccessible() ) );
- }
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelDeck_Impl::LayouterChanged( const ::svt::PDeckLayouter& i_rNewLayouter )
- {
- MethodGuard aGuard( *this );
-
- (void)i_rNewLayouter;
- m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::INVALIDATE_ALL_CHILDREN, Any(), Any() );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelDeck_Impl::Dying()
- {
- // the tool panel deck is dying, so dispose ourself
- m_rAntiImpl.dispose();
- }
-
- //==================================================================================================================
- //= AccessibleToolPanelDeck
- //==================================================================================================================
- //------------------------------------------------------------------------------------------------------------------
- AccessibleToolPanelDeck::AccessibleToolPanelDeck( const Reference< XAccessible >& i_rAccessibleParent,
- ::svt::ToolPanelDeck& i_rPanelDeck )
- :AccessibleToolPanelDeck_Base( i_rPanelDeck.GetWindowPeer() )
- ,m_pImpl( new AccessibleToolPanelDeck_Impl( *this, i_rAccessibleParent, i_rPanelDeck ) )
- {
- }
-
- //------------------------------------------------------------------------------------------------------------------
- AccessibleToolPanelDeck::~AccessibleToolPanelDeck()
- {
- }
-
- //------------------------------------------------------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleToolPanelDeck::getAccessibleChildCount( ) throw (RuntimeException)
- {
- MethodGuard aGuard( *m_pImpl );
-
- sal_Int32 nChildCount( m_pImpl->m_pPanelDeck->GetLayouter()->GetAccessibleChildCount() );
-
- ::boost::optional< size_t > aActivePanel( m_pImpl->m_pPanelDeck->GetActivePanel() );
- if ( !!aActivePanel )
- return ++nChildCount;
-
- return nChildCount;
- }
-
- //------------------------------------------------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleToolPanelDeck::getAccessibleChild( sal_Int32 i_nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- MethodGuard aGuard( *m_pImpl );
-
- const sal_Int32 nChildCount( getAccessibleChildCount() );
- if ( ( i_nIndex < 0 ) || ( i_nIndex >= nChildCount ) )
- throw IndexOutOfBoundsException( ::rtl::OUString(), *this );
-
- // first "n" children are provided by the layouter
- const size_t nLayouterCount( m_pImpl->m_pPanelDeck->GetLayouter()->GetAccessibleChildCount() );
- if ( size_t( i_nIndex ) < nLayouterCount )
- return m_pImpl->m_pPanelDeck->GetLayouter()->GetAccessibleChild(
- size_t( i_nIndex ),
- m_pImpl->getOwnAccessible()
- );
-
- // the last child is the XAccessible of the active panel
- return m_pImpl->getActivePanelAccessible();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleToolPanelDeck::getAccessibleParent( ) throw (RuntimeException)
- {
- MethodGuard aGuard( *m_pImpl );
- const Reference< XAccessible > xParent = implGetForeignControlledParent();
- if ( xParent.is() )
- return xParent;
- return m_pImpl->m_xAccessibleParent;
- }
-
- //------------------------------------------------------------------------------------------------------------------
- sal_Int16 SAL_CALL AccessibleToolPanelDeck::getAccessibleRole( ) throw (RuntimeException)
- {
- MethodGuard aGuard( *m_pImpl );
- return AccessibleRole::PANEL;
- }
-
- //------------------------------------------------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleToolPanelDeck::getAccessibleAtPoint( const UnoPoint& i_rPoint ) throw (RuntimeException)
- {
- MethodGuard aGuard( *m_pImpl );
-
- const ::Point aRequestedPoint( VCLUnoHelper::ConvertToVCLPoint( i_rPoint ) );
- // check the panel window itself
- const ::Window& rActivePanelAnchor( m_pImpl->m_pPanelDeck->GetPanelWindowAnchor() );
- const Rectangle aPanelAnchorArea( rActivePanelAnchor.GetPosPixel(), rActivePanelAnchor.GetOutputSizePixel() );
- if ( aPanelAnchorArea.IsInside( aRequestedPoint ) )
- // note that this assumes that the Window which actually implements the concrete panel covers
- // the complete area of its "anchor" Window. But this is ensured by the ToolPanelDeck implementation.
- return m_pImpl->getActivePanelAccessible();
-
- // check the XAccessible instances provided by the layouter
- try
- {
- const ::svt::PDeckLayouter pLayouter( m_pImpl->m_pPanelDeck->GetLayouter() );
- ENSURE_OR_THROW( pLayouter.get() != NULL, "invalid layouter" );
-
- const size_t nLayouterChildren = pLayouter->GetAccessibleChildCount();
- for ( size_t i=0; i<nLayouterChildren; ++i )
- {
- const Reference< XAccessible > xLayoutItemAccessible( pLayouter->GetAccessibleChild( i, m_pImpl->getOwnAccessible() ), UNO_SET_THROW );
- const Reference< XAccessibleComponent > xLayoutItemComponent( xLayoutItemAccessible->getAccessibleContext(), UNO_QUERY_THROW );
- const ::Rectangle aLayoutItemBounds( VCLUnoHelper::ConvertToVCLRect( xLayoutItemComponent->getBounds() ) );
- if ( aLayoutItemBounds.IsInside( aRequestedPoint ) )
- return xLayoutItemAccessible;
- }
- }
- catch( const Exception& )
- {
- DBG_UNHANDLED_EXCEPTION();
- }
-
- return NULL;
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL AccessibleToolPanelDeck::grabFocus( ) throw (RuntimeException)
- {
- MethodGuard aGuard( *m_pImpl );
- m_pImpl->m_pPanelDeck->GrabFocus();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL AccessibleToolPanelDeck::disposing()
- {
- AccessibleToolPanelDeck_Base::disposing();
- m_pImpl->dispose();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- Reference< XAccessible > AccessibleToolPanelDeck::GetChildAccessible( const VclWindowEvent& i_rVclWindowEvent )
- {
- // don't let the base class generate any A11Y events from VclWindowEvent, we completely manage those
- // A11Y events ourself
- (void)i_rVclWindowEvent;
- return NULL;
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelDeck::FillAccessibleStateSet( ::utl::AccessibleStateSetHelper& i_rStateSet )
- {
- AccessibleToolPanelDeck_Base::FillAccessibleStateSet( i_rStateSet );
- if ( m_pImpl->isDisposed() )
- {
- i_rStateSet.AddState( AccessibleStateType::DEFUNC );
- }
- else
- {
- i_rStateSet.AddState( AccessibleStateType::FOCUSABLE );
- }
- }
-
-//......................................................................................................................
-} // namespace accessibility
-//......................................................................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/AccessibleToolPanelDeckTabBar.cxx b/accessibility/source/extended/AccessibleToolPanelDeckTabBar.cxx
deleted file mode 100644
index 386a60d9b..000000000
--- a/accessibility/source/extended/AccessibleToolPanelDeckTabBar.cxx
+++ /dev/null
@@ -1,457 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#include "precompiled_accessibility.hxx"
-
-#include "accessibility/extended/AccessibleToolPanelDeckTabBar.hxx"
-#include "accessibility/extended/AccessibleToolPanelDeckTabBarItem.hxx"
-#include "accessibility/helper/accresmgr.hxx"
-#include "accessibility/helper/accessiblestrings.hrc"
-
-/** === begin UNO includes === **/
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/lang/DisposedException.hpp>
-/** === end UNO includes === **/
-
-#include <svtools/toolpanel/toolpaneldeck.hxx>
-#include <svtools/toolpanel/paneltabbar.hxx>
-#include <unotools/accessiblestatesethelper.hxx>
-#include <toolkit/awt/vclxwindow.hxx>
-#include <toolkit/helper/vclunohelper.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/button.hxx>
-#include <osl/mutex.hxx>
-#include <tools/diagnose_ex.h>
-
-#include <vector>
-
-//......................................................................................................................
-namespace accessibility
-{
-//......................................................................................................................
-
- /** === begin UNO using === **/
- using ::com::sun::star::uno::Reference;
- using ::com::sun::star::uno::XInterface;
- using ::com::sun::star::uno::UNO_QUERY;
- using ::com::sun::star::uno::UNO_QUERY_THROW;
- using ::com::sun::star::uno::UNO_SET_THROW;
- using ::com::sun::star::uno::Exception;
- using ::com::sun::star::uno::RuntimeException;
- using ::com::sun::star::uno::Any;
- using ::com::sun::star::uno::makeAny;
- using ::com::sun::star::uno::Sequence;
- using ::com::sun::star::uno::Type;
- using ::com::sun::star::accessibility::XAccessible;
- using ::com::sun::star::lang::DisposedException;
- using ::com::sun::star::lang::IndexOutOfBoundsException;
- using ::com::sun::star::accessibility::XAccessibleContext;
- /** === end UNO using === **/
-
- namespace AccessibleRole = ::com::sun::star::accessibility::AccessibleRole;
- namespace AccessibleEventId = ::com::sun::star::accessibility::AccessibleEventId;
- namespace AccessibleStateType = ::com::sun::star::accessibility::AccessibleStateType;
-
- typedef ::com::sun::star::awt::Point UnoPoint;
- typedef ::com::sun::star::awt::Size UnoSize;
- typedef ::com::sun::star::awt::Rectangle UnoRectangle;
-
- //==================================================================================================================
- //= AccessibleWrapper
- //==================================================================================================================
- typedef ::cppu::WeakImplHelper1< XAccessible > AccessibleWrapper_Base;
- class AccessibleWrapper : public AccessibleWrapper_Base
- {
- public:
- AccessibleWrapper( const Reference< XAccessibleContext >& i_rContext )
- :m_xContext( i_rContext )
- {
- }
-
- // XAccessible
- virtual Reference< XAccessibleContext > SAL_CALL getAccessibleContext( ) throw (RuntimeException)
- {
- return m_xContext;
- }
-
- private:
- const Reference< XAccessibleContext > m_xContext;
- };
-
- //==================================================================================================================
- //= AccessibleToolPanelTabBar_Impl
- //==================================================================================================================
- class AccessibleToolPanelTabBar_Impl :public ::boost::noncopyable
- ,public ::svt::IToolPanelDeckListener
- {
- public:
- AccessibleToolPanelTabBar_Impl(
- AccessibleToolPanelTabBar& i_rAntiImpl,
- const Reference< XAccessible >& i_rAccessibleParent,
- ::svt::IToolPanelDeck& i_rPanelDeck,
- ::svt::PanelTabBar& i_rTabBar
- );
- ~AccessibleToolPanelTabBar_Impl();
-
- void checkDisposed();
- bool isDisposed() const { return m_pPanelDeck == NULL; }
- void dispose();
-
- ::svt::IToolPanelDeck* getPanelDeck() const { return m_pPanelDeck; }
- ::svt::PanelTabBar* getTabBar() const { return m_pTabBar; }
- const Reference< XAccessible >& getAccessibleParent() const { return m_xAccessibleParent; }
- Reference< XAccessible > getAccessiblePanelItem( size_t i_nPosition );
- Reference< XAccessible > getOwnAccessible() const;
-
- protected:
- // IToolPanelDeckListener
- virtual void PanelInserted( const ::svt::PToolPanel& i_pPanel, const size_t i_nPosition );
- virtual void PanelRemoved( const size_t i_nPosition );
- virtual void ActivePanelChanged( const ::boost::optional< size_t >& i_rOldActive, const ::boost::optional< size_t >& i_rNewActive );
- virtual void LayouterChanged( const ::svt::PDeckLayouter& i_rNewLayouter );
- virtual void Dying();
-
- DECL_LINK( OnWindowEvent, const VclSimpleEvent* );
-
- private:
- AccessibleToolPanelTabBar& m_rAntiImpl;
- Reference< XAccessible > m_xAccessibleParent;
- ::svt::IToolPanelDeck* m_pPanelDeck;
- ::svt::PanelTabBar* m_pTabBar;
- ::std::vector< Reference< XAccessible > > m_aChildren;
- };
-
- //------------------------------------------------------------------------------------------------------------------
- AccessibleToolPanelTabBar_Impl::AccessibleToolPanelTabBar_Impl( AccessibleToolPanelTabBar& i_rAntiImpl,
- const Reference< XAccessible >& i_rAccessibleParent, ::svt::IToolPanelDeck& i_rPanelDeck, ::svt::PanelTabBar& i_rTabBar )
- :m_rAntiImpl( i_rAntiImpl )
- ,m_xAccessibleParent( i_rAccessibleParent )
- ,m_pPanelDeck( &i_rPanelDeck )
- ,m_pTabBar( &i_rTabBar )
- ,m_aChildren()
- {
- m_pPanelDeck->AddListener( *this );
- m_aChildren.resize( m_pPanelDeck->GetPanelCount() );
-
- const String sAccessibleDescription( TK_RES_STRING( RID_STR_ACC_DESC_PANELDECL_TABBAR ) );
- i_rTabBar.SetAccessibleName( sAccessibleDescription );
- i_rTabBar.SetAccessibleDescription( sAccessibleDescription );
-
- i_rTabBar.GetScrollButton( true ).AddEventListener( LINK( this, AccessibleToolPanelTabBar_Impl, OnWindowEvent ) );
- i_rTabBar.GetScrollButton( false ).AddEventListener( LINK( this, AccessibleToolPanelTabBar_Impl, OnWindowEvent ) );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelTabBar_Impl::checkDisposed()
- {
- if ( isDisposed() )
- throw DisposedException( ::rtl::OUString(), *&m_rAntiImpl );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- AccessibleToolPanelTabBar_Impl::~AccessibleToolPanelTabBar_Impl()
- {
- if ( !isDisposed() )
- dispose();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelTabBar_Impl::dispose()
- {
- ENSURE_OR_RETURN_VOID( !isDisposed(), "disposed twice" );
- m_pPanelDeck->RemoveListener( *this );
- m_pPanelDeck = NULL;
-
- m_pTabBar->GetScrollButton( true ).RemoveEventListener( LINK( this, AccessibleToolPanelTabBar_Impl, OnWindowEvent ) );
- m_pTabBar->GetScrollButton( false ).RemoveEventListener( LINK( this, AccessibleToolPanelTabBar_Impl, OnWindowEvent ) );
- m_pTabBar = NULL;
-
- m_xAccessibleParent.clear();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- Reference< XAccessible > AccessibleToolPanelTabBar_Impl::getAccessiblePanelItem( size_t i_nPosition )
- {
- ENSURE_OR_RETURN( !isDisposed(), "AccessibleToolPanelTabBar_Impl::getAccessiblePanelItem: already disposed!", NULL );
- ENSURE_OR_RETURN( i_nPosition < m_aChildren.size(), "AccessibleToolPanelTabBar_Impl::getAccessiblePanelItem: invalid index!", NULL );
-
- Reference< XAccessible >& rAccessibleChild( m_aChildren[ i_nPosition ] );
- if ( !rAccessibleChild.is() )
- {
- ::rtl::Reference< AccessibleToolPanelDeckTabBarItem > pAccesibleItemContext( new AccessibleToolPanelDeckTabBarItem(
- getOwnAccessible(), *m_pPanelDeck, *m_pTabBar, i_nPosition ) );
- rAccessibleChild.set( new AccessibleWrapper( pAccesibleItemContext.get() ) );
- pAccesibleItemContext->lateInit( rAccessibleChild );
- }
- return rAccessibleChild;
- }
-
- //------------------------------------------------------------------------------------------------------------------
- Reference< XAccessible > AccessibleToolPanelTabBar_Impl::getOwnAccessible() const
- {
- Reference< XAccessible > xOwnAccessible( static_cast< XAccessible* >( m_rAntiImpl.GetVCLXWindow() ) );
- OSL_ENSURE( xOwnAccessible->getAccessibleContext() == Reference< XAccessibleContext >( &m_rAntiImpl ),
- "AccessibleToolPanelTabBar_Impl::getOwnAccessible: could not retrieve proper XAccessible for /myself!" );
- return xOwnAccessible;
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelTabBar_Impl::PanelInserted( const ::svt::PToolPanel& i_pPanel, const size_t i_nPosition )
- {
- ENSURE_OR_RETURN_VOID( i_nPosition <= m_aChildren.size(), "AccessibleToolPanelTabBar_Impl::PanelInserted: illegal position (or invalid cache!)" );
- (void)i_pPanel;
- m_aChildren.insert( m_aChildren.begin() + i_nPosition, NULL );
- m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::CHILD, Any(), makeAny( getAccessiblePanelItem( i_nPosition ) ) );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelTabBar_Impl::PanelRemoved( const size_t i_nPosition )
- {
- ENSURE_OR_RETURN_VOID( i_nPosition < m_aChildren.size(), "AccessibleToolPanelTabBar_Impl::PanelInserted: illegal position (or invalid cache!)" );
-
- const Reference< XAccessible > xOldChild( getAccessiblePanelItem( i_nPosition ) );
- m_aChildren.erase( m_aChildren.begin() + i_nPosition );
- m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::CHILD, makeAny( xOldChild ), Any() );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelTabBar_Impl::ActivePanelChanged( const ::boost::optional< size_t >& i_rOldActive, const ::boost::optional< size_t >& i_rNewActive )
- {
- (void)i_rOldActive;
- (void)i_rNewActive;
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelTabBar_Impl::LayouterChanged( const ::svt::PDeckLayouter& i_rNewLayouter )
- {
- (void)i_rNewLayouter;
- m_rAntiImpl.dispose();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelTabBar_Impl::Dying()
- {
- m_rAntiImpl.dispose();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- IMPL_LINK( AccessibleToolPanelTabBar_Impl, OnWindowEvent, const VclSimpleEvent*, i_pEvent )
- {
- ENSURE_OR_RETURN( !isDisposed(), "AccessibleToolPanelTabBar_Impl::OnWindowEvent: already disposed!", 0L );
-
- const VclWindowEvent* pWindowEvent( dynamic_cast< const VclWindowEvent* >( i_pEvent ) );
- if ( !pWindowEvent )
- return 0L;
-
- const bool bForwardButton = ( pWindowEvent->GetWindow() == &m_pTabBar->GetScrollButton( true ) );
- const bool bBackwardButton = ( pWindowEvent->GetWindow() == &m_pTabBar->GetScrollButton( false ) );
- ENSURE_OR_RETURN( bForwardButton || bBackwardButton, "AccessibleToolPanelTabBar_Impl::OnWindowEvent: where does this come from?", 0L );
-
- const bool bShow = ( i_pEvent->GetId() == VCLEVENT_WINDOW_SHOW );
- const bool bHide = ( i_pEvent->GetId() == VCLEVENT_WINDOW_HIDE );
- if ( !bShow && !bHide )
- // not interested in events other than visibility changes
- return 0L;
-
- const Reference< XAccessible > xButtonAccessible( m_pTabBar->GetScrollButton( bForwardButton ).GetAccessible() );
- const Any aOldChild( bHide ? xButtonAccessible : Reference< XAccessible >() );
- const Any aNewChild( bShow ? xButtonAccessible : Reference< XAccessible >() );
- m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldChild, aNewChild );
-
- return 1L;
- }
-
- //==================================================================================================================
- //= MethodGuard
- //==================================================================================================================
- namespace
- {
- class MethodGuard
- {
- public:
- MethodGuard( AccessibleToolPanelTabBar_Impl& i_rImpl )
- :m_aGuard()
- {
- i_rImpl.checkDisposed();
- }
- ~MethodGuard()
- {
- }
-
- private:
- SolarMutexGuard m_aGuard;
- };
- }
-
- //==================================================================================================================
- //= AccessibleToolPanelTabBar
- //==================================================================================================================
- //------------------------------------------------------------------------------------------------------------------
- AccessibleToolPanelTabBar::AccessibleToolPanelTabBar( const Reference< XAccessible >& i_rAccessibleParent,
- ::svt::IToolPanelDeck& i_rPanelDeck, ::svt::PanelTabBar& i_rTabBar )
- :AccessibleToolPanelTabBar_Base( i_rTabBar.GetWindowPeer() )
- ,m_pImpl( new AccessibleToolPanelTabBar_Impl( *this, i_rAccessibleParent, i_rPanelDeck, i_rTabBar ) )
- {
- }
-
- //------------------------------------------------------------------------------------------------------------------
- AccessibleToolPanelTabBar::~AccessibleToolPanelTabBar()
- {
- }
-
- //------------------------------------------------------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleToolPanelTabBar::getAccessibleChildCount( ) throw (RuntimeException)
- {
- MethodGuard aGuard( *m_pImpl );
-
- const bool bHasScrollBack = m_pImpl->getTabBar()->GetScrollButton( false ).IsVisible();
- const bool bHasScrollForward = m_pImpl->getTabBar()->GetScrollButton( true ).IsVisible();
-
- return m_pImpl->getPanelDeck()->GetPanelCount()
- + ( bHasScrollBack ? 1 : 0 )
- + ( bHasScrollForward ? 1 : 0 );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleToolPanelTabBar::getAccessibleChild( sal_Int32 i_nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- MethodGuard aGuard( *m_pImpl );
-
- const bool bHasScrollBack = m_pImpl->getTabBar()->GetScrollButton( false ).IsVisible();
- const bool bHasScrollForward = m_pImpl->getTabBar()->GetScrollButton( true ).IsVisible();
-
- const bool bScrollBackRequested = ( bHasScrollBack && ( i_nIndex == 0 ) );
- const bool bScrollForwardRequested = ( bHasScrollForward && ( i_nIndex == getAccessibleChildCount() - 1 ) );
- OSL_ENSURE( !( bScrollBackRequested && bScrollForwardRequested ), "AccessibleToolPanelTabBar::getAccessibleChild: ouch!" );
-
- if ( bScrollBackRequested || bScrollForwardRequested )
- {
- Reference< XAccessible > xScrollButtonAccessible( m_pImpl->getTabBar()->GetScrollButton( bScrollForwardRequested ).GetAccessible() );
- ENSURE_OR_RETURN( xScrollButtonAccessible.is(), "AccessibleToolPanelTabBar::getAccessibleChild: invalid button accessible!", NULL );
- #if OSL_DEBUG_LEVEL > 0
- Reference< XAccessibleContext > xScrollButtonContext( xScrollButtonAccessible->getAccessibleContext() );
- ENSURE_OR_RETURN( xScrollButtonContext.is(), "AccessibleToolPanelTabBar::getAccessibleChild: invalid button accessible context!", xScrollButtonAccessible );
- OSL_ENSURE( xScrollButtonContext->getAccessibleParent() == m_pImpl->getOwnAccessible(),
- "AccessibleToolPanelTabBar::getAccessibleChild: wrong parent at the button's accesible!" );
- #endif
- return xScrollButtonAccessible;
- }
-
- return m_pImpl->getAccessiblePanelItem( i_nIndex - ( bHasScrollBack ? 1 : 0 ) );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleToolPanelTabBar::getAccessibleParent( ) throw (RuntimeException)
- {
- MethodGuard aGuard( *m_pImpl );
- return m_pImpl->getAccessibleParent();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- sal_Int16 SAL_CALL AccessibleToolPanelTabBar::getAccessibleRole( ) throw (RuntimeException)
- {
- MethodGuard aGuard( *m_pImpl );
- return AccessibleRole::PAGE_TAB_LIST;
- }
-
- //------------------------------------------------------------------------------------------------------------------
- namespace
- {
- bool lcl_covers( const ::Window& i_rWindow, const ::Point& i_rPoint )
- {
- const Rectangle aWindowBounds( i_rWindow.GetWindowExtentsRelative( i_rWindow.GetParent() ) );
- return aWindowBounds.IsInside( i_rPoint );
- }
- }
-
- //------------------------------------------------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleToolPanelTabBar::getAccessibleAtPoint( const UnoPoint& i_rPoint ) throw (RuntimeException)
- {
- MethodGuard aGuard( *m_pImpl );
-
- // check the tab items
- const UnoPoint aOwnScreenPos( getLocationOnScreen() );
- const ::Point aRequestedScreenPoint( i_rPoint.X + aOwnScreenPos.X, i_rPoint.Y + aOwnScreenPos.Y );
-
- for ( size_t i=0; i<m_pImpl->getPanelDeck()->GetPanelCount(); ++i )
- {
- const ::Rectangle aItemScreenRect( m_pImpl->getTabBar()->GetItemScreenRect(i) );
- if ( aItemScreenRect.IsInside( aRequestedScreenPoint ) )
- return m_pImpl->getAccessiblePanelItem(i);
- }
-
- // check the scroll buttons
- const ::Point aRequestedClientPoint( VCLUnoHelper::ConvertToVCLPoint( i_rPoint ) );
-
- const bool bHasScrollBack = m_pImpl->getTabBar()->GetScrollButton( false ).IsVisible();
- if ( bHasScrollBack && lcl_covers( m_pImpl->getTabBar()->GetScrollButton( false ), aRequestedClientPoint ) )
- return m_pImpl->getTabBar()->GetScrollButton( false ).GetAccessible();
-
- const bool bHasScrollForward = m_pImpl->getTabBar()->GetScrollButton( true ).IsVisible();
- if ( bHasScrollForward && lcl_covers( m_pImpl->getTabBar()->GetScrollButton( true ), aRequestedClientPoint ) )
- return m_pImpl->getTabBar()->GetScrollButton( true ).GetAccessible();
-
- // no hit
- return NULL;
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void SAL_CALL AccessibleToolPanelTabBar::disposing()
- {
- AccessibleToolPanelTabBar_Base::disposing();
- m_pImpl->dispose();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- Reference< XAccessible > AccessibleToolPanelTabBar::GetChildAccessible( const VclWindowEvent& i_rVclWindowEvent )
- {
- // don't let the base class generate any A11Y events from VclWindowEvent, we completely manage those
- // A11Y events ourself
- (void)i_rVclWindowEvent;
- return NULL;
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelTabBar::FillAccessibleStateSet( ::utl::AccessibleStateSetHelper& i_rStateSet )
- {
- AccessibleToolPanelTabBar_Base::FillAccessibleStateSet( i_rStateSet );
- i_rStateSet.AddState( AccessibleStateType::FOCUSABLE );
-
- ENSURE_OR_RETURN_VOID( !m_pImpl->isDisposed(), "AccessibleToolPanelTabBar::FillAccessibleStateSet: already disposed!" );
- if ( m_pImpl->getTabBar()->IsVertical() )
- i_rStateSet.AddState( AccessibleStateType::VERTICAL );
- else
- i_rStateSet.AddState( AccessibleStateType::HORIZONTAL );
- }
-
-//......................................................................................................................
-} // namespace accessibility
-//......................................................................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/AccessibleToolPanelDeckTabBarItem.cxx b/accessibility/source/extended/AccessibleToolPanelDeckTabBarItem.cxx
deleted file mode 100644
index 5344a51fe..000000000
--- a/accessibility/source/extended/AccessibleToolPanelDeckTabBarItem.cxx
+++ /dev/null
@@ -1,453 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#include "precompiled_accessibility.hxx"
-
-#include "accessibility/extended/AccessibleToolPanelDeckTabBarItem.hxx"
-
-/** === begin UNO includes === **/
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/lang/DisposedException.hpp>
-/** === end UNO includes === **/
-
-#include <svtools/toolpanel/toolpaneldeck.hxx>
-#include <svtools/toolpanel/paneltabbar.hxx>
-#include <unotools/accessiblestatesethelper.hxx>
-#include <unotools/accessiblerelationsethelper.hxx>
-#include <tools/diagnose_ex.h>
-#include <vcl/svapp.hxx>
-#include <osl/mutex.hxx>
-
-//......................................................................................................................
-namespace accessibility
-{
-//......................................................................................................................
-
- typedef ::com::sun::star::awt::Rectangle UnoRectangle;
- typedef ::com::sun::star::awt::Point UnoPoint;
-
- /** === begin UNO using === **/
- using ::com::sun::star::uno::Reference;
- using ::com::sun::star::uno::XInterface;
- using ::com::sun::star::uno::UNO_QUERY;
- using ::com::sun::star::uno::UNO_QUERY_THROW;
- using ::com::sun::star::uno::UNO_SET_THROW;
- using ::com::sun::star::uno::Exception;
- using ::com::sun::star::uno::RuntimeException;
- using ::com::sun::star::uno::Any;
- using ::com::sun::star::uno::makeAny;
- using ::com::sun::star::uno::Sequence;
- using ::com::sun::star::uno::Type;
- using ::com::sun::star::accessibility::XAccessible;
- using ::com::sun::star::lang::DisposedException;
- using ::com::sun::star::lang::IndexOutOfBoundsException;
- using ::com::sun::star::accessibility::XAccessibleRelationSet;
- using ::com::sun::star::accessibility::XAccessibleStateSet;
- using ::com::sun::star::accessibility::XAccessibleComponent;
- using ::com::sun::star::accessibility::XAccessibleExtendedComponent;
- using ::com::sun::star::awt::XFont;
- /** === end UNO using === **/
-
- namespace AccessibleRole = ::com::sun::star::accessibility::AccessibleRole;
- namespace AccessibleStateType = ::com::sun::star::accessibility::AccessibleStateType;
- namespace AccessibleEventId = ::com::sun::star::accessibility::AccessibleEventId;
-
- //==================================================================================================================
- //= AccessibleToolPanelDeckTabBarItem_Impl
- //==================================================================================================================
- class AccessibleToolPanelDeckTabBarItem_Impl : public ::svt::IToolPanelDeckListener
- {
- public:
- AccessibleToolPanelDeckTabBarItem_Impl(
- AccessibleToolPanelDeckTabBarItem& i_rAntiImpl,
- const Reference< XAccessible >& i_rAccessibleParent,
- ::svt::IToolPanelDeck& i_rPanelDeck,
- ::svt::PanelTabBar& i_rTabBar,
- const size_t i_nItemPos
- );
- ~AccessibleToolPanelDeckTabBarItem_Impl();
-
- ::svt::PanelTabBar* getTabBar() const { return m_pTabBar; }
-
- // IToolPanelDeckListener
- virtual void PanelInserted( const ::svt::PToolPanel& i_pPanel, const size_t i_nPosition );
- virtual void PanelRemoved( const size_t i_nPosition );
- virtual void ActivePanelChanged( const ::boost::optional< size_t >& i_rOldActive, const ::boost::optional< size_t >& i_rNewActive );
- virtual void LayouterChanged( const ::svt::PDeckLayouter& i_rNewLayouter );
- virtual void Dying();
-
- public:
- bool isDisposed() const { return m_pPanelDeck == NULL; }
- void checkDisposed() const;
- void dispose();
-
- const Reference< XAccessible >&
- getAccessibleParent() const { return m_xAccessibleParent; }
- size_t getItemPos() const { return m_nItemPos; }
-
- Reference< XAccessibleComponent > getParentAccessibleComponent() const;
- ::svt::IToolPanelDeck* getPanelDeck() const { return m_pPanelDeck; }
- ::rtl::OUString getPanelDisplayName();
-
- private:
- void impl_notifyBoundRectChanges();
- void impl_notifyStateChange( const sal_Int16 i_nLostState, const sal_Int16 i_nGainedState );
-
- private:
- AccessibleToolPanelDeckTabBarItem& m_rAntiImpl;
- Reference< XAccessible > m_xAccessibleParent;
- ::svt::IToolPanelDeck* m_pPanelDeck;
- ::svt::PanelTabBar* m_pTabBar;
- size_t m_nItemPos;
- };
-
- //==================================================================================================================
- //= AccessibleToolPanelDeckTabBarItem_Impl
- //==================================================================================================================
- //------------------------------------------------------------------------------------------------------------------
- AccessibleToolPanelDeckTabBarItem_Impl::AccessibleToolPanelDeckTabBarItem_Impl( AccessibleToolPanelDeckTabBarItem& i_rAntiImpl,
- const Reference< XAccessible >& i_rAccessibleParent, ::svt::IToolPanelDeck& i_rPanelDeck, ::svt::PanelTabBar& i_rTabBar,
- const size_t i_nItemPos )
- :m_rAntiImpl( i_rAntiImpl )
- ,m_xAccessibleParent( i_rAccessibleParent )
- ,m_pPanelDeck( &i_rPanelDeck )
- ,m_pTabBar( &i_rTabBar )
- ,m_nItemPos( i_nItemPos )
- {
- m_pPanelDeck->AddListener( *this );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- AccessibleToolPanelDeckTabBarItem_Impl::~AccessibleToolPanelDeckTabBarItem_Impl()
- {
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelDeckTabBarItem_Impl::checkDisposed() const
- {
- if ( isDisposed() )
- throw DisposedException( ::rtl::OUString(), *&m_rAntiImpl );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelDeckTabBarItem_Impl::dispose()
- {
- ENSURE_OR_RETURN_VOID( !isDisposed(), "AccessibleToolPanelDeckTabBarItem_Impl::dispose: disposed twice!" );
-
- m_xAccessibleParent.clear();
- m_pPanelDeck->RemoveListener( *this );
- m_pPanelDeck = NULL;
- m_pTabBar = NULL;
- }
-
- //------------------------------------------------------------------------------------------------------------------
- Reference< XAccessibleComponent > AccessibleToolPanelDeckTabBarItem_Impl::getParentAccessibleComponent() const
- {
- Reference< XAccessible > xAccessibleParent( m_rAntiImpl.getAccessibleParent(), UNO_QUERY_THROW );
- return Reference< XAccessibleComponent >( xAccessibleParent->getAccessibleContext(), UNO_QUERY );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- ::rtl::OUString AccessibleToolPanelDeckTabBarItem_Impl::getPanelDisplayName()
- {
- const ::svt::PToolPanel pPanel( m_pPanelDeck->GetPanel( getItemPos() ) );
- if ( pPanel.get() == NULL )
- throw DisposedException();
- return pPanel->GetDisplayName();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelDeckTabBarItem_Impl::impl_notifyBoundRectChanges()
- {
- m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::BOUNDRECT_CHANGED, Any(), Any() );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelDeckTabBarItem_Impl::impl_notifyStateChange( const sal_Int16 i_nLostState, const sal_Int16 i_nGainedState )
- {
- m_rAntiImpl.NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED,
- i_nLostState > -1 ? makeAny( i_nLostState ) : Any(),
- i_nGainedState > -1 ? makeAny( i_nGainedState ) : Any()
- );
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelDeckTabBarItem_Impl::PanelInserted( const ::svt::PToolPanel& i_pPanel, const size_t i_nPosition )
- {
- (void)i_pPanel;
- if ( i_nPosition <= m_nItemPos )
- ++m_nItemPos;
- impl_notifyBoundRectChanges();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelDeckTabBarItem_Impl::PanelRemoved( const size_t i_nPosition )
- {
- if ( i_nPosition == m_nItemPos )
- {
- m_rAntiImpl.dispose();
- }
- else if ( i_nPosition < m_nItemPos )
- {
- --m_nItemPos;
- impl_notifyBoundRectChanges();
- }
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelDeckTabBarItem_Impl::ActivePanelChanged( const ::boost::optional< size_t >& i_rOldActive, const ::boost::optional< size_t >& i_rNewActive )
- {
- if ( m_nItemPos == i_rOldActive )
- {
- impl_notifyStateChange( AccessibleStateType::ACTIVE, -1 );
- impl_notifyStateChange( AccessibleStateType::SELECTED, -1 );
- }
- else if ( m_nItemPos == i_rNewActive )
- {
- impl_notifyStateChange( -1, AccessibleStateType::ACTIVE );
- impl_notifyStateChange( -1, AccessibleStateType::SELECTED );
- }
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelDeckTabBarItem_Impl::LayouterChanged( const ::svt::PDeckLayouter& i_rNewLayouter )
- {
- (void)i_rNewLayouter;
- // if the tool panel deck has a new layouter, then the old layouter, and thus all items it was
- // responsible for, died. So do we.
- dispose();
- }
-
- //------------------------------------------------------------------------------------------------------------------
- void AccessibleToolPanelDeckTabBarItem_Impl::Dying()
- {
- // if the tool panel deck is dying, then its layouter dies, so should we.
- dispose();
- }
-
- //==================================================================================================================
- //= ItemMethodGuard
- //==================================================================================================================
- class ItemMethodGuard
- {
- public:
- ItemMethodGuard( AccessibleToolPanelDeckTabBarItem_Impl& i_rImpl )
- :m_aGuard()
- {
- i_rImpl.checkDisposed();
- }
- ~ItemMethodGuard()
- {
- }
-
- private:
- SolarMutexGuard m_aGuard;
- };
-
- //==================================================================================================================
- //= AccessibleToolPanelDeckTabBarItem
- //==================================================================================================================
- //------------------------------------------------------------------------------------------------------------------
- AccessibleToolPanelDeckTabBarItem::AccessibleToolPanelDeckTabBarItem( const Reference< XAccessible >& i_rAccessibleParent,
- ::svt::IToolPanelDeck& i_rPanelDeck, ::svt::PanelTabBar& i_rTabBar, const size_t i_nItemPos )
- :m_pImpl( new AccessibleToolPanelDeckTabBarItem_Impl( *this, i_rAccessibleParent, i_rPanelDeck, i_rTabBar, i_nItemPos ) )
- {
- }
-
- //------------------------------------------------------------------------------------------------------------------
- AccessibleToolPanelDeckTabBarItem::~AccessibleToolPanelDeckTabBarItem()
- {
- }
-
- //--------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleChildCount( ) throw (RuntimeException)
- {
- return 0;
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- (void)i;
- throw IndexOutOfBoundsException( ::rtl::OUString(), *this );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleParent( ) throw (RuntimeException)
- {
- ItemMethodGuard aGuard( *m_pImpl );
- return m_pImpl->getAccessibleParent();
- }
-
- //--------------------------------------------------------------------
- sal_Int16 SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleRole( ) throw (RuntimeException)
- {
- return AccessibleRole::PAGE_TAB;
- }
-
- //--------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleDescription( ) throw (RuntimeException)
- {
- ItemMethodGuard aGuard( *m_pImpl );
- return m_pImpl->getPanelDisplayName();
- }
-
- //--------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleName( ) throw (RuntimeException)
- {
- ItemMethodGuard aGuard( *m_pImpl );
- return m_pImpl->getPanelDisplayName();
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessibleRelationSet > SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleRelationSet( ) throw (RuntimeException)
- {
- ItemMethodGuard aGuard( *m_pImpl );
- ::utl::AccessibleRelationSetHelper* pRelationSet = new utl::AccessibleRelationSetHelper;
- return pRelationSet;
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessibleStateSet > SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleStateSet( ) throw (RuntimeException)
- {
- ItemMethodGuard aGuard( *m_pImpl );
-
- ::utl::AccessibleStateSetHelper* pStateSet( new ::utl::AccessibleStateSetHelper );
- pStateSet->AddState( AccessibleStateType::FOCUSABLE );
- pStateSet->AddState( AccessibleStateType::SELECTABLE );
- pStateSet->AddState( AccessibleStateType::ICONIFIED );
-
- if ( m_pImpl->getItemPos() == m_pImpl->getPanelDeck()->GetActivePanel() )
- {
- pStateSet->AddState( AccessibleStateType::ACTIVE );
- pStateSet->AddState( AccessibleStateType::SELECTED );
- }
-
- if ( m_pImpl->getItemPos() == m_pImpl->getTabBar()->GetFocusedPanelItem() )
- pStateSet->AddState( AccessibleStateType::FOCUSED );
-
- if ( m_pImpl->getTabBar()->IsEnabled() )
- pStateSet->AddState( AccessibleStateType::ENABLED );
-
- if ( m_pImpl->getTabBar()->IsVisible() )
- {
- pStateSet->AddState( AccessibleStateType::SHOWING );
- pStateSet->AddState( AccessibleStateType::VISIBLE );
- }
-
- return pStateSet;
- }
-
-
- //--------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleToolPanelDeckTabBarItem::getAccessibleAtPoint( const UnoPoint& i_rLocation ) throw (RuntimeException)
- {
- ItemMethodGuard aGuard( *m_pImpl );
- // we do not have children ...
- (void)i_rLocation;
- return NULL;
- }
-
- //--------------------------------------------------------------------
- void SAL_CALL AccessibleToolPanelDeckTabBarItem::grabFocus( ) throw (RuntimeException)
- {
- ItemMethodGuard aGuard( *m_pImpl );
- m_pImpl->getTabBar()->FocusPanelItem( m_pImpl->getItemPos() );
- }
-
- //--------------------------------------------------------------------
- ::sal_Int32 SAL_CALL AccessibleToolPanelDeckTabBarItem::getForeground( ) throw (RuntimeException)
- {
- ItemMethodGuard aGuard( *m_pImpl );
- Reference< XAccessibleComponent > xParentComponent( m_pImpl->getParentAccessibleComponent(), UNO_SET_THROW );
- return xParentComponent->getForeground();
- }
-
- //--------------------------------------------------------------------
- ::sal_Int32 SAL_CALL AccessibleToolPanelDeckTabBarItem::getBackground( ) throw (RuntimeException)
- {
- ItemMethodGuard aGuard( *m_pImpl );
- Reference< XAccessibleComponent > xParentComponent( m_pImpl->getParentAccessibleComponent(), UNO_SET_THROW );
- return xParentComponent->getBackground();
- }
-
- //--------------------------------------------------------------------
- Reference< XFont > SAL_CALL AccessibleToolPanelDeckTabBarItem::getFont( ) throw (RuntimeException)
- {
- ItemMethodGuard aGuard( *m_pImpl );
- Reference< XAccessibleExtendedComponent > xParentComponent( m_pImpl->getParentAccessibleComponent(), UNO_QUERY_THROW );
- // TODO: strictly, this is not correct: The TabBar implementation of the TabLayouter might use
- // a different font ...
- return xParentComponent->getFont();
- }
-
- //--------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleToolPanelDeckTabBarItem::getTitledBorderText( ) throw (RuntimeException)
- {
- ItemMethodGuard aGuard( *m_pImpl );
- // no support
- return ::rtl::OUString();
- }
-
- //--------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleToolPanelDeckTabBarItem::getToolTipText( ) throw (RuntimeException)
- {
- ItemMethodGuard aGuard( *m_pImpl );
- return m_pImpl->getPanelDisplayName();
- }
-
- //--------------------------------------------------------------------
- UnoRectangle SAL_CALL AccessibleToolPanelDeckTabBarItem::implGetBounds() throw (RuntimeException)
- {
- ItemMethodGuard aGuard( *m_pImpl );
-
- const ::Rectangle aItemScreenRect( m_pImpl->getTabBar()->GetItemScreenRect( m_pImpl->getItemPos() ) );
-
- Reference< XAccessibleComponent > xParentComponent( m_pImpl->getParentAccessibleComponent(), UNO_SET_THROW );
- const UnoPoint aParentLocation( xParentComponent->getLocationOnScreen() );
- return UnoRectangle(
- aItemScreenRect.Left() - aParentLocation.X,
- aItemScreenRect.Top() - aParentLocation.Y,
- aItemScreenRect.GetWidth(),
- aItemScreenRect.GetHeight()
- );
- }
-
- //--------------------------------------------------------------------
- void SAL_CALL AccessibleToolPanelDeckTabBarItem::disposing()
- {
- ItemMethodGuard aGuard( *m_pImpl );
- m_pImpl->dispose();
- }
-
-//......................................................................................................................
-} // namespace accessibility
-//......................................................................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/accessiblebrowseboxcell.cxx b/accessibility/source/extended/accessiblebrowseboxcell.cxx
deleted file mode 100644
index 581aa0250..000000000
--- a/accessibility/source/extended/accessiblebrowseboxcell.cxx
+++ /dev/null
@@ -1,94 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include "accessibility/extended/accessiblebrowseboxcell.hxx"
-#include <svtools/accessibletableprovider.hxx>
-
-// .................................................................................
-namespace accessibility
-{
-// .................................................................................
-
- using namespace ::com::sun::star::uno;
- using namespace ::com::sun::star::awt;
- using namespace ::com::sun::star::accessibility;
- using namespace ::svt;
-
- // =============================================================================
- // = AccessibleBrowseBoxCell
- // =============================================================================
- DBG_NAME( svt_AccessibleBrowseBoxCell )
- // -----------------------------------------------------------------------------
- AccessibleBrowseBoxCell::AccessibleBrowseBoxCell(
- const Reference< XAccessible >& _rxParent, IAccessibleTableProvider& _rBrowseBox,
- const Reference< XWindow >& _xFocusWindow,
- sal_Int32 _nRowPos, sal_uInt16 _nColPos, AccessibleBrowseBoxObjType _eType )
- :AccessibleBrowseBoxBase( _rxParent, _rBrowseBox, _xFocusWindow, _eType )
- ,m_nRowPos( _nRowPos )
- ,m_nColPos( _nColPos )
- {
- DBG_CTOR( svt_AccessibleBrowseBoxCell, NULL );
- // set accessible name here, because for that we need the position of the cell
- // and so the base class isn't capable of doing this
- sal_Int32 nPos = _nRowPos * _rBrowseBox.GetColumnCount() + _nColPos;
- ::rtl::OUString aAccName = _rBrowseBox.GetAccessibleObjectName( BBTYPE_TABLECELL, nPos );
- implSetName( aAccName );
- }
-
- // -----------------------------------------------------------------------------
- AccessibleBrowseBoxCell::~AccessibleBrowseBoxCell()
- {
- DBG_DTOR( svt_AccessibleBrowseBoxCell, NULL );
- }
-
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleBrowseBoxCell::grabFocus() throw ( RuntimeException )
- {
- SolarMethodGuard aGuard( *this );
- mpBrowseBox->GoToCell( m_nRowPos, m_nColPos );
- }
- // -----------------------------------------------------------------------------
- ::Rectangle AccessibleBrowseBoxCell::implGetBoundingBox()
- {
- return mpBrowseBox->GetFieldRectPixelAbs( m_nRowPos, m_nColPos, sal_False, sal_False );
- }
-
- // -----------------------------------------------------------------------------
- ::Rectangle AccessibleBrowseBoxCell::implGetBoundingBoxOnScreen()
- {
- return mpBrowseBox->GetFieldRectPixelAbs( m_nRowPos, m_nColPos, sal_False );
- }
-
-// .................................................................................
-} // namespace accessibility
-// .................................................................................
-
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/accessibleeditbrowseboxcell.cxx b/accessibility/source/extended/accessibleeditbrowseboxcell.cxx
deleted file mode 100644
index 12bd5f563..000000000
--- a/accessibility/source/extended/accessibleeditbrowseboxcell.cxx
+++ /dev/null
@@ -1,276 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/extended/accessibleeditbrowseboxcell.hxx>
-#include <svtools/editbrowsebox.hxx>
-#include <comphelper/processfactory.hxx>
-#include <com/sun/star/accessibility/XAccessibleText.hpp>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-
-
-// .................................................................................
-namespace accessibility
-{
-// .................................................................................
-
- using namespace com::sun::star::accessibility;
- using namespace ::com::sun::star::uno;
- using namespace ::com::sun::star::lang;
- using namespace ::com::sun::star::awt;
- using namespace ::comphelper;
- using namespace ::svt;
-
- DBG_NAME( acc_EditBrowseBoxTableCell )
- // -----------------------------------------------------------------------------
- EditBrowseBoxTableCell::EditBrowseBoxTableCell(
- const com::sun::star::uno::Reference< XAccessible >& _rxParent,
- const com::sun::star::uno::Reference< XAccessible >& _rxOwningAccessible,
- const com::sun::star::uno::Reference< XAccessibleContext >& _xControlChild,
- IAccessibleTableProvider& _rBrowseBox,
- const Reference< XWindow >& _xFocusWindow,
- sal_Int32 _nRowPos,
- sal_uInt16 _nColPos)
- :AccessibleBrowseBoxCell( _rxParent, _rBrowseBox, _xFocusWindow, _nRowPos, _nColPos )
- ,OAccessibleContextWrapperHelper( ::comphelper::getProcessServiceFactory(), rBHelper, _xControlChild, _rxOwningAccessible, _rxParent )
- {
- DBG_CTOR( acc_EditBrowseBoxTableCell, NULL );
-
- aggregateProxy( m_refCount, *this );
- }
-
- // -----------------------------------------------------------------------------
- EditBrowseBoxTableCell::~EditBrowseBoxTableCell()
- {
- if ( !rBHelper.bDisposed )
- {
- acquire(); // to prevent duplicate dtor calls
- dispose();
- }
-
- DBG_DTOR( acc_EditBrowseBoxTableCell, NULL );
- }
-
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL EditBrowseBoxTableCell::getImplementationName() throw ( ::com::sun::star::uno::RuntimeException )
- {
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.TableCellProxy" ) );
- }
-
- // -----------------------------------------------------------------------------
- IMPLEMENT_FORWARD_XINTERFACE2( EditBrowseBoxTableCell, AccessibleBrowseBoxCell, OAccessibleContextWrapperHelper )
-
- // -----------------------------------------------------------------------------
- IMPLEMENT_FORWARD_XTYPEPROVIDER2( EditBrowseBoxTableCell, AccessibleBrowseBoxCell, OAccessibleContextWrapperHelper )
-
- // -----------------------------------------------------------------------------
- void EditBrowseBoxTableCell::notifyTranslatedEvent( const AccessibleEventObject& _rEvent ) throw (RuntimeException)
- {
- commitEvent( _rEvent.EventId, _rEvent.NewValue, _rEvent.OldValue );
- }
-
- // XAccessibleComponent
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL EditBrowseBoxTableCell::getForeground( ) throw (RuntimeException)
- {
- SolarMethodGuard aGuard( *this );
- Reference< XAccessibleComponent > xAccComp( m_xInnerContext, UNO_QUERY );
- if ( xAccComp.is() )
- return xAccComp->getForeground();
- return 0;
- }
-
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL EditBrowseBoxTableCell::getBackground( ) throw (RuntimeException)
- {
- SolarMethodGuard aGuard( *this );
- Reference< XAccessibleComponent > xAccComp( m_xInnerContext, UNO_QUERY );
- if ( xAccComp.is() )
- return xAccComp->getBackground();
- return 0;
- }
-
- // -----------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL EditBrowseBoxTableCell::getAccessibleParent( ) throw (RuntimeException)
- {
- return m_xParentAccessible;
- }
-
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL EditBrowseBoxTableCell::getAccessibleDescription() throw ( RuntimeException )
- {
- SolarMethodGuard aGuard( *this );
- return m_xInnerContext->getAccessibleDescription();
- }
-
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL EditBrowseBoxTableCell::getAccessibleName() throw ( RuntimeException )
- {
- SolarMethodGuard aGuard( *this );
-
- // TODO: localize this!
- String sName = mpBrowseBox->GetColumnDescription( ::sal::static_int_cast< sal_uInt16 >( getColumnPos() ) );
- if ( 0 == sName.Len() )
- {
- sName = String::CreateFromAscii( "Column " );
- sName += String::CreateFromInt32( getColumnPos( ) );
- }
-
- sName += String::CreateFromAscii( ", Row " );
- sName += String::CreateFromInt32( getRowPos( ) );
-
- return ::rtl::OUString( sName );
- }
-
- // -----------------------------------------------------------------------------
- Reference< XAccessibleRelationSet > SAL_CALL EditBrowseBoxTableCell::getAccessibleRelationSet() throw ( RuntimeException )
- {
- SolarMethodGuard aGuard( *this );
- return OAccessibleContextWrapperHelper::getAccessibleRelationSet( );
- }
-
- // -----------------------------------------------------------------------------
- Reference<XAccessibleStateSet > SAL_CALL EditBrowseBoxTableCell::getAccessibleStateSet() throw ( RuntimeException )
- {
- SolarMethodGuard aGuard( *this );
- return m_xInnerContext->getAccessibleStateSet();
- // TODO: shouldn't we add an ACTIVE here? Isn't the EditBrowseBoxTableCell always ACTIVE?
- }
-
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL EditBrowseBoxTableCell::getAccessibleChildCount( ) throw (RuntimeException)
- {
- SolarMethodGuard aGuard( *this );
- return OAccessibleContextWrapperHelper::getAccessibleChildCount();
- }
-
- // -----------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL EditBrowseBoxTableCell::getAccessibleChild( sal_Int32 i ) throw (::com::sun::star::lang::IndexOutOfBoundsException, RuntimeException)
- {
- SolarMethodGuard aGuard( *this );
- return OAccessibleContextWrapperHelper::getAccessibleChild( i );
- }
-
- // -----------------------------------------------------------------------------
- sal_Int16 SAL_CALL EditBrowseBoxTableCell::getAccessibleRole() throw ( RuntimeException )
- {
- SolarMethodGuard aGuard( *this );
- return m_xInnerContext->getAccessibleRole( );
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL EditBrowseBoxTableCell::dispose() throw( RuntimeException )
- {
- // simply disambiguate. Note that the OComponentHelper base in AccessibleBrowseBoxCell
- // will call our "disposing()", which will call "dispose()" on the OAccessibleContextWrapperHelper
- // so there is no need to do this here.
- AccessibleBrowseBoxCell::dispose();
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL EditBrowseBoxTableCell::disposing( const EventObject& _rSource ) throw (RuntimeException)
- {
- AccessibleBrowseBoxCell::disposing( _rSource );
- OAccessibleContextWrapperHelper::disposing( _rSource );
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL EditBrowseBoxTableCell::disposing()
- {
- SolarMethodGuard aGuard( *this, false );
- OAccessibleContextWrapperHelper::dispose();
- // TODO: do we need to dispose our inner object? The base class does this, but is it a good idea?
- AccessibleBrowseBoxCell::disposing();
- }
- // =============================================================================
- // = EditBrowseBoxTableCell
- // =============================================================================
- DBG_NAME( EditBrowseBoxTableCellAccess )
- // -----------------------------------------------------------------------------
- EditBrowseBoxTableCellAccess::EditBrowseBoxTableCellAccess(
- const Reference< XAccessible >& _rxParent, const Reference< XAccessible > _rxControlAccessible,
- const Reference< XWindow >& _rxFocusWindow,
- IAccessibleTableProvider& _rBrowseBox, sal_Int32 _nRowPos, sal_uInt16 _nColPos )
- :EditBrowseBoxTableCellAccess_Base( m_aMutex )
- ,m_xParent( _rxParent )
- ,m_xControlAccessible( _rxControlAccessible )
- ,m_xFocusWindow( _rxFocusWindow )
- ,m_pBrowseBox( &_rBrowseBox )
- ,m_nRowPos( _nRowPos )
- ,m_nColPos( _nColPos )
- {
- DBG_CTOR( EditBrowseBoxTableCellAccess, NULL );
- }
- // -----------------------------------------------------------------------------
- EditBrowseBoxTableCellAccess::~EditBrowseBoxTableCellAccess( )
- {
- DBG_DTOR( EditBrowseBoxTableCellAccess, NULL );
- }
- //--------------------------------------------------------------------
- Reference< XAccessibleContext > SAL_CALL EditBrowseBoxTableCellAccess::getAccessibleContext( ) throw (RuntimeException)
- {
- if ( !m_pBrowseBox || !m_xControlAccessible.is() )
- throw DisposedException();
- Reference< XAccessibleContext > xMyContext( m_aContext );
- if ( !xMyContext.is() )
- {
- Reference< XAccessibleContext > xInnerContext = m_xControlAccessible->getAccessibleContext();
- Reference< XAccessible > xMe( this );
-
- xMyContext = new EditBrowseBoxTableCell( m_xParent, xMe, xInnerContext, *m_pBrowseBox, m_xFocusWindow, m_nRowPos, m_nColPos );
- m_aContext = xMyContext;
- }
- return xMyContext;
- }
- //--------------------------------------------------------------------
- void SAL_CALL EditBrowseBoxTableCellAccess::disposing()
- {
- // dispose our context, if it still alive
- Reference< XComponent > xMyContext( (Reference< XAccessibleContext >)m_aContext, UNO_QUERY );
- if ( xMyContext.is() )
- {
- try
- {
- xMyContext->dispose();
- }
- catch( const Exception& e )
- {
- (void)e;
- OSL_FAIL( "EditBrowseBoxTableCellAccess::disposing: caught an exception while disposing the context!" );
- }
- }
-
- m_pBrowseBox = NULL;
- m_xControlAccessible.clear();
- m_aContext = Reference< XAccessibleContext >( );
- // NO dispose of the inner object there: it is the XAccessible of an window, and disposing
- // it would delete the respective VCL window
- }
-// .................................................................................
-} // namespace accessibility
-// .................................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/accessibleiconchoicectrl.cxx b/accessibility/source/extended/accessibleiconchoicectrl.cxx
deleted file mode 100644
index 99742f78d..000000000
--- a/accessibility/source/extended/accessibleiconchoicectrl.cxx
+++ /dev/null
@@ -1,374 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include "accessibility/extended/accessibleiconchoicectrl.hxx"
-#include "accessibility/extended/accessibleiconchoicectrlentry.hxx"
-#include <svtools/ivctrl.hxx>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <unotools/accessiblestatesethelper.hxx>
-#include <tools/debug.hxx>
-#include <vcl/svapp.hxx>
-#include <cppuhelper/typeprovider.hxx>
-
-//........................................................................
-namespace accessibility
-{
-//........................................................................
-
- // class AccessibleIconChoiceCtrl ----------------------------------------------
-
- using namespace ::com::sun::star::accessibility;
- using namespace ::com::sun::star::uno;
- using namespace ::com::sun::star::lang;
- using namespace ::com::sun::star;
-
- DBG_NAME(AccessibleIconChoiceCtrl)
-
- // -----------------------------------------------------------------------------
- // Ctor() and Dtor()
- // -----------------------------------------------------------------------------
- AccessibleIconChoiceCtrl::AccessibleIconChoiceCtrl( SvtIconChoiceCtrl& _rIconCtrl, const Reference< XAccessible >& _xParent ) :
-
- VCLXAccessibleComponent( _rIconCtrl.GetWindowPeer() ),
- m_xParent ( _xParent )
- {
- DBG_CTOR( AccessibleIconChoiceCtrl, NULL );
- }
- // -----------------------------------------------------------------------------
- AccessibleIconChoiceCtrl::~AccessibleIconChoiceCtrl()
- {
- DBG_DTOR( AccessibleIconChoiceCtrl, NULL );
- }
- // -----------------------------------------------------------------------------
- IMPLEMENT_FORWARD_XINTERFACE2(AccessibleIconChoiceCtrl, VCLXAccessibleComponent, AccessibleIconChoiceCtrl_BASE)
- IMPLEMENT_FORWARD_XTYPEPROVIDER2(AccessibleIconChoiceCtrl, VCLXAccessibleComponent, AccessibleIconChoiceCtrl_BASE)
- // -----------------------------------------------------------------------------
- void AccessibleIconChoiceCtrl::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
- {
- if ( isAlive() )
- {
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_LISTBOX_SELECT :
- {
- // First send an event that tells the listeners of a
- // modified selection. The active descendant event is
- // send after that so that the receiving AT has time to
- // read the text or name of the active child.
- NotifyAccessibleEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
- SvtIconChoiceCtrl* pCtrl = getCtrl();
- if ( pCtrl && pCtrl->HasFocus() )
- {
- SvxIconChoiceCtrlEntry* pEntry = static_cast< SvxIconChoiceCtrlEntry* >( rVclWindowEvent.GetData() );
- if ( pEntry )
- {
- sal_uLong nPos = pCtrl->GetEntryListPos( pEntry );
- Reference< XAccessible > xChild = new AccessibleIconChoiceCtrlEntry( *pCtrl, nPos, this );
- uno::Any aOldValue, aNewValue;
- aNewValue <<= xChild;
- NotifyAccessibleEvent( AccessibleEventId::ACTIVE_DESCENDANT_CHANGED, aOldValue, aNewValue );
- }
- }
- break;
- }
- default:
- VCLXAccessibleComponent::ProcessWindowChildEvent (rVclWindowEvent);
- }
- }
- }
- // -----------------------------------------------------------------------------
- // XComponent
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleIconChoiceCtrl::disposing()
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- m_xParent = NULL;
- }
- // -----------------------------------------------------------------------------
- // XServiceInfo
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrl::getImplementationName() throw (RuntimeException)
- {
- return getImplementationName_Static();
- }
- // -----------------------------------------------------------------------------
- Sequence< ::rtl::OUString > SAL_CALL AccessibleIconChoiceCtrl::getSupportedServiceNames() throw (RuntimeException)
- {
- return getSupportedServiceNames_Static();
- }
- // -----------------------------------------------------------------------------
- sal_Bool SAL_CALL AccessibleIconChoiceCtrl::supportsService( const ::rtl::OUString& _rServiceName ) throw (RuntimeException)
- {
- Sequence< ::rtl::OUString > aSupported( getSupportedServiceNames() );
- const ::rtl::OUString* pSupported = aSupported.getConstArray();
- const ::rtl::OUString* pEnd = pSupported + aSupported.getLength();
- for ( ; pSupported != pEnd && !pSupported->equals(_rServiceName); ++pSupported )
- ;
-
- return pSupported != pEnd;
- }
- // -----------------------------------------------------------------------------
- // XServiceInfo - static methods
- // -----------------------------------------------------------------------------
- Sequence< ::rtl::OUString > AccessibleIconChoiceCtrl::getSupportedServiceNames_Static(void) throw (RuntimeException)
- {
- Sequence< ::rtl::OUString > aSupported(3);
- aSupported[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleContext") );
- aSupported[1] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleComponent") );
- aSupported[2] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleIconChoiceControl") );
- return aSupported;
- }
- // -----------------------------------------------------------------------------
- ::rtl::OUString AccessibleIconChoiceCtrl::getImplementationName_Static(void) throw (RuntimeException)
- {
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.svtools.AccessibleIconChoiceControl") );
- }
- // -----------------------------------------------------------------------------
- // XAccessible
- // -----------------------------------------------------------------------------
- Reference< XAccessibleContext > SAL_CALL AccessibleIconChoiceCtrl::getAccessibleContext( ) throw (RuntimeException)
- {
- ensureAlive();
- return this;
- }
- // -----------------------------------------------------------------------------
- // XAccessibleContext
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleIconChoiceCtrl::getAccessibleChildCount( ) throw (RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
- return getCtrl()->GetEntryCount();
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleIconChoiceCtrl::getAccessibleChild( sal_Int32 i ) throw (RuntimeException, IndexOutOfBoundsException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
- SvtIconChoiceCtrl* pCtrl = getCtrl();
- SvxIconChoiceCtrlEntry* pEntry = pCtrl->GetEntry(i);
- if ( !pEntry )
- throw RuntimeException();
-
- return new AccessibleIconChoiceCtrlEntry( *pCtrl, i, this );
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleIconChoiceCtrl::getAccessibleParent( ) throw (RuntimeException)
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- ensureAlive();
- return m_xParent;
- }
- // -----------------------------------------------------------------------------
- sal_Int16 SAL_CALL AccessibleIconChoiceCtrl::getAccessibleRole( ) throw (RuntimeException)
- {
- return AccessibleRole::TREE;
- }
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrl::getAccessibleDescription( ) throw (RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
- return getCtrl()->GetAccessibleDescription();
- }
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrl::getAccessibleName( ) throw (RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
-
- ::rtl::OUString sName = getCtrl()->GetAccessibleName();
- if ( sName.getLength() == 0 )
- sName = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "IconChoiceControl" ) );
- return sName;
- }
- // -----------------------------------------------------------------------------
- // XAccessibleSelection
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleIconChoiceCtrl::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
-
- SvtIconChoiceCtrl* pCtrl = getCtrl();
- SvxIconChoiceCtrlEntry* pEntry = pCtrl->GetEntry( nChildIndex );
- if ( !pEntry )
- throw IndexOutOfBoundsException();
-
- pCtrl->SetCursor( pEntry );
- }
- // -----------------------------------------------------------------------------
- sal_Bool SAL_CALL AccessibleIconChoiceCtrl::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
-
- SvtIconChoiceCtrl* pCtrl = getCtrl();
- SvxIconChoiceCtrlEntry* pEntry = pCtrl->GetEntry( nChildIndex );
- if ( !pEntry )
- throw IndexOutOfBoundsException();
-
- return ( pCtrl->GetCursor() == pEntry );
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleIconChoiceCtrl::clearAccessibleSelection( ) throw (RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
- getCtrl()->SetNoSelection();
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleIconChoiceCtrl::selectAllAccessibleChildren( ) throw (RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
-
- sal_Int32 i, nCount = 0;
- SvtIconChoiceCtrl* pCtrl = getCtrl();
- nCount = pCtrl->GetEntryCount();
- for ( i = 0; i < nCount; ++i )
- {
- SvxIconChoiceCtrlEntry* pEntry = pCtrl->GetEntry( i );
- if ( pCtrl->GetCursor() != pEntry )
- pCtrl->SetCursor( pEntry );
- }
- }
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleIconChoiceCtrl::getSelectedAccessibleChildCount( ) throw (RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
-
- sal_Int32 i, nSelCount = 0, nCount = 0;
- SvtIconChoiceCtrl* pCtrl = getCtrl();
- nCount = pCtrl->GetEntryCount();
- for ( i = 0; i < nCount; ++i )
- {
- SvxIconChoiceCtrlEntry* pEntry = pCtrl->GetEntry( i );
- if ( pCtrl->GetCursor() == pEntry )
- ++nSelCount;
- }
-
- return nSelCount;
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleIconChoiceCtrl::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
-
- if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getSelectedAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- Reference< XAccessible > xChild;
- sal_Int32 i, nSelCount = 0, nCount = 0;
- SvtIconChoiceCtrl* pCtrl = getCtrl();
- nCount = pCtrl->GetEntryCount();
- for ( i = 0; i < nCount; ++i )
- {
- SvxIconChoiceCtrlEntry* pEntry = pCtrl->GetEntry( i );
- if ( pCtrl->GetCursor() == pEntry )
- ++nSelCount;
-
- if ( nSelCount == ( nSelectedChildIndex + 1 ) )
- {
- xChild = new AccessibleIconChoiceCtrlEntry( *pCtrl, i, this );
- break;
- }
- }
-
- return xChild;
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleIconChoiceCtrl::deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
-
- if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- Reference< XAccessible > xChild;
- sal_Int32 i, nSelCount = 0, nCount = 0;
- SvtIconChoiceCtrl* pCtrl = getCtrl();
- nCount = pCtrl->GetEntryCount();
- bool bFound = false;
- for ( i = 0; i < nCount; ++i )
- {
- SvxIconChoiceCtrlEntry* pEntry = pCtrl->GetEntry( i );
- if ( pEntry->IsSelected() )
- {
- ++nSelCount;
- if ( i == nSelectedChildIndex )
- bFound = true;
- }
- }
-
- // if only one entry is selected and its index is choosen to deselect -> no selection anymore
- if ( 1 == nSelCount && bFound )
- pCtrl->SetNoSelection();
- }
- // -----------------------------------------------------------------------------
- void AccessibleIconChoiceCtrl::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
- {
- VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
- if ( isAlive() )
- {
- rStateSet.AddState( AccessibleStateType::FOCUSABLE );
- rStateSet.AddState( AccessibleStateType::MANAGES_DESCENDANTS );
- rStateSet.AddState( AccessibleStateType::SELECTABLE );
- }
- }
- // -----------------------------------------------------------------------------
- SvtIconChoiceCtrl* AccessibleIconChoiceCtrl::getCtrl()
- {
- return static_cast<SvtIconChoiceCtrl*>(GetWindow());
- }
-
-//........................................................................
-}// namespace accessibility
-//........................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/accessibleiconchoicectrlentry.cxx b/accessibility/source/extended/accessibleiconchoicectrlentry.cxx
deleted file mode 100644
index aa8e66a52..000000000
--- a/accessibility/source/extended/accessibleiconchoicectrlentry.cxx
+++ /dev/null
@@ -1,734 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/extended/accessibleiconchoicectrlentry.hxx>
-#include <svtools/ivctrl.hxx>
-#include <com/sun/star/awt/Point.hpp>
-#include <com/sun/star/awt/Rectangle.hpp>
-#include <com/sun/star/awt/Size.hpp>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <tools/debug.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/controllayout.hxx>
-#include <toolkit/awt/vclxwindow.hxx>
-#include <toolkit/helper/convert.hxx>
-#include <unotools/accessiblestatesethelper.hxx>
-#include <unotools/accessiblerelationsethelper.hxx>
-#include <cppuhelper/typeprovider.hxx>
-#include <comphelper/sequence.hxx>
-#include <svtools/stringtransfer.hxx>
-#include <comphelper/accessibleeventnotifier.hxx>
-
-#define ACCESSIBLE_ACTION_COUNT 1
-#define AID_EXPAND 0
-#define AID_COLLAPSE 1
-
-namespace
-{
- void checkActionIndex_Impl( sal_Int32 _nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException)
- {
- if ( _nIndex < 0 || _nIndex >= ACCESSIBLE_ACTION_COUNT )
- // only three actions
- throw ::com::sun::star::lang::IndexOutOfBoundsException();
- }
-}
-
-//........................................................................
-namespace accessibility
-{
-
- // class AccessibleIconChoiceCtrlEntry -----------------------------------------------------
-
- using namespace ::com::sun::star::accessibility;
- using namespace ::com::sun::star::uno;
- using namespace ::com::sun::star::lang;
- using namespace ::com::sun::star;
-
- DBG_NAME(AccessibleIconChoiceCtrlEntry)
-
- // -----------------------------------------------------------------------------
- // Ctor() and Dtor()
- // -----------------------------------------------------------------------------
- AccessibleIconChoiceCtrlEntry::AccessibleIconChoiceCtrlEntry( SvtIconChoiceCtrl& _rIconCtrl,
- sal_uLong _nPos,
- const Reference< XAccessible >& _xParent ) :
-
- AccessibleIconChoiceCtrlEntry_BASE ( m_aMutex ),
-
- m_pIconCtrl ( &_rIconCtrl ),
- m_nIndex ( _nPos ),
- m_nClientId ( 0 ),
- m_xParent ( _xParent )
-
- {
- osl_incrementInterlockedCount( &m_refCount );
- {
- Reference< XComponent > xComp( m_xParent, UNO_QUERY );
- if ( xComp.is() )
- xComp->addEventListener( this );
- }
- osl_decrementInterlockedCount( &m_refCount );
-
- DBG_CTOR( AccessibleIconChoiceCtrlEntry, NULL );
- }
- // -----------------------------------------------------------------------------
- void AccessibleIconChoiceCtrlEntry::disposing( const EventObject& _rSource )
-throw(RuntimeException)
- {
- if ( _rSource.Source == m_xParent )
- {
- dispose();
- DBG_ASSERT( !m_xParent.is() && ( NULL == m_pIconCtrl ), "" );
- }
- }
- // -----------------------------------------------------------------------------
- AccessibleIconChoiceCtrlEntry::~AccessibleIconChoiceCtrlEntry()
- {
- DBG_DTOR( AccessibleIconChoiceCtrlEntry, NULL );
-
- if ( IsAlive_Impl() )
- {
- // increment ref count to prevent double call of Dtor
- osl_incrementInterlockedCount( &m_refCount );
- dispose();
- }
- }
- // -----------------------------------------------------------------------------
- Rectangle AccessibleIconChoiceCtrlEntry::GetBoundingBox_Impl() const
- {
- Rectangle aRect;
- SvxIconChoiceCtrlEntry* pEntry = m_pIconCtrl->GetEntry( m_nIndex );
- if ( pEntry )
- aRect = m_pIconCtrl->GetBoundingBox( pEntry );
-
- return aRect;
- }
- // -----------------------------------------------------------------------------
- Rectangle AccessibleIconChoiceCtrlEntry::GetBoundingBoxOnScreen_Impl() const
- {
- Rectangle aRect;
- SvxIconChoiceCtrlEntry* pEntry = m_pIconCtrl->GetEntry( m_nIndex );
- if ( pEntry )
- {
- aRect = m_pIconCtrl->GetBoundingBox( pEntry );
- Point aTopLeft = aRect.TopLeft();
- aTopLeft += m_pIconCtrl->GetWindowExtentsRelative( NULL ).TopLeft();
- aRect = Rectangle( aTopLeft, aRect.GetSize() );
- }
-
- return aRect;
- }
- // -----------------------------------------------------------------------------
- sal_Bool AccessibleIconChoiceCtrlEntry::IsAlive_Impl() const
- {
- return ( !rBHelper.bDisposed && !rBHelper.bInDispose && m_pIconCtrl );
- }
- // -----------------------------------------------------------------------------
- sal_Bool AccessibleIconChoiceCtrlEntry::IsShowing_Impl() const
- {
- sal_Bool bShowing = sal_False;
- Reference< XAccessibleContext > m_xParentContext =
- m_xParent.is() ? m_xParent->getAccessibleContext() : Reference< XAccessibleContext >();
- if( m_xParentContext.is() )
- {
- Reference< XAccessibleComponent > xParentComp( m_xParentContext, uno::UNO_QUERY );
- if( xParentComp.is() )
- bShowing = GetBoundingBox_Impl().IsOver( VCLRectangle( xParentComp->getBounds() ) );
- }
-
- return bShowing;
- }
- // -----------------------------------------------------------------------------
- Rectangle AccessibleIconChoiceCtrlEntry::GetBoundingBox() throw ( lang::DisposedException )
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- EnsureIsAlive();
- return GetBoundingBox_Impl();
- }
- // -----------------------------------------------------------------------------
- Rectangle AccessibleIconChoiceCtrlEntry::GetBoundingBoxOnScreen() throw ( lang::DisposedException )
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- EnsureIsAlive();
- return GetBoundingBoxOnScreen_Impl();
- }
- // -----------------------------------------------------------------------------
- void AccessibleIconChoiceCtrlEntry::EnsureIsAlive() const throw ( lang::DisposedException )
- {
- if ( !IsAlive_Impl() )
- throw lang::DisposedException();
- }
- // -----------------------------------------------------------------------------
- ::rtl::OUString AccessibleIconChoiceCtrlEntry::implGetText()
- {
- ::rtl::OUString sRet;
- SvxIconChoiceCtrlEntry* pEntry = m_pIconCtrl->GetEntry( m_nIndex );
- if ( pEntry )
- sRet = pEntry->GetDisplayText();
- return sRet;
- }
- // -----------------------------------------------------------------------------
- Locale AccessibleIconChoiceCtrlEntry::implGetLocale()
- {
- Locale aLocale;
- aLocale = Application::GetSettings().GetUILocale();
-
- return aLocale;
- }
- void AccessibleIconChoiceCtrlEntry::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
- {
- nStartIndex = 0;
- nEndIndex = 0;
- }
- // -----------------------------------------------------------------------------
- // XTypeProvider
- // -----------------------------------------------------------------------------
- // -----------------------------------------------------------------------------
- Sequence< sal_Int8 > AccessibleIconChoiceCtrlEntry::getImplementationId() throw (RuntimeException)
- {
- static ::cppu::OImplementationId* pId = NULL;
-
- if ( !pId )
- {
- ::osl::Guard< ::osl::Mutex > aGuard( m_aMutex );
-
- if ( !pId )
- {
- static ::cppu::OImplementationId aId;
- pId = &aId;
- }
- }
- return pId->getImplementationId();
- }
- // -----------------------------------------------------------------------------
- // XComponent
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleIconChoiceCtrlEntry::disposing()
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- // Send a disposing to all listeners.
- if ( m_nClientId )
- {
- sal_uInt32 nId = m_nClientId;
- m_nClientId = 0;
- comphelper::AccessibleEventNotifier::revokeClientNotifyDisposing( nId, *this );
- }
-
- Reference< XComponent > xComp( m_xParent, UNO_QUERY );
- if ( xComp.is() )
- xComp->removeEventListener( this );
-
- m_pIconCtrl = NULL;
- m_xParent = NULL;
- }
- // -----------------------------------------------------------------------------
- // XServiceInfo
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrlEntry::getImplementationName() throw(RuntimeException)
- {
- return getImplementationName_Static();
- }
- // -----------------------------------------------------------------------------
- Sequence< ::rtl::OUString > SAL_CALL AccessibleIconChoiceCtrlEntry::getSupportedServiceNames() throw(RuntimeException)
- {
- return getSupportedServiceNames_Static();
- }
- // -----------------------------------------------------------------------------
- sal_Bool SAL_CALL AccessibleIconChoiceCtrlEntry::supportsService( const ::rtl::OUString& _rServiceName ) throw (RuntimeException)
- {
- Sequence< ::rtl::OUString > aSupported( getSupportedServiceNames() );
- const ::rtl::OUString* pSupported = aSupported.getConstArray();
- const ::rtl::OUString* pEnd = pSupported + aSupported.getLength();
- for ( ; pSupported != pEnd && !pSupported->equals(_rServiceName); ++pSupported )
- ;
-
- return pSupported != pEnd;
- }
- // -----------------------------------------------------------------------------
- // XServiceInfo - static methods
- // -----------------------------------------------------------------------------
- Sequence< ::rtl::OUString > AccessibleIconChoiceCtrlEntry::getSupportedServiceNames_Static(void) throw( RuntimeException )
- {
- Sequence< ::rtl::OUString > aSupported(3);
- aSupported[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleContext") );
- aSupported[1] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleComponent") );
- aSupported[2] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleIconChoiceControlEntry") );
- return aSupported;
- }
- // -----------------------------------------------------------------------------
- ::rtl::OUString AccessibleIconChoiceCtrlEntry::getImplementationName_Static(void) throw( RuntimeException )
- {
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.svtools.AccessibleIconChoiceControlEntry") );
- }
- // -----------------------------------------------------------------------------
- // XAccessible
- // -----------------------------------------------------------------------------
- Reference< XAccessibleContext > SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleContext( ) throw (RuntimeException)
- {
- EnsureIsAlive();
- return this;
- }
- // -----------------------------------------------------------------------------
- // XAccessibleContext
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleChildCount( ) throw (RuntimeException)
- {
- return 0; // no children
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleChild( sal_Int32 ) throw (IndexOutOfBoundsException,RuntimeException)
- {
- throw IndexOutOfBoundsException();
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleParent( ) throw (RuntimeException)
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- EnsureIsAlive();
- return m_xParent;
- }
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleIndexInParent( ) throw (RuntimeException)
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- return m_nIndex;
- }
- // -----------------------------------------------------------------------------
- sal_Int16 SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleRole( ) throw (RuntimeException)
- {
- return AccessibleRole::LABEL;
- }
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleDescription( ) throw (RuntimeException)
- {
- // no description for every item
- return ::rtl::OUString();
- }
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleName( ) throw (RuntimeException)
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- EnsureIsAlive();
- return implGetText();
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessibleRelationSet > SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleRelationSet( ) throw (RuntimeException)
- {
- return new utl::AccessibleRelationSetHelper;
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessibleStateSet > SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleStateSet( ) throw (RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
- Reference< XAccessibleStateSet > xStateSet = pStateSetHelper;
-
- if ( IsAlive_Impl() )
- {
- pStateSetHelper->AddState( AccessibleStateType::TRANSIENT );
- pStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
- pStateSetHelper->AddState( AccessibleStateType::ENABLED );
- pStateSetHelper->AddState( AccessibleStateType::SENSITIVE );
- if ( IsShowing_Impl() )
- {
- pStateSetHelper->AddState( AccessibleStateType::SHOWING );
- pStateSetHelper->AddState( AccessibleStateType::VISIBLE );
- }
-
- if ( m_pIconCtrl && m_pIconCtrl->GetCursor() == m_pIconCtrl->GetEntry( m_nIndex ) )
- pStateSetHelper->AddState( AccessibleStateType::SELECTED );
- }
- else
- pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
-
- return xStateSet;
- }
- // -----------------------------------------------------------------------------
- Locale SAL_CALL AccessibleIconChoiceCtrlEntry::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- return implGetLocale();
- }
- // -----------------------------------------------------------------------------
- // XAccessibleComponent
- // -----------------------------------------------------------------------------
- sal_Bool SAL_CALL AccessibleIconChoiceCtrlEntry::containsPoint( const awt::Point& rPoint ) throw (RuntimeException)
- {
- return Rectangle( Point(), GetBoundingBox().GetSize() ).IsInside( VCLPoint( rPoint ) );
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleAtPoint( const awt::Point& ) throw (RuntimeException)
- {
- return Reference< XAccessible >();
- }
- // -----------------------------------------------------------------------------
- awt::Rectangle SAL_CALL AccessibleIconChoiceCtrlEntry::getBounds( ) throw (RuntimeException)
- {
- return AWTRectangle( GetBoundingBox() );
- }
- // -----------------------------------------------------------------------------
- awt::Point SAL_CALL AccessibleIconChoiceCtrlEntry::getLocation( ) throw (RuntimeException)
- {
- return AWTPoint( GetBoundingBox().TopLeft() );
- }
- // -----------------------------------------------------------------------------
- awt::Point SAL_CALL AccessibleIconChoiceCtrlEntry::getLocationOnScreen( ) throw (RuntimeException)
- {
- return AWTPoint( GetBoundingBoxOnScreen().TopLeft() );
- }
- // -----------------------------------------------------------------------------
- awt::Size SAL_CALL AccessibleIconChoiceCtrlEntry::getSize( ) throw (RuntimeException)
- {
- return AWTSize( GetBoundingBox().GetSize() );
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleIconChoiceCtrlEntry::grabFocus( ) throw (RuntimeException)
- {
- // do nothing, because no focus for each item
- }
- // -----------------------------------------------------------------------------
- sal_Int32 AccessibleIconChoiceCtrlEntry::getForeground( ) throw (RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- sal_Int32 nColor = 0;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- nColor = xParentComp->getForeground();
- }
-
- return nColor;
- }
- // -----------------------------------------------------------------------------
- sal_Int32 AccessibleIconChoiceCtrlEntry::getBackground( ) throw (RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- sal_Int32 nColor = 0;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- nColor = xParentComp->getBackground();
- }
-
- return nColor;
- }
- // -----------------------------------------------------------------------------
- // XAccessibleText
- // -----------------------------------------------------------------------------
- // -----------------------------------------------------------------------------
- awt::Rectangle SAL_CALL AccessibleIconChoiceCtrlEntry::getCharacterBounds( sal_Int32 _nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- if ( ( 0 > _nIndex ) || ( getCharacterCount() <= _nIndex ) )
- throw IndexOutOfBoundsException();
-
- awt::Rectangle aBounds( 0, 0, 0, 0 );
- if ( m_pIconCtrl )
- {
- Rectangle aItemRect = GetBoundingBox_Impl();
- Rectangle aCharRect = m_pIconCtrl->GetEntryCharacterBounds( m_nIndex, _nIndex );
- aCharRect.Move( -aItemRect.Left(), -aItemRect.Top() );
- aBounds = AWTRectangle( aCharRect );
- }
-
- return aBounds;
- }
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleIconChoiceCtrlEntry::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- sal_Int32 nIndex = -1;
- if ( m_pIconCtrl )
- {
- ::vcl::ControlLayoutData aLayoutData;
- Rectangle aItemRect = GetBoundingBox_Impl();
- m_pIconCtrl->RecordLayoutData( &aLayoutData, aItemRect );
- Point aPnt( VCLPoint( aPoint ) );
- aPnt += aItemRect.TopLeft();
- nIndex = aLayoutData.GetIndexForPoint( aPnt );
-
- long nLen = aLayoutData.m_aUnicodeBoundRects.size();
- for ( long i = 0; i < nLen; ++i )
- {
- Rectangle aRect = aLayoutData.GetCharacterBounds(i);
- sal_Bool bInside = aRect.IsInside( aPnt );
-
- if ( bInside )
- break;
- }
- }
-
- return nIndex;
- }
- // -----------------------------------------------------------------------------
- sal_Bool SAL_CALL AccessibleIconChoiceCtrlEntry::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- String sText = getText();
- if ( ( 0 > nStartIndex ) || ( sText.Len() <= nStartIndex )
- || ( 0 > nEndIndex ) || ( sText.Len() <= nEndIndex ) )
- throw IndexOutOfBoundsException();
-
- sal_Int32 nLen = nEndIndex - nStartIndex + 1;
- ::svt::OStringTransfer::CopyString( sText.Copy( (sal_uInt16)nStartIndex, (sal_uInt16)nLen ), m_pIconCtrl );
-
- return sal_True;
- }
- // -----------------------------------------------------------------------------
- // XAccessibleEventBroadcaster
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleIconChoiceCtrlEntry::addEventListener( const Reference< XAccessibleEventListener >& xListener ) throw (RuntimeException)
- {
- if (xListener.is())
- {
- ::osl::MutexGuard aGuard( m_aMutex );
- if (!m_nClientId)
- m_nClientId = comphelper::AccessibleEventNotifier::registerClient( );
- comphelper::AccessibleEventNotifier::addEventListener( m_nClientId, xListener );
- }
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleIconChoiceCtrlEntry::removeEventListener( const Reference< XAccessibleEventListener >& xListener ) throw (RuntimeException)
- {
- if (xListener.is())
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- sal_Int32 nListenerCount = comphelper::AccessibleEventNotifier::removeEventListener( m_nClientId, xListener );
- if ( !nListenerCount )
- {
- // no listeners anymore
- // -> revoke ourself. This may lead to the notifier thread dying (if we were the last client),
- // and at least to us not firing any events anymore, in case somebody calls
- // NotifyAccessibleEvent, again
- sal_Int32 nId = m_nClientId;
- m_nClientId = 0;
- comphelper::AccessibleEventNotifier::revokeClient( nId );
- }
- }
- }
-
- sal_Int32 SAL_CALL AccessibleIconChoiceCtrlEntry::getCaretPosition( ) throw (::com::sun::star::uno::RuntimeException)
- {
- return -1;
- }
- sal_Bool SAL_CALL AccessibleIconChoiceCtrlEntry::setCaretPosition ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
-
- if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
- }
- sal_Unicode SAL_CALL AccessibleIconChoiceCtrlEntry::getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getCharacter( nIndex );
- }
- ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL AccessibleIconChoiceCtrlEntry::getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
-
- ::rtl::OUString sText( implGetText() );
-
- if ( !implIsValidIndex( nIndex, sText.getLength() ) )
- throw IndexOutOfBoundsException();
-
- return ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >();
- }
- sal_Int32 SAL_CALL AccessibleIconChoiceCtrlEntry::getCharacterCount( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getCharacterCount( );
- }
-
- ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrlEntry::getSelectedText( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getSelectedText( );
- }
- sal_Int32 SAL_CALL AccessibleIconChoiceCtrlEntry::getSelectionStart( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getSelectionStart( );
- }
- sal_Int32 SAL_CALL AccessibleIconChoiceCtrlEntry::getSelectionEnd( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getSelectionEnd( );
- }
- sal_Bool SAL_CALL AccessibleIconChoiceCtrlEntry::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
-
- if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
- }
- ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrlEntry::getText( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getText( );
- }
- ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrlEntry::getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getTextRange( nStartIndex, nEndIndex );
- }
- ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleIconChoiceCtrlEntry::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getTextAtIndex( nIndex ,aTextType);
- }
- ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleIconChoiceCtrlEntry::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getTextBeforeIndex( nIndex ,aTextType);
- }
- ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleIconChoiceCtrlEntry::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
-
- return OCommonAccessibleText::getTextBehindIndex( nIndex ,aTextType);
- }
-
- // -----------------------------------------------------------------------------
- // XAccessibleAction
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleActionCount( ) throw (RuntimeException)
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- // three actions supported
- return ACCESSIBLE_ACTION_COUNT;
- }
- // -----------------------------------------------------------------------------
- sal_Bool SAL_CALL AccessibleIconChoiceCtrlEntry::doAccessibleAction( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- sal_Bool bRet = sal_False;
- checkActionIndex_Impl( nIndex );
- EnsureIsAlive();
-
- SvxIconChoiceCtrlEntry* pEntry = m_pIconCtrl->GetEntry( m_nIndex );
- if ( pEntry && !pEntry->IsSelected() )
- {
- m_pIconCtrl->SetNoSelection();
- m_pIconCtrl->SetCursor( pEntry );
- bRet = sal_True;
- }
-
- return bRet;
- }
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleActionDescription( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- checkActionIndex_Impl( nIndex );
- EnsureIsAlive();
-
- static const ::rtl::OUString sActionDesc( RTL_CONSTASCII_USTRINGPARAM( "Select" ) );
- return sActionDesc;
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessibleKeyBinding > AccessibleIconChoiceCtrlEntry::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- Reference< XAccessibleKeyBinding > xRet;
- checkActionIndex_Impl( nIndex );
- // ... which key?
- return xRet;
- }
-//........................................................................
-}// namespace accessibility
-//........................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/accessiblelistbox.cxx b/accessibility/source/extended/accessiblelistbox.cxx
deleted file mode 100644
index c1311f216..000000000
--- a/accessibility/source/extended/accessiblelistbox.cxx
+++ /dev/null
@@ -1,433 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/extended/accessiblelistbox.hxx>
-#include <accessibility/extended/accessiblelistboxentry.hxx>
-#include <svtools/svtreebx.hxx>
-#include <com/sun/star/awt/Point.hpp>
-#include <com/sun/star/awt/Rectangle.hpp>
-#include <com/sun/star/awt/Size.hpp>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <tools/debug.hxx>
-#include <vcl/svapp.hxx>
-#include <toolkit/awt/vclxwindow.hxx>
-#include <toolkit/helper/convert.hxx>
-#include <unotools/accessiblestatesethelper.hxx>
-
-//........................................................................
-namespace accessibility
-{
-//........................................................................
-
- // class AccessibleListBox -----------------------------------------------------
-
- using namespace ::com::sun::star::accessibility;
- using namespace ::com::sun::star::uno;
- using namespace ::com::sun::star::lang;
- using namespace ::com::sun::star;
-
- DBG_NAME(AccessibleListBox)
-
- // -----------------------------------------------------------------------------
- // Ctor() and Dtor()
- // -----------------------------------------------------------------------------
- AccessibleListBox::AccessibleListBox( SvTreeListBox& _rListBox, const Reference< XAccessible >& _xParent ) :
-
- VCLXAccessibleComponent( _rListBox.GetWindowPeer() ),
- m_xParent( _xParent )
- {
- DBG_CTOR( AccessibleListBox, NULL );
- }
- // -----------------------------------------------------------------------------
- AccessibleListBox::~AccessibleListBox()
- {
- DBG_DTOR( AccessibleListBox, NULL );
- if ( isAlive() )
- {
- // increment ref count to prevent double call of Dtor
- osl_incrementInterlockedCount( &m_refCount );
- dispose();
- }
- }
- IMPLEMENT_FORWARD_XINTERFACE2(AccessibleListBox, VCLXAccessibleComponent, AccessibleListBox_BASE)
- IMPLEMENT_FORWARD_XTYPEPROVIDER2(AccessibleListBox, VCLXAccessibleComponent, AccessibleListBox_BASE)
- // -----------------------------------------------------------------------------
- SvTreeListBox* AccessibleListBox::getListBox() const
- {
- return static_cast< SvTreeListBox* >( const_cast<AccessibleListBox*>(this)->GetWindow() );
- }
- // -----------------------------------------------------------------------------
- void AccessibleListBox::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
- {
- if ( isAlive() )
- {
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_CHECKBOX_TOGGLE :
- {
- if ( getListBox() && getListBox()->HasFocus() )
- {
- SvLBoxEntry* pEntry = static_cast< SvLBoxEntry* >( rVclWindowEvent.GetData() );
- if ( !pEntry )
- pEntry = getListBox()->GetCurEntry();
-
- if ( pEntry )
- {
- Reference< XAccessible > xChild = new AccessibleListBoxEntry( *getListBox(), pEntry, this );
- uno::Any aOldValue, aNewValue;
- aNewValue <<= xChild;
- NotifyAccessibleEvent( AccessibleEventId::ACTIVE_DESCENDANT_CHANGED, aOldValue, aNewValue );
- }
- }
- break;
- }
-
- case VCLEVENT_LISTBOX_SELECT :
- {
- // First send an event that tells the listeners of a
- // modified selection. The active descendant event is
- // send after that so that the receiving AT has time to
- // read the text or name of the active child.
- NotifyAccessibleEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
- if ( getListBox() && getListBox()->HasFocus() )
- {
- SvLBoxEntry* pEntry = static_cast< SvLBoxEntry* >( rVclWindowEvent.GetData() );
- if ( pEntry )
- {
- Reference< XAccessible > xChild = new AccessibleListBoxEntry( *getListBox(), pEntry, this );
- uno::Any aOldValue, aNewValue;
- aNewValue <<= xChild;
- NotifyAccessibleEvent( AccessibleEventId::ACTIVE_DESCENDANT_CHANGED, aOldValue, aNewValue );
- }
- }
- break;
-
- // #i92103#
- case VCLEVENT_ITEM_EXPANDED :
- case VCLEVENT_ITEM_COLLAPSED :
- {
- SvLBoxEntry* pEntry = static_cast< SvLBoxEntry* >( rVclWindowEvent.GetData() );
- if ( pEntry )
- {
- AccessibleListBoxEntry* pAccListBoxEntry =
- new AccessibleListBoxEntry( *getListBox(), pEntry, this );
- Reference< XAccessible > xChild = pAccListBoxEntry;
- const short nAccEvent =
- ( rVclWindowEvent.GetId() == VCLEVENT_ITEM_EXPANDED )
- ? AccessibleEventId::LISTBOX_ENTRY_EXPANDED
- : AccessibleEventId::LISTBOX_ENTRY_COLLAPSED;
- uno::Any aListBoxEntry;
- aListBoxEntry <<= xChild;
- NotifyAccessibleEvent( nAccEvent, Any(), aListBoxEntry );
- if ( getListBox() && getListBox()->HasFocus() )
- {
- NotifyAccessibleEvent( AccessibleEventId::ACTIVE_DESCENDANT_CHANGED, Any(), aListBoxEntry );
- }
- }
- break;
- }
- }
- default:
- VCLXAccessibleComponent::ProcessWindowEvent (rVclWindowEvent);
- }
- }
- }
- // -----------------------------------------------------------------------------
- void AccessibleListBox::ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent )
- {
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_WINDOW_SHOW:
- case VCLEVENT_WINDOW_HIDE:
- {
- }
- break;
- default:
- {
- VCLXAccessibleComponent::ProcessWindowChildEvent( rVclWindowEvent );
- }
- break;
- }
- }
-
- // -----------------------------------------------------------------------------
- // XComponent
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleListBox::disposing()
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- VCLXAccessibleComponent::disposing();
- m_xParent = NULL;
- }
- // -----------------------------------------------------------------------------
- // XServiceInfo
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleListBox::getImplementationName() throw(RuntimeException)
- {
- return getImplementationName_Static();
- }
- // -----------------------------------------------------------------------------
- Sequence< ::rtl::OUString > SAL_CALL AccessibleListBox::getSupportedServiceNames() throw(RuntimeException)
- {
- return getSupportedServiceNames_Static();
- }
- // -----------------------------------------------------------------------------
- sal_Bool SAL_CALL AccessibleListBox::supportsService( const ::rtl::OUString& _rServiceName ) throw (RuntimeException)
- {
- Sequence< ::rtl::OUString > aSupported( getSupportedServiceNames() );
- const ::rtl::OUString* pSupported = aSupported.getConstArray();
- const ::rtl::OUString* pEnd = pSupported + aSupported.getLength();
- for ( ; pSupported != pEnd && !pSupported->equals(_rServiceName); ++pSupported )
- ;
-
- return pSupported != pEnd;
- }
- // -----------------------------------------------------------------------------
- // XServiceInfo - static methods
- // -----------------------------------------------------------------------------
- Sequence< ::rtl::OUString > AccessibleListBox::getSupportedServiceNames_Static(void) throw( RuntimeException )
- {
- Sequence< ::rtl::OUString > aSupported(3);
- aSupported[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleContext") );
- aSupported[1] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleComponent") );
- aSupported[2] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleTreeListBox") );
- return aSupported;
- }
- // -----------------------------------------------------------------------------
- ::rtl::OUString AccessibleListBox::getImplementationName_Static(void) throw( RuntimeException )
- {
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.svtools.AccessibleTreeListBox") );
- }
- // -----------------------------------------------------------------------------
- // XAccessible
- // -----------------------------------------------------------------------------
- Reference< XAccessibleContext > SAL_CALL AccessibleListBox::getAccessibleContext( ) throw (RuntimeException)
- {
- ensureAlive();
- return this;
- }
- // -----------------------------------------------------------------------------
- // XAccessibleContext
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleListBox::getAccessibleChildCount( ) throw (RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
-
- sal_Int32 nCount = 0;
- SvTreeListBox* pSvTreeListBox = getListBox();
- if ( pSvTreeListBox )
- nCount = pSvTreeListBox->GetLevelChildCount( NULL );
-
- return nCount;
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleListBox::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException,RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
- SvLBoxEntry* pEntry = getListBox()->GetEntry(i);
- if ( !pEntry )
- throw IndexOutOfBoundsException();
-
- return new AccessibleListBoxEntry( *getListBox(), pEntry, this );
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleListBox::getAccessibleParent( ) throw (RuntimeException)
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- ensureAlive();
- return m_xParent;
- }
- // -----------------------------------------------------------------------------
- sal_Int16 SAL_CALL AccessibleListBox::getAccessibleRole( ) throw (RuntimeException)
- {
- return AccessibleRole::TREE;
- }
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleListBox::getAccessibleDescription( ) throw (RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
- return getListBox()->GetAccessibleDescription();
- }
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleListBox::getAccessibleName( ) throw (RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
- return getListBox()->GetAccessibleName();
- }
- // -----------------------------------------------------------------------------
- // XAccessibleSelection
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleListBox::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
-
- SvLBoxEntry* pEntry = getListBox()->GetEntry( nChildIndex );
- if ( !pEntry )
- throw IndexOutOfBoundsException();
-
- getListBox()->Select( pEntry, sal_True );
- }
- // -----------------------------------------------------------------------------
- sal_Bool SAL_CALL AccessibleListBox::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
-
- SvLBoxEntry* pEntry = getListBox()->GetEntry( nChildIndex );
- if ( !pEntry )
- throw IndexOutOfBoundsException();
-
- return getListBox()->IsSelected( pEntry );
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleListBox::clearAccessibleSelection( ) throw (RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
-
- sal_Int32 i, nCount = 0;
- nCount = getListBox()->GetLevelChildCount( NULL );
- for ( i = 0; i < nCount; ++i )
- {
- SvLBoxEntry* pEntry = getListBox()->GetEntry( i );
- if ( getListBox()->IsSelected( pEntry ) )
- getListBox()->Select( pEntry, sal_False );
- }
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleListBox::selectAllAccessibleChildren( ) throw (RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
-
- sal_Int32 i, nCount = 0;
- nCount = getListBox()->GetLevelChildCount( NULL );
- for ( i = 0; i < nCount; ++i )
- {
- SvLBoxEntry* pEntry = getListBox()->GetEntry( i );
- if ( !getListBox()->IsSelected( pEntry ) )
- getListBox()->Select( pEntry, sal_True );
- }
- }
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleListBox::getSelectedAccessibleChildCount( ) throw (RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
-
- sal_Int32 i, nSelCount = 0, nCount = 0;
- nCount = getListBox()->GetLevelChildCount( NULL );
- for ( i = 0; i < nCount; ++i )
- {
- SvLBoxEntry* pEntry = getListBox()->GetEntry( i );
- if ( getListBox()->IsSelected( pEntry ) )
- ++nSelCount;
- }
-
- return nSelCount;
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleListBox::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
-
- if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getSelectedAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- Reference< XAccessible > xChild;
- sal_Int32 i, nSelCount = 0, nCount = 0;
- nCount = getListBox()->GetLevelChildCount( NULL );
- for ( i = 0; i < nCount; ++i )
- {
- SvLBoxEntry* pEntry = getListBox()->GetEntry( i );
- if ( getListBox()->IsSelected( pEntry ) )
- ++nSelCount;
-
- if ( nSelCount == ( nSelectedChildIndex + 1 ) )
- {
- xChild = new AccessibleListBoxEntry( *getListBox(), pEntry, this );
- break;
- }
- }
-
- return xChild;
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleListBox::deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- ::comphelper::OExternalLockGuard aGuard( this );
-
- ensureAlive();
-
- SvLBoxEntry* pEntry = getListBox()->GetEntry( nSelectedChildIndex );
- if ( !pEntry )
- throw IndexOutOfBoundsException();
-
- getListBox()->Select( pEntry, sal_False );
- }
- // -----------------------------------------------------------------------------
- void AccessibleListBox::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
- {
- VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
- if ( getListBox() && isAlive() )
- {
- rStateSet.AddState( AccessibleStateType::FOCUSABLE );
- rStateSet.AddState( AccessibleStateType::MANAGES_DESCENDANTS );
- if ( getListBox()->GetSelectionMode() == MULTIPLE_SELECTION )
- rStateSet.AddState( AccessibleStateType::MULTI_SELECTABLE );
- }
- }
-
-
-//........................................................................
-}// namespace accessibility
-//........................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/accessiblelistboxentry.cxx b/accessibility/source/extended/accessiblelistboxentry.cxx
deleted file mode 100644
index a597a0ee8..000000000
--- a/accessibility/source/extended/accessiblelistboxentry.cxx
+++ /dev/null
@@ -1,962 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include "accessibility/extended/accessiblelistboxentry.hxx"
-#include <svtools/svtreebx.hxx>
-#include <svtools/stringtransfer.hxx>
-#include <com/sun/star/awt/Point.hpp>
-#include <com/sun/star/awt/Rectangle.hpp>
-#include <com/sun/star/awt/Size.hpp>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRelationType.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <tools/debug.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/controllayout.hxx>
-#include <toolkit/awt/vclxwindow.hxx>
-#include <toolkit/helper/convert.hxx>
-#include <unotools/accessiblestatesethelper.hxx>
-#include <unotools/accessiblerelationsethelper.hxx>
-#include <cppuhelper/typeprovider.hxx>
-#include <comphelper/sequence.hxx>
-#include <comphelper/accessibleeventnotifier.hxx>
-#include <toolkit/helper/vclunohelper.hxx>
-
-#define ACCESSIBLE_ACTION_COUNT 1
-
-namespace
-{
- void checkActionIndex_Impl( sal_Int32 _nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException)
- {
- if ( _nIndex < 0 || _nIndex >= ACCESSIBLE_ACTION_COUNT )
- // only three actions
- throw ::com::sun::star::lang::IndexOutOfBoundsException();
- }
-}
-
-//........................................................................
-namespace accessibility
-{
- // class AccessibleListBoxEntry -----------------------------------------------------
-
- using namespace ::com::sun::star::accessibility;
- using namespace ::com::sun::star::uno;
- using namespace ::com::sun::star::lang;
- using namespace ::com::sun::star;
-
- DBG_NAME(AccessibleListBoxEntry)
-
- // -----------------------------------------------------------------------------
- // Ctor() and Dtor()
- // -----------------------------------------------------------------------------
- AccessibleListBoxEntry::AccessibleListBoxEntry( SvTreeListBox& _rListBox,
- SvLBoxEntry* _pEntry,
- const Reference< XAccessible >& _xParent ) :
-
- AccessibleListBoxEntry_BASE ( m_aMutex ),
- ListBoxAccessibleBase( _rListBox ),
-
- m_nClientId ( 0 ),
- m_aParent ( _xParent )
-
- {
- DBG_CTOR( AccessibleListBoxEntry, NULL );
-
- _rListBox.FillEntryPath( _pEntry, m_aEntryPath );
- }
- // -----------------------------------------------------------------------------
- AccessibleListBoxEntry::~AccessibleListBoxEntry()
- {
- DBG_DTOR( AccessibleListBoxEntry, NULL );
-
- if ( IsAlive_Impl() )
- {
- // increment ref count to prevent double call of Dtor
- osl_incrementInterlockedCount( &m_refCount );
- dispose();
- }
- }
-
- // -----------------------------------------------------------------------------
- Rectangle AccessibleListBoxEntry::GetBoundingBox_Impl() const
- {
- Rectangle aRect;
- SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
- if ( pEntry )
- {
- aRect = getListBox()->GetBoundingRect( pEntry );
- SvLBoxEntry* pParent = getListBox()->GetParent( pEntry );
- if ( pParent )
- {
- // position relative to parent entry
- Point aTopLeft = aRect.TopLeft();
- aTopLeft -= getListBox()->GetBoundingRect( pParent ).TopLeft();
- aRect = Rectangle( aTopLeft, aRect.GetSize() );
- }
- }
-
- return aRect;
- }
- // -----------------------------------------------------------------------------
- Rectangle AccessibleListBoxEntry::GetBoundingBoxOnScreen_Impl() const
- {
- Rectangle aRect;
- SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
- if ( pEntry )
- {
- aRect = getListBox()->GetBoundingRect( pEntry );
- Point aTopLeft = aRect.TopLeft();
- aTopLeft += getListBox()->GetWindowExtentsRelative( NULL ).TopLeft();
- aRect = Rectangle( aTopLeft, aRect.GetSize() );
- }
-
- return aRect;
- }
- // -----------------------------------------------------------------------------
- sal_Bool AccessibleListBoxEntry::IsAlive_Impl() const
- {
- return ( !rBHelper.bDisposed && !rBHelper.bInDispose && isAlive() );
- }
- // -----------------------------------------------------------------------------
- sal_Bool AccessibleListBoxEntry::IsShowing_Impl() const
- {
- Reference< XAccessible > xParent = implGetParentAccessible( );
-
- sal_Bool bShowing = sal_False;
- Reference< XAccessibleContext > m_xParentContext =
- xParent.is() ? xParent->getAccessibleContext() : Reference< XAccessibleContext >();
- if( m_xParentContext.is() )
- {
- Reference< XAccessibleComponent > xParentComp( m_xParentContext, uno::UNO_QUERY );
- if( xParentComp.is() )
- bShowing = GetBoundingBox_Impl().IsOver( VCLRectangle( xParentComp->getBounds() ) );
- }
-
- return bShowing;
- }
- // -----------------------------------------------------------------------------
- Rectangle AccessibleListBoxEntry::GetBoundingBox() throw ( lang::DisposedException )
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- EnsureIsAlive();
- return GetBoundingBox_Impl();
- }
- // -----------------------------------------------------------------------------
- Rectangle AccessibleListBoxEntry::GetBoundingBoxOnScreen() throw ( lang::DisposedException )
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- EnsureIsAlive();
- return GetBoundingBoxOnScreen_Impl();
- }
- // -----------------------------------------------------------------------------
- void AccessibleListBoxEntry::EnsureIsAlive() const throw ( lang::DisposedException )
- {
- if ( !IsAlive_Impl() )
- throw lang::DisposedException();
- }
- // -----------------------------------------------------------------------------
- ::rtl::OUString AccessibleListBoxEntry::implGetText()
- {
- ::rtl::OUString sRet;
- SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
- if ( pEntry )
- sRet = getListBox()->SearchEntryText( pEntry );
- return sRet;
- }
- // -----------------------------------------------------------------------------
- Locale AccessibleListBoxEntry::implGetLocale()
- {
- Locale aLocale;
- aLocale = Application::GetSettings().GetUILocale();
-
- return aLocale;
- }
- void AccessibleListBoxEntry::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
- {
- nStartIndex = 0;
- nEndIndex = 0;
- }
- // -----------------------------------------------------------------------------
- // XTypeProvider
- // -----------------------------------------------------------------------------
- // -----------------------------------------------------------------------------
- Sequence< sal_Int8 > AccessibleListBoxEntry::getImplementationId() throw (RuntimeException)
- {
- static ::cppu::OImplementationId* pId = NULL;
-
- if ( !pId )
- {
- ::osl::Guard< ::osl::Mutex > aGuard( m_aMutex );
-
- if ( !pId )
- {
- static ::cppu::OImplementationId aId;
- pId = &aId;
- }
- }
- return pId->getImplementationId();
- }
-
- // -----------------------------------------------------------------------------
- // XComponent/ListBoxAccessibleBase
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleListBoxEntry::dispose() throw ( uno::RuntimeException )
- {
- AccessibleListBoxEntry_BASE::dispose();
- }
-
- // -----------------------------------------------------------------------------
- // XComponent
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleListBoxEntry::disposing()
- {
- SolarMutexGuard();
- ::osl::MutexGuard aGuard( m_aMutex );
-
- Reference< XAccessible > xKeepAlive( this );
-
- // Send a disposing to all listeners.
- if ( m_nClientId )
- {
- ::comphelper::AccessibleEventNotifier::TClientId nId = m_nClientId;
- m_nClientId = 0;
- ::comphelper::AccessibleEventNotifier::revokeClientNotifyDisposing( nId, *this );
- }
-
- // clean up
- {
-
- ListBoxAccessibleBase::disposing();
- }
- m_aParent = WeakReference< XAccessible >();
- }
- // -----------------------------------------------------------------------------
- // XServiceInfo
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleListBoxEntry::getImplementationName() throw(RuntimeException)
- {
- return getImplementationName_Static();
- }
- // -----------------------------------------------------------------------------
- Sequence< ::rtl::OUString > SAL_CALL AccessibleListBoxEntry::getSupportedServiceNames() throw(RuntimeException)
- {
- return getSupportedServiceNames_Static();
- }
- // -----------------------------------------------------------------------------
- sal_Bool SAL_CALL AccessibleListBoxEntry::supportsService( const ::rtl::OUString& _rServiceName ) throw (RuntimeException)
- {
- Sequence< ::rtl::OUString > aSupported( getSupportedServiceNames() );
- const ::rtl::OUString* pSupported = aSupported.getConstArray();
- const ::rtl::OUString* pEnd = pSupported + aSupported.getLength();
- for ( ; pSupported != pEnd && !pSupported->equals(_rServiceName); ++pSupported )
- ;
-
- return pSupported != pEnd;
- }
- // -----------------------------------------------------------------------------
- // XServiceInfo - static methods
- // -----------------------------------------------------------------------------
- Sequence< ::rtl::OUString > AccessibleListBoxEntry::getSupportedServiceNames_Static(void) throw( RuntimeException )
- {
- Sequence< ::rtl::OUString > aSupported(3);
- aSupported[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleContext") );
- aSupported[1] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleComponent") );
- aSupported[2] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleTreeListBoxEntry") );
- return aSupported;
- }
- // -----------------------------------------------------------------------------
- ::rtl::OUString AccessibleListBoxEntry::getImplementationName_Static(void) throw( RuntimeException )
- {
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.svtools.AccessibleTreeListBoxEntry") );
- }
- // -----------------------------------------------------------------------------
- // XAccessible
- // -----------------------------------------------------------------------------
- Reference< XAccessibleContext > SAL_CALL AccessibleListBoxEntry::getAccessibleContext( ) throw (RuntimeException)
- {
- EnsureIsAlive();
- return this;
- }
- // -----------------------------------------------------------------------------
- // XAccessibleContext
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleListBoxEntry::getAccessibleChildCount( ) throw (RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- EnsureIsAlive();
- SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
- sal_Int32 nCount = 0;
- if ( pEntry )
- nCount = getListBox()->GetLevelChildCount( pEntry );
-
- return nCount;
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleListBoxEntry::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException,RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
-
- SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
- SvLBoxEntry* pEntry = pParent ? getListBox()->GetEntry( pParent, i ) : NULL;
- if ( !pEntry )
- throw IndexOutOfBoundsException();
-
- return new AccessibleListBoxEntry( *getListBox(), pEntry, this );
- }
-
- // -----------------------------------------------------------------------------
- Reference< XAccessible > AccessibleListBoxEntry::implGetParentAccessible( ) const
- {
- Reference< XAccessible > xParent = (Reference< XAccessible >)m_aParent;
- if ( !xParent.is() )
- {
- DBG_ASSERT( m_aEntryPath.size(), "AccessibleListBoxEntry::getAccessibleParent: invalid path!" );
- if ( 1 == m_aEntryPath.size() )
- { // we're a top level entry
- // -> our parent is the tree listbox itself
- if ( getListBox() )
- xParent = getListBox()->GetAccessible( );
- }
- else
- { // we have a entry as parent -> get it's accessible
-
- // shorten our access path by one
- ::std::deque< sal_Int32 > aParentPath( m_aEntryPath );
- aParentPath.pop_back();
-
- // get the entry for this shortened access path
- SvLBoxEntry* pParentEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
- DBG_ASSERT( pParentEntry, "AccessibleListBoxEntry::implGetParentAccessible: could not obtain a parent entry!" );
-
- if ( pParentEntry )
- xParent = new AccessibleListBoxEntry( *getListBox(), pParentEntry, NULL );
- // note that we pass NULL here as parent-accessible:
- // this is allowed, as the AccessibleListBoxEntry class will create it's parent
- // when needed
- }
- }
-
- return xParent;
- }
-
- // -----------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleListBoxEntry::getAccessibleParent( ) throw (RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
-
- return implGetParentAccessible( );
- }
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleListBoxEntry::getAccessibleIndexInParent( ) throw (RuntimeException)
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- DBG_ASSERT( !m_aEntryPath.empty(), "empty path" );
- return m_aEntryPath.empty() ? -1 : m_aEntryPath.back();
- }
- // -----------------------------------------------------------------------------
- sal_Int16 SAL_CALL AccessibleListBoxEntry::getAccessibleRole( ) throw (RuntimeException)
- {
- return AccessibleRole::LABEL;
- }
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleListBoxEntry::getAccessibleDescription( ) throw (RuntimeException)
- {
- // no description for every item
- return ::rtl::OUString();
- }
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleListBoxEntry::getAccessibleName( ) throw (RuntimeException)
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- EnsureIsAlive();
- return implGetText();
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessibleRelationSet > SAL_CALL AccessibleListBoxEntry::getAccessibleRelationSet( ) throw (RuntimeException)
- {
- Reference< XAccessibleRelationSet > xRelSet;
- Reference< XAccessible > xParent;
- if ( m_aEntryPath.size() > 1 ) // not a root entry
- xParent = implGetParentAccessible();
- if ( xParent.is() )
- {
- utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
- Sequence< Reference< XInterface > > aSequence(1);
- aSequence[0] = xParent;
- pRelationSetHelper->AddRelation(
- AccessibleRelation( AccessibleRelationType::NODE_CHILD_OF, aSequence ) );
- xRelSet = pRelationSetHelper;
- }
- return xRelSet;
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessibleStateSet > SAL_CALL AccessibleListBoxEntry::getAccessibleStateSet( ) throw (RuntimeException)
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
- Reference< XAccessibleStateSet > xStateSet = pStateSetHelper;
-
- if ( IsAlive_Impl() )
- {
- pStateSetHelper->AddState( AccessibleStateType::TRANSIENT );
- pStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
- pStateSetHelper->AddState( AccessibleStateType::ENABLED );
- pStateSetHelper->AddState( AccessibleStateType::SENSITIVE );
- if ( getListBox()->IsInplaceEditingEnabled() )
- pStateSetHelper->AddState( AccessibleStateType::EDITABLE );
- if ( IsShowing_Impl() )
- pStateSetHelper->AddState( AccessibleStateType::SHOWING );
- getListBox()->FillAccessibleEntryStateSet(
- getListBox()->GetEntryFromPath( m_aEntryPath ), *pStateSetHelper );
- }
- else
- pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
-
- return xStateSet;
- }
- // -----------------------------------------------------------------------------
- Locale SAL_CALL AccessibleListBoxEntry::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- return implGetLocale();
- }
- // -----------------------------------------------------------------------------
- // XAccessibleComponent
- // -----------------------------------------------------------------------------
- sal_Bool SAL_CALL AccessibleListBoxEntry::containsPoint( const awt::Point& rPoint ) throw (RuntimeException)
- {
- return Rectangle( Point(), GetBoundingBox().GetSize() ).IsInside( VCLPoint( rPoint ) );
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleListBoxEntry::getAccessibleAtPoint( const awt::Point& _aPoint ) throw (RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- EnsureIsAlive();
- SvLBoxEntry* pEntry = getListBox()->GetEntry( VCLPoint( _aPoint ) );
- if ( !pEntry )
- throw RuntimeException();
-
- Reference< XAccessible > xAcc;
- AccessibleListBoxEntry* pAccEntry = new AccessibleListBoxEntry( *getListBox(), pEntry, this );
- Rectangle aRect = pAccEntry->GetBoundingBox_Impl();
- if ( aRect.IsInside( VCLPoint( _aPoint ) ) )
- xAcc = pAccEntry;
- return xAcc;
- }
- // -----------------------------------------------------------------------------
- awt::Rectangle SAL_CALL AccessibleListBoxEntry::getBounds( ) throw (RuntimeException)
- {
- return AWTRectangle( GetBoundingBox() );
- }
- // -----------------------------------------------------------------------------
- awt::Point SAL_CALL AccessibleListBoxEntry::getLocation( ) throw (RuntimeException)
- {
- return AWTPoint( GetBoundingBox().TopLeft() );
- }
- // -----------------------------------------------------------------------------
- awt::Point SAL_CALL AccessibleListBoxEntry::getLocationOnScreen( ) throw (RuntimeException)
- {
- return AWTPoint( GetBoundingBoxOnScreen().TopLeft() );
- }
- // -----------------------------------------------------------------------------
- awt::Size SAL_CALL AccessibleListBoxEntry::getSize( ) throw (RuntimeException)
- {
- return AWTSize( GetBoundingBox().GetSize() );
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleListBoxEntry::grabFocus( ) throw (RuntimeException)
- {
- // do nothing, because no focus for each item
- }
- // -----------------------------------------------------------------------------
- sal_Int32 AccessibleListBoxEntry::getForeground( ) throw (RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- sal_Int32 nColor = 0;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- nColor = xParentComp->getForeground();
- }
-
- return nColor;
- }
- // -----------------------------------------------------------------------------
- sal_Int32 AccessibleListBoxEntry::getBackground( ) throw (RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- sal_Int32 nColor = 0;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- nColor = xParentComp->getBackground();
- }
-
- return nColor;
- }
- // -----------------------------------------------------------------------------
- // XAccessibleText
- // -----------------------------------------------------------------------------
- // -----------------------------------------------------------------------------
- awt::Rectangle SAL_CALL AccessibleListBoxEntry::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- EnsureIsAlive();
-
- if ( !implIsValidIndex( nIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- awt::Rectangle aBounds( 0, 0, 0, 0 );
- SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
- if ( pEntry )
- {
- ::vcl::ControlLayoutData aLayoutData;
- Rectangle aItemRect = GetBoundingBox();
- getListBox()->RecordLayoutData( &aLayoutData, aItemRect );
- Rectangle aCharRect = aLayoutData.GetCharacterBounds( nIndex );
- aCharRect.Move( -aItemRect.Left(), -aItemRect.Top() );
- aBounds = AWTRectangle( aCharRect );
- }
-
- return aBounds;
- }
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleListBoxEntry::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
-
- sal_Int32 nIndex = -1;
- SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
- if ( pEntry )
- {
- ::vcl::ControlLayoutData aLayoutData;
- Rectangle aItemRect = GetBoundingBox();
- getListBox()->RecordLayoutData( &aLayoutData, aItemRect );
- Point aPnt( VCLPoint( aPoint ) );
- aPnt += aItemRect.TopLeft();
- nIndex = aLayoutData.GetIndexForPoint( aPnt );
- }
-
- return nIndex;
- }
- // -----------------------------------------------------------------------------
- sal_Bool SAL_CALL AccessibleListBoxEntry::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
-
- String sText = getText();
- if ( ( 0 > nStartIndex ) || ( sText.Len() <= nStartIndex )
- || ( 0 > nEndIndex ) || ( sText.Len() <= nEndIndex ) )
- throw IndexOutOfBoundsException();
-
- sal_Int32 nLen = nEndIndex - nStartIndex + 1;
- ::svt::OStringTransfer::CopyString( sText.Copy( (sal_uInt16)nStartIndex, (sal_uInt16)nLen ), getListBox() );
-
- return sal_True;
- }
- // -----------------------------------------------------------------------------
- // XAccessibleEventBroadcaster
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleListBoxEntry::addEventListener( const Reference< XAccessibleEventListener >& xListener ) throw (RuntimeException)
- {
- if (xListener.is())
- {
- ::osl::MutexGuard aGuard( m_aMutex );
- if (!m_nClientId)
- m_nClientId = comphelper::AccessibleEventNotifier::registerClient( );
- comphelper::AccessibleEventNotifier::addEventListener( m_nClientId, xListener );
- }
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleListBoxEntry::removeEventListener( const Reference< XAccessibleEventListener >& xListener ) throw (RuntimeException)
- {
- if (xListener.is())
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- sal_Int32 nListenerCount = comphelper::AccessibleEventNotifier::removeEventListener( m_nClientId, xListener );
- if ( !nListenerCount )
- {
- // no listeners anymore
- // -> revoke ourself. This may lead to the notifier thread dying (if we were the last client),
- // and at least to us not firing any events anymore, in case somebody calls
- // NotifyAccessibleEvent, again
- sal_Int32 nId = m_nClientId;
- m_nClientId = 0;
- comphelper::AccessibleEventNotifier::revokeClient( nId );
-
- }
- }
- }
- // -----------------------------------------------------------------------------
- // XAccessibleAction
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleListBoxEntry::getAccessibleActionCount( ) throw (RuntimeException)
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- // three actions supported
- return ACCESSIBLE_ACTION_COUNT;
- }
- // -----------------------------------------------------------------------------
- sal_Bool SAL_CALL AccessibleListBoxEntry::doAccessibleAction( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- sal_Bool bRet = sal_False;
- checkActionIndex_Impl( nIndex );
- EnsureIsAlive();
-
- SvLBoxEntry* pEntry = getListBox()->GetEntryFromPath( m_aEntryPath );
- if ( pEntry )
- {
- if ( getListBox()->IsExpanded( pEntry ) )
- getListBox()->Collapse( pEntry );
- else
- getListBox()->Expand( pEntry );
- bRet = sal_True;
- }
-
- return bRet;
- }
- // -----------------------------------------------------------------------------
- ::rtl::OUString SAL_CALL AccessibleListBoxEntry::getAccessibleActionDescription( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- checkActionIndex_Impl( nIndex );
- EnsureIsAlive();
-
- static const ::rtl::OUString sActionDesc( RTL_CONSTASCII_USTRINGPARAM( "toggleExpand" ) );
- return sActionDesc;
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessibleKeyBinding > AccessibleListBoxEntry::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- Reference< XAccessibleKeyBinding > xRet;
- checkActionIndex_Impl( nIndex );
- // ... which key?
- return xRet;
- }
- // -----------------------------------------------------------------------------
- // XAccessibleSelection
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleListBoxEntry::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- EnsureIsAlive();
-
- SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
- SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, nChildIndex );
- if ( !pEntry )
- throw IndexOutOfBoundsException();
-
- getListBox()->Select( pEntry, sal_True );
- }
- // -----------------------------------------------------------------------------
- sal_Bool SAL_CALL AccessibleListBoxEntry::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- EnsureIsAlive();
-
- SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
- SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, nChildIndex );
- if ( !pEntry )
- throw IndexOutOfBoundsException();
-
- return getListBox()->IsSelected( pEntry );
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleListBoxEntry::clearAccessibleSelection( ) throw (RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- EnsureIsAlive();
-
- SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
- if ( !pParent )
- throw RuntimeException();
- sal_Int32 i, nCount = 0;
- nCount = getListBox()->GetLevelChildCount( pParent );
- for ( i = 0; i < nCount; ++i )
- {
- SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, i );
- if ( getListBox()->IsSelected( pEntry ) )
- getListBox()->Select( pEntry, sal_False );
- }
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleListBoxEntry::selectAllAccessibleChildren( ) throw (RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- EnsureIsAlive();
-
- SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
- if ( !pParent )
- throw RuntimeException();
- sal_Int32 i, nCount = 0;
- nCount = getListBox()->GetLevelChildCount( pParent );
- for ( i = 0; i < nCount; ++i )
- {
- SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, i );
- if ( !getListBox()->IsSelected( pEntry ) )
- getListBox()->Select( pEntry, sal_True );
- }
- }
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleListBoxEntry::getSelectedAccessibleChildCount( ) throw (RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- EnsureIsAlive();
-
- sal_Int32 i, nSelCount = 0, nCount = 0;
-
- SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
- if ( !pParent )
- throw RuntimeException();
- nCount = getListBox()->GetLevelChildCount( pParent );
- for ( i = 0; i < nCount; ++i )
- {
- SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, i );
- if ( getListBox()->IsSelected( pEntry ) )
- ++nSelCount;
- }
-
- return nSelCount;
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleListBoxEntry::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- EnsureIsAlive();
-
- if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getSelectedAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- Reference< XAccessible > xChild;
- sal_Int32 i, nSelCount = 0, nCount = 0;
-
- SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
- if ( !pParent )
- throw RuntimeException();
- nCount = getListBox()->GetLevelChildCount( pParent );
- for ( i = 0; i < nCount; ++i )
- {
- SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, i );
- if ( getListBox()->IsSelected( pEntry ) )
- ++nSelCount;
-
- if ( nSelCount == ( nSelectedChildIndex + 1 ) )
- {
- xChild = new AccessibleListBoxEntry( *getListBox(), pEntry, this );
- break;
- }
- }
-
- return xChild;
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleListBoxEntry::deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- EnsureIsAlive();
-
- SvLBoxEntry* pParent = getListBox()->GetEntryFromPath( m_aEntryPath );
- SvLBoxEntry* pEntry = getListBox()->GetEntry( pParent, nSelectedChildIndex );
- if ( !pEntry )
- throw IndexOutOfBoundsException();
-
- getListBox()->Select( pEntry, sal_False );
- }
- sal_Int32 SAL_CALL AccessibleListBoxEntry::getCaretPosition( ) throw (::com::sun::star::uno::RuntimeException)
- {
- return -1;
- }
- sal_Bool SAL_CALL AccessibleListBoxEntry::setCaretPosition ( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
-
- if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
- }
- sal_Unicode SAL_CALL AccessibleListBoxEntry::getCharacter( sal_Int32 nIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getCharacter( nIndex );
- }
- ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue > SAL_CALL AccessibleListBoxEntry::getCharacterAttributes( sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
-
- ::rtl::OUString sText( implGetText() );
-
- if ( !implIsValidIndex( nIndex, sText.getLength() ) )
- throw IndexOutOfBoundsException();
-
- return ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >();
- }
- sal_Int32 SAL_CALL AccessibleListBoxEntry::getCharacterCount( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getCharacterCount( );
- }
-
- ::rtl::OUString SAL_CALL AccessibleListBoxEntry::getSelectedText( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getSelectedText( );
- }
- sal_Int32 SAL_CALL AccessibleListBoxEntry::getSelectionStart( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getSelectionStart( );
- }
- sal_Int32 SAL_CALL AccessibleListBoxEntry::getSelectionEnd( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getSelectionEnd( );
- }
- sal_Bool SAL_CALL AccessibleListBoxEntry::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
-
- if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
- }
- ::rtl::OUString SAL_CALL AccessibleListBoxEntry::getText( ) throw (::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getText( );
- }
- ::rtl::OUString SAL_CALL AccessibleListBoxEntry::getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getTextRange( nStartIndex, nEndIndex );
- }
- ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleListBoxEntry::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getTextAtIndex( nIndex ,aTextType);
- }
- ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleListBoxEntry::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
- return OCommonAccessibleText::getTextBeforeIndex( nIndex ,aTextType);
- }
- ::com::sun::star::accessibility::TextSegment SAL_CALL AccessibleListBoxEntry::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
- EnsureIsAlive();
-
- return OCommonAccessibleText::getTextBehindIndex( nIndex ,aTextType);
- }
-//........................................................................
-}// namespace accessibility
-//........................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/accessibletabbar.cxx b/accessibility/source/extended/accessibletabbar.cxx
deleted file mode 100644
index ba319541d..000000000
--- a/accessibility/source/extended/accessibletabbar.cxx
+++ /dev/null
@@ -1,557 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/extended/accessibletabbar.hxx>
-#include <svtools/tabbar.hxx>
-#include <accessibility/extended/accessibletabbarpagelist.hxx>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <unotools/accessiblestatesethelper.hxx>
-#include <unotools/accessiblerelationsethelper.hxx>
-#include <vcl/svapp.hxx>
-#include <toolkit/awt/vclxfont.hxx>
-#include <toolkit/helper/convert.hxx>
-
-#include <vector>
-
-
-//.........................................................................
-namespace accessibility
-{
-//.........................................................................
-
- using namespace ::com::sun::star;
- using namespace ::com::sun::star::uno;
- using namespace ::com::sun::star::lang;
- using namespace ::com::sun::star::accessibility;
- using namespace ::comphelper;
-
- DBG_NAME( AccessibleTabBar )
-
- // ----------------------------------------------------
- // class AccessibleTabBar
- // ----------------------------------------------------
-
- AccessibleTabBar::AccessibleTabBar( TabBar* pTabBar )
- :AccessibleTabBarBase( pTabBar )
- {
- DBG_CTOR( AccessibleTabBar, NULL );
-
- if ( m_pTabBar )
- m_aAccessibleChildren.assign( m_pTabBar->GetAccessibleChildWindowCount() + 1, Reference< XAccessible >() );
- }
-
- // -----------------------------------------------------------------------------
-
- AccessibleTabBar::~AccessibleTabBar()
- {
- DBG_DTOR( AccessibleTabBar, NULL );
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBar::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
- {
- Any aOldValue, aNewValue;
-
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_WINDOW_ENABLED:
- {
- aNewValue <<= AccessibleStateType::SENSITIVE;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- aNewValue <<= AccessibleStateType::ENABLED;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
- break;
- case VCLEVENT_WINDOW_DISABLED:
- {
- aOldValue <<= AccessibleStateType::ENABLED;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- aOldValue <<= AccessibleStateType::SENSITIVE;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
- break;
- case VCLEVENT_WINDOW_GETFOCUS:
- {
- aNewValue <<= AccessibleStateType::FOCUSED;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
- break;
- case VCLEVENT_WINDOW_LOSEFOCUS:
- {
- aOldValue <<= AccessibleStateType::FOCUSED;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
- break;
- case VCLEVENT_WINDOW_SHOW:
- {
- aNewValue <<= AccessibleStateType::SHOWING;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
- break;
- case VCLEVENT_WINDOW_HIDE:
- {
- aOldValue <<= AccessibleStateType::SHOWING;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
- break;
- default:
- {
- AccessibleTabBarBase::ProcessWindowEvent( rVclWindowEvent );
- }
- break;
- }
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBar::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
- {
- if ( m_pTabBar )
- {
- if ( m_pTabBar->IsEnabled() )
- {
- rStateSet.AddState( AccessibleStateType::ENABLED );
- rStateSet.AddState( AccessibleStateType::SENSITIVE );
- }
-
- rStateSet.AddState( AccessibleStateType::FOCUSABLE );
-
- if ( m_pTabBar->HasFocus() )
- rStateSet.AddState( AccessibleStateType::FOCUSED );
-
- rStateSet.AddState( AccessibleStateType::VISIBLE );
-
- if ( m_pTabBar->IsVisible() )
- rStateSet.AddState( AccessibleStateType::SHOWING );
-
- if ( m_pTabBar->GetStyle() & WB_SIZEABLE )
- rStateSet.AddState( AccessibleStateType::RESIZABLE );
- }
- }
-
- // -----------------------------------------------------------------------------
- // OCommonAccessibleComponent
- // -----------------------------------------------------------------------------
-
- awt::Rectangle AccessibleTabBar::implGetBounds() throw (RuntimeException)
- {
- awt::Rectangle aBounds;
- if ( m_pTabBar )
- aBounds = AWTRectangle( Rectangle( m_pTabBar->GetPosPixel(), m_pTabBar->GetSizePixel() ) );
-
- return aBounds;
- }
-
- // -----------------------------------------------------------------------------
- // XInterface
- // -----------------------------------------------------------------------------
-
- IMPLEMENT_FORWARD_XINTERFACE2( AccessibleTabBar, AccessibleExtendedComponentHelper_BASE, AccessibleTabBar_BASE )
-
- // -----------------------------------------------------------------------------
- // XTypeProvider
- // -----------------------------------------------------------------------------
-
- IMPLEMENT_FORWARD_XTYPEPROVIDER2( AccessibleTabBar, AccessibleExtendedComponentHelper_BASE, AccessibleTabBar_BASE )
-
- // -----------------------------------------------------------------------------
- // XComponent
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBar::disposing()
- {
- AccessibleTabBarBase::disposing();
-
- // dispose all children
- for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
- {
- Reference< XComponent > xComponent( m_aAccessibleChildren[i], UNO_QUERY );
- if ( xComponent.is() )
- xComponent->dispose();
- }
- m_aAccessibleChildren.clear();
- }
-
- // -----------------------------------------------------------------------------
- // XServiceInfo
- // -----------------------------------------------------------------------------
-
- ::rtl::OUString AccessibleTabBar::getImplementationName() throw (RuntimeException)
- {
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.AccessibleTabBar" ));
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Bool AccessibleTabBar::supportsService( const ::rtl::OUString& rServiceName ) throw (RuntimeException)
- {
- Sequence< ::rtl::OUString > aNames( getSupportedServiceNames() );
- const ::rtl::OUString* pNames = aNames.getConstArray();
- const ::rtl::OUString* pEnd = pNames + aNames.getLength();
- for ( ; pNames != pEnd && !pNames->equals( rServiceName ); ++pNames )
- ;
-
- return pNames != pEnd;
- }
-
- // -----------------------------------------------------------------------------
-
- Sequence< ::rtl::OUString > AccessibleTabBar::getSupportedServiceNames() throw (RuntimeException)
- {
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.AccessibleTabBar" ));
- return aNames;
- }
-
- // -----------------------------------------------------------------------------
- // XAccessible
- // -----------------------------------------------------------------------------
-
- Reference< XAccessibleContext > AccessibleTabBar::getAccessibleContext( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return this;
- }
-
- // -----------------------------------------------------------------------------
- // XAccessibleContext
- // -----------------------------------------------------------------------------
-
- sal_Int32 AccessibleTabBar::getAccessibleChildCount() throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return m_aAccessibleChildren.size();
- }
-
- // -----------------------------------------------------------------------------
-
- Reference< XAccessible > AccessibleTabBar::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- if ( i < 0 || i >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- Reference< XAccessible > xChild = m_aAccessibleChildren[i];
- if ( !xChild.is() )
- {
- if ( m_pTabBar )
- {
- sal_Int32 nCount = m_pTabBar->GetAccessibleChildWindowCount();
-
- if ( i < nCount )
- {
- Window* pChild = m_pTabBar->GetAccessibleChildWindow( (sal_uInt16)i );
- if ( pChild )
- xChild = pChild->GetAccessible();
- }
- else if ( i == nCount )
- {
- xChild = new AccessibleTabBarPageList( m_pTabBar, i );
- }
-
- // insert into child list
- m_aAccessibleChildren[i] = xChild;
- }
- }
-
- return xChild;
- }
-
- // -----------------------------------------------------------------------------
-
- Reference< XAccessible > AccessibleTabBar::getAccessibleParent( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- Reference< XAccessible > xParent;
- if ( m_pTabBar )
- {
- Window* pParent = m_pTabBar->GetAccessibleParentWindow();
- if ( pParent )
- xParent = pParent->GetAccessible();
- }
-
- return xParent;
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Int32 AccessibleTabBar::getAccessibleIndexInParent( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nIndexInParent = -1;
- if ( m_pTabBar )
- {
- Window* pParent = m_pTabBar->GetAccessibleParentWindow();
- if ( pParent )
- {
- for ( sal_uInt16 i = 0, nCount = pParent->GetAccessibleChildWindowCount(); i < nCount; ++i )
- {
- Window* pChild = pParent->GetAccessibleChildWindow( i );
- if ( pChild == static_cast< Window* >( m_pTabBar ) )
- {
- nIndexInParent = i;
- break;
- }
- }
- }
- }
-
- return nIndexInParent;
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Int16 AccessibleTabBar::getAccessibleRole( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return AccessibleRole::PANEL;
- }
-
- // -----------------------------------------------------------------------------
-
- ::rtl::OUString AccessibleTabBar::getAccessibleDescription( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- ::rtl::OUString sDescription;
- if ( m_pTabBar )
- sDescription = m_pTabBar->GetAccessibleDescription();
-
- return sDescription;
- }
-
- // -----------------------------------------------------------------------------
-
- ::rtl::OUString AccessibleTabBar::getAccessibleName( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- ::rtl::OUString sName;
- if ( m_pTabBar )
- sName = m_pTabBar->GetAccessibleName();
-
- return sName;
- }
-
- // -----------------------------------------------------------------------------
-
- Reference< XAccessibleRelationSet > AccessibleTabBar::getAccessibleRelationSet( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
- Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
- return xSet;
- }
-
- // -----------------------------------------------------------------------------
-
- Reference< XAccessibleStateSet > AccessibleTabBar::getAccessibleStateSet( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
- Reference< XAccessibleStateSet > xSet = pStateSetHelper;
-
- if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
- {
- FillAccessibleStateSet( *pStateSetHelper );
- }
- else
- {
- pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
- }
-
- return xSet;
- }
-
- // -----------------------------------------------------------------------------
-
- Locale AccessibleTabBar::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return Application::GetSettings().GetLocale();
- }
-
- // -----------------------------------------------------------------------------
- // XAccessibleComponent
- // -----------------------------------------------------------------------------
-
- Reference< XAccessible > AccessibleTabBar::getAccessibleAtPoint( const awt::Point& rPoint ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- Reference< XAccessible > xChild;
- for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
- {
- Reference< XAccessible > xAcc = getAccessibleChild( i );
- if ( xAcc.is() )
- {
- Reference< XAccessibleComponent > xComp( xAcc->getAccessibleContext(), UNO_QUERY );
- if ( xComp.is() )
- {
- Rectangle aRect = VCLRectangle( xComp->getBounds() );
- Point aPos = VCLPoint( rPoint );
- if ( aRect.IsInside( aPos ) )
- {
- xChild = xAcc;
- break;
- }
- }
- }
- }
-
- return xChild;
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBar::grabFocus( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- if ( m_pTabBar )
- m_pTabBar->GrabFocus();
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Int32 AccessibleTabBar::getForeground( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nColor = 0;
- if ( m_pTabBar )
- {
- if ( m_pTabBar->IsControlForeground() )
- nColor = m_pTabBar->GetControlForeground().GetColor();
- else
- {
- Font aFont;
- if ( m_pTabBar->IsControlFont() )
- aFont = m_pTabBar->GetControlFont();
- else
- aFont = m_pTabBar->GetFont();
- nColor = aFont.GetColor().GetColor();
- }
- }
-
- return nColor;
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Int32 AccessibleTabBar::getBackground( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nColor = 0;
- if ( m_pTabBar )
- {
- if ( m_pTabBar->IsControlBackground() )
- nColor = m_pTabBar->GetControlBackground().GetColor();
- else
- nColor = m_pTabBar->GetBackground().GetColor().GetColor();
- }
-
- return nColor;
- }
-
- // -----------------------------------------------------------------------------
- // XAccessibleExtendedComponent
- // -----------------------------------------------------------------------------
-
- Reference< awt::XFont > AccessibleTabBar::getFont( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- Reference< awt::XFont > xFont;
- if ( m_pTabBar )
- {
- Reference< awt::XDevice > xDev( m_pTabBar->GetComponentInterface(), UNO_QUERY );
- if ( xDev.is() )
- {
- Font aFont;
- if ( m_pTabBar->IsControlFont() )
- aFont = m_pTabBar->GetControlFont();
- else
- aFont = m_pTabBar->GetFont();
- VCLXFont* pVCLXFont = new VCLXFont;
- pVCLXFont->Init( *xDev.get(), aFont );
- xFont = pVCLXFont;
- }
- }
-
- return xFont;
- }
-
- // -----------------------------------------------------------------------------
-
- ::rtl::OUString AccessibleTabBar::getTitledBorderText( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- ::rtl::OUString sText;
- if ( m_pTabBar )
- sText = m_pTabBar->GetText();
-
- return sText;
- }
-
- // -----------------------------------------------------------------------------
-
- ::rtl::OUString AccessibleTabBar::getToolTipText( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- ::rtl::OUString sText;
- if ( m_pTabBar )
- sText = m_pTabBar->GetQuickHelpText();
-
- return sText;
- }
-
- // -----------------------------------------------------------------------------
-
-//.........................................................................
-} // namespace accessibility
-//.........................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/accessibletabbarbase.cxx b/accessibility/source/extended/accessibletabbarbase.cxx
deleted file mode 100644
index 8c485c4f3..000000000
--- a/accessibility/source/extended/accessibletabbarbase.cxx
+++ /dev/null
@@ -1,116 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include "accessibility/extended/accessibletabbarbase.hxx"
-#ifndef ACCESSIBILITY_EXT_ACCESSIBLETABBARPAGELIST
-#include "accessibility/extended/accessibletabbarpagelist.hxx"
-#endif
-#include <toolkit/helper/externallock.hxx>
-#include <svtools/tabbar.hxx>
-
-//.........................................................................
-namespace accessibility
-{
-//.........................................................................
-
-AccessibleTabBarBase::AccessibleTabBarBase( TabBar* pTabBar ) :
- AccessibleExtendedComponentHelper_BASE( new VCLExternalSolarLock() ),
- m_pTabBar( 0 )
-{
- m_pExternalLock = static_cast< VCLExternalSolarLock* >( getExternalLock() );
- SetTabBarPointer( pTabBar );
-}
-
-AccessibleTabBarBase::~AccessibleTabBarBase()
-{
- ClearTabBarPointer();
- DELETEZ( m_pExternalLock );
-}
-
-IMPL_LINK( AccessibleTabBarBase, WindowEventListener, VclSimpleEvent*, pEvent )
-{
- VclWindowEvent* pWinEvent = dynamic_cast< VclWindowEvent* >( pEvent );
- DBG_ASSERT( pWinEvent, "AccessibleTabBarBase::WindowEventListener - unknown window event" );
- if( pWinEvent )
- {
- Window* pEventWindow = pWinEvent->GetWindow();
- DBG_ASSERT( pEventWindow, "AccessibleTabBarBase::WindowEventListener: no window!" );
-
- if( ( pWinEvent->GetId() == VCLEVENT_TABBAR_PAGEREMOVED ) &&
- ( (sal_uInt16)(sal_IntPtr) pWinEvent->GetData() == TabBar::PAGE_NOT_FOUND ) &&
- ( dynamic_cast< AccessibleTabBarPageList *> (this) != NULL ) )
- {
- return 0;
- }
-
- if ( !pEventWindow->IsAccessibilityEventsSuppressed() || (pWinEvent->GetId() == VCLEVENT_OBJECT_DYING) )
- ProcessWindowEvent( *pWinEvent );
- }
- return 0;
-}
-
-void AccessibleTabBarBase::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
-{
- if( rVclWindowEvent.GetId() == VCLEVENT_OBJECT_DYING )
- ClearTabBarPointer();
-}
-
-// XComponent
-
-void AccessibleTabBarBase::disposing()
-{
- AccessibleExtendedComponentHelper_BASE::disposing();
- ClearTabBarPointer();
-}
-
-// private
-
-void AccessibleTabBarBase::SetTabBarPointer( TabBar* pTabBar )
-{
- DBG_ASSERT( !m_pTabBar, "AccessibleTabBarBase::SetTabBarPointer - multiple call" );
- m_pTabBar = pTabBar;
- if( m_pTabBar )
- m_pTabBar->AddEventListener( LINK( this, AccessibleTabBarBase, WindowEventListener ) );
-}
-
-void AccessibleTabBarBase::ClearTabBarPointer()
-{
- if( m_pTabBar )
- {
- m_pTabBar->RemoveEventListener( LINK( this, AccessibleTabBarBase, WindowEventListener ) );
- m_pTabBar = 0;
- }
-}
-
-//.........................................................................
-} // namespace accessibility
-//.........................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/accessibletabbarpage.cxx b/accessibility/source/extended/accessibletabbarpage.cxx
deleted file mode 100644
index f3a4084c5..000000000
--- a/accessibility/source/extended/accessibletabbarpage.cxx
+++ /dev/null
@@ -1,514 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/extended/accessibletabbarpage.hxx>
-#include <svtools/tabbar.hxx>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <unotools/accessiblestatesethelper.hxx>
-#include <unotools/accessiblerelationsethelper.hxx>
-#include <vcl/svapp.hxx>
-#include <toolkit/helper/convert.hxx>
-
-
-//.........................................................................
-namespace accessibility
-{
-//.........................................................................
-
- using namespace ::com::sun::star::accessibility;
- using namespace ::com::sun::star::uno;
- using namespace ::com::sun::star::lang;
- using namespace ::com::sun::star;
- using namespace ::comphelper;
-
- // -----------------------------------------------------------------------------
- // class AccessibleTabBarPage
- // -----------------------------------------------------------------------------
-
- AccessibleTabBarPage::AccessibleTabBarPage( TabBar* pTabBar, sal_uInt16 nPageId, const Reference< XAccessible >& rxParent )
- :AccessibleTabBarBase( pTabBar )
- ,m_nPageId( nPageId )
- ,m_xParent( rxParent )
- {
- m_bEnabled = IsEnabled();
- m_bShowing = IsShowing();
- m_bSelected = IsSelected();
-
- if ( m_pTabBar )
- m_sPageText = m_pTabBar->GetPageText( m_nPageId );
- }
-
- // -----------------------------------------------------------------------------
-
- AccessibleTabBarPage::~AccessibleTabBarPage()
- {
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Bool AccessibleTabBarPage::IsEnabled()
- {
- OExternalLockGuard aGuard( this );
-
- sal_Bool bEnabled = sal_False;
- if ( m_pTabBar )
- bEnabled = m_pTabBar->IsPageEnabled( m_nPageId );
-
- return bEnabled;
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Bool AccessibleTabBarPage::IsShowing()
- {
- sal_Bool bShowing = sal_False;
-
- if ( m_pTabBar && m_pTabBar->IsVisible() )
- bShowing = sal_True;
-
- return bShowing;
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Bool AccessibleTabBarPage::IsSelected()
- {
- sal_Bool bSelected = sal_False;
-
- if ( m_pTabBar && m_pTabBar->GetCurPageId() == m_nPageId )
- bSelected = sal_True;
-
- return bSelected;
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPage::SetEnabled( sal_Bool bEnabled )
- {
- if ( m_bEnabled != bEnabled )
- {
- Any aOldValue[2], aNewValue[2];
- if ( m_bEnabled )
- {
- aOldValue[0] <<= AccessibleStateType::SENSITIVE;
- aOldValue[1] <<= AccessibleStateType::ENABLED;
- }
- else
- {
-
- aNewValue[0] <<= AccessibleStateType::ENABLED;
- aNewValue[1] <<= AccessibleStateType::SENSITIVE;
- }
- m_bEnabled = bEnabled;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue[0], aNewValue[0] );
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue[1], aNewValue[1] );
- }
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPage::SetShowing( sal_Bool bShowing )
- {
- if ( m_bShowing != bShowing )
- {
- Any aOldValue, aNewValue;
- if ( m_bShowing )
- aOldValue <<= AccessibleStateType::SHOWING;
- else
- aNewValue <<= AccessibleStateType::SHOWING;
- m_bShowing = bShowing;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPage::SetSelected( sal_Bool bSelected )
- {
- if ( m_bSelected != bSelected )
- {
- Any aOldValue, aNewValue;
- if ( m_bSelected )
- aOldValue <<= AccessibleStateType::SELECTED;
- else
- aNewValue <<= AccessibleStateType::SELECTED;
- m_bSelected = bSelected;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPage::SetPageText( const ::rtl::OUString& sPageText )
- {
- if ( !m_sPageText.equals( sPageText ) )
- {
- Any aOldValue, aNewValue;
- aOldValue <<= m_sPageText;
- aNewValue <<= sPageText;
- m_sPageText = sPageText;
- NotifyAccessibleEvent( AccessibleEventId::NAME_CHANGED, aOldValue, aNewValue );
- }
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPage::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
- {
- if ( IsEnabled() )
- {
- rStateSet.AddState( AccessibleStateType::ENABLED );
- rStateSet.AddState( AccessibleStateType::SENSITIVE );
- }
-
- rStateSet.AddState( AccessibleStateType::VISIBLE );
-
- if ( IsShowing() )
- rStateSet.AddState( AccessibleStateType::SHOWING );
-
- rStateSet.AddState( AccessibleStateType::SELECTABLE );
-
- if ( IsSelected() )
- rStateSet.AddState( AccessibleStateType::SELECTED );
- }
-
- // -----------------------------------------------------------------------------
- // OCommonAccessibleComponent
- // -----------------------------------------------------------------------------
-
- awt::Rectangle AccessibleTabBarPage::implGetBounds() throw (RuntimeException)
- {
- awt::Rectangle aBounds;
- if ( m_pTabBar )
- {
- // get bounding rectangle relative to the AccessibleTabBar
- aBounds = AWTRectangle( m_pTabBar->GetPageRect( m_nPageId ) );
-
- // get position of the AccessibleTabBarPageList relative to the AccessibleTabBar
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleComponent > xParentComponent( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComponent.is() )
- {
- awt::Point aParentLoc = xParentComponent->getLocation();
-
- // calculate bounding rectangle relative to the AccessibleTabBarPageList
- aBounds.X -= aParentLoc.X;
- aBounds.Y -= aParentLoc.Y;
- }
- }
- }
-
- return aBounds;
- }
-
- // -----------------------------------------------------------------------------
- // XInterface
- // -----------------------------------------------------------------------------
-
- IMPLEMENT_FORWARD_XINTERFACE2( AccessibleTabBarPage, AccessibleExtendedComponentHelper_BASE, AccessibleTabBarPage_BASE )
-
- // -----------------------------------------------------------------------------
- // XTypeProvider
- // -----------------------------------------------------------------------------
-
- IMPLEMENT_FORWARD_XTYPEPROVIDER2( AccessibleTabBarPage, AccessibleExtendedComponentHelper_BASE, AccessibleTabBarPage_BASE )
-
- // -----------------------------------------------------------------------------
- // XComponent
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPage::disposing()
- {
- AccessibleTabBarBase::disposing();
- m_sPageText = ::rtl::OUString();
- }
-
- // -----------------------------------------------------------------------------
- // XServiceInfo
- // -----------------------------------------------------------------------------
-
- ::rtl::OUString AccessibleTabBarPage::getImplementationName() throw (RuntimeException)
- {
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.AccessibleTabBarPage" ));
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Bool AccessibleTabBarPage::supportsService( const ::rtl::OUString& rServiceName ) throw (RuntimeException)
- {
- Sequence< ::rtl::OUString > aNames( getSupportedServiceNames() );
- const ::rtl::OUString* pNames = aNames.getConstArray();
- const ::rtl::OUString* pEnd = pNames + aNames.getLength();
- for ( ; pNames != pEnd && !pNames->equals( rServiceName ); ++pNames )
- ;
-
- return pNames != pEnd;
- }
-
- // -----------------------------------------------------------------------------
-
- Sequence< ::rtl::OUString > AccessibleTabBarPage::getSupportedServiceNames() throw (RuntimeException)
- {
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.AccessibleTabBarPage" ));
- return aNames;
- }
-
- // -----------------------------------------------------------------------------
- // XAccessible
- // -----------------------------------------------------------------------------
-
- Reference< XAccessibleContext > AccessibleTabBarPage::getAccessibleContext( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return this;
- }
-
- // -----------------------------------------------------------------------------
- // XAccessibleContext
- // -----------------------------------------------------------------------------
-
- sal_Int32 AccessibleTabBarPage::getAccessibleChildCount() throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return 0;
- }
-
- // -----------------------------------------------------------------------------
-
- Reference< XAccessible > AccessibleTabBarPage::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- if ( i < 0 || i >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- return Reference< XAccessible >();
- }
-
- // -----------------------------------------------------------------------------
-
- Reference< XAccessible > AccessibleTabBarPage::getAccessibleParent( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return m_xParent;
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Int32 AccessibleTabBarPage::getAccessibleIndexInParent( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nIndexInParent = -1;
- if ( m_pTabBar )
- nIndexInParent = m_pTabBar->GetPagePos( m_nPageId );
-
- return nIndexInParent;
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Int16 AccessibleTabBarPage::getAccessibleRole( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return AccessibleRole::PAGE_TAB;
- }
-
- // -----------------------------------------------------------------------------
-
- ::rtl::OUString AccessibleTabBarPage::getAccessibleDescription( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- ::rtl::OUString sDescription;
- if ( m_pTabBar )
- sDescription = m_pTabBar->GetHelpText( m_nPageId );
-
- return sDescription;
- }
-
- // -----------------------------------------------------------------------------
-
- ::rtl::OUString AccessibleTabBarPage::getAccessibleName( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return m_sPageText;
- }
-
- // -----------------------------------------------------------------------------
-
- Reference< XAccessibleRelationSet > AccessibleTabBarPage::getAccessibleRelationSet( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
- Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
- return xSet;
- }
-
- // -----------------------------------------------------------------------------
-
- Reference< XAccessibleStateSet > AccessibleTabBarPage::getAccessibleStateSet( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
- Reference< XAccessibleStateSet > xSet = pStateSetHelper;
-
- if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
- {
- FillAccessibleStateSet( *pStateSetHelper );
- }
- else
- {
- pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
- }
-
- return xSet;
- }
-
- // -----------------------------------------------------------------------------
-
- Locale AccessibleTabBarPage::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return Application::GetSettings().GetLocale();
- }
-
- // -----------------------------------------------------------------------------
- // XAccessibleComponent
- // -----------------------------------------------------------------------------
-
- Reference< XAccessible > AccessibleTabBarPage::getAccessibleAtPoint( const awt::Point& ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return Reference< XAccessible >();
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPage::grabFocus( ) throw (RuntimeException)
- {
- // no focus
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Int32 AccessibleTabBarPage::getForeground( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nColor = 0;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- nColor = xParentComp->getForeground();
- }
-
- return nColor;
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Int32 AccessibleTabBarPage::getBackground( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nColor = 0;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- nColor = xParentComp->getBackground();
- }
-
- return nColor;
- }
-
- // -----------------------------------------------------------------------------
- // XAccessibleExtendedComponent
- // -----------------------------------------------------------------------------
-
- Reference< awt::XFont > AccessibleTabBarPage::getFont( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- Reference< awt::XFont > xFont;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleExtendedComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- xFont = xParentComp->getFont();
- }
-
- return xFont;
- }
-
- // -----------------------------------------------------------------------------
-
- ::rtl::OUString AccessibleTabBarPage::getTitledBorderText( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return m_sPageText;
- }
-
- // -----------------------------------------------------------------------------
-
- ::rtl::OUString AccessibleTabBarPage::getToolTipText( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return ::rtl::OUString();
- }
-
- // -----------------------------------------------------------------------------
-
-//.........................................................................
-} // namespace accessibility
-//.........................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/accessibletabbarpagelist.cxx b/accessibility/source/extended/accessibletabbarpagelist.cxx
deleted file mode 100644
index 31073238c..000000000
--- a/accessibility/source/extended/accessibletabbarpagelist.cxx
+++ /dev/null
@@ -1,808 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/extended/accessibletabbarpagelist.hxx>
-#include <svtools/tabbar.hxx>
-#include <accessibility/extended/accessibletabbarpage.hxx>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <unotools/accessiblestatesethelper.hxx>
-#include <unotools/accessiblerelationsethelper.hxx>
-#include <tools/debug.hxx>
-#include <vcl/svapp.hxx>
-#include <toolkit/helper/convert.hxx>
-
-
-//.........................................................................
-namespace accessibility
-{
-//.........................................................................
-
- using namespace ::com::sun::star::accessibility;
- using namespace ::com::sun::star::uno;
- using namespace ::com::sun::star::lang;
- using namespace ::com::sun::star;
- using namespace ::comphelper;
-
- DBG_NAME( AccessibleTabBarPageList )
-
- // -----------------------------------------------------------------------------
- // class AccessibleTabBarPageList
- // -----------------------------------------------------------------------------
-
- AccessibleTabBarPageList::AccessibleTabBarPageList( TabBar* pTabBar, sal_Int32 nIndexInParent )
- :AccessibleTabBarBase( pTabBar )
- ,m_nIndexInParent( nIndexInParent )
- {
- DBG_CTOR( AccessibleTabBarPageList, NULL );
- if ( m_pTabBar )
- m_aAccessibleChildren.assign( m_pTabBar->GetPageCount(), Reference< XAccessible >() );
- }
-
- // -----------------------------------------------------------------------------
-
- AccessibleTabBarPageList::~AccessibleTabBarPageList()
- {
- DBG_DTOR( AccessibleTabBarPageList, NULL );
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPageList::UpdateEnabled( sal_Int32 i, sal_Bool bEnabled )
- {
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- AccessibleTabBarPage* pAccessibleTabBarPage = static_cast< AccessibleTabBarPage* >( xChild.get() );
- if ( pAccessibleTabBarPage )
- pAccessibleTabBarPage->SetEnabled( bEnabled );
- }
- }
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPageList::UpdateShowing( sal_Bool bShowing )
- {
- for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- AccessibleTabBarPage* pAccessibleTabBarPage = static_cast< AccessibleTabBarPage* >( xChild.get() );
- if ( pAccessibleTabBarPage )
- pAccessibleTabBarPage->SetShowing( bShowing );
- }
- }
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPageList::UpdateSelected( sal_Int32 i, sal_Bool bSelected )
- {
- NotifyAccessibleEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
-
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- AccessibleTabBarPage* pAccessibleTabBarPage = static_cast< AccessibleTabBarPage* >( xChild.get() );
- if ( pAccessibleTabBarPage )
- pAccessibleTabBarPage->SetSelected( bSelected );
- }
- }
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPageList::UpdatePageText( sal_Int32 i )
- {
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- AccessibleTabBarPage* pAccessibleTabBarPage = static_cast< AccessibleTabBarPage* >( xChild.get() );
- if ( pAccessibleTabBarPage )
- {
- if ( m_pTabBar )
- {
- ::rtl::OUString sPageText = m_pTabBar->GetPageText( m_pTabBar->GetPageId( (sal_uInt16)i ) );
- pAccessibleTabBarPage->SetPageText( sPageText );
- }
- }
- }
- }
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPageList::InsertChild( sal_Int32 i )
- {
- if ( i >= 0 && i <= (sal_Int32)m_aAccessibleChildren.size() )
- {
- // insert entry in child list
- m_aAccessibleChildren.insert( m_aAccessibleChildren.begin() + i, Reference< XAccessible >() );
-
- // send accessible child event
- Reference< XAccessible > xChild( getAccessibleChild( i ) );
- if ( xChild.is() )
- {
- Any aOldValue, aNewValue;
- aNewValue <<= xChild;
- NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
- }
- }
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPageList::RemoveChild( sal_Int32 i )
- {
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- // get the accessible of the removed page
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
-
- // remove entry in child list
- m_aAccessibleChildren.erase( m_aAccessibleChildren.begin() + i );
-
- // send accessible child event
- if ( xChild.is() )
- {
- Any aOldValue, aNewValue;
- aOldValue <<= xChild;
- NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
-
- Reference< XComponent > xComponent( xChild, UNO_QUERY );
- if ( xComponent.is() )
- xComponent->dispose();
- }
- }
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPageList::MoveChild( sal_Int32 i, sal_Int32 j )
- {
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() &&
- j >= 0 && j <= (sal_Int32)m_aAccessibleChildren.size() )
- {
- if ( i < j )
- --j;
-
- // get the accessible of the moved page
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
-
- // remove entry in child list at old position
- m_aAccessibleChildren.erase( m_aAccessibleChildren.begin() + i );
-
- // insert entry in child list at new position
- m_aAccessibleChildren.insert( m_aAccessibleChildren.begin() + j, xChild );
- }
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPageList::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
- {
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_WINDOW_ENABLED:
- {
- Any aNewValue;
- aNewValue <<= AccessibleStateType::SENSITIVE;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, Any(), aNewValue );
- aNewValue <<= AccessibleStateType::ENABLED;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, Any(), aNewValue );
- }
- break;
- case VCLEVENT_WINDOW_DISABLED:
- {
- Any aOldValue;
- aOldValue <<= AccessibleStateType::ENABLED;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, Any() );
- aOldValue <<= AccessibleStateType::SENSITIVE;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, Any() );
- }
- break;
- case VCLEVENT_WINDOW_SHOW:
- {
- Any aOldValue, aNewValue;
- aNewValue <<= AccessibleStateType::SHOWING;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- UpdateShowing( sal_True );
- }
- break;
- case VCLEVENT_WINDOW_HIDE:
- {
- Any aOldValue, aNewValue;
- aOldValue <<= AccessibleStateType::SHOWING;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- UpdateShowing( sal_False );
- }
- break;
- case VCLEVENT_TABBAR_PAGEENABLED:
- {
- if ( m_pTabBar )
- {
- sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
- sal_uInt16 nPagePos = m_pTabBar->GetPagePos( nPageId );
- UpdateEnabled( nPagePos, sal_True );
- }
- }
- break;
- case VCLEVENT_TABBAR_PAGEDISABLED:
- {
- if ( m_pTabBar )
- {
- sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
- sal_uInt16 nPagePos = m_pTabBar->GetPagePos( nPageId );
- UpdateEnabled( nPagePos, sal_False );
- }
- }
- break;
- case VCLEVENT_TABBAR_PAGESELECTED:
- {
- // do nothing
- }
- break;
- case VCLEVENT_TABBAR_PAGEACTIVATED:
- {
- if ( m_pTabBar )
- {
- sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
- sal_uInt16 nPagePos = m_pTabBar->GetPagePos( nPageId );
- UpdateSelected( nPagePos, sal_True );
- }
- }
- break;
- case VCLEVENT_TABBAR_PAGEDEACTIVATED:
- {
- if ( m_pTabBar )
- {
- sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
- sal_uInt16 nPagePos = m_pTabBar->GetPagePos( nPageId );
- UpdateSelected( nPagePos, sal_False );
- }
- }
- break;
- case VCLEVENT_TABBAR_PAGEINSERTED:
- {
- if ( m_pTabBar )
- {
- sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
- sal_uInt16 nPagePos = m_pTabBar->GetPagePos( nPageId );
- InsertChild( nPagePos );
- }
- }
- break;
- case VCLEVENT_TABBAR_PAGEREMOVED:
- {
- if ( m_pTabBar )
- {
- sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
-
- if ( nPageId == TabBar::PAGE_NOT_FOUND )
- {
- for ( sal_Int32 i = m_aAccessibleChildren.size() - 1; i >= 0; --i )
- RemoveChild( i );
- }
- else
- {
- for ( sal_Int32 i = 0, nCount = getAccessibleChildCount(); i < nCount; ++i )
- {
- Reference< XAccessible > xChild( getAccessibleChild( i ) );
- if ( xChild.is() )
- {
- AccessibleTabBarPage* pAccessibleTabBarPage = static_cast< AccessibleTabBarPage* >( xChild.get() );
- if ( pAccessibleTabBarPage && pAccessibleTabBarPage->GetPageId() == nPageId )
- {
- RemoveChild( i );
- break;
- }
- }
- }
- }
- }
- }
- break;
- case VCLEVENT_TABBAR_PAGEMOVED:
- {
- Pair* pPair = (Pair*) rVclWindowEvent.GetData();
- if ( pPair )
- MoveChild( pPair->A(), pPair->B() );
- }
- break;
- case VCLEVENT_TABBAR_PAGETEXTCHANGED:
- {
- sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
- sal_uInt16 nPagePos = m_pTabBar->GetPagePos( nPageId );
- UpdatePageText( nPagePos );
- }
- break;
- default:
- {
- AccessibleTabBarBase::ProcessWindowEvent( rVclWindowEvent );
- }
- break;
- }
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPageList::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
- {
- if ( m_pTabBar )
- {
- if ( m_pTabBar->IsEnabled() )
- {
- rStateSet.AddState( AccessibleStateType::ENABLED );
- rStateSet.AddState( AccessibleStateType::SENSITIVE );
- }
-
- rStateSet.AddState( AccessibleStateType::VISIBLE );
-
- if ( m_pTabBar->IsVisible() )
- rStateSet.AddState( AccessibleStateType::SHOWING );
- }
- }
-
- // -----------------------------------------------------------------------------
- // OCommonAccessibleComponent
- // -----------------------------------------------------------------------------
-
- awt::Rectangle AccessibleTabBarPageList::implGetBounds() throw (RuntimeException)
- {
- awt::Rectangle aBounds;
- if ( m_pTabBar )
- aBounds = AWTRectangle( m_pTabBar->GetPageArea() );
-
- return aBounds;
- }
-
- // -----------------------------------------------------------------------------
- // XInterface
- // -----------------------------------------------------------------------------
-
- IMPLEMENT_FORWARD_XINTERFACE2( AccessibleTabBarPageList, AccessibleExtendedComponentHelper_BASE, AccessibleTabBarPageList_BASE )
-
- // -----------------------------------------------------------------------------
- // XTypeProvider
- // -----------------------------------------------------------------------------
-
- IMPLEMENT_FORWARD_XTYPEPROVIDER2( AccessibleTabBarPageList, AccessibleExtendedComponentHelper_BASE, AccessibleTabBarPageList_BASE )
-
- // -----------------------------------------------------------------------------
- // XComponent
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPageList::disposing()
- {
- AccessibleTabBarBase::disposing();
-
- // dispose all children
- for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
- {
- Reference< XComponent > xComponent( m_aAccessibleChildren[i], UNO_QUERY );
- if ( xComponent.is() )
- xComponent->dispose();
- }
- m_aAccessibleChildren.clear();
- }
-
- // -----------------------------------------------------------------------------
- // XServiceInfo
- // -----------------------------------------------------------------------------
-
- ::rtl::OUString AccessibleTabBarPageList::getImplementationName() throw (RuntimeException)
- {
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.AccessibleTabBarPageList" ));
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Bool AccessibleTabBarPageList::supportsService( const ::rtl::OUString& rServiceName ) throw (RuntimeException)
- {
- Sequence< ::rtl::OUString > aNames( getSupportedServiceNames() );
- const ::rtl::OUString* pNames = aNames.getConstArray();
- const ::rtl::OUString* pEnd = pNames + aNames.getLength();
- for ( ; pNames != pEnd && !pNames->equals( rServiceName ); ++pNames )
- ;
-
- return pNames != pEnd;
- }
-
- // -----------------------------------------------------------------------------
-
- Sequence< ::rtl::OUString > AccessibleTabBarPageList::getSupportedServiceNames() throw (RuntimeException)
- {
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.AccessibleTabBarPageList" ));
- return aNames;
- }
-
- // -----------------------------------------------------------------------------
- // XAccessible
- // -----------------------------------------------------------------------------
-
- Reference< XAccessibleContext > AccessibleTabBarPageList::getAccessibleContext( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return this;
- }
-
- // -----------------------------------------------------------------------------
- // XAccessibleContext
- // -----------------------------------------------------------------------------
-
- sal_Int32 AccessibleTabBarPageList::getAccessibleChildCount() throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return m_aAccessibleChildren.size();
- }
-
- // -----------------------------------------------------------------------------
-
- Reference< XAccessible > AccessibleTabBarPageList::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- if ( i < 0 || i >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- Reference< XAccessible > xChild = m_aAccessibleChildren[i];
- if ( !xChild.is() )
- {
- if ( m_pTabBar )
- {
- sal_uInt16 nPageId = m_pTabBar->GetPageId( (sal_uInt16)i );
-
- xChild = new AccessibleTabBarPage( m_pTabBar, nPageId, this );
-
- // insert into child list
- m_aAccessibleChildren[i] = xChild;
- }
- }
-
- return xChild;
- }
-
- // -----------------------------------------------------------------------------
-
- Reference< XAccessible > AccessibleTabBarPageList::getAccessibleParent( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- Reference< XAccessible > xParent;
- if ( m_pTabBar )
- xParent = m_pTabBar->GetAccessible();
-
- return xParent;
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Int32 AccessibleTabBarPageList::getAccessibleIndexInParent( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return m_nIndexInParent;
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Int16 AccessibleTabBarPageList::getAccessibleRole( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return AccessibleRole::PAGE_TAB_LIST;
- }
-
- // -----------------------------------------------------------------------------
-
- ::rtl::OUString AccessibleTabBarPageList::getAccessibleDescription( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return ::rtl::OUString();
- }
-
- // -----------------------------------------------------------------------------
-
- ::rtl::OUString AccessibleTabBarPageList::getAccessibleName( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return ::rtl::OUString();
- }
-
- // -----------------------------------------------------------------------------
-
- Reference< XAccessibleRelationSet > AccessibleTabBarPageList::getAccessibleRelationSet( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
- Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
- return xSet;
- }
-
- // -----------------------------------------------------------------------------
-
- Reference< XAccessibleStateSet > AccessibleTabBarPageList::getAccessibleStateSet( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
- Reference< XAccessibleStateSet > xSet = pStateSetHelper;
-
- if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
- {
- FillAccessibleStateSet( *pStateSetHelper );
- }
- else
- {
- pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
- }
-
- return xSet;
- }
-
- // -----------------------------------------------------------------------------
-
- Locale AccessibleTabBarPageList::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return Application::GetSettings().GetLocale();
- }
-
- // -----------------------------------------------------------------------------
- // XAccessibleComponent
- // -----------------------------------------------------------------------------
-
- Reference< XAccessible > AccessibleTabBarPageList::getAccessibleAtPoint( const awt::Point& rPoint ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- Reference< XAccessible > xChild;
- for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
- {
- Reference< XAccessible > xAcc = getAccessibleChild( i );
- if ( xAcc.is() )
- {
- Reference< XAccessibleComponent > xComp( xAcc->getAccessibleContext(), UNO_QUERY );
- if ( xComp.is() )
- {
- Rectangle aRect = VCLRectangle( xComp->getBounds() );
- Point aPos = VCLPoint( rPoint );
- if ( aRect.IsInside( aPos ) )
- {
- xChild = xAcc;
- break;
- }
- }
- }
- }
-
- return xChild;
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPageList::grabFocus( ) throw (RuntimeException)
- {
- // no focus
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Int32 AccessibleTabBarPageList::getForeground( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nColor = 0;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- nColor = xParentComp->getForeground();
- }
-
- return nColor;
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Int32 AccessibleTabBarPageList::getBackground( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nColor = 0;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- nColor = xParentComp->getBackground();
- }
-
- return nColor;
- }
-
- // -----------------------------------------------------------------------------
- // XAccessibleExtendedComponent
- // -----------------------------------------------------------------------------
-
- Reference< awt::XFont > AccessibleTabBarPageList::getFont( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- Reference< awt::XFont > xFont;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleExtendedComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- xFont = xParentComp->getFont();
- }
-
- return xFont;
- }
-
- // -----------------------------------------------------------------------------
-
- ::rtl::OUString AccessibleTabBarPageList::getTitledBorderText( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return ::rtl::OUString();
- }
-
- // -----------------------------------------------------------------------------
-
- ::rtl::OUString AccessibleTabBarPageList::getToolTipText( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return ::rtl::OUString();
- }
-
- // -----------------------------------------------------------------------------
- // XAccessibleSelection
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPageList::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- if ( m_pTabBar )
- {
- m_pTabBar->SetCurPageId( m_pTabBar->GetPageId( (sal_uInt16)nChildIndex ) );
- m_pTabBar->Update();
- m_pTabBar->ActivatePage();
- m_pTabBar->Select();
- }
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Bool AccessibleTabBarPageList::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- sal_Bool bSelected = sal_False;
- if ( m_pTabBar && m_pTabBar->GetCurPageId() == m_pTabBar->GetPageId( (sal_uInt16)nChildIndex ) )
- bSelected = sal_True;
-
- return bSelected;
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPageList::clearAccessibleSelection( ) throw (RuntimeException)
- {
- // This method makes no sense in a TabBar, and so does nothing.
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPageList::selectAllAccessibleChildren( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- selectAccessibleChild( 0 );
- }
-
- // -----------------------------------------------------------------------------
-
- sal_Int32 AccessibleTabBarPageList::getSelectedAccessibleChildCount( ) throw (RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- return 1;
- }
-
- // -----------------------------------------------------------------------------
-
- Reference< XAccessible > AccessibleTabBarPageList::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getSelectedAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- Reference< XAccessible > xChild;
-
- for ( sal_Int32 i = 0, j = 0, nCount = getAccessibleChildCount(); i < nCount; i++ )
- {
- if ( isAccessibleChildSelected( i ) && ( j++ == nSelectedChildIndex ) )
- {
- xChild = getAccessibleChild( i );
- break;
- }
- }
-
- return xChild;
- }
-
- // -----------------------------------------------------------------------------
-
- void AccessibleTabBarPageList::deselectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- OExternalLockGuard aGuard( this );
-
- if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- // This method makes no sense in a TabBar, and so does nothing.
- }
-
- // -----------------------------------------------------------------------------
-
-//.........................................................................
-} // namespace accessibility
-//.........................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/accessibletablistbox.cxx b/accessibility/source/extended/accessibletablistbox.cxx
deleted file mode 100644
index a50001d59..000000000
--- a/accessibility/source/extended/accessibletablistbox.cxx
+++ /dev/null
@@ -1,137 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-#include "accessibility/extended/accessibletablistbox.hxx"
-#include "accessibility/extended/accessibletablistboxtable.hxx"
-#include <svtools/svtabbx.hxx>
-#include <comphelper/sequence.hxx>
-
-//........................................................................
-namespace accessibility
-{
-//........................................................................
-
- // class AccessibleTabListBox -----------------------------------------------------
-
- using namespace ::com::sun::star::accessibility;
- using namespace ::com::sun::star::uno;
- using namespace ::com::sun::star::lang;
- using namespace ::com::sun::star;
-
- DBG_NAME(AccessibleTabListBox)
-
- // -----------------------------------------------------------------------------
- // Ctor() and Dtor()
- // -----------------------------------------------------------------------------
- AccessibleTabListBox::AccessibleTabListBox( const Reference< XAccessible >& rxParent, SvHeaderTabListBox& rBox )
- :AccessibleBrowseBox( rxParent, NULL, rBox )
- ,m_pTabListBox( &rBox )
-
- {
- DBG_CTOR( AccessibleTabListBox, NULL );
-
- osl_incrementInterlockedCount( &m_refCount );
- {
- setCreator( this );
- }
- osl_decrementInterlockedCount( &m_refCount );
- }
-
- // -----------------------------------------------------------------------------
- AccessibleTabListBox::~AccessibleTabListBox()
- {
- DBG_DTOR( AccessibleTabListBox, NULL );
-
- if ( isAlive() )
- {
- // increment ref count to prevent double call of Dtor
- osl_incrementInterlockedCount( &m_refCount );
- dispose();
- }
- }
- // -----------------------------------------------------------------------------
- AccessibleBrowseBoxTable* AccessibleTabListBox::createAccessibleTable()
- {
- return new AccessibleTabListBoxTable( this, *m_pTabListBox );
- }
-
- // XInterface -----------------------------------------------------------------
- IMPLEMENT_FORWARD_XINTERFACE2( AccessibleTabListBox, AccessibleBrowseBox, AccessibleTabListBox_Base )
-
- // XTypeProvider --------------------------------------------------------------
- IMPLEMENT_FORWARD_XTYPEPROVIDER2( AccessibleTabListBox, AccessibleBrowseBox, AccessibleTabListBox_Base )
-
- // XAccessibleContext ---------------------------------------------------------
-
- sal_Int32 SAL_CALL AccessibleTabListBox::getAccessibleChildCount()
- throw ( uno::RuntimeException )
- {
- return 2; // header and table
- }
-
- // -----------------------------------------------------------------------------
- Reference< XAccessibleContext > SAL_CALL AccessibleTabListBox::getAccessibleContext() throw ( RuntimeException )
- {
- return this;
- }
-
- // -----------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL
- AccessibleTabListBox::getAccessibleChild( sal_Int32 nChildIndex )
- throw ( IndexOutOfBoundsException, RuntimeException )
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
- ensureIsAlive();
-
- if ( nChildIndex < 0 || nChildIndex > 1 )
- throw IndexOutOfBoundsException();
-
- Reference< XAccessible > xRet;
- if (nChildIndex == 0)
- {
- //! so far the actual implementation object only supports column headers
- xRet = implGetFixedChild( ::svt::BBINDEX_COLUMNHEADERBAR );
- }
- else if (nChildIndex == 1)
- xRet = implGetFixedChild( ::svt::BBINDEX_TABLE );
-
- if ( !xRet.is() )
- throw RuntimeException();
-
- return xRet;
- }
-
-//........................................................................
-}// namespace accessibility
-//........................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/accessibletablistboxtable.cxx b/accessibility/source/extended/accessibletablistboxtable.cxx
deleted file mode 100644
index ae793039a..000000000
--- a/accessibility/source/extended/accessibletablistboxtable.cxx
+++ /dev/null
@@ -1,374 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-#include "accessibility/extended/accessibletablistboxtable.hxx"
-#include "accessibility/extended/AccessibleBrowseBoxTableCell.hxx"
-#include "accessibility/extended/AccessibleBrowseBoxCheckBoxCell.hxx"
-#include <svtools/svtabbx.hxx>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-
-//........................................................................
-namespace accessibility
-{
-//........................................................................
-
- // class AccessibleTabListBoxTable ---------------------------------------------
-
- using namespace ::com::sun::star::accessibility;
- using namespace ::com::sun::star::uno;
- using namespace ::com::sun::star::lang;
- using namespace ::com::sun::star;
-
- DBG_NAME(AccessibleTabListBoxTable)
-
- // -----------------------------------------------------------------------------
- // Ctor() and Dtor()
- // -----------------------------------------------------------------------------
- AccessibleTabListBoxTable::AccessibleTabListBoxTable( const Reference< XAccessible >& rxParent, SvHeaderTabListBox& rBox ) :
-
- AccessibleBrowseBoxTable( rxParent, rBox ),
-
- m_pTabListBox ( &rBox )
-
- {
- DBG_CTOR( AccessibleTabListBoxTable, NULL );
-
- m_pTabListBox->AddEventListener( LINK( this, AccessibleTabListBoxTable, WindowEventListener ) );
- }
- // -----------------------------------------------------------------------------
- AccessibleTabListBoxTable::~AccessibleTabListBoxTable()
- {
- DBG_DTOR( AccessibleTabListBoxTable, NULL );
-
- if ( isAlive() )
- {
- m_pTabListBox = NULL;
-
- // increment ref count to prevent double call of Dtor
- osl_incrementInterlockedCount( &m_refCount );
- dispose();
- }
- }
- // -----------------------------------------------------------------------------
- void AccessibleTabListBoxTable::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
- {
- if ( isAlive() )
- {
- sal_uLong nEventId = rVclWindowEvent.GetId();
- switch ( nEventId )
- {
- case VCLEVENT_OBJECT_DYING :
- {
- m_pTabListBox->RemoveEventListener( LINK( this, AccessibleTabListBoxTable, WindowEventListener ) );
- m_pTabListBox = NULL;
- break;
- }
-
- case VCLEVENT_CONTROL_GETFOCUS :
- case VCLEVENT_CONTROL_LOSEFOCUS :
- {
- uno::Any aOldValue, aNewValue;
- if ( VCLEVENT_CONTROL_GETFOCUS == nEventId )
- aNewValue <<= AccessibleStateType::FOCUSED;
- else
- aOldValue <<= AccessibleStateType::FOCUSED;
- commitEvent( AccessibleEventId::STATE_CHANGED, aNewValue, aOldValue );
- break;
- }
-
- case VCLEVENT_LISTBOX_SELECT :
- {
- // First send an event that tells the listeners of a
- // modified selection. The active descendant event is
- // send after that so that the receiving AT has time to
- // read the text or name of the active child.
- commitEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
- if ( m_pTabListBox && m_pTabListBox->HasFocus() )
- {
- SvLBoxEntry* pEntry = static_cast< SvLBoxEntry* >( rVclWindowEvent.GetData() );
- if ( pEntry )
- {
- sal_Int32 nRow = m_pTabListBox->GetEntryPos( pEntry );
- sal_uInt16 nCol = m_pTabListBox->GetCurrColumn();
- Reference< XAccessible > xChild =
- m_pTabListBox->CreateAccessibleCell( nRow, nCol );
- uno::Any aOldValue, aNewValue;
-
- if ( m_pTabListBox->IsTransientChildrenDisabled() )
- {
- aNewValue <<= AccessibleStateType::FOCUSED;
- TriState eState = STATE_DONTKNOW;
- if ( m_pTabListBox->IsCellCheckBox( nRow, nCol, eState ) )
- {
- AccessibleCheckBoxCell* pCell =
- static_cast< AccessibleCheckBoxCell* >( xChild.get() );
- pCell->commitEvent( AccessibleEventId::STATE_CHANGED, aNewValue, aOldValue );
- }
- else
- {
- AccessibleBrowseBoxTableCell* pCell =
- static_cast< AccessibleBrowseBoxTableCell* >( xChild.get() );
- pCell->commitEvent( AccessibleEventId::STATE_CHANGED, aNewValue, aOldValue );
- }
- }
- else
- {
- aNewValue <<= xChild;
- commitEvent( AccessibleEventId::ACTIVE_DESCENDANT_CHANGED, aNewValue, aOldValue );
- }
- }
- }
- break;
- }
-
- case VCLEVENT_CHECKBOX_TOGGLE :
- {
- if ( m_pTabListBox && m_pTabListBox->HasFocus() )
- {
- SvLBoxEntry* pEntry = static_cast< SvLBoxEntry* >( rVclWindowEvent.GetData() );
- if ( pEntry )
- {
- sal_Int32 nRow = m_pTabListBox->GetEntryPos( pEntry );
- sal_uInt16 nCol = m_pTabListBox->GetCurrColumn();
- TriState eState = STATE_DONTKNOW;
- if ( m_pTabListBox->IsCellCheckBox( nRow, nCol, eState ) )
- {
- Reference< XAccessible > xChild =
- m_pTabListBox->CreateAccessibleCell( nRow, nCol );
- AccessibleCheckBoxCell* pCell =
- static_cast< AccessibleCheckBoxCell* >( xChild.get() );
- pCell->SetChecked( m_pTabListBox->IsItemChecked( pEntry, nCol ) );
- }
- }
- }
- break;
- }
-
- case VCLEVENT_TABLECELL_NAMECHANGED :
- {
- if ( m_pTabListBox->IsTransientChildrenDisabled() )
- {
- commitEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
- TabListBoxEventData* pData = static_cast< TabListBoxEventData* >( rVclWindowEvent.GetData() );
- SvLBoxEntry* pEntry = pData != NULL ? pData->m_pEntry : NULL;
- if ( pEntry )
- {
- sal_Int32 nRow = m_pTabListBox->GetEntryPos( pEntry );
- sal_uInt16 nCol = pData->m_nColumn;
- Reference< XAccessible > xChild =
- m_pTabListBox->CreateAccessibleCell( nRow, nCol );
- uno::Any aOldValue, aNewValue;
- aOldValue <<= ::rtl::OUString( pData->m_sOldText );
- ::rtl::OUString sNewText( m_pTabListBox->GetCellText( nRow, nCol ) );
- aNewValue <<= sNewText;
- TriState eState = STATE_DONTKNOW;
-
- if ( m_pTabListBox->IsCellCheckBox( nRow, nCol, eState ) )
- {
- AccessibleCheckBoxCell* pCell =
- static_cast< AccessibleCheckBoxCell* >( xChild.get() );
- pCell->commitEvent( AccessibleEventId::NAME_CHANGED, aOldValue, aNewValue );
- }
- else
- {
- AccessibleBrowseBoxTableCell* pCell =
- static_cast< AccessibleBrowseBoxTableCell* >( xChild.get() );
- pCell->nameChanged( sNewText, pData->m_sOldText );
- }
- }
- }
- break;
- }
- }
- }
- }
- // -----------------------------------------------------------------------------
- IMPL_LINK( AccessibleTabListBoxTable, WindowEventListener, VclSimpleEvent*, pEvent )
- {
- DBG_ASSERT( pEvent && pEvent->ISA( VclWindowEvent ), "Unknown WindowEvent!" );
- if ( pEvent && pEvent->ISA( VclWindowEvent ) )
- {
- DBG_ASSERT( ( (VclWindowEvent*)pEvent )->GetWindow() && m_pTabListBox, "no event window" );
- ProcessWindowEvent( *(VclWindowEvent*)pEvent );
- }
- return 0;
- }
- // helpers --------------------------------------------------------------------
-
- void AccessibleTabListBoxTable::ensureValidIndex( sal_Int32 _nIndex ) const
- SAL_THROW( ( IndexOutOfBoundsException ) )
- {
- if ( ( _nIndex < 0 ) || ( _nIndex >= implGetCellCount() ) )
- throw IndexOutOfBoundsException();
- }
-
- sal_Bool AccessibleTabListBoxTable::implIsRowSelected( sal_Int32 _nRow ) const
- {
- return m_pTabListBox ? m_pTabListBox->IsSelected( m_pTabListBox->GetEntry( _nRow ) ) : sal_False;
- }
-
- void AccessibleTabListBoxTable::implSelectRow( sal_Int32 _nRow, sal_Bool _bSelect )
- {
- if ( m_pTabListBox )
- m_pTabListBox->Select( m_pTabListBox->GetEntry( _nRow ), _bSelect );
- }
-
- sal_Int32 AccessibleTabListBoxTable::implGetRowCount() const
- {
- return m_pTabListBox ? m_pTabListBox->GetEntryCount() : 0;
- }
-
- sal_Int32 AccessibleTabListBoxTable::implGetColumnCount() const
- {
- return m_pTabListBox ? m_pTabListBox->GetColumnCount() : 0;
- }
-
- sal_Int32 AccessibleTabListBoxTable::implGetSelRowCount() const
- {
- return m_pTabListBox ? m_pTabListBox->GetSelectionCount() : 0;
- }
-
- sal_Int32 AccessibleTabListBoxTable::implGetSelRow( sal_Int32 nSelRow ) const
- {
- if ( m_pTabListBox )
- {
- sal_Int32 nRow = 0;
- SvLBoxEntry* pEntry = m_pTabListBox->FirstSelected();
- while ( pEntry )
- {
- ++nRow;
- if ( nRow == nSelRow )
- return m_pTabListBox->GetEntryPos( pEntry );
- pEntry = m_pTabListBox->NextSelected( pEntry );
- }
- }
-
- return 0;
- }
- // -----------------------------------------------------------------------------
- // XInterface & XTypeProvider
- // -----------------------------------------------------------------------------
- IMPLEMENT_FORWARD_XINTERFACE2(AccessibleTabListBoxTable, AccessibleBrowseBoxTable, AccessibleTabListBoxTableImplHelper)
- IMPLEMENT_FORWARD_XTYPEPROVIDER2(AccessibleTabListBoxTable, AccessibleBrowseBoxTable, AccessibleTabListBoxTableImplHelper)
- // -----------------------------------------------------------------------------
- // XServiceInfo
- // -----------------------------------------------------------------------------
- ::rtl::OUString AccessibleTabListBoxTable::getImplementationName (void) throw (RuntimeException)
- {
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.svtools.AccessibleTabListBoxTable" ));
- }
- // -----------------------------------------------------------------------------
- // XAccessibleSelection
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleTabListBoxTable::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- ensureIsAlive();
- ensureValidIndex( nChildIndex );
-
- implSelectRow( implGetRow( nChildIndex ), sal_True );
- }
- // -----------------------------------------------------------------------------
- sal_Bool SAL_CALL AccessibleTabListBoxTable::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- ensureIsAlive();
- ensureValidIndex( nChildIndex );
-
- return implIsRowSelected( implGetRow( nChildIndex ) );
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleTabListBoxTable::clearAccessibleSelection( ) throw (RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- ensureIsAlive();
-
- m_pTabListBox->SetNoSelection();
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleTabListBoxTable::selectAllAccessibleChildren( ) throw (RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- ensureIsAlive();
-
- m_pTabListBox->SelectAll();
- }
- // -----------------------------------------------------------------------------
- sal_Int32 SAL_CALL AccessibleTabListBoxTable::getSelectedAccessibleChildCount( ) throw (RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- ensureIsAlive();
-
- return implGetColumnCount() * implGetSelRowCount();
- }
- // -----------------------------------------------------------------------------
- Reference< XAccessible > SAL_CALL AccessibleTabListBoxTable::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- ensureIsAlive();
-
- sal_Int32 nRows = implGetSelRowCount();
- if ( nRows == 0 )
- throw IndexOutOfBoundsException();
-
- sal_Int32 nRow = implGetSelRow( nSelectedChildIndex % nRows );
- sal_Int32 nColumn = nSelectedChildIndex / nRows;
- return getAccessibleCellAt( nRow, nColumn );
- }
- // -----------------------------------------------------------------------------
- void SAL_CALL AccessibleTabListBoxTable::deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
- {
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( getOslMutex() );
-
- ensureIsAlive();
- ensureValidIndex( nSelectedChildIndex );
-
- implSelectRow( implGetRow( nSelectedChildIndex ), sal_False );
- }
-
-//........................................................................
-}// namespace accessibility
-//........................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/listboxaccessible.cxx b/accessibility/source/extended/listboxaccessible.cxx
deleted file mode 100644
index 04a67146a..000000000
--- a/accessibility/source/extended/listboxaccessible.cxx
+++ /dev/null
@@ -1,106 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/extended/listboxaccessible.hxx>
-#include <svtools/svtreebx.hxx>
-
-//........................................................................
-namespace accessibility
-{
-//........................................................................
-
- //====================================================================
- //= ListBoxAccessibleBase
- //====================================================================
- //--------------------------------------------------------------------
- ListBoxAccessibleBase::ListBoxAccessibleBase( SvTreeListBox& _rWindow )
- :m_pWindow( &_rWindow )
- {
- m_pWindow->AddEventListener( LINK( this, ListBoxAccessibleBase, WindowEventListener ) );
- }
-
- //--------------------------------------------------------------------
- ListBoxAccessibleBase::~ListBoxAccessibleBase( )
- {
- if ( m_pWindow )
- {
- // cannot call "dispose" here, as it is abstract, so the VTABLE of the derived class
- // is not intact anymore
- // so we call our "disposing" only
- disposing();
- }
- }
-
- //--------------------------------------------------------------------
- IMPL_LINK( ListBoxAccessibleBase, WindowEventListener, VclSimpleEvent*, pEvent )
- {
- DBG_ASSERT( pEvent && pEvent->ISA( VclWindowEvent ), "ListBoxAccessibleBase::WindowEventListener: unexpected WindowEvent!" );
- if ( pEvent && pEvent->ISA( VclWindowEvent ) )
- {
- DBG_ASSERT( static_cast< VclWindowEvent* >( pEvent )->GetWindow() , "ListBoxAccessibleBase::WindowEventListener: no event window!" );
- DBG_ASSERT( static_cast< VclWindowEvent* >( pEvent )->GetWindow() == m_pWindow, "ListBoxAccessibleBase::WindowEventListener: where did this come from?" );
-
- ProcessWindowEvent( *static_cast< VclWindowEvent* >( pEvent ) );
- }
- return 0;
- }
-
- // -----------------------------------------------------------------------------
- void ListBoxAccessibleBase::disposing()
- {
- if ( m_pWindow )
- m_pWindow->RemoveEventListener( LINK( this, ListBoxAccessibleBase, WindowEventListener ) );
- m_pWindow = NULL;
- }
-
- // -----------------------------------------------------------------------------
- void ListBoxAccessibleBase::ProcessWindowEvent( const VclWindowEvent& _rVclWindowEvent )
- {
- if ( isAlive() )
- {
- switch ( _rVclWindowEvent.GetId() )
- {
- case VCLEVENT_OBJECT_DYING :
- {
- if ( m_pWindow )
- m_pWindow->RemoveEventListener( LINK( this, ListBoxAccessibleBase, WindowEventListener ) );
- m_pWindow = NULL;
- dispose();
- break;
- }
- }
- }
- }
-
-//........................................................................
-} // namespace accessibility
-//........................................................................
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/extended/makefile.mk b/accessibility/source/extended/makefile.mk
deleted file mode 100755
index 27f4403c8..000000000
--- a/accessibility/source/extended/makefile.mk
+++ /dev/null
@@ -1,81 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..$/..
-
-PRJNAME=accessibility
-TARGET=extended
-
-ENABLE_EXCEPTIONS=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Files --------------------------------------------------------
-.IF "$(OS)$(COM)"=="SOLARISI"
-NOOPTFILES=$(SLO)$/accessibletabbarpagelist.obj
-.ENDIF # "$(OS)$(COM)"=="SOLARISI"
-
-SLOFILES=\
- $(SLO)$/AccessibleBrowseBoxCheckBoxCell.obj \
- $(SLO)$/AccessibleBrowseBoxBase.obj \
- $(SLO)$/AccessibleBrowseBox.obj \
- $(SLO)$/AccessibleBrowseBoxTableCell.obj \
- $(SLO)$/AccessibleBrowseBoxHeaderCell.obj \
- $(SLO)$/AccessibleBrowseBoxTableBase.obj \
- $(SLO)$/AccessibleBrowseBoxTable.obj \
- $(SLO)$/AccessibleBrowseBoxHeaderBar.obj \
- $(SLO)$/accessibleiconchoicectrl.obj \
- $(SLO)$/accessibleiconchoicectrlentry.obj \
- $(SLO)$/accessiblelistbox.obj \
- $(SLO)$/accessiblelistboxentry.obj \
- $(SLO)$/accessibletabbarbase.obj \
- $(SLO)$/accessibletabbar.obj \
- $(SLO)$/accessibletabbarpage.obj \
- $(SLO)$/accessibletabbarpagelist.obj \
- $(SLO)$/accessibletablistbox.obj \
- $(SLO)$/accessibletablistboxtable.obj \
- $(SLO)$/listboxaccessible.obj \
- $(SLO)$/accessiblebrowseboxcell.obj \
- $(SLO)$/accessibleeditbrowseboxcell.obj \
- $(SLO)$/textwindowaccessibility.obj \
- $(SLO)$/AccessibleGridControlBase.obj \
- $(SLO)$/AccessibleGridControl.obj \
- $(SLO)$/AccessibleGridControlTableBase.obj \
- $(SLO)$/AccessibleGridControlHeader.obj \
- $(SLO)$/AccessibleGridControlTableCell.obj \
- $(SLO)$/AccessibleGridControlHeaderCell.obj \
- $(SLO)$/AccessibleGridControlTable.obj \
- $(SLO)$/AccessibleToolPanelDeck.obj \
- $(SLO)$/AccessibleToolPanelDeckTabBar.obj \
- $(SLO)$/AccessibleToolPanelDeckTabBarItem.obj
-
-# --- Targets -------------------------------------------------------
-
-.INCLUDE : target.mk
-
diff --git a/accessibility/source/extended/textwindowaccessibility.cxx b/accessibility/source/extended/textwindowaccessibility.cxx
deleted file mode 100644
index b605ed740..000000000
--- a/accessibility/source/extended/textwindowaccessibility.cxx
+++ /dev/null
@@ -1,2258 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-#include <accessibility/extended/textwindowaccessibility.hxx>
-#include "comphelper/accessibleeventnotifier.hxx"
-#include "unotools/accessiblerelationsethelper.hxx"
-#include <unotools/accessiblestatesethelper.hxx>
-#include <vcl/window.hxx>
-#include <toolkit/helper/convert.hxx>
-
-#include <algorithm>
-#include <vector>
-#include <boost/unordered_map.hpp>
-
-namespace css = ::com::sun::star;
-
-namespace accessibility
-{
-
-// Both ::osl::Mutex and ParagraphBase implement acquire and release, and thus
-// ::rtl::Reference< Paragraph > does not work. So ParagraphImpl was factored
-// out and ::rtl::Reference< ParagraphImpl > is used instead.
-class Paragraph: private ::osl::Mutex, public ParagraphImpl
-{
-public:
- inline Paragraph(::rtl::Reference< Document > const & rDocument,
- Paragraphs::size_type nNumber):
- ParagraphImpl(rDocument, nNumber, *this) {}
-};
-
-void SfxListenerGuard::startListening(::SfxBroadcaster & rNotifier)
-{
- OSL_ENSURE(m_pNotifier == 0, "called more than once");
- m_pNotifier = &rNotifier;
- m_rListener.StartListening(*m_pNotifier, true);
-}
-
-void SfxListenerGuard::endListening()
-{
- if (m_pNotifier != 0)
- {
- m_rListener.EndListening(*m_pNotifier);
- m_pNotifier = 0;
- }
-}
-
-void WindowListenerGuard::startListening(::Window & rNotifier)
-{
- OSL_ENSURE(m_pNotifier == 0, "called more than once");
- m_pNotifier = &rNotifier;
- m_pNotifier->AddEventListener(m_aListener);
-}
-
-void WindowListenerGuard::endListening()
-{
- if (m_pNotifier != 0)
- {
- m_pNotifier->RemoveEventListener(m_aListener);
- m_pNotifier = 0;
- }
-}
-
-ParagraphImpl::ParagraphImpl(::rtl::Reference< Document > const & rDocument,
- Paragraphs::size_type nNumber,
- ::osl::Mutex & rMutex):
- ParagraphBase(rMutex),
- m_xDocument(rDocument),
- m_nNumber(nNumber),
- m_nClientId(0)
-{
- m_aParagraphText = m_xDocument->retrieveParagraphText(this);
-}
-
-void
-ParagraphImpl::numberChanged(bool bIncremented)
-{
- if (bIncremented)
- ++m_nNumber;
- else
- --m_nNumber;
-}
-
-void ParagraphImpl::textChanged()
-{
- ::rtl::OUString aParagraphText = implGetText();
- ::css::uno::Any aOldValue, aNewValue;
- if ( implInitTextChangedEvent( m_aParagraphText, aParagraphText, aOldValue, aNewValue ) )
- {
- m_aParagraphText = aParagraphText;
- notifyEvent(::css::accessibility::AccessibleEventId::
- TEXT_CHANGED,
- aOldValue, aNewValue);
- }
-}
-
-void ParagraphImpl::notifyEvent(::sal_Int16 nEventId,
- ::css::uno::Any const & rOldValue,
- ::css::uno::Any const & rNewValue)
-{
- if (m_nClientId)
- comphelper::AccessibleEventNotifier::addEvent( m_nClientId, ::css::accessibility::AccessibleEventObject(
- static_cast< ::cppu::OWeakObject * >(this),
- nEventId, rNewValue, rOldValue) );
-}
-
-// virtual
-::css::uno::Reference< ::css::accessibility::XAccessibleContext > SAL_CALL
-ParagraphImpl::getAccessibleContext() throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return this;
-}
-
-// virtual
-::sal_Int32 SAL_CALL ParagraphImpl::getAccessibleChildCount()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return 0;
-}
-
-// virtual
-::css::uno::Reference< ::css::accessibility::XAccessible > SAL_CALL
-ParagraphImpl::getAccessibleChild(::sal_Int32)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
- throw ::css::lang::IndexOutOfBoundsException(
- ::rtl::OUString(
- RTL_CONSTASCII_USTRINGPARAM(
- "textwindowaccessibility.cxx:"
- " ParagraphImpl::getAccessibleChild")),
- static_cast< ::css::uno::XWeak * >(this));
-}
-
-// virtual
-::css::uno::Reference< ::css::accessibility::XAccessible > SAL_CALL
-ParagraphImpl::getAccessibleParent()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return m_xDocument->getAccessible();
-}
-
-// virtual
-::sal_Int32 SAL_CALL ParagraphImpl::getAccessibleIndexInParent()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return m_xDocument->retrieveParagraphIndex(this);
-}
-
-// virtual
-::sal_Int16 SAL_CALL ParagraphImpl::getAccessibleRole()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return ::css::accessibility::AccessibleRole::PARAGRAPH;
-}
-
-// virtual
-::rtl::OUString SAL_CALL ParagraphImpl::getAccessibleDescription()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return ::rtl::OUString();
-}
-
-// virtual
-::rtl::OUString SAL_CALL ParagraphImpl::getAccessibleName()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return ::rtl::OUString();
-}
-
-// virtual
-::css::uno::Reference< ::css::accessibility::XAccessibleRelationSet >
-SAL_CALL ParagraphImpl::getAccessibleRelationSet()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return m_xDocument->retrieveParagraphRelationSet( this );
-}
-
-// virtual
-::css::uno::Reference< ::css::accessibility::XAccessibleStateSet >
-SAL_CALL ParagraphImpl::getAccessibleStateSet()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
-
- // FIXME Notification of changes (STATE_CHANGED) missing when
- // m_rView.IsReadOnly() changes:
- return new ::utl::AccessibleStateSetHelper(
- m_xDocument->retrieveParagraphState(this));
-}
-
-// virtual
-::css::lang::Locale SAL_CALL ParagraphImpl::getLocale()
- throw (::css::accessibility::IllegalAccessibleComponentStateException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
- return m_xDocument->retrieveLocale();
-}
-
-// virtual
-::sal_Bool SAL_CALL ParagraphImpl::containsPoint(::css::awt::Point const & rPoint)
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- ::css::awt::Rectangle aRect(m_xDocument->retrieveParagraphBounds(this,
- false));
- return rPoint.X >= 0 && rPoint.X < aRect.Width
- && rPoint.Y >= 0 && rPoint.Y < aRect.Height;
-}
-
-// virtual
-::css::uno::Reference< ::css::accessibility::XAccessible > SAL_CALL
-ParagraphImpl::getAccessibleAtPoint(::css::awt::Point const &)
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return 0;
-}
-
-// virtual
-::css::awt::Rectangle SAL_CALL ParagraphImpl::getBounds()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return m_xDocument->retrieveParagraphBounds(this, false);
-}
-
-// virtual
-::css::awt::Point SAL_CALL ParagraphImpl::getLocation()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- ::css::awt::Rectangle aRect(m_xDocument->retrieveParagraphBounds(this,
- false));
- return ::css::awt::Point(aRect.X, aRect.Y);
-}
-
-// virtual
-::css::awt::Point SAL_CALL ParagraphImpl::getLocationOnScreen()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- ::css::awt::Rectangle aRect(m_xDocument->retrieveParagraphBounds(this,
- true));
- return ::css::awt::Point(aRect.X, aRect.Y);
-}
-
-// virtual
-::css::awt::Size SAL_CALL ParagraphImpl::getSize()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- ::css::awt::Rectangle aRect(m_xDocument->retrieveParagraphBounds(this,
- false));
- return ::css::awt::Size(aRect.Width, aRect.Height);
-}
-
-// virtual
-void SAL_CALL ParagraphImpl::grabFocus() throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- Window* pWindow = m_xDocument->GetWindow();
- if ( pWindow )
- {
- pWindow->GrabFocus();
- }
- try
- {
- m_xDocument->changeParagraphSelection(this, 0, 0);
- }
- catch (const ::css::lang::IndexOutOfBoundsException & rEx)
- {
- OSL_TRACE(
- "textwindowaccessibility.cxx: ParagraphImpl::grabFocus:"
- " caught unexpected %s\n",
- ::rtl::OUStringToOString(rEx.Message, RTL_TEXTENCODING_UTF8).
- getStr());
- }
-}
-
-// virtual
-::css::uno::Any SAL_CALL ParagraphImpl::getAccessibleKeyBinding()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return ::css::uno::Any();
-}
-
-// virtual
-::css::util::Color SAL_CALL ParagraphImpl::getForeground()
- throw (::css::uno::RuntimeException)
-{
- return 0; // TODO
-}
-
-// virtual
-::css::util::Color SAL_CALL ParagraphImpl::getBackground()
- throw (::css::uno::RuntimeException)
-{
- return 0; // TODO
-}
-
-// virtual
-::sal_Int32 SAL_CALL ParagraphImpl::getCaretPosition()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return m_xDocument->retrieveParagraphCaretPosition(this);
-}
-
-// virtual
-::sal_Bool SAL_CALL ParagraphImpl::setCaretPosition(::sal_Int32 nIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
- m_xDocument->changeParagraphSelection(this, nIndex, nIndex);
- return true;
-}
-
-// virtual
-::sal_Unicode SAL_CALL ParagraphImpl::getCharacter(::sal_Int32 nIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
- return OCommonAccessibleText::getCharacter(nIndex);
-}
-
-// virtual
-::css::uno::Sequence< ::css::beans::PropertyValue > SAL_CALL
-ParagraphImpl::getCharacterAttributes(::sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< ::rtl::OUString >& aRequestedAttributes)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
- return m_xDocument->retrieveCharacterAttributes( this, nIndex, aRequestedAttributes );
-}
-
-// virtual
-::css::awt::Rectangle SAL_CALL
-ParagraphImpl::getCharacterBounds(::sal_Int32 nIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
- ::css::awt::Rectangle aBounds(m_xDocument->retrieveCharacterBounds(this, nIndex));
- ::css::awt::Rectangle aParaBounds(m_xDocument->retrieveParagraphBounds(this, false));
- aBounds.X -= aParaBounds.X;
- aBounds.Y -= aParaBounds.Y;
- return aBounds;
-}
-
-// virtual
-::sal_Int32 SAL_CALL ParagraphImpl::getCharacterCount()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return OCommonAccessibleText::getCharacterCount();
-}
-
-// virtual
-::sal_Int32 SAL_CALL
-ParagraphImpl::getIndexAtPoint(::css::awt::Point const & rPoint)
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- ::css::awt::Point aPoint(rPoint);
- ::css::awt::Rectangle aParaBounds(m_xDocument->retrieveParagraphBounds(this, false));
- aPoint.X += aParaBounds.X;
- aPoint.Y += aParaBounds.Y;
- return m_xDocument->retrieveCharacterIndex(this, aPoint);
-}
-
-// virtual
-::rtl::OUString SAL_CALL ParagraphImpl::getSelectedText()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
-
- return OCommonAccessibleText::getSelectedText();
-}
-
-// virtual
-::sal_Int32 SAL_CALL ParagraphImpl::getSelectionStart()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return OCommonAccessibleText::getSelectionStart();
-}
-
-// virtual
-::sal_Int32 SAL_CALL ParagraphImpl::getSelectionEnd()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return OCommonAccessibleText::getSelectionEnd();
-}
-
-// virtual
-::sal_Bool SAL_CALL ParagraphImpl::setSelection(::sal_Int32 nStartIndex,
- ::sal_Int32 nEndIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
- m_xDocument->changeParagraphSelection(this, nStartIndex, nEndIndex);
- return true;
-}
-
-// virtual
-::rtl::OUString SAL_CALL ParagraphImpl::getText()
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return OCommonAccessibleText::getText();
-}
-
-// virtual
-::rtl::OUString SAL_CALL ParagraphImpl::getTextRange(::sal_Int32 nStartIndex,
- ::sal_Int32 nEndIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
- return OCommonAccessibleText::getTextRange(nStartIndex, nEndIndex);
-}
-
-// virtual
-::com::sun::star::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
-{
- checkDisposed();
- return OCommonAccessibleText::getTextAtIndex(nIndex, aTextType);
-}
-
-// virtual
-::com::sun::star::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
-{
- checkDisposed();
- return OCommonAccessibleText::getTextBeforeIndex(nIndex, aTextType);
-}
-
-// virtual
-::com::sun::star::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
-{
- checkDisposed();
- return OCommonAccessibleText::getTextBehindIndex(nIndex, aTextType);
-}
-
-// virtual
-::sal_Bool SAL_CALL ParagraphImpl::copyText(::sal_Int32 nStartIndex,
- ::sal_Int32 nEndIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
- m_xDocument->copyParagraphText(this, nStartIndex, nEndIndex);
- return true;
-}
-
-// virtual
-::sal_Bool SAL_CALL ParagraphImpl::cutText(::sal_Int32 nStartIndex,
- ::sal_Int32 nEndIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
- m_xDocument->changeParagraphText(this, nStartIndex, nEndIndex, true, false,
- ::rtl::OUString());
- return true;
-}
-
-// virtual
-::sal_Bool SAL_CALL ParagraphImpl::pasteText(::sal_Int32 nIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
- m_xDocument->changeParagraphText(this, nIndex, nIndex, false, true,
- ::rtl::OUString());
- return true;
-}
-
-// virtual
-::sal_Bool SAL_CALL ParagraphImpl::deleteText(::sal_Int32 nStartIndex,
- ::sal_Int32 nEndIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
- m_xDocument->changeParagraphText(this, nStartIndex, nEndIndex, false, false,
- ::rtl::OUString());
- return true;
-}
-
-// virtual
-::sal_Bool SAL_CALL ParagraphImpl::insertText(::rtl::OUString const & rText,
- ::sal_Int32 nIndex)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
- m_xDocument->changeParagraphText(this, nIndex, nIndex, false, false, rText);
- return true;
-}
-
-// virtual
-::sal_Bool SAL_CALL
-ParagraphImpl::replaceText(::sal_Int32 nStartIndex, ::sal_Int32 nEndIndex,
- ::rtl::OUString const & rReplacement)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
- m_xDocument->changeParagraphText(this, nStartIndex, nEndIndex, false, false,
- rReplacement);
- return true;
-}
-
-// virtual
-::sal_Bool SAL_CALL ParagraphImpl::setAttributes(
- ::sal_Int32 nStartIndex, ::sal_Int32 nEndIndex,
- ::css::uno::Sequence< ::css::beans::PropertyValue > const & rAttributeSet)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
- m_xDocument->changeParagraphAttributes(this, nStartIndex, nEndIndex,
- rAttributeSet);
- return true;
-}
-
-// virtual
-::sal_Bool SAL_CALL ParagraphImpl::setText(::rtl::OUString const & rText)
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- m_xDocument->changeParagraphText(this, rText);
- return true;
-}
-
-// virtual
-::css::uno::Sequence< ::css::beans::PropertyValue > SAL_CALL
-ParagraphImpl::getDefaultAttributes(const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes)
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return m_xDocument->retrieveDefaultAttributes( this, RequestedAttributes );
-}
-
-// virtual
-::css::uno::Sequence< ::css::beans::PropertyValue > SAL_CALL
-ParagraphImpl::getRunAttributes(::sal_Int32 Index, const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
- return m_xDocument->retrieveRunAttributes( this, Index, RequestedAttributes );
-}
-
-// virtual
-::sal_Int32 SAL_CALL ParagraphImpl::getLineNumberAtIndex( ::sal_Int32 nIndex )
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
-
- ::sal_Int32 nLineNo = -1;
- m_xDocument->retrieveParagraphLineBoundary( this, nIndex, &nLineNo );
-
- return nLineNo;
-}
-
-// virtual
-::css::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextAtLineNumber( ::sal_Int32 nLineNo )
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- checkDisposed();
-
- ::css::i18n::Boundary aBoundary =
- m_xDocument->retrieveParagraphBoundaryOfLine( this, nLineNo );
-
- return ::css::accessibility::TextSegment( getTextRange(aBoundary.startPos, aBoundary.endPos),
- aBoundary.startPos, aBoundary.endPos);
-}
-
-// virtual
-::css::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextAtLineWithCaret( )
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
-
- sal_Int32 nLineNo = getNumberOfLineWithCaret();
-
- try {
- return ( nLineNo >= 0 ) ?
- getTextAtLineNumber( nLineNo ) :
- ::css::accessibility::TextSegment();
- } catch (const ::css::lang::IndexOutOfBoundsException&) {
- throw ::css::uno::RuntimeException(
- ::rtl::OUString(
- RTL_CONSTASCII_USTRINGPARAM(
- "textwindowaccessibility.cxx:"
- " ParagraphImpl::getTextAtLineWithCaret") ),
- static_cast< ::css::uno::XWeak * >( this ) );
- }
-}
-
-// virtual
-::sal_Int32 SAL_CALL ParagraphImpl::getNumberOfLineWithCaret( )
- throw (::css::uno::RuntimeException)
-{
- checkDisposed();
- return m_xDocument->retrieveParagraphLineWithCursor(this);
-}
-
-
-// virtual
-void SAL_CALL ParagraphImpl::addEventListener(
- ::css::uno::Reference<
- ::css::accessibility::XAccessibleEventListener > const & rListener)
- throw (::css::uno::RuntimeException)
-{
- if (rListener.is())
- {
- ::osl::ClearableMutexGuard aGuard(rBHelper.rMutex);
- if (rBHelper.bDisposed || rBHelper.bInDispose)
- {
- aGuard.clear();
- rListener->disposing(::css::lang::EventObject(
- static_cast< ::cppu::OWeakObject * >(this)));
- }
- else
- {
- if (!m_nClientId)
- m_nClientId = comphelper::AccessibleEventNotifier::registerClient( );
- comphelper::AccessibleEventNotifier::addEventListener( m_nClientId, rListener );
- }
- }
-}
-
-// virtual
-void SAL_CALL ParagraphImpl::removeEventListener(
- ::css::uno::Reference<
- ::css::accessibility::XAccessibleEventListener > const & rListener)
- throw (::css::uno::RuntimeException)
-{
- comphelper::AccessibleEventNotifier::TClientId nId = 0;
- {
- ::osl::ClearableMutexGuard aGuard(rBHelper.rMutex);
- if (rListener.is() && m_nClientId != 0
- && comphelper::AccessibleEventNotifier::removeEventListener( m_nClientId, rListener ) == 0)
- {
- nId = m_nClientId;
- m_nClientId = 0;
- }
- }
- if (nId != 0)
- {
- // no listeners anymore
- // -> revoke ourself. This may lead to the notifier thread dying (if we were the last client),
- // and at least to us not firing any events anymore, in case somebody calls
- // NotifyAccessibleEvent, again
- comphelper::AccessibleEventNotifier::revokeClient(nId);
- }
-}
-
-// virtual
-void SAL_CALL ParagraphImpl::disposing()
-{
- comphelper::AccessibleEventNotifier::TClientId nId = 0;
- {
- ::osl::ClearableMutexGuard aGuard(rBHelper.rMutex);
- nId = m_nClientId;
- m_nClientId = 0;
- }
- if (nId != 0)
- comphelper::AccessibleEventNotifier::revokeClientNotifyDisposing(nId, *this);
-}
-
-// virtual
-::rtl::OUString ParagraphImpl::implGetText()
-{
- return m_xDocument->retrieveParagraphText(this);
-}
-
-// virtual
-::css::lang::Locale ParagraphImpl::implGetLocale()
-{
- return m_xDocument->retrieveLocale();
-}
-
-// virtual
-void ParagraphImpl::implGetSelection(::sal_Int32 & rStartIndex,
- ::sal_Int32 & rEndIndex)
-{
- m_xDocument->retrieveParagraphSelection(this, &rStartIndex, &rEndIndex);
-}
-
-// virtual
-void ParagraphImpl::implGetParagraphBoundary( ::css::i18n::Boundary& rBoundary,
- ::sal_Int32 nIndex )
-{
- ::rtl::OUString sText( implGetText() );
- ::sal_Int32 nLength = sText.getLength();
-
- if ( implIsValidIndex( nIndex, nLength ) )
- {
- rBoundary.startPos = 0;
- rBoundary.endPos = nLength;
- }
- else
- {
- rBoundary.startPos = nIndex;
- rBoundary.endPos = nIndex;
- }
-}
-
-// virtual
-void ParagraphImpl::implGetLineBoundary( ::css::i18n::Boundary& rBoundary,
- ::sal_Int32 nIndex )
-{
- ::rtl::OUString sText( implGetText() );
- ::sal_Int32 nLength = sText.getLength();
-
- if ( implIsValidIndex( nIndex, nLength ) || nIndex == nLength )
- {
- ::css::i18n::Boundary aBoundary =
- m_xDocument->retrieveParagraphLineBoundary( this, nIndex );
- rBoundary.startPos = aBoundary.startPos;
- rBoundary.endPos = aBoundary.endPos;
- }
- else
- {
- rBoundary.startPos = nIndex;
- rBoundary.endPos = nIndex;
- }
-}
-
-
-void ParagraphImpl::checkDisposed()
-{
- ::osl::MutexGuard aGuard(rBHelper.rMutex);
- if (!(rBHelper.bDisposed || rBHelper.bInDispose))
- return;
- throw ::css::lang::DisposedException(
- ::rtl::OUString(), static_cast< ::css::uno::XWeak * >(this));
-}
-
-Document::Document(::VCLXWindow * pVclXWindow, ::TextEngine & rEngine,
- ::TextView & rView, bool bCompoundControlChild):
- VCLXAccessibleComponent(pVclXWindow),
- m_xAccessible(pVclXWindow),
- m_rEngine(rEngine),
- m_rView(rView),
- m_aEngineListener(*this),
- m_aViewListener(LINK(this, Document, WindowEventHandler)),
- m_bCompoundControlChild(bCompoundControlChild)
-{}
-
-::css::lang::Locale Document::retrieveLocale()
-{
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
- return m_rEngine.GetLocale();
-}
-
-::sal_Int32 Document::retrieveParagraphIndex(ParagraphImpl const * pParagraph)
-{
- ::osl::MutexGuard aInternalGuard(GetMutex());
-
- // If a client holds on to a Paragraph that is no longer visible, it can
- // happen that this Paragraph lies outside the range from m_aVisibleBegin
- // to m_aVisibleEnd. In that case, return -1 instead of a valid index:
- Paragraphs::iterator aPara(m_xParagraphs->begin()
- + pParagraph->getNumber());
- return aPara < m_aVisibleBegin || aPara >= m_aVisibleEnd
- ? -1 : static_cast< ::sal_Int32 >(aPara - m_aVisibleBegin);
- // XXX numeric overflow
-}
-
-::sal_Int64 Document::retrieveParagraphState(ParagraphImpl const * pParagraph)
-{
- ::osl::MutexGuard aInternalGuard(GetMutex());
-
- // If a client holds on to a Paragraph that is no longer visible, it can
- // happen that this Paragraph lies outside the range from m_aVisibleBegin
- // to m_aVisibleEnd. In that case, it is neither VISIBLE nor SHOWING:
- ::sal_Int64 nState
- = (static_cast< ::sal_Int64 >(1)
- << ::css::accessibility::AccessibleStateType::ENABLED)
- | (static_cast< ::sal_Int64 >(1)
- << ::css::accessibility::AccessibleStateType::SENSITIVE)
- | (static_cast< ::sal_Int64 >(1)
- << ::css::accessibility::AccessibleStateType::FOCUSABLE)
- | (static_cast< ::sal_Int64 >(1)
- << ::css::accessibility::AccessibleStateType::MULTI_LINE);
- if (!m_rView.IsReadOnly())
- nState |= (static_cast< ::sal_Int64 >(1)
- << ::css::accessibility::AccessibleStateType::EDITABLE);
- Paragraphs::iterator aPara(m_xParagraphs->begin()
- + pParagraph->getNumber());
- if (aPara >= m_aVisibleBegin && aPara < m_aVisibleEnd)
- {
- nState
- |= (static_cast< ::sal_Int64 >(1)
- << ::css::accessibility::AccessibleStateType::VISIBLE)
- | (static_cast< ::sal_Int64 >(1)
- << ::css::accessibility::AccessibleStateType::SHOWING);
- if (aPara == m_aFocused)
- nState |= (static_cast< ::sal_Int64 >(1)
- << ::css::accessibility::AccessibleStateType::FOCUSED);
- }
- return nState;
-};
-
-::css::awt::Rectangle
-Document::retrieveParagraphBounds(ParagraphImpl const * pParagraph,
- bool bAbsolute)
-{
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
- ::osl::MutexGuard aInternalGuard(GetMutex());
-
- // If a client holds on to a Paragraph that is no longer visible (as it
- // scrolled out the top of the view), it can happen that this Paragraph
- // lies before m_aVisibleBegin. In that case, calculate the vertical
- // position of the Paragraph starting at paragraph 0, otherwise optimize
- // and start at m_aVisibleBegin:
- Paragraphs::iterator aPara(m_xParagraphs->begin()
- + pParagraph->getNumber());
- ::sal_Int32 nPos;
- Paragraphs::iterator aIt;
- if (aPara < m_aVisibleBegin)
- {
- nPos = 0;
- aIt = m_xParagraphs->begin();
- }
- else
- {
- nPos = m_nViewOffset - m_nVisibleBeginOffset;
- aIt = m_aVisibleBegin;
- }
- for (; aIt != aPara; ++aIt)
- nPos += aIt->getHeight();
-
- Point aOrig(0, 0);
- if (bAbsolute)
- aOrig = m_rView.GetWindow()->OutputToAbsoluteScreenPixel(aOrig);
-
- return ::css::awt::Rectangle(
- static_cast< ::sal_Int32 >(aOrig.X()),
- static_cast< ::sal_Int32 >(aOrig.Y()) + nPos - m_nViewOffset,
- m_rView.GetWindow()->GetOutputSizePixel().Width(), aPara->getHeight());
- // XXX numeric overflow (3x)
-}
-
-::rtl::OUString
-Document::retrieveParagraphText(ParagraphImpl const * pParagraph)
-{
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
- ::osl::MutexGuard aInternalGuard(GetMutex());
- return m_rEngine.GetText(static_cast< ::sal_uLong >(pParagraph->getNumber()));
- // numeric overflow cannot happen here
-}
-
-void Document::retrieveParagraphSelection(ParagraphImpl const * pParagraph,
- ::sal_Int32 * pBegin,
- ::sal_Int32 * pEnd)
-{
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
- ::osl::MutexGuard aInternalGuard(GetMutex());
- ::TextSelection const & rSelection = m_rView.GetSelection();
- Paragraphs::size_type nNumber = pParagraph->getNumber();
- TextPaM aStartPaM( rSelection.GetStart() );
- TextPaM aEndPaM( rSelection.GetEnd() );
- TextPaM aMinPaM( ::std::min( aStartPaM, aEndPaM ) );
- TextPaM aMaxPaM( ::std::max( aStartPaM, aEndPaM ) );
-
- if ( nNumber >= aMinPaM.GetPara() && nNumber <= aMaxPaM.GetPara() )
- {
- *pBegin = nNumber > aMinPaM.GetPara()
- ? 0
- : static_cast< ::sal_Int32 >( aMinPaM.GetIndex() );
- // XXX numeric overflow
- *pEnd = nNumber < aMaxPaM.GetPara()
- ? static_cast< ::sal_Int32 >( m_rEngine.GetText(static_cast< ::sal_uLong >(nNumber)).Len() )
- : static_cast< ::sal_Int32 >( aMaxPaM.GetIndex() );
- // XXX numeric overflow (3x)
-
- if ( aStartPaM > aEndPaM )
- ::std::swap( *pBegin, *pEnd );
- }
- else
- {
- *pBegin = 0;
- *pEnd = 0;
- }
-}
-
-::sal_Int32 Document::retrieveParagraphCaretPosition(ParagraphImpl const * pParagraph)
-{
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
- ::osl::MutexGuard aInternalGuard(GetMutex());
- ::TextSelection const & rSelection = m_rView.GetSelection();
- Paragraphs::size_type nNumber = pParagraph->getNumber();
- TextPaM aEndPaM( rSelection.GetEnd() );
-
- return aEndPaM.GetPara() == nNumber
- ? static_cast< ::sal_Int32 >(aEndPaM.GetIndex()) : -1;
-}
-
-::css::awt::Rectangle
-Document::retrieveCharacterBounds(ParagraphImpl const * pParagraph,
- ::sal_Int32 nIndex)
-{
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
- ::osl::MutexGuard aInternalGuard(GetMutex());
- ::sal_uLong nNumber = static_cast< ::sal_uLong >(pParagraph->getNumber());
- sal_Int32 nLength = m_rEngine.GetText(nNumber).Len();
- // XXX numeric overflow
- if (nIndex < 0 || nIndex > nLength)
- throw ::css::lang::IndexOutOfBoundsException(
- ::rtl::OUString(
- RTL_CONSTASCII_USTRINGPARAM(
- "textwindowaccessibility.cxx:"
- " Document::retrieveCharacterAttributes")),
- static_cast< ::css::uno::XWeak * >(this));
- ::css::awt::Rectangle aBounds( 0, 0, 0, 0 );
- if ( nIndex == nLength )
- {
- aBounds = AWTRectangle(
- m_rEngine.PaMtoEditCursor(::TextPaM(nNumber,
- static_cast< ::sal_uInt16 >(nIndex))));
- }
- else
- {
- ::Rectangle aLeft(
- m_rEngine.PaMtoEditCursor(::TextPaM(nNumber,
- static_cast< ::sal_uInt16 >(nIndex))));
- // XXX numeric overflow
- ::Rectangle aRight(
- m_rEngine.PaMtoEditCursor(::TextPaM(nNumber,
- static_cast< ::sal_uInt16 >(nIndex)
- + 1)));
- // XXX numeric overflow (2x)
- // FIXME If the vertical extends of the two cursors do not match, assume
- // nIndex is the last character on the line; the bounding box will then
- // extend to m_rEnginge.GetMaxTextWidth():
- ::sal_Int32 nWidth = (aLeft.Top() == aRight.Top()
- && aLeft.Bottom() == aRight.Bottom())
- ? static_cast< ::sal_Int32 >(aRight.Left() - aLeft.Left())
- : static_cast< ::sal_Int32 >(m_rEngine.GetMaxTextWidth()
- - aLeft.Left());
- // XXX numeric overflow (4x)
- aBounds = ::css::awt::Rectangle(static_cast< ::sal_Int32 >(aLeft.Left()),
- static_cast< ::sal_Int32 >(aLeft.Top() - m_nViewOffset),
- nWidth,
- static_cast< ::sal_Int32 >(aLeft.Bottom()
- - aLeft.Top()));
- // XXX numeric overflow (4x)
- }
- return aBounds;
-}
-
-::sal_Int32 Document::retrieveCharacterIndex(ParagraphImpl const * pParagraph,
- ::css::awt::Point const & rPoint)
-{
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
- ::osl::MutexGuard aInternalGuard(GetMutex());
- ::sal_uLong nNumber = static_cast< ::sal_uLong >(pParagraph->getNumber());
- // XXX numeric overflow
- ::TextPaM aPaM(m_rEngine.GetPaM(::Point(static_cast< long >(rPoint.X),
- static_cast< long >(rPoint.Y))));
- // XXX numeric overflow (2x)
- return aPaM.GetPara() == nNumber
- ? static_cast< ::sal_Int32 >(aPaM.GetIndex()) : -1;
- // XXX numeric overflow
-}
-
-::css::uno::Sequence< ::css::beans::PropertyValue >
-Document::retrieveCharacterAttributes(
- ParagraphImpl const * pParagraph, ::sal_Int32 nIndex,
- const ::css::uno::Sequence< ::rtl::OUString >& aRequestedAttributes)
-{
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
- ::osl::MutexGuard aInternalGuard(GetMutex());
- ::sal_uLong nNumber = static_cast< ::sal_uLong >(pParagraph->getNumber());
- // XXX numeric overflow
- if (nIndex < 0 || nIndex >= m_rEngine.GetText(nNumber).Len())
- throw ::css::lang::IndexOutOfBoundsException(
- ::rtl::OUString(
- RTL_CONSTASCII_USTRINGPARAM(
- "textwindowaccessibility.cxx:"
- " Document::retrieveCharacterAttributes")),
- static_cast< ::css::uno::XWeak * >(this));
-
- // retrieve default attributes
- tPropValMap aCharAttrSeq;
- retrieveDefaultAttributesImpl( pParagraph, aRequestedAttributes, aCharAttrSeq );
-
- // retrieve run attributes
- tPropValMap aRunAttrSeq;
- retrieveRunAttributesImpl( pParagraph, nIndex, aRequestedAttributes, aRunAttrSeq );
-
- // merge default and run attributes
- for ( tPropValMap::const_iterator aRunIter = aRunAttrSeq.begin();
- aRunIter != aRunAttrSeq.end();
- ++aRunIter )
- {
- aCharAttrSeq[ aRunIter->first ] = aRunIter->second;
- }
-
- return convertHashMapToSequence( aCharAttrSeq );
-}
-
-void Document::retrieveDefaultAttributesImpl(
- ParagraphImpl const * pParagraph,
- const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes,
- tPropValMap& rDefAttrSeq)
-{
- // default attributes are not supported by text engine
- (void) pParagraph;
- (void) RequestedAttributes;
- (void) rDefAttrSeq;
-}
-
-::css::uno::Sequence< ::css::beans::PropertyValue >
-Document::retrieveDefaultAttributes(
- ParagraphImpl const * pParagraph,
- const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes)
-{
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard( getExternalLock() );
- ::osl::MutexGuard aInternalGuard( GetMutex() );
-
- tPropValMap aDefAttrSeq;
- retrieveDefaultAttributesImpl( pParagraph, RequestedAttributes, aDefAttrSeq );
- return convertHashMapToSequence( aDefAttrSeq );
-}
-
-// static
-::css::uno::Sequence< ::css::beans::PropertyValue >
-Document::convertHashMapToSequence(tPropValMap& rAttrSeq)
-{
- ::css::uno::Sequence< ::css::beans::PropertyValue > aValues( rAttrSeq.size() );
- ::css::beans::PropertyValue* pValues = aValues.getArray();
- ::sal_Int32 i = 0;
- for ( tPropValMap::const_iterator aIter = rAttrSeq.begin();
- aIter != rAttrSeq.end();
- ++aIter )
- {
- pValues[i] = aIter->second;
- ++i;
- }
- return aValues;
-}
-
-void Document::retrieveRunAttributesImpl(
- ParagraphImpl const * pParagraph, ::sal_Int32 Index,
- const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes,
- tPropValMap& rRunAttrSeq)
-{
- ::sal_uLong nNumber = static_cast< ::sal_uLong >( pParagraph->getNumber() );
- ::TextPaM aPaM( nNumber, static_cast< ::sal_uInt16 >( Index ) );
- // XXX numeric overflow
- // FIXME TEXTATTR_HYPERLINK ignored:
- ::TextAttribFontColor const * pColor
- = static_cast< ::TextAttribFontColor const * >(
- m_rEngine.FindAttrib( aPaM, TEXTATTR_FONTCOLOR ) );
- ::TextAttribFontWeight const * pWeight
- = static_cast< ::TextAttribFontWeight const * >(
- m_rEngine.FindAttrib( aPaM, TEXTATTR_FONTWEIGHT ) );
- tPropValMap aRunAttrSeq;
- if ( pColor )
- {
- ::css::beans::PropertyValue aPropVal;
- aPropVal.Name =
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CharColor" ) );
- aPropVal.Handle = -1;
- aPropVal.Value = mapFontColor( pColor->GetColor() );
- aPropVal.State = ::css::beans::PropertyState_DIRECT_VALUE;
- aRunAttrSeq[ aPropVal.Name ] = aPropVal;
- }
- if ( pWeight )
- {
- ::css::beans::PropertyValue aPropVal;
- aPropVal.Name =
- ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CharWeight" ) );
- aPropVal.Handle = -1;
- aPropVal.Value = mapFontWeight( pWeight->getFontWeight() );
- aPropVal.State = ::css::beans::PropertyState_DIRECT_VALUE;
- aRunAttrSeq[ aPropVal.Name ] = aPropVal;
- }
- if ( RequestedAttributes.getLength() == 0 )
- {
- rRunAttrSeq = aRunAttrSeq;
- }
- else
- {
- const ::rtl::OUString* pReqAttrs = RequestedAttributes.getConstArray();
- const ::sal_Int32 nLength = RequestedAttributes.getLength();
- for ( ::sal_Int32 i = 0; i < nLength; ++i )
- {
- tPropValMap::iterator aIter = aRunAttrSeq.find( pReqAttrs[i] );
- if ( aIter != aRunAttrSeq.end() )
- {
- rRunAttrSeq[ (*aIter).first ] = (*aIter).second;
- }
- }
- }
-}
-
-::css::uno::Sequence< ::css::beans::PropertyValue >
-Document::retrieveRunAttributes(
- ParagraphImpl const * pParagraph, ::sal_Int32 Index,
- const ::css::uno::Sequence< ::rtl::OUString >& RequestedAttributes)
-{
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard( getExternalLock() );
- ::osl::MutexGuard aInternalGuard( GetMutex() );
- ::sal_uLong nNumber = static_cast< ::sal_uLong >( pParagraph->getNumber() );
- // XXX numeric overflow
- if ( Index < 0 || Index >= m_rEngine.GetText(nNumber).Len() )
- throw ::css::lang::IndexOutOfBoundsException(
- ::rtl::OUString(
- RTL_CONSTASCII_USTRINGPARAM(
- "textwindowaccessibility.cxx:"
- " Document::retrieveRunAttributes") ),
- static_cast< ::css::uno::XWeak * >( this ) );
-
- tPropValMap aRunAttrSeq;
- retrieveRunAttributesImpl( pParagraph, Index, RequestedAttributes, aRunAttrSeq );
- return convertHashMapToSequence( aRunAttrSeq );
-}
-
-void Document::changeParagraphText(ParagraphImpl * pParagraph,
- ::rtl::OUString const & rText)
-{
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
- {
- ::osl::MutexGuard aInternalGuard(GetMutex());
- ::sal_uLong nNumber = static_cast< ::sal_uLong >(pParagraph->getNumber());
- // XXX numeric overflow
- changeParagraphText(nNumber, 0, m_rEngine.GetTextLen(nNumber), false,
- false, rText);
- }
-}
-
-void Document::changeParagraphText(ParagraphImpl * pParagraph,
- ::sal_Int32 nBegin, ::sal_Int32 nEnd,
- bool bCut, bool bPaste,
- ::rtl::OUString const & rText)
-{
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
- {
- ::osl::MutexGuard aInternalGuard(GetMutex());
- ::sal_uLong nNumber = static_cast< ::sal_uLong >(pParagraph->getNumber());
- // XXX numeric overflow
- if (nBegin < 0 || nBegin > nEnd
- || nEnd > m_rEngine.GetText(nNumber).Len())
- throw ::css::lang::IndexOutOfBoundsException(
- ::rtl::OUString(
- RTL_CONSTASCII_USTRINGPARAM(
- "textwindowaccessibility.cxx:"
- " Document::changeParagraphText")),
- static_cast< ::css::uno::XWeak * >(this));
- changeParagraphText(nNumber, static_cast< ::sal_uInt16 >(nBegin),
- static_cast< ::sal_uInt16 >(nEnd), bCut, bPaste, rText);
- // XXX numeric overflow (2x)
- }
-}
-
-void Document::copyParagraphText(ParagraphImpl const * pParagraph,
- ::sal_Int32 nBegin, ::sal_Int32 nEnd)
-{
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
- {
- ::osl::MutexGuard aInternalGuard(GetMutex());
- ::sal_uLong nNumber = static_cast< ::sal_uLong >(pParagraph->getNumber());
- // XXX numeric overflow
- if (nBegin < 0 || nBegin > nEnd
- || nEnd > m_rEngine.GetText(nNumber).Len())
- throw ::css::lang::IndexOutOfBoundsException(
- ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(
- "textwindowaccessibility.cxx:"
- " Document::copyParagraphText")),
- static_cast< ::css::uno::XWeak * >(this));
- m_rView.SetSelection(
- ::TextSelection(::TextPaM(nNumber, static_cast< ::sal_uInt16 >(nBegin)),
- ::TextPaM(nNumber, static_cast< ::sal_uInt16 >(nEnd))));
- // XXX numeric overflow (2x)
- m_rView.Copy();
- }
-}
-
-void Document::changeParagraphAttributes(
- ParagraphImpl * pParagraph, ::sal_Int32 nBegin, ::sal_Int32 nEnd,
- ::css::uno::Sequence< ::css::beans::PropertyValue > const & rAttributeSet)
-{
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
- {
- ::osl::MutexGuard aInternalGuard(GetMutex());
- ::sal_uLong nNumber = static_cast< ::sal_uLong >(pParagraph->getNumber());
- // XXX numeric overflow
- if (nBegin < 0 || nBegin > nEnd
- || nEnd > m_rEngine.GetText(nNumber).Len())
- throw ::css::lang::IndexOutOfBoundsException(
- ::rtl::OUString(
- RTL_CONSTASCII_USTRINGPARAM(
- "textwindowaccessibility.cxx:"
- " Document::changeParagraphAttributes")),
- static_cast< ::css::uno::XWeak * >(this));
-
- // FIXME The new attributes are added to any attributes already set,
- // they do not replace the old attributes as required by
- // XAccessibleEditableText.setAttributes:
- for (::sal_Int32 i = 0; i < rAttributeSet.getLength(); ++i)
- if (rAttributeSet[i].Name.equalsAsciiL(
- RTL_CONSTASCII_STRINGPARAM("CharColor")))
- m_rEngine.SetAttrib(::TextAttribFontColor(
- mapFontColor(rAttributeSet[i].Value)),
- nNumber, static_cast< ::sal_uInt16 >(nBegin),
- static_cast< ::sal_uInt16 >(nEnd));
- // XXX numeric overflow (2x)
- else if (rAttributeSet[i].Name.equalsAsciiL(
- RTL_CONSTASCII_STRINGPARAM("CharWeight")))
- m_rEngine.SetAttrib(::TextAttribFontWeight(
- mapFontWeight(rAttributeSet[i].Value)),
- nNumber, static_cast< ::sal_uInt16 >(nBegin),
- static_cast< ::sal_uInt16 >(nEnd));
- // XXX numeric overflow (2x)
- }
-}
-
-void Document::changeParagraphSelection(ParagraphImpl * pParagraph,
- ::sal_Int32 nBegin, ::sal_Int32 nEnd)
-{
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
- {
- ::osl::MutexGuard aInternalGuard(GetMutex());
- ::sal_uLong nNumber = static_cast< ::sal_uLong >(pParagraph->getNumber());
- // XXX numeric overflow
- if (nBegin < 0 || nBegin > nEnd
- || nEnd > m_rEngine.GetText(nNumber).Len())
- throw ::css::lang::IndexOutOfBoundsException(
- ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM(
- "textwindowaccessibility.cxx:"
- " Document::changeParagraphSelection")),
- static_cast< ::css::uno::XWeak * >(this));
- m_rView.SetSelection(
- ::TextSelection(::TextPaM(nNumber, static_cast< ::sal_uInt16 >(nBegin)),
- ::TextPaM(nNumber, static_cast< ::sal_uInt16 >(nEnd))));
- // XXX numeric overflow (2x)
- }
-}
-
-::css::i18n::Boundary
-Document::retrieveParagraphLineBoundary( ParagraphImpl const * pParagraph,
- ::sal_Int32 nIndex, ::sal_Int32 *pLineNo )
-{
- ::css::i18n::Boundary aBoundary;
- aBoundary.startPos = nIndex;
- aBoundary.endPos = nIndex;
-
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard( getExternalLock() );
- {
- ::osl::MutexGuard aInternalGuard( GetMutex() );
- ::sal_uLong nNumber = static_cast< ::sal_uLong >( pParagraph->getNumber() );
- if ( nIndex < 0 || nIndex > m_rEngine.GetText( nNumber ).Len() )
- throw ::css::lang::IndexOutOfBoundsException(
- ::rtl::OUString(
- RTL_CONSTASCII_USTRINGPARAM(
- "textwindowaccessibility.cxx:"
- " Document::retrieveParagraphLineBoundary" ) ),
- static_cast< ::css::uno::XWeak * >( this ) );
- ::sal_Int32 nLineStart = 0;
- ::sal_Int32 nLineEnd = 0;
- ::sal_uInt16 nLineCount = m_rEngine.GetLineCount( nNumber );
- for ( ::sal_uInt16 nLine = 0; nLine < nLineCount; ++nLine )
- {
- ::sal_Int32 nLineLength = static_cast< ::sal_Int32 >(
- m_rEngine.GetLineLen( nNumber, nLine ) );
- nLineStart = nLineEnd;
- nLineEnd += nLineLength;
- if ( nIndex >= nLineStart && ( ( nLine == nLineCount - 1 ) ? nIndex <= nLineEnd : nIndex < nLineEnd ) )
- {
- aBoundary.startPos = nLineStart;
- aBoundary.endPos = nLineEnd;
- if( pLineNo )
- pLineNo[0] = nLine;
- break;
- }
- }
- }
-
- return aBoundary;
-}
-
-::css::i18n::Boundary
-Document::retrieveParagraphBoundaryOfLine( ParagraphImpl const * pParagraph,
- ::sal_Int32 nLineNo )
-{
- ::css::i18n::Boundary aBoundary;
- aBoundary.startPos = 0;
- aBoundary.endPos = 0;
-
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard( getExternalLock() );
- {
- ::osl::MutexGuard aInternalGuard( GetMutex() );
- ::sal_uLong nNumber = static_cast< ::sal_uLong >( pParagraph->getNumber() );
- if ( nLineNo >= m_rEngine.GetLineCount( nNumber ) )
- throw ::css::lang::IndexOutOfBoundsException(
- ::rtl::OUString(
- RTL_CONSTASCII_USTRINGPARAM(
- "textwindowaccessibility.cxx:"
- " Document::retrieveParagraphBoundaryOfLine" ) ),
- static_cast< ::css::uno::XWeak * >( this ) );
- ::sal_Int32 nLineStart = 0;
- ::sal_Int32 nLineEnd = 0;
- for ( ::sal_uInt16 nLine = 0; nLine <= nLineNo; ++nLine )
- {
- ::sal_Int32 nLineLength = static_cast< ::sal_Int32 >(
- m_rEngine.GetLineLen( nNumber, nLine ) );
- nLineStart = nLineEnd;
- nLineEnd += nLineLength;
- }
-
- aBoundary.startPos = nLineStart;
- aBoundary.endPos = nLineEnd;
- }
-
- return aBoundary;
-}
-
-sal_Int32 Document::retrieveParagraphLineWithCursor( ParagraphImpl const * pParagraph )
-{
- ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
- ::osl::MutexGuard aInternalGuard(GetMutex());
- ::TextSelection const & rSelection = m_rView.GetSelection();
- Paragraphs::size_type nNumber = pParagraph->getNumber();
- TextPaM aEndPaM( rSelection.GetEnd() );
-
- return aEndPaM.GetPara() == nNumber
- ? m_rView.GetLineNumberOfCursorInSelection() : -1;
-}
-
-
-::css::uno::Reference< ::css::accessibility::XAccessibleRelationSet >
-Document::retrieveParagraphRelationSet( ParagraphImpl const * pParagraph )
-{
- ::osl::MutexGuard aInternalGuard( GetMutex() );
-
- ::utl::AccessibleRelationSetHelper* pRelationSetHelper = new ::utl::AccessibleRelationSetHelper();
- ::css::uno::Reference< ::css::accessibility::XAccessibleRelationSet > xSet = pRelationSetHelper;
-
- Paragraphs::iterator aPara( m_xParagraphs->begin() + pParagraph->getNumber() );
-
- if ( aPara > m_aVisibleBegin && aPara < m_aVisibleEnd )
- {
- ::css::uno::Sequence< ::css::uno::Reference< ::css::uno::XInterface > > aSequence(1);
- aSequence[0] = getAccessibleChild( aPara - 1 );
- ::css::accessibility::AccessibleRelation aRelation( ::css::accessibility::AccessibleRelationType::CONTENT_FLOWS_FROM, aSequence );
- pRelationSetHelper->AddRelation( aRelation );
- }
-
- if ( aPara >= m_aVisibleBegin && aPara < m_aVisibleEnd -1 )
- {
- ::css::uno::Sequence< ::css::uno::Reference< ::css::uno::XInterface > > aSequence(1);
- aSequence[0] = getAccessibleChild( aPara + 1 );
- ::css::accessibility::AccessibleRelation aRelation( ::css::accessibility::AccessibleRelationType::CONTENT_FLOWS_TO, aSequence );
- pRelationSetHelper->AddRelation( aRelation );
- }
-
- return xSet;
-}
-
-void Document::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
-{
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_WINDOW_GETFOCUS:
- case VCLEVENT_WINDOW_LOSEFOCUS:
- {
- // #107179# if our parent is a compound control (e.g. MultiLineEdit),
- // suppress the window focus events here
- if ( !m_bCompoundControlChild )
- VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
- }
- break;
- default:
- VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
- }
-}
-
-// virtual
-::sal_Int32 SAL_CALL Document::getAccessibleChildCount()
- throw (::css::uno::RuntimeException)
-{
- ::comphelper::OExternalLockGuard aGuard(this);
- init();
- return m_aVisibleEnd - m_aVisibleBegin;
-}
-
-// virtual
-::css::uno::Reference< ::css::accessibility::XAccessible > SAL_CALL
-Document::getAccessibleChild(::sal_Int32 i)
- throw (::css::lang::IndexOutOfBoundsException,
- ::css::uno::RuntimeException)
-{
- ::comphelper::OExternalLockGuard aGuard(this);
- init();
- if (i < 0 || i >= m_aVisibleEnd - m_aVisibleBegin)
- throw ::css::lang::IndexOutOfBoundsException(
- ::rtl::OUString(
- RTL_CONSTASCII_USTRINGPARAM(
- "textwindowaccessibility.cxx:"
- " Document::getAccessibleChild")),
- static_cast< ::css::uno::XWeak * >(this));
- return getAccessibleChild(m_aVisibleBegin
- + static_cast< Paragraphs::size_type >(i));
-}
-
-// virtual
-::sal_Int16 SAL_CALL Document::getAccessibleRole()
- throw (::css::uno::RuntimeException)
-{
- return ::css::accessibility::AccessibleRole::TEXT_FRAME;
-}
-
-// virtual
-::css::uno::Reference< ::css::accessibility::XAccessible > SAL_CALL
-Document::getAccessibleAtPoint(::css::awt::Point const & rPoint)
- throw (::css::uno::RuntimeException)
-{
- ::comphelper::OExternalLockGuard aGuard(this);
- init();
- if (rPoint.X >= 0
- && rPoint.X < m_rView.GetWindow()->GetOutputSizePixel().Width()
- && rPoint.Y >= 0 && rPoint.Y < m_nViewHeight)
- {
- ::sal_Int32 nOffset = m_nViewOffset + rPoint.Y; // XXX numeric overflow
- ::sal_Int32 nPos = m_nViewOffset - m_nVisibleBeginOffset;
- for (Paragraphs::iterator aIt(m_aVisibleBegin); aIt != m_aVisibleEnd;
- ++aIt)
- {
- nPos += aIt->getHeight(); // XXX numeric overflow
- if (nOffset < nPos)
- return getAccessibleChild(aIt);
- }
- }
- return 0;
-}
-
-// virtual
-void SAL_CALL Document::disposing()
-{
- m_aEngineListener.endListening();
- m_aViewListener.endListening();
- if (m_xParagraphs.get() != 0)
- disposeParagraphs();
- VCLXAccessibleComponent::disposing();
-}
-
-// virtual
-void Document::Notify(::SfxBroadcaster &, ::SfxHint const & rHint)
-{
- if (rHint.ISA(::TextHint))
- {
- ::TextHint const & rTextHint
- = static_cast< ::TextHint const & >(rHint);
- switch (rTextHint.GetId())
- {
- case TEXT_HINT_PARAINSERTED:
- case TEXT_HINT_PARAREMOVED:
- // TEXT_HINT_PARAINSERTED and TEXT_HINT_PARAREMOVED are sent at
- // "unsafe" times (when the text engine has not yet re-formatted its
- // content), so that for example calling ::TextEngine::GetTextHeight
- // from within the code that handles TEXT_HINT_PARAINSERTED causes
- // trouble within the text engine. Therefore, these hints are just
- // buffered until a following ::TextEngine::FormatDoc causes a
- // TEXT_HINT_TEXTFORMATTED to come in:
- case TEXT_HINT_FORMATPARA:
- // ::TextEngine::FormatDoc sends a sequence of
- // TEXT_HINT_FORMATPARAs, followed by an optional
- // TEXT_HINT_TEXTHEIGHTCHANGED, followed in all cases by one
- // TEXT_HINT_TEXTFORMATTED. Only the TEXT_HINT_FORMATPARAs contain
- // the the numbers of the affected paragraphs, but they are sent
- // before the changes are applied. Therefore, TEXT_HINT_FORMATPARAs
- // are just buffered until another hint comes in:
- {
- ::osl::MutexGuard aInternalGuard(GetMutex());
- if (!isAlive())
- break;
-
- m_aParagraphNotifications.push(rTextHint);
- break;
- }
- case TEXT_HINT_TEXTFORMATTED:
- case TEXT_HINT_TEXTHEIGHTCHANGED:
- case TEXT_HINT_MODIFIED:
- {
- ::osl::MutexGuard aInternalGuard(GetMutex());
- if (!isAlive())
- break;
- handleParagraphNotifications();
- break;
- }
- case TEXT_HINT_VIEWSCROLLED:
- {
- ::osl::MutexGuard aInternalGuard(GetMutex());
- if (!isAlive())
- break;
- handleParagraphNotifications();
-
- ::sal_Int32 nOffset = static_cast< ::sal_Int32 >(
- m_rView.GetStartDocPos().Y());
- // XXX numeric overflow
- if (nOffset != m_nViewOffset)
- {
- m_nViewOffset = nOffset;
-
- Paragraphs::iterator aOldVisibleBegin(
- m_aVisibleBegin);
- Paragraphs::iterator aOldVisibleEnd(m_aVisibleEnd);
-
- determineVisibleRange();
-
- notifyVisibleRangeChanges(aOldVisibleBegin,
- aOldVisibleEnd,
- m_xParagraphs->end());
- }
- break;
- }
- case TEXT_HINT_VIEWSELECTIONCHANGED:
- {
- ::osl::MutexGuard aInternalGuard(GetMutex());
- if (!isAlive())
- break;
-
- if (m_aParagraphNotifications.empty())
- {
- handleSelectionChangeNotification();
- }
- else
- {
- // TEXT_HINT_VIEWSELECTIONCHANGED is sometimes sent at
- // "unsafe" times (when the text engine has not yet re-
- // formatted its content), so that for example calling
- // ::TextEngine::GetTextHeight from within the code that
- // handles a previous TEXT_HINT_PARAINSERTED causes
- // trouble within the text engine. Therefore, these
- // hints are just buffered (along with
- // TEXT_HINT_PARAINSERTED/REMOVED/FORMATPARA) until a
- // following ::TextEngine::FormatDoc causes a
- // TEXT_HINT_TEXTFORMATTED to come in:
- m_bSelectionChangedNotification = true;
- }
- break;
- }
- }
- }
-}
-
-IMPL_LINK(Document, WindowEventHandler, ::VclSimpleEvent *, pEvent)
-{
- switch (pEvent->GetId())
- {
- case VCLEVENT_WINDOW_RESIZE:
- {
- ::osl::MutexGuard aInternalGuard(GetMutex());
- if (!isAlive())
- break;
-
- ::sal_Int32 nHeight = static_cast< ::sal_Int32 >(
- m_rView.GetWindow()->GetOutputSizePixel().Height());
- // XXX numeric overflow
- if (nHeight != m_nViewHeight)
- {
- m_nViewHeight = nHeight;
-
- Paragraphs::iterator aOldVisibleBegin(m_aVisibleBegin);
- Paragraphs::iterator aOldVisibleEnd(m_aVisibleEnd);
-
- determineVisibleRange();
-
- notifyVisibleRangeChanges(aOldVisibleBegin, aOldVisibleEnd,
- m_xParagraphs->end());
- }
- break;
- }
- case VCLEVENT_WINDOW_GETFOCUS:
- {
- ::osl::MutexGuard aInternalGuard(GetMutex());
- if (!isAlive())
- break;
-
- if (m_aFocused >= m_aVisibleBegin && m_aFocused < m_aVisibleEnd)
- {
- ::rtl::Reference< ParagraphImpl > xParagraph(
- getParagraph(m_aFocused));
- if (xParagraph.is())
- xParagraph->notifyEvent(
- ::css::accessibility::AccessibleEventId::
- STATE_CHANGED,
- ::css::uno::Any(),
- ::css::uno::makeAny(
- ::css::accessibility::AccessibleStateType::
- FOCUSED));
- }
- break;
- }
- case VCLEVENT_WINDOW_LOSEFOCUS:
- {
- ::osl::MutexGuard aInternalGuard(GetMutex());
- if (!isAlive())
- break;
-
- if (m_aFocused >= m_aVisibleBegin && m_aFocused < m_aVisibleEnd)
- {
- ::rtl::Reference< ParagraphImpl > xParagraph(
- getParagraph(m_aFocused));
- if (xParagraph.is())
- xParagraph->notifyEvent(
- ::css::accessibility::AccessibleEventId::
- STATE_CHANGED,
- ::css::uno::makeAny(
- ::css::accessibility::AccessibleStateType::
- FOCUSED),
- ::css::uno::Any());
- }
- break;
- }
- }
- return 0;
-}
-
-void Document::init()
-{
- if (m_xParagraphs.get() == 0)
- {
- ::sal_uLong nCount = m_rEngine.GetParagraphCount();
- ::std::auto_ptr< Paragraphs > p(new Paragraphs);
- p->reserve(static_cast< Paragraphs::size_type >(nCount));
- // numeric overflow is harmless here
- for (::sal_uLong i = 0; i < nCount; ++i)
- p->push_back(ParagraphInfo(static_cast< ::sal_Int32 >(
- m_rEngine.GetTextHeight(i))));
- // XXX numeric overflow
- m_nViewOffset = static_cast< ::sal_Int32 >(
- m_rView.GetStartDocPos().Y()); // XXX numeric overflow
- m_nViewHeight = static_cast< ::sal_Int32 >(
- m_rView.GetWindow()->GetOutputSizePixel().Height());
- // XXX numeric overflow
- m_xParagraphs = p;
- determineVisibleRange();
- m_nSelectionFirstPara = -1;
- m_nSelectionFirstPos = -1;
- m_nSelectionLastPara = -1;
- m_nSelectionLastPos = -1;
- m_aFocused = m_xParagraphs->end();
- m_bSelectionChangedNotification = false;
- m_aEngineListener.startListening(m_rEngine);
- m_aViewListener.startListening(*m_rView.GetWindow());
- }
-}
-
-::rtl::Reference< ParagraphImpl >
-Document::getParagraph(Paragraphs::iterator const & rIt)
-{
- return static_cast< ParagraphImpl * >(
- ::css::uno::Reference< ::css::accessibility::XAccessible >(
- rIt->getParagraph()).get());
-}
-
-::css::uno::Reference< ::css::accessibility::XAccessible >
-Document::getAccessibleChild(Paragraphs::iterator const & rIt)
-{
- ::css::uno::Reference< ::css::accessibility::XAccessible > xParagraph(
- rIt->getParagraph());
- if (!xParagraph.is())
- {
- xParagraph = new Paragraph(this, rIt - m_xParagraphs->begin());
- rIt->setParagraph(xParagraph);
- }
- return xParagraph;
-}
-
-void Document::determineVisibleRange()
-{
- Paragraphs::iterator const aEnd = m_xParagraphs->end();
-
- m_aVisibleBegin = aEnd;
- m_aVisibleEnd = aEnd;
- m_nVisibleBeginOffset = 0;
-
- ::sal_Int32 nPos = 0;
- for (Paragraphs::iterator aIt = m_xParagraphs->begin(); m_aVisibleEnd == aEnd && aIt != aEnd; ++aIt)
- {
- ::sal_Int32 const nOldPos = nPos;
- nPos += aIt->getHeight(); // XXX numeric overflow
- if (m_aVisibleBegin == aEnd)
- {
- if (nPos >= m_nViewOffset)
- {
- m_aVisibleBegin = aIt;
- m_nVisibleBeginOffset = m_nViewOffset - nOldPos;
- }
- }
- else
- {
- if (nPos >= m_nViewOffset + m_nViewHeight) // XXX numeric overflow
- {
- m_aVisibleEnd = aIt;
- }
- }
- }
-
- OSL_POSTCOND(
- (m_aVisibleBegin == m_xParagraphs->end() && m_aVisibleEnd == m_xParagraphs->end() && m_nVisibleBeginOffset == 0)
- || (m_aVisibleBegin < m_aVisibleEnd && m_nVisibleBeginOffset >= 0),
- "invalid visible range");
-}
-
-void Document::notifyVisibleRangeChanges(
- Paragraphs::iterator const & rOldVisibleBegin,
- Paragraphs::iterator const & rOldVisibleEnd,
- Paragraphs::iterator const & rInserted)
-{
- // XXX Replace this code that determines which paragraphs have changed from
- // invisible to visible or vice versa with a better algorithm.
- {for (Paragraphs::iterator aIt(rOldVisibleBegin); aIt != rOldVisibleEnd;
- ++aIt)
- if (aIt != rInserted
- && (aIt < m_aVisibleBegin || aIt >= m_aVisibleEnd))
- NotifyAccessibleEvent(
- ::css::accessibility::AccessibleEventId::
- CHILD,
- ::css::uno::makeAny(getAccessibleChild(aIt)),
- ::css::uno::Any());
- }
- {for (Paragraphs::iterator aIt(m_aVisibleBegin); aIt != m_aVisibleEnd;
- ++aIt)
- if (aIt == rInserted
- || aIt < rOldVisibleBegin || aIt >= rOldVisibleEnd)
- NotifyAccessibleEvent(
- ::css::accessibility::AccessibleEventId::
- CHILD,
- ::css::uno::Any(),
- ::css::uno::makeAny(getAccessibleChild(aIt)));
- }
-}
-
-void
-Document::changeParagraphText(::sal_uLong nNumber, ::sal_uInt16 nBegin, ::sal_uInt16 nEnd,
- bool bCut, bool bPaste,
- ::rtl::OUString const & rText)
-{
- m_rView.SetSelection(::TextSelection(::TextPaM(nNumber, nBegin),
- ::TextPaM(nNumber, nEnd)));
- if (bCut)
- m_rView.Cut();
- else if (nBegin != nEnd)
- m_rView.DeleteSelected();
- if (bPaste)
- m_rView.Paste();
- else if (rText.getLength() != 0)
- m_rView.InsertText(rText);
-}
-
-void Document::handleParagraphNotifications()
-{
- while (!m_aParagraphNotifications.empty())
- {
- ::TextHint aHint(m_aParagraphNotifications.front());
- m_aParagraphNotifications.pop();
- switch (aHint.GetId())
- {
- case TEXT_HINT_PARAINSERTED:
- {
- ::sal_uLong n = aHint.GetValue();
- OSL_ENSURE(n <= m_xParagraphs->size(),
- "bad TEXT_HINT_PARAINSERTED event");
-
- // Save the values of old iterators (the iterators themselves
- // will get invalidated), and adjust the old values so that they
- // reflect the insertion of the new paragraph:
- Paragraphs::size_type nOldVisibleBegin
- = m_aVisibleBegin - m_xParagraphs->begin();
- Paragraphs::size_type nOldVisibleEnd
- = m_aVisibleEnd - m_xParagraphs->begin();
- Paragraphs::size_type nOldFocused
- = m_aFocused - m_xParagraphs->begin();
- if (n <= nOldVisibleBegin)
- ++nOldVisibleBegin; // XXX numeric overflow
- if (n <= nOldVisibleEnd)
- ++nOldVisibleEnd; // XXX numeric overflow
- if (n <= nOldFocused)
- ++nOldFocused; // XXX numeric overflow
- if (sal::static_int_cast<sal_Int32>(n) <= m_nSelectionFirstPara)
- ++m_nSelectionFirstPara; // XXX numeric overflow
- if (sal::static_int_cast<sal_Int32>(n) <= m_nSelectionLastPara)
- ++m_nSelectionLastPara; // XXX numeric overflow
-
- Paragraphs::iterator aIns(
- m_xParagraphs->insert(
- m_xParagraphs->begin() + n,
- ParagraphInfo(static_cast< ::sal_Int32 >(
- m_rEngine.GetTextHeight(n)))));
- // XXX numeric overflow (2x)
-
- determineVisibleRange();
- m_aFocused = m_xParagraphs->begin() + nOldFocused;
-
- for (Paragraphs::iterator aIt(aIns);;)
- {
- ++aIt;
- if (aIt == m_xParagraphs->end())
- break;
- ::rtl::Reference< ParagraphImpl > xParagraph(
- getParagraph(aIt));
- if (xParagraph.is())
- xParagraph->numberChanged(true);
- }
-
- notifyVisibleRangeChanges(
- m_xParagraphs->begin() + nOldVisibleBegin,
- m_xParagraphs->begin() + nOldVisibleEnd, aIns);
- break;
- }
- case TEXT_HINT_PARAREMOVED:
- {
- ::sal_uLong n = aHint.GetValue();
- if (n == TEXT_PARA_ALL)
- {
- {for (Paragraphs::iterator aIt(m_aVisibleBegin);
- aIt != m_aVisibleEnd; ++aIt)
- NotifyAccessibleEvent(
- ::css::accessibility::AccessibleEventId::
- CHILD,
- ::css::uno::makeAny(getAccessibleChild(aIt)),
- ::css::uno::Any());
- }
- disposeParagraphs();
- m_xParagraphs->clear();
- determineVisibleRange();
- m_nSelectionFirstPara = -1;
- m_nSelectionFirstPos = -1;
- m_nSelectionLastPara = -1;
- m_nSelectionLastPos = -1;
- m_aFocused = m_xParagraphs->end();
- }
- else
- {
- OSL_ENSURE(n < m_xParagraphs->size(),
- "Bad TEXT_HINT_PARAREMOVED event");
-
- Paragraphs::iterator aIt(m_xParagraphs->begin() + n);
- // numeric overflow cannot occur
-
- // Save the values of old iterators (the iterators
- // themselves will get invalidated), and adjust the old
- // values so that they reflect the removal of the paragraph:
- Paragraphs::size_type nOldVisibleBegin
- = m_aVisibleBegin - m_xParagraphs->begin();
- Paragraphs::size_type nOldVisibleEnd
- = m_aVisibleEnd - m_xParagraphs->begin();
- bool bWasVisible
- = nOldVisibleBegin <= n && n < nOldVisibleEnd;
- Paragraphs::size_type nOldFocused
- = m_aFocused - m_xParagraphs->begin();
- bool bWasFocused = aIt == m_aFocused;
- if (n < nOldVisibleBegin)
- --nOldVisibleBegin;
- if (n < nOldVisibleEnd)
- --nOldVisibleEnd;
- if (n < nOldFocused)
- --nOldFocused;
- if (sal::static_int_cast<sal_Int32>(n) < m_nSelectionFirstPara)
- --m_nSelectionFirstPara;
- else if (sal::static_int_cast<sal_Int32>(n) == m_nSelectionFirstPara)
- {
- if (m_nSelectionFirstPara == m_nSelectionLastPara)
- {
- m_nSelectionFirstPara = -1;
- m_nSelectionFirstPos = -1;
- m_nSelectionLastPara = -1;
- m_nSelectionLastPos = -1;
- }
- else
- {
- ++m_nSelectionFirstPara;
- m_nSelectionFirstPos = 0;
- }
- }
- if (sal::static_int_cast<sal_Int32>(n) < m_nSelectionLastPara)
- --m_nSelectionLastPara;
- else if (sal::static_int_cast<sal_Int32>(n) == m_nSelectionLastPara)
- {
- OSL_ENSURE(m_nSelectionFirstPara < m_nSelectionLastPara,
- "logic error");
- --m_nSelectionLastPara;
- m_nSelectionLastPos = 0x7FFFFFFF;
- }
-
- ::css::uno::Reference< ::css::accessibility::XAccessible >
- xStrong;
- if (bWasVisible)
- xStrong = getAccessibleChild(aIt);
- ::css::uno::WeakReference<
- ::css::accessibility::XAccessible > xWeak(
- aIt->getParagraph());
- aIt = m_xParagraphs->erase(aIt);
-
- determineVisibleRange();
- m_aFocused = bWasFocused ? m_xParagraphs->end()
- : m_xParagraphs->begin() + nOldFocused;
-
- for (; aIt != m_xParagraphs->end(); ++aIt)
- {
- ::rtl::Reference< ParagraphImpl > xParagraph(
- getParagraph(aIt));
- if (xParagraph.is())
- xParagraph->numberChanged(false);
- }
-
- if (bWasVisible)
- NotifyAccessibleEvent(
- ::css::accessibility::AccessibleEventId::
- CHILD,
- ::css::uno::makeAny(xStrong),
- ::css::uno::Any());
-
- ::css::uno::Reference< ::css::lang::XComponent > xComponent(
- xWeak.get(), ::css::uno::UNO_QUERY);
- if (xComponent.is())
- xComponent->dispose();
-
- notifyVisibleRangeChanges(
- m_xParagraphs->begin() + nOldVisibleBegin,
- m_xParagraphs->begin() + nOldVisibleEnd,
- m_xParagraphs->end());
- }
- break;
- }
- case TEXT_HINT_FORMATPARA:
- {
- ::sal_uLong n = aHint.GetValue();
- OSL_ENSURE(n < m_xParagraphs->size(),
- "Bad TEXT_HINT_FORMATPARA event");
-
- (*m_xParagraphs)[static_cast< Paragraphs::size_type >(n)].
- changeHeight(static_cast< ::sal_Int32 >(
- m_rEngine.GetTextHeight(n)));
- // XXX numeric overflow
- Paragraphs::iterator aOldVisibleBegin(m_aVisibleBegin);
- Paragraphs::iterator aOldVisibleEnd(m_aVisibleEnd);
- determineVisibleRange();
- notifyVisibleRangeChanges(aOldVisibleBegin, aOldVisibleEnd,
- m_xParagraphs->end());
-
- if (n < m_xParagraphs->size())
- {
- Paragraphs::iterator aIt(m_xParagraphs->begin() + n);
- ::rtl::Reference< ParagraphImpl > xParagraph(getParagraph(aIt));
- if (xParagraph.is())
- xParagraph->textChanged();
- }
- break;
- }
- default:
- OSL_FAIL( "bad buffered hint");
- break;
- }
- }
- if (m_bSelectionChangedNotification)
- {
- m_bSelectionChangedNotification = false;
- handleSelectionChangeNotification();
- }
-}
-
-void Document::handleSelectionChangeNotification()
-{
- ::TextSelection const & rSelection = m_rView.GetSelection();
- OSL_ENSURE(rSelection.GetStart().GetPara() < m_xParagraphs->size()
- && rSelection.GetEnd().GetPara() < m_xParagraphs->size(),
- "bad TEXT_HINT_VIEWSELECTIONCHANGED event");
- ::sal_Int32 nNewFirstPara
- = static_cast< ::sal_Int32 >(rSelection.GetStart().GetPara());
- ::sal_Int32 nNewFirstPos
- = static_cast< ::sal_Int32 >(rSelection.GetStart().GetIndex());
- // XXX numeric overflow
- ::sal_Int32 nNewLastPara
- = static_cast< ::sal_Int32 >(rSelection.GetEnd().GetPara());
- ::sal_Int32 nNewLastPos
- = static_cast< ::sal_Int32 >(rSelection.GetEnd().GetIndex());
- // XXX numeric overflow
-
- // Lose focus:
- Paragraphs::iterator aIt(m_xParagraphs->begin() + nNewLastPara);
- if (m_aFocused != m_xParagraphs->end() && m_aFocused != aIt
- && m_aFocused >= m_aVisibleBegin && m_aFocused < m_aVisibleEnd)
- {
- ::rtl::Reference< ParagraphImpl > xParagraph(getParagraph(m_aFocused));
- if (xParagraph.is())
- xParagraph->notifyEvent(
- ::css::accessibility::AccessibleEventId::
- STATE_CHANGED,
- ::css::uno::makeAny(
- ::css::accessibility::AccessibleStateType::FOCUSED),
- ::css::uno::Any());
- }
-
- // Gain focus and update cursor position:
- if (aIt >= m_aVisibleBegin && aIt < m_aVisibleEnd
- && (aIt != m_aFocused
- || nNewLastPara != m_nSelectionLastPara
- || nNewLastPos != m_nSelectionLastPos))
- {
- ::rtl::Reference< ParagraphImpl > xParagraph(getParagraph(aIt));
- if (xParagraph.is())
- {
- if (aIt != m_aFocused)
- xParagraph->notifyEvent(
- ::css::accessibility::AccessibleEventId::
- STATE_CHANGED,
- ::css::uno::Any(),
- ::css::uno::makeAny(
- ::css::accessibility::AccessibleStateType::FOCUSED));
- if (nNewLastPara != m_nSelectionLastPara
- || nNewLastPos != m_nSelectionLastPos)
- xParagraph->notifyEvent(
- ::css::accessibility::AccessibleEventId::
- CARET_CHANGED,
- ::css::uno::makeAny< ::sal_Int32 >(
- nNewLastPara == m_nSelectionLastPara
- ? m_nSelectionLastPos : 0),
- ::css::uno::makeAny(nNewLastPos));
- }
- }
- m_aFocused = aIt;
-
- // Update both old and new selection. (Regardless of how the two selections
- // look like, there will always be two ranges to the left and right of the
- // overlap---the overlap and/or the range to the right of it possibly being
- // empty. Only for these two ranges notifications have to be sent.)
-
- TextPaM aOldTextStart( static_cast< sal_uLong >( m_nSelectionFirstPara ), static_cast< sal_uInt16 >( m_nSelectionFirstPos ) );
- TextPaM aOldTextEnd( static_cast< sal_uLong >( m_nSelectionLastPara ), static_cast< sal_uInt16 >( m_nSelectionLastPos ) );
- TextPaM aNewTextStart( static_cast< sal_uLong >( nNewFirstPara ), static_cast< sal_uInt16 >( nNewFirstPos ) );
- TextPaM aNewTextEnd( static_cast< sal_uLong >( nNewLastPara ), static_cast< sal_uInt16 >( nNewLastPos ) );
-
- // justify selections
- justifySelection( aOldTextStart, aOldTextEnd );
- justifySelection( aNewTextStart, aNewTextEnd );
-
- sal_Int32 nFirst1;
- sal_Int32 nLast1;
- sal_Int32 nFirst2;
- sal_Int32 nLast2;
-
- if ( m_nSelectionFirstPara == -1 )
- {
- // old selection not initialized yet => notify events only for new selection (if not empty)
- nFirst1 = aNewTextStart.GetPara();
- nLast1 = aNewTextEnd.GetPara() + ( aNewTextStart != aNewTextEnd ? 1 : 0 );
- nFirst2 = 0;
- nLast2 = 0;
- }
- else if ( aOldTextStart == aOldTextEnd && aNewTextStart == aNewTextEnd )
- {
- // old and new selection empty => no events
- nFirst1 = 0;
- nLast1 = 0;
- nFirst2 = 0;
- nLast2 = 0;
- }
- else if ( aOldTextStart != aOldTextEnd && aNewTextStart == aNewTextEnd )
- {
- // old selection not empty + new selection empty => notify events only for old selection
- nFirst1 = aOldTextStart.GetPara();
- nLast1 = aOldTextEnd.GetPara() + 1;
- nFirst2 = 0;
- nLast2 = 0;
- }
- else if ( aOldTextStart == aOldTextEnd && aNewTextStart != aNewTextEnd )
- {
- // old selection empty + new selection not empty => notify events only for new selection
- nFirst1 = aNewTextStart.GetPara();
- nLast1 = aNewTextEnd.GetPara() + 1;
- nFirst2 = 0;
- nLast2 = 0;
- }
- else
- {
- // old and new selection not empty => notify events for the two ranges left and right of the overlap
- ::std::vector< TextPaM > aTextPaMs(4);
- aTextPaMs[0] = aOldTextStart;
- aTextPaMs[1] = aOldTextEnd;
- aTextPaMs[2] = aNewTextStart;
- aTextPaMs[3] = aNewTextEnd;
- ::std::sort( aTextPaMs.begin(), aTextPaMs.end() );
-
- nFirst1 = aTextPaMs[0].GetPara();
- nLast1 = aTextPaMs[1].GetPara() + ( aTextPaMs[0] != aTextPaMs[1] ? 1 : 0 );
-
- nFirst2 = aTextPaMs[2].GetPara();
- nLast2 = aTextPaMs[3].GetPara() + ( aTextPaMs[2] != aTextPaMs[3] ? 1 : 0 );
-
- // adjust overlapping ranges
- if ( nLast1 > nFirst2 )
- nLast1 = nFirst2;
- }
-
- // notify selection changes
- notifySelectionChange( nFirst1, nLast1 );
- notifySelectionChange( nFirst2, nLast2 );
-
- m_nSelectionFirstPara = nNewFirstPara;
- m_nSelectionFirstPos = nNewFirstPos;
- m_nSelectionLastPara = nNewLastPara;
- m_nSelectionLastPos = nNewLastPos;
-}
-
-void Document::notifySelectionChange( sal_Int32 nFirst, sal_Int32 nLast )
-{
- if ( nFirst < nLast )
- {
- Paragraphs::iterator aEnd( ::std::min( m_xParagraphs->begin() + nLast, m_aVisibleEnd ) );
- for ( Paragraphs::iterator aIt = ::std::max( m_xParagraphs->begin() + nFirst, m_aVisibleBegin ); aIt < aEnd; ++aIt )
- {
- ::rtl::Reference< ParagraphImpl > xParagraph( getParagraph( aIt ) );
- if ( xParagraph.is() )
- {
- xParagraph->notifyEvent(
- ::css::accessibility::AccessibleEventId::SELECTION_CHANGED,
- ::css::uno::Any(), ::css::uno::Any() );
- xParagraph->notifyEvent(
- ::css::accessibility::AccessibleEventId::TEXT_SELECTION_CHANGED,
- ::css::uno::Any(), ::css::uno::Any() );
- }
- }
- }
-}
-
-void Document::justifySelection( TextPaM& rTextStart, TextPaM& rTextEnd )
-{
- if ( rTextStart > rTextEnd )
- {
- TextPaM aTextPaM( rTextStart );
- rTextStart = rTextEnd;
- rTextEnd = aTextPaM;
- }
-}
-
-void Document::disposeParagraphs()
-{
- for (Paragraphs::iterator aIt(m_xParagraphs->begin());
- aIt != m_xParagraphs->end(); ++aIt)
- {
- ::css::uno::Reference< ::css::lang::XComponent > xComponent(
- aIt->getParagraph().get(), ::css::uno::UNO_QUERY);
- if (xComponent.is())
- xComponent->dispose();
- }
-}
-
-// static
-::css::uno::Any Document::mapFontColor(::Color const & rColor)
-{
- return ::css::uno::makeAny(
- static_cast< ::sal_Int32 >(COLORDATA_RGB(rColor.GetColor())));
- // FIXME keep transparency?
-}
-
-// static
-::Color Document::mapFontColor(::css::uno::Any const & rColor)
-{
- ::sal_Int32 nColor = 0;
- rColor >>= nColor;
- return ::Color(static_cast< ::ColorData >(nColor));
-}
-
-// static
-::css::uno::Any Document::mapFontWeight(::FontWeight nWeight)
-{
- // Map from ::FontWeight to ::css:awt::FontWeight, depends on order of
- // elements in ::FontWeight (vcl/vclenum.hxx):
- static float const aWeight[]
- = { ::css::awt::FontWeight::DONTKNOW, // WEIGHT_DONTKNOW
- ::css::awt::FontWeight::THIN, // WEIGHT_THIN
- ::css::awt::FontWeight::ULTRALIGHT, // WEIGHT_ULTRALIGHT
- ::css::awt::FontWeight::LIGHT, // WEIGHT_LIGHT
- ::css::awt::FontWeight::SEMILIGHT, // WEIGHT_SEMILIGHT
- ::css::awt::FontWeight::NORMAL, // WEIGHT_NORMAL
- ::css::awt::FontWeight::NORMAL, // WEIGHT_MEDIUM
- ::css::awt::FontWeight::SEMIBOLD, // WEIGHT_SEMIBOLD
- ::css::awt::FontWeight::BOLD, // WEIGHT_BOLD
- ::css::awt::FontWeight::ULTRABOLD, // WEIGHT_ULTRABOLD
- ::css::awt::FontWeight::BLACK }; // WEIGHT_BLACK
- return ::css::uno::makeAny(aWeight[nWeight]);
-}
-
-// static
-::FontWeight Document::mapFontWeight(::css::uno::Any const & rWeight)
-{
- float nWeight = ::css::awt::FontWeight::NORMAL;
- rWeight >>= nWeight;
- return nWeight <= ::css::awt::FontWeight::DONTKNOW ? WEIGHT_DONTKNOW
- : nWeight <= ::css::awt::FontWeight::THIN ? WEIGHT_THIN
- : nWeight <= ::css::awt::FontWeight::ULTRALIGHT ? WEIGHT_ULTRALIGHT
- : nWeight <= ::css::awt::FontWeight::LIGHT ? WEIGHT_LIGHT
- : nWeight <= ::css::awt::FontWeight::SEMILIGHT ? WEIGHT_SEMILIGHT
- : nWeight <= ::css::awt::FontWeight::NORMAL ? WEIGHT_NORMAL
- : nWeight <= ::css::awt::FontWeight::SEMIBOLD ? WEIGHT_SEMIBOLD
- : nWeight <= ::css::awt::FontWeight::BOLD ? WEIGHT_BOLD
- : nWeight <= ::css::awt::FontWeight::ULTRABOLD ? WEIGHT_ULTRABOLD
- : WEIGHT_BLACK;
-}
-
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/helper/acc_factory.cxx b/accessibility/source/helper/acc_factory.cxx
deleted file mode 100644
index 0c0bf172e..000000000
--- a/accessibility/source/helper/acc_factory.cxx
+++ /dev/null
@@ -1,555 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/helper/acc_factory.hxx>
-
-#include <toolkit/awt/vclxwindows.hxx>
-#include <accessibility/standard/vclxaccessiblebutton.hxx>
-#include <accessibility/standard/vclxaccessiblecheckbox.hxx>
-#include <accessibility/standard/vclxaccessibledropdowncombobox.hxx>
-#include <accessibility/standard/vclxaccessiblecombobox.hxx>
-#include <accessibility/standard/vclxaccessibledropdownlistbox.hxx>
-#include <accessibility/standard/vclxaccessibleedit.hxx>
-#include <accessibility/standard/vclxaccessiblefixedhyperlink.hxx>
-#include <accessibility/standard/vclxaccessiblefixedtext.hxx>
-#include <accessibility/standard/vclxaccessiblelistbox.hxx>
-#include <accessibility/standard/vclxaccessiblemenu.hxx>
-#include <accessibility/standard/vclxaccessibleradiobutton.hxx>
-#include <accessibility/standard/vclxaccessiblescrollbar.hxx>
-#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
-#include <accessibility/standard/vclxaccessibletoolbox.hxx>
-#include <toolkit/awt/vclxaccessiblecomponent.hxx>
-#include <accessibility/standard/vclxaccessiblestatusbar.hxx>
-#include <accessibility/standard/vclxaccessibletabcontrol.hxx>
-#include <accessibility/standard/vclxaccessibletabpagewindow.hxx>
-#include <accessibility/standard/vclxaccessiblemenubar.hxx>
-#include <accessibility/standard/vclxaccessiblepopupmenu.hxx>
-#include <accessibility/extended/accessibletablistbox.hxx>
-#include <accessibility/extended/AccessibleBrowseBox.hxx>
-#include <accessibility/extended/accessibleiconchoicectrl.hxx>
-#include <accessibility/extended/accessibletabbar.hxx>
-#include <accessibility/extended/accessiblelistbox.hxx>
-#include <accessibility/extended/AccessibleBrowseBoxHeaderBar.hxx>
-#include <accessibility/extended/textwindowaccessibility.hxx>
-#include <accessibility/extended/AccessibleBrowseBoxTableCell.hxx>
-#include <accessibility/extended/AccessibleBrowseBoxHeaderCell.hxx>
-#include <accessibility/extended/AccessibleBrowseBoxCheckBoxCell.hxx>
-#include <accessibility/extended/accessibleeditbrowseboxcell.hxx>
-#include <accessibility/extended/AccessibleToolPanelDeck.hxx>
-#include <accessibility/extended/AccessibleToolPanelDeckTabBar.hxx>
-#include <accessibility/extended/AccessibleToolPanelDeckTabBarItem.hxx>
-#include <vcl/lstbox.hxx>
-#include <vcl/combobox.hxx>
-#include <accessibility/extended/AccessibleGridControl.hxx>
-#include <svtools/accessibletable.hxx>
-#include <vcl/popupmenuwindow.hxx>
-#include <cppuhelper/implbase1.hxx>
-
-#include "floatingwindowaccessible.hxx"
-
-//........................................................................
-namespace accessibility
-{
-
-inline bool hasFloatingChild(Window *pWindow)
-{
- Window * pChild = pWindow->GetAccessibleChildWindow(0);
- if( pChild && WINDOW_FLOATINGWINDOW == pChild->GetType() )
- return true;
-
- return false;
-}
-
-//........................................................................
-
- using namespace ::com::sun::star::uno;
- using namespace ::com::sun::star::awt;
- using namespace ::com::sun::star::accessibility;
- using namespace ::svt;
- using namespace ::svt::table;
-
- //================================================================
- //= IAccessibleFactory
- //================================================================
- class AccessibleFactory :public ::toolkit::IAccessibleFactory
- ,public ::svt::IAccessibleFactory
- {
- private:
- oslInterlockedCount m_refCount;
-
- public:
- AccessibleFactory();
-
- // IReference
- virtual oslInterlockedCount SAL_CALL acquire();
- virtual oslInterlockedCount SAL_CALL release();
-
- // ::toolkit::IAccessibleFactory
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- createAccessibleContext( VCLXButton* _pXWindow );
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- createAccessibleContext( VCLXCheckBox* _pXWindow );
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- createAccessibleContext( VCLXRadioButton* _pXWindow );
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- createAccessibleContext( VCLXListBox* _pXWindow );
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- createAccessibleContext( VCLXFixedText* _pXWindow );
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- createAccessibleContext( VCLXFixedHyperlink* _pXWindow );
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- createAccessibleContext( VCLXScrollBar* _pXWindow );
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- createAccessibleContext( VCLXEdit* _pXWindow );
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- createAccessibleContext( VCLXComboBox* _pXWindow );
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- createAccessibleContext( VCLXToolBox* _pXWindow );
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- createAccessibleContext( VCLXWindow* _pXWindow );
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- createAccessible( Menu* _pMenu, sal_Bool _bIsMenuBar );
-
- // ::svt::IAccessibleFactory
- virtual IAccessibleTabListBox*
- createAccessibleTabListBox(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent,
- SvHeaderTabListBox& rBox
- ) const;
-
- virtual IAccessibleBrowseBox*
- createAccessibleBrowseBox(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
- IAccessibleTableProvider& _rBrowseBox
- ) const;
-
- virtual IAccessibleTableControl*
- createAccessibleTableControl(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
- IAccessibleTable& _rTable
- ) const;
-
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- createAccessibleIconChoiceCtrl(
- SvtIconChoiceCtrl& _rIconCtrl,
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xParent
- ) const;
-
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- createAccessibleTabBar(
- TabBar& _rTabBar
- ) const;
-
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- createAccessibleTextWindowContext(
- VCLXWindow* pVclXWindow, TextEngine& rEngine, TextView& rView, bool bCompoundControlChild
- ) const;
-
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- createAccessibleTreeListBox(
- SvTreeListBox& _rListBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _xParent
- ) const;
-
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- createAccessibleBrowseBoxHeaderBar(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent,
- IAccessibleTableProvider& _rOwningTable,
- AccessibleBrowseBoxObjType _eObjType
- ) const;
-
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- createAccessibleBrowseBoxTableCell(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
- IAccessibleTableProvider& _rBrowseBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- sal_Int32 _nRowId,
- sal_uInt16 _nColId,
- sal_Int32 _nOffset
- ) const;
-
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- createAccessibleBrowseBoxHeaderCell(
- sal_Int32 _nColumnRowId,
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& rxParent,
- IAccessibleTableProvider& _rBrowseBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- AccessibleBrowseBoxObjType _eObjType
- ) const;
-
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- createAccessibleCheckBoxCell(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParent,
- IAccessibleTableProvider& _rBrowseBox,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _xFocusWindow,
- sal_Int32 _nRowPos,
- sal_uInt16 _nColPos,
- const TriState& _eState,
- sal_Bool _bEnabled,
- sal_Bool _bIsTriState
- ) const;
-
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >
- createEditBrowseBoxTableCellAccess(
- const ::com::sun::star::uno::Reference< com::sun::star::accessibility::XAccessible >& _rxParent,
- const ::com::sun::star::uno::Reference< com::sun::star::accessibility::XAccessible >& _rxControlAccessible,
- const ::com::sun::star::uno::Reference< ::com::sun::star::awt::XWindow >& _rxFocusWindow,
- IAccessibleTableProvider& _rBrowseBox,
- sal_Int32 _nRowPos,
- sal_uInt16 _nColPos
- ) const;
-
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- createAccessibleToolPanelDeck(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& i_rAccessibleParent,
- ::svt::ToolPanelDeck& i_rPanelDeck
- );
- virtual ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >
- createAccessibleToolPanelTabBar(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& i_rAccessibleParent,
- ::svt::IToolPanelDeck& i_rPanelDeck,
- ::svt::PanelTabBar& i_rTabBar
- );
-
- protected:
- virtual ~AccessibleFactory();
- };
-
-
- //--------------------------------------------------------------------
- AccessibleFactory::AccessibleFactory()
- :m_refCount( 0 )
- {
- }
-
- //--------------------------------------------------------------------
- AccessibleFactory::~AccessibleFactory()
- {
- }
-
- //--------------------------------------------------------------------
- oslInterlockedCount SAL_CALL AccessibleFactory::acquire()
- {
- return osl_incrementInterlockedCount( &m_refCount );
- }
-
- //--------------------------------------------------------------------
- oslInterlockedCount SAL_CALL AccessibleFactory::release()
- {
- if ( 0 == osl_decrementInterlockedCount( &m_refCount ) )
- {
- delete this;
- return 0;
- }
- return m_refCount;
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessible > AccessibleFactory::createAccessible( Menu* _pMenu, sal_Bool _bIsMenuBar )
- {
- OAccessibleMenuBaseComponent* pAccessible;
- if ( _bIsMenuBar )
- pAccessible = new VCLXAccessibleMenuBar( _pMenu );
- else
- pAccessible = new VCLXAccessiblePopupMenu( _pMenu );
- pAccessible->SetStates();
- return pAccessible;
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXButton* _pXWindow )
- {
- return new VCLXAccessibleButton( _pXWindow );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXCheckBox* _pXWindow )
- {
- return new VCLXAccessibleCheckBox( _pXWindow );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXRadioButton* _pXWindow )
- {
- return new VCLXAccessibleRadioButton( _pXWindow );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXListBox* _pXWindow )
- {
- sal_Bool bIsDropDownBox = sal_False;
- ListBox* pBox = static_cast< ListBox* >( _pXWindow->GetWindow() );
- if ( pBox )
- bIsDropDownBox = ( ( pBox->GetStyle() & WB_DROPDOWN ) == WB_DROPDOWN );
-
- if ( bIsDropDownBox )
- return new VCLXAccessibleDropDownListBox( _pXWindow );
- else
- return new VCLXAccessibleListBox( _pXWindow );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXFixedText* _pXWindow )
- {
- return new VCLXAccessibleFixedText( _pXWindow );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXFixedHyperlink* _pXWindow )
- {
- return new VCLXAccessibleFixedHyperlink( _pXWindow );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXScrollBar* _pXWindow )
- {
- return new VCLXAccessibleScrollBar( _pXWindow );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXEdit* _pXWindow )
- {
- return new VCLXAccessibleEdit( _pXWindow );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXComboBox* _pXWindow )
- {
- sal_Bool bIsDropDownBox = sal_False;
- ComboBox* pBox = static_cast< ComboBox* >( _pXWindow->GetWindow() );
- if ( pBox )
- bIsDropDownBox = ( ( pBox->GetStyle() & WB_DROPDOWN ) == WB_DROPDOWN );
-
- if ( bIsDropDownBox )
- return new VCLXAccessibleDropDownComboBox( _pXWindow );
- else
- return new VCLXAccessibleComboBox( _pXWindow );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXWindow* _pXWindow )
- {
- Reference< XAccessibleContext > xContext;
-
- Window* pWindow = _pXWindow->GetWindow();
- if ( pWindow )
- {
- WindowType nType = pWindow->GetType();
-
- if ( nType == WINDOW_MENUBARWINDOW || pWindow->IsMenuFloatingWindow() || pWindow->IsToolbarFloatingWindow() )
- {
- Reference< XAccessible > xAcc( pWindow->GetAccessible() );
- if ( xAcc.is() )
- {
- Reference< XAccessibleContext > xCont( xAcc->getAccessibleContext() );
- if ( pWindow->GetType() == WINDOW_MENUBARWINDOW ||
- ( xCont.is() && xCont->getAccessibleRole() == AccessibleRole::POPUP_MENU ) )
- {
- xContext = xCont;
- }
- }
- }
- else if ( nType == WINDOW_STATUSBAR )
- {
- xContext = (XAccessibleContext*) new VCLXAccessibleStatusBar( _pXWindow );
- }
- else if ( nType == WINDOW_TABCONTROL )
- {
- xContext = (XAccessibleContext*) new VCLXAccessibleTabControl( _pXWindow );
- }
- else if ( nType == WINDOW_TABPAGE && pWindow->GetAccessibleParentWindow() && pWindow->GetAccessibleParentWindow()->GetType() == WINDOW_TABCONTROL )
- {
- xContext = new VCLXAccessibleTabPageWindow( _pXWindow );
- }
- else if ( nType == WINDOW_FLOATINGWINDOW )
- {
- xContext = new FloatingWindowAccessible( _pXWindow );
- }
- else if ( nType == WINDOW_BORDERWINDOW && hasFloatingChild( pWindow ) )
- {
- PopupMenuFloatingWindow* pChild = dynamic_cast<PopupMenuFloatingWindow*>(
- pWindow->GetAccessibleChildWindow(0));
- if ( pChild && pChild->IsPopupMenu() )
- {
- // Get the accessible context from the child window.
- Reference<XAccessible> xAccessible = pChild->CreateAccessible();
- if (xAccessible.is())
- xContext = xAccessible->getAccessibleContext();
- }
- else
- xContext = new FloatingWindowAccessible( _pXWindow );
- }
- else if ( ( nType == WINDOW_HELPTEXTWINDOW ) || ( nType == WINDOW_FIXEDLINE ) )
- {
- xContext = (accessibility::XAccessibleContext*) new VCLXAccessibleFixedText( _pXWindow );
- }
- else
- {
- xContext = (accessibility::XAccessibleContext*) new VCLXAccessibleComponent( _pXWindow );
- }
- }
-
- return xContext;
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessibleContext > AccessibleFactory::createAccessibleContext( VCLXToolBox* _pXWindow )
- {
- return new VCLXAccessibleToolBox( _pXWindow );
- }
-
- //--------------------------------------------------------------------
- IAccessibleTabListBox* AccessibleFactory::createAccessibleTabListBox(
- const Reference< XAccessible >& rxParent, SvHeaderTabListBox& rBox ) const
- {
- return new AccessibleTabListBox( rxParent, rBox );
- }
-
- //--------------------------------------------------------------------
- IAccessibleBrowseBox* AccessibleFactory::createAccessibleBrowseBox(
- const Reference< XAccessible >& _rxParent, IAccessibleTableProvider& _rBrowseBox ) const
- {
- return new AccessibleBrowseBoxAccess( _rxParent, _rBrowseBox );
- }
-
- //--------------------------------------------------------------------
- IAccessibleTableControl* AccessibleFactory::createAccessibleTableControl(
- const Reference< XAccessible >& _rxParent, IAccessibleTable& _rTable ) const
- {
- return new AccessibleGridControlAccess( _rxParent, _rTable );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessible > AccessibleFactory::createAccessibleIconChoiceCtrl(
- SvtIconChoiceCtrl& _rIconCtrl, const Reference< XAccessible >& _xParent ) const
- {
- return new AccessibleIconChoiceCtrl( _rIconCtrl, _xParent );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessible > AccessibleFactory::createAccessibleTabBar( TabBar& _rTabBar ) const
- {
- return new AccessibleTabBar( &_rTabBar );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessibleContext > AccessibleFactory::createAccessibleTextWindowContext(
- VCLXWindow* pVclXWindow, TextEngine& rEngine, TextView& rView, bool bCompoundControlChild ) const
- {
- return new Document( pVclXWindow, rEngine, rView, bCompoundControlChild );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessible > AccessibleFactory::createAccessibleTreeListBox(
- SvTreeListBox& _rListBox, const Reference< XAccessible >& _xParent ) const
- {
- return new AccessibleListBox( _rListBox, _xParent );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessible > AccessibleFactory::createAccessibleBrowseBoxHeaderBar(
- const Reference< XAccessible >& rxParent, IAccessibleTableProvider& _rOwningTable,
- AccessibleBrowseBoxObjType _eObjType ) const
- {
- return new AccessibleBrowseBoxHeaderBar( rxParent, _rOwningTable, _eObjType );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessible > AccessibleFactory::createAccessibleBrowseBoxTableCell(
- const Reference< XAccessible >& _rxParent, IAccessibleTableProvider& _rBrowseBox,
- const Reference< XWindow >& _xFocusWindow, sal_Int32 _nRowId, sal_uInt16 _nColId, sal_Int32 _nOffset ) const
- {
- return new AccessibleBrowseBoxTableCell( _rxParent, _rBrowseBox, _xFocusWindow,
- _nRowId, _nColId, _nOffset );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessible > AccessibleFactory::createAccessibleBrowseBoxHeaderCell(
- sal_Int32 _nColumnRowId, const Reference< XAccessible >& rxParent, IAccessibleTableProvider& _rBrowseBox,
- const Reference< XWindow >& _xFocusWindow, AccessibleBrowseBoxObjType _eObjType ) const
- {
- return new AccessibleBrowseBoxHeaderCell( _nColumnRowId, rxParent, _rBrowseBox,
- _xFocusWindow, _eObjType );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessible > AccessibleFactory::createAccessibleCheckBoxCell(
- const Reference< XAccessible >& _rxParent, IAccessibleTableProvider& _rBrowseBox,
- const Reference< XWindow >& _xFocusWindow, sal_Int32 _nRowPos, sal_uInt16 _nColPos,
- const TriState& _eState, sal_Bool _bEnabled, sal_Bool _bIsTriState ) const
- {
- return new AccessibleCheckBoxCell( _rxParent, _rBrowseBox, _xFocusWindow,
- _nRowPos, _nColPos, _eState, _bEnabled, _bIsTriState );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessible > AccessibleFactory::createEditBrowseBoxTableCellAccess(
- const Reference< XAccessible >& _rxParent, const Reference< XAccessible >& _rxControlAccessible,
- const Reference< XWindow >& _rxFocusWindow, IAccessibleTableProvider& _rBrowseBox,
- sal_Int32 _nRowPos, sal_uInt16 _nColPos ) const
- {
- return new EditBrowseBoxTableCellAccess( _rxParent, _rxControlAccessible,
- _rxFocusWindow, _rBrowseBox, _nRowPos, _nColPos );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessibleContext > AccessibleFactory::createAccessibleToolPanelDeck(
- const Reference< XAccessible >& i_rAccessibleParent, ::svt::ToolPanelDeck& i_rPanelDeck )
- {
- return new AccessibleToolPanelDeck( i_rAccessibleParent, i_rPanelDeck );
- }
-
- //--------------------------------------------------------------------
- Reference< XAccessibleContext > AccessibleFactory::createAccessibleToolPanelTabBar(
- const Reference< XAccessible >& i_rAccessibleParent, ::svt::IToolPanelDeck& i_rPanelDeck, ::svt::PanelTabBar& i_rTabBar )
- {
- return new AccessibleToolPanelTabBar( i_rAccessibleParent, i_rPanelDeck, i_rTabBar );
- }
-
-//........................................................................
-} // namespace accessibility
-//........................................................................
-
-//========================================================================
-extern "C" void* SAL_CALL getStandardAccessibleFactory()
-{
- ::toolkit::IAccessibleFactory* pFactory = new ::accessibility::AccessibleFactory;
- pFactory->acquire();
- return pFactory;
-}
-
-extern "C" void* SAL_CALL getSvtAccessibilityComponentFactory()
-{
- ::svt::IAccessibleFactory* pFactory = new ::accessibility::AccessibleFactory;
- pFactory->acquire();
- return pFactory;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/helper/accessiblestrings.src b/accessibility/source/helper/accessiblestrings.src
deleted file mode 100644
index 34f3b381b..000000000
--- a/accessibility/source/helper/accessiblestrings.src
+++ /dev/null
@@ -1,76 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_HELPER_ACCESSIBLESTRINGS_HRC_
-#include <accessibility/helper/accessiblestrings.hrc>
-#endif
-
-
-String RID_STR_ACC_ACTION_CLICK
-{
- Text = "click";
-};
-
-String RID_STR_ACC_ACTION_TOGGLEPOPUP
-{
- Text = "togglePopup";
-};
-
-String RID_STR_ACC_ACTION_SELECT
-{
- Text = "select";
-};
-
-String RID_STR_ACC_ACTION_INCLINE
-{
- Text = "incrementLine";
-};
-
-String RID_STR_ACC_ACTION_DECLINE
-{
- Text = "decrementLine";
-};
-
-String RID_STR_ACC_ACTION_INCBLOCK
-{
- Text = "incrementBlock";
-};
-
-String RID_STR_ACC_ACTION_DECBLOCK
-{
- Text = "decrementBlock";
-};
-
-String RID_STR_ACC_NAME_BROWSEBUTTON
-{
- Text [ en-US ] = "Browse";
-};
-
-String RID_STR_ACC_DESC_PANELDECL_TABBAR
-{
- Text [ en-US ] = "Panel Deck Tab Bar";
-};
diff --git a/accessibility/source/helper/accresmgr.cxx b/accessibility/source/helper/accresmgr.cxx
deleted file mode 100644
index f81231156..000000000
--- a/accessibility/source/helper/accresmgr.cxx
+++ /dev/null
@@ -1,83 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/helper/accresmgr.hxx>
-
-#include <tools/simplerm.hxx>
-#include <vcl/svapp.hxx>
-
-
-// -----------------------------------------------------------------------------
-// TkResMgr
-// -----------------------------------------------------------------------------
-
-SimpleResMgr* TkResMgr::m_pImpl = NULL;
-
-// -----------------------------------------------------------------------------
-
-TkResMgr::EnsureDelete::~EnsureDelete()
-{
- delete TkResMgr::m_pImpl;
-}
-
-// -----------------------------------------------------------------------------
-
-void TkResMgr::ensureImplExists()
-{
- if (m_pImpl)
- return;
-
- ::com::sun::star::lang::Locale aLocale = Application::GetSettings().GetUILocale();
-
- m_pImpl = SimpleResMgr::Create("acc", aLocale );
-
- if (m_pImpl)
- {
- // now that we have a impl class, make sure it's deleted on unloading the library
- static TkResMgr::EnsureDelete s_aDeleteTheImplClass;
- }
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString TkResMgr::loadString( sal_uInt16 nResId )
-{
- ::rtl::OUString sReturn;
-
- ensureImplExists();
- if ( m_pImpl )
- sReturn = m_pImpl->ReadString( nResId );
-
- return sReturn;
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/helper/characterattributeshelper.cxx b/accessibility/source/helper/characterattributeshelper.cxx
deleted file mode 100644
index ec800b73e..000000000
--- a/accessibility/source/helper/characterattributeshelper.cxx
+++ /dev/null
@@ -1,114 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/helper/characterattributeshelper.hxx>
-
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::beans;
-
-
-CharacterAttributesHelper::CharacterAttributesHelper( const Font& rFont, sal_Int32 nBackColor, sal_Int32 nColor )
-{
- m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CharBackColor" )), makeAny( (sal_Int32) nBackColor ) ) );
- m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CharColor" )), makeAny( (sal_Int32) nColor ) ) );
- m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CharFontCharSet" )), makeAny( (sal_Int16) rFont.GetCharSet() ) ) );
- m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CharFontFamily" )), makeAny( (sal_Int16) rFont.GetFamily() ) ) );
- m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CharFontName" )), makeAny( (::rtl::OUString) rFont.GetName() ) ) );
- m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CharFontPitch" )), makeAny( (sal_Int16) rFont.GetPitch() ) ) );
- m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CharFontStyleName" )), makeAny( (::rtl::OUString) rFont.GetStyleName() ) ) );
- m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CharHeight" )), makeAny( (sal_Int16) rFont.GetSize().Height() ) ) );
- m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CharScaleWidth" )), makeAny( (sal_Int16) rFont.GetSize().Width() ) ) );
- m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CharStrikeout" )), makeAny( (sal_Int16) rFont.GetStrikeout() ) ) );
- m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CharUnderline" )), makeAny( (sal_Int16) rFont.GetUnderline() ) ) );
- m_aAttributeMap.insert( AttributeMap::value_type( ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "CharWeight" )), makeAny( (float) rFont.GetWeight() ) ) );
-}
-
-
-CharacterAttributesHelper::~CharacterAttributesHelper()
-{
- m_aAttributeMap.clear();
-}
-
-
-Sequence< PropertyValue > CharacterAttributesHelper::GetCharacterAttributes()
-{
- Sequence< PropertyValue > aValues( m_aAttributeMap.size() );
- PropertyValue* pValues = aValues.getArray();
-
- for ( AttributeMap::iterator aIt = m_aAttributeMap.begin(); aIt != m_aAttributeMap.end(); ++aIt, ++pValues )
- {
- pValues->Name = aIt->first;
- pValues->Handle = (sal_Int32) -1;
- pValues->Value = aIt->second;
- pValues->State = PropertyState_DIRECT_VALUE;
- }
-
- return aValues;
-}
-
-
-Sequence< PropertyValue > CharacterAttributesHelper::GetCharacterAttributes( const Sequence< ::rtl::OUString >& aRequestedAttributes )
-{
- Sequence< PropertyValue > aValues;
- sal_Int32 nLength = aRequestedAttributes.getLength();
-
- if ( nLength != 0 )
- {
- const ::rtl::OUString* pNames = aRequestedAttributes.getConstArray();
- AttributeMap aAttributeMap;
-
- for ( sal_Int32 i = 0; i < nLength; ++i )
- {
- AttributeMap::iterator aFound = m_aAttributeMap.find( pNames[i] );
- if ( aFound != m_aAttributeMap.end() )
- aAttributeMap.insert( *aFound );
- }
-
- aValues.realloc( aAttributeMap.size() );
- PropertyValue* pValues = aValues.getArray();
-
- for ( AttributeMap::iterator aIt = aAttributeMap.begin(); aIt != aAttributeMap.end(); ++aIt, ++pValues )
- {
- pValues->Name = aIt->first;
- pValues->Handle = (sal_Int32) -1;
- pValues->Value = aIt->second;
- pValues->State = PropertyState_DIRECT_VALUE;
- }
- }
- else
- {
- aValues = GetCharacterAttributes();
- }
-
- return aValues;
-}
-
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/helper/makefile.mk b/accessibility/source/helper/makefile.mk
deleted file mode 100644
index 72284e38f..000000000
--- a/accessibility/source/helper/makefile.mk
+++ /dev/null
@@ -1,53 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..$/..
-
-PRJNAME=accessibility
-TARGET=helper
-
-ENABLE_EXCEPTIONS=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Files --------------------------------------------------------
-
-SLOFILES= \
- $(SLO)$/acc_factory.obj \
- $(SLO)$/accresmgr.obj \
- $(SLO)$/characterattributeshelper.obj \
-
-SRS1NAME=$(TARGET)
-SRC1FILES=\
- accessiblestrings.src
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : target.mk
-
diff --git a/accessibility/source/inc/floatingwindowaccessible.hxx b/accessibility/source/inc/floatingwindowaccessible.hxx
deleted file mode 100644
index d967238fb..000000000
--- a/accessibility/source/inc/floatingwindowaccessible.hxx
+++ /dev/null
@@ -1,45 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-#ifndef ACCESSIBILITY_FLOATINGWINDOWACCESSIBLE_HXX
-#define ACCESSIBILITY_FLOATINGWINDOWACCESSIBLE_HXX
-
-#include <toolkit/awt/vclxaccessiblecomponent.hxx>
-
-class FloatingWindowAccessible : public VCLXAccessibleComponent
-{
-public:
- FloatingWindowAccessible( VCLXWindow* pWindow );
- virtual ~FloatingWindowAccessible();
-
- virtual void FillAccessibleRelationSet( utl::AccessibleRelationSetHelper& rRelationSet );
-};
-
-#endif // ACCESSIBILITY_FLOATINGWINDOWACCESSIBLE_HXX
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/accessiblemenubasecomponent.cxx b/accessibility/source/standard/accessiblemenubasecomponent.cxx
deleted file mode 100644
index 6688215e3..000000000
--- a/accessibility/source/standard/accessiblemenubasecomponent.cxx
+++ /dev/null
@@ -1,786 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-// includes --------------------------------------------------------------
-#include <accessibility/standard/accessiblemenubasecomponent.hxx>
-#include <accessibility/standard/vclxaccessiblemenu.hxx>
-#include <accessibility/standard/vclxaccessiblemenuitem.hxx>
-#include <accessibility/standard/vclxaccessiblemenuseparator.hxx>
-#include <toolkit/helper/externallock.hxx>
-#include <toolkit/helper/convert.hxx>
-
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-
-#include <unotools/accessiblestatesethelper.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/window.hxx>
-#include <vcl/menu.hxx>
-#include <tools/debug.hxx>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::accessibility;
-using namespace ::comphelper;
-
-
-// -----------------------------------------------------------------------------
-// OAccessibleMenuBaseComponent
-// -----------------------------------------------------------------------------
-
-OAccessibleMenuBaseComponent::OAccessibleMenuBaseComponent( Menu* pMenu )
- :AccessibleExtendedComponentHelper_BASE( new VCLExternalSolarLock() )
- ,m_pMenu( pMenu )
- ,m_bEnabled( sal_False )
- ,m_bFocused( sal_False )
- ,m_bVisible( sal_False )
- ,m_bSelected( sal_False )
- ,m_bChecked( sal_False )
-{
- m_pExternalLock = static_cast< VCLExternalSolarLock* >( getExternalLock() );
-
- if ( m_pMenu )
- {
- m_aAccessibleChildren.assign( m_pMenu->GetItemCount(), Reference< XAccessible >() );
- m_pMenu->AddEventListener( LINK( this, OAccessibleMenuBaseComponent, MenuEventListener ) );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-OAccessibleMenuBaseComponent::~OAccessibleMenuBaseComponent()
-{
- if ( m_pMenu )
- m_pMenu->RemoveEventListener( LINK( this, OAccessibleMenuBaseComponent, MenuEventListener ) );
-
- delete m_pExternalLock;
- m_pExternalLock = NULL;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool OAccessibleMenuBaseComponent::IsEnabled()
-{
- return sal_False;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool OAccessibleMenuBaseComponent::IsFocused()
-{
- return sal_False;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool OAccessibleMenuBaseComponent::IsVisible()
-{
- return sal_False;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool OAccessibleMenuBaseComponent::IsSelected()
-{
- return sal_False;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool OAccessibleMenuBaseComponent::IsChecked()
-{
- return sal_False;
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::SetStates()
-{
- m_bEnabled = IsEnabled();
- m_bFocused = IsFocused();
- m_bVisible = IsVisible();
- m_bSelected = IsSelected();
- m_bChecked = IsChecked();
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::SetEnabled( sal_Bool bEnabled )
-{
- if ( m_bEnabled != bEnabled )
- {
- Any aOldValue[2], aNewValue[2];
- if ( m_bEnabled )
- {
- aOldValue[0] <<= AccessibleStateType::SENSITIVE;
- aOldValue[1] <<= AccessibleStateType::ENABLED;
- }
- else
- {
- aNewValue[0] <<= AccessibleStateType::ENABLED;
- aNewValue[1] <<= AccessibleStateType::SENSITIVE;
- }
- m_bEnabled = bEnabled;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue[0], aNewValue[0] );
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue[1], aNewValue[1] );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::SetFocused( sal_Bool bFocused )
-{
- if ( m_bFocused != bFocused )
- {
- Any aOldValue, aNewValue;
- if ( m_bFocused )
- aOldValue <<= AccessibleStateType::FOCUSED;
- else
- aNewValue <<= AccessibleStateType::FOCUSED;
- m_bFocused = bFocused;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::SetVisible( sal_Bool bVisible )
-{
- if ( m_bVisible != bVisible )
- {
- Any aOldValue, aNewValue;
- if ( m_bVisible )
- aOldValue <<= AccessibleStateType::VISIBLE;
- else
- aNewValue <<= AccessibleStateType::VISIBLE;
- m_bVisible = bVisible;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::SetSelected( sal_Bool bSelected )
-{
- if ( m_bSelected != bSelected )
- {
- Any aOldValue, aNewValue;
- if ( m_bSelected )
- aOldValue <<= AccessibleStateType::SELECTED;
- else
- aNewValue <<= AccessibleStateType::SELECTED;
- m_bSelected = bSelected;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::SetChecked( sal_Bool bChecked )
-{
- if ( m_bChecked != bChecked )
- {
- Any aOldValue, aNewValue;
- if ( m_bChecked )
- aOldValue <<= AccessibleStateType::CHECKED;
- else
- aNewValue <<= AccessibleStateType::CHECKED;
- m_bChecked = bChecked;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::UpdateEnabled( sal_Int32 i, sal_Bool bEnabled )
-{
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- OAccessibleMenuBaseComponent* pComp = static_cast< OAccessibleMenuBaseComponent* >( xChild.get() );
- if ( pComp )
- pComp->SetEnabled( bEnabled );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::UpdateFocused( sal_Int32 i, sal_Bool bFocused )
-{
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- OAccessibleMenuBaseComponent* pComp = static_cast< OAccessibleMenuBaseComponent* >( xChild.get() );
- if ( pComp )
- pComp->SetFocused( bFocused );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::UpdateVisible()
-{
- SetVisible( IsVisible() );
- for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- OAccessibleMenuBaseComponent* pComp = static_cast< OAccessibleMenuBaseComponent* >( xChild.get() );
- if ( pComp )
- pComp->SetVisible( pComp->IsVisible() );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::UpdateSelected( sal_Int32 i, sal_Bool bSelected )
-{
- NotifyAccessibleEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
-
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- OAccessibleMenuBaseComponent* pComp = static_cast< OAccessibleMenuBaseComponent* >( xChild.get() );
- if ( pComp )
- pComp->SetSelected( bSelected );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::UpdateChecked( sal_Int32 i, sal_Bool bChecked )
-{
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- OAccessibleMenuBaseComponent* pComp = static_cast< OAccessibleMenuBaseComponent* >( xChild.get() );
- if ( pComp )
- pComp->SetChecked( bChecked );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::UpdateAccessibleName( sal_Int32 i )
-{
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- OAccessibleMenuItemComponent* pComp = static_cast< OAccessibleMenuItemComponent* >( xChild.get() );
- if ( pComp )
- pComp->SetAccessibleName( pComp->GetAccessibleName() );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::UpdateItemText( sal_Int32 i )
-{
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- OAccessibleMenuItemComponent* pComp = static_cast< OAccessibleMenuItemComponent* >( xChild.get() );
- if ( pComp )
- pComp->SetItemText( pComp->GetItemText() );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 OAccessibleMenuBaseComponent::GetChildCount()
-{
- return m_aAccessibleChildren.size();
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > OAccessibleMenuBaseComponent::GetChild( sal_Int32 i )
-{
- Reference< XAccessible > xChild = m_aAccessibleChildren[i];
- if ( !xChild.is() )
- {
- if ( m_pMenu )
- {
- // create a new child
- OAccessibleMenuBaseComponent* pChild;
-
- if ( m_pMenu->GetItemType( (sal_uInt16)i ) == MENUITEM_SEPARATOR )
- {
- pChild = new VCLXAccessibleMenuSeparator( m_pMenu, (sal_uInt16)i );
- }
- else
- {
- PopupMenu* pPopupMenu = m_pMenu->GetPopupMenu( m_pMenu->GetItemId( (sal_uInt16)i ) );
- if ( pPopupMenu )
- {
- pChild = new VCLXAccessibleMenu( m_pMenu, (sal_uInt16)i, pPopupMenu );
- pPopupMenu->SetAccessible( pChild );
- }
- else
- {
- pChild = new VCLXAccessibleMenuItem( m_pMenu, (sal_uInt16)i );
- }
- }
-
- // set states
- pChild->SetStates();
-
- xChild = pChild;
-
- // insert into menu item list
- m_aAccessibleChildren[i] = xChild;
- }
- }
-
- return xChild;
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > OAccessibleMenuBaseComponent::GetChildAt( const awt::Point& rPoint )
-{
- Reference< XAccessible > xChild;
- for ( sal_uInt32 i = 0, nCount = getAccessibleChildCount(); i < nCount; ++i )
- {
- Reference< XAccessible > xAcc = getAccessibleChild( i );
- if ( xAcc.is() )
- {
- Reference< XAccessibleComponent > xComp( xAcc->getAccessibleContext(), UNO_QUERY );
- if ( xComp.is() )
- {
- Rectangle aRect = VCLRectangle( xComp->getBounds() );
- Point aPos = VCLPoint( rPoint );
- if ( aRect.IsInside( aPos ) )
- {
- xChild = xAcc;
- break;
- }
- }
- }
- }
-
- return xChild;
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::InsertChild( sal_Int32 i )
-{
- if ( i > (sal_Int32)m_aAccessibleChildren.size() )
- i = m_aAccessibleChildren.size();
-
- if ( i >= 0 )
- {
- // insert entry in child list
- m_aAccessibleChildren.insert( m_aAccessibleChildren.begin() + i, Reference< XAccessible >() );
-
- // update item position of accessible children
- for ( sal_uInt32 j = i, nCount = m_aAccessibleChildren.size(); j < nCount; ++j )
- {
- Reference< XAccessible > xAcc( m_aAccessibleChildren[j] );
- if ( xAcc.is() )
- {
- OAccessibleMenuItemComponent* pComp = static_cast< OAccessibleMenuItemComponent* >( xAcc.get() );
- if ( pComp )
- pComp->SetItemPos( (sal_uInt16)j );
- }
- }
-
- // send accessible child event
- Reference< XAccessible > xChild( GetChild( i ) );
- if ( xChild.is() )
- {
- Any aOldValue, aNewValue;
- aNewValue <<= xChild;
- NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::RemoveChild( sal_Int32 i )
-{
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- // keep the accessible of the removed item
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
-
- // remove entry in child list
- m_aAccessibleChildren.erase( m_aAccessibleChildren.begin() + i );
-
- // update item position of accessible children
- for ( sal_uInt32 j = i, nCount = m_aAccessibleChildren.size(); j < nCount; ++j )
- {
- Reference< XAccessible > xAcc( m_aAccessibleChildren[j] );
- if ( xAcc.is() )
- {
- OAccessibleMenuItemComponent* pComp = static_cast< OAccessibleMenuItemComponent* >( xAcc.get() );
- if ( pComp )
- pComp->SetItemPos( (sal_uInt16)j );
- }
- }
-
- // send accessible child event
- if ( xChild.is() )
- {
- Any aOldValue, aNewValue;
- aOldValue <<= xChild;
- NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
-
- Reference< XComponent > xComponent( xChild, UNO_QUERY );
- if ( xComponent.is() )
- xComponent->dispose();
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool OAccessibleMenuBaseComponent::IsHighlighted()
-{
- return sal_False;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool OAccessibleMenuBaseComponent::IsChildHighlighted()
-{
- sal_Bool bChildHighlighted = sal_False;
-
- for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- OAccessibleMenuBaseComponent* pComp = static_cast< OAccessibleMenuBaseComponent* >( xChild.get() );
- if ( pComp && pComp->IsHighlighted() )
- {
- bChildHighlighted = sal_True;
- break;
- }
- }
- }
-
- return bChildHighlighted;
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::SelectChild( sal_Int32 i )
-{
- // open the menu
- if ( getAccessibleRole() == AccessibleRole::MENU && !IsPopupMenuOpen() )
- Click();
-
- // highlight the child
- if ( m_pMenu )
- m_pMenu->HighlightItem( (sal_uInt16)i );
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::DeSelectAll()
-{
- if ( m_pMenu )
- m_pMenu->DeHighlight();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool OAccessibleMenuBaseComponent::IsChildSelected( sal_Int32 i )
-{
- sal_Bool bSelected = sal_False;
-
- if ( m_pMenu && m_pMenu->IsHighlighted( (sal_uInt16)i ) )
- bSelected = sal_True;
-
- return bSelected;
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::Select()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::DeSelect()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::Click()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool OAccessibleMenuBaseComponent::IsPopupMenuOpen()
-{
- return sal_False;
-}
-
-// -----------------------------------------------------------------------------
-
-IMPL_LINK( OAccessibleMenuBaseComponent, MenuEventListener, VclSimpleEvent*, pEvent )
-{
- DBG_ASSERT( pEvent && pEvent->ISA( VclMenuEvent ), "OAccessibleMenuBaseComponent - Unknown MenuEvent!" );
- if ( pEvent && pEvent->ISA( VclMenuEvent ) )
- {
- DBG_ASSERT( ((VclMenuEvent*)pEvent)->GetMenu(), "OAccessibleMenuBaseComponent - Menu?" );
- ProcessMenuEvent( *(VclMenuEvent*)pEvent );
- }
- return 0;
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::ProcessMenuEvent( const VclMenuEvent& rVclMenuEvent )
-{
- sal_uInt16 nItemPos = rVclMenuEvent.GetItemPos();
-
- switch ( rVclMenuEvent.GetId() )
- {
- case VCLEVENT_MENU_SHOW:
- case VCLEVENT_MENU_HIDE:
- {
- UpdateVisible();
- }
- break;
- case VCLEVENT_MENU_HIGHLIGHT:
- {
- SetFocused( sal_False );
- UpdateFocused( nItemPos, sal_True );
- UpdateSelected( nItemPos, sal_True );
- }
- break;
- case VCLEVENT_MENU_DEHIGHLIGHT:
- {
- UpdateFocused( nItemPos, sal_False );
- UpdateSelected( nItemPos, sal_False );
- }
- break;
- case VCLEVENT_MENU_SUBMENUACTIVATE:
- {
- }
- break;
- case VCLEVENT_MENU_SUBMENUDEACTIVATE:
- {
- UpdateFocused( nItemPos, sal_True );
- }
- break;
- case VCLEVENT_MENU_ENABLE:
- {
- UpdateEnabled( nItemPos, sal_True );
- }
- break;
- case VCLEVENT_MENU_DISABLE:
- {
- UpdateEnabled( nItemPos, sal_False );
- }
- break;
- case VCLEVENT_MENU_SUBMENUCHANGED:
- {
- RemoveChild( nItemPos );
- InsertChild( nItemPos );
- }
- break;
- case VCLEVENT_MENU_INSERTITEM:
- {
- InsertChild( nItemPos );
- }
- break;
- case VCLEVENT_MENU_REMOVEITEM:
- {
- RemoveChild( nItemPos );
- }
- break;
- case VCLEVENT_MENU_ACCESSIBLENAMECHANGED:
- {
- UpdateAccessibleName( nItemPos );
- }
- break;
- case VCLEVENT_MENU_ITEMTEXTCHANGED:
- {
- UpdateAccessibleName( nItemPos );
- UpdateItemText( nItemPos );
- }
- break;
- case VCLEVENT_MENU_ITEMCHECKED:
- {
- UpdateChecked( nItemPos, sal_True );
- }
- break;
- case VCLEVENT_MENU_ITEMUNCHECKED:
- {
- UpdateChecked( nItemPos, sal_False );
- }
- break;
- case VCLEVENT_OBJECT_DYING:
- {
- if ( m_pMenu )
- {
- m_pMenu->RemoveEventListener( LINK( this, OAccessibleMenuBaseComponent, MenuEventListener ) );
-
- m_pMenu = NULL;
-
- // dispose all menu items
- for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
- {
- Reference< XComponent > xComponent( m_aAccessibleChildren[i], UNO_QUERY );
- if ( xComponent.is() )
- xComponent->dispose();
- }
- m_aAccessibleChildren.clear();
- }
- }
- break;
- default:
- {
- }
- break;
- }
-}
-
-// -----------------------------------------------------------------------------
-// XInterface
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XINTERFACE2( OAccessibleMenuBaseComponent, AccessibleExtendedComponentHelper_BASE, OAccessibleMenuBaseComponent_BASE )
-
-// -----------------------------------------------------------------------------
-// XTypeProvider
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( OAccessibleMenuBaseComponent, AccessibleExtendedComponentHelper_BASE, OAccessibleMenuBaseComponent_BASE )
-
-// -----------------------------------------------------------------------------
-// XComponent
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuBaseComponent::disposing()
-{
- AccessibleExtendedComponentHelper_BASE::disposing();
-
- if ( m_pMenu )
- {
- m_pMenu->RemoveEventListener( LINK( this, OAccessibleMenuBaseComponent, MenuEventListener ) );
-
- m_pMenu = NULL;
-
- // dispose all menu items
- for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
- {
- Reference< XComponent > xComponent( m_aAccessibleChildren[i], UNO_QUERY );
- if ( xComponent.is() )
- xComponent->dispose();
- }
- m_aAccessibleChildren.clear();
- }
-}
-
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-
-sal_Bool OAccessibleMenuBaseComponent::supportsService( const ::rtl::OUString& rServiceName ) throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames( getSupportedServiceNames() );
- const ::rtl::OUString* pNames = aNames.getConstArray();
- const ::rtl::OUString* pEnd = pNames + aNames.getLength();
- for ( ; pNames != pEnd && !pNames->equals( rServiceName ); ++pNames )
- ;
-
- return pNames != pEnd;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessible
-// -----------------------------------------------------------------------------
-
-Reference< XAccessibleContext > OAccessibleMenuBaseComponent::getAccessibleContext( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return this;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-
-Reference< XAccessibleStateSet > OAccessibleMenuBaseComponent::getAccessibleStateSet( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
- Reference< XAccessibleStateSet > xSet = pStateSetHelper;
-
- if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
- {
- FillAccessibleStateSet( *pStateSetHelper );
- }
- else
- {
- pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
- }
-
- return xSet;
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/accessiblemenucomponent.cxx b/accessibility/source/standard/accessiblemenucomponent.cxx
deleted file mode 100644
index 1773779b3..000000000
--- a/accessibility/source/standard/accessiblemenucomponent.cxx
+++ /dev/null
@@ -1,474 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/accessiblemenucomponent.hxx>
-
-#include <toolkit/awt/vclxfont.hxx>
-#include <toolkit/helper/convert.hxx>
-
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-
-#include <unotools/accessiblestatesethelper.hxx>
-#include <unotools/accessiblerelationsethelper.hxx>
-#include <cppuhelper/typeprovider.hxx>
-#include <comphelper/sequence.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/window.hxx>
-#include <vcl/menu.hxx>
-#include <vcl/unohelp2.hxx>
-
-
-using namespace ::com::sun::star::accessibility;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star;
-using namespace ::comphelper;
-
-
-// -----------------------------------------------------------------------------
-// class OAccessibleMenuComponent
-// -----------------------------------------------------------------------------
-
-OAccessibleMenuComponent::OAccessibleMenuComponent( Menu* pMenu )
- :OAccessibleMenuBaseComponent( pMenu )
-{
-}
-
-// -----------------------------------------------------------------------------
-
-OAccessibleMenuComponent::~OAccessibleMenuComponent()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool OAccessibleMenuComponent::IsEnabled()
-{
- return sal_True;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool OAccessibleMenuComponent::IsVisible()
-{
- sal_Bool bVisible = sal_False;
-
- if ( m_pMenu )
- bVisible = m_pMenu->IsMenuVisible();
-
- return bVisible;
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuComponent::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
-{
- if ( IsEnabled() )
- {
- rStateSet.AddState( AccessibleStateType::ENABLED );
- rStateSet.AddState( AccessibleStateType::SENSITIVE );
- }
-
- rStateSet.AddState( AccessibleStateType::FOCUSABLE );
-
- if ( IsFocused() )
- rStateSet.AddState( AccessibleStateType::FOCUSED );
-
- if ( IsVisible() )
- {
- rStateSet.AddState( AccessibleStateType::VISIBLE );
- rStateSet.AddState( AccessibleStateType::SHOWING );
- }
-
- rStateSet.AddState( AccessibleStateType::OPAQUE );
-}
-
-// -----------------------------------------------------------------------------
-// OCommonAccessibleComponent
-// -----------------------------------------------------------------------------
-
-awt::Rectangle OAccessibleMenuComponent::implGetBounds() throw (RuntimeException)
-{
- awt::Rectangle aBounds( 0, 0, 0, 0 );
-
- if ( m_pMenu )
- {
- Window* pWindow = m_pMenu->GetWindow();
- if ( pWindow )
- {
- // get bounding rectangle of the window in screen coordinates
- Rectangle aRect = pWindow->GetWindowExtentsRelative( NULL );
- aBounds = AWTRectangle( aRect );
-
- // get position of the accessible parent in screen coordinates
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleComponent > xParentComponent( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComponent.is() )
- {
- awt::Point aParentScreenLoc = xParentComponent->getLocationOnScreen();
-
- // calculate position of the window relative to the accessible parent
- aBounds.X -= aParentScreenLoc.X;
- aBounds.Y -= aParentScreenLoc.Y;
- }
- }
- }
- }
-
- return aBounds;
-}
-
-// -----------------------------------------------------------------------------
-// XInterface
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XINTERFACE2( OAccessibleMenuComponent, OAccessibleMenuBaseComponent, OAccessibleMenuComponent_BASE )
-
-// -----------------------------------------------------------------------------
-// XTypeProvider
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( OAccessibleMenuComponent, OAccessibleMenuBaseComponent, OAccessibleMenuComponent_BASE )
-
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-
-sal_Int32 OAccessibleMenuComponent::getAccessibleChildCount() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return GetChildCount();
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > OAccessibleMenuComponent::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( i < 0 || i >= GetChildCount() )
- throw IndexOutOfBoundsException();
-
- return GetChild( i );
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > OAccessibleMenuComponent::getAccessibleParent( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Reference< XAccessible > xParent;
-
- if ( m_pMenu )
- {
- Window* pWindow = m_pMenu->GetWindow();
- if ( pWindow )
- {
- Window* pParent = pWindow->GetAccessibleParentWindow();
- if ( pParent )
- xParent = pParent->GetAccessible();
- }
- }
-
- return xParent;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int16 OAccessibleMenuComponent::getAccessibleRole( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return AccessibleRole::UNKNOWN;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString OAccessibleMenuComponent::getAccessibleDescription( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- ::rtl::OUString sDescription;
- if ( m_pMenu )
- {
- Window* pWindow = m_pMenu->GetWindow();
- if ( pWindow )
- sDescription = pWindow->GetAccessibleDescription();
- }
-
- return sDescription;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString OAccessibleMenuComponent::getAccessibleName( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return ::rtl::OUString();
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessibleRelationSet > OAccessibleMenuComponent::getAccessibleRelationSet( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
- Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
- return xSet;
-}
-
-// -----------------------------------------------------------------------------
-
-Locale OAccessibleMenuComponent::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return Application::GetSettings().GetLocale();
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleComponent
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > OAccessibleMenuComponent::getAccessibleAtPoint( const awt::Point& rPoint ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return GetChildAt( rPoint );
-}
-
-// -----------------------------------------------------------------------------
-
-awt::Point OAccessibleMenuComponent::getLocationOnScreen( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- awt::Point aPos;
-
- if ( m_pMenu )
- {
- Window* pWindow = m_pMenu->GetWindow();
- if ( pWindow )
- {
- Rectangle aRect = pWindow->GetWindowExtentsRelative( NULL );
- aPos = AWTPoint( aRect.TopLeft() );
- }
- }
-
- return aPos;
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuComponent::grabFocus( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( m_pMenu )
- {
- Window* pWindow = m_pMenu->GetWindow();
- if ( pWindow )
- pWindow->GrabFocus();
- }
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 OAccessibleMenuComponent::getForeground( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- const StyleSettings& rStyleSettings = Application::GetSettings().GetStyleSettings();
- sal_Int32 nColor = rStyleSettings.GetMenuTextColor().GetColor();
-
- return nColor;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 OAccessibleMenuComponent::getBackground( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return 0;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleExtendedComponent
-// -----------------------------------------------------------------------------
-
-Reference< awt::XFont > OAccessibleMenuComponent::getFont( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Reference< awt::XFont > xFont;
-
- if ( m_pMenu )
- {
- Window* pWindow = m_pMenu->GetWindow();
- if ( pWindow )
- {
- Reference< awt::XDevice > xDev( pWindow->GetComponentInterface(), UNO_QUERY );
- if ( xDev.is() )
- {
- const StyleSettings& rStyleSettings = Application::GetSettings().GetStyleSettings();
- VCLXFont* pVCLXFont = new VCLXFont;
- pVCLXFont->Init( *xDev.get(), rStyleSettings.GetMenuFont() );
- xFont = pVCLXFont;
- }
- }
- }
-
- return xFont;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString OAccessibleMenuComponent::getTitledBorderText( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return ::rtl::OUString();
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString OAccessibleMenuComponent::getToolTipText( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return ::rtl::OUString();
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleSelection
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuComponent::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nChildIndex < 0 || nChildIndex >= GetChildCount() )
- throw IndexOutOfBoundsException();
-
- SelectChild( nChildIndex );
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool OAccessibleMenuComponent::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nChildIndex < 0 || nChildIndex >= GetChildCount() )
- throw IndexOutOfBoundsException();
-
- return IsChildSelected( nChildIndex );
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuComponent::clearAccessibleSelection( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- DeSelectAll();
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuComponent::selectAllAccessibleChildren( ) throw (RuntimeException)
-{
- // This method makes no sense in a menu, and so does nothing.
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 OAccessibleMenuComponent::getSelectedAccessibleChildCount( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nRet = 0;
-
- for ( sal_Int32 i = 0, nCount = GetChildCount(); i < nCount; i++ )
- {
- if ( IsChildSelected( i ) )
- ++nRet;
- }
-
- return nRet;
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > OAccessibleMenuComponent::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getSelectedAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- Reference< XAccessible > xChild;
-
- for ( sal_Int32 i = 0, j = 0, nCount = GetChildCount(); i < nCount; i++ )
- {
- if ( IsChildSelected( i ) && ( j++ == nSelectedChildIndex ) )
- {
- xChild = GetChild( i );
- break;
- }
- }
-
- return xChild;
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuComponent::deselectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nChildIndex < 0 || nChildIndex >= GetChildCount() )
- throw IndexOutOfBoundsException();
-
- DeSelectAll();
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/accessiblemenuitemcomponent.cxx b/accessibility/source/standard/accessiblemenuitemcomponent.cxx
deleted file mode 100644
index 103c236e8..000000000
--- a/accessibility/source/standard/accessiblemenuitemcomponent.cxx
+++ /dev/null
@@ -1,506 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/accessiblemenuitemcomponent.hxx>
-
-
-#include <accessibility/helper/accresmgr.hxx>
-#include <accessibility/helper/accessiblestrings.hrc>
-#include <toolkit/awt/vclxwindows.hxx>
-#include <toolkit/helper/externallock.hxx>
-#include <toolkit/helper/convert.hxx>
-
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
-#include <com/sun/star/datatransfer/clipboard/XFlushableClipboard.hpp>
-
-#include <unotools/accessiblestatesethelper.hxx>
-#include <unotools/accessiblerelationsethelper.hxx>
-#include <cppuhelper/typeprovider.hxx>
-#include <comphelper/sequence.hxx>
-#include <comphelper/accessibletexthelper.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/window.hxx>
-#include <vcl/menu.hxx>
-#include <vcl/unohelp2.hxx>
-
-
-using namespace ::com::sun::star::accessibility;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star;
-using namespace ::comphelper;
-
-
-// -----------------------------------------------------------------------------
-// class OAccessibleMenuItemComponent
-// -----------------------------------------------------------------------------
-
-OAccessibleMenuItemComponent::OAccessibleMenuItemComponent( Menu* pParent, sal_uInt16 nItemPos, Menu* pMenu )
- :OAccessibleMenuBaseComponent( pMenu )
- ,m_pParent( pParent )
- ,m_nItemPos( nItemPos )
-{
- m_sAccessibleName = GetAccessibleName();
- m_sItemText = GetItemText();
-}
-
-// -----------------------------------------------------------------------------
-
-OAccessibleMenuItemComponent::~OAccessibleMenuItemComponent()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool OAccessibleMenuItemComponent::IsEnabled()
-{
- OExternalLockGuard aGuard( this );
-
- sal_Bool bEnabled = sal_False;
- if ( m_pParent )
- bEnabled = m_pParent->IsItemEnabled( m_pParent->GetItemId( m_nItemPos ) );
-
- return bEnabled;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool OAccessibleMenuItemComponent::IsVisible()
-{
- sal_Bool bVisible = sal_False;
-
- if ( m_pParent )
- bVisible = m_pParent->IsItemPosVisible( m_nItemPos );
-
- return bVisible;
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuItemComponent::Select()
-{
- // open the parent menu
- Reference< XAccessible > xParent( getAccessibleParent() );
- if ( xParent.is() )
- {
- OAccessibleMenuBaseComponent* pComp = static_cast< OAccessibleMenuBaseComponent* >( xParent.get() );
- if ( pComp && pComp->getAccessibleRole() == AccessibleRole::MENU && !pComp->IsPopupMenuOpen() )
- pComp->Click();
- }
-
- // highlight the menu item
- if ( m_pParent )
- m_pParent->HighlightItem( m_nItemPos );
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuItemComponent::DeSelect()
-{
- if ( m_pParent && IsSelected() )
- m_pParent->DeHighlight();
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuItemComponent::Click()
-{
- // open the parent menu
- Reference< XAccessible > xParent( getAccessibleParent() );
- if ( xParent.is() )
- {
- OAccessibleMenuBaseComponent* pComp = static_cast< OAccessibleMenuBaseComponent* >( xParent.get() );
- if ( pComp && pComp->getAccessibleRole() == AccessibleRole::MENU && !pComp->IsPopupMenuOpen() )
- pComp->Click();
- }
-
- // click the menu item
- if ( m_pParent )
- {
- Window* pWindow = m_pParent->GetWindow();
- if ( pWindow )
- {
- // #102438# Menu items are not selectable
- // Popup menus are executed asynchronously, triggered by a timer.
- // As Menu::SelectItem only works, if the corresponding menu window is
- // already created, we have to set the menu delay to 0, so
- // that the popup menus are executed synchronously.
- AllSettings aSettings = pWindow->GetSettings();
- MouseSettings aMouseSettings = aSettings.GetMouseSettings();
- sal_uLong nDelay = aMouseSettings.GetMenuDelay();
- aMouseSettings.SetMenuDelay( 0 );
- aSettings.SetMouseSettings( aMouseSettings );
- pWindow->SetSettings( aSettings );
-
- m_pParent->SelectItem( m_pParent->GetItemId( m_nItemPos ) );
-
- // meanwhile the window pointer may be invalid
- pWindow = m_pParent->GetWindow();
- if ( pWindow )
- {
- // set the menu delay back to the old value
- aSettings = pWindow->GetSettings();
- aMouseSettings = aSettings.GetMouseSettings();
- aMouseSettings.SetMenuDelay( nDelay );
- aSettings.SetMouseSettings( aMouseSettings );
- pWindow->SetSettings( aSettings );
- }
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuItemComponent::SetItemPos( sal_uInt16 nItemPos )
-{
- m_nItemPos = nItemPos;
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuItemComponent::SetAccessibleName( const ::rtl::OUString& sAccessibleName )
-{
- if ( !m_sAccessibleName.equals( sAccessibleName ) )
- {
- Any aOldValue, aNewValue;
- aOldValue <<= m_sAccessibleName;
- aNewValue <<= sAccessibleName;
- m_sAccessibleName = sAccessibleName;
- NotifyAccessibleEvent( AccessibleEventId::NAME_CHANGED, aOldValue, aNewValue );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString OAccessibleMenuItemComponent::GetAccessibleName()
-{
- ::rtl::OUString sName;
- if ( m_pParent )
- {
- sal_uInt16 nItemId = m_pParent->GetItemId( m_nItemPos );
- sName = m_pParent->GetAccessibleName( nItemId );
- if ( sName.getLength() == 0 )
- sName = m_pParent->GetItemText( nItemId );
- sName = OutputDevice::GetNonMnemonicString( sName );
- }
-
- return sName;
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuItemComponent::SetItemText( const ::rtl::OUString& sItemText )
-{
- Any aOldValue, aNewValue;
- if ( OCommonAccessibleText::implInitTextChangedEvent( m_sItemText, sItemText, aOldValue, aNewValue ) )
- {
- m_sItemText = sItemText;
- NotifyAccessibleEvent( AccessibleEventId::TEXT_CHANGED, aOldValue, aNewValue );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString OAccessibleMenuItemComponent::GetItemText()
-{
- ::rtl::OUString sText;
- if ( m_pParent )
- sText = OutputDevice::GetNonMnemonicString( m_pParent->GetItemText( m_pParent->GetItemId( m_nItemPos ) ) );
-
- return sText;
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuItemComponent::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
-{
- if ( IsEnabled() )
- {
- rStateSet.AddState( AccessibleStateType::ENABLED );
- rStateSet.AddState( AccessibleStateType::SENSITIVE );
- }
-
- if ( IsVisible() )
- {
- rStateSet.AddState( AccessibleStateType::VISIBLE );
- rStateSet.AddState( AccessibleStateType::SHOWING );
- }
-
- rStateSet.AddState( AccessibleStateType::OPAQUE );
-}
-
-// -----------------------------------------------------------------------------
-// OCommonAccessibleComponent
-// -----------------------------------------------------------------------------
-
-awt::Rectangle OAccessibleMenuItemComponent::implGetBounds() throw (RuntimeException)
-{
- awt::Rectangle aBounds( 0, 0, 0, 0 );
-
- if ( m_pParent )
- {
- // get bounding rectangle of the item relative to the containing window
- aBounds = AWTRectangle( m_pParent->GetBoundingRectangle( m_nItemPos ) );
-
- // get position of containing window in screen coordinates
- Window* pWindow = m_pParent->GetWindow();
- if ( pWindow )
- {
- Rectangle aRect = pWindow->GetWindowExtentsRelative( NULL );
- awt::Point aWindowScreenLoc = AWTPoint( aRect.TopLeft() );
-
- // get position of accessible parent in screen coordinates
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleComponent > xParentComponent( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComponent.is() )
- {
- awt::Point aParentScreenLoc = xParentComponent->getLocationOnScreen();
-
- // calculate bounding rectangle of the item relative to the accessible parent
- aBounds.X += aWindowScreenLoc.X - aParentScreenLoc.X;
- aBounds.Y += aWindowScreenLoc.Y - aParentScreenLoc.Y;
- }
- }
- }
- }
-
- return aBounds;
-}
-
-// -----------------------------------------------------------------------------
-// XComponent
-// -----------------------------------------------------------------------------
-
-void SAL_CALL OAccessibleMenuItemComponent::disposing()
-{
- OAccessibleMenuBaseComponent::disposing();
-
- m_pParent = NULL;
- m_sAccessibleName = ::rtl::OUString();
- m_sItemText = ::rtl::OUString();
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-
-sal_Int32 OAccessibleMenuItemComponent::getAccessibleChildCount() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return 0;
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > OAccessibleMenuItemComponent::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( i < 0 || i >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- return Reference< XAccessible >();
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > OAccessibleMenuItemComponent::getAccessibleParent( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return m_pParent->GetAccessible();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 OAccessibleMenuItemComponent::getAccessibleIndexInParent( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return m_nItemPos;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int16 OAccessibleMenuItemComponent::getAccessibleRole( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return AccessibleRole::UNKNOWN;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString OAccessibleMenuItemComponent::getAccessibleDescription( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- ::rtl::OUString sDescription;
- if ( m_pParent )
- sDescription = m_pParent->GetHelpText( m_pParent->GetItemId( m_nItemPos ) );
-
- return sDescription;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString OAccessibleMenuItemComponent::getAccessibleName( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return m_sAccessibleName;
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessibleRelationSet > OAccessibleMenuItemComponent::getAccessibleRelationSet( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
- Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
- return xSet;
-}
-
-// -----------------------------------------------------------------------------
-
-Locale OAccessibleMenuItemComponent::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return Application::GetSettings().GetLocale();
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleComponent
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > OAccessibleMenuItemComponent::getAccessibleAtPoint( const awt::Point& ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return Reference< XAccessible >();
-}
-
-// -----------------------------------------------------------------------------
-
-void OAccessibleMenuItemComponent::grabFocus( ) throw (RuntimeException)
-{
- // no focus for items
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 OAccessibleMenuItemComponent::getForeground( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nColor = 0;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- nColor = xParentComp->getForeground();
- }
-
- return nColor;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 OAccessibleMenuItemComponent::getBackground( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nColor = 0;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- nColor = xParentComp->getBackground();
- }
-
- return nColor;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleExtendedComponent
-// -----------------------------------------------------------------------------
-
-Reference< awt::XFont > OAccessibleMenuItemComponent::getFont( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Reference< awt::XFont > xFont;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleExtendedComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- xFont = xParentComp->getFont();
- }
-
- return xFont;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString OAccessibleMenuItemComponent::getTitledBorderText( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return ::rtl::OUString();
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString OAccessibleMenuItemComponent::getToolTipText( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- ::rtl::OUString sRet;
- if ( m_pParent )
- sRet = m_pParent->GetTipHelpText( m_pParent->GetItemId( m_nItemPos ) );
-
- return sRet;
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/floatingwindowaccessible.cxx b/accessibility/source/standard/floatingwindowaccessible.cxx
deleted file mode 100644
index 6bb332fe7..000000000
--- a/accessibility/source/standard/floatingwindowaccessible.cxx
+++ /dev/null
@@ -1,73 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-#include <floatingwindowaccessible.hxx>
-
-
-#include <com/sun/star/accessibility/AccessibleRelationType.hpp>
-#include <unotools/accessiblerelationsethelper.hxx>
-#include <vcl/window.hxx>
-
-namespace uno = ::com::sun::star::uno;
-
-using ::com::sun::star::accessibility::AccessibleRelation;
-namespace AccessibleRelationType = ::com::sun::star::accessibility::AccessibleRelationType;
-
-//-------------------------------------------------------------------
-
-FloatingWindowAccessible::FloatingWindowAccessible(VCLXWindow* pWindow) :
- VCLXAccessibleComponent(pWindow)
-{
-}
-
-//-------------------------------------------------------------------
-
-FloatingWindowAccessible::~FloatingWindowAccessible()
-{
-}
-
-//-------------------------------------------------------------------
-
-void FloatingWindowAccessible::FillAccessibleRelationSet(utl::AccessibleRelationSetHelper& rRelationSet)
-{
- Window* pWindow = GetWindow();
- if ( pWindow )
- {
- Window* pParentWindow = pWindow->GetParent();
- if( pParentWindow )
- {
- uno::Sequence< uno::Reference< uno::XInterface > > aSequence(1);
- aSequence[0] = pParentWindow->GetAccessible();
- rRelationSet.AddRelation( AccessibleRelation( AccessibleRelationType::SUB_WINDOW_OF, aSequence ) );
- }
- }
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/makefile.mk b/accessibility/source/standard/makefile.mk
deleted file mode 100644
index b79d98f65..000000000
--- a/accessibility/source/standard/makefile.mk
+++ /dev/null
@@ -1,78 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..$/..
-
-PRJNAME=accessibility
-TARGET=standard
-
-ENABLE_EXCEPTIONS=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-# --- Files --------------------------------------------------------
-
-SLOFILES= \
- $(SLO)$/accessiblemenubasecomponent.obj \
- $(SLO)$/accessiblemenucomponent.obj \
- $(SLO)$/accessiblemenuitemcomponent.obj \
- $(SLO)$/floatingwindowaccessible.obj \
- $(SLO)$/vclxaccessiblebox.obj \
- $(SLO)$/vclxaccessiblebutton.obj \
- $(SLO)$/vclxaccessiblecheckbox.obj \
- $(SLO)$/vclxaccessiblecombobox.obj \
- $(SLO)$/vclxaccessibledropdowncombobox.obj \
- $(SLO)$/vclxaccessibledropdownlistbox.obj \
- $(SLO)$/vclxaccessibleedit.obj \
- $(SLO)$/vclxaccessiblefixedhyperlink.obj \
- $(SLO)$/vclxaccessiblefixedtext.obj \
- $(SLO)$/vclxaccessiblelist.obj \
- $(SLO)$/vclxaccessiblelistbox.obj \
- $(SLO)$/vclxaccessiblelistitem.obj \
- $(SLO)$/vclxaccessiblemenu.obj \
- $(SLO)$/vclxaccessiblemenubar.obj \
- $(SLO)$/vclxaccessiblemenuitem.obj \
- $(SLO)$/vclxaccessiblemenuseparator.obj \
- $(SLO)$/vclxaccessiblepopupmenu.obj \
- $(SLO)$/vclxaccessibleradiobutton.obj \
- $(SLO)$/vclxaccessiblescrollbar.obj \
- $(SLO)$/vclxaccessiblestatusbar.obj \
- $(SLO)$/vclxaccessiblestatusbaritem.obj \
- $(SLO)$/vclxaccessibletabcontrol.obj \
- $(SLO)$/vclxaccessibletabpage.obj \
- $(SLO)$/vclxaccessibletabpagewindow.obj \
- $(SLO)$/vclxaccessibletextcomponent.obj \
- $(SLO)$/vclxaccessibletextfield.obj \
- $(SLO)$/vclxaccessibletoolbox.obj \
- $(SLO)$/vclxaccessibletoolboxitem.obj
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : target.mk
-
diff --git a/accessibility/source/standard/vclxaccessiblebox.cxx b/accessibility/source/standard/vclxaccessiblebox.cxx
deleted file mode 100644
index b353cf736..000000000
--- a/accessibility/source/standard/vclxaccessiblebox.cxx
+++ /dev/null
@@ -1,375 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessiblebox.hxx>
-#include <accessibility/standard/vclxaccessibletextfield.hxx>
-#include <accessibility/standard/vclxaccessibleedit.hxx>
-#include <accessibility/standard/vclxaccessiblelist.hxx>
-#include <accessibility/helper/listboxhelper.hxx>
-
-#include <unotools/accessiblestatesethelper.hxx>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <vcl/svapp.hxx>
-#include <vcl/combobox.hxx>
-#include <vcl/lstbox.hxx>
-#include <accessibility/helper/accresmgr.hxx>
-#include <accessibility/helper/accessiblestrings.hrc>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::accessibility;
-
-VCLXAccessibleBox::VCLXAccessibleBox (VCLXWindow* pVCLWindow, BoxType aType, bool bIsDropDownBox)
- : VCLXAccessibleComponent (pVCLWindow),
- m_aBoxType (aType),
- m_bIsDropDownBox (bIsDropDownBox),
- m_nIndexInParent (DEFAULT_INDEX_IN_PARENT)
-{
- // Set up the flags that indicate which children this object has.
- m_bHasListChild = true;
-
- // A text field is not present for non drop down list boxes.
- if ((m_aBoxType==LISTBOX) && ! m_bIsDropDownBox)
- m_bHasTextChild = false;
- else
- m_bHasTextChild = true;
-}
-
-VCLXAccessibleBox::~VCLXAccessibleBox (void)
-{
-}
-
-void VCLXAccessibleBox::ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent )
-{
- uno::Any aOldValue, aNewValue;
- uno::Reference<XAccessible> xAcc;
-
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_WINDOW_SHOW:
- case VCLEVENT_WINDOW_HIDE:
- {
- Window* pChildWindow = (Window *) rVclWindowEvent.GetData();
- // Just compare to the combo box text field. All other children
- // are identical to this object in which case this object will
- // be removed in a short time.
- if (m_aBoxType==COMBOBOX)
- {
- ComboBox* pComboBox = static_cast<ComboBox*>(GetWindow());
- if ( ( pComboBox != NULL ) && ( pChildWindow != NULL ) )
- if (pChildWindow == pComboBox->GetSubEdit())
- {
- if (rVclWindowEvent.GetId() == VCLEVENT_WINDOW_SHOW)
- {
- // Instantiate text field.
- getAccessibleChild (0);
- aNewValue <<= m_xText;
- }
- else
- {
- // Release text field.
- aOldValue <<= m_xText;
- m_xText = NULL;
- }
- // Tell the listeners about the new/removed child.
- NotifyAccessibleEvent (
- AccessibleEventId::CHILD,
- aOldValue, aNewValue);
- }
-
- }
- }
- break;
-
- default:
- VCLXAccessibleComponent::ProcessWindowChildEvent (rVclWindowEvent);
- }
-}
-
-void VCLXAccessibleBox::ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent)
-{
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_DROPDOWN_OPEN:
- case VCLEVENT_DROPDOWN_CLOSE:
- case VCLEVENT_LISTBOX_DOUBLECLICK:
- case VCLEVENT_LISTBOX_SCROLLED:
- case VCLEVENT_LISTBOX_SELECT:
- case VCLEVENT_LISTBOX_ITEMADDED:
- case VCLEVENT_LISTBOX_ITEMREMOVED:
- case VCLEVENT_COMBOBOX_ITEMADDED:
- case VCLEVENT_COMBOBOX_ITEMREMOVED:
- case VCLEVENT_COMBOBOX_SCROLLED:
- {
- // Forward the call to the list child.
- VCLXAccessibleList* pList = static_cast<VCLXAccessibleList*>(m_xList.get());
- if ( pList == NULL )
- {
- getAccessibleChild ( m_bHasTextChild ? 1 : 0 );
- pList = static_cast<VCLXAccessibleList*>(m_xList.get());
- }
- if ( pList != NULL )
- pList->ProcessWindowEvent (rVclWindowEvent);
- break;
- }
-
- case VCLEVENT_COMBOBOX_SELECT:
- case VCLEVENT_COMBOBOX_DESELECT:
- {
- // Selection is handled by VCLXAccessibleList which operates on
- // the same VCL object as this box does. In case of the
- // combobox, however, we have to help by providing the list with
- // the text of the currently selected item.
- VCLXAccessibleList* pList = static_cast<VCLXAccessibleList*>(m_xList.get());
- if (pList != NULL && m_xText.is())
- {
- Reference<XAccessibleText> xText (m_xText->getAccessibleContext(), UNO_QUERY);
- if ( xText.is() )
- {
- ::rtl::OUString sText = xText->getSelectedText();
- if ( !sText.getLength() )
- sText = xText->getText();
- pList->UpdateSelection (sText);
- }
- }
- break;
- }
-
- case VCLEVENT_EDIT_MODIFY:
- case VCLEVENT_EDIT_SELECTIONCHANGED:
- // Modify/Selection events are handled by the combo box instead of
- // directly by the edit field (Why?). Therefore, delegate this
- // call to the edit field.
- if (m_aBoxType==COMBOBOX)
- {
- if (m_xText.is())
- {
- Reference<XAccessibleContext> xContext = m_xText->getAccessibleContext();
- VCLXAccessibleEdit* pEdit = static_cast<VCLXAccessibleEdit*>(xContext.get());
- if (pEdit != NULL)
- pEdit->ProcessWindowEvent (rVclWindowEvent);
- }
- }
- break;
-
- default:
- VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
- }
-}
-
-IMPLEMENT_FORWARD_XINTERFACE2(VCLXAccessibleBox, VCLXAccessibleComponent, VCLXAccessibleBox_BASE)
-IMPLEMENT_FORWARD_XTYPEPROVIDER2(VCLXAccessibleBox, VCLXAccessibleComponent, VCLXAccessibleBox_BASE)
-
-//===== XAccessible =========================================================
-
-Reference< XAccessibleContext > SAL_CALL VCLXAccessibleBox::getAccessibleContext( )
- throw (RuntimeException)
-{
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- return this;
-}
-
-//===== XAccessibleContext ==================================================
-
-sal_Int32 SAL_CALL VCLXAccessibleBox::getAccessibleChildCount (void)
- throw (RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- // Usually a box has a text field and a list of items as its children.
- // Non drop down list boxes have no text field. Additionally check
- // whether the object is valid.
- sal_Int32 nCount = 0;
- if (IsValid())
- nCount += (m_bHasTextChild?1:0) + (m_bHasListChild?1:0);
- else
- {
- // Object not valid anymore. Release references to children.
- m_bHasTextChild = false;
- m_xText = NULL;
- m_bHasListChild = false;
- m_xList = NULL;
- }
-
- return nCount;
-}
-
-Reference<XAccessible> SAL_CALL VCLXAccessibleBox::getAccessibleChild (sal_Int32 i)
- throw (IndexOutOfBoundsException, RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- if (i<0 || i>=getAccessibleChildCount())
- throw IndexOutOfBoundsException();
-
- Reference< XAccessible > xChild;
- if (IsValid())
- {
- if (i==1 || ! m_bHasTextChild)
- {
- // List.
- if ( ! m_xList.is())
- {
- VCLXAccessibleList* pList = new VCLXAccessibleList ( GetVCLXWindow(),
- (m_aBoxType == LISTBOX ? VCLXAccessibleList::LISTBOX : VCLXAccessibleList::COMBOBOX),
- this);
- pList->SetIndexInParent (i);
- m_xList = pList;
- }
- xChild = m_xList;
- }
- else
- {
- // Text Field.
- if ( ! m_xText.is())
- {
- if (m_aBoxType==COMBOBOX)
- {
- ComboBox* pComboBox = static_cast<ComboBox*>(GetWindow());
- if (pComboBox!=NULL && pComboBox->GetSubEdit()!=NULL)
- m_xText = pComboBox->GetSubEdit()->GetAccessible();
- }
- else if (m_bIsDropDownBox)
- m_xText = new VCLXAccessibleTextField (GetVCLXWindow(),this);
- }
- xChild = m_xText;
- }
- }
-
- return xChild;
-}
-
-sal_Int16 SAL_CALL VCLXAccessibleBox::getAccessibleRole (void) throw (RuntimeException)
-{
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- // Return the role <const>COMBO_BOX</const> for both VCL combo boxes and
- // VCL list boxes in DropDown-Mode else <const>PANEL</const>.
- // This way the Java bridge has not to handle both independently.
- return m_bIsDropDownBox ? AccessibleRole::COMBO_BOX : AccessibleRole::PANEL;
-}
-
-sal_Int32 SAL_CALL VCLXAccessibleBox::getAccessibleIndexInParent (void)
- throw (::com::sun::star::uno::RuntimeException)
-{
- if (m_nIndexInParent != DEFAULT_INDEX_IN_PARENT)
- return m_nIndexInParent;
- else
- return VCLXAccessibleComponent::getAccessibleIndexInParent();
-}
-
-//===== XAccessibleAction ===================================================
-
-sal_Int32 SAL_CALL VCLXAccessibleBox::getAccessibleActionCount (void)
- throw (RuntimeException)
-{
- ::osl::Guard< ::osl::Mutex> aGuard (GetMutex());
-
- // There is one action for drop down boxes (toggle popup) and none for
- // the other boxes.
- return m_bIsDropDownBox ? 1 : 0;
-}
-
-sal_Bool SAL_CALL VCLXAccessibleBox::doAccessibleAction (sal_Int32 nIndex)
- throw (IndexOutOfBoundsException, RuntimeException)
-{
- sal_Bool bNotify = sal_False;
-
- {
- SolarMutexGuard aSolarGuard;
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- if (nIndex<0 || nIndex>=getAccessibleActionCount())
- throw ::com::sun::star::lang::IndexOutOfBoundsException();
-
- if (m_aBoxType == COMBOBOX)
- {
- ComboBox* pComboBox = static_cast< ComboBox* >( GetWindow() );
- if (pComboBox != NULL)
- {
- pComboBox->ToggleDropDown();
- bNotify = sal_True;
- }
- }
- else if (m_aBoxType == LISTBOX)
- {
- ListBox* pListBox = static_cast< ListBox* >( GetWindow() );
- if (pListBox != NULL)
- {
- pListBox->ToggleDropDown();
- bNotify = sal_True;
- }
- }
- }
-
- if (bNotify)
- NotifyAccessibleEvent (AccessibleEventId::ACTION_CHANGED, Any(), Any());
-
- return bNotify;
-}
-
-::rtl::OUString SAL_CALL VCLXAccessibleBox::getAccessibleActionDescription (sal_Int32 nIndex)
- throw (IndexOutOfBoundsException, RuntimeException)
-{
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
- if (nIndex<0 || nIndex>=getAccessibleActionCount())
- throw ::com::sun::star::lang::IndexOutOfBoundsException();
- return TK_RES_STRING( RID_STR_ACC_ACTION_TOGGLEPOPUP);
-}
-
-Reference< XAccessibleKeyBinding > VCLXAccessibleBox::getAccessibleActionKeyBinding( sal_Int32 nIndex )
- throw (IndexOutOfBoundsException, RuntimeException)
-{
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- Reference< XAccessibleKeyBinding > xRet;
-
- if (nIndex<0 || nIndex>=getAccessibleActionCount())
- throw ::com::sun::star::lang::IndexOutOfBoundsException();
-
- // ... which key?
- return xRet;
-}
-
-//===== XComponent ==========================================================
-
-void SAL_CALL VCLXAccessibleBox::disposing (void)
-{
- VCLXAccessibleComponent::disposing();
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessiblebutton.cxx b/accessibility/source/standard/vclxaccessiblebutton.cxx
deleted file mode 100644
index ddbaefcb5..000000000
--- a/accessibility/source/standard/vclxaccessiblebutton.cxx
+++ /dev/null
@@ -1,329 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-// includes --------------------------------------------------------------
-#include <accessibility/standard/vclxaccessiblebutton.hxx>
-#include <accessibility/helper/accresmgr.hxx>
-#include <accessibility/helper/accessiblestrings.hrc>
-
-#include <unotools/accessiblestatesethelper.hxx>
-#include <comphelper/accessiblekeybindinghelper.hxx>
-#include <com/sun/star/awt/KeyModifier.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <cppuhelper/typeprovider.hxx>
-#include <comphelper/sequence.hxx>
-
-#include <vcl/button.hxx>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::accessibility;
-using namespace ::comphelper;
-
-
-// -----------------------------------------------------------------------------
-// VCLXAccessibleButton
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleButton::VCLXAccessibleButton( VCLXWindow* pVCLWindow )
- :VCLXAccessibleTextComponent( pVCLWindow )
-{
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleButton::~VCLXAccessibleButton()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleButton::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
-{
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_PUSHBUTTON_TOGGLE:
- {
- Any aOldValue;
- Any aNewValue;
-
- PushButton* pButton = (PushButton*) GetWindow();
- if ( pButton && pButton->GetState() == STATE_CHECK )
- aNewValue <<= AccessibleStateType::CHECKED;
- else
- aOldValue <<= AccessibleStateType::CHECKED;
-
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
- break;
- default:
- VCLXAccessibleTextComponent::ProcessWindowEvent( rVclWindowEvent );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleButton::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
-{
- VCLXAccessibleTextComponent::FillAccessibleStateSet( rStateSet );
-
- PushButton* pButton = (PushButton*) GetWindow();
- if ( pButton )
- {
- rStateSet.AddState( AccessibleStateType::FOCUSABLE );
-
- if ( pButton->GetState() == STATE_CHECK )
- rStateSet.AddState( AccessibleStateType::CHECKED );
-
- if ( pButton->IsPressed() )
- rStateSet.AddState( AccessibleStateType::PRESSED );
- }
-}
-
-// -----------------------------------------------------------------------------
-// XInterface
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleButton, VCLXAccessibleTextComponent, VCLXAccessibleButton_BASE )
-
-// -----------------------------------------------------------------------------
-// XTypeProvider
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleButton, VCLXAccessibleTextComponent, VCLXAccessibleButton_BASE )
-
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleButton::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.toolkit.AccessibleButton") );
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< ::rtl::OUString > VCLXAccessibleButton::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleButton") );
- return aNames;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleButton::getAccessibleName( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- ::rtl::OUString aName( VCLXAccessibleTextComponent::getAccessibleName() );
- sal_Int32 nLength = aName.getLength();
-
- if ( nLength >= 3 && aName.matchAsciiL( RTL_CONSTASCII_STRINGPARAM("..."), nLength - 3 ) )
- {
- if ( nLength == 3 )
- {
- // it's a browse button
- aName = ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_NAME_BROWSEBUTTON ) );
- }
- else
- {
- // remove the three trailing dots
- aName = aName.copy( 0, nLength - 3 );
- }
- }
- else if ( nLength >= 3 && aName.matchAsciiL( RTL_CONSTASCII_STRINGPARAM("<< "), 0 ) )
- {
- // remove the leading symbols
- aName = aName.copy( 3, nLength - 3 );
- }
- else if ( nLength >= 3 && aName.matchAsciiL( RTL_CONSTASCII_STRINGPARAM(" >>"), nLength - 3 ) )
- {
- // remove the trailing symbols
- aName = aName.copy( 0, nLength - 3 );
- }
-
- return aName;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleAction
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleButton::getAccessibleActionCount( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return 1;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleButton::doAccessibleAction ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- PushButton* pButton = (PushButton*) GetWindow();
- if ( pButton )
- pButton->Click();
-
- return sal_True;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleButton::getAccessibleActionDescription ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- return ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_CLICK ) );
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessibleKeyBinding > VCLXAccessibleButton::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- OAccessibleKeyBindingHelper* pKeyBindingHelper = new OAccessibleKeyBindingHelper();
- Reference< XAccessibleKeyBinding > xKeyBinding = pKeyBindingHelper;
-
- Window* pWindow = GetWindow();
- if ( pWindow )
- {
- KeyEvent aKeyEvent = pWindow->GetActivationKey();
- KeyCode aKeyCode = aKeyEvent.GetKeyCode();
- if ( aKeyCode.GetCode() != 0 )
- {
- awt::KeyStroke aKeyStroke;
- aKeyStroke.Modifiers = 0;
- if ( aKeyCode.IsShift() )
- aKeyStroke.Modifiers |= awt::KeyModifier::SHIFT;
- if ( aKeyCode.IsMod1() )
- aKeyStroke.Modifiers |= awt::KeyModifier::MOD1;
- if ( aKeyCode.IsMod2() )
- aKeyStroke.Modifiers |= awt::KeyModifier::MOD2;
- if ( aKeyCode.IsMod3() )
- aKeyStroke.Modifiers |= awt::KeyModifier::MOD3;
- aKeyStroke.KeyCode = aKeyCode.GetCode();
- aKeyStroke.KeyChar = aKeyEvent.GetCharCode();
- aKeyStroke.KeyFunc = static_cast< sal_Int16 >( aKeyCode.GetFunction() );
- pKeyBindingHelper->AddKeyBinding( aKeyStroke );
- }
- }
-
- return xKeyBinding;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleValue
-// -----------------------------------------------------------------------------
-
-Any VCLXAccessibleButton::getCurrentValue( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Any aValue;
-
- PushButton* pButton = (PushButton*) GetWindow();
- if ( pButton )
- aValue <<= (sal_Int32) pButton->IsPressed();
-
- return aValue;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleButton::setCurrentValue( const Any& aNumber ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Bool bReturn = sal_False;
-
- PushButton* pButton = (PushButton*) GetWindow();
- if ( pButton )
- {
- sal_Int32 nValue = 0;
- OSL_VERIFY( aNumber >>= nValue );
-
- if ( nValue < 0 )
- nValue = 0;
- else if ( nValue > 1 )
- nValue = 1;
-
- pButton->SetPressed( (sal_Bool) nValue );
- bReturn = sal_True;
- }
-
- return bReturn;
-}
-
-// -----------------------------------------------------------------------------
-
-Any VCLXAccessibleButton::getMaximumValue( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Any aValue;
- aValue <<= (sal_Int32) 1;
-
- return aValue;
-}
-
-// -----------------------------------------------------------------------------
-
-Any VCLXAccessibleButton::getMinimumValue( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Any aValue;
- aValue <<= (sal_Int32) 0;
-
- return aValue;
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessiblecheckbox.cxx b/accessibility/source/standard/vclxaccessiblecheckbox.cxx
deleted file mode 100644
index 68867a939..000000000
--- a/accessibility/source/standard/vclxaccessiblecheckbox.cxx
+++ /dev/null
@@ -1,364 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-// includes --------------------------------------------------------------
-#include <accessibility/standard/vclxaccessiblecheckbox.hxx>
-
-#include <toolkit/awt/vclxwindows.hxx>
-#include <accessibility/helper/accresmgr.hxx>
-#include <accessibility/helper/accessiblestrings.hrc>
-
-#include <unotools/accessiblestatesethelper.hxx>
-#include <comphelper/accessiblekeybindinghelper.hxx>
-#include <com/sun/star/awt/KeyModifier.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <cppuhelper/typeprovider.hxx>
-#include <comphelper/sequence.hxx>
-
-#include <vcl/button.hxx>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::accessibility;
-using namespace ::comphelper;
-
-
-// -----------------------------------------------------------------------------
-// VCLXAccessibleCheckBox
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleCheckBox::VCLXAccessibleCheckBox( VCLXWindow* pVCLWindow )
- :VCLXAccessibleTextComponent( pVCLWindow )
-{
- m_bChecked = IsChecked();
- m_bIndeterminate = IsIndeterminate();
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleCheckBox::~VCLXAccessibleCheckBox()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-bool VCLXAccessibleCheckBox::IsChecked()
-{
- bool bChecked = false;
-
- VCLXCheckBox* pVCLXCheckBox = static_cast< VCLXCheckBox* >( GetVCLXWindow() );
- if ( pVCLXCheckBox && pVCLXCheckBox->getState() == (sal_Int16) 1 )
- bChecked = true;
-
- return bChecked;
-}
-
-// -----------------------------------------------------------------------------
-
-bool VCLXAccessibleCheckBox::IsIndeterminate()
-{
- bool bIndeterminate = false;
-
- VCLXCheckBox* pVCLXCheckBox = static_cast< VCLXCheckBox* >( GetVCLXWindow() );
- if ( pVCLXCheckBox && pVCLXCheckBox->getState() == (sal_Int16) 2 )
- bIndeterminate = true;
-
- return bIndeterminate;
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleCheckBox::SetChecked( bool bChecked )
-{
- if ( m_bChecked != bChecked )
- {
- Any aOldValue, aNewValue;
- if ( m_bChecked )
- aOldValue <<= AccessibleStateType::CHECKED;
- else
- aNewValue <<= AccessibleStateType::CHECKED;
- m_bChecked = bChecked;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleCheckBox::SetIndeterminate( bool bIndeterminate )
-{
- if ( m_bIndeterminate != bIndeterminate )
- {
- Any aOldValue, aNewValue;
- if ( m_bIndeterminate )
- aOldValue <<= AccessibleStateType::INDETERMINATE;
- else
- aNewValue <<= AccessibleStateType::INDETERMINATE;
- m_bIndeterminate = bIndeterminate;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleCheckBox::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
-{
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_CHECKBOX_TOGGLE:
- {
- SetChecked( IsChecked() );
- SetIndeterminate( IsIndeterminate() );
- }
- break;
- default:
- VCLXAccessibleTextComponent::ProcessWindowEvent( rVclWindowEvent );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleCheckBox::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
-{
- VCLXAccessibleTextComponent::FillAccessibleStateSet( rStateSet );
-
- rStateSet.AddState( AccessibleStateType::FOCUSABLE );
-
- if ( IsChecked() )
- rStateSet.AddState( AccessibleStateType::CHECKED );
-
- if ( IsIndeterminate() )
- rStateSet.AddState( AccessibleStateType::INDETERMINATE );
-}
-
-// -----------------------------------------------------------------------------
-// XInterface
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleCheckBox, VCLXAccessibleTextComponent, VCLXAccessibleCheckBox_BASE )
-
-// -----------------------------------------------------------------------------
-// XTypeProvider
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleCheckBox, VCLXAccessibleTextComponent, VCLXAccessibleCheckBox_BASE )
-
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleCheckBox::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.toolkit.AccessibleCheckBox") );
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< ::rtl::OUString > VCLXAccessibleCheckBox::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleCheckBox") );
- return aNames;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleAction
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleCheckBox::getAccessibleActionCount( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return 1;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleCheckBox::doAccessibleAction ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- CheckBox* pCheckBox = (CheckBox*) GetWindow();
- VCLXCheckBox* pVCLXCheckBox = static_cast< VCLXCheckBox* >( GetVCLXWindow() );
- if ( pCheckBox && pVCLXCheckBox )
- {
- sal_Int32 nValueMin = (sal_Int32) 0;
- sal_Int32 nValueMax = (sal_Int32) 1;
-
- if ( pCheckBox->IsTriStateEnabled() )
- nValueMax = (sal_Int32) 2;
-
- sal_Int32 nValue = (sal_Int32) pVCLXCheckBox->getState();
-
- ++nValue;
-
- if ( nValue > nValueMax )
- nValue = nValueMin;
-
- pVCLXCheckBox->setState( (sal_Int16) nValue );
- }
-
- return sal_True;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleCheckBox::getAccessibleActionDescription ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- return ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_CLICK ) );
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessibleKeyBinding > VCLXAccessibleCheckBox::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- OAccessibleKeyBindingHelper* pKeyBindingHelper = new OAccessibleKeyBindingHelper();
- Reference< XAccessibleKeyBinding > xKeyBinding = pKeyBindingHelper;
-
- Window* pWindow = GetWindow();
- if ( pWindow )
- {
- KeyEvent aKeyEvent = pWindow->GetActivationKey();
- KeyCode aKeyCode = aKeyEvent.GetKeyCode();
- if ( aKeyCode.GetCode() != 0 )
- {
- awt::KeyStroke aKeyStroke;
- aKeyStroke.Modifiers = 0;
- if ( aKeyCode.IsShift() )
- aKeyStroke.Modifiers |= awt::KeyModifier::SHIFT;
- if ( aKeyCode.IsMod1() )
- aKeyStroke.Modifiers |= awt::KeyModifier::MOD1;
- if ( aKeyCode.IsMod2() )
- aKeyStroke.Modifiers |= awt::KeyModifier::MOD2;
- if ( aKeyCode.IsMod3() )
- aKeyStroke.Modifiers |= awt::KeyModifier::MOD3;
- aKeyStroke.KeyCode = aKeyCode.GetCode();
- aKeyStroke.KeyChar = aKeyEvent.GetCharCode();
- aKeyStroke.KeyFunc = static_cast< sal_Int16 >( aKeyCode.GetFunction() );
- pKeyBindingHelper->AddKeyBinding( aKeyStroke );
- }
- }
-
- return xKeyBinding;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleValue
-// -----------------------------------------------------------------------------
-
-Any VCLXAccessibleCheckBox::getCurrentValue( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Any aValue;
-
- VCLXCheckBox* pVCLXCheckBox = static_cast< VCLXCheckBox* >( GetVCLXWindow() );
- if ( pVCLXCheckBox )
- aValue <<= (sal_Int32) pVCLXCheckBox->getState();
-
- return aValue;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleCheckBox::setCurrentValue( const Any& aNumber ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Bool bReturn = sal_False;
-
- VCLXCheckBox* pVCLXCheckBox = static_cast< VCLXCheckBox* >( GetVCLXWindow() );
- if ( pVCLXCheckBox )
- {
- sal_Int32 nValue = 0, nValueMin = 0, nValueMax = 0;
- OSL_VERIFY( aNumber >>= nValue );
- OSL_VERIFY( getMinimumValue() >>= nValueMin );
- OSL_VERIFY( getMaximumValue() >>= nValueMax );
-
- if ( nValue < nValueMin )
- nValue = nValueMin;
- else if ( nValue > nValueMax )
- nValue = nValueMax;
-
- pVCLXCheckBox->setState( (sal_Int16) nValue );
- bReturn = sal_True;
- }
-
- return bReturn;
-}
-
-// -----------------------------------------------------------------------------
-
-Any VCLXAccessibleCheckBox::getMaximumValue( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Any aValue;
-
- CheckBox* pCheckBox = (CheckBox*) GetWindow();
- if ( pCheckBox && pCheckBox->IsTriStateEnabled() )
- aValue <<= (sal_Int32) 2;
- else
- aValue <<= (sal_Int32) 1;
-
- return aValue;
-}
-
-// -----------------------------------------------------------------------------
-
-Any VCLXAccessibleCheckBox::getMinimumValue( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Any aValue;
- aValue <<= (sal_Int32) 0;
-
- return aValue;
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessiblecombobox.cxx b/accessibility/source/standard/vclxaccessiblecombobox.cxx
deleted file mode 100644
index 821ab3041..000000000
--- a/accessibility/source/standard/vclxaccessiblecombobox.cxx
+++ /dev/null
@@ -1,98 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessiblecombobox.hxx>
-#include <accessibility/standard/vclxaccessiblelist.hxx>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <vcl/svapp.hxx>
-#include <vcl/combobox.hxx>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::accessibility;
-
-
-VCLXAccessibleComboBox::VCLXAccessibleComboBox (VCLXWindow* pVCLWindow)
- : VCLXAccessibleBox (pVCLWindow, VCLXAccessibleBox::COMBOBOX, false)
-{
-}
-
-
-
-
-VCLXAccessibleComboBox::~VCLXAccessibleComboBox (void)
-{
-}
-
-
-
-
-bool VCLXAccessibleComboBox::IsValid (void) const
-{
- return static_cast<ComboBox*>(GetWindow()) != NULL;
-
-}
-
-
-
-
-void VCLXAccessibleComboBox::ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent)
-{
- VCLXAccessibleBox::ProcessWindowEvent( rVclWindowEvent );
-}
-
-
-
-
-//===== XServiceInfo ========================================================
-
-::rtl::OUString VCLXAccessibleComboBox::getImplementationName (void)
- throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.toolkit.AccessibleComboBox" ));
-}
-
-
-
-
-Sequence< ::rtl::OUString > VCLXAccessibleComboBox::getSupportedServiceNames (void)
- throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames = VCLXAccessibleBox::getSupportedServiceNames();
- sal_Int32 nLength = aNames.getLength();
- aNames.realloc( nLength + 1 );
- aNames[nLength] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleComboBox" ));
- return aNames;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessibledropdowncombobox.cxx b/accessibility/source/standard/vclxaccessibledropdowncombobox.cxx
deleted file mode 100644
index e58167dbe..000000000
--- a/accessibility/source/standard/vclxaccessibledropdowncombobox.cxx
+++ /dev/null
@@ -1,122 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessibledropdowncombobox.hxx>
-#include <accessibility/standard/vclxaccessiblecombobox.hxx>
-#include <accessibility/standard/vclxaccessibletextfield.hxx>
-#include <accessibility/standard/vclxaccessiblelist.hxx>
-#include <accessibility/helper/accresmgr.hxx>
-#include <accessibility/helper/accessiblestrings.hrc>
-
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <tools/debug.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/combobox.hxx>
-#include <vcl/unohelp.hxx>
-
-#include <toolkit/awt/vclxwindow.hxx>
-#include <toolkit/helper/convert.hxx>
-
-#include <comphelper/sequence.hxx>
-#include <cppuhelper/typeprovider.hxx>
-#include <unotools/accessiblestatesethelper.hxx>
-
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::accessibility;
-
-
-VCLXAccessibleDropDownComboBox::VCLXAccessibleDropDownComboBox (VCLXWindow* pVCLWindow)
- : VCLXAccessibleBox (pVCLWindow, VCLXAccessibleBox::COMBOBOX, true)
-{
-}
-
-
-
-
-VCLXAccessibleDropDownComboBox::~VCLXAccessibleDropDownComboBox (void)
-{
-}
-
-
-
-bool VCLXAccessibleDropDownComboBox::IsValid (void) const
-{
- return static_cast<ComboBox*>(GetWindow()) != NULL;
-
-}
-
-
-
-
-void VCLXAccessibleDropDownComboBox::ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent)
-{
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_DROPDOWN_OPEN:
- case VCLEVENT_DROPDOWN_CLOSE:
- {
- break;
- }
-
- default:
- VCLXAccessibleBox::ProcessWindowEvent( rVclWindowEvent );
- }
-}
-
-
-
-
-//===== XServiceInfo ========================================================
-
-::rtl::OUString VCLXAccessibleDropDownComboBox::getImplementationName()
- throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.toolkit.AccessibleDropDownComboBox" ));
-}
-
-
-
-
-Sequence< ::rtl::OUString > VCLXAccessibleDropDownComboBox::getSupportedServiceNames (void)
- throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames = VCLXAccessibleBox::getSupportedServiceNames();
- sal_Int32 nLength = aNames.getLength();
- aNames.realloc( nLength + 1 );
- aNames[nLength] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleDropDownComboBox" ));
- return aNames;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessibledropdownlistbox.cxx b/accessibility/source/standard/vclxaccessibledropdownlistbox.cxx
deleted file mode 100644
index db481d731..000000000
--- a/accessibility/source/standard/vclxaccessibledropdownlistbox.cxx
+++ /dev/null
@@ -1,112 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-#include <accessibility/standard/vclxaccessibledropdownlistbox.hxx>
-#include <accessibility/standard/vclxaccessiblelistbox.hxx>
-#include <accessibility/helper/accresmgr.hxx>
-#include <accessibility/helper/accessiblestrings.hrc>
-
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <tools/debug.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/lstbox.hxx>
-#include <vcl/unohelp.hxx>
-
-#include <toolkit/awt/vclxwindow.hxx>
-#include <toolkit/helper/convert.hxx>
-
-#include <comphelper/sequence.hxx>
-#include <cppuhelper/typeprovider.hxx>
-#include <unotools/accessiblestatesethelper.hxx>
-
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::accessibility;
-
-
-VCLXAccessibleDropDownListBox::VCLXAccessibleDropDownListBox (VCLXWindow* pVCLWindow)
- : VCLXAccessibleBox (pVCLWindow, VCLXAccessibleBox::LISTBOX, true)
-{
-}
-
-
-
-
-VCLXAccessibleDropDownListBox::~VCLXAccessibleDropDownListBox()
-{
-}
-
-
-
-
-bool VCLXAccessibleDropDownListBox::IsValid (void) const
-{
- return static_cast<ListBox*>(GetWindow()) != NULL;
-
-}
-
-
-
-
-void VCLXAccessibleDropDownListBox::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
-{
- VCLXAccessibleBox::ProcessWindowEvent (rVclWindowEvent);
-}
-
-
-
-
-//===== XServiceInfo ========================================================
-
-::rtl::OUString VCLXAccessibleDropDownListBox::getImplementationName()
- throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.toolkit.AccessibleDropDownListBox" ));
-}
-
-
-
-
-Sequence< ::rtl::OUString > VCLXAccessibleDropDownListBox::getSupportedServiceNames (void)
- throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames = VCLXAccessibleBox::getSupportedServiceNames();
- sal_Int32 nLength = aNames.getLength();
- aNames.realloc( nLength + 1 );
- aNames[nLength] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleDropDownListBox" ));
- return aNames;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessibleedit.cxx b/accessibility/source/standard/vclxaccessibleedit.cxx
deleted file mode 100644
index b70317c1a..000000000
--- a/accessibility/source/standard/vclxaccessibleedit.cxx
+++ /dev/null
@@ -1,629 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-// includes --------------------------------------------------------------
-#include <accessibility/standard/vclxaccessibleedit.hxx>
-
-#include <toolkit/awt/vclxwindows.hxx>
-#include <toolkit/helper/convert.hxx>
-#include <accessibility/helper/accresmgr.hxx>
-#include <accessibility/helper/accessiblestrings.hrc>
-
-#include <unotools/accessiblestatesethelper.hxx>
-#include <unotools/accessiblerelationsethelper.hxx>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
-#include <cppuhelper/typeprovider.hxx>
-#include <comphelper/sequence.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/window.hxx>
-#include <vcl/edit.hxx>
-#include <sot/exchange.hxx>
-#include <sot/formats.hxx>
-
-#include <algorithm>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::accessibility;
-using namespace ::comphelper;
-
-
-// -----------------------------------------------------------------------------
-// VCLXAccessibleEdit
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleEdit::VCLXAccessibleEdit( VCLXWindow* pVCLWindow )
- :VCLXAccessibleTextComponent( pVCLWindow )
-{
- m_nSelectionStart = getSelectionStart();
- m_nCaretPosition = getCaretPosition();
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleEdit::~VCLXAccessibleEdit()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleEdit::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
-{
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_EDIT_MODIFY:
- {
- SetText( implGetText() );
- }
- break;
- case VCLEVENT_EDIT_SELECTIONCHANGED:
- {
- sal_Int32 nOldCaretPosition = m_nCaretPosition;
- sal_Int32 nOldSelectionStart = m_nSelectionStart;
-
- m_nCaretPosition = getCaretPosition();
- m_nSelectionStart = getSelectionStart();
-
- Window* pWindow = GetWindow();
- if ( pWindow && pWindow->HasChildPathFocus() )
- {
- if ( m_nCaretPosition != nOldCaretPosition )
- {
- Any aOldValue, aNewValue;
- aOldValue <<= (sal_Int32) nOldCaretPosition;
- aNewValue <<= (sal_Int32) m_nCaretPosition;
- NotifyAccessibleEvent( AccessibleEventId::CARET_CHANGED, aOldValue, aNewValue );
- }
-
- // #i104470# VCL only has SELECTION_CHANGED, but UAA distinguishes between SELECTION_CHANGED and CARET_CHANGED
- sal_Bool bHasSelection = ( m_nSelectionStart != m_nCaretPosition );
- sal_Bool bHadSelection = ( nOldSelectionStart != nOldCaretPosition );
- if ( ( bHasSelection != bHadSelection ) || ( bHasSelection && ( ( m_nCaretPosition != nOldCaretPosition ) || ( m_nSelectionStart != nOldSelectionStart ) ) ) )
- {
- NotifyAccessibleEvent( AccessibleEventId::TEXT_SELECTION_CHANGED, Any(), Any() );
- }
-
- }
- }
- break;
- default:
- VCLXAccessibleTextComponent::ProcessWindowEvent( rVclWindowEvent );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleEdit::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
-{
- VCLXAccessibleTextComponent::FillAccessibleStateSet( rStateSet );
-
- VCLXEdit* pVCLXEdit = static_cast< VCLXEdit* >( GetVCLXWindow() );
- if ( pVCLXEdit )
- {
- rStateSet.AddState( AccessibleStateType::FOCUSABLE );
- rStateSet.AddState( AccessibleStateType::SINGLE_LINE );
- if ( pVCLXEdit->isEditable() )
- rStateSet.AddState( AccessibleStateType::EDITABLE );
- }
-}
-
-// -----------------------------------------------------------------------------
-// OCommonAccessibleText
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleEdit::implGetText()
-{
- ::rtl::OUString aText;
-
- Edit* pEdit = static_cast< Edit* >( GetWindow() );
- if ( pEdit )
- {
- aText = OutputDevice::GetNonMnemonicString( pEdit->GetText() );
-
- if ( getAccessibleRole() == AccessibleRole::PASSWORD_TEXT )
- {
- xub_Unicode cEchoChar = pEdit->GetEchoChar();
- if ( !cEchoChar )
- cEchoChar = '*';
- XubString sTmp;
- aText = sTmp.Fill( (sal_uInt16)aText.getLength(), cEchoChar );
- }
- }
-
- return aText;
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleEdit::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
-{
- awt::Selection aSelection;
- VCLXEdit* pVCLXEdit = static_cast< VCLXEdit* >( GetVCLXWindow() );
- if ( pVCLXEdit )
- aSelection = pVCLXEdit->getSelection();
-
- nStartIndex = aSelection.Min;
- nEndIndex = aSelection.Max;
-}
-
-// -----------------------------------------------------------------------------
-// XInterface
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleEdit, VCLXAccessibleTextComponent, VCLXAccessibleEdit_BASE )
-
-// -----------------------------------------------------------------------------
-// XTypeProvider
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleEdit, VCLXAccessibleTextComponent, VCLXAccessibleEdit_BASE )
-
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleEdit::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.toolkit.AccessibleEdit") );
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< ::rtl::OUString > VCLXAccessibleEdit::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleEdit") );
- return aNames;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleEdit::getAccessibleChildCount() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return 0;
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > VCLXAccessibleEdit::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( i < 0 || i >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- return Reference< XAccessible >();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int16 VCLXAccessibleEdit::getAccessibleRole( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int16 nRole;
- Edit* pEdit = static_cast< Edit* >( GetWindow() );
- if ( pEdit && ( ( pEdit->GetStyle() & WB_PASSWORD ) || pEdit->GetEchoChar() ) )
- nRole = AccessibleRole::PASSWORD_TEXT;
- else
- nRole = AccessibleRole::TEXT;
-
- return nRole;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleAction
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleEdit::getAccessibleActionCount( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- // There is one action: activate
- return 1;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleEdit::doAccessibleAction ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- sal_Bool bDoAction = sal_False;
- Window* pWindow = GetWindow();
- if ( pWindow )
- {
- pWindow->GrabFocus();
- bDoAction = sal_True;
- }
-
- return bDoAction;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleEdit::getAccessibleActionDescription ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- static const ::rtl::OUString sAction( RTL_CONSTASCII_USTRINGPARAM( "activate" ) );
- return sAction;
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessibleKeyBinding > VCLXAccessibleEdit::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- return Reference< XAccessibleKeyBinding >();
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleText
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleEdit::getCaretPosition( ) throw (RuntimeException)
-{
- return getSelectionEnd();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleEdit::setCaretPosition( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- return setSelection( nIndex, nIndex );
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Unicode VCLXAccessibleEdit::getCharacter( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return VCLXAccessibleTextComponent::getCharacter( nIndex );
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< PropertyValue > VCLXAccessibleEdit::getCharacterAttributes( sal_Int32 nIndex, const Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return VCLXAccessibleTextComponent::getCharacterAttributes( nIndex, aRequestedAttributes );
-}
-
-// -----------------------------------------------------------------------------
-
-awt::Rectangle VCLXAccessibleEdit::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- awt::Rectangle aBounds( 0, 0, 0, 0 );
- sal_Int32 nLength = implGetText().getLength();
-
- if ( !implIsValidRange( nIndex, nIndex, nLength ) )
- throw IndexOutOfBoundsException();
-
- Control* pControl = static_cast< Control* >( GetWindow() );
- if ( pControl )
- {
- if ( nIndex == nLength )
- {
- // #108914# calculate virtual bounding rectangle
- for ( sal_Int32 i = 0; i < nLength; ++i )
- {
- Rectangle aRect = pControl->GetCharacterBounds( i );
- sal_Int32 nHeight = aRect.GetHeight();
- if ( aBounds.Height < nHeight )
- {
- aBounds.Y = aRect.Top();
- aBounds.Height = nHeight;
- }
- if ( i == nLength - 1 )
- {
- aBounds.X = aRect.Right() + 1;
- aBounds.Width = 1;
- }
- }
- }
- else
- {
- aBounds = AWTRectangle( pControl->GetCharacterBounds( nIndex ) );
- }
- }
-
- return aBounds;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleEdit::getCharacterCount( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return VCLXAccessibleTextComponent::getCharacterCount();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleEdit::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return VCLXAccessibleTextComponent::getIndexAtPoint( aPoint );
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleEdit::getSelectedText( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return VCLXAccessibleTextComponent::getSelectedText();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleEdit::getSelectionStart( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return VCLXAccessibleTextComponent::getSelectionStart();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleEdit::getSelectionEnd( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return VCLXAccessibleTextComponent::getSelectionEnd();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleEdit::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Bool bReturn = sal_False;
- ::rtl::OUString sText( implGetText() );
-
- if ( !implIsValidRange( nStartIndex, nEndIndex, sText.getLength() ) )
- throw IndexOutOfBoundsException();
-
- VCLXEdit* pVCLXEdit = static_cast< VCLXEdit* >( GetVCLXWindow() );
- Edit* pEdit = static_cast< Edit* >( GetWindow() );
- if ( pVCLXEdit && pEdit && pEdit->IsEnabled() )
- {
- pVCLXEdit->setSelection( awt::Selection( nStartIndex, nEndIndex ) );
- bReturn = sal_True;
- }
-
- return bReturn;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleEdit::getText( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return VCLXAccessibleTextComponent::getText();
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleEdit::getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return VCLXAccessibleTextComponent::getTextRange( nStartIndex, nEndIndex );
-}
-
-// -----------------------------------------------------------------------------
-
-::com::sun::star::accessibility::TextSegment VCLXAccessibleEdit::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return VCLXAccessibleTextComponent::getTextAtIndex( nIndex, aTextType );
-}
-
-// -----------------------------------------------------------------------------
-
-::com::sun::star::accessibility::TextSegment VCLXAccessibleEdit::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return VCLXAccessibleTextComponent::getTextBeforeIndex( nIndex, aTextType );
-}
-
-// -----------------------------------------------------------------------------
-
-::com::sun::star::accessibility::TextSegment VCLXAccessibleEdit::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return VCLXAccessibleTextComponent::getTextBehindIndex( nIndex, aTextType );
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleEdit::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return VCLXAccessibleTextComponent::copyText( nStartIndex, nEndIndex );
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleEditableText
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleEdit::cutText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return copyText( nStartIndex, nEndIndex ) && deleteText( nStartIndex, nEndIndex );
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleEdit::pasteText( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Bool bReturn = sal_False;
-
- if ( GetWindow() )
- {
- Reference< datatransfer::clipboard::XClipboard > xClipboard = GetWindow()->GetClipboard();
- if ( xClipboard.is() )
- {
- const sal_uInt32 nRef = Application::ReleaseSolarMutex();
- Reference< datatransfer::XTransferable > xDataObj = xClipboard->getContents();
- Application::AcquireSolarMutex( nRef );
- if ( xDataObj.is() )
- {
- datatransfer::DataFlavor aFlavor;
- SotExchange::GetFormatDataFlavor( SOT_FORMAT_STRING, aFlavor );
- if ( xDataObj->isDataFlavorSupported( aFlavor ) )
- {
- Any aData = xDataObj->getTransferData( aFlavor );
- ::rtl::OUString sText;
- aData >>= sText;
- bReturn = replaceText( nIndex, nIndex, sText );
- }
- }
- }
- }
-
- return bReturn;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleEdit::deleteText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return replaceText( nStartIndex, nEndIndex, ::rtl::OUString() );
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleEdit::insertText( const ::rtl::OUString& sText, sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return replaceText( nIndex, nIndex, sText );
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleEdit::replaceText( sal_Int32 nStartIndex, sal_Int32 nEndIndex, const ::rtl::OUString& sReplacement ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Bool bReturn = sal_False;
- ::rtl::OUString sText( implGetText() );
-
- if ( !implIsValidRange( nStartIndex, nEndIndex, sText.getLength() ) )
- throw IndexOutOfBoundsException();
-
- sal_Int32 nMinIndex = ::std::min( nStartIndex, nEndIndex );
- sal_Int32 nMaxIndex = ::std::max( nStartIndex, nEndIndex );
-
- VCLXEdit* pVCLXEdit = static_cast< VCLXEdit* >( GetVCLXWindow() );
- if ( pVCLXEdit && pVCLXEdit->isEditable() )
- {
- pVCLXEdit->setText( sText.replaceAt( nMinIndex, nMaxIndex - nMinIndex, sReplacement ) );
- sal_Int32 nIndex = nMinIndex + sReplacement.getLength();
- setSelection( nIndex, nIndex );
- bReturn = sal_True;
- }
-
- return bReturn;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleEdit::setAttributes( sal_Int32 nStartIndex, sal_Int32 nEndIndex, const Sequence<PropertyValue>& ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False; // attributes cannot be set for an edit
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleEdit::setText( const ::rtl::OUString& sText ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Bool bSuccess = sal_False;
- try
- {
- bSuccess = replaceText( 0, implGetText().getLength(), sText );
- }
- catch( const IndexOutOfBoundsException& )
- {
- OSL_FAIL( "VCLXAccessibleText::setText: caught an exception!" );
- }
- return bSuccess;
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessiblefixedhyperlink.cxx b/accessibility/source/standard/vclxaccessiblefixedhyperlink.cxx
deleted file mode 100644
index 1ae51f7f9..000000000
--- a/accessibility/source/standard/vclxaccessiblefixedhyperlink.cxx
+++ /dev/null
@@ -1,87 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-// includes --------------------------------------------------------------
-#include <accessibility/standard/vclxaccessiblefixedhyperlink.hxx>
-
-using namespace ::com::sun::star;
-
-// -----------------------------------------------------------------------------
-// VCLXAccessibleFixedHyperlink
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleFixedHyperlink::VCLXAccessibleFixedHyperlink( VCLXWindow* pVCLWindow )
- :VCLXAccessibleTextComponent( pVCLWindow )
-{
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleFixedHyperlink::~VCLXAccessibleFixedHyperlink()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleFixedHyperlink::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
-{
- VCLXAccessibleTextComponent::FillAccessibleStateSet( rStateSet );
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleFixedHyperlink::implGetLineBoundary( i18n::Boundary& rBoundary, sal_Int32 nIndex )
-{
- // TODO
- OCommonAccessibleText::implGetLineBoundary( rBoundary, nIndex );
-}
-
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleFixedHyperlink::getImplementationName() throw (uno::RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.toolkit.AccessibleFixedHyperlink") );
-}
-
-// -----------------------------------------------------------------------------
-
-uno::Sequence< ::rtl::OUString > VCLXAccessibleFixedHyperlink::getSupportedServiceNames() throw (uno::RuntimeException)
-{
- uno::Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleFixedHyperlink") );
- return aNames;
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessiblefixedtext.cxx b/accessibility/source/standard/vclxaccessiblefixedtext.cxx
deleted file mode 100644
index 95a32466d..000000000
--- a/accessibility/source/standard/vclxaccessiblefixedtext.cxx
+++ /dev/null
@@ -1,99 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-// includes --------------------------------------------------------------
-#include <accessibility/standard/vclxaccessiblefixedtext.hxx>
-
-#include <unotools/accessiblestatesethelper.hxx>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <vcl/fixed.hxx>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::accessibility;
-
-
-// -----------------------------------------------------------------------------
-// VCLXAccessibleFixedText
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleFixedText::VCLXAccessibleFixedText( VCLXWindow* pVCLWindow )
- :VCLXAccessibleTextComponent( pVCLWindow )
-{
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleFixedText::~VCLXAccessibleFixedText()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleFixedText::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
-{
- VCLXAccessibleTextComponent::FillAccessibleStateSet( rStateSet );
-
- if ( GetWindow() && GetWindow()->GetStyle() & WB_WORDBREAK )
- rStateSet.AddState( AccessibleStateType::MULTI_LINE );
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleFixedText::implGetLineBoundary( i18n::Boundary& rBoundary, sal_Int32 nIndex )
-{
- // TODO
- OCommonAccessibleText::implGetLineBoundary( rBoundary, nIndex );
-}
-
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleFixedText::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.toolkit.AccessibleFixedText") );
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< ::rtl::OUString > VCLXAccessibleFixedText::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleFixedText") );
- return aNames;
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessiblelist.cxx b/accessibility/source/standard/vclxaccessiblelist.cxx
deleted file mode 100644
index b63852896..000000000
--- a/accessibility/source/standard/vclxaccessiblelist.cxx
+++ /dev/null
@@ -1,851 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessiblelist.hxx>
-#include <accessibility/standard/vclxaccessiblelistitem.hxx>
-#include <accessibility/helper/listboxhelper.hxx>
-
-#include <unotools/accessiblestatesethelper.hxx>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <vcl/svapp.hxx>
-#include <vcl/combobox.hxx>
-#include <vcl/lstbox.hxx>
-#include <toolkit/helper/convert.hxx>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::accessibility;
-using namespace ::accessibility;
-
-namespace
-{
- void checkSelection_Impl( sal_Int32 _nIndex, const IComboListBoxHelper& _rListBox, sal_Bool bSelected )
- throw (::com::sun::star::lang::IndexOutOfBoundsException)
- {
- sal_Int32 nCount = bSelected ? (sal_Int32)_rListBox.GetSelectEntryCount()
- : (sal_Int32)_rListBox.GetEntryCount();
- if ( _nIndex < 0 || _nIndex >= nCount )
- throw ::com::sun::star::lang::IndexOutOfBoundsException();
- }
-}
-
-VCLXAccessibleList::VCLXAccessibleList (VCLXWindow* pVCLWindow, BoxType aBoxType,
- const Reference< XAccessible >& _xParent)
- : VCLXAccessibleComponent (pVCLWindow),
- m_aBoxType (aBoxType),
- m_nVisibleLineCount (0),
- m_nIndexInParent (DEFAULT_INDEX_IN_PARENT),
- m_nLastTopEntry ( 0 ),
- m_nLastSelectedPos ( LISTBOX_ENTRY_NOTFOUND ),
- m_bDisableProcessEvent ( false ),
- m_bVisible ( true ),
- m_xParent ( _xParent )
-{
- // Because combo boxes and list boxes don't have a common interface for
- // methods with identical signature we have to write down twice the
- // same code.
- switch (m_aBoxType)
- {
- case COMBOBOX:
- {
- ComboBox* pBox = static_cast<ComboBox*>(GetWindow());
- if ( pBox != NULL )
- m_pListBoxHelper = new VCLListBoxHelper<ComboBox> (*pBox);
- break;
- }
-
- case LISTBOX:
- {
- ListBox* pBox = static_cast<ListBox*>(GetWindow());
- if ( pBox != NULL )
- m_pListBoxHelper = new VCLListBoxHelper<ListBox> (*pBox);
- break;
- }
- }
- UpdateVisibleLineCount();
-
- sal_uInt16 nCount = static_cast<sal_uInt16>(getAccessibleChildCount());
- m_aAccessibleChildren.reserve(nCount);
-}
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleList::~VCLXAccessibleList (void)
-{
- delete m_pListBoxHelper;
-}
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleList::SetIndexInParent (sal_Int32 nIndex)
-{
- m_nIndexInParent = nIndex;
-}
-// -----------------------------------------------------------------------------
-
-void SAL_CALL VCLXAccessibleList::disposing (void)
-{
- VCLXAccessibleComponent::disposing();
-
- // Dispose all items in the list.
- clearItems();
-
- delete m_pListBoxHelper;
- m_pListBoxHelper = NULL;
-}
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleList::clearItems()
-{
- // Clear the list itself and delete all the rest.
- ListItems().swap(m_aAccessibleChildren); // clear and minimize
-}
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleList::FillAccessibleStateSet (utl::AccessibleStateSetHelper& rStateSet)
-{
- SolarMutexGuard aSolarGuard;
-
- VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
- // check if our list should be visible
- if ( m_pListBoxHelper
- && (m_pListBoxHelper->GetStyle() & WB_DROPDOWN ) == WB_DROPDOWN
- && !m_pListBoxHelper->IsInDropDown() )
- {
- rStateSet.RemoveState (AccessibleStateType::VISIBLE);
- rStateSet.RemoveState (AccessibleStateType::SHOWING);
- m_bVisible = false;
- }
-
- // Both the combo box and list box are handled identical in the
- // following but for some reason they don't have a common interface for
- // the methods used.
- if ( m_pListBoxHelper )
- {
- if ( m_pListBoxHelper->IsMultiSelectionEnabled() )
- rStateSet.AddState( AccessibleStateType::MULTI_SELECTABLE);
- rStateSet.AddState (AccessibleStateType::FOCUSABLE);
- // All children are transient.
- rStateSet.AddState (AccessibleStateType::MANAGES_DESCENDANTS);
- }
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleList::notifyVisibleStates(sal_Bool _bSetNew )
-{
- m_bVisible = _bSetNew ? true : false;
- Any aOldValue, aNewValue;
- (_bSetNew ? aNewValue : aOldValue ) <<= AccessibleStateType::VISIBLE;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- (_bSetNew ? aNewValue : aOldValue ) <<= AccessibleStateType::SHOWING;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
-
- ListItems::iterator aIter = m_aAccessibleChildren.begin();
- ListItems::iterator aEnd = m_aAccessibleChildren.end();
- UpdateVisibleLineCount();
- // adjust the index inside the VCLXAccessibleListItem
- for (;aIter != aEnd ; ++aIter)
- {
- Reference< XAccessible > xHold = *aIter;
- VCLXAccessibleListItem* pItem = static_cast<VCLXAccessibleListItem*>(xHold.get());
- if ( pItem )
- {
- sal_uInt16 nTopEntry = 0;
- if ( m_pListBoxHelper )
- nTopEntry = m_pListBoxHelper->GetTopEntry();
- sal_uInt16 nPos = (sal_uInt16)(aIter - m_aAccessibleChildren.begin());
- sal_Bool bVisible = ( nPos>=nTopEntry && nPos<( nTopEntry + m_nVisibleLineCount ) );
- pItem->SetVisible( m_bVisible && bVisible );
- }
-
- }
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleList::ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent)
-{
- // Create a reference to this object to prevent an early release of the
- // listbox (VCLEVENT_OBJECT_DYING).
- Reference< XAccessible > xTemp = this;
-
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_DROPDOWN_OPEN:
- notifyVisibleStates(sal_True);
- break;
- case VCLEVENT_DROPDOWN_CLOSE:
- notifyVisibleStates(sal_False);
- break;
- case VCLEVENT_LISTBOX_SCROLLED:
- case VCLEVENT_COMBOBOX_SCROLLED:
- UpdateEntryRange_Impl();
- break;
-
- case VCLEVENT_LISTBOX_SELECT:
- if ( !m_bDisableProcessEvent )
- UpdateSelection_Impl();
- break;
- // The selection events VCLEVENT_COMBOBOX_SELECT and
- // VCLEVENT_COMBOBOX_DESELECT are not handled here because here we
- // have no access to the edit field. Its text is necessary to
- // identify the currently selected item.
-
- case VCLEVENT_OBJECT_DYING:
- {
- dispose();
-
- VCLXAccessibleComponent::ProcessWindowEvent (rVclWindowEvent);
- break;
- }
-
- case VCLEVENT_LISTBOX_ITEMREMOVED:
- case VCLEVENT_COMBOBOX_ITEMREMOVED:
- HandleChangedItemList (false, reinterpret_cast<sal_IntPtr>(
- rVclWindowEvent.GetData()));
- break;
-
- case VCLEVENT_LISTBOX_ITEMADDED:
- case VCLEVENT_COMBOBOX_ITEMADDED:
- HandleChangedItemList (true, reinterpret_cast<sal_IntPtr>(
- rVclWindowEvent.GetData()));
- break;
- case VCLEVENT_CONTROL_GETFOCUS:
- VCLXAccessibleComponent::ProcessWindowEvent (rVclWindowEvent);
- if ( m_pListBoxHelper )
- {
- uno::Any aOldValue,
- aNewValue;
- sal_uInt16 nPos = m_pListBoxHelper->GetSelectEntryPos();
- if ( nPos == LISTBOX_ENTRY_NOTFOUND )
- nPos = m_pListBoxHelper->GetTopEntry();
- if ( nPos != LISTBOX_ENTRY_NOTFOUND )
- aNewValue <<= CreateChild(nPos);
-
- NotifyAccessibleEvent( AccessibleEventId::ACTIVE_DESCENDANT_CHANGED,
- aOldValue,
- aNewValue );
- }
- break;
-
- default:
- VCLXAccessibleComponent::ProcessWindowEvent (rVclWindowEvent);
- }
-}
-// -----------------------------------------------------------------------------
-
-/** To find out which item is currently selected and to update the SELECTED
- state of the associated accessibility objects accordingly we exploit the
- fact that the
-*/
-void VCLXAccessibleList::UpdateSelection (::rtl::OUString sTextOfSelectedItem)
-{
- if ( m_aBoxType == COMBOBOX )
- {
- ComboBox* pBox = static_cast<ComboBox*>(GetWindow());
- if ( pBox != NULL )
- {
- // Find the index of the selected item inside the VCL control...
- sal_uInt16 nIndex = pBox->GetEntryPos (XubString(sTextOfSelectedItem));
- // ...and then find the associated accessibility object.
- if ( nIndex == LISTBOX_ENTRY_NOTFOUND )
- nIndex = 0;
- UpdateSelection_Impl(nIndex);
- }
- }
-}
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleList::adjustEntriesIndexInParent(ListItems::iterator& _aBegin,::std::mem_fun_t<bool,VCLXAccessibleListItem>& _rMemFun)
-{
- ListItems::iterator aIter = _aBegin;
- ListItems::iterator aEnd = m_aAccessibleChildren.end();
- // adjust the index inside the VCLXAccessibleListItem
- for (;aIter != aEnd ; ++aIter)
- {
- Reference< XAccessible > xHold = *aIter;
- VCLXAccessibleListItem* pItem = static_cast<VCLXAccessibleListItem*>(xHold.get());
- if ( pItem )
- _rMemFun(pItem);
- }
-}
-// -----------------------------------------------------------------------------
-
-Reference<XAccessible> VCLXAccessibleList::CreateChild (sal_Int32 i)
-{
- Reference<XAccessible> xChild;
-
- sal_uInt16 nPos = static_cast<sal_uInt16>(i);
- if ( nPos >= m_aAccessibleChildren.size() )
- {
- m_aAccessibleChildren.resize(nPos + 1);
-
- // insert into the container
- xChild = new VCLXAccessibleListItem(m_pListBoxHelper, i, this);
- m_aAccessibleChildren[nPos] = xChild;
- }
- else
- {
- xChild = m_aAccessibleChildren[nPos];
- // check if position is empty and can be used else we have to adjust all entries behind this
- if ( xChild.is() )
- {
- ListItems::iterator aIter = m_aAccessibleChildren.begin() + nPos;
- ::std::mem_fun_t<bool, VCLXAccessibleListItem> aTemp(&VCLXAccessibleListItem::IncrementIndexInParent);
- adjustEntriesIndexInParent( aIter, aTemp);
- }
- else
- {
- xChild = new VCLXAccessibleListItem(m_pListBoxHelper, i, this);
- m_aAccessibleChildren[nPos] = xChild;
- }
- }
-
- if ( xChild.is() )
- {
- // Just add the SELECTED state.
- sal_Bool bNowSelected = sal_False;
- if ( m_pListBoxHelper )
- bNowSelected = m_pListBoxHelper->IsEntryPosSelected ((sal_uInt16)i);
- VCLXAccessibleListItem* pItem = static_cast< VCLXAccessibleListItem* >(xChild.get());
- pItem->SetSelected( bNowSelected );
-
- // Set the child's VISIBLE state.
- UpdateVisibleLineCount();
- sal_uInt16 nTopEntry = 0;
- if ( m_pListBoxHelper )
- nTopEntry = m_pListBoxHelper->GetTopEntry();
- sal_Bool bVisible = ( nPos>=nTopEntry && nPos<( nTopEntry + m_nVisibleLineCount ) );
- pItem->SetVisible( m_bVisible && bVisible );
- }
-
- return xChild;
-}
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleList::HandleChangedItemList (bool bItemInserted, sal_Int32 nIndex)
-{
- if ( !bItemInserted )
- {
- if ( nIndex == -1 ) // special handling here
- {
- clearItems();
- }
- else
- {
- if ( nIndex >= 0 && static_cast<sal_uInt16>(nIndex) < m_aAccessibleChildren.size() )
- {
- ListItems::iterator aIter = m_aAccessibleChildren.erase(m_aAccessibleChildren.begin()+nIndex);
- ::std::mem_fun_t<bool, VCLXAccessibleListItem> aTemp(&VCLXAccessibleListItem::DecrementIndexInParent);
- adjustEntriesIndexInParent( aIter, aTemp );
- }
- }
- }
- else
- getAccessibleChild(nIndex);
-
- NotifyAccessibleEvent (
- AccessibleEventId::INVALIDATE_ALL_CHILDREN,
- Any(), Any());
-}
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XINTERFACE2(VCLXAccessibleList, VCLXAccessibleComponent, VCLXAccessibleList_BASE)
-IMPLEMENT_FORWARD_XTYPEPROVIDER2(VCLXAccessibleList, VCLXAccessibleComponent, VCLXAccessibleList_BASE)
-
-//===== XAccessible =========================================================
-
-Reference<XAccessibleContext> SAL_CALL
- VCLXAccessibleList::getAccessibleContext (void)
- throw (RuntimeException)
-{
- return this;
-}
-// -----------------------------------------------------------------------------
-
-//===== XAccessibleContext ==================================================
-
-sal_Int32 SAL_CALL VCLXAccessibleList::getAccessibleChildCount (void)
- throw (RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- sal_Int32 nCount = 0;
- if ( m_pListBoxHelper )
- nCount = m_pListBoxHelper->GetEntryCount();
-
- return nCount;
-}
-// -----------------------------------------------------------------------------
-
-Reference<XAccessible> SAL_CALL VCLXAccessibleList::getAccessibleChild (sal_Int32 i)
- throw (IndexOutOfBoundsException, RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- if ( i < 0 || i >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- Reference< XAccessible > xChild;
- // search for the child
- if ( static_cast<sal_uInt16>(i) >= m_aAccessibleChildren.size() )
- xChild = CreateChild (i);
- else
- {
- xChild = m_aAccessibleChildren[i];
- if ( !xChild.is() )
- xChild = CreateChild (i);
- }
- OSL_ENSURE( xChild.is(), "VCLXAccessibleList::getAccessibleChild: returning empty child!" );
- return xChild;
-}
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > SAL_CALL VCLXAccessibleList::getAccessibleParent( )
- throw (RuntimeException)
-{
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- return m_xParent;
-}
-// -----------------------------------------------------------------------------
-
-sal_Int32 SAL_CALL VCLXAccessibleList::getAccessibleIndexInParent (void)
- throw (::com::sun::star::uno::RuntimeException)
-{
- if (m_nIndexInParent != DEFAULT_INDEX_IN_PARENT)
- return m_nIndexInParent;
- else
- return VCLXAccessibleComponent::getAccessibleIndexInParent();
-}
-// -----------------------------------------------------------------------------
-
-sal_Int16 SAL_CALL VCLXAccessibleList::getAccessibleRole (void)
- throw (RuntimeException)
-{
- return AccessibleRole::LIST;
-}
-// -----------------------------------------------------------------------------
-
-//===== XAccessibleComponent ================================================
-
-sal_Bool SAL_CALL VCLXAccessibleList::contains( const awt::Point& rPoint ) throw (RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- sal_Bool bInside = sal_False;
-
- Window* pListBox = GetWindow();
- if ( pListBox )
- {
- Rectangle aRect( Point(0,0), pListBox->GetSizePixel() );
- bInside = aRect.IsInside( VCLPoint( rPoint ) );
- }
-
- return bInside;
-}
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > SAL_CALL VCLXAccessibleList::getAccessibleAt( const awt::Point& rPoint )
- throw (RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- Reference< XAccessible > xChild;
- if ( m_pListBoxHelper )
- {
- UpdateVisibleLineCount();
- if ( contains( rPoint ) && m_nVisibleLineCount > 0 )
- {
- Point aPos = VCLPoint( rPoint );
- sal_uInt16 nEndPos = m_pListBoxHelper->GetTopEntry() + (sal_uInt16)m_nVisibleLineCount;
- for ( sal_uInt16 i = m_pListBoxHelper->GetTopEntry(); i < nEndPos; ++i )
- {
- if ( m_pListBoxHelper->GetBoundingRectangle(i).IsInside( aPos ) )
- {
- xChild = getAccessibleChild(i);
- break;
- }
- }
- }
- }
-
- return xChild;
-}
-// -----------------------------------------------------------------------------
-
-//===== XServiceInfo ==========================================================
-
-::rtl::OUString VCLXAccessibleList::getImplementationName (void)
- throw (RuntimeException)
-{
- return ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.toolkit.AccessibleList"));
-}
-// -----------------------------------------------------------------------------
-
-Sequence< ::rtl::OUString > VCLXAccessibleList::getSupportedServiceNames (void)
- throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames = VCLXAccessibleComponent::getSupportedServiceNames();
- sal_Int32 nLength = aNames.getLength();
- aNames.realloc( nLength + 1 );
- aNames[nLength] = ::rtl::OUString(RTL_CONSTASCII_USTRINGPARAM("com.sun.star.accessibility.AccessibleList"));
- return aNames;
-}
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleList::UpdateVisibleLineCount()
-{
- if ( m_pListBoxHelper )
- {
- if ( (m_pListBoxHelper->GetStyle() & WB_DROPDOWN ) == WB_DROPDOWN )
- m_nVisibleLineCount = m_pListBoxHelper->GetDisplayLineCount();
- else
- {
- sal_uInt16 nCols = 0,
- nLines = 0;
- m_pListBoxHelper->GetMaxVisColumnsAndLines (nCols, nLines);
- m_nVisibleLineCount = nLines;
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-void VCLXAccessibleList::UpdateEntryRange_Impl()
-{
- SolarMutexGuard aSolarGuard;
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- sal_Int32 nTop = m_nLastTopEntry;
-
- if ( m_pListBoxHelper )
- nTop = m_pListBoxHelper->GetTopEntry();
- if ( nTop != m_nLastTopEntry )
- {
- UpdateVisibleLineCount();
- sal_Int32 nBegin = Min( m_nLastTopEntry, nTop );
- sal_Int32 nEnd = Max( m_nLastTopEntry + m_nVisibleLineCount, nTop + m_nVisibleLineCount );
- for (sal_uInt16 i = static_cast<sal_uInt16>(nBegin); (i <= static_cast<sal_uInt16>(nEnd)); ++i)
- {
- sal_Bool bVisible = ( i >= nTop && i < ( nTop + m_nVisibleLineCount ) );
- Reference< XAccessible > xHold;
- if ( i < m_aAccessibleChildren.size() )
- xHold = m_aAccessibleChildren[i];
- else if ( bVisible )
- xHold = CreateChild(i);
-
- if ( xHold.is() )
- static_cast< VCLXAccessibleListItem* >( xHold.get() )->SetVisible( m_bVisible && bVisible );
- }
- }
-
- m_nLastTopEntry = nTop;
-}
-// -----------------------------------------------------------------------------
-sal_Bool VCLXAccessibleList::checkEntrySelected(sal_uInt16 _nPos,Any& _rNewValue,Reference< XAccessible >& _rxNewAcc)
-{
- OSL_ENSURE(m_pListBoxHelper,"Helper is not valid!");
- sal_Bool bNowSelected = sal_False;
- if ( m_pListBoxHelper )
- {
- bNowSelected = m_pListBoxHelper->IsEntryPosSelected (_nPos);
- if ( bNowSelected )
- {
- _rxNewAcc = CreateChild(_nPos);
- _rNewValue <<= _rxNewAcc;
- }
- }
- return bNowSelected;
-}
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleList::UpdateSelection_Impl(sal_uInt16)
-{
- uno::Any aOldValue, aNewValue;
-
- {
- SolarMutexGuard aSolarGuard;
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
- Reference< XAccessible > xNewAcc;
-
- if ( m_pListBoxHelper )
- {
- sal_uInt16 i=0;
- for ( ListItems::iterator aIter = m_aAccessibleChildren.begin();
- aIter != m_aAccessibleChildren.end(); ++aIter,++i)
- {
- Reference< XAccessible > xHold = *aIter;
- if ( xHold.is() )
- {
- VCLXAccessibleListItem* pItem = static_cast< VCLXAccessibleListItem* >( xHold.get() );
- // Retrieve the item's index from the list entry.
- sal_Bool bNowSelected = m_pListBoxHelper->IsEntryPosSelected (i);
-
- if ( bNowSelected && !pItem->IsSelected() )
- {
- xNewAcc = *aIter;
- aNewValue <<= xNewAcc;
- }
- else if ( pItem->IsSelected() )
- m_nLastSelectedPos = i;
-
- pItem->SetSelected( bNowSelected );
- }
- else
- { // it could happen that a child was not created before
- checkEntrySelected(i,aNewValue,xNewAcc);
- }
- }
- sal_uInt16 nCount = m_pListBoxHelper->GetEntryCount();
- if ( i < nCount ) // here we have to check the if any other listbox entry is selected
- {
- for (; i < nCount && !checkEntrySelected(i,aNewValue,xNewAcc) ;++i )
- ;
- }
- if ( xNewAcc.is() && GetWindow()->HasFocus() )
- {
- if ( m_nLastSelectedPos != LISTBOX_ENTRY_NOTFOUND )
- aOldValue <<= getAccessibleChild( (sal_Int32)m_nLastSelectedPos );
- aNewValue <<= xNewAcc;
- }
- }
- }
-
- if ( aNewValue.hasValue() || aOldValue.hasValue() )
- NotifyAccessibleEvent(
- AccessibleEventId::ACTIVE_DESCENDANT_CHANGED,
- aOldValue,
- aNewValue );
-
- NotifyAccessibleEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleSelection
-// -----------------------------------------------------------------------------
-void SAL_CALL VCLXAccessibleList::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- sal_Bool bNotify = sal_False;
-
- {
- SolarMutexGuard aSolarGuard;
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- if ( m_pListBoxHelper )
- {
- checkSelection_Impl(nChildIndex,*m_pListBoxHelper,sal_False);
-
- m_pListBoxHelper->SelectEntryPos( (sal_uInt16)nChildIndex, sal_True );
- // call the select handler, don't handle events in this time
- m_bDisableProcessEvent = true;
- m_pListBoxHelper->Select();
- m_bDisableProcessEvent = false;
- bNotify = sal_True;
- }
- }
-
- if ( bNotify )
- UpdateSelection_Impl();
-}
-// -----------------------------------------------------------------------------
-sal_Bool SAL_CALL VCLXAccessibleList::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- sal_Bool bRet = sal_False;
- if ( m_pListBoxHelper )
- {
- checkSelection_Impl(nChildIndex,*m_pListBoxHelper,sal_False);
-
- bRet = m_pListBoxHelper->IsEntryPosSelected( (sal_uInt16)nChildIndex );
- }
- return bRet;
-}
-// -----------------------------------------------------------------------------
-void SAL_CALL VCLXAccessibleList::clearAccessibleSelection( ) throw (RuntimeException)
-{
- sal_Bool bNotify = sal_False;
-
- {
- SolarMutexGuard aSolarGuard;
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- if ( m_pListBoxHelper )
- {
- m_pListBoxHelper->SetNoSelection();
- bNotify = sal_True;
- }
- }
-
- if ( bNotify )
- UpdateSelection_Impl();
-}
-// -----------------------------------------------------------------------------
-void SAL_CALL VCLXAccessibleList::selectAllAccessibleChildren( ) throw (RuntimeException)
-{
- sal_Bool bNotify = sal_False;
-
- {
- SolarMutexGuard aSolarGuard;
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- if ( m_pListBoxHelper )
- {
- sal_uInt16 nCount = m_pListBoxHelper->GetEntryCount();
- for ( sal_uInt16 i = 0; i < nCount; ++i )
- m_pListBoxHelper->SelectEntryPos( i, sal_True );
- // call the select handler, don't handle events in this time
- m_bDisableProcessEvent = true;
- m_pListBoxHelper->Select();
- m_bDisableProcessEvent = false;
- bNotify = sal_True;
- }
- }
-
- if ( bNotify )
- UpdateSelection_Impl();
-}
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL VCLXAccessibleList::getSelectedAccessibleChildCount( ) throw (RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- sal_Int32 nCount = 0;
- if ( m_pListBoxHelper )
- nCount = m_pListBoxHelper->GetSelectEntryCount();
- return nCount;
-}
-// -----------------------------------------------------------------------------
-Reference< XAccessible > SAL_CALL VCLXAccessibleList::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- if ( m_pListBoxHelper )
- {
- checkSelection_Impl(nSelectedChildIndex,*m_pListBoxHelper,sal_True);
- return getAccessibleChild( (sal_Int32)m_pListBoxHelper->GetSelectEntryPos( (sal_uInt16)nSelectedChildIndex ) );
- }
-
- return NULL;
-}
-// -----------------------------------------------------------------------------
-void SAL_CALL VCLXAccessibleList::deselectAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- sal_Bool bNotify = sal_False;
-
- {
- SolarMutexGuard aSolarGuard;
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- if ( m_pListBoxHelper )
- {
- checkSelection_Impl(nSelectedChildIndex,*m_pListBoxHelper,sal_False);
-
- m_pListBoxHelper->SelectEntryPos( (sal_uInt16)nSelectedChildIndex, sal_False );
- // call the select handler, don't handle events in this time
- m_bDisableProcessEvent = true;
- m_pListBoxHelper->Select();
- m_bDisableProcessEvent = false;
- bNotify = sal_True;
- }
- }
-
- if ( bNotify )
- UpdateSelection_Impl();
-}
-// -----------------------------------------------------------------------------
-awt::Rectangle VCLXAccessibleList::implGetBounds() throw (uno::RuntimeException)
-{
- awt::Rectangle aBounds ( 0, 0, 0, 0 );
- if ( m_pListBoxHelper
- && (m_pListBoxHelper->GetStyle() & WB_DROPDOWN ) == WB_DROPDOWN )
- {
- if ( m_pListBoxHelper->IsInDropDown() )
- aBounds = AWTRectangle(m_pListBoxHelper->GetDropDownPosSizePixel());
- }
- else
- {
- // a list has the same bounds as his parent but starts at (0,0)
- aBounds = VCLXAccessibleComponent::implGetBounds();
- aBounds.X = 0;
- aBounds.Y = 0;
- if ( m_aBoxType == COMBOBOX )
- {
- ComboBox* pBox = static_cast<ComboBox*>(GetWindow());
- if ( pBox )
- {
- Size aSize = pBox->GetSubEdit()->GetSizePixel();
- aBounds.X += aSize.Height();
- aBounds.Y += aSize.Width();
- aBounds.Height -= aSize.Height();
- aBounds.Width -= aSize.Width();
- }
- }
- }
- return aBounds;
-}
-// -----------------------------------------------------------------------------
-
-awt::Point VCLXAccessibleList::getLocationOnScreen( ) throw (uno::RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- awt::Point aPos;
- if ( m_pListBoxHelper
- && (m_pListBoxHelper->GetStyle() & WB_DROPDOWN ) == WB_DROPDOWN )
- {
- if ( m_pListBoxHelper->IsInDropDown() )
- aPos = AWTPoint(m_pListBoxHelper->GetDropDownPosSizePixel().TopLeft());
- }
- else
- {
- aPos = VCLXAccessibleComponent::getLocationOnScreen();
- if ( m_aBoxType == COMBOBOX )
- {
- ComboBox* pBox = static_cast<ComboBox*>(GetWindow());
- if ( pBox )
- {
- aPos.X += pBox->GetSubEdit()->GetSizePixel().Height();
- aPos.Y += pBox->GetSubEdit()->GetSizePixel().Width();
- }
- }
- }
- return aPos;
-}
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessiblelistbox.cxx b/accessibility/source/standard/vclxaccessiblelistbox.cxx
deleted file mode 100644
index a63063c1e..000000000
--- a/accessibility/source/standard/vclxaccessiblelistbox.cxx
+++ /dev/null
@@ -1,110 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessiblelistbox.hxx>
-#include <accessibility/standard/vclxaccessiblelistitem.hxx>
-#include <accessibility/helper/listboxhelper.hxx>
-
-#include <algorithm>
-
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <tools/debug.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/lstbox.hxx>
-#include <vcl/unohelp.hxx>
-
-#include <toolkit/awt/vclxwindow.hxx>
-#include <toolkit/helper/convert.hxx>
-
-#include <comphelper/sequence.hxx>
-#include <cppuhelper/typeprovider.hxx>
-#include <unotools/accessiblestatesethelper.hxx>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::accessibility;
-
-VCLXAccessibleListBox::VCLXAccessibleListBox (VCLXWindow* pVCLWindow)
- : VCLXAccessibleBox (pVCLWindow, VCLXAccessibleBox::LISTBOX, false)
-{
-}
-
-
-
-
-VCLXAccessibleListBox::~VCLXAccessibleListBox (void)
-{
-}
-
-
-
-
-bool VCLXAccessibleListBox::IsValid (void) const
-{
- return static_cast<ListBox*>(GetWindow()) != NULL;
-
-}
-
-
-
-
-void VCLXAccessibleListBox::ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent)
-{
- VCLXAccessibleBox::ProcessWindowEvent( rVclWindowEvent );
-}
-
-
-
-
-//===== XServiceInfo ========================================================
-
-::rtl::OUString VCLXAccessibleListBox::getImplementationName (void)
- throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.toolkit.AccessibleListBox" ));
-}
-
-
-
-
-Sequence< ::rtl::OUString > VCLXAccessibleListBox::getSupportedServiceNames (void)
- throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames = VCLXAccessibleBox::getSupportedServiceNames();
- sal_Int32 nLength = aNames.getLength();
- aNames.realloc( nLength + 1 );
- aNames[nLength] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleListBox" ));
- return aNames;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessiblelistitem.cxx b/accessibility/source/standard/vclxaccessiblelistitem.cxx
deleted file mode 100644
index b21b75f54..000000000
--- a/accessibility/source/standard/vclxaccessiblelistitem.cxx
+++ /dev/null
@@ -1,677 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessiblelistitem.hxx>
-#include <toolkit/helper/convert.hxx>
-#include <accessibility/helper/listboxhelper.hxx>
-#include <com/sun/star/awt/Point.hpp>
-#include <com/sun/star/awt/Rectangle.hpp>
-#include <com/sun/star/awt/Size.hpp>
-
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
-#include <com/sun/star/datatransfer/clipboard/XFlushableClipboard.hpp>
-#include <tools/debug.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/controllayout.hxx>
-#include <vcl/unohelp2.hxx>
-#include <toolkit/awt/vclxwindow.hxx>
-#include <unotools/accessiblestatesethelper.hxx>
-#include <unotools/accessiblerelationsethelper.hxx>
-#include <cppuhelper/typeprovider.hxx>
-#include <comphelper/sequence.hxx>
-#include <comphelper/accessibleeventnotifier.hxx>
-
-namespace
-{
- void checkIndex_Impl( sal_Int32 _nIndex, const ::rtl::OUString& _sText ) throw (::com::sun::star::lang::IndexOutOfBoundsException)
- {
- if ( _nIndex < 0 || _nIndex > _sText.getLength() )
- throw ::com::sun::star::lang::IndexOutOfBoundsException();
- }
-}
-
-// class VCLXAccessibleListItem ------------------------------------------
-
-using namespace ::com::sun::star::accessibility;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star;
-
-DBG_NAME(VCLXAccessibleListItem)
-
-// -----------------------------------------------------------------------------
-// Ctor() and Dtor()
-// -----------------------------------------------------------------------------
-VCLXAccessibleListItem::VCLXAccessibleListItem( ::accessibility::IComboListBoxHelper* _pListBoxHelper, sal_Int32 _nIndexInParent, const Reference< XAccessible >& _xParent ) :
-
- VCLXAccessibleListItem_BASE ( m_aMutex ),
-
- m_nIndexInParent( _nIndexInParent ),
- m_bSelected ( sal_False ),
- m_bVisible ( sal_False ),
- m_nClientId ( 0 ),
- m_pListBoxHelper( _pListBoxHelper ),
- m_xParent ( _xParent )
-
-{
- DBG_CTOR( VCLXAccessibleListItem, NULL );
-
- if ( m_xParent.is() )
- m_xParentContext = m_xParent->getAccessibleContext();
-
- if ( m_pListBoxHelper )
- m_sEntryText = m_pListBoxHelper->GetEntry( (sal_uInt16)_nIndexInParent );
-}
-// -----------------------------------------------------------------------------
-VCLXAccessibleListItem::~VCLXAccessibleListItem()
-{
- DBG_DTOR( VCLXAccessibleListItem, NULL );
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleListItem::SetSelected( sal_Bool _bSelected )
-{
- if ( m_bSelected != _bSelected )
- {
- Any aOldValue;
- Any aNewValue;
- if ( m_bSelected )
- aOldValue <<= AccessibleStateType::SELECTED;
- else
- aNewValue <<= AccessibleStateType::SELECTED;
- m_bSelected = _bSelected;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleListItem::SetVisible( sal_Bool _bVisible )
-{
- if ( m_bVisible != _bVisible )
- {
- Any aOldValue, aNewValue;
- m_bVisible = _bVisible;
- (_bVisible ? aNewValue : aOldValue ) <<= AccessibleStateType::VISIBLE;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- (_bVisible ? aNewValue : aOldValue ) <<= AccessibleStateType::SHOWING;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleListItem::NotifyAccessibleEvent( sal_Int16 _nEventId,
- const ::com::sun::star::uno::Any& _aOldValue,
- const ::com::sun::star::uno::Any& _aNewValue )
-{
- AccessibleEventObject aEvt;
- aEvt.Source = *this;
- aEvt.EventId = _nEventId;
- aEvt.OldValue = _aOldValue;
- aEvt.NewValue = _aNewValue;
-
- if (m_nClientId)
- comphelper::AccessibleEventNotifier::addEvent( m_nClientId, aEvt );
-}
-// -----------------------------------------------------------------------------
-// OCommonAccessibleText
-// -----------------------------------------------------------------------------
-::rtl::OUString VCLXAccessibleListItem::implGetText()
-{
- return m_sEntryText;
-}
-// -----------------------------------------------------------------------------
-Locale VCLXAccessibleListItem::implGetLocale()
-{
- return Application::GetSettings().GetLocale();
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleListItem::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
-{
- nStartIndex = 0;
- nEndIndex = 0;
-}
-// -----------------------------------------------------------------------------
-// XInterface
-// -----------------------------------------------------------------------------
-Any SAL_CALL VCLXAccessibleListItem::queryInterface( Type const & rType ) throw (RuntimeException)
-{
- return VCLXAccessibleListItem_BASE::queryInterface( rType );
-}
-// -----------------------------------------------------------------------------
-void SAL_CALL VCLXAccessibleListItem::acquire() throw ()
-{
- VCLXAccessibleListItem_BASE::acquire();
-}
-// -----------------------------------------------------------------------------
-void SAL_CALL VCLXAccessibleListItem::release() throw ()
-{
- VCLXAccessibleListItem_BASE::release();
-}
-// -----------------------------------------------------------------------------
-// XTypeProvider
-// -----------------------------------------------------------------------------
-Sequence< Type > SAL_CALL VCLXAccessibleListItem::getTypes( ) throw (RuntimeException)
-{
- return VCLXAccessibleListItem_BASE::getTypes();
-}
-// -----------------------------------------------------------------------------
-Sequence< sal_Int8 > VCLXAccessibleListItem::getImplementationId() throw (RuntimeException)
-{
- static ::cppu::OImplementationId* pId = NULL;
-
- if ( !pId )
- {
- ::osl::Guard< ::osl::Mutex > aGuard( m_aMutex );
-
- if ( !pId )
- {
- static ::cppu::OImplementationId aId;
- pId = &aId;
- }
- }
- return pId->getImplementationId();
-}
-// -----------------------------------------------------------------------------
-// XComponent
-// -----------------------------------------------------------------------------
-void SAL_CALL VCLXAccessibleListItem::disposing()
-{
- comphelper::AccessibleEventNotifier::TClientId nId( 0 );
- Reference< XInterface > xEventSource;
- {
- ::osl::MutexGuard aGuard( m_aMutex );
-
- VCLXAccessibleListItem_BASE::disposing();
- m_sEntryText = ::rtl::OUString();
- m_pListBoxHelper = NULL;
- m_xParent = NULL;
- m_xParentContext = NULL;
-
- nId = m_nClientId;
- m_nClientId = 0;
- if ( nId )
- xEventSource = *this;
- }
-
- // Send a disposing to all listeners.
- if ( nId )
- comphelper::AccessibleEventNotifier::revokeClientNotifyDisposing( nId, *this );
-}
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-::rtl::OUString VCLXAccessibleListItem::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.toolkit.AccessibleListItem" ));
-}
-// -----------------------------------------------------------------------------
-sal_Bool VCLXAccessibleListItem::supportsService( const ::rtl::OUString& rServiceName ) throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames( getSupportedServiceNames() );
- const ::rtl::OUString* pNames = aNames.getConstArray();
- const ::rtl::OUString* pEnd = pNames + aNames.getLength();
- for ( ; pNames != pEnd && !pNames->equals( rServiceName ); ++pNames )
- ;
-
- return pNames != pEnd;
-}
-// -----------------------------------------------------------------------------
-Sequence< ::rtl::OUString > VCLXAccessibleListItem::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames(3);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleContext" ));
- aNames[1] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleComponent" ));
- aNames[2] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleListItem" ));
- return aNames;
-}
-// -----------------------------------------------------------------------------
-// XAccessible
-// -----------------------------------------------------------------------------
-Reference< XAccessibleContext > SAL_CALL VCLXAccessibleListItem::getAccessibleContext( ) throw (RuntimeException)
-{
- return this;
-}
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL VCLXAccessibleListItem::getAccessibleChildCount( ) throw (RuntimeException)
-{
- return 0;
-}
-// -----------------------------------------------------------------------------
-Reference< XAccessible > SAL_CALL VCLXAccessibleListItem::getAccessibleChild( sal_Int32 ) throw (RuntimeException)
-{
- return Reference< XAccessible >();
-}
-// -----------------------------------------------------------------------------
-Reference< XAccessible > SAL_CALL VCLXAccessibleListItem::getAccessibleParent( ) throw (RuntimeException)
-{
- ::osl::MutexGuard aGuard( m_aMutex );
-
- return m_xParent;
-}
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL VCLXAccessibleListItem::getAccessibleIndexInParent( ) throw (RuntimeException)
-{
- ::osl::MutexGuard aGuard( m_aMutex );
- return m_nIndexInParent;
-}
-// -----------------------------------------------------------------------------
-sal_Int16 SAL_CALL VCLXAccessibleListItem::getAccessibleRole( ) throw (RuntimeException)
-{
- return AccessibleRole::LIST_ITEM;
- // return AccessibleRole::LABEL;
-}
-// -----------------------------------------------------------------------------
-::rtl::OUString SAL_CALL VCLXAccessibleListItem::getAccessibleDescription( ) throw (RuntimeException)
-{
- // no description for every item
- return ::rtl::OUString();
-}
-// -----------------------------------------------------------------------------
-::rtl::OUString SAL_CALL VCLXAccessibleListItem::getAccessibleName( ) throw (RuntimeException)
-{
- ::osl::MutexGuard aGuard( m_aMutex );
-
- // entry text == accessible name
- return implGetText();
-}
-// -----------------------------------------------------------------------------
-Reference< XAccessibleRelationSet > SAL_CALL VCLXAccessibleListItem::getAccessibleRelationSet( ) throw (RuntimeException)
-{
- utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
- Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
- return xSet;
-}
-// -----------------------------------------------------------------------------
-Reference< XAccessibleStateSet > SAL_CALL VCLXAccessibleListItem::getAccessibleStateSet( ) throw (RuntimeException)
-{
- ::osl::MutexGuard aGuard( m_aMutex );
-
- utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
- Reference< XAccessibleStateSet > xStateSet = pStateSetHelper;
-
- if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
- {
- pStateSetHelper->AddState( AccessibleStateType::TRANSIENT );
- pStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
- pStateSetHelper->AddState( AccessibleStateType::ENABLED );
- pStateSetHelper->AddState( AccessibleStateType::SENSITIVE );
- if ( m_bSelected )
- pStateSetHelper->AddState( AccessibleStateType::SELECTED );
- if ( m_bVisible )
- {
- pStateSetHelper->AddState( AccessibleStateType::VISIBLE );
- pStateSetHelper->AddState( AccessibleStateType::SHOWING );
- }
- }
- else
- pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
-
- return xStateSet;
-}
-// -----------------------------------------------------------------------------
-Locale SAL_CALL VCLXAccessibleListItem::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- return implGetLocale();
-}
-// -----------------------------------------------------------------------------
-// XAccessibleComponent
-// -----------------------------------------------------------------------------
-sal_Bool SAL_CALL VCLXAccessibleListItem::containsPoint( const awt::Point& _aPoint ) throw (RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- sal_Bool bInside = sal_False;
- if ( m_pListBoxHelper )
- {
- Rectangle aRect( m_pListBoxHelper->GetBoundingRectangle( (sal_uInt16)m_nIndexInParent ) );
- aRect.Move(-aRect.TopLeft().X(),-aRect.TopLeft().Y());
- bInside = aRect.IsInside( VCLPoint( _aPoint ) );
- }
- return bInside;
-}
-// -----------------------------------------------------------------------------
-Reference< XAccessible > SAL_CALL VCLXAccessibleListItem::getAccessibleAtPoint( const awt::Point& ) throw (RuntimeException)
-{
- return Reference< XAccessible >();
-}
-// -----------------------------------------------------------------------------
-awt::Rectangle SAL_CALL VCLXAccessibleListItem::getBounds( ) throw (RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- awt::Rectangle aRect;
- if ( m_pListBoxHelper )
- aRect = AWTRectangle( m_pListBoxHelper->GetBoundingRectangle( (sal_uInt16)m_nIndexInParent ) );
-
- return aRect;
-}
-// -----------------------------------------------------------------------------
-awt::Point SAL_CALL VCLXAccessibleListItem::getLocation( ) throw (RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- Point aPoint(0,0);
- if ( m_pListBoxHelper )
- {
- Rectangle aRect = m_pListBoxHelper->GetBoundingRectangle( (sal_uInt16)m_nIndexInParent );
- aPoint = aRect.TopLeft();
- }
- return AWTPoint( aPoint );
-}
-// -----------------------------------------------------------------------------
-awt::Point SAL_CALL VCLXAccessibleListItem::getLocationOnScreen( ) throw (RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- Point aPoint(0,0);
- if ( m_pListBoxHelper )
- {
- Rectangle aRect = m_pListBoxHelper->GetBoundingRectangle( (sal_uInt16)m_nIndexInParent );
- aPoint = aRect.TopLeft();
- aPoint += m_pListBoxHelper->GetWindowExtentsRelative( NULL ).TopLeft();
- }
- return AWTPoint( aPoint );
-}
-// -----------------------------------------------------------------------------
-awt::Size SAL_CALL VCLXAccessibleListItem::getSize( ) throw (RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- Size aSize;
- if ( m_pListBoxHelper )
- aSize = m_pListBoxHelper->GetBoundingRectangle( (sal_uInt16)m_nIndexInParent ).GetSize();
-
- return AWTSize( aSize );
-}
-// -----------------------------------------------------------------------------
-void SAL_CALL VCLXAccessibleListItem::grabFocus( ) throw (RuntimeException)
-{
- // no focus for each item
-}
-// -----------------------------------------------------------------------------
-// XAccessibleText
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL VCLXAccessibleListItem::getCaretPosition() throw (RuntimeException)
-{
- return -1;
-}
-// -----------------------------------------------------------------------------
-sal_Bool SAL_CALL VCLXAccessibleListItem::setCaretPosition( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
-}
-// -----------------------------------------------------------------------------
-sal_Unicode SAL_CALL VCLXAccessibleListItem::getCharacter( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- return OCommonAccessibleText::getCharacter( nIndex );
-}
-// -----------------------------------------------------------------------------
-Sequence< PropertyValue > SAL_CALL VCLXAccessibleListItem::getCharacterAttributes( sal_Int32 nIndex, const Sequence< ::rtl::OUString >& ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- ::rtl::OUString sText( implGetText() );
- if ( !implIsValidIndex( nIndex, sText.getLength() ) )
- throw IndexOutOfBoundsException();
-
- return Sequence< PropertyValue >();
-}
-// -----------------------------------------------------------------------------
-awt::Rectangle SAL_CALL VCLXAccessibleListItem::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- ::rtl::OUString sText( implGetText() );
- if ( !implIsValidIndex( nIndex, sText.getLength() ) )
- throw IndexOutOfBoundsException();
-
- awt::Rectangle aBounds( 0, 0, 0, 0 );
- if ( m_pListBoxHelper )
- {
- Rectangle aCharRect = m_pListBoxHelper->GetEntryCharacterBounds( m_nIndexInParent, nIndex );
- Rectangle aItemRect = m_pListBoxHelper->GetBoundingRectangle( (sal_uInt16)m_nIndexInParent );
- aCharRect.Move( -aItemRect.Left(), -aItemRect.Top() );
- aBounds = AWTRectangle( aCharRect );
- }
-
- return aBounds;
-}
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL VCLXAccessibleListItem::getCharacterCount() throw (RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- return OCommonAccessibleText::getCharacterCount();
-}
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL VCLXAccessibleListItem::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- sal_Int32 nIndex = -1;
- if ( m_pListBoxHelper )
- {
- sal_uInt16 nPos = LISTBOX_ENTRY_NOTFOUND;
- Rectangle aItemRect = m_pListBoxHelper->GetBoundingRectangle( (sal_uInt16)m_nIndexInParent );
- Point aPnt( VCLPoint( aPoint ) );
- aPnt += aItemRect.TopLeft();
- sal_Int32 nI = m_pListBoxHelper->GetIndexForPoint( aPnt, nPos );
- if ( nI != -1 && (sal_uInt16)m_nIndexInParent == nPos )
- nIndex = nI;
- }
- return nIndex;
-}
-// -----------------------------------------------------------------------------
-::rtl::OUString SAL_CALL VCLXAccessibleListItem::getSelectedText() throw (RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- return OCommonAccessibleText::getSelectedText();
-}
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL VCLXAccessibleListItem::getSelectionStart() throw (RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- return OCommonAccessibleText::getSelectionStart();
-}
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL VCLXAccessibleListItem::getSelectionEnd() throw (RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- return OCommonAccessibleText::getSelectionEnd();
-}
-// -----------------------------------------------------------------------------
-sal_Bool SAL_CALL VCLXAccessibleListItem::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
-}
-// -----------------------------------------------------------------------------
-::rtl::OUString SAL_CALL VCLXAccessibleListItem::getText() throw (RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- return OCommonAccessibleText::getText();
-}
-// -----------------------------------------------------------------------------
-::rtl::OUString SAL_CALL VCLXAccessibleListItem::getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- return OCommonAccessibleText::getTextRange( nStartIndex, nEndIndex );
-}
-// -----------------------------------------------------------------------------
-::com::sun::star::accessibility::TextSegment SAL_CALL VCLXAccessibleListItem::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- return OCommonAccessibleText::getTextAtIndex( nIndex, aTextType );
-}
-// -----------------------------------------------------------------------------
-::com::sun::star::accessibility::TextSegment SAL_CALL VCLXAccessibleListItem::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- return OCommonAccessibleText::getTextBeforeIndex( nIndex, aTextType );
-}
-// -----------------------------------------------------------------------------
-::com::sun::star::accessibility::TextSegment SAL_CALL VCLXAccessibleListItem::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- return OCommonAccessibleText::getTextBehindIndex( nIndex, aTextType );
-}
-// -----------------------------------------------------------------------------
-sal_Bool SAL_CALL VCLXAccessibleListItem::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- SolarMutexGuard aSolarGuard;
- ::osl::MutexGuard aGuard( m_aMutex );
-
- checkIndex_Impl( nStartIndex, m_sEntryText );
- checkIndex_Impl( nEndIndex, m_sEntryText );
-
- sal_Bool bRet = sal_False;
- if ( m_pListBoxHelper )
- {
- Reference< datatransfer::clipboard::XClipboard > xClipboard = m_pListBoxHelper->GetClipboard();
- if ( xClipboard.is() )
- {
- ::rtl::OUString sText( getTextRange( nStartIndex, nEndIndex ) );
- ::vcl::unohelper::TextDataObject* pDataObj = new ::vcl::unohelper::TextDataObject( sText );
-
- const sal_uInt32 nRef = Application::ReleaseSolarMutex();
- xClipboard->setContents( pDataObj, NULL );
- Reference< datatransfer::clipboard::XFlushableClipboard > xFlushableClipboard( xClipboard, uno::UNO_QUERY );
- if( xFlushableClipboard.is() )
- xFlushableClipboard->flushClipboard();
- Application::AcquireSolarMutex( nRef );
-
- bRet = sal_True;
- }
- }
-
- return bRet;
-}
-// -----------------------------------------------------------------------------
-// XAccessibleEventBroadcaster
-// -----------------------------------------------------------------------------
-void SAL_CALL VCLXAccessibleListItem::addEventListener( const Reference< XAccessibleEventListener >& xListener ) throw (RuntimeException)
-{
- if (xListener.is())
- {
- if (!m_nClientId)
- m_nClientId = comphelper::AccessibleEventNotifier::registerClient( );
- comphelper::AccessibleEventNotifier::addEventListener( m_nClientId, xListener );
- }
-}
-// -----------------------------------------------------------------------------
-void SAL_CALL VCLXAccessibleListItem::removeEventListener( const Reference< XAccessibleEventListener >& xListener ) throw (RuntimeException)
-{
- if ( xListener.is() && m_nClientId )
- {
- sal_Int32 nListenerCount = comphelper::AccessibleEventNotifier::removeEventListener( m_nClientId, xListener );
- if ( !nListenerCount )
- {
- // no listeners anymore
- // -> revoke ourself. This may lead to the notifier thread dying (if we were the last client),
- // and at least to us not firing any events anymore, in case somebody calls
- // NotifyAccessibleEvent, again
- if ( m_nClientId )
- {
- comphelper::AccessibleEventNotifier::TClientId nId( m_nClientId );
- m_nClientId = 0;
- comphelper::AccessibleEventNotifier::revokeClient( nId );
- }
- }
- }
-}
-// -----------------------------------------------------------------------------
-
-
-
-// AF (Oct. 29 2002): Return black as constant foreground color. This is an
-// initial implementation and has to be substituted by code that determines
-// the color that is actually used.
-sal_Int32 SAL_CALL VCLXAccessibleListItem::getForeground (void)
- throw (::com::sun::star::uno::RuntimeException)
-{
- return COL_BLACK;
-}
-
-// AF (Oct. 29 2002): Return white as constant background color. This is an
-// initial implementation and has to be substituted by code that determines
-// the color that is actually used.
-sal_Int32 SAL_CALL VCLXAccessibleListItem::getBackground (void)
- throw (::com::sun::star::uno::RuntimeException)
-{
- return COL_WHITE;
-}
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessiblemenu.cxx b/accessibility/source/standard/vclxaccessiblemenu.cxx
deleted file mode 100644
index f345042ee..000000000
--- a/accessibility/source/standard/vclxaccessiblemenu.cxx
+++ /dev/null
@@ -1,258 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-// includes --------------------------------------------------------------
-#include <accessibility/standard/vclxaccessiblemenu.hxx>
-
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <vcl/menu.hxx>
-
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::accessibility;
-using namespace ::comphelper;
-
-
-// -----------------------------------------------------------------------------
-// VCLXAccessibleMenu
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleMenu::VCLXAccessibleMenu( Menu* pParent, sal_uInt16 nItemPos, Menu* pMenu )
- :VCLXAccessibleMenuItem( pParent, nItemPos, pMenu )
-{
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleMenu::~VCLXAccessibleMenu()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleMenu::IsFocused()
-{
- sal_Bool bFocused = sal_False;
-
- if ( IsHighlighted() && !IsChildHighlighted() )
- bFocused = sal_True;
-
- return bFocused;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleMenu::IsPopupMenuOpen()
-{
- sal_Bool bPopupMenuOpen = sal_False;
-
- if ( m_pParent )
- {
- PopupMenu* pPopupMenu = m_pParent->GetPopupMenu( m_pParent->GetItemId( m_nItemPos ) );
- if ( pPopupMenu && pPopupMenu->IsMenuVisible() )
- bPopupMenuOpen = sal_True;
- }
-
- return bPopupMenuOpen;
-}
-
-// -----------------------------------------------------------------------------
-// XInterface
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleMenu, VCLXAccessibleMenuItem, VCLXAccessibleMenu_BASE )
-
-// -----------------------------------------------------------------------------
-// XTypeProvider
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleMenu, VCLXAccessibleMenuItem, VCLXAccessibleMenu_BASE )
-
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleMenu::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.toolkit.AccessibleMenu") );
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< ::rtl::OUString > VCLXAccessibleMenu::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleMenu") );
- return aNames;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleMenu::getAccessibleChildCount( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return GetChildCount();
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > VCLXAccessibleMenu::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( i < 0 || i >= GetChildCount() )
- throw IndexOutOfBoundsException();
-
- return GetChild( i );
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int16 VCLXAccessibleMenu::getAccessibleRole( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return AccessibleRole::MENU;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleComponent
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > VCLXAccessibleMenu::getAccessibleAtPoint( const awt::Point& rPoint ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return GetChildAt( rPoint );
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleSelection
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleMenu::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nChildIndex < 0 || nChildIndex >= GetChildCount() )
- throw IndexOutOfBoundsException();
-
- SelectChild( nChildIndex );
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleMenu::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nChildIndex < 0 || nChildIndex >= GetChildCount() )
- throw IndexOutOfBoundsException();
-
- return IsChildSelected( nChildIndex );
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleMenu::clearAccessibleSelection( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- DeSelectAll();
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleMenu::selectAllAccessibleChildren( ) throw (RuntimeException)
-{
- // This method makes no sense in a menu, and so does nothing.
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleMenu::getSelectedAccessibleChildCount( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nRet = 0;
-
- for ( sal_Int32 i = 0, nCount = GetChildCount(); i < nCount; i++ )
- {
- if ( IsChildSelected( i ) )
- ++nRet;
- }
-
- return nRet;
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > VCLXAccessibleMenu::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getSelectedAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- Reference< XAccessible > xChild;
-
- for ( sal_Int32 i = 0, j = 0, nCount = GetChildCount(); i < nCount; i++ )
- {
- if ( IsChildSelected( i ) && ( j++ == nSelectedChildIndex ) )
- {
- xChild = GetChild( i );
- break;
- }
- }
-
- return xChild;
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleMenu::deselectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nChildIndex < 0 || nChildIndex >= GetChildCount() )
- throw IndexOutOfBoundsException();
-
- DeSelectAll();
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessiblemenubar.cxx b/accessibility/source/standard/vclxaccessiblemenubar.cxx
deleted file mode 100644
index a69e99655..000000000
--- a/accessibility/source/standard/vclxaccessiblemenubar.cxx
+++ /dev/null
@@ -1,214 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessiblemenubar.hxx>
-
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <vcl/svapp.hxx>
-#include <vcl/window.hxx>
-#include <vcl/menu.hxx>
-
-
-using namespace ::com::sun::star::accessibility;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star;
-using namespace ::comphelper;
-
-
-// -----------------------------------------------------------------------------
-// class VCLXAccessibleMenuBar
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleMenuBar::VCLXAccessibleMenuBar( Menu* pMenu )
- :OAccessibleMenuComponent( pMenu )
-{
- if ( pMenu )
- {
- m_pWindow = pMenu->GetWindow();
-
- if ( m_pWindow )
- m_pWindow->AddEventListener( LINK( this, VCLXAccessibleMenuBar, WindowEventListener ) );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleMenuBar::~VCLXAccessibleMenuBar()
-{
- if ( m_pWindow )
- m_pWindow->RemoveEventListener( LINK( this, VCLXAccessibleMenuBar, WindowEventListener ) );
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleMenuBar::IsFocused()
-{
- sal_Bool bFocused = sal_False;
-
- if ( m_pWindow && m_pWindow->HasFocus() && !IsChildHighlighted() )
- bFocused = sal_True;
-
- return bFocused;
-}
-
-// -----------------------------------------------------------------------------
-
-IMPL_LINK( VCLXAccessibleMenuBar, WindowEventListener, VclSimpleEvent*, pEvent )
-{
- DBG_ASSERT( pEvent && pEvent->ISA( VclWindowEvent ), "VCLXAccessibleMenuBar::WindowEventListener: unknown window event!" );
- if ( pEvent && pEvent->ISA( VclWindowEvent ) )
- {
- DBG_ASSERT( ((VclWindowEvent*)pEvent)->GetWindow(), "VCLXAccessibleMenuBar::WindowEventListener: no window!" );
- if ( !((VclWindowEvent*)pEvent)->GetWindow()->IsAccessibilityEventsSuppressed() || ( pEvent->GetId() == VCLEVENT_OBJECT_DYING ) )
- {
- ProcessWindowEvent( *(VclWindowEvent*)pEvent );
- }
- }
- return 0;
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleMenuBar::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
-{
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_WINDOW_GETFOCUS:
- case VCLEVENT_WINDOW_LOSEFOCUS:
- {
- SetFocused( rVclWindowEvent.GetId() == VCLEVENT_WINDOW_GETFOCUS );
- }
- break;
- case VCLEVENT_OBJECT_DYING:
- {
- if ( m_pWindow )
- {
- m_pWindow->RemoveEventListener( LINK( this, VCLXAccessibleMenuBar, WindowEventListener ) );
- m_pWindow = NULL;
- }
- }
- break;
- default:
- {
- }
- break;
- }
-}
-
-// -----------------------------------------------------------------------------
-// XComponent
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleMenuBar::disposing()
-{
- OAccessibleMenuComponent::disposing();
-
- if ( m_pWindow )
- {
- m_pWindow->RemoveEventListener( LINK( this, VCLXAccessibleMenuBar, WindowEventListener ) );
- m_pWindow = NULL;
- }
-}
-
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleMenuBar::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.toolkit.AccessibleMenuBar") );
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< ::rtl::OUString > VCLXAccessibleMenuBar::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleMenuBar") );
- return aNames;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleMenuBar::getAccessibleIndexInParent( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nIndexInParent = -1;
-
- if ( m_pMenu )
- {
- Window* pWindow = m_pMenu->GetWindow();
- if ( pWindow )
- {
- Window* pParent = pWindow->GetAccessibleParentWindow();
- if ( pParent )
- {
- for ( sal_uInt16 n = pParent->GetAccessibleChildWindowCount(); n; )
- {
- Window* pChild = pParent->GetAccessibleChildWindow( --n );
- if ( pChild == pWindow )
- {
- nIndexInParent = n;
- break;
- }
- }
- }
- }
- }
-
- return nIndexInParent;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int16 VCLXAccessibleMenuBar::getAccessibleRole( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return AccessibleRole::MENU_BAR;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleExtendedComponent
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleMenuBar::getBackground( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return Application::GetSettings().GetStyleSettings().GetMenuBarColor().GetColor();
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessiblemenuitem.cxx b/accessibility/source/standard/vclxaccessiblemenuitem.cxx
deleted file mode 100644
index 10cb56a54..000000000
--- a/accessibility/source/standard/vclxaccessiblemenuitem.cxx
+++ /dev/null
@@ -1,610 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessiblemenuitem.hxx>
-#include <accessibility/helper/accresmgr.hxx>
-#include <accessibility/helper/accessiblestrings.hrc>
-#include <toolkit/helper/convert.hxx>
-#include <accessibility/helper/characterattributeshelper.hxx>
-#include <comphelper/accessiblekeybindinghelper.hxx>
-#include <com/sun/star/awt/KeyModifier.hpp>
-
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
-#include <com/sun/star/datatransfer/clipboard/XFlushableClipboard.hpp>
-#include <unotools/accessiblestatesethelper.hxx>
-#include <comphelper/sequence.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/window.hxx>
-#include <vcl/menu.hxx>
-#include <vcl/unohelp2.hxx>
-
-#include <memory>
-
-
-using namespace ::com::sun::star::accessibility;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star;
-using namespace ::comphelper;
-
-
-// -----------------------------------------------------------------------------
-// class VCLXAccessibleMenuItem
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleMenuItem::VCLXAccessibleMenuItem( Menu* pParent, sal_uInt16 nItemPos, Menu* pMenu )
- :OAccessibleMenuItemComponent( pParent, nItemPos, pMenu )
-{
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleMenuItem::~VCLXAccessibleMenuItem()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleMenuItem::IsFocused()
-{
- return IsHighlighted();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleMenuItem::IsSelected()
-{
- return IsHighlighted();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleMenuItem::IsChecked()
-{
- sal_Bool bChecked = sal_False;
-
- if ( m_pParent )
- {
- sal_uInt16 nItemId = m_pParent->GetItemId( m_nItemPos );
- if ( m_pParent->IsItemChecked( nItemId ) )
- bChecked = sal_True;
- }
-
- return bChecked;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleMenuItem::IsHighlighted()
-{
- sal_Bool bHighlighted = sal_False;
-
- if ( m_pParent && m_pParent->IsHighlighted( m_nItemPos ) )
- bHighlighted = sal_True;
-
- return bHighlighted;
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleMenuItem::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
-{
- OAccessibleMenuItemComponent::FillAccessibleStateSet( rStateSet );
-
- rStateSet.AddState( AccessibleStateType::FOCUSABLE );
-
- if ( IsFocused() )
- rStateSet.AddState( AccessibleStateType::FOCUSED );
-
- rStateSet.AddState( AccessibleStateType::SELECTABLE );
-
- if ( IsSelected() )
- rStateSet.AddState( AccessibleStateType::SELECTED );
-
- if ( IsChecked() )
- rStateSet.AddState( AccessibleStateType::CHECKED );
-}
-
-// -----------------------------------------------------------------------------
-// OCommonAccessibleText
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleMenuItem::implGetText()
-{
- return m_sItemText;
-}
-
-// -----------------------------------------------------------------------------
-
-Locale VCLXAccessibleMenuItem::implGetLocale()
-{
- return Application::GetSettings().GetLocale();
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleMenuItem::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
-{
- nStartIndex = 0;
- nEndIndex = 0;
-}
-
-// -----------------------------------------------------------------------------
-// XInterface
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleMenuItem, OAccessibleMenuItemComponent, VCLXAccessibleMenuItem_BASE )
-
-// -----------------------------------------------------------------------------
-// XTypeProvider
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleMenuItem, OAccessibleMenuItemComponent, VCLXAccessibleMenuItem_BASE )
-
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleMenuItem::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.toolkit.AccessibleMenuItem") );
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< ::rtl::OUString > VCLXAccessibleMenuItem::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleMenuItem") );
- return aNames;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-
-sal_Int16 VCLXAccessibleMenuItem::getAccessibleRole( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return AccessibleRole::MENU_ITEM;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleText
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleMenuItem::getCaretPosition() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return -1;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleMenuItem::setCaretPosition( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
-
- OExternalLockGuard aGuard( this );
-
- if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Unicode VCLXAccessibleMenuItem::getCharacter( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getCharacter( nIndex );
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< PropertyValue > VCLXAccessibleMenuItem::getCharacterAttributes( sal_Int32 nIndex, const Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Sequence< PropertyValue > aValues;
- ::rtl::OUString sText( implGetText() );
-
- if ( !implIsValidIndex( nIndex, sText.getLength() ) )
- throw IndexOutOfBoundsException();
-
- Font aFont = Application::GetSettings().GetStyleSettings().GetMenuFont();
- sal_Int32 nBackColor = getBackground();
- sal_Int32 nColor = getForeground();
- ::std::auto_ptr< CharacterAttributesHelper > pHelper( new CharacterAttributesHelper( aFont, nBackColor, nColor ) );
- aValues = pHelper->GetCharacterAttributes( aRequestedAttributes );
-
- return aValues;
-}
-
-// -----------------------------------------------------------------------------
-
-awt::Rectangle VCLXAccessibleMenuItem::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( !implIsValidIndex( nIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- awt::Rectangle aBounds( 0, 0, 0, 0 );
- if ( m_pParent )
- {
- sal_uInt16 nItemId = m_pParent->GetItemId( m_nItemPos );
- Rectangle aItemRect = m_pParent->GetBoundingRectangle( m_nItemPos );
- Rectangle aCharRect = m_pParent->GetCharacterBounds( nItemId, nIndex );
- aCharRect.Move( -aItemRect.Left(), -aItemRect.Top() );
- aBounds = AWTRectangle( aCharRect );
- }
-
- return aBounds;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleMenuItem::getCharacterCount() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getCharacterCount();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleMenuItem::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nIndex = -1;
- if ( m_pParent )
- {
- sal_uInt16 nItemId = 0;
- Rectangle aItemRect = m_pParent->GetBoundingRectangle( m_nItemPos );
- Point aPnt( VCLPoint( aPoint ) );
- aPnt += aItemRect.TopLeft();
- sal_Int32 nI = m_pParent->GetIndexForPoint( aPnt, nItemId );
- if ( nI != -1 && m_pParent->GetItemId( m_nItemPos ) == nItemId )
- nIndex = nI;
- }
-
- return nIndex;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleMenuItem::getSelectedText() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getSelectedText();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleMenuItem::getSelectionStart() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getSelectionStart();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleMenuItem::getSelectionEnd() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getSelectionEnd();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleMenuItem::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleMenuItem::getText() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getText();
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleMenuItem::getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getTextRange( nStartIndex, nEndIndex );
-}
-
-// -----------------------------------------------------------------------------
-
-::com::sun::star::accessibility::TextSegment VCLXAccessibleMenuItem::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getTextAtIndex( nIndex, aTextType );
-}
-
-// -----------------------------------------------------------------------------
-
-::com::sun::star::accessibility::TextSegment VCLXAccessibleMenuItem::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getTextBeforeIndex( nIndex, aTextType );
-}
-
-// -----------------------------------------------------------------------------
-
-::com::sun::star::accessibility::TextSegment VCLXAccessibleMenuItem::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getTextBehindIndex( nIndex, aTextType );
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleMenuItem::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Bool bReturn = sal_False;
-
- if ( m_pParent )
- {
- Window* pWindow = m_pParent->GetWindow();
- if ( pWindow )
- {
- Reference< datatransfer::clipboard::XClipboard > xClipboard = pWindow->GetClipboard();
- if ( xClipboard.is() )
- {
- ::rtl::OUString sText( getTextRange( nStartIndex, nEndIndex ) );
-
- ::vcl::unohelper::TextDataObject* pDataObj = new ::vcl::unohelper::TextDataObject( sText );
- const sal_uInt32 nRef = Application::ReleaseSolarMutex();
- xClipboard->setContents( pDataObj, NULL );
-
- Reference< datatransfer::clipboard::XFlushableClipboard > xFlushableClipboard( xClipboard, uno::UNO_QUERY );
- if( xFlushableClipboard.is() )
- xFlushableClipboard->flushClipboard();
-
- Application::AcquireSolarMutex( nRef );
-
- bReturn = sal_True;
- }
- }
- }
-
- return bReturn;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleAction
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleMenuItem::getAccessibleActionCount( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return 1;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleMenuItem::doAccessibleAction ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- Click();
-
- return sal_True;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleMenuItem::getAccessibleActionDescription ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- return ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_CLICK ) );
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessibleKeyBinding > VCLXAccessibleMenuItem::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- OAccessibleKeyBindingHelper* pKeyBindingHelper = new OAccessibleKeyBindingHelper();
- Reference< XAccessibleKeyBinding > xKeyBinding = pKeyBindingHelper;
-
- if ( m_pParent )
- {
- // create auto mnemonics
- if ( Application::GetSettings().GetStyleSettings().GetAutoMnemonic() && !( m_pParent->GetMenuFlags() & MENU_FLAG_NOAUTOMNEMONICS ) )
- m_pParent->CreateAutoMnemonics();
-
- // activation key
- KeyEvent aKeyEvent = m_pParent->GetActivationKey( m_pParent->GetItemId( m_nItemPos ) );
- KeyCode aKeyCode = aKeyEvent.GetKeyCode();
- Sequence< awt::KeyStroke > aSeq1(1);
- aSeq1[0].Modifiers = 0;
- Reference< XAccessible > xParent( getAccessibleParent() );
- if ( xParent.is() )
- {
- Reference< XAccessibleContext > xParentContext( xParent->getAccessibleContext() );
- if ( xParentContext.is() && xParentContext->getAccessibleRole() == AccessibleRole::MENU_BAR )
- aSeq1[0].Modifiers |= awt::KeyModifier::MOD2;
- }
- aSeq1[0].KeyCode = aKeyCode.GetCode();
- aSeq1[0].KeyChar = aKeyEvent.GetCharCode();
- aSeq1[0].KeyFunc = static_cast< sal_Int16 >( aKeyCode.GetFunction() );
- pKeyBindingHelper->AddKeyBinding( aSeq1 );
-
- // complete menu activation key sequence
- Sequence< awt::KeyStroke > aSeq;
- if ( xParent.is() )
- {
- Reference< XAccessibleContext > xParentContext( xParent->getAccessibleContext() );
- if ( xParentContext.is() && xParentContext->getAccessibleRole() == AccessibleRole::MENU )
- {
- Reference< XAccessibleAction > xAction( xParentContext, UNO_QUERY );
- if ( xAction.is() && xAction->getAccessibleActionCount() > 0 )
- {
- Reference< XAccessibleKeyBinding > xKeyB( xAction->getAccessibleActionKeyBinding( 0 ) );
- if ( xKeyB.is() && xKeyB->getAccessibleKeyBindingCount() > 1 )
- aSeq = xKeyB->getAccessibleKeyBinding( 1 );
- }
- }
- }
- Sequence< awt::KeyStroke > aSeq2 = ::comphelper::concatSequences( aSeq, aSeq1 );
- pKeyBindingHelper->AddKeyBinding( aSeq2 );
-
- // accelerator key
- KeyCode aAccelKeyCode = m_pParent->GetAccelKey( m_pParent->GetItemId( m_nItemPos ) );
- if ( aAccelKeyCode.GetCode() != 0 )
- {
- Sequence< awt::KeyStroke > aSeq3(1);
- aSeq3[0].Modifiers = 0;
- if ( aAccelKeyCode.IsShift() )
- aSeq3[0].Modifiers |= awt::KeyModifier::SHIFT;
- if ( aAccelKeyCode.IsMod1() )
- aSeq3[0].Modifiers |= awt::KeyModifier::MOD1;
- if ( aAccelKeyCode.IsMod2() )
- aSeq3[0].Modifiers |= awt::KeyModifier::MOD2;
- if ( aAccelKeyCode.IsMod3() )
- aSeq3[0].Modifiers |= awt::KeyModifier::MOD3;
- aSeq3[0].KeyCode = aAccelKeyCode.GetCode();
- aSeq3[0].KeyFunc = static_cast< sal_Int16 >( aAccelKeyCode.GetFunction() );
- pKeyBindingHelper->AddKeyBinding( aSeq3 );
- }
- }
-
- return xKeyBinding;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleValue
-// -----------------------------------------------------------------------------
-
-Any VCLXAccessibleMenuItem::getCurrentValue( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Any aValue;
- if ( IsSelected() )
- aValue <<= (sal_Int32) 1;
- else
- aValue <<= (sal_Int32) 0;
-
- return aValue;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleMenuItem::setCurrentValue( const Any& aNumber ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Bool bReturn = sal_False;
- sal_Int32 nValue = 0;
- OSL_VERIFY( aNumber >>= nValue );
-
- if ( nValue <= 0 )
- {
- DeSelect();
- bReturn = sal_True;
- }
- else if ( nValue >= 1 )
- {
- Select();
- bReturn = sal_True;
- }
-
- return bReturn;
-}
-
-// -----------------------------------------------------------------------------
-
-Any VCLXAccessibleMenuItem::getMaximumValue( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Any aValue;
- aValue <<= (sal_Int32) 1;
-
- return aValue;
-}
-
-// -----------------------------------------------------------------------------
-
-Any VCLXAccessibleMenuItem::getMinimumValue( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Any aValue;
- aValue <<= (sal_Int32) 0;
-
- return aValue;
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessiblemenuseparator.cxx b/accessibility/source/standard/vclxaccessiblemenuseparator.cxx
deleted file mode 100644
index 7a4e62a74..000000000
--- a/accessibility/source/standard/vclxaccessiblemenuseparator.cxx
+++ /dev/null
@@ -1,88 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessiblemenuseparator.hxx>
-
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-
-
-using namespace ::com::sun::star::accessibility;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star;
-using namespace ::comphelper;
-
-
-// -----------------------------------------------------------------------------
-// class VCLXAccessibleMenuSeparator
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleMenuSeparator::VCLXAccessibleMenuSeparator( Menu* pParent, sal_uInt16 nItemPos, Menu* pMenu )
- :OAccessibleMenuItemComponent( pParent, nItemPos, pMenu )
-{
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleMenuSeparator::~VCLXAccessibleMenuSeparator()
-{
-}
-
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleMenuSeparator::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.toolkit.AccessibleMenuSeparator") );
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< ::rtl::OUString > VCLXAccessibleMenuSeparator::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleMenuSeparator") );
- return aNames;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-
-sal_Int16 VCLXAccessibleMenuSeparator::getAccessibleRole( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return AccessibleRole::SEPARATOR;
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessiblepopupmenu.cxx b/accessibility/source/standard/vclxaccessiblepopupmenu.cxx
deleted file mode 100644
index c0255ea74..000000000
--- a/accessibility/source/standard/vclxaccessiblepopupmenu.cxx
+++ /dev/null
@@ -1,114 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessiblepopupmenu.hxx>
-
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <vcl/svapp.hxx>
-
-using namespace ::com::sun::star::accessibility;
-using namespace ::com::sun::star::uno;
-using namespace ::comphelper;
-
-
-// -----------------------------------------------------------------------------
-// class VCLXAccessiblePopupMenu
-// -----------------------------------------------------------------------------
-
-VCLXAccessiblePopupMenu::VCLXAccessiblePopupMenu( Menu* pMenu )
- :OAccessibleMenuComponent( pMenu )
-{
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessiblePopupMenu::~VCLXAccessiblePopupMenu()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessiblePopupMenu::IsFocused()
-{
- return !IsChildHighlighted();
-}
-
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessiblePopupMenu::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.toolkit.AccessiblePopupMenu") );
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< ::rtl::OUString > VCLXAccessiblePopupMenu::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessiblePopupMenu") );
- return aNames;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessiblePopupMenu::getAccessibleIndexInParent( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return 0;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int16 VCLXAccessiblePopupMenu::getAccessibleRole( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return AccessibleRole::POPUP_MENU;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleExtendedComponent
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessiblePopupMenu::getBackground( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return Application::GetSettings().GetStyleSettings().GetMenuColor().GetColor();
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessibleradiobutton.cxx b/accessibility/source/standard/vclxaccessibleradiobutton.cxx
deleted file mode 100644
index f55fa2d49..000000000
--- a/accessibility/source/standard/vclxaccessibleradiobutton.cxx
+++ /dev/null
@@ -1,317 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-// includes --------------------------------------------------------------
-#include <accessibility/standard/vclxaccessibleradiobutton.hxx>
-
-#include <toolkit/awt/vclxwindows.hxx>
-#include <accessibility/helper/accresmgr.hxx>
-#include <accessibility/helper/accessiblestrings.hrc>
-
-#include <unotools/accessiblerelationsethelper.hxx>
-#include <unotools/accessiblestatesethelper.hxx>
-#include <comphelper/accessiblekeybindinghelper.hxx>
-#include <com/sun/star/awt/KeyModifier.hpp>
-#include <com/sun/star/accessibility/AccessibleRelationType.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <cppuhelper/typeprovider.hxx>
-#include <comphelper/sequence.hxx>
-#include <vcl/window.hxx>
-#include <vcl/button.hxx>
-
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::accessibility;
-using namespace ::comphelper;
-
-
-// -----------------------------------------------------------------------------
-// VCLXAccessibleRadioButton
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleRadioButton::VCLXAccessibleRadioButton( VCLXWindow* pVCLWindow )
- :VCLXAccessibleTextComponent( pVCLWindow )
-{
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleRadioButton::~VCLXAccessibleRadioButton()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleRadioButton::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
-{
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_RADIOBUTTON_TOGGLE:
- {
- Any aOldValue;
- Any aNewValue;
-
- VCLXRadioButton* pVCLXRadioButton = static_cast< VCLXRadioButton* >( GetVCLXWindow() );
- if ( pVCLXRadioButton && pVCLXRadioButton->getState() )
- aNewValue <<= AccessibleStateType::CHECKED;
- else
- aOldValue <<= AccessibleStateType::CHECKED;
-
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
- break;
- default:
- VCLXAccessibleTextComponent::ProcessWindowEvent( rVclWindowEvent );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleRadioButton::FillAccessibleRelationSet( utl::AccessibleRelationSetHelper& rRelationSet )
-{
- VCLXAccessibleTextComponent::FillAccessibleRelationSet( rRelationSet );
-
- RadioButton* pRadioButton = dynamic_cast< RadioButton* >( GetWindow() );
- if ( pRadioButton )
- {
- ::std::vector< RadioButton* > aGroup;
- pRadioButton->GetRadioButtonGroup( aGroup, true );
- if ( !aGroup.empty() )
- {
- sal_Int32 i = 0;
- Sequence< Reference< XInterface > > aSequence( static_cast< sal_Int32 >( aGroup.size() ) );
- ::std::vector< RadioButton* >::const_iterator aEndItr = aGroup.end();
- for ( ::std::vector< RadioButton* >::const_iterator aItr = aGroup.begin(); aItr < aEndItr; ++aItr )
- {
- aSequence[i++] = (*aItr)->GetAccessible();
- }
- rRelationSet.AddRelation( AccessibleRelation( AccessibleRelationType::MEMBER_OF, aSequence ) );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleRadioButton::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
-{
- VCLXAccessibleTextComponent::FillAccessibleStateSet( rStateSet );
-
- VCLXRadioButton* pVCLXRadioButton = static_cast< VCLXRadioButton* >( GetVCLXWindow() );
- if ( pVCLXRadioButton )
- {
- rStateSet.AddState( AccessibleStateType::FOCUSABLE );
- if ( pVCLXRadioButton->getState() )
- rStateSet.AddState( AccessibleStateType::CHECKED );
- }
-}
-
-// -----------------------------------------------------------------------------
-// XInterface
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleRadioButton, VCLXAccessibleTextComponent, VCLXAccessibleRadioButton_BASE )
-
-// -----------------------------------------------------------------------------
-// XTypeProvider
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleRadioButton, VCLXAccessibleTextComponent, VCLXAccessibleRadioButton_BASE )
-
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleRadioButton::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.toolkit.AccessibleRadioButton") );
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< ::rtl::OUString > VCLXAccessibleRadioButton::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleRadioButton") );
- return aNames;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleAction
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleRadioButton::getAccessibleActionCount( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return 1;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleRadioButton::doAccessibleAction ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- VCLXRadioButton* pVCLXRadioButton = static_cast< VCLXRadioButton* >( GetVCLXWindow() );
- if ( pVCLXRadioButton && !pVCLXRadioButton->getState() )
- pVCLXRadioButton->setState( sal_True );
-
- return sal_True;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleRadioButton::getAccessibleActionDescription ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- return ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_CLICK ) );
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessibleKeyBinding > VCLXAccessibleRadioButton::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- OAccessibleKeyBindingHelper* pKeyBindingHelper = new OAccessibleKeyBindingHelper();
- Reference< XAccessibleKeyBinding > xKeyBinding = pKeyBindingHelper;
-
- Window* pWindow = GetWindow();
- if ( pWindow )
- {
- KeyEvent aKeyEvent = pWindow->GetActivationKey();
- KeyCode aKeyCode = aKeyEvent.GetKeyCode();
- if ( aKeyCode.GetCode() != 0 )
- {
- awt::KeyStroke aKeyStroke;
- aKeyStroke.Modifiers = 0;
- if ( aKeyCode.IsShift() )
- aKeyStroke.Modifiers |= awt::KeyModifier::SHIFT;
- if ( aKeyCode.IsMod1() )
- aKeyStroke.Modifiers |= awt::KeyModifier::MOD1;
- if ( aKeyCode.IsMod2() )
- aKeyStroke.Modifiers |= awt::KeyModifier::MOD2;
- if ( aKeyCode.IsMod3() )
- aKeyStroke.Modifiers |= awt::KeyModifier::MOD3;
- aKeyStroke.KeyCode = aKeyCode.GetCode();
- aKeyStroke.KeyChar = aKeyEvent.GetCharCode();
- aKeyStroke.KeyFunc = static_cast< sal_Int16 >( aKeyCode.GetFunction() );
- pKeyBindingHelper->AddKeyBinding( aKeyStroke );
- }
- }
-
- return xKeyBinding;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleValue
-// -----------------------------------------------------------------------------
-
-Any VCLXAccessibleRadioButton::getCurrentValue( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Any aValue;
-
- VCLXRadioButton* pVCLXRadioButton = static_cast< VCLXRadioButton* >( GetVCLXWindow() );
- if ( pVCLXRadioButton )
- aValue <<= (sal_Int32) pVCLXRadioButton->getState();
-
- return aValue;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleRadioButton::setCurrentValue( const Any& aNumber ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Bool bReturn = sal_False;
-
- VCLXRadioButton* pVCLXRadioButton = static_cast< VCLXRadioButton* >( GetVCLXWindow() );
- if ( pVCLXRadioButton )
- {
- sal_Int32 nValue = 0;
- OSL_VERIFY( aNumber >>= nValue );
-
- if ( nValue < 0 )
- nValue = 0;
- else if ( nValue > 1 )
- nValue = 1;
-
- pVCLXRadioButton->setState( (sal_Bool) nValue );
- bReturn = sal_True;
- }
-
- return bReturn;
-}
-
-// -----------------------------------------------------------------------------
-
-Any VCLXAccessibleRadioButton::getMaximumValue( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Any aValue;
- aValue <<= (sal_Int32) 1;
-
- return aValue;
-}
-
-// -----------------------------------------------------------------------------
-
-Any VCLXAccessibleRadioButton::getMinimumValue( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Any aValue;
- aValue <<= (sal_Int32) 0;
-
- return aValue;
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessiblescrollbar.cxx b/accessibility/source/standard/vclxaccessiblescrollbar.cxx
deleted file mode 100644
index d6e331a46..000000000
--- a/accessibility/source/standard/vclxaccessiblescrollbar.cxx
+++ /dev/null
@@ -1,282 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-// includes --------------------------------------------------------------
-#include <accessibility/standard/vclxaccessiblescrollbar.hxx>
-
-#include <toolkit/awt/vclxwindows.hxx>
-#include <accessibility/helper/accresmgr.hxx>
-#include <accessibility/helper/accessiblestrings.hrc>
-
-#include <unotools/accessiblestatesethelper.hxx>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/awt/ScrollBarOrientation.hpp>
-#include <cppuhelper/typeprovider.hxx>
-#include <comphelper/sequence.hxx>
-#include <vcl/scrbar.hxx>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::awt;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::accessibility;
-using namespace ::comphelper;
-
-// -----------------------------------------------------------------------------
-// VCLXAccessibleScrollBar
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleScrollBar::VCLXAccessibleScrollBar( VCLXWindow* pVCLWindow )
- :VCLXAccessibleComponent( pVCLWindow )
-{
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleScrollBar::~VCLXAccessibleScrollBar()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleScrollBar::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
-{
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_SCROLLBAR_SCROLL:
- {
- NotifyAccessibleEvent( AccessibleEventId::VALUE_CHANGED, Any(), Any() );
- }
- break;
- default:
- VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleScrollBar::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
-{
- VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
-
- VCLXScrollBar* pVCLXScrollBar = static_cast< VCLXScrollBar* >( GetVCLXWindow() );
- if ( pVCLXScrollBar )
- {
- rStateSet.AddState( AccessibleStateType::FOCUSABLE );
- if ( pVCLXScrollBar->getOrientation() == ScrollBarOrientation::HORIZONTAL )
- rStateSet.AddState( AccessibleStateType::HORIZONTAL );
- else if ( pVCLXScrollBar->getOrientation() == ScrollBarOrientation::VERTICAL )
- rStateSet.AddState( AccessibleStateType::VERTICAL );
- }
-}
-
-// -----------------------------------------------------------------------------
-// XInterface
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleScrollBar, VCLXAccessibleComponent, VCLXAccessibleScrollBar_BASE )
-
-// -----------------------------------------------------------------------------
-// XTypeProvider
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleScrollBar, VCLXAccessibleComponent, VCLXAccessibleScrollBar_BASE )
-
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleScrollBar::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.toolkit.AccessibleScrollBar") );
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< ::rtl::OUString > VCLXAccessibleScrollBar::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleScrollBar") );
- return aNames;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleAction
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleScrollBar::getAccessibleActionCount( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return 4;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleScrollBar::doAccessibleAction ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- sal_Bool bReturn = sal_False;
- ScrollBar* pScrollBar = static_cast< ScrollBar* >( GetWindow() );
- if ( pScrollBar )
- {
- ScrollType eScrollType;
- switch ( nIndex )
- {
- case 0: eScrollType = SCROLL_LINEUP; break;
- case 1: eScrollType = SCROLL_LINEDOWN; break;
- case 2: eScrollType = SCROLL_PAGEUP; break;
- case 3: eScrollType = SCROLL_PAGEDOWN; break;
- default: eScrollType = SCROLL_DONTKNOW; break;
- }
- if ( pScrollBar->DoScrollAction( eScrollType ) )
- bReturn = sal_True;
- }
-
- return bReturn;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleScrollBar::getAccessibleActionDescription ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- ::rtl::OUString sDescription;
-
- switch ( nIndex )
- {
- case 0: sDescription = ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_DECLINE ) ); break;
- case 1: sDescription = ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_INCLINE ) ); break;
- case 2: sDescription = ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_DECBLOCK ) ); break;
- case 3: sDescription = ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_INCBLOCK ) ); break;
- default: break;
- }
-
- return sDescription;
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessibleKeyBinding > VCLXAccessibleScrollBar::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- return Reference< XAccessibleKeyBinding >();
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleValue
-// -----------------------------------------------------------------------------
-
-Any VCLXAccessibleScrollBar::getCurrentValue( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Any aValue;
-
- VCLXScrollBar* pVCLXScrollBar = static_cast< VCLXScrollBar* >( GetVCLXWindow() );
- if ( pVCLXScrollBar )
- aValue <<= (sal_Int32) pVCLXScrollBar->getValue();
-
- return aValue;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleScrollBar::setCurrentValue( const Any& aNumber ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Bool bReturn = sal_False;
-
- VCLXScrollBar* pVCLXScrollBar = static_cast< VCLXScrollBar* >( GetVCLXWindow() );
- if ( pVCLXScrollBar )
- {
- sal_Int32 nValue = 0, nValueMin = 0, nValueMax = 0;
- OSL_VERIFY( aNumber >>= nValue );
- OSL_VERIFY( getMinimumValue() >>= nValueMin );
- OSL_VERIFY( getMaximumValue() >>= nValueMax );
-
- if ( nValue < nValueMin )
- nValue = nValueMin;
- else if ( nValue > nValueMax )
- nValue = nValueMax;
-
- pVCLXScrollBar->setValue( nValue );
- bReturn = sal_True;
- }
-
- return bReturn;
-}
-
-// -----------------------------------------------------------------------------
-
-Any VCLXAccessibleScrollBar::getMaximumValue( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Any aValue;
-
- VCLXScrollBar* pVCLXScrollBar = static_cast< VCLXScrollBar* >( GetVCLXWindow() );
- if ( pVCLXScrollBar )
- aValue <<= (sal_Int32) pVCLXScrollBar->getMaximum();
-
- return aValue;
-}
-
-// -----------------------------------------------------------------------------
-
-Any VCLXAccessibleScrollBar::getMinimumValue( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Any aValue;
- aValue <<= (sal_Int32) 0;
-
- return aValue;
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessiblestatusbar.cxx b/accessibility/source/standard/vclxaccessiblestatusbar.cxx
deleted file mode 100644
index a8b2c85d4..000000000
--- a/accessibility/source/standard/vclxaccessiblestatusbar.cxx
+++ /dev/null
@@ -1,369 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessiblestatusbar.hxx>
-#include <accessibility/standard/vclxaccessiblestatusbaritem.hxx>
-#include <toolkit/helper/convert.hxx>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <vcl/status.hxx>
-
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::accessibility;
-using namespace ::comphelper;
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleStatusBar
-// ----------------------------------------------------
-
-VCLXAccessibleStatusBar::VCLXAccessibleStatusBar( VCLXWindow* pVCLXWindow )
- :VCLXAccessibleComponent( pVCLXWindow )
-{
- m_pStatusBar = static_cast< StatusBar* >( GetWindow() );
-
- if ( m_pStatusBar )
- m_aAccessibleChildren.assign( m_pStatusBar->GetItemCount(), Reference< XAccessible >() );
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleStatusBar::~VCLXAccessibleStatusBar()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleStatusBar::UpdateShowing( sal_Int32 i, sal_Bool bShowing )
-{
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- VCLXAccessibleStatusBarItem* pVCLXAccessibleStatusBarItem = static_cast< VCLXAccessibleStatusBarItem* >( xChild.get() );
- if ( pVCLXAccessibleStatusBarItem )
- pVCLXAccessibleStatusBarItem->SetShowing( bShowing );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleStatusBar::UpdateItemName( sal_Int32 i )
-{
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- VCLXAccessibleStatusBarItem* pVCLXAccessibleStatusBarItem = static_cast< VCLXAccessibleStatusBarItem* >( xChild.get() );
- if ( pVCLXAccessibleStatusBarItem )
- {
- ::rtl::OUString sItemName = pVCLXAccessibleStatusBarItem->GetItemName();
- pVCLXAccessibleStatusBarItem->SetItemName( sItemName );
- }
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleStatusBar::UpdateItemText( sal_Int32 i )
-{
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- VCLXAccessibleStatusBarItem* pVCLXAccessibleStatusBarItem = static_cast< VCLXAccessibleStatusBarItem* >( xChild.get() );
- if ( pVCLXAccessibleStatusBarItem )
- {
- ::rtl::OUString sItemText = pVCLXAccessibleStatusBarItem->GetItemText();
- pVCLXAccessibleStatusBarItem->SetItemText( sItemText );
- }
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleStatusBar::InsertChild( sal_Int32 i )
-{
- if ( i >= 0 && i <= (sal_Int32)m_aAccessibleChildren.size() )
- {
- // insert entry in child list
- m_aAccessibleChildren.insert( m_aAccessibleChildren.begin() + i, Reference< XAccessible >() );
-
- // send accessible child event
- Reference< XAccessible > xChild( getAccessibleChild( i ) );
- if ( xChild.is() )
- {
- Any aOldValue, aNewValue;
- aNewValue <<= xChild;
- NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleStatusBar::RemoveChild( sal_Int32 i )
-{
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- // get the accessible of the removed page
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
-
- // remove entry in child list
- m_aAccessibleChildren.erase( m_aAccessibleChildren.begin() + i );
-
- // send accessible child event
- if ( xChild.is() )
- {
- Any aOldValue, aNewValue;
- aOldValue <<= xChild;
- NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
-
- Reference< XComponent > xComponent( xChild, UNO_QUERY );
- if ( xComponent.is() )
- xComponent->dispose();
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleStatusBar::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
-{
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_STATUSBAR_ITEMADDED:
- {
- if ( m_pStatusBar )
- {
- sal_uInt16 nItemId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
- sal_uInt16 nItemPos = m_pStatusBar->GetItemPos( nItemId );
- InsertChild( nItemPos );
- }
- }
- break;
- case VCLEVENT_STATUSBAR_ITEMREMOVED:
- {
- if ( m_pStatusBar )
- {
- sal_uInt16 nItemId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
- for ( sal_Int32 i = 0, nCount = getAccessibleChildCount(); i < nCount; ++i )
- {
- Reference< XAccessible > xChild( getAccessibleChild( i ) );
- if ( xChild.is() )
- {
- VCLXAccessibleStatusBarItem* pVCLXAccessibleStatusBarItem = static_cast< VCLXAccessibleStatusBarItem* >( xChild.get() );
- if ( pVCLXAccessibleStatusBarItem && pVCLXAccessibleStatusBarItem->GetItemId() == nItemId )
- {
- RemoveChild( i );
- break;
- }
- }
- }
- }
- }
- break;
- case VCLEVENT_STATUSBAR_ALLITEMSREMOVED:
- {
- for ( sal_Int32 i = m_aAccessibleChildren.size() - 1; i >= 0; --i )
- RemoveChild( i );
- }
- break;
- case VCLEVENT_STATUSBAR_SHOWITEM:
- case VCLEVENT_STATUSBAR_HIDEITEM:
- {
- if ( m_pStatusBar )
- {
- sal_uInt16 nItemId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
- sal_uInt16 nItemPos = m_pStatusBar->GetItemPos( nItemId );
- UpdateShowing( nItemPos, rVclWindowEvent.GetId() == VCLEVENT_STATUSBAR_SHOWITEM );
- }
- }
- break;
- case VCLEVENT_STATUSBAR_SHOWALLITEMS:
- case VCLEVENT_STATUSBAR_HIDEALLITEMS:
- {
- for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
- UpdateShowing( i, rVclWindowEvent.GetId() == VCLEVENT_STATUSBAR_SHOWALLITEMS );
- }
- break;
- case VCLEVENT_STATUSBAR_NAMECHANGED:
- {
- if ( m_pStatusBar )
- {
- sal_uInt16 nItemId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
- sal_uInt16 nItemPos = m_pStatusBar->GetItemPos( nItemId );
- UpdateItemName( nItemPos );
- }
- }
- break;
- case VCLEVENT_STATUSBAR_DRAWITEM:
- {
- if ( m_pStatusBar )
- {
- sal_uInt16 nItemId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
- sal_uInt16 nItemPos = m_pStatusBar->GetItemPos( nItemId );
- UpdateItemText( nItemPos );
- }
- }
- break;
- case VCLEVENT_OBJECT_DYING:
- {
- if ( m_pStatusBar )
- {
- m_pStatusBar = NULL;
-
- // dispose all children
- for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
- {
- Reference< XComponent > xComponent( m_aAccessibleChildren[i], UNO_QUERY );
- if ( xComponent.is() )
- xComponent->dispose();
- }
- m_aAccessibleChildren.clear();
- }
-
- VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
- }
- break;
- default:
- VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
- }
-}
-
-// -----------------------------------------------------------------------------
-// XComponent
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleStatusBar::disposing()
-{
- VCLXAccessibleComponent::disposing();
-
- if ( m_pStatusBar )
- {
- m_pStatusBar = NULL;
-
- // dispose all children
- for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
- {
- Reference< XComponent > xComponent( m_aAccessibleChildren[i], UNO_QUERY );
- if ( xComponent.is() )
- xComponent->dispose();
- }
- m_aAccessibleChildren.clear();
- }
-}
-
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleStatusBar::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.toolkit.AccessibleStatusBar") );
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< ::rtl::OUString > VCLXAccessibleStatusBar::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleStatusBar") );
- return aNames;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleStatusBar::getAccessibleChildCount() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return m_aAccessibleChildren.size();
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > VCLXAccessibleStatusBar::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( i < 0 || i >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- Reference< XAccessible > xChild = m_aAccessibleChildren[i];
- if ( !xChild.is() )
- {
- if ( m_pStatusBar )
- {
- sal_uInt16 nItemId = m_pStatusBar->GetItemId( (sal_uInt16)i );
-
- xChild = new VCLXAccessibleStatusBarItem( m_pStatusBar, nItemId );
-
- // insert into status bar item list
- m_aAccessibleChildren[i] = xChild;
- }
- }
-
- return xChild;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleComponent
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > VCLXAccessibleStatusBar::getAccessibleAtPoint( const awt::Point& rPoint ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Reference< XAccessible > xChild;
- if ( m_pStatusBar )
- {
- sal_uInt16 nItemId = m_pStatusBar->GetItemId( VCLPoint( rPoint ) );
- sal_Int32 nItemPos = m_pStatusBar->GetItemPos( nItemId );
- if ( nItemPos >= 0 && nItemPos < (sal_Int32)m_aAccessibleChildren.size() )
- xChild = getAccessibleChild( nItemPos );
- }
-
- return xChild;
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessiblestatusbaritem.cxx b/accessibility/source/standard/vclxaccessiblestatusbaritem.cxx
deleted file mode 100644
index f492f9e56..000000000
--- a/accessibility/source/standard/vclxaccessiblestatusbaritem.cxx
+++ /dev/null
@@ -1,632 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessiblestatusbaritem.hxx>
-#include <toolkit/helper/externallock.hxx>
-#include <toolkit/helper/convert.hxx>
-#include <accessibility/helper/characterattributeshelper.hxx>
-
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
-#include <com/sun/star/datatransfer/clipboard/XFlushableClipboard.hpp>
-
-#include <unotools/accessiblestatesethelper.hxx>
-#include <unotools/accessiblerelationsethelper.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/unohelp2.hxx>
-#include <vcl/status.hxx>
-#include <vcl/controllayout.hxx>
-
-#include <memory>
-
-
-using namespace ::com::sun::star::accessibility;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star;
-using namespace ::comphelper;
-
-
-// -----------------------------------------------------------------------------
-// class VCLXAccessibleStatusBarItem
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleStatusBarItem::VCLXAccessibleStatusBarItem( StatusBar* pStatusBar, sal_uInt16 nItemId )
- :AccessibleTextHelper_BASE( new VCLExternalSolarLock() )
- ,m_pStatusBar( pStatusBar )
- ,m_nItemId( nItemId )
-{
- m_pExternalLock = static_cast< VCLExternalSolarLock* >( getExternalLock() );
-
- m_sItemName = GetItemName();
- m_sItemText = GetItemText();
- m_bShowing = IsShowing();
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleStatusBarItem::~VCLXAccessibleStatusBarItem()
-{
- delete m_pExternalLock;
- m_pExternalLock = NULL;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleStatusBarItem::IsShowing()
-{
- sal_Bool bShowing = sal_False;
-
- if ( m_pStatusBar )
- bShowing = m_pStatusBar->IsItemVisible( m_nItemId );
-
- return bShowing;
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleStatusBarItem::SetShowing( sal_Bool bShowing )
-{
- if ( m_bShowing != bShowing )
- {
- Any aOldValue, aNewValue;
- if ( m_bShowing )
- aOldValue <<= AccessibleStateType::SHOWING;
- else
- aNewValue <<= AccessibleStateType::SHOWING;
- m_bShowing = bShowing;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleStatusBarItem::SetItemName( const ::rtl::OUString& sItemName )
-{
- if ( !m_sItemName.equals( sItemName ) )
- {
- Any aOldValue, aNewValue;
- aOldValue <<= m_sItemName;
- aNewValue <<= sItemName;
- m_sItemName = sItemName;
- NotifyAccessibleEvent( AccessibleEventId::NAME_CHANGED, aOldValue, aNewValue );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleStatusBarItem::GetItemName()
-{
- ::rtl::OUString sName;
- if ( m_pStatusBar )
- sName = m_pStatusBar->GetAccessibleName( m_nItemId );
-
- return sName;
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleStatusBarItem::SetItemText( const ::rtl::OUString& sItemText )
-{
- Any aOldValue, aNewValue;
- if ( implInitTextChangedEvent( m_sItemText, sItemText, aOldValue, aNewValue ) )
- {
- m_sItemText = sItemText;
- NotifyAccessibleEvent( AccessibleEventId::TEXT_CHANGED, aOldValue, aNewValue );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleStatusBarItem::GetItemText()
-{
- ::rtl::OUString sText;
- ::vcl::ControlLayoutData aLayoutData;
- if ( m_pStatusBar )
- {
- Rectangle aItemRect = m_pStatusBar->GetItemRect( m_nItemId );
- m_pStatusBar->RecordLayoutData( &aLayoutData, aItemRect );
- sText = aLayoutData.m_aDisplayText;
- }
-
- return sText;
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleStatusBarItem::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
-{
- rStateSet.AddState( AccessibleStateType::ENABLED );
- rStateSet.AddState( AccessibleStateType::SENSITIVE );
-
- rStateSet.AddState( AccessibleStateType::VISIBLE );
-
- if ( IsShowing() )
- rStateSet.AddState( AccessibleStateType::SHOWING );
-}
-
-// -----------------------------------------------------------------------------
-// OCommonAccessibleComponent
-// -----------------------------------------------------------------------------
-
-awt::Rectangle VCLXAccessibleStatusBarItem::implGetBounds() throw (RuntimeException)
-{
- awt::Rectangle aBounds( 0, 0, 0, 0 );
-
- if ( m_pStatusBar )
- aBounds = AWTRectangle( m_pStatusBar->GetItemRect( m_nItemId ) );
-
- return aBounds;
-}
-
-// -----------------------------------------------------------------------------
-// OCommonAccessibleText
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleStatusBarItem::implGetText()
-{
- return GetItemText();
-}
-
-// -----------------------------------------------------------------------------
-
-lang::Locale VCLXAccessibleStatusBarItem::implGetLocale()
-{
- return Application::GetSettings().GetLocale();
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleStatusBarItem::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
-{
- nStartIndex = 0;
- nEndIndex = 0;
-}
-
-// -----------------------------------------------------------------------------
-// XInterface
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleStatusBarItem, AccessibleTextHelper_BASE, VCLXAccessibleStatusBarItem_BASE )
-
-// -----------------------------------------------------------------------------
-// XTypeProvider
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleStatusBarItem, AccessibleTextHelper_BASE, VCLXAccessibleStatusBarItem_BASE )
-
-// -----------------------------------------------------------------------------
-// XComponent
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleStatusBarItem::disposing()
-{
- AccessibleTextHelper_BASE::disposing();
-
- m_pStatusBar = NULL;
- m_sItemName = ::rtl::OUString();
- m_sItemText = ::rtl::OUString();
-}
-
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleStatusBarItem::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.toolkit.AccessibleStatusBarItem" ));
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleStatusBarItem::supportsService( const ::rtl::OUString& rServiceName ) throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames( getSupportedServiceNames() );
- const ::rtl::OUString* pNames = aNames.getConstArray();
- const ::rtl::OUString* pEnd = pNames + aNames.getLength();
- for ( ; pNames != pEnd && !pNames->equals( rServiceName ); ++pNames )
- ;
-
- return pNames != pEnd;
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< ::rtl::OUString > VCLXAccessibleStatusBarItem::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.AccessibleStatusBarItem" ));
- return aNames;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessible
-// -----------------------------------------------------------------------------
-
-Reference< XAccessibleContext > VCLXAccessibleStatusBarItem::getAccessibleContext( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return this;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleStatusBarItem::getAccessibleChildCount() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return 0;
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > VCLXAccessibleStatusBarItem::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( i < 0 || i >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- return Reference< XAccessible >();
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > VCLXAccessibleStatusBarItem::getAccessibleParent( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Reference< XAccessible > xParent;
- if ( m_pStatusBar )
- xParent = m_pStatusBar->GetAccessible();
-
- return xParent;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleStatusBarItem::getAccessibleIndexInParent( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nIndexInParent = -1;
- if ( m_pStatusBar )
- nIndexInParent = m_pStatusBar->GetItemPos( m_nItemId );
-
- return nIndexInParent;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int16 VCLXAccessibleStatusBarItem::getAccessibleRole( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return AccessibleRole::LABEL;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleStatusBarItem::getAccessibleDescription( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- ::rtl::OUString sDescription;
- if ( m_pStatusBar )
- sDescription = m_pStatusBar->GetHelpText( m_nItemId );
-
- return sDescription;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleStatusBarItem::getAccessibleName( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return GetItemName();
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessibleRelationSet > VCLXAccessibleStatusBarItem::getAccessibleRelationSet( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
- Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
- return xSet;
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessibleStateSet > VCLXAccessibleStatusBarItem::getAccessibleStateSet( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
- Reference< XAccessibleStateSet > xSet = pStateSetHelper;
-
- if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
- {
- FillAccessibleStateSet( *pStateSetHelper );
- }
- else
- {
- pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
- }
-
- return xSet;
-}
-
-// -----------------------------------------------------------------------------
-
-Locale VCLXAccessibleStatusBarItem::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return Application::GetSettings().GetLocale();
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleComponent
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > VCLXAccessibleStatusBarItem::getAccessibleAtPoint( const awt::Point& ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return Reference< XAccessible >();
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleStatusBarItem::grabFocus( ) throw (RuntimeException)
-{
- // no focus for status bar items
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleStatusBarItem::getForeground( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nColor = 0;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- nColor = xParentComp->getForeground();
- }
-
- return nColor;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleStatusBarItem::getBackground( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nColor = 0;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- nColor = xParentComp->getBackground();
- }
-
- return nColor;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleExtendedComponent
-// -----------------------------------------------------------------------------
-
-Reference< awt::XFont > VCLXAccessibleStatusBarItem::getFont( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Reference< awt::XFont > xFont;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleExtendedComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- xFont = xParentComp->getFont();
- }
-
- return xFont;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleStatusBarItem::getTitledBorderText( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return GetItemText();
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleStatusBarItem::getToolTipText( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return ::rtl::OUString();
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleText
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleStatusBarItem::getCaretPosition() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return -1;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleStatusBarItem::setCaretPosition( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< PropertyValue > VCLXAccessibleStatusBarItem::getCharacterAttributes( sal_Int32 nIndex, const Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Sequence< PropertyValue > aValues;
- ::rtl::OUString sText( implGetText() );
-
- if ( !implIsValidIndex( nIndex, sText.getLength() ) )
- throw IndexOutOfBoundsException();
-
- if ( m_pStatusBar )
- {
- Font aFont = m_pStatusBar->GetFont();
- sal_Int32 nBackColor = getBackground();
- sal_Int32 nColor = getForeground();
- ::std::auto_ptr< CharacterAttributesHelper > pHelper( new CharacterAttributesHelper( aFont, nBackColor, nColor ) );
- aValues = pHelper->GetCharacterAttributes( aRequestedAttributes );
- }
-
- return aValues;
-}
-
-// -----------------------------------------------------------------------------
-
-awt::Rectangle VCLXAccessibleStatusBarItem::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( !implIsValidIndex( nIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- awt::Rectangle aBounds( 0, 0, 0, 0 );
- if ( m_pStatusBar )
- {
- ::vcl::ControlLayoutData aLayoutData;
- Rectangle aItemRect = m_pStatusBar->GetItemRect( m_nItemId );
- m_pStatusBar->RecordLayoutData( &aLayoutData, aItemRect );
- Rectangle aCharRect = aLayoutData.GetCharacterBounds( nIndex );
- aCharRect.Move( -aItemRect.Left(), -aItemRect.Top() );
- aBounds = AWTRectangle( aCharRect );
- }
-
- return aBounds;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleStatusBarItem::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nIndex = -1;
- if ( m_pStatusBar )
- {
- ::vcl::ControlLayoutData aLayoutData;
- Rectangle aItemRect = m_pStatusBar->GetItemRect( m_nItemId );
- m_pStatusBar->RecordLayoutData( &aLayoutData, aItemRect );
- Point aPnt( VCLPoint( aPoint ) );
- aPnt += aItemRect.TopLeft();
- nIndex = aLayoutData.GetIndexForPoint( aPnt );
- }
-
- return nIndex;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleStatusBarItem::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleStatusBarItem::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Bool bReturn = sal_False;
-
- if ( m_pStatusBar )
- {
- Reference< datatransfer::clipboard::XClipboard > xClipboard = m_pStatusBar->GetClipboard();
- if ( xClipboard.is() )
- {
- ::rtl::OUString sText( getTextRange( nStartIndex, nEndIndex ) );
-
- ::vcl::unohelper::TextDataObject* pDataObj = new ::vcl::unohelper::TextDataObject( sText );
- const sal_uInt32 nRef = Application::ReleaseSolarMutex();
- xClipboard->setContents( pDataObj, NULL );
-
- Reference< datatransfer::clipboard::XFlushableClipboard > xFlushableClipboard( xClipboard, uno::UNO_QUERY );
- if( xFlushableClipboard.is() )
- xFlushableClipboard->flushClipboard();
-
- Application::AcquireSolarMutex( nRef );
-
- bReturn = sal_True;
- }
- }
-
- return bReturn;
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessibletabcontrol.cxx b/accessibility/source/standard/vclxaccessibletabcontrol.cxx
deleted file mode 100644
index b96a34886..000000000
--- a/accessibility/source/standard/vclxaccessibletabcontrol.cxx
+++ /dev/null
@@ -1,518 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessibletabcontrol.hxx>
-#include <accessibility/standard/vclxaccessibletabpage.hxx>
-
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <unotools/accessiblestatesethelper.hxx>
-#include <vcl/tabctrl.hxx>
-#include <vcl/tabpage.hxx>
-
-#include <vector>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::accessibility;
-using namespace ::comphelper;
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleTabControl
-// ----------------------------------------------------
-
-VCLXAccessibleTabControl::VCLXAccessibleTabControl( VCLXWindow* pVCLXWindow )
- :VCLXAccessibleComponent( pVCLXWindow )
-{
- m_pTabControl = static_cast< TabControl* >( GetWindow() );
-
- if ( m_pTabControl )
- m_aAccessibleChildren.assign( m_pTabControl->GetPageCount(), Reference< XAccessible >() );
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleTabControl::~VCLXAccessibleTabControl()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabControl::UpdateFocused()
-{
- for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- VCLXAccessibleTabPage* pVCLXAccessibleTabPage = static_cast< VCLXAccessibleTabPage* >( xChild.get() );
- if ( pVCLXAccessibleTabPage )
- pVCLXAccessibleTabPage->SetFocused( pVCLXAccessibleTabPage->IsFocused() );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabControl::UpdateSelected( sal_Int32 i, bool bSelected )
-{
- NotifyAccessibleEvent( AccessibleEventId::SELECTION_CHANGED, Any(), Any() );
-
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- VCLXAccessibleTabPage* pVCLXAccessibleTabPage = static_cast< VCLXAccessibleTabPage* >( xChild.get() );
- if ( pVCLXAccessibleTabPage )
- pVCLXAccessibleTabPage->SetSelected( bSelected );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabControl::UpdatePageText( sal_Int32 i )
-{
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- VCLXAccessibleTabPage* pVCLXAccessibleTabPage = static_cast< VCLXAccessibleTabPage* >( xChild.get() );
- if ( pVCLXAccessibleTabPage )
- pVCLXAccessibleTabPage->SetPageText( pVCLXAccessibleTabPage->GetPageText() );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabControl::UpdateTabPage( sal_Int32 i, bool bNew )
-{
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
- if ( xChild.is() )
- {
- VCLXAccessibleTabPage* pVCLXAccessibleTabPage = static_cast< VCLXAccessibleTabPage* >( xChild.get() );
- if ( pVCLXAccessibleTabPage )
- pVCLXAccessibleTabPage->Update( bNew );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabControl::InsertChild( sal_Int32 i )
-{
- if ( i >= 0 && i <= (sal_Int32)m_aAccessibleChildren.size() )
- {
- // insert entry in child list
- m_aAccessibleChildren.insert( m_aAccessibleChildren.begin() + i, Reference< XAccessible >() );
-
- // send accessible child event
- Reference< XAccessible > xChild( getAccessibleChild( i ) );
- if ( xChild.is() )
- {
- Any aOldValue, aNewValue;
- aNewValue <<= xChild;
- NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabControl::RemoveChild( sal_Int32 i )
-{
- if ( i >= 0 && i < (sal_Int32)m_aAccessibleChildren.size() )
- {
- // get the accessible of the removed page
- Reference< XAccessible > xChild( m_aAccessibleChildren[i] );
-
- // remove entry in child list
- m_aAccessibleChildren.erase( m_aAccessibleChildren.begin() + i );
-
- // send accessible child event
- if ( xChild.is() )
- {
- Any aOldValue, aNewValue;
- aOldValue <<= xChild;
- NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
-
- Reference< XComponent > xComponent( xChild, UNO_QUERY );
- if ( xComponent.is() )
- xComponent->dispose();
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabControl::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
-{
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_TABPAGE_ACTIVATE:
- case VCLEVENT_TABPAGE_DEACTIVATE:
- {
- if ( m_pTabControl )
- {
- sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
- sal_uInt16 nPagePos = m_pTabControl->GetPagePos( nPageId );
- UpdateFocused();
- UpdateSelected( nPagePos, rVclWindowEvent.GetId() == VCLEVENT_TABPAGE_ACTIVATE );
- }
- }
- break;
- case VCLEVENT_TABPAGE_PAGETEXTCHANGED:
- {
- if ( m_pTabControl )
- {
- sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
- sal_uInt16 nPagePos = m_pTabControl->GetPagePos( nPageId );
- UpdatePageText( nPagePos );
- }
- }
- break;
- case VCLEVENT_TABPAGE_INSERTED:
- {
- if ( m_pTabControl )
- {
- sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
- sal_uInt16 nPagePos = m_pTabControl->GetPagePos( nPageId );
- InsertChild( nPagePos );
- }
- }
- break;
- case VCLEVENT_TABPAGE_REMOVED:
- {
- if ( m_pTabControl )
- {
- sal_uInt16 nPageId = (sal_uInt16)(sal_IntPtr) rVclWindowEvent.GetData();
- for ( sal_Int32 i = 0, nCount = getAccessibleChildCount(); i < nCount; ++i )
- {
- Reference< XAccessible > xChild( getAccessibleChild( i ) );
- if ( xChild.is() )
- {
- VCLXAccessibleTabPage* pVCLXAccessibleTabPage = static_cast< VCLXAccessibleTabPage* >( xChild.get() );
- if ( pVCLXAccessibleTabPage && pVCLXAccessibleTabPage->GetPageId() == nPageId )
- {
- RemoveChild( i );
- break;
- }
- }
- }
- }
- }
- break;
- case VCLEVENT_TABPAGE_REMOVEDALL:
- {
- for ( sal_Int32 i = m_aAccessibleChildren.size() - 1; i >= 0; --i )
- RemoveChild( i );
- }
- break;
- case VCLEVENT_WINDOW_GETFOCUS:
- case VCLEVENT_WINDOW_LOSEFOCUS:
- {
- UpdateFocused();
- }
- break;
- case VCLEVENT_OBJECT_DYING:
- {
- if ( m_pTabControl )
- {
- m_pTabControl = NULL;
-
- // dispose all tab pages
- for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
- {
- Reference< XComponent > xComponent( m_aAccessibleChildren[i], UNO_QUERY );
- if ( xComponent.is() )
- xComponent->dispose();
- }
- m_aAccessibleChildren.clear();
- }
-
- VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
- }
- break;
- default:
- VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabControl::ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent )
-{
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_WINDOW_SHOW:
- case VCLEVENT_WINDOW_HIDE:
- {
- if ( m_pTabControl )
- {
- Window* pChild = static_cast< Window* >( rVclWindowEvent.GetData() );
- if ( pChild && pChild->GetType() == WINDOW_TABPAGE )
- {
- for ( sal_Int32 i = 0, nCount = m_pTabControl->GetPageCount(); i < nCount; ++i )
- {
- sal_uInt16 nPageId = m_pTabControl->GetPageId( (sal_uInt16)i );
- TabPage* pTabPage = m_pTabControl->GetTabPage( nPageId );
- if ( pTabPage == (TabPage*) pChild )
- UpdateTabPage( i, rVclWindowEvent.GetId() == VCLEVENT_WINDOW_SHOW );
- }
- }
- }
- }
- break;
- default:
- VCLXAccessibleComponent::ProcessWindowChildEvent( rVclWindowEvent );
- }
-}
-
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabControl::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
-{
- VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
-
- if ( m_pTabControl )
- rStateSet.AddState( AccessibleStateType::FOCUSABLE );
-}
-
-// -----------------------------------------------------------------------------
-// XInterface
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleTabControl, VCLXAccessibleComponent, VCLXAccessibleTabControl_BASE )
-
-// -----------------------------------------------------------------------------
-// XTypeProvider
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleTabControl, VCLXAccessibleComponent, VCLXAccessibleTabControl_BASE )
-
-// -----------------------------------------------------------------------------
-// XComponent
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabControl::disposing()
-{
- VCLXAccessibleComponent::disposing();
-
- if ( m_pTabControl )
- {
- m_pTabControl = NULL;
-
- // dispose all tab pages
- for ( sal_uInt32 i = 0; i < m_aAccessibleChildren.size(); ++i )
- {
- Reference< XComponent > xComponent( m_aAccessibleChildren[i], UNO_QUERY );
- if ( xComponent.is() )
- xComponent->dispose();
- }
- m_aAccessibleChildren.clear();
- }
-}
-
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleTabControl::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.comp.toolkit.AccessibleTabControl") );
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< ::rtl::OUString > VCLXAccessibleTabControl::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM("com.sun.star.awt.AccessibleTabControl") );
- return aNames;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleTabControl::getAccessibleChildCount() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return m_aAccessibleChildren.size();
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > VCLXAccessibleTabControl::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( i < 0 || i >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- Reference< XAccessible > xChild = m_aAccessibleChildren[i];
- if ( !xChild.is() )
- {
- if ( m_pTabControl )
- {
- sal_uInt16 nPageId = m_pTabControl->GetPageId( (sal_uInt16)i );
-
- xChild = new VCLXAccessibleTabPage( m_pTabControl, nPageId );
-
- // insert into tab page list
- m_aAccessibleChildren[i] = xChild;
- }
- }
-
- return xChild;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int16 VCLXAccessibleTabControl::getAccessibleRole( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return AccessibleRole::PAGE_TAB_LIST;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleTabControl::getAccessibleName( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return ::rtl::OUString();
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleSelection
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabControl::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- if ( m_pTabControl )
- m_pTabControl->SelectTabPage( m_pTabControl->GetPageId( (sal_uInt16)nChildIndex ) );
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleTabControl::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- sal_Bool bSelected = sal_False;
- if ( m_pTabControl && m_pTabControl->GetCurPageId() == m_pTabControl->GetPageId( (sal_uInt16)nChildIndex ) )
- bSelected = sal_True;
-
- return bSelected;
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabControl::clearAccessibleSelection( ) throw (RuntimeException)
-{
- // This method makes no sense in a tab control, and so does nothing.
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabControl::selectAllAccessibleChildren( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- selectAccessibleChild( 0 );
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleTabControl::getSelectedAccessibleChildCount( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return 1;
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > VCLXAccessibleTabControl::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getSelectedAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- Reference< XAccessible > xChild;
-
- for ( sal_Int32 i = 0, j = 0, nCount = getAccessibleChildCount(); i < nCount; i++ )
- {
- if ( isAccessibleChildSelected( i ) && ( j++ == nSelectedChildIndex ) )
- {
- xChild = getAccessibleChild( i );
- break;
- }
- }
-
- return xChild;
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabControl::deselectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- // This method makes no sense in a tab control, and so does nothing.
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessibletabpage.cxx b/accessibility/source/standard/vclxaccessibletabpage.cxx
deleted file mode 100644
index 358f9cc28..000000000
--- a/accessibility/source/standard/vclxaccessibletabpage.cxx
+++ /dev/null
@@ -1,705 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessibletabpage.hxx>
-#include <toolkit/helper/externallock.hxx>
-#include <toolkit/helper/convert.hxx>
-#include <accessibility/helper/characterattributeshelper.hxx>
-
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
-#include <com/sun/star/datatransfer/clipboard/XFlushableClipboard.hpp>
-
-#include <unotools/accessiblestatesethelper.hxx>
-#include <unotools/accessiblerelationsethelper.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/unohelp2.hxx>
-#include <vcl/tabctrl.hxx>
-#include <vcl/tabpage.hxx>
-
-#include <memory>
-
-
-using namespace ::com::sun::star::accessibility;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star;
-using namespace ::comphelper;
-
-
-// -----------------------------------------------------------------------------
-// class VCLXAccessibleTabPage
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleTabPage::VCLXAccessibleTabPage( TabControl* pTabControl, sal_uInt16 nPageId )
- :AccessibleTextHelper_BASE( new VCLExternalSolarLock() )
- ,m_pTabControl( pTabControl )
- ,m_nPageId( nPageId )
-{
- m_pExternalLock = static_cast< VCLExternalSolarLock* >( getExternalLock() );
- m_bFocused = IsFocused();
- m_bSelected = IsSelected();
- m_sPageText = GetPageText();
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleTabPage::~VCLXAccessibleTabPage()
-{
- delete m_pExternalLock;
- m_pExternalLock = NULL;
-}
-
-// -----------------------------------------------------------------------------
-
-bool VCLXAccessibleTabPage::IsFocused()
-{
- bool bFocused = false;
-
- if ( m_pTabControl && m_pTabControl->HasFocus() && m_pTabControl->GetCurPageId() == m_nPageId )
- bFocused = true;
-
- return bFocused;
-}
-
-// -----------------------------------------------------------------------------
-
-bool VCLXAccessibleTabPage::IsSelected()
-{
- bool bSelected = false;
-
- if ( m_pTabControl && m_pTabControl->GetCurPageId() == m_nPageId )
- bSelected = true;
-
- return bSelected;
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabPage::SetFocused( bool bFocused )
-{
- if ( m_bFocused != bFocused )
- {
- Any aOldValue, aNewValue;
- if ( m_bFocused )
- aOldValue <<= AccessibleStateType::FOCUSED;
- else
- aNewValue <<= AccessibleStateType::FOCUSED;
- m_bFocused = bFocused;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabPage::SetSelected( bool bSelected )
-{
- if ( m_bSelected != bSelected )
- {
- Any aOldValue, aNewValue;
- if ( m_bSelected )
- aOldValue <<= AccessibleStateType::SELECTED;
- else
- aNewValue <<= AccessibleStateType::SELECTED;
- m_bSelected = bSelected;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabPage::SetPageText( const ::rtl::OUString& sPageText )
-{
- Any aOldValue, aNewValue;
- if ( OCommonAccessibleText::implInitTextChangedEvent( m_sPageText, sPageText, aOldValue, aNewValue ) )
- {
- Any aOldName, aNewName;
- aOldName <<= m_sPageText;
- aNewName <<= sPageText;
- m_sPageText = sPageText;
- NotifyAccessibleEvent( AccessibleEventId::NAME_CHANGED, aOldName, aNewName );
- NotifyAccessibleEvent( AccessibleEventId::TEXT_CHANGED, aOldValue, aNewValue );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleTabPage::GetPageText()
-{
- ::rtl::OUString sText;
- if ( m_pTabControl )
- sText = OutputDevice::GetNonMnemonicString( m_pTabControl->GetPageText( m_nPageId ) );
-
- return sText;
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabPage::Update( bool bNew )
-{
- if ( m_pTabControl )
- {
- TabPage* pTabPage = m_pTabControl->GetTabPage( m_nPageId );
- if ( pTabPage )
- {
- Reference< XAccessible > xChild( pTabPage->GetAccessible( bNew ) );
- if ( xChild.is() )
- {
- Any aOldValue, aNewValue;
- if ( bNew )
- aNewValue <<= xChild;
- else
- aOldValue <<= xChild;
- NotifyAccessibleEvent( AccessibleEventId::CHILD, aOldValue, aNewValue );
- }
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabPage::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
-{
- rStateSet.AddState( AccessibleStateType::ENABLED );
- rStateSet.AddState( AccessibleStateType::SENSITIVE );
-
- rStateSet.AddState( AccessibleStateType::FOCUSABLE );
-
- if ( IsFocused() )
- rStateSet.AddState( AccessibleStateType::FOCUSED );
-
- rStateSet.AddState( AccessibleStateType::VISIBLE );
-
- rStateSet.AddState( AccessibleStateType::SHOWING );
-
- rStateSet.AddState( AccessibleStateType::SELECTABLE );
-
- if ( IsSelected() )
- rStateSet.AddState( AccessibleStateType::SELECTED );
-}
-
-// -----------------------------------------------------------------------------
-// OCommonAccessibleComponent
-// -----------------------------------------------------------------------------
-
-awt::Rectangle VCLXAccessibleTabPage::implGetBounds() throw (RuntimeException)
-{
- awt::Rectangle aBounds( 0, 0, 0, 0 );
-
- if ( m_pTabControl )
- aBounds = AWTRectangle( m_pTabControl->GetTabBounds( m_nPageId ) );
-
- return aBounds;
-}
-
-// -----------------------------------------------------------------------------
-// OCommonAccessibleText
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleTabPage::implGetText()
-{
- return GetPageText();
-}
-
-// -----------------------------------------------------------------------------
-
-lang::Locale VCLXAccessibleTabPage::implGetLocale()
-{
- return Application::GetSettings().GetLocale();
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabPage::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
-{
- nStartIndex = 0;
- nEndIndex = 0;
-}
-
-// -----------------------------------------------------------------------------
-// XInterface
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleTabPage, AccessibleTextHelper_BASE, VCLXAccessibleTabPage_BASE )
-
-// -----------------------------------------------------------------------------
-// XTypeProvider
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleTabPage, AccessibleTextHelper_BASE, VCLXAccessibleTabPage_BASE )
-
-// -----------------------------------------------------------------------------
-// XComponent
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabPage::disposing()
-{
- AccessibleTextHelper_BASE::disposing();
-
- m_pTabControl = NULL;
- m_sPageText = ::rtl::OUString();
-}
-
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleTabPage::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.toolkit.AccessibleTabPage" ));
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleTabPage::supportsService( const ::rtl::OUString& rServiceName ) throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames( getSupportedServiceNames() );
- const ::rtl::OUString* pNames = aNames.getConstArray();
- const ::rtl::OUString* pEnd = pNames + aNames.getLength();
- for ( ; pNames != pEnd && !pNames->equals( rServiceName ); ++pNames )
- ;
-
- return pNames != pEnd;
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< ::rtl::OUString > VCLXAccessibleTabPage::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames(1);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.awt.AccessibleTabPage" ));
- return aNames;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessible
-// -----------------------------------------------------------------------------
-
-Reference< XAccessibleContext > VCLXAccessibleTabPage::getAccessibleContext( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return this;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleTabPage::getAccessibleChildCount() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nCount = 0;
- if ( m_pTabControl )
- {
- TabPage* pTabPage = m_pTabControl->GetTabPage( m_nPageId );
- if ( pTabPage && pTabPage->IsVisible() )
- nCount = 1;
- }
-
- return nCount;
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > VCLXAccessibleTabPage::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( i < 0 || i >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- Reference< XAccessible > xChild;
- if ( m_pTabControl )
- {
- TabPage* pTabPage = m_pTabControl->GetTabPage( m_nPageId );
- if ( pTabPage && pTabPage->IsVisible() )
- xChild = pTabPage->GetAccessible();
- }
-
- return xChild;
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > VCLXAccessibleTabPage::getAccessibleParent( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Reference< XAccessible > xParent;
- if ( m_pTabControl )
- xParent = m_pTabControl->GetAccessible();
-
- return xParent;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleTabPage::getAccessibleIndexInParent( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nIndexInParent = -1;
- if ( m_pTabControl )
- nIndexInParent = m_pTabControl->GetPagePos( m_nPageId );
-
- return nIndexInParent;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int16 VCLXAccessibleTabPage::getAccessibleRole( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return AccessibleRole::PAGE_TAB;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleTabPage::getAccessibleDescription( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- ::rtl::OUString sDescription;
- if ( m_pTabControl )
- sDescription = m_pTabControl->GetHelpText( m_nPageId );
-
- return sDescription;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleTabPage::getAccessibleName( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return GetPageText();
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessibleRelationSet > VCLXAccessibleTabPage::getAccessibleRelationSet( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
- Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
- return xSet;
-}
-
-// -----------------------------------------------------------------------------
-
-Reference< XAccessibleStateSet > VCLXAccessibleTabPage::getAccessibleStateSet( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
- Reference< XAccessibleStateSet > xSet = pStateSetHelper;
-
- if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
- {
- FillAccessibleStateSet( *pStateSetHelper );
- }
- else
- {
- pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
- }
-
- return xSet;
-}
-
-// -----------------------------------------------------------------------------
-
-Locale VCLXAccessibleTabPage::getLocale( ) throw (IllegalAccessibleComponentStateException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return Application::GetSettings().GetLocale();
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleComponent
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > VCLXAccessibleTabPage::getAccessibleAtPoint( const awt::Point& rPoint ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Reference< XAccessible > xChild;
- for ( sal_uInt32 i = 0, nCount = getAccessibleChildCount(); i < nCount; ++i )
- {
- Reference< XAccessible > xAcc = getAccessibleChild( i );
- if ( xAcc.is() )
- {
- Reference< XAccessibleComponent > xComp( xAcc->getAccessibleContext(), UNO_QUERY );
- if ( xComp.is() )
- {
- Rectangle aRect = VCLRectangle( xComp->getBounds() );
- Point aPos = VCLPoint( rPoint );
- if ( aRect.IsInside( aPos ) )
- {
- xChild = xAcc;
- break;
- }
- }
- }
- }
-
- return xChild;
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabPage::grabFocus( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( m_pTabControl )
- {
- m_pTabControl->SelectTabPage( m_nPageId );
- m_pTabControl->GrabFocus();
- }
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleTabPage::getForeground( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nColor = 0;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- nColor = xParentComp->getForeground();
- }
-
- return nColor;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleTabPage::getBackground( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nColor = 0;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- nColor = xParentComp->getBackground();
- }
-
- return nColor;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleExtendedComponent
-// -----------------------------------------------------------------------------
-
-Reference< awt::XFont > VCLXAccessibleTabPage::getFont( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Reference< awt::XFont > xFont;
- Reference< XAccessible > xParent = getAccessibleParent();
- if ( xParent.is() )
- {
- Reference< XAccessibleExtendedComponent > xParentComp( xParent->getAccessibleContext(), UNO_QUERY );
- if ( xParentComp.is() )
- xFont = xParentComp->getFont();
- }
-
- return xFont;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleTabPage::getTitledBorderText( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return ::rtl::OUString();
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleTabPage::getToolTipText( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return ::rtl::OUString();
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleText
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleTabPage::getCaretPosition() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return -1;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleTabPage::setCaretPosition( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< PropertyValue > VCLXAccessibleTabPage::getCharacterAttributes( sal_Int32 nIndex, const Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Sequence< PropertyValue > aValues;
- ::rtl::OUString sText( implGetText() );
-
- if ( !implIsValidIndex( nIndex, sText.getLength() ) )
- throw IndexOutOfBoundsException();
-
- if ( m_pTabControl )
- {
- Font aFont = m_pTabControl->GetFont();
- sal_Int32 nBackColor = getBackground();
- sal_Int32 nColor = getForeground();
- ::std::auto_ptr< CharacterAttributesHelper > pHelper( new CharacterAttributesHelper( aFont, nBackColor, nColor ) );
- aValues = pHelper->GetCharacterAttributes( aRequestedAttributes );
- }
-
- return aValues;
-}
-
-// -----------------------------------------------------------------------------
-
-awt::Rectangle VCLXAccessibleTabPage::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( !implIsValidIndex( nIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- awt::Rectangle aBounds( 0, 0, 0, 0 );
- if ( m_pTabControl )
- {
- Rectangle aPageRect = m_pTabControl->GetTabBounds( m_nPageId );
- Rectangle aCharRect = m_pTabControl->GetCharacterBounds( m_nPageId, nIndex );
- aCharRect.Move( -aPageRect.Left(), -aPageRect.Top() );
- aBounds = AWTRectangle( aCharRect );
- }
-
- return aBounds;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleTabPage::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nIndex = -1;
- if ( m_pTabControl )
- {
- sal_uInt16 nPageId = 0;
- Rectangle aPageRect = m_pTabControl->GetTabBounds( m_nPageId );
- Point aPnt( VCLPoint( aPoint ) );
- aPnt += aPageRect.TopLeft();
- sal_Int32 nI = m_pTabControl->GetIndexForPoint( aPnt, nPageId );
- if ( nI != -1 && m_nPageId == nPageId )
- nIndex = nI;
- }
-
- return nIndex;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleTabPage::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleTabPage::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Bool bReturn = sal_False;
-
- if ( m_pTabControl )
- {
- Reference< datatransfer::clipboard::XClipboard > xClipboard = m_pTabControl->GetClipboard();
- if ( xClipboard.is() )
- {
- ::rtl::OUString sText( getTextRange( nStartIndex, nEndIndex ) );
-
- ::vcl::unohelper::TextDataObject* pDataObj = new ::vcl::unohelper::TextDataObject( sText );
- const sal_uInt32 nRef = Application::ReleaseSolarMutex();
- xClipboard->setContents( pDataObj, NULL );
-
- Reference< datatransfer::clipboard::XFlushableClipboard > xFlushableClipboard( xClipboard, uno::UNO_QUERY );
- if( xFlushableClipboard.is() )
- xFlushableClipboard->flushClipboard();
-
- Application::AcquireSolarMutex( nRef );
-
- bReturn = sal_True;
- }
- }
-
- return bReturn;
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessibletabpagewindow.cxx b/accessibility/source/standard/vclxaccessibletabpagewindow.cxx
deleted file mode 100644
index a9d3afd95..000000000
--- a/accessibility/source/standard/vclxaccessibletabpagewindow.cxx
+++ /dev/null
@@ -1,144 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessibletabpagewindow.hxx>
-#include <toolkit/helper/convert.hxx>
-#include <vcl/tabctrl.hxx>
-#include <vcl/tabpage.hxx>
-
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::accessibility;
-using namespace ::comphelper;
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleTabPageWindow
-// ----------------------------------------------------
-
-VCLXAccessibleTabPageWindow::VCLXAccessibleTabPageWindow( VCLXWindow* pVCLXWindow )
- :VCLXAccessibleComponent( pVCLXWindow )
-{
- m_pTabPage = static_cast< TabPage* >( GetWindow() );
- if ( m_pTabPage )
- {
- Window* pParent = m_pTabPage->GetAccessibleParentWindow();
- if ( pParent && pParent->GetType() == WINDOW_TABCONTROL )
- {
- m_pTabControl = static_cast< TabControl* >( pParent );
- if ( m_pTabControl )
- {
- for ( sal_uInt16 i = 0, nCount = m_pTabControl->GetPageCount(); i < nCount; ++i )
- {
- sal_uInt16 nPageId = m_pTabControl->GetPageId( i );
- if ( m_pTabControl->GetTabPage( nPageId ) == m_pTabPage )
- m_nPageId = nPageId;
- }
- }
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleTabPageWindow::~VCLXAccessibleTabPageWindow()
-{
-}
-
-// -----------------------------------------------------------------------------
-// OCommonAccessibleComponent
-// -----------------------------------------------------------------------------
-
-awt::Rectangle VCLXAccessibleTabPageWindow::implGetBounds() throw (RuntimeException)
-{
- awt::Rectangle aBounds( 0, 0, 0, 0 );
-
- if ( m_pTabControl )
- {
- Rectangle aPageRect = m_pTabControl->GetTabBounds( m_nPageId );
- if ( m_pTabPage )
- {
- Rectangle aRect = Rectangle( m_pTabPage->GetPosPixel(), m_pTabPage->GetSizePixel() );
- aRect.Move( -aPageRect.Left(), -aPageRect.Top() );
- aBounds = AWTRectangle( aRect );
- }
- }
-
- return aBounds;
-}
-
-// -----------------------------------------------------------------------------
-// XComponent
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTabPageWindow::disposing()
-{
- VCLXAccessibleComponent::disposing();
-
- m_pTabControl = NULL;
- m_pTabPage = NULL;
-}
-
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-
-Reference< XAccessible > VCLXAccessibleTabPageWindow::getAccessibleParent( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Reference< XAccessible > xParent;
- if ( m_pTabControl )
- {
- Reference< XAccessible > xAcc( m_pTabControl->GetAccessible() );
- if ( xAcc.is() )
- {
- Reference< XAccessibleContext > xCont( xAcc->getAccessibleContext() );
- if ( xCont.is() )
- xParent = xCont->getAccessibleChild( m_pTabControl->GetPagePos( m_nPageId ) );
- }
- }
-
- return xParent;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleTabPageWindow::getAccessibleIndexInParent( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return 0;
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessibletextcomponent.cxx b/accessibility/source/standard/vclxaccessibletextcomponent.cxx
deleted file mode 100644
index ead524a34..000000000
--- a/accessibility/source/standard/vclxaccessibletextcomponent.cxx
+++ /dev/null
@@ -1,365 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessibletextcomponent.hxx>
-#include <toolkit/helper/macros.hxx>
-#include <toolkit/helper/convert.hxx>
-#include <accessibility/helper/characterattributeshelper.hxx>
-
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
-#include <com/sun/star/datatransfer/clipboard/XFlushableClipboard.hpp>
-#include <cppuhelper/typeprovider.hxx>
-#include <comphelper/sequence.hxx>
-#include <vcl/window.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/unohelp2.hxx>
-#include <vcl/ctrl.hxx>
-
-#include <memory>
-#include <vector>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::accessibility;
-using namespace ::comphelper;
-
-
-// ----------------------------------------------------
-// class VCLXAccessibleTextComponent
-// ----------------------------------------------------
-
-VCLXAccessibleTextComponent::VCLXAccessibleTextComponent( VCLXWindow* pVCLXWindow )
- :VCLXAccessibleComponent( pVCLXWindow )
-{
- if ( GetWindow() )
- m_sText = OutputDevice::GetNonMnemonicString( GetWindow()->GetText() );
-}
-
-// -----------------------------------------------------------------------------
-
-VCLXAccessibleTextComponent::~VCLXAccessibleTextComponent()
-{
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTextComponent::SetText( const ::rtl::OUString& sText )
-{
- Any aOldValue, aNewValue;
- if ( implInitTextChangedEvent( m_sText, sText, aOldValue, aNewValue ) )
- {
- m_sText = sText;
- NotifyAccessibleEvent( AccessibleEventId::TEXT_CHANGED, aOldValue, aNewValue );
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTextComponent::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
-{
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_WINDOW_FRAMETITLECHANGED:
- {
- VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
- SetText( implGetText() );
- }
- break;
- default:
- VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
- }
-}
-
-// -----------------------------------------------------------------------------
-// OCommonAccessibleText
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleTextComponent::implGetText()
-{
- ::rtl::OUString aText;
- if ( GetWindow() )
- aText = OutputDevice::GetNonMnemonicString( GetWindow()->GetText() );
-
- return aText;
-}
-
-// -----------------------------------------------------------------------------
-
-lang::Locale VCLXAccessibleTextComponent::implGetLocale()
-{
- return Application::GetSettings().GetLocale();
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTextComponent::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
-{
- nStartIndex = 0;
- nEndIndex = 0;
-}
-
-// -----------------------------------------------------------------------------
-// XComponent
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleTextComponent::disposing()
-{
- VCLXAccessibleComponent::disposing();
-
- m_sText = ::rtl::OUString();
-}
-
-// -----------------------------------------------------------------------------
-// XInterface
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleTextComponent, VCLXAccessibleComponent, VCLXAccessibleTextComponent_BASE )
-
-// -----------------------------------------------------------------------------
-// XTypeProvider
-// -----------------------------------------------------------------------------
-
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleTextComponent, VCLXAccessibleComponent, VCLXAccessibleTextComponent_BASE )
-
-// -----------------------------------------------------------------------------
-// XAccessibleText
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleTextComponent::getCaretPosition() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return -1;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleTextComponent::setCaretPosition( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return setSelection( nIndex, nIndex );
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Unicode VCLXAccessibleTextComponent::getCharacter( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getCharacter( nIndex );
-}
-
-// -----------------------------------------------------------------------------
-
-Sequence< PropertyValue > VCLXAccessibleTextComponent::getCharacterAttributes( sal_Int32 nIndex, const Sequence< ::rtl::OUString >& aRequestedAttributes ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Sequence< PropertyValue > aValues;
- ::rtl::OUString sText( implGetText() );
-
- if ( !implIsValidIndex( nIndex, sText.getLength() ) )
- throw IndexOutOfBoundsException();
-
- if ( GetWindow() )
- {
- Font aFont = GetWindow()->GetControlFont();
- sal_Int32 nBackColor = GetWindow()->GetControlBackground().GetColor();
- sal_Int32 nColor = GetWindow()->GetControlForeground().GetColor();
- ::std::auto_ptr< CharacterAttributesHelper > pHelper( new CharacterAttributesHelper( aFont, nBackColor, nColor ) );
- aValues = pHelper->GetCharacterAttributes( aRequestedAttributes );
- }
-
- return aValues;
-}
-
-// -----------------------------------------------------------------------------
-
-awt::Rectangle VCLXAccessibleTextComponent::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( !implIsValidIndex( nIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- awt::Rectangle aRect;
- Control* pControl = static_cast< Control* >( GetWindow() );
- if ( pControl )
- aRect = AWTRectangle( pControl->GetCharacterBounds( nIndex ) );
-
- return aRect;
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleTextComponent::getCharacterCount() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getCharacterCount();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleTextComponent::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nIndex = -1;
- Control* pControl = static_cast< Control* >( GetWindow() );
- if ( pControl )
- nIndex = pControl->GetIndexForPoint( VCLPoint( aPoint ) );
-
- return nIndex;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleTextComponent::getSelectedText() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getSelectedText();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleTextComponent::getSelectionStart() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getSelectionStart();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Int32 VCLXAccessibleTextComponent::getSelectionEnd() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getSelectionEnd();
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleTextComponent::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleTextComponent::getText() throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getText();
-}
-
-// -----------------------------------------------------------------------------
-
-::rtl::OUString VCLXAccessibleTextComponent::getTextRange( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getTextRange( nStartIndex, nEndIndex );
-}
-
-// -----------------------------------------------------------------------------
-
-::com::sun::star::accessibility::TextSegment VCLXAccessibleTextComponent::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getTextAtIndex( nIndex, aTextType );
-}
-
-// -----------------------------------------------------------------------------
-
-::com::sun::star::accessibility::TextSegment VCLXAccessibleTextComponent::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getTextBeforeIndex( nIndex, aTextType );
-}
-
-// -----------------------------------------------------------------------------
-
-::com::sun::star::accessibility::TextSegment VCLXAccessibleTextComponent::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- return OCommonAccessibleText::getTextBehindIndex( nIndex, aTextType );
-}
-
-// -----------------------------------------------------------------------------
-
-sal_Bool VCLXAccessibleTextComponent::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Bool bReturn = sal_False;
-
- if ( GetWindow() )
- {
- Reference< datatransfer::clipboard::XClipboard > xClipboard = GetWindow()->GetClipboard();
- if ( xClipboard.is() )
- {
- ::rtl::OUString sText( getTextRange( nStartIndex, nEndIndex ) );
-
- ::vcl::unohelper::TextDataObject* pDataObj = new ::vcl::unohelper::TextDataObject( sText );
- const sal_uInt32 nRef = Application::ReleaseSolarMutex();
- xClipboard->setContents( pDataObj, NULL );
-
- Reference< datatransfer::clipboard::XFlushableClipboard > xFlushableClipboard( xClipboard, uno::UNO_QUERY );
- if( xFlushableClipboard.is() )
- xFlushableClipboard->flushClipboard();
-
- Application::AcquireSolarMutex( nRef );
-
- bReturn = sal_True;
- }
- }
-
- return bReturn;
-}
-
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessibletextfield.cxx b/accessibility/source/standard/vclxaccessibletextfield.cxx
deleted file mode 100644
index 189de3774..000000000
--- a/accessibility/source/standard/vclxaccessibletextfield.cxx
+++ /dev/null
@@ -1,156 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessibletextfield.hxx>
-#include <vcl/lstbox.hxx>
-#include <accessibility/helper/listboxhelper.hxx>
-
-#include <unotools/accessiblestatesethelper.hxx>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <vcl/svapp.hxx>
-#include <vcl/combobox.hxx>
-
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::accessibility;
-
-
-
-
-VCLXAccessibleTextField::VCLXAccessibleTextField (VCLXWindow* pVCLWindow, const Reference< XAccessible >& _xParent) :
-
- VCLXAccessibleTextComponent (pVCLWindow),
-
- m_xParent( _xParent )
-
-{
-}
-
-
-
-
-VCLXAccessibleTextField::~VCLXAccessibleTextField (void)
-{
-}
-
-
-
-
-::rtl::OUString VCLXAccessibleTextField::implGetText (void)
-{
- ::rtl::OUString aText;
- ListBox* pListBox = static_cast<ListBox*>(GetWindow());
- if (pListBox!=NULL && !pListBox->IsInDropDown())
- aText = pListBox->GetSelectEntry();
-
- return aText;
-}
-
-
-
-
-IMPLEMENT_FORWARD_XINTERFACE2(VCLXAccessibleTextField, VCLXAccessibleTextComponent, VCLXAccessible_BASE)
-IMPLEMENT_FORWARD_XTYPEPROVIDER2(VCLXAccessibleTextField, VCLXAccessibleTextComponent, VCLXAccessible_BASE)
-
-
-//===== XAccessible =========================================================
-
-Reference<XAccessibleContext> SAL_CALL
- VCLXAccessibleTextField::getAccessibleContext (void)
- throw (RuntimeException)
-{
- return this;
-}
-
-
-//===== XAccessibleContext ==================================================
-
-sal_Int32 SAL_CALL VCLXAccessibleTextField::getAccessibleChildCount (void)
- throw (RuntimeException)
-{
- return 0;
-}
-
-
-
-
-Reference<XAccessible> SAL_CALL VCLXAccessibleTextField::getAccessibleChild (sal_Int32)
- throw (IndexOutOfBoundsException, RuntimeException)
-{
- throw IndexOutOfBoundsException();
-}
-
-
-
-
-sal_Int16 SAL_CALL VCLXAccessibleTextField::getAccessibleRole (void)
- throw (RuntimeException)
-{
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- return AccessibleRole::TEXT;
-}
-
-Reference< XAccessible > SAL_CALL VCLXAccessibleTextField::getAccessibleParent( )
- throw (RuntimeException)
-{
- ::osl::Guard< ::osl::Mutex > aGuard( GetMutex() );
-
- return m_xParent;
-}
-
-
-
-//===== XServiceInfo ==========================================================
-
-::rtl::OUString VCLXAccessibleTextField::getImplementationName (void)
- throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.toolkit.AccessibleTextField" ));
-}
-
-
-
-
-Sequence< ::rtl::OUString > VCLXAccessibleTextField::getSupportedServiceNames (void)
- throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames = VCLXAccessibleTextComponent::getSupportedServiceNames();
- sal_Int32 nLength = aNames.getLength();
- aNames.realloc( nLength + 1 );
- aNames[nLength] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleTextField" ));
- return aNames;
-}
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessibletoolbox.cxx b/accessibility/source/standard/vclxaccessibletoolbox.cxx
deleted file mode 100644
index d2addb460..000000000
--- a/accessibility/source/standard/vclxaccessibletoolbox.cxx
+++ /dev/null
@@ -1,884 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-
-// includes --------------------------------------------------------------
-#include <accessibility/standard/vclxaccessibletoolbox.hxx>
-#include <accessibility/standard/vclxaccessibletoolboxitem.hxx>
-#include <toolkit/helper/convert.hxx>
-
-#include <unotools/accessiblestatesethelper.hxx>
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/lang/XUnoTunnel.hpp>
-#include <tools/debug.hxx>
-#include <vcl/toolbox.hxx>
-#include <comphelper/accessiblewrapper.hxx>
-#include <comphelper/processfactory.hxx>
-
-using namespace ::comphelper;
-using namespace ::com::sun::star;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star::accessibility;
-
-namespace
-{
- // =========================================================================
- // = OToolBoxWindowItemContext
- // =========================================================================
- /** XAccessibleContext implementation for a toolbox item which is represented by a VCL Window
- */
- class OToolBoxWindowItemContext : public OAccessibleContextWrapper
- {
- sal_Int32 m_nIndexInParent;
- public:
- OToolBoxWindowItemContext(sal_Int32 _nIndexInParent,
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB,
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >& _rxInnerAccessibleContext,
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxOwningAccessible,
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParentAccessible
- ) : OAccessibleContextWrapper(
- _rxORB,
- _rxInnerAccessibleContext,
- _rxOwningAccessible,
- _rxParentAccessible )
- ,m_nIndexInParent(_nIndexInParent)
- {
- }
- virtual sal_Int32 SAL_CALL getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException);
- };
-
- // -------------------------------------------------------------------------
- sal_Int32 SAL_CALL OToolBoxWindowItemContext::getAccessibleIndexInParent( ) throw (::com::sun::star::uno::RuntimeException)
- {
- ::osl::MutexGuard aGuard( m_aMutex );
- return m_nIndexInParent;
- }
-
- // =========================================================================
- // = OToolBoxWindowItem
- // =========================================================================
- typedef ::cppu::ImplHelper1 < XUnoTunnel
- > OToolBoxWindowItem_Base;
-
- /** XAccessible implementation for a toolbox item which is represented by a VCL Window
- */
- class OToolBoxWindowItem
- :public OAccessibleWrapper
- ,public OToolBoxWindowItem_Base
- {
- private:
- sal_Int32 m_nIndexInParent;
-
- public:
- inline sal_Int32 getIndexInParent() const { return m_nIndexInParent; }
- inline void setIndexInParent( sal_Int32 _nNewIndex ) { m_nIndexInParent = _nNewIndex; }
-
- static sal_Bool isWindowItem( const Reference< XAccessible >& _rxAcc, OToolBoxWindowItem** /* [out] */ _ppImplementation = NULL );
-
- public:
- OToolBoxWindowItem(sal_Int32 _nIndexInParent,
- const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& _rxORB,
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxInnerAccessible,
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessible >& _rxParentAccessible
- ) : OAccessibleWrapper(
- _rxORB,
- _rxInnerAccessible,
- _rxParentAccessible)
- ,m_nIndexInParent(_nIndexInParent)
- {
- }
-
- protected:
- // XInterface
- DECLARE_XINTERFACE( )
- DECLARE_XTYPEPROVIDER( )
-
- // OAccessibleWrapper
- virtual OAccessibleContextWrapper* createAccessibleContext(
- const ::com::sun::star::uno::Reference< ::com::sun::star::accessibility::XAccessibleContext >& _rxInnerContext
- );
-
- // XUnoTunnel
- virtual sal_Int64 SAL_CALL getSomething( const Sequence< sal_Int8 >& aIdentifier ) throw (RuntimeException);
- static Sequence< sal_Int8 > getUnoTunnelImplementationId();
- };
-
- // -------------------------------------------------------------------------
- IMPLEMENT_FORWARD_XINTERFACE2( OToolBoxWindowItem, OAccessibleWrapper, OToolBoxWindowItem_Base )
- IMPLEMENT_FORWARD_XTYPEPROVIDER2( OToolBoxWindowItem, OAccessibleWrapper, OToolBoxWindowItem_Base )
-
- // -------------------------------------------------------------------------
- OAccessibleContextWrapper* OToolBoxWindowItem::createAccessibleContext(
- const Reference< XAccessibleContext >& _rxInnerContext )
- {
- return new OToolBoxWindowItemContext( m_nIndexInParent,getORB(), _rxInnerContext, this, getParent() );
- }
-
- //--------------------------------------------------------------------
- sal_Bool OToolBoxWindowItem::isWindowItem( const Reference< XAccessible >& _rxAcc, OToolBoxWindowItem** /* [out] */ _ppImplementation )
- {
- OToolBoxWindowItem* pImplementation = NULL;
-
- Reference< XUnoTunnel > xTunnel( _rxAcc, UNO_QUERY );
- if ( xTunnel.is() )
- pImplementation = reinterpret_cast< OToolBoxWindowItem* >( xTunnel->getSomething( getUnoTunnelImplementationId() ) );
-
- if ( _ppImplementation )
- *_ppImplementation = pImplementation;
-
- return NULL != pImplementation;
- }
-
- //--------------------------------------------------------------------
- Sequence< sal_Int8 > OToolBoxWindowItem::getUnoTunnelImplementationId()
- {
- static ::cppu::OImplementationId * pId = 0;
- if (! pId)
- {
- ::osl::MutexGuard aGuard( ::osl::Mutex::getGlobalMutex() );
- if (! pId)
- {
- static ::cppu::OImplementationId aId;
- pId = &aId;
- }
- }
- return pId->getImplementationId();
- }
-
- //--------------------------------------------------------------------
- sal_Int64 SAL_CALL OToolBoxWindowItem::getSomething( const Sequence< sal_Int8 >& _rId ) throw (RuntimeException)
- {
- if ( ( 16 == _rId.getLength() )
- && ( 0 == rtl_compareMemory( getUnoTunnelImplementationId().getConstArray(), _rId.getConstArray(), 16 ) )
- )
- return reinterpret_cast< sal_Int64>( this );
-
- return 0;
- }
-}
-
-DBG_NAME(VCLXAccessibleToolBox)
-
-// -----------------------------------------------------------------------------
-// VCLXAccessibleToolBox
-// -----------------------------------------------------------------------------
-VCLXAccessibleToolBox::VCLXAccessibleToolBox( VCLXWindow* pVCLXWindow ) :
-
- VCLXAccessibleComponent( pVCLXWindow )
-
-{
- DBG_CTOR(VCLXAccessibleToolBox,NULL);
-}
-// -----------------------------------------------------------------------------
-VCLXAccessibleToolBox::~VCLXAccessibleToolBox()
-{
- DBG_DTOR(VCLXAccessibleToolBox,NULL);
-}
-// -----------------------------------------------------------------------------
-VCLXAccessibleToolBoxItem* VCLXAccessibleToolBox::GetItem_Impl( sal_Int32 _nPos, bool _bMustHaveFocus )
-{
- VCLXAccessibleToolBoxItem* pItem = NULL;
- ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
- if ( pToolBox && ( !_bMustHaveFocus || pToolBox->HasFocus() ) )
- {
- ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.find( _nPos );
- // returns only toolbox buttons, not windows
- if ( aIter != m_aAccessibleChildren.end() && !aIter->second.is())
- pItem = static_cast< VCLXAccessibleToolBoxItem* >( aIter->second.get() );
- }
-
- return pItem;
-}
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleToolBox::UpdateFocus_Impl()
-{
- ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
- if( !pToolBox )
- return;
-
- // submit events only if toolbox has the focus to avoid sending events due to mouse move
- sal_Bool bHasFocus = sal_False;
- if ( pToolBox->HasFocus() )
- bHasFocus = sal_True;
- else
- {
- // check for subtoolbar, i.e. check if our parent is a toolbar
- ToolBox* pToolBoxParent = dynamic_cast< ToolBox* >( pToolBox->GetParent() );
- // subtoolbars never get the focus as key input is just forwarded, so check if the parent toolbar has it
- if ( pToolBoxParent && pToolBoxParent->HasFocus() )
- bHasFocus = sal_True;
- }
-
- if ( bHasFocus )
- {
- sal_uInt16 nHighlightItemId = pToolBox->GetHighlightItemId();
- sal_uInt16 nFocusCount = 0;
- for ( ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.begin();
- aIter != m_aAccessibleChildren.end(); ++aIter )
- {
- sal_uInt16 nItemId = pToolBox->GetItemId( (sal_uInt16)aIter->first );
-
- if ( aIter->second.is() )
- {
- VCLXAccessibleToolBoxItem* pItem =
- static_cast< VCLXAccessibleToolBoxItem* >( aIter->second.get() );
- if ( pItem->HasFocus() && nItemId != nHighlightItemId )
- {
- // reset the old focused item
- pItem->SetFocus( sal_False );
- nFocusCount++;
- }
- if ( nItemId == nHighlightItemId )
- {
- // set the new focused item
- pItem->SetFocus( sal_True );
- nFocusCount++;
- }
- }
- // both items changed?
- if ( nFocusCount > 1 )
- break;
- }
- }
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBox::ReleaseFocus_Impl( sal_Int32 _nPos )
-{
- ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
- if ( pToolBox ) // #107124#, do not check for focus because this message is also handled in losefocus
- {
- ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.find( _nPos );
- if ( aIter != m_aAccessibleChildren.end() && aIter->second.is() )
- {
- VCLXAccessibleToolBoxItem* pItem =
- static_cast< VCLXAccessibleToolBoxItem* >( aIter->second.get() );
- if ( pItem->HasFocus() )
- pItem->SetFocus( sal_False );
- }
- }
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBox::UpdateChecked_Impl( sal_Int32 )
-{
- ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
- if ( pToolBox )
- {
- for ( ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.begin();
- aIter != m_aAccessibleChildren.end(); ++aIter )
- {
- sal_uInt16 nItemId = pToolBox->GetItemId( (sal_uInt16)aIter->first );
-
- VCLXAccessibleToolBoxItem* pItem =
- static_cast< VCLXAccessibleToolBoxItem* >( aIter->second.get() );
- pItem->SetChecked( pToolBox->IsItemChecked( nItemId ) );
- }
- }
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBox::UpdateIndeterminate_Impl( sal_Int32 _nPos )
-{
- ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
- if ( pToolBox )
- {
- sal_uInt16 nItemId = pToolBox->GetItemId( (sal_uInt16)_nPos );
-
- ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.find( _nPos );
- if ( aIter != m_aAccessibleChildren.end() && aIter->second.is() )
- {
- VCLXAccessibleToolBoxItem* pItem =
- static_cast< VCLXAccessibleToolBoxItem* >( aIter->second.get() );
- if ( pItem )
- pItem->SetIndeterminate( pToolBox->GetItemState( nItemId ) == STATE_DONTKNOW );
- }
- }
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBox::implReleaseToolboxItem( ToolBoxItemsMap::iterator& _rMapPos,
- bool _bNotifyRemoval, bool _bDispose )
-{
- Reference< XAccessible > xItemAcc( _rMapPos->second );
- if ( !xItemAcc.is() )
- return;
-
- if ( _bNotifyRemoval )
- {
- NotifyAccessibleEvent( AccessibleEventId::CHILD, makeAny( xItemAcc ), Any() );
- }
-
- OToolBoxWindowItem* pWindowItem = NULL;
- if ( !OToolBoxWindowItem::isWindowItem( xItemAcc, &pWindowItem ) )
- {
- static_cast< VCLXAccessibleToolBoxItem* >( xItemAcc.get() )->ReleaseToolBox();
- if ( _bDispose )
- ::comphelper::disposeComponent( xItemAcc );
- }
- else
- {
- if ( _bDispose )
- {
- if ( pWindowItem )
- {
- Reference< XAccessibleContext > xContext( pWindowItem->getContextNoCreate() );
- ::comphelper::disposeComponent( xContext );
- }
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBox::UpdateItem_Impl( sal_Int32 _nPos, sal_Bool _bItemAdded )
-{
- if ( _nPos < sal_Int32( m_aAccessibleChildren.size() ) )
- {
- UpdateAllItems_Impl();
- return;
- }
-
- ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
- if ( pToolBox )
- {
- if ( !_bItemAdded )
- { // the item was removed
- // -> destroy the old item
- ToolBoxItemsMap::iterator aItemPos = m_aAccessibleChildren.find( _nPos );
- if ( m_aAccessibleChildren.end() != aItemPos )
- {
- implReleaseToolboxItem( aItemPos, true, true );
- m_aAccessibleChildren.erase( aItemPos );
- }
- }
-
- // adjust the "index-in-parent"s
- ToolBoxItemsMap::iterator aIndexAdjust = m_aAccessibleChildren.upper_bound( _nPos );
- while ( m_aAccessibleChildren.end() != aIndexAdjust )
- {
- Reference< XAccessible > xItemAcc( aIndexAdjust->second );
-
- OToolBoxWindowItem* pWindowItem = NULL;
- if ( !OToolBoxWindowItem::isWindowItem( xItemAcc, &pWindowItem ) )
- {
- VCLXAccessibleToolBoxItem* pItem = static_cast< VCLXAccessibleToolBoxItem* >( xItemAcc.get() );
- if ( pItem )
- {
- sal_Int32 nIndex = pItem->getIndexInParent( );
- nIndex += (_bItemAdded ? +1 : -1);
- pItem->setIndexInParent( nIndex );
- }
- }
- else
- {
- if ( pWindowItem )
- {
- sal_Int32 nIndex = pWindowItem->getIndexInParent( );
- nIndex += (_bItemAdded ? +1 : -1);
- pWindowItem->setIndexInParent( nIndex );
- }
- }
-
- ++aIndexAdjust;
- }
-
- if ( _bItemAdded )
- {
- // TODO: we should make this dependent on the existence of event listeners
- // with the current implementation, we always create accessible object
- Any aNewChild = makeAny( getAccessibleChild( (sal_Int32)_nPos ) );
- NotifyAccessibleEvent( AccessibleEventId::CHILD, Any(), aNewChild );
- }
- }
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBox::UpdateAllItems_Impl()
-{
- ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
- if ( pToolBox )
- {
- // deregister the old items
- for ( ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.begin();
- aIter != m_aAccessibleChildren.end(); ++aIter )
- {
- implReleaseToolboxItem( aIter, true, true );
- }
- m_aAccessibleChildren.clear();
-
- // register the new items
- sal_uInt16 i, nCount = pToolBox->GetItemCount();
- for ( i = 0; i < nCount; ++i )
- {
- Any aNewValue;
- aNewValue <<= getAccessibleChild( (sal_Int32)i );;
- NotifyAccessibleEvent( AccessibleEventId::CHILD, Any(), aNewValue );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-
-void VCLXAccessibleToolBox::UpdateCustomPopupItemp_Impl( Window* pWindow, bool bOpen )
-{
- ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
- if( pWindow && pToolBox )
- {
- Reference< XAccessible > xChild( pWindow->GetAccessible() );
- if( xChild.is() )
- {
- Reference< XAccessible > xChildItem( getAccessibleChild( static_cast< sal_Int32 >( pToolBox->GetItemPos( pToolBox->GetDownItemId() ) ) ) );
- VCLXAccessibleToolBoxItem* pItem = static_cast< VCLXAccessibleToolBoxItem* >( xChildItem.get() );
-
- pItem->SetChild( xChild );
- pItem->NotifyChildEvent( xChild, bOpen );
- }
- }
-}
-
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBox::UpdateItemName_Impl( sal_Int32 _nPos )
-{
- VCLXAccessibleToolBoxItem* pItem = GetItem_Impl( _nPos, false );
- if ( pItem )
- pItem->NameChanged();
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBox::UpdateItemEnabled_Impl( sal_Int32 _nPos )
-{
- VCLXAccessibleToolBoxItem* pItem = GetItem_Impl( _nPos, false );
- if ( pItem )
- pItem->ToggleEnableState();
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBox::HandleSubToolBarEvent( const VclWindowEvent& rVclWindowEvent, bool _bShow )
-{
- Window* pChildWindow = (Window *) rVclWindowEvent.GetData();
- ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
- if ( pChildWindow
- && pToolBox
- && pToolBox == pChildWindow->GetParent()
- && pChildWindow->GetType() == WINDOW_TOOLBOX )
- {
- sal_Int32 nIndex = pToolBox->GetItemPos( pToolBox->GetCurItemId() );
- Reference< XAccessible > xItem = getAccessibleChild( nIndex );
- if ( xItem.is() )
- {
- Reference< XAccessible > xChild = pChildWindow->GetAccessible();
- VCLXAccessibleToolBoxItem* pItem =
- static_cast< VCLXAccessibleToolBoxItem* >( xItem.get() );
- pItem->SetChild( xChild );
- pItem->NotifyChildEvent( xChild, _bShow );
- }
- }
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBox::ReleaseSubToolBox( ToolBox* _pSubToolBox )
-{
- ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
- if ( pToolBox )
- {
- sal_Int32 nIndex = pToolBox->GetItemPos( pToolBox->GetCurItemId() );
- Reference< XAccessible > xItem = getAccessibleChild( nIndex );
- if ( xItem.is() )
- {
- Reference< XAccessible > xChild = _pSubToolBox->GetAccessible();
- VCLXAccessibleToolBoxItem* pItem =
- static_cast< VCLXAccessibleToolBoxItem* >( xItem.get() );
- if ( pItem->GetChild() == xChild )
- {
- pItem->SetChild( Reference< XAccessible >() );
- pItem->NotifyChildEvent( xChild, false );
- }
- }
- }
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBox::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
-{
- VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
-
- ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
- if ( pToolBox )
- {
- rStateSet.AddState( AccessibleStateType::FOCUSABLE );
- if ( pToolBox->IsHorizontal() )
- rStateSet.AddState( AccessibleStateType::HORIZONTAL );
- else
- rStateSet.AddState( AccessibleStateType::VERTICAL );
- }
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBox::ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent )
-{
- // to prevent an early release of the toolbox (VCLEVENT_OBJECT_DYING)
- Reference< XAccessibleContext > xTemp = this;
-
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_TOOLBOX_CLICK:
- {
- if ( rVclWindowEvent.GetData() )
- {
- UpdateChecked_Impl( (sal_Int32)(sal_IntPtr)rVclWindowEvent.GetData() );
- UpdateIndeterminate_Impl( (sal_Int32)(sal_IntPtr)rVclWindowEvent.GetData() );
- }
- break;
- }
- case VCLEVENT_TOOLBOX_DOUBLECLICK:
- case VCLEVENT_TOOLBOX_ACTIVATE:
- case VCLEVENT_TOOLBOX_DEACTIVATE:
- case VCLEVENT_TOOLBOX_SELECT:
- break;
-
- case VCLEVENT_TOOLBOX_HIGHLIGHT:
- UpdateFocus_Impl();
- break;
-
- case VCLEVENT_TOOLBOX_HIGHLIGHTOFF:
- ReleaseFocus_Impl( (sal_Int32)(sal_IntPtr)rVclWindowEvent.GetData() );
- break;
-
- case VCLEVENT_TOOLBOX_ITEMADDED :
-// UpdateItem_Impl( (sal_Int32)(sal_IntPtr)rVclWindowEvent.GetData(), VCLEVENT_TOOLBOX_ITEMADDED == rVclWindowEvent.GetId() );
- UpdateItem_Impl( (sal_Int32)(sal_IntPtr)rVclWindowEvent.GetData(), sal_True );
- break;
-
- case VCLEVENT_TOOLBOX_ITEMREMOVED :
- case VCLEVENT_TOOLBOX_ALLITEMSCHANGED :
- {
- UpdateAllItems_Impl();
- break;
- }
-
- case VCLEVENT_TOOLBOX_ITEMWINDOWCHANGED:
- {
- sal_Int32 nPos = (sal_Int32)(sal_IntPtr)rVclWindowEvent.GetData();
- ToolBoxItemsMap::iterator aAccessiblePos( m_aAccessibleChildren.find( nPos ) );
- if ( m_aAccessibleChildren.end() != aAccessiblePos )
- {
- implReleaseToolboxItem( aAccessiblePos, false, true );
- m_aAccessibleChildren.erase (aAccessiblePos);
- }
-
- Any aNewValue;
- aNewValue <<= getAccessibleChild(nPos);
- NotifyAccessibleEvent( AccessibleEventId::CHILD, Any(), aNewValue );
- break;
- }
- case VCLEVENT_TOOLBOX_ITEMTEXTCHANGED :
- UpdateItemName_Impl( (sal_Int32)(sal_IntPtr)rVclWindowEvent.GetData() );
- break;
-
- case VCLEVENT_TOOLBOX_ITEMENABLED :
- case VCLEVENT_TOOLBOX_ITEMDISABLED :
- {
- UpdateItemEnabled_Impl( (sal_Int32)(sal_IntPtr)rVclWindowEvent.GetData() );
- break;
- }
-
- case VCLEVENT_DROPDOWN_OPEN:
- case VCLEVENT_DROPDOWN_CLOSE:
- {
- UpdateCustomPopupItemp_Impl( static_cast< Window* >( rVclWindowEvent.GetData() ), rVclWindowEvent.GetId() == VCLEVENT_DROPDOWN_OPEN );
- break;
- }
-
- case VCLEVENT_OBJECT_DYING :
- {
- // if this toolbox is a subtoolbox, we have to relese it from its parent
- ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
- if ( pToolBox && pToolBox->GetParent() &&
- pToolBox->GetParent()->GetType() == WINDOW_TOOLBOX )
- {
- VCLXAccessibleToolBox* pParent = static_cast< VCLXAccessibleToolBox* >(
- pToolBox->GetParent()->GetAccessible()->getAccessibleContext().get() );
- if ( pParent )
- pParent->ReleaseSubToolBox( pToolBox );
- }
-
- // dispose all items
- for ( ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.begin();
- aIter != m_aAccessibleChildren.end(); ++aIter )
- {
- implReleaseToolboxItem( aIter, false, true );
- }
- m_aAccessibleChildren.clear();
-
- //!!! no break to call base class
- }
-
- default:
- VCLXAccessibleComponent::ProcessWindowEvent( rVclWindowEvent );
- }
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBox::ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent )
-{
- switch ( rVclWindowEvent.GetId() )
- {
- case VCLEVENT_WINDOW_SHOW: // send create on show for direct accessible children
- {
- Reference< XAccessible > xReturn = GetItemWindowAccessible(rVclWindowEvent);
- if ( xReturn.is() )
- NotifyAccessibleEvent( AccessibleEventId::CHILD, Any(), makeAny(xReturn) );
- else
- HandleSubToolBarEvent( rVclWindowEvent, true );
- }
- break;
-
- default:
- VCLXAccessibleComponent::ProcessWindowChildEvent( rVclWindowEvent );
-
- }
-}
-// -----------------------------------------------------------------------------
-// XInterface
-// -----------------------------------------------------------------------------
-IMPLEMENT_FORWARD_XINTERFACE2( VCLXAccessibleToolBox, VCLXAccessibleComponent, VCLXAccessibleToolBox_BASE )
-// -----------------------------------------------------------------------------
-// XTypeProvider
-// -----------------------------------------------------------------------------
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleToolBox, VCLXAccessibleComponent, VCLXAccessibleToolBox_BASE )
-// -----------------------------------------------------------------------------
-// XComponent
-// -----------------------------------------------------------------------------
-void SAL_CALL VCLXAccessibleToolBox::disposing()
-{
- VCLXAccessibleComponent::disposing();
-
- // release the items
- for ( ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.begin();
- aIter != m_aAccessibleChildren.end(); ++aIter )
- {
- implReleaseToolboxItem( aIter, false, true );
- }
- m_aAccessibleChildren.clear();
-}
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-::rtl::OUString VCLXAccessibleToolBox::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.toolkit.AccessibleToolBox" ));
-}
-// -----------------------------------------------------------------------------
-Sequence< ::rtl::OUString > VCLXAccessibleToolBox::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames = VCLXAccessibleComponent::getSupportedServiceNames();
- sal_Int32 nLength = aNames.getLength();
- aNames.realloc( nLength + 1 );
- aNames[nLength] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleToolBox" ));
- return aNames;
-}
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL VCLXAccessibleToolBox::getAccessibleChildCount( ) throw (RuntimeException)
-{
- comphelper::OExternalLockGuard aGuard( this );
-
- sal_Int32 nCount = 0;
- ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
- if ( pToolBox )
- nCount = pToolBox->GetItemCount();
-
- return nCount;
-}
-// -----------------------------------------------------------------------------
-Reference< XAccessible > SAL_CALL VCLXAccessibleToolBox::getAccessibleChild( sal_Int32 i ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- if ( i < 0 || i >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
-
- comphelper::OExternalLockGuard aGuard( this );
-
- ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
- if ( pToolBox )
- {
- Reference< XAccessible > xChild;
- // search for the child
- ToolBoxItemsMap::iterator aIter = m_aAccessibleChildren.find(i);
- if ( m_aAccessibleChildren.end() == aIter )
- {
- sal_uInt16 nItemId = pToolBox->GetItemId( (sal_uInt16)i );
- sal_uInt16 nHighlightItemId = pToolBox->GetHighlightItemId();
- Window* pItemWindow = pToolBox->GetItemWindow( nItemId );
- // not found -> create a new child
- VCLXAccessibleToolBoxItem* pChild = new VCLXAccessibleToolBoxItem( pToolBox, i );
- Reference< XAccessible> xParent = pChild;
- if ( pItemWindow )
- {
- xChild = new OToolBoxWindowItem(0,::comphelper::getProcessServiceFactory(),pItemWindow->GetAccessible(),xParent);
- pItemWindow->SetAccessible(xChild);
- pChild->SetChild( xChild );
- }
- xChild = pChild;
- if ( nHighlightItemId > 0 && nItemId == nHighlightItemId )
- pChild->SetFocus( sal_True );
- if ( pToolBox->IsItemChecked( nItemId ) )
- pChild->SetChecked( sal_True );
- if ( pToolBox->GetItemState( nItemId ) == STATE_DONTKNOW )
- pChild->SetIndeterminate( true );
- m_aAccessibleChildren.insert( ToolBoxItemsMap::value_type( i, xChild ) );
- }
- else
- {
- // found it
- xChild = aIter->second;
- }
- return xChild;
- }
-
- return NULL;
-}
-// -----------------------------------------------------------------------------
-Reference< XAccessible > SAL_CALL VCLXAccessibleToolBox::getAccessibleAtPoint( const awt::Point& _rPoint ) throw (RuntimeException)
-{
- comphelper::OExternalLockGuard aGuard( this );
-
- Reference< XAccessible > xAccessible;
- ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
- if ( pToolBox )
- {
- sal_uInt16 nItemPos = pToolBox->GetItemPos( VCLPoint( _rPoint ) );
- if ( nItemPos != TOOLBOX_ITEM_NOTFOUND )
- xAccessible = getAccessibleChild( nItemPos );
- }
-
- return xAccessible;
-}
-// -----------------------------------------------------------------------------
-Reference< XAccessible > VCLXAccessibleToolBox::GetItemWindowAccessible( const VclWindowEvent& rVclWindowEvent )
-{
- Reference< XAccessible > xReturn;
- Window* pChildWindow = (Window *) rVclWindowEvent.GetData();
- ToolBox* pToolBox = static_cast< ToolBox* >( GetWindow() );
- if ( pChildWindow && pToolBox )
- {
- sal_uInt16 nCount = pToolBox->GetItemCount();
- for (sal_uInt16 i = 0 ; i < nCount && !xReturn.is() ; ++i)
- {
- sal_uInt16 nItemId = pToolBox->GetItemId( i );
- Window* pItemWindow = pToolBox->GetItemWindow( nItemId );
- if ( pItemWindow == pChildWindow )
- xReturn = getAccessibleChild(i);
- }
- }
- return xReturn;
-}
-// -----------------------------------------------------------------------------
-Reference< XAccessible > VCLXAccessibleToolBox::GetChildAccessible( const VclWindowEvent& rVclWindowEvent )
-{
- Reference< XAccessible > xReturn = GetItemWindowAccessible(rVclWindowEvent);
-
- if ( !xReturn.is() )
- xReturn = VCLXAccessibleComponent::GetChildAccessible(rVclWindowEvent);
- return xReturn;
-}
-// -----------------------------------------------------------------------------
-// XAccessibleSelection
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBox::selectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
- if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
- ToolBox * pToolBox = static_cast < ToolBox * > ( GetWindow() );
- sal_uInt16 nPos = static_cast < sal_uInt16 > (nChildIndex);
- pToolBox->ChangeHighlight( nPos );
-}
-// -----------------------------------------------------------------------------
-sal_Bool VCLXAccessibleToolBox::isAccessibleChildSelected( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
- if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
- ToolBox * pToolBox = static_cast < ToolBox * > ( GetWindow() );
- sal_uInt16 nPos = static_cast < sal_uInt16 > (nChildIndex);
- if ( pToolBox != NULL && pToolBox->GetHighlightItemId() == pToolBox->GetItemId( nPos ) )
- return sal_True;
- else
- return sal_False;
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBox::clearAccessibleSelection( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
- ToolBox * pToolBox = static_cast < ToolBox * > ( GetWindow() );
- pToolBox -> LoseFocus();
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBox::selectAllAccessibleChildren( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
- // intentionally empty. makes no sense for a toolbox
-}
-// -----------------------------------------------------------------------------
-sal_Int32 VCLXAccessibleToolBox::getSelectedAccessibleChildCount( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
- sal_Int32 nRet = 0;
- for ( sal_Int32 i = 0, nCount = getAccessibleChildCount(); i < nCount; i++ )
- {
- if ( isAccessibleChildSelected( i ) )
- {
- nRet = 1;
- break; // a toolbox can only have (n)one selected child
- }
- }
- return nRet;
-}
-// -----------------------------------------------------------------------------
-Reference< XAccessible > VCLXAccessibleToolBox::getSelectedAccessibleChild( sal_Int32 nSelectedChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
- if ( nSelectedChildIndex < 0 || nSelectedChildIndex >= getSelectedAccessibleChildCount() )
- throw IndexOutOfBoundsException();
- Reference< XAccessible > xChild;
- for ( sal_Int32 i = 0, j = 0, nCount = getAccessibleChildCount(); i < nCount; i++ )
- {
- if ( isAccessibleChildSelected( i ) && ( j++ == nSelectedChildIndex ) )
- {
- xChild = getAccessibleChild( i );
- break;
- }
- }
- return xChild;
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBox::deselectAccessibleChild( sal_Int32 nChildIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
- if ( nChildIndex < 0 || nChildIndex >= getAccessibleChildCount() )
- throw IndexOutOfBoundsException();
- clearAccessibleSelection(); // a toolbox can only have (n)one selected child
-}
-// -----------------------------------------------------------------------------
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/source/standard/vclxaccessibletoolboxitem.cxx b/accessibility/source/standard/vclxaccessibletoolboxitem.cxx
deleted file mode 100644
index 49c603f15..000000000
--- a/accessibility/source/standard/vclxaccessibletoolboxitem.cxx
+++ /dev/null
@@ -1,708 +0,0 @@
-/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-// MARKER(update_precomp.py): autogen include statement, do not remove
-#include "precompiled_accessibility.hxx"
-#include <accessibility/standard/vclxaccessibletoolboxitem.hxx>
-#include <toolkit/helper/convert.hxx>
-#include <accessibility/helper/accresmgr.hxx>
-#include <accessibility/helper/accessiblestrings.hrc>
-#include <com/sun/star/awt/Point.hpp>
-#include <com/sun/star/awt/Rectangle.hpp>
-#include <com/sun/star/awt/Size.hpp>
-
-#include <com/sun/star/accessibility/AccessibleEventId.hpp>
-#include <com/sun/star/accessibility/AccessibleRole.hpp>
-#include <com/sun/star/accessibility/AccessibleStateType.hpp>
-#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
-#include <com/sun/star/datatransfer/clipboard/XFlushableClipboard.hpp>
-#include <tools/debug.hxx>
-#include <vcl/svapp.hxx>
-#include <vcl/toolbox.hxx>
-#include <vcl/unohelp2.hxx>
-#include <vcl/help.hxx>
-#include <toolkit/awt/vclxwindow.hxx>
-#include <toolkit/helper/externallock.hxx>
-#include <unotools/accessiblestatesethelper.hxx>
-#include <unotools/accessiblerelationsethelper.hxx>
-#include <cppuhelper/typeprovider.hxx>
-#include <comphelper/sequence.hxx>
-
-#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
-
-// class VCLXAccessibleToolBoxItem ------------------------------------------
-
-using namespace ::com::sun::star::accessibility;
-using namespace ::com::sun::star::uno;
-using namespace ::com::sun::star::beans;
-using namespace ::com::sun::star::lang;
-using namespace ::com::sun::star;
-using namespace ::comphelper;
-
-DBG_NAME(VCLXAccessibleToolBoxItem)
-
-// -----------------------------------------------------------------------------
-// Ctor() and Dtor()
-// -----------------------------------------------------------------------------
-VCLXAccessibleToolBoxItem::VCLXAccessibleToolBoxItem( ToolBox* _pToolBox, sal_Int32 _nPos ) :
-
- AccessibleTextHelper_BASE( new VCLExternalSolarLock() ),
-
- m_pToolBox ( _pToolBox ),
- m_nIndexInParent( _nPos ),
- m_nRole ( AccessibleRole::PUSH_BUTTON ),
- m_nItemId ( 0 ),
- m_bHasFocus ( sal_False ),
- m_bIsChecked ( sal_False ),
- m_bIndeterminate( false )
-
-{
- DBG_CTOR( VCLXAccessibleToolBoxItem, NULL );
-
- m_pExternalLock = static_cast< VCLExternalSolarLock* >( getExternalLock( ) );
-
- DBG_ASSERT( m_pToolBox, "invalid toolbox" );
- m_nItemId = m_pToolBox->GetItemId( (sal_uInt16)m_nIndexInParent );
- m_sOldName = GetText( true );
- m_bIsChecked = m_pToolBox->IsItemChecked( m_nItemId );
- m_bIndeterminate = ( m_pToolBox->GetItemState( m_nItemId ) == STATE_DONTKNOW );
- ToolBoxItemType eType = m_pToolBox->GetItemType( (sal_uInt16)m_nIndexInParent );
- switch ( eType )
- {
- case TOOLBOXITEM_BUTTON :
- {
- ToolBoxItemBits nBits = m_pToolBox->GetItemBits( m_nItemId );
- if (( nBits & TIB_DROPDOWN ) == TIB_DROPDOWN)
- m_nRole = AccessibleRole::BUTTON_DROPDOWN;
- else if (( ( nBits & TIB_CHECKABLE ) == TIB_CHECKABLE ) ||
- ( ( nBits & TIB_AUTOCHECK ) == TIB_AUTOCHECK ) )
- m_nRole = AccessibleRole::TOGGLE_BUTTON;
- else if ( m_pToolBox->GetItemWindow( m_nItemId ) )
- m_nRole = AccessibleRole::PANEL;
- break;
- }
-
- case TOOLBOXITEM_SPACE :
- m_nRole = AccessibleRole::FILLER;
- break;
-
- case TOOLBOXITEM_SEPARATOR :
- case TOOLBOXITEM_BREAK :
- m_nRole = AccessibleRole::SEPARATOR;
- break;
-
- default:
- {
- DBG_ERRORFILE( "unsupported toolbox itemtype" );
- }
- }
-}
-// -----------------------------------------------------------------------------
-VCLXAccessibleToolBoxItem::~VCLXAccessibleToolBoxItem()
-{
- DBG_DTOR( VCLXAccessibleToolBoxItem, NULL );
-
- delete m_pExternalLock;
- m_pExternalLock = NULL;
-}
-// -----------------------------------------------------------------------------
-::rtl::OUString VCLXAccessibleToolBoxItem::GetText( bool _bAsName )
-{
- ::rtl::OUString sRet;
- // no text for separators and spaces
- if ( m_pToolBox && m_nItemId > 0 && ( _bAsName || m_pToolBox->GetButtonType() != BUTTON_SYMBOL ) )
- {
- sRet = m_pToolBox->GetItemText( m_nItemId );
- }
- return sRet;
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBoxItem::SetFocus( sal_Bool _bFocus )
-{
- if ( m_bHasFocus != _bFocus )
- {
- Any aOldValue;
- Any aNewValue;
- if ( m_bHasFocus )
- aOldValue <<= AccessibleStateType::FOCUSED;
- else
- aNewValue <<= AccessibleStateType::FOCUSED;
- m_bHasFocus = _bFocus;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBoxItem::SetChecked( sal_Bool _bCheck )
-{
- if ( m_bIsChecked != _bCheck )
- {
- Any aOldValue;
- Any aNewValue;
- if ( m_bIsChecked )
- aOldValue <<= AccessibleStateType::CHECKED;
- else
- aNewValue <<= AccessibleStateType::CHECKED;
- m_bIsChecked = _bCheck;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBoxItem::SetIndeterminate( bool _bIndeterminate )
-{
- if ( m_bIndeterminate != _bIndeterminate )
- {
- Any aOldValue, aNewValue;
- if ( m_bIndeterminate )
- aOldValue <<= AccessibleStateType::INDETERMINATE;
- else
- aNewValue <<= AccessibleStateType::INDETERMINATE;
- m_bIndeterminate = _bIndeterminate;
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue, aNewValue );
- }
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBoxItem::NameChanged()
-{
- ::rtl::OUString sNewName = implGetText();
- if ( sNewName != m_sOldName )
- {
- Any aOldValue, aNewValue;
- aOldValue <<= m_sOldName;
- // save new name as old name for next change
- m_sOldName = sNewName;
- aNewValue <<= m_sOldName;
- NotifyAccessibleEvent( AccessibleEventId::NAME_CHANGED, aOldValue, aNewValue );
- }
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBoxItem::SetChild( const Reference< XAccessible >& _xChild )
-{
- m_xChild = _xChild;
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBoxItem::NotifyChildEvent( const Reference< XAccessible >& _xChild, bool _bShow )
-{
- Any aOld = _bShow ? Any() : makeAny( _xChild );
- Any aNew = _bShow ? makeAny( _xChild ) : Any();
- NotifyAccessibleEvent( AccessibleEventId::CHILD, aOld, aNew );
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBoxItem::ToggleEnableState()
-{
- Any aOldValue[2], aNewValue[2];
- if ( m_pToolBox->IsItemEnabled( m_nItemId ) )
- {
- aNewValue[0] <<= AccessibleStateType::SENSITIVE;
- aNewValue[1] <<= AccessibleStateType::ENABLED;
- }
- else
- {
- aOldValue[0] <<= AccessibleStateType::ENABLED;
- aOldValue[1] <<= AccessibleStateType::SENSITIVE;
- }
-
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue[0], aNewValue[0] );
- NotifyAccessibleEvent( AccessibleEventId::STATE_CHANGED, aOldValue[1], aNewValue[1] );
-}
-// -----------------------------------------------------------------------------
-awt::Rectangle SAL_CALL VCLXAccessibleToolBoxItem::implGetBounds( ) throw (RuntimeException)
-{
- awt::Rectangle aRect;
- if ( m_pToolBox )
- aRect = AWTRectangle( m_pToolBox->GetItemPosRect( (sal_uInt16)m_nIndexInParent ) );
-
- return aRect;
-}
-// -----------------------------------------------------------------------------
-::rtl::OUString VCLXAccessibleToolBoxItem::implGetText()
-{
- return GetText (true);
-}
-// -----------------------------------------------------------------------------
-Locale VCLXAccessibleToolBoxItem::implGetLocale()
-{
- return Application::GetSettings().GetUILocale();
-}
-// -----------------------------------------------------------------------------
-void VCLXAccessibleToolBoxItem::implGetSelection( sal_Int32& nStartIndex, sal_Int32& nEndIndex )
-{
- nStartIndex = 0;
- nEndIndex = 0;
-}
-// -----------------------------------------------------------------------------
-// XInterface
-// -----------------------------------------------------------------------------
-IMPLEMENT_FORWARD_REFCOUNT( VCLXAccessibleToolBoxItem, AccessibleTextHelper_BASE )
-Any SAL_CALL VCLXAccessibleToolBoxItem::queryInterface( const Type& _rType ) throw (RuntimeException)
-{
- // #i33611# - toolbox buttons without text don't support XAccessibleText
- if ( _rType == ::getCppuType( ( const Reference< XAccessibleText >* ) 0 )
- && ( !m_pToolBox || m_pToolBox->GetButtonType() == BUTTON_SYMBOL ) )
- return Any();
-
- ::com::sun::star::uno::Any aReturn = AccessibleTextHelper_BASE::queryInterface( _rType );
- if ( !aReturn.hasValue() )
- aReturn = VCLXAccessibleToolBoxItem_BASE::queryInterface( _rType );
- return aReturn;
-}
-// -----------------------------------------------------------------------------
-// XTypeProvider
-// -----------------------------------------------------------------------------
-IMPLEMENT_FORWARD_XTYPEPROVIDER2( VCLXAccessibleToolBoxItem, AccessibleTextHelper_BASE, VCLXAccessibleToolBoxItem_BASE )
-// -----------------------------------------------------------------------------
-// XComponent
-// -----------------------------------------------------------------------------
-void SAL_CALL VCLXAccessibleToolBoxItem::disposing()
-{
- AccessibleTextHelper_BASE::disposing();
- m_pToolBox = NULL;
-}
-// -----------------------------------------------------------------------------
-// XServiceInfo
-// -----------------------------------------------------------------------------
-::rtl::OUString VCLXAccessibleToolBoxItem::getImplementationName() throw (RuntimeException)
-{
- return ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.comp.toolkit.AccessibleToolBoxItem" ));
-}
-// -----------------------------------------------------------------------------
-sal_Bool VCLXAccessibleToolBoxItem::supportsService( const ::rtl::OUString& rServiceName ) throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames( getSupportedServiceNames() );
- const ::rtl::OUString* pNames = aNames.getConstArray();
- const ::rtl::OUString* pEnd = pNames + aNames.getLength();
- for ( ; pNames != pEnd && !pNames->equals( rServiceName ); ++pNames )
- ;
-
- return pNames != pEnd;
-}
-// -----------------------------------------------------------------------------
-Sequence< ::rtl::OUString > VCLXAccessibleToolBoxItem::getSupportedServiceNames() throw (RuntimeException)
-{
- Sequence< ::rtl::OUString > aNames(4);
- aNames[0] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleContext" ));
- aNames[1] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleComponent" ));
- aNames[2] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleExtendedComponent" ));
- aNames[3] = ::rtl::OUString( RTL_CONSTASCII_USTRINGPARAM( "com.sun.star.accessibility.AccessibleToolBoxItem" ));
- return aNames;
-}
-// -----------------------------------------------------------------------------
-// XAccessible
-// -----------------------------------------------------------------------------
-Reference< XAccessibleContext > SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleContext( ) throw (RuntimeException)
-{
- return this;
-}
-// -----------------------------------------------------------------------------
-// XAccessibleContext
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleChildCount( ) throw (RuntimeException)
-{
- OContextEntryGuard aGuard( this );
-
- return m_xChild.is() ? 1 : 0;
-}
-// -----------------------------------------------------------------------------
-Reference< XAccessible > SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleChild( sal_Int32 i ) throw (RuntimeException, com::sun::star::lang::IndexOutOfBoundsException)
-{
- OContextEntryGuard aGuard( this );
-
- // no child -> so index is out of bounds
- if ( !m_xChild.is() || i != 0 )
- throw IndexOutOfBoundsException();
-
- return m_xChild;
-}
-// -----------------------------------------------------------------------------
-Reference< XAccessible > SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleParent( ) throw (RuntimeException)
-{
- OContextEntryGuard aGuard( this );
-
- return m_pToolBox->GetAccessible();
-}
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleIndexInParent( ) throw (RuntimeException)
-{
- OContextEntryGuard aGuard( this );
-
- return m_nIndexInParent;
-}
-// -----------------------------------------------------------------------------
-sal_Int16 SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleRole( ) throw (RuntimeException)
-{
- OContextEntryGuard aGuard( this );
-
- return m_nRole;
-}
-// -----------------------------------------------------------------------------
-::rtl::OUString SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleDescription( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- ::rtl::OUString sDescription;
- if ( m_pToolBox )
- sDescription = m_pToolBox->GetHelpText( m_nItemId );
-
- return sDescription;
-}
-// -----------------------------------------------------------------------------
-::rtl::OUString SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleName( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- // entry text == accessible name
- return GetText( true );
-}
-// -----------------------------------------------------------------------------
-Reference< XAccessibleRelationSet > SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleRelationSet( ) throw (RuntimeException)
-{
- OContextEntryGuard aGuard( this );
-
- utl::AccessibleRelationSetHelper* pRelationSetHelper = new utl::AccessibleRelationSetHelper;
- Reference< XAccessibleRelationSet > xSet = pRelationSetHelper;
- return xSet;
-}
-// -----------------------------------------------------------------------------
-Reference< XAccessibleStateSet > SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleStateSet( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- utl::AccessibleStateSetHelper* pStateSetHelper = new utl::AccessibleStateSetHelper;
- Reference< XAccessibleStateSet > xStateSet = pStateSetHelper;
-
- if ( m_pToolBox && !rBHelper.bDisposed && !rBHelper.bInDispose )
- {
- pStateSetHelper->AddState( AccessibleStateType::FOCUSABLE );
- if ( m_bIsChecked )
- pStateSetHelper->AddState( AccessibleStateType::CHECKED );
- if ( m_bIndeterminate )
- pStateSetHelper->AddState( AccessibleStateType::INDETERMINATE );
- if ( m_pToolBox->IsItemEnabled( m_nItemId ) )
- {
- pStateSetHelper->AddState( AccessibleStateType::ENABLED );
- pStateSetHelper->AddState( AccessibleStateType::SENSITIVE );
- }
- if ( m_pToolBox->IsItemVisible( m_nItemId ) )
- pStateSetHelper->AddState( AccessibleStateType::VISIBLE );
- if ( m_pToolBox->IsItemReallyVisible( m_nItemId ) )
- pStateSetHelper->AddState( AccessibleStateType::SHOWING );
- if ( m_bHasFocus )
- pStateSetHelper->AddState( AccessibleStateType::FOCUSED );
- }
- else
- pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
-
- return xStateSet;
-}
-// -----------------------------------------------------------------------------
-// XAccessibleText
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL VCLXAccessibleToolBoxItem::getCaretPosition() throw (RuntimeException)
-{
- return -1;
-}
-// -----------------------------------------------------------------------------
-sal_Bool SAL_CALL VCLXAccessibleToolBoxItem::setCaretPosition( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( !implIsValidRange( nIndex, nIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
-}
-// -----------------------------------------------------------------------------
-Sequence< PropertyValue > SAL_CALL VCLXAccessibleToolBoxItem::getCharacterAttributes( sal_Int32 nIndex, const Sequence< ::rtl::OUString >& ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- ::rtl::OUString sText( implGetText() );
-
- if ( !implIsValidIndex( nIndex, sText.getLength() ) )
- throw IndexOutOfBoundsException();
-
- return Sequence< PropertyValue >();
-}
-// -----------------------------------------------------------------------------
-awt::Rectangle SAL_CALL VCLXAccessibleToolBoxItem::getCharacterBounds( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- ::rtl::OUString sText( implGetText() );
-
- if ( !implIsValidIndex( nIndex, sText.getLength() ) )
- throw IndexOutOfBoundsException();
-
- awt::Rectangle aBounds( 0, 0, 0, 0 );
- if ( m_pToolBox && m_pToolBox->GetButtonType() != BUTTON_SYMBOL ) // symbol buttons have no character bounds
- {
- Rectangle aCharRect = m_pToolBox->GetCharacterBounds( m_nItemId, nIndex );
- Rectangle aItemRect = m_pToolBox->GetItemRect( m_nItemId );
- aCharRect.Move( -aItemRect.Left(), -aItemRect.Top() );
- aBounds = AWTRectangle( aCharRect );
- }
-
- return aBounds;
-}
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL VCLXAccessibleToolBoxItem::getIndexAtPoint( const awt::Point& aPoint ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nIndex = -1;
- if ( m_pToolBox && m_pToolBox->GetButtonType() != BUTTON_SYMBOL ) // symbol buttons have no character bounds
- {
- sal_uInt16 nItemId = 0;
- Rectangle aItemRect = m_pToolBox->GetItemRect( m_nItemId );
- Point aPnt( VCLPoint( aPoint ) );
- aPnt += aItemRect.TopLeft();
- sal_Int32 nIdx = m_pToolBox->GetIndexForPoint( aPnt, nItemId );
- if ( nIdx != -1 && nItemId == m_nItemId )
- nIndex = nIdx;
- }
-
- return nIndex;
-}
-// -----------------------------------------------------------------------------
-sal_Bool SAL_CALL VCLXAccessibleToolBoxItem::setSelection( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- return sal_False;
-}
-// -----------------------------------------------------------------------------
-sal_Bool SAL_CALL VCLXAccessibleToolBoxItem::copyText( sal_Int32 nStartIndex, sal_Int32 nEndIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( !implIsValidRange( nStartIndex, nEndIndex, implGetText().getLength() ) )
- throw IndexOutOfBoundsException();
-
- sal_Bool bReturn = sal_False;
-
- if ( m_pToolBox )
- {
- Reference< datatransfer::clipboard::XClipboard > xClipboard = m_pToolBox->GetClipboard();
- if ( xClipboard.is() )
- {
- ::rtl::OUString sText( getTextRange( nStartIndex, nEndIndex ) );
-
- ::vcl::unohelper::TextDataObject* pDataObj = new ::vcl::unohelper::TextDataObject( sText );
- const sal_uInt32 nRef = Application::ReleaseSolarMutex();
- xClipboard->setContents( pDataObj, NULL );
-
- Reference< datatransfer::clipboard::XFlushableClipboard > xFlushableClipboard( xClipboard, uno::UNO_QUERY );
- if( xFlushableClipboard.is() )
- xFlushableClipboard->flushClipboard();
-
- Application::AcquireSolarMutex( nRef );
-
- bReturn = sal_True;
- }
- }
-
- return bReturn;
-}
-// -----------------------------------------------------------------------------
-// XAccessibleComponent
-// -----------------------------------------------------------------------------
-Reference< XAccessible > SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleAtPoint( const awt::Point& ) throw (RuntimeException)
-{
- return Reference< XAccessible >();
-}
-// -----------------------------------------------------------------------------
-void SAL_CALL VCLXAccessibleToolBoxItem::grabFocus( ) throw (RuntimeException)
-{
- Reference< XAccessible > xParent(getAccessibleParent());
-
- if( xParent.is() )
- {
- Reference< XAccessibleSelection > rxAccessibleSelection(xParent->getAccessibleContext(), UNO_QUERY);
-
- if ( rxAccessibleSelection.is() )
- {
- rxAccessibleSelection -> selectAccessibleChild ( getAccessibleIndexInParent() );
- }
- }
-}
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL VCLXAccessibleToolBoxItem::getForeground( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nColor = 0;
- if ( m_pToolBox )
- nColor = m_pToolBox->GetControlForeground().GetColor();
-
- return nColor;
-}
-// -----------------------------------------------------------------------------
-sal_Int32 SAL_CALL VCLXAccessibleToolBoxItem::getBackground( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Int32 nColor = 0;
- if ( m_pToolBox )
- nColor = m_pToolBox->GetControlBackground().GetColor();
-
- return nColor;
-}
-// -----------------------------------------------------------------------------
-// XAccessibleExtendedComponent
-// -----------------------------------------------------------------------------
-Reference< awt::XFont > SAL_CALL VCLXAccessibleToolBoxItem::getFont( ) throw (RuntimeException)
-{
- return uno::Reference< awt::XFont >();
-}
-// -----------------------------------------------------------------------------
-awt::FontDescriptor SAL_CALL VCLXAccessibleToolBoxItem::getFontMetrics( const Reference< awt::XFont >& xFont ) throw (RuntimeException)
-{
- return xFont->getFontDescriptor();
-}
-// -----------------------------------------------------------------------------
-::rtl::OUString SAL_CALL VCLXAccessibleToolBoxItem::getTitledBorderText( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- ::rtl::OUString sRet;
- if ( m_pToolBox )
- sRet = m_pToolBox->GetItemText( m_nItemId );
-
- return sRet;
-}
-// -----------------------------------------------------------------------------
-::rtl::OUString SAL_CALL VCLXAccessibleToolBoxItem::getToolTipText( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- ::rtl::OUString sRet;
- if ( m_pToolBox )
- {
- if ( Help::IsExtHelpEnabled() )
- sRet = m_pToolBox->GetHelpText( m_nItemId );
- else
- sRet = m_pToolBox->GetQuickHelpText( m_nItemId );
- if ( !sRet.getLength() )
- // no help text set, so use item text
- sRet = m_pToolBox->GetItemText( m_nItemId );
- }
- return sRet;
-}
-// -----------------------------------------------------------------------------
-// XAccessibleAction
-// -----------------------------------------------------------------------------
-sal_Int32 VCLXAccessibleToolBoxItem::getAccessibleActionCount( ) throw (RuntimeException)
-{
- // only one action -> "Click"
- return 1;
-}
-// -----------------------------------------------------------------------------
-sal_Bool VCLXAccessibleToolBoxItem::doAccessibleAction ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- if ( m_pToolBox )
- m_pToolBox->TriggerItem( m_nItemId );
-
- return sal_True;
-}
-// -----------------------------------------------------------------------------
-::rtl::OUString VCLXAccessibleToolBoxItem::getAccessibleActionDescription ( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- return ::rtl::OUString( TK_RES_STRING( RID_STR_ACC_ACTION_CLICK ) );
-}
-// -----------------------------------------------------------------------------
-Reference< XAccessibleKeyBinding > VCLXAccessibleToolBoxItem::getAccessibleActionKeyBinding( sal_Int32 nIndex ) throw (IndexOutOfBoundsException, RuntimeException)
-{
- OContextEntryGuard aGuard( this );
-
- if ( nIndex < 0 || nIndex >= getAccessibleActionCount() )
- throw IndexOutOfBoundsException();
-
- return Reference< XAccessibleKeyBinding >();
-}
-// -----------------------------------------------------------------------------
-// XAccessibleValue
-// -----------------------------------------------------------------------------
-Any VCLXAccessibleToolBoxItem::getCurrentValue( ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- Any aValue;
- if ( m_pToolBox )
- aValue <<= (sal_Int32)m_pToolBox->IsItemChecked( m_nItemId );
-
- return aValue;
-}
-// -----------------------------------------------------------------------------
-sal_Bool VCLXAccessibleToolBoxItem::setCurrentValue( const Any& aNumber ) throw (RuntimeException)
-{
- OExternalLockGuard aGuard( this );
-
- sal_Bool bReturn = sal_False;
-
- if ( m_pToolBox )
- {
- sal_Int32 nValue = 0;
- OSL_VERIFY( aNumber >>= nValue );
-
- if ( nValue < 0 )
- nValue = 0;
- else if ( nValue > 1 )
- nValue = 1;
-
- m_pToolBox->CheckItem( m_nItemId, (sal_Bool) nValue );
- bReturn = sal_True;
- }
-
- return bReturn;
-}
-// -----------------------------------------------------------------------------
-Any VCLXAccessibleToolBoxItem::getMaximumValue( ) throw (RuntimeException)
-{
- return makeAny((sal_Int32)1);
-}
-// -----------------------------------------------------------------------------
-Any VCLXAccessibleToolBoxItem::getMinimumValue( ) throw (RuntimeException)
-{
- return makeAny((sal_Int32)0);
-}
-// -----------------------------------------------------------------------------
-
-
-/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/accessibility/util/acc.map b/accessibility/util/acc.map
deleted file mode 100644
index b9e53f414..000000000
--- a/accessibility/util/acc.map
+++ /dev/null
@@ -1,7 +0,0 @@
-UDK_3_0_0 {
- global:
- getStandardAccessibleFactory;
- getSvtAccessibilityComponentFactory;
- local:
- *;
-};
diff --git a/accessibility/util/makefile.mk b/accessibility/util/makefile.mk
deleted file mode 100644
index b9f57a8a1..000000000
--- a/accessibility/util/makefile.mk
+++ /dev/null
@@ -1,82 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJ=..
-PRJNAME=accessibility
-TARGET=acc
-USE_DEFFILE=TRUE
-
-# --- Settings ----------------------------------
-
-.INCLUDE : settings.mk
-
-LDUMP=ldump2.exe
-
-# --- Library -----------------------------------
-# --- acc ---------------------------------------
-LIB1TARGET=$(SLB)$/$(PRJNAME).lib
-LIB1FILES=\
- $(SLB)$/standard.lib \
- $(SLB)$/extended.lib \
- $(SLB)$/helper.lib
-
-SHL1TARGET=$(TARGET)$(DLLPOSTFIX)
-
-SHL1STDLIBS= \
- $(VCLLIB) \
- $(COMPHELPERLIB) \
- $(SOTLIB) \
- $(CPPULIB) \
- $(CPPUHELPERLIB) \
- $(UNOTOOLSLIB) \
- $(TKLIB) \
- $(TOOLSLIB) \
- $(SVTOOLLIB) \
- $(SVLLIB) \
- $(SALLIB)
-
-SHL1LIBS=$(LIB1TARGET)
-SHL1DEPN=$(LIB1TARGET) \
- makefile.mk
-
-
-SHL1VERSIONMAP= $(TARGET).map
-SHL1DEF= $(MISC)$/$(SHL1TARGET).def
-DEF1NAME= $(SHL1TARGET)
-
-# === .res file ==========================================================
-
-RES1FILELIST=\
- $(SRS)$/helper.srs
-
-RESLIB1NAME=$(TARGET)
-RESLIB1SRSFILES=$(RES1FILELIST)
-
-# --- Targets ----------------------------------
-
-.INCLUDE : target.mk
-
diff --git a/accessibility/workben/TODO b/accessibility/workben/TODO
deleted file mode 100644
index 6fdfd5cb8..000000000
--- a/accessibility/workben/TODO
+++ /dev/null
@@ -1,13 +0,0 @@
-This is a unsorted list of TODO's and idea regarding the Accessibility Workbench
-
-* increase repaint performance
-* fix paint problems in ObjectViewContainer for e.g. File menu
-* change package structure to be flat (apps don't need deep package names)
-* add ant build script(s)
-* evaluate TreeTable as enhanced overview
-* add error panel and a bunch of consistency checks
-* add focus tracking mode
-* evaluate drawing transparent frames at screen coordinates of an object
-* enhance text view (colors)
-* add table view
-* more generic view loading (Class.forName())
diff --git a/accessibility/workben/makefile b/accessibility/workben/makefile
deleted file mode 100644
index 4bd7c05e4..000000000
--- a/accessibility/workben/makefile
+++ /dev/null
@@ -1,9 +0,0 @@
-all:
- cd source/org/openoffice/accessibility ; $(MAKE) all
-
-ROOT=source
-SUBDIRS=source/org/openoffice/accessibility
-include source/makefile.in
-
-run: all
- $(JAVA) -classpath $(CLASSPATH) org.openoffice.accessibility.awb.AccessibilityWorkBench
diff --git a/accessibility/workben/makefile.in b/accessibility/workben/makefile.in
deleted file mode 100644
index d81df5fb7..000000000
--- a/accessibility/workben/makefile.in
+++ /dev/null
@@ -1,31 +0,0 @@
-PRJ=$(ROOT)/..
-SETTINGS=$(OO_SDK_HOME)/settings
-include $(SETTINGS)/settings.mk
-include $(SETTINGS)/std.mk
-include $(SETTINGS)/dk.mk
-
-OUT_COMP_JAVA = $(OUT_CLASS)/$(patsubst .,/,$(PACKAGE))
-JAVAC=$(JAVA_HOME)/bin/javac
-JAVA=$(JAVA_HOME)/bin/java
-CLASS_FILES = $(patsubst %.java, %.class, $(JAVAFILES))
-CLASSPATH = $(subst $(EMPTYSTRING) $(PATH_SEPARATOR),$(PATH_SEPARATOR),$(OFFICE_CLASSES_DIR)/jurt.jar\
- $(PATH_SEPARATOR)$(OFFICE_CLASSES_DIR)/unoil.jar\
- $(PATH_SEPARATOR)$(OFFICE_CLASSES_DIR)/ridl.jar\
- $(PATH_SEPARATOR)$(OFFICE_CLASSES_DIR)/juh.jar\
- $(PATH_SEPARATOR)$(OUT_COMP_JAVA)\
- $(PATH_SEPARATOR).\
- $(PATH_SEPARATOR)$(ROOT)\
- )
-
-subdirs:
- $(foreach dir,$(SUBDIRS), cd $(dir);$(MAKE);cd ..;)
-
-clean:
- -rm *.class *.jar
- $(foreach dir,$(SUBDIRS), cd $(dir);$(MAKE) clean ; cd ..;)
-
-
-%.class : %.java
- $(JAVAC) -classpath $(CLASSPATH) $<
-
-.PHONY: all package clean subdirs
diff --git a/accessibility/workben/makefile.mk b/accessibility/workben/makefile.mk
deleted file mode 100644
index 7f19d8936..000000000
--- a/accessibility/workben/makefile.mk
+++ /dev/null
@@ -1,39 +0,0 @@
-# copied from settings.mk
-SOLARBINDIR=$(SOLARVERSION)$/$(INPATH)$/bin$(UPDMINOREXT)
-
-# Please modify the following lines to match your environment:
-# If you use the run: target at the end of the file, then adapt pipe name
-PIPE_NAME = $(USER)
-
-# The following variables probably don't need to be changed.
-JAVA = java
-# The JAR_PATH points to the jar files of your local office installation.
-JAR_PATH = $(SOLARBINDIR)$/
-
-
-# The rest of this makefile should not need to be touched.
-
-JAR_FILES = \
- unoil.jar \
- ridl.jar \
- jurt.jar \
- juh.jar \
- java_uno.jar
-
-
-JAVA_CLASSPATHS := \
- ..$/$(INPATH)$/class \
- $(foreach,i,$(JAR_FILES) $(JAR_PATH)$i) \
- $(CLASSPATH)
-
-CLASSPATH !:=$(JAVA_CLASSPATHS:t$(PATH_SEPERATOR))
-
-all:
- build
-
-# Example of how to run the work bench.
-run:
- +$(JAVA) -classpath "$(CLASSPATH)" org/openoffice/accessibility/awb/AccessibilityWorkBench -p $(PIPE_NAME)
-
-runjar:
- +$(JAVA) -classpath "$(CLASSPATH)" -jar AccessibilityWorkBench.jar -p $(PIPE_NAME)
diff --git a/accessibility/workben/org/openoffice/accessibility/Makefile b/accessibility/workben/org/openoffice/accessibility/Makefile
deleted file mode 100644
index a6db6a05a..000000000
--- a/accessibility/workben/org/openoffice/accessibility/Makefile
+++ /dev/null
@@ -1,6 +0,0 @@
-all : subdirs
-
-ROOT=../../../
-SUBDIRS=misc awb
-include $(ROOT)/makefile.in
-
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/AccessibilityWorkBench.java b/accessibility/workben/org/openoffice/accessibility/awb/AccessibilityWorkBench.java
deleted file mode 100644
index fa4fd69d1..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/AccessibilityWorkBench.java
+++ /dev/null
@@ -1,702 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb;
-
-import java.awt.Cursor;
-import java.awt.GridBagConstraints;
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.awt.event.WindowAdapter;
-import java.awt.event.WindowEvent;
-import javax.swing.ButtonGroup;
-import javax.swing.JButton;
-import javax.swing.JCheckBoxMenuItem;
-import javax.swing.JComponent;
-import javax.swing.JFrame;
-import javax.swing.JMenu;
-import javax.swing.JMenuBar;
-import javax.swing.JMenuItem;
-import javax.swing.JPanel;
-import javax.swing.JRadioButtonMenuItem;
-import javax.swing.JScrollPane;
-import javax.swing.JSplitPane;
-import javax.swing.event.TreeSelectionListener;
-import javax.swing.event.TreeSelectionEvent;
-import javax.swing.event.TreeExpansionListener;
-import javax.swing.event.TreeWillExpandListener;
-import javax.swing.tree.TreeNode;
-import javax.swing.tree.TreePath;
-
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.awt.XExtendedToolkit;
-import com.sun.star.frame.XFrame;
-import com.sun.star.frame.XTerminateListener;
-import com.sun.star.lang.EventObject;
-import com.sun.star.uno.UnoRuntime;
-
-import org.openoffice.accessibility.misc.MessageArea;
-import org.openoffice.accessibility.misc.Options;
-import org.openoffice.accessibility.misc.OfficeConnection;
-import org.openoffice.accessibility.misc.SimpleOffice;
-import org.openoffice.accessibility.awb.canvas.Canvas;
-import org.openoffice.accessibility.awb.tree.AccessibilityTree;
-import org.openoffice.accessibility.awb.tree.AccessibilityModel;
-import org.openoffice.accessibility.awb.tree.DynamicAccessibilityModel;
-import org.openoffice.accessibility.awb.view.ObjectViewContainer;
-import org.openoffice.accessibility.awb.view.ObjectViewContainerWindow;
-
-
-
-/** This class manages the GUI of the work bench.
- @see AccessibilityTreeModel
- for the implementation of the tree view on the left side which also
- manages the registration of accessibility listeners.
- @see Canvas
- for the graphical view of the accessible objects.
-*/
-public class AccessibilityWorkBench
- extends JFrame
- implements XTerminateListener,
- ActionListener,
- TreeSelectionListener
-{
- public static final String msVersion = "v1.9";
- public String msOptionsFileName = ".AWBrc";
-
- public static void main (String args[])
- {
- String sPipeName = System.getenv( "USER" );
-
- for (int i=0; i<args.length; i++)
- {
- if (args[i].equals ("-h") || args[i].equals ("--help") || args[i].equals ("-?"))
- {
- System.out.println ("usage: AccessibilityWorkBench <option>*");
- System.out.println ("options:");
- System.out.println (" -p <pipe-name> name of the pipe to use to connect to OpenOffice.org.");
- System.out.println (" Defaults to $USER.");
- System.exit (0);
- }
- else if (args[i].equals ("-p"))
- {
- sPipeName = args[++i];
- }
- }
-
- saWorkBench = new AccessibilityWorkBench (sPipeName);
- }
-
-
-
-
- /** Return the one instance of the AccessibilityWorkBench
- @return
- Returns null when the AccessibilityWorkBench could not be
- created successfully.
- */
- public static AccessibilityWorkBench Instance ()
- {
- return saWorkBench;
- }
-
-
-
- /** Create an accessibility work bench that listens at the specified
- port to Office applications.
- */
- private AccessibilityWorkBench (String sPipeName)
- {
- mbInitialized = false;
-
- OfficeConnection.SetPipeName (sPipeName);
- Options.Instance().Load (msOptionsFileName);
- Layout ();
-
- MessageArea.println (System.getProperty ("os.name") + " / "
- + System.getProperty ("os.arch") + " / "
- + System.getProperty ("os.version"));
- MessageArea.println ("Using pipe name " + sPipeName);
-
- maTree.addTreeSelectionListener (this);
-
- addWindowListener (new WindowAdapter ()
- { public void windowClosing (WindowEvent e) {Quit();} }
- );
-
- OfficeConnection.Instance().AddConnectionListener (this);
- Initialize ();
- }
-
-
-
-
- /** Create and arrange the widgets of the GUI.
- */
- public void Layout ()
- {
- setSize (new java.awt.Dimension (800,600));
-
- JScrollPane aScrollPane;
- GridBagConstraints constraints;
-
- // Create new layout.
- java.awt.GridBagLayout aLayout = new java.awt.GridBagLayout ();
- getContentPane().setLayout (aLayout);
-
- // Accessible Tree.
- javax.swing.tree.TreeModel treeModel = new DynamicAccessibilityModel();
- maTree = new AccessibilityTree(treeModel);
- // Add the model as tree listeners to be able to populate/clear the
- // child lists on demand.
- maTree.addTreeExpansionListener((TreeExpansionListener) treeModel);
- maTree.addTreeWillExpandListener((TreeWillExpandListener) treeModel);
-
- JScrollPane aTreeScrollPane = new JScrollPane(
- maTree,
- JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
- JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
- aTreeScrollPane.setPreferredSize (new java.awt.Dimension (400,300));
-
- // Object view shows details about the currently selected accessible
- // object.
- maObjectViewContainer = new ObjectViewContainer ();
- JScrollPane aObjectViewContainerScrollPane = new JScrollPane(
- maObjectViewContainer,
- JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
- JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
- aObjectViewContainerScrollPane.setPreferredSize (
- new java.awt.Dimension (400,300));
- JButton aCornerButton = new JButton ("CreateNewViewWindow");
- aCornerButton.addActionListener (this);
- aObjectViewContainerScrollPane.setCorner (
- JScrollPane.LOWER_RIGHT_CORNER,
- aCornerButton);
-
- // Split pane for tree view and object view.
- JSplitPane aLeftViewSplitPane = new JSplitPane (
- JSplitPane.VERTICAL_SPLIT,
- aTreeScrollPane,
- aObjectViewContainerScrollPane
- );
- aLeftViewSplitPane.setDividerLocation (300);
- aLeftViewSplitPane.setContinuousLayout (true);
-
- // Canvas.
- maCanvas = new Canvas ();
- maCanvas.SetTree (maTree);
- JScrollPane aScrolledCanvas = new JScrollPane(maCanvas,
- JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
- JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
- aScrolledCanvas.getViewport().setBackground (java.awt.Color.RED);
- aScrolledCanvas.setPreferredSize (new java.awt.Dimension(600,400));
-
- // Split pane for tree view and canvas.
- JSplitPane aViewSplitPane = new JSplitPane (
- JSplitPane.HORIZONTAL_SPLIT,
- aLeftViewSplitPane,
- aScrolledCanvas
- );
- aViewSplitPane.setOneTouchExpandable(true);
- aViewSplitPane.setDividerLocation (400);
- aViewSplitPane.setContinuousLayout (true);
-
- // Split pane for the three views at the top and the message area.
- MessageArea.Instance().setPreferredSize (new java.awt.Dimension(600,50));
- JSplitPane aSplitPane = new JSplitPane (
- JSplitPane.VERTICAL_SPLIT,
- aViewSplitPane,
- MessageArea.Instance());
- aSplitPane.setOneTouchExpandable(true);
- aSplitPane.setContinuousLayout (true);
- addGridElement (aSplitPane, 0,0, 2,1, 3,3,
- GridBagConstraints.CENTER, GridBagConstraints.BOTH);
-
- // Button bar.
- maButtonBar = new javax.swing.JPanel();
- java.awt.GridBagLayout aButtonLayout = new java.awt.GridBagLayout ();
- maButtonBar.setLayout (new java.awt.FlowLayout());
- addGridElement (maButtonBar, 0,3, 2,1, 1,0,
- GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL);
-
- // Buttons.
- // maConnectButton = createButton ("Connect", "connect");
- // maUpdateButton = createButton ("Update", "update");
- // maShapesButton = createButton ("Expand Shapes", "shapes");
- maExpandButton = createButton ("Expand All", "expand");
- maQuitButton = createButton ("Quit", "quit");
- UpdateButtonStates ();
-
- setJMenuBar (CreateMenuBar ());
-
- setTitle("Accessibility Workbench " + msVersion);
-
- setVisible (true);
- pack ();
- aSplitPane.setDividerLocation (1.0);
- validate ();
- repaint();
- }
-
-
-
-
- /** Shortcut method for adding an object to a GridBagLayout.
- */
- void addGridElement (JComponent object,
- int x, int y,
- int width, int height,
- int weightx, int weighty,
- int anchor, int fill)
- {
- GridBagConstraints constraints = new GridBagConstraints ();
- constraints.gridx = x;
- constraints.gridy = y;
- constraints.gridwidth = width;
- constraints.gridheight = height;
- constraints.weightx = weightx;
- constraints.weighty = weighty;
- constraints.anchor = anchor;
- constraints.fill = fill;
- getContentPane().add (object, constraints);
- }
-
-
-
-
- /** Create a new button and place at the right most position into the
- button bar.
- */
- public JButton createButton (String title, String command)
- {
- JButton aButton = new JButton (title);
- aButton.setEnabled (false);
- aButton.setActionCommand (command);
- aButton.addActionListener (this);
-
- maButtonBar.add (aButton);
- return aButton;
- }
-
-
-
-
- /** Create a menu bar for the application.
- @return
- Returns the new menu bar. The returned reference is also
- remembered in the data member <member>maMenuBar</member>.
- */
- javax.swing.JMenuBar CreateMenuBar()
- {
- // Menu bar.
- maMenuBar = new JMenuBar ();
-
- // File menu.
- JMenu aFileMenu = new JMenu ("File");
- maMenuBar.add (aFileMenu);
- JMenuItem aItem;
- aItem = new JMenuItem ("Quit");
- aFileMenu.add (aItem);
- aItem.addActionListener (this);
-
- // View menu.
- JMenu aViewMenu = new JMenu ("View");
- maMenuBar.add (aViewMenu);
- ButtonGroup aGroup = new ButtonGroup ();
- int nZoomMode = Options.GetInteger ("ZoomMode", Canvas.WHOLE_SCREEN);
- JRadioButtonMenuItem aRadioButton = new JRadioButtonMenuItem (
- "Whole Screen", nZoomMode==Canvas.WHOLE_SCREEN);
- aGroup.add (aRadioButton);
- aViewMenu.add (aRadioButton);
- aRadioButton.addActionListener (this);
- aRadioButton = new JRadioButtonMenuItem ("200%", nZoomMode==200);
- aGroup.add (aRadioButton);
- aViewMenu.add (aRadioButton);
- aRadioButton.addActionListener (this);
- aRadioButton = new JRadioButtonMenuItem ("100%", nZoomMode==100);
- aGroup.add (aRadioButton);
- aViewMenu.add (aRadioButton);
- aRadioButton.addActionListener (this);
- aRadioButton = new JRadioButtonMenuItem ("50%", nZoomMode==50);
- aGroup.add (aRadioButton);
- aViewMenu.add (aRadioButton);
- aRadioButton.addActionListener (this);
- aRadioButton = new JRadioButtonMenuItem ("25%", nZoomMode==25);
- aGroup.add (aRadioButton);
- aViewMenu.add (aRadioButton);
- aRadioButton.addActionListener (this);
- aRadioButton = new JRadioButtonMenuItem ("10%", nZoomMode==10);
- aGroup.add (aRadioButton);
- aViewMenu.add (aRadioButton);
- aRadioButton.addActionListener (this);
-
- // Options menu.
- JMenu aOptionsMenu = new JMenu ("Options");
- maMenuBar.add (aOptionsMenu);
- JCheckBoxMenuItem aCBItem;
- aCBItem = new JCheckBoxMenuItem ("Show Descriptions",
- Options.GetBoolean("ShowDescriptions"));
- aOptionsMenu.add (aCBItem);
- aCBItem.addActionListener (this);
-
- aCBItem = new JCheckBoxMenuItem ("Show Names",
- Options.GetBoolean ("ShowNames"));
- aOptionsMenu.add (aCBItem);
- aCBItem.addActionListener (this);
-
- aCBItem = new JCheckBoxMenuItem ("Show Text",
- Options.GetBoolean ("ShowText"));
- aOptionsMenu.add (aCBItem);
- aCBItem.addActionListener (this);
-
- aCBItem = new JCheckBoxMenuItem ("Antialiased Rendering",
- Options.GetBoolean ("Antialiasing"));
- aOptionsMenu.add (aCBItem);
- aCBItem.addActionListener (this);
-
- // Help menu.
- JMenu aHelpMenu = new JMenu ("Help");
- maMenuBar.add (aHelpMenu);
-
- aItem = new JMenuItem ("Help");
- aHelpMenu.add (aItem);
- aItem.addActionListener (this);
-
- aItem = new JMenuItem ("News");
- aHelpMenu.add (aItem);
- aItem.addActionListener (this);
-
- aItem = new JMenuItem ("About");
- aHelpMenu.add (aItem);
- aItem.addActionListener (this);
-
- return maMenuBar;
- }
-
-
-
-
- /** Initialize the AWB. This includes clearing the canvas, add
- listeners, creation of a new tree model for the tree list box and
- the update of the button states.
-
- This method may be called any number of times. Note that all
- actions will be carried out every time. The main purpose of a
- second call is that of a re-initialization after a reconnect.
- */
- protected void Initialize ()
- {
- maCanvas.SetTree (maTree);
-
- SimpleOffice aOffice = SimpleOffice.Instance ();
- if (aOffice != null)
- {
- // Add terminate listener.
- if (aOffice.GetDesktop() != null)
- aOffice.GetDesktop().addTerminateListener (this);
-
- }
-
- mbInitialized = true;
- UpdateButtonStates ();
- }
-
-
-
-
- /** Update the states of the buttons according to the internal state of
- the AWB.
- */
- protected void UpdateButtonStates ()
- {
- // maConnectButton.setEnabled (mbInitialized);
- maQuitButton.setEnabled (true);
- // maUpdateButton.setEnabled (mbInitialized);
- maExpandButton.setEnabled (mbInitialized);
- // maShapesButton.setEnabled (mbInitialized);
- }
-
-
-
- /** Callback for GUI actions from the buttons.
- */
- public void actionPerformed (ActionEvent aEvent)
- {
- String sCommand = aEvent.getActionCommand();
- if (sCommand.equals("connect"))
- {
- SimpleOffice.Clear();
- Initialize ();
- }
- else if (sCommand.equals("quit"))
- {
- Quit ();
- }
- else if (sCommand.equals("update"))
- {
-// maTree.Dispose();
- Initialize ();
- }
- else if (sCommand.equals("shapes"))
- {
- Cursor aCursor = getCursor();
- setCursor (new Cursor (Cursor.WAIT_CURSOR));
- // maTree.expandShapes();
- setCursor (aCursor);
- }
- else if (sCommand.equals("expand"))
- {
- Cursor aCursor = getCursor();
- setCursor (new Cursor (Cursor.WAIT_CURSOR));
-
- for (int i=0; i<maTree.getRowCount(); i++)
- maTree.expandRow (i);
- // maAccessibilityTree.expandAll();
- setCursor (aCursor);
- }
- else if (sCommand.equals ("Quit"))
- {
- System.out.println ("exiting");
- System.exit (0);
- }
- else if (sCommand.equals ("Show Descriptions"))
- {
- Options.SetBoolean ("ShowDescriptions",
- ((JCheckBoxMenuItem)aEvent.getSource()).getState());
- maCanvas.repaint();
- }
- else if (sCommand.equals ("Show Names"))
- {
- Options.SetBoolean ("ShowNames",
- ((JCheckBoxMenuItem)aEvent.getSource()).getState());
- maCanvas.repaint();
- }
- else if (sCommand.equals ("Show Text"))
- {
- Options.SetBoolean ("ShowText",
- ((JCheckBoxMenuItem)aEvent.getSource()).getState());
- maCanvas.repaint();
- }
- else if (sCommand.equals ("Antialiased Rendering"))
- {
- Options.SetBoolean ("Antialiasing",
- ((JCheckBoxMenuItem)aEvent.getSource()).getState());
- maCanvas.repaint();
- }
- else if (sCommand.equals ("Help"))
- {
- HelpWindow.Instance().loadFile ("help.html");
- }
- else if (sCommand.equals ("News"))
- {
- try{
- HelpWindow.Instance().loadFile ("news.html");
- } catch (Exception ex) {}
- }
- else if (sCommand.equals ("About"))
- {
- HelpWindow.Instance().loadFile ("about.html");
- }
- else if (sCommand.equals ("Whole Screen"))
- {
- Options.SetInteger ("ZoomMode", Canvas.WHOLE_SCREEN);
- maCanvas.repaint();
- }
- else if (sCommand.equals ("200%"))
- {
- Options.SetInteger ("ZoomMode", 200);
- maCanvas.repaint();
- }
- else if (sCommand.equals ("100%"))
- {
- Options.SetInteger ("ZoomMode", 100);
- maCanvas.repaint();
- }
- else if (sCommand.equals ("50%"))
- {
- Options.SetInteger ("ZoomMode", 50);
- maCanvas.repaint();
- }
- else if (sCommand.equals ("25%"))
- {
- Options.SetInteger ("ZoomMode", 25);
- maCanvas.repaint();
- }
- else if (sCommand.equals ("10%"))
- {
- Options.SetInteger ("ZoomMode", 10);
- maCanvas.repaint();
- }
- else if (sCommand.equals ("<connected>"))
- {
- Connected ();
- }
- else if (sCommand.equals ("CreateNewViewWindow"))
- {
- TreePath aSelectionPath = maTree.getSelectionPath();
- if (aSelectionPath != null)
- {
- javax.swing.tree.TreeNode aSelectedNode =
- (javax.swing.tree.TreeNode)aSelectionPath.getLastPathComponent();
- if (aSelectedNode instanceof XAccessible) {
- new ObjectViewContainerWindow (((XAccessible) aSelectedNode).getAccessibleContext());
- }
- }
- }
- else
- {
- System.err.println("unknown command " + sCommand);
- }
- }
-
-
-
-
- /** TreeSelectionListener
- Tell the object view and the canvas about the selected object.
- */
- public void valueChanged (TreeSelectionEvent aEvent) {
-
- if (aEvent.isAddedPath()) {
- Cursor aCursor = getCursor();
- setCursor (new Cursor (Cursor.WAIT_CURSOR));
-
- javax.swing.tree.TreePath aPath = aEvent.getPath();
- maTree.scrollPathToVisible (aPath);
- Object aObject = aPath.getLastPathComponent();
- implSetCurrentObject( aObject );
- if (aObject instanceof XAccessible)
- {
- if (maObjectViewContainer != null)
- maObjectViewContainer.SetObject( ((XAccessible)aObject).getAccessibleContext() );
- }
- if (maCanvas != null)
- maCanvas.SelectObject ((TreeNode) aObject);
- setCursor (aCursor);
- } else {
- implSetCurrentObject( aEvent.getPath().getLastPathComponent() );
- if (maObjectViewContainer != null)
- maObjectViewContainer.SetObject (null);
- if (maCanvas != null)
- maCanvas.SelectObject (null);
- }
- }
-
-
- private void implSetCurrentObject( Object i_object )
- {
- if ( maObjectViewContainer == null )
- return;
- if ( maCurrentObject != null )
- {
- AccessibilityModel.removeEventListener( (TreeNode)maCurrentObject, maObjectViewContainer );
- }
- maCurrentObject = i_object;
- if ( maCurrentObject != null )
- {
- AccessibilityModel.addEventListener( (TreeNode)maCurrentObject, maObjectViewContainer );
- }
- }
-
- // XEventListener
- public void disposing (EventObject aSourceObj)
- {
- XFrame xFrame = (XFrame)UnoRuntime.queryInterface(
- XFrame.class, aSourceObj.Source);
-
- if( xFrame != null )
- System.out.println("frame disposed");
- else
- System.out.println("controller disposed");
- }
-
-
-
-
- // XTerminateListener
- public void queryTermination(final EventObject aEvent) throws com.sun.star.frame.TerminationVetoException
- {
- System.out.println ("Terminate Event : " + aEvent);
- }
-
-
-
-
- // XTerminateListener
- public void notifyTermination(final EventObject aEvent)
- {
- System.out.println ("Notifiy Termination Event : " + aEvent);
- }
-
-
- /** Called after the AWB is connected to an Office application.
- */
- private void Connected ()
- {
- // Clear the tree and by expanding the root node initiate the
- // scanning and insertion of nodes for the top-level windows.
-// maTree.Clear();
-// maTree.collapseRow (0);
-// maTree.expandRow (0);
-
- // Register the top window listener.
- XExtendedToolkit xToolkit =
- SimpleOffice.Instance().GetExtendedToolkit();
- if (xToolkit != null)
- {
- maTree.setToolkit(xToolkit);
- }
- }
-
-
- /** Called when shutting down the AWB tool.
- */
- private void Quit ()
- {
-// maTree.Dispose();
- System.exit (0);
- }
-
- /// The Singleton Workbench object.
- private static AccessibilityWorkBench
- saWorkBench = null;
-
- private JPanel maMainPanel;
- private JPanel maButtonBar;
- private Canvas maCanvas;
- private AccessibilityTree maTree;
- private ObjectViewContainer maObjectViewContainer;
- private JButton
- maConnectButton,
- maQuitButton,
- maUpdateButton,
- maExpandButton,
- maShapesButton;
- private JMenuBar maMenuBar;
- private boolean mbInitialized;
- private Object maCurrentObject = null;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/HelpWindow.java b/accessibility/workben/org/openoffice/accessibility/awb/HelpWindow.java
deleted file mode 100644
index c344812f8..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/HelpWindow.java
+++ /dev/null
@@ -1,187 +0,0 @@
-package org.openoffice.accessibility.awb;
-
-import javax.swing.JFrame;
-import javax.swing.JScrollPane;
-import javax.swing.JEditorPane;
-import javax.swing.JButton;
-import java.net.URL;
-import javax.swing.event.HyperlinkListener;
-import javax.swing.event.HyperlinkEvent;
-import java.net.MalformedURLException;
-import java.io.IOException;
-import java.io.File;
-import java.awt.event.WindowAdapter;
-import java.awt.event.WindowEvent;
-import java.awt.GridBagLayout;
-import java.awt.GridBagConstraints;
-import java.awt.event.ActionListener;
-import java.util.LinkedList;
-
-public class HelpWindow
- implements ActionListener
-{
- public static synchronized HelpWindow Instance ()
- {
- if (maInstance == null)
- maInstance = new HelpWindow();
- return maInstance;
- }
-
- public void loadFile (String sFilename)
- {
- File aFile = new File (sFilename);
- try
- {
- loadURL (aFile.toURI().toURL());
- }
- catch (MalformedURLException e)
- {
- e.printStackTrace (System.err);
- }
- }
- public void loadURL (String sURL)
- {
- try
- {
- loadURL (new URL (sURL));
- }
- catch (MalformedURLException e)
- {
- e.printStackTrace (System.err);
- }
- }
-
-
-
-
- public void loadURL (URL aURL)
- {
- maHistory.addLast (aURL);
- selectHistoryPage (maHistory.size()-1);
- maFrame.toFront ();
- }
-
-
-
-
- private HelpWindow ()
- {
- try
- {
- maCurrentHistoryEntry = -1;
- maHistory = new LinkedList();
-
- maFrame = new JFrame ();
- maFrame.addWindowListener (new WindowAdapter ()
- {
- public void windowClosing (WindowEvent e)
- {
- maInstance = null;
- }
- });
- maContent = createContentWidget();
-
- maFrame.getContentPane().setLayout (new GridBagLayout());
- GridBagConstraints aConstraints = new GridBagConstraints ();
- aConstraints.gridx = 0;
- aConstraints.gridy = 0;
- aConstraints.gridwidth = 3;
- aConstraints.weightx = 1;
- aConstraints.weighty = 1;
- aConstraints.fill = GridBagConstraints.BOTH;
- maFrame.getContentPane().add (new JScrollPane (maContent), aConstraints);
-
- aConstraints = new GridBagConstraints();
- aConstraints.gridx = 0;
- aConstraints.gridy = 1;
- maPrevButton = new JButton ("Prev");
- maFrame.getContentPane().add (maPrevButton, aConstraints);
- maPrevButton.addActionListener (this);
-
- aConstraints = new GridBagConstraints();
- aConstraints.gridx = 1;
- aConstraints.gridy = 1;
- maNextButton = new JButton ("Next");
- maFrame.getContentPane().add (maNextButton, aConstraints);
- maNextButton.addActionListener (this);
-
- aConstraints = new GridBagConstraints();
- aConstraints.gridx = 2;
- aConstraints.gridy = 1;
- aConstraints.anchor = GridBagConstraints.EAST;
- JButton aButton = new JButton ("Close");
- maFrame.getContentPane().add (aButton, aConstraints);
- aButton.addActionListener (this);
-
- maFrame.setSize (600,400);
- maFrame.setVisible (true);
- }
- catch (Exception e)
- {}
- }
-
- public void actionPerformed (java.awt.event.ActionEvent e)
- {
- if (e.getActionCommand().equals("Prev"))
- {
- selectHistoryPage (maCurrentHistoryEntry - 1);
- }
- else if (e.getActionCommand().equals("Next"))
- {
- selectHistoryPage (maCurrentHistoryEntry + 1);
- }
- else if (e.getActionCommand().equals("Close"))
- {
- maFrame.dispose ();
- maInstance = null;
- }
- }
-
- private JEditorPane createContentWidget ()
- {
- JEditorPane aContent = new JEditorPane ();
- aContent.setEditable (false);
- aContent.addHyperlinkListener (new HyperlinkListener()
- {
- public void hyperlinkUpdate (HyperlinkEvent e)
- {
- if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED)
- HelpWindow.Instance().loadURL (e.getURL());
- }
- });
- return aContent;
- }
-
- private void selectHistoryPage (int i)
- {
- if (i < 0)
- i = 0;
- else if (i >= maHistory.size()-1)
- i = maHistory.size()-1;
- if (i != maCurrentHistoryEntry)
- {
- URL aURL = (URL)maHistory.get (i);
- try
- {
- maContent.setPage (aURL);
- }
- catch (java.io.IOException ex)
- {
- ex.printStackTrace(System.err);
- }
-
- maCurrentHistoryEntry = i;
- }
-
- maPrevButton.setEnabled (maCurrentHistoryEntry > 0);
- maNextButton.setEnabled (maCurrentHistoryEntry < maHistory.size()-1);
- }
-
- private static HelpWindow maInstance = null;
- private JFrame maFrame;
- private JEditorPane maContent;
- private LinkedList maHistory;
- private int maCurrentHistoryEntry;
- private JButton maPrevButton;
- private JButton maNextButton;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/Makefile b/accessibility/workben/org/openoffice/accessibility/awb/Makefile
deleted file mode 100644
index 88a004ec2..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/Makefile
+++ /dev/null
@@ -1,11 +0,0 @@
-all : package
-
-ROOT=../../../..
-PACKAGE = org.openoffice.accessibility.awb
-SUBDIRS = canvas event tree view
-
-include makefile.common
-
-include $(ROOT)/makefile.in
-
-package: subdirs $(CLASS_FILES)
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/canvas/Canvas.java b/accessibility/workben/org/openoffice/accessibility/awb/canvas/Canvas.java
deleted file mode 100644
index 78855b5a3..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/canvas/Canvas.java
+++ /dev/null
@@ -1,322 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.canvas;
-
-import java.awt.Color;
-import java.awt.Dimension;
-import java.awt.Graphics;
-import java.awt.Graphics2D;
-import java.awt.Rectangle;
-import java.awt.RenderingHints;
-import java.awt.Toolkit;
-import java.awt.geom.Rectangle2D;
-import java.util.Iterator;
-import javax.swing.JPanel;
-import javax.swing.JScrollPane;
-import javax.swing.JViewport;
-import javax.swing.event.TreeSelectionEvent;
-import javax.swing.tree.TreePath;
-
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleComponent;
-
-import org.openoffice.accessibility.misc.Options;
-
-/** This canvas displays accessible objects graphically. Each accessible
- object with graphical representation is represented by an
- CanvasShape object and has to be added by the
- <member>addAccessible</member> member function.
-
- <p>The canvas listens to selection events of the associated JTree and
- highlights the first selected node of that tree.</p>
-*/
-public class Canvas
- extends JPanel
-{
- // This constant can be passed to SetZoomMode to always show the whole screen.
- public static final int WHOLE_SCREEN = -1;
-
- public Canvas ()
- {
- super (true);
- maShapeList = new ShapeContainer (this);
- maMouseObserver = new MouseObserver (this);
- maTree = null;
- mnHOffset = 0;
- mnVOffset = 0;
- mnScale = 1;
- maLastWidgetSize = new Dimension (0,0);
- }
-
-
-
- /** Tell the canvas which tree to use to highlight accessible
- objects and to observe for changes in the tree structure.
- */
- public void SetTree (javax.swing.JTree aTree)
- {
- if (aTree != maTree)
- {
- maTree = aTree;
- maShapeList.SetTree (maTree);
- maMouseObserver.SetTree (maTree);
- }
- }
-
-
-
-
- private void Clear ()
- {
- maShapeList.Clear();
- }
-
-
-
-
- public Iterator GetShapeIterator ()
- {
- return maShapeList.GetIterator();
- }
-
-
-
-
- public void paintComponent (Graphics g)
- {
- synchronized (g)
- {
- super.paintComponent (g);
-
- Graphics2D g2 = (Graphics2D)g;
- if (Options.GetBoolean("Antialiasing"))
- g2.setRenderingHint (RenderingHints.KEY_ANTIALIASING,
- RenderingHints.VALUE_ANTIALIAS_ON);
- else
- g2.setRenderingHint (RenderingHints.KEY_ANTIALIASING,
- RenderingHints.VALUE_ANTIALIAS_OFF);
-
- setupTransformation ();
- g2.translate (mnHOffset, mnVOffset);
- g2.scale (mnScale, mnScale);
-
- // Draw the screen representation to give a hint of the location of the
- // accessible object on the screen.
- Dimension aScreenSize = Toolkit.getDefaultToolkit().getScreenSize();
- Rectangle2D.Double aScreen = new Rectangle2D.Double (
- 0,
- 0,
- aScreenSize.getWidth(),
- aScreenSize.getHeight());
- // Fill the screen rectangle and draw a frame arround it to increase its visibility.
- g2.setColor (new Color (250,240,230));
- g2.fill (aScreen);
- g2.setColor (Color.BLACK);
- g2.draw (aScreen);
-
- synchronized (maShapeList)
- {
- Iterator aShapeIterator = maShapeList.GetIterator();
- boolean bShowDescriptions = Options.GetBoolean ("ShowDescriptions");
- boolean bShowNames = Options.GetBoolean ("ShowNames");
- boolean bShowText = Options.GetBoolean ("ShowText");
- while (aShapeIterator.hasNext())
- {
- CanvasShape aCanvasShape =
- (CanvasShape)aShapeIterator.next();
- try
- {
- aCanvasShape.paint (
- g2,
- bShowDescriptions, bShowNames, bShowText);
- }
- catch (Exception aException)
- {
- System.err.println ("caught exception while painting a shape:"
- + aException);
- aException.printStackTrace (System.err);
- }
- }
- }
-
- // Paint highlighted frame around active object as the last thing.
- if (maActiveObject != null)
- maActiveObject.paint_highlight (g2);
- }
- }
-
-
-
-
- /** Set up the transformation so that the graphical display can show a
- centered representation of the whole screen.
- */
- private void setupTransformation ()
- {
- // Turn off scrollbars when showing the whole screen. Otherwise show them when needed.
- JViewport aViewport = (JViewport)getParent();
- JScrollPane aScrollPane = (JScrollPane)aViewport.getParent();
- int nZoomMode = Options.GetInteger ("ZoomMode", WHOLE_SCREEN);
- if (nZoomMode == WHOLE_SCREEN)
- {
- if (aScrollPane.getHorizontalScrollBarPolicy()
- != JScrollPane.HORIZONTAL_SCROLLBAR_NEVER)
- aScrollPane.setHorizontalScrollBarPolicy (
- JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
- if (aScrollPane.getVerticalScrollBarPolicy()
- != JScrollPane.VERTICAL_SCROLLBAR_NEVER)
- aScrollPane.setVerticalScrollBarPolicy (
- JScrollPane.VERTICAL_SCROLLBAR_NEVER);
- }
- else
- {
- if (aScrollPane.getHorizontalScrollBarPolicy()
- != JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED)
- aScrollPane.setHorizontalScrollBarPolicy (
- JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
- if (aScrollPane.getVerticalScrollBarPolicy()
- != JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED)
- aScrollPane.setVerticalScrollBarPolicy (
- JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
- }
-
- Dimension aScreenSize = Toolkit.getDefaultToolkit().getScreenSize();
- Dimension aWidgetSize = aViewport.getSize();
- {
- if ((aScreenSize.getWidth() > 0) && (aScreenSize.getHeight() > 0))
- {
- if (nZoomMode == WHOLE_SCREEN)
- {
- // Calculate the scales that would map the screen onto the
- // widget in both of the coordinate axes and select the
- // smaller
- // of the two: it maps the screen onto the widget in both
- // axes at the same time.
- double nHScale = (aWidgetSize.getWidth() - 10)
- / aScreenSize.getWidth();
- double nVScale = (aWidgetSize.getHeight() - 10)
- / aScreenSize.getHeight();
- if (nHScale < nVScale)
- mnScale = nHScale;
- else
- mnScale = nVScale;
- }
- else
- {
- mnScale = nZoomMode / 100.0;
- }
-
- // Calculate offsets that center the scaled screen inside
- // the widget.
- mnHOffset = (aWidgetSize.getWidth()
- - mnScale*aScreenSize.getWidth()) / 2.0;
- mnVOffset = (aWidgetSize.getHeight()
- - mnScale*aScreenSize.getHeight()) / 2.0;
- if (mnHOffset < 0)
- mnHOffset = 0;
- if (mnVOffset < 0)
- mnVOffset = 0;
-
- setPreferredSize (new Dimension (
- (int)(2*mnHOffset + mnScale * aScreenSize.getWidth()),
- (int)(2*mnVOffset + mnScale * aScreenSize.getHeight())));
- revalidate ();
- }
- else
- {
- // In case of a degenerate (not yet initialized?) screen size
- // use some meaningless default values.
- mnScale = 1;
- mnHOffset = 0;
- mnVOffset = 0;
- }
- }
- maLastWidgetSize = aWidgetSize;
- }
-
-
-
- protected boolean HighlightObject (CanvasShape aNewActiveObject)
- {
- if (aNewActiveObject != maActiveObject)
- {
- if (maActiveObject != null)
- maActiveObject.Highlight (false);
-
- maActiveObject = aNewActiveObject;
- if (maActiveObject != null)
- {
- /* if (maTree != null)
- {
- TreePath aPath = new TreePath (
- maActiveObject.GetNode().GetPath());
- maTree.scrollPathToVisible (aPath);
- maTree.setSelectionPath (aPath);
- maTree.repaint ();
- }
- */
- maActiveObject.Highlight (true);
- }
- repaint ();
- return true;
- }
- else
- return false;
- }
-
-
-
-
- /** Called when the selection of the tree changes. Highlight the
- corresponding graphical representation of the object.
- */
- public void SelectObject (javax.swing.tree.TreeNode aNode)
- {
- CanvasShape aCanvasShape = maShapeList.Get (aNode);
- HighlightObject (aCanvasShape);
- }
-
-
-
-
- private int
- mnXAnchor,
- mnYAnchor,
- maResizeFlag;
- private double
- mnHOffset,
- mnVOffset,
- mnScale;
- private CanvasShape maActiveObject;
- private javax.swing.JTree maTree;
- // The size of the widget at the last call of setupTransformation()
- private Dimension maLastWidgetSize;
- private ShapeContainer maShapeList;
- private MouseObserver maMouseObserver;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/canvas/CanvasShape.java b/accessibility/workben/org/openoffice/accessibility/awb/canvas/CanvasShape.java
deleted file mode 100644
index 140590466..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/canvas/CanvasShape.java
+++ /dev/null
@@ -1,412 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.canvas;
-
-import java.awt.Color;
-import java.awt.Dimension;
-import java.awt.Graphics2D;
-import java.awt.Point;
-import java.awt.Rectangle;
-import java.awt.geom.Point2D;
-import java.awt.geom.Rectangle2D;
-import java.awt.geom.AffineTransform;
-import java.awt.geom.NoninvertibleTransformException;
-
-
-import com.sun.star.accessibility.*;
-import com.sun.star.lang.EventObject;
-import com.sun.star.uno.UnoRuntime;
-
-
-class CanvasShape implements XAccessibleEventListener
-{
- public final Color maHighlightColor = Color.red;
- public final Color maSelectionColor = Color.green;
- public final Color maFocusColor = Color.blue;
-
- public CanvasShape (javax.swing.tree.TreeNode aNode, Canvas aCanvas)
- {
- maNode = aNode;
- msName = "<no name>";
- msDescription = "<no description>";
- maShape = new Rectangle2D.Double (-10,-10,10,10);
- maPosition = new Point (-10,-10);
- maSize = new Dimension (10,10);
- maFgColor = java.awt.Color.black;
- maBgColor = Color.blue;
- mnRole = -1;
- mbHighlighted = false;
- mbSelected = false;
- mbFocused = false;
- maCanvas = aCanvas;
-
- Update ();
- }
-
-
-
-
- public javax.swing.tree.TreePath getNodePath (javax.swing.tree.TreeNode node)
- {
- javax.swing.tree.TreeNode parent = node.getParent();
- return (parent != null) ?
- getNodePath(parent).pathByAddingChild(node) :
- new javax.swing.tree.TreePath(node);
- }
-
- public javax.swing.tree.TreePath getNodePath ()
- {
- return getNodePath(maNode);
- }
-
-
-
- /** Update the data obtained from the <type>AccessibilityNode</type>
- object.
- */
- public void Update ()
- {
- if (maNode instanceof XAccessible) {
- mxContext = ((XAccessible) maNode).getAccessibleContext();
- mxComponent = (XAccessibleComponent)UnoRuntime.queryInterface(
- XAccessibleComponent.class, mxContext);
- }
-
- if (mxContext != null)
- {
- msName = mxContext.getAccessibleName();
- msDescription = mxContext.getAccessibleDescription();
- mnRole = mxContext.getAccessibleRole();
-
- // Extract the selected and focused flag.
- XAccessibleStateSet xStateSet = mxContext.getAccessibleStateSet ();
- if (xStateSet != null)
- {
- mbSelected = xStateSet.contains (AccessibleStateType.SELECTED);
- mbFocused = xStateSet.contains (AccessibleStateType.FOCUSED);
- }
- }
-
- UpdateGeometry ();
-
- if (mxComponent != null)
- {
- // Note: alpha values in office 0..255 have to be mapped to
- // 255..0 in Java
- Color aCol = new Color (mxComponent.getForeground(), true);
- maFgColor = new Color (aCol.getRed (),
- aCol.getGreen (),
- aCol.getBlue (),
- 0xff - aCol.getAlpha ());
- aCol = new Color (mxComponent.getBackground(), true);
- maBgColor = new Color (aCol.getRed (),
- aCol.getGreen (),
- aCol.getBlue (),
- 0xff - aCol.getAlpha ());
- }
- }
-
-
-
- public void UpdateGeometry ()
- {
- if (mxComponent != null)
- {
- com.sun.star.awt.Point aLocationOnScreen =
- mxComponent.getLocationOnScreen();
- com.sun.star.awt.Size aSizeOnScreen = mxComponent.getSize();
- maPosition = new Point (
- aLocationOnScreen.X,
- aLocationOnScreen.Y);
- maSize = new Dimension (
- aSizeOnScreen.Width,
- aSizeOnScreen.Height);
- }
- }
-
-
-
- /** Paint the object into the specified canvas. It is transformed
- according to the specified offset and scale.
- */
- public void paint (
- Graphics2D g,
- boolean bShowDescription,
- boolean bShowName,
- boolean bShowText)
- {
- try{
- // Transform the object's position and size according to the
- // specified offset and scale.
- Point aLocation = new Point();
- maShape = new Rectangle2D.Double (
- maPosition.x,
- maPosition.y,
- maSize.width,
- maSize.height);
- maTransformation = g.getTransform();
-
- // Fill the object's bounding box with its background color if it
- // has no children.
- if (mxContext.getAccessibleChildCount() == 0)
- {
- g.setColor (maBgColor);
- g.fill (maShape);
- }
-
- // Remove alpha channel from color before drawing the frame.
- Color color = maFgColor;
- if (maFgColor.getAlpha()<128)
- color = new Color (maFgColor.getRed(), maFgColor.getGreen(), maFgColor.getBlue());
- g.setColor (color);
- g.draw (maShape);
-
- if (mbFocused)
- {
- g.setColor (maFocusColor);
- for (int x=0; x<=2; x++)
- for (int y=0; y<=2; y++)
- g.fill (
- new Rectangle2D.Double (
- maShape.x + x/2.0 * maShape.width-3,
- maShape.y + y/2.0 * maShape.height-3,
- 6,
- 6));
- }
- if (mbSelected)
- {
- g.setColor (maSelectionColor);
- for (int x=0; x<=2; x++)
- for (int y=0; y<=2; y++)
- g.draw (
- new Rectangle2D.Double (
- maShape.x + x/2.0 * maShape.width-2,
- maShape.y + y/2.0 * maShape.height-2,
- 4,
- 4));
- }
-
- // Write the object's text OR name and description.
- g.setColor (maFgColor);
- if (bShowName)
- paintName (g);
- if (bShowDescription)
- paintDescription (g);
- if (bShowText)
- paintText (g);
- }
- catch (Exception e)
- { // don't care
- }
- }
-
-
- public void paint_highlight (Graphics2D g)
- {
- if (mbHighlighted)
- g.setColor (maHighlightColor);
- else
- g.setColor (maFgColor);
- g.draw (maShape);
- }
-
-
-
-
- private void paintName (Graphics2D g)
- {
- g.drawString ("Name: " + msName,
- (float)maShape.x+5,
- (float)maShape.y+15);
- }
-
-
-
- private void paintDescription (Graphics2D g)
- {
- g.drawString ("Description: " + msDescription,
- (float)maShape.x+5,
- (float)maShape.y+35);
- }
-
-
-
-
- private void paintText (Graphics2D g)
- {
- XAccessibleText xText = null;
- // get XAccessibleText
- xText = (XAccessibleText)UnoRuntime.queryInterface(
- XAccessibleText.class, mxContext);
-
- // Draw every character in the text string.
- if (xText != null)
- {
- String sText = xText.getText();
- try
- {
- for(int i = 0; i < sText.length(); i++)
- {
- com.sun.star.awt.Rectangle aRect =
- xText.getCharacterBounds(i);
-
- double x = maShape.x + aRect.X;
- double y = maShape.y + aRect.Y + aRect.Height;
-
- g.drawString (sText.substring(i, i+1), (float)x, (float)y);
- }
- }
- catch (com.sun.star.lang.IndexOutOfBoundsException e)
- {}
- }
- }
-
-
- /** Compute whether the specified point lies inside the object's
- bounding box.
- */
- public boolean Contains (int x, int y)
- {
- Point2D aPosition = new Point2D.Double (x,y);
- try
- {
- maTransformation.inverseTransform (aPosition, aPosition);
- // System.out.println ("transformed "+x+","+y+" to "+aPosition);
- }
- catch (NoninvertibleTransformException aException)
- {
- return false;
- }
- return (maShape.contains (aPosition));
- }
-
- public void Highlight (boolean bFlag)
- {
- mbHighlighted = bFlag;
- }
-
- public boolean IsHighlighted ()
- {
- return mbHighlighted;
- }
-
- public Rectangle GetBBox ()
- {
- return new Rectangle (maPosition, maSize);
- }
-
- public Point getOrigin ()
- {
- return maPosition;
- }
-
- public Dimension GetSize ()
- {
- return maSize;
- }
-
- public int getRole ()
- {
- return mnRole;
- }
-
- public XAccessibleContext getContext ()
- {
- return mxContext;
- }
-
- public XAccessibleComponent getComponent ()
- {
- return mxComponent;
- }
-
- public String toString ()
- {
- return ">"+msName+", "+msDescription+" +"+maPosition.x+"+"+maPosition.y
- +"x"+maSize.width+"x"+maSize.height+"<";
- }
-
- /** */
- public void notifyEvent(com.sun.star.accessibility.AccessibleEventObject aEvent) {
- try {
- switch (aEvent.EventId) {
- case AccessibleEventId.BOUNDRECT_CHANGED:
- case AccessibleEventId.VISIBLE_DATA_CHANGED:
- UpdateGeometry ();
- maCanvas.repaint();
- break;
- default:
- break;
- }
- } catch (Exception aException) {
- System.err.println ("caught exception while updating a shape:"
- + aException);
- aException.printStackTrace (System.err);
- }
- }
-
- /** Callback for disposing events.
- */
- public void disposing (com.sun.star.lang.EventObject e)
- {
- System.out.println ("Disposing");
- }
-
-
-
-
- private Canvas
- maCanvas;
- private javax.swing.tree.TreeNode
- maNode;
- private XAccessibleContext
- mxContext;
- private XAccessibleComponent
- mxComponent;
- private String
- msDescription,
- msName;
- private Rectangle2D.Double maShape;
- private AffineTransform maTransformation;
- private Point maPosition;
- private Dimension
- maTransformedSize,
- maSize;
- private Color
- maFgColor,
- maBgColor;
- private boolean
- // Highlighting objects is an internal concept. Corresponds to selection in the tree view.
- mbHighlighted,
- // Set when the accessible object is selected.
- mbSelected,
- // Set when the accessible object is focused.
- mbFocused;
- private int
- mnRole;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/canvas/Makefile b/accessibility/workben/org/openoffice/accessibility/awb/canvas/Makefile
deleted file mode 100644
index 078ac7ee4..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/canvas/Makefile
+++ /dev/null
@@ -1,13 +0,0 @@
-all : package
-
-ROOT=../../../../..
-PACKAGE = org.openoffice.accessibility.awb.canvas
-SUBDIRS =
-include makefile.common
-
-include $(ROOT)/makefile.in
-
-
-package : $(CLASS_FILES)
-
-
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/canvas/MouseObserver.java b/accessibility/workben/org/openoffice/accessibility/awb/canvas/MouseObserver.java
deleted file mode 100644
index c2468ec38..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/canvas/MouseObserver.java
+++ /dev/null
@@ -1,104 +0,0 @@
-package org.openoffice.accessibility.awb.canvas;
-
-import java.awt.Dimension;
-import java.awt.event.InputEvent;
-import java.awt.event.MouseEvent;
-import java.awt.event.MouseListener;
-import java.awt.event.MouseMotionListener;
-import java.util.Iterator;
-import javax.swing.tree.TreePath;
-
-
-/** Observe the mouse and highlight shapes of the canvas when clicked.
-*/
-public class MouseObserver
- implements MouseListener,
- MouseMotionListener
-{
- public MouseObserver (Canvas aCanvas)
- {
- maCanvas = aCanvas;
- maCanvas.addMouseListener (this);
- maCanvas.addMouseMotionListener (this);
- }
-
-
- public void SetTree (javax.swing.JTree aTree)
- {
- maTree = aTree;
- }
-
- public void mouseClicked (MouseEvent e)
- {}
-
- public void mousePressed (MouseEvent e)
- {
- CanvasShape aObjectUnderMouse = FindCanvasShapeUnderMouse (e);
- maTree.clearSelection();
- if (aObjectUnderMouse != null)
- {
- TreePath aPath = aObjectUnderMouse.getNodePath();
- if ((e.getModifiers() & InputEvent.CTRL_MASK) != 0)
- maTree.expandPath (aPath);
- // Selecting the entry will eventually highlight the shape.
- maTree.setSelectionPath (aPath);
- maTree.makeVisible (aPath);
- }
- }
-
- public void mouseReleased (MouseEvent e)
- {}
-
- public void mouseEntered (MouseEvent e)
- {}
-
- public void mouseExited (MouseEvent e)
- {}
-
- public void mouseDragged (MouseEvent e)
- {
- }
-
- public void mouseMoved (MouseEvent e)
- {
- if ((e.getModifiers() & InputEvent.SHIFT_MASK) != 0)
- maCanvas.HighlightObject (FindCanvasShapeUnderMouse (e));
- }
-
-
- /** Search for the smallest shape that contains the mouse position.
- */
- protected CanvasShape FindCanvasShapeUnderMouse (MouseEvent e)
- {
- Dimension aSmallestSize = null;
- Iterator maShapeIterator = maCanvas.GetShapeIterator();
- CanvasShape aShapeUnderMouse = null;
- while (maShapeIterator.hasNext())
- {
- CanvasShape aShape = (CanvasShape)maShapeIterator.next();
- if (aShape != null)
- if (aShape.Contains (e.getX(),e.getY()))
- {
- if (aShapeUnderMouse == null)
- {
- aSmallestSize = aShape.GetSize();
- aShapeUnderMouse = aShape;
- }
- else
- {
- Dimension aSize = aShape.GetSize();
- if (aSize.getWidth()<aSmallestSize.getWidth()
- || aSize.getHeight()<aSmallestSize.getHeight())
- {
- aSmallestSize = aSize;
- aShapeUnderMouse = aShape;
- }
- }
- }
- }
- return aShapeUnderMouse;
- }
-
- private Canvas maCanvas;
- private javax.swing.JTree maTree;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/canvas/ShapeContainer.java b/accessibility/workben/org/openoffice/accessibility/awb/canvas/ShapeContainer.java
deleted file mode 100644
index 86e92cafe..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/canvas/ShapeContainer.java
+++ /dev/null
@@ -1,237 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.canvas;
-
-import java.awt.Rectangle;
-import java.util.Iterator;
-import javax.swing.event.TreeModelListener;
-import javax.swing.event.TreeExpansionListener;
-import javax.swing.event.TreeWillExpandListener;
-import javax.swing.event.TreeExpansionEvent;
-import javax.swing.event.TreeModelEvent;
-import javax.swing.tree.TreeNode;
-
-import com.sun.star.accessibility.XAccessibleEventBroadcaster;
-
-/** Each canvas has a shape container that is responsible for maintaining
- a collection of shapes that are displayed by the canvas.
-*/
-public class ShapeContainer
- implements TreeModelListener,
- TreeExpansionListener,
- TreeWillExpandListener
-{
- public ShapeContainer (Canvas aCanvas)
- {
- maShapeList = new java.util.Hashtable();
- maBoundingBox = new Rectangle (0,0,100,100);
- maCanvas = aCanvas;
- maTree = null;
- }
-
-
-
-
- public synchronized void SetTree (javax.swing.JTree aTree)
- {
- if (aTree != maTree)
- {
- if (maTree != null)
- {
- maTree.getModel().removeTreeModelListener (this);
- maTree.removeTreeExpansionListener (this);
- maTree.removeTreeWillExpandListener (this);
- }
-
- Clear();
-
- maTree = aTree;
-
- maTree.getModel().addTreeModelListener (this);
- maTree.addTreeExpansionListener (this);
- maTree.addTreeWillExpandListener (this);
- }
- }
-
-
-
-
- public synchronized boolean AddNode (TreeNode aNode)
- {
- CanvasShape aShape = (CanvasShape)maShapeList.get (aNode);
- if (aShape == null)
- {
- aShape = new CanvasShape (aNode, maCanvas);
-
- if (aNode instanceof XAccessibleEventBroadcaster)
- ((XAccessibleEventBroadcaster) aNode).addEventListener(aShape);
-
- // Update bounding box that includes all objects.
- if (maShapeList.size() == 0)
- maBoundingBox = aShape.GetBBox();
- else
- maBoundingBox = maBoundingBox.union (aShape.GetBBox());
-
- maShapeList.put (aNode, aShape);
-
- maCanvas.repaint();
-
- return true;
- }
- else
- return false;
- }
-
-
- /**
- */
- public synchronized boolean RemoveNode (TreeNode aNode)
- {
- CanvasShape aShape = (CanvasShape)maShapeList.get (aNode);
- if (aShape != null)
- {
- if (aNode instanceof XAccessibleEventBroadcaster)
- ((XAccessibleEventBroadcaster) aNode).removeEventListener(aShape);
-
- maShapeList.remove (aNode);
- maCanvas.SelectObject (null);
- maCanvas.repaint ();
- return true;
- }
- else
- return false;
- }
-
-
-
-
- public synchronized void Clear ()
- {
- maShapeList.clear ();
- }
-
-
-
-
- public Iterator GetIterator ()
- {
- return maShapeList.values().iterator ();
- }
-
-
-
-
- public CanvasShape Get (TreeNode aNode)
- {
- if (aNode != null) {
- return (CanvasShape)maShapeList.get (aNode);
- }
- return null;
- }
-
-
- private void PrintMessage (String aMessage, java.util.EventObject aEvent)
- {
- // System.out.println ("ShapeContainer: " + aMessage + ": " + aEvent);
- }
-
- public void treeNodesChanged (TreeModelEvent aEvent)
- {
- PrintMessage ("treeNodesChanged", aEvent);
- }
- public void treeNodesInserted (TreeModelEvent aEvent)
- {
- PrintMessage ("treeNodesInserted", aEvent);
- Object[] aNewNodes = aEvent.getChildren();
- for (int i=0; i<aNewNodes.length; i++)
- AddNode ((TreeNode)aNewNodes[i]);
- }
- public void treeNodesRemoved (TreeModelEvent aEvent)
- {
- PrintMessage ("treeNodesRemoved", aEvent);
- Object[] aOldNodes = aEvent.getChildren();
- for (int i=0; i<aOldNodes.length; i++)
- RemoveNode ((TreeNode)aOldNodes[i]);
- }
- public void treeStructureChanged (TreeModelEvent aEvent)
- {
- PrintMessage ("treeStructureChanged", aEvent);
- TreeNode aNode = (TreeNode)aEvent.getTreePath().getLastPathComponent();
- RemoveAllChildren(aNode);
- AddAllChildren(aNode);
- }
-
- public void treeWillExpand (TreeExpansionEvent aEvent)
- {
- PrintMessage ("treeWillExpand", aEvent);
- }
- public void treeWillCollapse (TreeExpansionEvent aEvent)
- {
- PrintMessage ("treeWillCollapse", aEvent);
- TreeNode aNode = (TreeNode)aEvent.getPath().getLastPathComponent();
- RemoveAllChildren (aNode);
- }
- public void treeExpanded (TreeExpansionEvent aEvent)
- {
- PrintMessage ("treeExpanded", aEvent);
- TreeNode aNode = (TreeNode)aEvent.getPath().getLastPathComponent();
- AddAllChildren (aNode);
- }
- public void treeCollapsed (TreeExpansionEvent aEvent)
- {
- PrintMessage ("treeCollapsed", aEvent);
- }
-
- private void AddAllChildren (TreeNode aNode) {
- java.util.Enumeration aChildList = aNode.children();
- while (aChildList.hasMoreElements()) {
- TreeNode aChild = (TreeNode) aChildList.nextElement();
- if (aChild != null) {
- AddAllChildren (aChild);
- AddNode (aChild);
- }
- }
- }
-
- private void RemoveAllChildren (TreeNode aNode) {
- java.util.Enumeration aChildList = aNode.children();
- while (aChildList.hasMoreElements()) {
- TreeNode aChild = (TreeNode) aChildList.nextElement();
- if (aChild != null) {
- RemoveAllChildren (aChild);
- RemoveNode (aChild);
- }
- }
- }
-
-
- private java.util.Hashtable maShapeList;
- private Rectangle maBoundingBox;
- private Canvas maCanvas;
- private javax.swing.JTree maTree;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/canvas/makefile.common b/accessibility/workben/org/openoffice/accessibility/awb/canvas/makefile.common
deleted file mode 100644
index df47f1bc8..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/canvas/makefile.common
+++ /dev/null
@@ -1,34 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-JARFILES = jurt.jar unoil.jar ridl.jar
-JAVAFILES = \
- CanvasShape.java \
- Canvas.java \
- MouseObserver.java \
- ShapeContainer.java
-
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/canvas/makefile.mk b/accessibility/workben/org/openoffice/accessibility/awb/canvas/makefile.mk
deleted file mode 100644
index d2feccfb8..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/canvas/makefile.mk
+++ /dev/null
@@ -1,47 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJNAME = awb
-PRJ = ..$/..$/..$/..$/..$/..
-TARGET = awb_canvas
-PACKAGE = org$/openoffice$/accessibility$/awb$/canvas
-
-USE_JAVAVER:=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-.IF "$(JAVAVER:s/.//)" >= "140"
-.INCLUDE : makefile.common
-JAVACLASSFILES= $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:b).class)
-JARCLASSDIRS = $(PACKAGE) org/openoffice/java/accessibility/awb
-.ENDIF
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : target.mk
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/makefile.common b/accessibility/workben/org/openoffice/accessibility/awb/makefile.common
deleted file mode 100644
index 0bf38a0fa..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/makefile.common
+++ /dev/null
@@ -1,30 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-JAVAFILES = \
- AccessibilityWorkBench.java \
- HelpWindow.java
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/makefile.mk b/accessibility/workben/org/openoffice/accessibility/awb/makefile.mk
deleted file mode 100644
index a07d631d6..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/makefile.mk
+++ /dev/null
@@ -1,57 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJNAME = awb
-PRJ = ..$/..$/..$/..$/..
-TARGET = java_awb
-PACKAGE = org$/openoffice$/accessibility$/awb
-
-USE_JAVAVER:=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-.IF "$(JAVAVER:s/.//)" >= "140"
-JARFILES = jurt.jar unoil.jar ridl.jar
-
-.INCLUDE : makefile.common
-
-JAVACLASSFILES= $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:b).class)
-
-JARTARGET = $(TARGET).jar
-JARCOMPRESS = TRUE
-JARCLASSDIRS = $(PACKAGE) \
- org$/openoffice$/accessibility$/misc
-CUSTOMMANIFESTFILE = manifest
-.ENDIF
-
-# --- Targets ------------------------------------------------------
-
-
-.INCLUDE : target.mk
-
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/manifest b/accessibility/workben/org/openoffice/accessibility/awb/manifest
deleted file mode 100644
index 36111c540..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/manifest
+++ /dev/null
@@ -1,3 +0,0 @@
-Manifest-Version: 1.0
-Main-Class: org.openoffice.accessibility.awb.AccessibilityWorkBench
-Class-Path: classes.jar ridl.jar unoil.jar jurt.jar juh.jar java_uno.jar xt.jar jaxp.jar
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityModel.java b/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityModel.java
deleted file mode 100644
index fa9afae92..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityModel.java
+++ /dev/null
@@ -1,154 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.tree;
-
-import javax.swing.SwingUtilities;
-import javax.swing.tree.TreeNode;
-import javax.swing.tree.MutableTreeNode;
-import javax.swing.tree.DefaultMutableTreeNode;
-
-import com.sun.star.uno.UnoRuntime;
-import com.sun.star.awt.XExtendedToolkit;
-import com.sun.star.awt.XTopWindow;
-import com.sun.star.awt.XTopWindowListener;
-import com.sun.star.accessibility.AccessibleRole;
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleEventBroadcaster;
-import com.sun.star.accessibility.XAccessibleEventListener;
-
-/**
- *
- */
-public abstract class AccessibilityModel extends javax.swing.tree.DefaultTreeModel {
-
- protected java.util.Hashtable nodeList;
- protected static DefaultMutableTreeNode disconnectedRootNode =
- new DefaultMutableTreeNode("<not connected>");
-
- /** Creates a new instance of AccessibilityModel */
- public AccessibilityModel() {
- super(disconnectedRootNode, false);
- nodeList = new java.util.Hashtable();
- }
-
- /* Convenience method that creates a new Toolkit node from xToolkit
- * and sets as the new root object of the tree.
- */
- public synchronized void setRoot(XExtendedToolkit xToolkit) {
- if (xToolkit != null) {
- try {
- // remove old root node as topwindow listener
- if (getRoot() instanceof ToolkitNode) {
- ToolkitNode tn = (ToolkitNode) getRoot();
- if (tn.xToolkit != null) {
- tn.xToolkit.removeTopWindowListener(tn);
- }
- }
- nodeList.clear();
- setRoot(new ToolkitNode(xToolkit, this));
- xToolkit.addTopWindowListener((ToolkitNode) getRoot());
- } catch (com.sun.star.uno.RuntimeException e) {
- // FIXME: error message !
- }
- }
- }
-
- /* Appends the new child to parent's child list */
- public void addNodeInto(MutableTreeNode newChild, MutableTreeNode parent) {
- int index = parent.getChildCount();
- if (newChild != null && newChild.getParent() == parent) {
- index -= 1;
- }
- insertNodeInto(newChild, parent, index);
- }
-
- /** Adds listener to the listener chain of node */
- public static void addEventListener(TreeNode node, XAccessibleEventListener listener) {
- if (node instanceof AccessibilityNode) {
- ((AccessibilityNode) node).addEventListener(listener);
- }
- }
-
- /** Removes listener from the listener chain of node */
- public static void removeEventListener(TreeNode node, XAccessibleEventListener listener) {
- if (node instanceof AccessibilityNode) {
- ((AccessibilityNode) node).removeEventListener(listener);
- }
- }
-
- protected abstract AccessibilityNode createWindowNode(XAccessible xAccessible,
- XAccessibleContext xAccessibleContext);
- protected abstract AccessibilityNode createNode(XAccessible xAccessible);
-
- /** Adds xAccessible,node to the internal hashtable */
- public AccessibilityNode putNode(XAccessible xAccessible, AccessibilityNode node) {
- if (xAccessible != null) {
- String oid = UnoRuntime.generateOid(xAccessible);
- java.lang.ref.WeakReference ref = (java.lang.ref.WeakReference)
- nodeList.put(oid, new java.lang.ref.WeakReference(node));
- if (ref != null) {
- return (AccessibilityNode) ref.get();
- }
- }
- return null;
- }
-
- /** Returns the AccessibilityNode for xAccessible */
- public AccessibilityNode findNode(XAccessible xAccessible) {
- if (xAccessible != null) {
- String oid = UnoRuntime.generateOid(xAccessible);
- java.lang.ref.WeakReference ref =
- (java.lang.ref.WeakReference) nodeList.get(oid);
- if (ref != null) {
- return (AccessibilityNode) ref.get();
- }
- }
- return null;
- }
-
- /** Removes the AccessibilityNode for xAccessible from the internal hashtable */
- public AccessibilityNode removeNode(XAccessible xAccessible) {
- if (xAccessible != null) {
- String oid = UnoRuntime.generateOid(xAccessible);
- java.lang.ref.WeakReference ref =
- (java.lang.ref.WeakReference) nodeList.remove(oid);
- if (ref != null) {
- return (AccessibilityNode) ref.get();
- }
- }
- return null;
- }
-
- public AccessibilityNode removeNode(Object o) {
- if (o instanceof XAccessible) {
- return removeNode((XAccessible) o);
- }
- return null;
- }
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityNode.java b/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityNode.java
deleted file mode 100644
index 4ca87d616..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityNode.java
+++ /dev/null
@@ -1,163 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.tree;
-
-import org.openoffice.accessibility.misc.AccessibleEventMulticaster;
-
-import javax.swing.tree.DefaultMutableTreeNode;
-import javax.swing.SwingUtilities;
-
-import com.sun.star.accessibility.AccessibleEventId;
-import com.sun.star.accessibility.AccessibleEventObject;
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleEventBroadcaster;
-import com.sun.star.accessibility.XAccessibleEventListener;
-
-import com.sun.star.uno.UnoRuntime;
-
-class AccessibilityNode extends DefaultMutableTreeNode implements XAccessible,
- XAccessibleEventListener, XAccessibleEventBroadcaster {
-
- protected AccessibilityModel treeModel;
- protected XAccessibleContext unoAccessibleContext;
-
- private XAccessibleEventListener listener;
-
- public AccessibilityNode(AccessibilityModel treeModel) {
- this.treeModel = treeModel;
- }
-
- protected void finalize() throws java.lang.Throwable {
- if (userObject != null) {
- treeModel.removeNode(userObject);
- }
- }
-
- /** Sets the XAccessibleContext object of this node */
- public void setAccessibleContext(XAccessibleContext xAccessibleContext) {
- unoAccessibleContext = xAccessibleContext;
- }
-
- /** Returns the XAccessibleContext object of this node */
- public XAccessibleContext getAccessibleContext() {
- return unoAccessibleContext;
- }
-
- /** Attaches or Detaches the itself as listener to unoAccessibleContext */
- protected void setAttached(boolean attach) {
- XAccessibleContext xAccessibleContext = unoAccessibleContext;
- if (xAccessibleContext != null) {
- try {
- XAccessibleEventBroadcaster xAccessibleEventBroadcaster =
- UnoRuntime.queryInterface( XAccessibleEventBroadcaster.class, xAccessibleContext );
- if (xAccessibleEventBroadcaster != null) {
- if (attach) {
- xAccessibleEventBroadcaster.addEventListener(this);
- } else {
- xAccessibleEventBroadcaster.removeEventListener(this);
- }
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- // FIXME: error message !
- }
- }
- }
-
- public void disposing(com.sun.star.lang.EventObject eventObject) {
- XAccessibleEventListener localListener = this.listener;
- if (localListener != null) {
- localListener.disposing(eventObject);
- }
-
- treeModel.removeNode(userObject);
- userObject = null;
- unoAccessibleContext = null;
- // FIXME: mark the object as being disposed in the tree view !
- }
-
- protected void handleChildRemoved(XAccessible xAccessible) {
- final AccessibilityNode node = treeModel.findNode(xAccessible);
- if (node != null) {
- SwingUtilities.invokeLater(new java.lang.Runnable() {
- public void run() {
- treeModel.removeNodeFromParent(node);
- }
- });
- }
- }
-
- protected void handleChildAdded(XAccessible xAccessible) {
- final AccessibilityNode parent = this;
- final AccessibilityNode node = treeModel.createNode(xAccessible);
- if (node != null) {
- SwingUtilities.invokeLater(new java.lang.Runnable() {
- public void run() {
- try {
- XAccessibleContext xAC = node.getAccessibleContext();
- if (xAC != null) {
- treeModel.insertNodeInto(node, parent,
- xAC.getAccessibleIndexInParent());
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- // FIXME: output
- }
- }
- });
- }
- }
-
- public void notifyEvent(AccessibleEventObject accessibleEventObject) {
- if (accessibleEventObject.EventId == AccessibleEventId.CHILD) {
- XAccessible xAccessible = UnoRuntime.queryInterface( XAccessible.class, accessibleEventObject.OldValue );
- if (xAccessible != null) {
- handleChildRemoved(xAccessible);
- }
-
- xAccessible = UnoRuntime.queryInterface( XAccessible.class, accessibleEventObject.NewValue );
- if (xAccessible != null) {
- handleChildAdded(xAccessible);
- }
- }
-
- XAccessibleEventListener localListener = this.listener;
- if (localListener != null) {
- localListener.notifyEvent(accessibleEventObject);
- }
- }
-
- public synchronized void addEventListener(com.sun.star.accessibility.XAccessibleEventListener xAccessibleEventListener) {
- listener = AccessibleEventMulticaster.add(listener, xAccessibleEventListener);
- }
-
- public synchronized void removeEventListener(com.sun.star.accessibility.XAccessibleEventListener xAccessibleEventListener) {
- listener = AccessibleEventMulticaster.remove(listener, xAccessibleEventListener);
- }
-}
-
-
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityTree.java b/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityTree.java
deleted file mode 100644
index 59257702c..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityTree.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.tree;
-
-import org.openoffice.accessibility.misc.NameProvider;
-
-import javax.swing.tree.DefaultTreeModel;
-import javax.swing.tree.DefaultMutableTreeNode;
-
-import com.sun.star.awt.XExtendedToolkit;
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleContext;
-
-/**
- *
- */
-public class AccessibilityTree extends javax.swing.JTree {
-
- /** Creates a new instance of AccessibilityTree */
- public AccessibilityTree(javax.swing.tree.TreeModel model) {
- super(model);
- // always show handles to indicate expandable / collapsable
- showsRootHandles = true;
- }
-
- public void setToolkit(XExtendedToolkit xToolkit) {
- AccessibilityModel model = (AccessibilityModel) getModel();
- if (model != null) {
- // hide the root node when connected
- setRootVisible(xToolkit == null);
- // update the root node
- model.setRoot(xToolkit);
- model.reload();
- }
- }
-
- public String convertValueToText(Object value, boolean selected,
- boolean expanded, boolean leaf, int row, boolean hasFocus) {
-
- if (value instanceof DefaultMutableTreeNode) {
- DefaultMutableTreeNode node = (DefaultMutableTreeNode) value;
-
- Object userObject = node.getUserObject();
- if (userObject != null && userObject instanceof XAccessible) {
- XAccessible xAccessible = (XAccessible) userObject;
- try {
- XAccessibleContext xAC = xAccessible.getAccessibleContext();
- if (xAC != null) {
- String name = xAC.getAccessibleName();
- if (name.length() == 0) {
- name = new String ("<no name>");
- }
- value = name + " / " + NameProvider.getRoleName(xAC.getAccessibleRole());
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- value = "???";
- }
- }
- }
-
- return super.convertValueToText(value, selected, expanded, leaf, row, hasFocus);
- }
-
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityTreeModel.java b/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityTreeModel.java
deleted file mode 100644
index ad59cf8c9..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/tree/AccessibilityTreeModel.java
+++ /dev/null
@@ -1,217 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.tree;
-
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.awt.XExtendedToolkit;
-import com.sun.star.lang.DisposedException;
-import com.sun.star.lang.IndexOutOfBoundsException;
-
-import org.openoffice.accessibility.misc.OfficeConnection;
-import org.openoffice.accessibility.awb.event.EventQueue;
-
-import javax.swing.tree.DefaultTreeModel;
-import javax.swing.tree.TreeNode;
-
-
-public class AccessibilityTreeModel
- extends DefaultTreeModel
-{
- public AccessibilityTreeModel ()
- {
- super (null);
- setAsksAllowsChildren (false);
-
- SetRootNode();
- }
-
-
-
- /** Release all resources.
- */
- synchronized public void Dispose ()
- {
- Clear ();
- }
-
-
-
- /** Calls to this method are dispatched to the given node but are
- observed for exceptions.
- */
- synchronized public boolean isLeaf (Object aObject)
- {
- boolean bIsLeaf = true;
-
- if (aObject != null)
- {
- AccessibilityNode aNode = (AccessibilityNode)aObject;
- try
- {
- bIsLeaf = aNode.isLeaf();
- }
- catch (DisposedException aException)
- {
- System.out.println ("node is disposed. removing it");
- /* TreeNode aParent = aNode.GetParent();
- int nIndexInParent = aParent.getIndex (aNode);
- aNode.removeFromParent ();
- System.out.println ("" + aParent + " # " + aNode + " # "+ nIndexInParent);
- nodesWereRemoved (
- aParent, new int[]{nIndexInParent}, new
- Object[]{aNode});
- */
- }
- catch (Exception aException)
- {
- System.err.println ("caught exception in AccessibilityTreeModel.isLeaf():"
- + aException);
- aException.printStackTrace (System.err);
- }
- }
-
- return bIsLeaf;
- }
-
-
-
-
- synchronized public int getChildCount (Object aObject)
- {
- AccessibilityNode aNode = (AccessibilityNode)aObject;
- return aNode.getChildCount();
- }
-
-
-
-
- /** Return the requested child of aParent. If that child is not yet
- known to the parent then try to create it.
- */
- synchronized public Object getChild (Object aParent, final int nIndex)
- {
- AccessibilityNode aChild = null;
-
- final AccessibilityNode aParentNode = (AccessibilityNode)aParent;
-
- // Try to get an existing child from the super class object.
- aChild = aParentNode.GetChildNoCreate (nIndex);
-
- // When the requested child does not yet exist and this node is not a
- // special node then create a new node.
- if (aChild == null)
- {
- aChild = aParentNode.CreateChild (nIndex);
- aParentNode.SetChild ((AccessibilityNode)aChild, nIndex);
- /* EventQueue.Instance().AddEvent (new Runnable() { public void run() {
- AccessibilityTreeModel.this.nodeWasInserted (
- aParentNode, nIndex);
- }});
- */ }
-
- return aChild;
- }
-
-
- synchronized public void nodeWasInserted (AccessibilityNode aParent, int nIndex)
- {
- nodesWereInserted (aParent, new int[]{nIndex});
- nodeStructureChanged (aParent);
-
- }
-
-
-
-
- /** Clear the tree so that afterwards it has only the root node.
- */
- public void Clear ()
- {
- AccessibilityNode aRoot = (AccessibilityNode)getRoot();
- aRoot.RemoveAllChildren();
- SetRootNode();
- nodeStructureChanged (aRoot);
- }
-
-
-
-
- private void SetRootNode ()
- {
- OfficeConnection aConnection = OfficeConnection.Instance();
- AccessibilityNode aRoot;
- if (aConnection!=null && aConnection.IsValid())
- aRoot = new AccessibilityNode ("<connected>");
- else
- aRoot = new AccessibilityNode ("<not connected>");
- setRoot (aRoot);
- }
-
-
-
-
- /** Add a new child to the root node.
- */
- public synchronized void AddTopLevelNode (AccessibilityNode aNode)
- {
- if (aNode != null)
- {
- if ( ! OfficeConnection.Instance().IsValid())
- {
- setRoot (null);
- }
-
- AccessibilityNode aRoot = (AccessibilityNode)getRoot();
- if (aRoot == null)
- {
- aRoot = new AccessibilityNode ("<connected>");
- setRoot (aRoot);
- }
-
- aNode.SetParent (aRoot);
- aRoot.Append (aNode);
- nodesWereInserted (aRoot, new int[]{aRoot.getIndex (aNode)});
- }
- }
-
-
-
-
- /** Remove a node that is a direct child of the root.
- */
- public synchronized void RemoveTopLevelNode (AccessibilityNode aNode)
- {
- AccessibilityNode aRoot = (AccessibilityNode)getRoot();
- if (aRoot != null)
- {
- int nIndex = aRoot.getIndex (aNode);
- aRoot.Remove (aNode);
- nodesWereRemoved (aRoot, new int[]{nIndex}, new Object[]{aNode});
- }
- }
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/DynamicAccessibilityModel.java b/accessibility/workben/org/openoffice/accessibility/awb/tree/DynamicAccessibilityModel.java
deleted file mode 100644
index a0037ba69..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/tree/DynamicAccessibilityModel.java
+++ /dev/null
@@ -1,123 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.tree;
-
-import javax.swing.tree.TreeNode;
-import javax.swing.tree.MutableTreeNode;
-import javax.swing.tree.DefaultMutableTreeNode;
-import javax.swing.event.TreeExpansionListener;
-import javax.swing.event.TreeWillExpandListener;
-
-import com.sun.star.accessibility.AccessibleRole;
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleContext;
-
-/**
- *
- */
-public class DynamicAccessibilityModel extends AccessibilityModel implements TreeExpansionListener, TreeWillExpandListener {
-
- /* Creates a AccessibilityNode object for a window */
- protected AccessibilityNode createWindowNode(XAccessible xAccessible,
- XAccessibleContext xAccessibleContext) {
- if (xAccessible != null) {
- // Some objects inherit XAccessible, but should not appear in
- // the hierarchy as toplevels (like sub-menus), so they don't
- // return an accessible context.
- if (xAccessibleContext != null) {
- AccessibilityNode node = new AccessibilityNode(this);
- node.setUserObject(xAccessible);
- node.setAccessibleContext(xAccessibleContext);
- putNode(xAccessible, node);
- return node;
- }
- }
- return null;
- }
-
- /* Creates a DynamicAccessibilityNode object */
- protected AccessibilityNode createNode(XAccessible xAccessible) {
- if (xAccessible != null) {
- try {
- // Some objects inherit XAccessible, but should not appear in
- // the hierarchy as toplevels (like sub-menus), so they don't
- // return an accessible context.
- XAccessibleContext xAccessibleContext = xAccessible.getAccessibleContext();
- if (xAccessibleContext != null) {
- AccessibilityNode node = new DynamicAccessibilityNode(this);
- node.setUserObject(xAccessible);
- node.setAccessibleContext(xAccessibleContext);
- putNode(xAccessible, node);
- return node;
- }
- } catch (com.sun.star.uno.RuntimeException e) {
- }
- }
- return null;
- }
-
- public void treeCollapsed(javax.swing.event.TreeExpansionEvent treeExpansionEvent) {
- TreeNode node = (TreeNode) treeExpansionEvent.getPath().getLastPathComponent();
- if (node instanceof DynamicAccessibilityNode) {
- DynamicAccessibilityNode dynode = (DynamicAccessibilityNode) node;
- dynode.clear();
- }
- }
-
- public void treeExpanded(javax.swing.event.TreeExpansionEvent treeExpansionEvent) {
- TreeNode node = (TreeNode) treeExpansionEvent.getPath().getLastPathComponent();
- if (node instanceof AccessibilityNode) {
- // Calling oneway methods from an UNO thread may cause
- // deadlocks, so adding the listeners here.
- for (java.util.Enumeration e = node.children(); e.hasMoreElements(); ) {
- ((AccessibilityNode) e.nextElement()).setAttached(true);
- }
- }
- }
-
- public void treeWillCollapse(javax.swing.event.TreeExpansionEvent treeExpansionEvent)
- throws javax.swing.tree.ExpandVetoException {
- TreeNode node = (TreeNode) treeExpansionEvent.getPath().getLastPathComponent();
- if (node instanceof AccessibilityNode) {
- // Calling oneway methods from an UNO thread may cause
- // deadlocks, so adding the listeners here.
- for (java.util.Enumeration e = node.children(); e.hasMoreElements(); ) {
- ((AccessibilityNode) e.nextElement()).setAttached(false);
- }
- }
- }
-
- public void treeWillExpand(javax.swing.event.TreeExpansionEvent treeExpansionEvent)
- throws javax.swing.tree.ExpandVetoException {
- TreeNode node = (TreeNode) treeExpansionEvent.getPath().getLastPathComponent();
- if (node instanceof DynamicAccessibilityNode) {
- DynamicAccessibilityNode dynode = (DynamicAccessibilityNode) node;
- dynode.populate();
- }
- }
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/DynamicAccessibilityNode.java b/accessibility/workben/org/openoffice/accessibility/awb/tree/DynamicAccessibilityNode.java
deleted file mode 100644
index da6f10c96..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/tree/DynamicAccessibilityNode.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.tree;
-
-import com.sun.star.uno.UnoRuntime;
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleContext;
-
-/*
- * This class is dynamic in the way that it does not contain any children
- * until the node is going to be expanded. It also releases all children
- * as soon as the node is collapsed again.
- */
-class DynamicAccessibilityNode extends AccessibilityNode {
-
- public DynamicAccessibilityNode(AccessibilityModel treeModel) {
- super(treeModel);
- }
-
- // Populates the child list. Called by AccessibilityMode.treeWillExpand().
- protected void populate() {
- try {
- XAccessibleContext xAC = getAccessibleContext();
- if (xAC != null) {
- int n = xAC.getAccessibleChildCount();
- for (int i=0; i<n; i++) {
- XAccessible xAccessible = xAC.getAccessibleChild(i);
- AccessibilityNode node = treeModel.findNode(xAccessible);
- if (node == null) {
- node = treeModel.createNode(xAccessible);
- }
- if (node != null) {
- // NOTE: do not send any tree notifications here !
- add(node);
- }
- }
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- // This should never happen since we previously checked the child
- // count.
- // FIXME: error message
- } catch (com.sun.star.uno.RuntimeException e) {
- // FIXME: error message
- }
- }
-
- // Clears the child list. Called by AccessibilityModel.treeCollapsed().
- protected void clear() {
- removeAllChildren();
- }
-
- /* This is called whenever the node is painted, no matter if collapsed
- * or expanded. Making this a "life" value seems to be appropriate.
- */
- public boolean isLeaf() {
- try {
- XAccessibleContext xAC = getAccessibleContext();
- if (xAC != null) {
- return xAC.getAccessibleChildCount() == 0;
- }
- return true;
- } catch (com.sun.star.uno.RuntimeException e) {
- return true;
- }
- }
-
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/Makefile b/accessibility/workben/org/openoffice/accessibility/awb/tree/Makefile
deleted file mode 100644
index 579b8822c..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/tree/Makefile
+++ /dev/null
@@ -1,40 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-all : package
-
-ROOT=../../../../..
-PACKAGE = org.openoffice.accessibility.awb.tree
-SUBDIRS =
-include makefile.common
-
-include $(ROOT)/makefile.in
-
-
-package : $(CLASS_FILES)
-
-
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/ToolkitNode.java b/accessibility/workben/org/openoffice/accessibility/awb/tree/ToolkitNode.java
deleted file mode 100644
index 2599dfc7f..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/tree/ToolkitNode.java
+++ /dev/null
@@ -1,215 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.tree;
-
-import com.sun.star.accessibility.AccessibleRole;
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleContext;
-
-import com.sun.star.awt.XExtendedToolkit;
-import com.sun.star.awt.XTopWindow;
-
-import com.sun.star.uno.UnoRuntime;
-
-import javax.swing.SwingUtilities;
-import javax.swing.tree.DefaultMutableTreeNode;
-
-/**
- *
- */
-public class ToolkitNode extends DefaultMutableTreeNode
- implements com.sun.star.awt.XTopWindowListener {
-
- protected XExtendedToolkit xToolkit;
-
- private AccessibilityModel treeModel;
-
- /** Creates a new instance of TopWindowListener */
- public ToolkitNode(XExtendedToolkit xToolkit, AccessibilityModel treeModel) {
- super("<connected>");
- this.xToolkit = xToolkit;
- this.treeModel = treeModel;
-
- // Initially fill the child list
- try {
- for (int i=0,j=xToolkit.getTopWindowCount(); i<j; i++) {
- XTopWindow xTopWindow = xToolkit.getTopWindow(i);
- if (xTopWindow != null) {
- AccessibilityNode an = getTopWindowNode(xTopWindow);
- if (an != null) {
- add(an);
- // Calling oneway methods from an UNO thread may cause
- // deadlocks, so adding the listeners here.
- an.setAttached(true);
- }
- }
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
- // This should never happen since we properly check the count
- // before - anyway returning what we got so far.
- }
- }
-
- /** Returns an AccessibilityNode if xAccessible has a valid toplevel */
- private AccessibilityNode getTopWindowNode(XAccessible xAccessible) {
- XAccessibleContext xAC = xAccessible.getAccessibleContext();
- if (xAC != null) {
- short role = xAC.getAccessibleRole();
- if ((role == AccessibleRole.FRAME) || (role == AccessibleRole.DIALOG) || (role == AccessibleRole.WINDOW)) {
- return treeModel.createWindowNode(xAccessible, xAC);
- }
- }
- return null;
- }
-
- /** Returns an AccessibilityNode if xAccessible has a valid toplevel */
- private AccessibilityNode getTopWindowNode(XAccessible xAccessible, XAccessibleContext xAC) {
- if (xAC != null) {
- short role = xAC.getAccessibleRole();
- if ((role == AccessibleRole.FRAME) || (role == AccessibleRole.DIALOG) || (role == AccessibleRole.WINDOW)) {
- AccessibilityNode parent = treeModel.createWindowNode(xAccessible, xAC);
- if (parent != null) {
- try {
- int n = xAC.getAccessibleChildCount();
- for (int i=0; i<n; i++) {
- AccessibilityNode child = treeModel.createNode(xAC.getAccessibleChild(i));
- if (child != null) {
- parent.add(child);
- }
- }
- } catch (com.sun.star.lang.IndexOutOfBoundsException e) {
-
- }
- }
- return parent;
- }
- }
- return null;
- }
-
- /** Returns the XAccessible interface corresponding to the toplevel window */
- private AccessibilityNode getTopWindowNode(XTopWindow w) {
- XAccessible xAccessible = (XAccessible)
- UnoRuntime.queryInterface(XAccessible.class, w);
- if (xAccessible != null) {
- // XTopWindows usually have an accessible parent, which is the
- // native container window ..
- XAccessibleContext xAC = xAccessible.getAccessibleContext();
- if (xAC != null) {
- XAccessible xParent = xAC.getAccessibleParent();
- if (xParent != null) {
- AccessibilityNode parent = getTopWindowNode(xParent);
- AccessibilityNode child = treeModel.createNode(xAccessible);
- if (parent != null && child != null) {
- parent.add(child);
- }
- return parent;
- } else {
- return getTopWindowNode(xAccessible, xAC);
- }
- }
- }
- return null;
- }
-
- public void disposing(com.sun.star.lang.EventObject eventObject) {
- // FIXME : message
- // prevent setRoot from removing this as event listener
- xToolkit = null;
- treeModel.setRoot(treeModel.disconnectedRootNode);
- }
-
- public void windowActivated(com.sun.star.lang.EventObject eventObject) {
- }
-
- public void windowClosed(com.sun.star.lang.EventObject eventObject) {
- XAccessible xAccessible = (XAccessible) UnoRuntime.queryInterface(
- XAccessible.class, eventObject.Source);
- if (xAccessible != null) {
- AccessibilityNode node = treeModel.findNode(xAccessible);
-
- // The object implementing XTopWindow is often not the toplevel
- // accessible object.
- if (node != null && node.getParent() != this) {
- node = (AccessibilityNode) node.getParent();
- }
-
- if (node != null) {
- final AccessibilityNode an = node;
- Runnable removeRun = new Runnable() {
- public void run() {
- try {
- treeModel.removeNodeFromParent(an);
- // Calling oneway methods from an UNO thread may cause
- // deadlocks, so removing the listeners here.
- an.setAttached(false);
- } catch (IllegalArgumentException e) {
- // for some toplevel we get more than one event -
- // ignoring
- }
- }
- };
- SwingUtilities.invokeLater(removeRun);
- }
- }
- }
-
- public void windowClosing(com.sun.star.lang.EventObject eventObject) {
- }
-
- public void windowDeactivated(com.sun.star.lang.EventObject eventObject) {
- }
-
- public void windowMinimized(com.sun.star.lang.EventObject eventObject) {
- }
-
- public void windowNormalized(com.sun.star.lang.EventObject eventObject) {
- }
-
- public void windowOpened(com.sun.star.lang.EventObject eventObject) {
- final XTopWindow xTopWindow = (XTopWindow) UnoRuntime.queryInterface(
- XTopWindow.class, eventObject.Source);
- if (xTopWindow != null) {
- final ToolkitNode tn = this;
- Runnable addNodeRun = new Runnable() {
- public void run() {
- // Note: UNO does not allow to make synchronous callbacks
- // to oneway calls, so we have to fetch the node here.
- AccessibilityNode an = getTopWindowNode(xTopWindow);
- if (an != null) {
- treeModel.addNodeInto(an, tn);
- // Calling oneway methods from an UNO thread may cause
- // deadlocks, so adding the listeners here.
- an.setAttached(true);
- }
- }
- };
- SwingUtilities.invokeLater(addNodeRun);
- }
- }
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/makefile.common b/accessibility/workben/org/openoffice/accessibility/awb/tree/makefile.common
deleted file mode 100644
index e44be5136..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/tree/makefile.common
+++ /dev/null
@@ -1,35 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-JARFILES = jurt.jar unoil.jar ridl.jar
-JAVAFILES = \
- AccessibilityModel.java \
- AccessibilityNode.java \
- AccessibilityTree.java \
- DynamicAccessibilityModel.java \
- DynamicAccessibilityNode.java \
- ToolkitNode.java
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/tree/makefile.mk b/accessibility/workben/org/openoffice/accessibility/awb/tree/makefile.mk
deleted file mode 100644
index 0135ca9d6..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/tree/makefile.mk
+++ /dev/null
@@ -1,51 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJNAME = awb
-PRJ = ..$/..$/..$/..$/..$/..
-TARGET = java_tree
-PACKAGE = org$/openoffice$/accessibility$/awb$/tree
-
-USE_JAVAVER:=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-.IF "$(JAVAVER:s/.//)" >= "140"
-
-.INCLUDE : makefile.common
-
-JAVACLASSFILES= $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:b).class)
-
-.ENDIF
-
-# --- Targets ------------------------------------------------------
-
-
-.INCLUDE : target.mk
-
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/ComponentView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/ComponentView.java
deleted file mode 100644
index 42c0a5d82..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/ComponentView.java
+++ /dev/null
@@ -1,195 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view;
-
-import java.awt.Color;
-import java.awt.Dimension;
-
-import java.awt.event.ActionListener;
-import java.awt.event.ActionEvent;
-
-import javax.swing.JLabel;
-
-import com.sun.star.accessibility.AccessibleEventId;
-import com.sun.star.accessibility.AccessibleEventObject;
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleComponent;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.uno.UnoRuntime;
-
-import org.openoffice.accessibility.misc.NameProvider;
-
-/** The <type>ContextView</type> class displays information accessible over
- the <type>XAccessibleContext</type> interface. This includes name,
- description, and role.
-*/
-public class ComponentView
- extends ObjectView
-{
- static public ObjectView Create (
- ObjectViewContainer aContainer,
- XAccessibleContext xContext)
- {
- if (UnoRuntime.queryInterface(
- XAccessibleComponent.class, xContext) != null)
- return new ComponentView (aContainer);
- else
- return null;
- }
-
- public ComponentView (ObjectViewContainer aContainer)
- {
- super (aContainer);
-
- ViewGridLayout aLayout = new ViewGridLayout (this);
-
- maRelativeLocationLabel = aLayout.AddLabeledEntry ("Relative Location: ");
- maAbsoluteLocationLabel = aLayout.AddLabeledEntry ("Location on Screen: ");
- maSizeLabel = aLayout.AddLabeledEntry ("Size");
- maBoundingBoxLabel = aLayout.AddLabeledEntry ("Bounding Box: ");
- maConsistencyLabel = aLayout.AddLabeledEntry ("Consistent: ");
- maForegroundColorLabel = aLayout.AddLabeledEntry ("Foreground Color: ");
- maBackgroundColorLabel = aLayout.AddLabeledEntry ("Background Color: ");
- }
-
-
- public void SetObject (XAccessibleContext xContext)
- {
- mxComponent = (XAccessibleComponent)UnoRuntime.queryInterface(
- XAccessibleComponent.class, xContext);
- super.SetObject (xContext);
- }
-
- public void Update ()
- {
- if (mxContext == null)
- {
- maRelativeLocationLabel.setText ("<null object>");
- maAbsoluteLocationLabel.setText ("<null object>");
- maSizeLabel.setText ("<null object>");
- maBoundingBoxLabel.setText ("<null object>");
- maConsistencyLabel.setText ("<null object>");
- maForegroundColorLabel.setText ("<null object>");
- maBackgroundColorLabel.setText ("<null object>");
- }
- else
- {
- com.sun.star.awt.Point aLocation = mxComponent.getLocation();
- maRelativeLocationLabel.setText (
- aLocation.X + ", " + aLocation.Y);
- com.sun.star.awt.Point aLocationOnScreen =
- mxComponent.getLocationOnScreen();
- maAbsoluteLocationLabel.setText (
- aLocationOnScreen.X + ", " + aLocationOnScreen.Y);
- com.sun.star.awt.Size aSize = mxComponent.getSize();
- maSizeLabel.setText (
- aSize.Width + ", " + aSize.Height);
- com.sun.star.awt.Rectangle aBBox = mxComponent.getBounds();
- maBoundingBoxLabel.setText (
- aBBox.X + ", " + aBBox.Y + ","
- + aBBox.Width + ", " + aBBox.Height);
- int nColor = mxComponent.getForeground();
- maForegroundColorLabel.setText (
- "R"+ (nColor>>16&0xff)
- + "G" + (nColor>>8&0xff)
- + "B" + (nColor>>0&0xff)
- + "A" + (nColor>>24&0xff));
- nColor = mxComponent.getBackground();
- maBackgroundColorLabel.setText (
- "R"+ (nColor>>16&0xff)
- + "G" + (nColor>>8&0xff)
- + "B" + (nColor>>0&0xff)
- + "A" + (nColor>>24&0xff));
-
- // Check consistency of coordinates.
- String sConsistency = new String ();
- if (aBBox.X!=aLocation.X || aBBox.Y!=aLocation.Y)
- sConsistency += (sConsistency.length()!=0?", ":"") +
- "Bounding box conflicts with relative location";
- if (aBBox.Width!=aSize.Width || aBBox.Height!=aSize.Height)
- sConsistency += (sConsistency.length()!=0?", ":"") +
- "Bounding box conflicts with size";
- XAccessible xParent = mxContext.getAccessibleParent();
- XAccessibleComponent xParentComponent =
- (XAccessibleComponent)UnoRuntime.queryInterface(
- XAccessibleComponent.class, xParent);
- if (xParentComponent == null)
- {
- if (aLocation.X != aLocationOnScreen.X
- || aLocation.Y != aLocationOnScreen.Y)
- sConsistency += (sConsistency.length()!=0?", ":"") +
- "location on screen does not equal "
- + "relative location without parent";
- }
- else
- {
- com.sun.star.awt.Point aParentLocationOnScreen =
- xParentComponent.getLocationOnScreen();
- if (aLocation.X+aParentLocationOnScreen.X
- != aLocationOnScreen.X
- || aLocation.Y+aParentLocationOnScreen.Y
- != aLocationOnScreen.Y)
- sConsistency += (sConsistency.length()!=0?", ":"") +
- "location on screen does not match "
- + "relative location";
- }
- if (sConsistency.length() == 0)
- sConsistency += "yes";
- else
- maConsistencyLabel.setBackground (GetContainer().GetErrorColor());
- maConsistencyLabel.setText (sConsistency);
- }
- }
-
- public String GetTitle ()
- {
- return ("Component");
- }
-
- /** Listen for changes regarding displayed values.
- */
- public void notifyEvent (AccessibleEventObject aEvent)
- {
- switch (aEvent.EventId)
- {
- case AccessibleEventId.BOUNDRECT_CHANGED :
- case AccessibleEventId.VISIBLE_DATA_CHANGED :
- Update ();
- }
- }
-
- private XAccessibleComponent mxComponent;
- private JLabel
- maRelativeLocationLabel,
- maAbsoluteLocationLabel,
- maSizeLabel,
- maBoundingBoxLabel,
- maConsistencyLabel,
- maForegroundColorLabel,
- maBackgroundColorLabel;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/ContextView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/ContextView.java
deleted file mode 100644
index 6989f4142..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/ContextView.java
+++ /dev/null
@@ -1,115 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view;
-
-import java.awt.Color;
-import java.awt.Dimension;
-
-import java.awt.event.ActionListener;
-import java.awt.event.ActionEvent;
-
-import javax.swing.JLabel;
-import javax.swing.JTextField;
-
-import com.sun.star.accessibility.AccessibleEventId;
-import com.sun.star.accessibility.AccessibleEventObject;
-import com.sun.star.accessibility.XAccessibleContext;
-
-import org.openoffice.accessibility.misc.NameProvider;
-
-/** The <type>ContextView</type> class displays information accessible over
- the <type>XAccessibleContext</type> interface. This includes name,
- description, and role.
-*/
-public class ContextView
- extends ObjectView
- implements ActionListener
-{
- static public ObjectView Create (
- ObjectViewContainer aContainer,
- XAccessibleContext xContext)
- {
- if (xContext != null)
- return new ContextView (aContainer);
- else
- return null;
- }
-
- public ContextView (ObjectViewContainer aContainer)
- {
- super (aContainer);
-
- ViewGridLayout aLayout = new ViewGridLayout (this);
- maNameLabel = aLayout.AddLabeledString ("Name:");
- maDescriptionLabel = aLayout.AddLabeledString ("Description:");
- maRoleLabel = aLayout.AddLabeledEntry ("Role:");
- }
-
- public void Update ()
- {
- if (mxContext == null)
- {
- maNameLabel.setText ("<null object>");
- maDescriptionLabel.setText ("<null object>");
- maRoleLabel.setText ("<null object>");
- }
- else
- {
- maNameLabel.setText (mxContext.getAccessibleName());
- maDescriptionLabel.setText (mxContext.getAccessibleDescription());
- maRoleLabel.setText (NameProvider.getRoleName (mxContext.getAccessibleRole()));
- }
- }
-
- public String GetTitle ()
- {
- return ("Context");
- }
-
- /** Listen for changes regarding displayed values.
- */
- public void notifyEvent (AccessibleEventObject aEvent)
- {
- switch (aEvent.EventId)
- {
- case AccessibleEventId.NAME_CHANGED :
- case AccessibleEventId.DESCRIPTION_CHANGED :
- Update ();
- }
- }
-
- public void actionPerformed (ActionEvent aEvent)
- {
- }
-
-
- private JLabel
- maNameLabel,
- maDescriptionLabel,
- maRoleLabel;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/EditableTextView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/EditableTextView.java
deleted file mode 100644
index ae8b9cd47..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/EditableTextView.java
+++ /dev/null
@@ -1,119 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view;
-
-import java.awt.event.ActionListener;
-import java.awt.event.ActionEvent;
-import javax.swing.JButton;
-
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleEditableText;
-import com.sun.star.uno.UnoRuntime;
-
-import org.openoffice.accessibility.awb.view.text.TextDialogFactory;
-
-
-public class EditableTextView
- extends ObjectView
- implements ActionListener
-{
- /** Create a EditableTextView when the given object supports the
- XAccessibleEditableText interface.
- */
- static public ObjectView Create (
- ObjectViewContainer aContainer,
- XAccessibleContext xContext)
- {
- XAccessibleEditableText xEditableText =
- (XAccessibleEditableText)UnoRuntime.queryInterface(
- XAccessibleEditableText.class, xContext);
- if (xEditableText != null)
- return new EditableTextView (aContainer);
- else
- return null;
- }
-
- public EditableTextView (ObjectViewContainer aContainer)
- {
- super (aContainer);
-
- JButton aButton = new JButton ("cut...");
- aButton.setFont (ViewGridLayout.GetFont());
- aButton.addActionListener (this);
- add (aButton);
- aButton = new JButton ("paste...");
- aButton.setFont (ViewGridLayout.GetFont());
- aButton.addActionListener (this);
- add (aButton);
- aButton = new JButton ("edit...");
- aButton.setFont (ViewGridLayout.GetFont());
- aButton.addActionListener (this);
- add (aButton);
- aButton = new JButton ("format...");
- aButton.setFont (ViewGridLayout.GetFont());
- aButton.addActionListener (this);
- add (aButton);
- }
-
-
- /** Additionally to the context store a reference to the
- XAccessibleEditableText interface.
- */
- public void SetObject (XAccessibleContext xObject)
- {
- mxEditableText = (XAccessibleEditableText)UnoRuntime.queryInterface(
- XAccessibleEditableText.class, xObject);
- super.SetObject (xObject);
- }
-
- public String GetTitle ()
- {
- return ("Editable Text");
- }
-
- synchronized public void Destroy ()
- {
- mxEditableText = null;
- super.Destroy();
- }
-
- public void actionPerformed (ActionEvent aEvent)
- {
- String sCommand = aEvent.getActionCommand();
- if (sCommand.equals ("cut..."))
- TextDialogFactory.CreateCutDialog (mxContext);
- else if (sCommand.equals ("past..."))
- TextDialogFactory.CreatePasteDialog (mxContext);
- else if (sCommand.equals ("edit..."))
- TextDialogFactory.CreateEditDialog (mxContext);
- else if (sCommand.equals ("format..."))
- TextDialogFactory.CreateFormatDialog (mxContext);
- }
-
- private XAccessibleEditableText mxEditableText;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/EventMonitorView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/EventMonitorView.java
deleted file mode 100644
index f3228e36d..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/EventMonitorView.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view;
-
-import java.awt.BorderLayout;
-import java.awt.GridBagLayout;
-import java.awt.GridBagConstraints;
-import java.awt.Color;
-import java.awt.Dimension;
-import java.awt.Font;
-import java.awt.Graphics;
-import javax.swing.JScrollBar;
-import javax.swing.JScrollPane;
-import javax.swing.JTextArea;
-
-import com.sun.star.accessibility.AccessibleEventId;
-import com.sun.star.accessibility.AccessibleEventObject;
-import com.sun.star.accessibility.XAccessibleContext;
-
-import org.openoffice.accessibility.misc.NameProvider;
-
-
-/** A simple event monitor that shows all events sent to one accessible
- object.
-*/
-class EventMonitorView
- extends ObjectView
-{
- static public ObjectView Create (
- ObjectViewContainer aContainer,
- XAccessibleContext xContext)
- {
- if (xContext != null)
- return new EventMonitorView (aContainer);
- else
- return null;
- }
-
- public EventMonitorView (ObjectViewContainer aContainer)
- {
- super (aContainer);
- mnLineNo = 0;
- Layout();
- }
-
- public String GetTitle ()
- {
- return "Event Monitor";
- }
-
- /** Create and arrange the widgets for this view.
- */
- private void Layout ()
- {
- setLayout (new GridBagLayout ());
-
- maText = new JTextArea();
- maText.setBackground (new Color (255,250,240));
- maText.setFont (new Font ("Helvetica", Font.PLAIN, 9));
-
- maScrollPane = new JScrollPane (maText,
- JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
- JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
- maScrollPane.setPreferredSize (new Dimension (300,200));
-
- GridBagConstraints aConstraints = new GridBagConstraints ();
- aConstraints.weightx = 1;
- aConstraints.fill = GridBagConstraints.HORIZONTAL;
- add (maScrollPane, aConstraints);
- }
-
-
- public void Update ()
- {
- }
-
-
- private void UpdateVerticalScrollBar ()
- {
- JScrollBar sb = maScrollPane.getVerticalScrollBar();
- if (sb != null)
- {
- int nScrollBarValue = sb.getMaximum() - sb.getVisibleAmount() - 1;
- sb.setValue (nScrollBarValue);
- }
- }
-
-
- public void notifyEvent (AccessibleEventObject aEvent)
- {
- maText.append ((mnLineNo++) + ". " + NameProvider.getEventName (aEvent.EventId) + " : "
- + aEvent.OldValue.toString()
- + " -> "
- + aEvent.NewValue.toString() + "\n");
- UpdateVerticalScrollBar();
- }
-
- private JTextArea maText;
- private int mnLineNo;
- private JScrollPane maScrollPane;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/FocusView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/FocusView.java
deleted file mode 100644
index 5a68a9294..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/FocusView.java
+++ /dev/null
@@ -1,148 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view;
-
-import java.awt.Font;
-import java.awt.GridBagConstraints;
-import java.awt.GridBagLayout;
-import java.awt.event.ActionListener;
-import java.awt.event.ActionEvent;
-
-import javax.swing.JButton;
-import javax.swing.JLabel;
-
-import com.sun.star.accessibility.AccessibleEventId;
-import com.sun.star.accessibility.AccessibleEventObject;
-import com.sun.star.accessibility.AccessibleStateType;
-import com.sun.star.accessibility.XAccessibleComponent;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleStateSet;
-import com.sun.star.uno.UnoRuntime;
-
-public class FocusView
- extends ObjectView
- implements ActionListener
-{
- /** Create a FocusView when the given object supports the
- XAccessibleComponent interface.
- */
- static public ObjectView Create (
- ObjectViewContainer aContainer,
- XAccessibleContext xContext)
- {
- XAccessibleComponent xComponent = (XAccessibleComponent)UnoRuntime.queryInterface(
- XAccessibleComponent.class, xContext);
- if (xComponent != null)
- return new FocusView (aContainer);
- else
- return null;
- }
-
- public FocusView (ObjectViewContainer aContainer)
- {
- super (aContainer);
-
- setLayout (new GridBagLayout());
- GridBagConstraints aConstraints = new GridBagConstraints ();
-
- maFocused = new JLabel ();
- maFocused.setFont (GetContainer().GetViewFont());
- aConstraints.gridy = 0;
- aConstraints.weightx = 1;
- aConstraints.fill = GridBagConstraints.HORIZONTAL;
- add (maFocused, aConstraints);
-
- maGrabFocus = new JButton ("grabFocus");
- maGrabFocus.setFont (GetContainer().GetViewFont());
- aConstraints.gridy = 1;
- aConstraints.fill = GridBagConstraints.NONE;
- aConstraints.anchor = GridBagConstraints.WEST;
- add (maGrabFocus, aConstraints);
-
- maGrabFocus.addActionListener (this);
- }
-
- /** Additionally to the context store a reference to the
- XAccessibleComponent interface.
- */
- public void SetObject (XAccessibleContext xObject)
- {
- mxComponent = (XAccessibleComponent)UnoRuntime.queryInterface(
- XAccessibleComponent.class, xObject);
- super.SetObject (xObject);
- }
-
- synchronized public void Destroy ()
- {
- super.Destroy();
- maGrabFocus.removeActionListener (this);
- }
-
- synchronized public void Update ()
- {
- if (mxContext == null)
- {
- maFocused.setText ("<null object>");
- maGrabFocus.setEnabled (false);
- }
- else
- {
- XAccessibleStateSet aStateSet = mxContext.getAccessibleStateSet();
- if (aStateSet.contains(AccessibleStateType.FOCUSED))
- maFocused.setText ("focused");
- else
- maFocused.setText ("not focused");
- if (maGrabFocus != null)
- maGrabFocus.setEnabled (true);
- }
- }
-
- public String GetTitle ()
- {
- return ("Focus");
- }
-
- synchronized public void actionPerformed (ActionEvent aEvent)
- {
- if (aEvent.getActionCommand().equals("grabFocus"))
- {
- mxComponent.grabFocus();
- }
- }
-
- public void notifyEvent (AccessibleEventObject aEvent)
- {
- System.out.println (aEvent);
- if (aEvent.EventId == AccessibleEventId.STATE_CHANGED)
- Update ();
- }
-
- private JLabel maFocused;
- private JButton maGrabFocus;
- private XAccessibleComponent mxComponent;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/LayoutManager.java b/accessibility/workben/org/openoffice/accessibility/awb/view/LayoutManager.java
deleted file mode 100644
index 0bbe0bd3e..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/LayoutManager.java
+++ /dev/null
@@ -1,160 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view;
-
-import java.awt.Component;
-import java.awt.Cursor;
-import java.awt.GridBagLayout;
-import java.awt.GridBagConstraints;
-import java.awt.Point;
-import java.awt.event.MouseListener;
-import java.awt.event.MouseMotionListener;
-import java.awt.event.MouseEvent;
-import javax.swing.JComponent;
-
-class LayoutManager
- implements MouseListener,
- MouseMotionListener
-{
- public LayoutManager (JComponent aLayoutedComponent)
- {
- maLayoutedComponent = aLayoutedComponent;
- maDraggedView = null;
- mbInsertionPending = false;
- }
-
- public void mouseClicked (MouseEvent aEvent)
- {
- System.out.println (aEvent);
- }
- public void mousePressed (MouseEvent aEvent)
- {
- mnOldY = aEvent.getPoint().y;
- }
- public void mouseReleased (MouseEvent aEvent)
- {
- if (mbInsertionPending)
- {
- InsertView (maDraggedView, aEvent.getPoint().y);
- mbInsertionPending = false;
- maDraggedView = null;
- }
- }
- public void mouseEntered (MouseEvent aEvent)
- {
- }
- public void mouseExited (MouseEvent aEvent)
- {
- if (mbInsertionPending)
- {
- InsertView (maDraggedView, mnOldY);
- mbInsertionPending = false;
- maDraggedView = null;
- }
- }
- public void mouseDragged (MouseEvent aEvent)
- {
- int dy = mnOldY - aEvent.getPoint().y;
- GridBagLayout aLayout = (GridBagLayout)maLayoutedComponent.getLayout();
- if ( ! mbInsertionPending && dy != 0)
- {
- maDraggedView = RemoveView (mnOldY);
- if (maDraggedView != null)
- mbInsertionPending = true;
- }
- }
- public void mouseMoved (MouseEvent aEvent)
- {
- }
-
-
-
-
- private ObjectView RemoveView (int y)
- {
- ObjectView aView = null;
- GridBagLayout aLayout = (GridBagLayout)maLayoutedComponent.getLayout();
-
- Point aGridLocation = aLayout.location (10,y);
- Component[] aComponentList = maLayoutedComponent.getComponents();
- System.out.println ("removing view at " + aGridLocation);
- for (int i=0; i<aComponentList.length && aView==null; i++)
- {
- GridBagConstraints aConstraints = aLayout.getConstraints (
- aComponentList[i]);
- if (aConstraints.gridy == aGridLocation.y)
- aView = (ObjectView)aComponentList[i];
- }
- maNormalCursor = maLayoutedComponent.getCursor();
- if (aView != null)
- {
- System.out.println ("removing view at " + aGridLocation.y);
- maLayoutedComponent.setCursor (new Cursor (Cursor.MOVE_CURSOR));
- maLayoutedComponent.remove (aView);
- maLayoutedComponent.validate();
- maLayoutedComponent.repaint();
- }
-
- return aView;
- }
-
- private void InsertView (ObjectView aView, int y)
- {
- if (aView != null)
- {
- GridBagLayout aLayout = (GridBagLayout)maLayoutedComponent.getLayout();
- Point aGridLocation = aLayout.location (0,y);
- Component[] aComponentList = maLayoutedComponent.getComponents();
- System.out.println ("new position is " + aGridLocation.y);
- for (int i=0; i<aComponentList.length; i++)
- {
- GridBagConstraints aConstraints = aLayout.getConstraints (
- aComponentList[i]);
- if (aConstraints.gridy >= aGridLocation.y)
- {
- if (aConstraints.gridy == aGridLocation.y)
- maLayoutedComponent.add (maDraggedView, aConstraints);
- aConstraints.gridy += 1;
- aLayout.setConstraints (aComponentList[i], aConstraints);
- }
- }
- maLayoutedComponent.validate();
- maLayoutedComponent.repaint();
- }
- maLayoutedComponent.setCursor (maNormalCursor);
- }
-
-
-
-
- private JComponent maLayoutedComponent;
- private ObjectView maDraggedView;
- private int mnOldY;
- private boolean mbInsertionPending;
- private Cursor maNormalCursor;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/Makefile b/accessibility/workben/org/openoffice/accessibility/awb/view/Makefile
deleted file mode 100644
index feb3f7f3a..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/Makefile
+++ /dev/null
@@ -1,11 +0,0 @@
-all : package
-
-ROOT=../../../../..
-PACKAGE = org.openoffice.accessibility.awb.view
-SUBDIRS = text
-include makefile.common
-
-include $(ROOT)/makefile.in
-
-
-package : $(CLASS_FILES)
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectView.java
deleted file mode 100644
index ada74f6db..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectView.java
+++ /dev/null
@@ -1,90 +0,0 @@
-package org.openoffice.accessibility.awb.view;
-
-import javax.swing.JPanel;
-
-import com.sun.star.accessibility.AccessibleEventObject;
-import com.sun.star.accessibility.XAccessibleContext;
-
-/** This is the base class for all object views that can be placed inside an
- object view container.
-
- <p>When provided with a new accessible object the container will call
- the Create method to create a new instance when certain conditions are
- met. It then calls SetObject to pass the object to the instance.
- Finally it calls Update.</p>
-
- <p>The SetObject and Update methods may be called for a new object
- without calling Create first. In this way an existing instance is
- recycled.</p>
-*/
-abstract public class ObjectView
- extends JPanel
-{
- /** This factory method creates a new instance of the (derived) class
- when the given accessible object supports all necessary features.
- In the ususal case this will be the support of a specific
- accessibility interface.
- */
- static public ObjectView Create (
- ObjectViewContainer aContainer,
- XAccessibleContext xContext)
- {
- return null;
- }
-
- public ObjectView (ObjectViewContainer aContainer)
- {
- maContainer = aContainer;
- mxContext = null;
- }
-
- /** Call this when you want the object to be destroyed. Release all
- resources when called.
- */
- public void Destroy ()
- {
- }
-
- /** Tell the view to display information for a new accessible object.
- @param xObject
- The given object may be null. A typical behaviour in this case
- would be to display a blank area. But is also possible to show
- information about the last object.
- */
- public void SetObject (XAccessibleContext xContext)
- {
- mxContext = xContext;
- Update ();
- }
-
-
- /** This is a request of a repaint with the current state of the current
- object. The current object may or may not be the same as the one
- when Update() was called the last time.
- */
- public void Update ()
- {
- }
-
-
- /** Return a string that is used as a title of an enclosing frame.
- */
- abstract public String GetTitle ();
-
-
- public ObjectViewContainer GetContainer ()
- {
- return maContainer;
- }
-
-
- /** Implement this method if you are interested in accessible events.
- */
- public void notifyEvent (AccessibleEventObject aEvent)
- {}
-
- /// Reference to the current object to display information about.
- protected XAccessibleContext mxContext;
-
- protected ObjectViewContainer maContainer;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectViewContainer.java b/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectViewContainer.java
deleted file mode 100644
index bc86cb3ee..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectViewContainer.java
+++ /dev/null
@@ -1,310 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view;
-
-import java.awt.Color;
-import java.awt.Component;
-import java.awt.Font;
-import java.awt.GridBagLayout;
-import java.awt.GridBagConstraints;
-import java.awt.Insets;
-
-import java.util.Vector;
-
-import java.lang.reflect.Method;
-import java.lang.NoSuchMethodException;
-import java.lang.IllegalAccessException;
-import java.lang.reflect.InvocationTargetException;
-
-import javax.swing.JPanel;
-import javax.swing.JTree;
-import javax.swing.BorderFactory;
-import javax.swing.border.Border;
-import javax.swing.border.BevelBorder;
-import javax.swing.SwingUtilities;
-
-import com.sun.star.accessibility.AccessibleEventObject;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleComponent;
-import com.sun.star.accessibility.XAccessibleEventBroadcaster;
-import com.sun.star.accessibility.XAccessibleEventListener;
-import com.sun.star.accessibility.XAccessibleSelection;
-import com.sun.star.lang.EventObject;
-import com.sun.star.uno.UnoRuntime;
-
-import org.openoffice.accessibility.awb.view.ObjectView;
-
-
-
-/** This container of specialized object views displays information about
- one accessible object.
- In this it plays several roles:
- 1. Object container.
- 2. Accessibility event dispatcher.
- 3. Object view class registration manager.
- 4. Swing widget.
-*/
-public class ObjectViewContainer
- extends JPanel
- implements XAccessibleEventListener
-{
- public ObjectViewContainer ()
- {
- maFont = new Font ("Dialog", Font.PLAIN, 11);
- maViewTemplates = new Vector ();
- maViewBorder = BorderFactory.createBevelBorder (BevelBorder.RAISED);
- GridBagLayout aLayout = new GridBagLayout ();
- setLayout (aLayout);
- // maLayoutManager = new LayoutManager (this);
- maLayoutManager = null;
-
- RegisterView (ContextView.class);
- RegisterView (ComponentView.class);
- RegisterView (ParentView.class);
- RegisterView (StateSetView.class);
- RegisterView (FocusView.class);
- RegisterView (TextView.class);
- RegisterView (EditableTextView.class);
- RegisterView (TableView.class);
- RegisterView (SelectionView.class);
- RegisterView (ServiceInterfaceView.class);
- RegisterView (EventMonitorView.class);
-
- mxContext = null;
-
- // addMouseListener (maLayoutManager);
- // addMouseMotionListener (maLayoutManager);
- }
-
-
-
- /** Remove all existing views and create new ones according to the
- interfaces supported by the given object.
- */
- public synchronized void SetObject (XAccessibleContext xContext)
- {
- // Call Destroy at all views to give them a chance to release their
- // resources.
- int n = getComponentCount();
- for (int i=0; i<n; i++)
- ((ObjectView)getComponent(i)).Destroy();
- // Remove existing views.
- removeAll ();
-
- mxContext = xContext;
-
- // Add new views.
- for (int i=0; i<maViewTemplates.size(); i++)
- {
- try
- {
- Class aViewClass = (Class)maViewTemplates.elementAt (i);
- Method aCreateMethod = aViewClass.getDeclaredMethod (
- "Create", new Class[] {
- ObjectViewContainer.class,
- XAccessibleContext.class});
- if (aCreateMethod != null)
- {
- ObjectView aView = (ObjectView)
- aCreateMethod.invoke (
- null, new Object[] {this, xContext});
- Add (aView);
- }
- }
- catch (NoSuchMethodException e)
- {System.err.println ("Caught exception while creating view "
- + i + " : " + e);}
- catch (IllegalAccessException e)
- {System.err.println ("Caught exception while creating view "
- + i + " : " + e);}
- catch (InvocationTargetException e)
- {System.err.println ("Caught exception while creating view "
- + i + " : " + e);}
- }
-
- UpdateLayoutManager ();
-
- // Now set the object at all views.
- n = getComponentCount();
- for (int i=0; i<n; i++)
- ((ObjectView)getComponent(i)).SetObject (xContext);
-
- setPreferredSize (getLayout().preferredLayoutSize (this));
- ((GridBagLayout) getLayout()).invalidateLayout(this);
- validate();
- }
-
-
-
-
- /** Add the given class to the list of classes which will be
- instantiated the next time an accessible object is set.
- */
- public void RegisterView (Class aObjectViewClass)
- {
- maViewTemplates.addElement (aObjectViewClass);
- }
-
-
-
-
- /** Replace one view class with another.
- */
- public void ReplaceView (Class aObjectViewClass, Class aSubstitution)
- {
- int nIndex = maViewTemplates.indexOf (aObjectViewClass);
- if (nIndex >= 0)
- maViewTemplates.setElementAt (aSubstitution, nIndex);
- }
-
-
- /** Return a font that should be used for widgets in the views.
- */
- public Font GetViewFont ()
- {
- return maFont;
- }
-
- public Color GetErrorColor ()
- {
- return new Color (255,80,50);
- }
-
- /** Add an object view and place it below all previously added views.
- @param aView
- This argument may be null. In this case nothing happens.
- */
- private void Add (ObjectView aView)
- {
- if (aView != null)
- {
- GridBagConstraints constraints = new GridBagConstraints ();
- constraints.gridx = 0;
- constraints.gridy = getComponentCount();
- constraints.gridwidth = 1;
- constraints.gridheight = 1;
- constraints.weightx = 1;
- constraints.weighty = 0;
- constraints.ipadx = 2;
- constraints.ipady = 5;
- constraints.insets = new Insets (5,5,5,5);
- constraints.anchor = GridBagConstraints.NORTH;
- constraints.fill = GridBagConstraints.HORIZONTAL;
-
- aView.setBorder (
- BorderFactory.createTitledBorder (
- maViewBorder, aView.GetTitle()));
-
- add (aView, constraints);
- }
- }
-
- /** Update the layout manager by setting the vertical weight of the
- bottom entry to 1 and so make it strech to over the available
- space.
-
- */
- private void UpdateLayoutManager ()
- {
- // Adapt the layout manager.
- if (getComponentCount() > 1000)
- {
- Component aComponent = getComponent (getComponentCount()-1);
- GridBagLayout aLayout = (GridBagLayout)getLayout();
- GridBagConstraints aConstraints = aLayout.getConstraints (aComponent);
- aConstraints.weighty = 1;
- aLayout.setConstraints (aComponent, aConstraints);
- }
- }
-
-
-
-
- /** Put the event just received into the event queue which will deliver
- it soon asynchronuously to the DispatchEvent method.
- */
- public void notifyEvent (final AccessibleEventObject aEvent)
- {
- SwingUtilities.invokeLater(
- new Runnable()
- {
- public void run()
- {
- DispatchEvent (aEvent);
- }
- }
- );
- }
-
-
-
-
- /** Forward accessibility events to all views without them being
- registered as event listeners each on their own.
- */
- private void DispatchEvent (AccessibleEventObject aEvent)
- {
- int n = getComponentCount();
- for (int i=0; i<n; i++)
- ((ObjectView)getComponent(i)).notifyEvent (aEvent);
- }
-
-
-
- /** When the object is disposed that is displayed by the views of this
- container then tell all views about this.
- */
- public void disposing (EventObject aEvent)
- {
- mxContext = null;
- SwingUtilities.invokeLater(
- new Runnable()
- {
- public void run()
- {
- SetObject (null);
- }
- }
- );
- }
-
-
-
-
- /// The current accessible context display by the views.
- private XAccessibleContext mxContext;
-
- /// Observe this tree for selection changes and notify them to all
- /// children.
- private JTree maTree;
- private Border maViewBorder;
- /// List of view templates which are instantiated when new object is set.
- private Vector maViewTemplates;
- private Font maFont;
- private LayoutManager maLayoutManager;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectViewContainerWindow.java b/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectViewContainerWindow.java
deleted file mode 100644
index 8db9af4f4..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/ObjectViewContainerWindow.java
+++ /dev/null
@@ -1,35 +0,0 @@
-package org.openoffice.accessibility.awb.view;
-
-import java.awt.BorderLayout;
-import javax.swing.JFrame;
-import com.sun.star.accessibility.XAccessibleContext;
-
-
-/** Top level window that creates a single object view container. This
- container shows information about a specific accessible object and is
- not affected by the selection of the accessbility tree widget.
-*/
-public class ObjectViewContainerWindow
- extends JFrame
-{
- public ObjectViewContainerWindow (XAccessibleContext xContext)
- {
- setSize (new java.awt.Dimension (300,600));
-
- maContainer = new ObjectViewContainer ();
- maContainer.SetObject (xContext);
- getContentPane().add (maContainer, BorderLayout.CENTER);
-
- pack ();
- setVisible (true);
- }
-
- /** Set the object that is displayed in this window.
- */
- public void SetObject (XAccessibleContext xContext)
- {
- maContainer.SetObject (xContext);
- }
-
- private ObjectViewContainer maContainer;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/ParentView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/ParentView.java
deleted file mode 100644
index 828c3fd1a..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/ParentView.java
+++ /dev/null
@@ -1,147 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view;
-
-import java.awt.Color;
-import java.awt.Dimension;
-import java.awt.GridBagLayout;
-import java.awt.GridBagConstraints;
-import java.lang.Integer;
-import javax.swing.JLabel;
-import javax.swing.JTextField;
-
-import com.sun.star.accessibility.AccessibleEventId;
-import com.sun.star.accessibility.AccessibleEventObject;
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.lang.IndexOutOfBoundsException;
-
-import org.openoffice.accessibility.misc.NameProvider;
-
-
-/** Show informations related to the parent/child relationship.
-*/
-public class ParentView
- extends ObjectView
-{
- static public ObjectView Create (
- ObjectViewContainer aContainer,
- XAccessibleContext xContext)
- {
- if (xContext != null)
- return new ParentView (aContainer);
- else
- return null;
- }
-
- public ParentView (ObjectViewContainer aContainer)
- {
- super (aContainer);
-
- ViewGridLayout aLayout = new ViewGridLayout (this);
- maParentLabel = aLayout.AddLabeledEntry ("Has parent: ");
- maIndexLabel = aLayout.AddLabeledEntry ("Index in parent: ");
- maValidLabel = aLayout.AddLabeledEntry ("Parent/Child relationship valid: ");
- maChildrenLabel = aLayout.AddLabeledEntry ("Child count: ");
- }
-
- public void Update ()
- {
- if (mxContext == null)
- {
- maParentLabel.setText ("<null object>");
- maIndexLabel.setText ("<null object>");
- maValidLabel.setText ("<null object>");
- maChildrenLabel.setText ("<null object>");
- }
- else
- {
- XAccessible xParent = mxContext.getAccessibleParent();
- int nIndex = mxContext.getAccessibleIndexInParent();
- maIndexLabel.setText (Integer.toString(nIndex));
- if (xParent != null)
- {
- maParentLabel.setText ("yes");
- XAccessibleContext xParentContext =
- xParent.getAccessibleContext();
- if (xParentContext != null)
- {
- try
- {
- XAccessible xChild =
- xParentContext.getAccessibleChild(nIndex);
- if (xChild != mxContext)
- maValidLabel.setText ("yes");
- else
- {
- maValidLabel.setText ("no");
- maValidLabel.setBackground (GetContainer().GetErrorColor());
- }
- }
- catch (IndexOutOfBoundsException e)
- {
- maValidLabel.setText ("no: invalid index in parent");
- maValidLabel.setBackground (GetContainer().GetErrorColor());
- }
- }
- else
- {
- maValidLabel.setText ("no: parent has no context");
- maValidLabel.setBackground (GetContainer().GetErrorColor());
- }
- }
- else
- maParentLabel.setText ("no");
- maChildrenLabel.setText (Integer.toString(mxContext.getAccessibleChildCount()));
- }
- }
-
- public String GetTitle ()
- {
- return ("Parent");
- }
-
-
- /** Listen for changes regarding displayed values.
- */
- public void notifyEvent (AccessibleEventObject aEvent)
- {
- switch (aEvent.EventId)
- {
- default:
- Update ();
- }
- }
-
-
- private JLabel
- maParentLabel,
- maIndexLabel,
- maValidLabel,
- maChildrenLabel;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/SelectionView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/SelectionView.java
deleted file mode 100644
index 4970546fd..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/SelectionView.java
+++ /dev/null
@@ -1,267 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view;
-
-import java.util.Vector;
-
-import java.awt.event.ActionListener;
-import java.awt.event.ActionEvent;
-
-import java.awt.BorderLayout;
-import java.awt.Dimension;
-import java.awt.GridBagLayout;
-import java.awt.GridBagConstraints;
-
-import javax.swing.BoxLayout;
-import javax.swing.ButtonGroup;
-import javax.swing.JButton;
-import javax.swing.JCheckBox;
-import javax.swing.JLabel;
-import javax.swing.JList;
-import javax.swing.JPanel;
-import javax.swing.JOptionPane;
-import javax.swing.JRadioButton;
-import javax.swing.JScrollPane;
-import javax.swing.JToggleButton;
-import javax.swing.ListSelectionModel;
-
-
-import com.sun.star.accessibility.AccessibleEventId;
-import com.sun.star.accessibility.AccessibleEventObject;
-import com.sun.star.accessibility.AccessibleRole;
-import com.sun.star.accessibility.AccessibleStateType;
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleSelection;
-import com.sun.star.accessibility.XAccessibleStateSet;
-
-import com.sun.star.uno.UnoRuntime;
-import com.sun.star.lang.IndexOutOfBoundsException;
-
-
-/** Display a list of children and select/deselect buttons
-*/
-class SelectionView
- extends ObjectView
- implements ActionListener
-{
- static public ObjectView Create (
- ObjectViewContainer aContainer,
- XAccessibleContext xContext)
- {
- XAccessibleSelection xSelection = (XAccessibleSelection)UnoRuntime.queryInterface(
- XAccessibleSelection.class, xContext);
- if (xSelection != null)
- return new SelectionView(aContainer);
- else
- return null;
- }
-
- public SelectionView (ObjectViewContainer aContainer)
- {
- super (aContainer);
- Layout();
- }
-
- public String GetTitle ()
- {
- return "Selection";
- }
-
- /** Create and arrange the widgets for this view.
- */
- private void Layout ()
- {
- setLayout (new GridBagLayout());
-
- GridBagConstraints aConstraints = new GridBagConstraints();
-
- // Label that shows whether the selection is multi selectable.
- aConstraints.gridx = 0;
- aConstraints.gridy = 0;
- aConstraints.anchor = GridBagConstraints.WEST;
- maTypeLabel = new JLabel ();
- maTypeLabel.setFont (maContainer.GetViewFont());
- add (maTypeLabel, aConstraints);
-
- // the JListBox
- maChildrenSelector = new JPanel ();
- maChildrenSelector.setPreferredSize (new Dimension (100,100));
- maChildrenSelector.setLayout (
- new BoxLayout (maChildrenSelector, BoxLayout.Y_AXIS));
-
- aConstraints.gridx = 0;
- aConstraints.gridwidth = 4;
- aConstraints.gridy = 1;
- aConstraints.fill = GridBagConstraints.HORIZONTAL;
- add (new JScrollPane (maChildrenSelector,
- JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
- JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED),
- aConstraints);
-
- JButton aButton;
- aButton = new JButton( "Select all" );
- aButton.setFont (maContainer.GetViewFont());
- aButton.setActionCommand( "Select all" );
- aButton.addActionListener( this );
- aConstraints.gridx = 0;
- aConstraints.gridwidth = 1;
- aConstraints.gridy = 2;
- aConstraints.fill = GridBagConstraints.NONE;
- aConstraints.anchor = GridBagConstraints.WEST;
- add (aButton, aConstraints);
-
- aButton = new JButton( "Clear Selection" );
- aButton.setFont (maContainer.GetViewFont());
- aButton.setActionCommand( "Clear Selection" );
- aButton.addActionListener( this );
- aConstraints.gridx = 1;
- aConstraints.gridy = 2;
- aConstraints.weightx = 1;
- add (aButton, aConstraints);
-
- setSize (getPreferredSize());
- }
-
-
- public void SetObject (XAccessibleContext xContext)
- {
- mxSelection = (XAccessibleSelection)UnoRuntime.queryInterface(
- XAccessibleSelection.class, xContext);
- super.SetObject (xContext);
- }
-
-
- public void Update ()
- {
- maChildrenSelector.removeAll ();
-
- // Determine whether multi selection is possible.
- XAccessibleStateSet aStateSet = mxContext.getAccessibleStateSet();
- boolean bMultiSelectable = false;
- if (aStateSet!=null && aStateSet.contains(
- AccessibleStateType.MULTI_SELECTABLE))
- {
- bMultiSelectable = true;
- maTypeLabel.setText ("multi selectable");
- }
- else
- {
- maTypeLabel.setText ("single selectable");
- }
-
- if (mxContext.getAccessibleRole() != AccessibleRole.TABLE)
- {
- int nCount = mxContext.getAccessibleChildCount();
- for (int i=0; i<nCount; i++)
- {
- try
- {
- XAccessible xChild = mxContext.getAccessibleChild(i);
- XAccessibleContext xChildContext = xChild.getAccessibleContext();
-
- String sName = i + " " + xChildContext.getAccessibleName();
- JToggleButton aChild;
- aChild = new JCheckBox (sName);
- aChild.setFont (maContainer.GetViewFont());
-
- XAccessibleStateSet aChildStateSet =
- mxContext.getAccessibleStateSet();
- aChild.setSelected (aChildStateSet!=null
- && aChildStateSet.contains(AccessibleStateType.SELECTED));
-
- aChild.addActionListener (this);
- maChildrenSelector.add (aChild);
-
- }
- catch (IndexOutOfBoundsException e)
- {
- }
- }
- }
- }
-
-
- void SelectAll()
- {
- mxSelection.selectAllAccessibleChildren();
- }
-
- void ClearSelection()
- {
- mxSelection.clearAccessibleSelection();
- }
-
-
-
- /** Call the function associated with the pressed button.
- */
- public void actionPerformed (ActionEvent aEvent)
- {
- String sCommand = aEvent.getActionCommand();
-
- if (sCommand.equals ("Clear Selection"))
- ClearSelection();
- else if (sCommand.equals ("Select all"))
- SelectAll();
- else
- {
- // Extract the child index from the widget text.
- String[] aWords = sCommand.split (" ");
- int nIndex = Integer.parseInt(aWords[0]);
- try
- {
- if (((JToggleButton)aEvent.getSource()).isSelected())
- mxSelection.selectAccessibleChild (nIndex);
- else
- mxSelection.deselectAccessibleChild (nIndex);
- }
- catch (IndexOutOfBoundsException e)
- {
- System.err.println (
- "caught exception while changing selection: " + e);
- }
- }
- }
-
-
- public void notifyEvent (AccessibleEventObject aEvent)
- {
- switch (aEvent.EventId)
- {
- case AccessibleEventId.SELECTION_CHANGED:
- case AccessibleEventId.STATE_CHANGED:
- case AccessibleEventId.CHILD:
- Update ();
- }
- }
-
- private JPanel maChildrenSelector;
- private XAccessibleSelection mxSelection;
- private JLabel maTypeLabel;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/ServiceInterfaceView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/ServiceInterfaceView.java
deleted file mode 100644
index a6292d00b..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/ServiceInterfaceView.java
+++ /dev/null
@@ -1,150 +0,0 @@
-package org.openoffice.accessibility.awb.view;
-
-import java.awt.GridLayout;
-import java.awt.Color;
-import java.awt.Dimension;
-import java.awt.GridBagLayout;
-import java.awt.GridBagConstraints;
-import java.lang.Integer;
-import javax.swing.JScrollPane;
-import javax.swing.JTree;
-import javax.swing.tree.DefaultMutableTreeNode;
-import javax.swing.tree.DefaultTreeModel;
-
-import com.sun.star.accessibility.AccessibleEventId;
-import com.sun.star.accessibility.AccessibleEventObject;
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.lang.IndexOutOfBoundsException;
-import com.sun.star.lang.XServiceInfo;
-import com.sun.star.lang.XTypeProvider;
-import com.sun.star.uno.Type;
-import com.sun.star.uno.UnoRuntime;
-
-import org.openoffice.accessibility.misc.NameProvider;
-
-
-/** Show all supported services and interfaces.
-*/
-public class ServiceInterfaceView
- extends ObjectView
-{
- static public ObjectView Create (
- ObjectViewContainer aContainer,
- XAccessibleContext xContext)
- {
- if (xContext != null)
- return new ServiceInterfaceView (aContainer);
- else
- return null;
- }
-
-
-
-
- public ServiceInterfaceView (ObjectViewContainer aContainer)
- {
- super (aContainer);
-
- maImplementationNameRoot = new DefaultMutableTreeNode ("Implementation Name");
- maServiceRoot = new DefaultMutableTreeNode ("Supported Services");
- maInterfaceRoot = new DefaultMutableTreeNode ("Supported Interfaces");
- maTree = new JTree (new DefaultMutableTreeNode[]
- {maServiceRoot,maInterfaceRoot});
- JScrollPane aScrollPane = new JScrollPane (
- maTree,
- JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
- JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED);
-
- setMinimumSize (new Dimension(300,200));
- setLayout (new GridLayout (1,1));
- add (aScrollPane);
- }
-
-
-
-
- public void Update ()
- {
- DefaultTreeModel aModel = (DefaultTreeModel)maTree.getModel();
-
- // Clear old tree.
- DefaultMutableTreeNode aRoot =(DefaultMutableTreeNode)aModel.getRoot();
- aRoot.removeAllChildren();
-
- // Create the new tree.
- CreateImplementationNameTree ();
- CreateServiceTree ();
- CreateInterfaceTree ();
- aRoot.add (maImplementationNameRoot);
- aRoot.add (maServiceRoot);
- aRoot.add (maInterfaceRoot);
- aModel.setRoot (aRoot);
-
- // Expand whole tree.
- for (int i=0; i<maTree.getRowCount(); i++)
- maTree.expandRow (i);
- }
-
- private void CreateImplementationNameTree ()
- {
- XServiceInfo xServiceInfo = (XServiceInfo)UnoRuntime.queryInterface(
- XServiceInfo.class, mxContext);
- maImplementationNameRoot.removeAllChildren();
- if (xServiceInfo != null)
- {
- maImplementationNameRoot.add (
- new DefaultMutableTreeNode (
- (xServiceInfo!=null
- ? xServiceInfo.getImplementationName()
- : "<XServiceInfo not supported>")));
- }
- }
-
- private void CreateServiceTree ()
- {
- XServiceInfo xServiceInfo = (XServiceInfo)UnoRuntime.queryInterface(
- XServiceInfo.class, mxContext);
- maServiceRoot.removeAllChildren();
- if (xServiceInfo != null)
- {
- String[] aServiceNames = xServiceInfo.getSupportedServiceNames();
- int nCount = aServiceNames.length;
- for (int i=0; i<nCount; i++)
- maServiceRoot.add (
- new DefaultMutableTreeNode (aServiceNames[i]));
- }
- else
- maServiceRoot.add (
- new DefaultMutableTreeNode("XServiceInfo not supported"));
- }
-
- private void CreateInterfaceTree ()
- {
- XTypeProvider xTypeProvider = (XTypeProvider)UnoRuntime.queryInterface(
- XTypeProvider.class, mxContext);
- maInterfaceRoot.removeAllChildren();
- if (xTypeProvider != null)
- {
- Type[] aTypes = xTypeProvider.getTypes();
- int nCount = aTypes.length;
- for (int i=0; i<nCount; i++)
- maInterfaceRoot.add (
- new DefaultMutableTreeNode (aTypes[i].getTypeName()));
- }
- else
- maInterfaceRoot.add (
- new DefaultMutableTreeNode("XTypeProvider not supported"));
- }
-
- public String GetTitle ()
- {
- return ("Supported Services and Interfaces");
- }
-
-
- private JTree maTree;
- private DefaultMutableTreeNode maImplementationNameRoot;
- private DefaultMutableTreeNode maServiceRoot;
- private DefaultMutableTreeNode maInterfaceRoot;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/StateSetView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/StateSetView.java
deleted file mode 100644
index a8c6b23b3..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/StateSetView.java
+++ /dev/null
@@ -1,199 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view;
-
-import java.awt.Color;
-import java.awt.Dimension;
-import java.awt.Graphics;
-import java.awt.Graphics2D;
-import java.awt.Insets;
-import java.awt.Rectangle;
-import java.awt.RenderingHints;
-import java.awt.geom.AffineTransform;
-
-
-
-import com.sun.star.accessibility.AccessibleEventObject;
-import com.sun.star.accessibility.AccessibleEventId;
-import com.sun.star.accessibility.AccessibleStateType;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleStateSet;
-
-import org.openoffice.accessibility.misc.NameProvider;
-
-public class StateSetView
- extends ObjectView
-{
- /** Create a FocusView when the given object supports the
- XAccessibleComponent interface.
- */
- static public ObjectView Create (
- ObjectViewContainer aContainer,
- XAccessibleContext xContext)
- {
- ObjectView aView = null;
- if (xContext != null)
- aView = new StateSetView (aContainer);
-
- return aView;
- }
-
- public StateSetView (ObjectViewContainer aContainer)
- {
- super (aContainer);
- setPreferredSize (new Dimension(300,110));
- setMinimumSize (new Dimension(200,80));
- }
-
- public String GetTitle ()
- {
- return ("StateSet");
- }
-
- public void notifyEvent (AccessibleEventObject aEvent)
- {
- if (aEvent.EventId == AccessibleEventId.STATE_CHANGED)
- Update();
- }
-
-
- public void Update ()
- {
- repaint ();
- }
-
- public void paintChildren (Graphics g)
- {
- if (g != null)
- synchronized (g)
- {
- super.paintChildren (g);
-
- // Calculcate the are inside the border.
- Insets aInsets = getInsets ();
- Dimension aSize = getSize();
- Rectangle aWidgetArea = new Rectangle (
- aInsets.left,
- aInsets.top,
- aSize.width-aInsets.left-aInsets.right,
- aSize.height-aInsets.top-aInsets.bottom);
-
- PaintAllStates ((Graphics2D)g, aWidgetArea);
- }
- }
-
- private void PaintAllStates (Graphics2D g, Rectangle aWidgetArea)
- {
- Color aTextColor = g.getColor();
-
- g.setRenderingHint (
- RenderingHints.KEY_ANTIALIASING,
- RenderingHints.VALUE_ANTIALIAS_ON);
-
- XAccessibleStateSet xStateSet = ( mxContext != null ) ? mxContext.getAccessibleStateSet() : null;
- if (xStateSet != null)
- {
- short aStates[] = xStateSet.getStates ();
- final int nMaxStateIndex = AccessibleStateType.VISIBLE;//MANAGES_DESCENDANTS;
- int nStateWidth = (aWidgetArea.width-12) / (nMaxStateIndex+1);
- AffineTransform aTransform = g.getTransform ();
- g.setColor (aTextColor);
- int y = aWidgetArea.y+aWidgetArea.height - 25;
- double nTextRotation = -0.9;//-java.lang.Math.PI/2;
- double nScale = 0.6;
-
- // Create a shape for the boxes.
- int nBoxWidth = 8;
- Rectangle aCheckBox = new Rectangle (-nBoxWidth/2,0,nBoxWidth,nBoxWidth);
-
- // For each state draw a box, fill it appropriately, and draw
- // thre states name.
- for (short i=0; i<=nMaxStateIndex; i++)
- {
- int x = nStateWidth + i * nStateWidth;
- String sStateName = NameProvider.getStateName (i);
- if (sStateName == null)
- sStateName = new String ("<unknown state " + i + ">");
- boolean bStateSet = xStateSet.contains (i);
- g.setTransform (aTransform);
- g.translate (x,y);
- if (bStateSet)
- {
- switch (i)
- {
- case AccessibleStateType.INVALID:
- case AccessibleStateType.DEFUNC:
- g.setColor (saInvalidColor);
- break;
- case AccessibleStateType.FOCUSED:
- g.setColor (saFocusColor);
- break;
- case AccessibleStateType.SELECTED:
- g.setColor (saSelectionColor);
- break;
- case AccessibleStateType.EDITABLE:
- g.setColor (saEditColor);
- break;
- default:
- g.setColor (saDefaultColor);
- break;
- }
- g.fill (aCheckBox);
- g.setColor (aTextColor);
- }
- g.draw (aCheckBox);
- g.rotate (nTextRotation);
- g.scale (nScale, nScale);
- g.translate (2,-2);
- g.drawString (sStateName, 0,0);
- }
-
- // Draw string of set states.
- String sStates = new String ();
- for (int i=0; i<aStates.length; i++)
- {
- if (i > 0)
- sStates = sStates + ", ";
- sStates = sStates + NameProvider.getStateName(aStates[i]);
- }
- g.setTransform (aTransform);
- g.translate (10,aWidgetArea.y+aWidgetArea.height-3);
- g.scale (0.9,0.9);
- g.drawString (sStates,0,0);
- }
- }
-
- static private Color
- saInvalidColor = new Color (255,0,255),
- saFocusColor = new Color (100,100,255),
- saSelectionColor = Color.GREEN,
- saDefaultColor = new Color (90,90,90),
- saEditColor = new Color (240,240,0);
-}
-
-
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/TableView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/TableView.java
deleted file mode 100644
index 35f037916..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/TableView.java
+++ /dev/null
@@ -1,161 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view;
-
-import java.lang.Integer;
-import java.lang.StringBuffer;
-
-import javax.swing.JLabel;
-
-import com.sun.star.accessibility.AccessibleEventId;
-import com.sun.star.accessibility.AccessibleEventObject;
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleTable;
-import com.sun.star.uno.UnoRuntime;
-
-
-
-/** The <type>ContextView</type> class displays information accessible over
- the <type>XAccessibleContext</type> interface. This includes name,
- description, and role.
-*/
-public class TableView
- extends ObjectView
-{
- static public ObjectView Create (
- ObjectViewContainer aContainer,
- XAccessibleContext xContext)
- {
- if (UnoRuntime.queryInterface(
- XAccessibleTable.class, xContext) != null)
- return new TableView (aContainer);
- else
- return null;
- }
-
- public TableView (ObjectViewContainer aContainer)
- {
- super (aContainer);
-
- ViewGridLayout aLayout = new ViewGridLayout (this);
-
- maRowCountLabel = aLayout.AddLabeledEntry ("Row Count: ");
- maColumnCountLabel = aLayout.AddLabeledEntry ("Column Count: ");
- maCellCountLabel = aLayout.AddLabeledEntry ("Cell Count: ");
- maSelectedRowsLabel = aLayout.AddLabeledEntry ("Selected Rows: ");
- maSelectedColumnsLabel = aLayout.AddLabeledEntry ("Selected Columns: ");
- }
-
-
- public void SetObject (XAccessibleContext xContext)
- {
- mxTable = (XAccessibleTable)UnoRuntime.queryInterface(
- XAccessibleTable.class, xContext);
- super.SetObject (xContext);
- }
-
-
- public void Update ()
- {
- if (mxTable == null)
- {
- maRowCountLabel.setText ("<null object>");
- maColumnCountLabel.setText ("<null object>");
- maCellCountLabel.setText ("<null object>");
- maSelectedRowsLabel.setText ("<null object>");
- maSelectedColumnsLabel.setText ("<null object>");
- }
- else
- {
- int nRowCount = mxTable.getAccessibleRowCount();
- int nColumnCount = mxTable.getAccessibleColumnCount();
- maRowCountLabel.setText (Integer.toString (nRowCount));
- maColumnCountLabel.setText (Integer.toString (nColumnCount));
- maCellCountLabel.setText (Integer.toString (nRowCount*nColumnCount));
-
- StringBuffer sList = new StringBuffer();
- int[] aSelected = mxTable.getSelectedAccessibleRows();
- boolean bFirst = true;
- for (int i=0; i<aSelected.length; i++)
- {
- if ( ! bFirst)
- {
- sList.append (", ");
- bFirst = false;
- }
- sList.append (Integer.toString(aSelected[i]));
- }
- maSelectedRowsLabel.setText (sList.toString());
- sList = new StringBuffer();
- aSelected = mxTable.getSelectedAccessibleColumns();
- bFirst = true;
- for (int i=0; i<aSelected.length; i++)
- {
- if ( ! bFirst)
- {
- sList.append (", ");
- bFirst = false;
- }
- sList.append (Integer.toString(aSelected[i]));
- }
- maSelectedColumnsLabel.setText (sList.toString());
- }
- }
-
-
-
-
- public String GetTitle ()
- {
- return ("Table");
- }
-
-
-
-
- /** Listen for changes regarding displayed values.
- */
- public void notifyEvent (AccessibleEventObject aEvent)
- {
- switch (aEvent.EventId)
- {
- case AccessibleEventId.TABLE_MODEL_CHANGED :
- case AccessibleEventId.SELECTION_CHANGED:
- Update ();
- }
- }
-
- private XAccessibleTable mxTable;
- private JLabel
- maRowCountLabel,
- maColumnCountLabel,
- maCellCountLabel,
- maSelectedRowsLabel,
- maSelectedColumnsLabel;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/TextView.java b/accessibility/workben/org/openoffice/accessibility/awb/view/TextView.java
deleted file mode 100644
index 451097b5d..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/TextView.java
+++ /dev/null
@@ -1,467 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view;
-
-import java.awt.Color;
-import java.awt.Dimension;
-import java.awt.GridBagConstraints;
-import java.awt.GridBagLayout;
-import java.awt.event.ActionListener;
-import java.awt.event.ActionEvent;
-
-import javax.swing.JButton;
-import javax.swing.JComponent;
-import javax.swing.JLabel;
-import javax.swing.JPanel;
-import javax.swing.JScrollPane;
-import javax.swing.JSpinner;
-import javax.swing.JTree;
-import javax.swing.tree.TreeNode;
-import javax.swing.tree.DefaultMutableTreeNode;
-import javax.swing.tree.DefaultTreeModel;
-import javax.swing.tree.MutableTreeNode;
-
-import com.sun.star.accessibility.AccessibleEventId;
-import com.sun.star.accessibility.AccessibleEventObject;
-import com.sun.star.accessibility.AccessibleTextType;
-import com.sun.star.accessibility.AccessibleStateType;
-import com.sun.star.accessibility.TextSegment;
-import com.sun.star.accessibility.XAccessibleText;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleMultiLineText;
-import com.sun.star.accessibility.XAccessibleStateSet;
-import com.sun.star.awt.Point;
-import com.sun.star.awt.Rectangle;
-import com.sun.star.beans.PropertyValue;
-import com.sun.star.lang.IndexOutOfBoundsException;
-import com.sun.star.lang.IllegalArgumentException;
-import com.sun.star.uno.UnoRuntime;
-
-import org.openoffice.accessibility.awb.view.text.CaretSpinnerModel;
-import org.openoffice.accessibility.awb.view.text.TextDialogFactory;
-
-
-public class TextView
- extends ObjectView
- implements ActionListener
-{
-
- /** Create a TextView when the given object supports the
- XAccessibleText interface.
- */
- static public ObjectView Create (
- ObjectViewContainer aContainer,
- XAccessibleContext xContext)
- {
- XAccessibleText xText = (XAccessibleText)UnoRuntime.queryInterface(
- XAccessibleText.class, xContext);
- if (xText != null)
- return new TextView (aContainer);
- else
- return null;
- }
-
-
- public TextView (ObjectViewContainer aContainer)
- {
- super (aContainer);
-
- ViewGridLayout aLayout = new ViewGridLayout (this);
-
- maTextLabel = aLayout.AddLabeledString ("Text: ");
- maCharacterArrayLabel = aLayout.AddLabeledEntry ("Characters: ");
- maCharacterCountLabel = aLayout.AddLabeledEntry ("Character Count: ");
- maSelectionLabel = aLayout.AddLabeledEntry ("Selection: ");
- maBoundsLabel = aLayout.AddLabeledEntry ("Bounds Test: ");
- maCaretPositionSpinner = (JSpinner)aLayout.AddLabeledComponent (
- "Caret position:", new JSpinner());
- Dimension aSize = maCaretPositionSpinner.getSize();
- maCaretPositionSpinner.setPreferredSize (new Dimension (100,20));
- maCaretLineNoLabel = aLayout.AddLabeledEntry ("Line number at caret: ");
- maCaretLineTextLabel = aLayout.AddLabeledEntry ("Text of line at caret: ");
- maLineNoFromCaretPosLabel = aLayout.AddLabeledEntry ("Line number at index of caret: ");
- maLineTextFromCaretPosLabel = aLayout.AddLabeledEntry ("Text of line at index of caret: ");
-
- JPanel aButtonPanel = new JPanel ();
- aLayout.AddComponent (aButtonPanel);
-
- JButton aButton = new JButton ("select...");
- aButton.setFont (aLayout.GetFont());
- aButton.addActionListener (this);
- aButtonPanel.add (aButton);
-
- aButton = new JButton ("copy...");
- aButton.setFont (aLayout.GetFont());
- aButton.addActionListener (this);
- aButtonPanel.add (aButton);
-
- // A tree that holds the text broken down into various segments.
- maTree = new JTree ();
- aLayout.AddComponent (new JScrollPane (
- maTree,
- JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
- JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED));
- }
-
-
- /** Additionally to the context store a reference to the
- XAccessibleText interface.
- */
- public void SetObject (XAccessibleContext xObject)
- {
- mxText = (XAccessibleText)UnoRuntime.queryInterface(
- XAccessibleText.class, xObject);
- maCaretSpinnerModel = new CaretSpinnerModel(mxText);
- maCaretPositionSpinner.setModel (maCaretSpinnerModel);
- super.SetObject (xObject);
- }
-
- synchronized public void Destroy ()
- {
- mxText = null;
- super.Destroy();
- }
-
- synchronized public void Update ()
- {
- maCaretPositionSpinner.setEnabled (mxText != null);
- DefaultMutableTreeNode aRoot = new DefaultMutableTreeNode ("Text Segments");
- if (mxText == null)
- {
- maTextLabel.setText ("<null object>");
- maCharacterArrayLabel.setText ("<null object>");
- maCharacterCountLabel.setText ("<null object>");
- maSelectionLabel.setText ("<null object>");
- maBoundsLabel.setText ("<null object>");
- maCaretLineNoLabel.setText ("<null object>");
- maCaretLineTextLabel.setText ("<null object>");
- maLineNoFromCaretPosLabel.setText ("<null object>");
- maLineTextFromCaretPosLabel.setText ("<null object>");
- }
- else
- {
- maTextLabel.setText (mxText.getText());
- maCharacterArrayLabel.setText (GetCharacterArray());
- maCharacterCountLabel.setText (
- Integer.toString(mxText.getCharacterCount()));
- // Selection.
- maSelectionLabel.setText (
- "[" + mxText.getSelectionStart()
- + "," + mxText.getSelectionEnd()
- + "] \"" + mxText.getSelectedText() + "\"");
-
- // Character bounds.
- maBoundsLabel.setText (GetTextBoundsString());
-
- // Caret position.
- maCaretPositionSpinner.setValue (new Integer (mxText.getCaretPosition()));
-
- // Multi line methods.
- XAccessibleMultiLineText xMultiText = (XAccessibleMultiLineText)
- UnoRuntime.queryInterface( XAccessibleMultiLineText.class, mxText );
-
- if( null != xMultiText ) {
- try {
- maCaretLineNoLabel.setText ( Integer.toString( xMultiText.getNumberOfLineWithCaret() ) );
- TextSegment ts = xMultiText.getTextAtLineWithCaret();
- maCaretLineTextLabel.setText ( "[" + ts.SegmentStart
- + "," + ts.SegmentEnd
- + "] \"" + ts.SegmentText + "\"");
- maLineNoFromCaretPosLabel.setText ( Integer.toString( xMultiText.getLineNumberAtIndex( mxText.getCaretPosition() ) ) );
- ts = xMultiText.getTextAtLineNumber(xMultiText.getLineNumberAtIndex( mxText.getCaretPosition() ) );
- maLineTextFromCaretPosLabel.setText ( "[" + ts.SegmentStart
- + "," + ts.SegmentEnd
- + "] \"" + ts.SegmentText + "\"");
- } catch( IndexOutOfBoundsException e) {
- }
- }
-
- // Text segments.
- aRoot.add (CreateNode ("Character", AccessibleTextType.CHARACTER));
- aRoot.add (CreateNode ("Word", AccessibleTextType.WORD));
- aRoot.add (CreateNode ("Sentence", AccessibleTextType.SENTENCE));
- aRoot.add (CreateNode ("Paragraph", AccessibleTextType.PARAGRAPH));
- aRoot.add (CreateNode ("Line", AccessibleTextType.LINE));
- aRoot.add (CreateNode ("Attribute", AccessibleTextType.ATTRIBUTE_RUN));
- aRoot.add (CreateNode ("Glyph", AccessibleTextType.GLYPH));
- }
- ((DefaultTreeModel)maTree.getModel()).setRoot (aRoot);
- }
-
- public String GetTitle ()
- {
- return ("Text");
- }
-
- public void notifyEvent (AccessibleEventObject aEvent)
- {
- System.out.println (aEvent);
- switch (aEvent.EventId)
- {
- case AccessibleEventId.CARET_CHANGED :
- maCaretSpinnerModel.Update();
- Update ();
- break;
-
- case AccessibleEventId.TEXT_CHANGED :
- case AccessibleEventId.TEXT_SELECTION_CHANGED:
- Update ();
- break;
- }
- }
-
- public void actionPerformed (ActionEvent aEvent)
- {
- String sCommand = aEvent.getActionCommand();
- if (sCommand.equals ("select..."))
- TextDialogFactory.CreateSelectionDialog (mxContext);
- else if (sCommand.equals ("copy..."))
- TextDialogFactory.CreateCopyDialog (mxContext);
- }
-
-
-
- /** Create a string that is a list of all characters returned by the
- getCharacter() method.
- */
- private String GetCharacterArray ()
- {
- // Do not show more than 30 characters.
- int nCharacterCount = mxText.getCharacterCount();
- int nMaxDisplayCount = 30;
-
- // build up string
- StringBuffer aCharacterArray = new StringBuffer();
- int nIndex = 0;
- try
- {
- while (nIndex<nCharacterCount && nIndex<nMaxDisplayCount)
- {
- aCharacterArray.append (mxText.getCharacter (nIndex));
- if (nIndex < nCharacterCount-1)
- aCharacterArray.append (",");
- nIndex ++;
- }
- if (nMaxDisplayCount < nCharacterCount)
- aCharacterArray.append (", ...");
- }
- catch (IndexOutOfBoundsException e)
- {
- aCharacterArray.append ("; Index Out Of Bounds at index " + nIndex);
- }
-
- return aCharacterArray.toString();
- }
-
-
-
- /** Iterate over all characters and translate their positions
- back and forth.
- */
- private String GetTextBoundsString ()
- {
- StringBuffer aBuffer = new StringBuffer ();
- try
- {
- // Iterate over all characters in the text.
- int nCount = mxText.getCharacterCount();
- for (int i=0; i<nCount; i++)
- {
- // Get bounds for this character.
- Rectangle aBBox = mxText.getCharacterBounds (i);
-
- // get the character by 'clicking' into the middle of
- // the bounds
- Point aMiddle = new Point();
- aMiddle.X = aBBox.X + (aBBox.Width / 2) - 1;
- aMiddle.Y = aBBox.Y + (aBBox.Height / 2) - 1;
- int nIndex = mxText.getIndexAtPoint (aMiddle);
-
- // get the character, or a '#' for an illegal index
- if ((nIndex >= 0) && (nIndex < mxText.getCharacter(i)))
- aBuffer.append (mxText.getCharacter(nIndex));
- else
- aBuffer.append ('#');
- }
- }
- catch (IndexOutOfBoundsException aEvent)
- {
- // Ignore errors.
- }
-
- return aBuffer.toString();
- }
-
-
-
-
- private final static int BEFORE = -1;
- private final static int AT = 0;
- private final static int BEHIND = +1;
-
- private MutableTreeNode CreateNode (String sTitle, short nTextType)
- {
- DefaultMutableTreeNode aNode = new DefaultMutableTreeNode (sTitle);
-
- aNode.add (CreateSegmentNode ("Before", nTextType, BEFORE));
- aNode.add (CreateSegmentNode ("At", nTextType, AT));
- aNode.add (CreateSegmentNode ("Behind", nTextType, BEHIND));
-
- return aNode;
- }
-
- private MutableTreeNode CreateSegmentNode (String sTitle, short nTextType, int nWhere)
- {
- TextSegment aSegment;
- int nTextLength = mxText.getCharacterCount();
- DefaultMutableTreeNode aNode = new DefaultMutableTreeNode (sTitle);
- for (int nIndex=0; nIndex<=nTextLength; /* empty */)
- {
- aSegment = GetTextSegment (nIndex, nTextType, nWhere);
- DefaultMutableTreeNode aSegmentNode = new DefaultMutableTreeNode (
- new StringBuffer (
- Integer.toString (nIndex) + " -> "
- + Integer.toString (aSegment.SegmentStart) + " - "
- + Integer.toString (aSegment.SegmentEnd) + " : "
- + aSegment.SegmentText.toString()));
- aNode.add (aSegmentNode);
- if (nTextType == AccessibleTextType.ATTRIBUTE_RUN)
- AddAttributeNodes (aSegmentNode, aSegment);
- if (aSegment.SegmentEnd > nIndex)
- nIndex = aSegment.SegmentEnd;
- else
- nIndex ++;
- }
-
- return aNode;
- }
-
-
- private TextSegment GetTextSegment (int nIndex, short nTextType, int nWhere)
- {
- TextSegment aSegment;
-
- try
- {
- switch (nWhere)
- {
- case BEFORE:
- aSegment = mxText.getTextBeforeIndex (nIndex, nTextType);
- break;
-
- case AT:
- aSegment = mxText.getTextAtIndex (nIndex, nTextType);
- break;
-
- case BEHIND:
- aSegment = mxText.getTextBehindIndex (nIndex, nTextType);
- break;
-
- default:
- aSegment = new TextSegment();
- aSegment.SegmentText = new String ("unknown position " + nWhere);
- aSegment.SegmentStart = nIndex;
- aSegment.SegmentStart = nIndex+1;
- break;
- }
- }
- catch (IndexOutOfBoundsException aException)
- {
- aSegment = new TextSegment ();
- aSegment.SegmentText = new String ("Invalid index at ") + nIndex + " : "
- + aException.toString();
- aSegment.SegmentStart = nIndex;
- aSegment.SegmentEnd = nIndex+1;
- }
- catch (IllegalArgumentException aException)
- {
- aSegment = new TextSegment ();
- aSegment.SegmentText = new String ("Illegal argument at ") + nIndex + " : "
- + aException.toString();
- aSegment.SegmentStart = nIndex;
- aSegment.SegmentEnd = nIndex+1;
- }
-
- return aSegment;
- }
-
-
- /** Add to the given node one node for every attribute of the given segment.
- */
- private void AddAttributeNodes (
- DefaultMutableTreeNode aNode,
- TextSegment aSegment)
- {
- try
- {
- PropertyValue[] aValues = mxText.getCharacterAttributes (
- aSegment.SegmentStart, aAttributeList);
- for (int i=0; i<aValues.length; i++)
- aNode.add (new DefaultMutableTreeNode (
- aValues[i].Name + ": " + aValues[i].Value));
- }
- catch (IndexOutOfBoundsException aException)
- {
- aNode.add (new DefaultMutableTreeNode (
- "caught IndexOutOfBoundsException while retrieveing attributes"));
- }
- }
-
- private XAccessibleText mxText;
- private JLabel
- maTextLabel,
- maCharacterArrayLabel,
- maCharacterCountLabel,
- maSelectionLabel,
- maBoundsLabel,
- maCaretLineNoLabel,
- maCaretLineTextLabel,
- maLineNoFromCaretPosLabel,
- maLineTextFromCaretPosLabel;
-
- private JSpinner maCaretPositionSpinner;
- private JTree maTree;
- private CaretSpinnerModel maCaretSpinnerModel;
-
- private static String[] aAttributeList = new String[] {
- "CharBackColor",
- "CharColor",
- "CharEscapement",
- "CharHeight",
- "CharPosture",
- "CharStrikeout",
- "CharUnderline",
- "CharWeight",
- "ParaAdjust",
- "ParaBottomMargin",
- "ParaFirstLineIndent",
- "ParaLeftMargin",
- "ParaLineSpacing",
- "ParaRightMargin",
- "ParaTabStops"};
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/ViewGridLayout.java b/accessibility/workben/org/openoffice/accessibility/awb/view/ViewGridLayout.java
deleted file mode 100644
index 196ec3ccd..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/ViewGridLayout.java
+++ /dev/null
@@ -1,117 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view;
-
-import java.awt.Color;
-import java.awt.Dimension;
-import java.awt.Font;
-import java.awt.GridBagLayout;
-import java.awt.GridBagConstraints;
-import javax.swing.JComponent;
-import javax.swing.JLabel;
-
-
-/** This class is a convenience class for views to use the GridBagLayout.
-*/
-class ViewGridLayout
-{
- public ViewGridLayout (JComponent aComponent)
- {
- maComponent = aComponent;
- maComponent.setLayout (new GridBagLayout());
- maComponent.setMinimumSize (new Dimension (300,30));
- maComponent.setMaximumSize (new Dimension (300,1000));
- mnCurrentLine = 0;
- }
-
- public JLabel AddLabeledEntry (String sTitle)
- {
- return (JLabel)AddLabeledComponent (sTitle, new JLabel (""));
- }
-
- public JLabel AddLabeledString (String sTitle)
- {
- JLabel aLabel = AddLabeledEntry (sTitle);
- aLabel.setBackground (new Color(220,220,220));
- aLabel.setOpaque (true);
- return aLabel;
- }
-
- public JComponent AddLabeledComponent (String sTitle, JComponent aComponent)
- {
- GridBagConstraints constraints = new GridBagConstraints ();
- constraints.gridx = 0;
- constraints.anchor = GridBagConstraints.WEST;
- constraints.fill = GridBagConstraints.NONE;
- constraints.gridy = mnCurrentLine;
-
- JLabel aLabel = new JLabel(sTitle);
- aLabel.setFont (saFont);
- maComponent.add (aLabel, constraints);
- constraints.gridx = 1;
- constraints.weightx = 1;
- constraints.fill = GridBagConstraints.NONE;
- aComponent.setFont (saFont);
- maComponent.add (aComponent, constraints);
-
- mnCurrentLine += 1;
-
- return aComponent;
- }
-
- public JComponent AddComponent (JComponent aComponent)
- {
- GridBagConstraints constraints = new GridBagConstraints ();
- constraints.gridx = 0;
- constraints.gridwidth = 2;
- constraints.weightx = 1;
- constraints.anchor = GridBagConstraints.WEST;
- constraints.fill = GridBagConstraints.HORIZONTAL;
- constraints.gridy = mnCurrentLine;
-
- maComponent.add (aComponent, constraints);
-
- mnCurrentLine += 1;
-
- return aComponent;
- }
-
- static public Font GetFont ()
- {
- return saFont;
- }
-
- static private Font saFont;
- private int mnCurrentLine;
- private JComponent maComponent;
-
- static
- {
- saFont = new Font ("Dialog", Font.PLAIN, 11);
- }
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/makefile.common b/accessibility/workben/org/openoffice/accessibility/awb/view/makefile.common
deleted file mode 100644
index 38033b3ab..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/makefile.common
+++ /dev/null
@@ -1,45 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-JARFILES = jurt.jar unoil.jar ridl.jar
-JAVAFILES = \
- ComponentView.java \
- ContextView.java \
- EditableTextView.java \
- EventMonitorView.java \
- FocusView.java \
- LayoutManager.java \
- ObjectView.java \
- ObjectViewContainer.java \
- ObjectViewContainerWindow.java \
- ParentView.java \
- SelectionView.java \
- ServiceInterfaceView.java \
- StateSetView.java \
- TableView.java \
- TextView.java \
- ViewGridLayout.java
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/makefile.mk b/accessibility/workben/org/openoffice/accessibility/awb/view/makefile.mk
deleted file mode 100644
index 0bfa48537..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/makefile.mk
+++ /dev/null
@@ -1,51 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJNAME = awb
-PRJ = ..$/..$/..$/..$/..$/..
-TARGET = awb_view
-PACKAGE = org$/openoffice$/accessibility$/awb$/view
-
-USE_JAVAVER:=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-.IF "$(JAVAVER:s/.//)" >= "140"
-
-.INCLUDE : makefile.common
-
-JAVACLASSFILES= $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:b).class)
-
-.ENDIF
-
-# --- Targets ------------------------------------------------------
-
-
-.INCLUDE : target.mk
-
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/text/CaretSpinnerModel.java b/accessibility/workben/org/openoffice/accessibility/awb/view/text/CaretSpinnerModel.java
deleted file mode 100644
index c6d7e09ea..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/text/CaretSpinnerModel.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view.text;
-
-import java.lang.Integer;
-import java.util.Vector;
-import javax.swing.SpinnerModel;
-import javax.swing.event.ChangeEvent;
-import javax.swing.event.ChangeListener;
-
-import com.sun.star.accessibility.XAccessibleText;
-import com.sun.star.lang.IndexOutOfBoundsException;
-
-
-/** A simple model for JSpinner objects that clips the spinner values to valid
- text indices.
-*/
-public class CaretSpinnerModel
- implements SpinnerModel
-{
- public CaretSpinnerModel (XAccessibleText xText)
- {
- mxText = xText;
- maListeners = new Vector ();
- }
-
- public void addChangeListener (ChangeListener aListener)
- {
- if (aListener != null)
- maListeners.add (aListener);
- }
-
- public void removeChangeListener (ChangeListener aListener)
- {
- maListeners.removeElement (aListener);
- }
-
- public Object getNextValue ()
- {
- if (mxText != null)
- {
- int nPosition = mxText.getCaretPosition();
- if (nPosition+1 <= mxText.getCharacterCount())
- return new Integer (nPosition+1);
- }
- return null;
- }
-
- public Object getPreviousValue ()
- {
- if (mxText != null)
- {
- int nPosition = mxText.getCaretPosition();
- if (nPosition > 0)
- return new Integer (nPosition-1);
- }
- return null;
- }
-
- public Object getValue ()
- {
- if (mxText != null)
- return new Integer (mxText.getCaretPosition());
- else
- return null;
- }
-
- public void setValue (Object aValue)
- {
- if (mxText != null)
- if (aValue instanceof Integer)
- {
- try
- {
- if( ((Integer)aValue).intValue() != mxText.getCaretPosition() )
- mxText.setCaretPosition (((Integer)aValue).intValue());
- }
- catch (IndexOutOfBoundsException aException)
- {
- }
- }
- }
-
- /** Call this method when the caret position has changes so that the model
- can inform its listeners about it.
- */
- public void Update ()
- {
- ChangeEvent aEvent = new ChangeEvent (this);
- for (int i=0; i<maListeners.size(); i++)
- ((ChangeListener)maListeners.elementAt(i)).stateChanged (aEvent);
- }
-
- private XAccessibleText mxText;
- private Integer maValue;
- private Vector maListeners;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/text/Makefile b/accessibility/workben/org/openoffice/accessibility/awb/view/text/Makefile
deleted file mode 100644
index 24eef34e2..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/text/Makefile
+++ /dev/null
@@ -1,11 +0,0 @@
-all : package
-
-ROOT=../../../../..
-PACKAGE = org.openoffice.accessibility.awb.view.text
-SUBDIRS =
-include makefile.common
-
-include $(ROOT)/makefile.in
-
-
-package : $(CLASS_FILES)
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextActionDialog.java b/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextActionDialog.java
deleted file mode 100644
index 257cd34e3..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextActionDialog.java
+++ /dev/null
@@ -1,208 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view.text;
-
-import java.awt.BorderLayout;
-import java.awt.Container;
-import java.awt.FlowLayout;
-import java.awt.event.ActionListener;
-import java.awt.event.ActionEvent;
-import javax.swing.JButton;
-import javax.swing.JCheckBox;
-import javax.swing.JDialog;
-import javax.swing.JLabel;
-import javax.swing.JOptionPane;
-import javax.swing.JPanel;
-import javax.swing.JTextArea;
-import javax.swing.text.JTextComponent;
-
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleText;
-import com.sun.star.accessibility.XAccessibleEditableText;
-import com.sun.star.lang.IndexOutOfBoundsException;
-import com.sun.star.uno.UnoRuntime;
-
-
-/**
- * Display a dialog with a text field and a pair of cancel/do-it buttons
- */
-class TextActionDialog
- extends JDialog
- implements ActionListener
-{
- public TextActionDialog (
- XAccessibleContext xContext,
- String sExplanation,
- String sTitle)
- {
- super();// AccessibilityWorkBench.Instance() );
-
- mxContext = xContext;
- msTitle = sTitle;
- msExplanation = sExplanation;
- Layout ();
- setSize (350, 225);
-
- }
-
-
- /** build dialog */
- protected void Layout()
- {
- setTitle (msTitle);
-
- // vertical stacking of the elements
- Container aContent = getContentPane();
- // aContent.setLayout( new BorderLayout() );
-
- // Label with explanation.
- if (msExplanation.length() > 0)
- aContent.add (new JLabel (msExplanation), BorderLayout.NORTH);
-
- // the text field
- maText = new JTextArea();
- maText.setLineWrap (true);
- maText.setEditable (false);
- aContent.add (maText, BorderLayout.CENTER);
-
- XAccessibleText xText = (XAccessibleText)UnoRuntime.queryInterface(
- XAccessibleText.class, mxContext);
- String sText = xText.getText();
- maText.setText (sText);
- maText.setRows (sText.length() / 40 + 1);
- maText.setColumns (Math.min (Math.max (40, sText.length()), 20));
-
- JPanel aButtons = new JPanel();
- aButtons.setLayout (new FlowLayout());
- maIndexToggle = new JCheckBox ("reverse selection");
- aButtons.add (maIndexToggle);
-
- JButton aActionButton = new JButton (msTitle);
- aActionButton.setActionCommand ("Action");
- aActionButton.addActionListener (this);
- aButtons.add (aActionButton);
-
- JButton aCancelButton = new JButton ("cancel");
- aCancelButton.setActionCommand ("Cancel");
- aCancelButton.addActionListener (this);
- aButtons.add (aCancelButton);
-
- // add Panel with buttons
- aContent.add (aButtons, BorderLayout.SOUTH);
- }
-
- protected void Cancel()
- {
- hide();
- dispose();
- }
-
- public void actionPerformed(ActionEvent e)
- {
- String sCommand = e.getActionCommand();
-
- if( "Cancel".equals( sCommand ) )
- Cancel();
- else if( "Action".equals( sCommand ) )
- Action();
- }
-
-
- protected int GetSelectionStart()
- {
- return GetSelection(true);
- }
- protected int GetSelectionEnd()
- {
- return GetSelection(false);
- }
- private int GetSelection (boolean bStart)
- {
- if (bStart ^ maIndexToggle.isSelected())
- return maText.getSelectionStart();
- else
- return maText.getSelectionEnd();
- }
-
-
-
- protected void Action ()
- {
- String sError = null;
- boolean bSuccess = true;
- try
- {
- XAccessibleText xText =
- (XAccessibleText)UnoRuntime.queryInterface(
- XAccessibleText.class, mxContext);
- if (xText != null)
- bSuccess = bSuccess && TextAction (xText);
-
- XAccessibleEditableText xEditableText =
- (XAccessibleEditableText)UnoRuntime.queryInterface(
- XAccessibleEditableText.class, mxContext);
- if (xEditableText != null)
- bSuccess = bSuccess && EditableTextAction (xEditableText);
-
- if ( ! bSuccess)
- sError = "Can't execute";
- }
- catch (IndexOutOfBoundsException e)
- {
- sError = "Index out of bounds";
- }
-
- if (sError != null)
- JOptionPane.showMessageDialog (
- this,// AccessibilityWorkBench.Instance(),
- sError,
- msTitle,
- JOptionPane.ERROR_MESSAGE);
-
- Cancel();
- }
-
- /** override this for dialog-specific action */
- boolean TextAction (XAccessibleText xText)
- throws IndexOutOfBoundsException
- {
- return true;
- }
-
- boolean EditableTextAction (XAccessibleEditableText xText)
- throws IndexOutOfBoundsException
- {
- return true;
- }
-
- private XAccessibleContext mxContext;
- protected JTextArea maText;
- private String msTitle;
- private String msExplanation;
- private JCheckBox maIndexToggle;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextAttributeDialog.java b/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextAttributeDialog.java
deleted file mode 100644
index 05d8ff480..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextAttributeDialog.java
+++ /dev/null
@@ -1,179 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view.text;
-
-import java.awt.BorderLayout;
-import java.awt.Color;
-import java.awt.Component;
-import java.awt.Graphics;
-import java.awt.event.ActionListener;
-import java.awt.event.ActionEvent;
-import javax.swing.BoxLayout;
-import javax.swing.Icon;
-import javax.swing.JButton;
-import javax.swing.JCheckBox;
-import javax.swing.JColorChooser;
-import javax.swing.JPanel;
-import javax.swing.text.JTextComponent;
-
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleEditableText;
-import com.sun.star.beans.PropertyValue;
-import com.sun.star.lang.IndexOutOfBoundsException;
-import com.sun.star.uno.UnoRuntime;
-
-
-class TextAttributeDialog
- extends TextActionDialog
-{
- public TextAttributeDialog (XAccessibleContext xContext)
- {
- super (xContext,
- "Choose attributes, select text, and press 'Set':",
- "set");
- }
-
- protected void Layout ()
- {
- super.Layout ();
-
- maForeground = Color.black;
- maBackground = Color.white;
-
- JPanel aPanel = new JPanel();
- aPanel.setLayout (new BoxLayout (aPanel, BoxLayout.Y_AXIS));
-
- maBoldCheckBox = new JCheckBox ("bold");
- maUnderlineCheckBox = new JCheckBox ("underline");
- maItalicsCheckBox = new JCheckBox ("italics");
-
- JButton aForegroundButton = new JButton ("Foreground",
- new TextAttributeDialog.ColorIcon(true));
- aForegroundButton.addActionListener (new ActionListener()
- {
- public void actionPerformed (ActionEvent aEvent)
- {
- maForeground = JColorChooser.showDialog (
- TextAttributeDialog.this,
- "Select Foreground Color",
- maForeground);
- }
- } );
-
- JButton aBackgroundButton = new JButton("Background",
- new TextAttributeDialog.ColorIcon(false));
- aBackgroundButton.addActionListener (new ActionListener()
- {
- public void actionPerformed (ActionEvent eEvent)
- {
- maBackground = JColorChooser.showDialog(
- TextAttributeDialog.this,
- "Select Background Color",
- maBackground);
- }
- } );
-
- aPanel.add (maBoldCheckBox);
- aPanel.add (maUnderlineCheckBox);
- aPanel.add (maItalicsCheckBox);
- aPanel.add (aForegroundButton);
- aPanel.add (aBackgroundButton);
-
- getContentPane().add (aPanel, BorderLayout.WEST);
- }
-
-
- /** edit the text */
- boolean EditableTextAction (XAccessibleEditableText xText)
- throws IndexOutOfBoundsException
- {
- PropertyValue[] aSequence = new PropertyValue[6];
- aSequence[0] = new PropertyValue();
- aSequence[0].Name = "CharWeight";
- aSequence[0].Value = new Integer (maBoldCheckBox.isSelected() ? 150 : 100);
- aSequence[1] = new PropertyValue();
- aSequence[1].Name = "CharUnderline";
- aSequence[1].Value = new Integer (maUnderlineCheckBox.isSelected() ? 1 : 0);
- aSequence[2] = new PropertyValue();
- aSequence[2].Name = "CharBackColor";
- aSequence[2].Value = new Integer (maBackground.getRGB());
- aSequence[3] = new PropertyValue();
- aSequence[3].Name = "CharColor";
- aSequence[3].Value = new Integer (maForeground.getRGB());
- aSequence[4] = new PropertyValue();
- aSequence[4].Name = "CharPosture";
- aSequence[4].Value = new Integer (maItalicsCheckBox.isSelected() ? 1 : 0);
- aSequence[5] = new PropertyValue();
- aSequence[5].Name = "CharBackTransparent";
- aSequence[5].Value = new Boolean (false);
-
- return xText.setAttributes (
- GetSelectionStart(),
- GetSelectionEnd(),
- aSequence);
- }
-
- class ColorIcon
- implements Icon
- {
- public ColorIcon(boolean bWhich) { bForeground = bWhich; }
- public int getIconHeight() { return nHeight; }
- public int getIconWidth() { return nWidth; }
- public void paintIcon (Component c, Graphics g, int x, int y)
- {
- g.setColor( getColor() );
- g.fillRect( x, y, nHeight, nWidth );
- g.setColor( c.getForeground() );
- g.drawRect( x, y, nHeight, nWidth );
- }
- Color getColor()
- {
- if (bForeground)
- return maForeground;
- else
- return maBackground;
- }
-
- private static final int nHeight = 16;
- private static final int nWidth = 16;
- private boolean bForeground;
- }
-
-
-
-
- private JCheckBox
- maBoldCheckBox,
- maUnderlineCheckBox,
- maItalicsCheckBox;
- private Color
- maForeground,
- maBackground;
-
-}
-
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextDialogFactory.java b/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextDialogFactory.java
deleted file mode 100644
index 70371324d..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextDialogFactory.java
+++ /dev/null
@@ -1,136 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view.text;
-
-import javax.swing.JDialog;
-import javax.swing.text.JTextComponent;
-
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleEditableText;
-import com.sun.star.accessibility.XAccessibleText;
-import com.sun.star.lang.IndexOutOfBoundsException;
-import com.sun.star.uno.UnoRuntime;
-
-
-/** Factory for dialogs of the text views.
-*/
-public class TextDialogFactory
-{
- static public JDialog CreateSelectionDialog (XAccessibleContext xContext)
- {
- JDialog aDialog = new TextActionDialog(
- xContext,
- "Select range:",
- "select")
- {
- boolean TextAction (XAccessibleText xText)
- throws IndexOutOfBoundsException
- {
- return xText.setSelection(
- GetSelectionStart(),
- GetSelectionEnd() );
- }
- };
- if (aDialog != null)
- aDialog.show();
- return aDialog;
- }
-
- static public JDialog CreateCopyDialog (XAccessibleContext xContext)
- {
- JDialog aDialog = new TextActionDialog(
- xContext,
- "Select range and copy:",
- "copy")
- {
- boolean TextAction (XAccessibleText xText)
- throws IndexOutOfBoundsException
- {
- return xText.copyText(
- GetSelectionStart(),
- GetSelectionEnd());
- }
- };
- if (aDialog != null)
- aDialog.show();
- return aDialog;
- }
- static public JDialog CreateCutDialog (XAccessibleContext xContext)
- {
- JDialog aDialog = new TextActionDialog(
- xContext,
- "Select range and cut:",
- "cut")
- {
- boolean EditableTextAction (XAccessibleEditableText xText)
- throws IndexOutOfBoundsException
- {
- return xText.cutText(
- GetSelectionStart(),
- GetSelectionEnd() );
- }
- };
- if (aDialog != null)
- aDialog.show();
- return aDialog;
- }
- static public JDialog CreatePasteDialog (XAccessibleContext xContext)
- {
- JDialog aDialog = new TextActionDialog (
- xContext,
- "Place Caret and paste:",
- "paste")
- {
- boolean EditableTextAction (XAccessibleEditableText xText)
- throws IndexOutOfBoundsException
- {
- return xText.pasteText(maText.getCaretPosition());
- }
- };
- if (aDialog != null)
- aDialog.show();
- return aDialog;
- }
- static public JDialog CreateEditDialog (XAccessibleContext xContext)
- {
- JDialog aDialog = new TextEditDialog (
- xContext,
- "Edit text:",
- "edit");
- if (aDialog != null)
- aDialog.show();
- return aDialog;
- }
- static public JDialog CreateFormatDialog (XAccessibleContext xContext)
- {
- JDialog aDialog = new TextAttributeDialog (xContext);
- if (aDialog != null)
- aDialog.show();
- return aDialog;
- }
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextEditDialog.java b/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextEditDialog.java
deleted file mode 100644
index 9d5aec464..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/text/TextEditDialog.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.awb.view.text;
-
-import javax.swing.text.JTextComponent;
-
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleEditableText;
-import com.sun.star.lang.IndexOutOfBoundsException;
-import com.sun.star.uno.UnoRuntime;
-
-
-class TextEditDialog
- extends TextActionDialog
-{
- public TextEditDialog (
- XAccessibleContext xContext,
- String sExplanation,
- String sTitle )
- {
- super (xContext, sExplanation, sTitle);
- }
-
- protected void Layout()
- {
- super.Layout();
- maText.setEditable (true);
- }
-
-
- /** edit the text */
- boolean EditableTextAction (XAccessibleEditableText xText)
- {
- return UpdateText (xText, maText.getText());
- }
-
-
- /** update the text */
- boolean UpdateText (XAccessibleEditableText xText, String sNew)
- {
- boolean bResult = false;
-
- String sOld = xText.getText();
-
- // false alarm? Early out if no change was done!
- if ( ! sOld.equals (sNew))
- {
-
- // Get the minimum length of both strings.
- int nMinLength = sOld.length();
- if (sNew.length() < nMinLength)
- nMinLength = sNew.length();
-
- // Count equal characters from front and end.
- int nFront = 0;
- while ((nFront < nMinLength) &&
- (sNew.charAt(nFront) == sOld.charAt(nFront)))
- nFront++;
- int nBack = 0;
- while ((nBack < nMinLength) &&
- (sNew.charAt(sNew.length()-nBack-1) ==
- sOld.charAt(sOld.length()-nBack-1) ))
- nBack++;
- if (nFront + nBack > nMinLength)
- nBack = nMinLength - nFront;
-
- // so... the first nFront and the last nBack characters are the
- // same. Change the others!
- String sDel = sOld.substring (nFront, sOld.length() - nBack);
- String sIns = sNew.substring (nFront, sNew.length() - nBack);
-
- System.out.println ("edit text: " +
- sOld.substring(0, nFront) +
- " [ " + sDel + " -> " + sIns + " ] " +
- sOld.substring(sOld.length() - nBack));
-
- try
- {
- // edit the text, and use
- // (set|insert|delete|replace)Text as needed
- if( nFront+nBack == 0 )
- bResult = xText.setText( sIns );
- else if( sDel.length() == 0 )
- bResult = xText.insertText( sIns, nFront );
- else if( sIns.length() == 0 )
- bResult = xText.deleteText( nFront, sOld.length()-nBack );
- else
- bResult = xText.replaceText(nFront, sOld.length()-nBack,sIns);
- }
- catch( IndexOutOfBoundsException aException)
- {
- }
- }
-
- return bResult;
- }
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/text/makefile.common b/accessibility/workben/org/openoffice/accessibility/awb/view/text/makefile.common
deleted file mode 100644
index 7d9a5e8fe..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/text/makefile.common
+++ /dev/null
@@ -1,34 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-JARFILES = jurt.jar unoil.jar ridl.jar
-JAVAFILES = \
- CaretSpinnerModel.java \
- TextActionDialog.java \
- TextEditDialog.java \
- TextAttributeDialog.java \
- TextDialogFactory.java
diff --git a/accessibility/workben/org/openoffice/accessibility/awb/view/text/makefile.mk b/accessibility/workben/org/openoffice/accessibility/awb/view/text/makefile.mk
deleted file mode 100644
index 1ec7da266..000000000
--- a/accessibility/workben/org/openoffice/accessibility/awb/view/text/makefile.mk
+++ /dev/null
@@ -1,51 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJNAME = awb
-PRJ = ..$/..$/..$/..$/..$/..$/..
-TARGET = awb_view_text
-PACKAGE = org$/openoffice$/accessibility$/awb$/view$/text
-
-USE_JAVAVER:=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-.IF "$(JAVAVER:s/.//)" >= "140"
-
-.INCLUDE : makefile.common
-
-JAVACLASSFILES= $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:b).class)
-
-.ENDIF
-
-# --- Targets ------------------------------------------------------
-
-
-.INCLUDE : target.mk
-
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/AccessibleEventMulticaster.java b/accessibility/workben/org/openoffice/accessibility/misc/AccessibleEventMulticaster.java
deleted file mode 100644
index 74780b971..000000000
--- a/accessibility/workben/org/openoffice/accessibility/misc/AccessibleEventMulticaster.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*************************************************************************
- *
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
- *
- * Copyright 2000, 2010 Oracle and/or its affiliates.
- *
- * OpenOffice.org - a multi-platform office productivity suite
- *
- * This file is part of OpenOffice.org.
- *
- * OpenOffice.org is free software: you can redistribute it and/or modify
- * it under the terms of the GNU Lesser General Public License version 3
- * only, as published by the Free Software Foundation.
- *
- * OpenOffice.org is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU Lesser General Public License version 3 for more details
- * (a copy is included in the LICENSE file that accompanied this code).
- *
- * You should have received a copy of the GNU Lesser General Public License
- * version 3 along with OpenOffice.org. If not, see
- * <http://www.openoffice.org/license.html>
- * for a copy of the LGPLv3 License.
- *
- ************************************************************************/
-
-package org.openoffice.accessibility.misc;
-
-import com.sun.star.lang.EventObject;
-
-import com.sun.star.accessibility.AccessibleEventObject;
-import com.sun.star.accessibility.XAccessibleEventBroadcaster;
-import com.sun.star.accessibility.XAccessibleEventListener;
-
-/**
- *
- */
-public class AccessibleEventMulticaster implements XAccessibleEventListener {
-
- private final XAccessibleEventListener a;
- private final XAccessibleEventListener b;
-
- /** Creates a new instance of AccessibleEventMulticaster */
- protected AccessibleEventMulticaster(XAccessibleEventListener a,
- XAccessibleEventListener b) {
- this.a = a;
- this.b = b;
- }
-
- protected XAccessibleEventListener remove(XAccessibleEventListener l) {
- if (l == a)
- return b;
- if (l == b)
- return a;
- XAccessibleEventListener a2 = remove(a, l);
- XAccessibleEventListener b2 = remove(b, l);
- if (a2 == a && b2 == b) {
- return this; // not found
- }
- return add(a2, b2);
- }
-
- public void notifyEvent(AccessibleEventObject accessibleEventObject) {
- a.notifyEvent(accessibleEventObject);
- b.notifyEvent(accessibleEventObject);
- }
-
- public void disposing(EventObject eventObject) {
- a.disposing(eventObject);
- b.disposing(eventObject);
- }
-
- public static XAccessibleEventListener add(XAccessibleEventListener a, XAccessibleEventListener b) {
- if (a == null)
- return b;
- if (b == null)
- return a;
- return new AccessibleEventMulticaster(a,b);
- }
-
- public static XAccessibleEventListener remove(XAccessibleEventListener l, XAccessibleEventListener oldl) {
- if (l == oldl || l == null) {
- return null;
- } else if (l instanceof AccessibleEventMulticaster) {
- return ((AccessibleEventMulticaster) l).remove(oldl);
- } else {
- return l;
- }
- }
-
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/Connector.java b/accessibility/workben/org/openoffice/accessibility/misc/Connector.java
deleted file mode 100644
index de188676e..000000000
--- a/accessibility/workben/org/openoffice/accessibility/misc/Connector.java
+++ /dev/null
@@ -1,50 +0,0 @@
-package org.openoffice.accessibility.misc;
-
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.util.Timer;
-import java.util.TimerTask;
-import java.util.Vector;
-
-
-/** Wait for an Office application and connect to it.
-*/
-public class Connector
- extends TimerTask
-{
- final public static long snDelay = 3000;
-
- public Connector ()
- {
- maTimer = new Timer (true);
- maListeners = new Vector();
- run ();
- }
-
- public void AddConnectionListener (ActionListener aListener)
- {
- SimpleOffice aOffice = SimpleOffice.Instance();
- if (aOffice!=null && aOffice.IsConnected())
- aListener.actionPerformed (
- new ActionEvent (aOffice,0,"<connected>"));
- maListeners.add (aListener);
- }
-
- public void run ()
- {
- SimpleOffice aOffice = SimpleOffice.Instance();
- if (aOffice!=null && !aOffice.IsConnected())
- if ( ! aOffice.Connect())
- maTimer.schedule (this, snDelay);
- else
- {
- ActionEvent aEvent = new ActionEvent (aOffice,0,"<connected>");
- for (int i=0; i<maListeners.size(); i++)
- ((ActionListener)maListeners.elementAt(i)).actionPerformed(
- aEvent);
- }
- }
-
- Timer maTimer;
- Vector maListeners;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/InformationWriter.java b/accessibility/workben/org/openoffice/accessibility/misc/InformationWriter.java
deleted file mode 100644
index f6cf042d9..000000000
--- a/accessibility/workben/org/openoffice/accessibility/misc/InformationWriter.java
+++ /dev/null
@@ -1,421 +0,0 @@
-package org.openoffice.accessibility.misc;
-
-import java.lang.Thread;
-import java.io.PrintStream;
-
-import com.sun.star.awt.Rectangle;
-import com.sun.star.awt.XWindow;
-
-import com.sun.star.beans.Property;
-import com.sun.star.beans.PropertyValue;
-import com.sun.star.beans.XPropertySet;
-import com.sun.star.beans.XPropertySetInfo;
-
-import com.sun.star.container.XIndexAccess;
-import com.sun.star.container.XChild;
-import com.sun.star.container.XEnumerationAccess;
-import com.sun.star.container.XEnumeration;
-
-import com.sun.star.frame.XComponentLoader;
-import com.sun.star.frame.XController;
-import com.sun.star.frame.XDesktop;
-import com.sun.star.frame.XFrame;
-import com.sun.star.frame.XTasksSupplier;
-import com.sun.star.frame.XTask;
-
-import com.sun.star.lang.XComponent;
-import com.sun.star.lang.XMultiServiceFactory;
-import com.sun.star.lang.XServiceInfo;
-import com.sun.star.lang.XServiceName;
-import com.sun.star.lang.XTypeProvider;
-
-import com.sun.star.uno.UnoRuntime;
-import com.sun.star.uno.XInterface;
-import com.sun.star.uno.Type;
-
-import com.sun.star.drawing.XDrawView;
-import com.sun.star.drawing.XDrawPage;
-import com.sun.star.drawing.XShapes;
-import com.sun.star.drawing.XShape;
-import com.sun.star.drawing.XShapeDescriptor;
-
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleComponent;
-import com.sun.star.accessibility.XAccessibleRelationSet;
-import com.sun.star.accessibility.XAccessibleStateSet;
-
-public class InformationWriter
-{
- public InformationWriter (PrintStream aOut)
- {
- maOut = aOut;
- }
-
- public void drawPageTest (XInterface xPage)
- {
- try
- {
- printProperty (xPage, "BorderBottom ", "BorderBottom");
- printProperty (xPage, "BorderLeft ", "BorderLeft");
- printProperty (xPage, "BorderRight ", "BorderRight");
- printProperty (xPage, "BorderTop ", "BorderTop");
- printProperty (xPage, "Height ", "Height");
- printProperty (xPage, "Width ", "Width");
- printProperty (xPage, "Number ", "Number");
- }
- catch (Exception e)
- {
- System.out.println ("caught exception while testing draw page:" + e);
- }
- }
-
- public void printProperty (XInterface xObject, String prefix, String name)
- {
- try
- {
- XPropertySet xPropertySet = (XPropertySet) UnoRuntime.queryInterface(
- XPropertySet.class, xObject);
- maOut.println (prefix +
- xPropertySet.getPropertyValue (name));
- }
- catch (Exception e)
- {
- maOut.println ("caught exception while getting property "
- + name + " : " + e);
- }
- }
-
-
-
- public void showShapes (XDrawPage xPage)
- {
- try
- {
- XIndexAccess xShapeList = (XIndexAccess) UnoRuntime.queryInterface(
- XIndexAccess.class, xPage);
-
- maOut.println ("There are " + xShapeList.getCount()
- + " shapes");
- for (int i=0; i<xShapeList.getCount(); i++)
- {
- XShape xShape = (XShape) UnoRuntime.queryInterface(
- XShape.class, xShapeList.getByIndex (i));
-
- XShapeDescriptor xShapeDescriptor =
- (XShapeDescriptor) UnoRuntime.queryInterface(
- XShapeDescriptor.class, xShape);
- String sName = xShapeDescriptor.getShapeType ();
- maOut.println (" shape " + i + " : " + sName);
-
- XPropertySet xPropertySet =
- (XPropertySet) UnoRuntime.queryInterface(
- XPropertySet.class, xShape);
- Integer nZOrder =
- (Integer) xPropertySet.getPropertyValue ("ZOrder");
- maOut.println (" zorder = " + nZOrder);
- }
- }
- catch (Exception e)
- {
- maOut.println ("caught exception in showShapes: " + e);
- }
- }
-
-
-
-
- /** @descr Print all available services of the given object to the
- standard output.
- */
- public void showServices (XInterface xObject)
- {
- try
- {
- maOut.println ("Services:");
- XMultiServiceFactory xMSF = (XMultiServiceFactory) UnoRuntime.queryInterface (
- XMultiServiceFactory.class,
- xObject
- );
- if (xMSF == null)
- maOut.println (" object does not support interface XMultiServiceFactory");
- else
- {
- String[] sServiceNames = xMSF.getAvailableServiceNames ();
- maOut.println (" object can create "
- + sServiceNames.length + " services");
- for (int i=0; i<sServiceNames.length; i++)
- maOut.println (" service " + i + " : " + sServiceNames[i]);
- }
- }
- catch (Exception e)
- {
- maOut.println ("caught exception in showServices : " + e);
- }
- }
-
- /** @descr Print the service and implementation name of the given
- object.
- */
- public void showInfo (XInterface xObject)
- {
- try
- {
- System.out.println ("Info:");
- // Use interface XServiceName to retrieve name of (main) service.
- XServiceName xSN = (XServiceName) UnoRuntime.queryInterface (
- XServiceName.class, xObject);
- if (xSN == null)
- maOut.println (" interface XServiceName not supported");
- else
- {
- maOut.println (" Service name : " + xSN.getServiceName ());
- }
-
- // Use interface XServiceInfo to retrieve information about
- // supported services.
- XServiceInfo xSI = (XServiceInfo) UnoRuntime.queryInterface (
- XServiceInfo.class, xObject);
- if (xSI == null)
- maOut.println (" interface XServiceInfo not supported");
- else
- {
- maOut.println (" Implementation name : "
- + xSI.getImplementationName ());
- }
- }
- catch (Exception e)
- {
- maOut.println ("caught exception in showInfo : " + e);
- }
- }
-
-
-
-
- /** @descr Print information about supported interfaces.
- */
- public void showInterfaces (XInterface xObject)
- {
- try
- {
- maOut.println ("Interfaces:");
- // Use interface XTypeProvider to retrieve a list of supported
- // interfaces.
- XTypeProvider xTP = (XTypeProvider) UnoRuntime.queryInterface (
- XTypeProvider.class, xObject);
- if (xTP == null)
- maOut.println (" interface XTypeProvider not supported");
- else
- {
- Type[] aTypeList = xTP.getTypes ();
- maOut.println (" object supports " + aTypeList.length
- + " interfaces");
- for (int i=0; i<aTypeList.length; i++)
- maOut.println (" " + i + " : "
- + aTypeList[i].getTypeName());
- }
- }
- catch (Exception e)
- {
- maOut.println ("caught exception in showInterfaces : " + e);
- }
- }
-
-
- /** @descr Print information concerning the accessibility of the given
- object.
- */
- public boolean showAccessibility (XInterface xObject, int depth)
- {
- try
- {
- // Create indentation string.
- String sIndent = "";
- while (depth-- > 0)
- sIndent += " ";
-
- // Get XAccessibleContext object if given object does not
- // already support this interface.
- XAccessibleContext xContext
- = (XAccessibleContext) UnoRuntime.queryInterface (
- XAccessibleContext.class, xObject);
- if (xContext == null)
- {
- XAccessible xAccessible
- = (XAccessible) UnoRuntime.queryInterface (
- XAccessible.class, xObject);
- if (xAccessible == null)
- {
- maOut.println (sIndent + "given object " + xObject
- + " is not accessible");
- return false;
- }
- else
- xContext = xAccessible.getAccessibleContext();
- }
-
- // Print information about the accessible context.
- if (xContext != null)
- {
- maOut.println (sIndent + "Name : "
- + xContext.getAccessibleName());
- maOut.println (sIndent + "Description : "
- + xContext.getAccessibleDescription());
- maOut.println (sIndent + "Role : "
- + xContext.getAccessibleRole());
- String sHasParent;
- if (xContext.getAccessibleParent() != null)
- {
- maOut.println (sIndent + "Has parent : yes");
- maOut.println (sIndent + "Parent index : "
- + xContext.getAccessibleIndexInParent());
- }
- else
- maOut.println (sIndent + "Has parent : no");
- maOut.println (sIndent + "Child count : "
- + xContext.getAccessibleChildCount());
- maOut.print (sIndent + "Relation set : ");
- XAccessibleRelationSet xRelationSet
- = xContext.getAccessibleRelationSet();
- if (xRelationSet != null)
- {
- maOut.print (xRelationSet.getRelationCount() + " (");
- for (int i=0; i<xRelationSet.getRelationCount(); i++)
- {
- if (i > 0)
- maOut.print (", ");
- maOut.print (xRelationSet.getRelation(i).toString());
- }
- maOut.println (")");
- }
- else
- maOut.println ("no relation set");
-
- maOut.print (sIndent + "State set : ");
- XAccessibleStateSet xStateSet =
- xContext.getAccessibleStateSet();
- if (xStateSet != null)
- {
- XIndexAccess xStates =
- (XIndexAccess) UnoRuntime.queryInterface (
- XIndexAccess.class, xStateSet);
- maOut.print (xStates.getCount() + " (");
- for (int i=0; i<xStates.getCount(); i++)
- {
- if (i > 0)
- maOut.print (", ");
- maOut.print (xStates.getByIndex(i).toString());
- }
- maOut.println (")");
- }
- else
- maOut.println ("no state set");
-
- showAccessibleComponent (xContext, sIndent);
- }
- else
- maOut.println ("object has no accessible context.");
-
- // showInfo (xContext);
- // showServices (xContext);
- // showInterfaces (xContext);
- }
- catch (Exception e)
- {
- System.out.println ("caught exception in showAccessibility :" + e);
- }
- return true;
- }
-
-
-
-
- /** @descr Print information about the given accessible component.
- */
- public void showAccessibleComponent (XInterface xObject, String sIndent)
- {
- try
- {
- XAccessibleComponent xComponent =
- (XAccessibleComponent) UnoRuntime.queryInterface (
- XAccessibleComponent.class, xObject);
-
- // Print information about the accessible context.
- if (xComponent != null)
- {
- maOut.println (sIndent + "Position : "
- + xComponent.getLocation().X+", "
- + xComponent.getLocation().Y);
- maOut.println (sIndent + "Screen position : "
- + xComponent.getLocationOnScreen().X+", "
- + xComponent.getLocationOnScreen().Y);
- maOut.println (sIndent + "Size : "
- + xComponent.getSize().Width+", "
- + xComponent.getSize().Height);
- }
- }
- catch (Exception e)
- {
- System.out.println (
- "caught exception in showAccessibleComponent : " + e);
- }
- }
-
-
- /** Show a textual representation of the accessibility subtree rooted in
- xRoot.
- */
- public boolean showAccessibilityTree (XAccessible xRoot, int depth)
- {
- try
- {
- if ( ! showAccessibility (xRoot, depth))
- return false;
-
- String sIndent = "";
- for (int i=0; i<depth; i++)
- sIndent += " ";
-
- // Iterate over children and show them.
- XAccessibleContext xContext = xRoot.getAccessibleContext();
- if (xContext != null)
- {
- int n = xContext.getAccessibleChildCount();
- for (int i=0; i<n; i++)
- {
- maOut.println (sIndent + "child " + i + " :");
- showAccessibilityTree (xContext.getAccessibleChild(i),depth+1);
- }
- }
- else
- maOut.println ("Accessible object has no context");
- }
- catch (Exception e)
- {
- System.out.println (
- "caught exception in showAccessibleTree : " + e);
- return false;
- }
-
- return true;
- }
-
- public void showProperties (XInterface xObject)
- {
- XPropertySet xSet = (XPropertySet) UnoRuntime.queryInterface (
- XPropertySet.class, xObject);
- if (xSet == null)
- maOut.println ("object does not support XPropertySet");
- else
- {
- XPropertySetInfo xInfo = xSet.getPropertySetInfo ();
- Property[] aProperties = xInfo.getProperties ();
- int n = aProperties.length;
- for (int i=0; i<n; i++)
- maOut.println (i + " : " + aProperties[i].Name +", " + aProperties[i].Type);
- }
- }
-
- private PrintStream maOut;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/Makefile b/accessibility/workben/org/openoffice/accessibility/misc/Makefile
deleted file mode 100644
index ce9091d5d..000000000
--- a/accessibility/workben/org/openoffice/accessibility/misc/Makefile
+++ /dev/null
@@ -1,38 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-all : package
-
-ROOT=../../../..
-PACKAGE = org.openoffice.accessibility.misc
-SUBDIRS =
-
-include makefile.common
-
-include $(ROOT)/makefile.in
-
-package: subdirs $(CLASS_FILES)
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/MessageArea.java b/accessibility/workben/org/openoffice/accessibility/misc/MessageArea.java
deleted file mode 100644
index 1060d91eb..000000000
--- a/accessibility/workben/org/openoffice/accessibility/misc/MessageArea.java
+++ /dev/null
@@ -1,125 +0,0 @@
-package org.openoffice.accessibility.misc;
-
-import java.awt.Font;
-import java.awt.Rectangle;
-import java.awt.Color;
-import java.awt.Graphics;
-import javax.swing.JScrollPane;
-import javax.swing.JTextArea;
-import javax.swing.JScrollBar;
-
-
-
-/** A message area displays text in a scrollable text widget. It is a
- singleton. Other objects can access it directly to display messages.
-*/
-public class MessageArea
- extends JScrollPane
-{
- public static synchronized MessageArea Instance ()
- {
- if (saInstance == null)
- saInstance = new MessageArea ();
- return saInstance;
- }
-
-
-
-
- /** Create a new message area. This method is private because the class is
- a singleton and may therefore not be instanciated from the outside.
- */
- private MessageArea ()
- {
- maText = new JTextArea();
- maText.setBackground (new Color (255,250,240));
- maText.setFont (new Font ("Helvetica", Font.PLAIN, 9));
- setViewportView (maText);
- setVerticalScrollBarPolicy (JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
- setHorizontalScrollBarPolicy (JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
-
- printMessage (
- "class path is " + System.getProperty ("java.class.path") + "\n");
- }
-
-
-
-
- /** Show the given string at the end of the message area and scroll to make
- it visible.
- */
- public static synchronized void print (String aMessage)
- {
- print (0, aMessage);
- }
-
-
-
-
- /** Show the given string at the end of the message area and scroll to make
- it visible. Indent the string as requested.
- */
- public static synchronized void print (int nIndentation, String aMessage)
- {
- while (nIndentation-- > 0)
- aMessage = " " + aMessage;
- Instance().printMessage(aMessage);
- }
-
-
-
-
- /** Show the given string at the end of the message area and scroll to make
- it visible.
- */
- public static void println (String aMessage)
- {
- println (0, aMessage);
- }
-
-
-
-
- /** Show the given string at the end of the message area and scroll to make
- it visible.
- */
- public static void println (int nIndentation, String aMessage)
- {
- print (nIndentation, aMessage+"\n");
- }
-
-
-
-
- public void paintComponent (Graphics g)
- {
- synchronized (g)
- {
- JScrollBar sb = getVerticalScrollBar();
- if (sb != null)
- {
- int nScrollBarValue = sb.getMaximum() - sb.getVisibleAmount() - 1;
- sb.setValue (nScrollBarValue);
- }
- super.paintComponent (g);
- }
- }
-
-
-
-
- /** Append the given string to the end of the text and scroll so that it
- becomes visible. This is an internal method. Use one of the static
- and public ones.
- */
- private synchronized void printMessage (String aMessage)
- {
- maText.append (aMessage);
- }
-
-
-
-
- private static MessageArea saInstance = null;
- private JTextArea maText;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/NameProvider.java b/accessibility/workben/org/openoffice/accessibility/misc/NameProvider.java
deleted file mode 100644
index db8d2b0ab..000000000
--- a/accessibility/workben/org/openoffice/accessibility/misc/NameProvider.java
+++ /dev/null
@@ -1,263 +0,0 @@
-package org.openoffice.accessibility.misc;
-
-import java.util.HashMap;
-import com.sun.star.accessibility.AccessibleStateType;
-import com.sun.star.accessibility.AccessibleEventId;
-import com.sun.star.accessibility.AccessibleRole;
-import com.sun.star.accessibility.AccessibleRelationType;
-
-
-/** Provide names for several accessibility constants groups.
-*/
-public class NameProvider
-{
- /** Return the name of the specified state.
- @param nStateId
- Id of the state for which to return its name. This is one of
- the ids listed in the <type>AccessibleStateType</const>
- constants group.
- @return
- Returns the name of the specified state. When an invalid or
- unknown state id is given then a special string is returned that
- says that the state does not exist.
- */
- public static String getStateName (int nStateId)
- {
- String sStateName = (String)maStateMap.get (new Integer(nStateId));
- if (sStateName == null)
- sStateName = new String ("<unknown state " + nStateId + ">");
- return sStateName;
- }
-
-
- /** Return the name of the specified event.
- @param nEventId
- Id of the event type for which to return its name. This is one
- of the ids listed in the <type>AccessibleEventId</const>
- constants group.
- @return
- Returns the name of the specified event type or an empty string
- if an invalid / unknown event id was given.
- */
- public static String getEventName (int nEventId)
- {
- return (String)maEventMap.get (new Integer(nEventId));
- }
-
-
- /** Return the name of the specified role.
- @param nRole
- Id of the role for which to return its name. This is one of
- the ids listed in the <type>AccessibleRole</const>
- constants group.
- @return
- Returns the name of the specified role or an empty string if an
- invalid / unknown role id was given.
- */
- public static String getRoleName (int nRole)
- {
- return (String)maRoleMap.get (new Integer(nRole));
- }
-
-
- /** Return the name of the specified relation.
- @param nRelation
- Id of the relation for which to return its name. This is one of
- the ids listed in the <type>AccessibleRelationType</const>
- constants group.
- @return
- Returns the name of the specified relation type or an empty
- string if an invalid / unknown role id was given.
- */
- public static String getRelationName (int nRelation)
- {
- return (String)maRelationMap.get (new Integer(nRelation));
- }
-
-
- private static HashMap maStateMap = new HashMap();
- private static HashMap maEventMap = new HashMap();
- private static HashMap maRoleMap = new HashMap();
- private static HashMap maRelationMap = new HashMap();
-
- static {
- maStateMap.put (new Integer (AccessibleStateType.INVALID), "INVALID");
- maStateMap.put (new Integer (AccessibleStateType.ACTIVE), "ACTIVE");
- maStateMap.put (new Integer (AccessibleStateType.ARMED), "ARMED");
- maStateMap.put (new Integer (AccessibleStateType.BUSY), "BUSY");
- maStateMap.put (new Integer (AccessibleStateType.CHECKED), "CHECKED");
- // maStateMap.put (new Integer (AccessibleStateType.COLLAPSED), "COLLAPSED");
- maStateMap.put (new Integer (AccessibleStateType.DEFUNC), "DEFUNC");
- maStateMap.put (new Integer (AccessibleStateType.EDITABLE), "EDITABLE");
- maStateMap.put (new Integer (AccessibleStateType.ENABLED), "ENABLED");
- maStateMap.put (new Integer (AccessibleStateType.EXPANDABLE), "EXPANDABLE");
- maStateMap.put (new Integer (AccessibleStateType.EXPANDED), "EXPANDED");
- maStateMap.put (new Integer (AccessibleStateType.FOCUSABLE), "FOCUSABLE");
- maStateMap.put (new Integer (AccessibleStateType.FOCUSED), "FOCUSED");
- maStateMap.put (new Integer (AccessibleStateType.HORIZONTAL), "HORIZONTAL");
- maStateMap.put (new Integer (AccessibleStateType.ICONIFIED), "ICONIFIED");
- maStateMap.put (new Integer (AccessibleStateType.MODAL), "MODAL");
- maStateMap.put (new Integer (AccessibleStateType.MULTI_LINE), "MULTI_LINE");
- maStateMap.put (new Integer (AccessibleStateType.MULTI_SELECTABLE), "MULTI_SELECTABLE");
- maStateMap.put (new Integer (AccessibleStateType.OPAQUE), "OPAQUE");
- maStateMap.put (new Integer (AccessibleStateType.PRESSED), "PRESSED");
- maStateMap.put (new Integer (AccessibleStateType.RESIZABLE), "RESIZABLE");
- maStateMap.put (new Integer (AccessibleStateType.SELECTABLE), "SELECTABLE");
- maStateMap.put (new Integer (AccessibleStateType.SELECTED), "SELECTED");
- maStateMap.put (new Integer (AccessibleStateType.SENSITIVE), "SENSITIVE");
- maStateMap.put (new Integer (AccessibleStateType.SHOWING), "SHOWING");
- maStateMap.put (new Integer (AccessibleStateType.SINGLE_LINE), "SINGLE_LINE");
- maStateMap.put (new Integer (AccessibleStateType.STALE), "STALE");
- maStateMap.put (new Integer (AccessibleStateType.TRANSIENT), "TRANSIENT");
- maStateMap.put (new Integer (AccessibleStateType.VERTICAL), "VERTICAL");
- maStateMap.put (new Integer (AccessibleStateType.VISIBLE), "VISIBLE");
- maStateMap.put (new Integer (AccessibleStateType.MANAGES_DESCENDANTS),
- "MANAGES_DESCENDANTS");
- //maStateMap.put (new Integer (AccessibleStateType.INCONSISTENT),"INCONSISTENT");
-
-
- maEventMap.put (new Integer (0),
- "[UNKNOWN]");
- maEventMap.put (new Integer (AccessibleEventId.NAME_CHANGED),
- "NAME_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.DESCRIPTION_CHANGED),
- "DESCRIPTION_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.ACTION_CHANGED),
- "ACTION_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.STATE_CHANGED),
- "STATE_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.ACTIVE_DESCENDANT_CHANGED),
- "ACTIVE_DESCENDANT_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.BOUNDRECT_CHANGED),
- "BOUNDRECT_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.CHILD),
- "CHILD");
- maEventMap.put (new Integer (AccessibleEventId.INVALIDATE_ALL_CHILDREN),
- "INVALIDATE_ALL_CHILDREN");
- maEventMap.put (new Integer (AccessibleEventId.SELECTION_CHANGED),
- "SELECTION_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.VISIBLE_DATA_CHANGED),
- "VISIBLE_DATA_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.VALUE_CHANGED),
- "VALUE_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.CONTENT_FLOWS_FROM_RELATION_CHANGED),
- "CONTENT_FLOWS_FROM_RELATION_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.CONTENT_FLOWS_TO_RELATION_CHANGED),
- "CONTENT_FLOWS_TO_RELATION_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.CONTROLLED_BY_RELATION_CHANGED),
- "CONTROLLED_BY_RELATION_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.CONTROLLER_FOR_RELATION_CHANGED),
- "CONTROLLER_FOR_RELATION_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.LABEL_FOR_RELATION_CHANGED),
- "LABEL_FOR_RELATION_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.LABELED_BY_RELATION_CHANGED),
- "LABELED_BY_RELATION_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.MEMBER_OF_RELATION_CHANGED),
- "MEMBER_OF_RELATION_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.SUB_WINDOW_OF_RELATION_CHANGED),
- "SUB_WINDOW_OF_RELATION_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.CARET_CHANGED),
- "CARET_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.TEXT_SELECTION_CHANGED),
- "TEXT_SELECTION_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.TEXT_CHANGED),
- "TEXT_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.TEXT_ATTRIBUTE_CHANGED),
- "TEXT_ATTRIBUTE_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.HYPERTEXT_CHANGED),
- "HYPERTEXT_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.TABLE_CAPTION_CHANGED),
- "TABLE_CAPTION_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.TABLE_COLUMN_DESCRIPTION_CHANGED),
- "TABLE_COLUMN_DESCRIPTION_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.TABLE_COLUMN_HEADER_CHANGED),
- "TABLE_COLUMN_HEADER_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.TABLE_MODEL_CHANGED),
- "TABLE_MODEL_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.TABLE_ROW_DESCRIPTION_CHANGED),
- "TABLE_ROW_DESCRIPTION_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.TABLE_ROW_HEADER_CHANGED),
- "TABLE_ROW_HEADER_CHANGED");
- maEventMap.put (new Integer (AccessibleEventId.TABLE_SUMMARY_CHANGED),
- "TABLE_SUMMARY_CHANGED");
-
- maRoleMap.put (new Integer(AccessibleRole.UNKNOWN), "UNKNOWN");
- maRoleMap.put (new Integer (AccessibleRole.UNKNOWN), "UNKNOWN");
- maRoleMap.put (new Integer (AccessibleRole.ALERT), "ALERT");
- maRoleMap.put (new Integer (AccessibleRole.COLUMN_HEADER), "COLUMN_HEADER");
- maRoleMap.put (new Integer (AccessibleRole.CANVAS), "CANVAS");
- maRoleMap.put (new Integer (AccessibleRole.CHECK_BOX), "CHECK_BOX");
- maRoleMap.put (new Integer (AccessibleRole.CHECK_MENU_ITEM), "CHECK_MENU_ITEM");
- maRoleMap.put (new Integer (AccessibleRole.COLOR_CHOOSER), "COLOR_CHOOSER");
- maRoleMap.put (new Integer (AccessibleRole.COMBO_BOX), "COMBO_BOX");
- maRoleMap.put (new Integer (AccessibleRole.DESKTOP_ICON), "DESKTOP_ICON");
- maRoleMap.put (new Integer (AccessibleRole.DESKTOP_PANE), "DESKTOP_PANE");
- maRoleMap.put (new Integer (AccessibleRole.DIRECTORY_PANE), "DIRECTORY_PANE");
- maRoleMap.put (new Integer (AccessibleRole.DIALOG), "DIALOG");
- maRoleMap.put (new Integer (AccessibleRole.DOCUMENT), "DOCUMENT");
- maRoleMap.put (new Integer (AccessibleRole.EMBEDDED_OBJECT), "EMBEDDED_OBJECT");
- maRoleMap.put (new Integer (AccessibleRole.END_NOTE), "END_NOTE");
- maRoleMap.put (new Integer (AccessibleRole.FILE_CHOOSER), "FILE_CHOOSER");
- maRoleMap.put (new Integer (AccessibleRole.FILLER), "FILLER");
- maRoleMap.put (new Integer (AccessibleRole.FONT_CHOOSER), "FONT_CHOOSER");
- maRoleMap.put (new Integer (AccessibleRole.FOOTER), "FOOTER");
- maRoleMap.put (new Integer (AccessibleRole.FOOTNOTE), "FOOTNOTE");
- maRoleMap.put (new Integer (AccessibleRole.FRAME), "FRAME");
- maRoleMap.put (new Integer (AccessibleRole.GLASS_PANE), "GLASS_PANE");
- maRoleMap.put (new Integer (AccessibleRole.GRAPHIC), "GRAPHIC");
- maRoleMap.put (new Integer (AccessibleRole.GROUP_BOX), "GROUP_BOX");
- maRoleMap.put (new Integer (AccessibleRole.HEADER), "HEADER");
- maRoleMap.put (new Integer (AccessibleRole.HEADING), "HEADING");
- maRoleMap.put (new Integer (AccessibleRole.HYPER_LINK), "HYPER_LINK");
- maRoleMap.put (new Integer (AccessibleRole.ICON), "ICON");
- maRoleMap.put (new Integer (AccessibleRole.INTERNAL_FRAME), "INTERNAL_FRAME");
- maRoleMap.put (new Integer (AccessibleRole.LABEL), "LABEL");
- maRoleMap.put (new Integer (AccessibleRole.LAYERED_PANE), "LAYERED_PANE");
- maRoleMap.put (new Integer (AccessibleRole.LIST), "LIST");
- maRoleMap.put (new Integer (AccessibleRole.LIST_ITEM), "LIST_ITEM");
- maRoleMap.put (new Integer (AccessibleRole.MENU), "MENU");
- maRoleMap.put (new Integer (AccessibleRole.MENU_BAR), "MENU_BAR");
- maRoleMap.put (new Integer (AccessibleRole.MENU_ITEM), "MENU_ITEM");
- maRoleMap.put (new Integer (AccessibleRole.OPTION_PANE), "OPTION_PANE");
- maRoleMap.put (new Integer (AccessibleRole.PAGE_TAB), "PAGE_TAB");
- maRoleMap.put (new Integer (AccessibleRole.PAGE_TAB_LIST), "PAGE_TAB_LIST");
- maRoleMap.put (new Integer (AccessibleRole.PANEL), "PANEL");
- maRoleMap.put (new Integer (AccessibleRole.PARAGRAPH), "PARAGRAPH");
- maRoleMap.put (new Integer (AccessibleRole.PASSWORD_TEXT), "PASSWORD_TEXT");
- maRoleMap.put (new Integer (AccessibleRole.POPUP_MENU), "POPUP_MENU");
- maRoleMap.put (new Integer (AccessibleRole.PUSH_BUTTON), "PUSH_BUTTON");
- maRoleMap.put (new Integer (AccessibleRole.PROGRESS_BAR), "PROGRESS_BAR");
- maRoleMap.put (new Integer (AccessibleRole.RADIO_BUTTON), "RADIO_BUTTON");
- maRoleMap.put (new Integer (AccessibleRole.RADIO_MENU_ITEM), "RADIO_MENU_ITEM");
- maRoleMap.put (new Integer (AccessibleRole.ROW_HEADER), "ROW_HEADER");
- maRoleMap.put (new Integer (AccessibleRole.ROOT_PANE), "ROOT_PANE");
- maRoleMap.put (new Integer (AccessibleRole.SCROLL_BAR), "SCROLL_BAR");
- maRoleMap.put (new Integer (AccessibleRole.SCROLL_PANE), "SCROLL_PANE");
- maRoleMap.put (new Integer (AccessibleRole.SHAPE), "SHAPE");
- maRoleMap.put (new Integer (AccessibleRole.SEPARATOR), "SEPARATOR");
- maRoleMap.put (new Integer (AccessibleRole.SLIDER), "SLIDER");
- maRoleMap.put (new Integer (AccessibleRole.SPIN_BOX), "SPIN_BOX");
- maRoleMap.put (new Integer (AccessibleRole.SPLIT_PANE), "SPLIT_PANE");
- maRoleMap.put (new Integer (AccessibleRole.STATUS_BAR), "STATUS_BAR");
- maRoleMap.put (new Integer (AccessibleRole.TABLE), "TABLE");
- maRoleMap.put (new Integer (AccessibleRole.TABLE_CELL), "TABLE_CELL");
- maRoleMap.put (new Integer (AccessibleRole.TEXT), "TEXT");
- maRoleMap.put (new Integer (AccessibleRole.TEXT_FRAME), "TEXT_FRAME");
- maRoleMap.put (new Integer (AccessibleRole.TOGGLE_BUTTON), "TOGGLE_BUTTON");
- maRoleMap.put (new Integer (AccessibleRole.TOOL_BAR), "TOOL_BAR");
- maRoleMap.put (new Integer (AccessibleRole.TOOL_TIP), "TOOL_TIP");
- maRoleMap.put (new Integer (AccessibleRole.TREE), "TREE");
- maRoleMap.put (new Integer (AccessibleRole.VIEW_PORT), "VIEW_PORT");
- maRoleMap.put (new Integer (AccessibleRole.WINDOW), "WINDOW");
-
- maRelationMap.put (new Integer (AccessibleRelationType.INVALID), "INVALID");
- maRelationMap.put (new Integer (AccessibleRelationType.CONTENT_FLOWS_FROM), "CONTENT_FLOWS_FROM");
- maRelationMap.put (new Integer (AccessibleRelationType.CONTENT_FLOWS_TO), "CONTENT_FLOWS_TO");
- maRelationMap.put (new Integer (AccessibleRelationType.CONTROLLED_BY), "CONTROLLED_BY");
- maRelationMap.put (new Integer (AccessibleRelationType.CONTROLLER_FOR), "CONTROLLER_FOR");
- maRelationMap.put (new Integer (AccessibleRelationType.LABEL_FOR), "LABEL_FOR");
- maRelationMap.put (new Integer (AccessibleRelationType.LABELED_BY), "LABELED_BY");
- maRelationMap.put (new Integer (AccessibleRelationType.MEMBER_OF), "MEMBER_OF");
- maRelationMap.put (new Integer (AccessibleRelationType.SUB_WINDOW_OF), "SUB_WINDOW_OF");
- }
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/OfficeConnection.java b/accessibility/workben/org/openoffice/accessibility/misc/OfficeConnection.java
deleted file mode 100644
index 03e086f1d..000000000
--- a/accessibility/workben/org/openoffice/accessibility/misc/OfficeConnection.java
+++ /dev/null
@@ -1,169 +0,0 @@
-package org.openoffice.accessibility.misc;
-
-import java.awt.event.ActionEvent;
-import java.awt.event.ActionListener;
-import java.io.PrintStream;
-import java.util.Timer;
-import java.util.TimerTask;
-import java.util.Vector;
-
-import com.sun.star.uno.UnoRuntime;
-import com.sun.star.bridge.XUnoUrlResolver;
-import com.sun.star.lang.XMultiServiceFactory;
-import com.sun.star.comp.helper.Bootstrap;
-
-/** This class establishes a connection to a StarOffice application.
- */
-public class OfficeConnection
- extends TimerTask
-{
- final public static long snDelay = 3000;
-
- public static synchronized OfficeConnection Instance ()
- {
- if (saInstance == null)
- saInstance = new OfficeConnection ();
- return saInstance;
- }
-
-
-
-
- static public void SetPipeName (String sPipeName)
- {
- ssDefaultPipeName = sPipeName;
- }
-
-
-
-
- public void AddConnectionListener (ActionListener aListener)
- {
- SimpleOffice aOffice = SimpleOffice.Instance();
- if (IsValid())
- aListener.actionPerformed (
- new ActionEvent (aOffice,0,"<connected>"));
- maListeners.add (aListener);
- }
-
-
-
- /** @descr Return the service manager that represents the connected
- StarOffice application
- */
- public XMultiServiceFactory GetServiceManager ()
- {
- return maServiceManager;
- }
-
-
-
-
- /** Return a flag that indicates if the constructor has been able to
- establish a valid connection.
- */
- public boolean IsValid ()
- {
- return (maServiceManager != null);
- }
-
-
-
-
- /** Connect to a already running StarOffice application that has
- been started with a command line argument like
- "-accept=pipe,name=<username>;urp;"
- */
- private boolean Connect ()
- {
- mbInitialized = true;
- // Set up connection string.
- String sConnectString = "uno:pipe,name=" + msPipeName
- + ";urp;StarOffice.ServiceManager";
-
- // connect to a running office and get the ServiceManager
- try
- {
- // Create a URL Resolver.
- XMultiServiceFactory aLocalServiceManager =
- Bootstrap.createSimpleServiceManager();
- XUnoUrlResolver aURLResolver =
- (XUnoUrlResolver) UnoRuntime.queryInterface (
- XUnoUrlResolver.class,
- aLocalServiceManager.createInstance (
- "com.sun.star.bridge.UnoUrlResolver")
- );
-
- maServiceManager =
- (XMultiServiceFactory) UnoRuntime.queryInterface (
- XMultiServiceFactory.class,
- aURLResolver.resolve (sConnectString)
- );
- }
-
- catch (Exception e)
- {
- if (maOut != null)
- {
- maOut.println ("Could not connect with "
- + sConnectString + " : " + e);
- maOut.println ("Please start OpenOffice/StarOffice with "
- + "\"-accept=pipe,name=" + msPipeName + ";urp;\"");
- }
- }
-
- return maServiceManager != null;
- }
-
-
- public void run ()
- {
- if ( ! IsValid())
- {
- MessageArea.println ("trying to connect");
- if (Connect())
- {
- // Stop the timer.
- cancel ();
-
- ActionEvent aEvent = new ActionEvent (this,0,"<connected>");
- for (int i=0; i<maListeners.size(); i++)
- ((ActionListener)maListeners.elementAt(i)).actionPerformed(aEvent);
- }
- }
- }
-
- private OfficeConnection ()
- {
- this (null);
- }
-
-
- private OfficeConnection (PrintStream aOut)
- {
- msPipeName = ssDefaultPipeName;
- maOut = aOut;
- maListeners = new Vector();
- maServiceManager = null;
-
- maTimer = new Timer (true);
- maTimer.schedule (this, 0, snDelay);
- }
-
-
- private static OfficeConnection saInstance = null;
- private static String ssDefaultPipeName = System.getenv( "USER" );
-
- private XMultiServiceFactory maServiceManager;
- String msPipeName;
-
- /** A value of true just indicates that it has been tried to establish a connection,
- not that that has been successfull.
- */
- private boolean mbInitialized = false;
-
- /// Stream used to print messages.
- private PrintStream maOut;
- private Timer maTimer;
- private Vector maListeners;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/Options.java b/accessibility/workben/org/openoffice/accessibility/misc/Options.java
deleted file mode 100644
index a40031156..000000000
--- a/accessibility/workben/org/openoffice/accessibility/misc/Options.java
+++ /dev/null
@@ -1,106 +0,0 @@
-package org.openoffice.accessibility.misc;
-
-import java.io.File;
-import java.io.FileReader;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
-import java.util.Properties;
-
-
-/** Load from and save options into a file.
-*/
-public class Options
- extends Properties
-{
- static public Options Instance ()
- {
- if (saOptions == null)
- saOptions = new Options ();
- return saOptions;
- }
-
- static public void SetString (String sName, String sValue)
- {
- Instance().setProperty (sName, sValue);
- Instance().Save ();
- }
-
- static public String GetString (String sName)
- {
- return Instance().getProperty (sName);
- }
-
- static public void SetBoolean (String sName, boolean bValue)
- {
- Instance().setProperty (sName, Boolean.toString(bValue));
- Instance().Save ();
- }
-
- static public boolean GetBoolean (String sName)
- {
- return Boolean.valueOf(Instance().getProperty (sName)).booleanValue();
- }
-
- static public void SetInteger (String sName, int nValue)
- {
- Instance().setProperty (sName, Integer.toString(nValue));
- Instance().Save ();
- }
-
- static public int GetInteger (String sName, int nDefault)
- {
- String sValue = Instance().getProperty (sName);
- if (sValue == null)
- return nDefault;
- else
- return Integer.parseInt (sValue);
- }
-
- public void Load (String sBaseName)
- {
- try
- {
- load (new FileInputStream (ProvideFile(sBaseName)));
- }
- catch (java.io.IOException e)
- {
- // Ignore a non-existing options file.
- }
- }
-
- public void Save (String sBaseName)
- {
- ProvideFile(sBaseName);
- Save ();
- }
-
- public void Save ()
- {
- if (maFile != null)
- {
- try
- {
- store (new FileOutputStream (maFile), null);
- }
- catch (java.io.IOException e)
- {
- }
- }
- }
-
- private Options ()
- {
- maFile = null;
- }
-
- private File ProvideFile (String sBaseName)
- {
- maFile = new File (
- System.getProperty ("user.home"),
- sBaseName);
- return maFile;
- }
-
- static private Options saOptions = null;
- private File maFile;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/SimpleOffice.java b/accessibility/workben/org/openoffice/accessibility/misc/SimpleOffice.java
deleted file mode 100644
index 343ccfc40..000000000
--- a/accessibility/workben/org/openoffice/accessibility/misc/SimpleOffice.java
+++ /dev/null
@@ -1,413 +0,0 @@
-package org.openoffice.accessibility.misc;
-
-import java.lang.Thread;
-
-import com.sun.star.awt.Rectangle;
-import com.sun.star.awt.XExtendedToolkit;
-import com.sun.star.awt.XWindow;
-
-import com.sun.star.beans.PropertyValue;
-import com.sun.star.beans.XPropertySet;
-
-import com.sun.star.container.XIndexAccess;
-import com.sun.star.container.XChild;
-import com.sun.star.container.XEnumerationAccess;
-import com.sun.star.container.XEnumeration;
-
-import com.sun.star.frame.XComponentLoader;
-import com.sun.star.frame.XController;
-import com.sun.star.frame.XDesktop;
-import com.sun.star.frame.XFrame;
-import com.sun.star.frame.XModel;
-import com.sun.star.frame.XTasksSupplier;
-import com.sun.star.frame.XTask;
-
-import com.sun.star.lang.XComponent;
-import com.sun.star.lang.XMultiServiceFactory;
-import com.sun.star.lang.XServiceInfo;
-import com.sun.star.lang.XServiceName;
-import com.sun.star.lang.XTypeProvider;
-
-import com.sun.star.uno.UnoRuntime;
-import com.sun.star.uno.XInterface;
-import com.sun.star.uno.Type;
-
-import com.sun.star.drawing.XDrawView;
-import com.sun.star.drawing.XDrawPage;
-import com.sun.star.drawing.XShapes;
-import com.sun.star.drawing.XShape;
-import com.sun.star.drawing.XShapeDescriptor;
-
-import com.sun.star.accessibility.XAccessible;
-import com.sun.star.accessibility.XAccessibleContext;
-import com.sun.star.accessibility.XAccessibleComponent;
-import com.sun.star.accessibility.XAccessibleRelationSet;
-import com.sun.star.accessibility.XAccessibleStateSet;
-
-
-/** This singleton class tries to simplify some tasks like loading a document
- or getting various objects.
-*/
-public class SimpleOffice
-{
- synchronized static public SimpleOffice Instance ()
- {
- if (saInstance == null)
- saInstance = new SimpleOffice ();
-
- return saInstance;
- }
-
- synchronized static public void Clear ()
- {
- saInstance = null;
- }
-
-
- public XModel LoadDocument (String URL)
- {
- XModel xModel = null;
- try
- {
- // Load the document from the specified URL.
- XComponentLoader xLoader =
- (XComponentLoader)UnoRuntime.queryInterface(
- XComponentLoader.class, mxDesktop);
-
- XComponent xComponent = xLoader.loadComponentFromURL (
- URL,
- "_blank",
- 0,
- new PropertyValue[0]
- );
-
- xModel = (XModel) UnoRuntime.queryInterface(
- XModel.class, xComponent);
- }
- catch (java.lang.NullPointerException e)
- {
- MessageArea.println ("caught exception while loading "
- + URL + " : " + e);
- }
- catch (Exception e)
- {
- MessageArea.println ("caught exception while loading "
- + URL + " : " + e);
- }
- return xModel;
- }
-
-
-
-
- public XModel GetModel (String name)
- {
- XModel xModel = null;
- try
- {
- XTasksSupplier xTasksSupplier =
- (XTasksSupplier) UnoRuntime.queryInterface(
- XTasksSupplier.class, mxDesktop);
- XEnumerationAccess xEA = xTasksSupplier.getTasks();
- XEnumeration xE = xEA.createEnumeration();
- while (xE.hasMoreElements())
- {
- XTask xTask = (XTask) UnoRuntime.queryInterface(
- XTask.class, xE.nextElement());
- MessageArea.print (xTask.getName());
- }
- }
- catch (Exception e)
- {
- MessageArea.println ("caught exception while getting Model " + name
- + ": " + e);
- }
- return xModel;
- }
-
-
- public XModel GetModel (XDrawView xView)
- {
- XController xController = (XController) UnoRuntime.queryInterface(
- XController.class, xView);
- if (xController != null)
- return xController.getModel();
- else
- {
- MessageArea.println ("can't cast view to controller");
- return null;
- }
- }
-
-
-
-
- public XDesktop GetDesktop ()
- {
- if (mxDesktop != null)
- return mxDesktop;
- try
- {
- // Get the factory of the connected office.
- XMultiServiceFactory xMSF =
- OfficeConnection.Instance().GetServiceManager ();
- if (xMSF == null)
- {
- MessageArea.println ("can't connect to office");
- return null;
- }
- else
- MessageArea.println ("Connected successfully.");
-
- // Create a new desktop.
- mxDesktop = (XDesktop) UnoRuntime.queryInterface(
- XDesktop.class,
- xMSF.createInstance ("com.sun.star.frame.Desktop")
- );
- }
- catch (Exception e)
- {
- MessageArea.println ("caught exception while creating desktop: "
- + e);
- }
-
- return mxDesktop;
- }
-
-
- /** Return a reference to the extended toolkit which is a broadcaster of
- top window, key, and focus events.
- */
- public XExtendedToolkit GetExtendedToolkit ()
- {
- XExtendedToolkit xToolkit = null;
- if (this != null)
- try
- {
- // Get the factory of the connected office.
- XMultiServiceFactory xMSF =
- OfficeConnection.Instance().GetServiceManager ();
- if (xMSF != null)
- {
- xToolkit = (XExtendedToolkit) UnoRuntime.queryInterface(
- XExtendedToolkit.class,
- xMSF.createInstance ("stardiv.Toolkit.VCLXToolkit")
- );
- }
- }
- catch (Exception e)
- {
- MessageArea.println (
- "caught exception while creating extended toolkit: " + e);
- }
-
- return xToolkit;
- }
-
-
-
- static public XAccessible GetAccessibleObject (XInterface xObject)
- {
- XAccessible xAccessible = null;
- try
- {
- xAccessible = (XAccessible) UnoRuntime.queryInterface(
- XAccessible.class, xObject);
- }
- catch (Exception e)
- {
- System.err.println (
- "caught exception while getting accessible object" + e);
- e.printStackTrace (System.err);
- }
- return xAccessible;
- }
-
- static public XAccessibleContext GetAccessibleContext (XInterface xObject)
- {
- XAccessible xAccessible = GetAccessibleObject (xObject);
- if (xAccessible != null)
- return xAccessible.getAccessibleContext();
- else
- return null;
- }
-
- /** Return the root object of the accessibility hierarchy.
- */
- public XAccessible GetAccessibleRoot (XAccessible xAccessible)
- {
- try
- {
- XAccessible xParent = null;
- do
- {
- XAccessibleContext xContext = xAccessible.getAccessibleContext();
- if (xContext != null)
- xParent = xContext.getAccessibleParent();
- if (xParent != null)
- xAccessible = xParent;
- }
- while (xParent != null);
- }
- catch (Exception e)
- {
- MessageArea.println (
- "caught exception while getting accessible root" + e);
- e.printStackTrace();
- }
- return xAccessible;
- }
-
-
-
-
- /** @descr Return the current window associated with the given
- model.
- */
- public XWindow GetCurrentWindow ()
- {
- return GetCurrentWindow ((XModel) UnoRuntime.queryInterface(
- XModel.class, GetDesktop()));
- }
-
-
-
-
-
- public XWindow GetCurrentWindow (XModel xModel)
- {
- XWindow xWindow = null;
- try
- {
- if (xModel == null)
- MessageArea.println ("invalid model (==null)");
- XController xController = xModel.getCurrentController();
- if (xController == null)
- MessageArea.println ("can't get controller from model");
- XFrame xFrame = xController.getFrame();
- if (xFrame == null)
- MessageArea.println ("can't get frame from controller");
- xWindow = xFrame.getComponentWindow ();
- if (xWindow == null)
- MessageArea.println ("can't get window from frame");
- }
- catch (Exception e)
- {
- MessageArea.println ("caught exception while getting current window" + e);
- }
-
- return xWindow;
- }
-
-
- /** @descr Return the current draw page of the given desktop.
- */
- public XDrawPage GetCurrentDrawPage ()
- {
- return GetCurrentDrawPage (
- (XDrawView) UnoRuntime.queryInterface(
- XDrawView.class,
- GetCurrentView()));
- }
-
-
-
-
- public XDrawPage GetCurrentDrawPage (XDrawView xView)
- {
- XDrawPage xPage = null;
- try
- {
- if (xView == null)
- MessageArea.println ("can't get current draw page from null view");
- else
- xPage = xView.getCurrentPage();
- }
- catch (Exception e)
- {
- MessageArea.println ("caught exception while getting current draw page : " + e);
- }
-
- return xPage;
- }
-
-
-
-
- /** @descr Return the current view of the given desktop.
- */
- public XDrawView GetCurrentView ()
- {
- return GetCurrentView (GetDesktop());
- }
-
- public XDrawView GetCurrentView (XDesktop xDesktop)
- {
- if (xDesktop == null)
- MessageArea.println ("can't get desktop to retrieve current view");
-
- XDrawView xView = null;
- try
- {
- XComponent xComponent = xDesktop.getCurrentComponent();
- if (xComponent == null)
- MessageArea.println ("can't get component to retrieve current view");
-
- XFrame xFrame = xDesktop.getCurrentFrame();
- if (xFrame == null)
- MessageArea.println ("can't get frame to retrieve current view");
-
- XController xController = xFrame.getController();
- if (xController == null)
- MessageArea.println ("can't get controller to retrieve current view");
-
- xView = (XDrawView) UnoRuntime.queryInterface(
- XDrawView.class, xController);
- if (xView == null)
- MessageArea.println ("could not cast controller into view");
- }
- catch (Exception e)
- {
- MessageArea.println ("caught exception while getting current view : " + e);
- }
-
- return xView;
- }
-
-
-
-
- // Return the accessible object of the document window.
- public static XAccessible GetAccessibleDocumentWindow (XDrawPage xPage)
- {
- XIndexAccess xShapeList = (XIndexAccess) UnoRuntime.queryInterface(
- XIndexAccess.class, xPage);
- if (xShapeList.getCount() > 0)
- {
- // All shapes return as accessible object the document window's
- // accessible object. This is, of course, a hack and will be
- // removed as soon as the missing infrastructure for obtaining
- // the object directly is implemented.
- XShape xShape = null;
- try{
- xShape = (XShape) UnoRuntime.queryInterface(
- XShape.class, xShapeList.getByIndex (0));
- } catch (Exception e)
- {}
- XAccessible xAccessible = (XAccessible) UnoRuntime.queryInterface (
- XAccessible.class, xShape);
- return xAccessible;
- }
- else
- return null;
- }
-
- private SimpleOffice ()
- {
- }
-
-
-
- private XDesktop mxDesktop;
- private static SimpleOffice saInstance = null;
-}
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/makefile.common b/accessibility/workben/org/openoffice/accessibility/misc/makefile.common
deleted file mode 100644
index 0d7b0a3f5..000000000
--- a/accessibility/workben/org/openoffice/accessibility/misc/makefile.common
+++ /dev/null
@@ -1,36 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-JARFILES = jurt.jar unoil.jar ridl.jar juh.jar java_uno.jar
-JAVAFILES = \
- AccessibleEventMulticaster.java \
- InformationWriter.java \
- MessageArea.java \
- NameProvider.java \
- OfficeConnection.java \
- Options.java \
- SimpleOffice.java
diff --git a/accessibility/workben/org/openoffice/accessibility/misc/makefile.mk b/accessibility/workben/org/openoffice/accessibility/misc/makefile.mk
deleted file mode 100644
index fe56ef406..000000000
--- a/accessibility/workben/org/openoffice/accessibility/misc/makefile.mk
+++ /dev/null
@@ -1,46 +0,0 @@
-#*************************************************************************
-#
-# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
-#
-# Copyright 2000, 2010 Oracle and/or its affiliates.
-#
-# OpenOffice.org - a multi-platform office productivity suite
-#
-# This file is part of OpenOffice.org.
-#
-# OpenOffice.org is free software: you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License version 3
-# only, as published by the Free Software Foundation.
-#
-# OpenOffice.org is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU Lesser General Public License version 3 for more details
-# (a copy is included in the LICENSE file that accompanied this code).
-#
-# You should have received a copy of the GNU Lesser General Public License
-# version 3 along with OpenOffice.org. If not, see
-# <http://www.openoffice.org/license.html>
-# for a copy of the LGPLv3 License.
-#
-#*************************************************************************
-
-PRJNAME = awb
-PRJ = ..$/..$/..$/..$/..
-TARGET = java_misc
-PACKAGE = org$/openoffice$/accessibility$/misc
-
-USE_JAVAVER:=TRUE
-
-# --- Settings -----------------------------------------------------
-
-.INCLUDE : settings.mk
-
-.IF "$(JAVAVER:s/.//)" >= "140"
-.INCLUDE : makefile.common
-JAVACLASSFILES= $(foreach,i,$(JAVAFILES) $(CLASSDIR)$/$(PACKAGE)$/$(i:b).class)
-.ENDIF
-
-# --- Targets ------------------------------------------------------
-
-.INCLUDE : target.mk