跳转至

cf::ui::core::ICFTheme

Interface for CF UI theme components. More...

#include <theme.h>

Inherited by cf::ui::core::MaterialTheme

Public Functions

Name
virtual ~ICFTheme() =default
Virtual destructor.
ICFColorScheme & color_scheme() const
Gets the color scheme component.
IMotionSpec & motion_spec() const
Gets the motion specification component.
IRadiusScale & radius_scale() const
Gets the radius scale component.
IFontType & font_type() const
Gets the font type component.

Protected Functions

Name
ICFTheme() =default
Default constructor: protected for factory-only creation.

Protected Attributes

Name
std::unique_ptr< ICFColorScheme > color_scheme_
Color scheme component. Ownership: owner.
std::unique_ptr< IMotionSpec > motion_spec_
Motion specification component. Ownership: owner.
std::unique_ptr< IRadiusScale > radius_scale_
Radius scale component. Ownership: owner.
std::unique_ptr< IFontType > font_type_
Font type component. Ownership: owner.

Friends

Name
class ThemeFactory(ThemeFactory )
ThemeFactory has exclusive creation access.

Detailed Description

struct cf::ui::core::ICFTheme;

Interface for CF UI theme components.

Note: Theme instances should be accessed by reference. Only ThemeFactory should create instances.

Warning: Direct construction is not supported; use ThemeFactory instead.

ICFTheme provides access to the core theme components including color schemes, motion specifications, radius scales, and font types. Instances should only be created by ThemeFactory and accessed by reference.

const ICFTheme& theme = ThemeManager::instance().theme("default");
const auto& colors = theme.color_scheme();

Public Functions Documentation

function ~ICFTheme

virtual ~ICFTheme() =default

Virtual destructor.

function color_scheme

inline ICFColorScheme & color_scheme() const

Gets the color scheme component.

Exceptions:

  • None

Return: Reference to the color scheme.

Since: N/A

Note: None

Warning: None

function motion_spec

inline IMotionSpec & motion_spec() const

Gets the motion specification component.

Exceptions:

  • None

Return: Reference to the motion specification.

Since: N/A

Note: None

Warning: None

function radius_scale

inline IRadiusScale & radius_scale() const

Gets the radius scale component.

Exceptions:

  • None

Return: Reference to the radius scale.

Since: N/A

Note: None

Warning: None

function font_type

inline IFontType & font_type() const

Gets the font type component.

Exceptions:

  • None

Return: Reference to the font type.

Since: N/A

Note: None

Warning: None

Protected Functions Documentation

function ICFTheme

ICFTheme() =default

Default constructor: protected for factory-only creation.

Protected Attributes Documentation

variable color_scheme_

std::unique_ptr< ICFColorScheme > color_scheme_;

Color scheme component. Ownership: owner.

variable motion_spec_

std::unique_ptr< IMotionSpec > motion_spec_;

Motion specification component. Ownership: owner.

variable radius_scale_

std::unique_ptr< IRadiusScale > radius_scale_;

Radius scale component. Ownership: owner.

variable font_type_

std::unique_ptr< IFontType > font_type_;

Font type component. Ownership: owner.

Friends

friend ThemeFactory

friend class ThemeFactory(
    ThemeFactory 
);

ThemeFactory has exclusive creation access.


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