diff options
author | Matteo Casalin <matteo.casalin@yahoo.com> | 2018-11-15 08:21:33 +0100 |
---|---|---|
committer | Matteo Casalin <matteo.casalin@yahoo.com> | 2019-01-03 16:11:58 +0100 |
commit | 920f9155a79120611acface4dc64f2ac0cc081f0 (patch) | |
tree | db862832bd09bb4f83c04234bf58755f6265388d /sc | |
parent | 66b919c8674066871a06e7cdf5595dc6951524e0 (diff) |
Get rid of ScStringUtil::GetQuotedTokenCount()
Change-Id: If50beb8edaf2c0bb0d336c81b4144ff58147771f
Reviewed-on: https://gerrit.libreoffice.org/65657
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Matteo Casalin <matteo.casalin@yahoo.com>
Diffstat (limited to 'sc')
-rw-r--r-- | sc/inc/stringutil.hxx | 1 | ||||
-rw-r--r-- | sc/source/core/tool/stringutil.cxx | 52 | ||||
-rw-r--r-- | sc/source/filter/excel/xicontent.cxx | 6 | ||||
-rw-r--r-- | sc/source/ui/dbgui/validate.cxx | 7 |
4 files changed, 5 insertions, 61 deletions
diff --git a/sc/inc/stringutil.hxx b/sc/inc/stringutil.hxx index ff2bc9cd74cd..bb1c8cf2e0f0 100644 --- a/sc/inc/stringutil.hxx +++ b/sc/inc/stringutil.hxx @@ -151,7 +151,6 @@ public: static bool parseSimpleNumber( const char* p, size_t n, char dsep, char gsep, double& rVal); - static sal_Int32 SC_DLLPUBLIC GetQuotedTokenCount(const OUString &rIn, const OUString& rQuotedPairs, sal_Unicode cTok ); static OUString SC_DLLPUBLIC GetQuotedToken(const OUString &rIn, sal_Int32 nToken, const OUString& rQuotedPairs, sal_Unicode cTok, sal_Int32& rIndex ); diff --git a/sc/source/core/tool/stringutil.cxx b/sc/source/core/tool/stringutil.cxx index ba5923896e38..ebca2a7d96c7 100644 --- a/sc/source/core/tool/stringutil.cxx +++ b/sc/source/core/tool/stringutil.cxx @@ -346,58 +346,6 @@ bool ScStringUtil::parseSimpleNumber( return true; } -sal_Int32 ScStringUtil::GetQuotedTokenCount(const OUString &rIn, const OUString& rQuotedPairs, sal_Unicode cTok ) -{ - assert( !(rQuotedPairs.getLength()%2) ); - assert( rQuotedPairs.indexOf(cTok) == -1 ); - - // empty string: TokenCount is 0 per definition - if ( rIn.isEmpty() ) - return 0; - - sal_Int32 nTokCount = 1; - sal_Int32 nLen = rIn.getLength(); - sal_Int32 nQuotedLen = rQuotedPairs.getLength(); - sal_Unicode cQuotedEndChar = 0; - const sal_Unicode* pQuotedStr = rQuotedPairs.getStr(); - const sal_Unicode* pStr = rIn.getStr(); - sal_Int32 nIndex = 0; - while ( nIndex < nLen ) - { - sal_Unicode c = *pStr; - if ( cQuotedEndChar ) - { - // reached end of the quote? - if ( c == cQuotedEndChar ) - cQuotedEndChar = 0; - } - else - { - // Is the char a quote-begin char? - sal_Int32 nQuoteIndex = 0; - while ( nQuoteIndex < nQuotedLen ) - { - if ( pQuotedStr[nQuoteIndex] == c ) - { - cQuotedEndChar = pQuotedStr[nQuoteIndex+1]; - break; - } - else - nQuoteIndex += 2; - } - - // If the token-char matches then increase TokCount - if ( c == cTok ) - ++nTokCount; - } - - ++pStr; - ++nIndex; - } - - return nTokCount; -} - OUString ScStringUtil::GetQuotedToken(const OUString &rIn, sal_Int32 nToken, const OUString& rQuotedPairs, sal_Unicode cTok, sal_Int32& rIndex ) { diff --git a/sc/source/filter/excel/xicontent.cxx b/sc/source/filter/excel/xicontent.cxx index 02b1dd17867f..f5d4780ef3ac 100644 --- a/sc/source/filter/excel/xicontent.cxx +++ b/sc/source/filter/excel/xicontent.cxx @@ -1001,11 +1001,9 @@ void XclImpWebQuery::ReadWqtables( XclImpStream& rStrm ) OUString aTables( rStrm.ReadUniString() ); const sal_Unicode cSep = ';'; - OUString aQuotedPairs( "\"\"" ); - sal_Int32 nTokenCnt = ScStringUtil::GetQuotedTokenCount( aTables, aQuotedPairs, ',' ); + const OUString aQuotedPairs( "\"\"" ); maTables.clear(); - sal_Int32 nStringIx = 0; - for( sal_Int32 nToken = 0; nToken < nTokenCnt; ++nToken ) + for ( sal_Int32 nStringIx {aTables.isEmpty() ? -1 : 0}; nStringIx>=0; ) { OUString aToken( ScStringUtil::GetQuotedToken( aTables, 0, aQuotedPairs, ',', nStringIx ) ); sal_Int32 nTabNum = CharClass::isAsciiNumeric( aToken ) ? aToken.toInt32() : 0; diff --git a/sc/source/ui/dbgui/validate.cxx b/sc/source/ui/dbgui/validate.cxx index 1a3ef64c2563..591acbb3e3f9 100644 --- a/sc/source/ui/dbgui/validate.cxx +++ b/sc/source/ui/dbgui/validate.cxx @@ -299,14 +299,13 @@ void lclGetFormulaFromStringList( OUString& rFmlaStr, const OUString& rStringLis @return true = Conversion successful. */ bool lclGetStringListFromFormula( OUString& rStringList, const OUString& rFmlaStr, sal_Unicode cFmlaSep ) { - OUString aQuotes( "\"\"" ); - sal_Int32 nTokenCnt = ScStringUtil::GetQuotedTokenCount(rFmlaStr, aQuotes, cFmlaSep ); + const OUString aQuotes( "\"\"" ); rStringList.clear(); - bool bIsStringList = (nTokenCnt > 0); + bool bIsStringList = !rFmlaStr.isEmpty(); bool bTokenAdded = false; - for( sal_Int32 nToken = 0, nStringIx = 0; bIsStringList && (nToken < nTokenCnt); ++nToken ) + for ( sal_Int32 nStringIx = 0; bIsStringList && nStringIx>=0; ) { OUString aToken( ScStringUtil::GetQuotedToken(rFmlaStr, 0, aQuotes, cFmlaSep, nStringIx ) ); aToken = comphelper::string::strip(aToken, ' '); |