LibreOffice Module drawinglayer (master) 1
Public Member Functions | Protected Member Functions | Private Attributes | List of all members
drawinglayer::primitive2d::AnimatedSwitchPrimitive2D Class Reference

AnimatedSwitchPrimitive2D class. More...

#include <animatedprimitive2d.hxx>

Inheritance diagram for drawinglayer::primitive2d::AnimatedSwitchPrimitive2D:
[legend]
Collaboration diagram for drawinglayer::primitive2d::AnimatedSwitchPrimitive2D:
[legend]

Public Member Functions

 AnimatedSwitchPrimitive2D (const animation::AnimationEntry &rAnimationEntry, Primitive2DContainer &&aChildren, bool bIsTextAnimation)
 constructor More...
 
virtual ~AnimatedSwitchPrimitive2D () override
 destructor - needed due to mpAnimationEntry More...
 
const animation::AnimationEntrygetAnimationEntry () const
 data read access More...
 
bool isTextAnimation () const
 
bool isGraphicAnimation () const
 
virtual bool operator== (const BasePrimitive2D &rPrimitive) const override
 compare operator More...
 
virtual sal_uInt32 getPrimitive2DID () const override
 provide unique ID More...
 
virtual void get2DDecomposition (Primitive2DDecompositionVisitor &rVisitor, const geometry::ViewInformation2D &rViewInformation) const override
 Override getDecomposition() here since the decompose depends on the point in time, so the default implementation is not useful here, it needs to be handled locally. More...
 
- Public Member Functions inherited from drawinglayer::primitive2d::GroupPrimitive2D
 GroupPrimitive2D (Primitive2DContainer &&aChildren)
 constructor More...
 
const Primitive2DContainergetChildren () const
 data read access More...
 
void getChildren (Primitive2DDecompositionVisitor &rVisitor) const
 
virtual bool operator== (const BasePrimitive2D &rPrimitive) const override
 compare operator More...
 
virtual void get2DDecomposition (Primitive2DDecompositionVisitor &rVisitor, const geometry::ViewInformation2D &rViewInformation) const override
 local decomposition. Implementation will just return children More...
 
virtual sal_uInt32 getPrimitive2DID () const override
 provide unique ID More...
 
virtual sal_Int64 estimateUsage () override
 
- Public Member Functions inherited from drawinglayer::primitive2d::BasePrimitive2D
 BasePrimitive2D ()
 
virtual ~BasePrimitive2D () override
 
virtual bool operator== (const BasePrimitive2D &rPrimitive) const
 the ==operator is mainly needed to allow testing newly-created primitives against their last incarnation which buffers/holds the made decompositions. More...
 
bool operator!= (const BasePrimitive2D &rPrimitive) const
 
virtual basegfx::B2DRange getB2DRange (const geometry::ViewInformation2D &rViewInformation) const
 The default implementation will use getDecomposition results to create the range. More...
 
virtual sal_uInt32 getPrimitive2DID () const =0
 provide unique ID for fast identifying of known primitive implementations in renderers. More...
 
virtual void get2DDecomposition (Primitive2DDecompositionVisitor &rVisitor, const geometry::ViewInformation2D &rViewInformation) const
 The default implementation will return an empty sequence. More...
 
Primitive2DContainer getDecomposition (const css::uno::Sequence< css::beans::PropertyValue > &rViewParameters)
 The getDecomposition implementation for UNO API will use getDecomposition from this implementation. More...
 
css::geometry::RealRectangle2D getRange (const css::uno::Sequence< css::beans::PropertyValue > &rViewParameters)
 The getRange implementation for UNO API will use getRange from this implementation. More...
 
virtual sal_Int64 estimateUsage ()
 
- Public Member Functions inherited from salhelper::SimpleReferenceObject
 SimpleReferenceObject ()
 
void acquire ()
 
void release ()
 

Protected Member Functions

