Polyphase Game Engine
Loading...
Searching...
No Matches
ArrayWidget.h
Go to the documentation of this file.
1#pragma once
2
4#include "Assets/Texture.h"
5#include "Vertex.h"
6#include "AssetRef.h"
7
8#include "glm/glm.hpp"
9
10enum class ArrayOrientation : uint8_t
11{
14
15 Count
16};
17
18class ArrayWidget : public Widget
19{
20public:
21
23
24 virtual void Create() override;
25 virtual void GatherProperties(std::vector<Property>& outProps) override;
26 virtual void UpdateRect() override;
27 virtual void PreRender() override;
28
29#if EDITOR
30 virtual bool DrawCustomProperty(Property& prop) override;
31#endif
32
33 void SetCentered(bool center);
34 bool IsCentered() const;
35
36 void SetSpacing(float spacing);
37 float GetSpacing() const;
38
39 void SetOrientation(ArrayOrientation orientation);
41
42protected:
43
44 void LayoutChildren();
45
46 //static bool HandlePropChange(Datum* datum, uint32_t index, const void* newValue);
47
48 float mSpacing = 0.0f;
49 float mPaddingLeft = 0.0f;
50 float mPaddingTop = 0.0f;
51 float mPaddingRight = 0.0f;
52 float mPaddingBottom = 0.0f;
54 bool mCenter = false;
55};
ArrayOrientation
Definition ArrayWidget.h:11
Definition ArrayWidget.h:19
ArrayOrientation mOrientation
Definition ArrayWidget.h:53
float mPaddingLeft
Definition ArrayWidget.h:49
bool mCenter
Definition ArrayWidget.h:54
void SetSpacing(float spacing)
Definition ArrayWidget.cpp:97
virtual void UpdateRect() override
Definition ArrayWidget.cpp:43
bool IsCentered() const
Definition ArrayWidget.cpp:92
float mPaddingRight
Definition ArrayWidget.h:51
ArrayOrientation GetOrientation() const
Definition ArrayWidget.cpp:112
void SetCentered(bool center)
Definition ArrayWidget.cpp:87
float mSpacing
Definition ArrayWidget.h:48
float mPaddingBottom
Definition ArrayWidget.h:52
void LayoutChildren()
Definition ArrayWidget.cpp:117
virtual void Create() override
Definition ArrayWidget.cpp:19
void SetOrientation(ArrayOrientation orientation)
Definition ArrayWidget.cpp:107
virtual void PreRender() override
Definition ArrayWidget.cpp:50
DECLARE_NODE(ArrayWidget, Widget)
float GetSpacing() const
Definition ArrayWidget.cpp:102
virtual void GatherProperties(std::vector< Property > &outProps) override
Definition ArrayWidget.cpp:27
float mPaddingTop
Definition ArrayWidget.h:50
virtual bool DrawCustomProperty(Property &prop)
Definition Object.h:46
Definition Property.h:14
Definition Widget.h:57