#include <chrono>
#include <iostream>
#include <string>
#include <thread>
using namespace std::chrono_literals;
auto img1 = []() { return text("img") | border; };
auto img2 = []() {
return vbox({text(
"big"), text(
"image")}) | border; };
std::string reset_position;
for (int i = 0;; ++i) {
auto document =
hflow(
paragraph("¡Hola mundo! Aquí hay una imagen:"), img1(),
paragraph(" Aquí hay un texto "), text("subrayado ") | underlined,
paragraph(" Aquí hay un texto "), text("negrita ") | bold,
paragraph("Hello world! Here is an image:"), img2(),
paragraph(
"Lorem Ipsum es simplemente un texto falso utilizado en la "
"composición y maquetación antes de la impresión. Lorem "
"Ipsum ha sido el texto de relleno estándar de la industria "
"desde el año 1500, cuando un impresor desconocido tomó una "
"galera de tipos y la mezcló de tal manera que logró hacer un "
"libro de muestras tipográficas. No solo sobrevivió 500 años, "
"sino que también se adaptó a la tipografía electrónica, "
"permaneciendo esencialmente sin cambios. Fue popularizado en "
"los años 60 con la publicación de hojas \"Letraset\" que "
"contenían pasajes de Lorem Ipsum, y más recientemente con el "
"software de autoedición, como Aldus PageMaker, que incluye "
"versiones de Lorem Ipsum."),
paragraph(" Aquí hay un texto "), text("tenue ") | dim,
paragraph("¡Hola mundo! Aquí hay una imagen:"), img1(),
paragraph(" Aquí hay un texto "), text("rojo ") | color(Color::Red),
paragraph(" Un spinner "), spinner(6, i / 10)) |
border;
auto screen = Screen::Create(Dimension::Fit(document));
std::cout << reset_position;
reset_position =
screen.ResetPosition();
std::this_thread::sleep_for(0.01s);
}
return 0;
}
Element vbox(Elements children)
Un contenedor que muestra elementos verticalmente uno por uno.
El espacio de nombres ftxui:: de FTXUI.