[Libreoffice-commits] core.git: sd/inc sd/source vcl/source

Thomas Arnhold thomas at arnhold.org
Sat Sep 7 20:06:52 PDT 2013


 sd/inc/TransitionPreset.hxx                        |    3 
 sd/inc/anminfo.hxx                                 |   10 -
 sd/inc/cusshow.hxx                                 |    6 
 sd/inc/drawdoc.hxx                                 |   34 ++--
 sd/inc/pglink.hxx                                  |    2 
 sd/inc/sdabstdlg.hxx                               |    1 
 sd/inc/sdpage.hxx                                  |   34 ++--
 sd/inc/stlpool.hxx                                 |   12 -
 sd/source/core/CustomAnimationPreset.cxx           |   18 +-
 sd/source/core/TransitionPreset.cxx                |    2 
 sd/source/core/anminfo.cxx                         |   12 -
 sd/source/core/cusshow.cxx                         |    4 
 sd/source/core/drawdoc.cxx                         |   22 +-
 sd/source/core/drawdoc2.cxx                        |   73 ++++-----
 sd/source/core/drawdoc3.cxx                        |    8 -
 sd/source/core/drawdoc4.cxx                        |   88 +++++------
 sd/source/core/pglink.cxx                          |    8 -
 sd/source/core/sdpage.cxx                          |   57 +++----
 sd/source/core/sdpage2.cxx                         |    2 
 sd/source/core/stlfamily.cxx                       |    2 
 sd/source/core/stlpool.cxx                         |  161 +++++++--------------
 sd/source/core/stlsheet.cxx                        |    2 
 sd/source/core/undoanim.cxx                        |    4 
 sd/source/filter/eppt/pptx-text.cxx                |    2 
 sd/source/filter/html/htmlex.cxx                   |   10 -
 sd/source/filter/ppt/pptin.cxx                     |    2 
 sd/source/filter/sdfilter.cxx                      |    7 
 sd/source/ui/docshell/docshel4.cxx                 |    2 
 sd/source/ui/func/fuoaprms.cxx                     |    2 
 sd/source/ui/inc/OutlineViewShell.hxx              |    2 
 sd/source/ui/inc/ViewShell.hxx                     |    2 
 sd/source/ui/sidebar/DocumentHelper.cxx            |    2 
 sd/source/ui/toolpanel/controls/DocumentHelper.cxx |    2 
 sd/source/ui/unoidl/unopage.cxx                    |    2 
 sd/source/ui/view/outlnvsh.cxx                     |    2 
 sd/source/ui/view/viewoverlaymanager.cxx           |    2 
 sd/source/ui/view/viewshe2.cxx                     |    2 
 vcl/source/filter/FilterConfigCache.cxx            |    3 
 38 files changed, 273 insertions(+), 336 deletions(-)

New commits:
commit 9de3cff361fc49322689e26709ca4709866f485c
Author: Thomas Arnhold <thomas at arnhold.org>
Date:   Thu Sep 5 14:22:12 2013 +0200

    String to OUString
    
    Change-Id: I5ff57ede2217f1464571fb2beaa62a34425064ae
    Reviewed-on: https://gerrit.libreoffice.org/5826
    Reviewed-by: Thomas Arnhold <thomas at arnhold.org>
    Tested-by: Thomas Arnhold <thomas at arnhold.org>

diff --git a/sd/inc/TransitionPreset.hxx b/sd/inc/TransitionPreset.hxx
index 7010a33..ed4cee8 100644
--- a/sd/inc/TransitionPreset.hxx
+++ b/sd/inc/TransitionPreset.hxx
@@ -34,7 +34,6 @@ namespace com { namespace sun { namespace star {
 } } }
 
 class SdPage;
-class String;
 
 namespace sd {
 
@@ -72,7 +71,7 @@ private:
     static bool importTransitionsFile( TransitionPresetList& rList,
                                        ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& xServiceFactory,
                                        UStringMap& rTransitionNameMape,
-                                       String aFilaname );
+                                       OUString aFilename );
 };
 
 }
diff --git a/sd/inc/anminfo.hxx b/sd/inc/anminfo.hxx
index 72f2a96..7a230c2 100644
--- a/sd/inc/anminfo.hxx
+++ b/sd/inc/anminfo.hxx
@@ -46,22 +46,22 @@ public:
     sal_Bool                    mbDimHide;      ///< hide rather than dim
     Color                       maBlueScreen;   ///< identifies "background pixels"
     Color                       maDimColor;     ///< for fading the object
-    String                      maSoundFile;    ///< Path to the sound file in MS DOS notation
+    OUString                    maSoundFile;    ///< Path to the sound file in MS DOS notation
     sal_Bool                    mbSoundOn;      ///< Sound on / off
     sal_Bool                    mbPlayFull;     ///< play sound completely.
     SdrPathObj*                 mpPathObj;      ///< The path object
     ::com::sun::star::presentation::ClickAction     meClickAction;  ///< Action at mouse click
     ::com::sun::star::presentation::AnimationEffect meSecondEffect; ///< for object fading.
     ::com::sun::star::presentation::AnimationSpeed  meSecondSpeed;  ///< for object fading.
-    String                      maSecondSoundFile; ///< for object fading.
+    OUString                    maSecondSoundFile; ///< for object fading.
     sal_Bool                    mbSecondSoundOn;   ///< for object fading.
     sal_Bool                    mbSecondPlayFull;  ///< for object fading.
     sal_uInt16                  mnVerb;            ///< for OLE object
     sal_uLong                   mnPresOrder;
-    SdrObject&              mrObject;
+    SdrObject&                  mrObject;
 
-    SD_DLLPUBLIC void                    SetBookmark( const String& rBookmark );
-    SD_DLLPUBLIC String                  GetBookmark();
+    SD_DLLPUBLIC void           SetBookmark( const OUString& rBookmark );
+    SD_DLLPUBLIC OUString       GetBookmark();
 public:
                             SdAnimationInfo(SdrObject& rObject);
                             SdAnimationInfo(const SdAnimationInfo& rAnmInfo, SdrObject& rObject);
diff --git a/sd/inc/cusshow.hxx b/sd/inc/cusshow.hxx
index cbf1e84..8129364 100644
--- a/sd/inc/cusshow.hxx
+++ b/sd/inc/cusshow.hxx
@@ -41,7 +41,7 @@ public:
 
 private:
     PageVec       maPages;
-    String          aName;
+    OUString        aName;
     SdDrawDocument* pDoc;
 
     // this is a weak reference to a possible living api wrapper for this custom show
@@ -70,8 +70,8 @@ public:
     /** Removes all occurences of pPage. */
     void RemovePage( const SdPage* pPage );
 
-    void   SetName(const String& rName);
-    String GetName() const;
+    void   SetName(const OUString& rName);
+    OUString GetName() const;
 
     SdDrawDocument* GetDoc() const { return pDoc; }
 
diff --git a/sd/inc/drawdoc.hxx b/sd/inc/drawdoc.hxx
index 46790a4..22fb05b 100644
--- a/sd/inc/drawdoc.hxx
+++ b/sd/inc/drawdoc.hxx
@@ -99,8 +99,8 @@ struct StyleReplaceData
 {
     SfxStyleFamily  nFamily;
     SfxStyleFamily  nNewFamily;
-    String          aName;
-    String          aNewName;
+    OUString        aName;
+    OUString        aNewName;
 };
 
 enum DocCreationMode
@@ -153,7 +153,7 @@ private:
     SdTransferable *    mpCreatingTransferable;
     sal_Bool                mbHasOnlineSpellErrors;
     sal_Bool                mbInitialOnlineSpellingEnabled;
-    String              maBookmarkFile;
+    OUString            maBookmarkFile;
     ::sd::DrawDocShellRef   mxBookmarkDocShRef;
 
     sd::PresentationSettings maPresentationSettings;
@@ -222,7 +222,7 @@ public:
 
     SvxNumType          GetPageNumType() const;
     void                SetPageNumType(SvxNumType eType) { mePageNumType = eType; }
-    SD_DLLPUBLIC String              CreatePageNumValue(sal_uInt16 nNum) const;
+    SD_DLLPUBLIC OUString CreatePageNumValue(sal_uInt16 nNum) const;
 
     DocumentType        GetDocumentType() const { return meDocType; }
 
@@ -247,10 +247,10 @@ public:
     virtual SdrPage* RemoveMasterPage(sal_uInt16 nPgNum);
 
     void                RemoveUnnecessaryMasterPages( SdPage* pMaster=NULL, sal_Bool bOnlyDuplicatePages=sal_False, sal_Bool bUndo=sal_True );
