← All compilation units

Flyology_TUI.Components.Forms

Description

Cancelled

function Cancelled (Item : Model) return Boolean
Parameters
Item
Return value

Create

function Create
  (Fields      : Field_Array;
   Input_Width : Positive := 30) return Model
Parameters
Fields
Input_Width
Return value

Cursor_Position

procedure Cursor_Position
  (Item : Model;
   X, Y : out Natural)

Return the active input cursor position relative to Render. Empty forms return (0, 0).

Parameters
Item
X
Y

Field_Array

type Field_Array is array (Positive range <>) of Field_Definition;

Field_Count

function Field_Count (Item : Model) return Natural
Parameters
Item
Return value

Field_Definition

type Field_Definition is record
   Label       : Text.Unbounded_Wide_Wide_String;
   Initial     : Text.Unbounded_Wide_Wide_String;
   Placeholder : Text.Unbounded_Wide_Wide_String;
end record;
Record fields
Label
Initial
Placeholder

Field_Value

function Field_Value (Item : Model; Index : Positive)
   return Wide_Wide_String
Parameters
Item
Index
Return value

Input_Width

function Input_Width (Item : Model) return Natural
Parameters
Item
Return value

Model

type Model is tagged private;

Render

function Render
  (Item                : Model;
   Label_Appearance    : Flyology_TUI.Styles.Style :=
     Flyology_TUI.Styles.Default;
   Input_Appearance    : Flyology_TUI.Styles.Style :=
     Flyology_TUI.Styles.Default;
   Focused_Appearance  : Flyology_TUI.Styles.Style :=
     Flyology_TUI.Styles.Default)
   return Flyology_TUI.Surfaces.Surface
Parameters
Item
Label_Appearance
Input_Appearance
Focused_Appearance
Return value

Render

function Render
  (Item  : Model;
   Theme : Flyology_TUI.Themes.Theme)
   return Flyology_TUI.Surfaces.Surface

Render labels with Muted, inputs with Input, and the active input with Focused.

Parameters
Item
Theme
Return value

Reset_Status

procedure Reset_Status (Item : in out Model)
Parameters
Item

Set_Input_Width

procedure Set_Input_Width
  (Item : in out Model;
   Width : Natural)

Resize every field input atomically. Zero is a valid clipped width.

Parameters
Item
Width

Submitted

function Submitted (Item : Model) return Boolean
Parameters
Item
Return value

Update

procedure Update
  (Item  : in out Model;
   Event : Flyology_TUI.Events.Terminal_Event)

Mouse coordinates are relative to Render. A local left-click selects a field and places its text cursor when the input cells are clicked.

Parameters
Item
Event