31 explicit Impl(std::function<
Element()> render)
32 : render_(std::move(render)) {}
33 Element OnRender()
override {
return render_(); }
34 std::function<
Element()> render_;
61 renderer->
Add(std::move(child));
84 explicit Impl(std::function<
Element(
bool)> render)
85 : render_(std::move(render)) {}
88 Element OnRender()
override {
return render_(Focused()) | reflect(box_); }
89 bool Focusable()
const override {
return true; }
90 bool OnEvent(
Event event)
override {
92 if (!CaptureMouse(event)) {
103 std::function<
Element(
bool)> render_;
void Add(Component children)
新增一個子項。 @param child 要附加的子項。
它將自己實作為 ftxui::Element 進行渲染。它透過回應 ftxui::Event 來實現鍵盤導航。
Component Renderer(Component child, std::function< Element()>)
回傳一個新的元件,類似於 |child|,但使用 |render| 作為 Component::Render() 事件。
代表一個事件。它可以是按鍵事件、終端機大小調整,或更多...
std::shared_ptr< Node > Element
return Make< Impl >(option)
std::function< Element(Element)> ElementDecorator
std::function< Component(Component)> ComponentDecorator
std::shared_ptr< ComponentBase > Component