Skip to content

Frame

[Source]

A single-child container that draws a box border around its content. Optionally displays a title in the top border:

┌─ Title ──────────────────┐
│                          │
└──────────────────────────┘

Frame always expands to the maximum size allowed by its parent. The child receives the interior dimensions (width - 2, height - 2).

actor tag Frame is
  CompositeWidget tag

Implements


Constructors

create

[Source]

new tag create(
  p: WidgetParent tag,
  title: String val = "",
  border_color: (Default val | Black val | Red val | 
    Green val | Yellow val | Blue val | 
    Magenta val | Cyan val | White val | 
    BrightBlack val | BrightRed val | BrightGreen val | 
    BrightYellow val | BrightBlue val | BrightMagenta val | 
    BrightCyan val | BrightWhite val | Rainbow val) = reference,
  title_color: (Default val | Black val | Red val | 
    Green val | Yellow val | Blue val | 
    Magenta val | Cyan val | White val | 
    BrightBlack val | BrightRed val | BrightGreen val | 
    BrightYellow val | BrightBlue val | BrightMagenta val | 
    BrightCyan val | BrightWhite val | Rainbow val) = reference)
: Frame tag^

Parameters

Returns


Public Behaviours

resize

[Source]

Update frame size and resize the child to the new interior dimensions.

be resize(
  w: USize val,
  h: USize val)

Parameters


set_child

[Source]

Set the single child widget. If the frame already has a size, resizes the child to the interior dimensions immediately.

be set_child(
  widget: Widget tag)

Parameters


set_title

[Source]

Update the frame title and re-render.

be set_title(
  title: String val)

Parameters


set_border_color

[Source]

Update the border color and re-render.

be set_border_color(
  color: (Default val | Black val | Red val | 
    Green val | Yellow val | Blue val | 
    Magenta val | Cyan val | White val | 
    BrightBlack val | BrightRed val | BrightGreen val | 
    BrightYellow val | BrightBlue val | BrightMagenta val | 
    BrightCyan val | BrightWhite val | Rainbow val))

Parameters


receive_grid

[Source]

be receive_grid(
  widget: Any tag,
  grid: Grid val)

Parameters


trigger_render

[Source]

be trigger_render()

receive_key

[Source]

be receive_key(
  key: KeyEvent val)

Parameters


receive_focus

[Source]

be receive_focus()

receive_blur

[Source]

be receive_blur()

set_debug_bg

[Source]

be set_debug_bg(
  color: (Default val | Black val | Red val | 
    Green val | Yellow val | Blue val | 
    Magenta val | Cyan val | White val | 
    BrightBlack val | BrightRed val | BrightGreen val | 
    BrightYellow val | BrightBlue val | BrightMagenta val | 
    BrightCyan val | BrightWhite val | Rainbow val))

Parameters


Public Functions

state

[Source]

fun ref state()
: WidgetState ref

Returns


render_background

[Source]

Draw the border with optional title.

fun ref render_background()
: Grid val

Returns


render

[Source]

Draw border background, then blit the child grid into the interior.

fun ref render()
: Grid val

Returns


register_child

[Source]

fun ref register_child(
  widget: Widget tag)
: None val

Parameters

Returns


render_and_send

[Source]

fun ref render_and_send()
: None val

Returns