UFO: Alien Invasion
Toggle main menu visibility
Loading...
Searching...
No Matches
ui_internal.h
Go to the documentation of this file.
1
6
7
/*
8
Copyright (C) 2002-2025 UFO: Alien Invasion.
9
10
This program is free software; you can redistribute it and/or
11
modify it under the terms of the GNU General Public License
12
as published by the Free Software Foundation; either version 2
13
of the License, or (at your option) any later version.
14
15
This program is distributed in the hope that it will be useful,
16
but WITHOUT ANY WARRANTY; without even the implied warranty of
17
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
18
19
See the GNU General Public License for more details.
20
21
You should have received a copy of the GNU General Public License
22
along with this program; if not, write to the Free Software
23
Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
24
25
*/
26
27
#pragma once
28
29
#define UI_MAX_WINDOWS 128
30
#define UI_MAX_COMPONENTS 128
31
#define UI_MAX_WINDOWSTACK 32
32
#define UI_MAX_ACTIONS 2*8192
33
#define UI_MAX_VARIABLESTACK 64
34
35
#include "
node/ui_node_window.h
"
36
#include "
node/ui_node_model.h
"
37
#include "
ui_main.h
"
38
#include "
ui_actions.h
"
39
#include "
ui_behaviour.h
"
40
#include "
ui_nodes.h
"
41
#include "
ui_sprite.h
"
42
#include "
ui_input.h
"
43
#include "
ui_expression.h
"
44
#include "
ui_data.h
"
45
49
typedef
struct
uiGlobal_s {
50
59
uiSharedData_t
sharedData
[
UI_MAX_DATAID
];
60
64
uiValue_t
variableStack
[
UI_MAX_VARIABLESTACK
];
65
66
int
numNodes
;
67
68
uiNode_t
*
windows
[
UI_MAX_WINDOWS
];
69
int
numWindows
;
70
71
uiNode_t
*
components
[
UI_MAX_COMPONENTS
];
72
int
numComponents
;
73
74
byte
*
adata
, *
curadata
;
75
int
adataize
;
76
77
uiNode_t
*
windowStack
[
UI_MAX_WINDOWSTACK
];
78
int
windowStackPos
;
79
80
uiAction_t
actions
[
UI_MAX_ACTIONS
];
81
int
numActions
;
82
83
uiModel_t
models
[
UI_MAX_MODELS
];
84
int
numModels
;
85
86
uiSprite_t
sprites
[
UI_MAX_SPRITES
];
87
int
numSprites
;
88
89
uiKeyBinding_t
keyBindings
[
UI_MAX_KEYBINDING
];
90
int
numKeyBindings
;
91
92
}
uiGlobal_t
;
93
94
extern
uiGlobal_t
ui_global
;
95
96
extern
memPool_t
*
ui_sysPool
;
97
extern
memPool_t
*
ui_dynStringPool
;
98
extern
memPool_t
*
ui_dynPool
;
99
104
#define STRUCT_MEMORY_ALIGN 8
105
106
void
*
UI_AllocHunkMemory
(
size_t
size
,
int
align,
bool
reset);
107
108
void
UI_FinishInit
(
void
);
109
void
UI_FinishWindowsInit
(
void
);
size
voidpf void uLong size
Definition
ioapi.h:42
memPool_t
Definition
mem.cpp:55
uiAction_t
Atomic element to store UI scripts The parser use this atom to translate script action into many tree...
Definition
ui_actions.h:144
uiGlobal_t
Global data shared into all UI code.
Definition
ui_internal.h:49
uiGlobal_t::numWindows
int numWindows
Definition
ui_internal.h:69
uiGlobal_t::models
uiModel_t models[UI_MAX_MODELS]
Definition
ui_internal.h:83
uiGlobal_t::components
uiNode_t * components[UI_MAX_COMPONENTS]
Definition
ui_internal.h:71
uiGlobal_t::sprites
uiSprite_t sprites[UI_MAX_SPRITES]
Definition
ui_internal.h:86
uiGlobal_t::sharedData
uiSharedData_t sharedData[UI_MAX_DATAID]
Holds shared data.
Definition
ui_internal.h:59
uiGlobal_t::adata
byte * adata
Definition
ui_internal.h:74
uiGlobal_t::numNodes
int numNodes
Definition
ui_internal.h:66
uiGlobal_t::keyBindings
uiKeyBinding_t keyBindings[UI_MAX_KEYBINDING]
Definition
ui_internal.h:89
uiGlobal_t::adataize
int adataize
Definition
ui_internal.h:75
uiGlobal_t::actions
uiAction_t actions[UI_MAX_ACTIONS]
Definition
ui_internal.h:80
uiGlobal_t::curadata
byte * curadata
Definition
ui_internal.h:74
uiGlobal_t::variableStack
uiValue_t variableStack[UI_MAX_VARIABLESTACK]
Local var for script function.
Definition
ui_internal.h:64
uiGlobal_t::numComponents
int numComponents
Definition
ui_internal.h:72
uiGlobal_t::numActions
int numActions
Definition
ui_internal.h:81
uiGlobal_t::numModels
int numModels
Definition
ui_internal.h:84
uiGlobal_t::numSprites
int numSprites
Definition
ui_internal.h:87
uiGlobal_t::numKeyBindings
int numKeyBindings
Definition
ui_internal.h:90
uiGlobal_t::windowStack
uiNode_t * windowStack[UI_MAX_WINDOWSTACK]
Definition
ui_internal.h:77
uiGlobal_t::windows
uiNode_t * windows[UI_MAX_WINDOWS]
Definition
ui_internal.h:68
uiGlobal_t::windowStackPos
int windowStackPos
Definition
ui_internal.h:78
uiKeyBinding_t
Definition
ui_input.h:32
uiModel_t
Model that have more than one part (top and down part of an aircraft).
Definition
ui_node_model.h:47
uiNode_t
Atomic structure used to define most of the UI.
Definition
ui_nodes.h:80
uiSharedData_t
Definition
ui_data.h:44
uiSprite_t
Definition
ui_sprite.h:41
uiValue_t
Type for uiAction_t It also contain type about type (for example EA_BINARYOPERATOR).
Definition
ui_actions.h:194
ui_actions.h
ui_behaviour.h
ui_data.h
Data and interface to share data.
UI_MAX_DATAID
@ UI_MAX_DATAID
Definition
ui_dataids.h:87
ui_expression.h
ui_input.h
UI_MAX_KEYBINDING
#define UI_MAX_KEYBINDING
Definition
ui_input.h:30
UI_AllocHunkMemory
void * UI_AllocHunkMemory(size_t size, int align, bool reset)
Definition
ui_main.cpp:126
UI_MAX_VARIABLESTACK
#define UI_MAX_VARIABLESTACK
Definition
ui_internal.h:33
ui_sysPool
memPool_t * ui_sysPool
Definition
ui_main.cpp:42
ui_dynPool
memPool_t * ui_dynPool
Definition
ui_main.cpp:41
UI_MAX_COMPONENTS
#define UI_MAX_COMPONENTS
Definition
ui_internal.h:30
ui_global
uiGlobal_t ui_global
Definition
ui_main.cpp:38
UI_MAX_WINDOWSTACK
#define UI_MAX_WINDOWSTACK
Definition
ui_internal.h:31
UI_MAX_WINDOWS
#define UI_MAX_WINDOWS
Definition
ui_internal.h:29
UI_FinishWindowsInit
void UI_FinishWindowsInit(void)
Finish windows initialization.
Definition
ui_windows.cpp:665
UI_FinishInit
void UI_FinishInit(void)
Finish initialization after everything was loaded.
Definition
ui_main.cpp:268
UI_MAX_ACTIONS
#define UI_MAX_ACTIONS
Definition
ui_internal.h:32
ui_main.h
ui_node_model.h
UI_MAX_MODELS
#define UI_MAX_MODELS
Definition
ui_node_model.h:44
ui_dynStringPool
memPool_t * ui_dynStringPool
Definition
ui_main.cpp:40
ui_node_window.h
ui_nodes.h
ui_sprite.h
UI_MAX_SPRITES
#define UI_MAX_SPRITES
Definition
ui_sprite.h:27
src
client
ui
ui_internal.h
Generated on __DATE__ __TIME__ for UFO: Alien Invasion by
1.17.0