summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.com>2019-08-15 22:06:01 +0200
committerMiklos Vajna <vmiklos@collabora.com>2019-08-16 09:03:05 +0200
commitabeab40aeb2bf16c1438b5e5f0cd70b3e11f6b7a (patch)
treeebd4063013bbf33bb4d621ff9f05f0292aab5616
parent5a522a0196aaa071bd3ac59b3088246e3fe98f34 (diff)
xmloff: create XMLImpressMetaExportOOO instances with an uno constructor
See tdf#74608 for motivation. Change-Id: I6c390f6cef83393b630bd0c157aff8d1359c6754 Reviewed-on: https://gerrit.libreoffice.org/77551 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
-rwxr-xr-xsolenv/bin/native-code.py1
-rw-r--r--xmloff/inc/facreg.hxx5
-rw-r--r--xmloff/source/core/facreg.cxx1
-rw-r--r--xmloff/source/draw/sdxmlexp.cxx9
-rw-r--r--xmloff/util/xo.component3
5 files changed, 11 insertions, 8 deletions
diff --git a/solenv/bin/native-code.py b/solenv/bin/native-code.py
index e3d6f5be6238..3df962855970 100755
--- a/solenv/bin/native-code.py
+++ b/solenv/bin/native-code.py
@@ -278,6 +278,7 @@ core_constructor_list = [
"com_sun_star_comp_Impress_XMLOasisSettingsImporter_get_implementation",
"com_sun_star_comp_Impress_XMLStylesExporter_get_implementation",
"com_sun_star_comp_Impress_XMLContentExporter_get_implementation",
+ "com_sun_star_comp_Impress_XMLMetaExporter_get_implementation",
"com_sun_star_comp_Draw_XMLOasisImporter_get_implementation",
"com_sun_star_comp_Draw_XMLOasisStylesImporter_get_implementation",
"com_sun_star_comp_Draw_XMLOasisContentImporter_get_implementation",
diff --git a/xmloff/inc/facreg.hxx b/xmloff/inc/facreg.hxx
index 83705cef2e65..69f45f0920af 100644
--- a/xmloff/inc/facreg.hxx
+++ b/xmloff/inc/facreg.hxx
@@ -39,11 +39,6 @@ css::uno::Sequence<OUString> XMLImpressExportOOO_getSupportedServiceNames() thro
/// @throws css::uno::Exception
css::uno::Reference<css::uno::XInterface> XMLImpressExportOOO_createInstance(
css::uno::Reference<css::lang::XMultiServiceFactory> const & rSMgr);
-OUString XMLImpressMetaExportOOO_getImplementationName() throw();
-css::uno::Sequence<OUString> XMLImpressMetaExportOOO_getSupportedServiceNames() throw();
-/// @throws css::uno::Exception
-css::uno::Reference<css::uno::XInterface> XMLImpressMetaExportOOO_createInstance(
- css::uno::Reference<css::lang::XMultiServiceFactory> const & rSMgr);
OUString XMLImpressSettingsExportOOO_getImplementationName() throw();
css::uno::Sequence<OUString> XMLImpressSettingsExportOOO_getSupportedServiceNames() throw();
/// @throws css::uno::Exception
diff --git a/xmloff/source/core/facreg.cxx b/xmloff/source/core/facreg.cxx
index 14f0764d5215..a7e1483df906 100644
--- a/xmloff/source/core/facreg.cxx
+++ b/xmloff/source/core/facreg.cxx
@@ -60,7 +60,6 @@ XMLOFF_DLLPUBLIC void * xo_component_getFactory( const sal_Char * pImplName, voi
// impress OOo export
else SINGLEFACTORY( XMLImpressExportOOO )
- else SINGLEFACTORY( XMLImpressMetaExportOOO )
else SINGLEFACTORY( XMLImpressSettingsExportOOO )
// draw oasis export
diff --git a/xmloff/source/draw/sdxmlexp.cxx b/xmloff/source/draw/sdxmlexp.cxx
index f6d4e938efeb..9e75edacafaa 100644
--- a/xmloff/source/draw/sdxmlexp.cxx
+++ b/xmloff/source/draw/sdxmlexp.cxx
@@ -2677,8 +2677,15 @@ com_sun_star_comp_Impress_XMLContentExporter_get_implementation(
| SvXMLExportFlags::FONTDECLS));
}
+extern "C" SAL_DLLPUBLIC_EXPORT uno::XInterface*
+com_sun_star_comp_Impress_XMLMetaExporter_get_implementation(
+ uno::XComponentContext* pCtx, uno::Sequence<uno::Any> const& /*rSeq*/)
+{
+ return cppu::acquire(
+ new SdXMLExport(pCtx, "XMLImpressMetaExportOOO", false, SvXMLExportFlags::META));
+}
+
SERVICE( XMLImpressExportOOO, "com.sun.star.comp.Impress.XMLExporter", "XMLImpressExportOOO", false, SvXMLExportFlags::META|SvXMLExportFlags::STYLES|SvXMLExportFlags::MASTERSTYLES|SvXMLExportFlags::AUTOSTYLES|SvXMLExportFlags::CONTENT|SvXMLExportFlags::SCRIPTS|SvXMLExportFlags::SETTINGS|SvXMLExportFlags::FONTDECLS|SvXMLExportFlags::EMBEDDED );
-SERVICE( XMLImpressMetaExportOOO, "com.sun.star.comp.Impress.XMLMetaExporter", "XMLImpressMetaExportOOO", false, SvXMLExportFlags::META );
SERVICE( XMLImpressSettingsExportOOO, "com.sun.star.comp.Impress.XMLSettingsExporter", "XMLImpressSettingsExportOOO", false, SvXMLExportFlags::SETTINGS );
SERVICE( XMLDrawExportOasis, "com.sun.star.comp.Draw.XMLOasisExporter", "XMLDrawExportOasis", true, SvXMLExportFlags::OASIS|SvXMLExportFlags::META|SvXMLExportFlags::STYLES|SvXMLExportFlags::MASTERSTYLES|SvXMLExportFlags::AUTOSTYLES|SvXMLExportFlags::CONTENT|SvXMLExportFlags::SCRIPTS|SvXMLExportFlags::SETTINGS|SvXMLExportFlags::FONTDECLS|SvXMLExportFlags::EMBEDDED );
diff --git a/xmloff/util/xo.component b/xmloff/util/xo.component
index 3cf27c8c4753..7afbec76ea98 100644
--- a/xmloff/util/xo.component
+++ b/xmloff/util/xo.component
@@ -119,7 +119,8 @@
constructor="com_sun_star_comp_Impress_XMLOasisImporter_get_implementation">
<service name="com.sun.star.comp.Impress.XMLOasisImporter"/>
</implementation>
- <implementation name="XMLImpressMetaExportOOO">
+ <implementation name="XMLImpressMetaExportOOO"
+ constructor="com_sun_star_comp_Impress_XMLMetaExporter_get_implementation">
<service name="com.sun.star.comp.Impress.XMLMetaExporter"/>
</implementation>
<implementation name="XMLImpressMetaExportOasis"