[Libreoffice-commits] core.git: 22 commits - accessibility/inc accessibility/source binaryurp/source configmgr/source cppuhelper/source framework/inc framework/source oox/source stoc/source vcl/source

Stephan Bergmann sbergman at redhat.com
Tue Mar 18 05:29:46 PDT 2014


 accessibility/inc/accessibility/extended/textwindowaccessibility.hxx |  120 ++---
 accessibility/source/extended/textwindowaccessibility.cxx            |  218 ++++------
 binaryurp/source/bridgefactory.cxx                                   |   10 
 binaryurp/source/bridgefactory.hxx                                   |    4 
 configmgr/source/configurationprovider.cxx                           |   10 
 cppuhelper/source/servicemanager.hxx                                 |    6 
 cppuhelper/source/typemanager.cxx                                    |    2 
 cppuhelper/source/typemanager.hxx                                    |    4 
 framework/inc/classes/actiontriggerpropertyset.hxx                   |    4 
 framework/inc/dispatch/systemexec.hxx                                |    9 
 framework/inc/services/desktop.hxx                                   |    2 
 framework/inc/uielement/uicommanddescription.hxx                     |    3 
 framework/source/dispatch/systemexec.cxx                             |   17 
 framework/source/fwe/classes/actiontriggerpropertyset.cxx            |    4 
 framework/source/jobs/jobexecutor.cxx                                |    5 
 framework/source/services/autorecovery.cxx                           |    5 
 framework/source/services/desktop.cxx                                |    2 
 framework/source/services/pathsettings.cxx                           |    5 
 framework/source/services/substitutepathvars.cxx                     |    5 
 framework/source/services/taskcreatorsrv.cxx                         |    5 
 framework/source/uiconfiguration/moduleuicfgsupplier.cxx             |    5 
 framework/source/uiconfiguration/windowstateconfiguration.cxx        |    5 
 framework/source/uielement/uicommanddescription.cxx                  |    4 
 framework/source/uifactory/uicontrollerfactory.cxx                   |    5 
 framework/source/uifactory/uielementfactorymanager.cxx               |    5 
 framework/source/uifactory/windowcontentfactorymanager.cxx           |    5 
 oox/source/helper/propertymap.cxx                                    |    5 
 stoc/source/inspect/introspection.cxx                                |    7 
 stoc/source/javavm/javavm.cxx                                        |   24 -
 stoc/source/javavm/javavm.hxx                                        |    7 
 vcl/source/app/session.cxx                                           |   23 -
 31 files changed, 262 insertions(+), 273 deletions(-)

New commits:
commit 9aca34a69fdc75e81456f19ef457fd205e3471a4
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 13:15:17 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: Iae8f91d93d4169c68cab6601c1c28042f20f3a48

diff --git a/framework/source/uifactory/windowcontentfactorymanager.cxx b/framework/source/uifactory/windowcontentfactorymanager.cxx
index 272b791..7f96c59 100644
--- a/framework/source/uifactory/windowcontentfactorymanager.cxx
+++ b/framework/source/uifactory/windowcontentfactorymanager.cxx
@@ -30,6 +30,7 @@
 #include <com/sun/star/lang/XSingleComponentFactory.hpp>
 #include <com/sun/star/uno/XComponentContext.hpp>
 
+#include <cppuhelper/basemutex.hxx>
 #include <cppuhelper/compbase2.hxx>
 #include <cppuhelper/supportsservice.hxx>
 #include <tools/diagnose_ex.h>
@@ -43,7 +44,7 @@ typedef ::cppu::WeakComponentImplHelper2<
     com::sun::star::lang::XServiceInfo,
     com::sun::star::lang::XSingleComponentFactory > WindowContentFactoryManager_BASE;
 
-class WindowContentFactoryManager : private osl::Mutex,
+class WindowContentFactoryManager : private cppu::BaseMutex,
                                     public WindowContentFactoryManager_BASE
 {
 public:
@@ -83,7 +84,7 @@ private:
 };
 
 WindowContentFactoryManager::WindowContentFactoryManager( const uno::Reference< uno::XComponentContext >& rxContext ) :
