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