From f8325dd3ea14a4766cd2bb7c0249338b59c2ed28 Mon Sep 17 00:00:00 2001 From: Miklos Vajna Date: Thu, 29 Nov 2018 21:34:51 +0100 Subject: starmath: create XMLOasisSettingsImporter instances with an uno constructor Change-Id: I92c8991baf10fde574d06ab0870bbb26a7632e65 Reviewed-on: https://gerrit.libreoffice.org/64284 Tested-by: Jenkins Reviewed-by: Miklos Vajna --- starmath/source/mathmlimport.cxx | 22 +++++----------------- starmath/source/register.cxx | 9 +-------- starmath/source/register.hxx | 7 ------- starmath/util/sm.component | 3 ++- 4 files changed, 8 insertions(+), 33 deletions(-) (limited to 'starmath') diff --git a/starmath/source/mathmlimport.cxx b/starmath/source/mathmlimport.cxx index fcf3ebb21b48..4db3dfef7fdf 100644 --- a/starmath/source/mathmlimport.cxx +++ b/starmath/source/mathmlimport.cxx @@ -79,9 +79,6 @@ using namespace ::com::sun::star::uno; using namespace ::com::sun::star; using namespace ::xmloff::token; - -#define IMPORT_SVC_NAME "com.sun.star.xml.XMLImportFilter" - namespace { SmNode* popOrZero(SmNodeStack& rStack) @@ -450,21 +447,12 @@ Math_XMLOasisMetaImporter_get_implementation(uno::XComponentContext* pCtx, SvXMLImportFlags::META)); } -OUString SmXMLImportSettings_getImplementationName() throw() -{ - return OUString( "com.sun.star.comp.Math.XMLOasisSettingsImporter" ); -} - -uno::Sequence< OUString > SmXMLImportSettings_getSupportedServiceNames() - throw() -{ - return uno::Sequence{ IMPORT_SVC_NAME }; -} - -uno::Reference< uno::XInterface > SmXMLImportSettings_createInstance( - const uno::Reference< lang::XMultiServiceFactory > & rSMgr) +extern "C" SAL_DLLPUBLIC_EXPORT uno::XInterface* +Math_XMLOasisSettingsImporter_get_implementation(uno::XComponentContext* pCtx, + uno::Sequence const& /*rSeq*/) { - return static_cast(new SmXMLImport( comphelper::getComponentContext(rSMgr), SmXMLImportSettings_getImplementationName(), SvXMLImportFlags::SETTINGS )); + return cppu::acquire(new SmXMLImport(pCtx, "com.sun.star.comp.Math.XMLOasisSettingsImporter", + SvXMLImportFlags::SETTINGS)); } sal_Int64 SAL_CALL SmXMLImport::getSomething( diff --git a/starmath/source/register.cxx b/starmath/source/register.cxx index e3bfe9f79e5b..3e06241484c3 100644 --- a/starmath/source/register.cxx +++ b/starmath/source/register.cxx @@ -46,14 +46,7 @@ SAL_DLLPUBLIC_EXPORT void* sm_component_getFactory( const sal_Char* pImplementat Reference< XSingleServiceFactory > xFactory ; Reference< XMultiServiceFactory > xServiceManager( static_cast< XMultiServiceFactory* >( pServiceManager ) ) ; - if (SmXMLImportSettings_getImplementationName().equalsAscii(pImplementationName)) - { - xFactory = ::cppu::createSingleFactory( xServiceManager, - SmXMLImportSettings_getImplementationName(), - SmXMLImportSettings_createInstance, - SmXMLImportSettings_getSupportedServiceNames() ); - } - else if( SmDocument_getImplementationName().equalsAscii( pImplementationName )) + if (SmDocument_getImplementationName().equalsAscii(pImplementationName)) { xFactory = ::sfx2::createSfxModelFactory( xServiceManager, SmDocument_getImplementationName(), diff --git a/starmath/source/register.hxx b/starmath/source/register.hxx index cad881135d63..be875fbeccb0 100644 --- a/starmath/source/register.hxx +++ b/starmath/source/register.hxx @@ -32,13 +32,6 @@ OUString css::uno::Reference< css::uno::XInterface > SmDocument_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > & rSMgr, SfxModelFlags _nCreationFlags); -css::uno::Sequence< OUString > - SmXMLImportSettings_getSupportedServiceNames() throw(); -OUString SmXMLImportSettings_getImplementationName() throw(); -/// @throws css::uno::Exception -css::uno::Reference< css::uno::XInterface > - SmXMLImportSettings_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > & rSMgr); - #endif /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/starmath/util/sm.component b/starmath/util/sm.component index 91b7f1994d30..775b41100a97 100644 --- a/starmath/util/sm.component +++ b/starmath/util/sm.component @@ -50,7 +50,8 @@ constructor="Math_XMLOasisSettingsExporter_get_implementation"> - +