Gorgon Game Engine
Generator.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "../UI/Template.h"
4 #include "../Graphics/Color.h"
5 #include "../Graphics/Font.h"
6 #include "../Graphics/Rectangle.h"
7 #include "../Graphics/MaskedObject.h"
8 #include "Registry.h"
9 
10 namespace Gorgon { namespace Widgets {
11 
16  class Generator : public Registry {
17  public:
18  virtual ~Generator() { }
19 
20  Generator(bool activate = true) : Registry(activate) { }
21 
23  virtual UI::Template Button() = 0;
24 
26  virtual UI::Template IconButton(Geometry::Size iconsize = {-1, -1}) = 0;
27 
28 
29  virtual UI::Template Checkbox() = 0;
30 
32 
33  virtual UI::Template RadioButton() = 0;
34 
35 
36  virtual UI::Template Label() = 0;
37 
38  virtual UI::Template ErrorLabel() = 0;
39 
40 
41  virtual UI::Template Panel() = 0;
42 
43  virtual UI::Template TopPanel() = 0;
44 
45  virtual UI::Template LeftPanel() = 0;
46 
47  virtual UI::Template BottomPanel() = 0;
48 
49  virtual UI::Template RightPanel() = 0;
50 
51  virtual UI::Template BlankPanel() = 0;
52 
53 
54  virtual UI::Template Inputbox() = 0;
55 
56 
57  virtual UI::Template Progressbar() = 0;
58 
59  virtual UI::Template HScrollbar() = 0;
60 
61  virtual UI::Template VScrollbar() = 0;
62 
63 
64  virtual UI::Template Layerbox() = 0;
65 
66  virtual UI::Template BlankLayerbox() = 0;
67 
68 
69  virtual UI::Template Listbox() = 0;
70 
71  virtual UI::Template Dropdown() = 0;
72 
73  protected:
74 
76  switch(type) {
77  case Button_Regular:
78  return *new UI::Template(Button());
79  case Button_Icon:
80  return *new UI::Template(IconButton());
81  case Label_Regular:
82  return *new UI::Template(Label());
83  case Label_Error:
84  return *new UI::Template(ErrorLabel());
85  case Checkbox_Regular:
86  return *new UI::Template(Checkbox());
87  case Checkbox_Button:
88  return *new UI::Template(CheckboxButton());
89  case Radio_Regular:
90  return *new UI::Template(RadioButton());
91  case Inputbox_Regular:
92  return *new UI::Template(Inputbox());
93  case Panel_Regular:
94  return *new UI::Template(Panel());
95  case Panel_Blank:
96  return *new UI::Template(BlankPanel());
97  case Panel_Top:
98  return *new UI::Template(TopPanel());
99  case Panel_Left:
100  return *new UI::Template(LeftPanel());
101  case Panel_Bottom:
102  return *new UI::Template(BottomPanel());
103  case Panel_Right:
104  return *new UI::Template(RightPanel());
105  case Progress_Regular:
106  return *new UI::Template(Progressbar());
107  case Layerbox_Regular:
108  return *new UI::Template(Layerbox());
109  case Layerbox_Blank:
110  return *new UI::Template(BlankLayerbox());
111  case Scrollbar_Vertical:
112  return *new UI::Template(VScrollbar());
114  return *new UI::Template(HScrollbar());
115  case Listbox_Regular:
116  return *new UI::Template(Listbox());
117  case Dropdown_Regular:
118  return *new UI::Template(Dropdown());
119  default:
120  return *new UI::Template();
121  }
122  }
123  };
124 
132  class SimpleGenerator : public Generator {
133  public:
134 
136  explicit SimpleGenerator(int fontsize, std::string fontname = "", bool activate = true, float density = 7.5);
137 
141  }
142 
144  void Init(int fontsize = 14, std::string fontname = "");
145 
146  virtual ~SimpleGenerator();
147 
148  virtual UI::Template Button() override;
149 
150  virtual UI::Template IconButton(Geometry::Size iconsize = {-1, -1}) override;
151 
152 
153  virtual UI::Template Checkbox() override;
154 
155  virtual UI::Template CheckboxButton() override;
156 
157  virtual UI::Template RadioButton() override;
158 
159 
160  virtual UI::Template Label() override;
161 
162  virtual UI::Template ErrorLabel() override;
163 
164 
165  virtual UI::Template BlankPanel() override;
166 
167  virtual UI::Template Panel() override;
168 
169  virtual UI::Template TopPanel() override;
170 
171  virtual UI::Template LeftPanel() override;
172 
173  virtual UI::Template RightPanel() override;
174 
175  virtual UI::Template BottomPanel() override;
176 
177 
178  virtual UI::Template Inputbox() override;
179 
180 
181  virtual UI::Template Progressbar() override;
182 
183  virtual UI::Template HScrollbar() override;
184 
185  virtual UI::Template VScrollbar() override;
186 
187 
188 
189  virtual UI::Template BlankLayerbox() override;
190 
191  virtual UI::Template Layerbox() override;
192 
193  virtual UI::Template Listbox() override;
194 
195  virtual UI::Template Dropdown() override;
196 
197 
198  virtual int GetSpacing() const override {
199  return Spacing;
200  }
201 
202  virtual int GetEmSize() const override {
203  return lettervsize.first + lettervsize.second;
204  }
205 
210 
211  Graphics::BitmapRectangleProvider &PanelBorder(int missingedge = 0);
212 
214 
218 
220 
236 
238 
240 
241  int Spacing = 4;
242  int ObjectHeight = 15;
243  int ObjectBorder = 2;
244  float ShapeBorder = 2;
245 
248  void UpdateDimensions();
249 
251  void UpdateBorders(bool smooth = true);
252 
255 
256  struct FocusInfo {
258  int Width = 1;
259  //focus to content spacing
260  int Spacing = 1;
261  } Focus;
262 
263  struct BorderInfo {
264  int Width = 2;
265  int Radius = 0;
266  int Divisions = 1;
270 
271  struct BackgroundInfo {
277 
280 
282 
285 
286  struct ForecolorInfo {
295 
296 
298  int WidgetWidth = 64;
299 
302 
304  int WidgetHeight = 24;
305 
308  float Density = 7.5;
309 
310  private:
311  Graphics::BitmapRectangleProvider *makeborder(Graphics::RGBA border, Graphics::RGBA bg, int missingedge = 0, int borderwidth = -1, int borderradius = -1);
312  Graphics::RectangleProvider *makefocusborder();
313  UI::Template makepanel(int missingedge, bool scrollers);
314 
315  void setupfocus(UI::GraphicsTemplate &focus);
316 
317  Graphics::GlyphRenderer *regularrenderer = nullptr;
320 
321  Graphics::BitmapRectangleProvider *normalborder = nullptr;
322  Graphics::BitmapRectangleProvider *hoverborder = nullptr;
323  Graphics::BitmapRectangleProvider *downborder = nullptr;
324  Graphics::BitmapRectangleProvider *disabledborder = nullptr;
325 
326  Graphics::BitmapRectangleProvider *panelborders[5] = {};
327 
328  Graphics::BitmapRectangleProvider *grooveborder = nullptr;
329 
330  Graphics::BitmapRectangleProvider *normaleditborder = nullptr;
331  Graphics::BitmapRectangleProvider *hovereditborder = nullptr;
332  Graphics::BitmapRectangleProvider *readonlyborder = nullptr;
333 
334  Graphics::BitmapRectangleProvider *normalemptyborder = nullptr;
335 
336  Graphics::BitmapRectangleProvider *normalrbg = nullptr;
337  Graphics::BitmapRectangleProvider *hoverrbg = nullptr;
338  Graphics::BitmapRectangleProvider *downrbg = nullptr;
339  Graphics::BitmapRectangleProvider *disabledrbg = nullptr;
340 
341  Graphics::BitmapRectangleProvider *normalbg = nullptr;
342  Graphics::BitmapRectangleProvider *hoverbg = nullptr;
343  Graphics::BitmapRectangleProvider *downbg = nullptr;
344  Graphics::BitmapRectangleProvider *disabledbg = nullptr;
345  Graphics::BitmapRectangleProvider *normalstraight = nullptr;
346  Graphics::BitmapRectangleProvider *altstraight = nullptr;
347  Graphics::BitmapRectangleProvider *hoverstraight = nullptr;
348  Graphics::BitmapRectangleProvider *downstraight = nullptr;
349  Graphics::BitmapRectangleProvider *disabledstraight = nullptr;
350  Graphics::BitmapRectangleProvider *groovebg = nullptr;
351  Graphics::BitmapRectangleProvider *objectshape = nullptr;
352  Graphics::MaskedObjectProvider *innerobjectshape = nullptr;
353 
354  Graphics::RectangleProvider *focusborder = nullptr;
355 
356  UI::Template listbox_listitem;
357 
358  std::pair<int, int> lettervsize, asciivsize;
359  };
360 
361 }}
Gorgon::Widgets::SimpleGenerator::BottomPanel
virtual UI::Template BottomPanel() override
Definition: Generator.cpp:1318
Gorgon::Widgets::Generator::~Generator
virtual ~Generator()
Definition: Generator.h:18
Gorgon::Widgets::Generator
Generators create templates for widgets.
Definition: Generator.h:16
Gorgon::Widgets::SimpleGenerator::DownBG
Graphics::BitmapRectangleProvider & DownBG()
Definition: Generator.cpp:269
Gorgon::Widgets::SimpleGenerator::HoverBorder
Graphics::BitmapRectangleProvider & HoverBorder()
Definition: Generator.cpp:178
Gorgon::Widgets::SimpleGenerator::Inputbox
virtual UI::Template Inputbox() override
Definition: Generator.cpp:1322
Gorgon::Widgets::SimpleGenerator::BorderInfo::Width
int Width
Definition: Generator.h:264
Gorgon::Widgets::SimpleGenerator::DownBorder
Graphics::BitmapRectangleProvider & DownBorder()
Definition: Generator.cpp:188
Gorgon::Graphics::RGBA
This class represents a color information.
Definition: Color.h:91
Gorgon::Graphics::Color::Crimson
constexpr RGBA Crimson
Definition: Color.h:717
Gorgon::Widgets::SimpleGenerator::Label
virtual UI::Template Label() override
Definition: Generator.cpp:1064
Gorgon::Widgets::SimpleGenerator::ForecolorInfo::Disabled
Graphics::RGBA Disabled
Definition: Generator.h:288
Gorgon::Widgets::SimpleGenerator::HoverEditBorder
Graphics::BitmapRectangleProvider & HoverEditBorder()
Definition: Generator.cpp:230
Gorgon::Widgets::SimpleGenerator::BackgroundInfo::Groove
Graphics::RGBA Groove
Definition: Generator.h:281
Gorgon::Widgets::SimpleGenerator
This class generates very simple templates.
Definition: Generator.h:132
Gorgon::Widgets::SimpleGenerator::BackgroundInfo
Definition: Generator.h:271
Gorgon::Widgets::SimpleGenerator::HoverStraightBG
Graphics::BitmapRectangleProvider & HoverStraightBG()
Definition: Generator.cpp:306
Gorgon::Widgets::Generator::ErrorLabel
virtual UI::Template ErrorLabel()=0
Gorgon::Widgets::SimpleGenerator::Progressbar
virtual UI::Template Progressbar() override
Definition: Generator.cpp:1442
Gorgon::Widgets::SimpleGenerator::BackgroundInfo::Selected
Graphics::RGBA Selected
Definition: Generator.h:283
Gorgon::Widgets::Registry::Listbox_Regular
@ Listbox_Regular
Definition: Registry.h:47
Gorgon::Widgets::Registry::Button_Regular
@ Button_Regular
Definition: Registry.h:19
Gorgon::Widgets::SimpleGenerator::NormalBG
Graphics::BitmapRectangleProvider & NormalBG()
Definition: Generator.cpp:252
Gorgon::Widgets::SimpleGenerator::AltStraightBG
Graphics::BitmapRectangleProvider & AltStraightBG()
Definition: Generator.cpp:296
Gorgon::Widgets::SimpleGenerator::HoverRBG
Graphics::BitmapRectangleProvider & HoverRBG()
Definition: Generator.cpp:343
Gorgon::Widgets::SimpleGenerator::CheckboxButton
virtual UI::Template CheckboxButton() override
Definition: Generator.cpp:872
Gorgon::Widgets::Panel
Definition: Panel.h:12
Gorgon::Widgets::SimpleGenerator::NormalEmptyBorder
Graphics::BitmapRectangleProvider & NormalEmptyBorder()
Definition: Generator.cpp:411
Gorgon::Widgets::SimpleGenerator::BlankLayerbox
virtual UI::Template BlankLayerbox() override
Definition: Generator.cpp:1476
Gorgon::UI::Template
This class stores visual information about a widget template.
Definition: Template.h:392
Gorgon::Widgets::SimpleGenerator::IconButton
virtual UI::Template IconButton(Geometry::Size iconsize={-1, -1}) override
Generates a button template with the given default size.
Definition: Generator.cpp:648
Gorgon::Widgets::SimpleGenerator::ErrorLabel
virtual UI::Template ErrorLabel() override
Definition: Generator.cpp:1098
Gorgon::Widgets::Registry::Label_Error
@ Label_Error
Definition: Registry.h:23
Gorgon::Widgets::Generator::Progressbar
virtual UI::Template Progressbar()=0
Gorgon::Widgets::Registry::Checkbox_Regular
@ Checkbox_Regular
Definition: Registry.h:25
Gorgon::Widgets::SimpleGenerator::ObjectHeight
int ObjectHeight
Definition: Generator.h:242
Gorgon::Widgets::Generator::CheckboxButton
virtual UI::Template CheckboxButton()=0
Gorgon::Graphics::Color::White
constexpr RGBA White
Definition: Color.h:731
Gorgon::Widgets::SimpleGenerator::PanelBorder
Graphics::BitmapRectangleProvider & PanelBorder(int missingedge=0)
Definition: Generator.cpp:209
Gorgon::Widgets::Registry::Button_Icon
@ Button_Icon
Definition: Registry.h:20
Gorgon::Widgets::Generator::VScrollbar
virtual UI::Template VScrollbar()=0
Gorgon::Widgets::Generator::IconButton
virtual UI::Template IconButton(Geometry::Size iconsize={-1, -1})=0
Generates a button template with the given default size.
Gorgon::Widgets::SimpleGenerator::NormalRBG
Graphics::BitmapRectangleProvider & NormalRBG()
Definition: Generator.cpp:336
Gorgon::Widgets::SimpleGenerator::Init
void Init(int fontsize=14, std::string fontname="")
Initializes the generator.
Definition: Generator.cpp:30
Gorgon::Graphics::Color::Black
constexpr RGBA Black
Definition: Color.h:653
Gorgon::Widgets::SimpleGenerator::DisabledRBG
Graphics::BitmapRectangleProvider & DisabledRBG()
Definition: Generator.cpp:363
Gorgon::Widgets::SimpleGenerator::BackgroundInfo::Regular
Graphics::RGBA Regular
Definition: Generator.h:272
Gorgon::Widgets::SimpleGenerator::ForecolorInfo::Error
Graphics::RGBA Error
Definition: Generator.h:291
Gorgon::Widgets::SimpleGenerator::UpdateDimensions
void UpdateDimensions()
This function will update default widget dimensions.
Definition: Generator.cpp:132
Gorgon::Graphics::GlyphRenderer
Should be implemented by the systems aimed to render fonts on the screen.
Definition: Font.h:67
Gorgon::Widgets::Generator::Dropdown
virtual UI::Template Dropdown()=0
Gorgon::Widgets::Registry::Inputbox_Regular
@ Inputbox_Regular
Definition: Registry.h:30
Gorgon::Graphics::Color::DarkGrey
constexpr RGBA DarkGrey
Definition: Color.h:704
Gorgon::Widgets::SimpleGenerator::GrooveBorder
Graphics::BitmapRectangleProvider & GrooveBorder()
Definition: Generator.cpp:216
Gorgon::Widgets::Registry::Dropdown_Regular
@ Dropdown_Regular
Definition: Registry.h:49
Gorgon::Widgets::SimpleGenerator::Listbox
virtual UI::Template Listbox() override
Definition: Generator.cpp:1598
Gorgon::Graphics::Color::Charcoal
constexpr RGBA Charcoal
Definition: Color.h:797
Gorgon::Widgets::SimpleGenerator::RadioButton
virtual UI::Template RadioButton() override
Definition: Generator.cpp:968
Gorgon::Widgets::Registry::Panel_Top
@ Panel_Top
Definition: Registry.h:34
Gorgon::Widgets::Generator::Layerbox
virtual UI::Template Layerbox()=0
Gorgon::Widgets::SimpleGenerator::Dropdown
virtual UI::Template Dropdown() override
Definition: Generator.cpp:1748
Gorgon::Widgets::Registry::TemplateType
TemplateType
This enum lists all possible template types.
Definition: Registry.h:18
Gorgon::Widgets::Registry::Radio_Regular
@ Radio_Regular
Definition: Registry.h:28
Gorgon::Widgets::SimpleGenerator::LeftPanel
virtual UI::Template LeftPanel() override
Definition: Generator.cpp:1310
Gorgon::Widgets::SimpleGenerator::HScrollbar
virtual UI::Template HScrollbar() override
Definition: Generator.cpp:1561
Gorgon
Root namespace for Gorgon Game Engine.
Definition: Any.h:19
Gorgon::Geometry::basic_Size
This class represents a 2D geometric size.
Definition: Size.h:23
Gorgon::Widgets::SimpleGenerator::BorderInfo::Divisions
int Divisions
Definition: Generator.h:266
Gorgon::Widgets::SimpleGenerator::Panel
virtual UI::Template Panel() override
Definition: Generator.cpp:1300
Gorgon::Widgets::SimpleGenerator::~SimpleGenerator
virtual ~SimpleGenerator()
Definition: Generator.cpp:93
Gorgon::Widgets::SimpleGenerator::Border
struct Gorgon::Widgets::SimpleGenerator::BorderInfo Border
Gorgon::Graphics::Color::Tan
constexpr RGBA Tan
Definition: Color.h:639
Gorgon::Widgets::Generator::BlankPanel
virtual UI::Template BlankPanel()=0
Gorgon::Widgets::Generator::Panel
virtual UI::Template Panel()=0
Gorgon::Widgets::Generator::RightPanel
virtual UI::Template RightPanel()=0
Gorgon::Widgets::SimpleGenerator::BorderInfo::Radius
int Radius
Definition: Generator.h:265
Gorgon::Widgets::Registry::Panel_Bottom
@ Panel_Bottom
Definition: Registry.h:36
Gorgon::Widgets::SimpleGenerator::ForecolorInfo
Definition: Generator.h:286
Gorgon::Widgets::SimpleGenerator::BorderInfo::Disabled
Graphics::RGBA Disabled
Definition: Generator.h:268
Gorgon::Widgets::SimpleGenerator::DisabledBorder
Graphics::BitmapRectangleProvider & DisabledBorder()
Definition: Generator.cpp:198
Gorgon::Containers::Collection
Collection is a container for reference typed objects.
Definition: Collection.h:21
Gorgon::Widgets::SimpleGenerator::ForecolorInfo::Inverted
Graphics::RGBA Inverted
Definition: Generator.h:292
Gorgon::Widgets::SimpleGenerator::SimpleGenerator
SimpleGenerator()
Creates a non-working simple generator.
Definition: Generator.h:140
Gorgon::Widgets::Registry::Panel_Regular
@ Panel_Regular
Definition: Registry.h:32
Gorgon::Widgets::SimpleGenerator::Focus
struct Gorgon::Widgets::SimpleGenerator::FocusInfo Focus
Gorgon::Widgets::Generator::HScrollbar
virtual UI::Template HScrollbar()=0
Gorgon::Widgets::Registry::Label_Regular
@ Label_Regular
Definition: Registry.h:22
Gorgon::Widgets::Generator::Listbox
virtual UI::Template Listbox()=0
Gorgon::Widgets::Generator::Generator
Generator(bool activate=true)
Definition: Generator.h:20
Gorgon::Widgets::SimpleGenerator::DownRBG
Graphics::BitmapRectangleProvider & DownRBG()
Definition: Generator.cpp:353
Gorgon::Graphics::basic_MaskedObjectProvider
This object creates a masked object from two graphics object.
Definition: MaskedObject.h:109
Gorgon::Widgets::SimpleGenerator::GrooveBG
Graphics::BitmapRectangleProvider & GrooveBG()
Definition: Generator.cpp:373
Gorgon::Widgets::SimpleGenerator::BackgroundInfo::Disabled
Graphics::RGBA Disabled
Definition: Generator.h:276
Gorgon::Widgets::Registry::Scrollbar_Horizontal
@ Scrollbar_Horizontal
Definition: Registry.h:44
Gorgon::Widgets::SimpleGenerator::GetEmSize
virtual int GetEmSize() const override
Definition: Generator.h:202
Gorgon::Widgets::SimpleGenerator::RightPanel
virtual UI::Template RightPanel() override
Definition: Generator.cpp:1314
Gorgon::Widgets::SimpleGenerator::Button
virtual UI::Template Button() override
Generates a button template.
Definition: Generator.cpp:557
Gorgon::Widgets::Registry::Progress_Regular
@ Progress_Regular
Definition: Registry.h:39
Gorgon::Widgets::SimpleGenerator::FocusInfo::Width
int Width
Definition: Generator.h:258
Gorgon::Widgets::SimpleGenerator::NormalBorder
Graphics::BitmapRectangleProvider & NormalBorder()
Definition: Generator.cpp:171
Gorgon::Widgets::SimpleGenerator::VScrollbar
virtual UI::Template VScrollbar() override
Definition: Generator.cpp:1523
Gorgon::Graphics::Color::Grey
constexpr RGBA Grey
Definition: Color.h:631
Gorgon::Widgets::SimpleGenerator::WidgetHeight
int WidgetHeight
This is the height of a non-bordered widget.
Definition: Generator.h:304
Gorgon::Widgets::Generator::RadioButton
virtual UI::Template RadioButton()=0
Gorgon::Graphics::Color::Ivory
constexpr RGBA Ivory
Definition: Color.h:895
Gorgon::Widgets::SimpleGenerator::GetSpacing
virtual int GetSpacing() const override
Definition: Generator.h:198
Registry.h
Gorgon::Widgets::SimpleGenerator::BorderInfo
Definition: Generator.h:263
Gorgon::Widgets::Generator::BottomPanel
virtual UI::Template BottomPanel()=0
Gorgon::Widgets::SimpleGenerator::FocusInfo::Color
Graphics::RGBA Color
Definition: Generator.h:257
Gorgon::Widgets::SimpleGenerator::DownStraightBG
Graphics::BitmapRectangleProvider & DownStraightBG()
Definition: Generator.cpp:316
Gorgon::Widgets::SimpleGenerator::Density
float Density
This controls the automatic spacing.
Definition: Generator.h:308
Gorgon::Widgets::SimpleGenerator::DisabledStraightBG
Graphics::BitmapRectangleProvider & DisabledStraightBG()
Definition: Generator.cpp:326
Gorgon::Widgets::Registry::Panel_Left
@ Panel_Left
Definition: Registry.h:35
Gorgon::Widgets::SimpleGenerator::NormalStraightBG
Graphics::BitmapRectangleProvider & NormalStraightBG()
Definition: Generator.cpp:289
Gorgon::Widgets::SimpleGenerator::HoverBG
Graphics::BitmapRectangleProvider & HoverBG()
Definition: Generator.cpp:259
Gorgon::Graphics::basic_RectangleProvider
This class allows instancing of a rectangle like image that is made out of three parts.
Definition: Rectangle.h:185
Gorgon::Widgets::SimpleGenerator::FocusBorder
Graphics::RectangleProvider & FocusBorder()
Definition: Generator.cpp:404
Gorgon::Widgets::SimpleGenerator::ObjectBorder
int ObjectBorder
Definition: Generator.h:243
Gorgon::Widgets::SimpleGenerator::TopPanel
virtual UI::Template TopPanel() override
Definition: Generator.cpp:1306
Gorgon::Widgets::SimpleGenerator::CenteredFont
Graphics::StyledRenderer CenteredFont
Definition: Generator.h:254
Gorgon::Widgets::SimpleGenerator::BorderedWidgetHeight
int BorderedWidgetHeight
This is the height of a bordered widget.
Definition: Generator.h:301
Gorgon::Widgets::SimpleGenerator::UpdateBorders
void UpdateBorders(bool smooth=true)
This function will update default widget borders depending on the font size.
Definition: Generator.cpp:154
Gorgon::Widgets::SimpleGenerator::FocusInfo
Definition: Generator.h:256
Gorgon::Widgets::SimpleGenerator::BackgroundInfo::Hover
Graphics::RGBA Hover
Definition: Generator.h:274
Gorgon::UI::GraphicsTemplate
Defines a visual component.
Definition: Template.h:1580
Gorgon::Widgets::Registry::Layerbox_Blank
@ Layerbox_Blank
Definition: Registry.h:42
Gorgon::Graphics::Color::LightGrey
constexpr RGBA LightGrey
Definition: Color.h:725
Gorgon::Widgets::Generator::Inputbox
virtual UI::Template Inputbox()=0
Gorgon::Widgets::Generator::Checkbox
virtual UI::Template Checkbox()=0
Gorgon::Widgets::Generator::Button
virtual UI::Template Button()=0
Generates a button template.
Gorgon::Widgets::Generator::generate
virtual UI::Template & generate(Gorgon::Widgets::Registry::TemplateType type) override
This function should return a template for the given type.
Definition: Generator.h:75
Gorgon::Widgets::SimpleGenerator::Checkbox
virtual UI::Template Checkbox() override
Definition: Generator.cpp:754
Gorgon::Widgets::SimpleGenerator::BlankPanel
virtual UI::Template BlankPanel() override
Definition: Generator.cpp:1132
Gorgon::Widgets::SimpleGenerator::Forecolor
struct Gorgon::Widgets::SimpleGenerator::ForecolorInfo Forecolor
Gorgon::Widgets::Registry::Scrollbar_Vertical
@ Scrollbar_Vertical
Definition: Registry.h:45
Gorgon::Widgets::SimpleGenerator::RegularFont
Graphics::StyledRenderer RegularFont
Definition: Generator.h:253
Gorgon::Widgets::SimpleGenerator::ForecolorInfo::Regular
Graphics::RGBA Regular
Definition: Generator.h:287
Gorgon::Widgets::Registry::Layerbox_Regular
@ Layerbox_Regular
Definition: Registry.h:41
Gorgon::Widgets::SimpleGenerator::Spacing
int Spacing
Definition: Generator.h:241
Gorgon::Widgets::SimpleGenerator::ObjectShape
Graphics::BitmapRectangleProvider & ObjectShape()
Definition: Generator.cpp:382
Gorgon::Widgets::SimpleGenerator::ForecolorInfo::Down
Graphics::RGBA Down
Definition: Generator.h:290
Gorgon::Widgets::SimpleGenerator::InnerObjectShape
Graphics::MaskedObjectProvider & InnerObjectShape()
Definition: Generator.cpp:391
Gorgon::Widgets::SimpleGenerator::ShapeBorder
float ShapeBorder
Definition: Generator.h:244
Gorgon::Widgets::SimpleGenerator::WidgetWidth
int WidgetWidth
This is the width of a one cell widget.
Definition: Generator.h:298
Gorgon::Widgets::SimpleGenerator::FocusInfo::Spacing
int Spacing
Definition: Generator.h:260
Gorgon::Widgets::SimpleGenerator::ForecolorInfo::InvertedActive
Graphics::RGBA InvertedActive
Definition: Generator.h:293
Gorgon::Widgets::SimpleGenerator::BackgroundInfo::Down
Graphics::RGBA Down
Definition: Generator.h:275
Gorgon::Graphics::StyledRenderer
This text renderer can style text according to the set parameters.
Definition: Font.h:461
Gorgon::Widgets::Registry::Panel_Blank
@ Panel_Blank
Definition: Registry.h:33
Gorgon::Widgets::SimpleGenerator::BorderInfo::Color
Graphics::RGBA Color
Definition: Generator.h:267
Gorgon::Widgets::SimpleGenerator::Layerbox
virtual UI::Template Layerbox() override
Definition: Generator.cpp:1498
Gorgon::Widgets::Generator::BlankLayerbox
virtual UI::Template BlankLayerbox()=0
Gorgon::Widgets::SimpleGenerator::DisabledBG
Graphics::BitmapRectangleProvider & DisabledBG()
Definition: Generator.cpp:279
Gorgon::Graphics::Color::Red
constexpr RGBA Red
Definition: Color.h:623
Gorgon::Widgets::SimpleGenerator::Background
struct Gorgon::Widgets::SimpleGenerator::BackgroundInfo Background
Gorgon::Widgets::Generator::Label
virtual UI::Template Label()=0
Gorgon::Widgets::Registry::Checkbox_Button
@ Checkbox_Button
Definition: Registry.h:26
Gorgon::Widgets::Registry
This class stores templates for elements.
Definition: Registry.h:12
Gorgon::Widgets::Generator::TopPanel
virtual UI::Template TopPanel()=0
Gorgon::Widgets::SimpleGenerator::BackgroundInfo::Edit
Graphics::RGBA Edit
Definition: Generator.h:278
Gorgon::Widgets::SimpleGenerator::ForecolorInfo::Hover
Graphics::RGBA Hover
Definition: Generator.h:289
Gorgon::Widgets::SimpleGenerator::BackgroundInfo::Alternate
Graphics::RGBA Alternate
Definition: Generator.h:273
Gorgon::Widgets::SimpleGenerator::ReadonlyBorder
Graphics::BitmapRectangleProvider & ReadonlyBorder()
Definition: Generator.cpp:241
Gorgon::Widgets::Registry::Panel_Right
@ Panel_Right
Definition: Registry.h:37
Gorgon::Widgets::Generator::LeftPanel
virtual UI::Template LeftPanel()=0
Gorgon::Widgets::SimpleGenerator::NormalEditBorder
Graphics::BitmapRectangleProvider & NormalEditBorder()
Definition: Generator.cpp:223