summaryrefslogtreecommitdiff
path: root/xmloff
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.com>2020-05-14 21:03:36 +0200
committerMiklos Vajna <vmiklos@collabora.com>2020-05-15 09:27:51 +0200
commit8a227630f1b4c8d592f33231977febb944be6a8e (patch)
treec54af0824172a71d0e05afdbad623dc93b7accc1 /xmloff
parent4f6931d68664237f7f7eb1f55988b713034c77ba (diff)
xmloff: create SchXMLExport_Content instances with an uno constructor
See tdf#74608 for motivation. Change-Id: I49f00c08635e571d75e5190d55cbe1f279566797 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94255 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Diffstat (limited to 'xmloff')
-rw-r--r--xmloff/inc/facreg.hxx7
-rw-r--r--xmloff/source/chart/SchXMLExport.cxx18
-rw-r--r--xmloff/source/core/facreg.cxx5
-rw-r--r--xmloff/util/xo.component3
4 files changed, 9 insertions, 24 deletions
diff --git a/xmloff/inc/facreg.hxx b/xmloff/inc/facreg.hxx
index c97d278dc953..25091efca08e 100644
--- a/xmloff/inc/facreg.hxx
+++ b/xmloff/inc/facreg.hxx
@@ -31,13 +31,6 @@ namespace com::sun::star {
namespace uno { class XInterface; }
}
-// chart OOo export
-OUString SchXMLExport_Content_getImplementationName() throw();
-css::uno::Sequence<OUString> SchXMLExport_Content_getSupportedServiceNames() throw();
-/// @throws css::uno::Exception
-css::uno::Reference<css::uno::XInterface> SchXMLExport_Content_createInstance(
- css::uno::Reference<css::lang::XMultiServiceFactory> const & rSMgr);
-
// meta export OOo
OUString XMLMetaExportOOO_getImplementationName() throw();
css::uno::Sequence<OUString> XMLMetaExportOOO_getSupportedServiceNames() throw();
diff --git a/xmloff/source/chart/SchXMLExport.cxx b/xmloff/source/chart/SchXMLExport.cxx
index 6c2f7b1e4120..2b4549889f2a 100644
--- a/xmloff/source/chart/SchXMLExport.cxx
+++ b/xmloff/source/chart/SchXMLExport.cxx
@@ -3820,19 +3820,13 @@ com_sun_star_comp_Chart_XMLOasisStylesExporter_get_implementation(
SvXMLExportFlags::STYLES | SvXMLExportFlags::OASIS));
}
-Sequence< OUString > SchXMLExport_Content_getSupportedServiceNames() throw()
-{
- return Sequence< OUString > { "com.sun.star.comp.Chart.XMLContentExporter" };
-}
-
-OUString SchXMLExport_Content_getImplementationName() throw()
-{
- return "SchXMLExport.Content";
-}
-
-Reference< uno::XInterface > SchXMLExport_Content_createInstance(const Reference< lang::XMultiServiceFactory > & rSMgr)
+extern "C" SAL_DLLPUBLIC_EXPORT uno::XInterface*
+com_sun_star_comp_Chart_XMLContentExporter_get_implementation(
+ uno::XComponentContext* pCtx, uno::Sequence<uno::Any> const& /*rSeq*/)
{
- return static_cast<cppu::OWeakObject*>(new SchXMLExport( comphelper::getComponentContext(rSMgr), SchXMLExport_Content_getImplementationName(), SvXMLExportFlags::AUTOSTYLES | SvXMLExportFlags::CONTENT | SvXMLExportFlags::FONTDECLS ));
+ return cppu::acquire(new SchXMLExport(pCtx, "SchXMLExport.Content",
+ SvXMLExportFlags::AUTOSTYLES | SvXMLExportFlags::CONTENT
+ | SvXMLExportFlags::FONTDECLS));
}
extern "C" SAL_DLLPUBLIC_EXPORT uno::XInterface*
diff --git a/xmloff/source/core/facreg.cxx b/xmloff/source/core/facreg.cxx
index e874fd89352e..48b12ad2060e 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 OOo export
- SINGLEFACTORY( SchXMLExport_Content )
-
// meta import/export OOo
- else SINGLEFACTORY( XMLMetaExportOOO )
+ SINGLEFACTORY( XMLMetaExportOOO )
// auto text import/export
else SINGLEFACTORY( XMLAutoTextEventExport )
diff --git a/xmloff/util/xo.component b/xmloff/util/xo.component
index 123b7b4cf224..cbb4efbf5bed 100644
--- a/xmloff/util/xo.component
+++ b/xmloff/util/xo.component
@@ -23,7 +23,8 @@
constructor="com_sun_star_comp_Chart_XMLExporter_get_implementation">
<service name="com.sun.star.comp.Chart.XMLExporter"/>
</implementation>
- <implementation name="SchXMLExport.Content">
+ <implementation name="SchXMLExport.Content"
+ constructor="com_sun_star_comp_Chart_XMLContentExporter_get_implementation">
<service name="com.sun.star.comp.Chart.XMLContentExporter"/>
</implementation>
<implementation name="SchXMLExport.Oasis.Compact"