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

#include <CustomAnimationPane.hxx>

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

Public Member Functions

 CustomAnimationPane (weld::Widget *pParent, ViewShellBase &rBase)
 
virtual ~CustomAnimationPane () override
 
virtual css::ui::LayoutSize GetHeightForWidth (const sal_Int32 nWidth) override
 
void onSelectionChanged ()
 
void onChangeCurrentPage ()
 
void onAdd ()
 
void onRemove ()
 
void onChangeStart ()
 
void onChangeStart (sal_Int16 nNodeType)
 
void onChangeSpeed ()
 
void preview (const css::uno::Reference< css::animations::XAnimationNode > &xAnimationNode)
 
void remove (CustomAnimationEffectPtr const &pEffect)
 
virtual void onSelect () override
 
virtual void onDoubleClick () override
 
virtual void onContextMenu (const OUString &rIdent) override
 
virtual void onDragNDropComplete (std::vector< CustomAnimationEffectPtr > pEffectsDragged, CustomAnimationEffectPtr pEffectInsertBefore) override
 
void addUndo ()
 
double getDuration () const
 
void updatePathFromMotionPathTag (const rtl::Reference< MotionPathTag > &xTag)
 
- Public Member Functions inherited from PanelLayout
 PanelLayout (weld::Widget *pParent, const OUString &rID, const OUString &rUIXMLDescription)
 
void SetPanel (sfx2::sidebar::Panel *pPanel)
 
virtual ~PanelLayout ()
 
Size get_preferred_size () const
 
void queue_resize ()
 
- Public Member Functions inherited from sd::ICustomAnimationListController
virtual void onSelect ()=0
 
virtual void onDoubleClick ()=0
 
virtual void onContextMenu (const OUString &rIdent)=0
 
virtual void onDragNDropComplete (std::vector< CustomAnimationEffectPtr > pEffectsDragged, CustomAnimationEffectPtr pEffectInsertBefore)=0
 
virtual ~ICustomAnimationListController ()
 

Private Member Functions

void initialize ()
 
void addListener ()
 
void removeListener ()
 
void updateControls ()
 
void updateMotionPathTags ()
 
void showOptions (const OUString &sPage={})
 
void moveSelection (bool bUp)
 
void onPreview (bool bForcePreview)
 
std::unique_ptr< STLPropertySetcreateSelectionSet ()
 
void changeSelection (STLPropertySet const *pResultSet, STLPropertySet const *pOldSet)
 
sal_Int32 fillAnimationLB (bool bHasText)
 
PathKind getCreatePathKind () const
 
void createPath (PathKind eKind, std::vector< ::com::sun::star::uno::Any > &rTargets, double fDuration)
 
 DECL_LINK (implControlListBoxHdl, weld::ComboBox &, void)
 
 DECL_LINK (implClickHdl, weld::Button &, void)
 
 DECL_LINK (implToggleHdl, weld::Toggleable &, void)
 
 DECL_LINK (implPropertyHdl, LinkParamNone *, void)
 
 DECL_LINK (EventMultiplexerListener, tools::EventMultiplexerEvent &, void)
 
 DECL_LINK (lateInitCallback, Timer *, void)
 
 DECL_LINK (DurationModifiedHdl, weld::MetricSpinButton &, void)
 
 DECL_LINK (DelayModifiedHdl, weld::MetricSpinButton &, void)
 
 DECL_LINK (DelayLoseFocusHdl, weld::Widget &, void)
 
 DECL_LINK (UpdateAnimationLB, weld::ComboBox &, void)
 
 DECL_LINK (AnimationSelectHdl, weld::TreeView &, void)
 
 DECL_LINK (SelectionHandler, Timer *, void)
 
void implControlHdl (const weld::Widget *pControl)
 this link is called when one of the controls is modified More...
 

Static Private Member Functions

static css::uno::Any getProperty1Value (sal_Int32 nType, const CustomAnimationEffectPtr &pEffect)
 
static bool setProperty1Value (sal_Int32 nType, const CustomAnimationEffectPtr &pEffect, const css::uno::Any &rValue)
 

Private Attributes

ViewShellBasemrBase
 
std::unique_ptr< weld::LabelmxFTAnimation
 
std::unique_ptr< CustomAnimationListmxCustomAnimationList
 
std::unique_ptr< weld::ButtonmxPBAddEffect
 
std::unique_ptr< weld::ButtonmxPBRemoveEffect
 
std::unique_ptr< weld::ButtonmxPBMoveUp
 
std::unique_ptr< weld::ButtonmxPBMoveDown
 
std::unique_ptr< weld::LabelmxFTCategory
 
