[Libreoffice] cppu::OPropertySetHelper ABI backwards compatibility
Stephan Bergmann
stephan.bergmann.secondary at googlemail.com
Tue Aug 23 10:37:06 PDT 2011
On Aug 23, 2011, at 5:00 PM, Lionel Elie Mamane wrote:
> On Mon, Aug 22, 2011 at 08:35:11PM -0400, Kohei Yoshida wrote:
>> 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 becomes problematic we probably *could* move this
>> boolean into OPropertySetHelper::Impl* m_pReserved. That member is a
>> protected member, so the derived class should have access to it.
>
> The problem of m_bFireEvent is solved, but I don't know what to do
> with queryInterface; since it is not virtual, I cannot override it in
> OPropertySetHelper2. The best I could come up with is something like (in
> OPropertySetHelper):
queryInterface *is* virtual (inherited from com::sun::star::uno::XInterface), standard implementation in OPropertySetHelper2 would be something like
Any OPropertySetHelper2::queryInterface(Type const & type) {
Any a(cppu::queryInterface(type, static_cast< XPropertySetOption * >(this)));
return a.hasValue() ? a : OPropertySetHelper::queryInterface(type);
}
-Stephan
More information about the LibreOffice
mailing list