LibreOffice Module sd (master) 1
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
sd::MainSequence Class Referencefinal

#include <CustomAnimationEffect.hxx>

Inheritance diagram for sd::MainSequence:
[legend]
Collaboration diagram for sd::MainSequence:
[legend]

Public Member Functions

 MainSequence ()
 
 MainSequence (const css::uno::Reference< css::animations::XAnimationNode > &xTimingRootNode)
 
virtual ~MainSequence () override
 
virtual css::uno::Reference< css::animations::XAnimationNode > getRootNode () override
 
void reset (const css::uno::Reference< css::animations::XAnimationNode > &xTimingRootNode)
 
virtual void rebuild () override
 this method rebuilds the animation nodes More...
 
virtual CustomAnimationEffectPtr findEffect (const css::uno::Reference< css::animations::XAnimationNode > &xNode) const override
 
virtual bool disposeShape (const css::uno::Reference< css::drawing::XShape > &xShape) override
 
virtual void insertTextRange (const css::uno::Any &aTarget) override
 
virtual void disposeTextRange (const css::uno::Any &aTarget) override
 
virtual bool hasEffect (const css::uno::Reference< css::drawing::XShape > &xShape) override
 
virtual void onTextChanged (const css::uno::Reference< css::drawing::XShape > &xShape) override
 callback from the sd::View when an object just left text edit mode More...
 
const InteractiveSequenceVectorgetInteractiveSequenceVector () const
 
virtual void notify_change () override
 
bool setTrigger (const CustomAnimationEffectPtr &pEffect, const css::uno::Reference< css::drawing::XShape > &xTriggerShape)
 
void startRecreateTimer ()
 starts a timer that recreates the internal structure from the API core after 1 second More...
 
void startRebuildTimer ()
 starts a timer that rebuilds the API core from the internal structure after 1 second More...
 
virtual sal_Int32 getOffsetFromEffect (const CustomAnimationEffectPtr &xEffect) const override
 
virtual CustomAnimationEffectPtr getEffectFromOffset (sal_Int32 nOffset) const override
 
- Public Member Functions inherited from sd::EffectSequenceHelper
SAL_DLLPRIVATE EffectSequenceHelper ()
 
SAL_DLLPRIVATE EffectSequenceHelper (css::uno::Reference< css::animations::XTimeContainer > xSequenceRoot)
 
virtual SAL_DLLPRIVATE ~EffectSequenceHelper ()
 
virtual SAL_DLLPRIVATE css::uno::Reference< css::animations::XAnimationNode > getRootNode ()
 
SAL_DLLPRIVATE CustomAnimationEffectPtr append (const CustomAnimationPresetPtr &pDescriptor, const css::uno::Any &rTarget, double fDuration)
 
SAL_DLLPRIVATE CustomAnimationEffectPtr append (const SdrPathObj &rPathObj, const css::uno::Any &rTarget, double fDuration, const OUString &rPresetId)
 
void append (const CustomAnimationEffectPtr &pEffect)
 
SAL_DLLPRIVATE void replace (const CustomAnimationEffectPtr &pEffect, const CustomAnimationPresetPtr &pDescriptor, double fDuration)
 
SAL_DLLPRIVATE void replace (const CustomAnimationEffectPtr &pEffect, const CustomAnimationPresetPtr &pDescriptor, const OUString &rPresetSubType, double fDuration)
 
SAL_DLLPRIVATE void remove (const CustomAnimationEffectPtr &pEffect)
 
SAL_DLLPRIVATE void moveToBeforeEffect (const CustomAnimationEffectPtr &pEffect, const CustomAnimationEffectPtr &pInsertBefore)
 
SAL_DLLPRIVATE void create (const css::uno::Reference< css::animations::XAnimationNode > &xNode)
 
SAL_DLLPRIVATE void createEffectsequence (const css::uno::Reference< css::animations::XAnimationNode > &xNode)
 
SAL_DLLPRIVATE void processAfterEffect (const css::uno::Reference< css::animations::XAnimationNode > &xNode)
 
SAL_DLLPRIVATE void createEffects (const css::uno::Reference< css::animations::XAnimationNode > &xNode)
 
SAL_DLLPRIVATE sal_Int32 getCount () const
 
virtual SAL_DLLPRIVATE CustomAnimationEffectPtr findEffect (const css::uno::Reference< css::animations::XAnimationNode > &xNode) const
 
