FTXUI  0.8.1
C++ functional terminal UI.
component.hpp File Reference
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 ftxui
 
 ftxui::Container
 

Functions

template<class T , class... Args>
std::shared_ptr< T > Make (Args &&... args)
 
Component Button (ConstStringRef label, std::function< void()> on_click, Ref< ButtonOption > option)
 Draw a button. Execute a function when clicked. More...
 
Component Checkbox (ConstStringRef label, bool *checked, Ref< CheckboxOption > option)
 Draw checkable element. More...
 
Component Input (StringRef content, ConstStringRef placeholder, Ref< InputOption > option)
 An input box for editing text. More...
 
Component Menu (ConstStringListRef entries, int *selected, Ref< MenuOption > option)
 A list of text. The focused element is selected. More...
 
Component MenuEntry (ConstStringRef label, Ref< MenuEntryOption >={})
 
Component Radiobox (ConstStringListRef entries, int *selected, Ref< RadioboxOption > option)
 A list of element, where only one can be selected. More...
 
Component Toggle (ConstStringListRef entries, int *selected, Ref< ToggleOption > option)
 An horizontal list of elements. The user can navigate through them. More...
 
template<class T >
Component Slider (ConstStringRef label, T *value, T min, T max, T increment)
 An horizontal slider. More...
 
Component ResizableSplitLeft (Component main, Component back, int *main_size)
 An horizontal split in between two components, configurable using the mouse. More...
 
Component ResizableSplitRight (Component main, Component back, int *main_size)
 An horizontal split in between two components, configurable using the mouse. More...
 
Component ResizableSplitTop (Component main, Component back, int *main_size)
 An vertical split in between two components, configurable using the mouse. More...
 
Component ResizableSplitBottom (Component main, Component back, int *main_size)
 An vertical split in between two components, configurable using the mouse. More...
 
Component Renderer (Component child, std::function< Element()> render)
 Return a new Component, similar to |child|, but using |render| as the Component::Render() event. More...
 
Component Renderer (std::function< Element()> render)
 Return a component, using |render| to render its interface. More...
 
Component Renderer (std::function< Element(bool)> render)
 Return a focusable component, using |render| to render its interface. More...
 
Component CatchEvent (Component child, std::function< bool(Event)>)
 
Component Vertical (Components children)
 A list of components, drawn one by one vertically and navigated vertically using up/down arrow key or 'j'/'k' keys. More...
 
Component Vertical (Components children, int *selector)
 A list of components, drawn one by one vertically and navigated vertically using up/down arrow key or 'j'/'k' keys. This is useful for implementing a Menu for instance. More...
 
Component Horizontal (Components children)
 A list of components, drawn one by one horizontally and navigated horizontally using left/right arrow key or 'h'/'l' keys. More...
 
Component Horizontal (Components children, int *selector)
 A list of components, drawn one by one horizontally and navigated horizontally using left/right arrow key or 'h'/'l' keys. More...
 
Component Tab (Components children, int *selector)
 A list of components, where only one is drawn and interacted with at a time. The |selector| gives the index of the selected component. This is useful to implement tabs. More...