void setAnimationEntry (const animation::AnimationEntry &rNew)
 write access right for classes deriving from this who want to do special things (e.g. More...
 
- Protected Member Functions inherited from salhelper::SimpleReferenceObject
virtual ~SimpleReferenceObject () COVERITY_NOEXCEPT_FALSE
 

Private Attributes

std::unique_ptr< animation::AnimationEntrympAnimationEntry
 The animation definition which allows translation of a point in time to an animation state [0.0 . More...
 
bool mbIsTextAnimation: 1
 flag if this is a text or graphic animation. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from salhelper::SimpleReferenceObject
static void * operator new (std::size_t nSize)
 
static void * operator new (std::size_t nSize, std::nothrow_t const &rNothrow)
 
static void operator delete (void *pPtr)
 
static void operator delete (void *pPtr, std::nothrow_t const &rNothrow)
 
- Protected Attributes inherited from salhelper::SimpleReferenceObject
oslInterlockedCount m_nCount
 

Detailed Description

AnimatedSwitchPrimitive2D class.

This is the basic class for simple, animated primitives. The basic idea is to have an animation definition (AnimationEntry) who's basic functionality is to return a state value for any given animation time in the range of [0.0 .. 1.0]. Depending on the state, the decomposition calculates an index, which of the members of the child vector is to be visualized.

An example: For blinking, the Child vector should exist of two entries; for values of [0.0 .. 0.5] the first, else the last entry will be used. This mechanism is not limited to two entries, though.

Definition at line 54 of file animatedprimitive2d.hxx.

Constructor & Destructor Documentation

◆ AnimatedSwitchPrimitive2D()

drawinglayer::primitive2d::AnimatedSwitchPrimitive2D::AnimatedSwitchPrimitive2D ( const animation::AnimationEntry rAnimationEntry,
Primitive2DContainer &&  aChildren,
bool  bIsTextAnimation 
)

constructor

Definition at line 38 of file animatedprimitive2d.cxx.

References drawinglayer::animation::AnimationEntry::clone(), and mpAnimationEntry.

◆ ~AnimatedSwitchPrimitive2D()

drawinglayer::primitive2d::AnimatedSwitchPrimitive2D::~AnimatedSwitchPrimitive2D ( )
overridevirtual

destructor - needed due to mpAnimationEntry

Definition at line 49 of file animatedprimitive2d.cxx.

Member Function Documentation

◆ get2DDecomposition()

void drawinglayer::primitive2d::AnimatedSwitchPrimitive2D::get2DDecomposition ( Primitive2DDecompositionVisitor rVisitor,
const geometry::ViewInformation2D rViewInformation 
) const
overridevirtual

◆ getAnimationEntry()

const animation::AnimationEntry & drawinglayer::primitive2d::AnimatedSwitchPrimitive2D::getAnimationEntry ( ) const
inline

◆ getPrimitive2DID()

sal_uInt32 drawinglayer::primitive2d::AnimatedSwitchPrimitive2D::getPrimitive2DID ( ) const
overridevirtual

◆ isGraphicAnimation()

bool drawinglayer::primitive2d::AnimatedSwitchPrimitive2D::isGraphicAnimation ( ) const
inline

Definition at line 89 of file animatedprimitive2d.hxx.

◆ isTextAnimation()

bool drawinglayer::primitive2d::AnimatedSwitchPrimitive2D::isTextAnimation ( ) const
inline

Definition at line 88 of file animatedprimitive2d.hxx.

◆ operator==()

bool drawinglayer::primitive2d::AnimatedSwitchPrimitive2D::operator== ( const BasePrimitive2D rPrimitive) const
overridevirtual

compare operator

Reimplemented from drawinglayer::primitive2d::GroupPrimitive2D.

Definition at line 53 of file animatedprimitive2d.cxx.

References getAnimationEntry().

◆ setAnimationEntry()

void drawinglayer::primitive2d::AnimatedSwitchPrimitive2D::setAnimationEntry ( const animation::AnimationEntry rNew)
protected

write access right for classes deriving from this who want to do special things (e.g.

optimization, buffering). Caution: This is an exception from the read-only, non-modifiable paradigm for primitives, so special preparations may be needed. Usually should only be used for initialization (e.g. in a derived constructor)

Definition at line 32 of file animatedprimitive2d.cxx.

References drawinglayer::animation::AnimationEntry::clone(), and mpAnimationEntry.

Member Data Documentation

◆ mbIsTextAnimation

bool drawinglayer::primitive2d::AnimatedSwitchPrimitive2D::mbIsTextAnimation
private

flag if this is a text or graphic animation.

Necessary since SdrViews need to differentiate between both types if they are on/off

Definition at line 67 of file animatedprimitive2d.hxx.

◆ mpAnimationEntry

std::unique_ptr<animation::AnimationEntry> drawinglayer::primitive2d::AnimatedSwitchPrimitive2D::mpAnimationEntry
private

The animation definition which allows translation of a point in time to an animation state [0.0 .

. 1.0]. This member contains a cloned definition and is owned by this implementation.

Definition at line 62 of file animatedprimitive2d.hxx.

Referenced by AnimatedSwitchPrimitive2D(), and setAnimationEntry().


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