IceShard
1
A personal game engine project, with development focused on 2D/2.5D games.
Toggle main menu visibility
Loading...
Searching...
No Matches
devui
public
ice
devui_widget.hxx
Go to the documentation of this file.
1
3
6
7
#pragma once
8
#include <
ice/devui_types.hxx
>
9
#include <
ice/i18n_string.hxx
>
10
11
namespace
ice
12
{
13
14
struct
DevUIWidgetInfo
15
{
16
ice::I18NString
category
;
17
ice::I18NString
name
;
18
};
19
20
class
IDevUIWidget
21
{
22
public
:
23
virtual
~IDevUIWidget
() noexcept = default;
24
25
virtual
void
build_content
() noexcept = 0;
26
virtual auto
name
() const noexcept ->
ice
::
String
= 0;
27
virtual auto
category
() const noexcept ->
ice
::
String
= 0;
28
};
29
30
// TODO: Rename to Window
31
class
DevUIWidget
: public
IDevUIWidget
32
{
33
public
:
34
DevUIWidget
(
ice::DevUIWidgetInfo
const
&
info
)
noexcept
;
35
virtual
~DevUIWidget
() noexcept = default;
36
37
virtual auto
name
() const noexcept ->
ice
::
String
override
{
return
_widget_info
.name; }
38
virtual
auto
category
() const noexcept ->
ice
::
String
override
{
return
_widget_info
.category; }
39
40
virtual
void
update_state
(
ice::DevUIWidgetState
& state)
noexcept
{ }
41
42
virtual
void
build_widget
(
ice::DevUIFrame
& frame,
ice::DevUIWidgetState
& state)
noexcept
;
43
44
virtual
void
build_menu
() noexcept;
45
46
virtual
bool
build_mainmenu
(
ice
::
DevUIWidgetState
& state) noexcept;
47
48
protected:
49
ice
::
DevUIWidgetInfo
_widget_info
;
50
};
51
52
}
// namespace ice
ice::DevUIFrame
Definition
devui_frame.hxx:17
ice::DevUIWidget::update_state
virtual void update_state(ice::DevUIWidgetState &state) noexcept
Definition
devui_widget.hxx:40
ice::DevUIWidget::build_widget
virtual void build_widget(ice::DevUIFrame &frame, ice::DevUIWidgetState &state) noexcept
ice::DevUIWidget::DevUIWidget
DevUIWidget(ice::DevUIWidgetInfo const &info) noexcept
ice::DevUIWidget::category
virtual auto category() const noexcept -> ice::String override
Definition
devui_widget.hxx:38
ice::DevUIWidget::build_menu
virtual void build_menu() noexcept
ice::DevUIWidget::~DevUIWidget
virtual ~DevUIWidget() noexcept=default
ice::DevUIWidget::name
virtual auto name() const noexcept -> ice::String override
Definition
devui_widget.hxx:37
ice::DevUIWidget::build_mainmenu
virtual bool build_mainmenu(ice::DevUIWidgetState &state) noexcept
ice::DevUIWidget::_widget_info
ice::DevUIWidgetInfo _widget_info
Definition
devui_widget.hxx:49
ice::IDevUIWidget
Definition
devui_widget.hxx:21
ice::IDevUIWidget::category
virtual auto category() const noexcept -> ice::String=0
ice::IDevUIWidget::build_content
virtual void build_content() noexcept=0
ice::IDevUIWidget::name
virtual auto name() const noexcept -> ice::String=0
ice::IDevUIWidget::~IDevUIWidget
virtual ~IDevUIWidget() noexcept=default
devui_types.hxx
i18n_string.hxx
ice::info
Definition
info.hxx:8
ice
Root namespace for all APIs part of the IceShard engine project.
Definition
array.hxx:12
ice::String
ice::BasicString< char > String
Definition
string.hxx:82
ice::DevUIWidgetInfo
Definition
devui_widget.hxx:15
ice::DevUIWidgetInfo::name
ice::I18NString name
Definition
devui_widget.hxx:17
ice::DevUIWidgetInfo::category
ice::I18NString category
Definition
devui_widget.hxx:16
ice::DevUIWidgetState
Definition
devui_frame.hxx:11
ice::I18NString
Definition
i18n_string.hxx:12
Generated by
1.18.0