LibreOffice
LibreOffice 24.2 SDK API Reference
Public Member Functions | List of all members
XAnimatedSprite Interface Reference

This interface can be used to control an animated sprite object. More...

import"XAnimatedSprite.idl";

Inheritance diagram for XAnimatedSprite:
XSprite XInterface

Public Member Functions

void startAnimation ([in] double nSpeed)
 Start animation sequence of this sprite. More...
 
void stopAnimation ()
 Stop the animation sequence. More...
 
void resetAnimation ()
 Reset the animation sequence to start with the first frame. More...
 
void updateAnimation ()
 Issue an additional render call to this sprite's animation. More...
 
void setViewState ([in] ViewState aViewState) raises (com::sun::star::lang::IllegalArgumentException)
 Changes the view state in place for this sprite's animation. More...
 
void setAll ([in] ::com::sun::star::geometry::RealPoint2D aNewPos, [in] ViewState aViewState, [in] RenderState aRenderState, [in] double nAlpha, [in] boolean bUpdateAnimation) raises (com::sun::star::lang::IllegalArgumentException)
 Changes all of the sprite's attributes at one atomic instance. More...
 
- Public Member Functions inherited from XSprite
void setAlpha ([in] double nAlpha) raises (com::sun::star::lang::IllegalArgumentException)
 Set overall transparency of the sprite. More...
 
void move ([in] ::com::sun::star::geometry::RealPoint2D aNewPos, [in] ViewState aViewState, [in] RenderState aRenderState) raises (com::sun::star::lang::IllegalArgumentException)
 Move sprite to the specified position. More...
 
void transform ([in] com::sun::star::geometry::AffineMatrix2D aTransformation) raises (com::sun::star::lang::IllegalArgumentException)
 Apply a local transformation to the sprite. More...
 
void clip ([in] XPolyPolygon2D aClip)
 Apply a clipping to the shape output. More...
 
void setPriority ([in] double nPriority)
 Set sprite priority. More...
 
void show ()
 Make the sprite visible. More...
 
void hide ()
 Make the sprite invisible. More...
 
- Public Member Functions inherited from XInterface
any queryInterface ([in] type aType)
 queries for a new interface to an existing UNO object. More...
 
void acquire ()
 increases the reference counter by one. More...
 
void release ()
 decreases the reference counter by one. More...
 

Detailed Description

This interface can be used to control an animated sprite object.

This interface can be used to control an animated sprite object on an XSpriteCanvas. Sprites are moving, animated objects.

Since
OOo 2.0

Member Function Documentation

◆ resetAnimation()

void resetAnimation ( )

Reset the animation sequence to start with the first frame.

If the animation is currently running, the next frame that is drawn after this method has finished, will be the first one. Please note that if an animation is not started, the associated XSpriteCanvas does not update changed sprites automatically.

◆ setAll()

void setAll ( [in] ::com::sun::star::geometry::RealPoint2D  aNewPos,
[in] ViewState  aViewState,
[in] RenderState  aRenderState,
[in] double  nAlpha,
[in] boolean  bUpdateAnimation 
)
raises (com::sun::star::lang::IllegalArgumentException
)

Changes all of the sprite's attributes at one atomic instance.

This is useful at times where one does not want multiple redraws for every state change.

Please note that if an animation is not started, the associated XSpriteCanvas does not update changed sprites automatically, but has to be told to do so via XSpriteCanvas::updateScreen().

Parameters
aNewPosNew left,top output position of the sprite. This position gets transformed by the view and render state.
aViewStateNew view state of the sprite, and part of the transformation that is applied to aNewPos. The view transformation matrix must not be singular.
aRenderStateNew render state of the sprite, and part of the transformation that is applied to aNewPos. The render transformation matrix must not be singular.
nAlphaNew alpha value of the sprite. This value must be within the [0,1] range.
bUpdateAnimationWhether this method should implicitly call XSpriteCanvas::updateAnimation() or not.
Exceptions
com::sun::star::lang::IllegalArgumentExceptionif one of the passed parameters does not lie in the specified, permissible range.

◆ setViewState()

void setViewState ( [in] ViewState  aViewState)
raises (com::sun::star::lang::IllegalArgumentException
)

Changes the view state in place for this sprite's animation.

The state given here is used when calling the XAnimation::render() method, or when drawing the sprite's bitmaps, respectively. There's no need to call XSpriteCanvas::updateAnimation() after this method, as it automatically rerenders, if necessary. Please note that if an animation is not started, the associated XSpriteCanvas does not update changed sprites automatically, but has to be told to do so via XSpriteCanvas::updateScreen().

Parameters
aViewStateThe state given here is used when calling the XAnimation::render() method, or when drawing the sprite's bitmaps, respectively.
Exceptions
com::sun::star::lang::IllegalArgumentExceptionif the view transformation matrix is singular.

◆ startAnimation()

void startAnimation ( [in] double  nSpeed)

Start animation sequence of this sprite.

The speed of the animation is given in cycles per second (where a cycle is defined as one full animation run, i.e. the full [0,1] range of the XAnimation::render()'s t parameter, or a full sequence of sprite bitmaps drawn). Once an animation is running, the associated XSpriteCanvas handles screen updates automatically. That means, changes to position or alpha are reflected on screen automatically. Please note further that sprite visibility and animation are unrelated, i.e. a hidden sprite can have a running animation, which then displays in the middle of the animation sequence, when a show() is called later on.

Parameters
nSpeedThe speed of the animation in cycles per second (where a cycle is defined as one full animation run, i.e. the full [0,1] range of the XAnimation::render()'s t parameter, or a full sequence of sprite bitmaps drawn).

◆ stopAnimation()

void stopAnimation ( )

Stop the animation sequence.

A subsequent XAnimatedSprite::startAnimation() will commence the sequence at the point where it was stopped with here. Once an animation is stopped, the associated XSpriteCanvas does not update changed sprites anymore.

◆ updateAnimation()

void updateAnimation ( )

Issue an additional render call to this sprite's animation.

This method has no effect when called for a bitmap-sequence sprite. Please note that if an animation is not started, the associated XSpriteCanvas does not update changed sprites automatically, but has to be told to do so via XSpriteCanvas::updateScreen().


The documentation for this interface was generated from the following file: