Re: [Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility

2011-08-23 Thread Lionel Elie Mamane
On Tue, Aug 23, 2011 at 07:48:19AM +0200, Lionel Elie Mamane wrote: On Mon, Aug 22, 2011 at 07:06:59PM -0400, Kohei Yoshida wrote: BTW, how do you plan to use that m_bFireEvent data member to decide to skip or fire events in OPropertySetHelper::fire() ? The method that needs to be influenced

Re: [Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility

2011-08-23 Thread Eike Rathke
Hi Kohei, On Monday, 2011-08-22 18:46:22 -0400, Kohei Yoshida wrote: But we still need to modify the original base class to have the additional boolean member (m_bFireEvent) in order for the fire() method to see that member and use it in that method. I suppose there is no way around it (?)

Re: [Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility

2011-08-23 Thread Kohei Yoshida
On Tue, 2011-08-23 at 17:00 +0200, Lionel Elie Mamane wrote: Any better idea? I'm still holding on to my earlier evil idea. To me making a duplicate is starting to feel like lesser of an evil. Kohei -- Kohei Yoshida, LibreOffice hacker, Calc kohei.yosh...@suse.com

Re: [Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility

2011-08-23 Thread Kohei Yoshida
On Tue, 2011-08-23 at 17:09 +0200, Lionel Elie Mamane wrote: On Mon, Aug 22, 2011 at 11:53:59PM +0200, Eike Rathke wrote: Maybe due to some overzealous introduction of such helper implementations into the UDK. Sure, it eases development of applications, but at the costs we're facing now.

Re: [Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility

2011-08-23 Thread Kohei Yoshida
On Tue, 2011-08-23 at 11:11 -0400, Kohei Yoshida wrote: On Tue, 2011-08-23 at 17:00 +0200, Lionel Elie Mamane wrote: Any better idea? I'm still holding on to my earlier evil idea. To me making a duplicate is starting to feel like lesser of an evil. Anyway, don't listen to my

Re: [Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility

2011-08-23 Thread Stephan Bergmann
On Aug 23, 2011, at 5:16 PM, Kohei Yoshida wrote: On Tue, 2011-08-23 at 17:09 +0200, Lionel Elie Mamane wrote: On Mon, Aug 22, 2011 at 11:53:59PM +0200, Eike Rathke wrote: Maybe due to some overzealous introduction of such helper implementations into the UDK. Sure, it eases development of

Re: [Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility

2011-08-23 Thread Stephan Bergmann
On Aug 23, 2011, at 5:09 PM, Lionel Elie Mamane wrote: On Mon, Aug 22, 2011 at 11:53:59PM +0200, Eike Rathke wrote: On Monday, 2011-08-22 15:30:04 -0400, Kohei Yoshida wrote: What this tells me is that, we can't change OPropertySetHelper implementation, at least not in a way that changes its

Re: [Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility

2011-08-22 Thread Lionel Elie Mamane
On Sun, Aug 21, 2011 at 12:08:23PM +0200, Lionel Elie Mamane wrote: On Sun, Aug 21, 2011 at 01:54:17AM +0200, Lionel Elie Mamane wrote: 11207ae93191fb966676423e6d377c8292a8cf0b Make XPropertSet2 not a child interface of XPropertySet. This is to preserve ABI backward compatibility

Re: [Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility

2011-08-22 Thread Eike Rathke
Hi Lionel, On Sunday, 2011-08-21 01:54:17 +0200, Lionel Elie Mamane wrote: From the second (later) commit log message, you intended to preserve ABI, but I get the impressions ABI backwards compatibility is still broken in a different way by the addition of virtual void SAL_CALL

Re: [Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility

2011-08-22 Thread Kohei Yoshida
On Mon, 2011-08-22 at 20:52 +0200, Eike Rathke wrote: This is why API marked as published shall not be changed after a release and you see all the XName2 derived from XName and so on. Sure. But we are talking about the concrete implementation of the API, not the API itself. So, in that

Re: [Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility

2011-08-22 Thread Eike Rathke
Hi Kohei, On Monday, 2011-08-22 15:30:04 -0400, Kohei Yoshida wrote: On Mon, 2011-08-22 at 20:52 +0200, Eike Rathke wrote: This is why API marked as published shall not be changed after a release and you see all the XName2 derived from XName and so on. Sure. But we are talking about

Re: [Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility

2011-08-22 Thread Kohei Yoshida
On Mon, 2011-08-22 at 23:53 +0200, Eike Rathke wrote: There may be a way out of it: _append_ the new virtual function after all existing. This works only though if new code using it is not mixed with old implementation. Old code using the new implementation shouldn't see a problem as it

Re: [Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility

2011-08-22 Thread Kohei Yoshida
Hi Lionel, On Mon, 2011-08-22 at 18:18 +0200, Lionel Elie Mamane wrote: class OPropertySetHelperFireEventOption : public OPropertySetHelper, public ::com::sun::star::beans::XPropertySetOptions { bool m_bFireEvent; public: (...) virtual void SAL_CALL

Re: [Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility

2011-08-22 Thread Kohei Yoshida
On Mon, 2011-08-22 at 19:06 -0400, Kohei Yoshida wrote: BTW, how do you plan to use that m_bFireEvent data member to decide to skip or fire events in OPropertySetHelper::fire() ? The method that needs to be influenced by that boolean is still in the OPropertySetHelper. Actually, if this

Re: [Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility

2011-08-22 Thread Lionel Elie Mamane
On Mon, Aug 22, 2011 at 07:06:59PM -0400, Kohei Yoshida wrote: On Mon, 2011-08-22 at 18:18 +0200, Lionel Elie Mamane wrote: class OPropertySetHelperFireEventOption : public OPropertySetHelper, public ::com::sun::star::beans::XPropertySetOptions {

Re: [Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility

2011-08-21 Thread Lionel Elie Mamane
On Sun, Aug 21, 2011 at 01:54:17AM +0200, Lionel Elie Mamane wrote: 11207ae93191fb966676423e6d377c8292a8cf0b Make XPropertSet2 not a child interface of XPropertySet. This is to preserve ABI backward compatibility with cppu::OPropertySetHelper.