std::unique_ptr< weld::ComboBoxmxLBCategory
 
std::unique_ptr< weld::LabelmxFTEffect
 
std::unique_ptr< weld::TreeViewmxLBAnimation
 
std::unique_ptr< weld::LabelmxFTStart
 
std::unique_ptr< weld::ComboBoxmxLBStart
 
std::unique_ptr< weld::LabelmxFTProperty
 
std::unique_ptr< SdPropertySubControlmxLBSubControl
 
std::unique_ptr< weld::ContainermxPlaceholderBox
 
std::unique_ptr< weld::ButtonmxPBPropertyMore
 
std::unique_ptr< weld::LabelmxFTDuration
 
std::unique_ptr< weld::MetricSpinButtonmxCBXDuration
 
std::unique_ptr< weld::LabelmxFTStartDelay
 
std::unique_ptr< weld::MetricSpinButtonmxMFStartDelay
 
std::unique_ptr< weld::CheckButtonmxCBAutoPreview
 
std::unique_ptr< weld::ButtonmxPBPlay
 
Idle maIdle
 
OUString maStrModify
 
OUString maStrProperty
 
sal_Int32 mnLastSelectedAnimation
 
sal_Int32 mnPropertyType
 
sal_Int32 mnCurvePathPos
 
sal_Int32 mnPolygonPathPos
 
sal_Int32 mnFreeformPathPos
 
EffectSequence maListSelection
 
css::uno::Any maViewSelection
 
MainSequencePtr mpMainSequence
 
css::uno::Reference< css::drawing::XDrawPage > mxCurrentPage
 
css::uno::Reference< css::drawing::XDrawView > mxView
 
Timer maLateInitTimer
 The CustomAnimationPresets is initialized either on demand or after a short time after the construction of a new object of this class. More...
 
MotionPathTagVector maMotionPathTags
 
ScopeLock maSelectionLock
 

Static Private Attributes

static sal_Int32 const gnMotionPathPos = 3
 

Friends

class MotionPathTag
 

Additional Inherited Members

- Protected Member Functions inherited from PanelLayout
virtual void DataChanged (const DataChangedEvent &rEvent)
 
virtual void DumpAsPropertyTree (tools::JsonWriter &)
 
virtual weld::WindowGetFrameWeld () const
 
- Protected Attributes inherited from PanelLayout
std::unique_ptr< weld::Builderm_xBuilder
 
std::unique_ptr< weld::Containerm_xContainer
 
sfx2::sidebar::Panelm_pPanel
 

Detailed Description

Definition at line 47 of file CustomAnimationPane.hxx.

Constructor & Destructor Documentation

◆ CustomAnimationPane()

sd::CustomAnimationPane::CustomAnimationPane ( weld::Widget pParent,
ViewShellBase rBase 
)

Definition at line 120 of file CustomAnimationPane.cxx.

References initialize(), and SECOND.

◆ ~CustomAnimationPane()

sd::CustomAnimationPane::~CustomAnimationPane ( )
overridevirtual

Member Function Documentation

◆ addListener()

void sd::CustomAnimationPane::addListener ( )
private

Definition at line 263 of file CustomAnimationPane.cxx.

References sd::ViewShellBase::GetEventMultiplexer(), LINK, and mrBase.

Referenced by initialize().

◆ addUndo()

void sd::CustomAnimationPane::addUndo ( )

◆ changeSelection()

void sd::CustomAnimationPane::changeSelection ( STLPropertySet const *  pResultSet,
STLPropertySet const *  pOldSet 
)
private

◆ createPath()

void sd::CustomAnimationPane::createPath ( PathKind  eKind,
std::vector< ::com::sun::star::uno::Any > &  rTargets,
double  fDuration 
)
private

◆ createSelectionSet()

std::unique_ptr< STLPropertySet > sd::CustomAnimationPane::createSelectionSet ( )
private

◆ DECL_LINK() [1/12]

sd::CustomAnimationPane::DECL_LINK ( AnimationSelectHdl  ,
weld::TreeView ,
void   
)
private

◆ DECL_LINK() [2/12]

sd::CustomAnimationPane::DECL_LINK ( DelayLoseFocusHdl  ,
weld::Widget ,
void   
)
private

◆ DECL_LINK() [3/12]

sd::CustomAnimationPane::DECL_LINK ( DelayModifiedHdl  ,
weld::MetricSpinButton ,
void   
)
private

◆ DECL_LINK() [4/12]

sd::CustomAnimationPane::DECL_LINK ( DurationModifiedHdl  ,
weld::MetricSpinButton ,
void   
)
private

◆ DECL_LINK() [5/12]

