You.i Engine
CYIAnimatingLayoutConfig Class Reference

Detailed Description

A class used to hold per-child layout configuration for CYIAnimatingLayout layouts.

See also
CYIAnimatingLayout

#include <layout/YiAnimatingLayout.h>

Inheritance diagram for CYIAnimatingLayoutConfig:

Public Member Functions

 CYIAnimatingLayoutConfig ()
 
virtual ~CYIAnimatingLayoutConfig ()
 
virtual std::unique_ptr< CYILayoutConfigClone () const override
 
virtual void ConfigureFrom (const IYIPropertiesSource *pSource) override
 
void SetAnimatePosition (bool animatePosition)
 Sets whether position layout animations should be applied to this node. More...
 
bool IsUsingAnimatedPosition () const
 
void SetAnimateSize (bool animateSize)
 Sets whether size position animations should be applied to this node. More...
 
bool IsUsingAnimatedSize () const
 
- Public Member Functions inherited from CYILayoutConfig
 CYILayoutConfig ()
 
virtual ~CYILayoutConfig ()
 
void SetSizeConstraints (const SizeConstraints &sizeConstraints)
 
const SizeConstraintsGetSizeConstraints () const
 
void SetMargin (const Margin &margin)
 
const MarginGetMargin () const
 
void SetLayoutable (bool layoutable)
 
bool IsLayoutable () const
 
void SetItemGravity (const glm::vec3 &itemGravity)
 
void SetItemGravity (Gravity itemGravity)
 
const glm::vec3 & GetItemGravity () const
 
void SetIsBackground (bool background)
 
bool IsBackground () const
 

Protected Attributes

bool m_animatePosition
 
bool m_animateSize
 

Additional Inherited Members

- Public Types inherited from CYILayoutConfig
enum  Gravity {
  Gravity::None,
  Gravity::Center,
  Gravity::Left,
  Gravity::Right,
  Gravity::Top,
  Gravity::Bottom,
  Gravity::Front,
  Gravity::Back,
  Gravity::TopLeft,
  Gravity::TopRight,
  Gravity::BottomLeft,
  Gravity::BottomRight
}
 
typedef CubeOffset Margin
 
- Static Public Member Functions inherited from CYILayoutConfig
static void RemoveSuffixFromNumber (CYIString &inOutNumber, CYIString &outSuffix)
 
static glm::vec3 ReadGravityFrom (CYIStringView key, const IYIPropertiesSource *pSource, const glm::vec3 &defaultGravity)
 
static glm::vec3 GetGravityVectorFor (Gravity gravity)
 

Constructor & Destructor Documentation

◆ CYIAnimatingLayoutConfig()

CYIAnimatingLayoutConfig::CYIAnimatingLayoutConfig ( )

◆ ~CYIAnimatingLayoutConfig()

virtual CYIAnimatingLayoutConfig::~CYIAnimatingLayoutConfig ( )
virtual

Member Function Documentation

◆ Clone()

virtual std::unique_ptr<CYILayoutConfig> CYIAnimatingLayoutConfig::Clone ( ) const
overridevirtual

Creates a duplicate of this layout configuration object. The created type is the dynamic type of this object.

Reimplemented from CYILayoutConfig.

Reimplemented in CYIGridLayoutConfig.

◆ ConfigureFrom()

virtual void CYIAnimatingLayoutConfig::ConfigureFrom ( const IYIPropertiesSource pSource)
overridevirtual

Extracts configuration properties from properties source pSource (typically a scene node) and assigns them to this object.

Note
Subclasses should override this method. Remember to call the parent ConfigureFrom function.
CYILayout instances do not call this function when pSource has no properties.
See also
IYIPropertiesSource::HasProperties()

Reimplemented from CYILayoutConfig.

Reimplemented in CYIGridLayoutConfig.

◆ IsUsingAnimatedPosition()

bool CYIAnimatingLayoutConfig::IsUsingAnimatedPosition ( ) const
inline

◆ IsUsingAnimatedSize()

bool CYIAnimatingLayoutConfig::IsUsingAnimatedSize ( ) const
inline

◆ SetAnimatePosition()

void CYIAnimatingLayoutConfig::SetAnimatePosition ( bool  animatePosition)

Sets whether position layout animations should be applied to this node.

Note
Setting to true has no effect if position animations are not enabled in the layout itself.
See also
CYIAnimatingLayout::SetMovingTime

◆ SetAnimateSize()

void CYIAnimatingLayoutConfig::SetAnimateSize ( bool  animateSize)

Sets whether size position animations should be applied to this node.

Note
Setting to true has no effect if size animations are not enabled in the layout itself.
See also
CYIAnimatingLayout::SetSizingTime

Member Data Documentation

◆ m_animatePosition

bool CYIAnimatingLayoutConfig::m_animatePosition
protected

◆ m_animateSize

bool CYIAnimatingLayoutConfig::m_animateSize
protected

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