-    SD_DLLPUBLIC void   SetMasterPage(sal_uInt16 nSdPageNum, const String& rLayoutName,
+    SD_DLLPUBLIC void   SetMasterPage(sal_uInt16 nSdPageNum, const OUString& rLayoutName,
                                       SdDrawDocument* pSourceDoc, sal_Bool bMaster, sal_Bool bCheckMasters);
 
-    SD_DLLPUBLIC SdDrawDocument* OpenBookmarkDoc(const String& rBookmarkFile);
+    SD_DLLPUBLIC SdDrawDocument* OpenBookmarkDoc(const OUString& rBookmarkFile);
     SdDrawDocument*     OpenBookmarkDoc(SfxMedium& rMedium);
 
     sal_Bool InsertBookmark(const std::vector<OUString> &rBookmarkList,
@@ -331,7 +331,7 @@ public:
 
     SD_DLLPUBLIC void   CloseBookmarkDoc();
 
-    SdrObject*          GetObj(const String& rObjName) const;
+    SdrObject*          GetObj(const OUString& rObjName) const;
 
     /** Return the first page that has the given name.  Regular pages and
         notes pages are searched first.  When not found then the master
@@ -346,7 +346,7 @@ public:
             Returns the index of the page with the given name or
             SDRPAGE_NOTFOUND (=0xffff) when such a page does not exist.
     */
-    sal_uInt16 GetPageByName(const String& rPgName, sal_Bool& rbIsMasterPage ) const;
+    sal_uInt16 GetPageByName(const OUString& rPgName, sal_Bool& rbIsMasterPage ) const;
     SD_DLLPUBLIC SdPage*GetSdPage(sal_uInt16 nPgNum, PageKind ePgKind) const;
     SD_DLLPUBLIC sal_uInt16 GetSdPageCount(PageKind ePgKind) const;
 
@@ -410,7 +410,7 @@ public:
     void                SetTextDefaults() const;
 
     void                CreateLayoutTemplates();
-    void                RenameLayoutTemplate(const String& rOldLayoutName, const String& rNewName);
+    void                RenameLayoutTemplate(const OUString& rOldLayoutName, const OUString& rNewName);
 
     void                CreateDefaultCellStyles();
 
@@ -497,8 +497,8 @@ public:
     sal_uInt16 CreatePage (
         SdPage* pCurrentPage,
         PageKind ePageKind,
-        const String& sStandardPageName,
-        const String& sNotesPageName,
+        const OUString& sStandardPageName,
+        const OUString& sNotesPageName,
         AutoLayout eStandardLayout,
         AutoLayout eNotesLayout,
         sal_Bool bIsPageBack,
@@ -547,8 +547,8 @@ public:
     sal_uInt16 DuplicatePage (
         SdPage* pCurrentPage,
         PageKind ePageKind,
-        const String& sStandardPageName,
-        const String& sNotesPageName,
+        const OUString& sStandardPageName,
+        const OUString& sNotesPageName,
         sal_Bool bIsPageBack,
         sal_Bool bIsPageObj,
         const sal_Int32 nInsertPosition = -1);
@@ -566,7 +566,7 @@ public:
      */
     SD_DLLPUBLIC SdStyleSheetPool* GetSdStyleSheetPool() const;
 
-       void UpdatePageRelativeURLs(const String& rOldName, const String& rNewName);
+       void UpdatePageRelativeURLs(const OUString& rOldName, const OUString& rNewName);
 
     void SetCalcFieldValueHdl( ::Outliner* pOutliner);
 
@@ -613,8 +613,8 @@ private:
     sal_uInt16 InsertPageSet (
         SdPage* pCurrentPage,
         PageKind ePageKind,
-        const String& sStandardPageName,
-        const String& sNotesPageName,
+        const OUString& sStandardPageName,
+        const OUString& sNotesPageName,
         sal_Bool bIsPageBack,
         sal_Bool bIsPageObj,
         SdPage* pStandardPage,
@@ -639,7 +639,7 @@ private:
     void SetupNewPage (
         SdPage* pPreviousPage,
         SdPage* pPage,
-        const String& sPageName,
+        const OUString& sPageName,
         sal_uInt16 nInsertionPoint,
         sal_Bool bIsPageBack,
         sal_Bool bIsPageObj);
diff --git a/sd/inc/pglink.hxx b/sd/inc/pglink.hxx
index 4a1b455..9f9e1c6 100644
--- a/sd/inc/pglink.hxx
+++ b/sd/inc/pglink.hxx
@@ -31,7 +31,7 @@ class SdPageLink : public ::sfx2::SvBaseLink
     SdPage* pPage;
 
 public:
-    SdPageLink(SdPage* pPg, const String& rFileName, const String& rBookmarkName);
+    SdPageLink(SdPage* pPg, const OUString& rFileName, const OUString& rBookmarkName);
     virtual ~SdPageLink();
 
     virtual void Closed();
diff --git a/sd/inc/sdabstdlg.hxx b/sd/inc/sdabstdlg.hxx
index 204e6cb..e63aa0d 100644
--- a/sd/inc/sdabstdlg.hxx
+++ b/sd/inc/sdabstdlg.hxx
@@ -39,7 +39,6 @@ namespace sd {
     class DrawView;
 }
 
-class String;
 class SfxObjectShell;
 class SfxObjectShellLock;
 class SvxFieldData;
diff --git a/sd/inc/sdpage.hxx b/sd/inc/sdpage.hxx
index aaf2912..0cc72cf 100644
--- a/sd/inc/sdpage.hxx
+++ b/sd/inc/sdpage.hxx
@@ -71,16 +71,16 @@ namespace sd {
     struct SD_DLLPUBLIC HeaderFooterSettings
     {
         bool mbHeaderVisible;
-        String maHeaderText;
+        OUString maHeaderText;
 
         bool mbFooterVisible;
-        String maFooterText;
+        OUString maFooterText;
 
         bool mbSlideNumberVisible;
 
         bool mbDateTimeVisible;
         bool mbDateTimeIsFixed;
-        String maDateTimeText;
+        OUString maDateTimeText;
         int meDateTimeFormat;
 
         HeaderFooterSettings();
@@ -119,10 +119,10 @@ protected:
     sal_Bool    mbSoundOn;                ///< with / without sound.
     sal_Bool    mbExcluded;               ///< will (not) be displayed during show.
     OUString    maLayoutName;             ///< Name of the layout
-    String      maSoundFile;              ///< Path to sound file (MSDOS notation).
+    OUString    maSoundFile;              ///< Path to sound file (MSDOS notation).
     bool        mbLoopSound;
     bool        mbStopSound;
-    String      maCreatedPageName;        ///< generated page name by GetPageName.
+    OUString    maCreatedPageName;        ///< generated page name by GetPageName.
     OUString    maFileName;               ///< file name.
     OUString    maBookmarkName;           ///< Bookmark name.
     sal_Bool    mbScaleObjects;           ///< Objects should be scaled
@@ -180,7 +180,7 @@ public:
     SdrObject*      CreateDefaultPresObj(PresObjKind eObjKind, bool bInsert);
     SdrObject*      GetPresObj(PresObjKind eObjKind, int nIndex = 1, bool bFuzzySearch = false );
     PresObjKind     GetPresObjKind(SdrObject* pObj) const;
-    String          GetPresObjText(PresObjKind eObjKind) const;
+    OUString        GetPresObjText(PresObjKind eObjKind) const;
     SfxStyleSheet* GetStyleSheetForMasterPageBackground() const;
     SfxStyleSheet*  GetStyleSheetForPresObj(PresObjKind eObjKind) const;
     bool            RestoreDefaultText( SdrObject* pObj );
@@ -209,7 +209,7 @@ public:
     virtual SdrObject* NbcReplaceObject(SdrObject* pNewObj, sal_uLong nObjNum);
     virtual SdrObject* ReplaceObject(SdrObject* pNewObj, sal_uLong nObjNum);
 
-    void        SetObjText(SdrTextObj* pObj, SdrOutliner* pOutliner, PresObjKind eObjKind, const String& rStr );
+    void        SetObjText(SdrTextObj* pObj, SdrOutliner* pOutliner, PresObjKind eObjKind, const OUString& rStr );
 
     void        SetPageKind(PageKind ePgType)        { mePageKind = ePgType; }
     PageKind    GetPageKind() const                  { return mePageKind; }
@@ -235,8 +235,8 @@ public:
     void        SetScaleObjects(sal_Bool bScale)        { mbScaleObjects = bScale; }
     sal_Bool        IsScaleObjects() const              { return mbScaleObjects; }
 
-    void        SetSoundFile(const String& rStr)    { maSoundFile = rStr; }
-    String      GetSoundFile() const                { return maSoundFile; }
+    void        SetSoundFile(const OUString& rStr)    { maSoundFile = rStr; }
+    OUString    GetSoundFile() const                { return maSoundFile; }
 
     void        SetLoopSound( bool bLoopSound ) { mbLoopSound = bLoopSound; }
     bool        IsLoopSound() const                 { return mbLoopSound; }
@@ -265,10 +265,10 @@ public:
     void            SetLayoutName(OUString aName);
     virtual OUString GetLayoutName() const       { return maLayoutName; }
 
-    void            SetFileName(const String& aName) { maFileName = aName; }
-    virtual String  GetFileName() const       { return maFileName; }
-    void            SetBookmarkName(const String& aName) { maBookmarkName = aName; }
-    virtual String  GetBookmarkName() const       { return maBookmarkName; }
+    void            SetFileName(const OUString& aName) { maFileName = aName; }
+    virtual OUString GetFileName() const       { return maFileName; }
+    void            SetBookmarkName(const OUString& aName) { maBookmarkName = aName; }
+    virtual OUString GetBookmarkName() const       { return maBookmarkName; }
     SdPageLink*     GetLink() { return mpPageLink; }
 
     void            ConnectLink();
@@ -277,10 +277,10 @@ public:
     void    ScaleObjects(const Size& rNewPageSize, const Rectangle& rNewBorderRect,
                          sal_Bool bScaleAllObj);
 
-    const String&   GetName() const;
-    String          GetRealName() const { return FmFormPage::GetName(); };
+    const OUString&   GetName() const;
+    OUString          GetRealName() const { return FmFormPage::GetName(); };
 
-    void    SetPresentationLayout(const String& rLayoutName,
+    void    SetPresentationLayout(const OUString& rLayoutName,
                                   sal_Bool bReplaceStyleSheets = sal_True,
                                   sal_Bool bSetMasterPage = sal_True,
                                   sal_Bool bReverseOrder = sal_False);
@@ -324,7 +324,7 @@ public:
 
     /** Set the name of the page and broadcast a model change.
     */
-    virtual void SetName (const String& rName);
+    virtual void SetName (const OUString& rName);
 
     const sd::HeaderFooterSettings& getHeaderFooterSettings() const;
     void setHeaderFooterSettings( const sd::HeaderFooterSettings& rNewSettings );
diff --git a/sd/inc/stlpool.hxx b/sd/inc/stlpool.hxx
index 3696a8c..80fcabc 100644
--- a/sd/inc/stlpool.hxx
+++ b/sd/inc/stlpool.hxx
@@ -60,10 +60,10 @@ public:
     void                SetActualStyleSheet(SfxStyleSheetBase* pActStyleSheet)  { mpActualStyleSheet = pActStyleSheet; }
     SfxStyleSheetBase*  GetActualStyleSheet()                                   { return mpActualStyleSheet; }
 
-    SfxStyleSheetBase*  GetTitleSheet(const String& rLayoutName);
+    SfxStyleSheetBase*  GetTitleSheet(const OUString& rLayoutName);
 
                         // Caller has to delete the list
-    void                CreateOutlineSheetList(const String& rLayoutName, std::vector<SfxStyleSheetBase*> &rOutlineStyles);
+    void                CreateOutlineSheetList(const OUString& rLayoutName, std::vector<SfxStyleSheetBase*> &rOutlineStyles);
 
     /** creates all layout style sheets for the givin layout name if they
         don't exist yet.
@@ -73,10 +73,10 @@ public:
                             had to be created. This is used to assert errors in documents
                             when styles are missing.
     */
-    SD_DLLPUBLIC void                CreateLayoutStyleSheets(const String& rLayoutName, sal_Bool bCheck = sal_False );
-    void                CreateLayoutSheetNames(const String& rLayoutName, std::vector<String> &aNameList) const;
-    void                CreateLayoutSheetList(const String& rLayoutName, SdStyleSheetVector& rLayoutSheets);
-    void                CopyLayoutSheets(const String& rLayoutName, SdStyleSheetPool& rSourcePool, SdStyleSheetVector& rCreatedSheets );
+    SD_DLLPUBLIC void                CreateLayoutStyleSheets(const OUString& rLayoutName, sal_Bool bCheck = sal_False );
+    void                CreateLayoutSheetNames(const OUString& rLayoutName, std::vector<OUString> &aNameList) const;
+    void                CreateLayoutSheetList(const OUString& rLayoutName, SdStyleSheetVector& rLayoutSheets);
+    void                CopyLayoutSheets(const OUString& rLayoutName, SdStyleSheetPool& rSourcePool, SdStyleSheetVector& rCreatedSheets );
     void                CopyGraphicSheets(SdStyleSheetPool& rSourcePool);
     void                CopyCellSheets(SdStyleSheetPool& rSourcePool);
     void                CopyTableStyles(SdStyleSheetPool& rSourcePool);
diff --git a/sd/source/core/CustomAnimationPreset.cxx b/sd/source/core/CustomAnimationPreset.cxx
index 619b8d2..b03359b 100644
--- a/sd/source/core/CustomAnimationPreset.cxx
+++ b/sd/source/core/CustomAnimationPreset.cxx
@@ -197,12 +197,12 @@ Reference< XAnimationNode > CustomAnimationPreset::create( const OUString& rstrS
 
 UStringList CustomAnimationPreset::getProperties() const
 {
-    String aProperties( maProperty );
+    OUString aProperties( maProperty );
     sal_uInt16 nTokens = comphelper::string::getTokenCount(aProperties, ';');
     sal_uInt16 nToken;
     UStringList aPropertyList;
     for( nToken = 0; nToken < nTokens; nToken++ )
-        aPropertyList.push_back( aProperties.GetToken( nToken ) );
+        aPropertyList.push_back( aProperties.getToken( nToken, ';' ) );
 
     return aPropertyList;
 
@@ -210,13 +210,13 @@ UStringList CustomAnimationPreset::getProperties() const
 
 bool CustomAnimationPreset::hasProperty( const OUString& rProperty )const
 {
-    String aProperties( maProperty );
-    String aProperty( rProperty );
+    OUString aProperties( maProperty );
+    OUString aProperty( rProperty );
     sal_uInt16 nTokens = comphelper::string::getTokenCount(aProperties, ';');
     sal_uInt16 nToken;
     for( nToken = 0; nToken < nTokens; nToken++ )
     {
-        if( aProperties.GetToken( nToken ) == aProperty )
+        if( aProperties.getToken( nToken, ';' ) == aProperty )
             return true;
     }
 
@@ -429,7 +429,7 @@ void CustomAnimationPresets::importResources()
 void CustomAnimationPresets::importPresets( const Reference< XMultiServiceFactory >& xConfigProvider, const OUString& rNodePath, PresetCategoryList& rPresetMap  )
 {
 #ifdef DEBUG
-    String aMissedPresetIds;
+    OUString aMissedPresetIds;
 #endif
 
     try
@@ -470,8 +470,8 @@ void CustomAnimationPresets::importPresets( const Reference< XMultiServiceFactor
 #ifdef DEBUG
                         else
                         {
-                            aMissedPresetIds += String(*pEffectNames);
-                            aMissedPresetIds += String( "\n" );
+                            aMissedPresetIds += OUString(*pEffectNames);
+                            aMissedPresetIds += "\n";
                         }
 #endif
                         pEffectNames++;
@@ -489,7 +489,7 @@ void CustomAnimationPresets::importPresets( const Reference< XMultiServiceFactor
     }
 
 #ifdef DEBUG
-    if( aMissedPresetIds.Len() )
+    if( !aMissedPresetIds.isEmpty() )
     {
         OStringBuffer aTmp("sd::CustomAnimationPresets::importPresets(), invalid preset id!\n");
         aTmp.append(OUStringToOString(aMissedPresetIds,
diff --git a/sd/source/core/TransitionPreset.cxx b/sd/source/core/TransitionPreset.cxx
index de67f40..e7b6a9b 100644
--- a/sd/source/core/TransitionPreset.cxx
+++ b/sd/source/core/TransitionPreset.cxx
@@ -91,7 +91,7 @@ TransitionPreset::TransitionPreset( const ::com::sun::star::uno::Reference< ::co
 bool TransitionPreset::importTransitionsFile( TransitionPresetList& rList,
                                               Reference< XMultiServiceFactory >& xServiceFactory,
                                               UStringMap& rTransitionNameMape,
-                                              String aURL )
+                                              OUString aURL )
 {
     // import transition presets
     Reference< XAnimationNode > xAnimationNode;
diff --git a/sd/source/core/anminfo.cxx b/sd/source/core/anminfo.cxx
index 114c191..f833422 100644
--- a/sd/source/core/anminfo.cxx
+++ b/sd/source/core/anminfo.cxx
@@ -104,11 +104,11 @@ SdrObjUserData* SdAnimationInfo::Clone(SdrObject* pObject) const
     return new SdAnimationInfo(*this, *pObject );
 }
 
-void SdAnimationInfo::SetBookmark( const String& rBookmark )
+void SdAnimationInfo::SetBookmark( const OUString& rBookmark )
 {
     if( meClickAction == ::com::sun::star::presentation::ClickAction_BOOKMARK )
     {
-        String sURL = OUString('#');
+        OUString sURL("#");
         sURL += rBookmark;
         SvxFieldItem aURLItem( SvxURLField( sURL, sURL ), EE_FEATURE_FIELD );
         mrObject.SetMergedItem( aURLItem );
@@ -120,9 +120,9 @@ void SdAnimationInfo::SetBookmark( const String& rBookmark )
     }
 }
 
-String SdAnimationInfo::GetBookmark()
+OUString SdAnimationInfo::GetBookmark()
 {
-    String sBookmark;
+    OUString sBookmark;
 
     const SvxFieldItem* pFldItem = dynamic_cast< const SvxFieldItem* >( &mrObject.GetMergedItem( EE_FEATURE_FIELD ) );
     if( pFldItem )
@@ -132,8 +132,8 @@ String SdAnimationInfo::GetBookmark()
             sBookmark = pURLField->GetURL();
     }
 
-    if( (meClickAction == ::com::sun::star::presentation::ClickAction_BOOKMARK) && sBookmark.Len() && (sBookmark.GetChar(0) == '#') )
-        sBookmark = sBookmark.Copy( 1 );
+    if( (meClickAction == ::com::sun::star::presentation::ClickAction_BOOKMARK) && !sBookmark.isEmpty() && (sBookmark[0] == '#') )
+        sBookmark = sBookmark.copy( 1 );
 
     return sBookmark;
 }
diff --git a/sd/source/core/cusshow.cxx b/sd/source/core/cusshow.cxx
index a53e92b..9cecb6d 100644
--- a/sd/source/core/cusshow.cxx
+++ b/sd/source/core/cusshow.cxx
@@ -108,12 +108,12 @@ void SdCustomShow::RemovePage( const SdPage* pPage )
     maPages.erase(::std::remove(maPages.begin(), maPages.end(), pPage), maPages.end());
 }
 
-void   SdCustomShow::SetName(const String& rName)
+void   SdCustomShow::SetName(const OUString& rName)
 {
     aName = rName;
 }
 
-String SdCustomShow::GetName() const
+OUString SdCustomShow::GetName() const
 {
     return aName;
 }
diff --git a/sd/source/core/drawdoc.cxx b/sd/source/core/drawdoc.cxx
index c188d2b..6c20c7e 100644
--- a/sd/source/core/drawdoc.cxx
+++ b/sd/source/core/drawdoc.cxx
@@ -357,7 +357,7 @@ SdDrawDocument::SdDrawDocument(DocumentType eType, SfxObjectShell* pDrDocSh)
       */
 
     {
-        String aControlLayerName( SdResId(STR_LAYER_CONTROLS) );
+        OUString aControlLayerName( SD_RESSTR(STR_LAYER_CONTROLS) );
 
         SdrLayerAdmin& rLayerAdmin = GetLayerAdmin();
         rLayerAdmin.NewLayer( SD_RESSTR(STR_LAYER_LAYOUT) );
@@ -475,8 +475,8 @@ SdrModel* SdDrawDocument::AllocModel() const
         for (sal_uInt16 i = 0; i < GetMasterSdPageCount(PK_STANDARD); i++)
         {
             // Move with all of the master page's layouts
-            String aOldLayoutName(((SdDrawDocument*) this)->GetMasterSdPage(i, PK_STANDARD)->GetLayoutName());
-            aOldLayoutName.Erase( aOldLayoutName.SearchAscii( SD_LT_SEPARATOR ) );
+            OUString aOldLayoutName(((SdDrawDocument*) this)->GetMasterSdPage(i, PK_STANDARD)->GetLayoutName());
+            aOldLayoutName = aOldLayoutName.copy( 0, aOldLayoutName.indexOf( SD_LT_SEPARATOR ) );
             SdStyleSheetVector aCreatedSheets;
             pNewStylePool->CopyLayoutSheets(aOldLayoutName, *pOldStylePool, aCreatedSheets );
         }
@@ -581,8 +581,8 @@ void SdDrawDocument::NewOrLoadCompleted(DocCreationMode eMode)
             // LayoutName and PageName must be the same
             SdPage* pPage = (SdPage*) GetMasterPage( nPage );
 
-            String aName( pPage->GetLayoutName() );
-            aName.Erase( aName.SearchAscii( SD_LT_SEPARATOR ) );
+            OUString aName( pPage->GetLayoutName() );
+            aName = aName.copy( 0, aName.indexOf( SD_LT_SEPARATOR ) );
 
             if( aName != pPage->GetName() )
                 pPage->SetName( aName );
@@ -599,7 +599,7 @@ void SdDrawDocument::NewOrLoadCompleted(DocCreationMode eMode)
     }
 
     // Set default style of Drawing Engine
-    String aName( SdResId(STR_STANDARD_STYLESHEET_NAME));
+    OUString aName( SD_RESSTR(STR_STANDARD_STYLESHEET_NAME));
     SetDefaultStyleSheet(static_cast<SfxStyleSheet*>(mxStyleSheetPool->Find(aName, SD_STYLE_FAMILY_GRAPHICS)));
 
     // #i119287# Set default StyleSheet for SdrGrafObj and SdrOle2Obj
@@ -672,7 +672,7 @@ void SdDrawDocument::NewOrLoadCompleted(DocCreationMode eMode)
     {
         pPage = (SdPage*) GetSdPage(nSdPage, PK_STANDARD);
 
-        if (pPage && pPage->GetFileName().Len() && pPage->GetBookmarkName().Len())
+        if (pPage && !pPage->GetFileName().isEmpty() && pPage->GetBookmarkName().getLength())
         {
             pPage->SetModel(this);
         }
@@ -706,8 +706,8 @@ void SdDrawDocument::NewOrLoadCompleted( SdPage* pPage, SdStyleSheetPool* pSPool
     if(!rPresentationShapes.isEmpty())
     {
         // Create lists of title and outline styles
-        String aName = pPage->GetLayoutName();
-        aName.Erase( aName.SearchAscii( SD_LT_SEPARATOR ));
+        OUString aName = pPage->GetLayoutName();
+        aName = aName.copy( 0, aName.indexOf( SD_LT_SEPARATOR ) );
 
         std::vector<SfxStyleSheetBase*> aOutlineList;
         pSPool->CreateOutlineSheetList(aName,aOutlineList);
@@ -759,9 +759,9 @@ void SdDrawDocument::NewOrLoadCompleted( SdPage* pPage, SdStyleSheetPool* pSPool
                 if (pObj->ISA(SdrTextObj) && pObj->IsEmptyPresObj() && pPage)
                 {
                     PresObjKind ePresObjKind = pPage->GetPresObjKind(pObj);
-                    String aString( pPage->GetPresObjText(ePresObjKind) );
+                    OUString aString( pPage->GetPresObjText(ePresObjKind) );
 
-                    if (aString.Len())
+                    if (!aString.isEmpty())
                     {
                         sd::Outliner* pInternalOutl = GetInternalOutliner(sal_True);
                         pPage->SetObjText( (SdrTextObj*) pObj, pInternalOutl, ePresObjKind, aString );
diff --git a/sd/source/core/drawdoc2.cxx b/sd/source/core/drawdoc2.cxx
index a2cc98b..655934f 100644
--- a/sd/source/core/drawdoc2.cxx
+++ b/sd/source/core/drawdoc2.cxx
@@ -75,7 +75,7 @@ const long PRINT_OFFSET = 30;       // see /svx/source/dialog/page.cxx
 using namespace com::sun::star;
 
 // Looks up an object by name
-SdrObject* SdDrawDocument::GetObj(const String& rObjName) const
+SdrObject* SdDrawDocument::GetObj(const OUString& rObjName) const
 {
     SdrObject* pObj = NULL;
     SdrObject* pObjFound = NULL;
@@ -136,7 +136,7 @@ SdrObject* SdDrawDocument::GetObj(const String& rObjName) const
 
 
 // Find SdPage by name
-sal_uInt16 SdDrawDocument::GetPageByName(const String& rPgName, sal_Bool& rbIsMasterPage) const
+sal_uInt16 SdDrawDocument::GetPageByName(const OUString& rPgName, sal_Bool& rbIsMasterPage) const
 {
     SdPage* pPage = NULL;
     sal_uInt16 nPage = 0;
@@ -244,9 +244,9 @@ void SdDrawDocument::UpdatePageObjectsInNotes(sal_uInt16 nStartPos)
     }
 }
 
-void SdDrawDocument::UpdatePageRelativeURLs(const String& rOldName, const String& rNewName)
+void SdDrawDocument::UpdatePageRelativeURLs(const OUString& rOldName, const OUString& rNewName)
 {
-    if (rNewName.Len() == 0)
+    if (rNewName.isEmpty())
         return;
 
     SfxItemPool& pPool(GetPool());
@@ -262,25 +262,24 @@ void SdDrawDocument::UpdatePageRelativeURLs(const String& rOldName, const String
 
             if(pURLField)
             {
-                XubString aURL = pURLField->GetURL();
+                OUString aURL = pURLField->GetURL();
 
-                if (aURL.Len() && (aURL.GetChar(0) == 35) && (aURL.Search(rOldName, 1) == 1))
+                if (!aURL.isEmpty() && (aURL[0] == 35) && (aURL.indexOf(rOldName, 1) == 1))
                 {
-                    if (aURL.Len() == rOldName.Len() + 1) // standard page name
+                    if (aURL.getLength() == rOldName.getLength() + 1) // standard page name
                     {
-                        aURL.Erase (1, aURL.Len() - 1);
+                        aURL = aURL.replaceAt(1, aURL.getLength() - 1, "");
                         aURL += rNewName;
                         pURLField->SetURL(aURL);
                     }
                     else
                     {
-                        const XubString sNotes = SdResId(STR_NOTES);
-                        if (aURL.Len() == rOldName.Len() + 2 + sNotes.Len() && aURL.Search(sNotes, rOldName.Len() + 2) == rOldName.Len() + 2)
+                        const OUString sNotes(SD_RESSTR(STR_NOTES));
+                        if (aURL.getLength() == rOldName.getLength() + 2 + sNotes.getLength()
+                            && aURL.indexOf(sNotes, rOldName.getLength() + 2) == rOldName.getLength() + 2)
                         {
-                            aURL.Erase (1, aURL.Len() - 1);
-                            aURL += rNewName;
-                            aURL += ' ';
-                            aURL += sNotes;
+                            aURL = aURL.replaceAt(1, aURL.getLength() - 1, "");
+                            aURL += rNewName + " " + sNotes;
                             pURLField->SetURL(aURL);
                         }
                     }
@@ -307,41 +306,41 @@ void SdDrawDocument::UpdatePageRelativeURLs(SdPage* pPage, sal_uInt16 nPos, sal_
 
             if(pURLField)
             {
-                XubString aURL = pURLField->GetURL();
+                OUString aURL = pURLField->GetURL();
 
-                if (aURL.Len() && (aURL.GetChar(0) == 35))
+                if (!aURL.isEmpty() && (aURL[0] == 35))
                 {
-                    XubString aHashSlide = OUString('#');
+                    OUString aHashSlide("#");
                     aHashSlide += SD_RESSTR(STR_PAGE);
 
-                    if (aURL.CompareTo(aHashSlide, aHashSlide.Len()) == COMPARE_EQUAL)
+                    if (aURL.startsWith(aHashSlide))
                     {
-                        XubString aURLCopy = aURL;
-                        const XubString sNotes = SdResId(STR_NOTES);
+                        OUString aURLCopy = aURL;
+                        const OUString sNotes(SD_RESSTR(STR_NOTES));
 
-                        aURLCopy.Erase(0, aHashSlide.Len());
+                        aURLCopy = aURLCopy.replaceAt(0, aHashSlide.getLength(), "");
 
-                        bool bNotesLink = (aURLCopy.Len() >= sNotes.Len() + 3 && aURLCopy.Search(sNotes, aURLCopy.Len() - sNotes.Len()) == aURLCopy.Len() - sNotes.Len());
+                        bool bNotesLink = ( aURLCopy.getLength() >= sNotes.getLength() + 3
+                            && aURLCopy.indexOf(sNotes, aURLCopy.getLength() - sNotes.getLength()) == aURLCopy.getLength() - sNotes.getLength() );
 
                         if (bNotesLink ^ bNotes)
                             continue; // no compatible link and page
 
                         if (bNotes)
-                            aURLCopy.Erase(aURLCopy.Len() - sNotes.Len(), sNotes.Len());
+                            aURLCopy = aURLCopy.replaceAt(aURLCopy.getLength() - sNotes.getLength(), sNotes.getLength(), "");
 
-                        sal_Int32 number = aURLCopy.ToInt32();
+                        sal_Int32 number = aURLCopy.toInt32();
                         sal_uInt16 realPageNumber = (nPos + 1)/ 2;
 
                         if ( number >= realPageNumber )
                         {
                             // update link page number
                             number += nIncrement;
-                            aURL.Erase (aHashSlide.Len() + 1, aURL.Len() - aHashSlide.Len() - 1);
+                            aURL = aURL.replaceAt(aHashSlide.getLength() + 1, aURL.getLength() - aHashSlide.getLength() - 1, "");
                             aURL += OUString::number(number);
                             if (bNotes)
                             {
-                                aURL += ' ';
-                                aURL += sNotes;
+                                aURL += " " + sNotes;
                             }
                             pURLField->SetURL(aURL);
                         }
@@ -1185,8 +1184,8 @@ void SdDrawDocument::CheckMasterPages()
 sal_uInt16 SdDrawDocument::CreatePage (
     SdPage* pActualPage,
     PageKind ePageKind,
-    const String& sStandardPageName,
-    const String& sNotesPageName,
+    const OUString& sStandardPageName,
+    const OUString& sNotesPageName,
     AutoLayout eStandardLayout,
     AutoLayout eNotesLayout,
     sal_Bool bIsPageBack,
@@ -1288,7 +1287,7 @@ sal_uInt16 SdDrawDocument::DuplicatePage (sal_uInt16 nPageNum)
     return DuplicatePage (
         pActualPage, ePageKind,
         // No names for the new slides
-        String(), String(),
+        OUString(), OUString(),
         aVisibleLayers.IsSet(aBckgrnd),
         aVisibleLayers.IsSet(aBckgrndObj));
 }
@@ -1299,8 +1298,8 @@ sal_uInt16 SdDrawDocument::DuplicatePage (sal_uInt16 nPageNum)
 sal_uInt16 SdDrawDocument::DuplicatePage (
     SdPage* pActualPage,
     PageKind ePageKind,
-    const String& sStandardPageName,
-    const String& sNotesPageName,
+    const OUString& sStandardPageName,
+    const OUString& sNotesPageName,
     sal_Bool bIsPageBack,
     sal_Bool bIsPageObj,
     const sal_Int32 nInsertPosition)
@@ -1347,8 +1346,8 @@ sal_uInt16 SdDrawDocument::DuplicatePage (
 sal_uInt16 SdDrawDocument::InsertPageSet (
     SdPage* pActualPage,
     PageKind ePageKind,
-    const String& sStandardPageName,
-    const String& sNotesPageName,
+    const OUString& sStandardPageName,
+    const OUString& sNotesPageName,
     sal_Bool bIsPageBack,
     sal_Bool bIsPageObj,
     SdPage* pStandardPage,
@@ -1359,8 +1358,8 @@ sal_uInt16 SdDrawDocument::InsertPageSet (
     SdPage* pPreviousNotesPage;
     sal_uInt16 nStandardPageNum;
     sal_uInt16 nNotesPageNum;
-    String aStandardPageName = sStandardPageName;
-    String aNotesPageName = sNotesPageName;
+    OUString aStandardPageName(sStandardPageName);
+    OUString aNotesPageName(sNotesPageName);
 
     // Gather some information about the standard page and the notes page
     // that are to be inserted. This makes sure that there is always one
@@ -1415,7 +1414,7 @@ sal_uInt16 SdDrawDocument::InsertPageSet (
 void SdDrawDocument::SetupNewPage (
     SdPage* pPreviousPage,
     SdPage* pPage,
-    const String& sPageName,
+    const OUString& sPageName,
     sal_uInt16 nInsertionPoint,
     sal_Bool bIsPageBack,
     sal_Bool bIsPageObj)
diff --git a/sd/source/core/drawdoc3.cxx b/sd/source/core/drawdoc3.cxx
index d993bf3..4f51b84 100644
--- a/sd/source/core/drawdoc3.cxx
+++ b/sd/source/core/drawdoc3.cxx
@@ -241,11 +241,11 @@ SdDrawDocument* SdDrawDocument::OpenBookmarkDoc(SfxMedium& rMedium)
 }
 
 // Opens a bookmark document
-SdDrawDocument* SdDrawDocument::OpenBookmarkDoc(const String& rBookmarkFile)
+SdDrawDocument* SdDrawDocument::OpenBookmarkDoc(const OUString& rBookmarkFile)
 {
     SdDrawDocument* pBookmarkDoc = NULL;
 
-    if (maBookmarkFile != rBookmarkFile && rBookmarkFile.Len())
+    if (!rBookmarkFile.isEmpty() && maBookmarkFile != rBookmarkFile)
     {
         SfxMedium* pMedium = new SfxMedium( rBookmarkFile, STREAM_READ );
         pBookmarkDoc = OpenBookmarkDoc(*pMedium);
@@ -1352,7 +1352,7 @@ String createNewMasterPageLayoutName(const SdDrawDocument& rDoc)
 }
 
 void SdDrawDocument::SetMasterPage(sal_uInt16 nSdPageNum,
-                                   const String& rLayoutName,
+                                   const OUString& rLayoutName,
                                    SdDrawDocument* pSourceDoc,
                                    sal_Bool bMaster,
                                    sal_Bool bCheckMasters)
@@ -1386,7 +1386,7 @@ void SdDrawDocument::SetMasterPage(sal_uInt16 nSdPageNum,
         sal_Bool bLayoutReloaded = sal_False;   // Wurde ex. Layout wieder geladen?
 
         // LayoutName, Page and Notes page
-        if (rLayoutName.Len() == 0)
+        if (rLayoutName.isEmpty())
         {
             // No LayoutName: take first MasterPage
             pMaster = (SdPage*) pSourceDoc->GetMasterSdPage(0, PK_STANDARD);
diff --git a/sd/source/core/drawdoc4.cxx b/sd/source/core/drawdoc4.cxx
index 0951f61..ab8064c 100644
--- a/sd/source/core/drawdoc4.cxx
+++ b/sd/source/core/drawdoc4.cxx
@@ -123,14 +123,14 @@ void SdDrawDocument::CreateLayoutTemplates()
 {
     SdStyleSheetPool*       pSSPool = (SdStyleSheetPool*)GetStyleSheetPool();
     SfxStyleSheetBase*      pSheet = NULL;
-    String                  aHelpFile;
-    String                  aStdName = SD_RESSTR(STR_STANDARD_STYLESHEET_NAME);
+    OUString                aHelpFile;
+    OUString                aStdName(SD_RESSTR(STR_STANDARD_STYLESHEET_NAME));
 
     // Default style
 
     sal_uInt16 nMask = SFXSTYLEBIT_AUTO;
 
-    String aName(aStdName);
+    OUString aName(aStdName);
     pSheet = &(pSSPool->Make(aName, SD_STYLE_FAMILY_GRAPHICS, nMask));
     pSheet->SetHelpId( aHelpFile, HID_STANDARD_STYLESHEET_NAME );
     SfxItemSet& rISet = pSheet->GetItemSet();
@@ -147,7 +147,7 @@ void SdDrawDocument::CreateLayoutTemplates()
 
                     // Line attributes (Extended OutputDevice)
     rISet.Put(XLineStyleItem(XLINE_SOLID));
-    rISet.Put(XLineColorItem(String(), RGB_Color(COL_DEFAULT_SHAPE_STROKE)));
+    rISet.Put(XLineColorItem(OUString(), RGB_Color(COL_DEFAULT_SHAPE_STROKE)));
     rISet.Put(XLineWidthItem(0));
     rISet.Put(XLineDashItem(pPool,aNullDash));
     rISet.Put(XLineStartItem(pPool,aNullPolyPolygon));
@@ -160,7 +160,7 @@ void SdDrawDocument::CreateLayoutTemplates()
 
                     // Fill attributes (Extended OutputDevice)
     rISet.Put(XFillStyleItem(XFILL_SOLID));
-    rISet.Put(XFillColorItem(String(), RGB_Color(COL_DEFAULT_SHAPE_FILLING)));
+    rISet.Put(XFillColorItem(OUString(), RGB_Color(COL_DEFAULT_SHAPE_FILLING)));
 
     rISet.Put( XFillGradientItem( aNullGrad) );
     rISet.Put(XFillHatchItem(pPool,aNullHatch));
@@ -257,7 +257,7 @@ void SdDrawDocument::CreateLayoutTemplates()
     pISet = &pSheet->GetItemSet();
 
     pISet->Put(XLineStyleItem(XLINE_SOLID));
-    pISet->Put(XLineColorItem(String(), RGB_Color(COL_BLACK)));
+    pISet->Put(XLineColorItem(OUString(), RGB_Color(COL_BLACK)));
     pISet->Put(XLineWidthItem(150));
 
     ::basegfx::B2DPolygon aArrow;
@@ -291,7 +291,7 @@ void SdDrawDocument::CreateLayoutTemplates()
     pISet = &pSheet->GetItemSet();
 
     pISet->Put(XFillStyleItem(XFILL_NONE));
-    pISet->Put(XLineColorItem(String(), RGB_Color(COL_BLACK)));
+    pISet->Put(XLineColorItem(OUString(), RGB_Color(COL_BLACK)));
 
     // Object no fill no line
 
@@ -367,7 +367,7 @@ void SdDrawDocument::CreateLayoutTemplates()
     pISet->Put(SvxFontHeightItem(1551, 100, EE_CHAR_FONTHEIGHT ));      // 44 pt
 
     // Title1
-    aName = String(SdResId(STR_POOLSHEET_TITLE1));
+    aName = SD_RESSTR(STR_POOLSHEET_TITLE1);
     pSheet = &(pSSPool->Make(aName, SD_STYLE_FAMILY_GRAPHICS, nMask));
     pSheet->SetParent(aStdName);
     pSheet->SetHelpId( aHelpFile, HID_POOLSHEET_TITLE1 );
@@ -375,7 +375,7 @@ void SdDrawDocument::CreateLayoutTemplates()
 
     pISet->Put(XLineStyleItem(XLINE_NONE));
     pISet->Put(XFillStyleItem(XFILL_SOLID));
-    pISet->Put(XFillColorItem(String(), RGB_Color(COL_CYAN)));
+    pISet->Put(XFillColorItem(OUString(), RGB_Color(COL_CYAN)));
 
     pISet->Put(SdrShadowItem(sal_True));
     pISet->Put(SdrShadowColorItem(RGB_Color(COL_GRAY)));
@@ -388,7 +388,7 @@ void SdDrawDocument::CreateLayoutTemplates()
 
     // Title2
 
-    aName = String(SdResId(STR_POOLSHEET_TITLE2));
+    aName = SD_RESSTR(STR_POOLSHEET_TITLE2);
     pSheet = &(pSSPool->Make(aName, SD_STYLE_FAMILY_GRAPHICS, nMask));
     pSheet->SetParent(aStdName);
     pSheet->SetHelpId( aHelpFile, HID_POOLSHEET_TITLE2 );
@@ -399,7 +399,7 @@ void SdDrawDocument::CreateLayoutTemplates()
     // Don't get color from the color table, because the color might have been
     // deleted or changed there
     Color aOrange4(255, 204, 153);
-    pISet->Put(XFillColorItem(String(), aOrange4));
+    pISet->Put(XFillColorItem(OUString(), aOrange4));
 
     pISet->Put(SdrShadowItem(sal_True));
     pISet->Put(SdrShadowColorItem(RGB_Color(COL_GRAY)));
@@ -432,7 +432,7 @@ void SdDrawDocument::CreateLayoutTemplates()
                                                 // Paragraph margin below: 2,1 mm
 
     // Headline1
-    aName = String(SdResId(STR_POOLSHEET_HEADLINE1));
+    aName = SD_RESSTR(STR_POOLSHEET_HEADLINE1);
     pSheet = &(pSSPool->Make(aName, SD_STYLE_FAMILY_GRAPHICS, nMask));
     pSheet->SetParent(aStdName);
     pSheet->SetHelpId( aHelpFile, HID_POOLSHEET_HEADLINE1 );
@@ -449,7 +449,7 @@ void SdDrawDocument::CreateLayoutTemplates()
                                                 // Paragraph margin below: 2,1 mm
 
     // Headline2
-    aName = String(SdResId(STR_POOLSHEET_HEADLINE2));
+    aName = SD_RESSTR(STR_POOLSHEET_HEADLINE2);
     pSheet = &(pSSPool->Make(aName, SD_STYLE_FAMILY_GRAPHICS, nMask));
     pSheet->SetParent(aStdName);
     pSheet->SetHelpId( aHelpFile, HID_POOLSHEET_HEADLINE2 );
@@ -474,7 +474,7 @@ void SdDrawDocument::CreateLayoutTemplates()
     pISet = &pSheet->GetItemSet();
 
     pISet->Put(XFillStyleItem(XFILL_NONE));
-    pISet->Put(XLineColorItem(String(), RGB_Color(COL_BLACK)));
+    pISet->Put(XLineColorItem(OUString(), RGB_Color(COL_BLACK)));
 
     pISet->Put(SvxFontHeightItem(423, 100, EE_CHAR_FONTHEIGHT ));         // 12 pt
 
@@ -486,7 +486,7 @@ void SdDrawDocument::CreateLayoutTemplates()
     pISet->Put(SdrMeasureShowUnitItem(true));
 
     // Generate presentation templates for default layout.
-    String aPrefix = SD_RESSTR(STR_LAYOUT_DEFAULT_NAME);
+    OUString aPrefix = SD_RESSTR(STR_LAYOUT_DEFAULT_NAME);
     pSSPool->CreateLayoutStyleSheets(aPrefix);
 }
 
@@ -496,7 +496,7 @@ static Any implMakeSolidCellStyle( SdStyleSheetPool* pSSPool, const OUString& rN
     pSheet->SetParent(rParent);
     SfxItemSet* pISet = &pSheet->GetItemSet();
     pISet->Put(XFillStyleItem(XFILL_SOLID));
-    pISet->Put(XFillColorItem(String(), rColor));
+    pISet->Put(XFillColorItem(OUString(), rColor));
 
     return Any( Reference< XStyle >( static_cast< XWeak* >( pSheet ), UNO_QUERY ) );
 }
@@ -530,7 +530,7 @@ void SdDrawDocument::CreateDefaultCellStyles()
 {
     SdStyleSheetPool*       pSSPool = static_cast< SdStyleSheetPool* >(GetStyleSheetPool());
     SfxStyleSheetBase*      pSheet = NULL;
-    String                  aHelpFile;
+    OUString                aHelpFile;
 
     Reference< XNameContainer > xTableFamily( pSSPool->getByName( "table" ), UNO_QUERY );
 
@@ -553,7 +553,7 @@ void SdDrawDocument::CreateDefaultCellStyles()
     XHatch    aNullHatch(aNullCol);
 
     rISet.Put(XFillStyleItem(XFILL_SOLID));
-    rISet.Put(XFillColorItem(String(), RGB_Color(0x00ccccff)));
+    rISet.Put(XFillColorItem(OUString(), RGB_Color(0x00ccccff)));
 
     Font aLatinFont, aCJKFont, aCTLFont;
 
@@ -1010,25 +1010,25 @@ void SdDrawDocument::RestoreLayerNames()
 
         if (pLayer)
         {
-            String aLayerName(pLayer->GetName());
+            OUString aLayerName(pLayer->GetName());
 
-            if (aLayerName.EqualsAscii( "LAYER_LAYOUT" ))
+            if (aLayerName == "LAYER_LAYOUT")
             {
                 pLayer->SetName(SD_RESSTR(STR_LAYER_LAYOUT));
             }
-            else if (aLayerName.EqualsAscii( "LAYER_BCKGRND" ))
+            else if (aLayerName == "LAYER_BCKGRND")
             {
                 pLayer->SetName(SD_RESSTR(STR_LAYER_BCKGRND));
             }
-            else if (aLayerName.EqualsAscii( "LAYER_BACKGRNDOBJ" ))
+            else if (aLayerName == "LAYER_BACKGRNDOBJ")
             {
                 pLayer->SetName(SD_RESSTR(STR_LAYER_BCKGRNDOBJ));
             }
-            else if (aLayerName.EqualsAscii( "LAYER_CONTROLS" ))
+            else if (aLayerName == "LAYER_CONTROLS")
             {
                 pLayer->SetName(SD_RESSTR(STR_LAYER_CONTROLS));
             }
-            else if (aLayerName.EqualsAscii( "LAYER_MEASURELINES" ))
+            else if (aLayerName == "LAYER_MEASURELINES")
             {
                 pLayer->SetName(SD_RESSTR(STR_LAYER_MEASURELINES));
             }
@@ -1037,18 +1037,18 @@ void SdDrawDocument::RestoreLayerNames()
 }
 
 // Return formatted page number (1, I, i, a, etc.)
-String SdDrawDocument::CreatePageNumValue(sal_uInt16 nNum) const
+OUString SdDrawDocument::CreatePageNumValue(sal_uInt16 nNum) const
 {
-    String aPageNumValue;
+    OUString aPageNumValue;
     sal_Bool bUpper = sal_False;
 
     switch (mePageNumType)
     {
         case SVX_CHARS_UPPER_LETTER:
-            aPageNumValue += (sal_Unicode)(char)((nNum - 1) % 26 + 'A');
+            aPageNumValue += OUString( (sal_Unicode)(char)((nNum - 1) % 26 + 'A') );
             break;
         case SVX_CHARS_LOWER_LETTER:
-            aPageNumValue += (sal_Unicode)(char)((nNum - 1) % 26 + 'a');
+            aPageNumValue += OUString( (sal_Unicode)(char)((nNum - 1) % 26 + 'a') );
             break;
         case SVX_ROMAN_UPPER:
             bUpper = sal_True;
@@ -1056,14 +1056,13 @@ String SdDrawDocument::CreatePageNumValue(sal_uInt16 nNum) const
             aPageNumValue += SvxNumberFormat::CreateRomanString(nNum, bUpper);
             break;
         case SVX_NUMBER_NONE:
-            aPageNumValue.Erase();
-            aPageNumValue += sal_Unicode(' ');
+            aPageNumValue = OUString(" ");
             break;
         default:
             aPageNumValue += OUString::number(nNum);
     }
 
-    return(aPageNumValue);
+    return aPageNumValue;
 }
 
 
@@ -1071,14 +1070,15 @@ String SdDrawDocument::CreatePageNumValue(sal_uInt16 nNum) const
 // Rename layout template
 // Keep in mind that rOldLayoutName contains the _complete_ name of the layout
 // (including ~LT~). This is unlike rNewName.
-void SdDrawDocument::RenameLayoutTemplate(const String& rOldLayoutName, const String& rNewName)
+void SdDrawDocument::RenameLayoutTemplate(const OUString& rOldLayoutName, const OUString& rNewName)
 {
-    String aOldName(rOldLayoutName);
-    sal_uInt16 nPos = aOldName.SearchAscii( SD_LT_SEPARATOR );
+    OUString aSep(SD_LT_SEPARATOR);
+    OUString aOldName(rOldLayoutName);
+    sal_Int32 nPos = aOldName.indexOf( aSep );
 
     // erase everything after '~LT~'
-    aOldName.Erase(nPos + sizeof(SD_LT_SEPARATOR) - 1 );
-    sal_uInt16 nLen = aOldName.Len();
+    if (nPos != -1)
+        aOldName = aOldName.copy(0, nPos + aSep.getLength());
 
     std::vector<StyleReplaceData> aReplList;
     SfxStyleSheetIterator aIter(mxStyleSheetPool.get(), SD_STYLE_FAMILY_MASTERPAGE);
@@ -1086,13 +1086,12 @@ void SdDrawDocument::RenameLayoutTemplate(const String& rOldLayoutName, const St
 
     while (pSheet)
     {
-        String aSheetName = pSheet->GetName();
+        OUString aSheetName = pSheet->GetName();
 
         // if the sheetname starts with aOldName + "~LT~"
-        if (aSheetName.Match(aOldName) == nLen)
+        if (aSheetName.startsWith(aOldName))
         {
-            aSheetName.Erase(0, nLen - sizeof(SD_LT_SEPARATOR) + 1 );
-            aSheetName.Insert(rNewName, 0);
+            aSheetName = aSheetName.replaceAt(0, aOldName.getLength() - aSep.getLength(), rNewName);
 
             StyleReplaceData aReplData;
             aReplData.nFamily     = pSheet->GetFamily();
@@ -1109,9 +1108,8 @@ void SdDrawDocument::RenameLayoutTemplate(const String& rOldLayoutName, const St
 
     // Now set the layout name of the drawing and the notes page, as well as
     // their master pages.
-    String aPageLayoutName(rNewName);
-    aPageLayoutName.AppendAscii( SD_LT_SEPARATOR );
-    aPageLayoutName += SD_RESSTR(STR_LAYOUT_OUTLINE);
+    OUString aPageLayoutName(rNewName);
+    aPageLayoutName += aSep + SD_RESSTR(STR_LAYOUT_OUTLINE);
 
     // Inform all text objects on pages that use the renamed layout and set the
     // new name.
@@ -1119,7 +1117,7 @@ void SdDrawDocument::RenameLayoutTemplate(const String& rOldLayoutName, const St
     for (nPage = 0; nPage < GetPageCount(); nPage++)
     {
         SdPage* pPage = (SdPage*) GetPage(nPage);
-        String aTemp(pPage->GetLayoutName());
+        OUString aTemp(pPage->GetLayoutName());
 
         if (aTemp == rOldLayoutName)
         {
@@ -1161,7 +1159,7 @@ void SdDrawDocument::RenameLayoutTemplate(const String& rOldLayoutName, const St
     for (nPage = 0; nPage < GetMasterPageCount(); nPage++)
     {
         SdPage* pPage = (SdPage*) GetMasterPage(nPage);
-        String aTemp(pPage->GetLayoutName());
+        OUString aTemp(pPage->GetLayoutName());
 
         if (aTemp == rOldLayoutName)
         {
diff --git a/sd/source/core/pglink.cxx b/sd/source/core/pglink.cxx
index 0aacfc4..81318d1 100644
--- a/sd/source/core/pglink.cxx
+++ b/sd/source/core/pglink.cxx
@@ -31,8 +31,8 @@
 |*
 \************************************************************************/
 
-SdPageLink::SdPageLink(SdPage* pPg, const String& rFileName,
-                       const String& rBookmarkName) :
+SdPageLink::SdPageLink(SdPage* pPg, const OUString& rFileName,
+                       const OUString& rBookmarkName) :
     ::sfx2::SvBaseLink( ::sfx2::LINKUPDATE_ONCALL, FORMAT_FILE),
     pPage(pPg)
 {
@@ -126,8 +126,8 @@ SdPageLink::~SdPageLink()
 void SdPageLink::Closed()
 {
     // the connection is closed
-    pPage->SetFileName(String());
-    pPage->SetBookmarkName(String());
+    pPage->SetFileName(OUString());
+    pPage->SetBookmarkName(OUString());
 
     SvBaseLink::Closed();
 }
diff --git a/sd/source/core/sdpage.cxx b/sd/source/core/sdpage.cxx
index 5c431fc..47dbc71 100644
--- a/sd/source/core/sdpage.cxx
+++ b/sd/source/core/sdpage.cxx
@@ -452,8 +452,8 @@ SdrObject* SdPage::CreatePresObj(PresObjKind eObjKind, sal_Bool bVertical, const
             pSdrObj->SetLogicRect(rRect);
         }
 
-        String aString = GetPresObjText(eObjKind);
-        if( (aString.Len() || bForceText) && pSdrObj->ISA(SdrTextObj) )
+        OUString aString = GetPresObjText(eObjKind);
+        if( (!aString.isEmpty() || bForceText) && pSdrObj->ISA(SdrTextObj) )
         {
             SdrOutliner* pOutliner = ( (SdDrawDocument*) GetModel() )->GetInternalOutliner();
 
@@ -518,9 +518,7 @@ SdrObject* SdPage::CreatePresObj(PresObjKind eObjKind, sal_Bool bVertical, const
         {
             for (sal_uInt16 nLevel = 1; nLevel < 10; nLevel++)
             {
-                String aName(maLayoutName);
-                aName += sal_Unicode( ' ' );
-                aName += OUString::number( nLevel );
+                OUString aName( maLayoutName + " " + OUString::number( nLevel ) );
                 SfxStyleSheet* pSheet = (SfxStyleSheet*)pModel->GetStyleSheetPool()->Find(aName, SD_STYLE_FAMILY_MASTERPAGE);
                 DBG_ASSERT(pSheet, "StyleSheet for outline object not found");
                 if (pSheet)
@@ -602,9 +600,7 @@ SfxStyleSheet* SdPage::GetStyleSheetForPresObj(PresObjKind eObjKind) const
     {
         case PRESOBJ_OUTLINE:
         {
-            aName = GetLayoutName();
-            aName += sal_Unicode( ' ' );
-            aName += OUString::number( 1 );
+            aName = GetLayoutName() + " " + OUString::number( 1 );
         }
         break;
 
@@ -1870,13 +1866,12 @@ void SdPage::ScaleObjects(const Size& rNewPageSize, const Rectangle& rNewBorderR
                         }
                         else if (pObj == GetPresObj(PRESOBJ_OUTLINE, nIndexOutline))
                         {
-                            String aName(GetLayoutName());
-                            aName += sal_Unicode( ' ' );
+                            OUString aName(GetLayoutName());
+                            aName += " ";
 
-                            for (sal_uInt16 i=1; i<=9; i++)
+                            for (sal_Int32 i=1; i<=9; i++)
                             {
-                                String sLayoutName(aName);
-                                sLayoutName += OUString::number( (sal_Int32)i );
+                                OUString sLayoutName( aName + OUString::number( i ) );
                                 SfxStyleSheet* pOutlineSheet = (SfxStyleSheet*)((SdDrawDocument*) pModel)->GetStyleSheetPool()->Find(sLayoutName, SD_STYLE_FAMILY_MASTERPAGE);
 
                                 if (pOutlineSheet)
@@ -2028,9 +2023,7 @@ SdrObject* convertPresentationObjectImpl( SdPage& rPage, SdrObject* pSourceObj,
             for (sal_uInt16 nLevel = 1; nLevel < 10; nLevel++)
             {
                 // assign new template
-                String aName(rPage.GetLayoutName());
-                aName += sal_Unicode( ' ' );
-                aName += OUString::number( nLevel );
+                OUString aName( rPage.GetLayoutName() + " " + OUString::number( nLevel ) );
                 SfxStyleSheet* pSheet = static_cast<SfxStyleSheet*>( pModel->GetStyleSheetPool()->Find(aName, SD_STYLE_FAMILY_MASTERPAGE) );
 
                 if (pSheet)
@@ -2304,7 +2297,7 @@ void SdPage::InsertPresObj(SdrObject* pObj, PresObjKind eKind )
 |*
 \************************************************************************/
 
-void SdPage::SetObjText(SdrTextObj* pObj, SdrOutliner* pOutliner, PresObjKind eObjKind, const String& rString )
+void SdPage::SetObjText(SdrTextObj* pObj, SdrOutliner* pOutliner, PresObjKind eObjKind, const OUString& rString )
 {
     if ( pObj )
     {
@@ -2463,10 +2456,10 @@ void SdPage::SetLayoutName(OUString aName)
 |*
 \************************************************************************/
 
-const String& SdPage::GetName() const
+const OUString& SdPage::GetName() const
 {
-    String aCreatedPageName( maCreatedPageName );
-    if (GetRealName().Len() == 0)
+    OUString aCreatedPageName( maCreatedPageName );
+    if (GetRealName().isEmpty())
     {
         if ((mePageKind == PK_STANDARD || mePageKind == PK_NOTES) && !mbMaster)
         {
@@ -2474,7 +2467,7 @@ const String& SdPage::GetName() const
             sal_uInt16  nNum = (GetPageNum() + 1) / 2;
 
             aCreatedPageName = SD_RESSTR(STR_PAGE);
-            aCreatedPageName += sal_Unicode( ' ' );
+            aCreatedPageName += " ";
             if( GetModel()->GetPageNumType() == SVX_NUMBER_NONE )
             {
                 // if the document has number none as a formating
@@ -2502,14 +2495,14 @@ const String& SdPage::GetName() const
 
     if (mePageKind == PK_NOTES)
     {
-        aCreatedPageName += sal_Unicode( ' ' );
+        aCreatedPageName += " ";
         aCreatedPageName += SD_RESSTR(STR_NOTES);
     }
     else if (mePageKind == PK_HANDOUT && mbMaster)
     {
-        aCreatedPageName += OUString(" (");
-        aCreatedPageName += SdResId(STR_HANDOUT).toString();
-        aCreatedPageName += sal_Unicode( ')' );
+        aCreatedPageName += " (";
+        aCreatedPageName += SD_RESSTR(STR_HANDOUT);
+        aCreatedPageName += ")";
     }
 
     const_cast< SdPage* >(this)->maCreatedPageName = aCreatedPageName;
@@ -2532,9 +2525,9 @@ Orientation SdPage::GetOrientation() const
 |*
 \************************************************************************/
 
-String SdPage::GetPresObjText(PresObjKind eObjKind) const
+OUString SdPage::GetPresObjText(PresObjKind eObjKind) const
 {
-    String aString;
+    OUString aString;
 
     if (eObjKind == PRESOBJ_TITLE)
     {
@@ -2601,7 +2594,7 @@ String SdPage::GetPresObjText(PresObjKind eObjKind) const
         aString = SD_RESSTR( STR_PRESOBJ_TABLE );
     }
 
-    return(aString);
+    return aString;
 }
 
 extern uno::Reference< uno::XInterface > createUnoPageImpl( SdPage* pPage );
@@ -2632,9 +2625,9 @@ SdPage* SdPage::getImplementation( const ::com::sun::star::uno::Reference< ::com
     return 0;
 }
 
-void SdPage::SetName (const String& rName)
+void SdPage::SetName (const OUString& rName)
 {
-    String aOldName = GetName();
+    OUString aOldName( GetName() );
     FmFormPage::SetName (rName);
     static_cast<SdDrawDocument*>(pModel)->UpdatePageRelativeURLs(aOldName, rName);
     ActionChanged();
@@ -2765,9 +2758,9 @@ bool SdPage::RestoreDefaultText( SdrObject* pObj )
             ePresObjKind == PRESOBJ_NOTES   ||
             ePresObjKind == PRESOBJ_TEXT)
         {
-            String aString( GetPresObjText(ePresObjKind) );
+            OUString aString( GetPresObjText(ePresObjKind) );
 
-            if (aString.Len())
+            if (!aString.isEmpty())
             {
                 sal_Bool bVertical = sal_False;
                 OutlinerParaObject* pOldPara = pTextObj->GetOutlinerParaObject();
diff --git a/sd/source/core/sdpage2.cxx b/sd/source/core/sdpage2.cxx
index 96ef7dfe..c6d2f6e 100644
--- a/sd/source/core/sdpage2.cxx
+++ b/sd/source/core/sdpage2.cxx
@@ -74,7 +74,7 @@ extern void NotifyDocumentEvent( SdDrawDocument* pDocument, const OUString& rEve
 |*
 \************************************************************************/
 
-void SdPage::SetPresentationLayout(const String& rLayoutName,
+void SdPage::SetPresentationLayout(const OUString& rLayoutName,
                                    sal_Bool bReplaceStyleSheets,
                                    sal_Bool bSetMasterPage,
                                    sal_Bool bReverseOrder)
diff --git a/sd/source/core/stlfamily.cxx b/sd/source/core/stlfamily.cxx
index ecc4278..e9891e9 100644
--- a/sd/source/core/stlfamily.cxx
+++ b/sd/source/core/stlfamily.cxx
@@ -68,7 +68,7 @@ PresStyleMap& SdStyleFamilyImpl::getStyleSheets()
         maLayoutName = mxMasterPage->GetLayoutName();
 
         OUString aLayoutName( maLayoutName );
-        const sal_uInt16 nLen = aLayoutName.indexOf(SD_LT_SEPARATOR ) + 4;
+        const sal_Int32 nLen = aLayoutName.indexOf(SD_LT_SEPARATOR ) + 4;
         aLayoutName = aLayoutName.copy(0, nLen );
 
         if( (maStyleSheets.empty()) || !(*maStyleSheets.begin()).second->GetName().startsWith( aLayoutName) )
diff --git a/sd/source/core/stlpool.cxx b/sd/source/core/stlpool.cxx
index e84d081..aea4a92 100644
--- a/sd/source/core/stlpool.cxx
+++ b/sd/source/core/stlpool.cxx
@@ -120,10 +120,10 @@ SfxStyleSheetBase* SdStyleSheetPool::Create(const SdStyleSheet& rStyle)
 
 // ----------------------------------------------------------
 
-SfxStyleSheetBase* SdStyleSheetPool::GetTitleSheet(const String& rLayoutName)
+SfxStyleSheetBase* SdStyleSheetPool::GetTitleSheet(const OUString& rLayoutName)
 {
-    String aName(rLayoutName);
-    aName.AppendAscii( SD_LT_SEPARATOR );
+    OUString aName(rLayoutName);
+    aName += SD_LT_SEPARATOR;
     aName += SD_RESSTR(STR_LAYOUT_TITLE);
     SfxStyleSheetBase* pResult = Find(aName, SD_STYLE_FAMILY_MASTERPAGE);
     return pResult;
@@ -136,17 +136,15 @@ SfxStyleSheetBase* SdStyleSheetPool::GetTitleSheet(const String& rLayoutName)
 |*
 \************************************************************************/
 
-void SdStyleSheetPool::CreateOutlineSheetList (const String& rLayoutName, std::vector<SfxStyleSheetBase*> &rOutlineStyles)
+void SdStyleSheetPool::CreateOutlineSheetList (const OUString& rLayoutName, std::vector<SfxStyleSheetBase*> &rOutlineStyles)
 {
-    String aName(rLayoutName);
-    aName.AppendAscii( SD_LT_SEPARATOR );
+    OUString aName(rLayoutName);
+    aName += SD_LT_SEPARATOR;
     aName += SD_RESSTR(STR_LAYOUT_OUTLINE);
 
-    for (sal_uInt16 nSheet = 1; nSheet < 10; nSheet++)
+    for (sal_Int32 nSheet = 1; nSheet < 10; nSheet++)
     {
-        String aFullName(aName);
-        aFullName.Append( sal_Unicode( ' ' ));
-        aFullName.Append( OUString::number( (sal_Int32)nSheet ));
+        OUString aFullName(aName + " " + OUString::number( nSheet ) );
         SfxStyleSheetBase* pSheet = Find(aFullName, SD_STYLE_FAMILY_MASTERPAGE);
 
         if (pSheet)
@@ -160,7 +158,7 @@ void SdStyleSheetPool::CreateOutlineSheetList (const String& rLayoutName, std::v
 |*
 \************************************************************************/
 
-void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bool bCheck /*= sal_False*/ )
+void SdStyleSheetPool::CreateLayoutStyleSheets(const OUString& rLayoutName, sal_Bool bCheck /*= sal_False*/ )
 {
     const sal_uInt16 nUsedMask = SFXSTYLEBIT_ALL & ~SFXSTYLEBIT_USERDEF;
 
@@ -169,9 +167,7 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
 
     SfxStyleSheetBase* pSheet = NULL;
 
-    String aPrefix(rLayoutName);
-    String aSep( SD_LT_SEPARATOR );
-    aPrefix.Insert(aSep);
+    OUString aPrefix(rLayoutName + SD_LT_SEPARATOR);
 
     Font aLatinFont, aCJKFont, aCTLFont;
 
@@ -192,21 +188,16 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
     /**************************************************************************
     * outline levels
     **************************************************************************/
-    String aName(SdResId(STR_LAYOUT_OUTLINE));
+    OUString aName(SD_RESSTR(STR_LAYOUT_OUTLINE));
     OUString aHelpFile;
 
     SfxStyleSheetBase* pParent = NULL;
     SvxLRSpaceItem aSvxLRSpaceItem( EE_PARA_LRSPACE );
     SvxULSpaceItem aSvxULSpaceItem( EE_PARA_ULSPACE );
-    sal_uInt16 nLevel;
 
-    for( nLevel = 1; nLevel < 10; nLevel++)
+    for( sal_Int32 nLevel = 1; nLevel < 10; nLevel++)
     {
-        String aLevelName(aName);
-        aLevelName.Append( sal_Unicode( ' ' ));
-        aLevelName.Append( OUString::number( sal_Int32( nLevel )));
-
-        aLevelName.Insert(aPrefix, 0);
+        OUString aLevelName( aPrefix + aName + " " + OUString::number( nLevel ) ) ;
 
         if (!Find(aLevelName, SD_STYLE_FAMILY_MASTERPAGE))
         {
@@ -214,7 +205,7 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
             pSheet = &Make(aLevelName, SD_STYLE_FAMILY_MASTERPAGE,nUsedMask);
             pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_OUTLINE + nLevel );
 
-            pSheet->SetParent( String() );
+            pSheet->SetParent( OUString() );
 
             // attributing for level 1, the others levels inherit
             if (nLevel == 1)
@@ -302,13 +293,9 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
     if( bCreated )
     {
         pParent = NULL;
-        for (nLevel = 1; nLevel < 10; nLevel++)
+        for (sal_Int32 nLevel = 1; nLevel < 10; nLevel++)
         {
-            String aLevelName(aName);
-            aLevelName.Append( sal_Unicode( ' ' ));
-            aLevelName.Append( OUString::number( sal_Int32( nLevel )));
-
-            aLevelName.Insert(aPrefix, 0);
+            OUString aLevelName( aPrefix + aName + " " + OUString::number( nLevel ) );
 
             pSheet = Find(aLevelName, SD_STYLE_FAMILY_MASTERPAGE);
 
@@ -326,8 +313,7 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
     /**************************************************************************
     * Title
     **************************************************************************/
-    aName = SD_RESSTR(STR_LAYOUT_TITLE);
-    aName.Insert(aPrefix, 0);
+    aName = aPrefix + SD_RESSTR(STR_LAYOUT_TITLE);
 
     if (!Find(aName, SD_STYLE_FAMILY_MASTERPAGE))
     {
@@ -335,7 +321,7 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
 
         pSheet = &Make(aName, SD_STYLE_FAMILY_MASTERPAGE,nUsedMask);
         pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_TITLE );
-        pSheet->SetParent(String());
+        pSheet->SetParent( OUString() );
         SfxItemSet& rTitleSet = pSheet->GetItemSet();
         rTitleSet.Put(XLineStyleItem(XLINE_NONE));
         rTitleSet.Put(XFillStyleItem(XFILL_NONE));
@@ -371,8 +357,7 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
     /**************************************************************************
     * Subtitle
     **************************************************************************/
-    aName = SD_RESSTR(STR_LAYOUT_SUBTITLE);
-    aName.Insert(aPrefix, 0);
+    aName = aPrefix + SD_RESSTR(STR_LAYOUT_SUBTITLE);
 
     if (!Find(aName, SD_STYLE_FAMILY_MASTERPAGE))
     {
@@ -380,7 +365,7 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
 
         pSheet = &Make(aName, SD_STYLE_FAMILY_MASTERPAGE,nUsedMask);
         pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_SUBTITLE );
-        pSheet->SetParent(String());
+        pSheet->SetParent( OUString() );
         SfxItemSet& rSubtitleSet = pSheet->GetItemSet();
         rSubtitleSet.Put(XLineStyleItem(XLINE_NONE));
         rSubtitleSet.Put(XFillStyleItem(XFILL_NONE));
@@ -419,8 +404,7 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
     /**************************************************************************
     * Notes
     **************************************************************************/
-    aName = SD_RESSTR(STR_LAYOUT_NOTES);
-    aName.Insert(aPrefix, 0);
+    aName = aPrefix + SD_RESSTR(STR_LAYOUT_NOTES);
 
     if (!Find(aName, SD_STYLE_FAMILY_MASTERPAGE))
     {
@@ -428,7 +412,7 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
 
         pSheet = &Make(aName, SD_STYLE_FAMILY_MASTERPAGE,nUsedMask);
         pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_NOTES );
-        pSheet->SetParent(String());
+        pSheet->SetParent( OUString() );
         SfxItemSet& rNotesSet = pSheet->GetItemSet();
         rNotesSet.Put(XLineStyleItem(XLINE_NONE));
         rNotesSet.Put(XFillStyleItem(XFILL_NONE));
@@ -463,8 +447,7 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
     /**************************************************************************
     * Background objects
     **************************************************************************/
-    aName = SD_RESSTR(STR_LAYOUT_BACKGROUNDOBJECTS);
-    aName.Insert(aPrefix, 0);
+    aName = aPrefix + SD_RESSTR(STR_LAYOUT_BACKGROUNDOBJECTS);
 
     if (!Find(aName, SD_STYLE_FAMILY_MASTERPAGE))
     {
@@ -472,7 +455,7 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
 
         pSheet = &Make(aName, SD_STYLE_FAMILY_MASTERPAGE,nUsedMask);
         pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_BACKGROUNDOBJECTS );
-        pSheet->SetParent(String());
+        pSheet->SetParent( OUString() );
         SfxItemSet& rBackgroundObjectsSet = pSheet->GetItemSet();
         rBackgroundObjectsSet.Put(SdrShadowItem(sal_False));
         rBackgroundObjectsSet.Put(SdrShadowColorItem(Color(COL_GRAY)));
@@ -486,8 +469,7 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
     /**************************************************************************
     * Background
     **************************************************************************/
-    aName = SD_RESSTR(STR_LAYOUT_BACKGROUND);
-    aName.Insert(aPrefix, 0);
+    aName = aPrefix + SD_RESSTR(STR_LAYOUT_BACKGROUND);
 
     if (!Find(aName, SD_STYLE_FAMILY_MASTERPAGE))
     {
@@ -495,7 +477,7 @@ void SdStyleSheetPool::CreateLayoutStyleSheets(const String& rLayoutName, sal_Bo
 
         pSheet = &Make(aName, SD_STYLE_FAMILY_MASTERPAGE,nUsedMask);
         pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_BACKGROUND );
-        pSheet->SetParent(String());
+        pSheet->SetParent( OUString() );
         SfxItemSet& rBackgroundSet = pSheet->GetItemSet();
         rBackgroundSet.Put(XLineStyleItem(XLINE_NONE));
         rBackgroundSet.Put(XFillStyleItem(XFILL_NONE));
@@ -603,7 +585,7 @@ void SdStyleSheetPool::CopySheets(SdStyleSheetPool& rSourcePool, SfxStyleFamily
 
     sal_uInt32 nCount = rSourcePool.aStyles.size();
 
-    std::vector< std::pair< rtl::Reference< SfxStyleSheetBase >, String > > aNewStyles;
+    std::vector< std::pair< rtl::Reference< SfxStyleSheetBase >, OUString > > aNewStyles;
 
     for (sal_uInt32 n = 0; n < nCount; n++)
     {
@@ -611,7 +593,7 @@ void SdStyleSheetPool::CopySheets(SdStyleSheetPool& rSourcePool, SfxStyleFamily
 
         if( xSheet->GetFamily() == eFamily )
         {
-            String aName( xSheet->GetName() );
+            OUString aName( xSheet->GetName() );
             if ( !Find( aName, eFamily ) )
             {
                 rtl::Reference< SfxStyleSheetBase > xNewSheet( &Make( aName, eFamily ) );
@@ -619,9 +601,9 @@ void SdStyleSheetPool::CopySheets(SdStyleSheetPool& rSourcePool, SfxStyleFamily
                 xNewSheet->SetMask( xSheet->GetMask() );
 
                 // Also set parent relation for copied style sheets
-                String aParent( xSheet->GetParent() );
-                if( aParent.Len() )
-                    aNewStyles.push_back( std::pair< rtl::Reference< SfxStyleSheetBase >, String >( xNewSheet, aParent ) );
+                OUString aParent( xSheet->GetParent() );
+                if( !aParent.isEmpty() )
+                    aNewStyles.push_back( std::pair< rtl::Reference< SfxStyleSheetBase >, OUString >( xNewSheet, aParent ) );
 
                 xNewSheet->SetHelpId( aHelpFile, xSheet->GetHelpId( aHelpFile ) );
                 xNewSheet->GetItemSet().Put( xSheet->GetItemSet() );
@@ -632,7 +614,7 @@ void SdStyleSheetPool::CopySheets(SdStyleSheetPool& rSourcePool, SfxStyleFamily
     }
 
     // set parents on newly added stylesheets
-    std::vector< std::pair< rtl::Reference< SfxStyleSheetBase >, String > >::iterator aIter;
+    std::vector< std::pair< rtl::Reference< SfxStyleSheetBase >, OUString > >::iterator aIter;
     for( aIter = aNewStyles.begin(); aIter != aNewStyles.end(); ++aIter )
     {
         DBG_ASSERT( rSourcePool.Find( (*aIter).second, eFamily ), "StyleSheet has invalid parent: Family mismatch" );
@@ -652,15 +634,15 @@ void SdStyleSheetPool::CopySheets(SdStyleSheetPool& rSourcePool, SfxStyleFamily
 |*
 \************************************************************************/
 
-void SdStyleSheetPool::CopyLayoutSheets(const String& rLayoutName, SdStyleSheetPool& rSourcePool, SdStyleSheetVector& rCreatedSheets)
+void SdStyleSheetPool::CopyLayoutSheets(const OUString& rLayoutName, SdStyleSheetPool& rSourcePool, SdStyleSheetVector& rCreatedSheets)
 {
     SfxStyleSheetBase* pSheet = NULL;
 
-    std::vector<String> aNameList;
+    std::vector<OUString> aNameList;
     CreateLayoutSheetNames(rLayoutName,aNameList);
 
     OUString sEmpty;
-    for (std::vector<String>::const_iterator it = aNameList.begin(); it != aNameList.end(); ++it)
+    for (std::vector<OUString>::const_iterator it = aNameList.begin(); it != aNameList.end(); ++it)
     {
         pSheet = Find(*it, SD_STYLE_FAMILY_MASTERPAGE);
         if (!pSheet)
@@ -712,43 +694,19 @@ void SdStyleSheetPool::CopyLayoutSheets(const String& rLayoutName, SdStyleSheetP
 |*
 \************************************************************************/
 
-void SdStyleSheetPool::CreateLayoutSheetNames(const String& rLayoutName, std::vector<String> &aNameList) const
+void SdStyleSheetPool::CreateLayoutSheetNames(const OUString& rLayoutName, std::vector<OUString> &aNameList) const
 {
-    String aPrefix(rLayoutName);
-    String aSep( SD_LT_SEPARATOR );
-    aPrefix.Insert(aSep);
-
-    String aName(SdResId(STR_LAYOUT_OUTLINE));
-    String aStr;
-
-    for (sal_uInt16 nLevel = 1; nLevel < 10; nLevel++)
-    {
-        aStr = String( aPrefix );
-        aStr.Append(aName);
-        aStr.Append( sal_Unicode( ' ' ));
-        aStr.Append( OUString::number( sal_Int32( nLevel )));
-        aNameList.push_back(aStr);
-    }
-
-    aStr = SD_RESSTR(STR_LAYOUT_TITLE);
-    aStr.Insert(aPrefix, 0);
-    aNameList.push_back(aStr);
-
-    aStr = SD_RESSTR(STR_LAYOUT_SUBTITLE);
-    aStr.Insert(aPrefix, 0);
-    aNameList.push_back(aStr);
-
-    aStr = SD_RESSTR(STR_LAYOUT_NOTES);
-    aStr.Insert(aPrefix, 0);
-    aNameList.push_back(aStr);
+    OUString aPrefix(rLayoutName + SD_LT_SEPARATOR);
+    OUString aName(SD_RESSTR(STR_LAYOUT_OUTLINE));
 
-    aStr = SD_RESSTR(STR_LAYOUT_BACKGROUNDOBJECTS);
-    aStr.Insert(aPrefix, 0);
-    aNameList.push_back(aStr);
+    for (sal_Int32 nLevel = 1; nLevel < 10; nLevel++)
+        aNameList.push_back( aPrefix + aName + " " + OUString::number( nLevel ) );
 
-    aStr = SD_RESSTR(STR_LAYOUT_BACKGROUND);
-    aStr.Insert(aPrefix, 0);
-    aNameList.push_back(aStr);
+    aNameList.push_back( aPrefix + SD_RESSTR(STR_LAYOUT_TITLE) );
+    aNameList.push_back( aPrefix + SD_RESSTR(STR_LAYOUT_SUBTITLE) );
+    aNameList.push_back( aPrefix + SD_RESSTR(STR_LAYOUT_NOTES) );
+    aNameList.push_back( aPrefix + SD_RESSTR(STR_LAYOUT_BACKGROUNDOBJECTS) );
+    aNameList.push_back( aPrefix + SD_RESSTR(STR_LAYOUT_BACKGROUND) );
 }
 
 /*************************************************************************
@@ -758,7 +716,7 @@ void SdStyleSheetPool::CreateLayoutSheetNames(const String& rLayoutName, std::ve
 |*
 \************************************************************************/
 
-void SdStyleSheetPool::CreateLayoutSheetList(const String& rLayoutName, SdStyleSheetVector& rLayoutSheets )
+void SdStyleSheetPool::CreateLayoutSheetList(const OUString& rLayoutName, SdStyleSheetVector& rLayoutSheets )
 {
     OUString aLayoutNameWithSep(rLayoutName + OUString(SD_LT_SEPARATOR ));
 
@@ -781,7 +739,7 @@ void SdStyleSheetPool::CreateLayoutSheetList(const String& rLayoutName, SdStyleS
 
 void SdStyleSheetPool::CreatePseudosIfNecessary()
 {
-    String aName;
+    OUString aName;
     OUString aHelpFile;
     SfxStyleSheetBase* pSheet = NULL;
     SfxStyleSheetBase* pParent = NULL;
@@ -792,7 +750,7 @@ void SdStyleSheetPool::CreatePseudosIfNecessary()
     if( (pSheet = Find(aName, SD_STYLE_FAMILY_PSEUDO)) == 0 )
     {
         pSheet = &Make(aName, SD_STYLE_FAMILY_PSEUDO, nUsedMask);
-        pSheet->SetParent( String() );
+        pSheet->SetParent( OUString() );
         ((SfxStyleSheet*)pSheet)->StartListening(*this);
     }
     pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_TITLE );
@@ -801,7 +759,7 @@ void SdStyleSheetPool::CreatePseudosIfNecessary()
     if( (pSheet = Find(aName, SD_STYLE_FAMILY_PSEUDO)) == 0 )
     {
         pSheet = &Make(aName, SD_STYLE_FAMILY_PSEUDO, nUsedMask);
-        pSheet->SetParent(String());
+        pSheet->SetParent( OUString() );
         ((SfxStyleSheet*)pSheet)->StartListening(*this);
     }
     pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_SUBTITLE );
@@ -810,7 +768,7 @@ void SdStyleSheetPool::CreatePseudosIfNecessary()
     if( (pSheet = Find(aName, SD_STYLE_FAMILY_PSEUDO)) == 0 )
     {
         pSheet = &Make(aName, SD_STYLE_FAMILY_PSEUDO, nUsedMask);
-        pSheet->SetParent( String() );
+        pSheet->SetParent( OUString() );
         ((SfxStyleSheet*)pSheet)->StartListening(*this);
     }
     pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_BACKGROUNDOBJECTS );
@@ -819,7 +777,7 @@ void SdStyleSheetPool::CreatePseudosIfNecessary()
     if( (pSheet = Find(aName, SD_STYLE_FAMILY_PSEUDO)) == 0 )
     {
         pSheet = &Make(aName, SD_STYLE_FAMILY_PSEUDO, nUsedMask);
-        pSheet->SetParent( String() );
+        pSheet->SetParent( OUString() );
         ((SfxStyleSheet*)pSheet)->StartListening(*this);
     }
     pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_BACKGROUND );
@@ -828,7 +786,7 @@ void SdStyleSheetPool::CreatePseudosIfNecessary()
     if( (pSheet = Find(aName, SD_STYLE_FAMILY_PSEUDO)) == 0 )
     {
         pSheet = &Make(aName, SD_STYLE_FAMILY_PSEUDO, nUsedMask);
-        pSheet->SetParent( String() );
+        pSheet->SetParent( OUString() );
         ((SfxStyleSheet*)pSheet)->StartListening(*this);
     }
     pSheet->SetHelpId( aHelpFile, HID_PSEUDOSHEET_NOTES );
@@ -836,11 +794,9 @@ void SdStyleSheetPool::CreatePseudosIfNecessary()
     pParent = NULL;
     SetSearchMask(SD_STYLE_FAMILY_PSEUDO);
     aName = SD_RESSTR(STR_PSEUDOSHEET_OUTLINE);
-    for (sal_uInt16 nLevel = 1; nLevel < 10; nLevel++)
+    for (sal_Int32 nLevel = 1; nLevel < 10; nLevel++)
     {
-        String aLevelName(aName);
-        aLevelName.Append( sal_Unicode( ' ' ));
-        aLevelName.Append( OUString::number( sal_Int32( nLevel )));
+        OUString aLevelName( aName + " " + OUString::number( nLevel ) );
 
         if( (pSheet = Find(aLevelName, SD_STYLE_FAMILY_PSEUDO)) == 0 )
         {
@@ -877,12 +833,12 @@ void SdStyleSheetPool::UpdateStdNames()
 
         if( !pStyle->IsUserDefined() )
         {
-            String aOldName     = pStyle->GetName();
+            OUString aOldName   = pStyle->GetName();
             sal_uLong nHelpId   = pStyle->GetHelpId( aHelpFile );
             SfxStyleFamily eFam = pStyle->GetFamily();
 
             sal_Bool bHelpKnown = sal_True;
-            String aNewName;
+            OUString aNewName;
             sal_uInt16 nNameId = 0;
             switch( nHelpId )
             {
@@ -936,12 +892,11 @@ void SdStyleSheetPool::UpdateStdNames()
                     aNewName = SD_RESSTR( nNameId );
                     if( nNameId == STR_PSEUDOSHEET_OUTLINE )
                     {
-                        aNewName.Append( sal_Unicode( ' ' ));
-                        aNewName.Append( OUString::number( sal_Int32( nHelpId - HID_PSEUDOSHEET_OUTLINE )));
+                        aNewName += " " + OUString::number( sal_Int32( nHelpId - HID_PSEUDOSHEET_OUTLINE ) );
                     }
                 }
 
-                if( aNewName.Len() && aNewName != aOldName )
+                if( !aNewName.isEmpty() && aNewName != aOldName )
                 {
                     SfxStyleSheetBase* pSheetFound = Find( aNewName, eFam );
 
diff --git a/sd/source/core/stlsheet.cxx b/sd/source/core/stlsheet.cxx
index 9c22fcb..06ff979 100644
--- a/sd/source/core/stlsheet.cxx
+++ b/sd/source/core/stlsheet.cxx
@@ -451,7 +451,7 @@ SdStyleSheet* SdStyleSheet::GetRealStyleSheet() const
         sal_Int32 nPos = aStyleName.indexOf(aOutlineStr);
         if (nPos >= 0)
         {
-            String aNumStr(aStyleName.copy(aOutlineStr.getLength()));
+            OUString aNumStr(aStyleName.copy(aOutlineStr.getLength()));
             aInternalName = OUString(SdResId(STR_LAYOUT_OUTLINE));
             aInternalName += aNumStr;
         }
diff --git a/sd/source/core/undoanim.cxx b/sd/source/core/undoanim.cxx
index ac0af9a..d52bf4d 100644
--- a/sd/source/core/undoanim.cxx
+++ b/sd/source/core/undoanim.cxx
@@ -197,7 +197,7 @@ struct UndoTransitionImpl
     sal_Bool mbNewTransitionDirection;
     sal_Int32 mnNewTransitionFadeColor;
     double mfNewTransitionDuration;
-    String maNewSoundFile;
+    OUString maNewSoundFile;
     bool mbNewSoundOn;
     bool mbNewLoopSound;
     bool mbNewStopSound;
@@ -207,7 +207,7 @@ struct UndoTransitionImpl
     sal_Bool mbOldTransitionDirection;
     sal_Int32 mnOldTransitionFadeColor;
     double mfOldTransitionDuration;
-    String maOldSoundFile;
+    OUString maOldSoundFile;
     bool mbOldSoundOn;
     bool mbOldLoopSound;
     bool mbOldStopSound;
diff --git a/sd/source/filter/eppt/pptx-text.cxx b/sd/source/filter/eppt/pptx-text.cxx
index c67799b..3942e79 100644
--- a/sd/source/filter/eppt/pptx-text.cxx
+++ b/sd/source/filter/eppt/pptx-text.cxx
@@ -858,7 +858,7 @@ void ParagraphObj::ImplGetNumberingLevel( PPTExBulletProvider& rBuProv, sal_Int1
                             nIndex++;
                             if ( nIndex < aGraphicURL.getLength() )
                             {
-                                OString aUniqueId(OUStringToOString(aGraphicURL.copy(nIndex), RTL_TEXTENCODING_UTF8));
+                                OString aUniqueId( OUStringToOString(aGraphicURL.copy(nIndex), RTL_TEXTENCODING_UTF8) );
                                 if ( !aUniqueId.isEmpty() )
                                 {
                                     nBulletId = rBuProv.GetId( aUniqueId, aBuGraSize );
diff --git a/sd/source/filter/html/htmlex.cxx b/sd/source/filter/html/htmlex.cxx
index 8ca3878..b54b26a 100644
--- a/sd/source/filter/html/htmlex.cxx
+++ b/sd/source/filter/html/htmlex.cxx
@@ -465,13 +465,11 @@ void HtmlExport::InitExportParameters( const Sequence< PropertyValue >& rParams
         else if ( pParams->Name == "Compression" )
         {
             pParams->Value >>= aStr;
-            String aTmp( aStr );
-            if(aTmp.Len())
+            OUString aTmp( aStr );
+            if(!aTmp.isEmpty())
             {
-                xub_StrLen nPos = aTmp.Search( '%' );
-                if(nPos != STRING_NOTFOUND)
-                    aTmp.Erase(nPos,1);
-                mnCompression = (sal_Int16)aTmp.ToInt32();
+                aTmp = aTmp.replaceFirst("%", "");
+                mnCompression = (sal_Int16)aTmp.toInt32();
             }
         }
         else if ( pParams->Name == "Width" )
diff --git a/sd/source/filter/ppt/pptin.cxx b/sd/source/filter/ppt/pptin.cxx
index d9fd7c6..31243f8 100644
--- a/sd/source/filter/ppt/pptin.cxx
+++ b/sd/source/filter/ppt/pptin.cxx
@@ -1331,7 +1331,7 @@ sal_Bool ImplSdPPTImport::Import()
             rStCtrl >> nFlags;
         }
         // set the current custom show
-        if ( aCustomShow.getLength() )
+        if ( !aCustomShow.isEmpty() )
         {
             SdCustomShowList* pList = mpDoc->GetCustomShowList( sal_False );
             if ( pList )
diff --git a/sd/source/filter/sdfilter.cxx b/sd/source/filter/sdfilter.cxx
index f8809fb..2d0831f 100644
--- a/sd/source/filter/sdfilter.cxx
+++ b/sd/source/filter/sdfilter.cxx
@@ -67,11 +67,8 @@ SdFilter::~SdFilter()
 
 OUString SdFilter::ImplGetFullLibraryName( const OUString& rLibraryName ) const
 {
-    String aTemp(OUString(SVLIBRARY("?")));
-    xub_StrLen nIndex = aTemp.Search( (sal_Unicode)'?' );
-    aTemp.Replace( nIndex, 1, rLibraryName );
-    OUString aLibraryName( aTemp );
-    return aLibraryName;
+    OUString aTemp(SVLIBRARY("?"));
+    return aTemp.replaceFirst( "?", rLibraryName );
 }
 
 // -----------------------------------------------------------------------------
diff --git a/sd/source/ui/docshell/docshel4.cxx b/sd/source/ui/docshell/docshel4.cxx
index 839c761..52d148b 100644
--- a/sd/source/ui/docshell/docshel4.cxx
+++ b/sd/source/ui/docshell/docshel4.cxx
@@ -698,7 +698,7 @@ sal_Bool DrawDocShell::GotoBookmark(const OUString& rBookmark)
         }
         else
         {
-            String aBookmark( rBookmark );
+            OUString aBookmark( rBookmark );
 
             // Is the bookmark a page?
             nPageNumber = mpDoc->GetPageByName( aBookmark, bIsMasterPage );
diff --git a/sd/source/ui/func/fuoaprms.cxx b/sd/source/ui/func/fuoaprms.cxx
index a8100be..963a88a 100644
--- a/sd/source/ui/func/fuoaprms.cxx
+++ b/sd/source/ui/func/fuoaprms.cxx
@@ -734,7 +734,7 @@ void FuObjectAnimationParameters::DoExecute( SfxRequest& rReq )
                 pAction->SetPathObj(pInfo->mpPathObj, pPath);
                 pAction->SetClickAction(pInfo->meClickAction, eClickAction);
                 pAction->SetBookmark(pInfo->GetBookmark(), aBookmark);
-                pAction->SetVerb(pInfo->mnVerb, (sal_uInt16)pInfo->GetBookmark().ToInt32() );
+                pAction->SetVerb(pInfo->mnVerb, (sal_uInt16)pInfo->GetBookmark().toInt32() );
                 pAction->SetSecondEffect(pInfo->meSecondEffect, eSecondEffect);
                 pAction->SetSecondSpeed(pInfo->meSecondSpeed, eSecondSpeed);
                 pAction->SetSecondSoundOn(pInfo->mbSecondSoundOn, bSecondSoundOn);
diff --git a/sd/source/ui/inc/OutlineViewShell.hxx b/sd/source/ui/inc/OutlineViewShell.hxx
index 957b3af..1d527f5 100644
--- a/sd/source/ui/inc/OutlineViewShell.hxx
+++ b/sd/source/ui/inc/OutlineViewShell.hxx
@@ -114,7 +114,7 @@ public:
     virtual sal_Bool KeyInput(const KeyEvent& rKEvt, ::sd::Window* pWin);
     virtual void MouseButtonUp(const MouseEvent& rMEvt, ::sd::Window* pWin);
 
-    sal_uLong   Read(SvStream& rInput, const String& rBaseURL, sal_uInt16 eFormat);
+    sal_uLong   Read(SvStream& rInput, const OUString& rBaseURL, sal_uInt16 eFormat);
 
     virtual void WriteUserDataSequence ( ::com::sun::star::uno::Sequence < ::com::sun::star::beans::PropertyValue >&, sal_Bool bBrowse = sal_False );
     virtual void ReadUserDataSequence ( const ::com::sun::star::uno::Sequence < ::com::sun::star::beans::PropertyValue >&, sal_Bool bBrowse = sal_False );
diff --git a/sd/source/ui/inc/ViewShell.hxx b/sd/source/ui/inc/ViewShell.hxx
index e44ee40..65441d6 100644
--- a/sd/source/ui/inc/ViewShell.hxx
+++ b/sd/source/ui/inc/ViewShell.hxx
@@ -51,7 +51,7 @@ namespace embed {
 
 namespace sd {
 
-extern const String aEmptyStr;
+extern const OUString aEmptyStr;
 
 class DrawDocShell;
 class FrameView;
diff --git a/sd/source/ui/sidebar/DocumentHelper.cxx b/sd/source/ui/sidebar/DocumentHelper.cxx
index d4da996..c880e9f 100644
--- a/sd/source/ui/sidebar/DocumentHelper.cxx
+++ b/sd/source/ui/sidebar/DocumentHelper.cxx
@@ -97,7 +97,7 @@ SdPage* DocumentHelper::CopyMasterPageToLocalDocument (
             SdPage* pCandidate = static_cast<SdPage*>(
                 rTargetDocument.GetMasterSdPage (nMaster, PK_STANDARD));
             if (pMasterPage!=NULL
-                && pCandidate->GetName().CompareTo(pMasterPage->GetName())==0)
+                && pCandidate->GetName() == pMasterPage->GetName())
             {
                 bPageExists = true;
                 pNewMasterPage = pCandidate;
diff --git a/sd/source/ui/toolpanel/controls/DocumentHelper.cxx b/sd/source/ui/toolpanel/controls/DocumentHelper.cxx
index 5c987b1..deb94ac 100644
--- a/sd/source/ui/toolpanel/controls/DocumentHelper.cxx
+++ b/sd/source/ui/toolpanel/controls/DocumentHelper.cxx
@@ -98,7 +98,7 @@ SdPage* DocumentHelper::CopyMasterPageToLocalDocument (
             SdPage* pCandidate = static_cast<SdPage*>(
                 rTargetDocument.GetMasterSdPage (nMaster, PK_STANDARD));
             if (pMasterPage!=NULL
-                && pCandidate->GetName().CompareTo(pMasterPage->GetName())==0)
+                && pCandidate->GetName() == pMasterPage->GetName())
             {
                 bPageExists = true;
                 pNewMasterPage = pCandidate;
diff --git a/sd/source/ui/unoidl/unopage.cxx b/sd/source/ui/unoidl/unopage.cxx
index 6e0a78a..03a88ba 100644
--- a/sd/source/ui/unoidl/unopage.cxx
+++ b/sd/source/ui/unoidl/unopage.cxx
@@ -3024,7 +3024,7 @@ void SAL_CALL SdMasterPage::setName( const OUString& rName )
     {
         SdDrawDocument* pDoc = GetModel()->GetDoc();
         sal_Bool bOutDummy;
-        String aNewName( rName );
+        OUString aNewName( rName );
 
         // Slide Name has to be unique
         if( pDoc && pDoc->GetPageByName( aNewName, bOutDummy ) != SDRPAGE_NOTFOUND )
diff --git a/sd/source/ui/view/outlnvsh.cxx b/sd/source/ui/view/outlnvsh.cxx
index 6e0cee7..5e2b209 100644
--- a/sd/source/ui/view/outlnvsh.cxx
+++ b/sd/source/ui/view/outlnvsh.cxx
@@ -1857,7 +1857,7 @@ bool OutlineViewShell::UpdateOutlineObject( SdPage* pPage, Paragraph* pPara )
 /**
  * Fill Outliner from Stream
  */
-sal_uLong OutlineViewShell::Read(SvStream& rInput, const String& rBaseURL, sal_uInt16 eFormat)
+sal_uLong OutlineViewShell::Read(SvStream& rInput, const OUString& rBaseURL, sal_uInt16 eFormat)
 {
     sal_uLong bRet = 0;
 
diff --git a/sd/source/ui/view/viewoverlaymanager.cxx b/sd/source/ui/view/viewoverlaymanager.cxx
index a0cc133..70da4be 100644
--- a/sd/source/ui/view/viewoverlaymanager.cxx
+++ b/sd/source/ui/view/viewoverlaymanager.cxx
@@ -218,7 +218,7 @@ void ImageButtonHdl::onMouseEnter(const MouseEvent& rMEvt)
                 SdResId aResId( gButtonToolTips[mnHighlightId] );
                 aResId.SetRT( RSC_STRING );
 
-                String aHelpText( aResId );
+                OUString aHelpText( aResId );
                 Rectangle aScreenRect( pDev->LogicToPixel( GetPos() ), maImageSize );
                 mnTip = Help::ShowTip( static_cast< ::Window* >( pHdlList->GetView()->GetFirstOutputDevice() ), aScreenRect, aHelpText, 0 ) ;
             }
diff --git a/sd/source/ui/view/viewshe2.cxx b/sd/source/ui/view/viewshe2.cxx
index b6d7c5f..1e7ddcd 100644
--- a/sd/source/ui/view/viewshe2.cxx
+++ b/sd/source/ui/view/viewshe2.cxx
@@ -75,7 +75,7 @@ using namespace com::sun::star;
 
 namespace sd {
 
-const String aEmptyStr;
+const OUString aEmptyStr;
 
 /**
  * adjust Thumbpos and VisibleSize
diff --git a/vcl/source/filter/FilterConfigCache.cxx b/vcl/source/filter/FilterConfigCache.cxx
index 0d60b21..1e1301a 100644
--- a/vcl/source/filter/FilterConfigCache.cxx
+++ b/vcl/source/filter/FilterConfigCache.cxx
@@ -88,8 +88,7 @@ sal_Bool FilterConfigCache::FilterConfigCacheEntry::CreateFilterName( const OUSt
                 bIsPixelFormat = sal_True;
         }
         OUString sTemp(SVLIBRARY("?"));
-        sal_Int32 nIndex = sTemp.indexOf(static_cast<sal_Unicode>('?'));
-        sFilterName = sTemp.replaceAt(nIndex, 1, sFilterName);
+        sFilterName = sTemp.replaceFirst("?", sFilterName);
     }
     return ! sFilterName.isEmpty();
 }


More information about the Libreoffice-commits mailing list