From cd231286f4a54e4998ad9f5a24f65a91bac2a07d Mon Sep 17 00:00:00 2001 From: Chris Sherlock Date: Mon, 23 Feb 2015 11:41:59 +1100 Subject: sw: convert import & export components to constructor usage Change-Id: I15b64f874f72715cea04f656e1b883c6cf45a86c Signed-off-by: Stephan Bergmann --- sw/source/core/inc/unofreg.hxx | 53 ------- sw/source/filter/xml/xmlexp.cxx | 304 +++++++++++---------------------------- sw/source/filter/xml/xmlimp.cxx | 158 ++++++-------------- sw/source/uibase/uno/unofreg.cxx | 122 +--------------- sw/util/sw.component | 45 ++++-- 5 files changed, 157 insertions(+), 525 deletions(-) diff --git a/sw/source/core/inc/unofreg.hxx b/sw/source/core/inc/unofreg.hxx index d40428125d61..3e6a1f3a396b 100644 --- a/sw/source/core/inc/unofreg.hxx +++ b/sw/source/core/inc/unofreg.hxx @@ -45,59 +45,6 @@ css::uno::Sequence< OUString > SAL_CALL SwGlobalDocument_getSupportedServiceName 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 ); -// xml import -css::uno::Sequence< OUString > SAL_CALL SwXMLImport_getSupportedServiceNames() throw(); -OUString SAL_CALL SwXMLImport_getImplementationName() throw(); -css::uno::Reference< css::uno::XInterface > SAL_CALL SwXMLImport_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > & rSMgr) throw( css::uno::Exception ); -css::uno::Sequence< OUString > SAL_CALL SwXMLImportStyles_getSupportedServiceNames() throw(); -OUString SAL_CALL SwXMLImportStyles_getImplementationName() throw(); -css::uno::Reference< css::uno::XInterface > SAL_CALL SwXMLImportStyles_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > & rSMgr) throw( css::uno::Exception ); -css::uno::Sequence< OUString > SAL_CALL SwXMLImportContent_getSupportedServiceNames() throw(); -OUString SAL_CALL SwXMLImportContent_getImplementationName() throw(); -css::uno::Reference< css::uno::XInterface > SAL_CALL SwXMLImportContent_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > & rSMgr) throw( css::uno::Exception ); - -css::uno::Sequence< OUString > SAL_CALL SwXMLImportMeta_getSupportedServiceNames() throw(); -OUString SAL_CALL SwXMLImportMeta_getImplementationName() throw(); -css::uno::Reference< css::uno::XInterface > SAL_CALL SwXMLImportMeta_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > & rSMgr) throw( css::uno::Exception ); - -css::uno::Sequence< OUString > SAL_CALL SwXMLImportSettings_getSupportedServiceNames() throw(); -OUString SAL_CALL SwXMLImportSettings_getImplementationName() throw(); -css::uno::Reference< css::uno::XInterface > SAL_CALL SwXMLImportSettings_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > & rSMgr) throw( css::uno::Exception ); - -// xml export (OOo) -css::uno::Sequence< OUString > SAL_CALL SwXMLExportOOO_getSupportedServiceNames() throw(); -OUString SAL_CALL SwXMLExportOOO_getImplementationName() throw(); -css::uno::Reference< css::uno::XInterface > SAL_CALL SwXMLExportOOO_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > & rSMgr) throw( css::uno::Exception ); -css::uno::Sequence< OUString > SAL_CALL SwXMLExportContentOOO_getSupportedServiceNames() throw(); -OUString SAL_CALL SwXMLExportContentOOO_getImplementationName() throw(); -css::uno::Reference< css::uno::XInterface > SAL_CALL SwXMLExportContentOOO_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > & rSMgr) throw( css::uno::Exception ); -css::uno::Sequence< OUString > SAL_CALL SwXMLExportStylesOOO_getSupportedServiceNames() throw(); -OUString SAL_CALL SwXMLExportStylesOOO_getImplementationName() throw(); -css::uno::Reference< css::uno::XInterface > SAL_CALL SwXMLExportStylesOOO_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > & rSMgr) throw( css::uno::Exception ); -css::uno::Sequence< OUString > SAL_CALL SwXMLExportMetaOOO_getSupportedServiceNames() throw(); -OUString SAL_CALL SwXMLExportMetaOOO_getImplementationName() throw(); -css::uno::Reference< css::uno::XInterface > SAL_CALL SwXMLExportMetaOOO_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > & rSMgr) throw( css::uno::Exception ); -css::uno::Sequence< OUString > SAL_CALL SwXMLExportSettingsOOO_getSupportedServiceNames() throw(); -OUString SAL_CALL SwXMLExportSettingsOOO_getImplementationName() throw(); -css::uno::Reference< css::uno::XInterface > SAL_CALL SwXMLExportSettingsOOO_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > & rSMgr) throw( css::uno::Exception ); - -// xml export (OASIS) -css::uno::Sequence< OUString > SAL_CALL SwXMLExport_getSupportedServiceNames() throw(); -OUString SAL_CALL SwXMLExport_getImplementationName() throw(); -css::uno::Reference< css::uno::XInterface > SAL_CALL SwXMLExport_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > & rSMgr) throw( css::uno::Exception ); -css::uno::Sequence< OUString > SAL_CALL SwXMLExportContent_getSupportedServiceNames() throw(); -OUString SAL_CALL SwXMLExportContent_getImplementationName() throw(); -css::uno::Reference< css::uno::XInterface > SAL_CALL SwXMLExportContent_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > & rSMgr) throw( css::uno::Exception ); -css::uno::Sequence< OUString > SAL_CALL SwXMLExportStyles_getSupportedServiceNames() throw(); -OUString SAL_CALL SwXMLExportStyles_getImplementationName() throw(); -css::uno::Reference< css::uno::XInterface > SAL_CALL SwXMLExportStyles_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > & rSMgr) throw( css::uno::Exception ); -css::uno::Sequence< OUString > SAL_CALL SwXMLExportMeta_getSupportedServiceNames() throw(); -OUString SAL_CALL SwXMLExportMeta_getImplementationName() throw(); -css::uno::Reference< css::uno::XInterface > SAL_CALL SwXMLExportMeta_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > & rSMgr) throw( css::uno::Exception ); -css::uno::Sequence< OUString > SAL_CALL SwXMLExportSettings_getSupportedServiceNames() throw(); -OUString SAL_CALL SwXMLExportSettings_getImplementationName() throw(); -css::uno::Reference< css::uno::XInterface > SAL_CALL SwXMLExportSettings_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory > & rSMgr) throw( css::uno::Exception ); - //API objects css::uno::Sequence< OUString > SAL_CALL SwXAutoTextContainer_getSupportedServiceNames() throw(); OUString SAL_CALL SwXAutoTextContainer_getImplementationName() throw(); diff --git a/sw/source/filter/xml/xmlexp.cxx b/sw/source/filter/xml/xmlexp.cxx index 1af695cc928f..ba6c78e7f033 100644 --- a/sw/source/filter/xml/xmlexp.cxx +++ b/sw/source/filter/xml/xmlexp.cxx @@ -500,271 +500,131 @@ void SwXMLExport::_ExportContent() GetTextParagraphExport()->exportText( xText, bShowProgress ); } -// uno component registration -// helper functions for export service(s) - -// OOo -OUString SAL_CALL SwXMLExportOOO_getImplementationName() throw() -{ - return OUString( - "com.sun.star.comp.Writer.XMLExporter" ); -} - -Sequence< OUString > SAL_CALL SwXMLExportOOO_getSupportedServiceNames() - throw() -{ - const OUString aServiceName(SwXMLExportOOO_getImplementationName()); - const Sequence< OUString > aSeq( &aServiceName, 1 ); - return aSeq; -} - -Reference< XInterface > SAL_CALL SwXMLExportOOO_createInstance( - const Reference< XMultiServiceFactory > & rSMgr) - throw( Exception ) -{ - return (cppu::OWeakObject*)new SwXMLExport( comphelper::getComponentContext(rSMgr), SwXMLExportOOO_getImplementationName(), SvXMLExportFlags::ALL); -} - -OUString SAL_CALL SwXMLExportStylesOOO_getImplementationName() throw() -{ - return OUString( - "com.sun.star.comp.Writer.XMLStylesExporter" ); -} - -Sequence< OUString > SAL_CALL SwXMLExportStylesOOO_getSupportedServiceNames() - throw() -{ - const OUString aServiceName(SwXMLExportStylesOOO_getImplementationName()); - const Sequence< OUString > aSeq( &aServiceName, 1 ); - return aSeq; -} - -Reference< XInterface > SAL_CALL SwXMLExportStylesOOO_createInstance( - const Reference< XMultiServiceFactory > & rSMgr) - throw( Exception ) -{ - return (cppu::OWeakObject*)new SwXMLExport( comphelper::getComponentContext(rSMgr), SwXMLExportStylesOOO_getImplementationName(), - SvXMLExportFlags::STYLES | SvXMLExportFlags::MASTERSTYLES | SvXMLExportFlags::AUTOSTYLES | - SvXMLExportFlags::FONTDECLS ); -} - -OUString SAL_CALL SwXMLExportContentOOO_getImplementationName() throw() -{ - return OUString( - "com.sun.star.comp.Writer.XMLContentExporter" ); -} - -Sequence< OUString > SAL_CALL SwXMLExportContentOOO_getSupportedServiceNames() - throw() -{ - const OUString aServiceName(SwXMLExportContentOOO_getImplementationName()); - const Sequence< OUString > aSeq( &aServiceName, 1 ); - return aSeq; -} - -Reference< XInterface > SAL_CALL SwXMLExportContentOOO_createInstance( - const Reference< XMultiServiceFactory > & rSMgr) - throw( Exception ) -{ - return (cppu::OWeakObject*)new SwXMLExport( comphelper::getComponentContext(rSMgr), SwXMLExportContentOOO_getImplementationName(), - SvXMLExportFlags::AUTOSTYLES | SvXMLExportFlags::CONTENT | SvXMLExportFlags::SCRIPTS | - SvXMLExportFlags::FONTDECLS ); -} - -OUString SAL_CALL SwXMLExportMetaOOO_getImplementationName() throw() -{ - return OUString( - "com.sun.star.comp.Writer.XMLMetaExporter" ); -} - -Sequence< OUString > SAL_CALL SwXMLExportMetaOOO_getSupportedServiceNames() - throw() -{ - const OUString aServiceName(SwXMLExportMetaOOO_getImplementationName()); - const Sequence< OUString > aSeq( &aServiceName, 1 ); - return aSeq; -} - -Reference< XInterface > SAL_CALL SwXMLExportMetaOOO_createInstance( - const Reference< XMultiServiceFactory > & rSMgr) - throw( Exception ) -{ - return (cppu::OWeakObject*)new SwXMLExport( comphelper::getComponentContext(rSMgr), SwXMLExportMetaOOO_getImplementationName(), SvXMLExportFlags::META); -} - -OUString SAL_CALL SwXMLExportSettingsOOO_getImplementationName() throw() -{ - return OUString( - "com.sun.star.comp.Writer.XMLSettingsExporter" ); -} - -Sequence< OUString > SAL_CALL SwXMLExportSettingsOOO_getSupportedServiceNames() - throw() -{ - const OUString aServiceName(SwXMLExportSettingsOOO_getImplementationName()); - const Sequence< OUString > aSeq( &aServiceName, 1 ); - return aSeq; -} - -Reference< XInterface > SAL_CALL SwXMLExportSettingsOOO_createInstance( - const Reference< XMultiServiceFactory > & rSMgr) - throw( Exception ) -{ - return (cppu::OWeakObject*)new SwXMLExport( comphelper::getComponentContext(rSMgr), SwXMLExportSettingsOOO_getImplementationName(), SvXMLExportFlags::SETTINGS); -} - -// OASIS -OUString SAL_CALL SwXMLExport_getImplementationName() throw() -{ - return OUString( - "com.sun.star.comp.Writer.XMLOasisExporter" ); -} - -Sequence< OUString > SAL_CALL SwXMLExport_getSupportedServiceNames() - throw() -{ - const OUString aServiceName(SwXMLExport_getImplementationName()); - const Sequence< OUString > aSeq( &aServiceName, 1 ); - return aSeq; -} - -Reference< XInterface > SAL_CALL SwXMLExport_createInstance( - const Reference< XMultiServiceFactory > & rSMgr) - throw( Exception ) -{ - return (cppu::OWeakObject*)new SwXMLExport( comphelper::getComponentContext(rSMgr), SwXMLExport_getImplementationName(), SvXMLExportFlags::ALL|SvXMLExportFlags::OASIS); -} - -OUString SAL_CALL SwXMLExportStyles_getImplementationName() throw() -{ - return OUString( - "com.sun.star.comp.Writer.XMLOasisStylesExporter" ); -} - -Sequence< OUString > SAL_CALL SwXMLExportStyles_getSupportedServiceNames() - throw() -{ - const OUString aServiceName(SwXMLExportStyles_getImplementationName()); - const Sequence< OUString > aSeq( &aServiceName, 1 ); - return aSeq; -} - -Reference< XInterface > SAL_CALL SwXMLExportStyles_createInstance( - const Reference< XMultiServiceFactory > & rSMgr) - throw( Exception ) +namespace { - return (cppu::OWeakObject*)new SwXMLExport( comphelper::getComponentContext(rSMgr), SwXMLExportStyles_getImplementationName(), - SvXMLExportFlags::STYLES | SvXMLExportFlags::MASTERSTYLES | SvXMLExportFlags::AUTOSTYLES | - SvXMLExportFlags::FONTDECLS|SvXMLExportFlags::OASIS ); + class theSwXMLExportUnoTunnelId : public rtl::Static< UnoTunnelIdInit, theSwXMLExportUnoTunnelId > {}; } -OUString SAL_CALL SwXMLExportContent_getImplementationName() throw() +const Sequence< sal_Int8 > & SwXMLExport::getUnoTunnelId() throw() { - return OUString( - "com.sun.star.comp.Writer.XMLOasisContentExporter" ); + return theSwXMLExportUnoTunnelId::get().getSeq(); } -Sequence< OUString > SAL_CALL SwXMLExportContent_getSupportedServiceNames() - throw() +sal_Int64 SAL_CALL SwXMLExport::getSomething( const Sequence< sal_Int8 >& rId ) + throw(RuntimeException, std::exception) { - const OUString aServiceName(SwXMLExportContent_getImplementationName()); - const Sequence< OUString > aSeq( &aServiceName, 1 ); - return aSeq; + if( rId.getLength() == 16 + && 0 == memcmp( getUnoTunnelId().getConstArray(), + rId.getConstArray(), 16 ) ) + { + return sal::static_int_cast< sal_Int64 >( reinterpret_cast< sal_IntPtr >(this) ); + } + return SvXMLExport::getSomething( rId ); } -Reference< XInterface > SAL_CALL SwXMLExportContent_createInstance( - const Reference< XMultiServiceFactory > & rSMgr) - throw( Exception ) +SwDoc* SwXMLExport::getDoc() { - return (cppu::OWeakObject*)new SwXMLExport( - comphelper::getComponentContext(rSMgr), SwXMLExportContent_getImplementationName(), - SvXMLExportFlags::AUTOSTYLES | SvXMLExportFlags::CONTENT | SvXMLExportFlags::SCRIPTS | - SvXMLExportFlags::FONTDECLS|SvXMLExportFlags::OASIS ); + if( doc != NULL ) + return doc; + Reference < XTextDocument > xTextDoc( GetModel(), UNO_QUERY ); + Reference < XText > xText = xTextDoc->getText(); + Reference xTextTunnel( xText, UNO_QUERY); + assert( xTextTunnel.is()); + SwXText *pText = reinterpret_cast< SwXText *>( + sal::static_int_cast< sal_IntPtr >( xTextTunnel->getSomething( SwXText::getUnoTunnelId() ))); + assert( pText != NULL ); + doc = pText->GetDoc(); + assert( doc != NULL ); + return doc; } -OUString SAL_CALL SwXMLExportMeta_getImplementationName() throw() +const SwDoc* SwXMLExport::getDoc() const { - return OUString( - "com.sun.star.comp.Writer.XMLOasisMetaExporter" ); + return const_cast< SwXMLExport* >( this )->getDoc(); } -Sequence< OUString > SAL_CALL SwXMLExportMeta_getSupportedServiceNames() - throw() +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_Writer_XMLExporter_get_implementation(::com::sun::star::uno::XComponentContext* context, + ::com::sun::star::uno::Sequence const &) { - const OUString aServiceName(SwXMLExportMeta_getImplementationName()); - const Sequence< OUString > aSeq( &aServiceName, 1 ); - return aSeq; + return cppu::acquire(new SwXMLExport(context, OUString("com.sun.star.comp.Writer.XMLExporter"), + SvXMLExportFlags::ALL)); } -Reference< XInterface > SAL_CALL SwXMLExportMeta_createInstance( - const Reference< XMultiServiceFactory > & rSMgr) - throw( Exception ) +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_Writer_XMLStylesExporter_get_implementation(::com::sun::star::uno::XComponentContext* context, + ::com::sun::star::uno::Sequence const &) { - return (cppu::OWeakObject*)new SwXMLExport( comphelper::getComponentContext(rSMgr), SwXMLExportMeta_getImplementationName(), SvXMLExportFlags::META|SvXMLExportFlags::OASIS); + return cppu::acquire(new SwXMLExport(context, OUString("com.sun.star.comp.Writer.XMLStylesExporter"), + SvXMLExportFlags::STYLES | SvXMLExportFlags::MASTERSTYLES | SvXMLExportFlags::AUTOSTYLES | + SvXMLExportFlags::FONTDECLS)); } -OUString SAL_CALL SwXMLExportSettings_getImplementationName() throw() +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_Writer_XMLContentExporter_get_implementation(::com::sun::star::uno::XComponentContext* context, + ::com::sun::star::uno::Sequence const &) { - return OUString( - "com.sun.star.comp.Writer.XMLOasisSettingsExporter" ); + return cppu::acquire(new SwXMLExport(context, OUString("com.sun.star.comp.Writer.XMLContentExporter"), + SvXMLExportFlags::SCRIPTS | SvXMLExportFlags::CONTENT | SvXMLExportFlags::AUTOSTYLES | + SvXMLExportFlags::FONTDECLS)); } -Sequence< OUString > SAL_CALL SwXMLExportSettings_getSupportedServiceNames() - throw() +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_Writer_XMLMetaExporter_get_implementation(::com::sun::star::uno::XComponentContext* context, + ::com::sun::star::uno::Sequence const &) { - const OUString aServiceName(SwXMLExportSettings_getImplementationName()); - const Sequence< OUString > aSeq( &aServiceName, 1 ); - return aSeq; + return cppu::acquire(new SwXMLExport(context, OUString("com.sun.star.comp.Writer.XMLMetaExporter"), + SvXMLExportFlags::META)); } -Reference< XInterface > SAL_CALL SwXMLExportSettings_createInstance( - const Reference< XMultiServiceFactory > & rSMgr) - throw( Exception ) +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_Writer_XMLSettingsExporter_get_implementation(::com::sun::star::uno::XComponentContext* context, + ::com::sun::star::uno::Sequence const &) { - return (cppu::OWeakObject*)new SwXMLExport( comphelper::getComponentContext(rSMgr), SwXMLExportSettings_getImplementationName(), SvXMLExportFlags::SETTINGS|SvXMLExportFlags::OASIS); + return cppu::acquire(new SwXMLExport(context, OUString("com.sun.star.comp.Writer.XMLSettingsExporter"), + SvXMLExportFlags::SETTINGS)); } -namespace +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_Writer_XMLOasisExporter_get_implementation(::com::sun::star::uno::XComponentContext* context, + ::com::sun::star::uno::Sequence const &) { - class theSwXMLExportUnoTunnelId : public rtl::Static< UnoTunnelIdInit, theSwXMLExportUnoTunnelId > {}; + return cppu::acquire(new SwXMLExport(context, OUString("com.sun.star.comp.Writer.XMLOasisExporter"), + SvXMLExportFlags::ALL | SvXMLExportFlags::OASIS)); } -const Sequence< sal_Int8 > & SwXMLExport::getUnoTunnelId() throw() +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_Writer_XMLOasisStylesExporter_get_implementation(::com::sun::star::uno::XComponentContext* context, + ::com::sun::star::uno::Sequence const &) { - return theSwXMLExportUnoTunnelId::get().getSeq(); + return cppu::acquire(new SwXMLExport(context, OUString("com.sun.star.comp.Writer.XMLOasisStylesExporter"), + SvXMLExportFlags::STYLES | SvXMLExportFlags::MASTERSTYLES | SvXMLExportFlags::AUTOSTYLES | + SvXMLExportFlags::FONTDECLS | SvXMLExportFlags::OASIS)); } -sal_Int64 SAL_CALL SwXMLExport::getSomething( const Sequence< sal_Int8 >& rId ) - throw(RuntimeException, std::exception) +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_Writer_XMLOasisContentExporter_get_implementation(::com::sun::star::uno::XComponentContext* context, + ::com::sun::star::uno::Sequence const &) { - if( rId.getLength() == 16 - && 0 == memcmp( getUnoTunnelId().getConstArray(), - rId.getConstArray(), 16 ) ) - { - return sal::static_int_cast< sal_Int64 >( reinterpret_cast< sal_IntPtr >(this) ); - } - return SvXMLExport::getSomething( rId ); + return cppu::acquire(new SwXMLExport(context, OUString("com.sun.star.comp.Writer.XMLOasisContentExporter"), + SvXMLExportFlags::AUTOSTYLES | SvXMLExportFlags::CONTENT | SvXMLExportFlags::SCRIPTS | + SvXMLExportFlags::FONTDECLS | SvXMLExportFlags::OASIS)); } -SwDoc* SwXMLExport::getDoc() +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_Writer_XMLOasisMetaExporter_get_implementation(::com::sun::star::uno::XComponentContext* context, + ::com::sun::star::uno::Sequence const &) { - if( doc != NULL ) - return doc; - Reference < XTextDocument > xTextDoc( GetModel(), UNO_QUERY ); - Reference < XText > xText = xTextDoc->getText(); - Reference xTextTunnel( xText, UNO_QUERY); - assert( xTextTunnel.is()); - SwXText *pText = reinterpret_cast< SwXText *>( - sal::static_int_cast< sal_IntPtr >( xTextTunnel->getSomething( SwXText::getUnoTunnelId() ))); - assert( pText != NULL ); - doc = pText->GetDoc(); - assert( doc != NULL ); - return doc; + return cppu::acquire(new SwXMLExport(context, OUString("com.sun.star.comp.Writer.XMLOasisMetaExporter"), + SvXMLExportFlags::META | SvXMLExportFlags::OASIS)); } -const SwDoc* SwXMLExport::getDoc() const +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_Writer_XMLOasisSettingsExporter_get_implementation(::com::sun::star::uno::XComponentContext* context, + ::com::sun::star::uno::Sequence const &) { - return const_cast< SwXMLExport* >( this )->getDoc(); + return cppu::acquire(new SwXMLExport(context, OUString("com.sun.star.comp.Writer.XMLOasisSettingsExporter"), + SvXMLExportFlags::SETTINGS | SvXMLExportFlags::OASIS)); } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sw/source/filter/xml/xmlimp.cxx b/sw/source/filter/xml/xmlimp.cxx index dfd3266064eb..ab8c9cc68f4b 100644 --- a/sw/source/filter/xml/xmlimp.cxx +++ b/sw/source/filter/xml/xmlimp.cxx @@ -1488,120 +1488,6 @@ void SwXMLImport::initialize( } } -// UNO component registration helper functions -OUString SAL_CALL SwXMLImport_getImplementationName() throw() -{ - return OUString( - "com.sun.star.comp.Writer.XMLOasisImporter" ); -} - -uno::Sequence< OUString > SAL_CALL SwXMLImport_getSupportedServiceNames() - throw() -{ - const OUString aServiceName( SwXMLImport_getImplementationName() ); - const uno::Sequence< OUString > aSeq( &aServiceName, 1 ); - return aSeq; -} - -uno::Reference< uno::XInterface > SAL_CALL SwXMLImport_createInstance( - const uno::Reference< lang::XMultiServiceFactory > & rSMgr) - throw( uno::Exception ) -{ - return (cppu::OWeakObject*)new SwXMLImport( comphelper::getComponentContext(rSMgr), SwXMLImport_getImplementationName(), SvXMLImportFlags::ALL ); -} - -OUString SAL_CALL SwXMLImportStyles_getImplementationName() throw() -{ - return OUString( - "com.sun.star.comp.Writer.XMLOasisStylesImporter" ); -} - -uno::Sequence< OUString > SAL_CALL SwXMLImportStyles_getSupportedServiceNames() - throw() -{ - const OUString aServiceName( SwXMLImportStyles_getImplementationName() ); - const uno::Sequence< OUString > aSeq( &aServiceName, 1 ); - return aSeq; -} - -uno::Reference< uno::XInterface > SAL_CALL SwXMLImportStyles_createInstance( - const uno::Reference< lang::XMultiServiceFactory > & rSMgr) - throw( uno::Exception ) -{ - return (cppu::OWeakObject*)new SwXMLImport( - comphelper::getComponentContext(rSMgr), - SwXMLImportStyles_getImplementationName(), - SvXMLImportFlags::STYLES | SvXMLImportFlags::MASTERSTYLES | SvXMLImportFlags::AUTOSTYLES | - SvXMLImportFlags::FONTDECLS ); -} - -OUString SAL_CALL SwXMLImportContent_getImplementationName() throw() -{ - return OUString( - "com.sun.star.comp.Writer.XMLOasisContentImporter" ); -} - -uno::Sequence< OUString > SAL_CALL SwXMLImportContent_getSupportedServiceNames() - throw() -{ - const OUString aServiceName( SwXMLImportContent_getImplementationName() ); - const uno::Sequence< OUString > aSeq( &aServiceName, 1 ); - return aSeq; -} - -uno::Reference< uno::XInterface > SAL_CALL SwXMLImportContent_createInstance( - const uno::Reference< lang::XMultiServiceFactory > & rSMgr) - throw( uno::Exception ) -{ - return (cppu::OWeakObject*)new SwXMLImport( - comphelper::getComponentContext(rSMgr), - SwXMLImportContent_getImplementationName(), - SvXMLImportFlags::AUTOSTYLES | SvXMLImportFlags::CONTENT | SvXMLImportFlags::SCRIPTS | - SvXMLImportFlags::FONTDECLS ); -} - -OUString SAL_CALL SwXMLImportMeta_getImplementationName() throw() -{ - return OUString( - "com.sun.star.comp.Writer.XMLOasisMetaImporter" ); -} - -uno::Sequence< OUString > SAL_CALL SwXMLImportMeta_getSupportedServiceNames() - throw() -{ - const OUString aServiceName( SwXMLImportMeta_getImplementationName() ); - const uno::Sequence< OUString > aSeq( &aServiceName, 1 ); - return aSeq; -} - -uno::Reference< uno::XInterface > SAL_CALL SwXMLImportMeta_createInstance( - const uno::Reference< lang::XMultiServiceFactory > & rSMgr) - throw( uno::Exception ) -{ - return (cppu::OWeakObject*)new SwXMLImport( comphelper::getComponentContext(rSMgr), SwXMLImportMeta_getImplementationName(), SvXMLImportFlags::META ); -} - -OUString SAL_CALL SwXMLImportSettings_getImplementationName() throw() -{ - return OUString( - "com.sun.star.comp.Writer.XMLOasisSettingsImporter" ); -} - -uno::Sequence< OUString > SAL_CALL SwXMLImportSettings_getSupportedServiceNames() - throw() -{ - const OUString aServiceName( SwXMLImportSettings_getImplementationName() ); - const uno::Sequence< OUString > aSeq( &aServiceName, 1 ); - return aSeq; -} - -uno::Reference< uno::XInterface > SAL_CALL SwXMLImportSettings_createInstance( - const uno::Reference< lang::XMultiServiceFactory > & rSMgr) - throw( uno::Exception ) -{ - return (cppu::OWeakObject*)new SwXMLImport( comphelper::getComponentContext(rSMgr), SwXMLImportSettings_getImplementationName(), SvXMLImportFlags::SETTINGS ); -} - SwDoc* SwImport::GetDocFromXMLImport( SvXMLImport& rImport ) { uno::Reference xModelTunnel( rImport.GetModel(), uno::UNO_QUERY ); @@ -1656,4 +1542,48 @@ const SwDoc* SwXMLImport::getDoc() const return const_cast< SwXMLImport* >( this )->getDoc(); } +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_Writer_XMLOasisImporter_get_implementation(::com::sun::star::uno::XComponentContext* context, + ::com::sun::star::uno::Sequence const &) +{ + return cppu::acquire(new SwXMLImport(context, OUString("com.sun.star.comp.Writer.XMLOasisImporter"), + SvXMLImportFlags::ALL)); +} + + +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_Writer_XMLOasisStylesImporter_get_implementation(::com::sun::star::uno::XComponentContext* context, + ::com::sun::star::uno::Sequence const &) +{ + return cppu::acquire(new SwXMLImport(context, OUString("com.sun.star.comp.Writer.XMLOasisStylesImporter"), + SvXMLImportFlags::STYLES | SvXMLImportFlags::MASTERSTYLES | SvXMLImportFlags::AUTOSTYLES | + SvXMLImportFlags::FONTDECLS)); +} + + +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_Writer_XMLOasisContentImporter_get_implementation(::com::sun::star::uno::XComponentContext* context, + ::com::sun::star::uno::Sequence const &) +{ + return cppu::acquire(new SwXMLImport(context, OUString("com.sun.star.comp.Writer.XMLOasisContentImporter"), + SvXMLImportFlags::CONTENT | SvXMLImportFlags::SCRIPTS | SvXMLImportFlags::AUTOSTYLES | + SvXMLImportFlags::FONTDECLS)); +} + +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_Writer_XMLOasisMetaImporter_get_implementation(::com::sun::star::uno::XComponentContext* context, + ::com::sun::star::uno::Sequence const &) +{ + return cppu::acquire(new SwXMLImport(context, OUString("com.sun.star.comp.Writer.XMLOasisMetaImporter"), + SvXMLImportFlags::META)); +} + + +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_Writer_XMLOasisSettingsImporter_get_implementation(::com::sun::star::uno::XComponentContext* context, + ::com::sun::star::uno::Sequence const &) +{ + return cppu::acquire(new SwXMLImport(context, OUString("com.sun.star.comp.Writer.XMLOasisSettingsImporter"), + SvXMLImportFlags::SETTINGS)); +} /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sw/source/uibase/uno/unofreg.cxx b/sw/source/uibase/uno/unofreg.cxx index 46d8810ed37c..84105c12e415 100644 --- a/sw/source/uibase/uno/unofreg.cxx +++ b/sw/source/uibase/uno/unofreg.cxx @@ -60,127 +60,7 @@ SAL_DLLPUBLIC_EXPORT void * SAL_CALL sw_component_getFactory( uno::Reference< XSingleServiceFactory > xFactory; const sal_Int32 nImplNameLen = strlen( pImplName ); - if( SwXMLImport_getImplementationName().equalsAsciiL( pImplName, - nImplNameLen ) ) - { - xFactory = ::cppu::createSingleFactory( xMSF, - SwXMLImport_getImplementationName(), - SwXMLImport_createInstance, - SwXMLImport_getSupportedServiceNames() ); - } - else if( SwXMLImportStyles_getImplementationName().equalsAsciiL( - pImplName, nImplNameLen ) ) - { - xFactory = ::cppu::createSingleFactory( xMSF, - SwXMLImportStyles_getImplementationName(), - SwXMLImportStyles_createInstance, - SwXMLImportStyles_getSupportedServiceNames() ); - } - else if( SwXMLImportContent_getImplementationName().equalsAsciiL( - pImplName, nImplNameLen ) ) - { - xFactory = ::cppu::createSingleFactory( xMSF, - SwXMLImportContent_getImplementationName(), - SwXMLImportContent_createInstance, - SwXMLImportContent_getSupportedServiceNames() ); - } - else if( SwXMLImportMeta_getImplementationName().equalsAsciiL( - pImplName, nImplNameLen ) ) - { - xFactory = ::cppu::createSingleFactory( xMSF, - SwXMLImportMeta_getImplementationName(), - SwXMLImportMeta_createInstance, - SwXMLImportMeta_getSupportedServiceNames() ); - } - else if( SwXMLImportSettings_getImplementationName().equalsAsciiL( - pImplName, nImplNameLen ) ) - { - xFactory = ::cppu::createSingleFactory( xMSF, - SwXMLImportSettings_getImplementationName(), - SwXMLImportSettings_createInstance, - SwXMLImportSettings_getSupportedServiceNames() ); - } - else if( SwXMLExportOOO_getImplementationName().equalsAsciiL( pImplName, - nImplNameLen ) ) - { - xFactory = ::cppu::createSingleFactory( xMSF, - SwXMLExportOOO_getImplementationName(), - SwXMLExportOOO_createInstance, - SwXMLExportOOO_getSupportedServiceNames() ); - } - else if( SwXMLExportStylesOOO_getImplementationName().equalsAsciiL( - pImplName, nImplNameLen ) ) - { - xFactory = ::cppu::createSingleFactory( xMSF, - SwXMLExportStylesOOO_getImplementationName(), - SwXMLExportStylesOOO_createInstance, - SwXMLExportStylesOOO_getSupportedServiceNames() ); - } - else if( SwXMLExportContentOOO_getImplementationName().equalsAsciiL( - pImplName, nImplNameLen ) ) - { - xFactory = ::cppu::createSingleFactory( xMSF, - SwXMLExportContentOOO_getImplementationName(), - SwXMLExportContentOOO_createInstance, - SwXMLExportContentOOO_getSupportedServiceNames() ); - } - else if( SwXMLExportMetaOOO_getImplementationName().equalsAsciiL( - pImplName, nImplNameLen ) ) - { - xFactory = ::cppu::createSingleFactory( xMSF, - SwXMLExportMetaOOO_getImplementationName(), - SwXMLExportMetaOOO_createInstance, - SwXMLExportMetaOOO_getSupportedServiceNames() ); - } - else if( SwXMLExportSettingsOOO_getImplementationName().equalsAsciiL( - pImplName, nImplNameLen ) ) - { - xFactory = ::cppu::createSingleFactory( xMSF, - SwXMLExportSettingsOOO_getImplementationName(), - SwXMLExportSettingsOOO_createInstance, - SwXMLExportSettingsOOO_getSupportedServiceNames() ); - } - else if( SwXMLExport_getImplementationName().equalsAsciiL( pImplName, - nImplNameLen ) ) - { - xFactory = ::cppu::createSingleFactory( xMSF, - SwXMLExport_getImplementationName(), - SwXMLExport_createInstance, - SwXMLExport_getSupportedServiceNames() ); - } - else if( SwXMLExportStyles_getImplementationName().equalsAsciiL( - pImplName, nImplNameLen ) ) - { - xFactory = ::cppu::createSingleFactory( xMSF, - SwXMLExportStyles_getImplementationName(), - SwXMLExportStyles_createInstance, - SwXMLExportStyles_getSupportedServiceNames() ); - } - else if( SwXMLExportContent_getImplementationName().equalsAsciiL( - pImplName, nImplNameLen ) ) - { - xFactory = ::cppu::createSingleFactory( xMSF, - SwXMLExportContent_getImplementationName(), - SwXMLExportContent_createInstance, - SwXMLExportContent_getSupportedServiceNames() ); - } - else if( SwXMLExportMeta_getImplementationName().equalsAsciiL( - pImplName, nImplNameLen ) ) - { - xFactory = ::cppu::createSingleFactory( xMSF, - SwXMLExportMeta_getImplementationName(), - SwXMLExportMeta_createInstance, - SwXMLExportMeta_getSupportedServiceNames() ); - } - else if( SwXMLExportSettings_getImplementationName().equalsAsciiL( - pImplName, nImplNameLen ) ) - { - xFactory = ::cppu::createSingleFactory( xMSF, - SwXMLExportSettings_getImplementationName(), - SwXMLExportSettings_createInstance, - SwXMLExportSettings_getSupportedServiceNames() ); - } - else if( SwXAutoTextContainer_getImplementationName().equalsAsciiL( + if( SwXAutoTextContainer_getImplementationName().equalsAsciiL( pImplName, nImplNameLen ) ) { xFactory = ::cppu::createSingleFactory( xMSF, diff --git a/sw/util/sw.component b/sw/util/sw.component index 46cdc6730cbc..81baa5f0aa71 100644 --- a/sw/util/sw.component +++ b/sw/util/sw.component @@ -43,49 +43,64 @@ - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + -- cgit v1.2.3