virtual SAL_DLLPRIVATE bool disposeShape (const css::uno::Reference< css::drawing::XShape > &xShape)
 
virtual SAL_DLLPRIVATE void insertTextRange (const css::uno::Any &aTarget)
 
virtual SAL_DLLPRIVATE void disposeTextRange (const css::uno::Any &aTarget)
 
virtual SAL_DLLPRIVATE bool hasEffect (const css::uno::Reference< css::drawing::XShape > &xShape)
 
virtual SAL_DLLPRIVATE void onTextChanged (const css::uno::Reference< css::drawing::XShape > &xShape)
 
virtual SAL_DLLPRIVATE void rebuild ()
 this method rebuilds the animation nodes More...
 
SAL_DLLPRIVATE EffectSequence::iterator getBegin ()
 
SAL_DLLPRIVATE EffectSequence::iterator getEnd ()
 
SAL_DLLPRIVATE EffectSequence::iterator find (const CustomAnimationEffectPtr &pEffect)
 
SAL_DLLPRIVATE EffectSequencegetSequence ()
 
SAL_DLLPRIVATE void addListener (ISequenceListener *pListener)
 
SAL_DLLPRIVATE void removeListener (ISequenceListener *pListener)
 
SAL_DLLPRIVATE CustomAnimationTextGroupPtr findGroup (sal_Int32 nGroupId)
 
CustomAnimationTextGroupPtr createTextGroup (const CustomAnimationEffectPtr &pEffect, sal_Int32 nTextGrouping, double fTextGroupingAuto, bool bAnimateForm, bool bTextReverse)
 
SAL_DLLPRIVATE void setTextGrouping (const CustomAnimationTextGroupPtr &pTextGroup, sal_Int32 nTextGrouping)
 
SAL_DLLPRIVATE void setAnimateForm (const CustomAnimationTextGroupPtr &pTextGroup, bool bAnimateForm)
 
SAL_DLLPRIVATE void setTextGroupingAuto (const CustomAnimationTextGroupPtr &pTextGroup, double fTextGroupingAuto)
 
SAL_DLLPRIVATE void setTextReverse (const CustomAnimationTextGroupPtr &pTextGroup, bool bAnimateForm)
 
SAL_DLLPRIVATE sal_Int32 getSequenceType () const
 
SAL_DLLPRIVATE const css::uno::Reference< css::drawing::XShape > & getTriggerShape () const
 
SAL_DLLPRIVATE void setTriggerShape (const css::uno::Reference< css::drawing::XShape > &xTrigger)
 
virtual SAL_DLLPRIVATE sal_Int32 getOffsetFromEffect (const CustomAnimationEffectPtr &xEffect) const
 
virtual SAL_DLLPRIVATE CustomAnimationEffectPtr getEffectFromOffset (sal_Int32 nOffset) const
 
virtual void notify_change ()=0
 

Private Member Functions

void lockRebuilds ()
 permits rebuilds until unlockRebuilds() is called. More...
 
void unlockRebuilds ()
 
 DECL_DLLPRIVATE_LINK (onTimerHdl, Timer *, void)
 
virtual void implRebuild () override
 
void init ()
 
void createMainSequence ()
 
virtual void reset () override
 
InteractiveSequencePtr createInteractiveSequence (const css::uno::Reference< css::drawing::XShape > &xShape)
 

Private Attributes

InteractiveSequenceVector maInteractiveSequenceVector
 
css::uno::Reference< css::util::XChangesListener > mxChangesListener
 
css::uno::Reference< css::animations::XTimeContainer > mxTimingRootNode
 
Timer maTimer
 
bool mbTimerMode
 
bool mbRebuilding
 
::tools::Long mnRebuildLockGuard
 
bool mbPendingRebuildRequest
 
sal_Int32 mbIgnoreChanges
 

Friends

class UndoAnimation
 
class MainSequenceRebuildGuard
 
class MainSequenceChangeGuard
 

Additional Inherited Members

- Protected Member Functions inherited from sd::EffectSequenceHelper
virtual SAL_DLLPRIVATE void implRebuild ()
 
virtual SAL_DLLPRIVATE void reset ()
 
SAL_DLLPRIVATE void createTextGroupParagraphEffects (const CustomAnimationTextGroupPtr &pTextGroup, const CustomAnimationEffectPtr &pEffect, bool bUsed)
 
