Now have a nice panel to hold all the UI panels we'll use later.
This commit is contained in:
parent
baaf56d4de
commit
9bc9c9007f
12 changed files with 123 additions and 83 deletions
39
panel.hpp
Normal file
39
panel.hpp
Normal file
|
@ -0,0 +1,39 @@
|
|||
#pragma once
|
||||
#include <ftxui/dom/node.hpp> // for Render
|
||||
#include <ftxui/component/component.hpp>
|
||||
#include <ftxui/screen/screen.hpp>
|
||||
#include <ftxui/dom/canvas.hpp>
|
||||
#include <ftxui/screen/screen.hpp>
|
||||
#include <ftxui/dom/canvas.hpp>
|
||||
#include <ftxui/screen/screen.hpp>
|
||||
#include <ftxui/dom/canvas.hpp>
|
||||
#include <locale>
|
||||
#include <codecvt>
|
||||
|
||||
using ftxui::Renderer, ftxui::Component, ftxui::Element, ftxui::Screen;
|
||||
|
||||
struct Panel {
|
||||
int x;
|
||||
int y;
|
||||
int width;
|
||||
int height;
|
||||
Component $component;
|
||||
Screen $screen;
|
||||
bool $must_clear = true;
|
||||
std::wstring_convert<std::codecvt_utf8_utf16<wchar_t>> $converter;
|
||||
|
||||
Panel(int width, int height, int x, int y, bool must_clear=true) :
|
||||
x(x),
|
||||
y(y),
|
||||
width(width),
|
||||
height(height),
|
||||
$screen(width, height),
|
||||
$must_clear(must_clear)
|
||||
{};
|
||||
|
||||
void resize(int width, int height);
|
||||
void set_renderer(std::function< Element()> render);
|
||||
Screen &render();
|
||||
std::wstring to_string();
|
||||
Screen &screen();
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue