diff options
author | Kohei Yoshida <kohei.yoshida@suse.com> | 2011-08-15 23:56:37 -0400 |
---|---|---|
committer | Kohei Yoshida <kohei.yoshida@suse.com> | 2011-08-16 21:22:44 -0400 |
commit | 11207ae93191fb966676423e6d377c8292a8cf0b (patch) | |
tree | 52c6b04d103ba2f31539dbae209a0a7acefdc236 | |
parent | Changing the vtable symbol from XPropertySet to XPropertySet2. (diff) | |
download | core-11207ae93191fb966676423e6d377c8292a8cf0b.tar.gz core-11207ae93191fb966676423e6d377c8292a8cf0b.zip |
Make XPropertSet2 not a child interface of XPropertySet.
This is to preserve ABI backward compatibility with cppu::OPropertySetHelper.
-rw-r--r-- | cppuhelper/inc/cppuhelper/propshlp.hxx | 2 | ||||
-rw-r--r-- | cppuhelper/source/msvc_win32_intel.map | 3 | ||||
-rw-r--r-- | udkapi/com/sun/star/beans/XPropertySet2.idl | 12 |
3 files changed, 15 insertions, 2 deletions
diff --git a/cppuhelper/inc/cppuhelper/propshlp.hxx b/cppuhelper/inc/cppuhelper/propshlp.hxx index 779eda28fced..335fc6003628 100644 --- a/cppuhelper/inc/cppuhelper/propshlp.hxx +++ b/cppuhelper/inc/cppuhelper/propshlp.hxx @@ -33,6 +33,7 @@ #include <cppuhelper/interfacecontainer.hxx> +#include <com/sun/star/beans/XPropertySet.hpp> #include <com/sun/star/beans/XPropertySet2.hpp> #include <com/sun/star/beans/XMultiPropertySet.hpp> #include <com/sun/star/beans/XFastPropertySet.hpp> @@ -350,6 +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::XPropertySet2 { public: diff --git a/cppuhelper/source/msvc_win32_intel.map b/cppuhelper/source/msvc_win32_intel.map index 39a1469e11a9..1d397bfec585 100644 --- a/cppuhelper/source/msvc_win32_intel.map +++ b/cppuhelper/source/msvc_win32_intel.map @@ -64,7 +64,7 @@ GetVersionInfo; ??_7OPropertyArrayHelper@cppu@@6B@; ??_7OPropertySetHelper@cppu@@6BXFastPropertySet@beans@star@sun@com@@@; ??_7OPropertySetHelper@cppu@@6BXMultiPropertySet@beans@star@sun@com@@@; -??_7OPropertySetHelper@cppu@@6BXPropertySet2@beans@star@sun@com@@@; +??_7OPropertySetHelper@cppu@@6BXPropertySet@beans@star@sun@com@@@; ??_GIPropertyArrayHelper@cppu@@UAEPAXI@Z; ??_GOPropertyArrayHelper@cppu@@UAEPAXI@Z; ?addPropertiesChangeListener@OPropertySetHelper@cppu@@UAAXABV?$Sequence@VOUString@rtl@@@uno@star@sun@com@@ABV?$Reference@VXPropertiesChangeListener@beans@star@sun@com@@@4567@@Z; @@ -288,4 +288,5 @@ UDK_3.7 { # OOo 3.4 UDK_3.8 { # LibO 3.5 global: ?enableChangeListenerNotification@OPropertySetHelper@cppu@@UAAXE@Z; + ??_7OPropertySetHelper@cppu@@6BXPropertySet2@beans@star@sun@com@@@; } UDK_3.7; diff --git a/udkapi/com/sun/star/beans/XPropertySet2.idl b/udkapi/com/sun/star/beans/XPropertySet2.idl index e4868bfac808..61f3dfe1c250 100644 --- a/udkapi/com/sun/star/beans/XPropertySet2.idl +++ b/udkapi/com/sun/star/beans/XPropertySet2.idl @@ -6,8 +6,18 @@ module com { module sun { module star { module beans { -interface XPropertySet2: com::sun::star::beans::XPropertySet +/** + * This interface should be conceptually derived from XPropertySet but isn't + * due to ABI compatibility on Windows; cppu::OPrpertySetHelper exports + * XPropertySet's vtable symbol in the UDK_3_0_0 section which must stay + * there. Once we hit LibreOffice 4 we should clean this mess up. + */ +interface XPropertySet2: com::sun::star::uno::XInterface { + /** + * Turn on or off notifying change listeners on property value change. It + * notifies registered change listeners by default. + */ void enableChangeListenerNotification( [in] boolean bEnable ); }; |