SAL_DLLPRIVATE void notify_listeners ()
 
SAL_DLLPRIVATE void updateTextGroups ()
 
SAL_DLLPRIVATE bool getParagraphNumberingLevels (const css::uno::Reference< css::drawing::XShape > &xShape, std::vector< sal_Int32 > &rParagraphNumberingLevel)
 
- Protected Member Functions inherited from sd::ISequenceListener
 ~ISequenceListener ()
 
- Protected Attributes inherited from sd::EffectSequenceHelper
css::uno::Reference< css::animations::XTimeContainer > mxSequenceRoot
 
EffectSequence maEffects
 
std::list< ISequenceListener * > maListeners
 
CustomAnimationTextGroupMap maGroupMap
 
sal_Int32 mnSequenceType
 
css::uno::Reference< css::drawing::XShape > mxEventSource
 

Detailed Description

Definition at line 371 of file CustomAnimationEffect.hxx.

Constructor & Destructor Documentation

◆ MainSequence() [1/2]

sd::MainSequence::MainSequence ( )

◆ MainSequence() [2/2]

sd::MainSequence::MainSequence ( const css::uno::Reference< css::animations::XAnimationNode > &  xTimingRootNode)

Definition at line 3071 of file CustomAnimationEffect.cxx.

References init().

◆ ~MainSequence()

sd::MainSequence::~MainSequence ( )
overridevirtual

Definition at line 3083 of file CustomAnimationEffect.cxx.

References reset().

Member Function Documentation

◆ createInteractiveSequence()

InteractiveSequencePtr sd::MainSequence::createInteractiveSequence ( const css::uno::Reference< css::drawing::XShape > &  xShape)
private

◆ createMainSequence()

void sd::MainSequence::createMainSequence ( )
private

◆ DECL_DLLPRIVATE_LINK()

sd::MainSequence::DECL_DLLPRIVATE_LINK ( onTimerHdl  ,
Timer ,
void   
)
private

References init().

◆ disposeShape()

bool sd::MainSequence::disposeShape ( const css::uno::Reference< css::drawing::XShape > &  xShape)
overridevirtual

◆ disposeTextRange()

void sd::MainSequence::disposeTextRange ( const css::uno::Any &  aTarget)
overridevirtual

◆ findEffect()

CustomAnimationEffectPtr sd::MainSequence::findEffect ( const css::uno::Reference< css::animations::XAnimationNode > &  xNode) const
overridevirtual

◆ getEffectFromOffset()

CustomAnimationEffectPtr sd::MainSequence::getEffectFromOffset ( sal_Int32  nOffset) const
overridevirtual

◆ getInteractiveSequenceVector()

const InteractiveSequenceVector & sd::MainSequence::getInteractiveSequenceVector ( ) const
inline

Definition at line 396 of file CustomAnimationEffect.hxx.

◆ getOffsetFromEffect()

sal_Int32 sd::MainSequence::getOffsetFromEffect ( const CustomAnimationEffectPtr xEffect) const
overridevirtual

◆ getRootNode()

Reference< css::animations::XAnimationNode > sd::MainSequence::getRootNode ( )
overridevirtual

◆ hasEffect()

bool sd::MainSequence::hasEffect ( const css::uno::Reference< css::drawing::XShape > &  xShape)
overridevirtual

◆ implRebuild()

void sd::MainSequence::implRebuild ( )
overrideprivatevirtual

◆ init()

void sd::MainSequence::init ( )
private

◆ insertTextRange()

void sd::MainSequence::insertTextRange ( const css::uno::Any &  aTarget)
overridevirtual

◆ lockRebuilds()

void sd::MainSequence::lockRebuilds ( )
private

permits rebuilds until unlockRebuilds() is called.

All rebuild calls during a locked sequence are process after unlockRebuilds() call. lockRebuilds() and unlockRebuilds() calls can be nested.

Definition at line 3374 of file CustomAnimationEffect.cxx.

References mnRebuildLockGuard.

◆ notify_change()

void sd::MainSequence::notify_change ( )
overridevirtual

◆ onTextChanged()

void sd::MainSequence::onTextChanged ( const css::uno::Reference< css::drawing::XShape > &  xShape)
overridevirtual

callback from the sd::View when an object just left text edit mode

