a11y: Move AccessibleGridControl* classes to toolkit

Move AccessibleGridControlAccess and all related
classes from vcl to toolkit, as that is where the
grid control that makes use of them is located.

Stop using the AccessibleFactory to create the
AccessibleGridControlAccess, but call the ctor
directly in TableControl_Impl::getAccessible,
now that the class is also in the toolkit module.

Further simplificiation can happen in upcoming
commits.

Change-Id: Ic93796bce96916192da7cfffcf1faf00905373c7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180668
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
This commit is contained in:
Michael Weghorn
2025-01-23 16:26:57 +01:00
parent 6fc13fb03b
commit d040635b8e
20 changed files with 49 additions and 55 deletions

View File

@@ -111,10 +111,6 @@ public:
createAccessibleBrowseBox(const css::uno::Reference<css::accessibility::XAccessible>& _rxParent, createAccessibleBrowseBox(const css::uno::Reference<css::accessibility::XAccessible>& _rxParent,
vcl::IAccessibleTableProvider& _rBrowseBox); vcl::IAccessibleTableProvider& _rBrowseBox);
static rtl::Reference<vcl::table::IAccessibleTableControl> createAccessibleTableControl(
const css::uno::Reference<css::accessibility::XAccessible>& _rxParent,
vcl::table::IAccessibleTable& _rTable);
static css::uno::Reference<css::accessibility::XAccessible> createAccessibleIconChoiceCtrl( static css::uno::Reference<css::accessibility::XAccessible> createAccessibleIconChoiceCtrl(
SvtIconChoiceCtrl& _rIconCtrl, SvtIconChoiceCtrl& _rIconCtrl,
const css::uno::Reference<css::accessibility::XAccessible>& _xParent); const css::uno::Reference<css::accessibility::XAccessible>& _xParent);

View File

