跳转至

cf::ui::core::MaterialMotionScheme

Material Design 3 Motion Scheme with EmbeddedTokenRegistry. More...

#include <cfmaterial_motion.h>

Inherits from cf::ui::core::IMotionSpec

Public Classes

Name
struct MotionPresetsGroup
Motion presets group structure.

Public Functions

Name
MaterialMotionScheme()
~MaterialMotionScheme() override =default
MaterialMotionScheme(constMaterialMotionScheme & ) =delete
MaterialMotionScheme & operator=(constMaterialMotionScheme & ) =delete
MaterialMotionScheme(MaterialMotionScheme && ) =default
MaterialMotionScheme & operator=(MaterialMotionScheme && ) =default
virtual int queryDuration(constchar * name) override
Query a motion duration by name.
virtual int queryEasing(constchar * name) override
Query a motion easing type by name.
virtual int queryDelay(constchar * name) override
Query a motion delay by name.
MotionSpec getMotionSpec(constchar * name)
Get a complete MotionSpec by name.
EmbeddedTokenRegistry & registry()
Access the embedded token registry.
constEmbeddedTokenRegistry & registry() const
Access the embedded token registry (const overload).
MotionPresetsGroup presets() const
Get all motion presets as a group.

Additional inherited members

Public Functions inherited from cf::ui::core::IMotionSpec

Name
virtual ~IMotionSpec() =default

Detailed Description

class cf::ui::core::MaterialMotionScheme;

Material Design 3 Motion Scheme with EmbeddedTokenRegistry.

Exceptions:

  • None

Since: 0.1

Note: None

Warning: None

Implements the complete Material Design 3 motion system with duration and easing specifications. Motion values are stored in an embedded registry for independent scheme instances.

Factory functions are available in the cf::ui::core::material namespace.

#include "material_factory.hpp"

// Create the default motion scheme
auto motionScheme = cf::ui::core::material::motion();

// Query motion by name
int duration = motionScheme.queryDuration("shortEnter");  // 200

Public Functions Documentation

function MaterialMotionScheme

MaterialMotionScheme()

function ~MaterialMotionScheme

~MaterialMotionScheme() override =default

function MaterialMotionScheme

MaterialMotionScheme(
    constMaterialMotionScheme & 
) =delete

function operator=

MaterialMotionScheme & operator=(
    constMaterialMotionScheme & 
) =delete

function MaterialMotionScheme

MaterialMotionScheme(
    MaterialMotionScheme && 
) =default

function operator=

MaterialMotionScheme & operator=(
    MaterialMotionScheme && 
) =default

function queryDuration

virtual int queryDuration(
    constchar * name
) override

Query a motion duration by name.

Parameters:

  • name Motion preset name (e.g., "shortEnter").

Exceptions:

  • None.

Return: Duration in milliseconds.

Since: 0.1

Note: Returns 0 if preset not found.

Warning: None.

Reimplements: cf::ui::core::IMotionSpec::queryDuration

function queryEasing

virtual int queryEasing(
    constchar * name
) override

Query a motion easing type by name.

Parameters:

  • name Motion preset name.

Exceptions:

  • None.

Return: Easing type as int (cf::ui::base::Easing::Type).

Since: 0.1

Note: Returns 0 (Linear) if preset not found.

Warning: None.

Reimplements: cf::ui::core::IMotionSpec::queryEasing

function queryDelay

virtual int queryDelay(
    constchar * name
) override

Query a motion delay by name.

Parameters:

  • name Motion preset name.

Exceptions:

  • None.

Return: Delay in milliseconds (always returns 0 for standard presets).

Since: 0.1

Note: Returns 0 if preset not found.

Warning: None.

Reimplements: cf::ui::core::IMotionSpec::queryDelay

function getMotionSpec

MotionSpec getMotionSpec(
    constchar * name
)

Get a complete MotionSpec by name.

Parameters:

  • name Motion preset name (e.g., "shortEnter").

Exceptions:

  • None.

Return: MotionSpec structure with duration, easing, delay.

Since: 0.1

Note: Returns default MotionSpec (0ms, Linear, 0delay) if not found.

Warning: None.

function registry

inline EmbeddedTokenRegistry & registry()

Access the embedded token registry.

Exceptions:

  • None.

Return: Reference to the EmbeddedTokenRegistry.

Since: 0.1

Note: Provides direct access to internal token storage.

Warning: Modifying tokens directly may affect color scheme behavior.

function registry

inline constEmbeddedTokenRegistry & registry() const

Access the embedded token registry (const overload).

Exceptions:

  • None.

Return: Const reference to the EmbeddedTokenRegistry.

Since: 0.1

Note: Read-only access to internal token storage.

Warning: None.

function presets

inline MotionPresetsGroup presets() const

Get all motion presets as a group.

Return: MotionPresetsGroup containing all predefined motion specs.

Since: 0.1


Updated on 2026-03-09 at 10:14:00 +0000