[API CHANGE] Drop css::accessibility::XAccessibleStateSet

which is internal API, unused (as far as I can tell) by external
users.
This state is purely a bitset
  (as implemented by utl::AccessibleStateSetHelper)
so we can just return it as a 64-bit value.

This shaves significant time off the performance profiles
of code that loads very complex shapes, because this state
is frequently used, and we no longer need to allocate a return
value on the heap for every call.

Change-Id: Icf1b3bd367c256646ae9015f9127025f59459c2c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136786
Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
This commit is contained in:
Noel Grandin
2022-07-08 10:10:11 +02:00
committed by Noel Grandin
parent 911ac42485
commit 8d8e6c84e5
257 changed files with 1588 additions and 2512 deletions
@@ -29,7 +29,6 @@
#include <cppuhelper/compbase5.hxx>
#include <cppuhelper/implbase1.hxx>
#include <cppuhelper/basemutex.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/awt/XWindow.hpp>
#include <com/sun/star/accessibility/XAccessible.hpp>
@@ -43,10 +42,6 @@
namespace vcl { class Window; }
namespace utl {
class AccessibleStateSetHelper;
}
namespace vcl {
class IAccessibleTableProvider;
}
@@ -131,7 +126,7 @@ public:
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet() override;
/** @return The set of current states. */
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet() override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet() override;
/** @return The parent's locale. */
virtual css::lang::Locale SAL_CALL getLocale() override;
@@ -248,13 +243,13 @@ protected:
@return The bounding box (VCL rect.) in screen coordinates. */
virtual tools::Rectangle implGetBoundingBoxOnScreen() = 0;
/** Creates a new AccessibleStateSetHelper and fills it with states of the
/** Creates a bitset of 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 rtl::Reference<::utl::AccessibleStateSetHelper> implCreateStateSetHelper();
*/
virtual sal_Int64 implCreateStateSet();
// internal helper methods
@@ -39,7 +39,7 @@ namespace accessibility
virtual ~AccessibleCheckBoxCell() override {}
virtual rtl::Reference<::utl::AccessibleStateSetHelper> implCreateStateSetHelper() override;
virtual sal_Int64 implCreateStateSet() override;
public:
AccessibleCheckBoxCell(const css::uno::Reference< css::accessibility::XAccessible >& _rxParent,
@@ -54,12 +54,9 @@ namespace accessibility
*/
virtual OUString SAL_CALL getImplementationName() override;
/** Creates a new AccessibleStateSetHelper and fills it with states of the
current object.
@return
A filled AccessibleStateSetHelper.
/** Return a bitset of states of the current object.
*/
rtl::Reference<::utl::AccessibleStateSetHelper> implCreateStateSetHelper() override;
sal_Int64 implCreateStateSet() override;
private:
virtual tools::Rectangle implGetBoundingBox() override;
@@ -84,12 +84,9 @@ namespace accessibility
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL
getAccessibleChild( sal_Int32 nChildIndex ) override;
/** Creates a new AccessibleStateSetHelper and fills it with states of the
current object.
@return
A filled AccessibleStateSetHelper.
/** Return a bitset of states of the current object.
*/
rtl::Reference<::utl::AccessibleStateSetHelper> implCreateStateSetHelper() override;
sal_Int64 implCreateStateSet() override;
// XAccessible ------------------------------------------------------------
@@ -27,7 +27,6 @@
#include <cppuhelper/compbase4.hxx>
#include <cppuhelper/implbase1.hxx>
#include <cppuhelper/basemutex.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/accessibility/XAccessible.hpp>
#include <com/sun/star/accessibility/XAccessibleContext.hpp>
@@ -39,10 +38,6 @@
namespace vcl { class Window; }
namespace utl {
class AccessibleStateSetHelper;
}
namespace accessibility {
@@ -103,8 +98,7 @@ public:
getAccessibleRelationSet() override;
/** @return The set of current states. */
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL
getAccessibleStateSet() override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet() override;
/** @return The parent's locale. */
virtual css::lang::Locale SAL_CALL getLocale() override;
@@ -212,13 +206,13 @@ protected:
// @return The bounding box (VCL rect.) in screen coordinates. */
virtual tools::Rectangle implGetBoundingBoxOnScreen() = 0;
/** Creates a new AccessibleStateSetHelper and fills it with states of the
/** Creates a bitset of 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 rtl::Reference<::utl::AccessibleStateSetHelper> implCreateStateSetHelper();
*/
virtual sal_Int64 implCreateStateSet();
// internal helper methods
@@ -64,12 +64,9 @@ namespace accessibility
*/
virtual OUString SAL_CALL getImplementationName() override;
/** Creates a new AccessibleStateSetHelper and fills it with states of the
current object.
@return
A filled AccessibleStateSetHelper.
/** Return a bitset of states of the current object.
*/
rtl::Reference<::utl::AccessibleStateSetHelper> implCreateStateSetHelper() override;
sal_Int64 implCreateStateSet() override;
private:
virtual tools::Rectangle implGetBoundingBox() override;
@@ -112,12 +112,9 @@ namespace accessibility
virtual css::uno::Reference< css::accessibility::XAccessible > SAL_CALL
getAccessibleChild( sal_Int32 nChildIndex ) override;
/** Creates a new AccessibleStateSetHelper and fills it with states of the
current object.
@return
A filled AccessibleStateSetHelper.
/** Return a bitset of states of the current object.
*/
rtl::Reference<::utl::AccessibleStateSetHelper> implCreateStateSetHelper() override;
sal_Int64 implCreateStateSet() override;
// XAccessible ------------------------------------------------------------
@@ -62,7 +62,7 @@ namespace accessibility
virtual OUString SAL_CALL getAccessibleDescription( ) override;
virtual OUString SAL_CALL getAccessibleName( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet( ) override;
sal_Int16 SAL_CALL getAccessibleRole() override;
@@ -46,7 +46,7 @@ namespace accessibility
virtual void SAL_CALL disposing() override;
virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent ) override;
virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) override;
virtual void FillAccessibleStateSet( sal_Int64& rStateSet ) override;
VclPtr< SvtIconChoiceCtrl > getCtrl() const;
@@ -23,7 +23,6 @@
#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/lang/XEventListener.hpp>
@@ -126,7 +125,7 @@ namespace accessibility
virtual OUString SAL_CALL getAccessibleDescription( ) override;
virtual OUString SAL_CALL getAccessibleName( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet( ) override;
virtual css::lang::Locale SAL_CALL getLocale( ) override;
// XAccessibleComponent
@@ -53,7 +53,7 @@ namespace accessibility
// VCLXAccessibleComponent
virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent ) override;
virtual void ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent ) override;
virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) override;
virtual void FillAccessibleStateSet( sal_Int64& rStateSet ) override;
private:
VclPtr< SvTreeListBox > getListBox() const;
@@ -24,7 +24,6 @@
#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>
@@ -150,7 +149,7 @@ namespace accessibility
virtual OUString SAL_CALL getAccessibleDescription( ) override;
virtual OUString SAL_CALL getAccessibleName( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet( ) override;
virtual css::lang::Locale SAL_CALL getLocale( ) override;
// XAccessibleComponent
@@ -26,10 +26,6 @@
#include <vector>
namespace utl {
class AccessibleStateSetHelper;
}
namespace accessibility
{
@@ -49,7 +45,7 @@ namespace accessibility
AccessibleChildren m_aAccessibleChildren;
virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent ) override;
void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
void FillAccessibleStateSet( sal_Int64& rStateSet );
// OCommonAccessibleComponent
virtual css::awt::Rectangle implGetBounds( ) override;
@@ -83,7 +79,7 @@ namespace accessibility
virtual OUString SAL_CALL getAccessibleDescription( ) override;
virtual OUString SAL_CALL getAccessibleName( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet( ) override;
virtual css::lang::Locale SAL_CALL getLocale( ) override;
// XAccessibleComponent
@@ -24,10 +24,6 @@
#include <cppuhelper/implbase2.hxx>
#include <extended/accessibletabbarbase.hxx>
namespace utl {
class AccessibleStateSetHelper;
}
namespace accessibility
{
@@ -62,7 +58,7 @@ namespace accessibility
sal_uInt16 GetPageId() const { return m_nPageId; }
void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
void FillAccessibleStateSet( sal_Int64& rStateSet );
// OCommonAccessibleComponent
virtual css::awt::Rectangle implGetBounds( ) override;
@@ -97,7 +93,7 @@ namespace accessibility
virtual OUString SAL_CALL getAccessibleDescription( ) override;
virtual OUString SAL_CALL getAccessibleName( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet( ) override;
virtual css::lang::Locale SAL_CALL getLocale( ) override;
// XAccessibleComponent
@@ -27,10 +27,6 @@
#include <vector>
namespace utl {
class AccessibleStateSetHelper;
}
namespace accessibility
{
@@ -61,7 +57,7 @@ namespace accessibility
void MoveChild( sal_Int32 i, sal_Int32 j );
virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent ) override;
void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
void FillAccessibleStateSet( sal_Int64& rStateSet );
// OCommonAccessibleComponent
virtual css::awt::Rectangle implGetBounds( ) override;
@@ -95,7 +91,7 @@ namespace accessibility
virtual OUString SAL_CALL getAccessibleDescription( ) override;
virtual OUString SAL_CALL getAccessibleName( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet( ) override;
virtual css::lang::Locale SAL_CALL getLocale( ) override;
// XAccessibleComponent
@@ -180,9 +180,7 @@ private:
css::uno::Reference< css::accessibility::XAccessibleRelationSet >
SAL_CALL getAccessibleRelationSet() override;
virtual
css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL
getAccessibleStateSet() override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet() override;
virtual css::lang::Locale SAL_CALL getLocale() override;
@@ -479,7 +477,7 @@ private:
virtual css::uno::Reference< css::accessibility::XAccessible >
SAL_CALL getAccessibleAtPoint(css::awt::Point const & rPoint) override;
virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) override;
virtual void FillAccessibleStateSet( sal_Int64& rStateSet ) override;
virtual void FillAccessibleRelationSet( utl::AccessibleRelationSetHelper& rRelationSet ) override;
// ??? Will be called with both the external (Solar) and internal mutex
@@ -193,7 +193,6 @@
#include <com/sun/star/accessibility/XAccessibleExtendedComponent.hpp>
#include <com/sun/star/accessibility/XAccessibleKeyBinding.hpp>
#include <com/sun/star/accessibility/XAccessibleSelection.hpp>
#include <com/sun/star/accessibility/XAccessibleStateSet.hpp>
#include <com/sun/star/accessibility/XAccessibleTable.hpp>
#include <com/sun/star/accessibility/XAccessibleText.hpp>
#include <com/sun/star/accessibility/XAccessibleValue.hpp>
@@ -345,7 +344,6 @@
#include <uno/data.h>
#include <uno/sequence2.h>
#include <unotools/accessiblerelationsethelper.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <unotools/fontdefs.hxx>
#include <unotools/unotoolsdllapi.h>
#endif // PCH_LEVEL >= 3
@@ -33,11 +33,6 @@ class Menu;
class VclSimpleEvent;
class VclMenuEvent;
namespace utl {
class AccessibleStateSetHelper;
}
typedef ::cppu::ImplHelper2<
css::accessibility::XAccessible,
@@ -106,7 +101,7 @@ protected:
void ProcessMenuEvent( const VclMenuEvent& rVclMenuEvent );
virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) = 0;
virtual void FillAccessibleStateSet( sal_Int64& rStateSet ) = 0;
// XComponent
virtual void SAL_CALL disposing() override;
@@ -130,7 +125,7 @@ public:
virtual css::uno::Reference< css::accessibility::XAccessibleContext > SAL_CALL getAccessibleContext( ) override;
// XAccessibleContext
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet( ) override;
};
@@ -35,7 +35,7 @@ protected:
virtual bool IsEnabled() override;
virtual bool IsVisible() override;
virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) override;
virtual void FillAccessibleStateSet( sal_Int64& rStateSet ) override;
// OCommonAccessibleComponent
virtual css::awt::Rectangle implGetBounds( ) override;
@@ -48,7 +48,7 @@ protected:
virtual bool IsMenuHideDisabledEntries() override;
virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) override;
virtual void FillAccessibleStateSet( sal_Int64& rStateSet ) override;
// OCommonAccessibleComponent
virtual css::awt::Rectangle implGetBounds( ) override;
@@ -150,7 +150,7 @@ protected:
virtual void ProcessWindowChildEvent (const VclWindowEvent& rVclWindowEvent) override;
virtual void ProcessWindowEvent (const VclWindowEvent& rVclWindowEvent) override;
virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) override;
virtual void FillAccessibleStateSet( sal_Int64& rStateSet ) override;
sal_Int32 implGetAccessibleChildCount();
};
@@ -39,7 +39,7 @@ class VCLXAccessibleButton final : public VCLXAccessibleTextComponent,
virtual ~VCLXAccessibleButton() override = default;
virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent ) override;
virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) override;
virtual void FillAccessibleStateSet( sal_Int64& rStateSet ) override;
public:
using VCLXAccessibleTextComponent::VCLXAccessibleTextComponent;
@@ -51,7 +51,7 @@ private:
void SetIndeterminate( bool bIndeterminate );
virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent ) override;
virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) override;
virtual void FillAccessibleStateSet( sal_Int64& rStateSet ) override;
public:
VCLXAccessibleCheckBox( VCLXWindow* pVCLXindow );
@@ -45,7 +45,7 @@ protected:
virtual ~VCLXAccessibleEdit() override = default;
virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent ) override;
virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) override;
virtual void FillAccessibleStateSet( sal_Int64& rStateSet ) override;
sal_Int16 implGetAccessibleRole();
// OCommonAccessibleText
@@ -25,7 +25,7 @@ class VCLXAccessibleFixedText final : public VCLXAccessibleTextComponent
{
virtual ~VCLXAccessibleFixedText() override = default;
virtual void FillAccessibleStateSet(utl::AccessibleStateSetHelper& rStateSet) override;
virtual void FillAccessibleStateSet(sal_Int64& rStateSet) override;
public:
using VCLXAccessibleTextComponent::VCLXAccessibleTextComponent;
@@ -29,10 +29,6 @@ class HeaderBar;
class VclSimpleEvent;
class VclWindowEvent;
namespace utl {
class AccessibleStateSetHelper;
}
// ----------------------------------------------------
// class VCLXAccessibleHeaderBarItem
@@ -49,7 +45,7 @@ private:
VclPtr<HeaderBar> m_pHeadBar;
sal_Int32 m_nIndexInParent;
void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
void FillAccessibleStateSet( sal_Int64& rStateSet );
// OCommonAccessibleComponent
virtual css::awt::Rectangle implGetBounds( ) override;
@@ -81,7 +77,7 @@ public:
virtual OUString SAL_CALL getAccessibleDescription( ) override;
virtual OUString SAL_CALL getAccessibleName( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet( ) override;
virtual css::lang::Locale SAL_CALL getLocale( ) override;
// XAccessibleComponent
@@ -151,7 +151,7 @@ private:
AccessibleStateType::MULTI_SELECTABLE to the state set
of the base classes.
*/
virtual void FillAccessibleStateSet (utl::AccessibleStateSetHelper& rStateSet) override;
virtual void FillAccessibleStateSet (sal_Int64& rStateSet) override;
/** Create the specified child and insert it into the list of children.
Sets the child's states.
@@ -23,7 +23,6 @@
#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>
@@ -113,7 +112,7 @@ public:
virtual OUString SAL_CALL getAccessibleDescription( ) override;
virtual OUString SAL_CALL getAccessibleName( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet( ) override;
virtual css::lang::Locale SAL_CALL getLocale( ) override;
// XAccessibleComponent
@@ -47,7 +47,7 @@ protected:
virtual bool IsHighlighted() override;
virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) override;
virtual void FillAccessibleStateSet( sal_Int64& rStateSet ) override;
// OCommonAccessibleText
virtual OUString implGetText() final override;
@@ -40,7 +40,7 @@ class VCLXAccessibleRadioButton final : public VCLXAccessibleTextComponent,
virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent ) override;
virtual void FillAccessibleRelationSet( utl::AccessibleRelationSetHelper& rRelationSet ) override;
virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) override;
virtual void FillAccessibleStateSet( sal_Int64& rStateSet ) override;
public:
using VCLXAccessibleTextComponent::VCLXAccessibleTextComponent;
@@ -39,7 +39,7 @@ class VCLXAccessibleScrollBar final : public VCLXAccessibleComponent,
virtual ~VCLXAccessibleScrollBar() override = default;
virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent ) override;
virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) override;
virtual void FillAccessibleStateSet( sal_Int64& rStateSet ) override;
public:
using VCLXAccessibleComponent::VCLXAccessibleComponent;
@@ -27,10 +27,6 @@
#include <vcl/status.hxx>
#include <vcl/vclptr.hxx>
namespace utl {
class AccessibleStateSetHelper;
}
@@ -60,7 +56,7 @@ private:
OUString GetItemText();
sal_uInt16 GetItemId() const { return m_nItemId; }
void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
void FillAccessibleStateSet( sal_Int64& rStateSet );
// OCommonAccessibleComponent
virtual css::awt::Rectangle implGetBounds( ) override;
@@ -99,7 +95,7 @@ public:
virtual OUString SAL_CALL getAccessibleDescription( ) override;
virtual OUString SAL_CALL getAccessibleName( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet( ) override;
virtual css::lang::Locale SAL_CALL getLocale( ) override;
// XAccessibleComponent
@@ -55,7 +55,7 @@ private:
virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent ) override;
virtual void ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent ) override;
virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) override;
virtual void FillAccessibleStateSet( sal_Int64& rStateSet ) override;
// XComponent
virtual void SAL_CALL disposing() override;
@@ -29,11 +29,6 @@
class TabControl;
namespace utl {
class AccessibleStateSetHelper;
}
typedef ::comphelper::OAccessibleTextHelper AccessibleTextHelper_BASE;
@@ -68,7 +63,7 @@ private:
sal_uInt16 GetPageId() const { return m_nPageId; }
void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
void FillAccessibleStateSet( sal_Int64& rStateSet );
// OCommonAccessibleComponent
virtual css::awt::Rectangle implGetBounds( ) override;
@@ -108,7 +103,7 @@ public:
virtual OUString SAL_CALL getAccessibleDescription( ) override;
virtual OUString SAL_CALL getAccessibleName( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet( ) override;
virtual css::lang::Locale SAL_CALL getLocale( ) override;
// XAccessibleComponent
@@ -55,7 +55,7 @@ private:
virtual ~VCLXAccessibleToolBox() override;
virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet ) override;
virtual void FillAccessibleStateSet( sal_Int64& rStateSet ) override;
virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent ) override;
virtual void ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent ) override;
@@ -22,7 +22,6 @@
#include <com/sun/star/accessibility/XAccessible.hpp>
#include <com/sun/star/accessibility/XAccessibleAction.hpp>
#include <com/sun/star/accessibility/XAccessibleContext.hpp>
#include <com/sun/star/accessibility/XAccessibleStateSet.hpp>
#include <com/sun/star/accessibility/XAccessibleValue.hpp>
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <cppuhelper/implbase4.hxx>
@@ -107,7 +106,7 @@ public:
virtual OUString SAL_CALL getAccessibleDescription( ) override;
virtual OUString SAL_CALL getAccessibleName( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet( ) override;
// XAccessibleText
virtual OUString SAL_CALL getText() override;
@@ -184,12 +184,12 @@ AccessibleBrowseBoxBase::getAccessibleRelationSet()
return new utl::AccessibleRelationSetHelper;
}
Reference< css::accessibility::XAccessibleStateSet > SAL_CALL
sal_Int64 SAL_CALL
AccessibleBrowseBoxBase::getAccessibleStateSet()
{
SolarMethodGuard aGuard( getMutex() );
// don't check whether alive -> StateSet may contain DEFUNC
return implCreateStateSetHelper();
return implCreateStateSet();
}
lang::Locale SAL_CALL AccessibleBrowseBoxBase::getLocale()
@@ -355,23 +355,22 @@ bool AccessibleBrowseBoxBase::implIsShowing()
return bShowing;
}
rtl::Reference<::utl::AccessibleStateSetHelper> AccessibleBrowseBoxBase::implCreateStateSetHelper()
sal_Int64 AccessibleBrowseBoxBase::implCreateStateSet()
{
rtl::Reference<::utl::AccessibleStateSetHelper>
pStateSetHelper = new ::utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if( isAlive() )
{
// SHOWING done with mxParent
if( implIsShowing() )
pStateSetHelper->AddState( AccessibleStateType::SHOWING );
nStateSet |= AccessibleStateType::SHOWING;
// BrowseBox fills StateSet with states depending on object type
mpBrowseBox->FillAccessibleStateSet( *pStateSetHelper, getType() );
mpBrowseBox->FillAccessibleStateSet( nStateSet, getType() );
}
else
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
return pStateSetHelper;
return nStateSet;
}
// internal helper methods
@@ -52,18 +52,17 @@ namespace accessibility
return this;
}
rtl::Reference<::utl::AccessibleStateSetHelper> AccessibleCheckBoxCell::implCreateStateSetHelper()
sal_Int64 AccessibleCheckBoxCell::implCreateStateSet()
{
rtl::Reference<::utl::AccessibleStateSetHelper> pStateSetHelper =
AccessibleBrowseBoxCell::implCreateStateSetHelper();
sal_Int64 nStateSet = AccessibleBrowseBoxCell::implCreateStateSet();
if( isAlive() )
{
mpBrowseBox->FillAccessibleStateSetForCell(
*pStateSetHelper, getRowPos(), static_cast< sal_uInt16 >( getColumnPos() ) );
nStateSet, getRowPos(), static_cast< sal_uInt16 >( getColumnPos() ) );
if ( m_eState == TRISTATE_TRUE )
pStateSetHelper->AddState( AccessibleStateType::CHECKED );
nStateSet |= AccessibleStateType::CHECKED;
}
return pStateSetHelper;
return nStateSet;
}
// XAccessibleValue
@@ -43,38 +43,34 @@ AccessibleBrowseBoxHeaderCell::AccessibleBrowseBoxHeaderCell(sal_Int32 _nColumnR
, m_nColumnRowId(_nColumnRowId)
{
}
/** Creates a new AccessibleStateSetHelper and fills it with states of the
current object.
@return
A filled AccessibleStateSetHelper.
/** Return a bitset of states of the current object.
*/
rtl::Reference<::utl::AccessibleStateSetHelper> AccessibleBrowseBoxHeaderCell::implCreateStateSetHelper()
sal_Int64 AccessibleBrowseBoxHeaderCell::implCreateStateSet()
{
SolarMethodGuard aGuard( getMutex() );
rtl::Reference<::utl::AccessibleStateSetHelper>
pStateSetHelper = new ::utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if( isAlive() )
{
// SHOWING done with mxParent
if( implIsShowing() )
pStateSetHelper->AddState( AccessibleStateType::SHOWING );
nStateSet |= AccessibleStateType::SHOWING;
mpBrowseBox->FillAccessibleStateSet( *pStateSetHelper, getType() );
pStateSetHelper->AddState( AccessibleStateType::VISIBLE );
pStateSetHelper->AddState( AccessibleStateType::FOCUSABLE );
pStateSetHelper->AddState( AccessibleStateType::TRANSIENT );
pStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
mpBrowseBox->FillAccessibleStateSet( nStateSet, getType() );
nStateSet |= AccessibleStateType::VISIBLE;
nStateSet |= AccessibleStateType::FOCUSABLE;
nStateSet |= AccessibleStateType::TRANSIENT;
nStateSet |= AccessibleStateType::SELECTABLE;
bool bSelected = isRowBarCell() ? mpBrowseBox->IsRowSelected(m_nColumnRowId) : mpBrowseBox->IsColumnSelected(m_nColumnRowId);
if ( bSelected )
pStateSetHelper->AddState( AccessibleStateType::SELECTED );
nStateSet |= AccessibleStateType::SELECTED;
}
else
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
return pStateSetHelper;
return nStateSet;
}
/** @return
@@ -41,7 +41,6 @@ namespace accessibility
}
}
using namespace ::com::sun::star::lang;
using namespace utl;
using namespace comphelper;
using namespace ::com::sun::star::uno;
using ::com::sun::star::accessibility::XAccessible;
@@ -155,29 +154,26 @@ namespace accessibility
throw css::lang::IndexOutOfBoundsException();
}
/** Creates a new AccessibleStateSetHelper and fills it with states of the
current object.
@return
A filled AccessibleStateSetHelper.
/** Return a bitset of states of the current object.
*/
rtl::Reference<::utl::AccessibleStateSetHelper> AccessibleBrowseBoxTableCell::implCreateStateSetHelper()
sal_Int64 AccessibleBrowseBoxTableCell::implCreateStateSet()
{
SolarMethodGuard aGuard(getMutex());
rtl::Reference<::utl::AccessibleStateSetHelper> pStateSetHelper = new ::utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if( isAlive() )
{
// SHOWING done with mxParent
if( implIsShowing() )
pStateSetHelper->AddState( AccessibleStateType::SHOWING );
nStateSet |= AccessibleStateType::SHOWING;
mpBrowseBox->FillAccessibleStateSetForCell( *pStateSetHelper, getRowPos(), static_cast< sal_uInt16 >( getColumnPos() ) );
mpBrowseBox->FillAccessibleStateSetForCell( nStateSet, getRowPos(), static_cast< sal_uInt16 >( getColumnPos() ) );
}
else
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
return pStateSetHelper;
return nStateSet;
}
@@ -155,13 +155,13 @@ AccessibleGridControlBase::getAccessibleRelationSet()
return new utl::AccessibleRelationSetHelper;
}
css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL
sal_Int64 SAL_CALL
AccessibleGridControlBase::getAccessibleStateSet()
{
SolarMutexGuard aSolarGuard;
// don't check whether alive -> StateSet may contain DEFUNC
return implCreateStateSetHelper();
return implCreateStateSet();
}
lang::Locale SAL_CALL AccessibleGridControlBase::getLocale()
@@ -278,22 +278,21 @@ bool AccessibleGridControlBase::implIsShowing()
return bShowing;
}
rtl::Reference<::utl::AccessibleStateSetHelper> AccessibleGridControlBase::implCreateStateSetHelper()
sal_Int64 AccessibleGridControlBase::implCreateStateSet()
{
rtl::Reference<::utl::AccessibleStateSetHelper>
pStateSetHelper = new ::utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if( isAlive() )
{
// SHOWING done with m_xParent
if( implIsShowing() )
pStateSetHelper->AddState( AccessibleStateType::SHOWING );
nStateSet |= AccessibleStateType::SHOWING;
// GridControl fills StateSet with states depending on object type
m_aTable.FillAccessibleStateSet( *pStateSetHelper, getType() );
m_aTable.FillAccessibleStateSet( nStateSet, getType() );
}
else
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
return pStateSetHelper;
nStateSet |= AccessibleStateType::DEFUNC;
return nStateSet;
}
// internal helper methods
@@ -39,34 +39,30 @@ AccessibleGridControlHeaderCell::AccessibleGridControlHeaderCell(sal_Int32 _nCol
, m_nColumnRowId(_nColumnRowId)
{
}
/** Creates a new AccessibleStateSetHelper and fills it with states of the
current object.
@return
A filled AccessibleStateSetHelper.
/** Return a bitset of states of the current object.
*/
rtl::Reference<::utl::AccessibleStateSetHelper> AccessibleGridControlHeaderCell::implCreateStateSetHelper()
sal_Int64 AccessibleGridControlHeaderCell::implCreateStateSet()
{
rtl::Reference<::utl::AccessibleStateSetHelper>
pStateSetHelper = new ::utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if( isAlive() )
{
// SHOWING done with mxParent
if( implIsShowing() )
pStateSetHelper->AddState( AccessibleStateType::SHOWING );
nStateSet |= AccessibleStateType::SHOWING;
pStateSetHelper->AddState( AccessibleStateType::VISIBLE );
pStateSetHelper->AddState( AccessibleStateType::FOCUSABLE );
pStateSetHelper->AddState( AccessibleStateType::TRANSIENT );
pStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
nStateSet |= AccessibleStateType::VISIBLE;
nStateSet |= AccessibleStateType::FOCUSABLE;
nStateSet |= AccessibleStateType::TRANSIENT;
nStateSet |= AccessibleStateType::SELECTABLE;
if ( m_aTable.IsRowSelected(m_nColumnRowId) )
pStateSetHelper->AddState( AccessibleStateType::SELECTED );
nStateSet |= AccessibleStateType::SELECTED;
}
else
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
return pStateSetHelper;
return nStateSet;
}
/** @return
@@ -40,7 +40,6 @@ namespace accessibility
}
}
using namespace ::com::sun::star::lang;
using namespace utl;
using namespace comphelper;
using namespace ::com::sun::star::uno;
using ::com::sun::star::accessibility::XAccessible;
@@ -177,27 +176,24 @@ namespace accessibility
throw css::lang::IndexOutOfBoundsException();
}
/** Creates a new AccessibleStateSetHelper and fills it with states of the
current object.
@return
A filled AccessibleStateSetHelper.
/** Return a bitset of states of the current object.
*/
rtl::Reference<::utl::AccessibleStateSetHelper> AccessibleGridControlTableCell::implCreateStateSetHelper()
sal_Int64 AccessibleGridControlTableCell::implCreateStateSet()
{
rtl::Reference<::utl::AccessibleStateSetHelper> pStateSetHelper = new ::utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if( isAlive() )
{
// SHOWING done with mxParent
if( implIsShowing() )
pStateSetHelper->AddState( AccessibleStateType::SHOWING );
nStateSet |= AccessibleStateType::SHOWING;
m_aTable.FillAccessibleStateSetForCell( *pStateSetHelper, getRowPos(), static_cast< sal_uInt16 >( getColumnPos() ) );
m_aTable.FillAccessibleStateSetForCell( nStateSet, getRowPos(), static_cast< sal_uInt16 >( getColumnPos() ) );
}
else
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
return pStateSetHelper;
return nStateSet;
}
@@ -123,7 +123,7 @@ namespace accessibility
return baseGetAccessibleRelationSet( );
}
css::uno::Reference<css::accessibility::XAccessibleStateSet > SAL_CALL EditBrowseBoxTableCell::getAccessibleStateSet()
sal_Int64 SAL_CALL EditBrowseBoxTableCell::getAccessibleStateSet()
{
SolarMethodGuard aGuard(getMutex());
ensureIsAlive();
@@ -23,7 +23,6 @@
#include <com/sun/star/accessibility/AccessibleRole.hpp>
#include <com/sun/star/accessibility/AccessibleStateType.hpp>
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <unotools/accessiblestatesethelper.hxx>
#include <vcl/toolkit/ivctrl.hxx>
#include <cppuhelper/supportsservice.hxx>
@@ -318,14 +317,14 @@ namespace accessibility
pCtrl->SetNoSelection();
}
void AccessibleIconChoiceCtrl::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void AccessibleIconChoiceCtrl::FillAccessibleStateSet( sal_Int64& rStateSet )
{
VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
if ( isAlive() )
{
rStateSet.AddState( AccessibleStateType::FOCUSABLE );
rStateSet.AddState( AccessibleStateType::MANAGES_DESCENDANTS );
rStateSet.AddState( AccessibleStateType::SELECTABLE );
rStateSet |= AccessibleStateType::FOCUSABLE;
rStateSet |= AccessibleStateType::MANAGES_DESCENDANTS;
rStateSet |= AccessibleStateType::SELECTABLE;
}
}
@@ -26,7 +26,6 @@
#include <vcl/svapp.hxx>
#include <vcl/settings.hxx>
#include <toolkit/helper/convert.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <cppuhelper/supportsservice.hxx>
#include <svtools/stringtransfer.hxx>
@@ -296,32 +295,32 @@ namespace accessibility
return new utl::AccessibleRelationSetHelper;
}
Reference< XAccessibleStateSet > SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleStateSet( )
sal_Int64 SAL_CALL AccessibleIconChoiceCtrlEntry::getAccessibleStateSet( )
{
SolarMutexGuard aSolarGuard;
::osl::MutexGuard aGuard( m_aMutex );
rtl::Reference<utl::AccessibleStateSetHelper> pStateSetHelper = new utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if ( IsAlive_Impl() )
{
pStateSetHelper->AddState( AccessibleStateType::TRANSIENT );
pStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
pStateSetHelper->AddState( AccessibleStateType::ENABLED );
pStateSetHelper->AddState( AccessibleStateType::SENSITIVE );
nStateSet |= AccessibleStateType::TRANSIENT;
nStateSet |= AccessibleStateType::SELECTABLE;
nStateSet |= AccessibleStateType::ENABLED;
nStateSet |= AccessibleStateType::SENSITIVE;
if ( IsShowing_Impl() )
{
pStateSetHelper->AddState( AccessibleStateType::SHOWING );
pStateSetHelper->AddState( AccessibleStateType::VISIBLE );
nStateSet |= AccessibleStateType::SHOWING;
nStateSet |= AccessibleStateType::VISIBLE;
}
if ( m_pIconCtrl && m_pIconCtrl->GetCursor() == m_pIconCtrl->GetEntry( m_nIndex ) )
pStateSetHelper->AddState( AccessibleStateType::SELECTED );
nStateSet |= AccessibleStateType::SELECTED;
}
else
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
return pStateSetHelper;
return nStateSet;
}
Locale SAL_CALL AccessibleIconChoiceCtrlEntry::getLocale( )
@@ -26,7 +26,6 @@
#include <com/sun/star/accessibility/AccessibleStateType.hpp>
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <cppuhelper/supportsservice.hxx>
#include <unotools/accessiblestatesethelper.hxx>
namespace accessibility
@@ -490,15 +489,15 @@ namespace accessibility
getListBox()->Select( pEntry, false );
}
void AccessibleListBox::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void AccessibleListBox::FillAccessibleStateSet( sal_Int64& rStateSet )
{
VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
if ( getListBox() && isAlive() )
{
rStateSet.AddState( AccessibleStateType::FOCUSABLE );
rStateSet.AddState( AccessibleStateType::MANAGES_DESCENDANTS );
rStateSet |= AccessibleStateType::FOCUSABLE;
rStateSet |= AccessibleStateType::MANAGES_DESCENDANTS;
if ( getListBox()->GetSelectionMode() == SelectionMode::Multiple )
rStateSet.AddState( AccessibleStateType::MULTI_SELECTABLE );
rStateSet |= AccessibleStateType::MULTI_SELECTABLE;
}
}
@@ -31,7 +31,6 @@
#include <vcl/svapp.hxx>
#include <vcl/settings.hxx>
#include <toolkit/helper/convert.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <cppuhelper/supportsservice.hxx>
#include <comphelper/accessibleeventnotifier.hxx>
@@ -473,41 +472,41 @@ namespace accessibility
return xRelSet;
}
Reference< XAccessibleStateSet > SAL_CALL AccessibleListBoxEntry::getAccessibleStateSet( )
sal_Int64 SAL_CALL AccessibleListBoxEntry::getAccessibleStateSet( )
{
::osl::MutexGuard aGuard( m_aMutex );
rtl::Reference<utl::AccessibleStateSetHelper> pStateSetHelper = new utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if ( IsAlive_Impl() )
{
switch(getAccessibleRole())
{
case AccessibleRole::LABEL:
pStateSetHelper->AddState( AccessibleStateType::TRANSIENT );
pStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
pStateSetHelper->AddState( AccessibleStateType::ENABLED );
nStateSet |= AccessibleStateType::TRANSIENT;
nStateSet |= AccessibleStateType::SELECTABLE;
nStateSet |= AccessibleStateType::ENABLED;
if (m_pTreeListBox->IsInplaceEditingEnabled())
pStateSetHelper->AddState( AccessibleStateType::EDITABLE );
nStateSet |= AccessibleStateType::EDITABLE;
if (IsShowing_Impl())
pStateSetHelper->AddState( AccessibleStateType::SHOWING );
nStateSet |= AccessibleStateType::SHOWING;
break;
case AccessibleRole::CHECK_BOX:
pStateSetHelper->AddState( AccessibleStateType::TRANSIENT );
pStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
pStateSetHelper->AddState( AccessibleStateType::ENABLED );
nStateSet |= AccessibleStateType::TRANSIENT;
nStateSet |= AccessibleStateType::SELECTABLE;
nStateSet |= AccessibleStateType::ENABLED;
if (IsShowing_Impl())
pStateSetHelper->AddState( AccessibleStateType::SHOWING );
nStateSet |= AccessibleStateType::SHOWING;
break;
}
SvTreeListEntry *pEntry = m_pTreeListBox->GetEntryFromPath(m_aEntryPath);
if (pEntry)
m_pTreeListBox->FillAccessibleEntryStateSet(pEntry, *pStateSetHelper);
m_pTreeListBox->FillAccessibleEntryStateSet(pEntry, nStateSet);
}
else
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
return pStateSetHelper;
return nStateSet;
}
Locale SAL_CALL AccessibleListBoxEntry::getLocale( )
@@ -27,7 +27,6 @@
#include <com/sun/star/awt/XWindowPeer.hpp>
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <cppuhelper/supportsservice.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <i18nlangtag/languagetag.hxx>
#include <o3tl/safeint.hxx>
@@ -113,29 +112,29 @@ namespace accessibility
}
void AccessibleTabBar::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void AccessibleTabBar::FillAccessibleStateSet( sal_Int64& rStateSet )
{
if ( !m_pTabBar )
return;
if ( m_pTabBar->IsEnabled() )
{
rStateSet.AddState( AccessibleStateType::ENABLED );
rStateSet.AddState( AccessibleStateType::SENSITIVE );
rStateSet |= AccessibleStateType::ENABLED;
rStateSet |= AccessibleStateType::SENSITIVE;
}
rStateSet.AddState( AccessibleStateType::FOCUSABLE );
rStateSet |= AccessibleStateType::FOCUSABLE;
if ( m_pTabBar->HasFocus() )
rStateSet.AddState( AccessibleStateType::FOCUSED );
rStateSet |= AccessibleStateType::FOCUSED;
rStateSet.AddState( AccessibleStateType::VISIBLE );
rStateSet |= AccessibleStateType::VISIBLE;
if ( m_pTabBar->IsVisible() )
rStateSet.AddState( AccessibleStateType::SHOWING );
rStateSet |= AccessibleStateType::SHOWING;
if ( m_pTabBar->GetStyle() & WB_SIZEABLE )
rStateSet.AddState( AccessibleStateType::RESIZABLE );
rStateSet |= AccessibleStateType::RESIZABLE;
}
@@ -341,22 +340,22 @@ namespace accessibility
}
Reference< XAccessibleStateSet > AccessibleTabBar::getAccessibleStateSet( )
sal_Int64 AccessibleTabBar::getAccessibleStateSet( )
{
OExternalLockGuard aGuard( this );
rtl::Reference<utl::AccessibleStateSetHelper> pStateSetHelper = new utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
{
FillAccessibleStateSet( *pStateSetHelper );
FillAccessibleStateSet( nStateSet );
}
else
{
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
}
return pStateSetHelper;
return nStateSet;
}
@@ -24,7 +24,6 @@
#include <com/sun/star/accessibility/AccessibleStateType.hpp>
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <cppuhelper/supportsservice.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <vcl/svapp.hxx>
#include <vcl/settings.hxx>
@@ -135,23 +134,23 @@ namespace accessibility
}
void AccessibleTabBarPage::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void AccessibleTabBarPage::FillAccessibleStateSet( sal_Int64& rStateSet )
{
if ( IsEnabled() )
{
rStateSet.AddState( AccessibleStateType::ENABLED );
rStateSet.AddState( AccessibleStateType::SENSITIVE );
rStateSet |= AccessibleStateType::ENABLED;
rStateSet |= AccessibleStateType::SENSITIVE;
}
rStateSet.AddState( AccessibleStateType::VISIBLE );
rStateSet |= AccessibleStateType::VISIBLE;
if ( IsShowing() )
rStateSet.AddState( AccessibleStateType::SHOWING );
rStateSet |= AccessibleStateType::SHOWING;
rStateSet.AddState( AccessibleStateType::SELECTABLE );
rStateSet |= AccessibleStateType::SELECTABLE;
if ( IsSelected() )
rStateSet.AddState( AccessibleStateType::SELECTED );
rStateSet |= AccessibleStateType::SELECTED;
}
@@ -311,22 +310,22 @@ namespace accessibility
}
Reference< XAccessibleStateSet > AccessibleTabBarPage::getAccessibleStateSet( )
sal_Int64 AccessibleTabBarPage::getAccessibleStateSet( )
{
OExternalLockGuard aGuard( this );
rtl::Reference<utl::AccessibleStateSetHelper> pStateSetHelper = new utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
{
FillAccessibleStateSet( *pStateSetHelper );
FillAccessibleStateSet( nStateSet );
}
else
{
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
}
return pStateSetHelper;
return nStateSet;
}
@@ -26,7 +26,6 @@
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <cppuhelper/supportsservice.hxx>
#include <o3tl/safeint.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <vcl/svapp.hxx>
#include <vcl/settings.hxx>
@@ -295,21 +294,21 @@ namespace accessibility
}
void AccessibleTabBarPageList::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void AccessibleTabBarPageList::FillAccessibleStateSet( sal_Int64& rStateSet )
{
if ( !m_pTabBar )
return;
if ( m_pTabBar->IsEnabled() )
{
rStateSet.AddState( AccessibleStateType::ENABLED );
rStateSet.AddState( AccessibleStateType::SENSITIVE );
rStateSet |= AccessibleStateType::ENABLED;
rStateSet |= AccessibleStateType::SENSITIVE;
}
rStateSet.AddState( AccessibleStateType::VISIBLE );
rStateSet |= AccessibleStateType::VISIBLE;
if ( m_pTabBar->IsVisible() )
rStateSet.AddState( AccessibleStateType::SHOWING );
rStateSet |= AccessibleStateType::SHOWING;
}
@@ -470,22 +469,22 @@ namespace accessibility
}
Reference< XAccessibleStateSet > AccessibleTabBarPageList::getAccessibleStateSet( )
sal_Int64 AccessibleTabBarPageList::getAccessibleStateSet( )
{
OExternalLockGuard aGuard( this );
rtl::Reference<utl::AccessibleStateSetHelper> pStateSetHelper = new utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
{
FillAccessibleStateSet( *pStateSetHelper );
FillAccessibleStateSet( nStateSet );
}
else
{
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
}
return pStateSetHelper;
return nStateSet;
}
@@ -32,7 +32,6 @@
#include <extended/textwindowaccessibility.hxx>
#include <comphelper/accessibleeventnotifier.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <utility>
#include <vcl/svapp.hxx>
#include <vcl/txtattr.hxx>
@@ -193,15 +192,13 @@ SAL_CALL Paragraph::getAccessibleRelationSet()
}
// virtual
css::uno::Reference< css::accessibility::XAccessibleStateSet >
SAL_CALL Paragraph::getAccessibleStateSet()
sal_Int64 SAL_CALL Paragraph::getAccessibleStateSet()
{
checkDisposed();
// FIXME Notification of changes (STATE_CHANGED) missing when
// m_rView.IsReadOnly() changes:
return new ::utl::AccessibleStateSetHelper(
m_xDocument->retrieveParagraphState(this));
return m_xDocument->retrieveParagraphState(this);
}
// virtual
@@ -748,29 +745,21 @@ css::lang::Locale Document::retrieveLocale()
// 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);
= css::accessibility::AccessibleStateType::ENABLED
| css::accessibility::AccessibleStateType::SENSITIVE
| css::accessibility::AccessibleStateType::FOCUSABLE
| css::accessibility::AccessibleStateType::MULTI_LINE;
if (!m_rView.IsReadOnly())
nState |= (static_cast< ::sal_Int64 >(1)
<< css::accessibility::AccessibleStateType::EDITABLE);
nState |= 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);
|= css::accessibility::AccessibleStateType::VISIBLE
| css::accessibility::AccessibleStateType::SHOWING;
if (aPara == m_aFocused)
nState |= (static_cast< ::sal_Int64 >(1)
<< css::accessibility::AccessibleStateType::FOCUSED);
nState |= css::accessibility::AccessibleStateType::FOCUSED;
}
return nState;
};
@@ -1369,11 +1358,11 @@ Document::getAccessibleAtPoint(css::awt::Point const & rPoint)
}
return nullptr;
}
void Document::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void Document::FillAccessibleStateSet( sal_Int64& rStateSet )
{
VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
if (!m_rView.IsReadOnly())
rStateSet.AddState( css::accessibility::AccessibleStateType::EDITABLE );
rStateSet |= css::accessibility::AccessibleStateType::EDITABLE;
}
void Document::FillAccessibleRelationSet( utl::AccessibleRelationSetHelper& rRelationSet )
@@ -28,7 +28,6 @@
#include <com/sun/star/accessibility/AccessibleStateType.hpp>
#include <cppuhelper/supportsservice.hxx>
#include <o3tl/safeint.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <vcl/menu.hxx>
#include <vcl/vclevent.hxx>
@@ -112,7 +111,7 @@ void OAccessibleMenuBaseComponent::SetEnabled( bool bEnabled )
if ( m_bEnabled == bEnabled )
return;
sal_Int16 nStateType=AccessibleStateType::ENABLED;
sal_Int64 nStateType=AccessibleStateType::ENABLED;
if (IsMenuHideDisabledEntries())
{
nStateType = AccessibleStateType::VISIBLE;
@@ -689,22 +688,22 @@ Reference< XAccessibleContext > OAccessibleMenuBaseComponent::getAccessibleConte
// XAccessibleContext
Reference< XAccessibleStateSet > OAccessibleMenuBaseComponent::getAccessibleStateSet( )
sal_Int64 OAccessibleMenuBaseComponent::getAccessibleStateSet( )
{
OExternalLockGuard aGuard( this );
rtl::Reference<utl::AccessibleStateSetHelper> pStateSetHelper = new utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
{
FillAccessibleStateSet( *pStateSetHelper );
FillAccessibleStateSet( nStateSet );
}
else
{
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
}
return pStateSetHelper;
return nStateSet;
}
@@ -27,7 +27,6 @@
#include <com/sun/star/awt/XDevice.hpp>
#include <com/sun/star/awt/XWindowPeer.hpp>
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <unotools/accessiblestatesethelper.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <vcl/svapp.hxx>
#include <vcl/window.hxx>
@@ -61,26 +60,26 @@ bool OAccessibleMenuComponent::IsVisible()
}
void OAccessibleMenuComponent::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void OAccessibleMenuComponent::FillAccessibleStateSet( sal_Int64& rStateSet )
{
if ( IsEnabled() )
{
rStateSet.AddState( AccessibleStateType::ENABLED );
rStateSet.AddState( AccessibleStateType::SENSITIVE );
rStateSet |= AccessibleStateType::ENABLED;
rStateSet |= AccessibleStateType::SENSITIVE;
}
rStateSet.AddState( AccessibleStateType::FOCUSABLE );
rStateSet |= AccessibleStateType::FOCUSABLE;
if ( IsFocused() )
rStateSet.AddState( AccessibleStateType::FOCUSED );
rStateSet |= AccessibleStateType::FOCUSED;
if ( IsVisible() )
{
rStateSet.AddState( AccessibleStateType::VISIBLE );
rStateSet.AddState( AccessibleStateType::SHOWING );
rStateSet |= AccessibleStateType::VISIBLE;
rStateSet |= AccessibleStateType::SHOWING;
}
rStateSet.AddState( AccessibleStateType::OPAQUE );
rStateSet |= AccessibleStateType::OPAQUE;
}
@@ -26,7 +26,6 @@
#include <com/sun/star/accessibility/AccessibleRole.hpp>
#include <com/sun/star/accessibility/AccessibleStateType.hpp>
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <unotools/accessiblestatesethelper.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <comphelper/accessibletexthelper.hxx>
#include <vcl/svapp.hxx>
@@ -212,22 +211,22 @@ OUString OAccessibleMenuItemComponent::GetItemText()
}
void OAccessibleMenuItemComponent::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void OAccessibleMenuItemComponent::FillAccessibleStateSet( sal_Int64& rStateSet )
{
bool bEnabled = IsEnabled();
if ( bEnabled )
{
rStateSet.AddState( AccessibleStateType::ENABLED );
rStateSet.AddState( AccessibleStateType::SENSITIVE );
rStateSet |= AccessibleStateType::ENABLED;
rStateSet |= AccessibleStateType::SENSITIVE;
}
if ( IsVisible() )
{
rStateSet.AddState( AccessibleStateType::SHOWING );
rStateSet |= AccessibleStateType::SHOWING;
if( !IsMenuHideDisabledEntries() || bEnabled )
rStateSet.AddState( AccessibleStateType::VISIBLE );
rStateSet |= AccessibleStateType::VISIBLE;
}
rStateSet.AddState( AccessibleStateType::OPAQUE );
rStateSet |= AccessibleStateType::OPAQUE;
}
@@ -22,7 +22,6 @@
#include <standard/vclxaccessibleedit.hxx>
#include <standard/vclxaccessiblelist.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>
@@ -492,7 +491,7 @@ Any VCLXAccessibleBox::getMinimumIncrement( )
}
// Set the INDETERMINATE state when there is no selected item for combobox
void VCLXAccessibleBox::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void VCLXAccessibleBox::FillAccessibleStateSet( sal_Int64& rStateSet )
{
VCLXAccessibleComponent::FillAccessibleStateSet(rStateSet);
if (m_aBoxType == COMBOBOX )
@@ -508,7 +507,7 @@ void VCLXAccessibleBox::FillAccessibleStateSet( utl::AccessibleStateSetHelper& r
nEntryCount = pComboBox->GetEntryCount();
}
if ( sText.isEmpty() && nEntryCount > 0 )
rStateSet.AddState(AccessibleStateType::INDETERMINATE);
rStateSet |= AccessibleStateType::INDETERMINATE;
}
else if (m_aBoxType == LISTBOX && m_bIsDropDownBox)
{
@@ -517,7 +516,7 @@ void VCLXAccessibleBox::FillAccessibleStateSet( utl::AccessibleStateSetHelper& r
{
sal_Int32 nSelectedEntryCount = pListBox->GetSelectedEntryCount();
if ( nSelectedEntryCount == 0)
rStateSet.AddState(AccessibleStateType::INDETERMINATE);
rStateSet |= AccessibleStateType::INDETERMINATE;
}
}
}
@@ -21,7 +21,6 @@
#include <helper/accresmgr.hxx>
#include <strings.hrc>
#include <unotools/accessiblestatesethelper.hxx>
#include <comphelper/accessiblekeybindinghelper.hxx>
#include <com/sun/star/awt/KeyModifier.hpp>
#include <com/sun/star/accessibility/AccessibleStateType.hpp>
@@ -68,7 +67,7 @@ void VCLXAccessibleButton::ProcessWindowEvent( const VclWindowEvent& rVclWindowE
}
void VCLXAccessibleButton::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void VCLXAccessibleButton::FillAccessibleStateSet( sal_Int64& rStateSet )
{
VCLXAccessibleTextComponent::FillAccessibleStateSet( rStateSet );
@@ -76,22 +75,22 @@ void VCLXAccessibleButton::FillAccessibleStateSet( utl::AccessibleStateSetHelper
if ( !pButton )
return;
rStateSet.AddState( AccessibleStateType::FOCUSABLE );
rStateSet |= AccessibleStateType::FOCUSABLE;
if ( pButton->GetState() == TRISTATE_TRUE )
rStateSet.AddState( AccessibleStateType::CHECKED );
rStateSet |= AccessibleStateType::CHECKED;
if ( pButton->IsPressed() )
rStateSet.AddState( AccessibleStateType::PRESSED );
rStateSet |= AccessibleStateType::PRESSED;
// IA2 CWS: if the button has a popup menu, it should has the state EXPANDABLE
if( pButton->GetType() == WindowType::MENUBUTTON )
{
rStateSet.AddState( AccessibleStateType::EXPANDABLE );
rStateSet |= AccessibleStateType::EXPANDABLE;
}
if( pButton->GetStyle() & WB_DEFBUTTON )
{
rStateSet.AddState( AccessibleStateType::DEFAULT );
rStateSet |= AccessibleStateType::DEFAULT;
}
}
@@ -23,7 +23,6 @@
#include <helper/accresmgr.hxx>
#include <strings.hrc>
#include <unotools/accessiblestatesethelper.hxx>
#include <comphelper/accessiblekeybindinghelper.hxx>
#include <com/sun/star/awt/KeyModifier.hpp>
#include <com/sun/star/accessibility/AccessibleStateType.hpp>
@@ -123,17 +122,17 @@ void VCLXAccessibleCheckBox::ProcessWindowEvent( const VclWindowEvent& rVclWindo
}
void VCLXAccessibleCheckBox::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void VCLXAccessibleCheckBox::FillAccessibleStateSet( sal_Int64& rStateSet )
{
VCLXAccessibleTextComponent::FillAccessibleStateSet( rStateSet );
rStateSet.AddState( AccessibleStateType::FOCUSABLE );
rStateSet |= AccessibleStateType::FOCUSABLE;
if ( IsChecked() )
rStateSet.AddState( AccessibleStateType::CHECKED );
rStateSet |= AccessibleStateType::CHECKED;
if ( IsIndeterminate() )
rStateSet.AddState( AccessibleStateType::INDETERMINATE );
rStateSet |= AccessibleStateType::INDETERMINATE;
}
@@ -22,7 +22,6 @@
#include <toolkit/awt/vclxwindows.hxx>
#include <toolkit/helper/convert.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>
@@ -103,17 +102,17 @@ void VCLXAccessibleEdit::ProcessWindowEvent( const VclWindowEvent& rVclWindowEve
}
void VCLXAccessibleEdit::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void VCLXAccessibleEdit::FillAccessibleStateSet( sal_Int64& rStateSet )
{
VCLXAccessibleTextComponent::FillAccessibleStateSet( rStateSet );
VCLXEdit* pVCLXEdit = static_cast< VCLXEdit* >( GetVCLXWindow() );
if ( pVCLXEdit )
{
rStateSet.AddState( AccessibleStateType::FOCUSABLE );
rStateSet.AddState( AccessibleStateType::SINGLE_LINE );
rStateSet |= AccessibleStateType::FOCUSABLE;
rStateSet |= AccessibleStateType::SINGLE_LINE;
if ( pVCLXEdit->isEditable() )
rStateSet.AddState( AccessibleStateType::EDITABLE );
rStateSet |= AccessibleStateType::EDITABLE;
}
}
@@ -19,7 +19,6 @@
#include <standard/vclxaccessiblefixedtext.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <vcl/window.hxx>
#include <com/sun/star/accessibility/AccessibleStateType.hpp>
@@ -31,12 +30,12 @@ using namespace ::com::sun::star::accessibility;
// VCLXAccessibleFixedText
void VCLXAccessibleFixedText::FillAccessibleStateSet(utl::AccessibleStateSetHelper& rStateSet)
void VCLXAccessibleFixedText::FillAccessibleStateSet(sal_Int64& rStateSet)
{
VCLXAccessibleTextComponent::FillAccessibleStateSet(rStateSet);
if (GetWindow() && GetWindow()->GetStyle() & WB_WORDBREAK)
rStateSet.AddState(AccessibleStateType::MULTI_LINE);
rStateSet |= AccessibleStateType::MULTI_LINE;
}
// XServiceInfo
@@ -25,7 +25,6 @@
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <cppuhelper/supportsservice.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <vcl/svapp.hxx>
#include <vcl/settings.hxx>
@@ -52,19 +51,19 @@ VCLXAccessibleHeaderBarItem::~VCLXAccessibleHeaderBarItem()
{
}
void VCLXAccessibleHeaderBarItem::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void VCLXAccessibleHeaderBarItem::FillAccessibleStateSet( sal_Int64& rStateSet )
{
if ( m_pHeadBar )
{
if ( m_pHeadBar->IsEnabled() )
rStateSet.AddState( AccessibleStateType::ENABLED );
rStateSet |= AccessibleStateType::ENABLED;
if ( m_pHeadBar->IsVisible() )
{
rStateSet.AddState( AccessibleStateType::VISIBLE );
rStateSet |= AccessibleStateType::VISIBLE;
}
rStateSet.AddState( AccessibleStateType::SELECTABLE );
rStateSet.AddState( AccessibleStateType::RESIZABLE );
rStateSet |= AccessibleStateType::SELECTABLE;
rStateSet |= AccessibleStateType::RESIZABLE;
}
}
@@ -188,22 +187,22 @@ Reference< XAccessibleRelationSet > VCLXAccessibleHeaderBarItem::getAccessibleRe
}
Reference< XAccessibleStateSet > VCLXAccessibleHeaderBarItem::getAccessibleStateSet( )
sal_Int64 VCLXAccessibleHeaderBarItem::getAccessibleStateSet( )
{
OExternalLockGuard aGuard( this );
rtl::Reference<utl::AccessibleStateSetHelper> pStateSetHelper = new utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
{
FillAccessibleStateSet( *pStateSetHelper );
FillAccessibleStateSet( nStateSet );
}
else
{
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
}
return pStateSetHelper;
return nStateSet;
}
@@ -22,7 +22,6 @@
#include <helper/listboxhelper.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <com/sun/star/accessibility/AccessibleStateType.hpp>
#include <com/sun/star/accessibility/AccessibleEventId.hpp>
#include <com/sun/star/accessibility/AccessibleRelationType.hpp>
@@ -114,7 +113,7 @@ void SAL_CALL VCLXAccessibleList::disposing()
}
void VCLXAccessibleList::FillAccessibleStateSet (utl::AccessibleStateSetHelper& rStateSet)
void VCLXAccessibleList::FillAccessibleStateSet (sal_Int64& rStateSet)
{
SolarMutexGuard aSolarGuard;
@@ -124,8 +123,8 @@ void VCLXAccessibleList::FillAccessibleStateSet (utl::AccessibleStateSetHelper&
&& (m_pListBoxHelper->GetStyle() & WB_DROPDOWN ) == WB_DROPDOWN
&& !m_pListBoxHelper->IsInDropDown() )
{
rStateSet.RemoveState (AccessibleStateType::VISIBLE);
rStateSet.RemoveState (AccessibleStateType::SHOWING);
rStateSet &= ~AccessibleStateType::VISIBLE;
rStateSet &= ~AccessibleStateType::SHOWING;
m_bVisible = false;
}
@@ -135,10 +134,10 @@ void VCLXAccessibleList::FillAccessibleStateSet (utl::AccessibleStateSetHelper&
if ( m_pListBoxHelper )
{
if ( m_pListBoxHelper->IsMultiSelectionEnabled() )
rStateSet.AddState( AccessibleStateType::MULTI_SELECTABLE);
rStateSet.AddState (AccessibleStateType::FOCUSABLE);
rStateSet |= AccessibleStateType::MULTI_SELECTABLE;
rStateSet |= AccessibleStateType::FOCUSABLE;
// All children are transient.
rStateSet.AddState (AccessibleStateType::MANAGES_DESCENDANTS);
rStateSet |= AccessibleStateType::MANAGES_DESCENDANTS;
}
}
@@ -34,7 +34,6 @@
#include <vcl/toolkit/lstbox.hxx>
#include <vcl/unohelp2.hxx>
#include <vcl/settings.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <comphelper/accessibleeventnotifier.hxx>
#include <i18nlangtag/languagetag.hxx>
@@ -241,36 +240,36 @@ Reference< XAccessibleRelationSet > SAL_CALL VCLXAccessibleListItem::getAccessib
return new utl::AccessibleRelationSetHelper;
}
Reference< XAccessibleStateSet > SAL_CALL VCLXAccessibleListItem::getAccessibleStateSet( )
sal_Int64 SAL_CALL VCLXAccessibleListItem::getAccessibleStateSet( )
{
::osl::MutexGuard aGuard( m_aMutex );
rtl::Reference<utl::AccessibleStateSetHelper> pStateSetHelper = new utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
{
pStateSetHelper->AddState( AccessibleStateType::TRANSIENT );
nStateSet |= AccessibleStateType::TRANSIENT;
::accessibility::IComboListBoxHelper* pListBoxHelper = m_xParent.is() ? m_xParent->getListBoxHelper() : nullptr;
if (pListBoxHelper && pListBoxHelper->IsEnabled())
{
pStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
pStateSetHelper->AddState( AccessibleStateType::ENABLED );
pStateSetHelper->AddState( AccessibleStateType::SENSITIVE );
nStateSet |= AccessibleStateType::SELECTABLE;
nStateSet |= AccessibleStateType::ENABLED;
nStateSet |= AccessibleStateType::SENSITIVE;
}
if ( m_bSelected )
pStateSetHelper->AddState( AccessibleStateType::SELECTED );
nStateSet |= AccessibleStateType::SELECTED;
if ( m_bVisible )
{
pStateSetHelper->AddState( AccessibleStateType::VISIBLE );
pStateSetHelper->AddState( AccessibleStateType::SHOWING );
nStateSet |= AccessibleStateType::VISIBLE;
nStateSet |= AccessibleStateType::SHOWING;
}
}
else
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
return pStateSetHelper;
return nStateSet;
}
Locale SAL_CALL VCLXAccessibleListItem::getLocale( )
@@ -28,7 +28,6 @@
#include <com/sun/star/datatransfer/clipboard/XClipboard.hpp>
#include <com/sun/star/datatransfer/clipboard/XFlushableClipboard.hpp>
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <unotools/accessiblestatesethelper.hxx>
#include <comphelper/sequence.hxx>
#include <i18nlangtag/languagetag.hxx>
#include <vcl/event.hxx>
@@ -93,22 +92,22 @@ bool VCLXAccessibleMenuItem::IsHighlighted()
}
void VCLXAccessibleMenuItem::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void VCLXAccessibleMenuItem::FillAccessibleStateSet( sal_Int64& rStateSet )
{
OAccessibleMenuItemComponent::FillAccessibleStateSet( rStateSet );
rStateSet.AddState( AccessibleStateType::FOCUSABLE );
rStateSet |= AccessibleStateType::FOCUSABLE;
if ( IsFocused() )
rStateSet.AddState( AccessibleStateType::FOCUSED );
rStateSet |= AccessibleStateType::FOCUSED;
rStateSet.AddState( AccessibleStateType::SELECTABLE );
rStateSet |= AccessibleStateType::SELECTABLE;
if ( IsSelected() )
rStateSet.AddState( AccessibleStateType::SELECTED );
rStateSet |= AccessibleStateType::SELECTED;
if ( IsChecked() )
rStateSet.AddState( AccessibleStateType::CHECKED );
rStateSet |= AccessibleStateType::CHECKED;
}
@@ -22,7 +22,6 @@
#include <toolkit/awt/vclxwindows.hxx>
#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>
@@ -91,16 +90,16 @@ void VCLXAccessibleRadioButton::FillAccessibleRelationSet( utl::AccessibleRelati
}
void VCLXAccessibleRadioButton::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void VCLXAccessibleRadioButton::FillAccessibleStateSet( sal_Int64& rStateSet )
{
VCLXAccessibleTextComponent::FillAccessibleStateSet( rStateSet );
VCLXRadioButton* pVCLXRadioButton = static_cast< VCLXRadioButton* >( GetVCLXWindow() );
if ( pVCLXRadioButton )
{
rStateSet.AddState( AccessibleStateType::FOCUSABLE );
rStateSet |= AccessibleStateType::FOCUSABLE;
if ( pVCLXRadioButton->getState() )
rStateSet.AddState( AccessibleStateType::CHECKED );
rStateSet |= AccessibleStateType::CHECKED;
}
}
@@ -23,7 +23,6 @@
#include <helper/accresmgr.hxx>
#include <strings.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>
@@ -59,7 +58,7 @@ void VCLXAccessibleScrollBar::ProcessWindowEvent( const VclWindowEvent& rVclWind
}
void VCLXAccessibleScrollBar::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void VCLXAccessibleScrollBar::FillAccessibleStateSet( sal_Int64& rStateSet )
{
VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
@@ -69,9 +68,9 @@ void VCLXAccessibleScrollBar::FillAccessibleStateSet( utl::AccessibleStateSetHel
// IA2 CWS: scroll bar should not have FOCUSABLE state.
// rStateSet.AddState( AccessibleStateType::FOCUSABLE );
if ( pVCLXScrollBar->getOrientation() == ScrollBarOrientation::HORIZONTAL )
rStateSet.AddState( AccessibleStateType::HORIZONTAL );
rStateSet |= AccessibleStateType::HORIZONTAL;
else if ( pVCLXScrollBar->getOrientation() == ScrollBarOrientation::VERTICAL )
rStateSet.AddState( AccessibleStateType::VERTICAL );
rStateSet |= AccessibleStateType::VERTICAL;
}
}
@@ -28,7 +28,6 @@
#include <com/sun/star/datatransfer/clipboard/XFlushableClipboard.hpp>
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <cppuhelper/supportsservice.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <vcl/ctrl.hxx>
#include <vcl/svapp.hxx>
@@ -128,15 +127,15 @@ OUString VCLXAccessibleStatusBarItem::GetItemText()
}
void VCLXAccessibleStatusBarItem::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void VCLXAccessibleStatusBarItem::FillAccessibleStateSet( sal_Int64& rStateSet )
{
rStateSet.AddState( AccessibleStateType::ENABLED );
rStateSet.AddState( AccessibleStateType::SENSITIVE );
rStateSet |= AccessibleStateType::ENABLED;
rStateSet |= AccessibleStateType::SENSITIVE;
rStateSet.AddState( AccessibleStateType::VISIBLE );
rStateSet |= AccessibleStateType::VISIBLE;
if ( IsShowing() )
rStateSet.AddState( AccessibleStateType::SHOWING );
rStateSet |= AccessibleStateType::SHOWING;
}
@@ -310,22 +309,22 @@ Reference< XAccessibleRelationSet > VCLXAccessibleStatusBarItem::getAccessibleRe
}
Reference< XAccessibleStateSet > VCLXAccessibleStatusBarItem::getAccessibleStateSet( )
sal_Int64 VCLXAccessibleStatusBarItem::getAccessibleStateSet( )
{
OExternalLockGuard aGuard( this );
rtl::Reference<utl::AccessibleStateSetHelper> pStateSetHelper = new utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
{
FillAccessibleStateSet( *pStateSetHelper );
FillAccessibleStateSet( nStateSet );
}
else
{
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
}
return pStateSetHelper;
return nStateSet;
}
@@ -25,7 +25,6 @@
#include <com/sun/star/accessibility/AccessibleStateType.hpp>
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <o3tl/safeint.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <vcl/tabctrl.hxx>
#include <vcl/tabpage.hxx>
#include <vcl/vclevent.hxx>
@@ -282,12 +281,12 @@ void VCLXAccessibleTabControl::ProcessWindowChildEvent( const VclWindowEvent& rV
}
void VCLXAccessibleTabControl::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void VCLXAccessibleTabControl::FillAccessibleStateSet( sal_Int64& rStateSet )
{
VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
if ( m_pTabControl )
rStateSet.AddState( AccessibleStateType::FOCUSABLE );
rStateSet |= AccessibleStateType::FOCUSABLE;
}
@@ -28,7 +28,6 @@
#include <com/sun/star/datatransfer/clipboard/XFlushableClipboard.hpp>
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <cppuhelper/supportsservice.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <vcl/svapp.hxx>
#include <vcl/unohelp2.hxx>
@@ -161,24 +160,24 @@ void VCLXAccessibleTabPage::Update( bool bNew )
}
void VCLXAccessibleTabPage::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void VCLXAccessibleTabPage::FillAccessibleStateSet( sal_Int64& rStateSet )
{
rStateSet.AddState( AccessibleStateType::ENABLED );
rStateSet.AddState( AccessibleStateType::SENSITIVE );
rStateSet |= AccessibleStateType::ENABLED;
rStateSet |= AccessibleStateType::SENSITIVE;
rStateSet.AddState( AccessibleStateType::FOCUSABLE );
rStateSet |= AccessibleStateType::FOCUSABLE;
if ( IsFocused() )
rStateSet.AddState( AccessibleStateType::FOCUSED );
rStateSet |= AccessibleStateType::FOCUSED;
rStateSet.AddState( AccessibleStateType::VISIBLE );
rStateSet |= AccessibleStateType::VISIBLE;
rStateSet.AddState( AccessibleStateType::SHOWING );
rStateSet |= AccessibleStateType::SHOWING;
rStateSet.AddState( AccessibleStateType::SELECTABLE );
rStateSet |= AccessibleStateType::SELECTABLE;
if ( IsSelected() )
rStateSet.AddState( AccessibleStateType::SELECTED );
rStateSet |= AccessibleStateType::SELECTED;
}
@@ -376,22 +375,22 @@ Reference< XAccessibleRelationSet > VCLXAccessibleTabPage::getAccessibleRelation
}
Reference< XAccessibleStateSet > VCLXAccessibleTabPage::getAccessibleStateSet( )
sal_Int64 VCLXAccessibleTabPage::getAccessibleStateSet( )
{
OExternalLockGuard aGuard( this );
rtl::Reference<utl::AccessibleStateSetHelper> pStateSetHelper = new utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
{
FillAccessibleStateSet( *pStateSetHelper );
FillAccessibleStateSet( nStateSet );
}
else
{
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
}
return pStateSetHelper;
return nStateSet;
}
@@ -22,7 +22,6 @@
#include <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/IndexOutOfBoundsException.hpp>
@@ -473,18 +472,18 @@ void VCLXAccessibleToolBox::ReleaseSubToolBox( ToolBox* _pSubToolBox )
}
}
void VCLXAccessibleToolBox::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void VCLXAccessibleToolBox::FillAccessibleStateSet( sal_Int64& rStateSet )
{
VCLXAccessibleComponent::FillAccessibleStateSet( rStateSet );
VclPtr< ToolBox > pToolBox = GetAs< ToolBox >();
if ( pToolBox )
{
rStateSet.AddState( AccessibleStateType::FOCUSABLE );
rStateSet |= AccessibleStateType::FOCUSABLE;
if ( pToolBox->IsHorizontal() )
rStateSet.AddState( AccessibleStateType::HORIZONTAL );
rStateSet |= AccessibleStateType::HORIZONTAL;
else
rStateSet.AddState( AccessibleStateType::VERTICAL );
rStateSet |= AccessibleStateType::VERTICAL;
}
}
@@ -35,7 +35,6 @@
#include <vcl/unohelp2.hxx>
#include <vcl/help.hxx>
#include <vcl/settings.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <strings.hxx>
#include <sal/log.hxx>
@@ -384,35 +383,35 @@ Reference< XAccessibleRelationSet > SAL_CALL VCLXAccessibleToolBoxItem::getAcces
return new utl::AccessibleRelationSetHelper;
}
Reference< XAccessibleStateSet > SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleStateSet( )
sal_Int64 SAL_CALL VCLXAccessibleToolBoxItem::getAccessibleStateSet( )
{
OExternalLockGuard aGuard( this );
rtl::Reference<utl::AccessibleStateSetHelper> pStateSetHelper = new utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if ( m_pToolBox && !rBHelper.bDisposed && !rBHelper.bInDispose )
{
pStateSetHelper->AddState( AccessibleStateType::FOCUSABLE );
nStateSet |= AccessibleStateType::FOCUSABLE;
if ( m_bIsChecked && m_nRole != AccessibleRole::PANEL )
pStateSetHelper->AddState( AccessibleStateType::CHECKED );
nStateSet |= AccessibleStateType::CHECKED;
if ( m_bIndeterminate )
pStateSetHelper->AddState( AccessibleStateType::INDETERMINATE );
nStateSet |= AccessibleStateType::INDETERMINATE;
if ( m_pToolBox->IsEnabled() && m_pToolBox->IsItemEnabled( m_nItemId ) )
{
pStateSetHelper->AddState( AccessibleStateType::ENABLED );
pStateSetHelper->AddState( AccessibleStateType::SENSITIVE );
nStateSet |= AccessibleStateType::ENABLED;
nStateSet |= AccessibleStateType::SENSITIVE;
}
if ( m_pToolBox->IsItemVisible( m_nItemId ) )
pStateSetHelper->AddState( AccessibleStateType::VISIBLE );
nStateSet |= AccessibleStateType::VISIBLE;
if ( m_pToolBox->IsItemReallyVisible( m_nItemId ) )
pStateSetHelper->AddState( AccessibleStateType::SHOWING );
nStateSet |= AccessibleStateType::SHOWING;
if ( m_bHasFocus )
pStateSetHelper->AddState( AccessibleStateType::FOCUSED );
nStateSet |= AccessibleStateType::FOCUSED;
}
else
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
return pStateSetHelper;
return nStateSet;
}
// XAccessibleText
@@ -27,7 +27,6 @@
#include <com/sun/star/accessibility/AccessibleStateType.hpp>
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <cppuhelper/supportsservice.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <toolkit/awt/vclxfont.hxx>
#include <toolkit/helper/convert.hxx>
@@ -200,25 +199,25 @@ OUString AccessibleDialogControlShape::GetModelStringProperty( OUString const &
}
void AccessibleDialogControlShape::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void AccessibleDialogControlShape::FillAccessibleStateSet( sal_Int64& rStateSet )
{
rStateSet.AddState( AccessibleStateType::ENABLED );
rStateSet |= AccessibleStateType::ENABLED;
rStateSet.AddState( AccessibleStateType::VISIBLE );
rStateSet |= AccessibleStateType::VISIBLE;
rStateSet.AddState( AccessibleStateType::SHOWING );
rStateSet |= AccessibleStateType::SHOWING;
rStateSet.AddState( AccessibleStateType::FOCUSABLE );
rStateSet |= AccessibleStateType::FOCUSABLE;
if ( IsFocused() )
rStateSet.AddState( AccessibleStateType::FOCUSED );
rStateSet |= AccessibleStateType::FOCUSED;
rStateSet.AddState( AccessibleStateType::SELECTABLE );
rStateSet |= AccessibleStateType::SELECTABLE;
if ( IsSelected() )
rStateSet.AddState( AccessibleStateType::SELECTED );
rStateSet |= AccessibleStateType::SELECTED;
rStateSet.AddState( AccessibleStateType::RESIZABLE );
rStateSet |= AccessibleStateType::RESIZABLE;
}
// OCommonAccessibleComponent
@@ -397,22 +396,22 @@ Reference< XAccessibleRelationSet > AccessibleDialogControlShape::getAccessibleR
}
Reference< XAccessibleStateSet > AccessibleDialogControlShape::getAccessibleStateSet( )
sal_Int64 AccessibleDialogControlShape::getAccessibleStateSet( )
{
OExternalLockGuard aGuard( this );
rtl::Reference<utl::AccessibleStateSetHelper> pStateSetHelper = new utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
{
FillAccessibleStateSet( *pStateSetHelper );
FillAccessibleStateSet( nStateSet );
}
else
{
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
}
return pStateSetHelper;
return nStateSet;
}
@@ -32,7 +32,6 @@
#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
#include <cppuhelper/supportsservice.hxx>
#include <tools/debug.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <toolkit/awt/vclxfont.hxx>
#include <toolkit/helper/convert.hxx>
@@ -395,27 +394,27 @@ void AccessibleDialogWindow::ProcessWindowEvent( const VclWindowEvent& rVclWindo
}
void AccessibleDialogWindow::FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet )
void AccessibleDialogWindow::FillAccessibleStateSet( sal_Int64& rStateSet )
{
if ( !m_pDialogWindow )
return;
if ( m_pDialogWindow->IsEnabled() )
rStateSet.AddState( AccessibleStateType::ENABLED );
rStateSet |= AccessibleStateType::ENABLED;
rStateSet.AddState( AccessibleStateType::FOCUSABLE );
rStateSet |= AccessibleStateType::FOCUSABLE;
if ( m_pDialogWindow->HasFocus() )
rStateSet.AddState( AccessibleStateType::FOCUSED );
rStateSet |= AccessibleStateType::FOCUSED;
rStateSet.AddState( AccessibleStateType::VISIBLE );
rStateSet |= AccessibleStateType::VISIBLE;
if ( m_pDialogWindow->IsVisible() )
rStateSet.AddState( AccessibleStateType::SHOWING );
rStateSet |= AccessibleStateType::SHOWING;
rStateSet.AddState( AccessibleStateType::OPAQUE );
rStateSet |= AccessibleStateType::OPAQUE;
rStateSet.AddState( AccessibleStateType::RESIZABLE );
rStateSet |= AccessibleStateType::RESIZABLE;
}
@@ -672,22 +671,22 @@ Reference< XAccessibleRelationSet > AccessibleDialogWindow::getAccessibleRelatio
}
Reference< XAccessibleStateSet > AccessibleDialogWindow::getAccessibleStateSet( )
sal_Int64 AccessibleDialogWindow::getAccessibleStateSet( )
{
OExternalLockGuard aGuard( this );
rtl::Reference<utl::AccessibleStateSetHelper> pStateSetHelper = new utl::AccessibleStateSetHelper;
sal_Int64 nStateSet = 0;
if ( !rBHelper.bDisposed && !rBHelper.bInDispose )
{
FillAccessibleStateSet( *pStateSetHelper );
FillAccessibleStateSet( nStateSet );
}
else
{
pStateSetHelper->AddState( AccessibleStateType::DEFUNC );
nStateSet |= AccessibleStateType::DEFUNC;
}
return pStateSetHelper;
return nStateSet;
}
@@ -27,10 +27,6 @@
namespace vcl { class Window; }
namespace utl {
class AccessibleStateSetHelper;
}
namespace basctl
{
@@ -71,7 +67,7 @@ private:
OUString GetModelStringProperty( OUString const & pPropertyName );
void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
void FillAccessibleStateSet( sal_Int64& rStateSet );
// OCommonAccessibleComponent
virtual css::awt::Rectangle implGetBounds() override;
@@ -112,7 +108,7 @@ public:
virtual OUString SAL_CALL getAccessibleDescription( ) override;
virtual OUString SAL_CALL getAccessibleName( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet( ) override;
virtual css::lang::Locale SAL_CALL getLocale( ) override;
// XAccessibleComponent
+2 -6
View File
@@ -30,10 +30,6 @@
class VclSimpleEvent;
class VclWindowEvent;
namespace utl {
class AccessibleStateSetHelper;
}
namespace basctl
{
@@ -88,7 +84,7 @@ private:
DECL_LINK( WindowEventListener, VclWindowEvent&, void );
void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
void FillAccessibleStateSet( sal_Int64& rStateSet );
// OCommonAccessibleComponent
virtual css::awt::Rectangle implGetBounds( ) override;
@@ -126,7 +122,7 @@ public:
virtual OUString SAL_CALL getAccessibleDescription( ) override;
virtual OUString SAL_CALL getAccessibleName( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet( ) override;
virtual css::lang::Locale SAL_CALL getLocale( ) override;
// XAccessibleComponent
@@ -43,7 +43,6 @@
#include <o3tl/functional.hxx>
#include <o3tl/safeint.hxx>
#include <tools/diagnose_ex.h>
#include <unotools/accessiblestatesethelper.hxx>
#include <algorithm>
#include <iterator>
@@ -73,18 +72,17 @@ AccessibleBase::AccessibleBase(
m_bMayHaveChildren( bMayHaveChildren ),
m_bChildrenInitialized( false ),
m_nEventNotifierId(0),
m_xStateSetHelper( new ::utl::AccessibleStateSetHelper() ),
m_nStateSet( 0 ),
m_aAccInfo(std::move( aAccInfo )),
m_bAlwaysTransparent( bAlwaysTransparent ),
m_bStateSetInitialized( false )
{
// initialize some states
OSL_ASSERT( m_xStateSetHelper.is() );
m_xStateSetHelper->AddState( AccessibleStateType::ENABLED );
m_xStateSetHelper->AddState( AccessibleStateType::SHOWING );
m_xStateSetHelper->AddState( AccessibleStateType::VISIBLE );
m_xStateSetHelper->AddState( AccessibleStateType::SELECTABLE );
m_xStateSetHelper->AddState( AccessibleStateType::FOCUSABLE );
m_nStateSet |= AccessibleStateType::ENABLED;
m_nStateSet |= AccessibleStateType::SHOWING;
m_nStateSet |= AccessibleStateType::VISIBLE;
m_nStateSet |= AccessibleStateType::SELECTABLE;
m_nStateSet |= AccessibleStateType::FOCUSABLE;
}
AccessibleBase::~AccessibleBase()
@@ -165,18 +163,16 @@ bool AccessibleBase::NotifyEvent( EventType eEventType, const AccessibleUniqueId
return false;
}
void AccessibleBase::AddState( sal_Int16 aState )
void AccessibleBase::AddState( sal_Int64 aState )
{
CheckDisposeState();
OSL_ASSERT( m_xStateSetHelper.is() );
m_xStateSetHelper->AddState( aState );
m_nStateSet |= aState;
}
void AccessibleBase::RemoveState( sal_Int16 aState )
void AccessibleBase::RemoveState( sal_Int64 aState )
{
CheckDisposeState();
OSL_ASSERT( m_xStateSetHelper.is() );
m_xStateSetHelper->RemoveState( aState );
m_nStateSet &= ~aState;
}
bool AccessibleBase::UpdateChildren()
@@ -416,11 +412,7 @@ void SAL_CALL AccessibleBase::disposing()
// reset pointers
m_aAccInfo.m_pParent = nullptr;
// attach new empty state set helper to member reference
rtl::Reference<::utl::AccessibleStateSetHelper> pHelper = new ::utl::AccessibleStateSetHelper();
pHelper->AddState(AccessibleStateType::DEFUNC);
// release old helper and attach new one
m_xStateSetHelper = pHelper;
m_nStateSet = AccessibleStateType::DEFUNC;
m_bIsDisposed = true;
@@ -538,7 +530,7 @@ Reference< XAccessibleRelationSet > SAL_CALL AccessibleBase::getAccessibleRelati
return aResult;
}
Reference< XAccessibleStateSet > SAL_CALL AccessibleBase::getAccessibleStateSet()
sal_Int64 SAL_CALL AccessibleBase::getAccessibleStateSet()
{
if( ! m_bStateSetInitialized )
{
@@ -555,7 +547,7 @@ Reference< XAccessibleStateSet > SAL_CALL AccessibleBase::getAccessibleStateSet(
m_bStateSetInitialized = true;
}
return m_xStateSetHelper;
return m_nStateSet;
}
lang::Locale SAL_CALL AccessibleBase::getLocale()
@@ -151,10 +151,10 @@ Reference< XAccessibleRelationSet > SAL_CALL AccessibleTextHelper::getAccessible
return Reference< XAccessibleRelationSet >();
}
Reference< XAccessibleStateSet > SAL_CALL AccessibleTextHelper::getAccessibleStateSet()
sal_Int64 SAL_CALL AccessibleTextHelper::getAccessibleStateSet()
{
OSL_FAIL( "Not implemented in this helper" );
return Reference< XAccessibleStateSet >();
return 0;
}
lang::Locale SAL_CALL AccessibleTextHelper::getLocale()
@@ -40,7 +40,6 @@
namespace com::sun::star::awt { class XWindow; }
namespace com::sun::star::chart2 { class XChartDocument; }
namespace com::sun::star::view { class XSelectionSupplier; }
namespace utl { class AccessibleStateSetHelper; }
class SdrView;
@@ -135,14 +134,14 @@ protected:
@throws css::uno::RuntimeException
*/
void AddState( sal_Int16 aState );
void AddState( sal_Int64 aState );
/** Removes a state from the set if the set contains the state, otherwise
nothing is done.
@throws css::uno::RuntimeException
*/
void RemoveState( sal_Int16 aState );
void RemoveState( sal_Int64 aState );
/** has to be overridden by derived classes that support child elements.
With this method a rescan is initiated that should result in a correct
@@ -238,8 +237,7 @@ protected:
// throw (css::uno::RuntimeException);
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL
getAccessibleRelationSet() override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL
getAccessibleStateSet() override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet() override;
virtual css::lang::Locale SAL_CALL getLocale() override;
// has to be implemented by derived classes
// virtual OUString SAL_CALL getAccessibleDescription()
@@ -301,11 +299,9 @@ private:
::comphelper::AccessibleEventNotifier::TClientId m_nEventNotifierId;
/** Implementation helper for getAccessibleStateSet()
Note: This member must come before m_aStateSet!
/** for getAccessibleStateSet()
*/
rtl::Reference<::utl::AccessibleStateSetHelper> m_xStateSetHelper;
sal_Int64 m_nStateSet;
AccessibleElementInfo m_aAccInfo;
const bool m_bAlwaysTransparent;
@@ -75,7 +75,7 @@ public:
virtual OUString SAL_CALL getAccessibleDescription() override;
virtual OUString SAL_CALL getAccessibleName() override;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet() override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet() override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet() override;
virtual css::lang::Locale SAL_CALL getLocale() override;
private:
+4 -5
View File
@@ -345,9 +345,8 @@ namespace comphelper
,m_xChildMapper( new OWrappedAccessibleChildrenManager( getComponentContext() ) )
{
// determine if we're allowed to cache children
Reference< XAccessibleStateSet > xStates( m_xInnerContext->getAccessibleStateSet( ) );
OSL_ENSURE( xStates.is(), "OAccessibleContextWrapperHelper::OAccessibleContextWrapperHelper: no inner state set!" );
m_xChildMapper->setTransientChildren( !xStates.is() || xStates->contains( AccessibleStateType::MANAGES_DESCENDANTS) );
sal_Int64 aStates = m_xInnerContext->getAccessibleStateSet( );
m_xChildMapper->setTransientChildren( aStates & AccessibleStateType::MANAGES_DESCENDANTS );
m_xChildMapper->setOwningAccessible( m_xOwningAccessible );
}
@@ -417,7 +416,7 @@ namespace comphelper
if ( AccessibleEventId::STATE_CHANGED == _rEvent.EventId )
{
bool bChildTransienceChanged = false;
sal_Int16 nChangeState = 0;
sal_Int64 nChangeState = 0;
if ( _rEvent.OldValue >>= nChangeState )
bChildTransienceChanged = bChildTransienceChanged || AccessibleStateType::MANAGES_DESCENDANTS == nChangeState;
if ( _rEvent.NewValue >>= nChangeState )
@@ -543,7 +542,7 @@ namespace comphelper
}
Reference< XAccessibleStateSet > SAL_CALL OAccessibleContextWrapper::getAccessibleStateSet( )
sal_Int64 SAL_CALL OAccessibleContextWrapper::getAccessibleStateSet( )
{
return m_xInnerContext->getAccessibleStateSet();
}
@@ -30,7 +30,6 @@
#include <memory>
using namespace ::dbaui;
using namespace ::utl;
using namespace ::com::sun::star::uno;
using namespace ::com::sun::star::datatransfer::clipboard;
using namespace ::com::sun::star::lang;
@@ -26,7 +26,6 @@
#include <com/sun/star/accessibility/AccessibleEventId.hpp>
#include <com/sun/star/accessibility/IllegalAccessibleComponentStateException.hpp>
#include <unotools/accessiblestatesethelper.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <comphelper/accessibleeventnotifier.hxx>
#include <cppuhelper/supportsservice.hxx>
@@ -53,17 +52,16 @@ AccessibleContextBase::AccessibleContextBase (
maRole(aRole)
{
// Create the state set.
rtl::Reference<::utl::AccessibleStateSetHelper> pStateSet = new ::utl::AccessibleStateSetHelper ();
mxStateSet = pStateSet;
mnStateSet = 0;
// Set some states. Don't use the SetState method because no events
// shall be broadcasted (that is not yet initialized anyway).
pStateSet->AddState (AccessibleStateType::ENABLED);
pStateSet->AddState (AccessibleStateType::SENSITIVE);
pStateSet->AddState (AccessibleStateType::SHOWING);
pStateSet->AddState (AccessibleStateType::VISIBLE);
pStateSet->AddState (AccessibleStateType::FOCUSABLE);
pStateSet->AddState (AccessibleStateType::SELECTABLE);
mnStateSet |= AccessibleStateType::ENABLED;
mnStateSet |= AccessibleStateType::SENSITIVE;
mnStateSet |= AccessibleStateType::SHOWING;
mnStateSet |= AccessibleStateType::VISIBLE;
mnStateSet |= AccessibleStateType::FOCUSABLE;
mnStateSet |= AccessibleStateType::SELECTABLE;
// Create the relation set.
mxRelationSet = new ::utl::AccessibleRelationSetHelper ();
@@ -73,12 +71,12 @@ AccessibleContextBase::~AccessibleContextBase()
{
}
bool AccessibleContextBase::SetState (sal_Int16 aState)
bool AccessibleContextBase::SetState (sal_Int64 aState)
{
::osl::ClearableMutexGuard aGuard (m_aMutex);
if ((mxStateSet != nullptr) && !mxStateSet->contains(aState))
if (!(mnStateSet & aState))
{
mxStateSet->AddState (aState);
mnStateSet |= aState;
// Clear the mutex guard so that it is not locked during calls to
// listeners.
aGuard.clear();
@@ -100,12 +98,12 @@ bool AccessibleContextBase::SetState (sal_Int16 aState)
}
bool AccessibleContextBase::ResetState (sal_Int16 aState)
bool AccessibleContextBase::ResetState (sal_Int64 aState)
{
::osl::ClearableMutexGuard aGuard (m_aMutex);
if ((mxStateSet != nullptr) && mxStateSet->contains(aState))
if (mnStateSet & aState)
{
mxStateSet->RemoveState (aState);
mnStateSet &= ~aState;
// Clear the mutex guard so that it is not locked during calls to listeners.
aGuard.clear();
@@ -122,14 +120,10 @@ bool AccessibleContextBase::ResetState (sal_Int16 aState)
}
bool AccessibleContextBase::GetState (sal_Int16 aState)
bool AccessibleContextBase::GetState (sal_Int64 aState)
{
::osl::MutexGuard aGuard (m_aMutex);
if (mxStateSet != nullptr)
return mxStateSet->contains(aState);
else
// If there is no state set then return false as a default value.
return false;
return mnStateSet & aState;
}
@@ -292,28 +286,19 @@ uno::Reference<XAccessibleRelationSet> SAL_CALL
SHOWING
VISIBLE
*/
uno::Reference<XAccessibleStateSet> SAL_CALL
sal_Int64 SAL_CALL
AccessibleContextBase::getAccessibleStateSet()
{
rtl::Reference<::utl::AccessibleStateSetHelper> pStateSet;
if (rBHelper.bDisposed)
{
// We are already disposed!
// Create a new state set that has only set the DEFUNC state.
pStateSet = new ::utl::AccessibleStateSetHelper ();
pStateSet->AddState (AccessibleStateType::DEFUNC);
return AccessibleStateType::DEFUNC;
}
else
{
// Create a copy of the state set and return it.
pStateSet = mxStateSet;
if (pStateSet != nullptr)
pStateSet = new ::utl::AccessibleStateSetHelper (*pStateSet);
return mnStateSet;
}
return pStateSet;
}
@@ -42,7 +42,6 @@
#include <comphelper/accessibleeventnotifier.hxx>
#include <comphelper/sequenceashashmap.hxx>
#include <cppuhelper/supportsservice.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <unotools/accessiblerelationsethelper.hxx>
#include <com/sun/star/accessibility/AccessibleRelationType.hpp>
#include <vcl/unohelp.hxx>
@@ -120,22 +119,16 @@ namespace accessibility
mpParaManager( _pParaManager )
{
try
{
// Create the state set.
mxStateSet = new ::utl::AccessibleStateSetHelper ();
// Create the state set.
mnStateSet = 0;
// these are always on
mxStateSet->AddState( AccessibleStateType::MULTI_LINE );
mxStateSet->AddState( AccessibleStateType::FOCUSABLE );
mxStateSet->AddState( AccessibleStateType::VISIBLE );
mxStateSet->AddState( AccessibleStateType::SHOWING );
mxStateSet->AddState( AccessibleStateType::ENABLED );
mxStateSet->AddState( AccessibleStateType::SENSITIVE );
}
catch (const uno::Exception&)
{
}
// these are always on
mnStateSet |= AccessibleStateType::MULTI_LINE;
mnStateSet |= AccessibleStateType::FOCUSABLE;
mnStateSet |= AccessibleStateType::VISIBLE;
mnStateSet |= AccessibleStateType::SHOWING;
mnStateSet |= AccessibleStateType::ENABLED;
mnStateSet |= AccessibleStateType::SENSITIVE;
}
AccessibleEditableTextPara::~AccessibleEditableTextPara()
@@ -567,22 +560,20 @@ namespace accessibility
aEvent );
}
void AccessibleEditableTextPara::SetState( const sal_Int16 nStateId )
void AccessibleEditableTextPara::SetState( const sal_Int64 nStateId )
{
if( mxStateSet != nullptr &&
!mxStateSet->contains(nStateId) )
if( !(mnStateSet & nStateId) )
{
mxStateSet->AddState( nStateId );
mnStateSet |= nStateId;
FireEvent( AccessibleEventId::STATE_CHANGED, uno::Any( nStateId ) );
}
}
void AccessibleEditableTextPara::UnSetState( const sal_Int16 nStateId )
void AccessibleEditableTextPara::UnSetState( const sal_Int64 nStateId )
{
if( mxStateSet != nullptr &&
mxStateSet->contains(nStateId) )
if( mnStateSet & nStateId )
{
mxStateSet->RemoveState( nStateId );
mnStateSet &= ~nStateId;
FireEvent( AccessibleEventId::STATE_CHANGED, uno::Any(), uno::Any( nStateId ) );
}
}
@@ -930,25 +921,23 @@ namespace accessibility
return OUString();
}
uno::Reference< XAccessibleStateSet > SAL_CALL AccessibleEditableTextPara::getAccessibleStateSet()
sal_Int64 SAL_CALL AccessibleEditableTextPara::getAccessibleStateSet()
{
SolarMutexGuard aGuard;
// Create a copy of the state set and return it.
if( !mxStateSet )
return uno::Reference<XAccessibleStateSet>();
uno::Reference<XAccessibleStateSet> xParentStates;
sal_Int64 nParentStates = 0;
if (getAccessibleParent().is())
{
uno::Reference<XAccessibleContext> xParentContext = getAccessibleParent()->getAccessibleContext();
xParentStates = xParentContext->getAccessibleStateSet();
nParentStates = xParentContext->getAccessibleStateSet();
}
if (xParentStates.is() && xParentStates->contains(AccessibleStateType::EDITABLE) )
if (nParentStates & AccessibleStateType::EDITABLE)
{
mxStateSet->AddState(AccessibleStateType::EDITABLE);
mnStateSet |= AccessibleStateType::EDITABLE;
}
return uno::Reference<XAccessibleStateSet>( new ::utl::AccessibleStateSetHelper (*mxStateSet) );
return mnStateSet;
}
lang::Locale SAL_CALL AccessibleEditableTextPara::getLocale()
@@ -31,7 +31,6 @@
#include <com/sun/star/accessibility/AccessibleEventId.hpp>
#include <comphelper/accessibleeventnotifier.hxx>
#include <cppuhelper/supportsservice.hxx>
#include <unotools/accessiblestatesethelper.hxx>
#include <i18nlangtag/languagetag.hxx>
#include <editeng/AccessibleEditableTextPara.hxx>
#include <editeng/eerdll.hxx>
@@ -66,13 +65,13 @@ namespace accessibility
try
{
// Create the state set.
mxStateSet = new ::utl::AccessibleStateSetHelper ();
mnStateSet = 0;
// these are always on
mxStateSet->AddState( AccessibleStateType::VISIBLE );
mxStateSet->AddState( AccessibleStateType::SHOWING );
mxStateSet->AddState( AccessibleStateType::ENABLED );
mxStateSet->AddState( AccessibleStateType::SENSITIVE );
mnStateSet |= AccessibleStateType::VISIBLE;
mnStateSet |= AccessibleStateType::SHOWING;
mnStateSet |= AccessibleStateType::ENABLED;
mnStateSet |= AccessibleStateType::SENSITIVE;
}
catch( const uno::Exception& ) {}
}
@@ -148,17 +147,13 @@ namespace accessibility
return uno::Reference< XAccessibleRelationSet >();
}
uno::Reference< XAccessibleStateSet > SAL_CALL AccessibleImageBullet::getAccessibleStateSet()
sal_Int64 SAL_CALL AccessibleImageBullet::getAccessibleStateSet()
{
SolarMutexGuard aGuard;
// Create a copy of the state set and return it.
if( !mxStateSet )
return uno::Reference<XAccessibleStateSet>();
return uno::Reference<XAccessibleStateSet>( new ::utl::AccessibleStateSetHelper (*mxStateSet) );
return mnStateSet;
}
lang::Locale SAL_CALL AccessibleImageBullet::getLocale()
@@ -420,22 +415,20 @@ namespace accessibility
aEvent );
}
void AccessibleImageBullet::SetState( const sal_Int16 nStateId )
void AccessibleImageBullet::SetState( const sal_Int64 nStateId )
{
if( mxStateSet != nullptr &&
!mxStateSet->contains(nStateId) )
if( !(mnStateSet & nStateId) )
{
mxStateSet->AddState( nStateId );
mnStateSet |= nStateId;
FireEvent( AccessibleEventId::STATE_CHANGED, uno::Any( nStateId ) );
}
}
void AccessibleImageBullet::UnSetState( const sal_Int16 nStateId )
void AccessibleImageBullet::UnSetState( const sal_Int64 nStateId )
{
if( mxStateSet != nullptr &&
mxStateSet->contains(nStateId) )
if( mnStateSet & nStateId )
{
mxStateSet->RemoveState( nStateId );
mnStateSet &= ~nStateId;
FireEvent( AccessibleEventId::STATE_CHANGED, uno::Any(), uno::Any( nStateId ) );
}
}
@@ -33,7 +33,6 @@
class SvxEditSource;
class SvxTextForwarder;
class SvxViewForwarder;
namespace utl { class AccessibleStateSetHelper; }
namespace accessibility
{
@@ -66,7 +65,7 @@ namespace accessibility
virtual OUString SAL_CALL getAccessibleDescription() override;
virtual OUString SAL_CALL getAccessibleName() override;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet() override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet() override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet() override;
virtual css::lang::Locale SAL_CALL getLocale() override;
// XAccessibleEventBroadcaster
@@ -148,8 +147,8 @@ namespace accessibility
AccessibleImageBullet& operator= ( const AccessibleImageBullet& ) = delete;
// maintain state set and send STATE_CHANGE events
void SetState( const sal_Int16 nStateId );
void UnSetState( const sal_Int16 nStateId );
void SetState( const sal_Int64 nStateId );
void UnSetState( const sal_Int64 nStateId );
SvxEditSource& GetEditSource() const;
@@ -188,7 +187,7 @@ namespace accessibility
Point maEEOffset;
// the current state set (updated from SetState/UnSetState and guarded by solar mutex)
rtl::Reference< utl::AccessibleStateSetHelper > mxStateSet;
sal_Int64 mnStateSet = 0;
/// The shape we're the accessible for (unguarded)
css::uno::Reference< css::accessibility::XAccessible > mxParent;
@@ -56,9 +56,9 @@ namespace accessibility
// owner is responsible for possible child death
}
void AccessibleParaManager::SetAdditionalChildStates( VectorOfStates&& rChildStates )
void AccessibleParaManager::SetAdditionalChildStates( sal_Int64 nChildStates )
{
maChildStates = std::move(rChildStates);
mnChildStates = nChildStates;
}
void AccessibleParaManager::SetNum( sal_Int32 nNumParas )
@@ -243,35 +243,39 @@ namespace accessibility
rChild.SetState( AccessibleStateType::FOCUSED );
// add states passed from outside
for( const auto& rState : maChildStates )
rChild.SetState( rState );
for (int i=0; i<63; i++)
{
sal_Int64 nState = sal_Int64(1) << i;
if ( nState & mnChildStates )
rChild.SetState( nState );
}
}
void AccessibleParaManager::SetState( sal_Int32 nChild, const sal_Int16 nStateId )
void AccessibleParaManager::SetState( sal_Int32 nChild, const sal_Int64 nStateId )
{
MemFunAdapter< const sal_Int16 > aFunc( &AccessibleEditableTextPara::SetState,
MemFunAdapter< const sal_Int64 > aFunc( &AccessibleEditableTextPara::SetState,
nStateId );
aFunc( GetChild(nChild) );
}
void AccessibleParaManager::SetState( const sal_Int16 nStateId )
void AccessibleParaManager::SetState( const sal_Int64 nStateId )
{
std::for_each( begin(), end(),
MemFunAdapter< const sal_Int16 >( &AccessibleEditableTextPara::SetState,
MemFunAdapter< const sal_Int64 >( &AccessibleEditableTextPara::SetState,
nStateId ) );
}
void AccessibleParaManager::UnSetState( sal_Int32 nChild, const sal_Int16 nStateId )
void AccessibleParaManager::UnSetState( sal_Int32 nChild, const sal_Int64 nStateId )
{
MemFunAdapter< const sal_Int16 > aFunc( &AccessibleEditableTextPara::UnSetState,
MemFunAdapter< const sal_Int64 > aFunc( &AccessibleEditableTextPara::UnSetState,
nStateId );
aFunc( GetChild(nChild) );
}
void AccessibleParaManager::UnSetState( const sal_Int16 nStateId )
void AccessibleParaManager::UnSetState( const sal_Int64 nStateId )
{
std::for_each( begin(), end(),
MemFunAdapter< const sal_Int16 >( &AccessibleEditableTextPara::UnSetState,
MemFunAdapter< const sal_Int64 >( &AccessibleEditableTextPara::UnSetState,
nStateId ) );
}
-3
View File
@@ -266,9 +266,6 @@ excludelist:
include/tools/simdsupport.hxx:
# Needed for CPU intrinsics detection to work
- emmintrin.h
include/unotools/accessiblestatesethelper.hxx:
# base class has to be a complete type
- com/sun/star/accessibility/XAccessibleStateSet.hpp
include/unotools/accessiblerelationsethelper.hxx:
# base class has to be a complete type
- com/sun/star/accessibility/XAccessibleRelationSet.hpp
@@ -89,7 +89,7 @@ namespace comphelper
virtual OUString SAL_CALL getAccessibleDescription( ) override = 0;
virtual OUString SAL_CALL getAccessibleName( ) override = 0;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) override = 0;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) override = 0;
virtual sal_Int64 SAL_CALL getAccessibleStateSet( ) override = 0;
// XAccessibleContext2 - default implementation
virtual OUString SAL_CALL getAccessibleId( ) override;
+1 -1
View File
@@ -289,7 +289,7 @@ namespace comphelper
virtual OUString SAL_CALL getAccessibleDescription( ) override;
virtual OUString SAL_CALL getAccessibleName( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet( ) override;
virtual css::lang::Locale SAL_CALL getLocale( ) override;
// XAccessibleEventBroadcaster
+5 -8
View File
@@ -30,10 +30,8 @@
#include <editeng/editengdllapi.h>
#include <rtl/ref.hxx>
namespace com::sun::star::accessibility { class XAccessibleStateSet; }
namespace com::sun::star::accessibility { class XAccessibleRelationSet; }
namespace com::sun::star::accessibility { struct AccessibleEventObject; }
namespace utl { class AccessibleStateSetHelper; }
namespace accessibility {
@@ -125,7 +123,7 @@ public:
If the specified state changed its value due to this call
<TRUE/> is returned, otherwise <FALSE/>.
*/
virtual bool SetState (sal_Int16 aState);
virtual bool SetState (sal_Int64 aState);
/** Reset the specified state (turn it off) and send events to all
listeners to inform them of the change.
@@ -137,7 +135,7 @@ public:
If the specified state changed its value due to this call
<TRUE/> is returned, otherwise <FALSE/>.
*/
virtual bool ResetState (sal_Int16 aState);
virtual bool ResetState (sal_Int64 aState);
/** Return the state of the specified state.
@@ -148,7 +146,7 @@ public:
A value of <TRUE/> indicates that the state is set. A <FALSE/>
value indicates an unset state.
*/
bool GetState (sal_Int16 aState);
bool GetState (sal_Int64 aState);
/** Replace the current relation set with the specified one. Send
events for relations that are not in both sets.
@@ -204,8 +202,7 @@ public:
getAccessibleRelationSet() override;
/// Return the set of current states.
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet> SAL_CALL
getAccessibleStateSet() override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet() override;
/** Return the parents locale or throw exception if this object has no
parent yet/anymore.
@@ -261,7 +258,7 @@ public:
protected:
/** The state set.
*/
rtl::Reference<::utl::AccessibleStateSetHelper> mxStateSet;
sal_Int64 mnStateSet;
/** The relation set. Relations can be set or removed by calling the
<member>AddRelation</member> and <member>RemoveRelation</member> methods.
@@ -48,7 +48,6 @@ class MapMode;
class SvxAccessibleTextAdapter;
class SvxAccessibleTextEditViewAdapter;
namespace accessibility { class AccessibleImageBullet; }
namespace utl { class AccessibleStateSetHelper; }
namespace accessibility
{
@@ -102,7 +101,7 @@ namespace accessibility
virtual OUString SAL_CALL getAccessibleDescription() override;
virtual OUString SAL_CALL getAccessibleName() override;
virtual css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet() override;
virtual css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet() override;
virtual sal_Int64 SAL_CALL getAccessibleStateSet() override;
virtual css::lang::Locale SAL_CALL getLocale() override;
// XAccessibleEventBroadcaster
@@ -236,9 +235,9 @@ namespace accessibility
void FireEvent(const sal_Int16 nEventId, const css::uno::Any& rNewValue = css::uno::Any(), const css::uno::Any& rOldValue = css::uno::Any() ) const;
/// Sets the given state on the internal state set and fires STATE_CHANGE event. Don't hold locks when calling this!
void SetState( const sal_Int16 nStateId );
void SetState( const sal_Int64 nStateId );
/// Unsets the given state on the internal state set and fires STATE_CHANGE event. Don't hold locks when calling this!
void UnSetState( const sal_Int16 nStateId );
void UnSetState( const sal_Int64 nStateId );
static tools::Rectangle LogicToPixel( const tools::Rectangle& rRect, const MapMode& rMapMode, SvxViewForwarder const & rForwarder );
@@ -365,7 +364,7 @@ namespace accessibility
Point maEEOffset;
// the current state set (updated from SetState/UnSetState and guarded by solar mutex)
rtl::Reference< ::utl::AccessibleStateSetHelper > mxStateSet;
sal_Int64 mnStateSet;
/// The shape we're the accessible for (unguarded)
css::uno::Reference< css::accessibility::XAccessible > mxParent;
+7 -8
View File
@@ -94,18 +94,17 @@ namespace accessibility
typedef ::std::pair< css::uno::Reference<
css::accessibility::XAccessible > , css::awt::Rectangle > Child;
typedef ::std::vector< WeakChild > VectorOfChildren;
typedef ::std::vector< sal_Int16 > VectorOfStates;
AccessibleParaManager();
~AccessibleParaManager();
/** Sets a vector of additional accessible states.
/** Sets a bitset of additional accessible states.
The states are passed to every created child object
(text paragraph). The state values are defined in
css::accessibility::AccessibleStateType.
*/
void SetAdditionalChildStates( VectorOfStates&& rChildStates );
void SetAdditionalChildStates( sal_Int64 nChildStates );
/** Set the number of paragraphs
@@ -144,9 +143,9 @@ namespace accessibility
/// Make all children active and editable (or off)
void SetActive( bool bActive = true );
/// Set state of all children
void SetState( const sal_Int16 nStateId );
void SetState( const sal_Int64 nStateId );
/// Unset state of all children
void UnSetState( const sal_Int16 nStateId );
void UnSetState( const sal_Int64 nStateId );
/// Set offset to edit engine for all children
void SetEEOffset ( const Point& rOffset );
/// Dispose all living children
@@ -240,9 +239,9 @@ namespace accessibility
private:
/// Set state on given child
void SetState( sal_Int32 nChild, const sal_Int16 nStateId );
void SetState( sal_Int32 nChild, const sal_Int64 nStateId );
/// Unset state on given child
void UnSetState( sal_Int32 nChild, const sal_Int16 nStateId );
void UnSetState( sal_Int32 nChild, const sal_Int64 nStateId );
/// Init child with default state (as stored in previous SetFocus and SetActive calls)
void InitChild( AccessibleEditableTextPara& rChild,
SvxEditSourceAdapter& rEditSource,
@@ -253,7 +252,7 @@ namespace accessibility
VectorOfChildren maChildren;
/// Additional states that will be set at every created child object.
VectorOfStates maChildStates;
sal_Int64 mnChildStates;
// cache EE offset for child creation
Point maEEOffset;
+2 -6
View File
@@ -44,10 +44,6 @@ namespace svt {
class BrowseBoxImpl;
}
namespace utl {
class AccessibleStateSetHelper;
}
namespace vcl {
class IAccessibleFactory;
}
@@ -803,13 +799,13 @@ public:
/** Fills the StateSet with all states (except DEFUNC and SHOWING, done by
the accessible object), depending on the specified object type. */
virtual void FillAccessibleStateSet(
::utl::AccessibleStateSetHelper& rStateSet,
sal_Int64& rStateSet,
AccessibleBrowseBoxObjType eObjType ) const override;
/** Fills the StateSet with all states for one cell (except DEFUNC and SHOWING, done by
the accessible object). */
virtual void FillAccessibleStateSetForCell(
::utl::AccessibleStateSetHelper& _rStateSet,
sal_Int64& _rStateSet,
sal_Int32 _nRow, sal_uInt16 _nColumn ) const override;
/** Sets focus to current cell of the data table. */
+1 -1
View File
@@ -139,7 +139,7 @@ private:
#ifdef DBG_UTIL
/// Set the specified state
virtual bool SetState( sal_Int16 _nState ) override;
virtual bool SetState( sal_Int64 _nState ) override;
#endif // DBG_UTIL
/// (safely) reads the given property from the model of the UNO control
+4 -6
View File
@@ -52,7 +52,6 @@ namespace com::sun::star {
namespace accessibility { class XAccessibleEventListener; }
namespace accessibility { class XAccessibleHyperlink; }
namespace accessibility { class XAccessibleRelationSet; }
namespace accessibility { class XAccessibleStateSet; }
namespace beans { struct PropertyValue; }
namespace document { struct EventObject; }
namespace drawing { class XShape; }
@@ -178,7 +177,7 @@ public:
The returned flag indicates whether the specified state has been
changed (<TRUE/>), i.e. it has formerly not been set.
*/
virtual bool SetState (sal_Int16 aState) override;
virtual bool SetState (sal_Int64 aState) override;
/** Reset the specified state. If the state is <const>FOCUSED</const>
then, additionally to the inherited functionality, the focus
@@ -192,7 +191,7 @@ public:
The returned flag indicates whether the specified state has been
changed (<TRUE/>), i.e. it has formerly been set.
*/
virtual bool ResetState (sal_Int16 aState) override;
virtual bool ResetState (sal_Int64 aState) override;
/** Return the state of the specified state. Take the
<const>FOCUSED</const> state from the accessible edit engine.
@@ -205,7 +204,7 @@ public:
entity that manages the state set.
*/
bool GetState (sal_Int16 aState);
bool GetState (sal_Int64 aState);
//===== XAccessibleContext ==============================================
@@ -229,8 +228,7 @@ public:
/// Return the set of current states.
virtual css::uno::Reference<
css::accessibility::XAccessibleStateSet> SAL_CALL
virtual sal_Int64 SAL_CALL
getAccessibleStateSet() override;
/// Return this objects index among the parents children.
+2 -2
View File
@@ -249,7 +249,7 @@ public:
*/
sal_Int32 GetStartIndex() const;
/** Sets a vector of additional accessible states.
/** Sets a bitset of additional accessible states.
The states are passed to every created child object
(text paragraph). The state values are defined in
@@ -258,7 +258,7 @@ public:
This function has to be called before querying for
any children (e.g. with GetChild()).
*/
void SetAdditionalChildStates(VectorOfStates&& rChildStates);
void SetAdditionalChildStates(sal_Int64 rChildStates);
/** Update the visible children
@@ -38,7 +38,6 @@ class VclWindowEvent;
namespace utl {
class AccessibleRelationSetHelper;
class AccessibleStateSetHelper;
}
@@ -63,7 +62,7 @@ protected:
virtual void ProcessWindowEvent( const VclWindowEvent& rVclWindowEvent );
virtual void ProcessWindowChildEvent( const VclWindowEvent& rVclWindowEvent );
virtual void FillAccessibleRelationSet( utl::AccessibleRelationSetHelper& rRelationSet );
virtual void FillAccessibleStateSet( utl::AccessibleStateSetHelper& rStateSet );
virtual void FillAccessibleStateSet( sal_Int64& rStateSet );
virtual css::uno::Reference< css::accessibility::XAccessible > GetChildAccessible( const VclWindowEvent& rVclWindowEvent );
@@ -100,7 +99,7 @@ public:
OUString SAL_CALL getAccessibleName( ) override;
OUString SAL_CALL getAccessibleId( ) override;
css::uno::Reference< css::accessibility::XAccessibleRelationSet > SAL_CALL getAccessibleRelationSet( ) override;
css::uno::Reference< css::accessibility::XAccessibleStateSet > SAL_CALL getAccessibleStateSet( ) override;
sal_Int64 SAL_CALL getAccessibleStateSet( ) override;
css::lang::Locale SAL_CALL getLocale( ) override;
// css::accessibility::XAccessibleComponent
@@ -140,7 +139,7 @@ private:
OUString getAccessibleName() => VCL Window::GetAccessibleText() => Most windows return Window::GetText()
OUString getAccessibleId() => VCL Window::get_id()
Reference< XAccessibleRelationSet > getAccessibleRelationSet()
Reference< XAccessibleStateSet > getAccessibleStateSet() => override FillAccessibleStateSet( ... )
sal_Int64 getAccessibleStateSet() => override FillAccessibleStateSet( ... )
---------------------------------------------------------- */
@@ -1,137 +0,0 @@
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*
* This file is part of the LibreOffice project.
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice:
*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership. The ASF licenses this file to you under the Apache
* License, Version 2.0 (the "License"); you may not use this file
* except in compliance with the License. You may obtain a copy of
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
*/
#ifndef INCLUDED_UNOTOOLS_ACCESSIBLESTATESETHELPER_HXX
#define INCLUDED_UNOTOOLS_ACCESSIBLESTATESETHELPER_HXX
#include <unotools/unotoolsdllapi.h>
#include <com/sun/star/accessibility/XAccessibleStateSet.hpp>
#include <cppuhelper/implbase.hxx>
#include <mutex>
//= XAccessibleStateSet helper classes
//... namespace utl .......................................................
namespace utl
{
/** @descr
This base class provides an implementation of the
<code>AccessibleStateSet</code> service.
*/
class UNOTOOLS_DLLPUBLIC AccessibleStateSetHelper final
: public cppu::WeakImplHelper<css::accessibility::XAccessibleStateSet>
{
public:
//===== internal ========================================================
AccessibleStateSetHelper();
/** constructs an object with some states initially set
<p>This ctor is compatible with
<method scope="comphelper">OAccessibleImplementationAccess::implGetForeignControlledStates</method></p>
@param _nInitialStates
is a bit mask. Every bit 2^n means that the state number n (as got from the
AccessibleStateType constants) should be set initially.
*/
AccessibleStateSetHelper(const sal_Int64 _nInitialStates);
AccessibleStateSetHelper(const AccessibleStateSetHelper& rHelper);
private:
virtual ~AccessibleStateSetHelper() override;
public:
//===== XAccessibleStateSet ==============================================
/** Checks whether the current state set is empty.
@return
Returns <TRUE/> if there is no state in this state set and
<FALSE/> if there is at least one state set in it.
*/
virtual sal_Bool SAL_CALL isEmpty() override;
/** Checks if the given state is a member of the state set of this
object.
@param aState
The state for which to check membership. This has to be one of
the constants of AccessibleStateType.
@return
Returns <TRUE/> if the given state is a member of this object's
state set and <FALSE/> otherwise.
*/
virtual sal_Bool SAL_CALL contains(sal_Int16 aState) override;
/** Checks if all of the given states are in this object's state
set.
@param aStateSet
This sequence of states is interpreted as set and every of its
members, duplicates are ignored, is checked for membership in
this object's state set. Each state has to be one of the
constants of AccessibleStateType.
@return
Returns <TRUE/> if all states of the given state set are members
of this object's state set. <FALSE/> is returned if at least
one of the states in the given state is not a member of this
object's state set.
*/
virtual sal_Bool SAL_CALL containsAll(const css::uno::Sequence<sal_Int16>& rStateSet) override;
/** Returns a sequence of all states.
*/
virtual css::uno::Sequence<sal_Int16> SAL_CALL getStates() override;
/** Adds a state to the set.
@throws css::uno::RuntimeException
*/
void AddState(sal_Int16 aState);
/** Removes a state from the set if the set contains the state, otherwise nothing is done.
@throws css::uno::RuntimeException
*/
void RemoveState(sal_Int16 aState);
//===== XTypeProvider ===================================================
/** Returns a sequence of all supported interfaces.
*/
virtual css::uno::Sequence<css::uno::Type> SAL_CALL getTypes() override;
/** Returns an implementation id.
*/
virtual css::uno::Sequence<sal_Int8> SAL_CALL getImplementationId() override;
private:
/// Mutex guarding this object.
std::mutex maMutex;
/// The implementation of this helper interface.
sal_uInt64 maStates;
};
}
//... namespace utl .......................................................
#endif
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
+2 -3
View File
@@ -25,7 +25,6 @@
#include <com/sun/star/uno/Reference.hxx>
namespace com::sun::star::accessibility { class XAccessible; }
namespace utl { class AccessibleStateSetHelper; }
namespace vcl { class Window; }
namespace vcl::table
@@ -70,7 +69,7 @@ public:
/** Fills the StateSet with all states (except DEFUNC and SHOWING, done by
the accessible object), depending on the specified object type. */
virtual void FillAccessibleStateSet( ::utl::AccessibleStateSetHelper& rStateSet,
virtual void FillAccessibleStateSet( sal_Int64& rStateSet,
AccessibleTableControlObjType eObjType ) const= 0;
// Window
@@ -90,7 +89,7 @@ public:
virtual tools::Rectangle calcCellRect( sal_Int32 _nRowPos, sal_Int32 _nColPos ) = 0;
virtual tools::Rectangle GetFieldCharacterBounds(sal_Int32 _nRow,sal_Int32 _nColumnPos,sal_Int32 nIndex)= 0;
virtual sal_Int32 GetFieldIndexAtPoint(sal_Int32 _nRow,sal_Int32 _nColumnPos,const Point& _rPoint)= 0;
virtual void FillAccessibleStateSetForCell( ::utl::AccessibleStateSetHelper& _rStateSet, sal_Int32 _nRow, sal_uInt16 _nColumnPos ) const= 0;
virtual void FillAccessibleStateSetForCell( sal_Int64& _rStateSet, sal_Int32 _nRow, sal_uInt16 _nColumnPos ) const= 0;
virtual OUString GetRowName(sal_Int32 _nIndex) const = 0;
virtual OUString GetColumnName( sal_Int32 _nIndex ) const = 0;
virtual OUString GetAccessibleCellText(sal_Int32 _nRowPos, sal_Int32 _nColPos) const = 0;
+2 -3
View File
@@ -24,7 +24,6 @@
#include <vcl/window.hxx>
namespace com::sun::star::accessibility { class XAccessible; }
namespace utl { class AccessibleStateSetHelper; }
namespace vcl
{
@@ -106,8 +105,8 @@ public:
virtual OUString GetAccessibleObjectName( AccessibleBrowseBoxObjType _eType, sal_Int32 _nPos = -1 ) const = 0;
virtual OUString GetAccessibleObjectDescription( AccessibleBrowseBoxObjType _eType, sal_Int32 _nPos = -1 ) const = 0;
virtual void FillAccessibleStateSet( ::utl::AccessibleStateSetHelper& _rStateSet, AccessibleBrowseBoxObjType _eType ) const = 0;
virtual void FillAccessibleStateSetForCell( ::utl::AccessibleStateSetHelper& _rStateSet, sal_Int32 _nRow, sal_uInt16 _nColumnPos ) const = 0;
virtual void FillAccessibleStateSet( sal_Int64& _rStateSet, AccessibleBrowseBoxObjType _eType ) const = 0;
virtual void FillAccessibleStateSetForCell( sal_Int64& _rStateSet, sal_Int32 _nRow, sal_uInt16 _nColumnPos ) const = 0;
virtual void GrabTableFocus() = 0;
// OutputDevice

Some files were not shown because too many files have changed in this diff Show More