32 explicit Impl(std::function<
Element()> render)
33 : render_(std::move(render)) {}
34 Element OnRender()
override {
return render_(); }
35 std::function<
Element()> render_;
63 renderer->
Add(std::move(child));
87 explicit Impl(std::function<
Element(
bool)> render)
88 : render_(std::move(render)) {}
91 Element OnRender()
override {
return render_(Focused()) | reflect(box_); }
92 bool Focusable()
const override {
return true; }
93 bool OnEvent(
Event event)
override {
95 if (!CaptureMouse(event)) {
106 std::function<
Element(
bool)> render_;
126 return [decorator](
Component component) {
127 return Renderer(component, [component, decorator] {
128 return component->Render() | decorator;
void Add(Component children)
Ajoute un enfant. @param child L'enfant à attacher.
Il implémente son propre rendu en tant que ftxui::Element. Il implémente la navigation au clavier en ...
Component Renderer(Component child, std::function< Element()>)
Renvoie un nouveau composant, similaire à |child|, mais utilisant |render| comme événement Component:...
Représente un événement. Il peut s'agir d'un événement de touche, d'un redimensionnement de terminal,...
Box est une structure qui représente une zone rectangulaire dans un espace 2D.
L'espace de noms FTXUI ftxui::
std::shared_ptr< T > Make(Args &&... args)
std::shared_ptr< Node > Element
std::function< Element(Element)> ElementDecorator
std::function< Component(Component)> ComponentDecorator
std::shared_ptr< ComponentBase > Component