11 class Impl :
public ComponentBase {
13 float scroll_x = 0.1f;
14 float scroll_y = 0.1f;
19 const std::string lorem =
20 "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed "
21 "do eiusmod tempor incididunt ut labore et dolore magna "
22 "aliqua. Ut enim ad minim veniam, quis nostrud exercitation "
23 "ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis "
24 "aute irure dolor in reprehenderit in voluptate velit esse "
25 "cillum dolore eu fugiat nulla pariatur. Excepteur sint "
26 "occaecat cupidatat non proident, sunt in culpa qui officia "
27 "deserunt mollit anim id est laborum.";
29 text(lorem.substr(0, -1)),
text(lorem.substr(5, -1)),
text(
""),
30 text(lorem.substr(10, -1)),
text(lorem.substr(15, -1)),
text(
""),
31 text(lorem.substr(20, -1)),
text(lorem.substr(25, -1)),
text(
""),
32 text(lorem.substr(30, -1)),
text(lorem.substr(35, -1)),
text(
""),
33 text(lorem.substr(40, -1)),
text(lorem.substr(45, -1)),
text(
""),
34 text(lorem.substr(50, -1)),
text(lorem.substr(55, -1)),
text(
""),
35 text(lorem.substr(60, -1)),
text(lorem.substr(65, -1)),
text(
""),
36 text(lorem.substr(70, -1)),
text(lorem.substr(75, -1)),
text(
""),
37 text(lorem.substr(80, -1)),
text(lorem.substr(85, -1)),
text(
""),
38 text(lorem.substr(90, -1)),
text(lorem.substr(95, -1)),
text(
""),
39 text(lorem.substr(100, -1)),
text(lorem.substr(105, -1)),
text(
""),
40 text(lorem.substr(110, -1)),
text(lorem.substr(115, -1)),
text(
""),
41 text(lorem.substr(120, -1)),
text(lorem.substr(125, -1)),
text(
""),
42 text(lorem.substr(130, -1)),
text(lorem.substr(135, -1)),
text(
""),
43 text(lorem.substr(140, -1)),
47 auto scrollable_content =
Renderer(content, [&, content] {
53 option_x.
value = &scroll_x;
56 option_x.increment = 0.1f;
58 option_x.color_active = Color::Blue;
59 option_x.color_inactive = Color::BlueLight;
60 auto scrollbar_x =
Slider(option_x);
63 option_y.
value = &scroll_y;
70 auto scrollbar_y =
Slider(option_y);
72 Add(Container::Vertical({
77 Container::Horizontal({
90 .title =
"First window",
104 auto window_container = Container::Stacked({
109 auto screen = App::Fullscreen();
110 screen.Loop(window_container);
Component Horizontal(Components children, int *selector)
Una lista de componentes, dibujados uno a uno horizontalmente y navegados horizontalmente usando las ...
Component Renderer(Component child, std::function< Element()>)
Devuelve un nuevo Component, similar a |child|, pero usando |render| como el evento Component::Render...
Component Window(WindowOptions option)
Una ventana arrastrable y redimensionable. Para usar varias, deben apilarse usando el componente Cont...
Element text(std::string_view text)
Muestra un fragmento de texto Unicode codificado en UTF8.
Decorator focusPositionRelative(float x, float y)
Utilizado dentro de un frame, esto fuerza que la vista se desplace hacia una posición determinada....
Element flex(Element child)
Hace que un elemento hijo se expanda proporcionalmente al espacio restante en un contenedor.
Element vbox(Elements children)
Un contenedor que muestra elementos verticalmente uno por uno.
El espacio de nombres ftxui:: de FTXUI.
std::shared_ptr< T > Make(Args &&... args)
Component Slider(SliderOption< T > options)
Un control deslizante en cualquier dirección.
std::shared_ptr< ComponentBase > Component