[Libreoffice-commits] core.git: 2 commits - sw/source sw/util

Stephan Bergmann sbergman at redhat.com
Thu Feb 26 05:20:30 PST 2015


 sw/source/core/inc/unofreg.hxx   |    6 ----
 sw/source/uibase/uno/unodoc.cxx  |   53 ++++++++-------------------------------
 sw/source/uibase/uno/unofreg.cxx |   16 -----------
 sw/util/sw.component             |    6 ++--
 4 files changed, 16 insertions(+), 65 deletions(-)

New commits:
commit 50a0cca89bd86a36c4ee043cd92e2f84f5a6e0d1
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Thu Feb 26 14:07:43 2015 +0100

    Unused #include
    
    Change-Id: Ic42209c7a53c23d7b003778c2d2c88a8682569e4

diff --git a/sw/source/uibase/uno/unodoc.cxx b/sw/source/uibase/uno/unodoc.cxx
index 2f4291b..a3b3d7c 100644
--- a/sw/source/uibase/uno/unodoc.cxx
+++ b/sw/source/uibase/uno/unodoc.cxx
@@ -26,7 +26,6 @@
 #include "wdocsh.hxx"
 #include <osl/mutex.hxx>
 #include <vcl/svapp.hxx>
-#include <cppuhelper/weak.hxx>
 
 using namespace ::com::sun::star;
 
commit 80bcdb1e4fb8ad8d58d47afb5d07845cf90679cb
Author: Chris Sherlock <chris.sherlock at collabora.com>
Date:   Tue Feb 24 02:07:17 2015 +1100

    sw: convert SwWebDocument & SwGlobalDocument components to use constructor
    
    Change-Id: Ib59fa91eb9d32ea437c182d3c0f3b9348816bf7b
    Signed-off-by: Stephan Bergmann <sbergman at redhat.com>

