19#ifndef INCLUDED_SLIDESHOW_SOURCE_INC_BASENODE_HXX
20#define INCLUDED_SLIDESHOW_SOURCE_INC_BASENODE_HXX
24#include <osl/diagnose.hxx>
47 const ::basegfx::B2DVector& rSlideSize )
82 public ::osl::DebugBase<BaseNode>
85 BaseNode( css::uno::Reference<css::animations::XAnimationNode>
const& xNode,
110 virtual void dispose()
override;
113 virtual bool init()
override;
114 virtual bool resolve()
override;
117 virtual void end()
override;
118 virtual css::uno::Reference<css::animations::XAnimationNode>
getXAnimationNode()
const override;
141 OSL_ENSURE( bRet,
"### INVALID node!" );
179 bool debugAssert =
true )
const {
181 OSL_ENSURE( !debugAssert || bRet,
"### state unreachable!" );
This interface is used to mirror every XAnimateNode object in the presentation core.
NodeState
The current state of this AnimationNode.
@ INVALID
Invalid state, node is disposed or otherwise invalid.
This interface extends BaseNode with child handling methods.
state transition handling
This interface extends AnimationNode with some file-private accessor methods.
virtual void end() override
End the animation on this node.
const ::std::shared_ptr< BaseContainerNode > & getParentNode() const
bool isMainSequenceRootNode() const
bool inStateOrTransition(int mask) const
virtual void activate() override
Immediately start this node.
virtual void showState() const
SlideShowContext maContext
BaseNode(const BaseNode &)=delete
const bool mbIsMainSequenceRootNode
virtual css::uno::Reference< css::animations::XAnimationNode > getXAnimationNode() const override
Query the corresponding XAnimationNode.
SlideShowContext const & getContext() const
virtual void removeEffect() override
Called by the container to remove the animation effect to make the painted shape correct if it restar...
virtual bool init() override
Init this node.
int meCurrentStateTransition
::std::shared_ptr< BaseNode > mpSelf
bool isTransition(NodeState eFromState, NodeState eToState, bool debugAssert=true) const
sal_Int16 getFillMode()
Get the node's fill mode.
const int * mpStateTransitionTable
::std::shared_ptr< BaseContainerNode > mpParent
css::uno::Reference< css::animations::XAnimationNode > mxAnimationNode
bool checkValidNode() const
void setSelf(const BaseNodeSharedPtr &rSelf)
Provide the node with a shared_ptr to itself.
::std::shared_ptr< BaseNode > const & getSelf() const
virtual void dispose() override
Dispose all object references.
virtual bool registerDeactivatingListener(const AnimationNodeSharedPtr &rNotifee) override
Register a deactivating listener.
EventSharedPtr mpCurrentEvent
void notifyEndListeners() const
notifies
virtual void deactivate_st(NodeState eDestState)
BaseNode & operator=(const BaseNode &)=delete
friend class StateTransition
sal_Int16 getRestartMode()
Get the node's restart mode.
virtual const char * getDescription() const
virtual NodeState getState() const override
Query node state.
const double mnStartDelay
::std::vector< AnimationNodeSharedPtr > maDeactivatingListeners
BaseNode(css::uno::Reference< css::animations::XAnimationNode > const &xNode, BaseContainerNodeSharedPtr pParent, NodeContext const &rContext)
virtual void activate_st()
virtual bool resolve() override
Resolve node start time.
virtual void deactivate() override
Immediately stop this node.
virtual bool resolve_st()
sal_Int16 getRestartDefaultMode() const
Get the default restart mode.
sal_Int16 getFillDefaultMode() const
Get the default fill mode.
void scheduleDeactivationEvent(EventSharedPtr const &pEvent=EventSharedPtr())
virtual void notifyDeactivating(const AnimationNodeSharedPtr &rNotifier) override
Called to notify another AnimationNode's deactivation.
#define ENSURE_OR_THROW(c, m)
::std::shared_ptr< ShapeSubset > ShapeSubsetSharedPtr
::std::shared_ptr< BaseContainerNode > BaseContainerNodeSharedPtr
::std::shared_ptr< AnimationNode > AnimationNodeSharedPtr
::std::shared_ptr< Event > EventSharedPtr
::std::shared_ptr< BaseNode > BaseNodeSharedPtr
NodeContext(SlideShowContext aContext, const ::basegfx::B2DVector &rSlideSize)
bool mbIsIndependentSubset
When true, subset must be created during slide initialization.
ShapeSubsetSharedPtr mpMasterShapeSubset
Shape to be used (provided by parent, e.g. for iterations)
SlideShowContext maContext
Context as passed to createAnimationNode()
::basegfx::B2DVector maSlideSize
Size in user coordinate space of the corresponding slide.
double mnStartDelay
Additional delay to node begin (to offset iterate effects)
Common arguments for slideshow objects.