ElixirOpentui.View (ElixirOpentui v0.2.0)

Copy Markdown View Source

DSL macros for building ElixirOpentui element trees.

Usage

import ElixirOpentui.View

box direction: :row, gap: 2 do
  text content: "Hello"
  box flex_grow: 1, bg: Color.blue() do
    label content: "World"
  end
end

Each macro expands to ElixirOpentui.Element.new/3 calls, producing a tree of %ElixirOpentui.Element{} structs.

Summary

Functions

Create a ascii_font element.

Create a box element.

Create a button element.

Create a checkbox element.

Create a code element.

Render a user-defined component.

Create a diff element.

Create a frame_buffer element.

Create a input element.

Create a label element.

Create a line_number element.

Create a markdown element.

Create a panel element.

Create a scroll_box element.

Create a select element.

Create a tab_select element.

Create a text element.

Create a textarea element.

Create a view root element (alias for box).

Functions

ascii_font(attrs_or_block \\ [])

(macro)

Create a ascii_font element.

ascii_font(attrs, do_block)

(macro)

box(attrs_or_block \\ [])

(macro)

Create a box element.

box(attrs, do_block)

(macro)

button(attrs_or_block \\ [])

(macro)

Create a button element.

button(attrs, do_block)

(macro)

checkbox(attrs_or_block \\ [])

(macro)

Create a checkbox element.

checkbox(attrs, do_block)

(macro)

code(attrs_or_block \\ [])

(macro)

Create a code element.

code(attrs, do_block)

(macro)

component(module, attrs \\ [])

(macro)

Render a user-defined component.

component MyCounter, id: :counter, initial: 0

diff(attrs_or_block \\ [])

(macro)

Create a diff element.

diff(attrs, do_block)

(macro)

frame_buffer(attrs_or_block \\ [])

(macro)

Create a frame_buffer element.

frame_buffer(attrs, do_block)

(macro)

input(attrs_or_block \\ [])

(macro)

Create a input element.

input(attrs, do_block)

(macro)

label(attrs_or_block \\ [])

(macro)

Create a label element.

label(attrs, do_block)

(macro)

line_number(attrs_or_block \\ [])

(macro)

Create a line_number element.

line_number(attrs, do_block)

(macro)

markdown(attrs_or_block \\ [])

(macro)

Create a markdown element.

markdown(attrs, do_block)

(macro)

panel(attrs_or_block \\ [])

(macro)

Create a panel element.

panel(attrs, do_block)

(macro)

scroll_box(attrs_or_block \\ [])

(macro)

Create a scroll_box element.

scroll_box(attrs, do_block)

(macro)

select(attrs_or_block \\ [])

(macro)

Create a select element.

select(attrs, do_block)

(macro)

tab_select(attrs_or_block \\ [])

(macro)

Create a tab_select element.

tab_select(attrs, do_block)

(macro)

text(attrs_or_block \\ [])

(macro)

Create a text element.

text(attrs, do_block)

(macro)

textarea(attrs_or_block \\ [])

(macro)

Create a textarea element.

textarea(attrs, do_block)

(macro)

view(attrs_or_block \\ [])

(macro)

Create a view root element (alias for box).

view(attrs, do_block)

(macro)