sd::CustomAnimationPane::DECL_LINK ( EventMultiplexerListener  ,
tools::EventMultiplexerEvent ,
void   
)
private

◆ DECL_LINK() [6/12]

sd::CustomAnimationPane::DECL_LINK ( implClickHdl  ,
weld::Button ,
void   
)
private

◆ DECL_LINK() [7/12]

sd::CustomAnimationPane::DECL_LINK ( implControlListBoxHdl  ,
weld::ComboBox ,
void   
)
private

◆ DECL_LINK() [8/12]

sd::CustomAnimationPane::DECL_LINK ( implPropertyHdl  ,
LinkParamNone ,
void   
)
private

◆ DECL_LINK() [9/12]

sd::CustomAnimationPane::DECL_LINK ( implToggleHdl  ,
weld::Toggleable ,
void   
)
private

◆ DECL_LINK() [10/12]

sd::CustomAnimationPane::DECL_LINK ( lateInitCallback  ,
Timer ,
void   
)
private

◆ DECL_LINK() [11/12]

sd::CustomAnimationPane::DECL_LINK ( SelectionHandler  ,
Timer ,
void   
)
private

◆ DECL_LINK() [12/12]

sd::CustomAnimationPane::DECL_LINK ( UpdateAnimationLB  ,
weld::ComboBox ,
void   
)
private

◆ fillAnimationLB()

sal_Int32 sd::CustomAnimationPane::fillAnimationLB ( bool  bHasText)
private

◆ getCreatePathKind()

PathKind sd::CustomAnimationPane::getCreatePathKind ( ) const
private

◆ getDuration()

double sd::CustomAnimationPane::getDuration ( ) const

Definition at line 1984 of file CustomAnimationPane.cxx.

References mxCBXDuration.

Referenced by onChangeSpeed().

◆ GetHeightForWidth()

css::ui::LayoutSize sd::CustomAnimationPane::GetHeightForWidth ( const sal_Int32  nWidth)
overridevirtual

Definition at line 158 of file CustomAnimationPane.cxx.

References PanelLayout::get_preferred_size(), and Size::Height().

◆ getProperty1Value()

Any sd::CustomAnimationPane::getProperty1Value ( sal_Int32  nType,
const CustomAnimationEffectPtr pEffect 
)
staticprivate

◆ implControlHdl()

void sd::CustomAnimationPane::implControlHdl ( const weld::Widget pControl)
private

◆ initialize()

void sd::CustomAnimationPane::initialize ( )
private

◆ moveSelection()

void sd::CustomAnimationPane::moveSelection ( bool  bUp)
private

◆ onAdd()

void sd::CustomAnimationPane::onAdd ( )

◆ onChangeCurrentPage()

void sd::CustomAnimationPane::onChangeCurrentPage ( )

◆ onChangeSpeed()

void sd::CustomAnimationPane::onChangeSpeed ( )

◆ onChangeStart() [1/2]

void sd::CustomAnimationPane::onChangeStart ( )

Definition at line 1920 of file CustomAnimationPane.cxx.

References mxLBStart, and onChangeStart().

Referenced by implControlHdl(), onChangeStart(), and onContextMenu().

◆ onChangeStart() [2/2]

void sd::CustomAnimationPane::onChangeStart ( sal_Int16  nNodeType)

◆ onContextMenu()

void sd::CustomAnimationPane::onContextMenu ( const OUString &  rIdent)
overridevirtual

◆ onDoubleClick()

void sd::CustomAnimationPane::onDoubleClick ( )
overridevirtual

Implements sd::ICustomAnimationListController.

Definition at line 849 of file CustomAnimationPane.cxx.

References showOptions().

◆ onDragNDropComplete()

void sd::CustomAnimationPane::onDragNDropComplete ( std::vector< CustomAnimationEffectPtr pEffectsDragged,
CustomAnimationEffectPtr  pEffectInsertBefore 
)
overridevirtual

◆ onPreview()

void sd::CustomAnimationPane::onPreview ( bool  bForcePreview)
private

◆ onRemove()

void sd::CustomAnimationPane::onRemove ( )

◆ onSelect()

void sd::CustomAnimationPane::onSelect ( )
overridevirtual

◆ onSelectionChanged()

void sd::CustomAnimationPane::onSelectionChanged ( )

◆ preview()

void sd::CustomAnimationPane::preview ( const css::uno::Reference< css::animations::XAnimationNode > &  xAnimationNode)

Definition at line 2475 of file CustomAnimationPane.cxx.

References mrBase, mxCurrentPage, and sd::SlideShow::StartPreview().

Referenced by onPreview().