diff --git a/sw/source/core/inc/unofreg.hxx b/sw/source/core/inc/unofreg.hxx
index 3e6a1f3..0b49ffd 100644
--- a/sw/source/core/inc/unofreg.hxx
+++ b/sw/source/core/inc/unofreg.hxx
@@ -38,12 +38,6 @@ css::uno::Reference< css::uno::XInterface > SAL_CALL SwUnoModule_createInstance(
 css::uno::Sequence< OUString > SAL_CALL SwTextDocument_getSupportedServiceNames() throw();
 OUString SAL_CALL SwTextDocument_getImplementationName() throw();
 css::uno::Reference< css::uno::XInterface > SAL_CALL SwTextDocument_createInstance( const css::uno::Reference< css::lang::XMultiServiceFactory > &rSMgr, const sal_uInt64 _nCreationFlags ) throw( css::uno::Exception );
-css::uno::Sequence< OUString > SAL_CALL SwWebDocument_getSupportedServiceNames() throw();
-OUString SAL_CALL SwWebDocument_getImplementationName() throw();
-css::uno::Reference< css::uno::XInterface > SAL_CALL SwWebDocument_createInstance( const css::uno::Reference< css::lang::XMultiServiceFactory > &rSMgr ) throw( css::uno::Exception );
-css::uno::Sequence< OUString > SAL_CALL SwGlobalDocument_getSupportedServiceNames() throw();
-OUString SAL_CALL SwGlobalDocument_getImplementationName() throw();
-css::uno::Reference< css::uno::XInterface > SAL_CALL SwGlobalDocument_createInstance( const css::uno::Reference< css::lang::XMultiServiceFactory > &rSMgr ) throw( css::uno::Exception );
 
 //API objects
 css::uno::Sequence< OUString > SAL_CALL SwXAutoTextContainer_getSupportedServiceNames() throw();
diff --git a/sw/source/uibase/uno/unodoc.cxx b/sw/source/uibase/uno/unodoc.cxx
index 41189d2..2f4291b 100644
--- a/sw/source/uibase/uno/unodoc.cxx
+++ b/sw/source/uibase/uno/unodoc.cxx
@@ -26,6 +26,7 @@
 #include "wdocsh.hxx"
 #include <osl/mutex.hxx>
 #include <vcl/svapp.hxx>
+#include <cppuhelper/weak.hxx>
 
 using namespace ::com::sun::star;
 
@@ -57,58 +58,29 @@ uno::Reference< uno::XInterface > SAL_CALL SwTextDocument_createInstance(
     return uno::Reference< uno::XInterface >( pShell->GetModel() );
 }
 
-// com.sun.star.comp.Writer.WebDocument
-
-uno::Sequence< OUString > SAL_CALL SwWebDocument_getSupportedServiceNames() throw()
-{
-    // return only top level services here! All others must be
-    // resolved by rtti!
-    uno::Sequence< OUString > aRet ( 1 );
-    OUString* pArray = aRet.getArray();
-    pArray[0] = "com.sun.star.text.WebDocument";
-
-    return aRet;
-}
-
-OUString SAL_CALL SwWebDocument_getImplementationName() throw()
-{
-    return OUString( "com.sun.star.comp.Writer.WebDocument" );
-}
-
-uno::Reference< uno::XInterface > SAL_CALL SwWebDocument_createInstance(
-    const uno::Reference< lang::XMultiServiceFactory > & )
-        throw( uno::Exception )
+extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL
+com_sun_star_comp_Writer_WebDocument_get_implementation(::com::sun::star::uno::XComponentContext*,
+                                                        ::com::sun::star::uno::Sequence<css::uno::Any> const &)
 {
     SolarMutexGuard aGuard;
     SwGlobals::ensure();
     SfxObjectShell* pShell = new SwWebDocShell( SFX_CREATE_MODE_STANDARD );
-    return uno::Reference< uno::XInterface >( pShell->GetModel() );
-}
-
-// com.sun.star.comp.Writer.GlobalDocument
-
-uno::Sequence< OUString > SAL_CALL SwGlobalDocument_getSupportedServiceNames() throw()
-{
-    uno::Sequence< OUString > aRet ( 1 );
-    OUString* pArray = aRet.getArray();
-    pArray[0] = "com.sun.star.text.GlobalDocument";
-
-    return aRet;
+    uno::Reference< uno::XInterface > model( pShell->GetModel() );
+    model->acquire();
+    return model.get();
 }
 
-OUString SAL_CALL SwGlobalDocument_getImplementationName() throw()
-{
-    return OUString( "com.sun.star.comp.Writer.GlobalDocument" );
-}
 
-uno::Reference< uno::XInterface > SAL_CALL SwGlobalDocument_createInstance(
-    const uno::Reference< lang::XMultiServiceFactory > &)
-        throw( uno::Exception )
+extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL
+com_sun_star_comp_Writer_GlobalDocument_get_implementation(::com::sun::star::uno::XComponentContext*,
+                                                           ::com::sun::star::uno::Sequence<css::uno::Any> const &)
 {
     SolarMutexGuard aGuard;
     SwGlobals::ensure();
     SfxObjectShell* pShell = new SwGlobalDocShell( SFX_CREATE_MODE_STANDARD );
-    return uno::Reference< uno::XInterface >( pShell->GetModel() );
+    uno::Reference< uno::XInterface > model( pShell->GetModel() );
+    model->acquire();
+    return model.get();
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/sw/source/uibase/uno/unofreg.cxx b/sw/source/uibase/uno/unofreg.cxx
index 84105c1..c5b2138 100644
--- a/sw/source/uibase/uno/unofreg.cxx
+++ b/sw/source/uibase/uno/unofreg.cxx
@@ -102,22 +102,6 @@ SAL_DLLPUBLIC_EXPORT void * SAL_CALL sw_component_getFactory(
                 SwTextDocument_createInstance,
                 SwTextDocument_getSupportedServiceNames() );
         }
-        else if( SwWebDocument_getImplementationName().equalsAsciiL(
-                                                    pImplName, nImplNameLen ) )
-        {
-            xFactory = ::cppu::createSingleFactory( xMSF,
-                SwWebDocument_getImplementationName(),
-                SwWebDocument_createInstance,
-                SwWebDocument_getSupportedServiceNames() );
-        }
-        else if( SwGlobalDocument_getImplementationName().equalsAsciiL(
-                                                    pImplName, nImplNameLen ) )
-        {
-            xFactory = ::cppu::createSingleFactory( xMSF,
-                SwGlobalDocument_getImplementationName(),
-                SwGlobalDocument_createInstance,
-                SwGlobalDocument_getSupportedServiceNames() );
-        }
         else if( SwUnoModule_getImplementationName().equalsAsciiL(
                                                     pImplName, nImplNameLen ) )
         {
diff --git a/sw/util/sw.component b/sw/util/sw.component
index 81baa5f..0b75e67 100644
--- a/sw/util/sw.component
+++ b/sw/util/sw.component
@@ -31,13 +31,15 @@
   <implementation name="com.sun.star.comp.Writer.FilterOptionsDialog">
     <service name="com.sun.star.ui.dialogs.FilterOptionsDialog"/>
   </implementation>
-  <implementation name="com.sun.star.comp.Writer.GlobalDocument">
+  <implementation name="com.sun.star.comp.Writer.GlobalDocument"
+      constructor="com_sun_star_comp_Writer_GlobalDocument_get_implementation">
     <service name="com.sun.star.text.GlobalDocument"/>
   </implementation>
   <implementation name="com.sun.star.comp.Writer.TextDocument">
     <service name="com.sun.star.text.TextDocument"/>
   </implementation>
-  <implementation name="com.sun.star.comp.Writer.WebDocument">
+  <implementation name="com.sun.star.comp.Writer.WebDocument"
+      constructor="com_sun_star_comp_Writer_WebDocument_get_implementation">
     <service name="com.sun.star.text.WebDocument"/>
   </implementation>
   <implementation name="com.sun.star.comp.Writer.WriterModule">


More information about the Libreoffice-commits mailing list