LkEngine
0.1.2
Loading...
Searching...
No Matches
Panel.h
1
#pragma once
2
3
#include "
LkEngine/Core/LObject/Object.h
"
4
#include "LkEngine/Core/LObject/ObjectPtr.h"
5
6
#include "
LkEngine/Renderer/UI/UICore.h
"
7
#include "LkEngine/Renderer/UI/Property.h"
8
#include "LkEngine/Renderer/UI/TreeNode.h"
9
#include "LkEngine/Renderer/UI/Table.h"
10
11
#include "LkEngine/Serialization/YamlSerialization.h"
12
13
namespace
LkEngine
{
14
15
class
LProject;
16
17
class
IPanel
:
public
LObject
18
{
19
public
:
20
virtual
~IPanel
() =
default
;
21
22
virtual
void
Initialize
() {};
23
24
virtual
void
Render() = 0;
25
virtual
void
RenderUI(
bool
& IsOpen) = 0;
26
27
virtual
void
OnProjectChanged(
const
TObjectPtr<LProject>
& InProject) {};
28
29
virtual
void
SerializeToYaml(YAML::Emitter& Out)
const
= 0;
30
virtual
void
DeserializeFromYaml(
const
YAML::Node& Data) = 0;
31
32
protected
:
38
struct
FWindow
39
{
40
bool
bOpen =
false
;
41
42
FWindow
() : bOpen(
false
) {}
43
};
44
45
};
46
47
}
Object.h
LObject implementation.
UICore.h
Core UI.
LkEngine::IPanel
Definition
Panel.h:18
LkEngine::IPanel::Initialize
virtual void Initialize()
Initialize object.
Definition
Panel.h:22
LkEngine::LObject
Definition
Object.h:46
LkEngine::TObjectPtr
Definition
ObjectPtr.h:102
LkEngine
Definition
Asset.h:11
LkEngine::IPanel::FWindow
Definition
Panel.h:39
LkEngine
Source
LkEngine
Renderer
UI
Panel.h
Generated by
1.12.0