basic/Library_sb.mk | 2 basic/source/inc/dlgcont.hxx | 6 basic/source/inc/scriptcont.hxx | 8 - basic/source/uno/dlgcont.cxx | 36 +--- basic/source/uno/sbmodule.cxx | 52 ------ basic/source/uno/sbmodule.hxx | 86 ----------- basic/source/uno/sbservices.cxx | 50 ------ basic/source/uno/sbservices.hxx | 35 ---- basic/source/uno/scriptcont.cxx | 35 +--- basic/util/sb.component | 8 - solenv/bin/native-code.py | 12 + sw/Library_swd.mk | 1 sw/source/core/inc/unofreg.hxx | 59 ------- sw/source/filter/xml/xmlexp.cxx | 304 ++++++++++----------------------------- sw/source/filter/xml/xmlimp.cxx | 158 +++++--------------- sw/source/ui/uno/detreg.cxx | 66 -------- sw/source/ui/uno/swdetect.cxx | 23 -- sw/source/ui/uno/swdetect.hxx | 11 - sw/source/uibase/uno/unodoc.cxx | 54 +----- sw/source/uibase/uno/unofreg.cxx | 138 ----------------- sw/util/sw.component | 51 ++++-- sw/util/swd.component | 5 22 files changed, 220 insertions(+), 980 deletions(-)
New commits: commit 47929167708455b11958f00a33a96695f88f5c37 Author: Jan Holesovsky <[email protected]> Date: Thu Feb 26 20:39:42 2015 +0100 native-code.py: Some services were converted to using constructors. Change-Id: I957bf1d5bd88b15539e95dfa4aa87a8e63a96439 diff --git a/solenv/bin/native-code.py b/solenv/bin/native-code.py index 0e90672..c787a23 100755 --- a/solenv/bin/native-code.py +++ b/solenv/bin/native-code.py @@ -219,14 +219,22 @@ draw_constructor_list = [ ] writer_factory_list = [ - ("libsblo.a", "sb_component_getFactory", "#if HAVE_FEATURE_SCRIPTING"), - ("libswdlo.a", "swd_component_getFactory"), ("libswlo.a", "sw_component_getFactory"), ] writer_constructor_list = [ +# basic/util/sb.component + "com_sun_star_comp_sfx2_ScriptLibraryContainer_get_implementation", # filter/source/textfilterdetect/textfd.component "com_sun_star_comp_filters_PlainTextFilterDetect_get_implementation", +# sw/util/sw.component + "com_sun_star_comp_Writer_XMLOasisContentImporter_get_implementation", + "com_sun_star_comp_Writer_XMLOasisImporter_get_implementation", + "com_sun_star_comp_Writer_XMLOasisMetaImporter_get_implementation", + "com_sun_star_comp_Writer_XMLOasisSettingsImporter_get_implementation", + "com_sun_star_comp_Writer_XMLOasisStylesImporter_get_implementation", +# sw/util/swd.component + "com_sun_star_comp_writer_FormatDetector_get_implementation", # writerfilter/util/writerfilter.component "com_sun_star_comp_Writer_RtfFilter_get_implementation", "com_sun_star_comp_Writer_WriterFilter_get_implementation", commit cc8523592062d9493dfb31ca0c6306d8e63816ea Author: Stephan Bergmann <[email protected]> Date: Thu Feb 26 15:34:57 2015 +0100 Clean up previous commit Change-Id: Iddade9d297be8f4a4e69b3bec5ab7588bf68c112 diff --git a/basic/Library_sb.mk b/basic/Library_sb.mk index 36c1be9..b364190 100644 --- a/basic/Library_sb.mk +++ b/basic/Library_sb.mk @@ -92,7 +92,6 @@ $(eval $(call gb_Library_add_exception_objects,sb,\ basic/source/uno/dlgcont \ basic/source/uno/modsizeexceeded \ basic/source/uno/namecont \ - basic/source/uno/sbmodule \ basic/source/uno/scriptcont \ basic/source/runtime/comenumwrapper \ basic/source/runtime/ddectrl \ diff --git a/basic/source/inc/dlgcont.hxx b/basic/source/inc/dlgcont.hxx index 33155af..baf3da8 100644 --- a/basic/source/inc/dlgcont.hxx +++ b/basic/source/inc/dlgcont.hxx @@ -91,9 +91,6 @@ public: // XLibraryQueryExecutable virtual sal_Bool SAL_CALL HasExecutableCode(const OUString&) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE; - // Service - static ::com::sun::star::uno::Sequence< OUString > getSupportedServiceNames_static(); - static OUString getImplementationName_static(); }; diff --git a/basic/source/inc/scriptcont.hxx b/basic/source/inc/scriptcont.hxx index 2f21441..75f65e3 100644 --- a/basic/source/inc/scriptcont.hxx +++ b/basic/source/inc/scriptcont.hxx @@ -121,10 +121,6 @@ public: throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE; virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames( ) throw (::com::sun::star::uno::RuntimeException, std::exception) SAL_OVERRIDE; - - // Service - static ::com::sun::star::uno::Sequence< OUString > getSupportedServiceNames_static(); - static OUString getImplementationName_static(); }; diff --git a/basic/source/uno/dlgcont.cxx b/basic/source/uno/dlgcont.cxx index 6f22b95..39dde70 100644 --- a/basic/source/uno/dlgcont.cxx +++ b/basic/source/uno/dlgcont.cxx @@ -32,7 +32,6 @@ #include <com/sun/star/resource/StringResourceWithLocation.hpp> #include <com/sun/star/document/GraphicObjectResolver.hpp> #include "dlgcont.hxx" -#include "sbmodule.hxx" #include <comphelper/processfactory.hxx> #include <unotools/streamwrap.hxx> #include <osl/mutex.hxx> @@ -451,16 +450,11 @@ SfxDialogLibraryContainer:: HasExecutableCode( const OUString& /*Library*/ ) thr OUString SAL_CALL SfxDialogLibraryContainer::getImplementationName( ) throw (RuntimeException, std::exception) { - return getImplementationName_static(); + return OUString("com.sun.star.comp.sfx2.DialogLibraryContainer"); } Sequence< OUString > SAL_CALL SfxDialogLibraryContainer::getSupportedServiceNames( ) throw (RuntimeException, std::exception) { - return getSupportedServiceNames_static(); -} - -Sequence< OUString > SfxDialogLibraryContainer::getSupportedServiceNames_static() -{ Sequence< OUString > aServiceNames( 2 ); aServiceNames[0] = "com.sun.star.script.DocumentDialogLibraryContainer"; // plus, for compatibility: @@ -468,12 +462,6 @@ Sequence< OUString > SfxDialogLibraryContainer::getSupportedServiceNames_static( return aServiceNames; } -OUString SfxDialogLibraryContainer::getImplementationName_static() -{ - return OUString("com.sun.star.comp.sfx2.DialogLibraryContainer"); -} - - // Implementation class SfxDialogLibrary // Ctor diff --git a/basic/source/uno/sbmodule.cxx b/basic/source/uno/sbmodule.cxx deleted file mode 100644 index cbe3742..0000000 --- a/basic/source/uno/sbmodule.cxx +++ /dev/null @@ -1,52 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#include "sbmodule.hxx" -#include <rtl/instance.hxx> - - -namespace basic -{ - - - struct BasicModuleCreator - { - BasicModule m_aBasicModule; - }; - namespace - { - class theBasicModuleInstance : public rtl::Static<BasicModuleCreator, theBasicModuleInstance> {}; - } - - BasicModule::BasicModule() - :BaseClass() - { - } - - BasicModule& BasicModule::getInstance() - { - return theBasicModuleInstance::get().m_aBasicModule; - } - - -} // namespace basic - - - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/basic/source/uno/sbmodule.hxx b/basic/source/uno/sbmodule.hxx deleted file mode 100644 index f7eb2e5..0000000 --- a/basic/source/uno/sbmodule.hxx +++ /dev/null @@ -1,86 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef INCLUDED_BASIC_SOURCE_UNO_SBMODULE_HXX -#define INCLUDED_BASIC_SOURCE_UNO_SBMODULE_HXX - -#include <comphelper/componentmodule.hxx> - - -namespace basic -{ - - - class BasicModule : public ::comphelper::OModule - { - friend struct BasicModuleCreator; - typedef ::comphelper::OModule BaseClass; - - public: - static BasicModule& getInstance(); - - private: - BasicModule(); - }; - - /* -------------------------------------------------------------------- */ - class BasicModuleClient : public ::comphelper::OModuleClient - { - private: - typedef ::comphelper::OModuleClient BaseClass; - - public: - BasicModuleClient() : BaseClass( BasicModule::getInstance() ) - { - } - }; - - /* -------------------------------------------------------------------- */ - template < class TYPE > - class OAutoRegistration : public ::comphelper::OAutoRegistration< TYPE > - { - private: - typedef ::comphelper::OAutoRegistration< TYPE > BaseClass; - - public: - OAutoRegistration() : BaseClass( BasicModule::getInstance() ) - { - } - }; - - /* -------------------------------------------------------------------- */ - template < class TYPE > - class OSingletonRegistration : public ::comphelper::OSingletonRegistration< TYPE > - { - private: - typedef ::comphelper::OSingletonRegistration< TYPE > BaseClass; - - public: - OSingletonRegistration() : BaseClass( BasicModule::getInstance() ) - { - } - }; - - -} // namespace basic - - -#endif // INCLUDED_BASIC_SOURCE_UNO_SBMODULE_HXX - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/basic/source/uno/scriptcont.cxx b/basic/source/uno/scriptcont.cxx index 73bcbec..eeb68f0 100644 --- a/basic/source/uno/scriptcont.cxx +++ b/basic/source/uno/scriptcont.cxx @@ -18,7 +18,6 @@ */ #include "scriptcont.hxx" -#include "sbmodule.hxx" #include <com/sun/star/container/XNameContainer.hpp> #include <com/sun/star/xml/sax/Parser.hpp> #include <com/sun/star/xml/sax/InputSource.hpp> @@ -1193,17 +1192,12 @@ sal_Bool SAL_CALL SfxScriptLibraryContainer:: HasExecutableCode( const OUString& OUString SAL_CALL SfxScriptLibraryContainer::getImplementationName( ) throw (RuntimeException, std::exception) { - return getImplementationName_static(); + return OUString("com.sun.star.comp.sfx2.ScriptLibraryContainer" ); } Sequence< OUString > SAL_CALL SfxScriptLibraryContainer::getSupportedServiceNames( ) throw (RuntimeException, std::exception) { - return getSupportedServiceNames_static(); -} - -Sequence< OUString > SfxScriptLibraryContainer::getSupportedServiceNames_static() -{ Sequence< OUString > aServiceNames( 2 ); aServiceNames[0] = "com.sun.star.script.DocumentScriptLibraryContainer"; // plus, for compatibility: @@ -1211,11 +1205,6 @@ Sequence< OUString > SfxScriptLibraryContainer::getSupportedServiceNames_static( return aServiceNames; } -OUString SfxScriptLibraryContainer::getImplementationName_static() -{ - return OUString("com.sun.star.comp.sfx2.ScriptLibraryContainer" ); -} - // Implementation class SfxScriptLibrary // Ctor diff --git a/basic/util/sb.component b/basic/util/sb.component index 710c37f..9271a84 100644 --- a/basic/util/sb.component +++ b/basic/util/sb.component @@ -18,9 +18,9 @@ --> <component loader="com.sun.star.loader.SharedLibrary" environment="@CPPU_ENV@" - prefix="sb" xmlns="http://openoffice.org/2010/uno-components"> + xmlns="http://openoffice.org/2010/uno-components"> <implementation name="com.sun.star.comp.sfx2.DialogLibraryContainer" - constructor="com_sun_star_comp_sfx2_DialogLibraryContainer_get_implementation"> + constructor="com_sun_star_comp_sfx2_DialogLibraryContainer_get_implementation"> <service name="com.sun.star.script.DialogLibraryContainer"/> <service name="com.sun.star.script.DocumentDialogLibraryContainer"/> </implementation> commit 4b86277a81ebfc6fa50af026b91c4c85f6810680 Author: Chris Sherlock <[email protected]> Date: Tue Feb 24 14:31:11 2015 +1100 basic: convert sb.component to constructor usage Change-Id: I45ddf460fa7d673c5210f9415b2a8015988a643e Signed-off-by: Stephan Bergmann <[email protected]> diff --git a/basic/Library_sb.mk b/basic/Library_sb.mk index eefe8e0..36c1be9 100644 --- a/basic/Library_sb.mk +++ b/basic/Library_sb.mk @@ -93,7 +93,6 @@ $(eval $(call gb_Library_add_exception_objects,sb,\ basic/source/uno/modsizeexceeded \ basic/source/uno/namecont \ basic/source/uno/sbmodule \ - basic/source/uno/sbservices \ basic/source/uno/scriptcont \ basic/source/runtime/comenumwrapper \ basic/source/runtime/ddectrl \ diff --git a/basic/source/inc/dlgcont.hxx b/basic/source/inc/dlgcont.hxx index 4259674..33155af 100644 --- a/basic/source/inc/dlgcont.hxx +++ b/basic/source/inc/dlgcont.hxx @@ -94,9 +94,6 @@ public: // Service static ::com::sun::star::uno::Sequence< OUString > getSupportedServiceNames_static(); static OUString getImplementationName_static(); - static ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL Create - ( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& xServiceManager ) - throw( ::com::sun::star::uno::Exception ); }; diff --git a/basic/source/inc/scriptcont.hxx b/basic/source/inc/scriptcont.hxx index 116e05c..2f21441 100644 --- a/basic/source/inc/scriptcont.hxx +++ b/basic/source/inc/scriptcont.hxx @@ -125,10 +125,6 @@ public: // Service static ::com::sun::star::uno::Sequence< OUString > getSupportedServiceNames_static(); static OUString getImplementationName_static(); - static ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL Create - ( const ::com::sun::star::uno::Reference< ::com::sun::star::uno::XComponentContext >& xServiceManager ) - throw( ::com::sun::star::uno::Exception ); - }; diff --git a/basic/source/uno/dlgcont.cxx b/basic/source/uno/dlgcont.cxx index b9d128b..6f22b95 100644 --- a/basic/source/uno/dlgcont.cxx +++ b/basic/source/uno/dlgcont.cxx @@ -33,7 +33,6 @@ #include <com/sun/star/document/GraphicObjectResolver.hpp> #include "dlgcont.hxx" #include "sbmodule.hxx" -#include "sbservices.hxx" #include <comphelper/processfactory.hxx> #include <unotools/streamwrap.hxx> #include <osl/mutex.hxx> @@ -450,11 +449,6 @@ SfxDialogLibraryContainer:: HasExecutableCode( const OUString& /*Library*/ ) thr // Service -void createRegistryInfo_SfxDialogLibraryContainer() -{ - static OAutoRegistration< SfxDialogLibraryContainer > aAutoRegistration; -} - OUString SAL_CALL SfxDialogLibraryContainer::getImplementationName( ) throw (RuntimeException, std::exception) { return getImplementationName_static(); @@ -479,14 +473,6 @@ OUString SfxDialogLibraryContainer::getImplementationName_static() return OUString("com.sun.star.comp.sfx2.DialogLibraryContainer"); } -Reference< XInterface > SAL_CALL SfxDialogLibraryContainer::Create( const Reference< XComponentContext >& ) throw( Exception ) -{ - Reference< XInterface > xRet = - static_cast< XInterface* >( static_cast< OWeakObject* >(new SfxDialogLibraryContainer()) ); - return xRet; -} - - // Implementation class SfxDialogLibrary @@ -608,4 +594,12 @@ bool SAL_CALL SfxDialogLibrary::isLibraryElementValid( ::com::sun::star::uno::An } +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_sfx2_DialogLibraryContainer_get_implementation(::com::sun::star::uno::XComponentContext*, + ::com::sun::star::uno::Sequence<css::uno::Any> const &) +{ + return cppu::acquire(new basic::SfxDialogLibraryContainer()); +} + + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/basic/source/uno/sbservices.cxx b/basic/source/uno/sbservices.cxx deleted file mode 100644 index e3eafb9..0000000 --- a/basic/source/uno/sbservices.cxx +++ /dev/null @@ -1,50 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#include "sbmodule.hxx" -#include "sbservices.hxx" - -namespace basic -{ - static void initializeModule() - { - static bool bInitialized( false ); - if ( !bInitialized ) - { - ::osl::MutexGuard aGuard( ::osl::Mutex::getGlobalMutex() ); - if ( !bInitialized ) - { - createRegistryInfo_SfxDialogLibraryContainer(); - createRegistryInfo_SfxScriptLibraryContainer(); - } - } - } - - -} // namespace basic - - -extern "C" SAL_DLLPUBLIC_EXPORT void* SAL_CALL sb_component_getFactory( - const sal_Char* pImplementationName, void*, void* ) -{ - ::basic::initializeModule(); - return ::basic::BasicModule::getInstance().getComponentFactory( pImplementationName ); -} - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/basic/source/uno/sbservices.hxx b/basic/source/uno/sbservices.hxx deleted file mode 100644 index a344b27..0000000 --- a/basic/source/uno/sbservices.hxx +++ /dev/null @@ -1,35 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#ifndef INCLUDED_BASIC_SOURCE_UNO_SBSERVICES_HXX -#define INCLUDED_BASIC_SOURCE_UNO_SBSERVICES_HXX - -#include <sal/config.h> - -namespace basic { - -void createRegistryInfo_SfxDialogLibraryContainer(); - -void createRegistryInfo_SfxScriptLibraryContainer(); - -} - -#endif - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/basic/source/uno/scriptcont.cxx b/basic/source/uno/scriptcont.cxx index 43da15a..73bcbec 100644 --- a/basic/source/uno/scriptcont.cxx +++ b/basic/source/uno/scriptcont.cxx @@ -19,7 +19,6 @@ #include "scriptcont.hxx" #include "sbmodule.hxx" -#include "sbservices.hxx" #include <com/sun/star/container/XNameContainer.hpp> #include <com/sun/star/xml/sax/Parser.hpp> #include <com/sun/star/xml/sax/InputSource.hpp> @@ -1191,11 +1190,6 @@ sal_Bool SAL_CALL SfxScriptLibraryContainer:: HasExecutableCode( const OUString& // Service -void createRegistryInfo_SfxScriptLibraryContainer() -{ - static OAutoRegistration< SfxScriptLibraryContainer > aAutoRegistration; -} - OUString SAL_CALL SfxScriptLibraryContainer::getImplementationName( ) throw (RuntimeException, std::exception) { @@ -1222,14 +1216,6 @@ OUString SfxScriptLibraryContainer::getImplementationName_static() return OUString("com.sun.star.comp.sfx2.ScriptLibraryContainer" ); } -Reference< XInterface > SAL_CALL SfxScriptLibraryContainer::Create( const Reference< XComponentContext >& ) - throw( Exception ) -{ - Reference< XInterface > xRet = static_cast< XInterface* >( static_cast< OWeakObject* >(new SfxScriptLibraryContainer()) ); - return xRet; -} - - // Implementation class SfxScriptLibrary // Ctor @@ -1352,9 +1338,15 @@ void SAL_CALL SfxScriptLibrary::removeModuleInfo( const OUString& ModuleName ) mModuleInfos.erase( mModuleInfos.find( ModuleName ) ); } +} // namespace basic +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_sfx2_ScriptLibraryContainer_get_implementation(::com::sun::star::uno::XComponentContext*, + ::com::sun::star::uno::Sequence<css::uno::Any> const &) +{ + return cppu::acquire(new basic::SfxScriptLibraryContainer()); +} -} // namespace basic /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/basic/util/sb.component b/basic/util/sb.component index 15e9998..710c37f 100644 --- a/basic/util/sb.component +++ b/basic/util/sb.component @@ -19,11 +19,13 @@ <component loader="com.sun.star.loader.SharedLibrary" environment="@CPPU_ENV@" prefix="sb" xmlns="http://openoffice.org/2010/uno-components"> - <implementation name="com.sun.star.comp.sfx2.DialogLibraryContainer"> + <implementation name="com.sun.star.comp.sfx2.DialogLibraryContainer" + constructor="com_sun_star_comp_sfx2_DialogLibraryContainer_get_implementation"> <service name="com.sun.star.script.DialogLibraryContainer"/> <service name="com.sun.star.script.DocumentDialogLibraryContainer"/> </implementation> - <implementation name="com.sun.star.comp.sfx2.ScriptLibraryContainer"> + <implementation name="com.sun.star.comp.sfx2.ScriptLibraryContainer" + constructor="com_sun_star_comp_sfx2_ScriptLibraryContainer_get_implementation"> <service name="com.sun.star.script.DocumentScriptLibraryContainer"/> <service name="com.sun.star.script.ScriptLibraryContainer"/> </implementation> commit 02858e300c3999d176957b1f89228c2009ed2144 Author: Stephan Bergmann <[email protected]> Date: Thu Feb 26 14:46:03 2015 +0100 Clean up previous commit Change-Id: I754ac95c851892bdf7630d6f6241ed86f3750cf1 diff --git a/sw/source/ui/uno/swdetect.cxx b/sw/source/ui/uno/swdetect.cxx index ed91a6d..af951ce 100644 --- a/sw/source/ui/uno/swdetect.cxx +++ b/sw/source/ui/uno/swdetect.cxx @@ -113,7 +113,7 @@ OUString SAL_CALL SwFilterDetect::detect( Sequence< PropertyValue >& lDescriptor /* XServiceInfo */ OUString SAL_CALL SwFilterDetect::getImplementationName() throw( RuntimeException, std::exception ) { - return impl_getStaticImplementationName(); + return OUString("com.sun.star.comp.writer.FormatDetector" ); } /* XServiceInfo */ @@ -125,12 +125,6 @@ sal_Bool SAL_CALL SwFilterDetect::supportsService( const OUString& sServiceName /* XServiceInfo */ Sequence< OUString > SAL_CALL SwFilterDetect::getSupportedServiceNames() throw( RuntimeException, std::exception ) { - return impl_getStaticSupportedServiceNames(); -} - -/* Helper for XServiceInfo */ -Sequence< OUString > SwFilterDetect::impl_getStaticSupportedServiceNames() -{ Sequence< OUString > seqServiceNames( 3 ); seqServiceNames.getArray() [0] = "com.sun.star.frame.ExtendedTypeDetection"; seqServiceNames.getArray() [1] = "com.sun.star.text.FormatDetector"; @@ -138,14 +132,8 @@ Sequence< OUString > SwFilterDetect::impl_getStaticSupportedServiceNames() return seqServiceNames ; } -/* Helper for XServiceInfo */ -OUString SwFilterDetect::impl_getStaticImplementationName() -{ - return OUString("com.sun.star.comp.writer.FormatDetector" ); -} - extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL -com_sun_star_comp_writer_FormatDetector_get_implementation(::com::sun::star::uno::XComponentContext* component, +com_sun_star_comp_writer_FormatDetector_get_implementation(::com::sun::star::uno::XComponentContext*, ::com::sun::star::uno::Sequence<css::uno::Any> const &) { return cppu::acquire(new SwFilterDetect()); diff --git a/sw/source/ui/uno/swdetect.hxx b/sw/source/ui/uno/swdetect.hxx index eba0753..d213862 100644 --- a/sw/source/ui/uno/swdetect.hxx +++ b/sw/source/ui/uno/swdetect.hxx @@ -39,10 +39,6 @@ namespace com { namespace star { - namespace lang - { - class XMultiServiceFactory; - } namespace beans { struct PropertyValue; @@ -66,10 +62,6 @@ public: virtual sal_Bool SAL_CALL supportsService( const OUString& sServiceName ) throw( css::uno::RuntimeException, std::exception ) SAL_OVERRIDE; virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() throw( css::uno::RuntimeException, std::exception ) SAL_OVERRIDE; - /* Helper for XServiceInfo */ - static css::uno::Sequence< OUString > impl_getStaticSupportedServiceNames(); - static OUString impl_getStaticImplementationName(); - // XExtendedFilterDetect virtual OUString SAL_CALL detect( css::uno::Sequence< css::beans::PropertyValue >& lDescriptor ) throw( css::uno::RuntimeException, std::exception ) SAL_OVERRIDE; }; diff --git a/sw/util/swd.component b/sw/util/swd.component index e09b385..be51018 100644 --- a/sw/util/swd.component +++ b/sw/util/swd.component @@ -18,9 +18,9 @@ --> <component loader="com.sun.star.loader.SharedLibrary" environment="@CPPU_ENV@" - prefix="swd" xmlns="http://openoffice.org/2010/uno-components"> - <implementation name="com.sun.star.comp.writer.FormatDetector" - constructor="com_sun_star_comp_writer_FormatDetector_get_implementation"> + xmlns="http://openoffice.org/2010/uno-components"> + <implementation name="com.sun.star.comp.writer.FormatDetector" + constructor="com_sun_star_comp_writer_FormatDetector_get_implementation"> <service name="com.sun.star.frame.ExtendedTypeDetection"/> <service name="com.sun.star.text.FormatDetector"/> <service name="com.sun.star.text.W4WFormatDetector"/> commit 680b510c9772643a7df61816f398bf6b7c689062 Author: Chris Sherlock <[email protected]> Date: Tue Feb 24 14:06:26 2015 +1100 sw: convert swd.component to constructor usage Whilst we are about it, need to expand the macro SFX_DECL_XSERVICEINFO_NOFACTORY and remove the impl_createInstance function. Also removed factory parameter from constructor as not needed. Change-Id: I400274fa9aaaa95be1c9929bce9dd6f25c780196 Signed-off-by: Stephan Bergmann <[email protected]> diff --git a/sw/Library_swd.mk b/sw/Library_swd.mk index 8657cf1..6396a28 100644 --- a/sw/Library_swd.mk +++ b/sw/Library_swd.mk @@ -42,7 +42,6 @@ $(eval $(call gb_Library_use_libraries,swd,\ )) $(eval $(call gb_Library_add_exception_objects,swd,\ - sw/source/ui/uno/detreg \ sw/source/ui/uno/swdetect \ )) diff --git a/sw/source/ui/uno/detreg.cxx b/sw/source/ui/uno/detreg.cxx deleted file mode 100644 index d6d6208..0000000 --- a/sw/source/ui/uno/detreg.cxx +++ /dev/null @@ -1,66 +0,0 @@ -/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ -/* - * This file is part of the LibreOffice project. - * - * This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. - * - * This file incorporates work covered by the following license notice: - * - * Licensed to the Apache Software Foundation (ASF) under one or more - * contributor license agreements. See the NOTICE file distributed - * with this work for additional information regarding copyright - * ownership. The ASF licenses this file to you under the Apache - * License, Version 2.0 (the "License"); you may not use this file - * except in compliance with the License. You may obtain a copy of - * the License at http://www.apache.org/licenses/LICENSE-2.0 . - */ - -#include "swdetect.hxx" - -using namespace ::com::sun::star; -using namespace ::com::sun::star::uno; -using namespace ::com::sun::star::lang; - -extern "C" { - -SAL_DLLPUBLIC_EXPORT void* SAL_CALL swd_component_getFactory( - const sal_Char* pImplementationName, - void* pServiceManager, - void* /*pRegistryKey*/ ) -{ - // Set default return value for this operation - if it failed. - void* pReturn = NULL ; - - if ( - ( pImplementationName != NULL ) && - ( pServiceManager != NULL ) - ) - { - // Define variables which are used in following macros. - Reference< XSingleServiceFactory > xFactory ; - Reference< XMultiServiceFactory > xServiceManager( reinterpret_cast< XMultiServiceFactory* >( pServiceManager ) ) ; - - if( SwFilterDetect::impl_getStaticImplementationName().equalsAscii( pImplementationName ) ) - { - xFactory = ::cppu::createSingleFactory( xServiceManager, - SwFilterDetect::impl_getStaticImplementationName(), - SwFilterDetect::impl_createInstance, - SwFilterDetect::impl_getStaticSupportedServiceNames() ); - } - - // Factory is valid - service was found. - if ( xFactory.is() ) - { - xFactory->acquire(); - pReturn = xFactory.get(); - } - } - - // Return with result of this operation. - return pReturn ; -} -} // extern "C" - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sw/source/ui/uno/swdetect.cxx b/sw/source/ui/uno/swdetect.cxx index eff1d64..ed91a6d 100644 --- a/sw/source/ui/uno/swdetect.cxx +++ b/sw/source/ui/uno/swdetect.cxx @@ -34,7 +34,7 @@ using namespace ::com::sun::star::beans; using namespace ::com::sun::star::lang; using utl::MediaDescriptor; -SwFilterDetect::SwFilterDetect( const Reference < XMultiServiceFactory >& /*xFactory*/ ) +SwFilterDetect::SwFilterDetect() { } @@ -144,10 +144,11 @@ OUString SwFilterDetect::impl_getStaticImplementationName() return OUString("com.sun.star.comp.writer.FormatDetector" ); } -/* Helper for registry */ -Reference< XInterface > SAL_CALL SwFilterDetect::impl_createInstance( const Reference< XMultiServiceFactory >& xServiceManager ) throw( Exception ) +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_writer_FormatDetector_get_implementation(::com::sun::star::uno::XComponentContext* component, + ::com::sun::star::uno::Sequence<css::uno::Any> const &) { - return Reference< XInterface >( *new SwFilterDetect( xServiceManager ) ); + return cppu::acquire(new SwFilterDetect()); } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sw/source/ui/uno/swdetect.hxx b/sw/source/ui/uno/swdetect.hxx index ea28ccf..eba0753 100644 --- a/sw/source/ui/uno/swdetect.hxx +++ b/sw/source/ui/uno/swdetect.hxx @@ -58,10 +58,17 @@ class SfxFilter; class SwFilterDetect : public ::cppu::WeakImplHelper2< css::document::XExtendedFilterDetection, css::lang::XServiceInfo > { public: - SwFilterDetect( const css::uno::Reference < css::lang::XMultiServiceFactory >& xFactory ); + SwFilterDetect(); virtual ~SwFilterDetect(); - SFX_DECL_XSERVICEINFO_NOFACTORY + /* XServiceInfo */ + virtual OUString SAL_CALL getImplementationName() throw( css::uno::RuntimeException, std::exception ) SAL_OVERRIDE; + virtual sal_Bool SAL_CALL supportsService( const OUString& sServiceName ) throw( css::uno::RuntimeException, std::exception ) SAL_OVERRIDE; + virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() throw( css::uno::RuntimeException, std::exception ) SAL_OVERRIDE; + + /* Helper for XServiceInfo */ + static css::uno::Sequence< OUString > impl_getStaticSupportedServiceNames(); + static OUString impl_getStaticImplementationName(); // XExtendedFilterDetect virtual OUString SAL_CALL detect( css::uno::Sequence< css::beans::PropertyValue >& lDescriptor ) throw( css::uno::RuntimeException, std::exception ) SAL_OVERRIDE; diff --git a/sw/util/swd.component b/sw/util/swd.component index a342f05..e09b385 100644 --- a/sw/util/swd.component +++ b/sw/util/swd.component @@ -19,7 +19,8 @@ <component loader="com.sun.star.loader.SharedLibrary" environment="@CPPU_ENV@" prefix="swd" xmlns="http://openoffice.org/2010/uno-components"> - <implementation name="com.sun.star.comp.writer.FormatDetector"> + <implementation name="com.sun.star.comp.writer.FormatDetector" + constructor="com_sun_star_comp_writer_FormatDetector_get_implementation"> <service name="com.sun.star.frame.ExtendedTypeDetection"/> <service name="com.sun.star.text.FormatDetector"/> <service name="com.sun.star.text.W4WFormatDetector"/> commit 866e7c38112a695baa1ae20090c28a02a1d0b0f3 Author: Chris Sherlock <[email protected]> Date: Tue Feb 24 02:07:17 2015 +1100 sw: convert SwWebDocument & SwGlobalDocument components to use constructor Change-Id: Ib59fa91eb9d32ea437c182d3c0f3b9348816bf7b Signed-off-by: Stephan Bergmann <[email protected]> diff --git a/sw/source/core/inc/unofreg.hxx b/sw/source/core/inc/unofreg.hxx index 3e6a1f3..0b49ffd 100644 --- a/sw/source/core/inc/unofreg.hxx +++ b/sw/source/core/inc/unofreg.hxx @@ -38,12 +38,6 @@ css::uno::Reference< css::uno::XInterface > SAL_CALL SwUnoModule_createInstance( css::uno::Sequence< OUString > SAL_CALL SwTextDocument_getSupportedServiceNames() throw(); OUString SAL_CALL SwTextDocument_getImplementationName() throw(); css::uno::Reference< css::uno::XInterface > SAL_CALL SwTextDocument_createInstance( const css::uno::Reference< css::lang::XMultiServiceFactory > &rSMgr, const sal_uInt64 _nCreationFlags ) throw( css::uno::Exception ); -css::uno::Sequence< OUString > SAL_CALL SwWebDocument_getSupportedServiceNames() throw(); -OUString SAL_CALL SwWebDocument_getImplementationName() throw(); -css::uno::Reference< css::uno::XInterface > SAL_CALL SwWebDocument_createInstance( const css::uno::Reference< css::lang::XMultiServiceFactory > &rSMgr ) throw( css::uno::Exception ); -css::uno::Sequence< OUString > SAL_CALL SwGlobalDocument_getSupportedServiceNames() throw(); -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 ); //API objects css::uno::Sequence< OUString > SAL_CALL SwXAutoTextContainer_getSupportedServiceNames() throw(); diff --git a/sw/source/uibase/uno/unodoc.cxx b/sw/source/uibase/uno/unodoc.cxx index 41189d2..2f4291b 100644 --- a/sw/source/uibase/uno/unodoc.cxx +++ b/sw/source/uibase/uno/unodoc.cxx @@ -26,6 +26,7 @@ #include "wdocsh.hxx" #include <osl/mutex.hxx> #include <vcl/svapp.hxx> +#include <cppuhelper/weak.hxx> using namespace ::com::sun::star; @@ -57,58 +58,29 @@ uno::Reference< uno::XInterface > SAL_CALL SwTextDocument_createInstance( return uno::Reference< uno::XInterface >( pShell->GetModel() ); } -// com.sun.star.comp.Writer.WebDocument - -uno::Sequence< OUString > SAL_CALL SwWebDocument_getSupportedServiceNames() throw() -{ - // return only top level services here! All others must be - // resolved by rtti! - uno::Sequence< OUString > aRet ( 1 ); - OUString* pArray = aRet.getArray(); - pArray[0] = "com.sun.star.text.WebDocument"; - - return aRet; -} - -OUString SAL_CALL SwWebDocument_getImplementationName() throw() -{ - return OUString( "com.sun.star.comp.Writer.WebDocument" ); -} - -uno::Reference< uno::XInterface > SAL_CALL SwWebDocument_createInstance( - const uno::Reference< lang::XMultiServiceFactory > & ) - throw( uno::Exception ) +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_Writer_WebDocument_get_implementation(::com::sun::star::uno::XComponentContext*, + ::com::sun::star::uno::Sequence<css::uno::Any> const &) { SolarMutexGuard aGuard; SwGlobals::ensure(); SfxObjectShell* pShell = new SwWebDocShell( SFX_CREATE_MODE_STANDARD ); - return uno::Reference< uno::XInterface >( pShell->GetModel() ); -} - -// com.sun.star.comp.Writer.GlobalDocument - -uno::Sequence< OUString > SAL_CALL SwGlobalDocument_getSupportedServiceNames() throw() -{ - uno::Sequence< OUString > aRet ( 1 ); - OUString* pArray = aRet.getArray(); - pArray[0] = "com.sun.star.text.GlobalDocument"; - - return aRet; + uno::Reference< uno::XInterface > model( pShell->GetModel() ); + model->acquire(); + return model.get(); } -OUString SAL_CALL SwGlobalDocument_getImplementationName() throw() -{ - return OUString( "com.sun.star.comp.Writer.GlobalDocument" ); -} -uno::Reference< uno::XInterface > SAL_CALL SwGlobalDocument_createInstance( - const uno::Reference< lang::XMultiServiceFactory > &) - throw( uno::Exception ) +extern "C" SAL_DLLPUBLIC_EXPORT ::com::sun::star::uno::XInterface* SAL_CALL +com_sun_star_comp_Writer_GlobalDocument_get_implementation(::com::sun::star::uno::XComponentContext*, + ::com::sun::star::uno::Sequence<css::uno::Any> const &) { SolarMutexGuard aGuard; SwGlobals::ensure(); SfxObjectShell* pShell = new SwGlobalDocShell( SFX_CREATE_MODE_STANDARD ); - return uno::Reference< uno::XInterface >( pShell->GetModel() ); + uno::Reference< uno::XInterface > model( pShell->GetModel() ); + model->acquire(); + return model.get(); } /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/sw/source/uibase/uno/unofreg.cxx b/sw/source/uibase/uno/unofreg.cxx index 84105c1..c5b2138 100644 --- a/sw/source/uibase/uno/unofreg.cxx +++ b/sw/source/uibase/uno/unofreg.cxx @@ -102,22 +102,6 @@ SAL_DLLPUBLIC_EXPORT void * SAL_CALL sw_component_getFactory( SwTextDocument_createInstance, SwTextDocument_getSupportedServiceNames() ); } - else if( SwWebDocument_getImplementationName().equalsAsciiL( - pImplName, nImplNameLen ) ) - { - xFactory = ::cppu::createSingleFactory( xMSF, - SwWebDocument_getImplementationName(), - SwWebDocument_createInstance, - SwWebDocument_getSupportedServiceNames() ); - } - else if( SwGlobalDocument_getImplementationName().equalsAsciiL( - pImplName, nImplNameLen ) ) - { - xFactory = ::cppu::createSingleFactory( xMSF, - SwGlobalDocument_getImplementationName(), - SwGlobalDocument_createInstance, - SwGlobalDocument_getSupportedServiceNames() ); - } else if( SwUnoModule_getImplementationName().equalsAsciiL( pImplName, nImplNameLen ) ) { diff --git a/sw/util/sw.component b/sw/util/sw.component index 81baa5f..0b75e67 100644 --- a/sw/util/sw.component +++ b/sw/util/sw.component @@ -31,13 +31,15 @@ <implementation name="com.sun.star.comp.Writer.FilterOptionsDialog"> <service name="com.sun.star.ui.dialogs.FilterOptionsDialog"/> </implementation> - <implementation name="com.sun.star.comp.Writer.GlobalDocument"> + <implementation name="com.sun.star.comp.Writer.GlobalDocument" + constructor="com_sun_star_comp_Writer_GlobalDocument_get_implementation"> <service name="com.sun.star.text.GlobalDocument"/> </implementation> <implementation name="com.sun.star.comp.Writer.TextDocument"> <service name="com.sun.star.text.TextDocument"/> </implementation> - <implementation name="com.sun.star.comp.Writer.WebDocument"> + <implementation name="com.sun.star.comp.Writer.WebDocument" + constructor="com_sun_star_comp_Writer_WebDocument_get_implementation"> <service name="com.sun.star.text.WebDocument"/> </implementation> <implementation name="com.sun.star.comp.Writer.WriterModule"> commit a22433785ae70ae6a97a6ff15f218138856603dc Author: Chris Sherlock <[email protected]> Date: Mon Feb 23 11:41:59 2015 +1100 sw: convert import & export components to constructor usage Change-Id: I15b64f874f72715cea04f656e1b883c6cf45a86c Signed-off-by: Stephan Bergmann <[email protected]> diff --git a/sw/source/core/inc/unofreg.hxx b/sw/source/core/inc/unofreg.hxx index d404281..3e6a1f3 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 1af695c..ba6c78e 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<XUnoTunnel> 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<css::uno::Any> 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<css::uno::Any> 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<css::uno::Any> 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<css::uno::Any> 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<css::uno::Any> 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<css::uno::Any> 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<css::uno::Any> 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<css::uno::Any> 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<css::uno::Any> const &) { - if( doc != NULL ) - return doc; - Reference < XTextDocument > xTextDoc( GetModel(), UNO_QUERY ); - Reference < XText > xText = xTextDoc->getText(); - Reference<XUnoTunnel> 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<css::uno::Any> 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 dfd3266..ab8c9cc 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<lang::XUnoTunnel> 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<css::uno::Any> 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<css::uno::Any> 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<css::uno::Any> 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<css::uno::Any> 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<css::uno::Any> 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 46d8810..84105c1 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 46cdc67..81baa5f 100644 --- a/sw/util/sw.component +++ b/sw/util/sw.component @@ -43,49 +43,64 @@ <implementation name="com.sun.star.comp.Writer.WriterModule"> <service name="com.sun.star.text.ModuleDispatcher"/> </implementation> - <implementation name="com.sun.star.comp.Writer.XMLContentExporter"> + <implementation name="com.sun.star.comp.Writer.XMLContentExporter" + constructor="com_sun_star_comp_Writer_XMLContentExporter_get_implementation"> <service name="com.sun.star.comp.Writer.XMLContentExporter"/> </implementation> - <implementation name="com.sun.star.comp.Writer.XMLExporter"> + <implementation name="com.sun.star.comp.Writer.XMLExporter" + constructor="com_sun_star_comp_Writer_XMLExporter_get_implementation"> <service name="com.sun.star.comp.Writer.XMLExporter"/> </implementation> - <implementation name="com.sun.star.comp.Writer.XMLMetaExporter"> + <implementation name="com.sun.star.comp.Writer.XMLMetaExporter" + constructor="com_sun_star_comp_Writer_XMLMetaExporter_get_implementation"> <service name="com.sun.star.comp.Writer.XMLMetaExporter"/> </implementation> - <implementation name="com.sun.star.comp.Writer.XMLOasisContentExporter"> + <implementation name="com.sun.star.comp.Writer.XMLOasisContentExporter" + constructor="com_sun_star_comp_Writer_XMLOasisContentExporter_get_implementation"> <service name="com.sun.star.comp.Writer.XMLOasisContentExporter"/> </implementation> - <implementation name="com.sun.star.comp.Writer.XMLOasisContentImporter"> + <implementation name="com.sun.star.comp.Writer.XMLOasisContentImporter" + constructor="com_sun_star_comp_Writer_XMLOasisContentImporter_get_implementation"> <service name="com.sun.star.comp.Writer.XMLOasisContentImporter"/> </implementation> - <implementation name="com.sun.star.comp.Writer.XMLOasisExporter"> + <implementation name="com.sun.star.comp.Writer.XMLOasisExporter" + constructor="com_sun_star_comp_Writer_XMLOasisExporter_get_implementation"> <service name="com.sun.star.comp.Writer.XMLOasisExporter"/> </implementation> - <implementation name="com.sun.star.comp.Writer.XMLOasisImporter"> + <implementation name="com.sun.star.comp.Writer.XMLOasisImporter" + constructor="com_sun_star_comp_Writer_XMLOasisImporter_get_implementation"> <service name="com.sun.star.comp.Writer.XMLOasisImporter"/> </implementation> - <implementation name="com.sun.star.comp.Writer.XMLOasisMetaExporter"> + <implementation name="com.sun.star.comp.Writer.XMLOasisMetaExporter" + constructor="com_sun_star_comp_Writer_XMLOasisMetaExporter_get_implementation"> <service name="com.sun.star.comp.Writer.XMLOasisMetaExporter"/> </implementation> - <implementation name="com.sun.star.comp.Writer.XMLOasisMetaImporter"> + <implementation name="com.sun.star.comp.Writer.XMLOasisMetaImporter" + constructor="com_sun_star_comp_Writer_XMLOasisMetaImporter_get_implementation"> <service name="com.sun.star.comp.Writer.XMLOasisMetaImporter"/> </implementation> - <implementation name="com.sun.star.comp.Writer.XMLOasisSettingsExporter"> + <implementation name="com.sun.star.comp.Writer.XMLOasisSettingsExporter" + constructor="com_sun_star_comp_Writer_XMLOasisSettingsExporter_get_implementation"> <service name="com.sun.star.comp.Writer.XMLOasisSettingsExporter"/> </implementation> - <implementation name="com.sun.star.comp.Writer.XMLOasisSettingsImporter"> + <implementation name="com.sun.star.comp.Writer.XMLOasisSettingsImporter" + constructor="com_sun_star_comp_Writer_XMLOasisSettingsImporter_get_implementation"> <service name="com.sun.star.comp.Writer.XMLOasisSettingsImporter"/> </implementation> - <implementation name="com.sun.star.comp.Writer.XMLOasisStylesExporter"> + <implementation name="com.sun.star.comp.Writer.XMLOasisStylesExporter" + constructor="com_sun_star_comp_Writer_XMLOasisStylesExporter_get_implementation"> <service name="com.sun.star.comp.Writer.XMLOasisStylesExporter"/> </implementation> - <implementation name="com.sun.star.comp.Writer.XMLOasisStylesImporter"> + <implementation name="com.sun.star.comp.Writer.XMLOasisStylesImporter" + constructor="com_sun_star_comp_Writer_XMLOasisStylesImporter_get_implementation"> <service name="com.sun.star.comp.Writer.XMLOasisStylesImporter"/> </implementation> - <implementation name="com.sun.star.comp.Writer.XMLSettingsExporter"> + <implementation name="com.sun.star.comp.Writer.XMLSettingsExporter" + constructor="com_sun_star_comp_Writer_XMLSettingsExporter_get_implementation"> <service name="com.sun.star.comp.Writer.XMLSettingsExporter"/> </implementation> - <implementation name="com.sun.star.comp.Writer.XMLStylesExporter"> + <implementation name="com.sun.star.comp.Writer.XMLStylesExporter" + constructor="com_sun_star_comp_Writer_XMLStylesExporter_get_implementation"> <service name="com.sun.star.comp.Writer.XMLStylesExporter"/> </implementation> <implementation name="com.sun.star.util.comp.FinalThreadManager"> _______________________________________________ Libreoffice-commits mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits
