FTXUI 6.1.9 C++ functional terminal UI.

Loading...
Searching...
No Matches
composite_decorator.cpp
Go to the documentation of this file.
1// Copyright 2020 Arthur Sonzogni. All rights reserved.
2// Use of this source code is governed by the MIT license that can be found in
3// the LICENSE file.
4
5#include <utility> // for move
6
7#include "ftxui/dom/elements.hpp" // for Element, filler, operator|, hbox, flex_grow, vbox, xflex_grow, yflex_grow, align_right, center, hcenter, vcenter
8
9 namespace ftxui {
10
11/// @brief Center an element horizontally.
12/// @param child The decorated element.
13/// @return The centered element.
14/// @ingroup dom
15 Element hcenter(Element child) {
16 return hbox(filler(), std::move(child), filler());
17}
18
19/// @brief Center an element vertically.
20/// @param child The decorated element.
21/// @return The centered element.
22/// @ingroup dom
23 Element vcenter(Element child) {
24 return vbox(filler(), std::move(child), filler());
25}
26
27/// @brief Center an element horizontally and vertically.
28/// @param child The decorated element.
29/// @return The centered element.
30/// @ingroup dom
31 Element center(Element child) {
32 return hcenter(vcenter(std::move(child)));
33}
34
35/// @brief Align an element on the right side.
36/// @param child The decorated element.
37/// @return The right aligned element.
38/// @ingroup dom
39 Element align_right(Element child) {
40 return hbox(filler(), std::move(child));
41}
42
43} // namespace ftxui
elements.hpp
ftxui::center
Element center(Element)
Center an element horizontally and vertically.
Definition composite_decorator.cpp:31
ftxui::align_right
Element align_right(Element)
Align an element on the right side.
Definition composite_decorator.cpp:39
ftxui::filler
Element filler()
An element that will take expand proportionally to the space left in a container.
Definition flex.cpp:98
ftxui::vcenter
Element vcenter(Element)
Center an element vertically.
Definition composite_decorator.cpp:23
ftxui::hcenter
Element hcenter(Element)
Center an element horizontally.
Definition composite_decorator.cpp:15
ftxui::vbox
Element vbox(Elements)
A container displaying elements vertically one by one.
Definition vbox.cpp:96
ftxui
The FTXUI ftxui:: namespace.
Definition animation.hpp:10
ftxui::Element
std::shared_ptr< Node > Element
Definition elements.hpp:22
ftxui::hbox
Element hbox(Elements)
A container displaying elements horizontally one by one.
Definition hbox.cpp:94