◆ remove()

void sd::CustomAnimationPane::remove ( CustomAnimationEffectPtr const &  pEffect)

◆ removeListener()

void sd::CustomAnimationPane::removeListener ( )
private

Definition at line 269 of file CustomAnimationPane.cxx.

References sd::ViewShellBase::GetEventMultiplexer(), LINK, and mrBase.

Referenced by ~CustomAnimationPane().

◆ setProperty1Value()

bool sd::CustomAnimationPane::setProperty1Value ( sal_Int32  nType,
const CustomAnimationEffectPtr pEffect,
const css::uno::Any &  rValue 
)
staticprivate

◆ showOptions()

void sd::CustomAnimationPane::showOptions ( const OUString &  sPage = {})
private

◆ updateControls()

void sd::CustomAnimationPane::updateControls ( )
private

◆ updateMotionPathTags()

void sd::CustomAnimationPane::updateMotionPathTags ( )
private

◆ updatePathFromMotionPathTag()

void sd::CustomAnimationPane::updatePathFromMotionPathTag ( const rtl::Reference< MotionPathTag > &  xTag)

Friends And Related Function Documentation

◆ MotionPathTag

friend class MotionPathTag
friend

Definition at line 51 of file CustomAnimationPane.hxx.

Member Data Documentation

◆ gnMotionPathPos

sal_Int32 const sd::CustomAnimationPane::gnMotionPathPos = 3
staticprivate

Definition at line 151 of file CustomAnimationPane.hxx.

Referenced by fillAnimationLB(), and getCreatePathKind().

◆ maIdle

Idle sd::CustomAnimationPane::maIdle
private

Definition at line 144 of file CustomAnimationPane.hxx.

Referenced by initialize().

◆ maLateInitTimer

Timer sd::CustomAnimationPane::maLateInitTimer
private

The CustomAnimationPresets is initialized either on demand or after a short time after the construction of a new object of this class.

This timer is responsible for the later.

Definition at line 168 of file CustomAnimationPane.hxx.

Referenced by initialize(), and ~CustomAnimationPane().

◆ maListSelection

EffectSequence sd::CustomAnimationPane::maListSelection
private

◆ maMotionPathTags

MotionPathTagVector sd::CustomAnimationPane::maMotionPathTags
private

Definition at line 170 of file CustomAnimationPane.hxx.

Referenced by onPreview(), updateMotionPathTags(), and ~CustomAnimationPane().

◆ maSelectionLock

ScopeLock sd::CustomAnimationPane::maSelectionLock
private

Definition at line 172 of file CustomAnimationPane.hxx.

Referenced by initialize(), onSelect(), and onSelectionChanged().

◆ maStrModify

OUString sd::CustomAnimationPane::maStrModify
private

Definition at line 146 of file CustomAnimationPane.hxx.

Referenced by initialize(), and updateControls().

◆ maStrProperty

OUString sd::CustomAnimationPane::maStrProperty
private

Definition at line 147 of file CustomAnimationPane.hxx.

Referenced by initialize(), and updateControls().

◆ maViewSelection

css::uno::Any sd::CustomAnimationPane::maViewSelection
private

Definition at line 157 of file CustomAnimationPane.hxx.

Referenced by onAdd(), onContextMenu(), onSelectionChanged(), and updateControls().

◆ mnCurvePathPos

sal_Int32 sd::CustomAnimationPane::mnCurvePathPos
private

Definition at line 152 of file CustomAnimationPane.hxx.

Referenced by fillAnimationLB(), getCreatePathKind(), and updateControls().

◆ mnFreeformPathPos

sal_Int32 sd::CustomAnimationPane::mnFreeformPathPos
private

Definition at line 154 of file CustomAnimationPane.hxx.

Referenced by fillAnimationLB(), getCreatePathKind(), and updateControls().

◆ mnLastSelectedAnimation

sal_Int32 sd::CustomAnimationPane::mnLastSelectedAnimation
private

Definition at line 149 of file CustomAnimationPane.hxx.

Referenced by fillAnimationLB(), onAdd(), and updateControls().

◆ mnPolygonPathPos

sal_Int32 sd::CustomAnimationPane::mnPolygonPathPos
private

Definition at line 153 of file CustomAnimationPane.hxx.

Referenced by fillAnimationLB(), getCreatePathKind(), and updateControls().

◆ mnPropertyType

sal_Int32 sd::CustomAnimationPane::mnPropertyType
private

Definition at line 150 of file CustomAnimationPane.hxx.

Referenced by updateControls().

◆ mpMainSequence

MainSequencePtr sd::CustomAnimationPane::mpMainSequence
private