@@ -13413,6 +13413,13 @@ toolkit/inc/controls/roadmapentry.hxx
toolkit/inc/controls/stdtabcontroller.hxx toolkit/inc/controls/stdtabcontroller.hxx
toolkit/inc/controls/stdtabcontrollermodel.hxx toolkit/inc/controls/stdtabcontrollermodel.hxx
toolkit/inc/controls/svmedit.hxx toolkit/inc/controls/svmedit.hxx
toolkit/inc/controls/table/AccessibleGridControl.hxx
toolkit/inc/controls/table/AccessibleGridControlBase.hxx
toolkit/inc/controls/table/AccessibleGridControlHeader.hxx
toolkit/inc/controls/table/AccessibleGridControlHeaderCell.hxx
toolkit/inc/controls/table/AccessibleGridControlTable.hxx
toolkit/inc/controls/table/AccessibleGridControlTableBase.hxx
toolkit/inc/controls/table/AccessibleGridControlTableCell.hxx
toolkit/inc/controls/table/defaultinputhandler.hxx toolkit/inc/controls/table/defaultinputhandler.hxx
toolkit/inc/controls/table/gridtablerenderer.hxx toolkit/inc/controls/table/gridtablerenderer.hxx
toolkit/inc/controls/table/tablecontrol.hxx toolkit/inc/controls/table/tablecontrol.hxx
@@ -13478,6 +13485,13 @@ toolkit/source/controls/spinningprogress.cxx
toolkit/source/controls/stdtabcontroller.cxx toolkit/source/controls/stdtabcontroller.cxx
toolkit/source/controls/stdtabcontrollermodel.cxx toolkit/source/controls/stdtabcontrollermodel.cxx
toolkit/source/controls/svtxgridcontrol.cxx toolkit/source/controls/svtxgridcontrol.cxx
toolkit/source/controls/table/AccessibleGridControl.cxx
toolkit/source/controls/table/AccessibleGridControlBase.cxx
toolkit/source/controls/table/AccessibleGridControlHeader.cxx
toolkit/source/controls/table/AccessibleGridControlHeaderCell.cxx
toolkit/source/controls/table/AccessibleGridControlTable.cxx
toolkit/source/controls/table/AccessibleGridControlTableBase.cxx
toolkit/source/controls/table/AccessibleGridControlTableCell.cxx
toolkit/source/controls/table/cellvalueconversion.cxx toolkit/source/controls/table/cellvalueconversion.cxx
toolkit/source/controls/table/cellvalueconversion.hxx toolkit/source/controls/table/cellvalueconversion.hxx
toolkit/source/controls/table/defaultinputhandler.cxx toolkit/source/controls/table/defaultinputhandler.cxx
@@ -14067,13 +14081,6 @@ vcl/inc/accessibility/AccessibleBrowseBoxHeaderCell.hxx
vcl/inc/accessibility/AccessibleBrowseBoxTable.hxx vcl/inc/accessibility/AccessibleBrowseBoxTable.hxx
vcl/inc/accessibility/AccessibleBrowseBoxTableBase.hxx vcl/inc/accessibility/AccessibleBrowseBoxTableBase.hxx
vcl/inc/accessibility/AccessibleBrowseBoxTableCell.hxx vcl/inc/accessibility/AccessibleBrowseBoxTableCell.hxx
vcl/inc/accessibility/AccessibleGridControl.hxx
vcl/inc/accessibility/AccessibleGridControlBase.hxx
vcl/inc/accessibility/AccessibleGridControlHeader.hxx
vcl/inc/accessibility/AccessibleGridControlHeaderCell.hxx
vcl/inc/accessibility/AccessibleGridControlTable.hxx
vcl/inc/accessibility/AccessibleGridControlTableBase.hxx
vcl/inc/accessibility/AccessibleGridControlTableCell.hxx
vcl/inc/accessibility/IComboListBoxHelper.hxx vcl/inc/accessibility/IComboListBoxHelper.hxx
vcl/inc/accessibility/accessiblebrowseboxcell.hxx vcl/inc/accessibility/accessiblebrowseboxcell.hxx
vcl/inc/accessibility/accessibleeditbrowseboxcell.hxx vcl/inc/accessibility/accessibleeditbrowseboxcell.hxx
@@ -14117,13 +14124,6 @@ vcl/source/accessibility/AccessibleBrowseBoxHeaderCell.cxx
vcl/source/accessibility/AccessibleBrowseBoxTable.cxx vcl/source/accessibility/AccessibleBrowseBoxTable.cxx
vcl/source/accessibility/AccessibleBrowseBoxTableBase.cxx vcl/source/accessibility/AccessibleBrowseBoxTableBase.cxx
vcl/source/accessibility/AccessibleBrowseBoxTableCell.cxx vcl/source/accessibility/AccessibleBrowseBoxTableCell.cxx
vcl/source/accessibility/AccessibleGridControl.cxx
vcl/source/accessibility/AccessibleGridControlBase.cxx
vcl/source/accessibility/AccessibleGridControlHeader.cxx
vcl/source/accessibility/AccessibleGridControlHeaderCell.cxx
vcl/source/accessibility/AccessibleGridControlTable.cxx
vcl/source/accessibility/AccessibleGridControlTableBase.cxx
vcl/source/accessibility/AccessibleGridControlTableCell.cxx
vcl/source/accessibility/acc_factory.cxx vcl/source/accessibility/acc_factory.cxx
vcl/source/accessibility/accessiblebrowseboxcell.cxx vcl/source/accessibility/accessiblebrowseboxcell.cxx
vcl/source/accessibility/accessibleeditbrowseboxcell.cxx vcl/source/accessibility/accessibleeditbrowseboxcell.cxx

View File

