summaryrefslogtreecommitdiff
path: root/sc/inc
diff options
context:
space:
mode:
authorNoel Grandin <noel.grandin@collabora.co.uk>2018-04-10 16:07:49 +0200
committerNoel Grandin <noel.grandin@collabora.co.uk>2018-04-11 08:42:59 +0200
commitff8442fd85f2e281a564e3dc832a751a3a9c3072 (patch)
tree05d4a59e914d53a357f99a8ce6146cb3e35f47c3 /sc/inc
parent672660031e4ca38205e2068b1e321268a844a68b (diff)
pass EditTextObject around using std::unique_ptr
Change-Id: I71f4529c2e02fd0ac2561191e4cb35e18e206037 Reviewed-on: https://gerrit.libreoffice.org/52682 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Diffstat (limited to 'sc/inc')
-rw-r--r--sc/inc/column.hxx4
-rw-r--r--sc/inc/document.hxx2
-rw-r--r--sc/inc/documentimport.hxx2
-rw-r--r--sc/inc/editdataarray.hxx10
-rw-r--r--sc/inc/editutil.hxx4
-rw-r--r--sc/inc/formulacell.hxx2
-rw-r--r--sc/inc/table.hxx2
-rw-r--r--sc/inc/textuno.hxx2
8 files changed, 15 insertions, 13 deletions
diff --git a/sc/inc/column.hxx b/sc/inc/column.hxx
index 07bcdc15f855..9a10e90a9c61 100644
--- a/sc/inc/column.hxx
+++ b/sc/inc/column.hxx
@@ -327,8 +327,8 @@ public:
SCROW nRow, SCTAB nTab, const OUString& rString, formula::FormulaGrammar::AddressConvention eConv,
const ScSetStringParam* pParam = nullptr );
- void SetEditText( SCROW nRow, EditTextObject* pEditText );
- void SetEditText( sc::ColumnBlockPosition& rBlockPos, SCROW nRow, EditTextObject* pEditText );
+ void SetEditText( SCROW nRow, std::unique_ptr<EditTextObject> pEditText );
+ void SetEditText( sc::ColumnBlockPosition& rBlockPos, SCROW nRow, std::unique_ptr<EditTextObject> pEditText );
void SetEditText( sc::ColumnBlockPosition& rBlockPos, SCROW nRow, const EditTextObject& rEditText );
void SetEditText( SCROW nRow, const EditTextObject& rEditText, const SfxItemPool* pEditPool );
void SetFormula( SCROW nRow, const ScTokenArray& rArray, formula::FormulaGrammar::Grammar eGram );
diff --git a/sc/inc/document.hxx b/sc/inc/document.hxx
index 4ed169e10152..69302890958c 100644
--- a/sc/inc/document.hxx
+++ b/sc/inc/document.hxx
@@ -1053,7 +1053,7 @@ public:
* SfxItemPool instance returned from ScDocument::GetEditPool()</i>.
* This is very important.</p>
*/
- SC_DLLPUBLIC bool SetEditText( const ScAddress& rPos, EditTextObject* pEditText );
+ SC_DLLPUBLIC bool SetEditText( const ScAddress& rPos, std::unique_ptr<EditTextObject> pEditText );
void SetEditText( const ScAddress& rPos, const EditTextObject& rEditText, const SfxItemPool* pEditPool );
SC_DLLPUBLIC void SetEditText( const ScAddress& rPos, const OUString& rStr );
SC_DLLPUBLIC SCROW GetFirstEditTextRow( const ScRange& rRange ) const;
diff --git a/sc/inc/documentimport.hxx b/sc/inc/documentimport.hxx
index d881da37cf2d..917b2398bfbb 100644
--- a/sc/inc/documentimport.hxx
+++ b/sc/inc/documentimport.hxx
@@ -95,7 +95,7 @@ public:
const ScSetStringParam* pStringParam = nullptr);
void setNumericCell(const ScAddress& rPos, double fVal);
void setStringCell(const ScAddress& rPos, const OUString& rStr);
- void setEditCell(const ScAddress& rPos, EditTextObject* pEditText);
+ void setEditCell(const ScAddress& rPos, std::unique_ptr<EditTextObject> pEditText);
void setFormulaCell(
const ScAddress& rPos, const OUString& rFormula, formula::FormulaGrammar::Grammar eGrammar,
diff --git a/sc/inc/editdataarray.hxx b/sc/inc/editdataarray.hxx
index 37fd1f93407d..810e75e95b54 100644
--- a/sc/inc/editdataarray.hxx
+++ b/sc/inc/editdataarray.hxx
@@ -36,7 +36,9 @@ public:
public:
Item() = delete;
explicit Item(SCTAB nTab, SCCOL nCol, SCROW nRow,
- EditTextObject* pOldData, EditTextObject* pNewData);
+ std::unique_ptr<EditTextObject> pOldData, std::unique_ptr<EditTextObject> pNewData);
+ Item(Item const &) = default;
+ Item(Item&&) = default;
~Item();
const EditTextObject* GetOldData() const;
@@ -46,8 +48,8 @@ public:
SCROW GetRow() const { return mnRow;}
private:
- std::shared_ptr<EditTextObject> mpOldData;
- std::shared_ptr<EditTextObject> mpNewData;
+ std::unique_ptr<EditTextObject> mpOldData;
+ std::unique_ptr<EditTextObject> mpNewData;
SCTAB mnTab;
SCCOL mnCol;
SCROW mnRow;
@@ -58,7 +60,7 @@ public:
~ScEditDataArray();
void AddItem(SCTAB nTab, SCCOL nCol, SCROW nRow,
- EditTextObject* pOldData, EditTextObject* pNewData);
+ std::unique_ptr<EditTextObject> pOldData, std::unique_ptr<EditTextObject> pNewData);
const Item* First();
const Item* Next();
diff --git a/sc/inc/editutil.hxx b/sc/inc/editutil.hxx
index cc96945dfd67..f70453bdec40 100644
--- a/sc/inc/editutil.hxx
+++ b/sc/inc/editutil.hxx
@@ -67,12 +67,12 @@ public:
*/
SC_DLLPUBLIC static OUString GetString( const EditTextObject& rEditText, const ScDocument* pDoc );
- static EditTextObject* CreateURLObjectFromURL(
+ static std::unique_ptr<EditTextObject> CreateURLObjectFromURL(
ScDocument& rDoc, const OUString& rURL, const OUString& rText );
static void RemoveCharAttribs( EditTextObject& rEditText, const ScPatternAttr& rAttr );
- static EditTextObject* Clone( const EditTextObject& rSrc, ScDocument& rDestDoc );
+ static std::unique_ptr<EditTextObject> Clone( const EditTextObject& rSrc, ScDocument& rDestDoc );
static OUString GetCellFieldValue(
const SvxFieldData& rFieldData, const ScDocument* pDoc, Color** ppTextColor );
diff --git a/sc/inc/formulacell.hxx b/sc/inc/formulacell.hxx
index 52d5d9cfc7a6..376b0d0fbf5a 100644
--- a/sc/inc/formulacell.hxx
+++ b/sc/inc/formulacell.hxx
@@ -398,7 +398,7 @@ public:
void SetResultError( FormulaError n );
bool IsHyperLinkCell() const;
- EditTextObject* CreateURLObject();
+ std::unique_ptr<EditTextObject> CreateURLObject();
void GetURLResult( OUString& rURL, OUString& rCellText );
/** Determines whether or not the result string contains more than one paragraph */
diff --git a/sc/inc/table.hxx b/sc/inc/table.hxx
index cb98a23f94af..d310d998abc7 100644
--- a/sc/inc/table.hxx
+++ b/sc/inc/table.hxx
@@ -408,7 +408,7 @@ public:
bool SetString( SCCOL nCol, SCROW nRow, SCTAB nTab, const OUString& rString,
const ScSetStringParam * pParam = nullptr );
- bool SetEditText( SCCOL nCol, SCROW nRow, EditTextObject* pEditText );
+ bool SetEditText( SCCOL nCol, SCROW nRow, std::unique_ptr<EditTextObject> pEditText );
void SetEditText( SCCOL nCol, SCROW nRow, const EditTextObject& rEditText, const SfxItemPool* pEditPool );
SCROW GetFirstEditTextRow( SCCOL nCol1, SCROW nRow1, SCCOL nCol2, SCROW nRow2 ) const;
diff --git a/sc/inc/textuno.hxx b/sc/inc/textuno.hxx
index 0ffbcc483949..b31894c253f4 100644
--- a/sc/inc/textuno.hxx
+++ b/sc/inc/textuno.hxx
@@ -315,7 +315,7 @@ public:
virtual ~ScEditEngineTextObj() throw() override;
void SetText( const EditTextObject& rTextObject );
- EditTextObject* CreateTextObject();
+ std::unique_ptr<EditTextObject> CreateTextObject();
};
// ScCellTextData: shared data between sub objects of a cell text object