summaryrefslogtreecommitdiffstats
path: root/starmath
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2017-01-25 16:09:23 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2017-01-26 08:13:46 +0200
commit0d172a803054801ff42296c65cfca844ad5e8f6b (patch)
treecbabd236256fc12de12c6489fb9cf367a535e91c /starmath
parentuse rtl::Reference in SwXAutoTextEntry (diff)
downloadcore-0d172a803054801ff42296c65cfca844ad5e8f6b.tar.gz
core-0d172a803054801ff42296c65cfca844ad5e8f6b.zip
use rtl::Reference in SmGraphicWindow
instead of storing both a raw pointer and an uno::Reference Change-Id: Ib84809bee35c01fb590439174740d92bf4cd54bd
Diffstat (limited to 'starmath')
-rw-r--r--starmath/inc/view.hxx6
-rw-r--r--starmath/source/view.cxx18
2 files changed, 10 insertions, 14 deletions
diff --git a/starmath/inc/view.hxx b/starmath/inc/view.hxx
index cec85a1bfefc..b41f5a78caa9 100644
--- a/starmath/inc/view.hxx
+++ b/starmath/inc/view.hxx
@@ -23,6 +23,7 @@
#include <memory>
+#include <rtl/ref.hxx>
#include <sfx2/dockwin.hxx>
#include <sfx2/viewsh.hxx>
#include <svtools/scrwin.hxx>
@@ -72,8 +73,7 @@ protected:
bool IsInlineEditEnabled() const;
private:
- css::uno::Reference<css::accessibility::XAccessible> xAccessible;
- SmGraphicAccessible* pAccessible;
+ rtl::Reference<SmGraphicAccessible> mxAccessible;
SmViewShell* pViewShell;
sal_uInt16 nZoom;
@@ -131,7 +131,7 @@ public:
using Window::GetAccessible;
SmGraphicAccessible* GetAccessible_Impl()
{
- return pAccessible;
+ return mxAccessible.get();
}
};
diff --git a/starmath/source/view.cxx b/starmath/source/view.cxx
index dc099f9beef6..0e93bdd52974 100644
--- a/starmath/source/view.cxx
+++ b/starmath/source/view.cxx
@@ -95,7 +95,6 @@ using namespace css::uno;
SmGraphicWindow::SmGraphicWindow(SmViewShell* pShell)
: ScrollableWindow(&pShell->GetViewFrame()->GetWindow())
- , pAccessible(nullptr)
, pViewShell(pShell)
, nZoom(100)
{
@@ -122,10 +121,8 @@ SmGraphicWindow::~SmGraphicWindow()
void SmGraphicWindow::dispose()
{
- if (pAccessible)
- pAccessible->ClearWin(); // make Accessible defunctional
- // Note: memory for pAccessible will be freed when the reference
- // xAccessible is released.
+ if (mxAccessible.is())
+ mxAccessible->ClearWin(); // make Accessible defunctional
CaretBlinkStop();
ScrollableWindow::dispose();
}
@@ -235,12 +232,12 @@ void SmGraphicWindow::GetFocus()
void SmGraphicWindow::LoseFocus()
{
ScrollableWindow::LoseFocus();
- if (xAccessible.is())
+ if (mxAccessible.is())
{
uno::Any aOldValue, aNewValue;
aOldValue <<= AccessibleStateType::FOCUSED;
// aNewValue remains empty
- pAccessible->LaunchEvent( AccessibleEventId::STATE_CHANGED,
+ mxAccessible->LaunchEvent( AccessibleEventId::STATE_CHANGED,
aOldValue, aNewValue );
}
if (!IsInlineEditEnabled())
@@ -614,12 +611,11 @@ void SmGraphicWindow::ZoomToFitInWindow()
uno::Reference< XAccessible > SmGraphicWindow::CreateAccessible()
{
- if (!pAccessible)
+ if (!mxAccessible.is())
{
- pAccessible = new SmGraphicAccessible( this );
- xAccessible = pAccessible;
+ mxAccessible = new SmGraphicAccessible( this );
}
- return xAccessible;
+ return mxAccessible.get();
}
/**************************************************************************/