starmath: Represent ownership by std::unique_ptr
Change-Id: I7ce39cbdc0199d3508e7d16d1ce0b78f8d8ca620 Reviewed-on: https://gerrit.libreoffice.org/19230 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
This commit is contained in:
parent
bbfc031333
commit
ce924d97aa
@ -13,6 +13,7 @@
|
||||
#include "caret.hxx"
|
||||
|
||||
#include <list>
|
||||
#include <memory>
|
||||
|
||||
/** Factor to multiple the squared horizontal distance with
|
||||
* Used for Up and Down movement.
|
||||
@ -82,7 +83,6 @@ public:
|
||||
, mpPosition(nullptr)
|
||||
, mpTree(tree)
|
||||
, mpDocShell(pShell)
|
||||
, mpGraph(nullptr)
|
||||
, mpClipboard(nullptr)
|
||||
, mnEditSections(0)
|
||||
, mbIsEnabledSetModifiedSmDocShell(false)
|
||||
@ -94,8 +94,6 @@ public:
|
||||
~SmCursor()
|
||||
{
|
||||
SetClipboard();
|
||||
delete mpGraph;
|
||||
mpGraph = nullptr;
|
||||
}
|
||||
|
||||
/** Get position */
|
||||
@ -230,7 +228,7 @@ private:
|
||||
/** Owner of the formula tree */
|
||||
SmDocShell* mpDocShell;
|
||||
/** Graph over caret position in the current tree */
|
||||
SmCaretPosGraph* mpGraph;
|
||||
std::unique_ptr<SmCaretPosGraph> mpGraph;
|
||||
/** Clipboard holder */
|
||||
SmNodeList* mpClipboard;
|
||||
|
||||
|
@ -114,14 +114,14 @@ void SmCursor::BuildGraph(){
|
||||
_anchor = mpAnchor->CaretPos;
|
||||
if(mpPosition)
|
||||
_position = mpPosition->CaretPos;
|
||||
delete mpGraph;
|
||||
mpGraph.reset();
|
||||
//Reset anchor and position as they point into an old graph
|
||||
mpAnchor = nullptr;
|
||||
mpPosition = nullptr;
|
||||
}
|
||||
|
||||
//Build the new graph
|
||||
mpGraph = SmCaretPosGraphBuildingVisitor(mpTree).takeGraph();
|
||||
mpGraph.reset(SmCaretPosGraphBuildingVisitor(mpTree).takeGraph());
|
||||
|
||||
//Restore anchor and position pointers
|
||||
if(_anchor.IsValid() || _position.IsValid()){
|
||||
|
Loading…
x
Reference in New Issue
Block a user