10#ifndef APP_UI_LAYOUT_H
11#define APP_UI_LAYOUT_H
14#include <GLFW/glfw3.h>
15#include <cglm/types.h>
141 {GLFW_KEY_ESCAPE,
ROW_SYSTEM, 0.0F, 1.0F,
"Esc"},
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"},
156 {GLFW_KEY_GRAVE_ACCENT,
ROW_NUMBERS, 0.0F, 1.0F,
"~"},
169 {GLFW_KEY_TAB,
ROW_QWERTY, 0.0F, 1.5F,
"Tab"},
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"},
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,
"."},
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"}};
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)."},
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."},
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",
"",
""},
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",
"",
""},
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)."},
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)."},
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",
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