LibreOffice Module slideshow (master) 1
Public Types | Public Member Functions | List of all members
slideshow::internal::AnimationNode Class Referenceabstract

This interface is used to mirror every XAnimateNode object in the presentation core. More...

#include <animationnode.hxx>

Inheritance diagram for slideshow::internal::AnimationNode:
[legend]
Collaboration diagram for slideshow::internal::AnimationNode:
[legend]

Public Types

enum  NodeState {
  INVALID = 0 ,
  UNRESOLVED = 1 ,
  RESOLVED = 2 ,
  ACTIVE = 4 ,
  FROZEN = 8 ,
  ENDED = 16
}
 The current state of this AnimationNode. More...
 

Public Member Functions

virtual css::uno::Reference< css::animations::XAnimationNode > getXAnimationNode () const =0
 Query the corresponding XAnimationNode. More...
 
virtual bool init ()=0
 Init this node. More...
 
virtual bool resolve ()=0
 Resolve node start time. More...
 
virtual void activate ()=0
 Immediately start this node. More...
 
virtual void deactivate ()=0
 Immediately stop this node. More...
 
virtual void end ()=0
 End the animation on this node. More...
 
virtual NodeState getState () const =0
 Query node state. More...
 
virtual bool registerDeactivatingListener (const AnimationNodeSharedPtr &rNotifee)=0
 Register a deactivating listener. More...
 
virtual void notifyDeactivating (const AnimationNodeSharedPtr &rNotifier)=0
 Called to notify another AnimationNode's deactivation. More...
 
virtual void removeEffect ()=0
 Called by the container to remove the animation effect to make the painted shape correct if it restart because of repeat or rewind ( fill mode is AnimationFill::REMOVE ) to start state. More...
 
virtual bool hasPendingAnimation () const =0
 Query node whether it has an animation pending. More...
 
- Public Member Functions inherited from slideshow::internal::Disposable
virtual ~Disposable ()
 
virtual void dispose ()=0
 Dispose all object references. More...
 

Detailed Description

This interface is used to mirror every XAnimateNode object in the presentation core.

Definition at line 35 of file animationnode.hxx.

Member Enumeration Documentation

◆ NodeState

The current state of this AnimationNode.

Enumerator
INVALID 

Invalid state, node is disposed or otherwise invalid.

UNRESOLVED 

Unresolved start time.

RESOLVED 

Resolved start time, node will start eventually.

ACTIVE 

Node is active.

FROZEN 

Node is frozen (no longer active, but changes remain in place)

ENDED 

Node has completed an active lifecycle, and any effect is removed from the document.

Definition at line 40 of file animationnode.hxx.

Member Function Documentation

◆ activate()

virtual void slideshow::internal::AnimationNode::activate ( )
pure virtual

Immediately start this node.

This method starts the animation on this node, without begin timeout. The node will change its state to ACTIVE.

Implemented in slideshow::internal::BaseNode.

◆ deactivate()

virtual void slideshow::internal::AnimationNode::deactivate ( )
pure virtual

Immediately stop this node.

This method stops the animation on this node. The node will change its state to either ENDED or FROZEN, depending on XAnimationNode attributes.

Implemented in slideshow::internal::BaseNode.

Referenced by slideshow::internal::BaseContainerNode::deactivate_st().

◆ end()

virtual void slideshow::internal::AnimationNode::end ( )
pure virtual

End the animation on this node.

This method force-ends animation on this node. Parents may call this for their children, if their active duration ends. An ended animation will no longer have any effect on the shape attributes. The node will change its state to ENDED.

Implemented in slideshow::internal::BaseNode.

Referenced by slideshow::internal::BaseContainerNode::deactivate_st(), and slideshow::internal::BaseContainerNode::repeat().

◆ getState()

virtual NodeState slideshow::internal::AnimationNode::getState ( ) const
pure virtual

Query node state.

Returns
the current state of this animation node.

Implemented in slideshow::internal::BaseNode.

◆ getXAnimationNode()

virtual css::uno::Reference< css::animations::XAnimationNode > slideshow::internal::AnimationNode::getXAnimationNode ( ) const
pure virtual

Query the corresponding XAnimationNode.

Implemented in slideshow::internal::BaseNode.

◆ hasPendingAnimation()

virtual bool slideshow::internal::AnimationNode::hasPendingAnimation ( ) const
pure virtual

Query node whether it has an animation pending.

Returns
true, if this node (or at least one of its children) has an animation pending. Used to determine if the main sequence is actually empty, or contains effects

Implemented in slideshow::internal::AnimationAudioNode, slideshow::internal::AnimationBaseNode, slideshow::internal::AnimationCommandNode, and slideshow::internal::BaseContainerNode.

Referenced by slideshow::internal::BaseContainerNode::hasPendingAnimation().

◆ init()

virtual bool slideshow::internal::AnimationNode::init ( )
pure virtual

Init this node.

If this node is not in state INVALID, init() sets up the node state and schedules necessary events. If this node has children, they have their init() called, too. You will call this method whenever a slide is going to be shown.

Returns
true, if init was successful; state has changed to UNRESOLVED

Implemented in slideshow::internal::BaseNode.

Referenced by slideshow::internal::BaseContainerNode::init_children().

◆ notifyDeactivating()

virtual void slideshow::internal::AnimationNode::notifyDeactivating ( const AnimationNodeSharedPtr rNotifier)
pure virtual

Called to notify another AnimationNode's deactivation.

Parameters
rNotifierThe instance who calls this method.

Implemented in slideshow::internal::ParallelTimeContainer, slideshow::internal::SequentialTimeContainer, slideshow::internal::BaseContainerNode, and slideshow::internal::BaseNode.

◆ registerDeactivatingListener()

virtual bool slideshow::internal::AnimationNode::registerDeactivatingListener ( const AnimationNodeSharedPtr rNotifee)
pure virtual

Register a deactivating listener.

This method registers another AnimationNode as an deactivating listener, which gets notified via a notifyDeactivating() call. The node calls all registered listener, when it leaves the ACTIVE state.

Parameters
rNotifeeAnimationNode to notify

Implemented in slideshow::internal::BaseNode.

◆ removeEffect()

virtual void slideshow::internal::AnimationNode::removeEffect ( )
pure virtual

Called by the container to remove the animation effect to make the painted shape correct if it restart because of repeat or rewind ( fill mode is AnimationFill::REMOVE ) to start state.

Implemented in slideshow::internal::AnimationBaseNode, and slideshow::internal::BaseNode.

Referenced by slideshow::internal::BaseContainerNode::notifyDeactivatedChild().

◆ resolve()

virtual bool slideshow::internal::AnimationNode::resolve ( )
pure virtual

Resolve node start time.

Nodes can have unresolved start times, i.e. indefinite start time for container nodes, or child nodes whose parent has not yet started. Calling this method fixes the node's start time. This does not mean that this node immediately starts its animations, that is only the case for begin=0.0. The node will change its state to RESOLVED.

Returns
true, if a start event was successfully scheduled.

Implemented in slideshow::internal::BaseNode.

Referenced by slideshow::internal::ParallelTimeContainer::activate_st().


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