mirror of
https://github.com/Karaka-Management/cOMS.git
synced 2026-02-07 22:38:41 +00:00
36 lines
1.0 KiB
C
36 lines
1.0 KiB
C
#ifndef TOS_UI_LAYOUT_H
|
|
#define TOS_UI_LAYOUT_H
|
|
|
|
#include "../stdlib/Types.h"
|
|
#include "../stdlib/HashMap.h"
|
|
#include "UIElement.h"
|
|
|
|
// Modified for every scene
|
|
struct UILayout {
|
|
int32 ui_deadzone_size = 5;
|
|
UIElementDimension ui_deadzone[5];
|
|
|
|
int32 element_hoverable_size;
|
|
int32 element_hoverable_pos;
|
|
UIElementDimension* elements_hoverable;
|
|
|
|
int32 element_interactible_size;
|
|
int32 element_interactible_pos;
|
|
UIElementDimension* elements_interactible;
|
|
|
|
// @question Since we use a hashmap below, do we even need the size?
|
|
// Isn't the size exactly the same as the hash_map buf size
|
|
int32 element_size;
|
|
int32 element_pos;
|
|
HashMap hash_map; // Used to directly find element by name
|
|
|
|
// @question Do we even need this or should the hashmap values be the elements directly?
|
|
// In other places (e.g. theme) we simply define a byte* data variable which actually holds the info.
|
|
UIElement* elements;
|
|
|
|
int32 vertex_size;
|
|
int32 vertex_pos;
|
|
Vertex3DTextureColorIndex* vertices;
|
|
};
|
|
|
|
#endif |