[PATCH] String->OUString few more from unotools
Norbert Thiebaud (via Code Review)
gerrit at gerrit.libreoffice.org
Thu Jun 13 06:19:09 PDT 2013
Hi,
I have submitted a patch for review:
https://gerrit.libreoffice.org/4247
To pull it, you can do:
git pull ssh://gerrit.libreoffice.org:29418/core refs/changes/47/4247/1
String->OUString few more from unotools
Change-Id: Iaac38fbf5158b2912aa1e6115c0fe693bdbebe48
---
M basic/source/runtime/runtime.cxx
M desktop/source/migration/migration.cxx
M desktop/source/migration/services/oo3extensionmigration.cxx
M forms/source/xforms/computedexpression.cxx
M include/unotools/fontcfg.hxx
M include/unotools/fontcvt.hxx
M include/unotools/fontdefs.hxx
M include/unotools/textsearch.hxx
M reportdesign/source/ui/inspection/GeometryHandler.cxx
M sc/source/core/data/dpcache.cxx
M svx/source/dialog/ctredlin.cxx
M sw/source/core/crsr/findtxt.cxx
M unotools/source/config/fontcfg.cxx
M unotools/source/config/securityoptions.cxx
M unotools/source/i18n/localedatawrapper.cxx
M unotools/source/misc/fontcvt.cxx
M unotools/source/misc/fontdefs.cxx
M vcl/inc/outdev.h
M vcl/source/gdi/font.cxx
M vcl/source/gdi/outdev3.cxx
20 files changed, 166 insertions(+), 171 deletions(-)
diff --git a/basic/source/runtime/runtime.cxx b/basic/source/runtime/runtime.cxx
index 4c2ffa9..ed731f1 100644
--- a/basic/source/runtime/runtime.cxx
+++ b/basic/source/runtime/runtime.cxx
@@ -1583,8 +1583,8 @@
}
SbxVariable* pRes = new SbxVariable;
utl::TextSearch aSearch(aSearchOpt);
- sal_uInt16 nStart=0, nEnd=value.getLength();
- int bRes = aSearch.SearchFrwrd(value, &nStart, &nEnd);
+ sal_Int32 nStart=0, nEnd=value.getLength();
+ int bRes = aSearch.SearchForward(value, &nStart, &nEnd);
pRes->PutBool( bRes != 0 );
PushVar( pRes );
diff --git a/desktop/source/migration/migration.cxx b/desktop/source/migration/migration.cxx
index 2b36113..932c9fb 100644
--- a/desktop/source/migration/migration.cxx
+++ b/desktop/source/migration/migration.cxx
@@ -647,12 +647,12 @@
SearchParam param(*i_pat, SearchParam::SRCH_REGEXP);
TextSearch ts(param, LANGUAGE_DONTKNOW);
i_set = vSet.begin();
- xub_StrLen start = 0;
- xub_StrLen end = 0;
+ sal_Int32 start = 0;
+ sal_Int32 end = 0;
while (i_set != vSet.end())
{
- end = (xub_StrLen)(i_set->getLength());
- if (ts.SearchFrwrd(*i_set, &start, &end))
+ end = i_set->getLength();
+ if (ts.SearchForward(*i_set, &start, &end))
vrResult->push_back(*i_set);
++i_set;
}
diff --git a/desktop/source/migration/services/oo3extensionmigration.cxx b/desktop/source/migration/services/oo3extensionmigration.cxx
index 75590a8..ff969be 100644
--- a/desktop/source/migration/services/oo3extensionmigration.cxx
+++ b/desktop/source/migration/services/oo3extensionmigration.cxx
@@ -287,9 +287,9 @@
utl::SearchParam param(m_aBlackList[i], utl::SearchParam::SRCH_REGEXP);
utl::TextSearch ts(param, LANGUAGE_DONTKNOW);
- xub_StrLen start = 0;
- xub_StrLen end = static_cast<sal_uInt16>(sDescriptionXmlURL.getLength());
- if (ts.SearchFrwrd(sDescriptionXmlURL, &start, &end))
+ sal_Int32 start = 0;
+ sal_Int32 end = static_cast<sal_uInt16>(sDescriptionXmlURL.getLength());
+ if (ts.SearchForward(sDescriptionXmlURL, &start, &end))
return false;
}
}
diff --git a/forms/source/xforms/computedexpression.cxx b/forms/source/xforms/computedexpression.cxx
index 184d91c..a2b7932 100644
--- a/forms/source/xforms/computedexpression.cxx
+++ b/forms/source/xforms/computedexpression.cxx
@@ -95,11 +95,10 @@
aSearchOptions.searchString = String( pExpression, RTL_TEXTENCODING_ASCII_US );
utl::TextSearch aTextSearch( aSearchOptions );
- xub_StrLen nLength =
- static_cast<xub_StrLen>( msExpression.getLength() );
- xub_StrLen nStart = 0;
- xub_StrLen nEnd = nLength;
- int nSearch = aTextSearch.SearchFrwrd( msExpression, &nStart, &nEnd );
+ sal_Int32 nLength = msExpression.getLength();
+ sal_Int32 nStart = 0;
+ sal_Int32 nEnd = nLength;
+ int nSearch = aTextSearch.SearchForward( msExpression, &nStart, &nEnd );
// our expression is static only if 1) we found our regexp, and 2)
// the regexp goes from beginning to end.
diff --git a/include/unotools/fontcfg.hxx b/include/unotools/fontcfg.hxx
index 23ea551..ef9f6a7 100644
--- a/include/unotools/fontcfg.hxx
+++ b/include/unotools/fontcfg.hxx
@@ -154,11 +154,11 @@
struct UNOTOOLS_DLLPUBLIC FontNameAttr
{
- String Name;
- ::std::vector< String > Substitutions;
- ::std::vector< String > MSSubstitutions;
- ::std::vector< String > PSSubstitutions;
- ::std::vector< String > HTMLSubstitutions;
+ OUString Name;
+ ::std::vector< OUString > Substitutions;
+ ::std::vector< OUString > MSSubstitutions;
+ ::std::vector< OUString > PSSubstitutions;
+ ::std::vector< OUString > HTMLSubstitutions;
FontWeight Weight;
FontWidth Width;
unsigned long Type; // bitfield of IMPL_FONT_ATTR_*
@@ -190,7 +190,7 @@
void fillSubstVector( const com::sun::star::uno::Reference< com::sun::star::container::XNameAccess > xFont,
const OUString& rType,
- std::vector< String >& rSubstVector ) const;
+ std::vector< OUString >& rSubstVector ) const;
FontWeight getSubstWeight( const com::sun::star::uno::Reference< com::sun::star::container::XNameAccess > xFont,
const OUString& rType ) const;
FontWidth getSubstWidth( const com::sun::star::uno::Reference< com::sun::star::container::XNameAccess > xFont,
@@ -205,13 +205,13 @@
static FontSubstConfiguration& get();
const FontNameAttr* getSubstInfo(
- const String& rFontName,
+ const OUString& rFontName,
const com::sun::star::lang::Locale& rLocale =
com::sun::star::lang::Locale( OUString( "en" ),
OUString(),
OUString() )
) const;
- static void getMapName( const String& rOrgName, String& rShortName, String& rFamilyName, FontWeight& rWeight, FontWidth& rWidth, sal_uLong& rType );
+ static void getMapName( const OUString& rOrgName, OUString& rShortName, OUString& rFamilyName, FontWeight& rWeight, FontWidth& rWidth, sal_uLong& rType );
};
} // namespace utl
diff --git a/include/unotools/fontcvt.hxx b/include/unotools/fontcvt.hxx
index 6386e61..004215c 100644
--- a/include/unotools/fontcvt.hxx
+++ b/include/unotools/fontcvt.hxx
@@ -32,10 +32,10 @@
#define FONTTOSUBSFONT_ONLYOLDSOSYMBOLFONTS ((sal_uLong)0x00000004)
typedef void* FontToSubsFontConverter;
-UNOTOOLS_DLLPUBLIC FontToSubsFontConverter CreateFontToSubsFontConverter( const String& rFontName, sal_uLong nFlags );
+UNOTOOLS_DLLPUBLIC FontToSubsFontConverter CreateFontToSubsFontConverter( const OUString& rFontName, sal_uLong nFlags );
UNOTOOLS_DLLPUBLIC void DestroyFontToSubsFontConverter( FontToSubsFontConverter hConverter );
UNOTOOLS_DLLPUBLIC sal_Unicode ConvertFontToSubsFontChar( FontToSubsFontConverter hConverter, sal_Unicode c );
-UNOTOOLS_DLLPUBLIC String GetFontToSubsFontName( FontToSubsFontConverter hConverter );
+UNOTOOLS_DLLPUBLIC OUString GetFontToSubsFontName( FontToSubsFontConverter hConverter );
// ---------------------------
// - StarSymbolToMSMultiFont -
@@ -48,7 +48,7 @@
//mapped to. Sets rChar to the correct position for that font. If no
//match found, then no name is returned, and rChar is unchanged. If you
//want to convert a string, you don't want to use this.
- virtual String ConvertChar(sal_Unicode &rChar) = 0;
+ virtual OUString ConvertChar(sal_Unicode &rChar) = 0;
//Starts converting the string at position rIndex. It converts as much of
//the string that can be converted to the same symbol font and returns the
@@ -57,7 +57,7 @@
//rString.Len() and handle each section as separate 8bit strings using
//separate fonts. Will return an empty string for a continous section
//that has no possible mapping.
- virtual String ConvertString(String &rString, xub_StrLen &rIndex) = 0;
+ virtual OUString ConvertString(OUString& rString, sal_Int32& rIndex) = 0;
virtual ~StarSymbolToMSMultiFont() {}
};
@@ -67,7 +67,7 @@
//recognizably similar. Even in this mode there will be characters that fail.
//The users of this might want to make a distinction between failed characters
//which were inside and those outside the unicode private area.
-UNOTOOLS_DLLPUBLIC StarSymbolToMSMultiFont *CreateStarSymbolToMSMultiFont(bool bPerfectOnly=false);
+UNOTOOLS_DLLPUBLIC StarSymbolToMSMultiFont* CreateStarSymbolToMSMultiFont(bool bPerfectOnly=false);
#endif // _UNOTOOLS_FONTCVT_HXX
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/include/unotools/fontdefs.hxx b/include/unotools/fontdefs.hxx
index e57abd4..d46c8e2 100644
--- a/include/unotools/fontdefs.hxx
+++ b/include/unotools/fontdefs.hxx
@@ -43,7 +43,7 @@
UNOTOOLS_DLLPUBLIC void AddTokenFontName( OUString& rName, const OUString& rNewToken );
-struct UNOTOOLS_DLLPUBLIC FontNameHash { int operator()(const String&) const; };
+struct UNOTOOLS_DLLPUBLIC FontNameHash { int operator()(const OUString&) const; };
// ---------------
// - ConvertChar -
@@ -57,7 +57,7 @@
sal_Unicode (*mpCvtFunc)( sal_Unicode );
sal_Unicode RecodeChar( sal_Unicode c ) const;
void RecodeString( OUString& rStra, sal_Int32 nIndex, sal_Int32 nLen ) const;
- static const ConvertChar* GetRecodeData( const String& rOrgFontName, const String& rMapFontName );
+ static const ConvertChar* GetRecodeData( const OUString& rOrgFontName, const OUString& rMapFontName );
};
diff --git a/include/unotools/textsearch.hxx b/include/unotools/textsearch.hxx
index 0b82610..f26d150 100644
--- a/include/unotools/textsearch.hxx
+++ b/include/unotools/textsearch.hxx
@@ -52,8 +52,8 @@
enum SearchType{ SRCH_NORMAL, SRCH_REGEXP, SRCH_LEVDIST };
private:
- String sSrchStr; // the search string
- String sReplaceStr; // the replace string
+ OUString sSrchStr; // the search string
+ OUString sReplaceStr; // the replace string
SearchType m_eSrchType; // search normal/regular/LevDist
@@ -81,8 +81,8 @@
~SearchParam();
- const String& GetSrchStr() const { return sSrchStr; }
- const String& GetReplaceStr() const { return sReplaceStr; }
+ const OUString& GetSrchStr() const { return sSrchStr; }
+ const OUString& GetReplaceStr() const { return sReplaceStr; }
SearchType GetSrchType() const { return m_eSrchType; }
int IsCaseSensitive() const { return m_bCaseSense; }
@@ -90,8 +90,8 @@
int IsSrchWordOnly() const { return m_bWordOnly; }
- void SetSrchStr( const String& rStr ) { sSrchStr = rStr; }
- void SetReplaceStr( const String& rStr ) { sReplaceStr = rStr; }
+ void SetSrchStr( const OUString& rStr ) { sSrchStr = rStr; }
+ void SetReplaceStr( const OUString& rStr ) { sReplaceStr = rStr; }
void SetSrchType( SearchType eType ) { m_eSrchType = eType; }
void SetCaseSensitive( int bFlag ) { m_bCaseSense = bFlag; }
diff --git a/reportdesign/source/ui/inspection/GeometryHandler.cxx b/reportdesign/source/ui/inspection/GeometryHandler.cxx
index 3c9339b..5831490 100644
--- a/reportdesign/source/ui/inspection/GeometryHandler.cxx
+++ b/reportdesign/source/ui/inspection/GeometryHandler.cxx
@@ -1871,15 +1871,15 @@
{
aSearchOptions.searchString = aIter->m_sSearchString;
utl::TextSearch aTextSearch(aSearchOptions);
- xub_StrLen start = 0;
- xub_StrLen end = sFormula.Len();
- if ( aTextSearch.SearchFrwrd(sFormula,&start,&end) && start == 0 && end == sFormula.Len()) // default function found
+ sal_Int32 start = 0;
+ sal_Int32 end = (sal_Int32)sFormula.Len();
+ if ( aTextSearch.SearchForward(sFormula, &start, &end) && start == 0 && end == (sal_Int32)sFormula.Len()) // default function found
{
aSearchOptions.searchString = OUString("\\[[:alpha:]+([:space:]*[:alnum:]*)*\\]");
utl::TextSearch aDataSearch(aSearchOptions);
- aDataSearch.SearchFrwrd(sFormula,&start,&end );
+ aDataSearch.SearchForward(sFormula, &start, &end );
++start;
- _rDataField = sFormula.Copy(start,end-start-1);
+ _rDataField = sFormula.Copy(start, end-start-1);
_rsDefaultFunctionName = aIter->m_sName;
break;
}
diff --git a/sc/source/core/data/dpcache.cxx b/sc/source/core/data/dpcache.cxx
index 17ab695..6f112d6 100644
--- a/sc/source/core/data/dpcache.cxx
+++ b/sc/source/core/data/dpcache.cxx
@@ -534,13 +534,13 @@
bool bTestRegExp = false;
if (bRealRegExp || bTestRegExp)
{
- xub_StrLen nStart = 0;
- xub_StrLen nEnd = aCellStr.Len();
+ sal_Int32 nStart = 0;
+ sal_Int32 nEnd = (sal_Int32)aCellStr.Len();
bool bMatch = (bool) rEntry.GetSearchTextPtr( rParam.bCaseSens )
- ->SearchFrwrd( aCellStr, &nStart, &nEnd );
+ ->SearchForward( aCellStr, &nStart, &nEnd );
// from 614 on, nEnd is behind the found text
if (bMatch && bMatchWholeCell
- && (nStart != 0 || nEnd != aCellStr.Len()))
+ && (nStart != 0 || nEnd != (sal_Int32)aCellStr.Len()))
bMatch = false; // RegExp must match entire cell string
if (bRealRegExp)
bOk = ((rEntry.eOp == SC_NOT_EQUAL) ? !bMatch : bMatch);
diff --git a/svx/source/dialog/ctredlin.cxx b/svx/source/dialog/ctredlin.cxx
index b201d8d..09a56de 100644
--- a/svx/source/dialog/ctredlin.cxx
+++ b/svx/source/dialog/ctredlin.cxx
@@ -324,10 +324,10 @@
}
if(bComment && nTheFlag)
{
- xub_StrLen nStartPos = 0;
- xub_StrLen nEndPos = pCommentStr->Len();
+ sal_Int32 nStartPos = 0;
+ sal_Int32 nEndPos = (sal_Int32)pCommentStr->Len();
- nTheFlag=pCommentSearcher->SearchFrwrd( *pCommentStr, &nStartPos, &nEndPos);
+ nTheFlag=pCommentSearcher->SearchForward( *pCommentStr, &nStartPos, &nEndPos);
}
return nTheFlag;
}
@@ -362,10 +362,10 @@
if(bComment)
{
- xub_StrLen nStartPos = 0;
- xub_StrLen nEndPos = pCommentStr->Len();
+ sal_Int32 nStartPos = 0;
+ sal_Int32 nEndPos = (sal_Int32)pCommentStr->Len();
- nTheFlag=pCommentSearcher->SearchFrwrd( *pCommentStr, &nStartPos, &nEndPos);
+ nTheFlag=pCommentSearcher->SearchForward( *pCommentStr, &nStartPos, &nEndPos);
}
return nTheFlag;
}
diff --git a/sw/source/core/crsr/findtxt.cxx b/sw/source/core/crsr/findtxt.cxx
index 92f1249..6c2359f 100644
--- a/sw/source/core/crsr/findtxt.cxx
+++ b/sw/source/core/crsr/findtxt.cxx
@@ -664,10 +664,10 @@
{
utl::TextSearch aSTxt( rSearchOpt );
const String& rStr = static_cast<const SwTxtNode*>(pTxtNode)->GetTxt();
- xub_StrLen nStart = pPam->Start()->nContent.GetIndex();
- xub_StrLen nEnd = pPam->End()->nContent.GetIndex();
+ sal_Int32 nStart = (sal_Int32)pPam->Start()->nContent.GetIndex();
+ sal_Int32 nEnd = (sal_Int32)pPam->End()->nContent.GetIndex();
SearchResult aResult;
- if( aSTxt.SearchFrwrd( rStr, &nStart, &nEnd, &aResult ) )
+ if( aSTxt.SearchForward( rStr, &nStart, &nEnd, &aResult ) )
{
String aReplaceStr( rSearchOpt.replaceString );
aSTxt.ReplaceBackReferences( aReplaceStr, rStr, aResult );
diff --git a/unotools/source/config/fontcfg.cxx b/unotools/source/config/fontcfg.cxx
index 9da6e05..3d08aac 100644
--- a/unotools/source/config/fontcfg.cxx
+++ b/unotools/source/config/fontcfg.cxx
@@ -649,12 +649,12 @@
// -----------------------------------------------------------------------
-static bool ImplKillLeading( String& rName, const char* const* ppStr )
+static bool ImplKillLeading( OUString& rName, const char* const* ppStr )
{
for(; *ppStr; ++ppStr )
{
const char* pStr = *ppStr;
- const sal_Unicode* pNameStr = rName.GetBuffer();
+ const sal_Unicode* pNameStr = rName.getStr();
while ( (*pNameStr == (sal_Unicode)(unsigned char)*pStr) && *pStr )
{
pNameStr++;
@@ -662,19 +662,19 @@
}
if ( !*pStr )
{
- xub_StrLen nLen = sal::static_int_cast<xub_StrLen>(pNameStr - rName.GetBuffer());
- rName.Erase( 0, nLen );
+ sal_Int32 nLen = sal_Int32(pNameStr - rName.getStr());
+ rName = rName.copy( nLen );
return true;
}
}
// special case for Baekmuk
// TODO: allow non-ASCII KillLeading list
- const sal_Unicode* pNameStr = rName.GetBuffer();
+ const sal_Unicode* pNameStr = rName.getStr();
if( (pNameStr[0]==0xBC31) && (pNameStr[1]==0xBC35) )
{
- xub_StrLen nLen = (pNameStr[2]==0x0020) ? 3 : 2;
- rName.Erase( 0, nLen );
+ sal_Int32 nLen = (pNameStr[2]==0x0020) ? 3 : 2;
+ rName = rName.copy( nLen );
return true;
}
@@ -683,13 +683,13 @@
// -----------------------------------------------------------------------
-static xub_StrLen ImplIsTrailing( const String& rName, const char* pStr )
+static sal_Int32 ImplIsTrailing( const OUString& rName, const char* pStr )
{
- xub_StrLen nStrLen = static_cast<xub_StrLen>( strlen( pStr ) );
- if( nStrLen >= rName.Len() )
+ sal_Int32 nStrLen = strlen( pStr );
+ if( nStrLen >= rName.getLength() )
return 0;
- const sal_Unicode* pEndName = rName.GetBuffer() + rName.Len();
+ const sal_Unicode* pEndName = rName.getStr() + rName.getLength();
const sal_Unicode* pNameStr = pEndName - nStrLen;
do if( *(pNameStr++) != *(pStr++) )
return 0;
@@ -700,14 +700,14 @@
// -----------------------------------------------------------------------
-static bool ImplKillTrailing( String& rName, const char* const* ppStr )
+static bool ImplKillTrailing( OUString& rName, const char* const* ppStr )
{
for(; *ppStr; ++ppStr )
{
- xub_StrLen nTrailLen = ImplIsTrailing( rName, *ppStr );
+ sal_Int32 nTrailLen = ImplIsTrailing( rName, *ppStr );
if( nTrailLen )
{
- rName.Erase( rName.Len()-nTrailLen );
+ rName = rName.copy(0, rName.getLength()-nTrailLen );
return true;
}
}
@@ -717,11 +717,11 @@
// -----------------------------------------------------------------------
-static bool ImplKillTrailingWithExceptions( String& rName, const char* const* ppStr )
+static bool ImplKillTrailingWithExceptions( OUString& rName, const char* const* ppStr )
{
for(; *ppStr; ++ppStr )
{
- xub_StrLen nTrailLen = ImplIsTrailing( rName, *ppStr );
+ sal_Int32 nTrailLen = ImplIsTrailing( rName, *ppStr );
if( nTrailLen )
{
// check string match against string exceptions
@@ -729,7 +729,7 @@
if( ImplIsTrailing( rName, *ppStr ) )
return false;
- rName.Erase( rName.Len()-nTrailLen );
+ rName = rName.copy(0, rName.getLength()-nTrailLen );
return true;
}
else
@@ -744,23 +744,25 @@
// -----------------------------------------------------------------------
-static sal_Bool ImplFindAndErase( String& rName, const char* pStr )
+static bool ImplFindAndErase( OUString& rName, const char* pStr )
{
- xub_StrLen nPos = rName.SearchAscii( pStr );
- if ( nPos == STRING_NOTFOUND )
+ sal_Int32 nPos = rName.indexOfAsciiL( pStr, strlen(pStr) );
+ if ( nPos < 0)
return sal_False;
const char* pTempStr = pStr;
while ( *pTempStr )
pTempStr++;
- rName.Erase( nPos, (xub_StrLen)(pTempStr-pStr) );
+ OUStringBuffer sBuff(rName);
+ sBuff.remove(nPos, (sal_Int32)(pTempStr - pStr));
+ rName = sBuff.makeStringAndClear();
return sal_True;
}
// =======================================================================
-void FontSubstConfiguration::getMapName( const String& rOrgName, String& rShortName,
- String& rFamilyName, FontWeight& rWeight, FontWidth& rWidth, sal_uLong& rType )
+void FontSubstConfiguration::getMapName( const OUString& rOrgName, OUString& rShortName,
+ OUString& rFamilyName, FontWeight& rWeight, FontWidth& rWidth, sal_uLong& rType )
{
rShortName = rOrgName;
@@ -815,14 +817,16 @@
// Remove numbers
// TODO: also remove localized and fullwidth digits
- xub_StrLen i = 0;
- while ( i < rFamilyName.Len() )
+ sal_Int32 i = 0;
+ OUStringBuffer sBuff(rFamilyName.getLength());
+ while ( i < rFamilyName.getLength() )
{
- sal_Unicode c = rFamilyName.GetChar( i );
- if ( (c >= 0x0030) && (c <= 0x0039) )
- rFamilyName.Erase( i, 1 );
- else
- i++;
+ sal_Unicode c = rFamilyName[i];
+ if (!( (c >= 0x0030) && (c <= 0x0039)) )
+ {
+ sBuff.append(c);
+ }
+ i++;
}
}
@@ -830,7 +834,7 @@
struct StrictStringSort : public ::std::binary_function< const FontNameAttr&, const FontNameAttr&, bool >
{
bool operator()( const FontNameAttr& rLeft, const FontNameAttr& rRight )
- { return rLeft.Name.CompareTo( rRight.Name ) == COMPARE_LESS ; }
+ { return rLeft.Name.compareTo( rRight.Name ) < 0 ; }
};
static const char* const pAttribNames[] =
@@ -910,7 +914,7 @@
void FontSubstConfiguration::fillSubstVector( const com::sun::star::uno::Reference< XNameAccess > xFont,
const OUString& rType,
- std::vector< String >& rSubstVector ) const
+ std::vector< OUString >& rSubstVector ) const
{
try
{
@@ -1137,15 +1141,14 @@
}
}
-const FontNameAttr* FontSubstConfiguration::getSubstInfo( const String& rFontName, const Locale& rLocale ) const
+const FontNameAttr* FontSubstConfiguration::getSubstInfo( const OUString& rFontName, const Locale& rLocale ) const
{
- if( !rFontName.Len() )
+ if( rFontName.isEmpty() )
return NULL;
// search if a (language dep.) replacement table for the given font exists
// fallback is english
- String aSearchFont( rFontName );
- aSearchFont.ToLowerAscii();
+ OUString aSearchFont( rFontName.toAsciiLowerCase() );
FontNameAttr aSearchAttr;
aSearchAttr.Name = aSearchFont;
@@ -1172,8 +1175,8 @@
const FontNameAttr& rFoundAttr = *it;
// a search for "abcblack" may match with an entry for "abc"
// the reverse is not a good idea (e.g. #i112731# alba->albani)
- if( rFoundAttr.Name.Len() <= aSearchFont.Len() )
- if( aSearchFont.CompareTo( rFoundAttr.Name, rFoundAttr.Name.Len() ) == COMPARE_EQUAL )
+ if( rFoundAttr.Name.getLength() <= aSearchFont.getLength() )
+ if( aSearchFont.indexOf( rFoundAttr.Name ) >= 0 )
return &rFoundAttr;
}
}
diff --git a/unotools/source/config/securityoptions.cxx b/unotools/source/config/securityoptions.cxx
index cd0e6c7..00ff19c 100644
--- a/unotools/source/config/securityoptions.cxx
+++ b/unotools/source/config/securityoptions.cxx
@@ -704,9 +704,8 @@
sal_Int32 nCnt = m_seqTrustedAuthors.getLength();
if( nCnt )
{
- String s;
- s.AppendAscii( CSTR_MACRO_TRUSTEDAUTHORS );
- s.AppendAscii( "/a" );
+ OUString s(CSTR_MACRO_TRUSTEDAUTHORS );
+ s += "/a" ;
Sequence< Sequence< com::sun::star::beans::PropertyValue > > lPropertyValuesSeq( nCnt );
for( sal_Int32 i = 0 ; i < nCnt ; ++i )
@@ -908,7 +907,7 @@
}
if ( !bState )
- bState = sRef.compareToAscii("private:user") == COMPARE_EQUAL;
+ bState = sRef.compareToAscii("private:user") == 0;
}
}
diff --git a/unotools/source/i18n/localedatawrapper.cxx b/unotools/source/i18n/localedatawrapper.cxx
index 82b55c1..e05e78a 100644
--- a/unotools/source/i18n/localedatawrapper.cxx
+++ b/unotools/source/i18n/localedatawrapper.cxx
@@ -672,7 +672,7 @@
p = pStop;
break;
default:
- if (!nInSection && nSym == -1 && String(rCode).Equals( aCurrSymbol, (xub_StrLen)(p-pStr), aCurrSymbol.getLength()))
+ if (!nInSection && nSym == -1 && rCode.compareTo( aCurrSymbol, (sal_Int32)(p-pStr)) == 0)
{ // currency symbol not surrounded by [$...]
nSym = p - pStr;
if (nBlank == -1 && pStr < p && *(p-1) == ' ')
@@ -1423,14 +1423,15 @@
OUString LocaleDataWrapper::getLongDate( const Date& rDate, CalendarWrapper& rCal,
- sal_Int16 nDisplayDayOfWeek, sal_Bool bDayOfMonthWithLeadingZero,
- sal_Int16 nDisplayMonth, sal_Bool bTwoDigitYear ) const
+ sal_Int16 nDisplayDayOfWeek,
+ sal_Bool bDayOfMonthWithLeadingZero,
+ sal_Int16 nDisplayMonth, sal_Bool bTwoDigitYear ) const
{
::utl::ReadWriteGuard aGuard( aMutex, ::utl::ReadWriteGuardMode::nBlockCritical );
using namespace ::com::sun::star::i18n;
sal_Unicode aBuf[20];
sal_Unicode* pBuf;
- String aStr;
+ OUString aStr;
sal_Int16 nVal;
rCal.setGregorianDateTime( rDate );
// day of week
@@ -1454,26 +1455,14 @@
// concatenate
switch ( getLongDateFormat() )
{
- case DMY :
- aStr += aDay;
- aStr += getLongDateDaySep();
- aStr += aMonth;
- aStr += getLongDateMonthSep();
- aStr += aYear;
+ case DMY :
+ aStr += aDay + getLongDateDaySep() + aMonth + getLongDateMonthSep() + aYear;
break;
- case MDY :
- aStr += aMonth;
- aStr += getLongDateMonthSep();
- aStr += aDay;
- aStr += getLongDateDaySep();
- aStr += aYear;
+ case MDY :
+ aStr += aMonth + getLongDateMonthSep() + aDay + getLongDateDaySep() + aYear;
break;
- default: // YMD
- aStr += aYear;
- aStr += getLongDateYearSep();
- aStr += aMonth;
- aStr += getLongDateMonthSep();
- aStr += aDay;
+ default: // YMD
+ aStr += aYear + getLongDateYearSep() + aMonth + getLongDateMonthSep() + aDay;
}
return aStr;
}
diff --git a/unotools/source/misc/fontcvt.cxx b/unotools/source/misc/fontcvt.cxx
index 2b44624..0192067 100644
--- a/unotools/source/misc/fontcvt.cxx
+++ b/unotools/source/misc/fontcvt.cxx
@@ -1049,8 +1049,8 @@
::std::multimap<sal_Unicode, SymbolEntry> maMagicMap;
public:
StarSymbolToMSMultiFontImpl(bool bPerfectOnly);
- String ConvertChar(sal_Unicode &rChar);
- String ConvertString(String &rString, xub_StrLen& rIndex);
+ OUString ConvertChar(sal_Unicode &rChar);
+ OUString ConvertString(OUString &rString, sal_Int32& rIndex);
};
struct ExtraTable { sal_Unicode cStar; sal_uInt8 cMS;};
@@ -1237,9 +1237,9 @@
return *ppName;
}
-String StarSymbolToMSMultiFontImpl::ConvertChar(sal_Unicode &rChar)
+OUString StarSymbolToMSMultiFontImpl::ConvertChar(sal_Unicode &rChar)
{
- String sRet;
+ OUString sRet;
::std::multimap<sal_Unicode, SymbolEntry>::const_iterator aResult =
maMagicMap.find(rChar);
@@ -1247,32 +1247,33 @@
if (aResult != maMagicMap.end())
{
const SymbolEntry &rEntry = (*aResult).second;
- sRet.AssignAscii(SymbolFontToString(rEntry.eFont));
+ const char* pc = SymbolFontToString(rEntry.eFont);
+ sRet = OUString(pc, strlen(pc), RTL_TEXTENCODING_ASCII_US );
rChar = rEntry.cIndex;
}
return sRet;
}
-String StarSymbolToMSMultiFontImpl::ConvertString(String &rString,
- xub_StrLen& rIndex)
+OUString StarSymbolToMSMultiFontImpl::ConvertString(OUString &rString,
+ sal_Int32& rIndex)
{
typedef ::std::multimap<sal_Unicode, SymbolEntry>::iterator MI;
typedef ::std::pair<MI, MI> Result;
- String sRet;
+ OUString sRet;
- xub_StrLen nLen = rString.Len();
+ sal_Int32 nLen = rString.getLength();
if (rIndex >= nLen)
return sRet;
int nTotal = 0, nResult = 0;
::std::vector<Result> aPossibilities;
aPossibilities.reserve(nLen - rIndex);
- xub_StrLen nStart = rIndex;
+ sal_Int32 nStart = rIndex;
do
{
- Result aResult = maMagicMap.equal_range(rString.GetChar(rIndex));
+ Result aResult = maMagicMap.equal_range(rString[rIndex]);
int nBitfield = 0;
for (MI aIndex = aResult.first; aIndex != aResult.second; ++aIndex)
nBitfield |= aIndex->second.eFont;
@@ -1304,10 +1305,12 @@
else
break;
}
- sRet.AssignAscii(SymbolFontToString(nI));
+ const char* pc = SymbolFontToString(nI);
+ sRet = OUString(pc, strlen(pc), RTL_TEXTENCODING_ASCII_US );
- xub_StrLen nSize = sal::static_int_cast<xub_StrLen>(aPossibilities.size());
- for(xub_StrLen nPos = 0; nPos < nSize; ++nPos)
+ sal_Int32 nSize = aPossibilities.size();
+ OUStringBuffer sBuff(rString);
+ for(sal_Int32 nPos = 0; nPos < nSize; ++nPos)
{
const Result &rResult = aPossibilities[nPos];
@@ -1315,11 +1318,12 @@
{
if (aIndex->second.eFont == nI)
{
- rString.SetChar(nPos+nStart, aIndex->second.cIndex);
+ sBuff[nPos+nStart] = aIndex->second.cIndex;
break;
}
}
}
+ rString = sBuff.makeStringAndClear();
}
return sRet;
@@ -1432,7 +1436,7 @@
// -----------------------------------------------------------------------
-const ConvertChar* ConvertChar::GetRecodeData( const String& rOrgFontName, const String& rMapFontName )
+const ConvertChar* ConvertChar::GetRecodeData( const OUString& rOrgFontName, const OUString& rMapFontName )
{
const ConvertChar* pCvt = NULL;
OUString aOrgName( rOrgFontName );
@@ -1479,7 +1483,7 @@
//=======================================================================
FontToSubsFontConverter CreateFontToSubsFontConverter(
- const String& rOrgName, sal_uLong nFlags )
+ const OUString& rOrgName, sal_uLong nFlags )
{
const ConvertChar* pCvt = NULL;
@@ -1529,10 +1533,10 @@
// -----------------------------------------------------------------------
-String GetFontToSubsFontName( FontToSubsFontConverter hConverter )
+OUString GetFontToSubsFontName( FontToSubsFontConverter hConverter )
{
if ( !hConverter )
- return String();
+ return OUString();
const char* pName = ((ConvertChar*)hConverter)->mpSubsFontName;
return OUString::createFromAscii( pName );
diff --git a/unotools/source/misc/fontdefs.cxx b/unotools/source/misc/fontdefs.cxx
index b81a5b3..9180e5b 100644
--- a/unotools/source/misc/fontdefs.cxx
+++ b/unotools/source/misc/fontdefs.cxx
@@ -485,7 +485,7 @@
// =======================================================================
-static bool ImplIsFontToken( const OUString& rName, const String& rToken )
+static bool ImplIsFontToken( const OUString& rName, const OUString& rToken )
{
OUString aTempName;
sal_Int32 nIndex = 0;
@@ -502,7 +502,7 @@
// -----------------------------------------------------------------------
-static void ImplAppendFontToken( OUString& rName, const String& rNewToken )
+static void ImplAppendFontToken( OUString& rName, const OUString& rNewToken )
{
if ( !rName.isEmpty() )
{
@@ -539,7 +539,7 @@
{
for( int i = 0; i < 3; i++ )
{
- const ::std::vector< String >* pVector = NULL;
+ const ::std::vector< OUString >* pVector = NULL;
switch( i )
{
case 0:
@@ -557,7 +557,7 @@
}
if( ! pVector )
continue;
- for( ::std::vector< String >::const_iterator it = pVector->begin(); it != pVector->end(); ++it )
+ for( ::std::vector< OUString >::const_iterator it = pVector->begin(); it != pVector->end(); ++it )
if( ! ImplIsFontToken( rName, *it ) )
{
ImplAppendFontToken( aName, *it );
@@ -576,22 +576,22 @@
// -----------------------------------------------------------------------
// TODO: use a more generic String hash
-int FontNameHash::operator()( const String& rStr ) const
+int FontNameHash::operator()( const OUString& rStr ) const
{
// this simple hash just has to be good enough for font names
int nHash = 0;
- const int nLen = rStr.Len();
- const sal_Unicode* p = rStr.GetBuffer();
+ const int nLen = rStr.getLength();
+ const sal_Unicode* p = rStr.getStr();
switch( nLen )
{
- default: nHash = (p[0]<<16) - (p[1]<<8) + p[2];
- nHash += nLen;
- p += nLen - 3;
- // fall through
- case 3: nHash += (p[2]<<16); // fall through
- case 2: nHash += (p[1]<<8); // fall through
- case 1: nHash += p[0]; // fall through
- case 0: break;
+ default: nHash = (p[0]<<16) - (p[1]<<8) + p[2];
+ nHash += nLen;
+ p += nLen - 3;
+ // fall through
+ case 3: nHash += (p[2]<<16); // fall through
+ case 2: nHash += (p[1]<<8); // fall through
+ case 1: nHash += p[0]; // fall through
+ case 0: break;
};
return nHash;
diff --git a/vcl/inc/outdev.h b/vcl/inc/outdev.h
index cf5feb0..76a671a 100644
--- a/vcl/inc/outdev.h
+++ b/vcl/inc/outdev.h
@@ -55,14 +55,14 @@
~ImplDevFontListData();
const OUString& GetFamilyName() const { return maName; }
- const String& GetSearchName() const { return maSearchName; }
+ const OUString& GetSearchName() const { return maSearchName; }
const OUString& GetAliasNames() const { return maMapNames; }
bool IsScalable() const { return mpFirst->IsScalable(); }
int GetMinQuality() const { return mnMinQuality; }
bool AddFontFace( PhysicalFontFace* );
void InitMatchData( const utl::FontSubstConfiguration&,
- const String& rSearchName );
+ const String& rSearchName );
PhysicalFontFace* FindBestFontFace( const FontSelectPattern& rFSD ) const;
void GetFontHeights( std::set<int>& rHeights ) const;
@@ -74,11 +74,11 @@
friend class ImplDevFontList; // TODO: remove soon
PhysicalFontFace* mpFirst; // linked list of physical font faces
OUString maName; // Fontname (original font family name)
- String maSearchName; // normalized font family name
+ OUString maSearchName; // normalized font family name
OUString maMapNames; // fontname aliases
sal_uIntPtr mnTypeFaces; // Typeface Flags
sal_uIntPtr mnMatchType; // MATCH - Type
- String maMatchFamilyName; // MATCH - FamilyName
+ OUString maMatchFamilyName; // MATCH - FamilyName
FontWeight meMatchWeight; // MATCH - Weight
FontWidth meMatchWidth; // MATCH - Width
FontFamily meFamily;
diff --git a/vcl/source/gdi/font.cxx b/vcl/source/gdi/font.cxx
index 94c64e1..eb678f6 100644
--- a/vcl/source/gdi/font.cxx
+++ b/vcl/source/gdi/font.cxx
@@ -153,8 +153,8 @@
// prepare the FontSubst configuration lookup
const utl::FontSubstConfiguration& rFontSubst = utl::FontSubstConfiguration::get();
- String aShortName;
- String aFamilyName;
+ OUString aShortName;
+ OUString aFamilyName;
sal_uLong nType = 0;
FontWeight eWeight = WEIGHT_DONTKNOW;
FontWidth eWidthType = WIDTH_DONTKNOW;
diff --git a/vcl/source/gdi/outdev3.cxx b/vcl/source/gdi/outdev3.cxx
index ec55ff1..ab72e18 100644
--- a/vcl/source/gdi/outdev3.cxx
+++ b/vcl/source/gdi/outdev3.cxx
@@ -1071,7 +1071,7 @@
void ImplDevFontListData::InitMatchData( const utl::FontSubstConfiguration& rFontSubst,
const String& rSearchName )
{
- String aShortName;
+ OUString aShortName;
// get font attributes from the decorated font name
rFontSubst.getMapName( rSearchName, aShortName, maMatchFamilyName,
meMatchWeight, meMatchWidth, mnMatchType );
@@ -1092,12 +1092,13 @@
return mpFirst;
// FontName+StyleName should map to FamilyName+StyleName
- const String& rSearchName = rFSD.maTargetName;
+ const OUString& rSearchName = rFSD.maTargetName;
const sal_Unicode* pTargetStyleName = NULL;
- if( (rSearchName.Len() > maSearchName.Len())
- && rSearchName.Equals( maSearchName, 0, maSearchName.Len() ) )
- pTargetStyleName = rSearchName.GetBuffer() + maSearchName.Len() + 1;
-
+ if( (rSearchName.getLength() > maSearchName.getLength()) &&
+ rSearchName.compareTo( maSearchName, maSearchName.getLength() ) == 0 )
+ {
+ pTargetStyleName = rSearchName.getStr() + maSearchName.getLength() + 1;
+ }
// TODO: linear search improve!
PhysicalFontFace* pFontFace = mpFirst;
PhysicalFontFace* pBestFontFace = pFontFace;
@@ -1483,7 +1484,7 @@
ImplDevFontListData* pFoundData = NULL;
// use the font substitutions suggested by the FontNameAttr to find the font
- ::std::vector< String >::const_iterator it = rFontAttr.Substitutions.begin();
+ ::std::vector< OUString >::const_iterator it = rFontAttr.Substitutions.begin();
for(; it != rFontAttr.Substitutions.end(); ++it )
{
OUString aSearchName( *it );
@@ -1734,9 +1735,9 @@
// test font name substrings
// TODO: calculate name matching score using e.g. Levenstein distance
- if( (rSearchFamilyName.getLength() >= 4) && (pData->maMatchFamilyName.Len() >= 4)
- && ((rSearchFamilyName.indexOf( pData->maMatchFamilyName ) != -1)
- || (pData->maMatchFamilyName.Search( rSearchFamilyName ) != STRING_NOTFOUND)) )
+ if( (rSearchFamilyName.getLength() >= 4) && (pData->maMatchFamilyName.getLength() >= 4)
+ && ((rSearchFamilyName.indexOf( pData->maMatchFamilyName ) >= 0)
+ || (pData->maMatchFamilyName.indexOf( rSearchFamilyName ) >= 0)) )
nTestMatch += 5000;
// test SERIF attribute
@@ -2501,8 +2502,8 @@
GetEnglishSearchFontName( aSearchName );
}
- String aSearchShortName;
- String aSearchFamilyName;
+ OUString aSearchShortName;
+ OUString aSearchFamilyName;
FontWeight eSearchWeight = rFSD.GetWeight();
FontWidth eSearchWidth = rFSD.GetWidthType();
sal_uLong nSearchType = 0;
@@ -2574,8 +2575,8 @@
aSearchName = rFSD.maTargetName;
GetEnglishSearchFontName( aSearchName );
- String aTempShortName;
- String aTempFamilyName;
+ OUString aTempShortName;
+ OUString aTempFamilyName;
sal_uLong nTempType = 0;
FontWeight eTempWeight = rFSD.GetWeight();
FontWidth eTempWidth = WIDTH_DONTKNOW;
--
To view, visit https://gerrit.libreoffice.org/4247
To unsubscribe, visit https://gerrit.libreoffice.org/settings
Gerrit-MessageType: newchange
Gerrit-Change-Id: Iaac38fbf5158b2912aa1e6115c0fe693bdbebe48
Gerrit-PatchSet: 1
Gerrit-Project: core
Gerrit-Branch: master
Gerrit-Owner: Norbert Thiebaud <nthiebaud at gmail.com>
More information about the LibreOffice
mailing list