FTXUI  0.8.1
C++ functional terminal UI.
requirement.hpp
Go to the documentation of this file.
1 #ifndef FTXUI_DOM_REQUIREMENT_HPP
2 #define FTXUI_DOM_REQUIREMENT_HPP
3 
4 #include "ftxui/screen/box.hpp"
5 
6 namespace ftxui {
7 
8 struct Requirement {
9  // The required size to fully draw the element.
10  int min_x = 0;
11  int min_y = 0;
12 
13  // How much flexibility is given to the component.
14  int flex_grow_x = 0;
15  int flex_grow_y = 0;
16  int flex_shrink_x = 0;
17  int flex_shrink_y = 0;
18 
19  // Focus management to support the frame/focus/select element.
20  enum Selection {
21  NORMAL = 0,
22  SELECTED = 1,
23  FOCUSED = 2,
24  };
27 };
28 
29 } // namespace ftxui
30 
31 #endif /* end of include guard: FTXUI_REQUIREMENT_HPP */
32 
33 // Copyright 2020 Arthur Sonzogni. All rights reserved.
34 // Use of this source code is governed by the MIT license that can be found in
35 // the LICENSE file.
ftxui::Requirement::selected_box
Box selected_box
Definition: requirement.hpp:26
ftxui::Requirement::min_x
int min_x
Definition: requirement.hpp:10
ftxui::Requirement::Selection
Selection
Definition: requirement.hpp:20
ftxui::Box
Definition: box.hpp:6
ftxui::Requirement::NORMAL
@ NORMAL
Definition: requirement.hpp:21
ftxui
Definition: captured_mouse.hpp:6
box.hpp
ftxui::Requirement::SELECTED
@ SELECTED
Definition: requirement.hpp:22
ftxui::Requirement
Definition: requirement.hpp:8
ftxui::Requirement::flex_grow_y
int flex_grow_y
Definition: requirement.hpp:15
ftxui::Requirement::selection
Selection selection
Definition: requirement.hpp:25
ftxui::Requirement::min_y
int min_y
Definition: requirement.hpp:11
ftxui::Requirement::flex_shrink_y
int flex_shrink_y
Definition: requirement.hpp:17
ftxui::Requirement::flex_grow_x
int flex_grow_x
Definition: requirement.hpp:14
ftxui::Requirement::flex_shrink_x
int flex_shrink_x
Definition: requirement.hpp:16
ftxui::Requirement::FOCUSED
@ FOCUSED
Definition: requirement.hpp:23