17class Reflect :
public Node {
19 Reflect(
Element child, Box& box)
20 : Node(unpack(std::move(child))), reflected_box_(box) {}
22 void ComputeRequirement() final {
24 requirement_ = children_[0]->requirement();
27 void SetBox(Box box)
final {
30 children_[0]->SetBox(box);
45 return std::make_shared<Reflect>(std::move(child), box);
virtual void SetBox(Box box)
Asigna una posición y una dimensión a un elemento para dibujarlo.
virtual void ComputeRequirement()
Calcula cuánto espacio necesita un elemento.
friend void Render(Screen &screen, Node *node, Selection &selection)
void Render(Screen &screen, const Element &element)
Muestra un elemento en un ftxui::Screen.
static auto Intersection(Box a, Box b) -> Box
Box es una estructura que representa un área rectangular en un espacio 2D.
El espacio de nombres ftxui:: de FTXUI.
std::function< Element(Element)> Decorator
std::shared_ptr< Node > Element
Decorator reflect(Box &box)