[Libreoffice-commits] core.git: starmath/inc starmath/source
Takeshi Abe
tabe at fixedpoint.jp
Thu Dec 31 09:44:00 PST 2015
starmath/inc/document.hxx | 5 +++--
starmath/source/document.cxx | 17 +++++++----------
2 files changed, 10 insertions(+), 12 deletions(-)
New commits:
commit eb65936f1996cc37632f7241cf07fc85ff633049
Author: Takeshi Abe <tabe at fixedpoint.jp>
Date: Tue Dec 22 12:00:49 2015 +0900
starmath: Manage SmDocShell's pCursor via std::unique_ptr
Change-Id: Id9c67638e5c2e535cc06e9566c9a169471f55da8
Reviewed-on: https://gerrit.libreoffice.org/20856
Tested-by: Jenkins <ci at libreoffice.org>
Reviewed-by: Kohei Yoshida <libreoffice at kohei.us>
diff --git a/starmath/inc/document.hxx b/starmath/inc/document.hxx
index 67ef680e..2cda375 100644
--- a/starmath/inc/document.hxx
+++ b/starmath/inc/document.hxx
@@ -32,6 +32,7 @@
#include <oox/core/filterbase.hxx>
#include <oox/mathml/import.hxx>
+#include <memory>
#include <set>
#include "format.hxx"
@@ -102,7 +103,7 @@ class SM_DLLPUBLIC SmDocShell : public SfxObjectShell, public SfxListener
VclPtr<Printer> pTmpPrinter; //ditto
sal_uInt16 nModifyCount;
bool bIsFormulaArranged;
- SmCursor *pCursor;
+ std::unique_ptr<SmCursor> pCursor;
std::set< OUString > aUsedSymbols; // to export used symbols only when saving
@@ -219,7 +220,7 @@ public:
/** True, if cursor have previously been requested and thus
* has some sort of position.
*/
- bool HasCursor() { return pCursor != nullptr; }
+ bool HasCursor();
};
#endif
diff --git a/starmath/source/document.cxx b/starmath/source/document.cxx
index dae2175..9657bf6 100644
--- a/starmath/source/document.cxx
+++ b/starmath/source/document.cxx
@@ -489,17 +489,19 @@ Size SmDocShell::GetSize()
}
void SmDocShell::InvalidateCursor(){
- delete pCursor;
- pCursor = nullptr;
+ pCursor.reset();
}
SmCursor& SmDocShell::GetCursor(){
if(!pCursor)
- pCursor = new SmCursor(pTree, this);
+ pCursor.reset(new SmCursor(pTree, this));
return *pCursor;
}
-
+bool SmDocShell::HasCursor()
+{
+ return pCursor.get() != nullptr;
+}
SmPrinterAccess::SmPrinterAccess( SmDocShell &rDocShell )
{
@@ -656,8 +658,6 @@ SmDocShell::SmDocShell( SfxModelFlags i_nSfxCreationFlags )
, nModifyCount(0)
, bIsFormulaArranged(false)
{
- pCursor = nullptr;
-
SetPool(&SfxGetpApp()->GetPool());
SmModule *pp = SM_MOD();
@@ -676,10 +676,7 @@ SmDocShell::~SmDocShell()
EndListening(aFormat);
EndListening(*pp->GetConfig());
-
- delete pCursor;
- pCursor = nullptr;
-
+ pCursor.reset();
delete pEditEngine;
SfxItemPool::Free(pEditEngineItemPool);
delete pTree;
More information about the Libreoffice-commits
mailing list