mirror of
https://github.com/ArthurSonzogni/FTXUI.git
synced 2025-06-25 09:01:11 +08:00
Revert change to button example. (#835)
It was introduced mistakenly by:
f495ce029c
This commit is contained in:
parent
fed24da54e
commit
f81c5d94a5
@ -12,13 +12,40 @@
|
|||||||
|
|
||||||
using namespace ftxui;
|
using namespace ftxui;
|
||||||
|
|
||||||
|
// This is a helper function to create a button with a custom style.
|
||||||
|
// The style is defined by a lambda function that takes an EntryState and
|
||||||
|
// returns an Element.
|
||||||
|
// We are using `center` to center the text inside the button, then `border` to
|
||||||
|
// add a border around the button, and finally `flex` to make the button fill
|
||||||
|
// the available space.
|
||||||
|
ButtonOption Style() {
|
||||||
|
auto option = ButtonOption::Animated();
|
||||||
|
option.transform = [](const EntryState& s) {
|
||||||
|
auto element = text(s.label);
|
||||||
|
if (s.focused) {
|
||||||
|
element |= bold;
|
||||||
|
}
|
||||||
|
return element | center | borderEmpty | flex;
|
||||||
|
};
|
||||||
|
return option;
|
||||||
|
}
|
||||||
|
|
||||||
int main() {
|
int main() {
|
||||||
int value = 50;
|
int value = 50;
|
||||||
|
|
||||||
|
// clang-format off
|
||||||
|
auto btn_dec_01 = Button("-1", [&] { value += 1; }, Style());
|
||||||
|
auto btn_inc_01 = Button("+1", [&] { value -= 1; }, Style());
|
||||||
|
auto btn_dec_10 = Button("-10", [&] { value -= 10; }, Style());
|
||||||
|
auto btn_inc_10 = Button("+10", [&] { value += 10; }, Style());
|
||||||
|
// clang-format on
|
||||||
|
|
||||||
// The tree of components. This defines how to navigate using the keyboard.
|
// The tree of components. This defines how to navigate using the keyboard.
|
||||||
auto buttons = Container::Horizontal({
|
// The selected `row` is shared to get a grid layout.
|
||||||
Button("Decrease", [&] { value--; }),
|
int row = 0;
|
||||||
Button("Increase", [&] { value++; }),
|
auto buttons = Container::Vertical({
|
||||||
|
Container::Horizontal({btn_dec_01, btn_inc_01}, &row) | flex,
|
||||||
|
Container::Horizontal({btn_dec_10, btn_inc_10}, &row) | flex,
|
||||||
});
|
});
|
||||||
|
|
||||||
// Modify the way to render them on screen:
|
// Modify the way to render them on screen:
|
||||||
|
Loading…
Reference in New Issue
Block a user