@@ -97,6 +97,13 @@ $(eval $(call gb_Library_add_exception_objects,tk,\
toolkit/source/controls/tkspinbutton \ toolkit/source/controls/tkspinbutton \
toolkit/source/controls/animatedimages \ toolkit/source/controls/animatedimages \
toolkit/source/controls/spinningprogress \ toolkit/source/controls/spinningprogress \
toolkit/source/controls/table/AccessibleGridControl \
toolkit/source/controls/table/AccessibleGridControlBase \
toolkit/source/controls/table/AccessibleGridControlHeader \
toolkit/source/controls/table/AccessibleGridControlHeaderCell \
toolkit/source/controls/table/AccessibleGridControlTable \
toolkit/source/controls/table/AccessibleGridControlTableBase \
toolkit/source/controls/table/AccessibleGridControlTableCell \
toolkit/source/controls/table/cellvalueconversion \ toolkit/source/controls/table/cellvalueconversion \
toolkit/source/controls/table/defaultinputhandler \ toolkit/source/controls/table/defaultinputhandler \
toolkit/source/controls/table/gridtablerenderer \ toolkit/source/controls/table/gridtablerenderer \

View File

@@ -19,8 +19,9 @@
#pragma once #pragma once
#include <accessibility/AccessibleGridControlBase.hxx> #include "AccessibleGridControlBase.hxx"
#include <accessibility/AccessibleGridControlTable.hxx> #include "AccessibleGridControlTable.hxx"
#include <cppuhelper/weakref.hxx> #include <cppuhelper/weakref.hxx>
#include <rtl/ref.hxx> #include <rtl/ref.hxx>
#include <vcl/accessibletable.hxx> #include <vcl/accessibletable.hxx>

View File

@@ -20,7 +20,7 @@
#pragma once #pragma once
#include <accessibility/AccessibleGridControlTableBase.hxx> #include <controls/table/AccessibleGridControlTableBase.hxx>
namespace accessibility { namespace accessibility {

View File

@@ -18,7 +18,7 @@
*/ */
#pragma once #pragma once
#include <accessibility/AccessibleGridControlTableCell.hxx> #include <controls/table/AccessibleGridControlTableCell.hxx>
namespace accessibility namespace accessibility
{ {

View File

@@ -20,10 +20,11 @@
#pragma once #pragma once
#include <accessibility/AccessibleGridControlTableBase.hxx> #include <controls/table/AccessibleGridControlTableBase.hxx>
#include <controls/table/AccessibleGridControlTableCell.hxx>
#include <cppuhelper/implbase1.hxx> #include <cppuhelper/implbase1.hxx>
#include <com/sun/star/accessibility/XAccessibleSelection.hpp> #include <com/sun/star/accessibility/XAccessibleSelection.hpp>
#include <accessibility/AccessibleGridControlTableCell.hxx>
namespace accessibility { namespace accessibility {

View File

@@ -20,7 +20,7 @@
#pragma once #pragma once
#include <accessibility/AccessibleGridControlBase.hxx> #include <controls/table/AccessibleGridControlBase.hxx>
#include <cppuhelper/implbase1.hxx> #include <cppuhelper/implbase1.hxx>
#include <com/sun/star/accessibility/XAccessibleTable.hpp> #include <com/sun/star/accessibility/XAccessibleTable.hpp>

View File

@@ -18,9 +18,10 @@
*/ */
#pragma once #pragma once
#include <controls/table/AccessibleGridControlBase.hxx>
#include <comphelper/accessibletexthelper.hxx> #include <comphelper/accessibletexthelper.hxx>
#include <cppuhelper/implbase2.hxx> #include <cppuhelper/implbase2.hxx>
#include <accessibility/AccessibleGridControlBase.hxx>
#include <vcl/accessibletable.hxx> #include <vcl/accessibletable.hxx>
#include <com/sun/star/accessibility/AccessibleScrollType.hpp> #include <com/sun/star/accessibility/AccessibleScrollType.hpp>

View File

@@ -17,9 +17,10 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 . * the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/ */
#include <accessibility/AccessibleGridControl.hxx> #include <controls/table/AccessibleGridControl.hxx>
#include <accessibility/AccessibleGridControlTable.hxx> #include <controls/table/AccessibleGridControlTable.hxx>
#include <accessibility/AccessibleGridControlHeader.hxx> #include <controls/table/AccessibleGridControlHeader.hxx>
#include <com/sun/star/accessibility/AccessibleEventId.hpp> #include <com/sun/star/accessibility/AccessibleEventId.hpp>
#include <com/sun/star/accessibility/AccessibleRole.hpp> #include <com/sun/star/accessibility/AccessibleRole.hpp>
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp> #include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
@@ -255,7 +256,7 @@ AccessibleGridControl::implGetFixedChild( sal_Int64 nChildIndex )
rtl::Reference<AccessibleGridControlTable> AccessibleGridControl::createAccessibleTable() rtl::Reference<AccessibleGridControlTable> AccessibleGridControl::createAccessibleTable()
{ {
css::uno::Reference< css::accessibility::XAccessible > xCreator(m_aCreator); css::uno::Reference< css::accessibility::XAccessible > xCreator(m_aCreator);
OSL_ENSURE( xCreator.is(), "accessibility/AccessibleGridControl::createAccessibleTable: my creator died - how this?" ); OSL_ENSURE(xCreator.is(), "AccessibleGridControl::createAccessibleTable: my creator died - how this?");
return new AccessibleGridControlTable( xCreator, m_aTable ); return new AccessibleGridControlTable( xCreator, m_aTable );
} }

View File

@@ -17,7 +17,7 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 . * the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/ */
#include <accessibility/AccessibleGridControlBase.hxx> #include <controls/table/AccessibleGridControlBase.hxx>
#include <utility> #include <utility>
#include <vcl/accessibletable.hxx> #include <vcl/accessibletable.hxx>
#include <vcl/svapp.hxx> #include <vcl/svapp.hxx>

View File

@@ -17,9 +17,10 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 . * the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/ */
#include <controls/table/AccessibleGridControlHeader.hxx>
#include <controls/table/AccessibleGridControlHeaderCell.hxx>
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp> #include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <accessibility/AccessibleGridControlHeader.hxx>
#include <accessibility/AccessibleGridControlHeaderCell.hxx>
#include <vcl/accessibletable.hxx> #include <vcl/accessibletable.hxx>
#include <vcl/svapp.hxx> #include <vcl/svapp.hxx>
#include <vcl/unohelp.hxx> #include <vcl/unohelp.hxx>
@@ -45,7 +46,7 @@ AccessibleGridControlHeader::AccessibleGridControlHeader(
AccessibleGridControlTableBase( rxParent, rTable, eObjType ) AccessibleGridControlTableBase( rxParent, rTable, eObjType )
{ {
OSL_ENSURE( isRowBar() || isColumnBar(), OSL_ENSURE( isRowBar() || isColumnBar(),
"accessibility/AccessibleGridControlHeaderBar - invalid object type" ); "AccessibleGridControlHeaderBar - invalid object type" );
} }
// XAccessibleContext --------------------------------------------------------- // XAccessibleContext ---------------------------------------------------------

View File

@@ -19,7 +19,7 @@
#include <com/sun/star/accessibility/AccessibleStateType.hpp> #include <com/sun/star/accessibility/AccessibleStateType.hpp>
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp> #include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <accessibility/AccessibleGridControlHeaderCell.hxx> #include <controls/table/AccessibleGridControlHeaderCell.hxx>
#include <vcl/accessibletable.hxx> #include <vcl/accessibletable.hxx>
#include <vcl/svapp.hxx> #include <vcl/svapp.hxx>

View File

@@ -21,8 +21,8 @@
#include <com/sun/star/accessibility/AccessibleTableModelChange.hpp> #include <com/sun/star/accessibility/AccessibleTableModelChange.hpp>
#include <com/sun/star/accessibility/AccessibleTableModelChangeType.hpp> #include <com/sun/star/accessibility/AccessibleTableModelChangeType.hpp>
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp> #include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <accessibility/AccessibleGridControlTable.hxx> #include <controls/table/AccessibleGridControlTable.hxx>
#include <accessibility/AccessibleGridControlTableCell.hxx> #include <controls/table/AccessibleGridControlTableCell.hxx>
#include <vcl/accessibletable.hxx> #include <vcl/accessibletable.hxx>
#include <vcl/svapp.hxx> #include <vcl/svapp.hxx>
#include <vcl/unohelp.hxx> #include <vcl/unohelp.hxx>

View File

@@ -19,7 +19,7 @@
#include <com/sun/star/accessibility/AccessibleRole.hpp> #include <com/sun/star/accessibility/AccessibleRole.hpp>
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp> #include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <accessibility/AccessibleGridControlTableBase.hxx> #include <controls/table/AccessibleGridControlTableBase.hxx>
#include <vcl/accessibletable.hxx> #include <vcl/accessibletable.hxx>
#include <vcl/svapp.hxx> #include <vcl/svapp.hxx>
#include <comphelper/sequence.hxx> #include <comphelper/sequence.hxx>

View File

@@ -17,7 +17,7 @@
* the License at http://www.apache.org/licenses/LICENSE-2.0 . * the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/ */
#include <accessibility/AccessibleGridControlTableCell.hxx> #include <controls/table/AccessibleGridControlTableCell.hxx>
#include <vcl/accessibletable.hxx> #include <vcl/accessibletable.hxx>
#include <vcl/svapp.hxx> #include <vcl/svapp.hxx>
#include <vcl/unohelp.hxx> #include <vcl/unohelp.hxx>

View File

@@ -18,6 +18,7 @@
*/ */
#include <controls/table/AccessibleGridControl.hxx>
#include <controls/table/tablecontrol.hxx> #include <controls/table/tablecontrol.hxx>
#include <controls/table/defaultinputhandler.hxx> #include <controls/table/defaultinputhandler.hxx>
#include <controls/table/tablemodel.hxx> #include <controls/table/tablemodel.hxx>
@@ -2379,7 +2380,7 @@ namespace svt::table
Reference< XAccessible > const xAccParent = i_parentWindow.GetAccessible(); Reference< XAccessible > const xAccParent = i_parentWindow.GetAccessible();
if ( xAccParent.is() ) if ( xAccParent.is() )
{ {
m_pAccessibleTable = AccessibleFactory::createAccessibleTableControl( m_pAccessibleTable = new accessibility::AccessibleGridControlAccess(
xAccParent, m_rAntiImpl xAccParent, m_rAntiImpl
); );
} }

View File

@@ -105,13 +105,6 @@ $(eval $(call gb_Library_add_exception_objects,vcl,\
vcl/source/accessibility/AccessibleBrowseBoxTable \ vcl/source/accessibility/AccessibleBrowseBoxTable \
vcl/source/accessibility/AccessibleBrowseBoxTableBase \ vcl/source/accessibility/AccessibleBrowseBoxTableBase \
vcl/source/accessibility/AccessibleBrowseBoxTableCell \ vcl/source/accessibility/AccessibleBrowseBoxTableCell \
vcl/source/accessibility/AccessibleGridControl \
vcl/source/accessibility/AccessibleGridControlBase \
vcl/source/accessibility/AccessibleGridControlHeader \
vcl/source/accessibility/AccessibleGridControlHeaderCell \
vcl/source/accessibility/AccessibleGridControlTable \
vcl/source/accessibility/AccessibleGridControlTableBase \
vcl/source/accessibility/AccessibleGridControlTableCell \
vcl/source/accessibility/AccessibleTextAttributeHelper \ vcl/source/accessibility/AccessibleTextAttributeHelper \
vcl/source/accessibility/acc_factory \ vcl/source/accessibility/acc_factory \
vcl/source/accessibility/accessiblebrowseboxcell \ vcl/source/accessibility/accessiblebrowseboxcell \

View File

@@ -49,7 +49,6 @@
#include <accessibility/AccessibleBrowseBoxTableCell.hxx> #include <accessibility/AccessibleBrowseBoxTableCell.hxx>
#include <accessibility/AccessibleBrowseBoxHeaderCell.hxx> #include <accessibility/AccessibleBrowseBoxHeaderCell.hxx>
#include <accessibility/AccessibleBrowseBoxCheckBoxCell.hxx> #include <accessibility/AccessibleBrowseBoxCheckBoxCell.hxx>
#include <accessibility/AccessibleGridControl.hxx>
#include <accessibility/accessibleeditbrowseboxcell.hxx> #include <accessibility/accessibleeditbrowseboxcell.hxx>
#include <com/sun/star/accessibility/AccessibleRole.hpp> #include <com/sun/star/accessibility/AccessibleRole.hpp>
#include <vcl/toolkit/lstbox.hxx> #include <vcl/toolkit/lstbox.hxx>
@@ -205,13 +204,6 @@ AccessibleFactory::createAccessibleBrowseBox(const Reference<XAccessible>& _rxPa
return new AccessibleBrowseBoxAccess( _rxParent, _rBrowseBox ); return new AccessibleBrowseBoxAccess( _rxParent, _rBrowseBox );
} }
rtl::Reference<IAccessibleTableControl>
AccessibleFactory::createAccessibleTableControl(const Reference<XAccessible>& _rxParent,
IAccessibleTable& _rTable)
{
return new AccessibleGridControlAccess( _rxParent, _rTable );
}
Reference<XAccessible> Reference<XAccessible>
AccessibleFactory::createAccessibleIconChoiceCtrl(SvtIconChoiceCtrl& _rIconCtrl, AccessibleFactory::createAccessibleIconChoiceCtrl(SvtIconChoiceCtrl& _rIconCtrl,
const Reference<XAccessible>& _xParent) const Reference<XAccessible>& _xParent)