[Libreoffice-commits] core.git: basic/source connectivity/source cui/source desktop/source editeng/source forms/source framework/source include/sfx2 include/unotools reportdesign/source sc/inc sc/source sfx2/source sot/source svl/source svx/source sw/source unotools/source vcl/source

Norbert Thiebaud nthiebaud at gmail.com
Tue Jul 2 00:31:53 PDT 2013


 basic/source/basmgr/basmgr.cxx                              |    2 
 basic/source/classes/errobject.cxx                          |    2 
 basic/source/classes/image.cxx                              |   31 -
 basic/source/comp/buffer.cxx                                |    2 
 basic/source/runtime/runtime.cxx                            |    4 
 connectivity/source/drivers/dbase/DTable.cxx                |   10 
 cui/source/options/optgdlg.cxx                              |    2 
 desktop/source/deployment/manager/dp_manager.cxx            |    4 
 desktop/source/deployment/registry/dp_backend.cxx           |    4 
 desktop/source/migration/migration.cxx                      |    8 
 desktop/source/migration/services/oo3extensionmigration.cxx |    6 
 editeng/source/editeng/impedit4.cxx                         |   19 -
 forms/source/xforms/computedexpression.cxx                  |   11 
 framework/source/services/autorecovery.cxx                  |    4 
 include/sfx2/docfile.hxx                                    |    6 
 include/unotools/calendarwrapper.hxx                        |    7 
 include/unotools/charclass.hxx                              |   66 +--
 include/unotools/defaultoptions.hxx                         |    4 
 include/unotools/fontcfg.hxx                                |   18 
 include/unotools/fontcvt.hxx                                |   11 
 include/unotools/fontdefs.hxx                               |    6 
 include/unotools/pathoptions.hxx                            |   96 ++---
 include/unotools/syslocaleoptions.hxx                       |   35 -
 include/unotools/tempfile.hxx                               |   24 -
 include/unotools/textsearch.hxx                             |   40 --
 include/unotools/transliterationwrapper.hxx                 |   28 -
 include/unotools/ucblockbytes.hxx                           |   34 -
 include/unotools/ucbstreamhelper.hxx                        |   14 
 reportdesign/source/core/api/ReportEngineJFree.cxx          |    8 
 reportdesign/source/ui/inspection/GeometryHandler.cxx       |   14 
 sc/inc/patattr.hxx                                          |    1 
 sc/source/core/data/dpcache.cxx                             |    7 
 sc/source/core/data/table3.cxx                              |   12 
 sc/source/core/data/table6.cxx                              |   22 -
 sc/source/core/tool/interpr1.cxx                            |   14 
 sfx2/source/doc/docfile.cxx                                 |   16 
 sot/source/sdstor/ucbstorage.cxx                            |    4 
 svl/source/numbers/zforlist.cxx                             |   12 
 svx/source/dialog/ctredlin.cxx                              |   12 
 svx/source/form/fmsrcimp.cxx                                |    4 
 sw/source/core/crsr/findtxt.cxx                             |   22 -
 sw/source/core/crsr/paminit.cxx                             |    4 
 sw/source/core/doc/docglbl.cxx                              |   19 -
 sw/source/core/doc/tblafmt.cxx                              |    2 
 sw/source/core/inc/pamtyp.hxx                               |    4 
 sw/source/filter/html/swhtml.cxx                            |   13 
 sw/source/ui/config/uinums.cxx                              |    2 
 sw/source/ui/dbui/addresslistdialog.cxx                     |    2 
 sw/source/ui/dbui/dbmgr.cxx                                 |   11 
 sw/source/ui/index/cnttab.cxx                               |   18 
 sw/source/ui/misc/glosbib.cxx                               |    2 
 sw/source/ui/misc/glosdoc.cxx                               |    4 
 unotools/source/config/defaultoptions.cxx                   |   96 ++---
 unotools/source/config/fontcfg.cxx                          |   87 ++--
 unotools/source/config/pathoptions.cxx                      |  217 +++++------
 unotools/source/config/securityoptions.cxx                  |    7 
 unotools/source/config/syslocaleoptions.cxx                 |   75 ++--
 unotools/source/i18n/calendarwrapper.cxx                    |   13 
 unotools/source/i18n/charclass.cxx                          |  133 +++----
 unotools/source/i18n/localedatawrapper.cxx                  |   23 -
 unotools/source/i18n/textsearch.cxx                         |  223 ++++--------
 unotools/source/i18n/transliterationwrapper.cxx             |   58 +--
 unotools/source/misc/fontcvt.cxx                            |   43 +-
 unotools/source/misc/fontdefs.cxx                           |   23 -
 unotools/source/misc/syslocale.cxx                          |   11 
 unotools/source/ucbhelper/tempfile.cxx                      |  112 +++---
 unotools/source/ucbhelper/ucblockbytes.cxx                  |   54 +-
 unotools/source/ucbhelper/ucbstreamhelper.cxx               |   24 -
 vcl/source/edit/xtextedt.cxx                                |   12 
 vcl/source/gdi/font.cxx                                     |    4 
 vcl/source/gdi/outdev3.cxx                                  |   20 -
 71 files changed, 954 insertions(+), 1008 deletions(-)

New commits:
commit 6a08067902ddc0ec61a7c7b4b0035b303f643a50
Author: Norbert Thiebaud <nthiebaud at gmail.com>
Date:   Mon Jul 1 10:33:48 2013 -0500

    OUString convertion for unotools
    
    Change-Id: Ifae7f344e3827875e32afa3cda23c771f5735707
    Reviewed-on: https://gerrit.libreoffice.org/4659
    Tested-by: LibreOffice gerrit bot <gerrit at libreoffice.org>
    Reviewed-by: Fridrich Strba <fridrich at documentfoundation.org>
    Tested-by: Fridrich Strba <fridrich at documentfoundation.org>