Reimplemented from sd::EffectSequenceHelper.

Definition at line 3337 of file CustomAnimationEffect.cxx.

References maInteractiveSequenceVector, and sd::EffectSequenceHelper::onTextChanged().

◆ rebuild()

void sd::MainSequence::rebuild ( )
overridevirtual

this method rebuilds the animation nodes

Reimplemented from sd::EffectSequenceHelper.

Definition at line 3369 of file CustomAnimationEffect.cxx.

References startRebuildTimer().

Referenced by sd::InteractiveSequence::rebuild().

◆ reset() [1/2]

void sd::MainSequence::reset ( )
overrideprivatevirtual

◆ reset() [2/2]

void sd::MainSequence::reset ( const css::uno::Reference< css::animations::XAnimationNode > &  xTimingRootNode)

Definition at line 3100 of file CustomAnimationEffect.cxx.

References createMainSequence(), mxTimingRootNode, and reset().

◆ setTrigger()

bool sd::MainSequence::setTrigger ( const CustomAnimationEffectPtr pEffect,
const css::uno::Reference< css::drawing::XShape > &  xTriggerShape 
)

◆ startRebuildTimer()

void sd::MainSequence::startRebuildTimer ( )

starts a timer that rebuilds the API core from the internal structure after 1 second

starts a timer that rebuilds the API core from the internal structure This is used to reduce the number of screen redraws due to animation changes.

Definition at line 3501 of file CustomAnimationEffect.cxx.

References maTimer, mbTimerMode, and Timer::Start().

Referenced by disposeShape(), rebuild(), and unlockRebuilds().

◆ startRecreateTimer()

void sd::MainSequence::startRecreateTimer ( )

starts a timer that recreates the internal structure from the API core after 1 second

starts a timer that recreates the internal structure from the API core

Definition at line 3488 of file CustomAnimationEffect.cxx.

References maTimer, mbIgnoreChanges, mbRebuilding, mbTimerMode, and Timer::Start().

◆ unlockRebuilds()

void sd::MainSequence::unlockRebuilds ( )
private

Friends And Related Function Documentation

◆ MainSequenceChangeGuard

friend class MainSequenceChangeGuard
friend

Definition at line 375 of file CustomAnimationEffect.hxx.

◆ MainSequenceRebuildGuard

friend class MainSequenceRebuildGuard
friend

Definition at line 374 of file CustomAnimationEffect.hxx.

◆ UndoAnimation

friend class UndoAnimation
friend

Definition at line 373 of file CustomAnimationEffect.hxx.

Member Data Documentation

◆ maInteractiveSequenceVector

InteractiveSequenceVector sd::MainSequence::maInteractiveSequenceVector
private

◆ maTimer

Timer sd::MainSequence::maTimer
private

◆ mbIgnoreChanges

sal_Int32 sd::MainSequence::mbIgnoreChanges
private

◆ mbPendingRebuildRequest

bool sd::MainSequence::mbPendingRebuildRequest
private

Definition at line 437 of file CustomAnimationEffect.hxx.

Referenced by implRebuild(), and unlockRebuilds().

◆ mbRebuilding

bool sd::MainSequence::mbRebuilding
private

Definition at line 434 of file CustomAnimationEffect.hxx.

Referenced by implRebuild(), and startRecreateTimer().

◆ mbTimerMode

bool sd::MainSequence::mbTimerMode
private

Definition at line 433 of file CustomAnimationEffect.hxx.

Referenced by getRootNode(), startRebuildTimer(), and startRecreateTimer().

◆ mnRebuildLockGuard

::tools::Long sd::MainSequence::mnRebuildLockGuard
private

Definition at line 436 of file CustomAnimationEffect.hxx.

Referenced by getRootNode(), implRebuild(), lockRebuilds(), and unlockRebuilds().

◆ mxChangesListener

css::uno::Reference< css::util::XChangesListener > sd::MainSequence::mxChangesListener
private

Definition at line 430 of file CustomAnimationEffect.hxx.

Referenced by createMainSequence(), init(), and reset().

◆ mxTimingRootNode

css::uno::Reference< css::animations::XTimeContainer > sd::MainSequence::mxTimingRootNode
private

Definition at line 431 of file CustomAnimationEffect.hxx.

Referenced by createMainSequence(), MainSequence(), and reset().


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