Suckless OGL 1.0.0
A lean, high-performance C11 PBR Renderer
Loading...
Searching...
No Matches
app_ui_layout.h
Go to the documentation of this file.
1
10#ifndef APP_UI_LAYOUT_H
11#define APP_UI_LAYOUT_H
12
13#include "app_settings.h" /* DEFAULT_FONT_SIZE */
14#include <GLFW/glfw3.h> /* GLFW_KEY_*, GLFW_GAMEPAD_* */
15#include <cglm/types.h> /* vec3 */
16#include <stdbool.h>
17
18/* ================================================================
19 * UI Scaling and Layout Defaults
20 * ================================================================ */
21static const float DEFAULT_BASE_RESOLUTION_HEIGHT = 1080.0F;
22static const float DEFAULT_KBD_KEY_SIZE = 60.0F;
23static const float DEFAULT_KBD_KEY_PADDING = 10.0F;
24static const float DEFAULT_KBD_KEY_RADIUS = 10.0F;
25static const float DEFAULT_KBD_LABEL_SCALE = 0.75F;
26static const float DEFAULT_KBD_TITLE_Y_OFFSET = 140.0F;
27static const float DEFAULT_KBD_DETAIL_Y_OFFSET = 100.0F;
28
29/* Layout and Framing */
30static const float LUMINANCE_EPSILON = 0.0001F;
31static const float UI_CENTER_FACTOR = 0.5F;
32static const float GRAPH_TEXT_PADDING = 20.0F;
33static const float DEBUG_TEXT_Y_OFFSET = DEFAULT_FONT_SIZE * 4.0F;
34
35/* Legend Layout Factors */
36static const float LEGEND_Y_FACTOR = 0.6F;
37static const float LEGEND_X_START_FACTOR = 0.25F;
38static const float LEGEND_STEP_FACTOR = 0.18F;
39static const float LEGEND_COMBO_STEP_MULT = 1.9F;
40
41/* Histogram and Graph Limits */
42static const float GRAPH_POS_X = 20.0F;
43static const float GRAPH_POS_Y_OFF = 200.0F;
44static const float GRAPH_DIM_W = 300.0F;
45static const float GRAPH_DIM_H = 100.0F;
46
47/* ================================================================
48 * Cyberpunk overlay visual tweaks
49 * ================================================================ */
50static const float DEFAULT_KBD_BLOOM_SCALE = 1.3F;
51static const float DEFAULT_KBD_UNBOUND_ALPHA = 0.22F;
52static const float DEFAULT_KBD_BOUND_ALPHA = 0.88F;
53static const float PANEL_FRAME_ALPHA = 0.72F;
54static const float BLOOM_MAX_INTENSITY = 0.5F;
55static const float GLOW_HOVER_ALPHA = 0.6F;
56static const float BLOOM_PRESS_MAX_ALPHA = 0.9F;
57static const float HELP_BG_ALPHA = 0.88F;
58static const float KEY_PRESSED_ALPHA = 0.95F;
59static const float KEY_DEFAULT_ALPHA = 0.4F;
60static const float KEY_PRESS_BRIGHTEN_MIN = 0.6F;
61static const float HELP_TEXT_ALPHA = 0.8F;
62static const float HELP_EXIT_HINT_X_OFF = 300.0F;
63static const float HELP_EXIT_HINT_Y_OFF = 50.0F;
64
65/* ================================================================
66 * UI Colors
67 * ================================================================ */
68static const vec3 KEY_COLOR_DEFAULT = {0.15F, 0.15F, 0.20F};
69static const vec3 KEY_COLOR_TOGGLE = {0.0F, 0.82F, 0.92F};
70static const vec3 KEY_COLOR_CYCLE = {0.12F, 0.90F, 0.12F};
71static const vec3 KEY_COLOR_COMBINATION = {1.0F, 0.56F, 0.05F};
72static const vec3 HELP_BG_COLOR = {0.05F, 0.05F, 0.07F};
73static const vec3 CYBER_TITLE_COLOR = {0.0F, 0.90F, 0.95F};
74static const vec3 ENV_TEXT_COLOR = {0.7F, 0.7F, 0.7F};
75static const vec3 GRAPH_TEXT_COLOR = {0.8F, 0.8F, 0.8F};
76static const vec3 DEBUG_ORANGE_COLOR = {1.0F, 0.5F, 0.0F};
77static const vec3 NBODY_INFO_COLOR = {0.4F, 0.8F, 1.0F};
78static const vec3 NBODY_STABLE_COLOR = {0.2F, 1.0F, 0.4F};
79static const vec3 NBODY_DAMPING_COLOR = {1.0F, 0.8F, 0.2F};
80static const vec3 NBODY_DIVERGE_COLOR = {1.0F, 0.3F, 0.2F};
81static const float NBODY_STABILITY_THRESHOLD = 0.05F;
82static const vec3 HISTO_BAR_COLOR_GREEN = {0.0F, 0.7F, 0.0F};
83static const vec3 HISTO_BAR_COLOR_BLUE = {0.0F, 0.5F, 0.8F};
84static const vec3 HISTO_BAR_COLOR_RED = {0.8F, 0.5F, 0.0F};
85
86/* ================================================================
87 * Animation and Timing
88 * ================================================================ */
89static const float GLOBAL_DIM_MAX_FALLOFF = 0.7F;
90static const float GLOBAL_DIM_SMOOTH_FACTOR = 15.0F;
91static const double HOVER_DECAY_DURATION = 0.15;
92
93/* ================================================================
94 * Loading Indicator and Spinner
95 * ================================================================ */
96static const double UI_SPINNER_SPEED = 10.0;
97static const float UI_LOADING_TEXT_WIDTH_FACTOR = 20.0F;
98static const float UI_SPINNER_SIZE = 64.0F;
99static const float UI_TEXT_OFFSET_FACTOR = 0.8F;
100static const vec3 UI_SPINNER_COLOR = {90.0F / 255.0F, 111.0F / 255.0F,
101 185.0F / 255.0F};
102
104
105/* ================================================================
106 * UI Buffers and Limits
107 * ================================================================ */
108enum {
117
118/* ================================================================
119 * Keyboard layout data
120 * ================================================================ */
121
122enum {
128 ROW_BOTTOM = 5
130
131typedef struct {
132 int key;
133 int row;
134 float x_off; /* In units of KEY_SIZE + KEY_PADDING */
135 float width; /* In units of KEY_SIZE */
136 const char* label;
137} KeyPos;
138
139static const KeyPos KEY_LAYOUT_QWERTY[] = {
140 /* Row 0: Esc + Func */
141 {GLFW_KEY_ESCAPE, ROW_SYSTEM, 0.0F, 1.0F, "Esc"},
142 {GLFW_KEY_F1, ROW_SYSTEM, 2.0F, 1.0F, "F1"},
143 {GLFW_KEY_F2, ROW_SYSTEM, 3.0F, 1.0F, "F2"},
144 {GLFW_KEY_F3, ROW_SYSTEM, 4.0F, 1.0F, "F3"},
145 {GLFW_KEY_F4, ROW_SYSTEM, 5.0F, 1.0F, "F4"},
146 {GLFW_KEY_F5, ROW_SYSTEM, 6.5F, 1.0F, "F5"},
147 {GLFW_KEY_F6, ROW_SYSTEM, 7.5F, 1.0F, "F6"},
148 {GLFW_KEY_F7, ROW_SYSTEM, 8.5F, 1.0F, "F7"},
149 {GLFW_KEY_F8, ROW_SYSTEM, 9.5F, 1.0F, "F8"},
150 {GLFW_KEY_F9, ROW_SYSTEM, 11.5F, 1.0F, "F9"},
151 {GLFW_KEY_F10, ROW_SYSTEM, 12.5F, 1.0F, "F10"},
152 {GLFW_KEY_F11, ROW_SYSTEM, 13.5F, 1.0F, "F11"},
153 {GLFW_KEY_F12, ROW_SYSTEM, 14.5F, 1.2F, "F12"},
154
155 /* Row 1: Numbers/Symbols */
156 {GLFW_KEY_GRAVE_ACCENT, ROW_NUMBERS, 0.0F, 1.0F, "~"},
157 {GLFW_KEY_1, ROW_NUMBERS, 1.0F, 1.0F, "1"},
158 {GLFW_KEY_2, ROW_NUMBERS, 2.0F, 1.0F, "2"},
159 {GLFW_KEY_3, ROW_NUMBERS, 3.0F, 1.0F, "3"},
160 {GLFW_KEY_4, ROW_NUMBERS, 4.0F, 1.0F, "4"},
161 {GLFW_KEY_5, ROW_NUMBERS, 5.0F, 1.0F, "5"},
162 {GLFW_KEY_6, ROW_NUMBERS, 6.0F, 1.0F, "6"},
163 {GLFW_KEY_7, ROW_NUMBERS, 7.0F, 1.0F, "7"},
164 {GLFW_KEY_8, ROW_NUMBERS, 8.0F, 1.0F, "8"},
165 {GLFW_KEY_9, ROW_NUMBERS, 9.0F, 1.0F, "9"},
166 {GLFW_KEY_0, ROW_NUMBERS, 10.0F, 1.0F, "0"},
167
168 /* Row 2: QWERTY */
169 {GLFW_KEY_TAB, ROW_QWERTY, 0.0F, 1.5F, "Tab"},
170 {GLFW_KEY_Q, ROW_QWERTY, 1.5F, 1.0F, "Q"},
171 {GLFW_KEY_W, ROW_QWERTY, 2.5F, 1.0F, "W"},
172 {GLFW_KEY_E, ROW_QWERTY, 3.5F, 1.0F, "E"},
173 {GLFW_KEY_R, ROW_QWERTY, 4.5F, 1.0F, "R"},
174 {GLFW_KEY_T, ROW_QWERTY, 5.5F, 1.0F, "T"},
175 {GLFW_KEY_Y, ROW_QWERTY, 6.5F, 1.0F, "Y"},
176 {GLFW_KEY_U, ROW_QWERTY, 7.5F, 1.0F, "U"},
177 {GLFW_KEY_I, ROW_QWERTY, 8.5F, 1.0F, "I"},
178 {GLFW_KEY_O, ROW_QWERTY, 9.5F, 1.0F, "O"},
179 {GLFW_KEY_P, ROW_QWERTY, 10.5F, 1.0F, "P"},
180
181 /* Row 3: ASDF */
182 {GLFW_KEY_CAPS_LOCK, ROW_ASDF, 0.0F, 1.8F, "Caps"},
183 {GLFW_KEY_A, ROW_ASDF, 1.8F, 1.0F, "A"},
184 {GLFW_KEY_S, ROW_ASDF, 2.8F, 1.0F, "S"},
185 {GLFW_KEY_D, ROW_ASDF, 3.8F, 1.0F, "D"},
186 {GLFW_KEY_F, ROW_ASDF, 4.8F, 1.0F, "F"},
187 {GLFW_KEY_G, ROW_ASDF, 5.8F, 1.0F, "G"},
188 {GLFW_KEY_H, ROW_ASDF, 6.8F, 1.0F, "H"},
189 {GLFW_KEY_J, ROW_ASDF, 7.8F, 1.0F, "J"},
190 {GLFW_KEY_K, ROW_ASDF, 8.8F, 1.0F, "K"},
191 {GLFW_KEY_L, ROW_ASDF, 9.8F, 1.0F, "L"},
192
193 /* Row 4: ZXCV */
194 {GLFW_KEY_LEFT_SHIFT, ROW_ZXCV, 0.0F, 2.3F, "Shift"},
195 {GLFW_KEY_Z, ROW_ZXCV, 2.3F, 1.0F, "Z"},
196 {GLFW_KEY_X, ROW_ZXCV, 3.3F, 1.0F, "X"},
197 {GLFW_KEY_C, ROW_ZXCV, 4.3F, 1.0F, "C"},
198 {GLFW_KEY_V, ROW_ZXCV, 5.3F, 1.0F, "V"},
199 {GLFW_KEY_B, ROW_ZXCV, 6.3F, 1.0F, "B"},
200 {GLFW_KEY_N, ROW_ZXCV, 7.3F, 1.0F, "N"},
201 {GLFW_KEY_M, ROW_ZXCV, 8.3F, 1.0F, "M"},
202 {GLFW_KEY_COMMA, ROW_ZXCV, 9.3F, 1.0F, ","},
203 {GLFW_KEY_PERIOD, ROW_ZXCV, 10.3F, 1.0F, "."},
204
205 /* Row 5: Space/System */
206 {GLFW_KEY_LEFT_CONTROL, ROW_BOTTOM, 0.0F, 1.5F, "Ctrl"},
207 {GLFW_KEY_SPACE, ROW_BOTTOM, 3.8F, 6.0F, "Space"},
208 {GLFW_KEY_PAGE_UP, ROW_ZXCV, 13.5F, 1.3F, "PgUp"},
209 {GLFW_KEY_PAGE_DOWN, ROW_BOTTOM, 13.5F, 1.3F, "PgDn"},
210 {GLFW_KEY_UP, ROW_ZXCV, 15.0F, 1.0F, "Up"},
211 {GLFW_KEY_DOWN, ROW_BOTTOM, 15.0F, 1.0F, "Dn"}};
212
213/* ================================================================
214 * Gamepad overlay layout
215 * ================================================================ */
216
217typedef struct {
218 float x_off;
219 float y_off;
220 float width;
221 float height;
227 const char* label;
228 const char* action;
229 const char* desc;
231
232enum {
237 GP_ROW_SYSTEM = 4
239
241 /* L2 / R2 (triggers — wide, top) */
242 {0.5F, 0.0F, 2.5F, 0.8F, 1, 0, -1, GLFW_GAMEPAD_AXIS_LEFT_TRIGGER, -1, "L2",
243 "Move Down", "Left trigger: moves the camera downward (proportional)."},
244 {9.0F, 0.0F, 2.5F, 0.8F, 1, 0, -1, GLFW_GAMEPAD_AXIS_RIGHT_TRIGGER, -1,
245 "R2", "Move Up", "Right trigger: moves the camera upward (proportional)."},
246
247 /* L1 / R1 (bumpers — narrower, below triggers) */
248 {0.5F, 1.1F, 2.5F, 0.6F, 1, 2, GLFW_GAMEPAD_BUTTON_LEFT_BUMPER, -1, -1,
249 "L1", "Prev Env", "Left bumper: cycles to the previous environment map."},
250 {9.0F, 1.1F, 2.5F, 0.6F, 1, 2, GLFW_GAMEPAD_BUTTON_RIGHT_BUMPER, -1, -1,
251 "R1", "Next Env", "Right bumper: cycles to the next environment map."},
252
253 /* D-pad (left side, unbound) */
254 {1.5F, 2.8F, 0.7F, 0.7F, 0, 0, GLFW_GAMEPAD_BUTTON_DPAD_UP, -1, -1,
255 "\xE2\x96\xB2", "", ""},
256 {0.8F, 3.5F, 0.7F, 0.7F, 0, 0, GLFW_GAMEPAD_BUTTON_DPAD_LEFT, -1, -1,
257 "\xE2\x97\x80", "", ""},
258 {2.2F, 3.5F, 0.7F, 0.7F, 0, 0, GLFW_GAMEPAD_BUTTON_DPAD_RIGHT, -1, -1,
259 "\xE2\x96\xB6", "", ""},
260 {1.5F, 4.2F, 0.7F, 0.7F, 0, 0, GLFW_GAMEPAD_BUTTON_DPAD_DOWN, -1, -1,
261 "\xE2\x96\xBC", "", ""},
262
263 /* Face buttons (right side, unbound) */
264 {10.0F, 2.8F, 0.7F, 0.7F, 0, 0, GLFW_GAMEPAD_BUTTON_Y, -1, -1, "Y", "", ""},
265 {9.3F, 3.5F, 0.7F, 0.7F, 0, 0, GLFW_GAMEPAD_BUTTON_X, -1, -1, "X", "", ""},
266 {10.7F, 3.5F, 0.7F, 0.7F, 0, 0, GLFW_GAMEPAD_BUTTON_B, -1, -1, "B", "", ""},
267 {10.0F, 4.2F, 0.7F, 0.7F, 0, 0, GLFW_GAMEPAD_BUTTON_A, -1, -1, "A", "", ""},
268
269 /* Left Stick (active — camera movement) */
270 {1.0F, 5.5F, 1.8F, 1.2F, 1, 0, -1, GLFW_GAMEPAD_AXIS_LEFT_X,
271 GLFW_GAMEPAD_AXIS_LEFT_Y, "L Stick", "Camera Move",
272 "Left analog stick: proportional camera movement (forward/back/strafe)."},
273
274 /* Right Stick (active — camera look) */
275 {9.2F, 5.5F, 1.8F, 1.2F, 1, 0, -1, GLFW_GAMEPAD_AXIS_RIGHT_X,
276 GLFW_GAMEPAD_AXIS_RIGHT_Y, "R Stick", "Camera Look",
277 "Right analog stick: proportional camera look (yaw/pitch)."},
278
279 /* Center buttons */
280 {4.5F, 3.5F, 1.2F, 0.6F, 1, 1, GLFW_GAMEPAD_BUTTON_BACK, -1, -1, "Share",
281 "Camera Reset", "Reset camera position, orientation and LOD to defaults."},
282 {6.3F, 3.5F, 1.2F, 0.6F, 0, 0, GLFW_GAMEPAD_BUTTON_START, -1, -1, "Options",
283 "", ""},
284};
285
286enum {
288 sizeof(GAMEPAD_LAYOUT) / sizeof(GAMEPAD_LAYOUT[0])
290
291#endif /* APP_UI_LAYOUT_H */
Global application constants, configuration macros, and default values.
static const vec3 NBODY_INFO_COLOR
Definition app_ui_layout.h:77
static const vec3 HISTO_BAR_COLOR_BLUE
Definition app_ui_layout.h:83
@ ROW_NUMBERS
Definition app_ui_layout.h:124
@ ROW_QWERTY
Definition app_ui_layout.h:125
@ ROW_ZXCV
Definition app_ui_layout.h:127
@ ROW_ASDF
Definition app_ui_layout.h:126
@ ROW_SYSTEM
Definition app_ui_layout.h:123
@ ROW_BOTTOM
Definition app_ui_layout.h:128
static const float DEFAULT_KBD_KEY_RADIUS
Definition app_ui_layout.h:24
static const vec3 KEY_COLOR_CYCLE
Definition app_ui_layout.h:70
static const float KEY_PRESS_BRIGHTEN_MIN
Definition app_ui_layout.h:60
static const float UI_TEXT_OFFSET_FACTOR
Definition app_ui_layout.h:99
static const float LEGEND_Y_FACTOR
Definition app_ui_layout.h:36
static const float DEFAULT_KBD_DETAIL_Y_OFFSET
Definition app_ui_layout.h:27
static const float BLOOM_PRESS_MAX_ALPHA
Definition app_ui_layout.h:56
static const float HELP_EXIT_HINT_Y_OFF
Definition app_ui_layout.h:63
static const float UI_LOADING_TEXT_WIDTH_FACTOR
Definition app_ui_layout.h:97
static const float LUMINANCE_EPSILON
Definition app_ui_layout.h:30
static const double HOVER_DECAY_DURATION
Definition app_ui_layout.h:91
static const float GLOBAL_DIM_MAX_FALLOFF
Definition app_ui_layout.h:89
static const float HELP_BG_ALPHA
Definition app_ui_layout.h:57
static const vec3 KEY_COLOR_DEFAULT
Definition app_ui_layout.h:68
static const float GRAPH_POS_X
Definition app_ui_layout.h:42
static const vec3 HELP_BG_COLOR
Definition app_ui_layout.h:72
static const vec3 HISTO_BAR_COLOR_RED
Definition app_ui_layout.h:84
static const vec3 NBODY_DAMPING_COLOR
Definition app_ui_layout.h:79
static const KeyPos KEY_LAYOUT_QWERTY[]
Definition app_ui_layout.h:139
static const float GRAPH_TEXT_PADDING
Definition app_ui_layout.h:32
static const vec3 NBODY_STABLE_COLOR
Definition app_ui_layout.h:78
static const vec3 HISTO_BAR_COLOR_GREEN
Definition app_ui_layout.h:82
static const float HELP_TEXT_ALPHA
Definition app_ui_layout.h:61
static const vec3 KEY_COLOR_COMBINATION
Definition app_ui_layout.h:71
@ UI_LOADING_TEXT_SIZE
Definition app_ui_layout.h:103
static const vec3 KEY_COLOR_TOGGLE
Definition app_ui_layout.h:69
static const float KEY_DEFAULT_ALPHA
Definition app_ui_layout.h:59
static const float DEFAULT_KBD_BLOOM_SCALE
Definition app_ui_layout.h:50
static const float GRAPH_DIM_W
Definition app_ui_layout.h:44
@ MODIFIER_BUFFER_SIZE
Definition app_ui_layout.h:114
@ KEYBOARD_BUFFER_SIZE
Definition app_ui_layout.h:115
@ EXPOSURE_TEXT_BUFFER_SIZE
Definition app_ui_layout.h:112
@ ENV_TEXT_BUFFER_SIZE
Definition app_ui_layout.h:111
@ NBODY_TEXT_BUFFER_SIZE
Definition app_ui_layout.h:113
@ DEBUG_TEXT_BUFFER_SIZE
Definition app_ui_layout.h:109
@ RANGE_TEXT_BUFFER_SIZE
Definition app_ui_layout.h:110
static const float GLOW_HOVER_ALPHA
Definition app_ui_layout.h:55
static const GamepadControlPos GAMEPAD_LAYOUT[]
Definition app_ui_layout.h:240
static const float KEY_PRESSED_ALPHA
Definition app_ui_layout.h:58
static const vec3 NBODY_DIVERGE_COLOR
Definition app_ui_layout.h:80
static const float UI_SPINNER_SIZE
Definition app_ui_layout.h:98
static const float BLOOM_MAX_INTENSITY
Definition app_ui_layout.h:54
static const float LEGEND_COMBO_STEP_MULT
Definition app_ui_layout.h:39
static const float HELP_EXIT_HINT_X_OFF
Definition app_ui_layout.h:62
static const float DEFAULT_KBD_UNBOUND_ALPHA
Definition app_ui_layout.h:51
static const double UI_SPINNER_SPEED
Definition app_ui_layout.h:96
static const float DEFAULT_KBD_LABEL_SCALE
Definition app_ui_layout.h:25
static const float DEFAULT_KBD_TITLE_Y_OFFSET
Definition app_ui_layout.h:26
static const float UI_CENTER_FACTOR
Definition app_ui_layout.h:31
static const vec3 GRAPH_TEXT_COLOR
Definition app_ui_layout.h:75
@ GAMEPAD_LAYOUT_COUNT
Definition app_ui_layout.h:287
static const float NBODY_STABILITY_THRESHOLD
Definition app_ui_layout.h:81
static const float GRAPH_DIM_H
Definition app_ui_layout.h:45
@ GP_ROW_FACE
Definition app_ui_layout.h:235
@ GP_ROW_STICKS
Definition app_ui_layout.h:236
@ GP_ROW_BUMPERS
Definition app_ui_layout.h:234
@ GP_ROW_TRIGGERS
Definition app_ui_layout.h:233
@ GP_ROW_SYSTEM
Definition app_ui_layout.h:237
static const float DEFAULT_KBD_KEY_PADDING
Definition app_ui_layout.h:23
static const vec3 UI_SPINNER_COLOR
Definition app_ui_layout.h:100
static const float DEFAULT_BASE_RESOLUTION_HEIGHT
Definition app_ui_layout.h:21
static const vec3 DEBUG_ORANGE_COLOR
Definition app_ui_layout.h:76
static const float DEFAULT_KBD_KEY_SIZE
Definition app_ui_layout.h:22
static const float DEBUG_TEXT_Y_OFFSET
Definition app_ui_layout.h:33
static const float DEFAULT_KBD_BOUND_ALPHA
Definition app_ui_layout.h:52
static const float PANEL_FRAME_ALPHA
Definition app_ui_layout.h:53
static const vec3 CYBER_TITLE_COLOR
Definition app_ui_layout.h:73
static const float GRAPH_POS_Y_OFF
Definition app_ui_layout.h:43
static const float LEGEND_STEP_FACTOR
Definition app_ui_layout.h:38
static const vec3 ENV_TEXT_COLOR
Definition app_ui_layout.h:74
static const float LEGEND_X_START_FACTOR
Definition app_ui_layout.h:37
static const float GLOBAL_DIM_SMOOTH_FACTOR
Definition app_ui_layout.h:90
static const float DEFAULT_FONT_SIZE
Definition app_settings.h:216
Definition app_ui_layout.h:217
const char * action
Definition app_ui_layout.h:228
const char * desc
Definition app_ui_layout.h:229
float height
Definition app_ui_layout.h:221
int gp_axis
Definition app_ui_layout.h:225
float width
Definition app_ui_layout.h:220
int gp_btn
Definition app_ui_layout.h:224
bool is_bound
Definition app_ui_layout.h:222
float x_off
Definition app_ui_layout.h:218
int gp_axis2
Definition app_ui_layout.h:226
int bind_type
Definition app_ui_layout.h:223
float y_off
Definition app_ui_layout.h:219
const char * label
Definition app_ui_layout.h:227
Definition app_ui_layout.h:131
int key
Definition app_ui_layout.h:132
const char * label
Definition app_ui_layout.h:136
float width
Definition app_ui_layout.h:135
float x_off
Definition app_ui_layout.h:134
int row
Definition app_ui_layout.h:133