summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorNoel Grandin <noel@peralex.com>2013-07-22 16:06:20 +0200
committerNoel Grandin <noel@peralex.com>2013-07-23 10:05:46 +0200
commit61eed5f1b9889ba3b6c0e484f0847cdf52ab3871 (patch)
tree7aea73f0cc2950484992bccca9cbbb063277f633 /include
parent376d5a6ad979ef2b3e90c186ca8ede0ef2824200 (diff)
convert sfx2 UNO services to WeakImplHelper
...removing the SFX_ UNO-related macros as a result. Change-Id: I56542885847ff0adc604f309ed7e2582b7529f3f
Diffstat (limited to 'include')
-rw-r--r--include/sfx2/appuno.hxx17
-rw-r--r--include/sfx2/sfxstatuslistener.hxx11
-rw-r--r--include/sfx2/sfxuno.hxx350
-rw-r--r--include/sfx2/unoctitm.hxx19
4 files changed, 16 insertions, 381 deletions
diff --git a/include/sfx2/appuno.hxx b/include/sfx2/appuno.hxx
index ff2313fd040d..1845867acc99 100644
--- a/include/sfx2/appuno.hxx
+++ b/include/sfx2/appuno.hxx
@@ -39,21 +39,20 @@
#include <com/sun/star/uno/Any.h>
#include <com/sun/star/uno/Reference.h>
#include <com/sun/star/uno/Sequence.hxx>
-#include <cppuhelper/weak.hxx>
#include <cppuhelper/implbase3.hxx>
#include <cppuhelper/implbase4.hxx>
+#include <cppuhelper/implbase5.hxx>
#include <tools/errcode.hxx>
#include <sfx2/sfxuno.hxx>
class SfxObjectShell;
-class SfxMacroLoader : public ::com::sun::star::frame::XDispatchProvider,
- public ::com::sun::star::frame::XNotifyingDispatch,
- public ::com::sun::star::frame::XSynchronousDispatch,
- public ::com::sun::star::lang::XTypeProvider,
- public ::com::sun::star::lang::XServiceInfo,
- public ::com::sun::star::lang::XInitialization,
- public ::cppu::OWeakObject
+class SfxMacroLoader : public ::cppu::WeakImplHelper5<
+ css::frame::XDispatchProvider,
+ css::frame::XNotifyingDispatch,
+ css::frame::XSynchronousDispatch,
+ css::lang::XServiceInfo,
+ css::lang::XInitialization >
{
::com::sun::star::uno::WeakReference < ::com::sun::star::frame::XFrame > m_xFrame;
@@ -61,7 +60,7 @@ class SfxMacroLoader : public ::com::sun::star::frame::XDispatchProvider,
public:
// XInterface, XTypeProvider, XServiceInfo
- SFX_DECL_XINTERFACE_XTYPEPROVIDER_XSERVICEINFO
+ SFX_DECL_XSERVICEINFO
SfxMacroLoader( const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory >& )
{}
diff --git a/include/sfx2/sfxstatuslistener.hxx b/include/sfx2/sfxstatuslistener.hxx
index 9e6be020db10..9913b911ffed 100644
--- a/include/sfx2/sfxstatuslistener.hxx
+++ b/include/sfx2/sfxstatuslistener.hxx
@@ -30,7 +30,7 @@
#include <com/sun/star/lang/XComponent.hpp>
#include <com/sun/star/frame/XStatusListener.hpp>
-#include <sfx2/sfxuno.hxx>
+#include <cppuhelper/implbase2.hxx>
// Interface for implementations which needs to get notifications about state changes
class SfxStatusListenerInterface
@@ -42,14 +42,11 @@ class SfxStatusListenerInterface
~SfxStatusListenerInterface() {}
};
-class SFX2_DLLPUBLIC SfxStatusListener :
- public ::com::sun::star::frame::XStatusListener ,
- public ::com::sun::star::lang::XTypeProvider ,
- public ::com::sun::star::lang::XComponent ,
- public ::cppu::OWeakObject
+class SFX2_DLLPUBLIC SfxStatusListener : public ::cppu::WeakImplHelper2<
+ css::frame::XStatusListener,
+ css::lang::XComponent>
{
public:
- SFX_DECL_XINTERFACE_XTYPEPROVIDER
SfxStatusListener( const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatchProvider >& rDispatchProvider, sal_uInt16 nSlotId, const OUString& aCommand );
virtual ~SfxStatusListener();
diff --git a/include/sfx2/sfxuno.hxx b/include/sfx2/sfxuno.hxx
index 6b0a2763497e..3dee2babe33c 100644
--- a/include/sfx2/sfxuno.hxx
+++ b/include/sfx2/sfxuno.hxx
@@ -81,27 +81,6 @@ bool GetEncryptionData_Impl( const SfxItemSet* pSet, css::uno::Sequence< css::be
// XInterface::release()
// XTypeProvider::getTypes()
// XTypeProvider::getImplementationId()
-//************************************************************************************************************************
-#define SFX_DECL_XINTERFACE \
- virtual css::uno::Any SAL_CALL queryInterface( const css::uno::Type& aType ) throw( css::uno::RuntimeException ); \
- virtual void SAL_CALL acquire() throw(); \
- virtual void SAL_CALL release() throw();
-
-#define SFX_DECL_XTYPEPROVIDER \
- /* XTypeProvider */ \
- virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes() throw( css::uno::RuntimeException ); \
- virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() throw( css::uno::RuntimeException );
-
-#define SFX_DECL_XINTERFACE_XTYPEPROVIDER \
- SFX_DECL_XINTERFACE \
- SFX_DECL_XTYPEPROVIDER
-
-//************************************************************************************************************************
-// declaration of XInterface::queryInterface()
-// XInterface::aquire()
-// XInterface::release()
-// XTypeProvider::getTypes()
-// XTypeProvider::getImplementationId()
// XServiceInfo::getImplementationName()
// XServiceInfo::supportsService()
// XServiceInfo::getSupportedServiceNames()
@@ -140,335 +119,6 @@ bool GetEncryptionData_Impl( const SfxItemSet* pSet, css::uno::Sequence< css::be
SFX_DECL_XSERVICEINFO_NOFACTORY \
static css::uno::Reference< css::lang::XSingleServiceFactory > impl_createFactory( const css::uno::Reference< css::lang::XMultiServiceFactory >& xServiceManager );
-#define SFX_DECL_XINTERFACE_XTYPEPROVIDER_XSERVICEINFO \
- \
- /* XInterface + XTypeProvider */ \
- SFX_DECL_XINTERFACE_XTYPEPROVIDER \
- SFX_DECL_XSERVICEINFO
-
-//************************************************************************************************************************
-// implementation of XInterface::queryInterface()
-// XInterface::aquire()
-// XInterface::release()
-//************************************************************************************************************************
-/*_________________________________________________________________________________________________________________________*/
-// DON'T USE FOLLOW MACROS DIRECTLY!!!
-#define SFX_IMPL_XINTERFACE_BASE( IMPLCLASS, BASECLASS, IMPLINTERFACES ) \
- \
- void SAL_CALL IMPLCLASS::acquire() throw() \
- { \
- /* Don't use mutex in methods of XInterface! */ \
- BASECLASS::acquire(); \
- } \
- \
- void SAL_CALL IMPLCLASS::release() throw() \
- { \
- /* Don't use mutex in methods of XInterface! */ \
- BASECLASS::release(); \
- } \
- \
- css::uno::Any SAL_CALL IMPLCLASS::queryInterface( const css::uno::Type& rType ) throw( css::uno::RuntimeException ) \
- { \
- /* Attention: Don't use mutex or guard in this method!!! Is a method of XInterface. */ \
- /* Ask for my own supported interfaces ... */ \
- css::uno::Any aReturn ( ::cppu::queryInterface( rType, \
- IMPLINTERFACES \
- ) \
- ); \
- /* If searched interface supported by this class ... */ \
- if ( aReturn.hasValue() == sal_True ) \
- { \
- /* ... return this information. */ \
- return aReturn ; \
- } \
- else \
- { \
- /* Else; ... ask baseclass for interfaces! */ \
- return BASECLASS::queryInterface( rType ); \
- } \
- }
-
-#define SFX_IMPL_INTERFACE_0 \
- static_cast< css::lang::XTypeProvider* >( this )
-
-#define SFX_IMPL_INTERFACE_1( INTERFACE1 ) \
- SFX_IMPL_INTERFACE_0, \
- static_cast< INTERFACE1* >( this )
-
-#define SFX_IMPL_INTERFACE_2( INTERFACE1, INTERFACE2 ) \
- SFX_IMPL_INTERFACE_1( INTERFACE1 ), \
- static_cast< INTERFACE2* >( this )
-
-#define SFX_IMPL_INTERFACE_3( INTERFACE1, INTERFACE2, INTERFACE3 ) \
- SFX_IMPL_INTERFACE_2( INTERFACE1, INTERFACE2 ), \
- static_cast< INTERFACE3* >( this )
-
-#define SFX_IMPL_INTERFACE_4( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4 ) \
- SFX_IMPL_INTERFACE_3( INTERFACE1, INTERFACE2, INTERFACE3 ), \
- static_cast< INTERFACE4* >( this )
-
-#define SFX_IMPL_INTERFACE_5( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5 ) \
- SFX_IMPL_INTERFACE_4( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4 ), \
- static_cast< INTERFACE5* >( this )
-
-#define SFX_IMPL_INTERFACE_6( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6 ) \
- SFX_IMPL_INTERFACE_5( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5 ), \
- static_cast< INTERFACE6* >( this )
-
-#define SFX_IMPL_INTERFACE_7( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7 ) \
- SFX_IMPL_INTERFACE_6( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6 ), \
- static_cast< INTERFACE7* >( this )
-
-#define SFX_IMPL_INTERFACE_8( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8 ) \
- SFX_IMPL_INTERFACE_7( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7 ), \
- static_cast< INTERFACE8* >( this )
-
-#define SFX_IMPL_INTERFACE_9( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9 ) \
- SFX_IMPL_INTERFACE_8( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8 ), \
- static_cast< INTERFACE9* >( this )
-
-#define SFX_IMPL_INTERFACE_10( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9, INTERFACE10 ) \
- SFX_IMPL_INTERFACE_9( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9 ), \
- static_cast< INTERFACE10* >( this )
-
-#define SFX_IMPL_INTERFACE_11( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9, INTERFACE10, INTERFACE11 ) \
- SFX_IMPL_INTERFACE_10( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9, INTERFACE10 ), \
- static_cast< INTERFACE11* >( this )
-
-#define SFX_IMPL_INTERFACE_12( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9, INTERFACE10, INTERFACE11, INTERFACE12 ) \
- SFX_IMPL_INTERFACE_11( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9, INTERFACE10, INTERFACE11 ), \
- static_cast< INTERFACE12* >( this )
-
-#define SFX_IMPL_INTERFACE_13( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9, INTERFACE10, INTERFACE11, INTERFACE12, INTERFACE13 ) \
- SFX_IMPL_INTERFACE_12( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9, INTERFACE10, INTERFACE11, INTERFACE12 ), \
- static_cast< INTERFACE13* >( this )
-/*_________________________________________________________________________________________________________________________*/
-
-// Follow macros can used directly :-)
-// implementation of XInterface with 0 additional interface for queryInterface()
-#define SFX_IMPL_XINTERFACE_0( IMPLCLASS, BASECLASS ) \
- SFX_IMPL_XINTERFACE_BASE( IMPLCLASS, BASECLASS, SFX_IMPL_INTERFACE_0 )
-
-// implementation of XInterface with 1 additional interface for queryInterface()
-#define SFX_IMPL_XINTERFACE_1( IMPLCLASS, BASECLASS, INTERFACE1 ) \
- SFX_IMPL_XINTERFACE_BASE( IMPLCLASS, BASECLASS, SFX_IMPL_INTERFACE_1( INTERFACE1 ) )
-
-// implementation of XInterface with 2 additional interfaces for queryInterface()
-#define SFX_IMPL_XINTERFACE_2( IMPLCLASS, BASECLASS, INTERFACE1, INTERFACE2 ) \
- SFX_IMPL_XINTERFACE_BASE( IMPLCLASS, BASECLASS, SFX_IMPL_INTERFACE_2( INTERFACE1, INTERFACE2 ) )
-
-// implementation of XInterface with 3 additional interfaces for queryInterface()
-#define SFX_IMPL_XINTERFACE_3( IMPLCLASS, BASECLASS, INTERFACE1, INTERFACE2, INTERFACE3 ) \
- SFX_IMPL_XINTERFACE_BASE( IMPLCLASS, BASECLASS, SFX_IMPL_INTERFACE_3( INTERFACE1, INTERFACE2, INTERFACE3 ) )
-
-// implementation of XInterface with 4 additional interfaces for queryInterface()
-#define SFX_IMPL_XINTERFACE_4( IMPLCLASS, BASECLASS, INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4 ) \
- SFX_IMPL_XINTERFACE_BASE( IMPLCLASS, BASECLASS, SFX_IMPL_INTERFACE_4( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4 ) )
-
-// implementation of XInterface with 5 additional interfaces for queryInterface()
-#define SFX_IMPL_XINTERFACE_5( IMPLCLASS, BASECLASS, INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5 ) \
- SFX_IMPL_XINTERFACE_BASE( IMPLCLASS, BASECLASS, SFX_IMPL_INTERFACE_5( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5 ) )
-
-// implementation of XInterface with 6 additional interfaces for queryInterface()
-#define SFX_IMPL_XINTERFACE_6( IMPLCLASS, BASECLASS, INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6 ) \
- SFX_IMPL_XINTERFACE_BASE( IMPLCLASS, BASECLASS, SFX_IMPL_INTERFACE_6( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6 ) )
-
-// implementation of XInterface with 7 additional interfaces for queryInterface()
-#define SFX_IMPL_XINTERFACE_7( IMPLCLASS, BASECLASS, INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7 ) \
- SFX_IMPL_XINTERFACE_BASE( IMPLCLASS, BASECLASS, SFX_IMPL_INTERFACE_7( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7 ) )
-
-// implementation of XInterface with 8 additional interfaces for queryInterface()
-#define SFX_IMPL_XINTERFACE_8( IMPLCLASS, BASECLASS, INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8 ) \
- SFX_IMPL_XINTERFACE_BASE( IMPLCLASS, BASECLASS, SFX_IMPL_INTERFACE_8( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8 ) )
-
-// implementation of XInterface with 9 additional interfaces for queryInterface()
-#define SFX_IMPL_XINTERFACE_9( IMPLCLASS, BASECLASS, INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9 ) \
- SFX_IMPL_XINTERFACE_BASE( IMPLCLASS, BASECLASS, SFX_IMPL_INTERFACE_9( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9 ) )
-
-// implementation of XInterface with 10 additional interfaces for queryInterface()
-#define SFX_IMPL_XINTERFACE_10( IMPLCLASS, BASECLASS, INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9, INTERFACE10 ) \
- SFX_IMPL_XINTERFACE_BASE( IMPLCLASS, BASECLASS, SFX_IMPL_INTERFACE_10( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9, INTERFACE10 ) )
-
-// implementation of XInterface with 11 additional interfaces for queryInterface()
-#define SFX_IMPL_XINTERFACE_11( IMPLCLASS, BASECLASS, INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9, INTERFACE10, INTERFACE11 ) \
- SFX_IMPL_XINTERFACE_BASE( IMPLCLASS, BASECLASS, SFX_IMPL_INTERFACE_11( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9, INTERFACE10, INTERFACE11 ) )
-
-// implementation of XInterface with 11 additional interfaces for queryInterface()
-#define SFX_IMPL_XINTERFACE_12( IMPLCLASS, BASECLASS, INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9, INTERFACE10, INTERFACE11, INTERFACE12 ) \
- SFX_IMPL_XINTERFACE_BASE( IMPLCLASS, BASECLASS, SFX_IMPL_INTERFACE_12( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9, INTERFACE10, INTERFACE11, INTERFACE12 ) )
-
-// implementation of XInterface with 11 additional interfaces for queryInterface()
-#define SFX_IMPL_XINTERFACE_13( IMPLCLASS, BASECLASS, INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9, INTERFACE10, INTERFACE11, INTERFACE12, INTERFACE13 ) \
- SFX_IMPL_XINTERFACE_BASE( IMPLCLASS, BASECLASS, SFX_IMPL_INTERFACE_13( INTERFACE1, INTERFACE2, INTERFACE3, INTERFACE4, INTERFACE5, INTERFACE6, INTERFACE7, INTERFACE8, INTERFACE9, INTERFACE10, INTERFACE11, INTERFACE12, INTERFACE13 ) )
-
-//************************************************************************************************************************
-// implementation of XTypeProvider::getTypes()
-// XTypeProvider::getImplementationId()
-//************************************************************************************************************************
-/*_________________________________________________________________________________________________________________________*/
-// DON'T USE FOLLOW MACROS DIRECTLY!!!
-#define SFX_IMPL_XTYPEPROVIDER_BASE( IMPLCLASS, IMPLTYPES ) \
- \
- css::uno::Sequence< sal_Int8 > SAL_CALL IMPLCLASS::getImplementationId() throw( css::uno::RuntimeException ) \
- { \
- /* Create one Id for all instances of this class. */ \
- /* Use ethernet address to do this! (sal_True) */ \
- /* Optimize this method */ \
- /* We initialize a static variable only one time. And we don't must use a mutex at every call! */ \
- /* For the first call; pID is NULL - for the second call pID is different from NULL! */ \
- static ::cppu::OImplementationId* pID = NULL ; \
- if ( pID == NULL ) \
- { \
- /* Ready for multithreading; get global mutex for first call of this method only! see before */ \
- ::osl::MutexGuard aGuard( ::osl::Mutex::getGlobalMutex() ); \
- /* Control these pointer again ... it can be, that another instance will be faster then these! */ \
- if ( pID == NULL ) \
- { \
- /* Create a new static ID ... */ \
- static ::cppu::OImplementationId aID( sal_False ); \
- /* ... and set his address to static pointer! */ \
- pID = &aID ; \
- } \
- } \
- return pID->getImplementationId(); \
- } \
- \
- css::uno::Sequence< css::uno::Type > SAL_CALL IMPLCLASS::getTypes() throw( css::uno::RuntimeException ) \
- { \
- /* Optimize this method ! */ \
- /* We initialize a static variable only one time. And we don't must use a mutex at every call! */ \
- /* For the first call; pTypeCollection is NULL - for the second call pTypeCollection is different from NULL!*/ \
- static ::cppu::OTypeCollection* pTypeCollection = NULL ; \
- if ( pTypeCollection == NULL ) \
- { \
- /* Ready for multithreading; get global mutex for first call of this method only! see before */ \
- ::osl::MutexGuard aGuard( ::osl::Mutex::getGlobalMutex() ); \
- /* Control these pointer again ... it can be, that another instance will be faster then these! */ \
- if ( pTypeCollection == NULL ) \
- { \
- /* Create a static typecollection ... */ \
- static ::cppu::OTypeCollection aTypeCollection( IMPLTYPES ); \
- /* ... and set his address to static pointer! */ \
- pTypeCollection = &aTypeCollection ; \
- } \
- } \
- return pTypeCollection->getTypes(); \
- }
-
-#define SFX_IMPL_TYPE_0 \
- ::getCppuType(( const css::uno::Reference< css::lang::XTypeProvider >*)NULL )
-
-#define SFX_IMPL_TYPE_1( TYPE1 ) \
- SFX_IMPL_TYPE_0, \
- ::getCppuType(( const css::uno::Reference< TYPE1 >*)NULL )
-
-#define SFX_IMPL_TYPE_2( TYPE1, TYPE2 ) \
- SFX_IMPL_TYPE_1( TYPE1 ), \
- ::getCppuType(( const css::uno::Reference< TYPE2 >*)NULL )
-
-#define SFX_IMPL_TYPE_3( TYPE1, TYPE2, TYPE3 ) \
- SFX_IMPL_TYPE_2( TYPE1, TYPE2 ), \
- ::getCppuType(( const css::uno::Reference< TYPE3 >*)NULL )
-
-#define SFX_IMPL_TYPE_4( TYPE1, TYPE2, TYPE3, TYPE4 ) \
- SFX_IMPL_TYPE_3( TYPE1, TYPE2, TYPE3 ), \
- ::getCppuType(( const css::uno::Reference< TYPE4 >*)NULL )
-
-#define SFX_IMPL_TYPE_5( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5 ) \
- SFX_IMPL_TYPE_4( TYPE1, TYPE2, TYPE3, TYPE4 ), \
- ::getCppuType(( const css::uno::Reference< TYPE5 >*)NULL )
-
-#define SFX_IMPL_TYPE_6( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6 ) \
- SFX_IMPL_TYPE_5( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5 ), \
- ::getCppuType(( const css::uno::Reference< TYPE6 >*)NULL )
-
-#define SFX_IMPL_TYPE_7( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7 ) \
- SFX_IMPL_TYPE_6( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6 ), \
- ::getCppuType(( const css::uno::Reference< TYPE7 >*)NULL )
-
-#define SFX_IMPL_TYPE_8( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8 ) \
- SFX_IMPL_TYPE_7( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7 ), \
- ::getCppuType(( const css::uno::Reference< TYPE8 >*)NULL )
-
-#define SFX_IMPL_TYPE_9( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9 ) \
- SFX_IMPL_TYPE_8( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8 ), \
- ::getCppuType(( const css::uno::Reference< TYPE9 >*)NULL )
-
-#define SFX_IMPL_TYPE_10( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9, TYPE10 ) \
- SFX_IMPL_TYPE_9( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9 ), \
- ::getCppuType(( const css::uno::Reference< TYPE10 >*)NULL )
-
-#define SFX_IMPL_TYPE_11( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9, TYPE10, TYPE11 ) \
- SFX_IMPL_TYPE_10( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9, TYPE10 ), \
- ::getCppuType(( const css::uno::Reference< TYPE11 >*)NULL )
-
-#define SFX_IMPL_TYPE_12( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9, TYPE10, TYPE11, TYPE12 ) \
- SFX_IMPL_TYPE_11( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9, TYPE10, TYPE11 ), \
- ::getCppuType(( const css::uno::Reference< TYPE12 >*)NULL )
-
-#define SFX_IMPL_TYPE_13( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9, TYPE10, TYPE11, TYPE12, TYPE13 ) \
- SFX_IMPL_TYPE_12( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9, TYPE10, TYPE11, TYPE12 ), \
- ::getCppuType(( const css::uno::Reference< TYPE13 >*)NULL )
-/*_________________________________________________________________________________________________________________________*/
-
-// FOLLOW MACROS CAN USED DIRECTLY :-)
-
-// implementation of XInterface with 1 additional interface for queryInterface()
-#define SFX_IMPL_XTYPEPROVIDER_0( IMPLCLASS ) \
- SFX_IMPL_XTYPEPROVIDER_BASE( IMPLCLASS, SFX_IMPL_TYPE_0 )
-
-// implementation of XInterface with 1 additional interface for queryInterface()
-#define SFX_IMPL_XTYPEPROVIDER_1( IMPLCLASS, TYPE1 ) \
- SFX_IMPL_XTYPEPROVIDER_BASE( IMPLCLASS, SFX_IMPL_TYPE_1( TYPE1 ) )
-
-// implementation of XInterface with 2 additional interfaces for queryInterface()
-#define SFX_IMPL_XTYPEPROVIDER_2( IMPLCLASS, TYPE1, TYPE2 ) \
- SFX_IMPL_XTYPEPROVIDER_BASE( IMPLCLASS, SFX_IMPL_TYPE_2( TYPE1, TYPE2 ) )
-
-// implementation of XInterface with 3 additional interfaces for queryInterface()
-#define SFX_IMPL_XTYPEPROVIDER_3( IMPLCLASS, TYPE1, TYPE2, TYPE3 ) \
- SFX_IMPL_XTYPEPROVIDER_BASE( IMPLCLASS, SFX_IMPL_TYPE_3( TYPE1, TYPE2, TYPE3 ) )
-
-// implementation of XInterface with 4 additional interfaces for queryInterface()
-#define SFX_IMPL_XTYPEPROVIDER_4( IMPLCLASS, TYPE1, TYPE2, TYPE3, TYPE4 ) \
- SFX_IMPL_XTYPEPROVIDER_BASE( IMPLCLASS, SFX_IMPL_TYPE_4( TYPE1, TYPE2, TYPE3, TYPE4 ) )
-
-// implementation of XInterface with 5 additional interfaces for queryInterface()
-#define SFX_IMPL_XTYPEPROVIDER_5( IMPLCLASS, TYPE1, TYPE2, TYPE3, TYPE4, TYPE5 ) \
- SFX_IMPL_XTYPEPROVIDER_BASE( IMPLCLASS, SFX_IMPL_TYPE_5( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5 ) )
-
-// implementation of XInterface with 6 additional interfaces for queryInterface()
-#define SFX_IMPL_XTYPEPROVIDER_6( IMPLCLASS, TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6 ) \
- SFX_IMPL_XTYPEPROVIDER_BASE( IMPLCLASS, SFX_IMPL_TYPE_6( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6 ) )
-
-// implementation of XInterface with 7 additional interfaces for queryInterface()
-#define SFX_IMPL_XTYPEPROVIDER_7( IMPLCLASS, TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7 ) \
- SFX_IMPL_XTYPEPROVIDER_BASE( IMPLCLASS, SFX_IMPL_TYPE_7( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7 ) )
-
-// implementation of XInterface with 8 additional interfaces for queryInterface()
-#define SFX_IMPL_XTYPEPROVIDER_8( IMPLCLASS, TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8 ) \
- SFX_IMPL_XTYPEPROVIDER_BASE( IMPLCLASS, SFX_IMPL_TYPE_8( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8 ) )
-
-// implementation of XInterface with 9 additional interfaces for queryInterface()
-#define SFX_IMPL_XTYPEPROVIDER_9( IMPLCLASS, TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9 ) \
- SFX_IMPL_XTYPEPROVIDER_BASE( IMPLCLASS, SFX_IMPL_TYPE_9( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9 ) )
-
-// implementation of XInterface with 10 additional interfaces for queryInterface()
-#define SFX_IMPL_XTYPEPROVIDER_10( IMPLCLASS, TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9, TYPE10 ) \
- SFX_IMPL_XTYPEPROVIDER_BASE( IMPLCLASS, SFX_IMPL_TYPE_10( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9, TYPE10 ) )
-
-// implementation of XInterface with 11 additional interfaces for queryInterface()
-#define SFX_IMPL_XTYPEPROVIDER_11( IMPLCLASS, TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9, TYPE10, TYPE11 ) \
- SFX_IMPL_XTYPEPROVIDER_BASE( IMPLCLASS, SFX_IMPL_TYPE_11( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9, TYPE10, TYPE11 ) )
-
-// implementation of XInterface with 11 additional interfaces for queryInterface()
-#define SFX_IMPL_XTYPEPROVIDER_12( IMPLCLASS, TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9, TYPE10, TYPE11, TYPE12 ) \
- SFX_IMPL_XTYPEPROVIDER_BASE( IMPLCLASS, SFX_IMPL_TYPE_12( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9, TYPE10, TYPE11, TYPE12 ) )
-
-// implementation of XInterface with 11 additional interfaces for queryInterface()
-#define SFX_IMPL_XTYPEPROVIDER_13( IMPLCLASS, TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9, TYPE10, TYPE11, TYPE12, TYPE13 ) \
- SFX_IMPL_XTYPEPROVIDER_BASE( IMPLCLASS, SFX_IMPL_TYPE_13( TYPE1, TYPE2, TYPE3, TYPE4, TYPE5, TYPE6, TYPE7, TYPE8, TYPE9, TYPE10, TYPE11, TYPE12, TYPE13 ) )
-
//************************************************************************************************************************
// implementation of XServiceInfo::getImplementationName()
// XServiceInfo::supportsService()
diff --git a/include/sfx2/unoctitm.hxx b/include/sfx2/unoctitm.hxx
index d1d41b8ae689..591f7bba0054 100644
--- a/include/sfx2/unoctitm.hxx
+++ b/include/sfx2/unoctitm.hxx
@@ -33,10 +33,9 @@
#include <com/sun/star/util/XURLTransformer.hpp>
#include <com/sun/star/lang/XUnoTunnel.hpp>
#include <com/sun/star/frame/XFrame.hpp>
-#include <cppuhelper/weak.hxx>
+#include <cppuhelper/implbase1.hxx>
#include <cppuhelper/interfacecontainer.hxx>
-#include <sfx2/sfxuno.hxx>
#include <sfx2/ctrlitem.hxx>
#include <osl/mutex.hxx>
@@ -44,9 +43,7 @@ class SfxBindings;
class SfxFrame;
class SfxDispatcher;
-class SfxUnoControllerItem : public ::com::sun::star::frame::XStatusListener ,
- public ::com::sun::star::lang::XTypeProvider ,
- public ::cppu::OWeakObject
+class SfxUnoControllerItem : public ::cppu::WeakImplHelper1< css::frame::XStatusListener >
{
::com::sun::star::util::URL aCommand;
::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatch > xDispatch;
@@ -56,8 +53,6 @@ class SfxUnoControllerItem : public ::com::sun::star::frame::XStatusListener
::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatch > TryGetDispatch( SfxFrame* pFrame );
public:
- SFX_DECL_XINTERFACE_XTYPEPROVIDER
-
SfxUnoControllerItem( SfxControllerItem*, SfxBindings&, const String& );
~SfxUnoControllerItem();
@@ -84,15 +79,12 @@ struct SfxStatusDispatcher_Impl_hashType
typedef ::cppu::OMultiTypeInterfaceContainerHelperVar< OUString, SfxStatusDispatcher_Impl_hashType, std::equal_to< OUString > > SfxStatusDispatcher_Impl_ListenerContainer ;
-class SfxStatusDispatcher : public ::com::sun::star::frame::XNotifyingDispatch,
- public ::com::sun::star::lang::XTypeProvider,
- public ::cppu::OWeakObject
+class SfxStatusDispatcher : public ::cppu::WeakImplHelper1< css::frame::XNotifyingDispatch >
{
::osl::Mutex aMutex;
SfxStatusDispatcher_Impl_ListenerContainer aListeners;
public:
- SFX_DECL_XINTERFACE_XTYPEPROVIDER
SfxStatusDispatcher();
@@ -112,8 +104,7 @@ public:
class SfxSlotServer;
class SfxDispatchController_Impl;
-class SfxOfficeDispatch : public SfxStatusDispatcher
- , public ::com::sun::star::lang::XUnoTunnel
+class SfxOfficeDispatch : public ::cppu::ImplInheritanceHelper1< SfxStatusDispatcher, css::lang::XUnoTunnel >
{
friend class SfxDispatchController_Impl;
SfxDispatchController_Impl* pControllerItem;
@@ -127,8 +118,6 @@ public:
const ::com::sun::star::util::URL& rURL );
~SfxOfficeDispatch();
- SFX_DECL_XINTERFACE_XTYPEPROVIDER
-
virtual void SAL_CALL dispatchWithNotification( const ::com::sun::star::util::URL& aURL,
const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aArgs,
const ::com::sun::star::uno::Reference< ::com::sun::star::frame::XDispatchResultListener >& rListener )