← All compilation units

Flyology_TUI.Themes

Description

Compact semantic presentation roles. Components borrow a Theme only while rendering; component models never retain it. The record remains intentionally stable so existing exhaustive aggregates keep compiling.

Charm

Charm       : constant Theme;

Charm_Dark

Charm_Dark  : constant Theme;

Charm_Dark_Palette

Charm_Dark_Palette  : constant Palette;

Charm_Light

Charm_Light : constant Theme;

Charm_Light_Palette

Charm_Light_Palette : constant Palette;

Charm_Palette

Charm_Palette       : constant Palette;

Charm keeps content and input at terminal-default colors. Its accent contrast cannot be inferred from an unknown terminal background; applications that know the background should choose Charm_Dark or Charm_Light. All three retain attribute and glyph distinctions after color-profile downsampling.

Default

Default : constant Theme := (others => Flyology_TUI.Styles.Default);

Default_Palette

Default_Palette : constant Palette :=
  (others => Flyology_TUI.Styles.Default);

Palette

type Palette is record
   Content     : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Muted       : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Title       : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Focused     : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Interaction : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Selected    : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Border      : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Input       : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Placeholder : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Error       : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Success     : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Button      : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Button_Focused :
     Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Button_Pressed :
     Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Disabled : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
end record;

A richer render-time vocabulary for controls which distinguish body, navigation, interaction, selection, and button states. Palette is an additive boundary: Theme and every explicit Appearance API remain available, and neither value is retained by component models.

Record fields
Content
Muted
Title
Focused
Interaction
Selected
Border
Input
Placeholder
Error
Success
Button
Button_Focused
Button_Pressed
Disabled

Theme

type Theme is record
   Primary     : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Muted       : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Selected    : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Focused     : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Border      : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Input       : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Placeholder : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Error       : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
   Success     : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
end record;

Compact semantic presentation roles. Components borrow a Theme only while rendering; component models never retain it. The record remains intentionally stable so existing exhaustive aggregates keep compiling.

Record fields
Primary
Muted
Selected
Focused
Border
Input
Placeholder
Error
Success

To_Theme

function To_Theme (Item : Palette) return Theme

Collapse the richer palette into the stable compact theme. Components that accept Palette can preserve the additional control-state roles.

Parameters
Item
Return value