|
FTXUI
4.1.0
C++ functional terminal UI.
|
Functions | |
| template<class T , class... Args> | |
| std::shared_ptr< T > | Make (Args &&... args) |
| Component | operator| (Component component, ComponentDecorator decorator) |
| Component | operator| (Component component, ElementDecorator decorator) |
| Component & | operator|= (Component &component, ComponentDecorator decorator) |
| Component & | operator|= (Component &component, ElementDecorator decorator) |
| Component | Button (ConstStringRef label, std::function< void()> on_click, Ref< ButtonOption > option) |
| Draw a button. Execute a function when clicked. | |
| Component | Checkbox (ConstStringRef label, bool *checked, Ref< CheckboxOption > option) |
| Draw checkable element. | |
| Component | Input (StringRef content, ConstStringRef placeholder, Ref< InputOption > option) |
| An input box for editing text. | |
| Component | Menu (ConstStringListRef entries, int *selected, Ref< MenuOption > option) |
| A list of text. The focused element is selected. | |
| Component | MenuEntry (ConstStringRef label, Ref< MenuEntryOption > option) |
| A specific menu entry. They can be put into a Container::Vertical to form a menu. | |
| Component | Dropdown (ConstStringListRef entries, int *selected) |
| Component | Radiobox (ConstStringListRef entries, int *selected, Ref< RadioboxOption > option) |
| A list of element, where only one can be selected. | |
| Component | Toggle (ConstStringListRef entries, int *selected) |
| An horizontal list of elements. The user can navigate through them. | |
| template<typename T > | |
| Component | Slider (SliderOption< T > options) |
| A slider in any direction. | |
| Component | Slider (ConstStringRef label, Ref< int > value, ConstRef< int > min, ConstRef< int > max, ConstRef< int > increment) |
| An horizontal slider. | |
| Component | Slider (ConstStringRef label, Ref< float > value, ConstRef< float > min=0.f, ConstRef< float > max=100.f, ConstRef< float > increment=5.f) |
| Component | Slider (ConstStringRef label, Ref< long > value, ConstRef< long > min=0l, ConstRef< long > max=100l, ConstRef< long > increment=5l) |
| Component | ResizableSplitLeft (Component main, Component back, int *main_size) |
| An horizontal split in between two components, configurable using the mouse. | |
| Component | ResizableSplitRight (Component main, Component back, int *main_size) |
| An horizontal split in between two components, configurable using the mouse. | |
| Component | ResizableSplitTop (Component main, Component back, int *main_size) |
| An vertical split in between two components, configurable using the mouse. | |
| Component | ResizableSplitBottom (Component main, Component back, int *main_size) |
| An vertical split in between two components, configurable using the mouse. | |
| Component | ResizableSplit (ResizableSplitOption options) |
| A split in between two components. | |
| Component | Renderer (Component child, std::function< Element()> render) |
| Return a new Component, similar to |child|, but using |render| as the Component::Render() event. | |
| Component | Renderer (std::function< Element()> render) |
| Return a component, using |render| to render its interface. | |
| Component | Renderer (std::function< Element(bool)> render) |
| Return a focusable component, using |render| to render its interface. | |
| ComponentDecorator | Renderer (ElementDecorator decorator) |
| Decorate a component, by decorating what it renders. | |
| Component | CatchEvent (Component child, std::function< bool(Event)>) |
| ComponentDecorator | CatchEvent (std::function< bool(Event)> on_event) |
| Decorate a component, using |on_event| to catch events. This function must returns true when the event has been handled, false otherwise. | |
| Component | Maybe (Component child, const bool *show) |
| Decorate a component |child|. It is shown only when |show| is true. @params child the compoennt to decorate. @params show a boolean. |child| is shown when |show| is true. | |
| Component | Maybe (Component, std::function< bool()>) |
| ComponentDecorator | Maybe (const bool *show) |
| Decorate a component. It is shown only when |show| is true. @params show a boolean. |child| is shown when |show| is true. | |
| ComponentDecorator | Maybe (std::function< bool()> show) |
| Decorate a component. It is shown only when the |show| function returns true. @params show a function returning whether the decoratorated component should be shown. | |
| Component | Modal (Component main, Component modal, const bool *show_modal) |
| ComponentDecorator | Modal (Component modal, const bool *show_modal) |
| Component | Collapsible (ConstStringRef label, Component child, Ref< bool > show=false) |
| Component | Hoverable (Component component, bool *hover) |
| Wrap a component. Gives the ability to know if it is hovered by the mouse. | |
| Component | Hoverable (Component component, std::function< void()> on_enter, std::function< void()> on_leave) |
| Wrap a component. Gives the ability to know if it is hovered by the mouse. | |
| Component | Hoverable (Component component, std::function< void(bool)> on_change) |
| Wrap a component. Gives the ability to know if it is hovered by the mouse. | |
| ComponentDecorator | Hoverable (bool *hover) |
| Wrap a component. Gives the ability to know if it is hovered by the mouse. | |
| ComponentDecorator | Hoverable (std::function< void()> on_enter, std::function< void()> on_leave) |
| ComponentDecorator | Hoverable (std::function< void(bool)> on_change) |
| Wrap a component. Gives the ability to know if it is hovered by the mouse. | |
| template<class T > | |
| Receiver< T > | MakeReceiver () |
| Element | text (std::wstring text) |
| Display a piece of unicode text. | |
| Element | vtext (std::wstring text) |
| Display a piece unicode text vertically. | |
| Elements | paragraph (std::wstring text) |
| Element | operator| (Element element, Decorator decorator) |
| From an element, apply a decorator. | |
| Element & | operator|= (Element &e, Decorator d) |
| Apply a decorator to an element. | |
| Elements | operator| (Elements elements, Decorator decorator) |
| From a set of element, apply a decorator to every elements. | |
| Decorator | operator| (Decorator a, Decorator b) |
| Compose two decorator into one. | |
| Element | text (std::string text) |
| Display a piece of UTF8 encoded unicode text. | |
| Element | vtext (std::string text) |
| Display a piece of unicode text vertically. | |
| Element | separator () |
| Draw a vertical or horizontal separation in between two other elements. | |
| Element | separatorLight () |
| Draw a vertical or horizontal separation in between two other elements, using the LIGHT style. | |
| Element | separatorDashed () |
| Draw a vertical or horizontal separation in between two other elements, using the DASHED style. | |
| Element | separatorHeavy () |
| Draw a vertical or horizontal separation in between two other elements, using the HEAVY style. | |
| Element | separatorDouble () |
| Draw a vertical or horizontal separation in between two other elements, using the DOUBLE style. | |
| Element | separatorEmpty () |
| Draw a vertical or horizontal separation in between two other elements, using the EMPTY style. | |
| Element | separatorStyled (BorderStyle style) |
| Draw a vertical or horizontal separation in between two other elements. | |
| Element | separator (Pixel pixel) |
| Draw a separator in between two element filled with a given pixel. | |
| Element | separatorCharacter (std::string value) |
| Draw a vertical or horizontal separation in between two other elements. | |
| Element | separatorHSelector (float left, float right, Color unselected_color, Color selected_color) |
| Draw an horizontal bar, with the area in between left/right colored differently. | |
| Element | separatorVSelector (float up, float down, Color unselected_color, Color selected_color) |
| Draw an vertical bar, with the area in between up/downcolored differently. | |
| Element | gauge (float progress) |
| Draw a high definition progress bar. | |
| Element | gaugeLeft (float progress) |
| Draw a high definition progress bar progressing from right to left. | |
| Element | gaugeRight (float progress) |
| Draw a high definition progress bar progressing from left to right. | |
| Element | gaugeUp (float progress) |
| Draw a high definition progress bar progressing from bottom to top. | |
| Element | gaugeDown (float progress) |
| Draw a high definition progress bar progressing from top to bottom. | |
| Element | gaugeDirection (float progress, Direction direction) |
| Draw a high definition progress bar progressing in specified direction. | |
| Element | border (Element child) |
| Draw a border around the element. | |
| Element | borderLight (Element child) |
| Draw a dashed border around the element. | |
| Element | borderDashed (Element child) |
| Draw a light border around the element. | |
| Element | borderHeavy (Element child) |
| Draw a heavy border around the element. | |
| Element | borderDouble (Element child) |
| Draw a double border around the element. | |
| Element | borderRounded (Element child) |
| Draw a rounded border around the element. | |
| Element | borderEmpty (Element child) |
| Draw an empty border around the element. | |
| Decorator | borderStyled (BorderStyle style) |
| Same as border but with different styles. | |
| Decorator | borderStyled (BorderStyle style, Color foreground_color) |
| Same as border but with a foreground color and a different style. | |
| Decorator | borderStyled (Color foreground_color) |
| Same as border but with a foreground color. | |
| Decorator | borderWith (const Pixel &pixel) |
| Same as border but with a constant Pixel around the element. | |
| Element | window (Element title, Element content) |
| Draw window with a title and a border around the element. | |
| Element | spinner (int charset_index, size_t image_index) |
| Useful to represent the effect of time and/or events. This display an ASCII art "video". | |
| Element | paragraph (const std::string &the_text) |
| Return an element drawing the paragraph on multiple lines. | |
| Element | paragraphAlignLeft (const std::string &the_text) |
| Return an element drawing the paragraph on multiple lines, aligned on the left. | |
| Element | paragraphAlignRight (const std::string &the_text) |
| Return an element drawing the paragraph on multiple lines, aligned on the right. | |
| Element | paragraphAlignCenter (const std::string &the_text) |
| Return an element drawing the paragraph on multiple lines, aligned on the center. | |
| Element | paragraphAlignJustify (const std::string &the_text) |
| Return an element drawing the paragraph on multiple lines, aligned using a justified alignment. the center. | |
| Element | graph (GraphFunction graph_function) |
| Draw a graph using a GraphFunction. | |
| Element | emptyElement () |
| Element | canvas (ConstRef< Canvas > canvas) |
| Produce an element from a Canvas, or a reference to a Canvas. | |
| Element | canvas (int width, int height, std::function< void(Canvas &)> fn) |
| Produce an element drawing a canvas of requested size. | |
| Element | canvas (std::function< void(Canvas &)> fn) |
| Produce an element drawing a canvas. | |
| Element | bold (Element child) |
| Use a bold font, for elements with more emphasis. | |
| Element | dim (Element child) |
| Use a light font, for elements with less emphasis. | |
| Element | inverted (Element child) |
| Add a filter that will invert the foreground and the background colors. | |
| Element | underlined (Element child) |
| Make the underlined element to be underlined. | |
| Element | underlinedDouble (Element child) |
| Apply a underlinedDouble to text. | |
| Element | blink (Element child) |
| The text drawn alternates in between visible and hidden. | |
| Element | strikethrough (Element child) |
| Apply a strikethrough to text. | |
| Decorator | color (Color c) |
| Decorate using a foreground color. | |
| Decorator | bgcolor (Color color) |
| Decorate using a background color. | |
| Decorator | color (const LinearGradient &gradient) |
| Decorate using a linear-gradient effect on the foreground color. | |
| Decorator | bgcolor (const LinearGradient &gradient) |
| Decorate using a linear-gradient effect on the background color. | |
| Element | color (Color color, Element child) |
| Set the foreground color of an element. | |
| Element | bgcolor (Color color, Element child) |
| Set the background color of an element. | |
| Element | color (const LinearGradient &gradient, Element child) |
| Set the foreground color of an element with linear-gradient effect. | |
| Element | bgcolor (const LinearGradient &gradient, Element child) |
| Set the background color of an element with linear-gradient effect. | |
| Decorator | focusPosition (int x, int y) |
Used inside a frame, this force the view to be scrolled toward a a given position. The position is expressed in the numbers of cells. | |
| Decorator | focusPositionRelative (float x, float y) |
Used inside a frame, this force the view to be scrolled toward a a given position. The position is expressed in proportion of the requested size. | |
| Element | automerge (Element child) |
| Enable character to be automatically merged with others nearby. | |
| Element | hbox (Elements children) |
| A container displaying elements horizontally one by one. | |
| Element | vbox (Elements children) |
| A container displaying elements vertically one by one. | |
| Element | dbox (Elements children_) |
| Stack several element on top of each other. | |
| Element | flexbox (Elements, FlexboxConfig config=FlexboxConfig()) |
| Element | gridbox (std::vector< Elements > lines) |
| A container displaying a grid of elements. | |
| Element | hflow (Elements) |
| Element | vflow (Elements) |
| Element | flex (Element child) |
| Make a child element to expand proportionnally to the space left in a container. | |
| Element | flex_grow (Element child) |
| Expand if possible. | |
| Element | flex_shrink (Element child) |
| Minimize if needed. | |
| Element | xflex (Element child) |
| Expand/Minimize if possible/needed on the X axis. | |
| Element | xflex_grow (Element child) |
| Expand if possible on the X axis. | |
| Element | xflex_shrink (Element child) |
| Minimize if needed on the X axis. | |
| Element | yflex (Element child) |
| Expand/Minimize if possible/needed on the Y axis. | |
| Element | yflex_grow (Element child) |
| Expand if possible on the Y axis. | |
| Element | yflex_shrink (Element child) |
| Minimize if needed on the Y axis. | |
| Element | notflex (Element child) |
| Make the element not flexible. | |
| Element | filler () |
| An element that will take expand proportionnally to the space left in a container. | |
| Decorator | size (WidthOrHeight direction, Constraint constraint, int value) |
| Apply a constraint on the size of an element. | |
| Element | frame (Element child) |
| Allow an element to be displayed inside a 'virtual' area. It size can be larger than its container. In this case only a smaller portion is displayed. The view is scrollable to make the focused element visible. | |
| Element | xframe (Element) |
| Element | yframe (Element) |
| Element | focus (Element) |
| Element | select (Element) |
| Element | focusCursorBlock (Element) |
| Element | focusCursorBlockBlinking (Element) |
| Element | focusCursorBar (Element) |
| Element | focusCursorBarBlinking (Element) |
| Element | focusCursorUnderline (Element) |
| Element | focusCursorUnderlineBlinking (Element) |
| Element | vscroll_indicator (Element child) |
| Add a filter that will invert the foreground and the background colors. | |
| Decorator | reflect (Box &box) |
| Element | clear_under (Element element) |
| Before drawing |child|, clear the pixels below. This is useful in. | |
| Element | hcenter (Element child) |
| Center an element horizontally. | |
| Element | vcenter (Element child) |
| Center an element vertically. | |
| Element | center (Element child) |
| Center an element horizontally and vertically. | |
| Element | align_right (Element child) |
| Align an element on the right side. | |
| Element | nothing (Element element) |
| A decoration doing absolutely nothing. | |
| void | Render (Screen &screen, const Element &element) |
| Display an element on a ftxui::Screen. | |
| void | Render (Screen &screen, Node *node) |
| Display an element on a ftxui::Screen. | |
| Color | operator""_rgb (unsigned long long int combined) |
| Creates a color from a combined hex RGB representation, e.g. 0x808000_rgb. | |
| ColorInfo | GetColorInfo (Color::Palette256 index) |
| ColorInfo | GetColorInfo (Color::Palette16 index) |
| int | wchar_width (wchar_t) |
| int | wstring_width (const std::wstring &) |
| std::string | to_string (const std::wstring &s) |
| Convert a UTF8 std::string into a std::wstring. | |
| std::wstring | to_wstring (const std::string &s) |
| Convert a std::wstring into a UTF8 std::string. | |
| template<typename T > | |
| std::wstring | to_wstring (T s) |
| int | string_width (const std::string &) |
| std::vector< std::string > | Utf8ToGlyphs (const std::string &input) |
| int | GlyphPosition (const std::string &input, size_t glyph_index, size_t start=0) |
| int | GlyphCount (const std::string &input) |
| std::vector< WordBreakProperty > | Utf8ToWordBreakProperty (const std::string &input) |
| bool | IsWordBreakingCharacter (const std::string &input, size_t glyph_index) |
| std::vector< int > | CellToGlyphIndex (const std::string &input) |
| Component | CatchEvent (Component child, std::function< bool(Event event)> on_event) |
| Return a component, using |on_event| to catch events. This function must returns true when the event has been handled, false otherwise. | |
| template Component | Slider (SliderOption< int8_t >) |
| template Component | Slider (SliderOption< int16_t >) |
| template Component | Slider (SliderOption< int32_t >) |
| template Component | Slider (SliderOption< int64_t >) |
| template Component | Slider (SliderOption< uint8_t >) |
| template Component | Slider (SliderOption< uint16_t >) |
| template Component | Slider (SliderOption< uint32_t >) |
| template Component | Slider (SliderOption< uint64_t >) |
| template Component | Slider (SliderOption< float >) |
| template Component | Slider (SliderOption< double >) |
Enumerations | |
| enum class | Direction { Up = 0 , Down = 1 , Left = 2 , Right = 3 } |
| enum | BorderStyle { LIGHT , DASHED , HEAVY , DOUBLE , ROUNDED , EMPTY } |
| enum | WidthOrHeight { WIDTH , HEIGHT } |
| enum | Constraint { LESS_THAN , EQUAL , GREATER_THAN } |
| enum class | WordBreakProperty { ALetter , CR , Double_Quote , Extend , ExtendNumLet , Format , Hebrew_Letter , Katakana , LF , MidLetter , MidNum , MidNumLet , Newline , Numeric , Regional_Indicator , Single_Quote , WSegSpace , ZWJ } |
Typedefs | |
| using | CapturedMouse = std::unique_ptr<CapturedMouseInterface> |
| using | ComponentDecorator = std::function<Component(Component)> |
| using | ElementDecorator = std::function<Element(Element)> |
| using | Component = std::shared_ptr<ComponentBase> |
| using | Components = std::vector<Component> |
| template<class T > | |
| using | Sender = std::unique_ptr<SenderImpl<T>> |
| template<class T > | |
| using | Receiver = std::unique_ptr<ReceiverImpl<T>> |
| using | Closure = std::function<void()> |
| using | Task = std::variant<Event, Closure, AnimationTask> |
| using | Element = std::shared_ptr<Node> |
| using | Elements = std::vector<Element> |
| using | Decorator = std::function<Element(Element)> |
| using | GraphFunction = std::function<std::vector<int>(int, int)> |
| using | Charset = std::array<std::string, 6> |
| using | Charsets = std::array<Charset, 6> |
Data Structures | |
| struct | AnimatedColorOption |
| Option about a potentially animated color. More... | |
| struct | AnimatedColorsOption |
| class | AnimationTask |
| class | AutoReset |
| Assign a value to a variable, reset its old value when going out of scope. More... | |
| struct | Box |
| struct | ButtonOption |
| Option for the AnimatedButton component. More... | |
| struct | Canvas |
| class | CapturedMouseInterface |
| struct | CheckboxOption |
| Option for the Checkbox component. More... | |
| class | Color |
| A class representing terminal colors. More... | |
| struct | ColorInfo |
| class | ComponentBase |
| It implement rendering itself as ftxui::Element. It implement keyboard navigation by responding to ftxui::Event. More... | |
| class | ConstRef |
| An adapter. Own or reference an immutable object. More... | |
| class | ConstStringListRef |
| An adapter. Reference a list of strings. More... | |
| class | ConstStringRef |
| An adapter. Own or reference a constant string. For convenience, this class convert multiple immutable string toward a shared representation. More... | |
| struct | Dimensions |
| struct | EntryState |
| arguments for |ButtonOption::transform|, |CheckboxOption::transform|, |Radiobox::transform|, |MenuEntryOption::transform|, |MenuOption::transform|. More... | |
| struct | Event |
| Represent an event. It can be key press event, a terminal resize, or more ... More... | |
| struct | FlexboxConfig |
| struct | InputOption |
| Option for the Input component. More... | |
| struct | LinearGradient |
| A class representing the settings for linear-gradient color effect. More... | |
| class | Loop |
| struct | MenuEntryOption |
| Option for the MenuEntry component. More... | |
| struct | MenuOption |
| Option for the Menu component. More... | |
| struct | Mouse |
| A mouse event. It contains the coordinate of the mouse, the button pressed and the modifier (shift, ctrl, meta). More... | |
| class | Node |
| class | NodeDecorator |
| struct | Pixel |
| A unicode character and its associated style. More... | |
| struct | RadioboxOption |
| Option for the Radiobox component. More... | |
| class | ReceiverImpl |
| class | Ref |
| An adapter. Own or reference an mutable object. More... | |
| struct | Requirement |
| struct | ResizableSplitOption |
| class | Screen |
| A rectangular grid of Pixel. More... | |
| class | ScreenInteractive |
| class | SenderImpl |
| struct | SliderOption |
| class | StringRef |
| An adapter. Own or reference a constant string. For convenience, this class convert multiple mutable string toward a shared representation. More... | |
| class | Table |
| class | TableSelection |
| class | TerminalInputParser |
| struct | UnderlineOption |
Namespaces | |
| namespace | animation |
| namespace | box_helper |
| namespace | Container |
| namespace | Dimension |
| Define how the Screen's dimensions should look like. | |
| namespace | flexbox_helper |
| namespace | literals |
| namespace | Terminal |
| namespace | util |
Variables | |
| const std::map< std::string, std::string > | g_uniformize |
| const std::array< ColorInfo, 256 > | palette256 |
| struct ftxui::AnimatedColorsOption |
| class ftxui::AnimationTask |
| struct ftxui::ColorInfo |
| struct ftxui::Dimensions |
| struct ftxui::EntryState |
| struct ftxui::InputOption |
| struct ftxui::MenuEntryOption |
| struct ftxui::ResizableSplitOption |
| struct ftxui::SliderOption |
| using CapturedMouse = std::unique_ptr<CapturedMouseInterface> |
Definition at line 11 of file captured_mouse.hpp.
| using ComponentDecorator = std::function<Component(Component)> |
Definition at line 30 of file component.hpp.
| using ElementDecorator = std::function<Element(Element)> |
Definition at line 31 of file component.hpp.
| typedef std::shared_ptr< ComponentBase > Component = std::shared_ptr<ComponentBase> |
Definition at line 21 of file component_base.hpp.
| using Components = std::vector<Component> |
Definition at line 22 of file component_base.hpp.
| using Sender = std::unique_ptr<SenderImpl<T>> |
Definition at line 44 of file receiver.hpp.
| using Receiver = std::unique_ptr<ReceiverImpl<T>> |
Definition at line 45 of file receiver.hpp.
Definition at line 20 of file elements.hpp.
Definition at line 21 of file elements.hpp.
Definition at line 22 of file elements.hpp.
| using GraphFunction = std::function<std::vector<int>(int, int)> |
Definition at line 23 of file elements.hpp.
| using Charset = std::array<std::string, 6> |
Definition at line 18 of file border.cpp.
Definition at line 19 of file border.cpp.
|
strong |
| Enumerator | |
|---|---|
| Up | |
| Down | |
| Left | |
| Right | |
Definition at line 5 of file direction.hpp.
| enum BorderStyle |
| Enumerator | |
|---|---|
| LIGHT | |
| DASHED | |
| HEAVY | |
| DOUBLE | |
| ROUNDED | |
| EMPTY | |
Definition at line 25 of file elements.hpp.
| enum WidthOrHeight |
| Enumerator | |
|---|---|
| WIDTH | |
| HEIGHT | |
Definition at line 143 of file elements.hpp.
| enum Constraint |
| Enumerator | |
|---|---|
| LESS_THAN | |
| EQUAL | |
| GREATER_THAN | |
Definition at line 144 of file elements.hpp.
|
strong |
| Enumerator | |
|---|---|
| ALetter | |
| CR | |
| Double_Quote | |
| Extend | |
| ExtendNumLet | |
| Format | |
| Hebrew_Letter | |
| Katakana | |
| LF | |
| MidLetter | |
| MidNum | |
| MidNumLet | |
| Newline | |
| Numeric | |
| Regional_Indicator | |
| Single_Quote | |
| WSegSpace | |
| ZWJ | |
Definition at line 31 of file string.hpp.
| std::shared_ptr< T > Make | ( | Args &&... | args | ) |
Definition at line 25 of file component.hpp.
| Component operator| | ( | Component | component, |
| ComponentDecorator | decorator ) |
| Component operator| | ( | Component | component, |
| ElementDecorator | decorator ) |
| Component & operator|= | ( | Component & | component, |
| ComponentDecorator | decorator ) |
| Component & operator|= | ( | Component & | component, |
| ElementDecorator | decorator ) |
| Component Button | ( | ConstStringRef | label, |
| std::function< void()> | on_click, | ||
| Ref< ButtonOption > | option ) |
Draw a button. Execute a function when clicked.
| label | The label of the button. |
| on_click | The action to execute when clicked. |
| option | Additional optional parameters. |
Definition at line 59 of file button.cpp.
| Component Checkbox | ( | ConstStringRef | label, |
| bool * | checked, | ||
| Ref< CheckboxOption > | option ) |
Draw checkable element.
| label | The label of the checkbox. |
| checked | Whether the checkbox is checked or not. |
| option | Additional optional parameters. |
Definition at line 112 of file checkbox.cpp.
| Component Input | ( | StringRef | content, |
| ConstStringRef | placeholder, | ||
| Ref< InputOption > | option ) |
An input box for editing text.
| content | The editable content. |
| placeholder | The text displayed when content is still empty. |
| option | Additional optional parameters. |
| Component Menu | ( | ConstStringListRef | entries, |
| int * | selected, | ||
| Ref< MenuOption > | option ) |
A list of text. The focused element is selected.
| entries | The list of entries in the menu. |
| selected | The index of the currently selected element. |
| option | Additional optional parameters. |
| Component MenuEntry | ( | ConstStringRef | label, |
| Ref< MenuEntryOption > | option ) |
A specific menu entry. They can be put into a Container::Vertical to form a menu.
| label | The text drawn representing this element. |
| option | Additional optional parameters. |
| Component Dropdown | ( | ConstStringListRef | entries, |
| int * | selected ) |
Definition at line 14 of file dropdown.cpp.
| Component Radiobox | ( | ConstStringListRef | entries, |
| int * | selected, | ||
| Ref< RadioboxOption > | option ) |
A list of element, where only one can be selected.
| entries | The list of entries in the list. |
| selected | The index of the currently selected element. |
| option | Additional optional parameters. |
Definition at line 211 of file radiobox.cpp.
| Component Toggle | ( | ConstStringListRef | entries, |
| int * | selected ) |
| Component Slider | ( | SliderOption< T > | options | ) |
A slider in any direction.
| option | The options |
Definition at line 327 of file slider.cpp.
| Component Slider | ( | ConstStringRef | label, |
| Ref< int > | value, | ||
| ConstRef< int > | min, | ||
| ConstRef< int > | max, | ||
| ConstRef< int > | increment ) |
An horizontal slider.
| label | The name of the slider. |
| value | The current value of the slider. |
| min | The minimum value. |
| max | The maximum value. |
| increment | The increment when used by the cursor. |
Definition at line 270 of file slider.cpp.
| Component Slider | ( | ConstStringRef | label, |
| Ref< float > | value, | ||
| ConstRef< float > | min = 0.f, | ||
| ConstRef< float > | max = 100.f, | ||
| ConstRef< float > | increment = 5.f ) |
Definition at line 284 of file slider.cpp.
| Component Slider | ( | ConstStringRef | label, |
| Ref< long > | value, | ||
| ConstRef< long > | min = 0l, | ||
| ConstRef< long > | max = 100l, | ||
| ConstRef< long > | increment = 5l ) |
Definition at line 297 of file slider.cpp.
An horizontal split in between two components, configurable using the mouse.
| main | The main component of size |main_size|, on the left. |
| back | The back component taking the remaining size, on the right. |
| main_size | The size of the |main| component. |
Definition at line 191 of file resizable_split.cpp.
An horizontal split in between two components, configurable using the mouse.
| main | The main component of size |main_size|, on the right. |
| back | The back component taking the remaining size, on the left. |
| main_size | The size of the |main| component. |
Definition at line 225 of file resizable_split.cpp.
An vertical split in between two components, configurable using the mouse.
| main | The main component of size |main_size|, on the top. |
| back | The back component taking the remaining size, on the bottom. |
| main_size | The size of the |main| component. |
Definition at line 259 of file resizable_split.cpp.
An vertical split in between two components, configurable using the mouse.
| main | The main component of size |main_size|, on the bottom. |
| back | The back component taking the remaining size, on the top. |
| main_size | The size of the |main| component. |
Definition at line 293 of file resizable_split.cpp.
| Component ResizableSplit | ( | ResizableSplitOption | options | ) |
A split in between two components.
| options | all the parameters. |
Definition at line 162 of file resizable_split.cpp.
Return a new Component, similar to |child|, but using |render| as the Component::Render() event.
| child | The component to forward events to. |
| render | The function drawing the interface. |
Definition at line 60 of file renderer.cpp.
Return a component, using |render| to render its interface.
| render | The function drawing the interface. |
Definition at line 28 of file renderer.cpp.
Return a focusable component, using |render| to render its interface.
| render | The function drawing the interface, taking a boolean telling whether the component is focused or not. |
Definition at line 83 of file renderer.cpp.
| ComponentDecorator Renderer | ( | ElementDecorator | decorator | ) |
Decorate a component, by decorating what it renders.
| decorator | the function modifying the element it renders. |
Definition at line 124 of file renderer.cpp.
| ComponentDecorator CatchEvent | ( | std::function< bool(Event)> | on_event | ) |
Decorate a component, using |on_event| to catch events. This function must returns true when the event has been handled, false otherwise.
| on_event | The function drawing the interface. |
Definition at line 79 of file catch_event.cpp.
Decorate a component |child|. It is shown only when |show| is true. @params child the compoennt to decorate. @params show a boolean. |child| is shown when |show| is true.
| ComponentDecorator Maybe | ( | const bool * | show | ) |
| ComponentDecorator Maybe | ( | std::function< bool()> | show | ) |
| ComponentDecorator Modal | ( | Component | modal, |
| const bool * | show_modal ) |
| Component Collapsible | ( | ConstStringRef | label, |
| Component | child, | ||
| Ref< bool > | show = false ) |
Wrap a component. Gives the ability to know if it is hovered by the mouse.
| component | The wrapped component. |
| hover | The value to reflect whether the component is hovered or not. |
Definition at line 41 of file hoverable.cpp.
| Component Hoverable | ( | Component | component, |
| std::function< void()> | on_enter, | ||
| std::function< void()> | on_leave ) |
Wrap a component. Gives the ability to know if it is hovered by the mouse.
| component | The wrapped component. |
| hover | The value to reflect whether the component is hovered or not. |
Definition at line 84 of file hoverable.cpp.
Wrap a component. Gives the ability to know if it is hovered by the mouse.
| on_enter | is called when the mouse hover the component. |
| on_leave | is called when the mouse leave the component. |
// NOLINTNEXTLINE ComponentDecorator Hoverable(std::function<void()> on_enter, // NOLINTNEXTLINE std::function<void()> on_leave) { return [on_enter, on_leave](Component component) { return Hoverable(std::move(component), on_enter, on_leave); }; }
/** Wrap a component. Gives the ability to know if it is hovered by the mouse.
| component | the wrapped component. |
| on_change | is called when the mouse enter or leave the component. |
```cpp auto button = Button("exit", screen.ExitLoopClosure()); bool hovered = false; auto button_hoverable = Hoverable(button, ```
Definition at line 186 of file hoverable.cpp.
| ComponentDecorator Hoverable | ( | bool * | hover | ) |
Wrap a component. Gives the ability to know if it is hovered by the mouse.
| hover | The value to reflect whether the component is hovered or not. |
Definition at line 139 of file hoverable.cpp.
| ComponentDecorator Hoverable | ( | std::function< void()> | on_enter, |
| std::function< void()> | on_leave ) |
| ComponentDecorator Hoverable | ( | std::function< void(bool)> | on_change | ) |
Wrap a component. Gives the ability to know if it is hovered by the mouse.
| on_change | is called when the mouse enter or leave the component. |
Definition at line 207 of file hoverable.cpp.
| Receiver< T > MakeReceiver | ( | ) |
Definition at line 131 of file receiver.hpp.
| Element text | ( | std::wstring | text | ) |
| Element vtext | ( | std::wstring | text | ) |
Display a piece unicode text vertically.
| Elements paragraph | ( | std::wstring | text | ) |
From an element, apply a decorator.
Both of these are equivalent:
Compose two decorator into one.
| Element text | ( | std::string | text | ) |
| Element vtext | ( | std::string | text | ) |
Display a piece of unicode text vertically.
| Element separator | ( | ) |
Draw a vertical or horizontal separation in between two other elements.
Add a visual separation in between two elements.
Definition at line 130 of file separator.cpp.
| Element separatorLight | ( | ) |
Draw a vertical or horizontal separation in between two other elements, using the LIGHT style.
Add a visual separation in between two elements.
Definition at line 205 of file separator.cpp.
| Element separatorDashed | ( | ) |
Draw a vertical or horizontal separation in between two other elements, using the DASHED style.
Add a visual separation in between two elements.
Definition at line 242 of file separator.cpp.
| Element separatorHeavy | ( | ) |
Draw a vertical or horizontal separation in between two other elements, using the HEAVY style.
Add a visual separation in between two elements.
Definition at line 279 of file separator.cpp.
| Element separatorDouble | ( | ) |
Draw a vertical or horizontal separation in between two other elements, using the DOUBLE style.
Add a visual separation in between two elements.
Definition at line 316 of file separator.cpp.
| Element separatorEmpty | ( | ) |
Draw a vertical or horizontal separation in between two other elements, using the EMPTY style.
Add a visual separation in between two elements.
Definition at line 353 of file separator.cpp.
| Element separatorStyled | ( | BorderStyle | style | ) |
Draw a vertical or horizontal separation in between two other elements.
| style | the style of the separator. |
Add a visual separation in between two elements.
Definition at line 168 of file separator.cpp.
| Element separatorCharacter | ( | std::string | value | ) |
Draw a vertical or horizontal separation in between two other elements.
| value | the character to fill the separator area. |
Add a visual separation in between two elements.
Definition at line 391 of file separator.cpp.
| Element separatorHSelector | ( | float | left, |
| float | right, | ||
| Color | unselected_color, | ||
| Color | selected_color ) |
Draw an horizontal bar, with the area in between left/right colored differently.
| left | the left limit of the active area. |
| right | the right limit of the active area. |
| selected_color | the color of the selected area. |
| unselected_color | the color of the unselected area. |
Definition at line 438 of file separator.cpp.
Draw an vertical bar, with the area in between up/downcolored differently.
| up | the left limit of the active area. |
| down | the right limit of the active area. |
| selected_color | the color of the selected area. |
| unselected_color | the color of the unselected area. |
Definition at line 508 of file separator.cpp.
| Element gauge | ( | float | progress | ) |
Draw a high definition progress bar.
| progress | The proportion of the area to be filled. Belong to [0,1]. |
A gauge. It can be used to represent a progress bar.
| Element gaugeLeft | ( | float | progress | ) |
Draw a high definition progress bar progressing from right to left.
| progress | The proportion of the area to be filled. Belong to [0,1]. |
A gauge. It can be used to represent a progress bar.
| Element gaugeRight | ( | float | progress | ) |
Draw a high definition progress bar progressing from left to right.
| progress | The proportion of the area to be filled. Belong to [0,1]. |
A gauge. It can be used to represent a progress bar.
| Element gaugeUp | ( | float | progress | ) |
Draw a high definition progress bar progressing from bottom to top.
| progress | The proportion of the area to be filled. Belong to [0,1]. |
A gauge. It can be used to represent a progress bar.
| Element gaugeDown | ( | float | progress | ) |
Draw a high definition progress bar progressing from top to bottom.
| progress | The proportion of the area to be filled. Belong to [0,1]. |
A gauge. It can be used to represent a progress bar.
Draw a border around the element.
Add a border around an element
Definition at line 222 of file border.cpp.
Draw a dashed border around the element.
Add a border around an element
Definition at line 330 of file border.cpp.
Draw a light border around the element.
Add a border around an element
Definition at line 295 of file border.cpp.
Draw a heavy border around the element.
Add a border around an element
Definition at line 365 of file border.cpp.
Draw a double border around the element.
Add a border around an element
Definition at line 400 of file border.cpp.
Draw a rounded border around the element.
Add a border around an element
Definition at line 435 of file border.cpp.
Draw an empty border around the element.
Add a border around an element
Definition at line 470 of file border.cpp.
| Decorator borderStyled | ( | BorderStyle | style | ) |
| Decorator borderStyled | ( | BorderStyle | style, |
| Color | foreground_color ) |
Same as border but with a foreground color and a different style.
Definition at line 257 of file border.cpp.
Same as border but with a foreground color.
Definition at line 247 of file border.cpp.
Same as border but with a constant Pixel around the element.
Definition at line 229 of file border.cpp.
Draw window with a title and a border around the element.
| title | The title of the window. |
| content | The element to be wrapped. |
Definition at line 495 of file border.cpp.
| Element spinner | ( | int | charset_index, |
| size_t | image_index ) |
Useful to represent the effect of time and/or events. This display an ASCII art "video".
| charset_index | The type of "video". |
| image_index | The "frame" of the video. You need to increase this for every "step". |
Definition at line 280 of file spinner.cpp.
| Element paragraph | ( | const std::string & | the_text | ) |
Return an element drawing the paragraph on multiple lines.
Definition at line 25 of file paragraph.cpp.
| Element paragraphAlignLeft | ( | const std::string & | the_text | ) |
Return an element drawing the paragraph on multiple lines, aligned on the left.
Definition at line 33 of file paragraph.cpp.
| Element paragraphAlignRight | ( | const std::string & | the_text | ) |
Return an element drawing the paragraph on multiple lines, aligned on the right.
Definition at line 42 of file paragraph.cpp.
| Element paragraphAlignCenter | ( | const std::string & | the_text | ) |
Return an element drawing the paragraph on multiple lines, aligned on the center.
Definition at line 52 of file paragraph.cpp.
| Element paragraphAlignJustify | ( | const std::string & | the_text | ) |
Return an element drawing the paragraph on multiple lines, aligned using a justified alignment. the center.
Definition at line 63 of file paragraph.cpp.
| Element graph | ( | GraphFunction | graph_function | ) |
| Element emptyElement | ( | ) |
Produce an element from a Canvas, or a reference to a Canvas.
Definition at line 848 of file canvas.cpp.
Produce an element drawing a canvas of requested size.
| width | the width of the canvas. |
| height | the height of the canvas. |
| fn | a function drawing the canvas. |
Definition at line 865 of file canvas.cpp.
Produce an element drawing a canvas.
| fn | a function drawing the canvas. |
Definition at line 895 of file canvas.cpp.
Add a filter that will invert the foreground and the background colors.
Definition at line 29 of file inverted.cpp.
Make the underlined element to be underlined.
Definition at line 28 of file underlined.cpp.
Apply a underlinedDouble to text.
Definition at line 14 of file underlined_double.cpp.
Apply a strikethrough to text.
Definition at line 14 of file strikethrough.cpp.
| Decorator color | ( | const LinearGradient & | gradient | ) |
Decorate using a linear-gradient effect on the foreground color.
| gradient | The gradient effect to be applied on the output element. |
Definition at line 269 of file linear_gradient.cpp.
| Decorator bgcolor | ( | const LinearGradient & | gradient | ) |
Decorate using a linear-gradient effect on the background color.
| gradient | The gradient effect to be applied on the output element. |
Definition at line 284 of file linear_gradient.cpp.
| Element color | ( | const LinearGradient & | gradient, |
| Element | child ) |
Set the foreground color of an element with linear-gradient effect.
| gradient | The gradient effect to be applied on the output element. |
| child | The input element. |
Definition at line 238 of file linear_gradient.cpp.
| Element bgcolor | ( | const LinearGradient & | gradient, |
| Element | child ) |
Set the background color of an element with linear-gradient effect.
| gradient | The gradient effect to be applied on the output element. |
| child | The input element. |
Definition at line 254 of file linear_gradient.cpp.
| Decorator focusPosition | ( | int | x, |
| int | y ) |
Used inside a frame, this force the view to be scrolled toward a a given position. The position is expressed in the numbers of cells.
| Decorator focusPositionRelative | ( | float | x, |
| float | y ) |
Used inside a frame, this force the view to be scrolled toward a a given position. The position is expressed in proportion of the requested size.
For instance:
Enable character to be automatically merged with others nearby.
Definition at line 14 of file automerge.cpp.
| Element flexbox | ( | Elements | , |
| FlexboxConfig | config = FlexboxConfig() ) |
A container displaying a grid of elements.
| lines | A list of lines, each line being a list of elements. |
Output:
Definition at line 178 of file gridbox.cpp.
Make a child element to expand proportionnally to the space left in a container.
| Element filler | ( | ) |
| Decorator size | ( | WidthOrHeight | direction, |
| Constraint | constraint, | ||
| int | value ) |
Add a filter that will invert the foreground and the background colors.
Definition at line 19 of file scroll_indicator.cpp.
Definition at line 39 of file reflect.cpp.
Before drawing |child|, clear the pixels below. This is useful in.
Definition at line 32 of file clear_under.cpp.
Center an element horizontally.
| child | The decorated element. |
Definition at line 12 of file composite_decorator.cpp.
Center an element vertically.
| child | The decorated element. |
Definition at line 20 of file composite_decorator.cpp.
Center an element horizontally and vertically.
| child | The decorated element. |
Definition at line 28 of file composite_decorator.cpp.
Align an element on the right side.
| child | The decorated element. |
Definition at line 36 of file composite_decorator.cpp.
Display an element on a ftxui::Screen.
Display an element on a ftxui::Screen.
| ColorInfo GetColorInfo | ( | Color::Palette256 | index | ) |
Definition at line 269 of file color_info.cpp.
| ColorInfo GetColorInfo | ( | Color::Palette16 | index | ) |
Definition at line 273 of file color_info.cpp.
| int wchar_width | ( | wchar_t | ucs | ) |
Definition at line 1683 of file string.cpp.
| int wstring_width | ( | const std::wstring & | text | ) |
Definition at line 1687 of file string.cpp.
| std::string to_string | ( | const std::wstring & | s | ) |
Convert a UTF8 std::string into a std::wstring.
Definition at line 1899 of file string.cpp.
| std::wstring to_wstring | ( | const std::string & | s | ) |
Convert a std::wstring into a UTF8 std::string.
Definition at line 1971 of file string.cpp.
| std::wstring to_wstring | ( | T | s | ) |
Definition at line 13 of file string.hpp.
| int string_width | ( | const std::string & | input | ) |
Definition at line 1700 of file string.cpp.
| std::vector< std::string > Utf8ToGlyphs | ( | const std::string & | input | ) |
Definition at line 1727 of file string.cpp.
| int GlyphPosition | ( | const std::string & | input, |
| size_t | glyph_index, | ||
| size_t | start = 0 ) |
Definition at line 1770 of file string.cpp.
| int GlyphCount | ( | const std::string & | input | ) |
Definition at line 1839 of file string.cpp.
| std::vector< WordBreakProperty > Utf8ToWordBreakProperty | ( | const std::string & | input | ) |
Definition at line 1867 of file string.cpp.
| bool IsWordBreakingCharacter | ( | const std::string & | input, |
| size_t | glyph_index ) |
| std::vector< int > CellToGlyphIndex | ( | const std::string & | input | ) |
Definition at line 1798 of file string.cpp.
Return a component, using |on_event| to catch events. This function must returns true when the event has been handled, false otherwise.
| child | The wrapped component. |
| on_event | The function drawing the interface. |
Definition at line 53 of file catch_event.cpp.
| template Component Slider | ( | SliderOption< int8_t > | ) |
| template Component Slider | ( | SliderOption< int16_t > | ) |
| template Component Slider | ( | SliderOption< int32_t > | ) |
| template Component Slider | ( | SliderOption< int64_t > | ) |
| template Component Slider | ( | SliderOption< uint8_t > | ) |
| template Component Slider | ( | SliderOption< uint16_t > | ) |
| template Component Slider | ( | SliderOption< uint32_t > | ) |
| template Component Slider | ( | SliderOption< uint64_t > | ) |
| template Component Slider | ( | SliderOption< float > | ) |
| template Component Slider | ( | SliderOption< double > | ) |
| const std::map<std::string, std::string> g_uniformize |
Definition at line 16 of file terminal_input_parser.cpp.
| const std::array<ColorInfo, 256> palette256 |
Definition at line 10 of file color_info.cpp.