incubator-ooo-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From bugzi...@apache.org
Subject [Bug 121161] c.s.s.awt.XAnimatedImages attributes are in fact properties
Date Thu, 04 Oct 2012 19:36:23 GMT
https://issues.apache.org/ooo/show_bug.cgi?id=121161

Ariel Constenla-Haile <arielch@apache.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |CONFIRMED
                 CC|                            |arielch@apache.org
     Ever confirmed|0                           |1

--- Comment #1 from Ariel Constenla-Haile <arielch@apache.org> ---
On IDL they are defined as interface attributes:

http://svn.apache.org/viewvc/incubator/ooo/trunk/main/offapi/com/sun/star/awt/XAnimatedImages.idl?revision=1244492&view=markup#l53

This works on the C++ bridge: generated header file XAnimatedImages.idl


class SAL_NO_VTABLE XAnimatedImages : public
::com::sun::star::container::XContainer
{
public:

    // Attributes
    virtual ::sal_Int32 SAL_CALL getStepTime() throw
(::com::sun::star::uno::RuntimeException) = 0;
    virtual void SAL_CALL setStepTime( ::sal_Int32 _steptime ) throw
(::com::sun::star::uno::RuntimeException) = 0;
    virtual ::sal_Bool SAL_CALL getAutoRepeat() throw
(::com::sun::star::uno::RuntimeException) = 0;
    virtual void SAL_CALL setAutoRepeat( ::sal_Bool _autorepeat ) throw
(::com::sun::star::uno::RuntimeException) = 0;
    virtual ::sal_Int16 SAL_CALL getScaleMode() throw
(::com::sun::star::uno::RuntimeException) = 0;
    virtual void SAL_CALL setScaleMode( ::sal_Int16 _scalemode ) throw
(::com::sun::star::lang::IllegalArgumentException,
::com::sun::star::uno::RuntimeException) = 0;

    // Methods
    virtual ::sal_Int32 SAL_CALL getImageSetCount(  ) throw
(::com::sun::star::uno::RuntimeException) = 0;
    virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL
getImageSet( ::sal_Int32 i_index ) throw
(::com::sun::star::lang::IndexOutOfBoundsException,
::com::sun::star::uno::RuntimeException) = 0;
    virtual void SAL_CALL insertImageSet( ::sal_Int32 i_index, const
::com::sun::star::uno::Sequence< ::rtl::OUString >& i_imageURLs ) throw
(::com::sun::star::lang::IndexOutOfBoundsException,
::com::sun::star::uno::RuntimeException) = 0;
    virtual void SAL_CALL replaceImageSet( ::sal_Int32 i_index, const
::com::sun::star::uno::Sequence< ::rtl::OUString >& i_imageURLs ) throw
(::com::sun::star::lang::IndexOutOfBoundsException,
::com::sun::star::uno::RuntimeException) = 0;
    virtual void SAL_CALL removeImageSet( ::sal_Int32 i_index ) throw
(::com::sun::star::lang::IndexOutOfBoundsException,
::com::sun::star::uno::RuntimeException) = 0;

    static inline ::com::sun::star::uno::Type const & SAL_CALL static_type(void
* = 0);
};


Interface attributes are mapped to getter (and setter, if attribute is not
readonly) member functions in C++.
This should be documented somewhere, but I couldn't find it, nor here at least:
http://wiki.openoffice.org/wiki/Documentation/DevGuide/ProUNO/C%2B%2B/Mapping_of_Interface_Types

So, the IDL side is fine.
The bug is in the implementation of the control model:
http://svn.apache.org/viewvc/incubator/ooo/trunk/main/toolkit/source/controls/animatedimages.cxx?revision=1244544&view=markup#l239

AnimatedImagesControlModel::AnimatedImagesControlModel registers these three
attributes as properties:

        ImplRegisterProperty( BASEPROPERTY_AUTO_REPEAT );
    ImplRegisterProperty( BASEPROPERTY_IMAGE_SCALE_MODE );
        ImplRegisterProperty( BASEPROPERTY_STEP_TIME );

-- 
You are receiving this mail because:
You are the assignee for the bug.

Mime
View raw message