Description
A Skin is a borrowed render-time visual language. It combines semantic colors with structural chrome while component models retain neither.
Border_Glyphs
type Border_Glyphs is record
Top_Left : Wide_Wide_Character := '+';
Horizontal : Wide_Wide_Character := '-';
Top_Right : Wide_Wide_Character := '+';
Vertical : Wide_Wide_Character := '|';
Bottom_Left : Wide_Wide_Character := '+';
Bottom_Right : Wide_Wide_Character := '+';
end record;
Record fields
- Top_Left
- Horizontal
- Top_Right
- Vertical
- Bottom_Left
- Bottom_Right
Button_Chrome
type Button_Chrome is record
Left_Outer : Wide_Wide_Character := '[';
Left_Inner : Wide_Wide_Character := ' ';
Right_Inner : Wide_Wide_Character := ' ';
Right_Outer : Wide_Wide_Character := ']';
Shadow_X : Natural := 0;
Shadow_Y : Natural := 0;
Shadow : Flyology_TUI.Styles.Style :=
Flyology_TUI.Styles.Default;
Depress : Boolean := False;
end record;
Button bodies retain their four-cell horizontal affordance. A shadow may extend the rendered surface without becoming part of the hit area.
Record fields
- Left_Outer
- Left_Inner
- Right_Inner
- Right_Outer
- Shadow_X
- Shadow_Y
- Shadow
- Depress
Charm_Dark_Skin
Charm_Dark_Skin : constant Skin;
Charm_Default_Skin
Charm_Default_Skin : constant Skin;
Charm_Light_Skin
Charm_Light_Skin : constant Skin;
Choice_Chrome
type Choice_Chrome is record
Check_On : Wide_Wide_Character := 'x';
Check_Mixed : Wide_Wide_Character := '-';
Radio_On : Wide_Wide_Character := 'o';
end record;
Record fields
- Check_On
- Check_Mixed
- Radio_On
Control_Placement
type Control_Placement is (Leading_Control, Trailing_Control);
Enumeration literals
- Leading_Control
- Trailing_Control
Dock_Chrome
type Dock_Chrome is record
Collapse : Wide_Wide_Character := '-';
Expand : Wide_Wide_Character := '+';
Float : Wide_Wide_Character := '^';
Dock : Wide_Wide_Character := 'v';
Drop_Horizontal : Wide_Wide_Character := '-';
Drop_Vertical : Wide_Wide_Character := '|';
end record;
Record fields
- Collapse
- Expand
- Float
- Dock
- Drop_Horizontal
- Drop_Vertical
Frame_Chrome
type Frame_Chrome is record
Border : Border_Glyphs;
Shadow_X : Natural := 0;
Shadow_Y : Natural := 0;
Shadow : Flyology_TUI.Styles.Style :=
Flyology_TUI.Styles.Default;
end record;
Record fields
- Border
- Shadow_X
- Shadow_Y
- Shadow
Label
function Label (Id : Skin_Id) return Wide_Wide_String
Parameters
- Id
Return value
Next
function Next (Id : Skin_Id) return Skin_Id
Parameters
- Id
Return value
Panel_Chrome
type Panel_Chrome is record
Frame : Frame_Chrome;
Title : Title_Placement := Leading_Title;
end record;
Record fields
- Frame
- Title
Resolve
function Resolve (Id : Skin_Id) return Skin
Parameters
- Id
Return value
Scrollbar_Chrome
type Scrollbar_Chrome is record
Left_Arrow : Wide_Wide_Character :=
Wide_Wide_Character'Val (16#25C0#);
Right_Arrow : Wide_Wide_Character :=
Wide_Wide_Character'Val (16#25B6#);
Up_Arrow : Wide_Wide_Character :=
Wide_Wide_Character'Val (16#25B2#);
Down_Arrow : Wide_Wide_Character :=
Wide_Wide_Character'Val (16#25BC#);
Track : Wide_Wide_Character :=
Wide_Wide_Character'Val (16#2591#);
Thumb : Wide_Wide_Character :=
Wide_Wide_Character'Val (16#2588#);
end record;
Record fields
- Left_Arrow
- Right_Arrow
- Up_Arrow
- Down_Arrow
- Track
- Thumb
Skin
type Skin is record
Palette : Flyology_TUI.Themes.Palette;
Desktop : Flyology_TUI.Styles.Style :=
Flyology_TUI.Styles.Default;
Menu_Bar : Flyology_TUI.Styles.Style :=
Flyology_TUI.Styles.Default;
Status_Line : Flyology_TUI.Styles.Style :=
Flyology_TUI.Styles.Default;
Dialog : Flyology_TUI.Styles.Style :=
Flyology_TUI.Styles.Default;
Control : Flyology_TUI.Styles.Style :=
Flyology_TUI.Styles.Default;
Control_Focused : Flyology_TUI.Styles.Style :=
Flyology_TUI.Styles.Default;
Control_Selected : Flyology_TUI.Styles.Style :=
Flyology_TUI.Styles.Default;
Panel : Panel_Chrome;
Window : Window_Chrome;
Button : Button_Chrome;
Choice : Choice_Chrome;
Scrollbar : Scrollbar_Chrome;
Tabs : Tab_Chrome;
Dock : Dock_Chrome;
end record;
Record fields
- Palette
- Desktop
- Menu_Bar
- Status_Line
- Dialog
- Control
- Control_Focused
- Control_Selected
- Panel
- Window
- Button
- Choice
- Scrollbar
- Tabs
- Dock
Skin_Id
type Skin_Id is
(Charm_Default, Charm_Dark, Charm_Light, Turbo_Vision);
A Skin is a borrowed render-time visual language. It combines semantic colors with structural chrome while component models retain neither.
Enumeration literals
- Charm_Default
- Charm_Dark
- Charm_Light
- Turbo_Vision
Tab_Chrome
type Tab_Chrome is record
Normal_Left : Wide_Wide_Character := ' ';
Normal_Right : Wide_Wide_Character := ' ';
Active_Left : Wide_Wide_Character := '[';
Active_Right : Wide_Wide_Character := ']';
Focused_Left : Wide_Wide_Character := '>';
Focused_Right : Wide_Wide_Character := ' ';
Mnemonic_First : Boolean := False;
end record;
Every tab edge occupies one cell, preserving width and hit geometry.
Record fields
- Normal_Left
- Normal_Right
- Active_Left
- Active_Right
- Focused_Left
- Focused_Right
- Mnemonic_First
Title_Placement
type Title_Placement is (Leading_Title, Centered_Title);
Enumeration literals
- Leading_Title
- Centered_Title
Turbo_Vision_Skin
Turbo_Vision_Skin : constant Skin;
Window_Chrome
type Window_Chrome is record
Frame : Frame_Chrome;
Focused_Frame : Frame_Chrome;
Title : Title_Placement := Leading_Title;
Close_Position : Control_Placement := Trailing_Control;
Close_Left : Wide_Wide_Character := ' ';
Close : Wide_Wide_Character := 'x';
Close_Right : Wide_Wide_Character := ' ';
Resize : Wide_Wide_Character := '+';
Active_Controls_Only : Boolean := False;
end record;
Record fields
- Frame
- Focused_Frame
- Title
- Close_Position
- Close_Left
- Close
- Close_Right
- Resize
- Active_Controls_Only