← All compilation units

Flyology_TUI.Components.Syntax_Editors

Description

Advance_Highlighting

procedure Advance_Highlighting
  (Item : in out Model; Line_Budget : Natural)
Parameters
Item
Line_Budget

Appearance

type Appearance is record
   Editor : Flyology_TUI.Components.Text_Areas.Appearance;
   Tokens : Token_Appearance := (others => Flyology_TUI.Styles.Default);
end record;
Record fields
Editor
Tokens

Blur

procedure Blur (Item : in out Model)
Parameters
Item

Can_Redo

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

Can_Undo

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

Clear_Selection

procedure Clear_Selection (Item : in out Model)
Parameters
Item

Create

function Create
  (Max_Code_Points        : Positive;
   Max_Lines              : Positive;
   Max_Undo_Entries       : Positive;
   Max_History_Codepoints : Positive;
   Width                  : Positive := 40;
   Height                 : Positive := 8;
   Placeholder            : Wide_Wide_String := "") return Model
Parameters
Max_Code_Points
Max_Lines
Max_Undo_Entries
Max_History_Codepoints
Width
Height
Placeholder
Return value

Cursor_Offset

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

Cursor_Position

function Cursor_Position
  (Item : Model) return Flyology_TUI.Components.Text_Areas.Position
Parameters
Item
Return value

First_Dirty_Line

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

Focus

procedure Focus (Item : in out Model)
Parameters
Item

Focused

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

From_Theme

function From_Theme
  (Theme : Flyology_TUI.Themes.Theme) return Appearance
Parameters
Theme
Return value

Gutter_Columns

function Gutter_Columns (Item : Model) return Positive
Parameters
Item
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

Height

function Height (Item : Model) return Positive
Parameters
Item
Return value

Highlight_State

type Highlight_State is
  (Highlight_Current,
   Highlight_Dirty,
   Highlight_Capacity_Limited,
   Highlight_Structure_Invalid,
   Highlight_Lexer_Failed);
Enumeration literals
Highlight_Current
Highlight_Dirty
Highlight_Capacity_Limited
Highlight_Structure_Invalid
Highlight_Lexer_Failed

Highlighting

function Highlighting (Item : Model) return Highlight_State
Parameters
Item
Return value

Initial_State

Initial_State : Lexer_State;

Is_Enabled

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

Is_Read_Only

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

Lexer_State

type Lexer_State is private;

Maximum_Tokens_Per_Line

Maximum_Tokens_Per_Line : Positive;

Model

type Model
  (Max_Code_Points        : Positive;
   Max_Lines              : Positive;
   Max_Undo_Entries       : Positive;
   Max_History_Codepoints : Positive) is tagged limited private;

A model owns its text editor and token cache. It is limited so nested editor ownership remains build-in-place.

Record fields
Max_Code_Points
Max_Lines
Max_Undo_Entries
Max_History_Codepoints

Next_Token

procedure Next_Token
(Line          : Wide_Wide_String;
Initial       : Lexer_State;
From          : Natural;
Kind          : out Token_Kind;
First, Last   : out Natural;
Final         : out Lexer_State;
Has_Token     : out Boolean)

Called repeatedly for one line. The first call receives the preceding line's final state (or Initial_State); each later call receives Final from the previous token call. From is the prior token's exclusive end. A no-token call supplies the line's final state.

Parameters
Line
Initial
From
Kind
First
Last
Final
Has_Token

Position_At_Offset

function Position_At_Offset (Item : Model; Offset : Natural)
   return Flyology_TUI.Components.Text_Areas.Position
Parameters
Item
Offset
Return value

Redo

procedure Redo (Item : in out Model)
Parameters
Item

Render

function Render
  (Item : Model; Look : Appearance)
   return Flyology_TUI.Surfaces.Surface
Parameters
Item
Look
Return value

Render

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

Select_All

procedure Select_All (Item : in out Model)
Parameters
Item

Selection_Range

procedure Selection_Range
  (Item : Model; First, Last : out Natural)
Parameters
Item
First
Last

Set_Cursor_Offset

procedure Set_Cursor_Offset (Item : in out Model; Offset : Natural)
Parameters
Item
Offset

Set_Enabled

procedure Set_Enabled (Item : in out Model; Enabled : Boolean)
Parameters
Item
Enabled

Set_Read_Only

procedure Set_Read_Only (Item : in out Model; Read_Only : Boolean)
Parameters
Item
Read_Only

Set_Size

procedure Set_Size (Item : in out Model; Width, Height : Positive)
Parameters
Item
Width
Height

Set_Tab_Width

procedure Set_Tab_Width (Item : in out Model; Width : Positive)
Parameters
Item
Width

Set_Viewport

procedure Set_Viewport
  (Item : in out Model; First_Line : Positive; First_Cell : Natural := 0)
Parameters
Item
First_Line
First_Cell

Set_Wrap

procedure Set_Wrap
  (Item : in out Model;
   Mode : Flyology_TUI.Components.Text_Areas.Wrap_Mode)
Parameters
Item
Mode

Token_Appearance

type Token_Appearance is array (Token_Kind) of Flyology_TUI.Styles.Style;

Token_Kind

type Token_Kind is (<>);

Try_Set_Text

procedure Try_Set_Text
  (Item    : in out Model;
   Value   : Wide_Wide_String;
   Success : out Boolean)
Parameters
Item
Value
Success

Undo

procedure Undo (Item : in out Model)
Parameters
Item

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) return Wide_Wide_String
Parameters
Item
Return value

Viewport_Cell

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

Viewport_Line

function Viewport_Line (Item : Model) return Positive
Parameters
Item
Return value

Visible_Segment

procedure Visible_Segment
  (Item          : Model;
   Row           : Natural;
   Line          : out Positive;
   Segment_First : out Natural;
   Segment_Last  : out Natural;
   Exists        : out Boolean)
Parameters
Item
Row
Line
Segment_First
Segment_Last
Exists

Width

function Width (Item : Model) return Positive
Parameters
Item
Return value