34struct nodeKeyBinding_s;
35struct uiCallContext_s;
38struct uiLuaCallback_t;
41typedef struct uiExcludeRect_s {
47 struct uiExcludeRect_s*
next;
100 struct uiKeyBinding_s*
key;
184#define UI_EXTRADATA_POINTER(NODE, TYPE) ((TYPE*)((char*)NODE + sizeof(uiNode_t)))
185#define UI_EXTRADATA(NODE, TYPE) (*UI_EXTRADATA_POINTER(NODE, TYPE))
186#define UI_EXTRADATACONST_POINTER(NODE, TYPE) ((TYPE*)((const char*)NODE + sizeof(uiNode_t)))
187#define UI_EXTRADATACONST(NODE, TYPE) (*UI_EXTRADATACONST_POINTER(NODE, const TYPE))
QGL_EXTERN GLint GLenum type
QGL_EXTERN GLuint GLsizei GLsizei GLint GLenum GLchar * name
Header for script parsing functions.
align_t
We need this here for checking the boundaries from script values.
Header for lua script functions.
int LUA_EVENT
holds a reference to a lua event handler
The hash table structure, contains an array of buckets being indexed by the hash function.
node behaviour, how a node work
void alignBox(uiBox_t &inner, align_t direction)
void set(vec2_t pos, vec2_t size)
struct uiExcludeRect_s * next
Atomic structure used to define most of the UI.
struct uiAction_s * visibilityCondition
struct uiAction_s * onWheelDown
struct uiAction_s * onMouseLeave
LUA_EVENT lua_onDragDropFinished
LUA_EVENT lua_onFocusLost
LUA_EVENT lua_onDragDropMove
LUA_EVENT lua_onVisibleWhen
LUA_EVENT lua_onKeyReleased
LUA_EVENT lua_onDragDropEnter
LUA_EVENT lua_onDragDropLeave
LUA_EVENT lua_onWheelDown
LUA_EVENT lua_onDragDropDrop
uiBehaviour_t * behaviour
struct uiAction_s * onWheel
struct uiAction_s * onMiddleClick
LUA_EVENT lua_onRightClick
uiExcludeRect_t * firstExcludeRect
LUA_EVENT lua_onMouseLeave
struct uiAction_s * onChange
LUA_EVENT lua_onMiddleClick
hashTable_s * nodeMethods
LUA_EVENT lua_onKeyPressed
LUA_EVENT lua_onMouseEnter
struct uiKeyBinding_s * key
struct uiAction_s * onClick
struct uiAction_s * onRightClick
struct uiAction_s * onMouseEnter
struct uiAction_s * onWheelUp
LUA_EVENT lua_onFocusGained
Cross-platform type definitions.
const char * UI_GetPath(const uiNode_t *node) __attribute__((warn_unused_result))
Return a path from a window to a node.
void UI_ReadNodePath(const char *path, const uiNode_t *relativeNode, const uiNode_t *iterationNode, uiNode_t **resultNode, const value_t **resultProperty, value_t *luaMethod=nullptr)
Read a path and return every we can use (node and property).
bool UI_CheckVisibility(uiNode_t *node)
Check the if conditions for a given node.
int UI_GetNodeBehaviourCount(void) __attribute__((warn_unused_result))
uiNode_t * UI_AllocNode(const char *name, const char *type, bool isDynamic)
Allocate a node into the UI memory.
uiBehaviour_t * UI_GetNodeBehaviour(const char *name) __attribute__((warn_unused_result))
Return a node behaviour by name.
uiNode_t * UI_GetNodeByPath(const char *path) __attribute__((warn_unused_result))
Return a node by a path name (names with dot separation) It is a simplification facade over UI_ReadNo...
uiBehaviour_t * UI_GetNodeBehaviourByIndex(int index) __attribute__((warn_unused_result))
void UI_DeleteAllChild(uiNode_t *node)
Remove all child from a node (only remove dynamic memory allocation nodes).
uiNode_t * UI_CloneNode(const uiNode_t *node, uiNode_t *newWindow, bool recursive, const char *newName, bool isDynamic) __attribute__((warn_unused_result))
Clone a node.
uiNode_t * UI_GetNodeAtPosition(int x, int y) __attribute__((warn_unused_result))
Return the first visible node at a position.
void UI_DeleteNode(uiNode_t *node)
#define Vector2Copy(src, dest)