diff --git a/basic/source/basmgr/basmgr.cxx b/basic/source/basmgr/basmgr.cxx
index 8f52b1f..d4bcac2 100644
--- a/basic/source/basmgr/basmgr.cxx
+++ b/basic/source/basmgr/basmgr.cxx
@@ -883,7 +883,7 @@ void BasicManager::LoadBasicManager( SotStorage& rStorage, const OUString& rBase
             {
                 // Search lib in path
                 OUString aSearchFile = pInfo->GetRelStorageName();
-                String aSearchFileOldFormat(aSearchFile);
+                OUString aSearchFileOldFormat(aSearchFile);
                 SvtPathOptions aPathCFG;
                 if( aPathCFG.SearchFile( aSearchFileOldFormat, SvtPathOptions::PATH_BASIC ) )
                 {
diff --git a/basic/source/classes/errobject.cxx b/basic/source/classes/errobject.cxx
index 139939d..4043549 100644
--- a/basic/source/classes/errobject.cxx
+++ b/basic/source/classes/errobject.cxx
@@ -81,7 +81,7 @@ ErrObject::getNumber() throw (uno::RuntimeException)
 void SAL_CALL
 ErrObject::setNumber( ::sal_Int32 _number ) throw (uno::RuntimeException)
 {
-    GetSbData()->pInst->setErrorVB( _number, String() );
+    GetSbData()->pInst->setErrorVB( _number, OUString() );
     OUString _description = GetSbData()->pInst->GetErrorMsg();
     setData( uno::makeAny( _number ), uno::Any(), uno::makeAny( _description ), uno::Any(), uno::Any() );
 }
diff --git a/basic/source/classes/image.cxx b/basic/source/classes/image.cxx
index 8a4412d..162fcd4 100644
--- a/basic/source/classes/image.cxx
+++ b/basic/source/classes/image.cxx
@@ -19,6 +19,7 @@
 
 #include <tools/stream.hxx>
 #include <tools/tenccvt.hxx>
+#include <osl/thread.h>
 #include <basic/sbx.hxx>
 #include "sb.hxx"
 #include <string.h>     // memset() etc
@@ -120,7 +121,7 @@ bool SbiImage::Load( SvStream& r, sal_uInt32& nVersion )
     {
         r >> nVersion >> nCharSet >> lDimBase
           >> nFlags >> nReserved1 >> nReserved2 >> nReserved3;
-        eCharSet = (CharSet) nCharSet;
+        eCharSet = nCharSet;
         eCharSet = GetSOLoadTextEncoding( eCharSet );
         bBadVer  = ( nVersion > B_CURVERSION );
         nDimBase = (sal_uInt16) lDimBase;
@@ -286,34 +287,8 @@ bool SbiImage::Save( SvStream& r, sal_uInt32 nVer )
     if( !aOUSource.isEmpty() && SbiGood( r ) )
     {
         nPos = SbiOpenRecord( r, B_SOURCE, 1 );
-        OUString aTmp;
-        sal_Int32 nLen = aOUSource.getLength();
-        const sal_Int32 nMaxUnitSize = STRING_MAXLEN - 1;
-        if( nLen > STRING_MAXLEN )
-        {
-            aTmp = aOUSource.copy( 0, nMaxUnitSize );
-        }
-        else
-        {
-            aTmp = aOUSource;
-        }
-        r.WriteUniOrByteString( aTmp, eCharSet );
+        r.WriteUniOrByteString( aOUSource, eCharSet );
         SbiCloseRecord( r, nPos );
-
-        if( nLen > STRING_MAXLEN )
-        {
-            sal_Int32 nRemainingLen = nLen - nMaxUnitSize;
-            sal_uInt16 nUnitCount = sal_uInt16( (nRemainingLen + nMaxUnitSize - 1) / nMaxUnitSize );
-            nPos = SbiOpenRecord( r, B_EXTSOURCE, nUnitCount );
-            for( sal_uInt16 i = 0 ; i < nUnitCount ; i++ )
-            {
-                sal_Int32 nCopyLen = (nRemainingLen > nMaxUnitSize) ? nMaxUnitSize : nRemainingLen;
-                OUString aTmp2 = aOUSource.copy( (i+1) * nMaxUnitSize, nCopyLen );
-                nRemainingLen -= nCopyLen;
-                r.WriteUniOrByteString( aTmp2, eCharSet );
-            }
-            SbiCloseRecord( r, nPos );
-        }
     }
     // Binary data?
     if( pCode && SbiGood( r ) )
diff --git a/basic/source/comp/buffer.cxx b/basic/source/comp/buffer.cxx
index b08d352..fa09ef9 100644
--- a/basic/source/comp/buffer.cxx
+++ b/basic/source/comp/buffer.cxx
@@ -17,7 +17,7 @@
  *   the License at http://www.apache.org/licenses/LICENSE-2.0 .
  */
 
-
+#include <osl/thread.h>
 #include "buffer.hxx"
 #include "sbcomp.hxx"
 
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 @@ void SbiRuntime::StepLIKE()
     }
     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/connectivity/source/drivers/dbase/DTable.cxx b/connectivity/source/drivers/dbase/DTable.cxx
index cb767c9..8caf763 100644
--- a/connectivity/source/drivers/dbase/DTable.cxx
+++ b/connectivity/source/drivers/dbase/DTable.cxx
@@ -2492,12 +2492,10 @@ String ODbaseTable::createTempFile()
     OUString aIdent = m_pConnection->getContent()->getIdentifier()->getContentIdentifier();
     if ( aIdent.lastIndexOf('/') != (aIdent.getLength()-1) )
         aIdent += "/";
-    String sTempName(aIdent);
-    String sExt;
-    sExt.AssignAscii(".");
-    sExt += m_pConnection->getExtension();
 
-    String sName(m_Name);
+    OUString sTempName(aIdent);
+    OUString sExt(OUString(".") + m_pConnection->getExtension());
+    OUString sName(m_Name);
     TempFile aTempFile(sName,&sExt,&sTempName);
     if(!aTempFile.IsValid())
         getConnection()->throwGenericSQLException(STR_COULD_NOT_ALTER_TABLE,*this);
@@ -2507,7 +2505,7 @@ String ODbaseTable::createTempFile()
     aURL.SetURL(aTempFile.GetURL());
 
     String sNewName(aURL.getName());
-    sNewName.Erase(sNewName.Len() - sExt.Len());
+    sNewName.Erase(sNewName.Len() - sExt.getLength());
     return sNewName;
 }
 // -----------------------------------------------------------------------------
diff --git a/cui/source/options/optgdlg.cxx b/cui/source/options/optgdlg.cxx
index 6489201..e11eef5 100644
--- a/cui/source/options/optgdlg.cxx
+++ b/cui/source/options/optgdlg.cxx
@@ -1446,7 +1446,7 @@ void OfaLanguagesTabPage::Reset( const SfxItemSet& rSet )
     LocaleSettingHdl(m_pLocaleSettingLB);
 
     // configured currency, for example, USD-en-US or EUR-de-DE, or empty for locale default
-    String aAbbrev;
+    OUString aAbbrev;
     LanguageType eLang;
     const NfCurrencyEntry* pCurr = NULL;
     sLang = pLangConfig->aSysLocaleOptions.GetCurrencyConfigString();
diff --git a/desktop/source/deployment/manager/dp_manager.cxx b/desktop/source/deployment/manager/dp_manager.cxx
index 5bf0c91..51fd817 100644
--- a/desktop/source/deployment/manager/dp_manager.cxx
+++ b/desktop/source/deployment/manager/dp_manager.cxx
@@ -588,8 +588,8 @@ OUString PackageManagerImpl::insertToActivationLayer(
     Reference<XCommandEnvironment> xCmdEnv(
         sourceContent.getCommandEnvironment() );
 
-    String baseDir(m_activePackages_expanded);
-    ::utl::TempFile aTemp(&baseDir, sal_False);
+    OUString baseDir(m_activePackages_expanded);
+    ::utl::TempFile aTemp(&baseDir, false);
     OUString tempEntry = aTemp.GetURL();
     tempEntry = tempEntry.copy(tempEntry.lastIndexOf('/') + 1);
     OUString destFolder = makeURL( m_activePackages, tempEntry);
diff --git a/desktop/source/deployment/registry/dp_backend.cxx b/desktop/source/deployment/registry/dp_backend.cxx
index 8c6cdfa..3989284 100644
--- a/desktop/source/deployment/registry/dp_backend.cxx
+++ b/desktop/source/deployment/registry/dp_backend.cxx
@@ -220,8 +220,8 @@ OUString PackageRegistryBackend::createFolder(
     ucbhelper::Content dataContent;
     ::dp_misc::create_folder(&dataContent, sDataFolder, xCmdEnv);
 
-    const String baseDir(sDataFolder);
-    const ::utl::TempFile aTemp(&baseDir, sal_True);
+    const OUString baseDir(sDataFolder);
+    const ::utl::TempFile aTemp(&baseDir, true);
     const OUString url = aTemp.GetURL();
     return sDataFolder + url.copy(url.lastIndexOf('/'));
 }
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 @@ strings_vr MigrationImpl::applyPatterns(const strings_v& vSet, const strings_v&
         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..0f039d3 100644
--- a/desktop/source/migration/services/oo3extensionmigration.cxx
+++ b/desktop/source/migration/services/oo3extensionmigration.cxx
@@ -287,9 +287,9 @@ bool OO3ExtensionMigration::scanDescriptionXml( const OUString& sDescriptionXmlU
             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   = sDescriptionXmlURL.getLength();
+            if (ts.SearchForward(sDescriptionXmlURL, &start, &end))
                 return false;
         }
     }
diff --git a/editeng/source/editeng/impedit4.cxx b/editeng/source/editeng/impedit4.cxx
index 7572014..dedd6b2 100644
--- a/editeng/source/editeng/impedit4.cxx
+++ b/editeng/source/editeng/impedit4.cxx
@@ -2608,8 +2608,8 @@ sal_Bool ImpEditEngine::ImpSearch( const SvxSearchItem& rSearchItem,
 
         ContentNode* pNode = aEditDoc.GetObject( nNode );
 
-        sal_uInt16 nStartPos = 0;
-        sal_uInt16 nEndPos = pNode->Len();
+        sal_Int32 nStartPos = 0;
+        sal_Int32 nEndPos = pNode->Len();
         if ( nNode == nStartNode )
         {
             if ( bBack )
@@ -2626,16 +2626,21 @@ sal_Bool ImpEditEngine::ImpSearch( const SvxSearchItem& rSearchItem,
         }
 
         // Searching ...
-        XubString aParaStr( GetEditDoc().GetParaAsString( pNode ) );
+        OUString aParaStr( GetEditDoc().GetParaAsString( pNode ) );
         bool bFound = false;
         if ( bBack )
         {
-            Swapsal_uIt16s( nStartPos, nEndPos );
-            bFound = aSearcher.SearchBkwrd( aParaStr, &nStartPos, &nEndPos);
+            sal_Int32 nTemp;
+            nTemp = nStartPos;
+            nStartPos = nEndPos;
+            nEndPos = nTemp;
+
+            bFound = aSearcher.SearchBackward( aParaStr, &nStartPos, &nEndPos);
         }
         else
-            bFound = aSearcher.SearchFrwrd( aParaStr, &nStartPos, &nEndPos);
-
+        {
+            bFound = aSearcher.SearchForward( aParaStr, &nStartPos, &nEndPos);
+        }
         if ( bFound )
         {
             rFoundSel.Min().SetNode( pNode );
diff --git a/forms/source/xforms/computedexpression.cxx b/forms/source/xforms/computedexpression.cxx
index 184d91c..306dbd9 100644
--- a/forms/source/xforms/computedexpression.cxx
+++ b/forms/source/xforms/computedexpression.cxx
@@ -92,14 +92,13 @@ bool ComputedExpression::_checkExpression( const sal_Char* pExpression ) const
     // call RegExp engine
     SearchOptions aSearchOptions;
     aSearchOptions.algorithmType = SearchAlgorithms_REGEXP;
-    aSearchOptions.searchString = String( pExpression, RTL_TEXTENCODING_ASCII_US );
+    aSearchOptions.searchString = OUString( pExpression, strlen(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/framework/source/services/autorecovery.cxx b/framework/source/services/autorecovery.cxx
index 2409647..1cc901a 100644
--- a/framework/source/services/autorecovery.cxx
+++ b/framework/source/services/autorecovery.cxx
@@ -2801,8 +2801,8 @@ void AutoRecovery::implts_generateNewTempURL(const OUString&               sBack
     // TODO: Must we strip some illegal signes - if we use the title?
 
     OUString sName(sUniqueName.makeStringAndClear());
-    String sExtension(rInfo.Extension);
-    String sPath(sBackupPath);
+    OUString sExtension(rInfo.Extension);
+    OUString sPath(sBackupPath);
     ::utl::TempFile aTempFile(sName, &sExtension, &sPath);
 
     rInfo.NewTempURL = aTempFile.GetURL();
diff --git a/include/sfx2/docfile.hxx b/include/sfx2/docfile.hxx
index fcf7351..7aa06a6 100644
--- a/include/sfx2/docfile.hxx
+++ b/include/sfx2/docfile.hxx
@@ -247,9 +247,9 @@ public:
     SAL_DLLPRIVATE void DoBackup_Impl();
     SAL_DLLPRIVATE void DoInternalBackup_Impl( const ::ucbhelper::Content& aOriginalContent );
     SAL_DLLPRIVATE void DoInternalBackup_Impl( const ::ucbhelper::Content& aOriginalContent,
-                                                const String& aPrefix,
-                                                const String& aExtension,
-                                                const String& aDestDir );
+                                                const OUString& aPrefix,
+                                                const OUString& aExtension,
+                                                const OUString& aDestDir );
 
     SAL_DLLPRIVATE sal_Bool UseBackupToRestore_Impl( ::ucbhelper::Content& aOriginalContent,
                              const css::uno::Reference< css::ucb::XCommandEnvironment >& xComEnv );
diff --git a/include/unotools/calendarwrapper.hxx b/include/unotools/calendarwrapper.hxx
index d7e66de..2f3c48f 100644
--- a/include/unotools/calendarwrapper.hxx
+++ b/include/unotools/calendarwrapper.hxx
@@ -21,7 +21,6 @@
 #define _UNOTOOLS_CALENDARWRAPPER_HXX
 
 #include <tools/datetime.hxx>
-#include <tools/string.hxx>
 #include <com/sun/star/uno/Reference.hxx>
 #include <com/sun/star/uno/Sequence.hxx>
 #include <com/sun/star/i18n/Calendar2.hpp>
@@ -73,13 +72,13 @@ public:
     // wrapper implementations of XCalendar
 
     void setValue( sal_Int16 nFieldIndex, sal_Int16 nValue );
-    sal_Bool isValid() const;
+    bool isValid() const;
     sal_Int16 getValue( sal_Int16 nFieldIndex ) const;
     void addValue( sal_Int16 nFieldIndex, sal_Int32 nAmount );
     sal_Int16 getFirstDayOfWeek() const;
     sal_Int16 getNumberOfMonthsInYear() const;
     sal_Int16 getNumberOfDaysInWeek() const;
-    String getDisplayName( sal_Int16 nCalendarDisplayIndex, sal_Int16 nIdx, sal_Int16 nNameType ) const;
+    OUString getDisplayName( sal_Int16 nCalendarDisplayIndex, sal_Int16 nIdx, sal_Int16 nNameType ) const;
 
     /** Convenience method to get timezone offset in milliseconds, taking both
         fields ZONE_OFFSET and ZONE_OFFSET_SECOND_MILLIS into account. */
@@ -91,7 +90,7 @@ public:
 
     // wrapper implementations of XExtendedCalendar
 
-    String getDisplayString( sal_Int32 nCalendarDisplayCode, sal_Int16 nNativeNumberMode ) const;
+    OUString getDisplayString( sal_Int32 nCalendarDisplayCode, sal_Int16 nNativeNumberMode ) const;
 
 
     // wrapper implementations of XCalendar3
diff --git a/include/unotools/charclass.hxx b/include/unotools/charclass.hxx
index 3ff8345..1eb2954a 100644
--- a/include/unotools/charclass.hxx
+++ b/include/unotools/charclass.hxx
@@ -33,7 +33,7 @@
 #include <osl/mutex.hxx>
 #include <rtl/character.hxx>
 
-class String;
+
 namespace com { namespace sun { namespace star {
     namespace uno {
         class XComponentContext;
@@ -93,48 +93,48 @@ public:
 
 
     /// isdigit() on ascii values
-    static inline sal_Bool isAsciiDigit( sal_Unicode c )
+    static inline bool isAsciiDigit( sal_Unicode c )
     {
         return rtl::isAsciiDigit( c );
     }
 
     /// isalpha() on ascii values
-    static inline sal_Bool isAsciiAlpha( sal_Unicode c )
+    static inline bool isAsciiAlpha( sal_Unicode c )
     {
         return rtl::isAsciiAlpha( c );
     }
 
     /// isalnum() on ascii values
-    static inline sal_Bool isAsciiAlphaNumeric( sal_Unicode c )
+    static inline bool isAsciiAlphaNumeric( sal_Unicode c )
     {
         return rtl::isAsciiAlphanumeric( c );
     }
 
     /// isdigit() on ascii values of entire string
-    static sal_Bool isAsciiNumeric( const String& rStr );
+    static bool isAsciiNumeric( const OUString& rStr );
 
     /// isalpha() on ascii values of entire string
-    static sal_Bool isAsciiAlpha( const String& rStr );
+    static bool isAsciiAlpha( const OUString& rStr );
 
     /// isalnum() on ascii values of entire string
-    static sal_Bool isAsciiAlphaNumeric( const String& rStr );
+    static bool isAsciiAlphaNumeric( const OUString& rStr );
 
     /// whether type is pure alpha or not, e.g. return of getStringType
-    static inline sal_Bool isAlphaType( sal_Int32 nType )
+    static inline bool isAlphaType( sal_Int32 nType )
     {
         return ((nType & nCharClassAlphaType) != 0) &&
             ((nType & ~(nCharClassAlphaTypeMask)) == 0);
     }
 
     /// whether type is pure numeric or not, e.g. return of getStringType
-    static inline sal_Bool isNumericType( sal_Int32 nType )
+    static inline bool isNumericType( sal_Int32 nType )
     {
         return ((nType & nCharClassNumericType) != 0) &&
             ((nType & ~(nCharClassNumericTypeMask)) == 0);
     }
 
     /// whether type is pure alphanumeric or not, e.g. return of getStringType
-    static inline sal_Bool isAlphaNumericType( sal_Int32 nType )
+    static inline bool isAlphaNumericType( sal_Int32 nType )
     {
         return ((nType & (nCharClassAlphaType |
             nCharClassNumericType)) != 0) &&
@@ -143,14 +143,14 @@ public:
     }
 
     /// whether type is pure letter or not, e.g. return of getStringType
-    static inline sal_Bool isLetterType( sal_Int32 nType )
+    static inline bool isLetterType( sal_Int32 nType )
     {
         return ((nType & nCharClassLetterType) != 0) &&
             ((nType & ~(nCharClassLetterTypeMask)) == 0);
     }
 
     /// whether type is pure letternumeric or not, e.g. return of getStringType
-    static inline sal_Bool isLetterNumericType( sal_Int32 nType )
+    static inline bool isLetterNumericType( sal_Int32 nType )
     {
         return ((nType & (nCharClassLetterType |
             nCharClassNumericType)) != 0) &&
@@ -178,42 +178,42 @@ public:
         return titlecase(_rStr, 0, _rStr.getLength());
     }
 
-    sal_Int16 getType( const String& rStr, xub_StrLen nPos ) const;
-    sal_Int16 getCharacterDirection( const String& rStr, xub_StrLen nPos ) const;
-    sal_Int16 getScript( const String& rStr, xub_StrLen nPos ) const;
-    sal_Int32 getCharacterType( const String& rStr, xub_StrLen nPos ) const;
-    sal_Int32 getStringType( const String& rStr, xub_StrLen nPos, xub_StrLen nCount ) const;
+    sal_Int16 getType( const OUString& rStr, sal_Int32 nPos ) const;
+    sal_Int16 getCharacterDirection( const OUString& rStr, sal_Int32 nPos ) const;
+    sal_Int16 getScript( const OUString& rStr, sal_Int32 nPos ) const;
+    sal_Int32 getCharacterType( const OUString& rStr, sal_Int32 nPos ) const;
+    sal_Int32 getStringType( const OUString& rStr, sal_Int32 nPos, sal_Int32 nCount ) const;
 
     ::com::sun::star::i18n::ParseResult parseAnyToken(
-                                    const String& rStr,
+                                    const OUString& rStr,
                                     sal_Int32 nPos,
                                     sal_Int32 nStartCharFlags,
-                                    const String& userDefinedCharactersStart,
+                                    const OUString& userDefinedCharactersStart,
                                     sal_Int32 nContCharFlags,
-                                    const String& userDefinedCharactersCont ) const;
+                                    const OUString& userDefinedCharactersCont ) const;
 
     ::com::sun::star::i18n::ParseResult parsePredefinedToken(
                                     sal_Int32 nTokenType,
-                                    const String& rStr,
+                                    const OUString& rStr,
                                     sal_Int32 nPos,
                                     sal_Int32 nStartCharFlags,
-                                    const String& userDefinedCharactersStart,
+                                    const OUString& userDefinedCharactersStart,
                                     sal_Int32 nContCharFlags,
-                                    const String& userDefinedCharactersCont ) const;
+                                    const OUString& userDefinedCharactersCont ) const;
 
 
     // Functionality of class International methods
 
-    sal_Bool isAlpha( const String& rStr, xub_StrLen nPos ) const;
-    sal_Bool isLetter( const String& rStr, xub_StrLen nPos ) const;
-    sal_Bool isDigit( const String& rStr, xub_StrLen nPos ) const;
-    sal_Bool isAlphaNumeric( const String& rStr, xub_StrLen nPos ) const;
-    sal_Bool isLetterNumeric( const String& rStr, xub_StrLen nPos ) const;
-    sal_Bool isAlpha( const String& rStr ) const;
-    sal_Bool isLetter( const String& rStr ) const;
-    sal_Bool isNumeric( const String& rStr ) const;
-    sal_Bool isAlphaNumeric( const String& rStr ) const;
-    sal_Bool isLetterNumeric( const String& rStr ) const;
+    bool isAlpha( const OUString& rStr, sal_Int32 nPos ) const;
+    bool isLetter( const OUString& rStr, sal_Int32 nPos ) const;
+    bool isDigit( const OUString& rStr, sal_Int32 nPos ) const;
+    bool isAlphaNumeric( const OUString& rStr, sal_Int32 nPos ) const;
+    bool isLetterNumeric( const OUString& rStr, sal_Int32 nPos ) const;
+    bool isAlpha( const OUString& rStr ) const;
+    bool isLetter( const OUString& rStr ) const;
+    bool isNumeric( const OUString& rStr ) const;
+    bool isAlphaNumeric( const OUString& rStr ) const;
+    bool isLetterNumeric( const OUString& rStr ) const;
 
 private:
 
diff --git a/include/unotools/defaultoptions.hxx b/include/unotools/defaultoptions.hxx
index 175fd32..692c146 100644
--- a/include/unotools/defaultoptions.hxx
+++ b/include/unotools/defaultoptions.hxx
@@ -20,10 +20,10 @@
 #define INCLUDED_unotools_DEFAULTOPTIONS_HXX
 
 #include "unotools/unotoolsdllapi.h"
+#include <rtl/ustring.hxx>
 #include "tools/solar.h"
 #include <unotools/options.hxx>
 
-class String;
 class SvtDefaultOptions_Impl;
 
 // class SvtDefaultOptions -----------------------------------------------
@@ -39,7 +39,7 @@ public:
     SvtDefaultOptions();
     virtual ~SvtDefaultOptions();
 
-    String  GetDefaultPath( sal_uInt16 nId ) const;
+    OUString  GetDefaultPath( sal_uInt16 nId ) const;
 };
 
 #endif // #ifndef INCLUDED_unotools_DEFAULTOPTIONS_HXX
diff --git a/include/unotools/fontcfg.hxx b/include/unotools/fontcfg.hxx
index 23ea551..3e7f0ac 100644
--- a/include/unotools/fontcfg.hxx
+++ b/include/unotools/fontcfg.hxx
@@ -20,7 +20,7 @@
 #define _UNOTOOLS_FONTCFG_HXX
 
 #include <unotools/unotoolsdllapi.h>
-#include <tools/string.hxx>
+#include <tools/solar.h>
 #include <tools/fontenum.hxx>
 #include <com/sun/star/lang/Locale.hpp>
 #include <com/sun/star/lang/XMultiServiceFactory.hpp>
@@ -154,11 +154,11 @@ class UNOTOOLS_DLLPUBLIC DefaultFontConfiguration
 
 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 @@ private:
 
     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 @@ public:
     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..216ebca 100644
--- a/include/unotools/fontcvt.hxx
+++ b/include/unotools/fontcvt.hxx
@@ -21,7 +21,8 @@
 #define _UNOTOOLS_FONTCVT_HXX
 
 #include <unotools/unotoolsdllapi.h>
-#include <tools/string.hxx>
+#include <rtl/ustring.hxx>
+#include <tools/solar.h>
 
 // ------------------
 // - FontToSubsFont -
@@ -32,10 +33,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 +49,7 @@ public:
     //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 +58,7 @@ public:
     //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() {}
 };
 
diff --git a/include/unotools/fontdefs.hxx b/include/unotools/fontdefs.hxx
index e57abd4..1e88372 100644
--- a/include/unotools/fontdefs.hxx
+++ b/include/unotools/fontdefs.hxx
@@ -21,7 +21,7 @@
 
 #include <unotools/unotoolsdllapi.h>
 #include <sal/types.h>
-#include <tools/string.hxx>
+#include <tools/solar.h>
 #include <rtl/ustring.hxx>
 #include <rtl/ustrbuf.hxx>
 
@@ -43,7 +43,7 @@ UNOTOOLS_DLLPUBLIC OUString GetSubsFontName( const OUString& rName, sal_uLong nF
 
 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 @@ public:
     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/pathoptions.hxx b/include/unotools/pathoptions.hxx
index 8b5f9da..426524d 100644
--- a/include/unotools/pathoptions.hxx
+++ b/include/unotools/pathoptions.hxx
@@ -68,61 +68,61 @@ public:
     virtual ~SvtPathOptions();
 
     // get the paths, not const because of using a mutex
-    const String&   GetAddinPath() const;
-    const String&   GetAutoCorrectPath() const;
-    const String&   GetAutoTextPath() const;
-    const String&   GetBackupPath() const;
-    const String&   GetBasicPath() const;
-    const String&   GetBitmapPath() const;
-    const String&   GetConfigPath() const;
-    const String&   GetDictionaryPath() const;
-    const String&   GetFavoritesPath() const;
-    const String&   GetFilterPath() const;
-    const String&   GetGalleryPath() const;
-    const String&   GetGraphicPath() const;
-    const String&   GetHelpPath() const;
-    const String&   GetLinguisticPath() const;
-    const String&   GetModulePath() const;
-    const String&   GetPalettePath() const;
-    const String&   GetPluginPath() const;
-    const String&   GetStoragePath() const;
-    const String&   GetTempPath() const;
-    const String&   GetTemplatePath() const;
-    const String&   GetUserConfigPath() const;
-    const String&   GetWorkPath() const;
-    const String&   GetUIConfigPath() const;
-    const String&   GetFingerprintPath() const;
+    const OUString& GetAddinPath() const;
+    const OUString& GetAutoCorrectPath() const;
+    const OUString& GetAutoTextPath() const;
+    const OUString& GetBackupPath() const;
+    const OUString& GetBasicPath() const;
+    const OUString& GetBitmapPath() const;
+    const OUString& GetConfigPath() const;
+    const OUString& GetDictionaryPath() const;
+    const OUString& GetFavoritesPath() const;
+    const OUString& GetFilterPath() const;
+    const OUString& GetGalleryPath() const;
+    const OUString& GetGraphicPath() const;
+    const OUString& GetHelpPath() const;
+    const OUString& GetLinguisticPath() const;
+    const OUString& GetModulePath() const;
+    const OUString& GetPalettePath() const;
+    const OUString& GetPluginPath() const;
+    const OUString& GetStoragePath() const;
+    const OUString& GetTempPath() const;
+    const OUString& GetTemplatePath() const;
+    const OUString& GetUserConfigPath() const;
+    const OUString& GetWorkPath() const;
+    const OUString& GetUIConfigPath() const;
+    const OUString& GetFingerprintPath() const;
 
     // set the paths
-    void            SetAddinPath( const String& rPath );
-    void            SetAutoCorrectPath( const String& rPath );
-    void            SetAutoTextPath( const String& rPath );
-    void            SetBackupPath( const String& rPath );
-    void            SetBasicPath( const String& rPath );
-    void            SetBitmapPath( const String& rPath );
-    void            SetConfigPath( const String& rPath );
-    void            SetDictionaryPath( const String& rPath );
-    void            SetFavoritesPath( const String& rPath );
-    void            SetFilterPath( const String& rPath );
-    void            SetGalleryPath( const String& rPath );
-    void            SetGraphicPath( const String& rPath );
-    void            SetHelpPath( const String& rPath );
-    void            SetLinguisticPath( const String& rPath );
-    void            SetModulePath( const String& rPath );
-    void            SetPalettePath( const String& rPath );
-    void            SetPluginPath( const String& rPath );
-    void            SetStoragePath( const String& rPath );
-    void            SetTempPath( const String& rPath );
-    void            SetTemplatePath( const String& rPath );
-    void            SetUserConfigPath( const String& rPath );
-    void            SetWorkPath( const String& rPath );
+    void            SetAddinPath( const OUString& rPath );
+    void            SetAutoCorrectPath( const OUString& rPath );
+    void            SetAutoTextPath( const OUString& rPath );
+    void            SetBackupPath( const OUString& rPath );
+    void            SetBasicPath( const OUString& rPath );
+    void            SetBitmapPath( const OUString& rPath );
+    void            SetConfigPath( const OUString& rPath );
+    void            SetDictionaryPath( const OUString& rPath );
+    void            SetFavoritesPath( const OUString& rPath );
+    void            SetFilterPath( const OUString& rPath );
+    void            SetGalleryPath( const OUString& rPath );
+    void            SetGraphicPath( const OUString& rPath );
+    void            SetHelpPath( const OUString& rPath );
+    void            SetLinguisticPath( const OUString& rPath );
+    void            SetModulePath( const OUString& rPath );
+    void            SetPalettePath( const OUString& rPath );
+    void            SetPluginPath( const OUString& rPath );
+    void            SetStoragePath( const OUString& rPath );
+    void            SetTempPath( const OUString& rPath );
+    void            SetTemplatePath( const OUString& rPath );
+    void            SetUserConfigPath( const OUString& rPath );
+    void            SetWorkPath( const OUString& rPath );
 
     OUString        SubstituteVariable( const OUString& rVar ) const;
     OUString        ExpandMacros( const OUString& rPath ) const;
     OUString        UseVariable( const OUString& rVar ) const;
-    sal_Bool        SearchFile( String& rIniFile, Paths ePath = PATH_USERCONFIG );
+    bool            SearchFile( OUString& rIniFile, Paths ePath = PATH_USERCONFIG );
     const LanguageTag& GetLanguageTag() const;
-    sal_Bool        IsReadonly() const;
+    bool            IsReadonly() const;
 };
 
 #endif // #ifndef INCLUDED_unotools_PATHOPTIONS_HXX
diff --git a/include/unotools/syslocaleoptions.hxx b/include/unotools/syslocaleoptions.hxx
index 8c93789..9bf0578 100644
--- a/include/unotools/syslocaleoptions.hxx
+++ b/include/unotools/syslocaleoptions.hxx
@@ -27,7 +27,6 @@
 #include <tools/link.hxx>
 #include <i18nlangtag/lang.h>
 #include <i18nlangtag/languagetag.hxx>
-#include <tools/string.hxx>
 #include <unotools/options.hxx>
 
 // bits for broadcasting hints of changes in a SfxSimpleHint, may be combined
@@ -64,7 +63,7 @@ public:
 
     // ConfigItem methods
 
-            sal_Bool            IsModified();
+            bool                IsModified();
             void                Commit();
 
                                 /** Add a listener to react on config changes
@@ -88,16 +87,16 @@ public:
         @ATTENTION
         All SvtSysLocaleOptions instances point to exactly one refcounted
         internal representation instance and broadcast blocks are counted.
-        Thus if you issue a BlockBroadcasts(sal_True) you MUST issue a matching
-        BlockBroadcasts(sal_False) or otherwise pending hints would never be
+        Thus if you issue a BlockBroadcasts(true) you MUST issue a matching
+        BlockBroadcasts(false) or otherwise pending hints would never be
         broadcasted again.
      */
-       virtual void                BlockBroadcasts( bool bBlock );
+       virtual void             BlockBroadcasts( bool bBlock );
 
     // config value access methods
 
     /// The config string may be empty to denote the SYSTEM locale
-            const OUString&  GetLocaleConfigString() const;
+            const OUString&     GetLocaleConfigString() const;
             void                SetLocaleConfigString( const OUString& rStr );
             /** Get locale set, if empty denotes SYSTEM locale, not resolved
                 to the real locale. */
@@ -111,39 +110,39 @@ public:
             const LanguageTag&  GetRealUILanguageTag() const;
 
     /// The config string may be empty to denote the default currency of the locale
-            const OUString&  GetCurrencyConfigString() const;
+            const OUString&     GetCurrencyConfigString() const;
             void                SetCurrencyConfigString( const OUString& rStr );
 
     /** The config string may be empty to denote the default
         DateAcceptancePatterns of the locale */
-            const OUString&  GetDatePatternsConfigString() const;
+            const OUString&     GetDatePatternsConfigString() const;
             void                SetDatePatternsConfigString( const OUString& rStr );
 
     // determine whether the decimal separator defined in the keyboard layout is used
     // or the one approriate to the locale
-            sal_Bool            IsDecimalSeparatorAsLocale() const;
-            void                SetDecimalSeparatorAsLocale( sal_Bool bSet);
+            bool                IsDecimalSeparatorAsLocale() const;
+            void                SetDecimalSeparatorAsLocale( bool bSet);
 
     // determine whether to ignore changes to the system keyboard/locale/language when
     // determining the language for newly entered text
-            sal_Bool            IsIgnoreLanguageChange() const;
-            void                SetIgnoreLanguageChange( sal_Bool bSet);
+            bool                IsIgnoreLanguageChange() const;
+            void                SetIgnoreLanguageChange( bool bSet);
 
     // convenience methods
 
     /// Get currency abbreviation and locale from an USD-en-US or EUR-de-DE string
     static  void                GetCurrencyAbbrevAndLanguage(
-                                    String& rAbbrev,
+                                    OUString& rAbbrev,
                                     LanguageType& eLang,
                                     const OUString& rConfigString );
 
     /// Create an USD-en-US or EUR-de-DE string
-    static  OUString     CreateCurrencyConfigString(
-                                    const String& rAbbrev,
+    static  OUString            CreateCurrencyConfigString(
+                                    const OUString& rAbbrev,
                                     LanguageType eLang );
 
             void                GetCurrencyAbbrevAndLanguage(
-                                        String& rAbbrev,
+                                        OUString& rAbbrev,
                                         LanguageType& eLang ) const
                                     {
                                         GetCurrencyAbbrevAndLanguage( rAbbrev,
@@ -151,7 +150,7 @@ public:
                                     }
 
             void                SetCurrencyAbbrevAndLanguage(
-                                        const String& rAbbrev,
+                                        const OUString& rAbbrev,
                                         LanguageType eLang )
                                     {
                                         SetCurrencyConfigString(
@@ -169,7 +168,7 @@ public:
     static  const Link&         GetCurrencyChangeLink();
 
     /** return the readonly state of the queried option. */
-            sal_Bool            IsReadOnly( EOption eOption ) const;
+            bool                IsReadOnly( EOption eOption ) const;
 };
 
 #endif  // INCLUDED_SVTOOLS_SYSLOCALEOPTIONS_HXX
diff --git a/include/unotools/tempfile.hxx b/include/unotools/tempfile.hxx
index 6cf2cb0..da3a472 100644
--- a/include/unotools/tempfile.hxx
+++ b/include/unotools/tempfile.hxx
@@ -48,7 +48,7 @@ struct TempFile_Impl;
 class UNOTOOLS_DLLPUBLIC TempFile
 {
     TempFile_Impl*  pImp;
-    sal_Bool        bKillingFileEnabled;
+    bool            bKillingFileEnabled;
 
 protected:
 
@@ -59,15 +59,15 @@ public:
                     The temporary object is created in the local file system, even if there is no UCB that can access it.
                     If the given folder is part of the local file system, the TempFile is created in this folder.
                     */
-                    TempFile( const String* pParent=NULL, sal_Bool bDirectory=sal_False );
+                    TempFile( const OUString* pParent=NULL, bool bDirectory=false );
 
                     /**
                     Same as above; additionally the name starts with some given characters followed by a counter ( example:
                     rLeadingChars="abc" means "abc0","abc1" and so on, depending on existing files in the folder ).
                     The extension string may be f.e. ".txt" or "", if no extension string is given, ".tmp" is used
                     */
-                    TempFile( const String& rLeadingChars, const String* pExtension=NULL, const String* pParent=NULL,
-                                sal_Bool bDirectory=sal_False);
+                    TempFile( const OUString& rLeadingChars, const OUString* pExtension=NULL, const OUString* pParent=NULL,
+                                bool bDirectory=false);
 
                     /**
                     Same as above; additionally the name starts with some given characters followed by a counter ( example:
@@ -75,7 +75,7 @@ public:
                     The extension string may be f.e. ".txt" or "", if no extension string is given, ".tmp" is used
                         @param  _bStartWithZero If set to false names will be generated like "abc","abc0","abc1"
                     */
-                    TempFile( const String& rLeadingChars,sal_Bool _bStartWithZero, const String* pExtension=NULL, const String* pParent=NULL,sal_Bool bDirectory=sal_False);
+                    TempFile( const OUString& rLeadingChars, bool _bStartWithZero, const OUString* pExtension=NULL, const OUString* pParent=NULL, bool bDirectory=false);
 
                     /**
                     TempFile will be removed from disk in dtor if EnableKillingTempFile was called before.
@@ -86,7 +86,7 @@ public:
                     /**
                     Returns sal_True if it has a valid file name.
                     */
-    sal_Bool        IsValid() const;
+    bool            IsValid() const;
 
                     /**
                     Returns the "UCB compatible" URL of the tempfile object.
@@ -96,7 +96,7 @@ public:
                     If no UCP is available for the local file system, an empty URL is returned. In this case you can't access
                     the file as a UCB content !
                     */
-    String          GetURL() const;
+    OUString        GetURL() const;
 
                     /**
                     Returns the "physical" name of the tempfile in host notation ( should only be used for 3rd party code
@@ -104,7 +104,7 @@ public:
                     If you want to have the URL, use the GetURL() method of this object, but never use any external
                     conversion functions for "physical" names into URLs.
                     */
-    String          GetFileName() const;
+    OUString        GetFileName() const;
 
                     /**
                     Returns a stream to the tempfiles data; the stream is owned by the tempfile object, so you have to keep this
@@ -121,10 +121,10 @@ public:
                     /**
                     If enabled the file will be removed from disk when the dtor is called ( default is not enabled )
                     */
-    void            EnableKillingFile( sal_Bool bEnable=sal_True )
+    void            EnableKillingFile( bool bEnable=true )
                     { bKillingFileEnabled = bEnable; }
 
-    sal_Bool        IsKillingFileEnabled() const
+    bool            IsKillingFileEnabled() const
                     { return bKillingFileEnabled; }
 
                     /**
@@ -133,7 +133,7 @@ public:
                     If you want to convert file name into a URL, always use class LocalFileHelper, but never use any
                     conversion functions of osl.
                     */
-    static String   CreateTempName( const String* pParent=NULL );
+    static OUString CreateTempName( const OUString* pParent=NULL );
 
                     /**
                     The TempNameBaseDirectory is a subfolder in the folder that is passed as a "physical" file name in the
@@ -144,7 +144,7 @@ public:
                     The return value of both methods is the complete "physical" name of the tempname base folder.
                     It is not a URL because alle URLs must be "UCB compatible", so there may be no suitable URL at all.
                     */
-    static String   SetTempNameBaseDirectory( const String &rBaseName );
+    static OUString SetTempNameBaseDirectory( const OUString &rBaseName );
 };
 
 }
diff --git a/include/unotools/textsearch.hxx b/include/unotools/textsearch.hxx
index 0b82610..0880c13 100644
--- a/include/unotools/textsearch.hxx
+++ b/include/unotools/textsearch.hxx
@@ -22,7 +22,6 @@
 #define _UNOTOOLS_TEXTSEARCH_HXX
 #include <i18nlangtag/lang.h>
 #include <rtl/ustring.hxx>
-#include <tools/string.hxx>
 #include <com/sun/star/uno/Reference.h>
 #include <com/sun/star/lang/Locale.hpp>
 #include <com/sun/star/util/XTextSearch.hpp>
@@ -52,8 +51,8 @@ public:
     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
 
@@ -73,16 +72,16 @@ private:
 public:
     SearchParam( const OUString &rText,
                     SearchType eSrchType = SearchParam::SRCH_NORMAL,
-                    sal_Bool bCaseSensitive = sal_True,
-                    sal_Bool bWordOnly = sal_False,
-                    sal_Bool bSearchInSelection = sal_False );
+                    bool bCaseSensitive = true,
+                    bool bWordOnly = false,
+                    bool bSearchInSelection = false );
 
     SearchParam( const SearchParam& );
 
     ~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 +89,8 @@ public:
     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; }
@@ -145,35 +144,32 @@ public:
         pStart  - start position for the search
         pEnde   - end position for the search
 
-        RETURN values   ==  sal_True: something is found
+        RETURN values   ==  true: something is found
                         - pStart start pos of the found text,
                         - pStart end pos of the found text,
                         - pSrchResult - the search result with all found
                              positions. Is only filled with more positions
                              if the regular expression handles groups.
 
-                        == sal_False: nothing found, pStart,pEnde unchanged.
+                        == false: nothing found, pStart,pEnde unchanged.
 
         Definitions: start pos always inclusive, end pos always exclusive!
                      The position must always in the right direction!
                     search forward: start <= end
                     search backward: end <= start
     */
-    int SearchFrwrd( const String &rStr,
-                    xub_StrLen* pStart, xub_StrLen* pEnde,
-                    ::com::sun::star::util::SearchResult* pSrchResult = 0 );
-    sal_Bool SearchForward( const OUString &rStr,
-                    sal_Int32* pStart, sal_Int32* pEnd,
-                    ::com::sun::star::util::SearchResult* pRes = 0 );
-    int SearchBkwrd( const String &rStr,
-                    xub_StrLen* pStart, xub_StrLen* pEnde,
-                    ::com::sun::star::util::SearchResult* pSrchResult = 0 );
+    bool SearchForward( const OUString &rStr,
+                        sal_Int32* pStart, sal_Int32* pEnd,
+                        ::com::sun::star::util::SearchResult* pRes = 0 );
+    bool SearchBackward( const OUString &rStr,
+                        sal_Int32* pStart, sal_Int32* pEnd,
+                        ::com::sun::star::util::SearchResult* pRes = 0 );
 
     void SetLocale( const ::com::sun::star::util::SearchOptions& rOpt,
                     const ::com::sun::star::lang::Locale& rLocale );
 
     /* replace back references in the replace string by the sub expressions from the search result */
-    void ReplaceBackReferences( String& rReplaceStr, const String &rStr, const ::com::sun::star::util::SearchResult& rResult );
+    void ReplaceBackReferences( OUString& rReplaceStr, const OUString &rStr, const ::com::sun::star::util::SearchResult& rResult );
 
 };
 
diff --git a/include/unotools/transliterationwrapper.hxx b/include/unotools/transliterationwrapper.hxx
index 6d64d40..fbc845b 100644
--- a/include/unotools/transliterationwrapper.hxx
+++ b/include/unotools/transliterationwrapper.hxx
@@ -20,7 +20,7 @@
 
 #ifndef _UNOTOOLS_TRANSLITERATIONWRAPPER_HXX
 #define _UNOTOOLS_TRANSLITERATIONWRAPPER_HXX
-#include <tools/string.hxx>
+#include <rtl/ustring.hxx>
 #include <tools/solar.h>
 #include <i18nlangtag/languagetag.hxx>
 #include <com/sun/star/i18n/XExtendedTransliteration.hpp>
@@ -40,7 +40,7 @@ class UNOTOOLS_DLLPUBLIC TransliterationWrapper
         ::com::sun::star::i18n::XExtendedTransliteration > xTrans;
     LanguageTag aLanguageTag;
     sal_uInt32 nType;
-    mutable sal_Bool bFirstCall;
+    mutable bool bFirstCall;
 
                                 // not implemented, prevent usage
     TransliterationWrapper( const TransliterationWrapper& );
@@ -62,7 +62,7 @@ public:
 
     sal_uInt32 getType() const { return nType; }
 
-    sal_Bool needLanguageForTheMode() const;
+    bool needLanguageForTheMode() const;
 
     /** set a new language and load the corresponding transliteration module if
         needed for the mode set with nType in the ctor */
@@ -80,19 +80,19 @@ public:
         those may load a different module and overwrite this setting. Only the
         transliterate() method that takes no LanguageType parameter may be used
         for a specific module loaded with this method.  */
-    void loadModuleByImplName( const String& rModuleName, sal_uInt16 nLang );
+    void loadModuleByImplName( const OUString& rModuleName, sal_uInt16 nLang );
 
     /** This transliteration method corresponds with the loadModuleByImplName()
         method. It relies on a module being loaded and does not try load one.
         If for any reason the string can't be transliterated the original
         string is returned.  */
-    String transliterate( const String& rStr,
-                        xub_StrLen nStart, xub_StrLen nLen,
+    OUString transliterate( const OUString& rStr,
+                        sal_Int32 nStart, sal_Int32 nLen,
                         ::com::sun::star::uno::Sequence <sal_Int32>* pOffset ) const;
 
     // Wrapper implementations of class Transliteration
-    String transliterate( const String& rStr, sal_uInt16 nLanguage,
-                        xub_StrLen nStart, xub_StrLen nLen,
+    OUString transliterate( const OUString& rStr, sal_uInt16 nLanguage,
+                        sal_Int32 nStart, sal_Int32 nLen,
                         ::com::sun::star::uno::Sequence <sal_Int32>* pOffset );
 
     /** If two strings are equal per this transliteration.
@@ -103,11 +103,11 @@ public:
         equals( "aab", 0, 3, nMatch1, "aaa", 0, 3, nMatch2 )
         returns false and nMatch:=2 and nMatch2:=2
      */
-    sal_Bool equals(
-        const String& rStr1, sal_Int32 nPos1, sal_Int32 nCount1, sal_Int32& nMatch1,
-        const String& rStr2, sal_Int32 nPos2, sal_Int32 nCount2, sal_Int32& nMatch2 ) const;
+    bool equals(
+        const OUString& rStr1, sal_Int32 nPos1, sal_Int32 nCount1, sal_Int32& nMatch1,
+        const OUString& rStr2, sal_Int32 nPos2, sal_Int32 nCount2, sal_Int32& nMatch2 ) const;
 
-    sal_Int32 compareString( const String& rStr1, const String& rStr2 ) const;
+    sal_Int32 compareString( const OUString& rStr1, const OUString& rStr2 ) const;
 
 
     // helpers
@@ -116,11 +116,11 @@ public:
         one string is matching the start of the other. Use this method instead
         of compareString()==0 because it is much faster.
      */
-    sal_Bool isEqual( const String& rStr1, const String& rStr2 ) const;
+    bool isEqual( const OUString& rStr1, const OUString& rStr2 ) const;
 
     /** If string rStr1 matches the start of string rStr2, i.e. "a" in "aaa"
      */
-    sal_Bool isMatch( const String& rStr1, const String& rStr2 ) const;
+    bool isMatch( const OUString& rStr1, const OUString& rStr2 ) const;
 
 };
 
diff --git a/include/unotools/ucblockbytes.hxx b/include/unotools/ucblockbytes.hxx
index acd7992..6df93af 100644
--- a/include/unotools/ucblockbytes.hxx
+++ b/include/unotools/ucblockbytes.hxx
@@ -28,11 +28,11 @@
 #include <osl/thread.hxx>
 #include <osl/conditn.hxx>
 #include <osl/mutex.hxx>
+#include <rtl/ustring.hxx>
 #include <tools/stream.hxx>
 #include <tools/link.hxx>
 #include <tools/errcode.hxx>
 #include <tools/datetime.hxx>
-#include <tools/string.hxx>
 
 namespace com
 {
@@ -69,7 +69,7 @@ SV_DECL_REF( UcbLockBytes )
 
 class UcbLockBytesHandler : public SvRefBase
 {
-    sal_Bool        m_bActive;
+    bool            m_bActive;
 public:
     enum LoadHandlerItem
     {
@@ -83,8 +83,8 @@ public:
                     {}
 
     virtual void    Handle( LoadHandlerItem nWhich, UcbLockBytesRef xLockBytes ) = 0;
-    void            Activate( sal_Bool bActivate = sal_True ) { m_bActive = bActivate; }
-    sal_Bool        IsActive() const { return m_bActive; }
+    void            Activate( bool bActivate = true ) { m_bActive = bActivate; }
+    bool            IsActive() const { return m_bActive; }
 };
 
 SV_DECL_IMPL_REF( UcbLockBytesHandler )
@@ -95,8 +95,8 @@ class UNOTOOLS_DLLPUBLIC UcbLockBytes : public virtual SvLockBytes
     osl::Condition          m_aTerminated;
     osl::Mutex              m_aMutex;
 
-    String                  m_aContentType;
-    String                  m_aRealURL;
+    OUString                m_aContentType;
+    OUString                m_aRealURL;
     DateTime                m_aExpireDate;
 
     ::com::sun::star::uno::Reference < ::com::sun::star::io::XInputStream >  m_xInputStream;
@@ -109,9 +109,9 @@ class UNOTOOLS_DLLPUBLIC UcbLockBytes : public virtual SvLockBytes
     sal_uInt32              m_nSize;
     ErrCode                 m_nError;
 
-    sal_Bool                m_bTerminated : 1;
-    sal_Bool                m_bDontClose : 1;
-    sal_Bool                m_bStreamValid : 1;
+    bool                    m_bTerminated;
+    bool                    m_bDontClose;
+    bool                    m_bStreamValid;
 
     DECL_LINK(              DataAvailHdl, void * );
 
@@ -145,16 +145,16 @@ public:
                             { return m_nError; }
 
     // the following properties are available when and after the first DataAvailable callback has been executed
-    String                  GetContentType() const;
-    String                  GetRealURL() const;
+    OUString                GetContentType() const;
+    OUString                GetRealURL() const;
     DateTime                GetExpireDate() const;
 
     // calling this method delegates the responsibility to call closeinput to the caller!
     ::com::sun::star::uno::Reference < ::com::sun::star::io::XInputStream > getInputStream();
 
-    sal_Bool                setInputStream_Impl( const ::com::sun::star::uno::Reference < ::com::sun::star::io::XInputStream > &rxInputStream,
-                                                 sal_Bool bSetXSeekable = sal_True );
-    sal_Bool                setStream_Impl( const ::com::sun::star::uno::Reference < ::com::sun::star::io::XStream > &rxStream );
+    bool                    setInputStream_Impl( const ::com::sun::star::uno::Reference < ::com::sun::star::io::XInputStream > &rxInputStream,
+                                                 bool bSetXSeekable = true );
+    bool                    setStream_Impl( const ::com::sun::star::uno::Reference < ::com::sun::star::io::XStream > &rxStream );
     void                    terminate_Impl (void);
 
     ::com::sun::star::uno::Reference < ::com::sun::star::io::XInputStream > getInputStream_Impl() const
@@ -175,7 +175,7 @@ public:
                                 return m_xSeekable;
                             }
 
-    sal_Bool                hasInputStream_Impl() const
+    bool                    hasInputStream_Impl() const
                             {
                                 osl::MutexGuard aGuard( (const_cast< UcbLockBytes* >(this))->m_aMutex );
                                 return m_xInputStream.is();
@@ -184,8 +184,8 @@ public:
     void                    setDontClose_Impl()
                             { m_bDontClose = sal_True; }
 
-    void                    SetContentType_Impl( const String& rType ) { m_aContentType = rType; }
-    void                    SetRealURL_Impl( const String& rURL )  { m_aRealURL = rURL; }
+    void                    SetContentType_Impl( const OUString& rType ) { m_aContentType = rType; }
+    void                    SetRealURL_Impl( const OUString& rURL )  { m_aRealURL = rURL; }
     void                    SetExpireDate_Impl( const DateTime& rDateTime )  { m_aExpireDate = rDateTime; }
     void                    SetStreamValid_Impl();
 };
diff --git a/include/unotools/ucbstreamhelper.hxx b/include/unotools/ucbstreamhelper.hxx
index 85de1f3..44552d6 100644
--- a/include/unotools/ucbstreamhelper.hxx
+++ b/include/unotools/ucbstreamhelper.hxx
@@ -53,13 +53,13 @@ namespace utl
     class UNOTOOLS_DLLPUBLIC UcbStreamHelper : public SvStream
     {
     public:
-        static SvStream*    CreateStream( const String& rFileName, StreamMode eOpenMode,
-                                UcbLockBytesHandler* pHandler=0 );
-        static SvStream*    CreateStream( const String& rFileName, StreamMode eOpenMode,
-                                ::com::sun::star::uno::Reference < ::com::sun::star::task::XInteractionHandler >,
-                                UcbLockBytesHandler* pHandler=0 );
-        static SvStream*    CreateStream( const String& rFileName, StreamMode eOpenMode,
-                                sal_Bool bFileExists,
+        static SvStream*    CreateStream( const OUString& rFileName, StreamMode eOpenMode,
+                                          UcbLockBytesHandler* pHandler=0 );
+        static SvStream*    CreateStream( const OUString& rFileName, StreamMode eOpenMode,
+                                          ::com::sun::star::uno::Reference < ::com::sun::star::task::XInteractionHandler >,
+                                          UcbLockBytesHandler* pHandler=0 );
+        static SvStream*    CreateStream( const OUString& rFileName, StreamMode eOpenMode,
+                                          bool bFileExists,
                                 UcbLockBytesHandler* pHandler=0 );
         static SvStream*    CreateStream( ::com::sun::star::uno::Reference < ::com::sun::star::io::XInputStream > xStream );
         static SvStream*    CreateStream( ::com::sun::star::uno::Reference < ::com::sun::star::io::XStream > xStream );
diff --git a/reportdesign/source/core/api/ReportEngineJFree.cxx b/reportdesign/source/core/api/ReportEngineJFree.cxx
index e99d144..c1cf2d4 100644
--- a/reportdesign/source/core/api/ReportEngineJFree.cxx
+++ b/reportdesign/source/core/api/ReportEngineJFree.cxx
@@ -172,11 +172,9 @@ OUString OReportEngineJFree::getNewOutputName()
             MimeConfigurationHelper aConfighelper(m_xContext);
             const OUString sMimeType = m_xReport->getMimeType();
             const SfxFilter* pFilter = SfxFilter::GetDefaultFilter( aConfighelper.GetDocServiceNameFromMediaType(sMimeType) );
-            String sExt;
+            OUString sExt(".rpt");
             if ( pFilter )
                 sExt = ::comphelper::string::stripStart(pFilter->GetDefaultExtension(), '*');
-            else
-                sExt = OUString(".rpt");
 
             uno::Reference< embed::XStorage > xTemp = OStorageHelper::GetTemporaryStorage(/*sFileTemp,embed::ElementModes::WRITE | embed::ElementModes::TRUNCATE,*/ m_xContext);
             utl::DisposableComponent aTemp(xTemp);
@@ -199,11 +197,11 @@ OUString OReportEngineJFree::getNewOutputName()
             if ( !sName.Len() )
                 sName = m_xReport->getName();
             {
-                ::utl::TempFile aTestFile(sName,sal_False,&sExt);
+                ::utl::TempFile aTestFile(sName, false, &sExt);
                 if ( !aTestFile.IsValid() )
                 {
                     sName = RPT_RESSTRING(RID_STR_REPORT,m_xContext->getServiceManager());
-                    ::utl::TempFile aFile(sName,sal_False,&sExt);
+                    ::utl::TempFile aFile(sName, false, &sExt);
                     sFileURL = aFile.GetURL();
                 }
                 else
diff --git a/reportdesign/source/ui/inspection/GeometryHandler.cxx b/reportdesign/source/ui/inspection/GeometryHandler.cxx
index db31b30..1b4e5a0 100644
--- a/reportdesign/source/ui/inspection/GeometryHandler.cxx
+++ b/reportdesign/source/ui/inspection/GeometryHandler.cxx
@@ -1871,13 +1871,13 @@ sal_Bool GeometryHandler::impl_isDefaultFunction_nothrow( const uno::Reference<
         {
             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 = sFormula.Len();
+            if ( aTextSearch.SearchForward(sFormula,&start,&end) && start == 0 && end == 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);
                 _rsDefaultFunctionName = aIter->m_sName;
@@ -2088,9 +2088,9 @@ bool GeometryHandler::impl_isCounterFunction_throw(const OUString& _sQuotedFunct
             aSearchOptions.searchFlag = 0x00000100;
             aSearchOptions.searchString = m_aCounterFunction.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()) // counter function found
+            sal_Int32 start = 0;
+            sal_Int32 end = sFormula.Len();
+            if ( aTextSearch.SearchForward(sFormula,&start,&end) && start == 0 && end == sFormula.Len()) // counter function found
             {
                 const uno::Reference< report::XGroup > xGroup(aFind.first->second.second,uno::UNO_QUERY);
                 if ( xGroup.is() )
diff --git a/sc/inc/patattr.hxx b/sc/inc/patattr.hxx
index 90a0e6d..6b5fbf6 100644
--- a/sc/inc/patattr.hxx
+++ b/sc/inc/patattr.hxx
@@ -24,6 +24,7 @@
 #include <svl/itemset.hxx>
 #include <unotools/fontcvt.hxx>
 #include <editeng/svxenum.hxx>
+#include <tools/string.hxx>
 #include "scdllapi.h"
 
 class Font;
diff --git a/sc/source/core/data/dpcache.cxx b/sc/source/core/data/dpcache.cxx
index 17ab695..bff62bd 100644
--- a/sc/source/core/data/dpcache.cxx
+++ b/sc/source/core/data/dpcache.cxx
@@ -534,10 +534,11 @@ bool ScDPCache::ValidQuery( SCROW nRow, const ScQueryParam &rParam) const
             bool bTestRegExp = false;
             if (bRealRegExp || bTestRegExp)
             {
-                xub_StrLen nStart = 0;
-                xub_StrLen nEnd   = aCellStr.Len();
+                sal_Int32 nStart = 0;
+                sal_Int32 nEnd   = 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()))
diff --git a/sc/source/core/data/table3.cxx b/sc/source/core/data/table3.cxx
index 03a0ca0..eff2cd6 100644
--- a/sc/source/core/data/table3.cxx
+++ b/sc/source/core/data/table3.cxx
@@ -1398,8 +1398,8 @@ public:
 
         if ( bRealRegExp || bTestRegExp )
         {
-            xub_StrLen nStart = 0;
-            xub_StrLen nEnd   = aCellStr.getLength();
+            sal_Int32 nStart = 0;
+            sal_Int32 nEnd   = aCellStr.getLength();
 
             // from 614 on, nEnd is behind the found text
             bool bMatch = false;
@@ -1407,13 +1407,13 @@ public:
             {
                 nEnd = 0;
                 nStart = aCellStr.getLength();
-                bMatch = (bool) rEntry.GetSearchTextPtr( mrParam.bCaseSens )
-                    ->SearchBkwrd( aCellStr, &nStart, &nEnd );
+                bMatch = rEntry.GetSearchTextPtr( mrParam.bCaseSens )
+                    ->SearchBackward( aCellStr, &nStart, &nEnd );
             }
             else
             {
-                bMatch = (bool) rEntry.GetSearchTextPtr( mrParam.bCaseSens )
-                    ->SearchFrwrd( aCellStr, &nStart, &nEnd );
+                bMatch = rEntry.GetSearchTextPtr( mrParam.bCaseSens )
+                    ->SearchForward( aCellStr, &nStart, &nEnd );
             }
             if ( bMatch && bMatchWholeCell
                     && (nStart != 0 || nEnd != aCellStr.getLength()) )
diff --git a/sc/source/core/data/table6.cxx b/sc/source/core/data/table6.cxx
index 7ee1b37..9f6ae62 100644
--- a/sc/source/core/data/table6.cxx
+++ b/sc/source/core/data/table6.cxx
@@ -100,21 +100,21 @@ bool ScTable::SearchCell(const SvxSearchItem& rSearchItem, SCCOL nCol, SCROW nRo
         default:
             break;
     }
-    xub_StrLen nStart = 0;
-    xub_StrLen nEnd = aString.getLength();
+    sal_Int32 nStart = 0;
+    sal_Int32 nEnd = aString.getLength();
     ::com::sun::star::util::SearchResult aSearchResult;
     if (pSearchText)
     {
         if ( bDoBack )
         {
-            xub_StrLen nTemp=nStart; nStart=nEnd; nEnd=nTemp;
-            bFound = (bool)(pSearchText->SearchBkwrd(aString, &nStart, &nEnd, &aSearchResult));
+           sal_Int32 nTemp=nStart; nStart=nEnd; nEnd=nTemp;
+            bFound = pSearchText->SearchBackward(aString, &nStart, &nEnd, &aSearchResult);
             // change results to definition before 614:
             --nEnd;
         }
         else
         {
-            bFound = (bool)(pSearchText->SearchFrwrd(aString, &nStart, &nEnd, &aSearchResult));
+            bFound = pSearchText->SearchForward(aString, &nStart, &nEnd, &aSearchResult);
             // change results to definition before 614:
             --nEnd;
         }
@@ -152,10 +152,10 @@ bool ScTable::SearchCell(const SvxSearchItem& rSearchItem, SCCOL nCol, SCROW nRo
         {
             //  wenn der gefundene Text leer ist, nicht weitersuchen,
             //  sonst wuerde man nie mehr aufhoeren (#35410#)
-            if ( nEnd < nStart || nEnd == STRING_MAXLEN )
+            if ( nEnd < nStart )
                 bRepeat = false;
 
-            String sReplStr = rSearchItem.GetReplaceString();
+            OUString sReplStr = rSearchItem.GetReplaceString();
             if (rSearchItem.GetRegExp())
             {
                 pSearchText->ReplaceBackReferences( sReplStr, aString, aSearchResult );
@@ -180,7 +180,7 @@ bool ScTable::SearchCell(const SvxSearchItem& rSearchItem, SCCOL nCol, SCROW nRo
             }
             else
             {
-                nStart = sal::static_int_cast<xub_StrLen>( nStart + sReplStr.Len() );
+                nStart = nStart + sReplStr.getLength();
                 nEnd = aString.getLength();
             }
 
@@ -191,14 +191,14 @@ bool ScTable::SearchCell(const SvxSearchItem& rSearchItem, SCCOL nCol, SCROW nRo
                     bRepeat = false;
                 else if (bDoBack)
                 {
-                    xub_StrLen nTemp=nStart; nStart=nEnd; nEnd=nTemp;
-                    bRepeat = ((bool)(pSearchText->SearchBkwrd(aString, &nStart, &nEnd, &aSearchResult)));
+                    sal_Int32 nTemp=nStart; nStart=nEnd; nEnd=nTemp;
+                    bRepeat = pSearchText->SearchBackward(aString, &nStart, &nEnd, &aSearchResult);
                     // change results to definition before 614:
                     --nEnd;
                 }
                 else
                 {
-                    bRepeat = ((bool)(pSearchText->SearchFrwrd(aString, &nStart, &nEnd, &aSearchResult)));
+                    bRepeat = pSearchText->SearchForward(aString, &nStart, &nEnd, &aSearchResult);
                     // change results to definition before 614:
                     --nEnd;
                 }
diff --git a/sc/source/core/tool/interpr1.cxx b/sc/source/core/tool/interpr1.cxx
index 9cb89ae..a88b542 100644
--- a/sc/source/core/tool/interpr1.cxx
+++ b/sc/source/core/tool/interpr1.cxx
@@ -930,10 +930,10 @@ double ScInterpreter::CompareFunc( const ScCompare& rComp, ScCompareOptions* pOp
             OSL_ENSURE(rEntry.GetQueryItem().maString.equals(*rComp.pVal[1]), "ScInterpreter::CompareFunc: broken options");
             if (pOptions->bRegEx)
             {
-                xub_StrLen nStart = 0;
-                xub_StrLen nStop  = rComp.pVal[0]->Len();
+                sal_Int32 nStart = 0;
+                sal_Int32 nStop  = rComp.pVal[0]->Len();
                 bool bMatch = rEntry.GetSearchTextPtr(
-                        !pOptions->bIgnoreCase)->SearchFrwrd( *rComp.pVal[0],
+                        !pOptions->bIgnoreCase)->SearchForward( *rComp.pVal[0],
                             &nStart, &nStop);
                 if (bMatch && pOptions->bMatchWholeCell && (nStart != 0 || nStop != rComp.pVal[0]->Len()))
                     bMatch = false;     // RegEx must match entire string.
@@ -8782,10 +8782,10 @@ void ScInterpreter::ScSearch()
         }
         else
             fAnz = 1.0;
-        String sStr = GetString();
+        OUString sStr = GetString();
         OUString SearchStr = GetString();
-        xub_StrLen nPos = (xub_StrLen) fAnz - 1;
-        xub_StrLen nEndPos = sStr.Len();
+        sal_Int32 nPos = fAnz - 1;
+        sal_Int32 nEndPos = sStr.getLength();
         if( nPos >= nEndPos )
             PushNoValue();
         else
@@ -8795,7 +8795,7 @@ void ScInterpreter::ScSearch()
                 utl::SearchParam::SRCH_REGEXP : utl::SearchParam::SRCH_NORMAL);
             utl::SearchParam sPar(SearchStr, eSearchType, false, false, false);
             utl::TextSearch sT( sPar, *ScGlobal::pCharClass );
-            int nBool = sT.SearchFrwrd(sStr, &nPos, &nEndPos);
+            int nBool = sT.SearchForward(sStr, &nPos, &nEndPos);
             if (!nBool)
                 PushNoValue();
             else
diff --git a/sfx2/source/doc/docfile.cxx b/sfx2/source/doc/docfile.cxx
index 25af1e4..121b132 100644
--- a/sfx2/source/doc/docfile.cxx
+++ b/sfx2/source/doc/docfile.cxx
@@ -2085,9 +2085,9 @@ void SfxMedium::Transfer_Impl()
 
 //------------------------------------------------------------------
 void SfxMedium::DoInternalBackup_Impl( const ::ucbhelper::Content& aOriginalContent,
-                                       const String& aPrefix,
-                                       const String& aExtension,
-                                       const String& aDestDir )
+                                       const OUString& aPrefix,
+                                       const OUString& aExtension,
+                                       const OUString& aDestDir )
 {
     SAL_INFO( "sfx2.doc", "sfx2 (mv76033) SfxMedium::DoInternalBackup_Impl( with destdir )" );
 
@@ -2155,9 +2155,9 @@ void SfxMedium::DoInternalBackup_Impl( const ::ucbhelper::Content& aOriginalCont
                                                         INetURLObject::NO_DECODE );
 
     sal_Int32 nPrefixLen = aFileName.lastIndexOf( '.' );
-    String aPrefix = ( nPrefixLen == -1 ) ? aFileName : aFileName.copy( 0, nPrefixLen );
-    String aExtension = ( nPrefixLen == -1 ) ? String() : String(aFileName.copy( nPrefixLen ));
-    String aBakDir = SvtPathOptions().GetBackupPath();
+    OUString aPrefix = ( nPrefixLen == -1 ) ? aFileName : aFileName.copy( 0, nPrefixLen );
+    OUString aExtension = ( nPrefixLen == -1 ) ? OUString() : aFileName.copy( nPrefixLen );
+    OUString aBakDir = SvtPathOptions().GetBackupPath();
 
     // create content for the parent folder ( = backup folder )
     ::ucbhelper::Content  aContent;
@@ -3565,9 +3565,9 @@ OUString SfxMedium::CreateTempCopyWithExt( const OUString& aURL )
     if ( !aURL.isEmpty() )
     {
         sal_Int32 nPrefixLen = aURL.lastIndexOf( '.' );
-        String aExt = ( nPrefixLen == -1 ) ? String() : String( aURL.copy( nPrefixLen ) );
+        OUString aExt = ( nPrefixLen == -1 ) ? OUString() :  aURL.copy( nPrefixLen );
 
-        OUString aNewTempFileURL = ::utl::TempFile( String(), &aExt ).GetURL();
+        OUString aNewTempFileURL = ::utl::TempFile( OUString(), &aExt ).GetURL();
         if ( !aNewTempFileURL.isEmpty() )
         {
             INetURLObject aSource( aURL );
diff --git a/sot/source/sdstor/ucbstorage.cxx b/sot/source/sdstor/ucbstorage.cxx
index f64fcc6..f363044 100644
--- a/sot/source/sdstor/ucbstorage.cxx
+++ b/sot/source/sdstor/ucbstorage.cxx
@@ -2274,7 +2274,7 @@ sal_Int16 UCBStorage_Impl::Commit()
                         if ( bRet )
                         {
                             // create a stream to write the manifest file - use a temp file
-                            String aURL( aNewSubFolder.getURL() );
+                            OUString aURL( aNewSubFolder.getURL() );
                             ::utl::TempFile* pTempFile = new ::utl::TempFile( &aURL );
 
                             // get the stream from the temp file and create an output stream wrapper
@@ -3182,7 +3182,7 @@ String UCBStorage::CreateLinkFile( const String& rName )
     INetURLObject aFolderObj( rName );
     String aName = aFolderObj.GetName();
     aFolderObj.removeSegment();
-    String aFolderURL( aFolderObj.GetMainURL( INetURLObject::NO_DECODE ) );
+    OUString aFolderURL( aFolderObj.GetMainURL( INetURLObject::NO_DECODE ) );
     ::utl::TempFile* pTempFile = new ::utl::TempFile( &aFolderURL );
 
     // get the stream from the temp file
diff --git a/svl/source/numbers/zforlist.cxx b/svl/source/numbers/zforlist.cxx
index abfe9c9..2dba599 100644
--- a/svl/source/numbers/zforlist.cxx
+++ b/svl/source/numbers/zforlist.cxx
@@ -3274,7 +3274,7 @@ const NfCurrencyEntry* SvNumberFormatter::GetLegacyOnlyCurrencyEntry( const OUSt
 IMPL_STATIC_LINK_NOINSTANCE( SvNumberFormatter, CurrencyChangeLink, SAL_UNUSED_PARAMETER void*, EMPTYARG )
 {
     ::osl::MutexGuard aGuard( GetMutex() );
-    String aAbbrev;
+    OUString aAbbrev;
     LanguageType eLang = LANGUAGE_SYSTEM;
     SvtSysLocaleOptions().GetCurrencyAbbrevAndLanguage( aAbbrev, eLang );
     SetDefaultSystemCurrency( aAbbrev, eLang );
@@ -3707,7 +3707,7 @@ void SvNumberFormatter::ImpInitCurrencyTable()
         ::comphelper::getProcessComponentContext(),
         SvtSysLocale().GetLanguageTag() );
     // get user configured currency
-    String aConfiguredCurrencyAbbrev;
+    OUString aConfiguredCurrencyAbbrev;
     LanguageType eConfiguredCurrencyLanguage = LANGUAGE_SYSTEM;
     SvtSysLocaleOptions().GetCurrencyAbbrevAndLanguage(
         aConfiguredCurrencyAbbrev, eConfiguredCurrencyLanguage );
@@ -3758,7 +3758,7 @@ void SvNumberFormatter::ImpInitCurrencyTable()
             lcl_CheckCurrencySymbolPosition( *pEntry );
         }
         rCurrencyTable.insert( rCurrencyTable.begin() + nCurrencyPos++, pEntry );
-        if ( !nSystemCurrencyPosition && (aConfiguredCurrencyAbbrev.Len() ?
+        if ( !nSystemCurrencyPosition && (!aConfiguredCurrencyAbbrev.isEmpty() ?
                                           pEntry->GetBankSymbol() == OUString(aConfiguredCurrencyAbbrev) &&
                                           pEntry->GetLanguage() == eConfiguredCurrencyLanguage : false) )
         {
@@ -3803,7 +3803,7 @@ void SvNumberFormatter::ImpInitCurrencyTable()
                     {
                         rCurrencyTable.insert( rCurrencyTable.begin() + nCurrencyPos++, pEntry );
                         if ( !nSecondarySystemCurrencyPosition &&
-                             (aConfiguredCurrencyAbbrev.Len() ?
+                             (!aConfiguredCurrencyAbbrev.isEmpty() ?
                               pEntry->GetBankSymbol() == OUString(aConfiguredCurrencyAbbrev) :
                               pEntry->GetLanguage() == eConfiguredCurrencyLanguage) )
                         {
@@ -3823,7 +3823,7 @@ void SvNumberFormatter::ImpInitCurrencyTable()
     {
         nSystemCurrencyPosition = nSecondarySystemCurrencyPosition;
     }
-    if ((aConfiguredCurrencyAbbrev.Len() && !nSystemCurrencyPosition) &&
+    if ((!aConfiguredCurrencyAbbrev.isEmpty() && !nSystemCurrencyPosition) &&
         LocaleDataWrapper::areChecksEnabled())
     {
         LocaleDataWrapper::outputCheckMessage(
@@ -3834,7 +3834,7 @@ void SvNumberFormatter::ImpInitCurrencyTable()
     {
         nSystemCurrencyPosition = nMatchingSystemCurrencyPosition;
     }
-    if ((!aConfiguredCurrencyAbbrev.Len() && !nSystemCurrencyPosition) &&
+    if ((aConfiguredCurrencyAbbrev.isEmpty() && !nSystemCurrencyPosition) &&
         LocaleDataWrapper::areChecksEnabled())
     {
         LocaleDataWrapper::outputCheckMessage(
diff --git a/svx/source/dialog/ctredlin.cxx b/svx/source/dialog/ctredlin.cxx
index b201d8d..e084b04 100644
--- a/svx/source/dialog/ctredlin.cxx
+++ b/svx/source/dialog/ctredlin.cxx
@@ -324,10 +324,10 @@ sal_Bool SvxRedlinTable::IsValidEntry(const String* pAuthorStr,
     }
     if(bComment && nTheFlag)
     {
-        xub_StrLen nStartPos = 0;
-        xub_StrLen nEndPos = pCommentStr->Len();
+        sal_Int32 nStartPos = 0;
+        sal_Int32 nEndPos = pCommentStr->Len();
 
-        nTheFlag=pCommentSearcher->SearchFrwrd( *pCommentStr, &nStartPos, &nEndPos);
+        nTheFlag=pCommentSearcher->SearchForward( *pCommentStr, &nStartPos, &nEndPos);
     }
     return nTheFlag;
 }
@@ -362,10 +362,10 @@ sal_Bool SvxRedlinTable::IsValidComment(const String* pCommentStr)
 
     if(bComment)
     {
-        xub_StrLen nStartPos = 0;
-        xub_StrLen nEndPos = pCommentStr->Len();
+        sal_Int32 nStartPos = 0;
+        sal_Int32 nEndPos = pCommentStr->Len();
 
-        nTheFlag=pCommentSearcher->SearchFrwrd( *pCommentStr, &nStartPos, &nEndPos);
+        nTheFlag=pCommentSearcher->SearchForward( *pCommentStr, &nStartPos, &nEndPos);
     }
     return nTheFlag;
 }
diff --git a/svx/source/form/fmsrcimp.cxx b/svx/source/form/fmsrcimp.cxx
index 2e393f0..747eea4 100644
--- a/svx/source/form/fmsrcimp.cxx
+++ b/svx/source/form/fmsrcimp.cxx
@@ -603,8 +603,8 @@ FmSearchEngine::SEARCH_RESULT FmSearchEngine::SearchRegularApprox(const OUString
 
         // (don't care about case here, this is done by the TextSearch object, 'cause we passed our case parameter to it)
 
-        xub_StrLen nStart = 0, nEnd = (xub_StrLen)sCurrentCheck.getLength();
-        bFound = aLocalEngine.SearchFrwrd(sCurrentCheck, &nStart, &nEnd);
+        sal_Int32 nStart = 0, nEnd = sCurrentCheck.getLength();
+        bFound = aLocalEngine.SearchForward(sCurrentCheck, &nStart, &nEnd);
             // das heisst hier 'forward' aber das bezieht sich nur auf die Suche innerhalb von sCurrentCheck, hat also mit
             // der Richtung meines Datensatz-Durchwanderns nix zu tun (darum kuemmert sich MoveField)
 
diff --git a/sw/source/core/crsr/findtxt.cxx b/sw/source/core/crsr/findtxt.cxx
index 92f1249..6f56e12 100644
--- a/sw/source/core/crsr/findtxt.cxx
+++ b/sw/source/core/crsr/findtxt.cxx
@@ -478,11 +478,14 @@ bool SwPaM::DoSearch( const SearchOptions& rSearchOpt, utl::TextSearch& rSTxt,
             }
             pScriptIter->Next();
         }
-
+        sal_Int32 nProxyStart = nStart;
+        sal_Int32 nProxyEnd = nEnd;
         if( nSearchScript == nCurrScript &&
-                (rSTxt.*fnMove->fnSearch)( sCleanStr, &nStart, &nEnd, 0 ) &&
-                !(bZeroMatch = (nStart == nEnd)))
+                (rSTxt.*fnMove->fnSearch)( sCleanStr, &nProxyStart, &nProxyEnd, 0 ) &&
+                !(bZeroMatch = (nProxyStart == nProxyEnd)))
         {
+            nStart = (sal_uInt16)nProxyStart;
+            nEnd = (sal_uInt16)nProxyEnd;
             // set section correctly
             *GetPoint() = *pPam->GetPoint();
             SetMark();
@@ -517,6 +520,11 @@ bool SwPaM::DoSearch( const SearchOptions& rSearchOpt, utl::TextSearch& rSTxt,
             bFound = true;
             break;
         }
+        else
+        {
+            nStart = (sal_uInt16)nProxyStart;
+            nEnd = (sal_uInt16)nProxyEnd;
+        }
         nStart = nEnd;
     }
 
@@ -664,12 +672,12 @@ String *ReplaceBackReferences( const SearchOptions& rSearchOpt, SwPaM* pPam )
         {
             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 = pPam->Start()->nContent.GetIndex();
+            sal_Int32 nEnd = pPam->End()->nContent.GetIndex();
             SearchResult aResult;
-            if( aSTxt.SearchFrwrd( rStr, &nStart, &nEnd, &aResult ) )
+            if( aSTxt.SearchForward( rStr, &nStart, &nEnd, &aResult ) )
             {
-                String aReplaceStr( rSearchOpt.replaceString );
+                OUString aReplaceStr( rSearchOpt.replaceString );
                 aSTxt.ReplaceBackReferences( aReplaceStr, rStr, aResult );
                 pRet = new String( aReplaceStr );
             }
diff --git a/sw/source/core/crsr/paminit.cxx b/sw/source/core/crsr/paminit.cxx
index 17fe0e0..0e3e161 100644
--- a/sw/source/core/crsr/paminit.cxx
+++ b/sw/source/core/crsr/paminit.cxx
@@ -28,7 +28,7 @@ static SwMoveFnCollection aFwrd = {
     /* fnSections   */  &GoEndSection,
     /* fnCmpOp      */  &SwPosition::operator<,
     /* fnGetHint    */  &GetFrwrdTxtHint,
-    /* fnSearch     */  &utl::TextSearch::SearchFrwrd,
+    /* fnSearch     */  &utl::TextSearch::SearchForward,
     /* fnSection    */  &SwNodes::GoStartOfSection
 };
 
@@ -39,7 +39,7 @@ static SwMoveFnCollection aBwrd = {
     /* fnSections   */  &GoStartSection,
     /* fnCmpOp      */  &SwPosition::operator>,
     /* fnGetHint    */  &GetBkwrdTxtHint,
-    /* fnSearch     */  &utl::TextSearch::SearchBkwrd,
+    /* fnSearch     */  &utl::TextSearch::SearchBackward,
     /* fnSection    */  &SwNodes::GoEndOfSection
 };
 
diff --git a/sw/source/core/doc/docglbl.cxx b/sw/source/core/doc/docglbl.cxx
index 58dd033..28eb1f4 100644
--- a/sw/source/core/doc/docglbl.cxx
+++ b/sw/source/core/doc/docglbl.cxx
@@ -214,16 +214,23 @@ bool SwDoc::SplitDoc( sal_uInt16 eDocType, const String& rPath, bool bOutline, c
     GetIDocumentUndoRedo().DoUndo(false);
     SetRedlineMode_intern( (RedlineMode_t)(GetRedlineMode() & ~nsRedlineMode_t::REDLINE_ON));
 
-    String sExt = pFilter->GetSuffixes().getToken(0, ',');
-    if( !sExt.Len() )
-        sExt.AssignAscii( "sxw" );
-    if( '.' != sExt.GetChar( 0 ) )
-        sExt.Insert( '.', 0 );
+    OUString sExt = pFilter->GetSuffixes().getToken(0, ',');
+    if( sExt.isEmpty() )
+    {
+        sExt = ".sxw";
+    }
+    else
+    {
+        if( '.' != sExt[ 0 ] )
+        {
+            sExt = OUString(".") + sExt;
+        }
+    }
 
     INetURLObject aEntry(rPath);
     String sLeading(aEntry.GetBase());
     aEntry.removeSegment();
-    String sPath = aEntry.GetMainURL( INetURLObject::NO_DECODE );
+    OUString sPath = aEntry.GetMainURL( INetURLObject::NO_DECODE );
     utl::TempFile aTemp(sLeading,&sExt,&sPath );
     aTemp.EnableKillingFile();
 
diff --git a/sw/source/core/doc/tblafmt.cxx b/sw/source/core/doc/tblafmt.cxx
index 2031563..53ccd9a 100644
--- a/sw/source/core/doc/tblafmt.cxx
+++ b/sw/source/core/doc/tblafmt.cxx
@@ -1122,7 +1122,7 @@ SwTableAutoFmtTbl::SwTableAutoFmtTbl()
 sal_Bool SwTableAutoFmtTbl::Load()
 {
     sal_Bool bRet = sal_False;
-    String sNm(OUString(sAutoTblFmtName));
+    OUString sNm(OUString(sAutoTblFmtName));
     SvtPathOptions aOpt;
     if( aOpt.SearchFile( sNm, SvtPathOptions::PATH_USERCONFIG ))
     {
diff --git a/sw/source/core/inc/pamtyp.hxx b/sw/source/core/inc/pamtyp.hxx
index b20c4e9..5fda2c6 100644
--- a/sw/source/core/inc/pamtyp.hxx
+++ b/sw/source/core/inc/pamtyp.hxx
@@ -68,8 +68,8 @@ typedef void (*GoDoc)( SwPosition* );
 typedef void (*GoSection)( SwPosition* );
 typedef bool (SwPosition:: *CmpOp)( const SwPosition& ) const;
 typedef const SwTxtAttr* (*GetHint)( const SwpHints&, sal_uInt16&, xub_StrLen );
-typedef int (utl::TextSearch:: *SearchTxt)( const String&, xub_StrLen*,
-                    xub_StrLen*, ::com::sun::star::util::SearchResult* );
+typedef bool (utl::TextSearch:: *SearchTxt)( const OUString&, sal_Int32*,
+                    sal_Int32*, ::com::sun::star::util::SearchResult* );
 typedef void (SwNodes:: *MvSection)( SwNodeIndex * ) const;
 
 
diff --git a/sw/source/filter/html/swhtml.cxx b/sw/source/filter/html/swhtml.cxx
index 4a5387b..cf572e9 100644
--- a/sw/source/filter/html/swhtml.cxx
+++ b/sw/source/filter/html/swhtml.cxx
@@ -144,23 +144,22 @@ HTMLReader::HTMLReader()
 
 String HTMLReader::GetTemplateName() const
 {
-    String sTemplate("internal");
-    sTemplate += INET_PATH_TOKEN;
-    sTemplate.Append(String("html"));
-    String sTemplateWithoutExt( sTemplate );
+    OUString sTemplate("internal/html");
+
+    OUString sTemplateWithoutExt( sTemplate );
     // first search for OpenDocument Writer/Web template
-    sTemplate.Append(String(".oth"));
+    sTemplate += ".oth";
 
     SvtPathOptions aPathOpt;
     // OpenDocument Writer/Web template (extension .oth)
-    sal_Bool bSet = aPathOpt.SearchFile( sTemplate, SvtPathOptions::PATH_TEMPLATE );
+    bool bSet = aPathOpt.SearchFile( sTemplate, SvtPathOptions::PATH_TEMPLATE );
 
     if( !bSet )
     {
         // no OpenDocument Writer/Web template found.
         // search for OpenOffice.org Writer/Web template
         sTemplate = sTemplateWithoutExt;
-        sTemplate.Append(String(".stw"));
+        sTemplate += ".stw";
         bSet = aPathOpt.SearchFile( sTemplate, SvtPathOptions::PATH_TEMPLATE );
     }
 
diff --git a/sw/source/ui/config/uinums.cxx b/sw/source/ui/config/uinums.cxx
index dc153b8..b13461f 100644
--- a/sw/source/ui/config/uinums.cxx
+++ b/sw/source/ui/config/uinums.cxx
@@ -91,7 +91,7 @@ void  SwBaseNumRules::Init()
     for(sal_uInt16 i = 0; i < nMaxRules; ++i )
         pNumRules[i] = 0;
 
-    String sNm( sFileName );
+    OUString sNm( sFileName );
     SvtPathOptions aOpt;
     if( aOpt.SearchFile( sNm, SvtPathOptions::PATH_USERCONFIG ))
     {
diff --git a/sw/source/ui/dbui/addresslistdialog.cxx b/sw/source/ui/dbui/addresslistdialog.cxx
index 35c0b6f..4384481 100644
--- a/sw/source/ui/dbui/addresslistdialog.cxx
+++ b/sw/source/ui/dbui/addresslistdialog.cxx
@@ -399,7 +399,7 @@ IMPL_LINK(SwAddressListDialog, CreateHdl_Impl, PushButton*, pButton)
             String sExt = OUString(".odb");
             String sTmpName;
             {
-                String sHomePath(SvtPathOptions().GetWorkPath());
+                OUString sHomePath(SvtPathOptions().GetWorkPath());
                 utl::TempFile aTempFile(sFind , &sExt, &sHomePath);
                 aTempFile.EnableKillingFile(sal_True);
                 sTmpName = aTempFile.GetURL();
diff --git a/sw/source/ui/dbui/dbmgr.cxx b/sw/source/ui/dbui/dbmgr.cxx
index 7870d63..ee75876 100644
--- a/sw/source/ui/dbui/dbmgr.cxx
+++ b/sw/source/ui/dbui/dbmgr.cxx
@@ -974,7 +974,7 @@ sal_Bool SwNewDBMgr::MergeMailFiles(SwWrtShell* pSourceShell,
             {
                 nStartRow = pImpl->pMergeData ? pImpl->pMergeData->xResultSet->getRow() : 0;
                 {
-                    String sPath(sSubject);
+                    OUString sPath(sSubject);
 
                     String sAddress;
                     if( !bEMail && bColumnName )
@@ -1000,7 +1000,7 @@ sal_Bool SwNewDBMgr::MergeMailFiles(SwWrtShell* pSourceShell,
                             sLeading = aEntry.GetBase();
                         aEntry.removeSegment();
                         sPath = aEntry.GetMainURL( INetURLObject::NO_DECODE );
-                        String sExt(comphelper::string::stripStart(pStoreToFilter->GetDefaultExtension(), '*'));
+                        OUString sExt(comphelper::string::stripStart(pStoreToFilter->GetDefaultExtension(), '*'));
                         aTempFile = std::auto_ptr< utl::TempFile >(
                                 new utl::TempFile(sLeading,&sExt,&sPath ));
                         if( bAsSingleFile )
@@ -1246,7 +1246,8 @@ sal_Bool SwNewDBMgr::MergeMailFiles(SwWrtShell* pSourceShell,
                 if( rMergeDescriptor.nMergeType != DBMGR_MERGE_MAILMERGE )
                 {
                     OSL_ENSURE( aTempFile.get(), "Temporary file not available" );
-                    INetURLObject aTempFileURL(bAsSingleFile ? sSubject : aTempFile->GetURL());
+                    OUString sSub(sSubject);
+                    INetURLObject aTempFileURL(bAsSingleFile ? sSub : aTempFile->GetURL());
                     SfxMedium* pDstMed = new SfxMedium(
                         aTempFileURL.GetMainURL( INetURLObject::NO_DECODE ),
                         STREAM_STD_READWRITE );
@@ -2175,7 +2176,7 @@ String SwNewDBMgr::LoadAndRegisterDataSource()
     sfx2::FileDialogHelper aDlgHelper( TemplateDescription::FILEOPEN_SIMPLE, 0 );
     Reference < XFilePicker > xFP = aDlgHelper.GetFilePicker();
 
-    String sHomePath(SvtPathOptions().GetWorkPath());
+    OUString sHomePath(SvtPathOptions().GetWorkPath());
     aDlgHelper.SetDisplayDirectory( sHomePath );
 
     Reference<XFilterManager> xFltMgr(xFP, UNO_QUERY);
@@ -2335,7 +2336,7 @@ String SwNewDBMgr::LoadAndRegisterDataSource()
 
                 Reference<XDocumentDataSource> xDS(xNewInstance, UNO_QUERY_THROW);
                 Reference<XStorable> xStore(xDS->getDatabaseDocument(), UNO_QUERY_THROW);
-                String sOutputExt = OUString(".odb");
+                OUString sOutputExt = OUString(".odb");
                 String sTmpName;
                 {
                     utl::TempFile aTempFile(sNewName , &sOutputExt, &sHomePath);
diff --git a/sw/source/ui/index/cnttab.cxx b/sw/source/ui/index/cnttab.cxx
index c2db5e7..c752544 100644
--- a/sw/source/ui/index/cnttab.cxx
+++ b/sw/source/ui/index/cnttab.cxx
@@ -487,29 +487,28 @@ IMPL_LINK( SwMultiTOXTabDialog, ShowPreviewHdl, CheckBox *, pBox )
         if(!pExampleFrame && !bExampleCreated)
         {
             bExampleCreated = sal_True;
-            String sTemplate(OUString("internal"));
-            sTemplate += INET_PATH_TOKEN;
-            sTemplate.AppendAscii( RTL_CONSTASCII_STRINGPARAM("idxexample") );
-            String sTemplateWithoutExt( sTemplate );
-            sTemplate.AppendAscii( RTL_CONSTASCII_STRINGPARAM(".odt") );
+            OUString sTemplate("internal/idxexample");
+
+            OUString sTemplateWithoutExt( sTemplate );
+            sTemplate += ".odt";
 
             SvtPathOptions aOpt;
             aOpt.SetTemplatePath(String("share/template/common"));
             // 6.0 (extension .sxw)
-            sal_Bool bExist = aOpt.SearchFile( sTemplate, SvtPathOptions::PATH_TEMPLATE );
+            bool bExist = aOpt.SearchFile( sTemplate, SvtPathOptions::PATH_TEMPLATE );
 
             if( !bExist )
             {
                 // 6.0 (extension .sxw)
                 sTemplate = sTemplateWithoutExt;
-                sTemplate.AppendAscii( RTL_CONSTASCII_STRINGPARAM(".sxw") );
+                sTemplate += ".sxw";
                 bExist = aOpt.SearchFile( sTemplate, SvtPathOptions::PATH_TEMPLATE );
             }
             if( !bExist )
             {
                 // 5.0 (extension .vor)
                 sTemplate = sTemplateWithoutExt;
-                sTemplate.AppendAscii( RTL_CONSTASCII_STRINGPARAM(".sdw") );
+                sTemplate += ".sdw";
                 bExist = aOpt.SearchFile( sTemplate, SvtPathOptions::PATH_TEMPLATE );
             }
 
@@ -524,8 +523,9 @@ IMPL_LINK( SwMultiTOXTabDialog, ShowPreviewHdl, CheckBox *, pBox )
             else
             {
                 Link aLink(LINK(this, SwMultiTOXTabDialog, CreateExample_Hdl));
+                String sTemp(sTemplate);
                 pExampleFrame = new SwOneExampleFrame(
-                        aExampleContainerWIN, EX_SHOW_ONLINE_LAYOUT, &aLink, &sTemplate);
+                        aExampleContainerWIN, EX_SHOW_ONLINE_LAYOUT, &aLink, &sTemp);
 
                 if(!pExampleFrame->IsServiceAvailable())
                 {
diff --git a/sw/source/ui/misc/glosbib.cxx b/sw/source/ui/misc/glosbib.cxx
index 4ecc12e..8c83593 100644
--- a/sw/source/ui/misc/glosbib.cxx
+++ b/sw/source/ui/misc/glosbib.cxx
@@ -77,7 +77,7 @@ SwGlossaryGroupDlg::SwGlossaryGroupDlg(Window * pParent,
 
     for (size_t i = 0; i < rPathArr.size(); ++i)
     {
-        String sPath(rPathArr[i]);
+        OUString sPath(rPathArr[i]);
         INetURLObject aTempURL(sPath);
         sPath = aTempURL.GetMainURL(INetURLObject::DECODE_WITH_CHARSET );
         m_pPathLB->InsertEntry(sPath);
diff --git a/sw/source/ui/misc/glosdoc.cxx b/sw/source/ui/misc/glosdoc.cxx
index 681be51..11c8dc8 100644
--- a/sw/source/ui/misc/glosdoc.cxx
+++ b/sw/source/ui/misc/glosdoc.cxx
@@ -49,7 +49,7 @@ using namespace ::com::sun::star;
 using namespace ::com::sun::star::uno;
 
 // PUBLIC METHODES -------------------------------------------------------
-static String lcl_CheckFileName( const String& rNewFilePath,
+static String lcl_CheckFileName( const OUString& rNewFilePath,
                           const String& rNewGroupName )
 {
     String sRet;
@@ -77,7 +77,7 @@ static String lcl_CheckFileName( const String& rNewFilePath,
 
     if( !bOk )
     {
-        String rSG = SwGlossaries::GetExtension();
+        OUString rSG = SwGlossaries::GetExtension();
         //generate generic name
         utl::TempFile aTemp(OUString("group"),
             &rSG, &rNewFilePath );
diff --git a/unotools/source/config/defaultoptions.cxx b/unotools/source/config/defaultoptions.cxx
index b31176c..017d163 100644
--- a/unotools/source/config/defaultoptions.cxx
+++ b/unotools/source/config/defaultoptions.cxx
@@ -67,32 +67,32 @@ using namespace com::sun::star::uno;
 class SvtDefaultOptions_Impl : public utl::ConfigItem
 {
 public:
-    String          m_aAddinPath;
-    String          m_aAutoCorrectPath;
-    String          m_aAutoTextPath;
-    String          m_aBackupPath;
-    String          m_aBasicPath;
-    String          m_aBitmapPath;
-    String          m_aConfigPath;
-    String          m_aDictionaryPath;
-    String          m_aFavoritesPath;
-    String          m_aFilterPath;
-    String          m_aGalleryPath;
-    String          m_aGraphicPath;
-    String          m_aHelpPath;
-    String          m_aLinguisticPath;
-    String          m_aModulePath;
-    String          m_aPalettePath;
-    String          m_aPluginPath;
-    String          m_aTempPath;
-    String          m_aTemplatePath;
-    String          m_aUserConfigPath;
-    String          m_aWorkPath;
-    String          m_aUserDictionaryPath;
+    OUString         m_aAddinPath;
+    OUString         m_aAutoCorrectPath;
+    OUString         m_aAutoTextPath;
+    OUString         m_aBackupPath;
+    OUString         m_aBasicPath;
+    OUString         m_aBitmapPath;
+    OUString         m_aConfigPath;
+    OUString         m_aDictionaryPath;
+    OUString         m_aFavoritesPath;
+    OUString         m_aFilterPath;
+    OUString         m_aGalleryPath;
+    OUString         m_aGraphicPath;
+    OUString         m_aHelpPath;
+    OUString         m_aLinguisticPath;
+    OUString         m_aModulePath;
+    OUString         m_aPalettePath;
+    OUString         m_aPluginPath;
+    OUString         m_aTempPath;
+    OUString         m_aTemplatePath;
+    OUString         m_aUserConfigPath;
+    OUString         m_aWorkPath;
+    OUString         m_aUserDictionaryPath;
 
                     SvtDefaultOptions_Impl();
 
-    String          GetDefaultPath( sal_uInt16 nId ) const;
+    OUString         GetDefaultPath( sal_uInt16 nId ) const;
     virtual void    Commit();
     virtual void    Notify( const com::sun::star::uno::Sequence<OUString>& aPropertyNames);
 };

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list