Description
Add_Determinate
procedure Add_Determinate
(Item : in out Model;
Id : Item_Id;
Label : Wide_Wide_String;
Relative_Weight : Weight := 1.0;
Value : Fraction := 0.0;
Work : Work_State := Running)
Parameters
- Item
- Id
- Label
- Relative_Weight
- Value
- Work
Add_Indeterminate
procedure Add_Indeterminate
(Item : in out Model;
Id : Item_Id;
Label : Wide_Wide_String;
Relative_Weight : Weight := 1.0;
Work : Work_State := Running)
Parameters
- Item
- Id
- Label
- Relative_Weight
- Work
Advance
procedure Advance (Item : in out Model; Steps : Positive := 1)
Advance only Running, Indeterminate rows. Applications call this from their own Tick/update policy; the component owns no clock or task.
Parameters
- Item
- Steps
Appearance
type Appearance is record
Label : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
Selected : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
Complete : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
Remaining : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
Indeterminate : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
Pending_State : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
Running_State : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
Paused_State : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
Success_State : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
Failed_State : Flyology_TUI.Styles.Style := Flyology_TUI.Styles.Default;
Cancelled_State : Flyology_TUI.Styles.Style :=
Flyology_TUI.Styles.Default;
end record;
Record fields
- Label
- Selected
- Complete
- Remaining
- Indeterminate
- Pending_State
- Running_State
- Paused_State
- Success_State
- Failed_State
- Cancelled_State
Contains
function Contains (Item : Model; Id : Item_Id) return Boolean
Parameters
- Item
- Id
Return value
Create
function Create (Width : Natural := 40) return Model
Parameters
- Width
Return value
Fraction
subtype Fraction is Long_Float range 0.0 .. 1.0;
From_Theme
function From_Theme
(Theme : Flyology_TUI.Themes.Theme) return Appearance
Parameters
- Theme
Return value
Handle
function Handle
(Item : in out Model;
Event : Flyology_TUI.Events.Terminal_Event)
return Flyology_TUI.Components.Interactions.Update_Result
Parameters
- Item
- Event
Return value
Handle
function Handle
(Item : in out Model;
Event : Flyology_TUI.Mouse.Local_Event)
return Flyology_TUI.Components.Interactions.Update_Result
Parameters
- Item
- Event
Return value
Has_Selection
function Has_Selection (Item : Model) return Boolean
Parameters
- Item
Return value
Is_Empty
function Is_Empty (Item : Model) return Boolean
Parameters
- Item
Return value
Item_Id
type Item_Id is private;
Length
function Length (Item : Model) return Natural
Parameters
- Item
Return value
Maximum_Items
Maximum_Items : Positive;
Mode
function Mode (Item : Model; Id : Item_Id) return Progress_Mode
Parameters
- Item
- Id
Return value
Model
type Model is tagged private;
Progress_Mode
type Progress_Mode is (Determinate, Indeterminate);
Enumeration literals
- Determinate
- Indeterminate
Remove
procedure Remove (Item : in out Model; Id : Item_Id)
Parameters
- Item
- Id
Render
function Render
(Item : Model;
Appearance : Progress_Groups.Appearance := (others => <>))
return Flyology_TUI.Surfaces.Surface
Parameters
- Item
- Appearance
Return value
Render
function Render
(Item : Model;
Theme : Flyology_TUI.Themes.Theme)
return Flyology_TUI.Surfaces.Surface
Parameters
- Item
- Theme
Return value
Render_Segments
function Render_Segments
(Item : Model;
Width : Natural;
Appearance : Progress_Groups.Appearance := (others => <>))
return Flyology_TUI.Surfaces.Surface
Render all positive-weight rows as adjacent segments in one line. Segment widths follow Relative_Weight in insertion order. Remaining cells after flooring go to the largest fractional remainders, with insertion order breaking ties. Determinate segments use their own fraction; Indeterminate segments render Phase, which advances only for Running rows. Succeeded overrides measurement mode and renders its segment completely filled.
Parameters
- Item
- Width
- Appearance
Return value
Render_Segments
function Render_Segments
(Item : Model;
Width : Natural;
Theme : Flyology_TUI.Themes.Theme)
return Flyology_TUI.Surfaces.Surface
Parameters
- Item
- Width
- Theme
Return value
Select_Item
procedure Select_Item (Item : in out Model; Id : Item_Id)
Parameters
- Item
- Id
Selected_Id
function Selected_Id (Item : Model) return Item_Id
Parameters
- Item
Return value
Set_Mode
procedure Set_Mode
(Item : in out Model;
Id : Item_Id;
Mode : Progress_Mode)
Parameters
- Item
- Id
- Mode
Set_Value
procedure Set_Value
(Item : in out Model;
Id : Item_Id;
Value : Fraction)
Parameters
- Item
- Id
- Value
Set_Width
procedure Set_Width (Item : in out Model; Width : Natural)
Change the retained row width without changing entries or selection.
Parameters
- Item
- Width
Set_Work_State
procedure Set_Work_State
(Item : in out Model;
Id : Item_Id;
Work : Work_State)
Parameters
- Item
- Id
- Work
Update
procedure Update
(Item : in out Model;
Event : Flyology_TUI.Events.Terminal_Event)
Parameters
- Item
- Event
Update
procedure Update
(Item : in out Model;
Event : Flyology_TUI.Mouse.Local_Event)
Parameters
- Item
- Event
Value
function Value (Item : Model; Id : Item_Id) return Fraction
Parameters
- Item
- Id
Return value
Weight
subtype Weight is Long_Float range 0.0 .. Long_Float'Last;
Weighted_Total
function Weighted_Total (Item : Model) return Fraction
Weighted mean of positive-weight contributions. Cancelled rows and Running, Paused, or Failed Indeterminate rows are excluded. Succeeded rows contribute 1.0 regardless of mode; Pending Indeterminate rows contribute 0.0; every other Determinate row contributes Value. An empty total is 0.0.
Parameters
- Item
Return value
Width
function Width (Item : Model) return Natural
Parameters
- Item
Return value
Work_State
type Work_State is
(Pending, Running, Paused, Succeeded, Failed, Cancelled);
Enumeration literals
- Pending
- Running
- Paused
- Succeeded
- Failed
- Cancelled
Work_Status
function Work_Status (Item : Model; Id : Item_Id) return Work_State
Parameters
- Item
- Id