mirror of
https://github.com/ArthurSonzogni/FTXUI.git
synced 2025-05-07 18:41:12 +08:00

This commit deserve to be cut into at least 8 sub commit. Sorry, I acknowledge this is bad... Here are the new features: * dom decorator: bold, dim, underlined, inverted. * component mechanism * components * menu * toogle
32 lines
864 B
Markdown
32 lines
864 B
Markdown
#
|
|
* Level 0: terminal output.
|
|
* Level 1: ftxui::Screen
|
|
* Level 2: ftxui::dom::Node
|
|
* Level 3: ftxui::component::Component
|
|
|
|
## Level 0: terminal output.
|
|
The terminal you know, you can append text on it. It is represented by
|
|
std::cout.
|
|
|
|
## Level 1: ftxui::Screen
|
|
A rectangular grid of characters.
|
|
Use Terminal::ToString() to append its content into the console.
|
|
|
|
## Level 2: ftxui::dom::Node
|
|
A hierarchical set of element.
|
|
They handle layout and Render themself on the screen.
|
|
See ftxui/dom/elements.hpp
|
|
|
|
You can make implement your own.
|
|
|
|
## Level 3: ftxui::component::Component
|
|
A hierarchical set of component. A component render itself by producing
|
|
ftxui::dom::Node in Component::Render().
|
|
|
|
Some component can handle events:
|
|
* keyboard
|
|
* mouse
|
|
* terminal event
|
|
|
|
You can make implement your own.
|