diff options
| author | Julian Hurst <julian.hurst@digdash.com> | 2025-03-12 15:07:24 +0100 |
|---|---|---|
| committer | Julian Hurst <julian.hurst@digdash.com> | 2025-03-12 15:07:24 +0100 |
| commit | a8d7b95b05d586f3b65fbf9757fab39c8098aee9 (patch) | |
| tree | bd34e7539f2068f49a13c6c742b47f2db6c13b3e /cmd | |
| parent | 48c5f4a17840b8418cb64f6e1667da86d804ba02 (diff) | |
| download | hare-tui-a8d7b95b05d586f3b65fbf9757fab39c8098aee9.tar.gz | |
Support styling
Diffstat (limited to 'cmd')
| -rw-r--r-- | cmd/list.ha | 6 | ||||
| -rw-r--r-- | cmd/list_nostyle.ha | 16 | ||||
| -rw-r--r-- | cmd/list_strictsz.ha | 10 | ||||
| -rw-r--r-- | cmd/text.ha | 36 |
4 files changed, 62 insertions, 6 deletions
diff --git a/cmd/list.ha b/cmd/list.ha index 8729dd9..0148adb 100644 --- a/cmd/list.ha +++ b/cmd/list.ha @@ -10,7 +10,11 @@ use time; export fn main() void = { const out = tui::init()!; defer io::close(out)!; - let li = list::newlist(out, (1, 1), widget::nosize, "hello", "world")!; + let li = list::newlist(out, (1, 1), void, &widget::style { + border = true, + colorfg = widget::color::REDFG, + colorbg = widget::color::REDBG, + },"hello", "world", "bye", "world")!; let l = layout::newvlayout(&li); l.layout.print(&l); }; diff --git a/cmd/list_nostyle.ha b/cmd/list_nostyle.ha new file mode 100644 index 0000000..4e77955 --- /dev/null +++ b/cmd/list_nostyle.ha @@ -0,0 +1,16 @@ +use tui; +use tui::layout; +use tui::widget; +use tui::widget::list; +use unix::tty; +use io; +use fmt; +use time; + +export fn main() void = { + const out = tui::init()!; + defer io::close(out)!; + let li = list::newlist(out, (1, 1), void, void,"hello", "world", "bye", "world")!; + let l = layout::newvlayout(&li); + l.layout.print(&l); +}; diff --git a/cmd/list_strictsz.ha b/cmd/list_strictsz.ha index 1a7ea1c..13c2808 100644 --- a/cmd/list_strictsz.ha +++ b/cmd/list_strictsz.ha @@ -11,9 +11,13 @@ export fn main() void = { const out = tui::init()!; defer io::close(out)!; let li = list::newlist(out, (1, 1), tty::ttysize { - rows = 2, - columns = 2, - }, "hello", "world")!; + rows = 3, + columns = 4, + }, &widget::style { + border = true, + colorfg = widget::color::BLUEFG, + colorbg = widget::color::BLUEBG, + }, "hello", "world", "bye", "world")!; let l = layout::newvlayout(&li); l.layout.print(&l); }; diff --git a/cmd/text.ha b/cmd/text.ha index 6e6e102..3ec0f2a 100644 --- a/cmd/text.ha +++ b/cmd/text.ha @@ -1,5 +1,6 @@ use tui; use tui::layout; +use tui::widget; use tui::widget::text; use io; use fmt; @@ -8,10 +9,41 @@ use time; export fn main() void = { const out = tui::init()!; defer io::close(out)!; - let txt = text::newtext(out, "hello world", (50, 20)); + let txt = text::newtext(out, "hello world", (50, 20), &widget::style { + border = true, + colorfg = widget::color::REDFG, + colorbg = widget::color::REDBG, + }); let l = layout::newvlayout(&txt); l.layout.print(&l); - time::sleep(5 * time::SECOND); + + time::sleep(1 * time::SECOND); + let st = txt.widget.style as *widget::style; + st.colorfg = widget::color::GREENFG; text::settext(&txt, "bye world"); l.layout.print(&l); + + time::sleep(1 * time::SECOND); + st.colorfg = widget::color::BROWNFG; + l.layout.print(&l); + + time::sleep(1 * time::SECOND); + st.colorfg = widget::color::BLUEFG; + l.layout.print(&l); + + time::sleep(1 * time::SECOND); + st.colorfg = widget::color::MAGENTAFG; + l.layout.print(&l); + + time::sleep(1 * time::SECOND); + st.colorfg = widget::color::CYANFG; + l.layout.print(&l); + + time::sleep(1 * time::SECOND); + st.colorfg = widget::color::WHITEFG; + l.layout.print(&l); + + time::sleep(1 * time::SECOND); + st.colorfg = widget::color::DEFAULTFG; + l.layout.print(&l); }; |
