summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--include/svtools/valueset.hxx4
-rw-r--r--svtools/source/control/valueset.cxx24
2 files changed, 12 insertions, 16 deletions
diff --git a/include/svtools/valueset.hxx b/include/svtools/valueset.hxx
index 92c3e4e361cc..e3ff72438003 100644
--- a/include/svtools/valueset.hxx
+++ b/include/svtools/valueset.hxx
@@ -23,6 +23,7 @@
#include <vcl/wintypes.hxx>
#include <vcl/customweld.hxx>
#include <vcl/image.hxx>
+#include <rtl/ref.hxx>
#include <memory>
#include <vector>
@@ -34,6 +35,7 @@ class DataChangedEvent;
class ScrollBar;
class UserDrawEvent;
class VirtualDevice;
+class ValueSetAcc;
struct ValueSetItem;
@@ -185,7 +187,7 @@ class SVT_DLLPUBLIC ValueSet : public weld::CustomWidgetController
{
private:
ScopedVclPtr<VirtualDevice> maVirDev;
- css::uno::Reference<css::accessibility::XAccessible> mxAccessible;
+ rtl::Reference<ValueSetAcc> mxAccessible;
ValueItemList mItemList;
std::unique_ptr<ValueSetItem> mpNoneItem;
std::unique_ptr<weld::ScrolledWindow> mxScrolledWindow;
diff --git a/svtools/source/control/valueset.cxx b/svtools/source/control/valueset.cxx
index 71f2f7c5aa0d..e40da6193084 100644
--- a/svtools/source/control/valueset.cxx
+++ b/svtools/source/control/valueset.cxx
@@ -123,9 +123,8 @@ Reference<XAccessible> ValueSet::CreateAccessible()
ValueSet::~ValueSet()
{
- Reference<XComponent> xComponent(mxAccessible, UNO_QUERY);
- if (xComponent.is())
- xComponent->dispose();
+ if (mxAccessible)
+ mxAccessible->dispose();
ImplDeleteItems();
}
@@ -228,16 +227,13 @@ sal_uInt16 ValueSet::ImplGetVisibleItemCount() const
void ValueSet::ImplFireAccessibleEvent( short nEventId, const Any& rOldValue, const Any& rNewValue )
{
- ValueSetAcc* pAcc = ValueSetAcc::getImplementation(mxAccessible);
-
- if( pAcc )
- pAcc->FireAccessibleEvent( nEventId, rOldValue, rNewValue );
+ if( mxAccessible )
+ mxAccessible->FireAccessibleEvent( nEventId, rOldValue, rNewValue );
}
bool ValueSet::ImplHasAccessibleListeners() const
{
- ValueSetAcc* pAcc = ValueSetAcc::getImplementation(mxAccessible);
- return( pAcc && pAcc->HasAccessibleListeners() );
+ return mxAccessible && mxAccessible->HasAccessibleListeners();
}
IMPL_LINK(ValueSet, ImplScrollHdl, weld::ScrolledWindow&, rScrollWin, void)
@@ -265,9 +261,8 @@ void ValueSet::GetFocus()
CustomWidgetController::GetFocus();
// Tell the accessible object that we got the focus.
- ValueSetAcc* pAcc = ValueSetAcc::getImplementation(mxAccessible);
- if (pAcc)
- pAcc->GetFocus();
+ if (mxAccessible)
+ mxAccessible->GetFocus();
}
void ValueSet::LoseFocus()
@@ -277,9 +272,8 @@ void ValueSet::LoseFocus()
CustomWidgetController::LoseFocus();
// Tell the accessible object that we lost the focus.
- ValueSetAcc* pAcc = ValueSetAcc::getImplementation(mxAccessible);
- if( pAcc )
- pAcc->LoseFocus();
+ if( mxAccessible )
+ mxAccessible->LoseFocus();
}
void ValueSet::Resize()