◆ mrBase

ViewShellBase& sd::CustomAnimationPane::mrBase
private

◆ mxCBAutoPreview

std::unique_ptr<weld::CheckButton> sd::CustomAnimationPane::mxCBAutoPreview
private

◆ mxCBXDuration

std::unique_ptr<weld::MetricSpinButton> sd::CustomAnimationPane::mxCBXDuration
private

◆ mxCurrentPage

css::uno::Reference< css::drawing::XDrawPage > sd::CustomAnimationPane::mxCurrentPage
private

◆ mxCustomAnimationList

std::unique_ptr<CustomAnimationList> sd::CustomAnimationPane::mxCustomAnimationList
private

◆ mxFTAnimation

std::unique_ptr<weld::Label> sd::CustomAnimationPane::mxFTAnimation
private

Definition at line 121 of file CustomAnimationPane.hxx.

Referenced by onAdd(), updateControls(), and ~CustomAnimationPane().

◆ mxFTCategory

std::unique_ptr<weld::Label> sd::CustomAnimationPane::mxFTCategory
private

Definition at line 127 of file CustomAnimationPane.hxx.

Referenced by onAdd(), updateControls(), and ~CustomAnimationPane().

◆ mxFTDuration

std::unique_ptr<weld::Label> sd::CustomAnimationPane::mxFTDuration
private

Definition at line 137 of file CustomAnimationPane.hxx.

Referenced by onAdd(), updateControls(), and ~CustomAnimationPane().

◆ mxFTEffect

std::unique_ptr<weld::Label> sd::CustomAnimationPane::mxFTEffect
private

Definition at line 129 of file CustomAnimationPane.hxx.

Referenced by initialize(), updateControls(), and ~CustomAnimationPane().

◆ mxFTProperty

std::unique_ptr<weld::Label> sd::CustomAnimationPane::mxFTProperty
private

Definition at line 133 of file CustomAnimationPane.hxx.

Referenced by initialize(), updateControls(), and ~CustomAnimationPane().

◆ mxFTStart

std::unique_ptr<weld::Label> sd::CustomAnimationPane::mxFTStart
private

Definition at line 131 of file CustomAnimationPane.hxx.

Referenced by updateControls(), and ~CustomAnimationPane().

◆ mxFTStartDelay

std::unique_ptr<weld::Label> sd::CustomAnimationPane::mxFTStartDelay
private

Definition at line 139 of file CustomAnimationPane.hxx.

Referenced by updateControls(), and ~CustomAnimationPane().

◆ mxLBAnimation

std::unique_ptr<weld::TreeView> sd::CustomAnimationPane::mxLBAnimation
private

◆ mxLBCategory

std::unique_ptr<weld::ComboBox> sd::CustomAnimationPane::mxLBCategory
private

◆ mxLBStart

std::unique_ptr<weld::ComboBox> sd::CustomAnimationPane::mxLBStart
private

◆ mxLBSubControl

std::unique_ptr<SdPropertySubControl> sd::CustomAnimationPane::mxLBSubControl
private

Definition at line 134 of file CustomAnimationPane.hxx.

Referenced by updateControls(), and ~CustomAnimationPane().

◆ mxMFStartDelay

std::unique_ptr<weld::MetricSpinButton> sd::CustomAnimationPane::mxMFStartDelay
private

Definition at line 140 of file CustomAnimationPane.hxx.

Referenced by initialize(), updateControls(), and ~CustomAnimationPane().

◆ mxPBAddEffect

std::unique_ptr<weld::Button> sd::CustomAnimationPane::mxPBAddEffect
private

◆ mxPBMoveDown

std::unique_ptr<weld::Button> sd::CustomAnimationPane::mxPBMoveDown
private

◆ mxPBMoveUp

std::unique_ptr<weld::Button> sd::CustomAnimationPane::mxPBMoveUp
private

◆ mxPBPlay

std::unique_ptr<weld::Button> sd::CustomAnimationPane::mxPBPlay
private

◆ mxPBPropertyMore

std::unique_ptr<weld::Button> sd::CustomAnimationPane::mxPBPropertyMore
private

◆ mxPBRemoveEffect

std::unique_ptr<weld::Button> sd::CustomAnimationPane::mxPBRemoveEffect
private

◆ mxPlaceholderBox

std::unique_ptr<weld::Container> sd::CustomAnimationPane::mxPlaceholderBox
private

Definition at line 135 of file CustomAnimationPane.hxx.

Referenced by updateControls(), and ~CustomAnimationPane().

◆ mxView

css::uno::Reference< css::drawing::XDrawView > sd::CustomAnimationPane::mxView
private

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