diff options
author | Lionel Elie Mamane <lionel@mamane.lu> | 2011-09-02 14:57:30 +0200 |
---|---|---|
committer | Lionel Elie Mamane <lionel@mamane.lu> | 2011-09-07 11:17:55 +0200 |
commit | 5c64fd7ce04ff82edb2989d862bd660c9b9492a5 (patch) | |
tree | 3b457843f3f2068b91bfa2e8a35e8c1de23a93ba /cppuhelper/inc | |
parent | 20a3baeb5da5bbb77eb2bf46d6714ad38dc4f19b (diff) |
Restore ABI compatibility with LO 3.4 and earlier
Factor out ABI-breaking changes to OPropertySetHelper into a derived
class OPropertySetHelper2.
Only gcc3.map is up-to-date.
Diffstat (limited to 'cppuhelper/inc')
-rw-r--r-- | cppuhelper/inc/cppuhelper/propshlp.hxx | 67 |
1 files changed, 50 insertions, 17 deletions
diff --git a/cppuhelper/inc/cppuhelper/propshlp.hxx b/cppuhelper/inc/cppuhelper/propshlp.hxx index 670ce038171b..f8237daf55b7 100644 --- a/cppuhelper/inc/cppuhelper/propshlp.hxx +++ b/cppuhelper/inc/cppuhelper/propshlp.hxx @@ -351,8 +351,7 @@ public: */ class OPropertySetHelper : public ::com::sun::star::beans::XMultiPropertySet, public ::com::sun::star::beans::XFastPropertySet, - public ::com::sun::star::beans::XPropertySet, - public ::com::sun::star::beans::XPropertySetOption + public ::com::sun::star::beans::XPropertySet { public: /** @@ -372,11 +371,12 @@ public: of this object. Stored in the variable rBHelper. @param bIgnoreRuntimeExceptionsWhileFiring - indicates whether occuring RuntimeExceptions will be - ignored when firing notifications (vetoableChange((), - propertyChange()) to listeners. + indicates whether occurring RuntimeExceptions will be + ignored when firing notifications + (vetoableChange(), propertyChange()) + to listeners. PropertyVetoExceptions may still be thrown. - This flag is useful in a inter-process scenarios when + This flag is useful in an inter-process scenario when remote bridges may break down (firing DisposedExceptions). */ @@ -395,11 +395,12 @@ public: additional event notifier @param bIgnoreRuntimeExceptionsWhileFiring - indicates whether occuring RuntimeExceptions will be - ignored when firing notifications (vetoableChange((), - propertyChange()) to listeners. + indicates whether occurring RuntimeExceptions will be + ignored when firing notifications + (vetoableChange(), propertyChange()) + to listeners. PropertyVetoExceptions may still be thrown. - This flag is useful in a inter-process scenarios when + This flag is useful in an inter-process scenario when remote bridges may break down (firing DisposedExceptions). */ @@ -412,7 +413,7 @@ public: Only returns a reference to XMultiPropertySet, XFastPropertySet, XPropertySet and XEventListener. */ - ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type & rType ) + virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type & rType ) throw (::com::sun::star::uno::RuntimeException); /** eases implementing XTypeProvider::getTypes, returns the types of XMultiPropertySet, XFastPropertySet, XPropertySet @@ -506,10 +507,6 @@ public: const ::com::sun::star::uno::Reference< ::com::sun::star::beans::XPropertiesChangeListener > & Listener ) throw(::com::sun::star::uno::RuntimeException); - // XPropertySetOption - virtual void SAL_CALL enableChangeListenerNotification( sal_Bool bEnable ) - throw(::com::sun::star::uno::RuntimeException); - /** The property sequence is created in the call. The interface isn't used after the call. */ @@ -637,8 +634,6 @@ protected: */ OMultiTypeInterfaceContainerHelperInt32 aVetoableLC; - bool m_bFireEvent; - class Impl; /** reserved for future use. finally, the future has arrived... @@ -676,6 +671,44 @@ public: #pragma warning(pop) #endif +/** + OPropertySetHelper plus XPropertySetOption + */ +class OPropertySetHelper2 : public OPropertySetHelper, + public ::com::sun::star::beans::XPropertySetOption +{ +public: + /** Constructor. + + See OPropertySetHelper constructors documentation + */ + explicit OPropertySetHelper2( + OBroadcastHelper & rBHelper, + IEventNotificationHook *i_pFireEvents = NULL, + bool bIgnoreRuntimeExceptionsWhileFiring = false); + + // XInterface + virtual ::com::sun::star::uno::Any SAL_CALL queryInterface( const ::com::sun::star::uno::Type & rType ) + throw (::com::sun::star::uno::RuntimeException); + + // XPropertySetOption + virtual void SAL_CALL enableChangeListenerNotification( sal_Bool bEnable ) + throw(::com::sun::star::uno::RuntimeException); + + + +private: + OPropertySetHelper2( const OPropertySetHelper & ) SAL_THROW( () ); + OPropertySetHelper2 & operator = ( const OPropertySetHelper & ) SAL_THROW( () ); + +public: +// Suppress warning about virtual functions but non-virtual destructor: + /** + You must call disposing before destruction. + */ + virtual ~OPropertySetHelper2() SAL_THROW( () ); +}; + } // end namespace cppuhelper #endif // |