15#include "windowBase.hpp"
56 ksys_colors_table_t _colors;
68 std::vector<ButtonListElement> _Buttons;
70 std::vector<TextListElement> _Texts;
72 std::vector<FormListElement> _Forms;
173 unsigned CreateText(
point coord = {0,0},
point size = {16, 16}, std::string text =
"Text",
unsigned FontSize = 9,
bool UseWindowColors =
true, ksys_color_t color =
OS::sys_color_table.work_text);
196 for(
unsigned i = 0; i < _Buttons.size(); i++)
200 _Buttons[i].btn = btn;
201 _Buttons[i].use =
true;
208 _Buttons.push_back(a);
209 return _Buttons.size();
212 unsigned Window::AddNewTextLabel(UI::text::TextLabel text)
214 for (
unsigned i = 0; i < _Texts.size(); i++)
218 _Texts[i].txt = text;
219 _Texts[i].use =
true;
229 inline unsigned Window::AddNewForm(UI::Form form)
231 for (
unsigned i = 0; i < _Forms.size(); i++)
235 _Forms[i].frm = form;
236 _Forms[i].use =
true;
244 return _Forms.size();
254 _colors = OS::GetSystemColors();
270 _colors = colorTable;
290 _ksys_create_window(coord.x, coord.y, _size.x, _size.y, _title.c_str(), _colors.work_area, _style);
296 _ksys_change_window(coord.x, coord.y, size.x, size.y);
301 _ksys_set_window_title(newTitle.c_str());
313 for(
unsigned i = 0; i < _Buttons.size(); i++)
317 _Buttons[i].btn.render();
320 for(
unsigned i = 0; i < _Texts.size(); i++)
324 _Texts[i].txt.render();
327 for(
unsigned i = 0; i < _Forms.size(); i++)
331 _Forms[i].frm.render();
352 color = _colors.work_button;
353 TextColor = _colors.work_button_text;
356 return AddNewButton(btn);
361 return AddNewButton(btn);
366 _Buttons[id].btn.Deactivate();
367 _Buttons[id].use =
false;
373 color = _colors.work_text;
378 return AddNewTextLabel(t);
383 return AddNewTextLabel(text);
388 _Texts[id].use =
false;
393 return AddNewForm(form);
397 _Forms[id].use =
false;
Класс для работы с текстом
Definition UI.hpp:104
Класс для работы с окном
Definition window.hpp:47
Window(std::string Title="Window", point size=DefaultWindowSize, int style=0x14, ksys_colors_table_t colors=Color::DefaultColorTable, unsigned Margin=0)
Конструктор
Definition window.hpp:247
void EndRedraw()
Закончить перересовку окна
Definition window.hpp:279
void DeleteText(unsigned id)
Удалить текст
Definition window.hpp:386
void DeleteForm(unsigned id)
Удалить форму
Definition window.hpp:395
void ChangeWindow(point coord, point size)
Изменить окно
Definition window.hpp:293
unsigned CreateText(point coord={0, 0}, point size={16, 16}, std::string text="Text", unsigned FontSize=9, bool UseWindowColors=true, ksys_color_t color=OS::sys_color_table.work_text)
Создать текст в окне
Definition window.hpp:369
void StartRedraw()
Начать перересовку окна
Definition window.hpp:273
void SetWindowColors(ksys_colors_table_t colorTable)
Задать стандартные цвета окна
Definition window.hpp:268
void ChangeTilte(std::string newTitle)
Изменить заголовок окна
Definition window.hpp:299
point GetSize()
Получить размер окна
Definition window.hpp:343
unsigned CreateButton(point coord={0, 0}, point size={16, 16}, std::string Text=" ", unsigned margin=UI::DefaultMargin, bool UseWindowColors=true, ksys_color_t color=OS::sys_color_table.work_button, ksys_color_t TextColor=OS::sys_color_table.work_button_text)
Создать кнопку
Definition window.hpp:348
unsigned GetMargin()
Получить рамер отступов в этом окне
Definition window.hpp:338
void DeleteButton(unsigned id)
Удалить кнопку
Definition window.hpp:364
void Render()
Отрисовать окно
Definition window.hpp:308
point GetWindowSize()
Получить размер окна
Definition window.hpp:304
unsigned CreateForm(UI::Form form)
Создать форму
Definition window.hpp:391
void DrawWindow(point coord=mouse::GetMousePositionOnSreen())
Отрисовать окно
Definition window.hpp:288
const ksys_colors_table_t DefaultColorTable
Таблица цветов по умолчанию
Definition windowBase.hpp:14
bool ComparisonColorsTables(ksys_colors_table_t a, ksys_colors_table_t b)
Сравнить две таблица цветов
Definition windowBase.hpp:20
ksys_colors_table_t sys_color_table
Таблица стандартных(системных) цветов
Definition base.hpp:37
point GetMousePositionOnSreen()
Получить позицияю курсора на экране
Definition mouse.hpp:17
const point DefaultWindowCoord
Соординаты окна по умолчанию
Definition windowBase.hpp:39
const point DefaultWindowSize
Размер окна поумолчанию
Definition windowBase.hpp:36
Основное пространство имён
Definition base.hpp:17
Просто точка
Definition base.hpp:22