[Libreoffice-commits] .: extensions/source
Matus Kukan
mkukan at kemper.freedesktop.org
Thu Jul 21 04:29:25 PDT 2011
extensions/source/logging/log_module.cxx | 19 +++-
extensions/source/logging/log_module.hxx | 50 ++++++++++
extensions/source/logging/log_services.cxx | 7 +
extensions/source/oooimprovecore/core.cxx | 1
extensions/source/oooimprovecore/oooimprovecore_module.cxx | 19 +++-
extensions/source/oooimprovecore/oooimprovecore_module.hxx | 51 ++++++++++-
extensions/source/oooimprovecore/oooimprovecore_services.cxx | 7 +
7 files changed, 147 insertions(+), 7 deletions(-)
New commits:
commit c302693bb67d7064f9c472a53a34b0f6219e119f
Author: Matúš Kukan <matus.kukan at gmail.com>
Date: Thu Jul 21 13:28:01 2011 +0200
Do not use macros from comphelper's componentmodule.hxx
diff --git a/extensions/source/logging/log_module.cxx b/extensions/source/logging/log_module.cxx
index 5cdf5e7..8fbdb09 100644
--- a/extensions/source/logging/log_module.cxx
+++ b/extensions/source/logging/log_module.cxx
@@ -36,7 +36,24 @@ namespace logging
{
//........................................................................
- IMPLEMENT_COMPONENT_MODULE( LogModule );
+ struct LogModuleCreator
+ {
+ LogModule m_aLogModule;
+ };
+ namespace
+ {
+ class theLogModuleInstance : public rtl::Static<LogModuleCreator, theLogModuleInstance> {};
+ }
+
+ LogModule::LogModule()
+ :BaseClass()
+ {
+ }
+
+ LogModule& LogModule::getInstance()
+ {
+ return theLogModuleInstance::get().m_aLogModule;
+ }
//........................................................................
} // namespace logging
diff --git a/extensions/source/logging/log_module.hxx b/extensions/source/logging/log_module.hxx
index dbc0681..7f825da 100644
--- a/extensions/source/logging/log_module.hxx
+++ b/extensions/source/logging/log_module.hxx
@@ -36,7 +36,55 @@ namespace logging
{
//........................................................................
- DECLARE_COMPONENT_MODULE( LogModule, LogModuleClient )
+ class LogModule : public ::comphelper::OModule
+ {
+ friend struct LogModuleCreator;
+ typedef ::comphelper::OModule BaseClass;
+
+ public:
+ static LogModule& getInstance();
+
+ private:
+ LogModule();
+ };
+
+ /* -------------------------------------------------------------------- */
+ class LogModuleClient : public ::comphelper::OModuleClient
+ {
+ private:
+ typedef ::comphelper::OModuleClient BaseClass;
+
+ public:
+ LogModuleClient() : BaseClass( LogModule::getInstance() )
+ {
+ }
+ };
+
+ /* -------------------------------------------------------------------- */
+ template < class TYPE >
+ class OAutoRegistration : public ::comphelper::OAutoRegistration< TYPE >
+ {
+ private:
+ typedef ::comphelper::OAutoRegistration< TYPE > BaseClass;
+
+ public:
+ OAutoRegistration() : BaseClass( LogModule::getInstance() )
+ {
+ }
+ };
+
+ /* -------------------------------------------------------------------- */
+ template < class TYPE >
+ class OSingletonRegistration : public ::comphelper::OSingletonRegistration< TYPE >
+ {
+ private:
+ typedef ::comphelper::OSingletonRegistration< TYPE > BaseClass;
+
+ public:
+ OSingletonRegistration() : BaseClass( LogModule::getInstance() )
+ {
+ }
+ };
//........................................................................
} // namespace logging
diff --git a/extensions/source/logging/log_services.cxx b/extensions/source/logging/log_services.cxx
index 224febd..f568f63 100644
--- a/extensions/source/logging/log_services.cxx
+++ b/extensions/source/logging/log_services.cxx
@@ -59,6 +59,11 @@ namespace logging
} // namespace logging
//........................................................................
-IMPLEMENT_COMPONENT_LIBRARY_API( ::logging::LogModule, ::logging::initializeModule )
+extern "C" SAL_DLLPUBLIC_EXPORT void* SAL_CALL component_getFactory(
+ const sal_Char* pImplementationName, void* pServiceManager, void* pRegistryKey )
+{
+ ::logging::initializeModule();
+ return ::logging::LogModule::getInstance().getComponentFactory( pImplementationName, pServiceManager, pRegistryKey );
+}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/extensions/source/oooimprovecore/core.cxx b/extensions/source/oooimprovecore/core.cxx
index ac8363b..1836e4d 100644
--- a/extensions/source/oooimprovecore/core.cxx
+++ b/extensions/source/oooimprovecore/core.cxx
@@ -36,7 +36,6 @@
#include <com/sun/star/lang/XServiceInfo.hpp>
#include <com/sun/star/oooimprovement/XCoreController.hpp>
#include <com/sun/star/uno/XComponentContext.hpp>
-#include <comphelper/componentmodule.hxx>
#include <comphelper/configurationhelper.hxx>
#include <comphelper/processfactory.hxx>
#include <comphelper/uieventslogger.hxx>
diff --git a/extensions/source/oooimprovecore/oooimprovecore_module.cxx b/extensions/source/oooimprovecore/oooimprovecore_module.cxx
index c686bee..6457da1 100644
--- a/extensions/source/oooimprovecore/oooimprovecore_module.cxx
+++ b/extensions/source/oooimprovecore/oooimprovecore_module.cxx
@@ -33,7 +33,24 @@
namespace oooimprovecore
{
- IMPLEMENT_COMPONENT_MODULE( OooimprovecoreModule );
+ struct OooimprovecoreModuleCreator
+ {
+ OooimprovecoreModule m_aOooimprovecoreModule;
+ };
+ namespace
+ {
+ class theOooimprovecoreModuleInstance : public rtl::Static<OooimprovecoreModuleCreator, theOooimprovecoreModuleInstance> {};
+ }
+
+ OooimprovecoreModule::OooimprovecoreModule()
+ :BaseClass()
+ {
+ }
+
+ OooimprovecoreModule& OooimprovecoreModule::getInstance()
+ {
+ return theOooimprovecoreModuleInstance::get().m_aOooimprovecoreModule;
+ }
}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
diff --git a/extensions/source/oooimprovecore/oooimprovecore_module.hxx b/extensions/source/oooimprovecore/oooimprovecore_module.hxx
index 3cf4d71..aeb1ff0 100644
--- a/extensions/source/oooimprovecore/oooimprovecore_module.hxx
+++ b/extensions/source/oooimprovecore/oooimprovecore_module.hxx
@@ -33,7 +33,56 @@
namespace oooimprovecore
{
- DECLARE_COMPONENT_MODULE( OooimprovecoreModule, OooimprovecoreModuleClient )
+ /* -------------------------------------------------------------------- */
+ class OooimprovecoreModule : public ::comphelper::OModule
+ {
+ friend struct OooimprovecoreModuleCreator;
+ typedef ::comphelper::OModule BaseClass;
+
+ public:
+ static OooimprovecoreModule& getInstance();
+
+ private:
+ OooimprovecoreModule();
+ };
+
+ /* -------------------------------------------------------------------- */
+ class OooimprovecoreModuleClient : public ::comphelper::OModuleClient
+ {
+ private:
+ typedef ::comphelper::OModuleClient BaseClass;
+
+ public:
+ OooimprovecoreModuleClient() : BaseClass( OooimprovecoreModule::getInstance() )
+ {
+ }
+ };
+
+ /* -------------------------------------------------------------------- */
+ template < class TYPE >
+ class OAutoRegistration : public ::comphelper::OAutoRegistration< TYPE >
+ {
+ private:
+ typedef ::comphelper::OAutoRegistration< TYPE > BaseClass;
+
+ public:
+ OAutoRegistration() : BaseClass( OooimprovecoreModule::getInstance() )
+ {
+ }
+ };
+
+ /* -------------------------------------------------------------------- */
+ template < class TYPE >
+ class OSingletonRegistration : public ::comphelper::OSingletonRegistration< TYPE >
+ {
+ private:
+ typedef ::comphelper::OSingletonRegistration< TYPE > BaseClass;
+
+ public:
+ OSingletonRegistration() : BaseClass( OooimprovecoreModule::getInstance() )
+ {
+ }
+ };
}
#endif
diff --git a/extensions/source/oooimprovecore/oooimprovecore_services.cxx b/extensions/source/oooimprovecore/oooimprovecore_services.cxx
index dbfdd4e..d080086 100644
--- a/extensions/source/oooimprovecore/oooimprovecore_services.cxx
+++ b/extensions/source/oooimprovecore/oooimprovecore_services.cxx
@@ -43,6 +43,11 @@ namespace oooimprovecore
}
-IMPLEMENT_COMPONENT_LIBRARY_API( ::oooimprovecore::OooimprovecoreModule, ::oooimprovecore::initializeModule)
+extern "C" SAL_DLLPUBLIC_EXPORT void* SAL_CALL component_getFactory(
+ const sal_Char* pImplementationName, void* pServiceManager, void* pRegistryKey )
+{
+ ::oooimprovecore::initializeModule();
+ return ::oooimprovecore::OooimprovecoreModule::getInstance().getComponentFactory( pImplementationName, pServiceManager, pRegistryKey );
+}
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
More information about the Libreoffice-commits
mailing list