Covellite++  Version: 2.3.0 Revision: ??? Platform: x64 Build: 23:13 04.01.2025
Кроссплатформенный фреймворк для разработки приложений на С++
Загрузка...
Поиск...
Не найдено
Layer.hpp
1
2#pragma once
3#include <alicorn\std\string.forward.hpp>
4#include <alicorn\boost\filesystem.forward.hpp>
5#include <Covellite\Events\Events.hpp>
6#include <Covellite\Gui\ILayer.hpp>
7#include <Covellite\Gui\IWindow.hpp>
8
9namespace covellite
10{
11
12namespace gui
13{
14
37class Layer :
39{
40 using Utf8String_t = ::std::string;
41 using DocumentId_t = ::std::string;
42 using ElementId_t = ::std::string;
43
44protected:
46 using Document_t = CovelliteGui::ElementDocument;
47 using DocumentPtr_t = ::std::unique_ptr<Document_t, void(*)(Document_t *)>;
48 using Element_t = CovelliteGui::Element;
49 using Path_t = ::boost::filesystem::path;
50 using String_t = ::alicorn::extension::std::String;
51
52public:
59 class Element final
60 {
61 public:
62 void SetFocus(void);
63 void SetMeaning(const float);
64 void SetMeaning(const String_t &);
65 String_t GetMeaning(void) const;
66 void SetClassStyle(const String_t &);
67
68 private:
69 Element_t * const m_pElement;
70
71 public:
72 // cppcheck-suppress noExplicitConstructor
73 Element(Element_t *);
74 };
75
76public:
77 // Интерфейс ILayer:
78 void Show(void) final;
79 void Hide(void) final;
80
81public:
82 DocumentId_t GetId(void) const;
83 Element GetElement(const ElementId_t &) const;
84 int GetWidth(void) const;
85 int GetHeight(void) const;
86 float EmployFontSize(float);
87
88public:
89 static ::std::string Convert(const Path_t &);
90
91protected:
93
94private:
95 const DocumentPtr_t m_pDocument;
96
97protected:
98 Layer(gui::IWindow &, const Path_t &);
99 Layer(gui::IWindow &, const Path_t &, const ::std::string &);
100};
101
102} // namespace gui
103
104} // namespace covellite
Класс входит в проект Covellite.Events Класс для работы с событиями фреймворка.
Definition Events.hpp:36
Класс входит в проект Covellite.Gui Интерфейсный класс слоя (текущего отображаемого экрана).
Definition ILayer.hpp:26
Класс входит в проект Covellite.Gui Интерфесный класс окна, отображающего элементы GUI.
Definition IWindow.hpp:31
Класс входит в проект Covellite.Gui Класс одного слоя (пользовательского экрана) программы.
Definition Layer.hpp:39
float EmployFontSize(float)
Функция установки базового размера шрифта всего документа.
Definition Layer.cpp:317
Element GetElement(const ElementId_t &) const
Функция получения объекта дочернего элемента.
Definition Layer.cpp:275
DocumentId_t GetId(void) const
Функция получения идентификатора документа.
Definition Layer.cpp:260
void Hide(void) final
Функция скрытия слоя.
Definition Layer.cpp:245
::std::string Convert(const Path_t &)
Функция преобразования пути к файлу в строку библиотеки GUI.
Definition Layer.android.cpp:24
void Show(void) final
Функция активации слоя.
Definition Layer.cpp:236
Класс входит в проект Covellite.Gui Класс одного элемента .rml файла.
Definition Layer.hpp:60