diff options
author | Kohei Yoshida <kohei.yoshida@collabora.com> | 2013-10-10 20:24:21 -0400 |
---|---|---|
committer | Kohei Yoshida <kohei.yoshida@collabora.com> | 2013-10-11 12:14:27 -0400 |
commit | 7333881bb7b04f7e4e2a28638024ae82a9c14e81 (patch) | |
tree | 97548f94ab918d502b45a5dda40ece5ad4117617 /sc/inc | |
parent | 6255be7ca294d350143290c343673f264f42220c (diff) |
Formula tokens, formula cells and formula interpreters to use shared strings.
Change-Id: I5da99869fc7f61ce698180fa5daa9be9db9ac132
Diffstat (limited to 'sc/inc')
-rw-r--r-- | sc/inc/formulacell.hxx | 6 | ||||
-rw-r--r-- | sc/inc/formularesult.hxx | 4 | ||||
-rw-r--r-- | sc/inc/simpleformulacalc.hxx | 2 | ||||
-rw-r--r-- | sc/inc/token.hxx | 53 |
4 files changed, 32 insertions, 33 deletions
diff --git a/sc/inc/formulacell.hxx b/sc/inc/formulacell.hxx index a4947599033d..ea80b1518300 100644 --- a/sc/inc/formulacell.hxx +++ b/sc/inc/formulacell.hxx @@ -244,7 +244,7 @@ public: bool IsValueNoError(); bool IsHybridValueCell(); // for cells after import to deal with inherited number formats double GetValue(); - OUString GetString(); + svl::SharedString GetString(); const ScMatrix* GetMatrix(); bool GetMatrixOrigin( ScAddress& rPos ) const; void GetResultDimensions( SCSIZE& rCols, SCSIZE& rRows ); @@ -252,7 +252,7 @@ public: sal_uInt16 GetErrCode(); // interpret first if necessary sal_uInt16 GetRawError(); // don't interpret, just return code or result error bool GetErrorOrValue( sal_uInt16& rErr, double& rVal ); - bool GetErrorOrString( sal_uInt16& rErr, OUString& rStr ); + bool GetErrorOrString( sal_uInt16& rErr, svl::SharedString& rStr ); sal_uInt8 GetMatrixFlag() const; ScTokenArray* GetCode(); const ScTokenArray* GetCode() const; @@ -309,7 +309,7 @@ public: void SetResultToken( const formula::FormulaToken* pToken ); - OUString GetResultString() const; + svl::SharedString GetResultString() const; void SetErrCode( sal_uInt16 n ); bool IsHyperLinkCell() const; diff --git a/sc/inc/formularesult.hxx b/sc/inc/formularesult.hxx index d1c235f5ed74..8a7b36543284 100644 --- a/sc/inc/formularesult.hxx +++ b/sc/inc/formularesult.hxx @@ -135,7 +135,7 @@ public: bool IsMultiline() const; bool GetErrorOrDouble( sal_uInt16& rErr, double& rVal ) const; - bool GetErrorOrString( sal_uInt16& rErr, OUString& rStr ) const; + bool GetErrorOrString( sal_uInt16& rErr, svl::SharedString& rStr ) const; /** Get error code if set or GetCellResultType() is formula::svError or svUnknown, else 0. */ @@ -159,7 +159,7 @@ public: /** Return string if type formula::svString or formula::svHybridCell or formula::svMatrixCell and upper left formula::svString, else empty string. */ - const OUString& GetString() const; + svl::SharedString GetString() const; /** Return matrix if type formula::svMatrixCell and ScMatrix present, else NULL. */ ScConstMatrixRef GetMatrix() const; diff --git a/sc/inc/simpleformulacalc.hxx b/sc/inc/simpleformulacalc.hxx index 43ff6eac4acf..4d13c6bd7a3b 100644 --- a/sc/inc/simpleformulacalc.hxx +++ b/sc/inc/simpleformulacalc.hxx @@ -40,7 +40,7 @@ public: bool IsValue(); sal_uInt16 GetErrCode(); double GetValue(); - OUString GetString(); + svl::SharedString GetString(); short GetFormatType() const { return mnFormatType; } sal_uLong GetFormatIndex() const { return mnFormatIndex; } diff --git a/sc/inc/token.hxx b/sc/inc/token.hxx index 7b657e56d26f..0046c44e2262 100644 --- a/sc/inc/token.hxx +++ b/sc/inc/token.hxx @@ -210,19 +210,18 @@ public: class ScExternalSingleRefToken : public ScToken { -private: sal_uInt16 mnFileId; - OUString maTabName; + svl::SharedString maTabName; ScSingleRefData maSingleRef; - ScExternalSingleRefToken(); // disabled + ScExternalSingleRefToken(); // disabled public: - ScExternalSingleRefToken( sal_uInt16 nFileId, const OUString& rTabName, const ScSingleRefData& r ); - ScExternalSingleRefToken( const ScExternalSingleRefToken& r ); - virtual ~ScExternalSingleRefToken(); + ScExternalSingleRefToken( sal_uInt16 nFileId, const svl::SharedString& rTabName, const ScSingleRefData& r ); + ScExternalSingleRefToken( const ScExternalSingleRefToken& r ); + virtual ~ScExternalSingleRefToken(); virtual sal_uInt16 GetIndex() const; - virtual const OUString& GetString() const; + virtual svl::SharedString GetString() const; virtual const ScSingleRefData& GetSingleRef() const; virtual ScSingleRefData& GetSingleRef(); virtual bool operator==( const formula::FormulaToken& rToken ) const; @@ -232,19 +231,18 @@ public: class ScExternalDoubleRefToken : public ScToken { -private: sal_uInt16 mnFileId; - OUString maTabName; // name of the first sheet + svl::SharedString maTabName; // name of the first sheet ScComplexRefData maDoubleRef; - ScExternalDoubleRefToken(); // disabled + ScExternalDoubleRefToken(); // disabled public: - ScExternalDoubleRefToken( sal_uInt16 nFileId, const OUString& rTabName, const ScComplexRefData& r ); - ScExternalDoubleRefToken( const ScExternalDoubleRefToken& r ); - virtual ~ScExternalDoubleRefToken(); + ScExternalDoubleRefToken( sal_uInt16 nFileId, const svl::SharedString& rTabName, const ScComplexRefData& r ); + ScExternalDoubleRefToken( const ScExternalDoubleRefToken& r ); + virtual ~ScExternalDoubleRefToken(); virtual sal_uInt16 GetIndex() const; - virtual const OUString& GetString() const; + virtual svl::SharedString GetString() const; virtual const ScSingleRefData& GetSingleRef() const; virtual ScSingleRefData& GetSingleRef(); virtual const ScSingleRefData& GetSingleRef2() const; @@ -257,17 +255,17 @@ public: class ScExternalNameToken : public ScToken { -private: sal_uInt16 mnFileId; - OUString maName; -private: - ScExternalNameToken(); // disabled + svl::SharedString maName; + + ScExternalNameToken(); // disabled public: - ScExternalNameToken( sal_uInt16 nFileId, const OUString& rName ); - ScExternalNameToken( const ScExternalNameToken& r ); - virtual ~ScExternalNameToken(); + ScExternalNameToken( sal_uInt16 nFileId, const svl::SharedString& rName ); + ScExternalNameToken( const ScExternalNameToken& r ); + virtual ~ScExternalNameToken(); + virtual sal_uInt16 GetIndex() const; - virtual const OUString& GetString() const; + virtual svl::SharedString GetString() const; virtual bool operator==( const formula::FormulaToken& rToken ) const; virtual FormulaToken* Clone() const { return new ScExternalNameToken(*this); } }; @@ -325,7 +323,7 @@ public: bool IsInherited() const { return bInherited; } bool IsDisplayedAsString() const { return bDisplayedAsString; } virtual double GetDouble() const; - virtual const OUString & GetString() const; + virtual svl::SharedString GetString() const; virtual bool operator==( const formula::FormulaToken& rToken ) const; virtual FormulaToken* Clone() const { return new ScEmptyCellToken(*this); } }; @@ -345,7 +343,7 @@ public: ScMatrixCellResultToken( const ScConstMatrixRef& pMat, formula::FormulaToken* pUL ); ScMatrixCellResultToken( const ScMatrixCellResultToken& r ); virtual double GetDouble() const; - virtual const OUString & GetString() const; + virtual svl::SharedString GetString() const; virtual const ScMatrix* GetMatrix() const; virtual bool operator==( const formula::FormulaToken& rToken ) const; virtual FormulaToken* Clone() const; @@ -414,11 +412,11 @@ class SC_DLLPUBLIC ScHybridCellToken : public ScToken { private: double mfDouble; - OUString maString; + svl::SharedString maString; OUString maFormula; public: ScHybridCellToken( double f, - const OUString & rStr, + const svl::SharedString & rStr, const OUString & rFormula ) : ScToken( formula::svHybridCell ), mfDouble( f ), maString( rStr ), @@ -426,7 +424,8 @@ public: const OUString& GetFormula() const { return maFormula; } virtual double GetDouble() const; - virtual const OUString& GetString() const; + + virtual svl::SharedString GetString() const; virtual bool operator==( const formula::FormulaToken& rToken ) const; virtual FormulaToken* Clone() const { return new ScHybridCellToken(*this); } }; |