FTXUI 6.1.9
C++ functional terminal UI.
载入中...
搜索中...
未找到
color_info_palette256.cpp
浏览该文件的文档.
1// 版权所有 2020 Arthur Sonzogni。保留所有权利。
2// 此源代码的使用受 MIT 许可证的约束,该许可证可在 LICENSE 文件中找到。
3#include <ftxui/dom/elements.hpp> // for text, bgcolor, hbox, operator|, Elements, Fit, vbox, Element
4#include <ftxui/screen/color_info.hpp> // for ColorInfo
5#include <ftxui/screen/screen.hpp> // for Full, Screen
6#include <utility> // for move
7#include <vector> // for vector, allocator
8
9#include "ftxui/dom/node.hpp" // for Render
10#include "ftxui/screen/color.hpp" // for Color, Color::Palette256, ftxui
11
12using namespace ftxui;
13#include "./color_info_sorted_2d.ipp" // for ColorInfoSorted2D
14
15int main() {
16 std::vector<std::vector<ColorInfo>> info_columns = ColorInfoSorted2D();
17
18 // 绘制每一列
19 Elements columns_elements;
20 for (auto& column : info_columns) {
21 Elements column_elements;
22 for (auto& it : column) {
23 column_elements.push_back(hbox({
24 text(" ") | bgcolor(Color(Color::Palette256(it.index_256))),
25 text(it.name),
26 }));
27 }
28 columns_elements.push_back(vbox(std::move(column_elements)));
29 }
30 auto document = hbox(std::move(columns_elements));
31
32 auto screen = Screen::Create(Dimension::Full(), Dimension::Fit(document));
33 Render(screen, document);
34
35 screen.Print();
36
37 return 0;
38}
std::vector< std::vector< ftxui::ColorInfo > > ColorInfoSorted2D()
Decorator bgcolor(Color)
使用背景色进行装饰。
Element text(std::wstring text)
显示一段Unicode文本。
void Render(Screen &screen, const Element &element)
在 ftxui::Screen 上显示元素。
Element vbox(Elements)
垂直一个接一个显示元素的容器。
static Screen Create(Dimensions dimension)
创建一个具有给定维度的屏幕。
Color 是一个表示终端用户界面中颜色的类。
#include "ftxui/component/component_base.hpp" // 用于 ComponentBase
Element hbox(Elements)
一个按水平顺序逐一显示元素的容器。
std::vector< Element > Elements