-    WindowContentFactoryManager_BASE(*static_cast<osl::Mutex *>(this)),
+    WindowContentFactoryManager_BASE(m_aMutex),
     m_xContext( rxContext ),
     m_bConfigRead( sal_False )
 {
commit cf8dfcbe60c60597dd9a224a25114c3f382acc59
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 13:14:30 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: Ie8b5c4ad21133528597ede8c4e5cf4dc35312ed8

diff --git a/framework/source/uifactory/uielementfactorymanager.cxx b/framework/source/uifactory/uielementfactorymanager.cxx
index 248d322..8738d35 100644
--- a/framework/source/uifactory/uielementfactorymanager.cxx
+++ b/framework/source/uifactory/uielementfactorymanager.cxx
@@ -35,6 +35,7 @@
 #include <com/sun/star/ui/XUIElementFactoryManager.hpp>
 
 #include <rtl/ustrbuf.hxx>
+#include <cppuhelper/basemutex.hxx>
 #include <cppuhelper/compbase2.hxx>
 #include <cppuhelper/supportsservice.hxx>
 #include <vcl/svapp.hxx>
@@ -352,7 +353,7 @@ typedef ::cppu::WeakComponentImplHelper2<
     css::lang::XServiceInfo,
     css::ui::XUIElementFactoryManager> UIElementFactoryManager_BASE;
 
-class UIElementFactoryManager : private osl::Mutex,
+class UIElementFactoryManager : private cppu::BaseMutex,
                                 public UIElementFactoryManager_BASE
 {
     virtual void SAL_CALL disposing() SAL_OVERRIDE;
@@ -396,7 +397,7 @@ private:
 };
 
 UIElementFactoryManager::UIElementFactoryManager( const Reference< XComponentContext >& rxContext ) :
-    UIElementFactoryManager_BASE(*static_cast<osl::Mutex *>(this)),
+    UIElementFactoryManager_BASE(m_aMutex),
     m_bConfigRead( sal_False ),
     m_xContext(rxContext)
 {
commit 28b880d4074fc105ed4bc01e4bbe3866cad047cb
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 13:13:42 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: I5b6e30ce0e0b908cfcc4feb00cbf7b78425496c6

diff --git a/framework/source/uifactory/uicontrollerfactory.cxx b/framework/source/uifactory/uicontrollerfactory.cxx
index 5fa49a0..d197d93 100644
--- a/framework/source/uifactory/uicontrollerfactory.cxx
+++ b/framework/source/uifactory/uicontrollerfactory.cxx
@@ -25,6 +25,7 @@
 #include <com/sun/star/frame/XUIControllerFactory.hpp>
 
 #include <rtl/ustrbuf.hxx>
+#include <cppuhelper/basemutex.hxx>
 #include <cppuhelper/compbase2.hxx>
 #include <cppuhelper/supportsservice.hxx>
 
@@ -41,7 +42,7 @@ typedef ::cppu::WeakComponentImplHelper2<
     css::lang::XServiceInfo,
     css::frame::XUIControllerFactory > UIControllerFactory_BASE;
 
-class UIControllerFactory : private osl::Mutex,
+class UIControllerFactory : private cppu::BaseMutex,
                             public UIControllerFactory_BASE
 {
 public:
@@ -75,7 +76,7 @@ private:
 UIControllerFactory::UIControllerFactory(
     const Reference< XComponentContext >& xContext,
     const rtl::OUString &rConfigurationNode )
-    : UIControllerFactory_BASE(*static_cast<osl::Mutex *>(this))
+    : UIControllerFactory_BASE(m_aMutex)
     , m_bConfigRead( sal_False )
     , m_xContext( xContext )
     , m_pConfigAccess()
commit 5fe8aa2d485104609a63237e2ef6676b36e046e9
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 13:12:45 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: I2880172edbabcd41f8847359b1b308658a9e07c8

diff --git a/framework/source/uiconfiguration/windowstateconfiguration.cxx b/framework/source/uiconfiguration/windowstateconfiguration.cxx
index bd05474..4934d79 100644
--- a/framework/source/uiconfiguration/windowstateconfiguration.cxx
+++ b/framework/source/uiconfiguration/windowstateconfiguration.cxx
@@ -36,6 +36,7 @@
 #include <com/sun/star/util/XChangesBatch.hpp>
 #include <com/sun/star/uno/XComponentContext.hpp>
 
+#include <cppuhelper/basemutex.hxx>
 #include <cppuhelper/compbase2.hxx>
 #include <cppuhelper/implbase2.hxx>
 #include <cppuhelper/supportsservice.hxx>
@@ -1282,7 +1283,7 @@ sal_Bool ConfigurationAccess_WindowState::impl_initializeConfigAccess()
 typedef ::cppu::WeakComponentImplHelper2< css::container::XNameAccess,
         css::lang::XServiceInfo> WindowStateConfiguration_BASE;
 
-class WindowStateConfiguration : private osl::Mutex,
+class WindowStateConfiguration : private cppu::BaseMutex,
                                  public WindowStateConfiguration_BASE
 {
 public:
@@ -1342,7 +1343,7 @@ private:
 };
 
 WindowStateConfiguration::WindowStateConfiguration( const Reference< XComponentContext >& rxContext ) :
-    WindowStateConfiguration_BASE(*static_cast<osl::Mutex *>(this)),
+    WindowStateConfiguration_BASE(m_aMutex),
     m_xContext( rxContext )
 {
     css::uno::Reference< css::frame::XModuleManager2 > xModuleManager =
commit 2d604c48aa09d575f34f0e0057bff071b8c12041
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 13:11:47 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: I35c346855f0557d623d058b5a233abb08653934e

diff --git a/framework/source/uiconfiguration/moduleuicfgsupplier.cxx b/framework/source/uiconfiguration/moduleuicfgsupplier.cxx
index c24ade5..3171178 100644
--- a/framework/source/uiconfiguration/moduleuicfgsupplier.cxx
+++ b/framework/source/uiconfiguration/moduleuicfgsupplier.cxx
@@ -34,6 +34,7 @@
 #include <com/sun/star/ui/XModuleUIConfigurationManager2.hpp>
 #include <com/sun/star/frame/XModuleManager2.hpp>
 
+#include <cppuhelper/basemutex.hxx>
 #include <cppuhelper/compbase2.hxx>
 #include <cppuhelper/supportsservice.hxx>
 #include <vcl/svapp.hxx>
@@ -57,7 +58,7 @@ typedef cppu::WeakComponentImplHelper2<
     css::ui::XModuleUIConfigurationManagerSupplier >
         ModuleUIConfigurationManagerSupplier_BASE;
 
-class ModuleUIConfigurationManagerSupplier : private osl::Mutex,
+class ModuleUIConfigurationManagerSupplier : private cppu::BaseMutex,
                                              public ModuleUIConfigurationManagerSupplier_BASE
 {
 public:
@@ -102,7 +103,7 @@ private:
 };
 
 ModuleUIConfigurationManagerSupplier::ModuleUIConfigurationManagerSupplier( const Reference< XComponentContext >& xContext ) :
-    ModuleUIConfigurationManagerSupplier_BASE(*static_cast<osl::Mutex *>(this))
+    ModuleUIConfigurationManagerSupplier_BASE(m_aMutex)
     , m_xModuleMgr( ModuleManager::create( xContext ) )
     , m_xContext( xContext )
 {
commit 03bee712e7ab1761854da3398b1a34f7ac81624e
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 13:11:40 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: I6c3baa4fffaeab01833d49530c27a094429e9b5f

diff --git a/framework/source/services/taskcreatorsrv.cxx b/framework/source/services/taskcreatorsrv.cxx
index df7d061..90299fc 100644
--- a/framework/source/services/taskcreatorsrv.cxx
+++ b/framework/source/services/taskcreatorsrv.cxx
@@ -35,6 +35,7 @@
 #include <com/sun/star/lang/XSingleServiceFactory.hpp>
 
 #include <comphelper/sequenceashashmap.hxx>
+#include <cppuhelper/basemutex.hxx>
 #include <cppuhelper/compbase2.hxx>
 #include <cppuhelper/supportsservice.hxx>
 #include <svtools/colorcfg.hxx>
@@ -50,7 +51,7 @@ typedef ::cppu::WeakComponentImplHelper2<
     css::lang::XServiceInfo,
     css::lang::XSingleServiceFactory> TaskCreatorService_BASE;
 
-class TaskCreatorService : private osl::Mutex,
+class TaskCreatorService : private cppu::BaseMutex,
                            public TaskCreatorService_BASE
 {
 private:
@@ -117,7 +118,7 @@ private:
 
 
 TaskCreatorService::TaskCreatorService(const css::uno::Reference< css::uno::XComponentContext >& xContext)
-    : TaskCreatorService_BASE(*static_cast<osl::Mutex *>(this))
+    : TaskCreatorService_BASE(m_aMutex)
     , m_xContext         (xContext                     )
 {
 }
commit 075fbcee09f1c14b8dbed8e3a0c54ae26a47e102
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 13:09:57 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: I89d6b03a66046a662dcacee75bdf53a65903e148

diff --git a/framework/source/services/substitutepathvars.cxx b/framework/source/services/substitutepathvars.cxx
index a87dd89..9fc8ae5 100644
--- a/framework/source/services/substitutepathvars.cxx
+++ b/framework/source/services/substitutepathvars.cxx
@@ -21,6 +21,7 @@
 
 #include <helper/networkdomain.hxx>
 
+#include <cppuhelper/basemutex.hxx>
 #include <cppuhelper/compbase2.hxx>
 #include <cppuhelper/supportsservice.hxx>
 #include <unotools/configitem.hxx>
@@ -237,7 +238,7 @@ typedef ::cppu::WeakComponentImplHelper2<
     css::util::XStringSubstitution,
     css::lang::XServiceInfo > SubstitutePathVariables_BASE;
 
-class SubstitutePathVariables : private osl::Mutex,
+class SubstitutePathVariables : private cppu::BaseMutex,
                                 public SubstitutePathVariables_BASE
 {
 friend class SubstitutePathVariables_Impl;
@@ -747,7 +748,7 @@ void SubstitutePathVariables_Impl::ReadSharePointRuleSetFromConfiguration(
 }
 
 SubstitutePathVariables::SubstitutePathVariables( const Reference< XComponentContext >& xContext ) :
-    SubstitutePathVariables_BASE(*static_cast<osl::Mutex *>(this)),
+    SubstitutePathVariables_BASE(m_aMutex),
     m_aImpl( LINK( this, SubstitutePathVariables, implts_ConfigurationNotify )),
     m_xContext( xContext )
 {
commit bcb01dd1df002c917ccd2f5c358e550eed734798
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 13:09:07 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: I1330f76e3137aaa8d00de82f136ee6968196db70

diff --git a/framework/source/services/pathsettings.cxx b/framework/source/services/pathsettings.cxx
index b3434ba..294b921 100644
--- a/framework/source/services/pathsettings.cxx
+++ b/framework/source/services/pathsettings.cxx
@@ -36,6 +36,7 @@
 #include <tools/urlobj.hxx>
 #include <rtl/ustrbuf.hxx>
 
+#include <cppuhelper/basemutex.hxx>
 #include <cppuhelper/propshlp.hxx>
 #include <cppuhelper/compbase3.hxx>
 #include <cppuhelper/supportsservice.hxx>
@@ -84,7 +85,7 @@ typedef ::cppu::WeakComponentImplHelper3<
             css::util::XPathSettings>       // => XPropertySet
                 PathSettings_BASE;
 
-class PathSettings : private osl::Mutex
+class PathSettings : private cppu::BaseMutex
                    , public  PathSettings_BASE
                    , public  ::cppu::OPropertySetHelper
 {
@@ -458,7 +459,7 @@ private:
 
 
 PathSettings::PathSettings( const css::uno::Reference< css::uno::XComponentContext >& xContext )
-    : PathSettings_BASE(*(static_cast<osl::Mutex *>(this)))
+    : PathSettings_BASE(m_aMutex)
     , ::cppu::OPropertySetHelper(cppu::WeakComponentImplHelperBase::rBHelper)
     ,   m_xContext (xContext)
     ,   m_pPropHelp(0    )
commit 0a08f14961e2c49fcd69fa86147ea59e38381d10
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 13:08:07 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: I9955624a6d4fdc711b6793eb5f4c0025aba79e80

diff --git a/framework/source/services/autorecovery.cxx b/framework/source/services/autorecovery.cxx
index 4ebd694..983c0e4 100644
--- a/framework/source/services/autorecovery.cxx
+++ b/framework/source/services/autorecovery.cxx
@@ -69,6 +69,7 @@
 #include <com/sun/star/util/XModifyListener.hpp>
 
 #include <comphelper/configurationhelper.hxx>
+#include <cppuhelper/basemutex.hxx>
 #include <cppuhelper/exc_hlp.hxx>
 #include <cppuhelper/compbase5.hxx>
 #include <cppuhelper/propshlp.hxx>
@@ -173,7 +174,7 @@ typedef ::cppu::WeakComponentImplHelper5<
             css::util::XModifyListener >      // => css.lang.XEventListener
          AutoRecovery_BASE;
 
-class AutoRecovery  : private osl::Mutex
+class AutoRecovery  : private cppu::BaseMutex
                     , public  AutoRecovery_BASE
                     , public  ::cppu::OPropertySetHelper            // => XPropertySet, XFastPropertySet, XMultiPropertySet
 {
@@ -1363,7 +1364,7 @@ void DispatchParams::forget()
 
 
 AutoRecovery::AutoRecovery(const css::uno::Reference< css::uno::XComponentContext >& xContext)
-    : AutoRecovery_BASE         (*static_cast<Mutex *>(this))
+    : AutoRecovery_BASE         (m_aMutex)
     , ::cppu::OPropertySetHelper(cppu::WeakComponentImplHelperBase::rBHelper)
     , m_xContext                (xContext                                           )
     , m_bListenForDocEvents     (sal_False                                          )
commit 585b0c40520ed9779ddb9aaaa5b9217e33f044ad
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 13:06:59 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: I70ba35ca96f9d1320a540010aeec91de6e8acec1

diff --git a/framework/source/jobs/jobexecutor.cxx b/framework/source/jobs/jobexecutor.cxx
index 04c5cf3..8c52863 100644
--- a/framework/source/jobs/jobexecutor.cxx
+++ b/framework/source/jobs/jobexecutor.cxx
@@ -37,6 +37,7 @@
 #include <com/sun/star/document/XEventListener.hpp>
 #include <com/sun/star/frame/XModuleManager2.hpp>
 
+#include <cppuhelper/basemutex.hxx>
 #include <cppuhelper/compbase4.hxx>
 #include <cppuhelper/supportsservice.hxx>
 #include <unotools/configpaths.hxx>
@@ -61,7 +62,7 @@ typedef cppu::WeakComponentImplHelper4<
             inside the configuration and execute it. Of course it controls the
             liftime of such jobs too.
  */
-class JobExecutor : private osl::Mutex, public Base
+class JobExecutor : private cppu::BaseMutex, public Base
 {
 private:
 
@@ -130,7 +131,7 @@ public:
                     reference to the uno service manager
  */
 JobExecutor::JobExecutor( /*IN*/ const css::uno::Reference< css::uno::XComponentContext >& xContext )
-    : Base                (*static_cast<Mutex *>(this))
+    : Base                (m_aMutex)
     , m_xContext          (xContext                                                        )
     , m_aConfig           (xContext, "/org.openoffice.Office.Jobs/Events")
 {
commit 0de51f55741c0ef3fbd9bcc3359273667a904b88
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 13:06:13 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: I0f17f4140711bad606bb24a662a9be7972f1c470

diff --git a/framework/inc/uielement/uicommanddescription.hxx b/framework/inc/uielement/uicommanddescription.hxx
index 451a60d..46640b2 100644
--- a/framework/inc/uielement/uicommanddescription.hxx
+++ b/framework/inc/uielement/uicommanddescription.hxx
@@ -29,6 +29,7 @@
 #include <com/sun/star/frame/XModuleManager2.hpp>
 #include <com/sun/star/uno/XComponentContext.hpp>
 
+#include <cppuhelper/basemutex.hxx>
 #include <cppuhelper/compbase2.hxx>
 #include <cppuhelper/supportsservice.hxx>
 #include <rtl/ustring.hxx>
@@ -38,7 +39,7 @@ namespace framework
 typedef ::cppu::WeakComponentImplHelper2< com::sun::star::lang::XServiceInfo,
         com::sun::star::container::XNameAccess > UICommandDescription_BASE;
 
-class UICommandDescription : private osl::Mutex,
+class UICommandDescription : private cppu::BaseMutex,
                              public UICommandDescription_BASE
 {
     public:
diff --git a/framework/source/uielement/uicommanddescription.cxx b/framework/source/uielement/uicommanddescription.cxx
index 387dec6..5d72c5f 100644
--- a/framework/source/uielement/uicommanddescription.cxx
+++ b/framework/source/uielement/uicommanddescription.cxx
@@ -603,7 +603,7 @@ void SAL_CALL ConfigurationAccess_UICommand::disposing( const EventObject& aEven
 }
 
 UICommandDescription::UICommandDescription( const Reference< XComponentContext >& rxContext ) :
-    UICommandDescription_BASE(*static_cast<osl::Mutex *>(this)),
+    UICommandDescription_BASE(m_aMutex),
     m_aPrivateResourceURL( PRIVATE_RESOURCE_URL ),
     m_xContext( rxContext )
 {
@@ -619,7 +619,7 @@ UICommandDescription::UICommandDescription( const Reference< XComponentContext >
         pIter->second = m_xGenericUICommands;
 }
 UICommandDescription::UICommandDescription(const Reference< XComponentContext >& rxContext, bool)
-    : UICommandDescription_BASE(*static_cast<osl::Mutex *>(this))
+    : UICommandDescription_BASE(m_aMutex)
     , m_bConfigRead(false)
     , m_xContext(rxContext)
 {
commit 295f7bcdc11d27af85b8b8ace8cefee7bed8cc3a
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 13:05:00 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: Ica3cccc21ea051c8eb653bb3160a0011c9680f38

diff --git a/framework/inc/services/desktop.hxx b/framework/inc/services/desktop.hxx
index 863788a..f2a1c10 100644
--- a/framework/inc/services/desktop.hxx
+++ b/framework/inc/services/desktop.hxx
@@ -97,7 +97,7 @@ typedef cppu::WeakComponentImplHelper6<
            css::task::XInteractionHandler       ,
            css::frame::XUntitledNumbers > Desktop_BASE;
 
-class Desktop : private osl::Mutex,
+class Desktop : private cppu::BaseMutex,
                 private ThreadHelpBase,
                 private TransactionBase,
                 public Desktop_BASE,
diff --git a/framework/source/services/desktop.cxx b/framework/source/services/desktop.cxx
index fadbdf0..b2be9b8 100644
--- a/framework/source/services/desktop.cxx
+++ b/framework/source/services/desktop.cxx
@@ -156,7 +156,7 @@ void Desktop::constructorInit()
 Desktop::Desktop( const css::uno::Reference< css::uno::XComponentContext >& xContext )
         :   ThreadHelpBase          ( &Application::GetSolarMutex()                 )
         ,   TransactionBase         (                                               )
-        ,   Desktop_BASE            ( *static_cast<osl::Mutex *>(this)              )
+        ,   Desktop_BASE            ( m_aMutex )
         ,   cppu::OPropertySetHelper( cppu::WeakComponentImplHelperBase::rBHelper   )
         // Init member
         ,   m_bIsTerminated         ( sal_False                                     )   // see dispose() for further information!
commit dc02e9ef55efdbc02af628a109b2b987b6bb0571
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 13:03:50 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: I0309113c9ffb0dcff77d3d9ab41d61e1aef5f145

diff --git a/vcl/source/app/session.cxx b/vcl/source/app/session.cxx
index b16b544..478701c 100644
--- a/vcl/source/app/session.cxx
+++ b/vcl/source/app/session.cxx
@@ -20,6 +20,7 @@
 #include "sal/config.h"
 
 #include <boost/scoped_ptr.hpp>
+#include <cppuhelper/basemutex.hxx>
 #include <cppuhelper/compbase1.hxx>
 
 #include <tools/debug.hxx>
@@ -46,7 +47,7 @@ SalSession::~SalSession()
 }
 
 class VCLSession:
-    private osl::Mutex,
+    private cppu::BaseMutex,
     public cppu::WeakComponentImplHelper1 < XSessionManagerClient >
 {
     struct Listener
@@ -92,7 +93,7 @@ public:
 };
 
 VCLSession::VCLSession()
-        : cppu::WeakComponentImplHelper1< XSessionManagerClient >( *static_cast< osl::Mutex * >(this) ),
+        : cppu::WeakComponentImplHelper1< XSessionManagerClient >( m_aMutex ),
           m_pSession( ImplGetSVData()->mpDefInst->CreateSalSession() ),
           m_bInteractionRequested( false ),
           m_bInteractionGranted( false ),
@@ -107,7 +108,7 @@ void VCLSession::callSaveRequested( bool bShutdown, bool bCancelable )
 {
     std::list< Listener > aListeners;
     {
-        osl::MutexGuard aGuard( *this );
+        osl::MutexGuard aGuard( m_aMutex );
         // reset listener states
         for( std::list< Listener >::iterator it = m_aListeners.begin();
              it != m_aListeners.end(); ++it )
@@ -144,7 +145,7 @@ void VCLSession::callInteractionGranted( bool bInteractionGranted )
 {
     std::list< Listener > aListeners;
     {
-        osl::MutexGuard aGuard( *this );
+        osl::MutexGuard aGuard( m_aMutex );
         // copy listener list since calling a listener may remove it.
         for( std::list< Listener >::const_iterator it = m_aListeners.begin(); it != m_aListeners.end(); ++it )
             if( it->m_bInteractionRequested )
@@ -173,7 +174,7 @@ void VCLSession::callShutdownCancelled()
 {
     std::list< Listener > aListeners;
     {
-        osl::MutexGuard aGuard( *this );
+        osl::MutexGuard aGuard( m_aMutex );
         // copy listener list since calling a listener may remove it.
         aListeners = m_aListeners;
         // set back interaction state
@@ -190,7 +191,7 @@ void VCLSession::callQuit()
 {
     std::list< Listener > aListeners;
     {
-        osl::MutexGuard aGuard( *this );
+        osl::MutexGuard aGuard( m_aMutex );
         // copy listener list since calling a listener may remove it.
         aListeners = m_aListeners;
         // set back interaction state
@@ -235,14 +236,14 @@ void VCLSession::SalSessionEventProc( void* pData, SalSessionEvent* pEvent )
 
 void SAL_CALL VCLSession::addSessionManagerListener( const css::uno::Reference<XSessionManagerListener>& xListener ) throw( RuntimeException, std::exception )
 {
-    osl::MutexGuard aGuard( *this );
+    osl::MutexGuard aGuard( m_aMutex );
 
     m_aListeners.push_back( Listener( xListener ) );
 }
 
 void SAL_CALL VCLSession::removeSessionManagerListener( const css::uno::Reference<XSessionManagerListener>& xListener ) throw( RuntimeException, std::exception )
 {
-    osl::MutexGuard aGuard( *this );
+    osl::MutexGuard aGuard( m_aMutex );
 
     std::list< Listener >::iterator it = m_aListeners.begin();
     while( it != m_aListeners.end() )
@@ -267,7 +268,7 @@ void SAL_CALL VCLSession::queryInteraction( const css::uno::Reference<XSessionMa
         return;
     }
 
-    osl::MutexGuard aGuard( *this );
+    osl::MutexGuard aGuard( m_aMutex );
     if( ! m_bInteractionRequested )
     {
         m_pSession->queryInteraction();
@@ -285,7 +286,7 @@ void SAL_CALL VCLSession::queryInteraction( const css::uno::Reference<XSessionMa
 
 void SAL_CALL VCLSession::interactionDone( const css::uno::Reference< XSessionManagerListener >& xListener ) throw( RuntimeException, std::exception )
 {
-    osl::MutexGuard aGuard( *this );
+    osl::MutexGuard aGuard( m_aMutex );
     int nRequested = 0, nDone = 0;
     for( std::list< Listener >::iterator it = m_aListeners.begin(); it != m_aListeners.end(); ++it )
     {
@@ -308,7 +309,7 @@ void SAL_CALL VCLSession::interactionDone( const css::uno::Reference< XSessionMa
 
 void SAL_CALL VCLSession::saveDone( const css::uno::Reference< XSessionManagerListener >& xListener ) throw( RuntimeException, std::exception )
 {
-    osl::MutexGuard aGuard( *this );
+    osl::MutexGuard aGuard( m_aMutex );
 
     bool bSaveDone = true;
     for( std::list< Listener >::iterator it = m_aListeners.begin();
commit 9ed5d36981d03e4f91c1f34eabeb494e68a2b76a
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 13:02:04 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: Ib4fa4669adb217be810840b3f8e4f0e2dda0f7c5

diff --git a/stoc/source/javavm/javavm.cxx b/stoc/source/javavm/javavm.cxx
index 1f70464..1418b9b 100644
--- a/stoc/source/javavm/javavm.cxx
+++ b/stoc/source/javavm/javavm.cxx
@@ -575,7 +575,7 @@ extern "C" SAL_DLLPUBLIC_EXPORT void * SAL_CALL javavm_component_getFactory(sal_
 
 JavaVirtualMachine::JavaVirtualMachine(
     css::uno::Reference< css::uno::XComponentContext > const & rContext):
-    JavaVirtualMachine_Impl(*static_cast< osl::Mutex * >(this)),
+    JavaVirtualMachine_Impl(m_aMutex),
     m_xContext(rContext),
     m_bDisposed(false),
     m_pJavaVm(0),
@@ -588,7 +588,7 @@ JavaVirtualMachine::initialize(css::uno::Sequence< css::uno::Any > const &
                                    rArguments)
     throw (css::uno::Exception, std::exception)
 {
-    osl::MutexGuard aGuard(*this);
+    osl::MutexGuard aGuard(m_aMutex);
     if (m_bDisposed)
         throw css::lang::DisposedException(
             OUString(), static_cast< cppu::OWeakObject * >(this));
@@ -681,7 +681,7 @@ css::uno::Any SAL_CALL
 JavaVirtualMachine::getJavaVM(css::uno::Sequence< sal_Int8 > const & rProcessId)
     throw (css::uno::RuntimeException, std::exception)
 {
-    osl::MutexGuard aGuard(*this);
+    osl::MutexGuard aGuard(m_aMutex);
     if (m_bDisposed)
         throw css::lang::DisposedException(
             OUString(), static_cast< cppu::OWeakObject * >(this));
@@ -930,7 +930,7 @@ JavaVirtualMachine::getJavaVM(css::uno::Sequence< sal_Int8 > const & rProcessId)
 sal_Bool SAL_CALL JavaVirtualMachine::isVMStarted()
     throw (css::uno::RuntimeException, std::exception)
 {
-    osl::MutexGuard aGuard(*this);
+    osl::MutexGuard aGuard(m_aMutex);
     if (m_bDisposed)
         throw css::lang::DisposedException(
             OUString(), static_cast< cppu::OWeakObject * >(this));
@@ -941,7 +941,7 @@ sal_Bool SAL_CALL JavaVirtualMachine::isVMEnabled()
     throw (css::uno::RuntimeException, std::exception)
 {
     {
-        osl::MutexGuard aGuard(*this);
+        osl::MutexGuard aGuard(m_aMutex);
         if (m_bDisposed)
             throw css::lang::DisposedException(
                 OUString(), static_cast< cppu::OWeakObject * >(this));
@@ -959,7 +959,7 @@ sal_Bool SAL_CALL JavaVirtualMachine::isVMEnabled()
 sal_Bool SAL_CALL JavaVirtualMachine::isThreadAttached()
     throw (css::uno::RuntimeException, std::exception)
 {
-    osl::MutexGuard aGuard(*this);
+    osl::MutexGuard aGuard(m_aMutex);
     if (m_bDisposed)
         throw css::lang::DisposedException(
             OUString(), static_cast< cppu::OWeakObject * >(this));
@@ -973,7 +973,7 @@ sal_Bool SAL_CALL JavaVirtualMachine::isThreadAttached()
 void SAL_CALL JavaVirtualMachine::registerThread()
     throw (css::uno::RuntimeException, std::exception)
 {
-    osl::MutexGuard aGuard(*this);
+    osl::MutexGuard aGuard(m_aMutex);
     if (m_bDisposed)
         throw css::lang::DisposedException(
             OUString(), static_cast< cppu::OWeakObject * >(this));
@@ -1006,7 +1006,7 @@ void SAL_CALL JavaVirtualMachine::registerThread()
 void SAL_CALL JavaVirtualMachine::revokeThread()
     throw (css::uno::RuntimeException, std::exception)
 {
-    osl::MutexGuard aGuard(*this);
+    osl::MutexGuard aGuard(m_aMutex);
     if (m_bDisposed)
         throw css::lang::DisposedException(
             OUString(), static_cast< cppu::OWeakObject * >(this));
@@ -1028,7 +1028,7 @@ void SAL_CALL
 JavaVirtualMachine::disposing(css::lang::EventObject const & rSource)
     throw (css::uno::RuntimeException, std::exception)
 {
-    osl::MutexGuard aGuard(*this);
+    osl::MutexGuard aGuard(m_aMutex);
     if (rSource.Source == m_xInetConfiguration)
         m_xInetConfiguration.clear();
     if (rSource.Source == m_xJavaConfiguration)
@@ -1156,7 +1156,7 @@ void SAL_CALL JavaVirtualMachine::elementReplaced(
 
     rtl::Reference< jvmaccess::VirtualMachine > xVirtualMachine;
     {
-        osl::MutexGuard aGuard(*this);
+        osl::MutexGuard aGuard(m_aMutex);
         if (m_xUnoVirtualMachine.is()) {
             xVirtualMachine = m_xUnoVirtualMachine->getVirtualMachine();
         }
@@ -1310,7 +1310,7 @@ void SAL_CALL JavaVirtualMachine::disposing()
     css::uno::Reference< css::container::XContainer > xContainer1;
     css::uno::Reference< css::container::XContainer > xContainer2;
     {
-        osl::MutexGuard aGuard(*this);
+        osl::MutexGuard aGuard(m_aMutex);
         m_bDisposed = true;
         xContainer1 = m_xInetConfiguration;
         m_xInetConfiguration.clear();
@@ -1404,7 +1404,7 @@ void JavaVirtualMachine::registerConfigChangesListener()
 // false: the Java net properties are set to empty value.
 void JavaVirtualMachine::setINetSettingsInVM(bool set_reset)
 {
-    osl::MutexGuard aGuard(*this);
+    osl::MutexGuard aGuard(m_aMutex);
     try
     {
         if (m_xUnoVirtualMachine.is())
diff --git a/stoc/source/javavm/javavm.hxx b/stoc/source/javavm/javavm.hxx
index adcfe1c..d5bff24 100644
--- a/stoc/source/javavm/javavm.hxx
+++ b/stoc/source/javavm/javavm.hxx
@@ -28,10 +28,10 @@
 #include "com/sun/star/java/XJavaVM.hpp"
 #include "com/sun/star/lang/XServiceInfo.hpp"
 #include "com/sun/star/uno/Reference.hxx"
+#include "cppuhelper/basemutex.hxx"
 #include "cppuhelper/compbase5.hxx"
 #include "osl/thread.hxx"
 #include "rtl/ref.hxx"
-#include <osl/mutex.hxx>
 #include <rtl/ustring.hxx>
 
 namespace com { namespace sun { namespace star {
@@ -57,7 +57,8 @@ cppu::WeakComponentImplHelper5< com::sun::star::lang::XInitialization,
                                 com::sun::star::container::XContainerListener >
 JavaVirtualMachine_Impl;
 
-class JavaVirtualMachine: private osl::Mutex, public JavaVirtualMachine_Impl
+class JavaVirtualMachine:
+    private cppu::BaseMutex, public JavaVirtualMachine_Impl
 {
 public:
     explicit JavaVirtualMachine(
@@ -141,7 +142,7 @@ private:
     com::sun::star::uno::Reference< com::sun::star::uno::XComponentContext >
         m_xContext;
 
-    // the following are controlled by the 'this' mutex:
+    // the following are controlled by BaseMutex::m_aMutex:
     bool m_bDisposed;
     rtl::Reference< jvmaccess::VirtualMachine > m_xVirtualMachine;
     rtl::Reference< jvmaccess::UnoVirtualMachine > m_xUnoVirtualMachine;
commit db9d30a8ee01d5a737a769251eed784929875af1
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 13:02:00 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: Ic7bd99f920fc954e2eeb734e324d15b1af01e30d

diff --git a/stoc/source/inspect/introspection.cxx b/stoc/source/inspect/introspection.cxx
index 6361044..82d88c0 100644
--- a/stoc/source/inspect/introspection.cxx
+++ b/stoc/source/inspect/introspection.cxx
@@ -28,6 +28,7 @@
 #include <osl/diagnose.h>
 #include <osl/mutex.hxx>
 #include <osl/thread.h>
+#include <cppuhelper/basemutex.hxx>
 #include <cppuhelper/compbase2.hxx>
 #include <cppuhelper/queryinterface.hxx>
 #include <cppuhelper/weak.hxx>
@@ -1573,11 +1574,11 @@ typedef
         css::lang::XServiceInfo, css::beans::XIntrospection>
     Implementation_Base;
 
-class Implementation: private osl::Mutex, public Implementation_Base {
+class Implementation: private cppu::BaseMutex, public Implementation_Base {
 public:
     explicit Implementation(
         css::uno::Reference<css::uno::XComponentContext> const & context):
-        Implementation_Base(*static_cast<Mutex *>(this)),
+        Implementation_Base(m_aMutex),
         reflection_(css::reflection::theCoreReflection::get(context))
     {}
 
@@ -1618,7 +1619,7 @@ css::uno::Reference<css::beans::XIntrospectionAccess> Implementation::inspect(
     css::uno::Any const & aObject)
     throw (css::uno::RuntimeException, std::exception)
 {
-    osl::MutexGuard g(this);
+    osl::MutexGuard g(m_aMutex);
     if (rBHelper.bDisposed) {
         throw css::lang::DisposedException(
             getImplementationName(), static_cast<OWeakObject *>(this));
commit 88999eb03b788b83d27d1d784f0ec7ba792ac954
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 12:58:46 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: Id169891e60eb0a19899586fd3c9a9325ef9d1236

diff --git a/cppuhelper/source/servicemanager.hxx b/cppuhelper/source/servicemanager.hxx
index f62fe1d..d4f9d7b 100644
--- a/cppuhelper/source/servicemanager.hxx
+++ b/cppuhelper/source/servicemanager.hxx
@@ -29,6 +29,7 @@
 #include "com/sun/star/lang/XSingleServiceFactory.hpp"
 #include "com/sun/star/uno/XComponentContext.hpp"
 #include "com/sun/star/uno/Reference.hxx"
+#include "cppuhelper/basemutex.hxx"
 #include "cppuhelper/compbase8.hxx"
 #include "osl/mutex.hxx"
 #include "registry/registry.hxx"
@@ -57,7 +58,8 @@ typedef cppu::WeakComponentImplHelper8<
 ServiceManagerBase;
 
 class ServiceManager:
-    private osl::Mutex, public ServiceManagerBase, private boost::noncopyable
+    private cppu::BaseMutex, public ServiceManagerBase,
+    private boost::noncopyable
 {
 public:
     struct Data: private boost::noncopyable {
@@ -174,7 +176,7 @@ public:
         ImplementationMap singletons;
     };
 
-    ServiceManager(): ServiceManagerBase(*static_cast< osl::Mutex * >(this)) {}
+    ServiceManager(): ServiceManagerBase(m_aMutex) {}
 
     using ServiceManagerBase::acquire;
     using ServiceManagerBase::release;
diff --git a/cppuhelper/source/typemanager.cxx b/cppuhelper/source/typemanager.cxx
index 57a67bb..d6d408f 100644
--- a/cppuhelper/source/typemanager.cxx
+++ b/cppuhelper/source/typemanager.cxx
@@ -1865,7 +1865,7 @@ void Enumeration::findNextMatch() {
 }
 
 cppuhelper::TypeManager::TypeManager():
-    TypeManager_Base(*static_cast< osl::Mutex * >(this)),
+    TypeManager_Base(m_aMutex),
     manager_(new unoidl::Manager)
 {}
 
diff --git a/cppuhelper/source/typemanager.hxx b/cppuhelper/source/typemanager.hxx
index 14a4154..92976ef 100644
--- a/cppuhelper/source/typemanager.hxx
+++ b/cppuhelper/source/typemanager.hxx
@@ -25,8 +25,8 @@
 #include "com/sun/star/uno/Reference.hxx"
 #include "com/sun/star/uno/RuntimeException.hpp"
 #include "com/sun/star/uno/Sequence.hxx"
+#include "cppuhelper/basemutex.hxx"
 #include "cppuhelper/compbase4.hxx"
-#include "osl/mutex.hxx"
 #include "rtl/ref.hxx"
 #include "sal/types.h"
 
@@ -49,7 +49,7 @@ typedef cppu::WeakComponentImplHelper4<
     css::container::XSet, css::reflection::XTypeDescriptionEnumerationAccess >
 TypeManager_Base;
 
-class TypeManager: private osl::Mutex, public TypeManager_Base {
+class TypeManager: private cppu::BaseMutex, public TypeManager_Base {
 public:
     TypeManager();
 
commit 93d6ce502ea2407f69dbbc0495c5ecb27c70a82a
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 12:56:05 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: Ie87cc749556d0a9b135b285143d33dc80d49a2ad

diff --git a/configmgr/source/configurationprovider.cxx b/configmgr/source/configurationprovider.cxx
index 40d580b..fe74a11 100644
--- a/configmgr/source/configurationprovider.cxx
+++ b/configmgr/source/configurationprovider.cxx
@@ -44,6 +44,7 @@
 #include "com/sun/star/util/XRefreshListener.hpp"
 #include "com/sun/star/util/XRefreshable.hpp"
 #include "cppu/unotype.hxx"
+#include "cppuhelper/basemutex.hxx"
 #include "cppuhelper/compbase5.hxx"
 #include "cppuhelper/factory.hxx"
 #include "cppuhelper/implbase2.hxx"
@@ -87,13 +88,12 @@ typedef
     ServiceBase;
 
 class Service:
-    private osl::Mutex, public ServiceBase, private boost::noncopyable
+    private cppu::BaseMutex, public ServiceBase, private boost::noncopyable
 {
 public:
     Service(
         css::uno::Reference< css::uno::XComponentContext > const context):
-        ServiceBase(*static_cast< osl::Mutex * >(this)), context_(context),
-        default_(true)
+        ServiceBase(m_aMutex), context_(context), default_(true)
     {
         lock_ = lock();
         assert(context.is());
@@ -102,8 +102,8 @@ public:
     Service(
         css::uno::Reference< css::uno::XComponentContext > const context,
         OUString const & locale):
-        ServiceBase(*static_cast< osl::Mutex * >(this)), context_(context),
-        locale_(locale), default_(false)
+        ServiceBase(m_aMutex), context_(context), locale_(locale),
+        default_(false)
     {
         lock_ = lock();
         assert(context.is());
commit af181dc1fca626a5b7f9afb3cb69c76ed5d46aa0
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 12:54:17 2014 +0100

    Use cppu::BaseMutex instead of plain osl::Mutex as base
    
    Change-Id: I3dcae6482afe9e2b1a33261583dce41ddc91b67b

diff --git a/binaryurp/source/bridgefactory.cxx b/binaryurp/source/bridgefactory.cxx
index 4e832a7..93cd22b 100644
--- a/binaryurp/source/bridgefactory.cxx
+++ b/binaryurp/source/bridgefactory.cxx
@@ -62,7 +62,7 @@ void BridgeFactory::removeBridge(
 {
     assert(bridge.is());
     OUString n(bridge->getName());
-    osl::MutexGuard g(*this);
+    osl::MutexGuard g(m_aMutex);
     if (n.isEmpty()) {
         BridgeList::iterator i(
             std::find(unnamed_.begin(), unnamed_.end(), bridge));
@@ -79,7 +79,7 @@ void BridgeFactory::removeBridge(
 
 BridgeFactory::BridgeFactory(
     css::uno::Reference< css::uno::XComponentContext > const & context):
-    BridgeFactoryBase(*static_cast< osl::Mutex * >(this)), context_(context)
+    BridgeFactoryBase(m_aMutex), context_(context)
 {
     assert(context.is());
 }
@@ -115,7 +115,7 @@ css::uno::Reference< css::bridge::XBridge > BridgeFactory::createBridge(
 {
     rtl::Reference< Bridge > b;
     {
-        osl::MutexGuard g(*this);
+        osl::MutexGuard g(m_aMutex);
         if (named_.find(sName) != named_.end()) {
             throw css::bridge::BridgeExistsException(
                 sName, static_cast< cppu::OWeakObject * >(this));
@@ -141,7 +141,7 @@ css::uno::Reference< css::bridge::XBridge > BridgeFactory::createBridge(
 css::uno::Reference< css::bridge::XBridge > BridgeFactory::getBridge(
     OUString const & sName) throw (css::uno::RuntimeException, std::exception)
 {
-    osl::MutexGuard g(*this);
+    osl::MutexGuard g(m_aMutex);
     BridgeMap::iterator i(named_.find(sName));
     return i == named_.end()
         ? css::uno::Reference< css::bridge::XBridge >() : i->second;
@@ -149,7 +149,7 @@ css::uno::Reference< css::bridge::XBridge > BridgeFactory::getBridge(
 
 css::uno::Sequence< css::uno::Reference< css::bridge::XBridge > >
 BridgeFactory::getExistingBridges() throw (css::uno::RuntimeException, std::exception) {
-    osl::MutexGuard g(*this);
+    osl::MutexGuard g(m_aMutex);
     if (unnamed_.size() > SAL_MAX_INT32) {
         throw css::uno::RuntimeException(
             "BridgeFactory::getExistingBridges: too many",
diff --git a/binaryurp/source/bridgefactory.hxx b/binaryurp/source/bridgefactory.hxx
index 075975c..4da73ff 100644
--- a/binaryurp/source/bridgefactory.hxx
+++ b/binaryurp/source/bridgefactory.hxx
@@ -32,6 +32,7 @@
 #include "com/sun/star/uno/Exception.hpp"
 #include "com/sun/star/uno/Reference.hxx"
 #include "com/sun/star/uno/RuntimeException.hpp"
+#include "cppuhelper/basemutex.hxx"
 #include "cppuhelper/compbase2.hxx"
 #include "sal/types.h"
 
@@ -55,7 +56,8 @@ typedef
     BridgeFactoryBase;
 
 class BridgeFactory:
-    private osl::Mutex, public BridgeFactoryBase, private boost::noncopyable
+    private cppu::BaseMutex, public BridgeFactoryBase,
+    private boost::noncopyable
 {
 public:
     static com::sun::star::uno::Reference< com::sun::star::uno::XInterface >
commit 17c17017458519e2c13c43fb362320a127c65135
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 12:51:10 2014 +0100

    Use osl::Mutex member, not base
    
    Change-Id: I7104a6fdd31a23750929dccb59fd89e96cadf89c

diff --git a/oox/source/helper/propertymap.cxx b/oox/source/helper/propertymap.cxx
index 5a153be..7c26267 100644
--- a/oox/source/helper/propertymap.cxx
+++ b/oox/source/helper/propertymap.cxx
@@ -98,7 +98,7 @@ typedef ::cppu::WeakImplHelper2< XPropertySet, XPropertySetInfo > GenericPropert
     Properties of all names and types can be set and later retrieved.
     TODO: move this to comphelper or better find an existing implementation
  */
-class GenericPropertySet : public GenericPropertySetBase, private ::osl::Mutex
+class GenericPropertySet : public GenericPropertySetBase
 {
 public:
     explicit            GenericPropertySet( const PropertyMap& rPropMap );
@@ -118,6 +118,7 @@ public:
     virtual sal_Bool SAL_CALL hasPropertyByName( const OUString& Name ) throw (RuntimeException, std::exception);
 
 private:
+    osl::Mutex mMutex;
     PropertyNameMap     maPropMap;
 };
 
@@ -133,7 +134,7 @@ Reference< XPropertySetInfo > SAL_CALL GenericPropertySet::getPropertySetInfo()
 
 void SAL_CALL GenericPropertySet::setPropertyValue( const OUString& rPropertyName, const Any& rValue ) throw (UnknownPropertyException, PropertyVetoException, IllegalArgumentException, WrappedTargetException, RuntimeException, std::exception)
 {
-    ::osl::MutexGuard aGuard( *this );
+    ::osl::MutexGuard aGuard( mMutex );
     maPropMap[ rPropertyName ] = rValue;
 }
 
commit c2fb42afb304c5ce1e5b1686df0000f87d5ae80c
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 12:48:57 2014 +0100

    Use cppu::BaseMutex and remove need for Paragraph/ParagraphImpl split
    
    Change-Id: I790e14feb50fefe3b2efa505118b332d065970fc

diff --git a/accessibility/inc/accessibility/extended/textwindowaccessibility.hxx b/accessibility/inc/accessibility/extended/textwindowaccessibility.hxx
index cdb2b3b..36ff346 100644
--- a/accessibility/inc/accessibility/extended/textwindowaccessibility.hxx
+++ b/accessibility/inc/accessibility/extended/textwindowaccessibility.hxx
@@ -43,6 +43,7 @@
 #include <com/sun/star/accessibility/XAccessibleEventBroadcaster.hpp>
 #include <com/sun/star/accessibility/XAccessibleComponent.hpp>
 #include <toolkit/awt/vclxwindow.hxx>
+#include <cppuhelper/basemutex.hxx>
 #include <cppuhelper/compbase7.hxx>
 #include <comphelper/accessiblecontexthelper.hxx>
 #include <comphelper/accessibletexthelper.hxx>
@@ -61,7 +62,6 @@ class TextView;
 namespace accessibility
 {
 
-class Paragraph;
 class Document;
 
 class SfxListenerGuard
@@ -140,12 +140,12 @@ typedef ::cppu::WeakAggComponentImplHelper7<
 // 0 to N - 1), whereas the Paragraph's index is the position within the text
 // view/accessible parent (from 0 to M - 1).  Paragraphs outside the currently
 // visible range have an index of -1.
-class ParagraphImpl:
-    public ParagraphBase, private ::comphelper::OCommonAccessibleText
+class Paragraph:
+    private cppu::BaseMutex, public ParagraphBase, private ::comphelper::OCommonAccessibleText
 {
 public:
-    ParagraphImpl(::rtl::Reference< Document > const & rDocument,
-                  Paragraphs::size_type nNumber, ::osl::Mutex & rMutex);
+    Paragraph(::rtl::Reference< Document > const & rDocument,
+                  Paragraphs::size_type nNumber);
 
     // Not thread-safe.
     inline Paragraphs::size_type getNumber() const { return m_nNumber; }
@@ -406,153 +406,153 @@ public:
     // Must be called only after init has been called.
     // To make it possible for this method to be (indirectly) called from
     // within Paragraph's constructor (i.e., when the Paragraph's ref count is
-    // still zero), pass a "ParagraphImpl const *" instead of a
-    // "::rtl::Reference< ParagraphImpl > const &".
-    ::sal_Int32 retrieveParagraphIndex(ParagraphImpl const * pParagraph);
+    // still zero), pass a "Paragraph const *" instead of a
+    // "::rtl::Reference< Paragraph > const &".
+    ::sal_Int32 retrieveParagraphIndex(Paragraph const * pParagraph);
 
     // Must be called only after init has been called.
     // To make it possible for this method to be (indirectly) called from
     // within Paragraph's constructor (i.e., when the Paragraph's ref count is
-    // still zero), pass a "ParagraphImpl const *" instead of a
-    // "::rtl::Reference< ParagraphImpl > const &".
-    ::sal_Int64 retrieveParagraphState(ParagraphImpl const * pParagraph);
+    // still zero), pass a "Paragraph const *" instead of a
+    // "::rtl::Reference< Paragraph > const &".
+    ::sal_Int64 retrieveParagraphState(Paragraph const * pParagraph);
 
     // Must be called only after init has been called.
     // To make it possible for this method to be (indirectly) called from
     // within Paragraph's constructor (i.e., when the Paragraph's ref count is
-    // still zero), pass a "ParagraphImpl const &" instead of a
-    // "::rtl::Reference< ParagraphImpl > const &".
+    // still zero), pass a "Paragraph const &" instead of a
+    // "::rtl::Reference< Paragraph > const &".
     css::awt::Rectangle
-    retrieveParagraphBounds(ParagraphImpl const * pParagraph, bool bAbsolute);
+    retrieveParagraphBounds(Paragraph const * pParagraph, bool bAbsolute);
 
     // Must be called only after init has been called.
     // To make it possible for this method to be (indirectly) called from
     // within Paragraph's constructor (i.e., when the Paragraph's ref count is
-    // still zero), pass a "ParagraphImpl const &" instead of a
-    // "::rtl::Reference< ParagraphImpl > const &".
-    OUString retrieveParagraphText(ParagraphImpl const * pParagraph);
+    // still zero), pass a "Paragraph const &" instead of a
+    // "::rtl::Reference< Paragraph > const &".
+    OUString retrieveParagraphText(Paragraph const * pParagraph);
 
     // Must be called only after init has been called.
     // To make it possible for this method to be (indirectly) called from
     // within Paragraph's constructor (i.e., when the Paragraph's ref count is
-    // still zero), pass a "ParagraphImpl const &" instead of a
-    // "::rtl::Reference< ParagraphImpl > const &".
-    void retrieveParagraphSelection(ParagraphImpl const * pParagraph,
+    // still zero), pass a "Paragraph const &" instead of a
+    // "::rtl::Reference< Paragraph > const &".
+    void retrieveParagraphSelection(Paragraph const * pParagraph,
                                     ::sal_Int32 * pBegin, ::sal_Int32 * pEnd);
 
     // Must be called only after init has been called.
     // To make it possible for this method to be (indirectly) called from
     // within Paragraph's constructor (i.e., when the Paragraph's ref count is
-    // still zero), pass a "ParagraphImpl const *" instead of a
-    // "::rtl::Reference< ParagraphImpl > const &".
-    ::sal_Int32 retrieveParagraphCaretPosition(ParagraphImpl const * pParagraph);
+    // still zero), pass a "Paragraph const *" instead of a
+    // "::rtl::Reference< Paragraph > const &".
+    ::sal_Int32 retrieveParagraphCaretPosition(Paragraph const * pParagraph);
 
     // Must be called only after init has been called.
     // To make it possible for this method to be (indirectly) called from
     // within Paragraph's constructor (i.e., when the Paragraph's ref count is
-    // still zero), pass a "ParagraphImpl const &" instead of a
-    // "::rtl::Reference< ParagraphImpl > const &".
+    // still zero), pass a "Paragraph const &" instead of a
+    // "::rtl::Reference< Paragraph > const &".
     // Throws css::lang::IndexOutOfBoundsException.
     css::awt::Rectangle
-    retrieveCharacterBounds(ParagraphImpl const * pParagraph,
+    retrieveCharacterBounds(Paragraph const * pParagraph,
                             ::sal_Int32 nIndex);
 
     // Must be called only after init has been called.
     // To make it possible for this method to be (indirectly) called from
     // within Paragraph's constructor (i.e., when the Paragraph's ref count is
-    // still zero), pass a "ParagraphImpl const &" instead of a
-    // "::rtl::Reference< ParagraphImpl > const &".
-    ::sal_Int32 retrieveCharacterIndex(ParagraphImpl const * pParagraph,
+    // still zero), pass a "Paragraph const &" instead of a
+    // "::rtl::Reference< Paragraph > const &".
+    ::sal_Int32 retrieveCharacterIndex(Paragraph const * pParagraph,
                                        css::awt::Point const & rPoint);
 
     // Must be called only after init has been called.
     // To make it possible for this method to be (indirectly) called from
     // within Paragraph's constructor (i.e., when the Paragraph's ref count is
-    // still zero), pass a "ParagraphImpl const &" instead of a
-    // "::rtl::Reference< ParagraphImpl > const &".
+    // still zero), pass a "Paragraph const &" instead of a
+    // "::rtl::Reference< Paragraph > const &".
     // Throws css::lang::IndexOutOfBoundsException.
     css::uno::Sequence< css::beans::PropertyValue > retrieveCharacterAttributes(
-        ParagraphImpl const * pParagraph, ::sal_Int32 nIndex,
+        Paragraph const * pParagraph, ::sal_Int32 nIndex,
         const css::uno::Sequence< OUString >& aRequestedAttributes);
 
     // Must be called only after init has been called.
     // To make it possible for this method to be (indirectly) called from
     // within Paragraph's constructor (i.e., when the Paragraph's ref count is
-    // still zero), pass a "ParagraphImpl const &" instead of a
-    // "::rtl::Reference< ParagraphImpl > const &".
+    // still zero), pass a "Paragraph const &" instead of a
+    // "::rtl::Reference< Paragraph > const &".
     css::uno::Sequence< css::beans::PropertyValue > retrieveDefaultAttributes(
-        ParagraphImpl const * pParagraph,
+        Paragraph const * pParagraph,
         const css::uno::Sequence< OUString >& RequestedAttributes);
 
     // Must be called only after init has been called.
     // To make it possible for this method to be (indirectly) called from
     // within Paragraph's constructor (i.e., when the Paragraph's ref count is
-    // still zero), pass a "ParagraphImpl const &" instead of a
-    // "::rtl::Reference< ParagraphImpl > const &".
+    // still zero), pass a "Paragraph const &" instead of a
+    // "::rtl::Reference< Paragraph > const &".
     // Throws css::lang::IndexOutOfBoundsException.
     css::uno::Sequence< css::beans::PropertyValue > retrieveRunAttributes(
-        ParagraphImpl const * pParagraph, ::sal_Int32 Index,
+        Paragraph const * pParagraph, ::sal_Int32 Index,
         const css::uno::Sequence< OUString >& RequestedAttributes);
 
     // Must be called only after init has been called.
     // To make it possible for this method to be (indirectly) called from
     // within Paragraph's constructor (i.e., when the Paragraph's ref count is
-    // still zero), pass a "ParagraphImpl const &" instead of a
-    // "::rtl::Reference< ParagraphImpl > const &".
-    void changeParagraphText(ParagraphImpl * pParagraph,
+    // still zero), pass a "Paragraph const &" instead of a
+    // "::rtl::Reference< Paragraph > const &".
+    void changeParagraphText(Paragraph * pParagraph,
                              OUString const & rText);
 
     // Must be called only after init has been called.
     // To make it possible for this method to be (indirectly) called from
     // within Paragraph's constructor (i.e., when the Paragraph's ref count is
-    // still zero), pass a "ParagraphImpl const &" instead of a
-    // "::rtl::Reference< ParagraphImpl > const &".
+    // still zero), pass a "Paragraph const &" instead of a
+    // "::rtl::Reference< Paragraph > const &".
     // Throws css::lang::IndexOutOfBoundsException.
-    void changeParagraphText(ParagraphImpl * pParagraph, ::sal_Int32 nBegin,
+    void changeParagraphText(Paragraph * pParagraph, ::sal_Int32 nBegin,
                              ::sal_Int32 nEnd, bool bCut, bool bPaste,
                              OUString const & rText);
 
     // Must be called only after init has been called.
     // To make it possible for this method to be (indirectly) called from
     // within Paragraph's constructor (i.e., when the Paragraph's ref count is
-    // still zero), pass a "ParagraphImpl const &" instead of a
-    // "::rtl::Reference< ParagraphImpl > const &".
+    // still zero), pass a "Paragraph const &" instead of a
+    // "::rtl::Reference< Paragraph > const &".
     // Throws css::lang::IndexOutOfBoundsException.
-    void copyParagraphText(ParagraphImpl const * pParagraph,
+    void copyParagraphText(Paragraph const * pParagraph,
                            ::sal_Int32 nBegin, ::sal_Int32 nEnd);
 
     // Must be called only after init has been called.
     // To make it possible for this method to be (indirectly) called from
     // within Paragraph's constructor (i.e., when the Paragraph's ref count is
-    // still zero), pass a "ParagraphImpl const &" instead of a
-    // "::rtl::Reference< ParagraphImpl > const &".
+    // still zero), pass a "Paragraph const &" instead of a
+    // "::rtl::Reference< Paragraph > const &".
     // Throws css::lang::IndexOutOfBoundsException.
     void changeParagraphAttributes(
-        ParagraphImpl * pParagraph, ::sal_Int32 nBegin, ::sal_Int32 nEnd,
+        Paragraph * pParagraph, ::sal_Int32 nBegin, ::sal_Int32 nEnd,
         css::uno::Sequence< css::beans::PropertyValue > const &
         rAttributeSet);
 
     // Must be called only after init has been called.
     // To make it possible for this method to be (indirectly) called from
     // within Paragraph's constructor (i.e., when the Paragraph's ref count is
-    // still zero), pass a "ParagraphImpl const &" instead of a
-    // "::rtl::Reference< ParagraphImpl > const &".
+    // still zero), pass a "Paragraph const &" instead of a
+    // "::rtl::Reference< Paragraph > const &".
     // Throws css::lang::IndexOutOfBoundsException.
-    void changeParagraphSelection(ParagraphImpl * pParagraph,
+    void changeParagraphSelection(Paragraph * pParagraph,
                                   ::sal_Int32 nBegin, ::sal_Int32 nEnd);
 
     css::i18n::Boundary
-    retrieveParagraphLineBoundary( ParagraphImpl const * pParagraph,
+    retrieveParagraphLineBoundary( Paragraph const * pParagraph,
                                    ::sal_Int32 nIndex, ::sal_Int32 *pLineNo = NULL);
 
     css::i18n::Boundary
-    retrieveParagraphBoundaryOfLine( ParagraphImpl const * pParagraph,
+    retrieveParagraphBoundaryOfLine( Paragraph const * pParagraph,
                                      ::sal_Int32 nIndex );
 
-    sal_Int32 retrieveParagraphLineWithCursor( ParagraphImpl const * pParagraph );
+    sal_Int32 retrieveParagraphLineWithCursor( Paragraph const * pParagraph );
 
     css::uno::Reference< css::accessibility::XAccessibleRelationSet >
-    retrieveParagraphRelationSet( ParagraphImpl const * pParagraph );
+    retrieveParagraphRelationSet( Paragraph const * pParagraph );
 
 private:
     virtual ::sal_Int32 SAL_CALL getAccessibleChildCount()
@@ -592,7 +592,7 @@ private:
 
     // Must be called with both the external (Solar) and internal mutex
     // locked, and after init has been called:
-    ::rtl::Reference< ParagraphImpl >
+    ::rtl::Reference< Paragraph >
     getParagraph(Paragraphs::iterator const & rIt);
 
     // Must be called with both the external (Solar) and internal mutex
@@ -637,12 +637,12 @@ private:
     static ::FontWeight mapFontWeight(css::uno::Any const & rWeight);
 
     void retrieveDefaultAttributesImpl(
-        ParagraphImpl const * pParagraph,
+        Paragraph const * pParagraph,
         const css::uno::Sequence< OUString >& RequestedAttributes,
         tPropValMap& rDefAttrSeq);
 
     void retrieveRunAttributesImpl(
-        ParagraphImpl const * pParagraph, ::sal_Int32 Index,
+        Paragraph const * pParagraph, ::sal_Int32 Index,
         const css::uno::Sequence< OUString >& RequestedAttributes,
         tPropValMap& rRunAttrSeq);
 
diff --git a/accessibility/source/extended/textwindowaccessibility.cxx b/accessibility/source/extended/textwindowaccessibility.cxx
index 5ef179b..b5dcf47 100644
--- a/accessibility/source/extended/textwindowaccessibility.cxx
+++ b/accessibility/source/extended/textwindowaccessibility.cxx
@@ -33,17 +33,6 @@ namespace accessibility
     ::sal_Int32 getSelectionType(::sal_Int32 nNewFirstPara, ::sal_Int32 nNewFirstPos, ::sal_Int32 nNewLastPara, ::sal_Int32 nNewLastPos);
     void sendEvent(::sal_Int32 start, ::sal_Int32 end, ::sal_Int16 nEventId);
 
-// Both ::osl::Mutex and ParagraphBase implement acquire and release, and thus
-// ::rtl::Reference< Paragraph > does not work.  So ParagraphImpl was factored
-// out and ::rtl::Reference< ParagraphImpl > is used instead.
-class Paragraph: private ::osl::Mutex, public ParagraphImpl
-{
-public:
-    inline Paragraph(::rtl::Reference< Document > const & rDocument,
-                     Paragraphs::size_type nNumber):
-        ParagraphImpl(rDocument, nNumber, *this) {}
-};
-
 void SfxListenerGuard::startListening(::SfxBroadcaster & rNotifier)
 {
     OSL_ENSURE(m_pNotifier == 0, "called more than once");
@@ -76,10 +65,9 @@ void WindowListenerGuard::endListening()
     }
 }
 
-ParagraphImpl::ParagraphImpl(::rtl::Reference< Document > const & rDocument,
-                             Paragraphs::size_type nNumber,
-                             ::osl::Mutex & rMutex):
-    ParagraphBase(rMutex),
+Paragraph::Paragraph(::rtl::Reference< Document > const & rDocument,
+                             Paragraphs::size_type nNumber):
+    ParagraphBase(m_aMutex),
     m_xDocument(rDocument),
     m_nNumber(nNumber),
     m_nClientId(0)
@@ -88,7 +76,7 @@ ParagraphImpl::ParagraphImpl(::rtl::Reference< Document > const & rDocument,
 }
 
 void
-ParagraphImpl::numberChanged(bool bIncremented)
+Paragraph::numberChanged(bool bIncremented)
 {
     if (bIncremented)
         ++m_nNumber;
@@ -96,7 +84,7 @@ ParagraphImpl::numberChanged(bool bIncremented)
         --m_nNumber;
 }
 
-void ParagraphImpl::textChanged()
+void Paragraph::textChanged()
 {
     OUString aParagraphText = implGetText();
     css::uno::Any aOldValue, aNewValue;
@@ -109,7 +97,7 @@ void ParagraphImpl::textChanged()
     }
 }
 
-void ParagraphImpl::notifyEvent(::sal_Int16 nEventId,
+void Paragraph::notifyEvent(::sal_Int16 nEventId,
                                 css::uno::Any const & rOldValue,
                                 css::uno::Any const & rNewValue)
 {
@@ -121,14 +109,14 @@ void ParagraphImpl::notifyEvent(::sal_Int16 nEventId,
 
 // virtual
 css::uno::Reference< css::accessibility::XAccessibleContext > SAL_CALL
-ParagraphImpl::getAccessibleContext() throw (css::uno::RuntimeException, std::exception)
+Paragraph::getAccessibleContext() throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
     return this;
 }
 
 // virtual
-::sal_Int32 SAL_CALL ParagraphImpl::getAccessibleChildCount()
+::sal_Int32 SAL_CALL Paragraph::getAccessibleChildCount()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -137,20 +125,20 @@ ParagraphImpl::getAccessibleContext() throw (css::uno::RuntimeException, std::ex
 
 // virtual
 css::uno::Reference< css::accessibility::XAccessible > SAL_CALL
-ParagraphImpl::getAccessibleChild(::sal_Int32)
+Paragraph::getAccessibleChild(::sal_Int32)
     throw (css::lang::IndexOutOfBoundsException,
            css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
     throw css::lang::IndexOutOfBoundsException(
         "textwindowaccessibility.cxx:"
-        " ParagraphImpl::getAccessibleChild",
+        " Paragraph::getAccessibleChild",
         static_cast< css::uno::XWeak * >(this));
 }
 
 // virtual
 css::uno::Reference< css::accessibility::XAccessible > SAL_CALL
-ParagraphImpl::getAccessibleParent()
+Paragraph::getAccessibleParent()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -158,7 +146,7 @@ ParagraphImpl::getAccessibleParent()
 }
 
 // virtual
-::sal_Int32 SAL_CALL ParagraphImpl::getAccessibleIndexInParent()
+::sal_Int32 SAL_CALL Paragraph::getAccessibleIndexInParent()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -166,7 +154,7 @@ ParagraphImpl::getAccessibleParent()
 }
 
 // virtual
-::sal_Int16 SAL_CALL ParagraphImpl::getAccessibleRole()
+::sal_Int16 SAL_CALL Paragraph::getAccessibleRole()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -174,7 +162,7 @@ ParagraphImpl::getAccessibleParent()
 }
 
 // virtual
-OUString SAL_CALL ParagraphImpl::getAccessibleDescription()
+OUString SAL_CALL Paragraph::getAccessibleDescription()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -182,7 +170,7 @@ OUString SAL_CALL ParagraphImpl::getAccessibleDescription()
 }
 
 // virtual
-OUString SAL_CALL ParagraphImpl::getAccessibleName()
+OUString SAL_CALL Paragraph::getAccessibleName()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -191,7 +179,7 @@ OUString SAL_CALL ParagraphImpl::getAccessibleName()
 
 // virtual
 css::uno::Reference< css::accessibility::XAccessibleRelationSet >
-SAL_CALL ParagraphImpl::getAccessibleRelationSet()
+SAL_CALL Paragraph::getAccessibleRelationSet()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -200,7 +188,7 @@ SAL_CALL ParagraphImpl::getAccessibleRelationSet()
 
 // virtual
 css::uno::Reference< css::accessibility::XAccessibleStateSet >
-SAL_CALL ParagraphImpl::getAccessibleStateSet()
+SAL_CALL Paragraph::getAccessibleStateSet()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -212,7 +200,7 @@ SAL_CALL ParagraphImpl::getAccessibleStateSet()
 }
 
 // virtual
-css::lang::Locale SAL_CALL ParagraphImpl::getLocale()
+css::lang::Locale SAL_CALL Paragraph::getLocale()
     throw (css::accessibility::IllegalAccessibleComponentStateException,
            css::uno::RuntimeException, std::exception)
 {
@@ -221,7 +209,7 @@ css::lang::Locale SAL_CALL ParagraphImpl::getLocale()
 }
 
 // virtual
-::sal_Bool SAL_CALL ParagraphImpl::containsPoint(css::awt::Point const & rPoint)
+::sal_Bool SAL_CALL Paragraph::containsPoint(css::awt::Point const & rPoint)
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -233,7 +221,7 @@ css::lang::Locale SAL_CALL ParagraphImpl::getLocale()
 
 // virtual
 css::uno::Reference< css::accessibility::XAccessible > SAL_CALL
-ParagraphImpl::getAccessibleAtPoint(css::awt::Point const &)
+Paragraph::getAccessibleAtPoint(css::awt::Point const &)
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -241,7 +229,7 @@ ParagraphImpl::getAccessibleAtPoint(css::awt::Point const &)
 }
 
 // virtual
-css::awt::Rectangle SAL_CALL ParagraphImpl::getBounds()
+css::awt::Rectangle SAL_CALL Paragraph::getBounds()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -249,7 +237,7 @@ css::awt::Rectangle SAL_CALL ParagraphImpl::getBounds()
 }
 
 // virtual
-css::awt::Point SAL_CALL ParagraphImpl::getLocation()
+css::awt::Point SAL_CALL Paragraph::getLocation()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -259,7 +247,7 @@ css::awt::Point SAL_CALL ParagraphImpl::getLocation()
 }
 
 // virtual
-css::awt::Point SAL_CALL ParagraphImpl::getLocationOnScreen()
+css::awt::Point SAL_CALL Paragraph::getLocationOnScreen()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -269,7 +257,7 @@ css::awt::Point SAL_CALL ParagraphImpl::getLocationOnScreen()
 }
 
 // virtual
-css::awt::Size SAL_CALL ParagraphImpl::getSize()
+css::awt::Size SAL_CALL Paragraph::getSize()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -279,7 +267,7 @@ css::awt::Size SAL_CALL ParagraphImpl::getSize()
 }
 
 // virtual
-void SAL_CALL ParagraphImpl::grabFocus() throw (css::uno::RuntimeException, std::exception)
+void SAL_CALL Paragraph::grabFocus() throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
     Window* pWindow = m_xDocument->GetWindow();
@@ -294,7 +282,7 @@ void SAL_CALL ParagraphImpl::grabFocus() throw (css::uno::RuntimeException, std:
     catch (const css::lang::IndexOutOfBoundsException & rEx)
     {
         OSL_TRACE(
-            "textwindowaccessibility.cxx: ParagraphImpl::grabFocus:"
+            "textwindowaccessibility.cxx: Paragraph::grabFocus:"
             " caught unexpected %s\n",
             OUStringToOString(rEx.Message, RTL_TEXTENCODING_UTF8).
             getStr());
@@ -302,7 +290,7 @@ void SAL_CALL ParagraphImpl::grabFocus() throw (css::uno::RuntimeException, std:
 }
 
 // virtual
-css::uno::Any SAL_CALL ParagraphImpl::getAccessibleKeyBinding()
+css::uno::Any SAL_CALL Paragraph::getAccessibleKeyBinding()
     throw (css::uno::RuntimeException)
 {
     checkDisposed();
@@ -310,21 +298,21 @@ css::uno::Any SAL_CALL ParagraphImpl::getAccessibleKeyBinding()
 }
 
 // virtual
-css::util::Color SAL_CALL ParagraphImpl::getForeground()
+css::util::Color SAL_CALL Paragraph::getForeground()
     throw (css::uno::RuntimeException, std::exception)
 {
     return 0; // TODO
 }
 
 // virtual
-css::util::Color SAL_CALL ParagraphImpl::getBackground()
+css::util::Color SAL_CALL Paragraph::getBackground()
     throw (css::uno::RuntimeException, std::exception)
 {
     return 0; // TODO
 }
 
 // virtual
-::sal_Int32 SAL_CALL ParagraphImpl::getCaretPosition()
+::sal_Int32 SAL_CALL Paragraph::getCaretPosition()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -332,7 +320,7 @@ css::util::Color SAL_CALL ParagraphImpl::getBackground()
 }
 
 // virtual
-::sal_Bool SAL_CALL ParagraphImpl::setCaretPosition(::sal_Int32 nIndex)
+::sal_Bool SAL_CALL Paragraph::setCaretPosition(::sal_Int32 nIndex)
     throw (css::lang::IndexOutOfBoundsException,
            css::uno::RuntimeException, std::exception)
 {
@@ -342,7 +330,7 @@ css::util::Color SAL_CALL ParagraphImpl::getBackground()
 }
 
 // virtual
-::sal_Unicode SAL_CALL ParagraphImpl::getCharacter(::sal_Int32 nIndex)
+::sal_Unicode SAL_CALL Paragraph::getCharacter(::sal_Int32 nIndex)
     throw (css::lang::IndexOutOfBoundsException,
            css::uno::RuntimeException, std::exception)
 {
@@ -352,7 +340,7 @@ css::util::Color SAL_CALL ParagraphImpl::getBackground()
 
 // virtual
 css::uno::Sequence< css::beans::PropertyValue > SAL_CALL
-ParagraphImpl::getCharacterAttributes(::sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< OUString >& aRequestedAttributes)
+Paragraph::getCharacterAttributes(::sal_Int32 nIndex, const ::com::sun::star::uno::Sequence< OUString >& aRequestedAttributes)
     throw (css::lang::IndexOutOfBoundsException,
            css::uno::RuntimeException, std::exception)
 {
@@ -362,7 +350,7 @@ ParagraphImpl::getCharacterAttributes(::sal_Int32 nIndex, const ::com::sun::star
 
 // virtual
 css::awt::Rectangle SAL_CALL
-ParagraphImpl::getCharacterBounds(::sal_Int32 nIndex)
+Paragraph::getCharacterBounds(::sal_Int32 nIndex)
     throw (css::lang::IndexOutOfBoundsException,
            css::uno::RuntimeException, std::exception)
 {
@@ -375,7 +363,7 @@ ParagraphImpl::getCharacterBounds(::sal_Int32 nIndex)
 }
 
 // virtual
-::sal_Int32 SAL_CALL ParagraphImpl::getCharacterCount()
+::sal_Int32 SAL_CALL Paragraph::getCharacterCount()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -384,7 +372,7 @@ ParagraphImpl::getCharacterBounds(::sal_Int32 nIndex)
 
 // virtual
 ::sal_Int32 SAL_CALL
-ParagraphImpl::getIndexAtPoint(css::awt::Point const & rPoint)
+Paragraph::getIndexAtPoint(css::awt::Point const & rPoint)
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -396,7 +384,7 @@ ParagraphImpl::getIndexAtPoint(css::awt::Point const & rPoint)
 }
 
 // virtual
-OUString SAL_CALL ParagraphImpl::getSelectedText()
+OUString SAL_CALL Paragraph::getSelectedText()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -405,7 +393,7 @@ OUString SAL_CALL ParagraphImpl::getSelectedText()
 }
 
 // virtual
-::sal_Int32 SAL_CALL ParagraphImpl::getSelectionStart()
+::sal_Int32 SAL_CALL Paragraph::getSelectionStart()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -413,7 +401,7 @@ OUString SAL_CALL ParagraphImpl::getSelectedText()
 }
 
 // virtual
-::sal_Int32 SAL_CALL ParagraphImpl::getSelectionEnd()
+::sal_Int32 SAL_CALL Paragraph::getSelectionEnd()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -421,7 +409,7 @@ OUString SAL_CALL ParagraphImpl::getSelectedText()
 }
 
 // virtual
-::sal_Bool SAL_CALL ParagraphImpl::setSelection(::sal_Int32 nStartIndex,
+::sal_Bool SAL_CALL Paragraph::setSelection(::sal_Int32 nStartIndex,
                                                 ::sal_Int32 nEndIndex)
     throw (css::lang::IndexOutOfBoundsException,
            css::uno::RuntimeException, std::exception)
@@ -432,7 +420,7 @@ OUString SAL_CALL ParagraphImpl::getSelectedText()
 }
 
 // virtual
-OUString SAL_CALL ParagraphImpl::getText()
+OUString SAL_CALL Paragraph::getText()
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -440,7 +428,7 @@ OUString SAL_CALL ParagraphImpl::getText()
 }
 
 // virtual
-OUString SAL_CALL ParagraphImpl::getTextRange(::sal_Int32 nStartIndex,
+OUString SAL_CALL Paragraph::getTextRange(::sal_Int32 nStartIndex,
                                                      ::sal_Int32 nEndIndex)
     throw (css::lang::IndexOutOfBoundsException,
            css::uno::RuntimeException, std::exception)
@@ -450,28 +438,28 @@ OUString SAL_CALL ParagraphImpl::getTextRange(::sal_Int32 nStartIndex,
 }
 
 // virtual
-::com::sun::star::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception)
+::com::sun::star::accessibility::TextSegment SAL_CALL Paragraph::getTextAtIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception)
 {
     checkDisposed();
     return OCommonAccessibleText::getTextAtIndex(nIndex, aTextType);
 }
 
 // virtual
-::com::sun::star::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception)
+::com::sun::star::accessibility::TextSegment SAL_CALL Paragraph::getTextBeforeIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception)
 {
     checkDisposed();
     return OCommonAccessibleText::getTextBeforeIndex(nIndex, aTextType);
 }
 
 // virtual
-::com::sun::star::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception)
+::com::sun::star::accessibility::TextSegment SAL_CALL Paragraph::getTextBehindIndex( sal_Int32 nIndex, sal_Int16 aTextType ) throw (::com::sun::star::lang::IndexOutOfBoundsException, ::com::sun::star::lang::IllegalArgumentException, ::com::sun::star::uno::RuntimeException, std::exception)
 {
     checkDisposed();
     return OCommonAccessibleText::getTextBehindIndex(nIndex, aTextType);
 }
 
 // virtual
-::sal_Bool SAL_CALL ParagraphImpl::copyText(::sal_Int32 nStartIndex,
+::sal_Bool SAL_CALL Paragraph::copyText(::sal_Int32 nStartIndex,
                                             ::sal_Int32 nEndIndex)
     throw (css::lang::IndexOutOfBoundsException,
            css::uno::RuntimeException, std::exception)
@@ -482,7 +470,7 @@ OUString SAL_CALL ParagraphImpl::getTextRange(::sal_Int32 nStartIndex,
 }
 
 // virtual
-::sal_Bool SAL_CALL ParagraphImpl::cutText(::sal_Int32 nStartIndex,
+::sal_Bool SAL_CALL Paragraph::cutText(::sal_Int32 nStartIndex,
                                            ::sal_Int32 nEndIndex)
     throw (css::lang::IndexOutOfBoundsException,
            css::uno::RuntimeException, std::exception)
@@ -494,7 +482,7 @@ OUString SAL_CALL ParagraphImpl::getTextRange(::sal_Int32 nStartIndex,
 }
 
 // virtual
-::sal_Bool SAL_CALL ParagraphImpl::pasteText(::sal_Int32 nIndex)
+::sal_Bool SAL_CALL Paragraph::pasteText(::sal_Int32 nIndex)
     throw (css::lang::IndexOutOfBoundsException,
            css::uno::RuntimeException, std::exception)
 {
@@ -505,7 +493,7 @@ OUString SAL_CALL ParagraphImpl::getTextRange(::sal_Int32 nStartIndex,
 }
 
 // virtual
-::sal_Bool SAL_CALL ParagraphImpl::deleteText(::sal_Int32 nStartIndex,
+::sal_Bool SAL_CALL Paragraph::deleteText(::sal_Int32 nStartIndex,
                                           ::sal_Int32 nEndIndex)
     throw (css::lang::IndexOutOfBoundsException,
            css::uno::RuntimeException, std::exception)
@@ -517,7 +505,7 @@ OUString SAL_CALL ParagraphImpl::getTextRange(::sal_Int32 nStartIndex,
 }
 
 // virtual
-::sal_Bool SAL_CALL ParagraphImpl::insertText(OUString const & rText,
+::sal_Bool SAL_CALL Paragraph::insertText(OUString const & rText,
                                               ::sal_Int32 nIndex)
     throw (css::lang::IndexOutOfBoundsException,
            css::uno::RuntimeException, std::exception)
@@ -529,7 +517,7 @@ OUString SAL_CALL ParagraphImpl::getTextRange(::sal_Int32 nStartIndex,
 
 // virtual
 ::sal_Bool SAL_CALL
-ParagraphImpl::replaceText(::sal_Int32 nStartIndex, ::sal_Int32 nEndIndex,
+Paragraph::replaceText(::sal_Int32 nStartIndex, ::sal_Int32 nEndIndex,
                            OUString const & rReplacement)
     throw (css::lang::IndexOutOfBoundsException,
            css::uno::RuntimeException, std::exception)
@@ -541,7 +529,7 @@ ParagraphImpl::replaceText(::sal_Int32 nStartIndex, ::sal_Int32 nEndIndex,
 }
 
 // virtual
-::sal_Bool SAL_CALL ParagraphImpl::setAttributes(
+::sal_Bool SAL_CALL Paragraph::setAttributes(
     ::sal_Int32 nStartIndex, ::sal_Int32 nEndIndex,
     css::uno::Sequence< css::beans::PropertyValue > const & rAttributeSet)
     throw (css::lang::IndexOutOfBoundsException,
@@ -554,7 +542,7 @@ ParagraphImpl::replaceText(::sal_Int32 nStartIndex, ::sal_Int32 nEndIndex,
 }
 
 // virtual
-::sal_Bool SAL_CALL ParagraphImpl::setText(OUString const & rText)
+::sal_Bool SAL_CALL Paragraph::setText(OUString const & rText)
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -564,7 +552,7 @@ ParagraphImpl::replaceText(::sal_Int32 nStartIndex, ::sal_Int32 nEndIndex,
 
 // virtual
 css::uno::Sequence< css::beans::PropertyValue > SAL_CALL
-ParagraphImpl::getDefaultAttributes(const css::uno::Sequence< OUString >& RequestedAttributes)
+Paragraph::getDefaultAttributes(const css::uno::Sequence< OUString >& RequestedAttributes)
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -573,7 +561,7 @@ ParagraphImpl::getDefaultAttributes(const css::uno::Sequence< OUString >& Reques
 
 // virtual
 css::uno::Sequence< css::beans::PropertyValue > SAL_CALL
-ParagraphImpl::getRunAttributes(::sal_Int32 Index, const css::uno::Sequence< OUString >& RequestedAttributes)
+Paragraph::getRunAttributes(::sal_Int32 Index, const css::uno::Sequence< OUString >& RequestedAttributes)
     throw (css::lang::IndexOutOfBoundsException,
            css::uno::RuntimeException, std::exception)
 {
@@ -582,7 +570,7 @@ ParagraphImpl::getRunAttributes(::sal_Int32 Index, const css::uno::Sequence< OUS
 }
 
 // virtual
-::sal_Int32 SAL_CALL ParagraphImpl::getLineNumberAtIndex( ::sal_Int32 nIndex )
+::sal_Int32 SAL_CALL Paragraph::getLineNumberAtIndex( ::sal_Int32 nIndex )
     throw (css::lang::IndexOutOfBoundsException,
            css::uno::RuntimeException, std::exception)
 {
@@ -595,7 +583,7 @@ ParagraphImpl::getRunAttributes(::sal_Int32 Index, const css::uno::Sequence< OUS
 }
 
 // virtual
-css::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextAtLineNumber( ::sal_Int32 nLineNo )
+css::accessibility::TextSegment SAL_CALL Paragraph::getTextAtLineNumber( ::sal_Int32 nLineNo )
     throw (css::lang::IndexOutOfBoundsException,
            css::uno::RuntimeException, std::exception)
 {
@@ -609,7 +597,7 @@ css::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextAtLineNumber( ::s
 }
 
 // virtual
-css::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextAtLineWithCaret(  )
+css::accessibility::TextSegment SAL_CALL Paragraph::getTextAtLineWithCaret(  )
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -623,13 +611,13 @@ css::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextAtLineWithCaret(
     } catch (const css::lang::IndexOutOfBoundsException&) {
         throw css::uno::RuntimeException(
             "textwindowaccessibility.cxx:"
-            " ParagraphImpl::getTextAtLineWithCaret",
+            " Paragraph::getTextAtLineWithCaret",
             static_cast< css::uno::XWeak * >( this ) );
     }
 }
 
 // virtual
-::sal_Int32 SAL_CALL ParagraphImpl::getNumberOfLineWithCaret(  )
+::sal_Int32 SAL_CALL Paragraph::getNumberOfLineWithCaret(  )
     throw (css::uno::RuntimeException, std::exception)
 {
     checkDisposed();
@@ -638,7 +626,7 @@ css::accessibility::TextSegment SAL_CALL ParagraphImpl::getTextAtLineWithCaret(
 
 
 // virtual
-void SAL_CALL ParagraphImpl::addAccessibleEventListener(
+void SAL_CALL Paragraph::addAccessibleEventListener(
     css::uno::Reference<
     css::accessibility::XAccessibleEventListener > const & rListener)
     throw (css::uno::RuntimeException, std::exception)
@@ -662,7 +650,7 @@ void SAL_CALL ParagraphImpl::addAccessibleEventListener(
 }
 
 // virtual
-void SAL_CALL ParagraphImpl::removeAccessibleEventListener(
+void SAL_CALL Paragraph::removeAccessibleEventListener(
     css::uno::Reference<
     css::accessibility::XAccessibleEventListener > const & rListener)
     throw (css::uno::RuntimeException, std::exception)
@@ -688,7 +676,7 @@ void SAL_CALL ParagraphImpl::removeAccessibleEventListener(
 }
 
 // virtual
-void SAL_CALL ParagraphImpl::disposing()
+void SAL_CALL Paragraph::disposing()
 {
     comphelper::AccessibleEventNotifier::TClientId nId = 0;
     {
@@ -701,26 +689,26 @@ void SAL_CALL ParagraphImpl::disposing()
 }
 
 // virtual
-OUString ParagraphImpl::implGetText()
+OUString Paragraph::implGetText()
 {
     return m_xDocument->retrieveParagraphText(this);
 }
 
 // virtual
-css::lang::Locale ParagraphImpl::implGetLocale()
+css::lang::Locale Paragraph::implGetLocale()
 {
     return m_xDocument->retrieveLocale();
 }
 
 // virtual
-void ParagraphImpl::implGetSelection(::sal_Int32 & rStartIndex,
+void Paragraph::implGetSelection(::sal_Int32 & rStartIndex,
                                      ::sal_Int32 & rEndIndex)
 {
     m_xDocument->retrieveParagraphSelection(this, &rStartIndex, &rEndIndex);
 }
 
 // virtual
-void ParagraphImpl::implGetParagraphBoundary( css::i18n::Boundary& rBoundary,
+void Paragraph::implGetParagraphBoundary( css::i18n::Boundary& rBoundary,
                                               ::sal_Int32 nIndex )
 {
     OUString sText( implGetText() );
@@ -739,7 +727,7 @@ void ParagraphImpl::implGetParagraphBoundary( css::i18n::Boundary& rBoundary,
 }
 
 // virtual
-void ParagraphImpl::implGetLineBoundary( css::i18n::Boundary& rBoundary,
+void Paragraph::implGetLineBoundary( css::i18n::Boundary& rBoundary,
                                          ::sal_Int32 nIndex )
 {
     OUString sText( implGetText() );
@@ -760,7 +748,7 @@ void ParagraphImpl::implGetLineBoundary( css::i18n::Boundary& rBoundary,
 }
 
 
-void ParagraphImpl::checkDisposed()
+void Paragraph::checkDisposed()
 {
     ::osl::MutexGuard aGuard(rBHelper.rMutex);
     if (!(rBHelper.bDisposed || rBHelper.bInDispose))
@@ -793,7 +781,7 @@ css::lang::Locale Document::retrieveLocale()
     return m_rEngine.GetLocale();
 }
 
-::sal_Int32 Document::retrieveParagraphIndex(ParagraphImpl const * pParagraph)
+::sal_Int32 Document::retrieveParagraphIndex(Paragraph const * pParagraph)
 {
     ::osl::MutexGuard aInternalGuard(GetMutex());
 
@@ -807,7 +795,7 @@ css::lang::Locale Document::retrieveLocale()
         // XXX  numeric overflow
 }
 
-::sal_Int64 Document::retrieveParagraphState(ParagraphImpl const * pParagraph)
+::sal_Int64 Document::retrieveParagraphState(Paragraph const * pParagraph)
 {
     ::osl::MutexGuard aInternalGuard(GetMutex());
 
@@ -843,7 +831,7 @@ css::lang::Locale Document::retrieveLocale()
 };
 
 css::awt::Rectangle
-Document::retrieveParagraphBounds(ParagraphImpl const * pParagraph,
+Document::retrieveParagraphBounds(Paragraph const * pParagraph,
                                   bool bAbsolute)
 {
     ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
@@ -883,7 +871,7 @@ Document::retrieveParagraphBounds(ParagraphImpl const * pParagraph,
 }
 
 OUString
-Document::retrieveParagraphText(ParagraphImpl const * pParagraph)
+Document::retrieveParagraphText(Paragraph const * pParagraph)
 {
     ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
     ::osl::MutexGuard aInternalGuard(GetMutex());
@@ -891,7 +879,7 @@ Document::retrieveParagraphText(ParagraphImpl const * pParagraph)
         // numeric overflow cannot happen here
 }
 
-void Document::retrieveParagraphSelection(ParagraphImpl const * pParagraph,
+void Document::retrieveParagraphSelection(Paragraph const * pParagraph,
                                           ::sal_Int32 * pBegin,
                                           ::sal_Int32 * pEnd)
 {
@@ -925,7 +913,7 @@ void Document::retrieveParagraphSelection(ParagraphImpl const * pParagraph,
     }
 }
 
-::sal_Int32 Document::retrieveParagraphCaretPosition(ParagraphImpl const * pParagraph)
+::sal_Int32 Document::retrieveParagraphCaretPosition(Paragraph const * pParagraph)
 {
     ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
     ::osl::MutexGuard aInternalGuard(GetMutex());
@@ -938,7 +926,7 @@ void Document::retrieveParagraphSelection(ParagraphImpl const * pParagraph,
 }
 
 css::awt::Rectangle
-Document::retrieveCharacterBounds(ParagraphImpl const * pParagraph,
+Document::retrieveCharacterBounds(Paragraph const * pParagraph,
                                   ::sal_Int32 nIndex)
 {
     ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
@@ -988,7 +976,7 @@ Document::retrieveCharacterBounds(ParagraphImpl const * pParagraph,
     return aBounds;
 }
 
-::sal_Int32 Document::retrieveCharacterIndex(ParagraphImpl const * pParagraph,
+::sal_Int32 Document::retrieveCharacterIndex(Paragraph const * pParagraph,
                                              css::awt::Point const & rPoint)
 {
     ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
@@ -1015,7 +1003,7 @@ struct IndexCompare
 
 css::uno::Sequence< css::beans::PropertyValue >
 Document::retrieveCharacterAttributes(
-    ParagraphImpl const * pParagraph, ::sal_Int32 nIndex,
+    Paragraph const * pParagraph, ::sal_Int32 nIndex,
     const css::uno::Sequence< OUString >& aRequestedAttributes)
 {
     ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
@@ -1160,7 +1148,7 @@ Document::retrieveCharacterAttributes(
 }
 
 void Document::retrieveDefaultAttributesImpl(
-    ParagraphImpl const * pParagraph,
+    Paragraph const * pParagraph,
     const css::uno::Sequence< OUString >& RequestedAttributes,
     tPropValMap& rDefAttrSeq)
 {
@@ -1172,7 +1160,7 @@ void Document::retrieveDefaultAttributesImpl(
 
 css::uno::Sequence< css::beans::PropertyValue >
 Document::retrieveDefaultAttributes(
-    ParagraphImpl const * pParagraph,
+    Paragraph const * pParagraph,
     const css::uno::Sequence< OUString >& RequestedAttributes)
 {
     ::osl::Guard< ::comphelper::IMutex > aExternalGuard( getExternalLock() );
@@ -1201,7 +1189,7 @@ Document::convertHashMapToSequence(tPropValMap& rAttrSeq)
 }
 
 void Document::retrieveRunAttributesImpl(
-    ParagraphImpl const * pParagraph, ::sal_Int32 Index,
+    Paragraph const * pParagraph, ::sal_Int32 Index,
     const css::uno::Sequence< OUString >& RequestedAttributes,
     tPropValMap& rRunAttrSeq)
 {
@@ -1255,7 +1243,7 @@ void Document::retrieveRunAttributesImpl(
 
 css::uno::Sequence< css::beans::PropertyValue >
 Document::retrieveRunAttributes(
-    ParagraphImpl const * pParagraph, ::sal_Int32 Index,
+    Paragraph const * pParagraph, ::sal_Int32 Index,
     const css::uno::Sequence< OUString >& RequestedAttributes)
 {
     ::osl::Guard< ::comphelper::IMutex > aExternalGuard( getExternalLock() );
@@ -1273,7 +1261,7 @@ Document::retrieveRunAttributes(
     return convertHashMapToSequence( aRunAttrSeq );
 }
 
-void Document::changeParagraphText(ParagraphImpl * pParagraph,
+void Document::changeParagraphText(Paragraph * pParagraph,
                                    OUString const & rText)
 {
     ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
@@ -1286,7 +1274,7 @@ void Document::changeParagraphText(ParagraphImpl * pParagraph,
     }
 }
 
-void Document::changeParagraphText(ParagraphImpl * pParagraph,
+void Document::changeParagraphText(Paragraph * pParagraph,
                                    ::sal_Int32 nBegin, ::sal_Int32 nEnd,
                                    bool bCut, bool bPaste,
                                    OUString const & rText)
@@ -1308,7 +1296,7 @@ void Document::changeParagraphText(ParagraphImpl * pParagraph,
     }
 }
 
-void Document::copyParagraphText(ParagraphImpl const * pParagraph,
+void Document::copyParagraphText(Paragraph const * pParagraph,
                                  ::sal_Int32 nBegin, ::sal_Int32 nEnd)
 {
     ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
@@ -1331,7 +1319,7 @@ void Document::copyParagraphText(ParagraphImpl const * pParagraph,
 }
 
 void Document::changeParagraphAttributes(
-    ParagraphImpl * pParagraph, ::sal_Int32 nBegin, ::sal_Int32 nEnd,
+    Paragraph * pParagraph, ::sal_Int32 nBegin, ::sal_Int32 nEnd,
     css::uno::Sequence< css::beans::PropertyValue > const & rAttributeSet)
 {
     ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
@@ -1365,7 +1353,7 @@ void Document::changeParagraphAttributes(
     }
 }
 
-void Document::changeParagraphSelection(ParagraphImpl * pParagraph,
+void Document::changeParagraphSelection(Paragraph * pParagraph,
                                         ::sal_Int32 nBegin, ::sal_Int32 nEnd)
 {
     ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
@@ -1387,7 +1375,7 @@ void Document::changeParagraphSelection(ParagraphImpl * pParagraph,
 }
 
 css::i18n::Boundary
-Document::retrieveParagraphLineBoundary( ParagraphImpl const * pParagraph,
+Document::retrieveParagraphLineBoundary( Paragraph const * pParagraph,
                                          ::sal_Int32 nIndex, ::sal_Int32 *pLineNo )
 {
     css::i18n::Boundary aBoundary;
@@ -1427,7 +1415,7 @@ Document::retrieveParagraphLineBoundary( ParagraphImpl const * pParagraph,
 }
 
 css::i18n::Boundary
-Document::retrieveParagraphBoundaryOfLine( ParagraphImpl const * pParagraph,
+Document::retrieveParagraphBoundaryOfLine( Paragraph const * pParagraph,
                                            ::sal_Int32 nLineNo )
 {
     css::i18n::Boundary aBoundary;
@@ -1460,7 +1448,7 @@ Document::retrieveParagraphBoundaryOfLine( ParagraphImpl const * pParagraph,
     return aBoundary;
 }
 
-sal_Int32 Document::retrieveParagraphLineWithCursor( ParagraphImpl const * pParagraph )
+sal_Int32 Document::retrieveParagraphLineWithCursor( Paragraph const * pParagraph )
 {
     ::osl::Guard< ::comphelper::IMutex > aExternalGuard(getExternalLock());
     ::osl::MutexGuard aInternalGuard(GetMutex());
@@ -1474,7 +1462,7 @@ sal_Int32 Document::retrieveParagraphLineWithCursor( ParagraphImpl const * pPara
 
 
 css::uno::Reference< css::accessibility::XAccessibleRelationSet >
-Document::retrieveParagraphRelationSet( ParagraphImpl const * pParagraph )
+Document::retrieveParagraphRelationSet( Paragraph const * pParagraph )
 {
     ::osl::MutexGuard aInternalGuard( GetMutex() );
 
@@ -1727,7 +1715,7 @@ IMPL_LINK(Document, WindowEventHandler, ::VclSimpleEvent *, pEvent)
             if ((m_aFocused >= m_aVisibleBegin && m_aFocused < m_aVisibleEnd) || bEmpty)
             {
                 Paragraphs::iterator m_aTemp = bEmpty ? m_aVisibleBegin : m_aFocused;
-                ::rtl::Reference< ParagraphImpl > xParagraph(getParagraph(m_aTemp));
+                ::rtl::Reference< Paragraph > xParagraph(getParagraph(m_aTemp));
                 if (xParagraph.is())
                 {
                     xParagraph->notifyEvent(
@@ -1740,7 +1728,7 @@ IMPL_LINK(Document, WindowEventHandler, ::VclSimpleEvent *, pEvent)
                 }
             }
             /*
-                ::rtl::Reference< ParagraphImpl > xParagraph(
+                ::rtl::Reference< Paragraph > xParagraph(
                     getParagraph(m_aFocused));
                 if (xParagraph.is())
                     xParagraph->notifyEvent(
@@ -1764,7 +1752,7 @@ IMPL_LINK(Document, WindowEventHandler, ::VclSimpleEvent *, pEvent)
             if ((m_aFocused >= m_aVisibleBegin && m_aFocused < m_aVisibleEnd) || bEmpty)
             {
                 Paragraphs::iterator m_aTemp = bEmpty ? m_aVisibleBegin : m_aFocused;
-                ::rtl::Reference< ParagraphImpl > xParagraph(getParagraph(m_aTemp));
+                ::rtl::Reference< Paragraph > xParagraph(getParagraph(m_aTemp));
                 if (xParagraph.is())
                     xParagraph->notifyEvent(
                         ::css::accessibility::AccessibleEventId::
@@ -1778,7 +1766,7 @@ IMPL_LINK(Document, WindowEventHandler, ::VclSimpleEvent *, pEvent)
             /*
             if (m_aFocused >= m_aVisibleBegin && m_aFocused < m_aVisibleEnd)
             {
-                ::rtl::Reference< ParagraphImpl > xParagraph(
+                ::rtl::Reference< Paragraph > xParagraph(
                     getParagraph(m_aFocused));
                 if (xParagraph.is())
                     xParagraph->notifyEvent(
@@ -1825,10 +1813,10 @@ void Document::init()
     }
 }
 
-::rtl::Reference< ParagraphImpl >
+::rtl::Reference< Paragraph >
 Document::getParagraph(Paragraphs::iterator const & rIt)
 {
-    return static_cast< ParagraphImpl * >(
+    return static_cast< Paragraph * >(
         css::uno::Reference< css::accessibility::XAccessible >(
             rIt->getParagraph()).get());
 }
@@ -1979,7 +1967,7 @@ void Document::handleParagraphNotifications()
                     ++aIt;
                     if (aIt == m_xParagraphs->end())
                         break;
-                    ::rtl::Reference< ParagraphImpl > xParagraph(
+                    ::rtl::Reference< Paragraph > xParagraph(
                         getParagraph(aIt));
                     if (xParagraph.is())
                         xParagraph->numberChanged(true);
@@ -2081,7 +2069,7 @@ void Document::handleParagraphNotifications()
 
                     for (; aIt != m_xParagraphs->end(); ++aIt)
                     {
-                        ::rtl::Reference< ParagraphImpl > xParagraph(
+                        ::rtl::Reference< Paragraph > xParagraph(
                             getParagraph(aIt));
                         if (xParagraph.is())
                             xParagraph->numberChanged(false);
@@ -2125,7 +2113,7 @@ void Document::handleParagraphNotifications()
                 if (n < m_xParagraphs->size())
                 {
                     Paragraphs::iterator aIt(m_xParagraphs->begin() + n);
-                    ::rtl::Reference< ParagraphImpl > xParagraph(getParagraph(aIt));
+                    ::rtl::Reference< Paragraph > xParagraph(getParagraph(aIt));
                     if (xParagraph.is())
                         xParagraph->textChanged();
                 }
@@ -2253,7 +2241,7 @@ void Document::sendEvent(::sal_Int32 start, ::sal_Int32 end, ::sal_Int16 nEventI
     for (Paragraphs::iterator aIt = ::std::max(m_xParagraphs->begin() + start, m_aVisibleBegin);
          aIt < aEnd; ++aIt)
     {
-        ::rtl::Reference< ParagraphImpl > xParagraph(getParagraph(aIt));
+        ::rtl::Reference< Paragraph > xParagraph(getParagraph(aIt));
         if (xParagraph.is())
             xParagraph->notifyEvent(
             nEventId,
@@ -2283,7 +2271,7 @@ void Document::handleSelectionChangeNotification()
     if (m_aFocused != m_xParagraphs->end() && m_aFocused != aIt
         && m_aFocused >= m_aVisibleBegin && m_aFocused < m_aVisibleEnd)
     {
-        ::rtl::Reference< ParagraphImpl > xParagraph(getParagraph(m_aFocused));
+        ::rtl::Reference< Paragraph > xParagraph(getParagraph(m_aFocused));
         if (xParagraph.is())
             xParagraph->notifyEvent(
                 css::accessibility::AccessibleEventId::
@@ -2299,7 +2287,7 @@ void Document::handleSelectionChangeNotification()
             || nNewLastPara != m_nSelectionLastPara
             || nNewLastPos != m_nSelectionLastPos))
     {
-        ::rtl::Reference< ParagraphImpl > xParagraph(getParagraph(aIt));
+        ::rtl::Reference< Paragraph > xParagraph(getParagraph(aIt));
         if (xParagraph.is())
         {
         //disable the first event when user types in empty field.
commit bff533248df87249db93b60f9829b290900d4ae6
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 12:35:15 2014 +0100

    Use cppu::BaseMutex instead of framework::ThreadHelpBase
    
    Change-Id: I3e210cee3b6e0956175083ff0b55ff52c060d9c2

diff --git a/framework/inc/classes/actiontriggerpropertyset.hxx b/framework/inc/classes/actiontriggerpropertyset.hxx
index c321969..88679fe 100644
--- a/framework/inc/classes/actiontriggerpropertyset.hxx
+++ b/framework/inc/classes/actiontriggerpropertyset.hxx
@@ -20,7 +20,7 @@
 #ifndef INCLUDED_FRAMEWORK_INC_CLASSES_ACTIONTRIGGERPROPERTYSET_HXX
 #define INCLUDED_FRAMEWORK_INC_CLASSES_ACTIONTRIGGERPROPERTYSET_HXX
 
-#include <threadhelp/threadhelpbase.hxx>
+#include <cppuhelper/basemutex.hxx>
 #include <cppuhelper/propshlp.hxx>
 #include <cppuhelper/weak.hxx>
 #include <osl/mutex.hxx>
@@ -38,7 +38,7 @@
 namespace framework
 {
 
-class ActionTriggerPropertySet :  public ThreadHelpBase                       ,   // Struct for right initalization of mutex member! Must be first of baseclasses.
+class ActionTriggerPropertySet :  private cppu::BaseMutex,
                                     public ::com::sun::star::lang::XServiceInfo ,
                                     public ::com::sun::star::lang::XTypeProvider,
                                     public ::cppu::OBroadcastHelper             ,
diff --git a/framework/source/fwe/classes/actiontriggerpropertyset.cxx b/framework/source/fwe/classes/actiontriggerpropertyset.cxx
index 4e6e85d..6617aeb 100644
--- a/framework/source/fwe/classes/actiontriggerpropertyset.cxx
+++ b/framework/source/fwe/classes/actiontriggerpropertyset.cxx
@@ -19,6 +19,7 @@
 
 
 #include <classes/actiontriggerpropertyset.hxx>
+#include <threadhelp/lockhelper.hxx>
 #include <com/sun/star/beans/PropertyAttribute.hpp>
 #include <cppuhelper/proptypehlp.hxx>
 #include <cppuhelper/supportsservice.hxx>
@@ -53,8 +54,7 @@ namespace framework
 {
 
 ActionTriggerPropertySet::ActionTriggerPropertySet()
-    : ThreadHelpBase           ( &Application::GetSolarMutex()               )
-    , OBroadcastHelper         ( m_aLock.getShareableOslMutex()              )
+    : OBroadcastHelper         ( m_aMutex )
     ,   OPropertySetHelper       ( *(static_cast< OBroadcastHelper * >(this)))
     , OWeakObject              ()
     , m_xBitmap                ( 0 )
commit 1ae379f6bd85f7d6f7ebf58b15d7108a2982d74d
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Tue Mar 18 12:24:49 2014 +0100

    Access safe data members directly
    
    Change-Id: I2305c17d03c4b6ba3f77c7c5952aadda627118ac

diff --git a/framework/inc/dispatch/systemexec.hxx b/framework/inc/dispatch/systemexec.hxx
index a8e36e0..8fdab69 100644
--- a/framework/inc/dispatch/systemexec.hxx
+++ b/framework/inc/dispatch/systemexec.hxx
@@ -24,7 +24,6 @@
 #include <macros/xinterface.hxx>
 #include <macros/xtypeprovider.hxx>
 #include <macros/xserviceinfo.hxx>
-#include <threadhelp/threadhelpbase.hxx>
 #include <general.h>
 #include <stdtypes.h>
 
@@ -47,18 +46,12 @@ namespace framework{
                     It forwards all URL's to the underlying operating system.
                     So it would e.g. be possible to open HTML files outside the office within a web browser.
 
-    @base           ThreadHelpBase
-                        exports a lock member to guarantee right initialize value of it
     @base           OWeakObject
                         provides XWeak and ref count mechanism
 
     @devstatus      ready to use
 */
-class SystemExec :     // baseclasses
-                       // Order is necessary for right initialization!
-                       private ThreadHelpBase                ,
-                       // interfaces
-                       public  ::cppu::WeakImplHelper3<
+class SystemExec :     public  ::cppu::WeakImplHelper3<
                                    css::lang::XServiceInfo       ,
                                    css::frame::XDispatchProvider ,
                                    css::frame::XNotifyingDispatch > // => XDispatch
diff --git a/framework/source/dispatch/systemexec.cxx b/framework/source/dispatch/systemexec.cxx
index 97a30ec..6a5f826 100644
--- a/framework/source/dispatch/systemexec.cxx
+++ b/framework/source/dispatch/systemexec.cxx
@@ -18,7 +18,6 @@
  */
 
 #include <dispatch/systemexec.hxx>
-#include <threadhelp/guard.hxx>
 #include <general.h>
 #include <services.h>
 
@@ -57,10 +56,7 @@ DEFINE_INIT_SERVICE(SystemExec,
 
 
 SystemExec::SystemExec( const css::uno::Reference< css::uno::XComponentContext >& rxContext )
-        //  Init baseclasses first
-        : ThreadHelpBase( &Application::GetSolarMutex() )
-        // Init member
-        , m_xContext    ( rxContext                     )
+        : m_xContext    ( rxContext                     )
 {
 }
 
@@ -68,7 +64,6 @@ SystemExec::SystemExec( const css::uno::Reference< css::uno::XComponentContext >
 
 SystemExec::~SystemExec()
 {
-    m_xContext = NULL;
 }
 
 
@@ -122,21 +117,15 @@ void SAL_CALL SystemExec::dispatchWithNotification( const css::util::URL&
     }
     OUString sSystemURLWithVariables = aURL.Complete.copy(PROTOCOL_LENGTH, c);
 
-    // SAFE ->
-    Guard aReadLock(m_aLock);
-    css::uno::Reference< css::uno::XComponentContext > xContext = m_xContext;
-    aReadLock.unlock();
-    // <- SAFE
-
     // TODO check security settings ...
 
     try
     {
-        css::uno::Reference< css::util::XStringSubstitution > xPathSubst( css::util::PathSubstitution::create(xContext) );
+        css::uno::Reference< css::util::XStringSubstitution > xPathSubst( css::util::PathSubstitution::create(m_xContext) );
 
         OUString sSystemURL = xPathSubst->substituteVariables(sSystemURLWithVariables, sal_True); // sal_True force an exception if unknown variables exists !
 
-        css::uno::Reference< css::system::XSystemShellExecute > xShell = css::system::SystemShellExecute::create( xContext );
+        css::uno::Reference< css::system::XSystemShellExecute > xShell = css::system::SystemShellExecute::create( m_xContext );
 
         xShell->execute(sSystemURL, OUString(), css::system::SystemShellExecuteFlags::URIS_ONLY);

... etc. - the rest is truncated


More information about the Libreoffice-commits mailing list