[Libreoffice-commits] core.git: solenv/bin xmloff/inc xmloff/source xmloff/util

Miklos Vajna (via logerrit) logerrit at kemper.freedesktop.org
Thu Apr 9 07:03:22 UTC 2020


 solenv/bin/native-code.py            |    1 +
 xmloff/inc/facreg.hxx                |    9 ---------
 xmloff/source/chart/SchXMLExport.cxx |   20 +++++++-------------
 xmloff/source/core/facreg.cxx        |    5 +----
 xmloff/util/xo.component             |    3 ++-
 5 files changed, 11 insertions(+), 27 deletions(-)

New commits:
commit 56221dcb7cb29340eafc869da5af117b885cc8c8
Author:     Miklos Vajna <vmiklos at collabora.com>
AuthorDate: Wed Apr 8 21:13:02 2020 +0200
Commit:     Miklos Vajna <vmiklos at collabora.com>
CommitDate: Thu Apr 9 09:02:47 2020 +0200

    xmloff: create SchXMLExport_Oasis_Content instances with an uno constructor
    
    See tdf#74608 for motivation.
    
    Change-Id: I8b485f7e991ce64b8beebffe1ccd3d1e7a083f78
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91937
    Tested-by: Jenkins
    Reviewed-by: Miklos Vajna <vmiklos at collabora.com>

diff --git a/solenv/bin/native-code.py b/solenv/bin/native-code.py
index 00a98c5b8148..2a6628d2d306 100755
--- a/solenv/bin/native-code.py
+++ b/solenv/bin/native-code.py
@@ -328,6 +328,7 @@ core_constructor_list = [
     "com_sun_star_comp_Chart_XMLOasisMetaImporter_get_implementation",
     "com_sun_star_comp_Chart_XMLOasisMetaExporter_get_implementation",
     "com_sun_star_comp_Chart_XMLOasisStylesExporter_get_implementation",
+    "com_sun_star_comp_Chart_XMLOasisContentExporter_get_implementation",
     "com_sun_star_comp_Chart_XMLOasisStylesImporter_get_implementation",
     "com_sun_star_comp_Chart_XMLOasisContentImporter_get_implementation",
     "com_sun_star_comp_Chart_XMLOasisExporter_get_implementation",
diff --git a/xmloff/inc/facreg.hxx b/xmloff/inc/facreg.hxx
index 6c9fff91ea18..beaf764e3c7d 100644
--- a/xmloff/inc/facreg.hxx
+++ b/xmloff/inc/facreg.hxx
@@ -31,15 +31,6 @@ namespace com { namespace sun { namespace star {
     namespace uno { class XInterface; }
 } } }
 
-// chart oasis export
-OUString SchXMLExport_Oasis_Content_getImplementationName() throw();
-css::uno::Sequence<OUString> SchXMLExport_Oasis_Content_getSupportedServiceNames() throw();
-/// @throws css::uno::Exception
-css::uno::Reference<css::uno::XInterface> SchXMLExport_Oasis_Content_createInstance(
-    css::uno::Reference<css::lang::XMultiServiceFactory> const & rSMgr);
-
-// chart OOo import
-
 // chart OOo export
 OUString SchXMLExport_getImplementationName() throw();
 css::uno::Sequence<OUString> SchXMLExport_getSupportedServiceNames() throw();
diff --git a/xmloff/source/chart/SchXMLExport.cxx b/xmloff/source/chart/SchXMLExport.cxx
index b38edd87571b..9bf7d7baae3a 100644
--- a/xmloff/source/chart/SchXMLExport.cxx
+++ b/xmloff/source/chart/SchXMLExport.cxx
@@ -3821,20 +3821,14 @@ Reference< uno::XInterface > SchXMLExport_Content_createInstance(const Reference
     return static_cast<cppu::OWeakObject*>(new SchXMLExport( comphelper::getComponentContext(rSMgr), SchXMLExport_Content_getImplementationName(), SvXMLExportFlags::AUTOSTYLES | SvXMLExportFlags::CONTENT | SvXMLExportFlags::FONTDECLS ));
 }
 
-// Oasis format
-Sequence< OUString > SchXMLExport_Oasis_Content_getSupportedServiceNames() throw()
-{
-    return Sequence< OUString > { "com.sun.star.comp.Chart.XMLOasisContentExporter" };
-}
-
-OUString SchXMLExport_Oasis_Content_getImplementationName() throw()
-{
-    return "SchXMLExport.Oasis.Content";
-}
-
-Reference< uno::XInterface > SchXMLExport_Oasis_Content_createInstance(const Reference< lang::XMultiServiceFactory > & rSMgr)
+extern "C" SAL_DLLPUBLIC_EXPORT uno::XInterface*
+com_sun_star_comp_Chart_XMLOasisContentExporter_get_implementation(
+    uno::XComponentContext* pCtx, uno::Sequence<uno::Any> const& /*rSeq*/)
 {
-    return static_cast<cppu::OWeakObject*>(new SchXMLExport( comphelper::getComponentContext(rSMgr), SchXMLExport_Oasis_Content_getImplementationName(), SvXMLExportFlags::AUTOSTYLES | SvXMLExportFlags::CONTENT | SvXMLExportFlags::FONTDECLS | SvXMLExportFlags::OASIS ));
+    return cppu::acquire(new SchXMLExport(pCtx, "SchXMLExport.Oasis.Content",
+                                          SvXMLExportFlags::AUTOSTYLES | SvXMLExportFlags::CONTENT
+                                              | SvXMLExportFlags::FONTDECLS
+                                              | SvXMLExportFlags::OASIS));
 }
 
 // Oasis format
diff --git a/xmloff/source/core/facreg.cxx b/xmloff/source/core/facreg.cxx
index 0f3f84fb21e0..864a7ca8a418 100644
--- a/xmloff/source/core/facreg.cxx
+++ b/xmloff/source/core/facreg.cxx
@@ -54,11 +54,8 @@ XMLOFF_DLLPUBLIC void * xo_component_getFactory( const char * pImplName, void *
 
         const sal_Int32 nImplNameLen = strlen( pImplName );
 
-        // chart oasis export
-        SINGLEFACTORY( SchXMLExport_Oasis_Content )
-
         // chart OOo export
-        else SINGLEFACTORY( SchXMLExport )
+        SINGLEFACTORY( SchXMLExport )
         else SINGLEFACTORY( SchXMLExport_Styles )
         else SINGLEFACTORY( SchXMLExport_Content )
 
diff --git a/xmloff/util/xo.component b/xmloff/util/xo.component
index a5953b44c4ab..e92c1cdeb66b 100644
--- a/xmloff/util/xo.component
+++ b/xmloff/util/xo.component
@@ -29,7 +29,8 @@
       constructor="com_sun_star_comp_Chart_XMLOasisExporter_get_implementation">
     <service name="com.sun.star.comp.Chart.XMLOasisExporter"/>
   </implementation>
-  <implementation name="SchXMLExport.Oasis.Content">
+  <implementation name="SchXMLExport.Oasis.Content"
+      constructor="com_sun_star_comp_Chart_XMLOasisContentExporter_get_implementation">
     <service name="com.sun.star.comp.Chart.XMLOasisContentExporter"/>
   </implementation>
   <implementation name="SchXMLExport.Oasis.Meta"


More information about the Libreoffice-commits mailing list