raylib 5.6.0.0.dev1__cp312-cp312-win32.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,876 @@
1
+ /*******************************************************************************************
2
+ *
3
+ * raygui v4.5-dev - A simple and easy-to-use immediate-mode gui library
4
+ *
5
+ * DESCRIPTION:
6
+ * raygui is a tools-dev-focused immediate-mode-gui library based on raylib but also
7
+ * available as a standalone library, as long as input and drawing functions are provided
8
+ *
9
+ * FEATURES:
10
+ * - Immediate-mode gui, minimal retained data
11
+ * - +25 controls provided (basic and advanced)
12
+ * - Styling system for colors, font and metrics
13
+ * - Icons supported, embedded as a 1-bit icons pack
14
+ * - Standalone mode option (custom input/graphics backend)
15
+ * - Multiple support tools provided for raygui development
16
+ *
17
+ * POSSIBLE IMPROVEMENTS:
18
+ * - Better standalone mode API for easy plug of custom backends
19
+ * - Externalize required inputs, allow user easier customization
20
+ *
21
+ * LIMITATIONS:
22
+ * - No editable multi-line word-wraped text box supported
23
+ * - No auto-layout mechanism, up to the user to define controls position and size
24
+ * - Standalone mode requires library modification and some user work to plug another backend
25
+ *
26
+ * NOTES:
27
+ * - WARNING: GuiLoadStyle() and GuiLoadStyle{Custom}() functions, allocate memory for
28
+ * font atlas recs and glyphs, freeing that memory is (usually) up to the user,
29
+ * no unload function is explicitly provided... but note that GuiLoadStyleDefault() unloads
30
+ * by default any previously loaded font (texture, recs, glyphs)
31
+ * - Global UI alpha (guiAlpha) is applied inside GuiDrawRectangle() and GuiDrawText() functions
32
+ *
33
+ * CONTROLS PROVIDED:
34
+ * # Container/separators Controls
35
+ * - WindowBox --> StatusBar, Panel
36
+ * - GroupBox --> Line
37
+ * - Line
38
+ * - Panel --> StatusBar
39
+ * - ScrollPanel --> StatusBar
40
+ * - TabBar --> Button
41
+ *
42
+ * # Basic Controls
43
+ * - Label
44
+ * - LabelButton --> Label
45
+ * - Button
46
+ * - Toggle
47
+ * - ToggleGroup --> Toggle
48
+ * - ToggleSlider
49
+ * - CheckBox
50
+ * - ComboBox
51
+ * - DropdownBox
52
+ * - TextBox
53
+ * - ValueBox --> TextBox
54
+ * - Spinner --> Button, ValueBox
55
+ * - Slider
56
+ * - SliderBar --> Slider
57
+ * - ProgressBar
58
+ * - StatusBar
59
+ * - DummyRec
60
+ * - Grid
61
+ *
62
+ * # Advance Controls
63
+ * - ListView
64
+ * - ColorPicker --> ColorPanel, ColorBarHue
65
+ * - MessageBox --> Window, Label, Button
66
+ * - TextInputBox --> Window, Label, TextBox, Button
67
+ *
68
+ * It also provides a set of functions for styling the controls based on its properties (size, color)
69
+ *
70
+ *
71
+ * RAYGUI STYLE (guiStyle):
72
+ * raygui uses a global data array for all gui style properties (allocated on data segment by default),
73
+ * when a new style is loaded, it is loaded over the global style... but a default gui style could always be
74
+ * recovered with GuiLoadStyleDefault() function, that overwrites the current style to the default one
75
+ *
76
+ * The global style array size is fixed and depends on the number of controls and properties:
77
+ *
78
+ * static unsigned int guiStyle[RAYGUI_MAX_CONTROLS*(RAYGUI_MAX_PROPS_BASE + RAYGUI_MAX_PROPS_EXTENDED)];
79
+ *
80
+ * guiStyle size is by default: 16*(16 + 8) = 384 int = 384*4 bytes = 1536 bytes = 1.5 KB
81
+ *
82
+ * Note that the first set of BASE properties (by default guiStyle[0..15]) belong to the generic style
83
+ * used for all controls, when any of those base values is set, it is automatically populated to all
84
+ * controls, so, specific control values overwriting generic style should be set after base values
85
+ *
86
+ * After the first BASE set we have the EXTENDED properties (by default guiStyle[16..23]), those
87
+ * properties are actually common to all controls and can not be overwritten individually (like BASE ones)
88
+ * Some of those properties are: TEXT_SIZE, TEXT_SPACING, LINE_COLOR, BACKGROUND_COLOR
89
+ *
90
+ * Custom control properties can be defined using the EXTENDED properties for each independent control.
91
+ *
92
+ * TOOL: rGuiStyler is a visual tool to customize raygui style: github.com/raysan5/rguistyler
93
+ *
94
+ *
95
+ * RAYGUI ICONS (guiIcons):
96
+ * raygui could use a global array containing icons data (allocated on data segment by default),
97
+ * a custom icons set could be loaded over this array using GuiLoadIcons(), but loaded icons set
98
+ * must be same RAYGUI_ICON_SIZE and no more than RAYGUI_ICON_MAX_ICONS will be loaded
99
+ *
100
+ * Every icon is codified in binary form, using 1 bit per pixel, so, every 16x16 icon
101
+ * requires 8 integers (16*16/32) to be stored in memory.
102
+ *
103
+ * When the icon is draw, actually one quad per pixel is drawn if the bit for that pixel is set
104
+ *
105
+ * The global icons array size is fixed and depends on the number of icons and size:
106
+ *
107
+ * static unsigned int guiIcons[RAYGUI_ICON_MAX_ICONS*RAYGUI_ICON_DATA_ELEMENTS];
108
+ *
109
+ * guiIcons size is by default: 256*(16*16/32) = 2048*4 = 8192 bytes = 8 KB
110
+ *
111
+ * TOOL: rGuiIcons is a visual tool to customize/create raygui icons: github.com/raysan5/rguiicons
112
+ *
113
+ * RAYGUI LAYOUT:
114
+ * raygui currently does not provide an auto-layout mechanism like other libraries,
115
+ * layouts must be defined manually on controls drawing, providing the right bounds Rectangle for it
116
+ *
117
+ * TOOL: rGuiLayout is a visual tool to create raygui layouts: github.com/raysan5/rguilayout
118
+ *
119
+ * CONFIGURATION:
120
+ * #define RAYGUI_IMPLEMENTATION
121
+ * Generates the implementation of the library into the included file
122
+ * If not defined, the library is in header only mode and can be included in other headers
123
+ * or source files without problems. But only ONE file should hold the implementation
124
+ *
125
+ * #define RAYGUI_STANDALONE
126
+ * Avoid raylib.h header inclusion in this file. Data types defined on raylib are defined
127
+ * internally in the library and input management and drawing functions must be provided by
128
+ * the user (check library implementation for further details)
129
+ *
130
+ * #define RAYGUI_NO_ICONS
131
+ * Avoid including embedded ricons data (256 icons, 16x16 pixels, 1-bit per pixel, 2KB)
132
+ *
133
+ * #define RAYGUI_CUSTOM_ICONS
134
+ * Includes custom ricons.h header defining a set of custom icons,
135
+ * this file can be generated using rGuiIcons tool
136
+ *
137
+ * #define RAYGUI_DEBUG_RECS_BOUNDS
138
+ * Draw control bounds rectangles for debug
139
+ *
140
+ * #define RAYGUI_DEBUG_TEXT_BOUNDS
141
+ * Draw text bounds rectangles for debug
142
+ *
143
+ * VERSIONS HISTORY:
144
+ * 5.0 (xx-Nov-2025) ADDED: Support up to 32 controls (v500)
145
+ * ADDED: guiControlExclusiveMode and guiControlExclusiveRec for exclusive modes
146
+ * ADDED: GuiValueBoxFloat()
147
+ * ADDED: GuiDropdonwBox() properties: DROPDOWN_ARROW_HIDDEN, DROPDOWN_ROLL_UP
148
+ * ADDED: GuiListView() property: LIST_ITEMS_BORDER_WIDTH
149
+ * ADDED: GuiLoadIconsFromMemory()
150
+ * ADDED: Multiple new icons
151
+ * REMOVED: GuiSpinner() from controls list, using BUTTON + VALUEBOX properties
152
+ * REMOVED: GuiSliderPro(), functionality was redundant
153
+ * REVIEWED: Controls using text labels to use LABEL properties
154
+ * REVIEWED: Replaced sprintf() by snprintf() for more safety
155
+ * REVIEWED: GuiTabBar(), close tab with mouse middle button
156
+ * REVIEWED: GuiScrollPanel(), scroll speed proportional to content
157
+ * REVIEWED: GuiDropdownBox(), support roll up and hidden arrow
158
+ * REVIEWED: GuiTextBox(), cursor position initialization
159
+ * REVIEWED: GuiSliderPro(), control value change check
160
+ * REVIEWED: GuiGrid(), simplified implementation
161
+ * REVIEWED: GuiIconText(), increase buffer size and reviewed padding
162
+ * REVIEWED: GuiDrawText(), improved wrap mode drawing
163
+ * REVIEWED: GuiScrollBar(), minor tweaks
164
+ * REVIEWED: GuiProgressBar(), improved borders computing
165
+ * REVIEWED: GuiTextBox(), multiple improvements: autocursor and more
166
+ * REVIEWED: Functions descriptions, removed wrong return value reference
167
+ * REDESIGNED: GuiColorPanel(), improved HSV <-> RGBA convertion
168
+ *
169
+ * 4.0 (12-Sep-2023) ADDED: GuiToggleSlider()
170
+ * ADDED: GuiColorPickerHSV() and GuiColorPanelHSV()
171
+ * ADDED: Multiple new icons, mostly compiler related
172
+ * ADDED: New DEFAULT properties: TEXT_LINE_SPACING, TEXT_ALIGNMENT_VERTICAL, TEXT_WRAP_MODE
173
+ * ADDED: New enum values: GuiTextAlignment, GuiTextAlignmentVertical, GuiTextWrapMode
174
+ * ADDED: Support loading styles with custom font charset from external file
175
+ * REDESIGNED: GuiTextBox(), support mouse cursor positioning
176
+ * REDESIGNED: GuiDrawText(), support multiline and word-wrap modes (read only)
177
+ * REDESIGNED: GuiProgressBar() to be more visual, progress affects border color
178
+ * REDESIGNED: Global alpha consideration moved to GuiDrawRectangle() and GuiDrawText()
179
+ * REDESIGNED: GuiScrollPanel(), get parameters by reference and return result value
180
+ * REDESIGNED: GuiToggleGroup(), get parameters by reference and return result value
181
+ * REDESIGNED: GuiComboBox(), get parameters by reference and return result value
182
+ * REDESIGNED: GuiCheckBox(), get parameters by reference and return result value
183
+ * REDESIGNED: GuiSlider(), get parameters by reference and return result value
184
+ * REDESIGNED: GuiSliderBar(), get parameters by reference and return result value
185
+ * REDESIGNED: GuiProgressBar(), get parameters by reference and return result value
186
+ * REDESIGNED: GuiListView(), get parameters by reference and return result value
187
+ * REDESIGNED: GuiColorPicker(), get parameters by reference and return result value
188
+ * REDESIGNED: GuiColorPanel(), get parameters by reference and return result value
189
+ * REDESIGNED: GuiColorBarAlpha(), get parameters by reference and return result value
190
+ * REDESIGNED: GuiColorBarHue(), get parameters by reference and return result value
191
+ * REDESIGNED: GuiGrid(), get parameters by reference and return result value
192
+ * REDESIGNED: GuiGrid(), added extra parameter
193
+ * REDESIGNED: GuiListViewEx(), change parameters order
194
+ * REDESIGNED: All controls return result as int value
195
+ * REVIEWED: GuiScrollPanel() to avoid smallish scroll-bars
196
+ * REVIEWED: All examples and specially controls_test_suite
197
+ * RENAMED: gui_file_dialog module to gui_window_file_dialog
198
+ * UPDATED: All styles to include ISO-8859-15 charset (as much as possible)
199
+ *
200
+ * 3.6 (10-May-2023) ADDED: New icon: SAND_TIMER
201
+ * ADDED: GuiLoadStyleFromMemory() (binary only)
202
+ * REVIEWED: GuiScrollBar() horizontal movement key
203
+ * REVIEWED: GuiTextBox() crash on cursor movement
204
+ * REVIEWED: GuiTextBox(), additional inputs support
205
+ * REVIEWED: GuiLabelButton(), avoid text cut
206
+ * REVIEWED: GuiTextInputBox(), password input
207
+ * REVIEWED: Local GetCodepointNext(), aligned with raylib
208
+ * REDESIGNED: GuiSlider*()/GuiScrollBar() to support out-of-bounds
209
+ *
210
+ * 3.5 (20-Apr-2023) ADDED: GuiTabBar(), based on GuiToggle()
211
+ * ADDED: Helper functions to split text in separate lines
212
+ * ADDED: Multiple new icons, useful for code editing tools
213
+ * REMOVED: Unneeded icon editing functions
214
+ * REMOVED: GuiTextBoxMulti(), very limited and broken
215
+ * REMOVED: MeasureTextEx() dependency, logic directly implemented
216
+ * REMOVED: DrawTextEx() dependency, logic directly implemented
217
+ * REVIEWED: GuiScrollBar(), improve mouse-click behaviour
218
+ * REVIEWED: Library header info, more info, better organized
219
+ * REDESIGNED: GuiTextBox() to support cursor movement
220
+ * REDESIGNED: GuiDrawText() to divide drawing by lines
221
+ *
222
+ * 3.2 (22-May-2022) RENAMED: Some enum values, for unification, avoiding prefixes
223
+ * REMOVED: GuiScrollBar(), only internal
224
+ * REDESIGNED: GuiPanel() to support text parameter
225
+ * REDESIGNED: GuiScrollPanel() to support text parameter
226
+ * REDESIGNED: GuiColorPicker() to support text parameter
227
+ * REDESIGNED: GuiColorPanel() to support text parameter
228
+ * REDESIGNED: GuiColorBarAlpha() to support text parameter
229
+ * REDESIGNED: GuiColorBarHue() to support text parameter
230
+ * REDESIGNED: GuiTextInputBox() to support password
231
+ *
232
+ * 3.1 (12-Jan-2022) REVIEWED: Default style for consistency (aligned with rGuiLayout v2.5 tool)
233
+ * REVIEWED: GuiLoadStyle() to support compressed font atlas image data and unload previous textures
234
+ * REVIEWED: External icons usage logic
235
+ * REVIEWED: GuiLine() for centered alignment when including text
236
+ * RENAMED: Multiple controls properties definitions to prepend RAYGUI_
237
+ * RENAMED: RICON_ references to RAYGUI_ICON_ for library consistency
238
+ * Projects updated and multiple tweaks
239
+ *
240
+ * 3.0 (04-Nov-2021) Integrated ricons data to avoid external file
241
+ * REDESIGNED: GuiTextBoxMulti()
242
+ * REMOVED: GuiImageButton*()
243
+ * Multiple minor tweaks and bugs corrected
244
+ *
245
+ * 2.9 (17-Mar-2021) REMOVED: Tooltip API
246
+ * 2.8 (03-May-2020) Centralized rectangles drawing to GuiDrawRectangle()
247
+ * 2.7 (20-Feb-2020) ADDED: Possible tooltips API
248
+ * 2.6 (09-Sep-2019) ADDED: GuiTextInputBox()
249
+ * REDESIGNED: GuiListView*(), GuiDropdownBox(), GuiSlider*(), GuiProgressBar(), GuiMessageBox()
250
+ * REVIEWED: GuiTextBox(), GuiSpinner(), GuiValueBox(), GuiLoadStyle()
251
+ * Replaced property INNER_PADDING by TEXT_PADDING, renamed some properties
252
+ * ADDED: 8 new custom styles ready to use
253
+ * Multiple minor tweaks and bugs corrected
254
+ *
255
+ * 2.5 (28-May-2019) Implemented extended GuiTextBox(), GuiValueBox(), GuiSpinner()
256
+ * 2.3 (29-Apr-2019) ADDED: rIcons auxiliar library and support for it, multiple controls reviewed
257
+ * Refactor all controls drawing mechanism to use control state
258
+ * 2.2 (05-Feb-2019) ADDED: GuiScrollBar(), GuiScrollPanel(), reviewed GuiListView(), removed Gui*Ex() controls
259
+ * 2.1 (26-Dec-2018) REDESIGNED: GuiCheckBox(), GuiComboBox(), GuiDropdownBox(), GuiToggleGroup() > Use combined text string
260
+ * REDESIGNED: Style system (breaking change)
261
+ * 2.0 (08-Nov-2018) ADDED: Support controls guiLock and custom fonts
262
+ * REVIEWED: GuiComboBox(), GuiListView()...
263
+ * 1.9 (09-Oct-2018) REVIEWED: GuiGrid(), GuiTextBox(), GuiTextBoxMulti(), GuiValueBox()...
264
+ * 1.8 (01-May-2018) Lot of rework and redesign to align with rGuiStyler and rGuiLayout
265
+ * 1.5 (21-Jun-2017) Working in an improved styles system
266
+ * 1.4 (15-Jun-2017) Rewritten all GUI functions (removed useless ones)
267
+ * 1.3 (12-Jun-2017) Complete redesign of style system
268
+ * 1.1 (01-Jun-2017) Complete review of the library
269
+ * 1.0 (07-Jun-2016) Converted to header-only by Ramon Santamaria
270
+ * 0.9 (07-Mar-2016) Reviewed and tested by Albert Martos, Ian Eito, Sergio Martinez and Ramon Santamaria
271
+ * 0.8 (27-Aug-2015) Initial release. Implemented by Kevin Gato, Daniel Nicolás and Ramon Santamaria
272
+ *
273
+ * DEPENDENCIES:
274
+ * raylib 5.6-dev - Inputs reading (keyboard/mouse), shapes drawing, font loading and text drawing
275
+ *
276
+ * STANDALONE MODE:
277
+ * By default raygui depends on raylib mostly for the inputs and the drawing functionality but that dependency can be disabled
278
+ * with the config flag RAYGUI_STANDALONE. In that case is up to the user to provide another backend to cover library needs
279
+ *
280
+ * The following functions should be redefined for a custom backend:
281
+ *
282
+ * - Vector2 GetMousePosition(void);
283
+ * - float GetMouseWheelMove(void);
284
+ * - bool IsMouseButtonDown(int button);
285
+ * - bool IsMouseButtonPressed(int button);
286
+ * - bool IsMouseButtonReleased(int button);
287
+ * - bool IsKeyDown(int key);
288
+ * - bool IsKeyPressed(int key);
289
+ * - int GetCharPressed(void); // -- GuiTextBox(), GuiValueBox()
290
+ *
291
+ * - void DrawRectangle(int x, int y, int width, int height, Color color); // -- GuiDrawRectangle()
292
+ * - void DrawRectangleGradientEx(Rectangle rec, Color col1, Color col2, Color col3, Color col4); // -- GuiColorPicker()
293
+ *
294
+ * - Font GetFontDefault(void); // -- GuiLoadStyleDefault()
295
+ * - Font LoadFontEx(const char *fileName, int fontSize, int *codepoints, int codepointCount); // -- GuiLoadStyle()
296
+ * - Texture2D LoadTextureFromImage(Image image); // -- GuiLoadStyle(), required to load texture from embedded font atlas image
297
+ * - void SetShapesTexture(Texture2D tex, Rectangle rec); // -- GuiLoadStyle(), required to set shapes rec to font white rec (optimization)
298
+ * - char *LoadFileText(const char *fileName); // -- GuiLoadStyle(), required to load charset data
299
+ * - void UnloadFileText(char *text); // -- GuiLoadStyle(), required to unload charset data
300
+ * - const char *GetDirectoryPath(const char *filePath); // -- GuiLoadStyle(), required to find charset/font file from text .rgs
301
+ * - int *LoadCodepoints(const char *text, int *count); // -- GuiLoadStyle(), required to load required font codepoints list
302
+ * - void UnloadCodepoints(int *codepoints); // -- GuiLoadStyle(), required to unload codepoints list
303
+ * - unsigned char *DecompressData(const unsigned char *compData, int compDataSize, int *dataSize); // -- GuiLoadStyle()
304
+ *
305
+ * CONTRIBUTORS:
306
+ * Ramon Santamaria: Supervision, review, redesign, update and maintenance
307
+ * Vlad Adrian: Complete rewrite of GuiTextBox() to support extended features (2019)
308
+ * Sergio Martinez: Review, testing (2015) and redesign of multiple controls (2018)
309
+ * Adria Arranz: Testing and implementation of additional controls (2018)
310
+ * Jordi Jorba: Testing and implementation of additional controls (2018)
311
+ * Albert Martos: Review and testing of the library (2015)
312
+ * Ian Eito: Review and testing of the library (2015)
313
+ * Kevin Gato: Initial implementation of basic components (2014)
314
+ * Daniel Nicolas: Initial implementation of basic components (2014)
315
+ *
316
+ *
317
+ * LICENSE: zlib/libpng
318
+ *
319
+ * Copyright (c) 2014-2025 Ramon Santamaria (@raysan5)
320
+ *
321
+ * This software is provided "as-is", without any express or implied warranty. In no event
322
+ * will the authors be held liable for any damages arising from the use of this software.
323
+ *
324
+ * Permission is granted to anyone to use this software for any purpose, including commercial
325
+ * applications, and to alter it and redistribute it freely, subject to the following restrictions:
326
+ *
327
+ * 1. The origin of this software must not be misrepresented; you must not claim that you
328
+ * wrote the original software. If you use this software in a product, an acknowledgment
329
+ * in the product documentation would be appreciated but is not required.
330
+ *
331
+ * 2. Altered source versions must be plainly marked as such, and must not be misrepresented
332
+ * as being the original software.
333
+ *
334
+ * 3. This notice may not be removed or altered from any source distribution.
335
+ *
336
+ **********************************************************************************************/
337
+ // Function specifiers in case library is build/used as a shared library (Windows)
338
+ // NOTE: Microsoft specifiers to tell compiler that symbols are imported/exported from a .dll
339
+ // Function specifiers definition
340
+ //----------------------------------------------------------------------------------
341
+ // Defines and Macros
342
+ //----------------------------------------------------------------------------------
343
+ // Simple log system to avoid printf() calls if required
344
+ // NOTE: Avoiding those calls, also avoids const strings memory usage
345
+ //----------------------------------------------------------------------------------
346
+ // Types and Structures Definition
347
+ // NOTE: Some types are required for RAYGUI_STANDALONE usage
348
+ //----------------------------------------------------------------------------------
349
+ // Style property
350
+ // NOTE: Used when exporting style as code for convenience
351
+ typedef struct GuiStyleProp {
352
+ unsigned short controlId; // Control identifier
353
+ unsigned short propertyId; // Property identifier
354
+ int propertyValue; // Property value
355
+ } GuiStyleProp;
356
+ /*
357
+ // Controls text style -NOT USED-
358
+ // NOTE: Text style is defined by control
359
+ typedef struct GuiTextStyle {
360
+ unsigned int size;
361
+ int charSpacing;
362
+ int lineSpacing;
363
+ int alignmentH;
364
+ int alignmentV;
365
+ int padding;
366
+ } GuiTextStyle;
367
+ */
368
+ // Gui control state
369
+ typedef enum {
370
+ STATE_NORMAL = 0,
371
+ STATE_FOCUSED,
372
+ STATE_PRESSED,
373
+ STATE_DISABLED
374
+ } GuiState;
375
+ // Gui control text alignment
376
+ typedef enum {
377
+ TEXT_ALIGN_LEFT = 0,
378
+ TEXT_ALIGN_CENTER,
379
+ TEXT_ALIGN_RIGHT
380
+ } GuiTextAlignment;
381
+ // Gui control text alignment vertical
382
+ // NOTE: Text vertical position inside the text bounds
383
+ typedef enum {
384
+ TEXT_ALIGN_TOP = 0,
385
+ TEXT_ALIGN_MIDDLE,
386
+ TEXT_ALIGN_BOTTOM
387
+ } GuiTextAlignmentVertical;
388
+ // Gui control text wrap mode
389
+ // NOTE: Useful for multiline text
390
+ typedef enum {
391
+ TEXT_WRAP_NONE = 0,
392
+ TEXT_WRAP_CHAR,
393
+ TEXT_WRAP_WORD
394
+ } GuiTextWrapMode;
395
+ // Gui controls
396
+ typedef enum {
397
+ // Default -> populates to all controls when set
398
+ DEFAULT = 0,
399
+ // Basic controls
400
+ LABEL, // Used also for: LABELBUTTON
401
+ BUTTON,
402
+ TOGGLE, // Used also for: TOGGLEGROUP
403
+ SLIDER, // Used also for: SLIDERBAR, TOGGLESLIDER
404
+ PROGRESSBAR,
405
+ CHECKBOX,
406
+ COMBOBOX,
407
+ DROPDOWNBOX,
408
+ TEXTBOX, // Used also for: TEXTBOXMULTI
409
+ VALUEBOX,
410
+ CONTROL11,
411
+ LISTVIEW,
412
+ COLORPICKER,
413
+ SCROLLBAR,
414
+ STATUSBAR
415
+ } GuiControl;
416
+ // Gui base properties for every control
417
+ // NOTE: RAYGUI_MAX_PROPS_BASE properties (by default 16 properties)
418
+ typedef enum {
419
+ BORDER_COLOR_NORMAL = 0, // Control border color in STATE_NORMAL
420
+ BASE_COLOR_NORMAL, // Control base color in STATE_NORMAL
421
+ TEXT_COLOR_NORMAL, // Control text color in STATE_NORMAL
422
+ BORDER_COLOR_FOCUSED, // Control border color in STATE_FOCUSED
423
+ BASE_COLOR_FOCUSED, // Control base color in STATE_FOCUSED
424
+ TEXT_COLOR_FOCUSED, // Control text color in STATE_FOCUSED
425
+ BORDER_COLOR_PRESSED, // Control border color in STATE_PRESSED
426
+ BASE_COLOR_PRESSED, // Control base color in STATE_PRESSED
427
+ TEXT_COLOR_PRESSED, // Control text color in STATE_PRESSED
428
+ BORDER_COLOR_DISABLED, // Control border color in STATE_DISABLED
429
+ BASE_COLOR_DISABLED, // Control base color in STATE_DISABLED
430
+ TEXT_COLOR_DISABLED, // Control text color in STATE_DISABLED
431
+ BORDER_WIDTH = 12, // Control border size, 0 for no border
432
+ //TEXT_SIZE, // Control text size (glyphs max height) -> GLOBAL for all controls
433
+ //TEXT_SPACING, // Control text spacing between glyphs -> GLOBAL for all controls
434
+ //TEXT_LINE_SPACING, // Control text spacing between lines -> GLOBAL for all controls
435
+ TEXT_PADDING = 13, // Control text padding, not considering border
436
+ TEXT_ALIGNMENT = 14, // Control text horizontal alignment inside control text bound (after border and padding)
437
+ //TEXT_WRAP_MODE // Control text wrap-mode inside text bounds -> GLOBAL for all controls
438
+ } GuiControlProperty;
439
+ // TODO: Which text styling properties should be global or per-control?
440
+ // At this moment TEXT_PADDING and TEXT_ALIGNMENT is configured and saved per control while
441
+ // TEXT_SIZE, TEXT_SPACING, TEXT_LINE_SPACING, TEXT_ALIGNMENT_VERTICAL, TEXT_WRAP_MODE are global and
442
+ // should be configured by user as needed while defining the UI layout
443
+ // Gui extended properties depend on control
444
+ // NOTE: RAYGUI_MAX_PROPS_EXTENDED properties (by default, max 8 properties)
445
+ //----------------------------------------------------------------------------------
446
+ // DEFAULT extended properties
447
+ // NOTE: Those properties are common to all controls or global
448
+ // WARNING: We only have 8 slots for those properties by default!!! -> New global control: TEXT?
449
+ typedef enum {
450
+ TEXT_SIZE = 16, // Text size (glyphs max height)
451
+ TEXT_SPACING, // Text spacing between glyphs
452
+ LINE_COLOR, // Line control color
453
+ BACKGROUND_COLOR, // Background color
454
+ TEXT_LINE_SPACING, // Text spacing between lines
455
+ TEXT_ALIGNMENT_VERTICAL, // Text vertical alignment inside text bounds (after border and padding)
456
+ TEXT_WRAP_MODE // Text wrap-mode inside text bounds
457
+ //TEXT_DECORATION // Text decoration: 0-None, 1-Underline, 2-Line-through, 3-Overline
458
+ //TEXT_DECORATION_THICK // Text decoration line thickness
459
+ } GuiDefaultProperty;
460
+ // Other possible text properties:
461
+ // TEXT_WEIGHT // Normal, Italic, Bold -> Requires specific font change
462
+ // TEXT_INDENT // Text indentation -> Now using TEXT_PADDING...
463
+ // Label
464
+ //typedef enum { } GuiLabelProperty;
465
+ // Button/Spinner
466
+ //typedef enum { } GuiButtonProperty;
467
+ // Toggle/ToggleGroup
468
+ typedef enum {
469
+ GROUP_PADDING = 16, // ToggleGroup separation between toggles
470
+ } GuiToggleProperty;
471
+ // Slider/SliderBar
472
+ typedef enum {
473
+ SLIDER_WIDTH = 16, // Slider size of internal bar
474
+ SLIDER_PADDING // Slider/SliderBar internal bar padding
475
+ } GuiSliderProperty;
476
+ // ProgressBar
477
+ typedef enum {
478
+ PROGRESS_PADDING = 16, // ProgressBar internal padding
479
+ } GuiProgressBarProperty;
480
+ // ScrollBar
481
+ typedef enum {
482
+ ARROWS_SIZE = 16, // ScrollBar arrows size
483
+ ARROWS_VISIBLE, // ScrollBar arrows visible
484
+ SCROLL_SLIDER_PADDING, // ScrollBar slider internal padding
485
+ SCROLL_SLIDER_SIZE, // ScrollBar slider size
486
+ SCROLL_PADDING, // ScrollBar scroll padding from arrows
487
+ SCROLL_SPEED, // ScrollBar scrolling speed
488
+ } GuiScrollBarProperty;
489
+ // CheckBox
490
+ typedef enum {
491
+ CHECK_PADDING = 16 // CheckBox internal check padding
492
+ } GuiCheckBoxProperty;
493
+ // ComboBox
494
+ typedef enum {
495
+ COMBO_BUTTON_WIDTH = 16, // ComboBox right button width
496
+ COMBO_BUTTON_SPACING // ComboBox button separation
497
+ } GuiComboBoxProperty;
498
+ // DropdownBox
499
+ typedef enum {
500
+ ARROW_PADDING = 16, // DropdownBox arrow separation from border and items
501
+ DROPDOWN_ITEMS_SPACING, // DropdownBox items separation
502
+ DROPDOWN_ARROW_HIDDEN, // DropdownBox arrow hidden
503
+ DROPDOWN_ROLL_UP // DropdownBox roll up flag (default rolls down)
504
+ } GuiDropdownBoxProperty;
505
+ // TextBox/TextBoxMulti/ValueBox/Spinner
506
+ typedef enum {
507
+ TEXT_READONLY = 16, // TextBox in read-only mode: 0-text editable, 1-text no-editable
508
+ } GuiTextBoxProperty;
509
+ // ValueBox/Spinner
510
+ typedef enum {
511
+ SPINNER_BUTTON_WIDTH = 16, // Spinner left/right buttons width
512
+ SPINNER_BUTTON_SPACING, // Spinner buttons separation
513
+ } GuiValueBoxProperty;
514
+ // Control11
515
+ //typedef enum { } GuiControl11Property;
516
+ // ListView
517
+ typedef enum {
518
+ LIST_ITEMS_HEIGHT = 16, // ListView items height
519
+ LIST_ITEMS_SPACING, // ListView items separation
520
+ SCROLLBAR_WIDTH, // ListView scrollbar size (usually width)
521
+ SCROLLBAR_SIDE, // ListView scrollbar side (0-SCROLLBAR_LEFT_SIDE, 1-SCROLLBAR_RIGHT_SIDE)
522
+ LIST_ITEMS_BORDER_NORMAL, // ListView items border enabled in normal state
523
+ LIST_ITEMS_BORDER_WIDTH // ListView items border width
524
+ } GuiListViewProperty;
525
+ // ColorPicker
526
+ typedef enum {
527
+ COLOR_SELECTOR_SIZE = 16,
528
+ HUEBAR_WIDTH, // ColorPicker right hue bar width
529
+ HUEBAR_PADDING, // ColorPicker right hue bar separation from panel
530
+ HUEBAR_SELECTOR_HEIGHT, // ColorPicker right hue bar selector height
531
+ HUEBAR_SELECTOR_OVERFLOW // ColorPicker right hue bar selector overflow
532
+ } GuiColorPickerProperty;
533
+ //----------------------------------------------------------------------------------
534
+ // Global Variables Definition
535
+ //----------------------------------------------------------------------------------
536
+ // ...
537
+ //----------------------------------------------------------------------------------
538
+ // Module Functions Declaration
539
+ //----------------------------------------------------------------------------------
540
+ // Global gui state control functions
541
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ void GuiEnable(void); // Enable gui controls (global state)
542
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ void GuiDisable(void); // Disable gui controls (global state)
543
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ void GuiLock(void); // Lock gui controls (global state)
544
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ void GuiUnlock(void); // Unlock gui controls (global state)
545
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ bool GuiIsLocked(void); // Check if gui is locked (global state)
546
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ void GuiSetAlpha(float alpha); // Set gui controls alpha (global state), alpha goes from 0.0f to 1.0f
547
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ void GuiSetState(int state); // Set gui state (global state)
548
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiGetState(void); // Get gui state (global state)
549
+ // Font set/get functions
550
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ void GuiSetFont(Font font); // Set gui custom font (global state)
551
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ Font GuiGetFont(void); // Get gui custom font (global state)
552
+ // Style set/get functions
553
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ void GuiSetStyle(int control, int property, unsigned int value); // Set one style property
554
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ unsigned int GuiGetStyle(int control, int property); // Get one style property
555
+ // Styles loading functions
556
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ void GuiLoadStyle(const char *fileName); // Load style file over global style variable (.rgs)
557
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ void GuiLoadStyleDefault(void); // Load style default over global style
558
+ // Tooltips management functions
559
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ void GuiEnableTooltip(void); // Enable gui tooltips (global state)
560
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ void GuiDisableTooltip(void); // Disable gui tooltips (global state)
561
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ void GuiSetTooltip(const char *tooltip); // Set tooltip string
562
+ // Icons functionality
563
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ const char *GuiIconText(int iconId, const char *text); // Get text with icon id prepended (if supported)
564
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ void GuiSetIconScale(int scale); // Set default icon drawing size
565
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ unsigned int *GuiGetIcons(void); // Get raygui icons data pointer
566
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ char **GuiLoadIcons(const char *fileName, bool loadIconsName); // Load raygui icons file (.rgi) into internal icons data
567
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ void GuiDrawIcon(int iconId, int posX, int posY, int pixelSize, Color color); // Draw icon using pixel size at specified position
568
+ // Utility functions
569
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiGetTextWidth(const char *text); // Get text width considering gui style and icon size (if required)
570
+ // Controls
571
+ //----------------------------------------------------------------------------------------------------------
572
+ // Container/separator controls, useful for controls organization
573
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiWindowBox(Rectangle bounds, const char *title); // Window Box control, shows a window that can be closed
574
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiGroupBox(Rectangle bounds, const char *text); // Group Box control with text name
575
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiLine(Rectangle bounds, const char *text); // Line separator control, could contain text
576
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiPanel(Rectangle bounds, const char *text); // Panel control, useful to group controls
577
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiTabBar(Rectangle bounds, const char **text, int count, int *active); // Tab Bar control, returns TAB to be closed or -1
578
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiScrollPanel(Rectangle bounds, const char *text, Rectangle content, Vector2 *scroll, Rectangle *view); // Scroll Panel control
579
+ // Basic controls set
580
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiLabel(Rectangle bounds, const char *text); // Label control
581
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiButton(Rectangle bounds, const char *text); // Button control, returns true when clicked
582
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiLabelButton(Rectangle bounds, const char *text); // Label button control, returns true when clicked
583
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiToggle(Rectangle bounds, const char *text, bool *active); // Toggle Button control
584
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiToggleGroup(Rectangle bounds, const char *text, int *active); // Toggle Group control
585
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiToggleSlider(Rectangle bounds, const char *text, int *active); // Toggle Slider control
586
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiCheckBox(Rectangle bounds, const char *text, bool *checked); // Check Box control, returns true when active
587
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiComboBox(Rectangle bounds, const char *text, int *active); // Combo Box control
588
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiDropdownBox(Rectangle bounds, const char *text, int *active, bool editMode); // Dropdown Box control
589
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiSpinner(Rectangle bounds, const char *text, int *value, int minValue, int maxValue, bool editMode); // Spinner control
590
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiValueBox(Rectangle bounds, const char *text, int *value, int minValue, int maxValue, bool editMode); // Value Box control, updates input text with numbers
591
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiValueBoxFloat(Rectangle bounds, const char *text, char *textValue, float *value, bool editMode); // Value box control for float values
592
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiTextBox(Rectangle bounds, char *text, int textSize, bool editMode); // Text Box control, updates input text
593
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiSlider(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue); // Slider control
594
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiSliderBar(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue); // Slider Bar control
595
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiProgressBar(Rectangle bounds, const char *textLeft, const char *textRight, float *value, float minValue, float maxValue); // Progress Bar control
596
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiStatusBar(Rectangle bounds, const char *text); // Status Bar control, shows info text
597
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiDummyRec(Rectangle bounds, const char *text); // Dummy control for placeholders
598
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiGrid(Rectangle bounds, const char *text, float spacing, int subdivs, Vector2 *mouseCell); // Grid control
599
+ // Advance controls set
600
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiListView(Rectangle bounds, const char *text, int *scrollIndex, int *active); // List View control
601
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiListViewEx(Rectangle bounds, const char **text, int count, int *scrollIndex, int *active, int *focus); // List View with extended parameters
602
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiMessageBox(Rectangle bounds, const char *title, const char *message, const char *buttons); // Message Box control, displays a message
603
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiTextInputBox(Rectangle bounds, const char *title, const char *message, const char *buttons, char *text, int textMaxSize, bool *secretViewActive); // Text Input Box control, ask for text, supports secret
604
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiColorPicker(Rectangle bounds, const char *text, Color *color); // Color Picker control (multiple color controls)
605
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiColorPanel(Rectangle bounds, const char *text, Color *color); // Color Panel control
606
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiColorBarAlpha(Rectangle bounds, const char *text, float *alpha); // Color Bar Alpha control
607
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiColorBarHue(Rectangle bounds, const char *text, float *value); // Color Bar Hue control
608
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiColorPickerHSV(Rectangle bounds, const char *text, Vector3 *colorHsv); // Color Picker control that avoids conversion to RGB on each call (multiple color controls)
609
+ /* Functions defined as 'extern' by default (implicit specifiers)*/ int GuiColorPanelHSV(Rectangle bounds, const char *text, Vector3 *colorHsv); // Color Panel control that updates Hue-Saturation-Value color value, used by GuiColorPickerHSV()
610
+ //----------------------------------------------------------------------------------------------------------
611
+ //----------------------------------------------------------------------------------
612
+ // Icons enumeration
613
+ //----------------------------------------------------------------------------------
614
+ typedef enum {
615
+ ICON_NONE = 0,
616
+ ICON_FOLDER_FILE_OPEN = 1,
617
+ ICON_FILE_SAVE_CLASSIC = 2,
618
+ ICON_FOLDER_OPEN = 3,
619
+ ICON_FOLDER_SAVE = 4,
620
+ ICON_FILE_OPEN = 5,
621
+ ICON_FILE_SAVE = 6,
622
+ ICON_FILE_EXPORT = 7,
623
+ ICON_FILE_ADD = 8,
624
+ ICON_FILE_DELETE = 9,
625
+ ICON_FILETYPE_TEXT = 10,
626
+ ICON_FILETYPE_AUDIO = 11,
627
+ ICON_FILETYPE_IMAGE = 12,
628
+ ICON_FILETYPE_PLAY = 13,
629
+ ICON_FILETYPE_VIDEO = 14,
630
+ ICON_FILETYPE_INFO = 15,
631
+ ICON_FILE_COPY = 16,
632
+ ICON_FILE_CUT = 17,
633
+ ICON_FILE_PASTE = 18,
634
+ ICON_CURSOR_HAND = 19,
635
+ ICON_CURSOR_POINTER = 20,
636
+ ICON_CURSOR_CLASSIC = 21,
637
+ ICON_PENCIL = 22,
638
+ ICON_PENCIL_BIG = 23,
639
+ ICON_BRUSH_CLASSIC = 24,
640
+ ICON_BRUSH_PAINTER = 25,
641
+ ICON_WATER_DROP = 26,
642
+ ICON_COLOR_PICKER = 27,
643
+ ICON_RUBBER = 28,
644
+ ICON_COLOR_BUCKET = 29,
645
+ ICON_TEXT_T = 30,
646
+ ICON_TEXT_A = 31,
647
+ ICON_SCALE = 32,
648
+ ICON_RESIZE = 33,
649
+ ICON_FILTER_POINT = 34,
650
+ ICON_FILTER_BILINEAR = 35,
651
+ ICON_CROP = 36,
652
+ ICON_CROP_ALPHA = 37,
653
+ ICON_SQUARE_TOGGLE = 38,
654
+ ICON_SYMMETRY = 39,
655
+ ICON_SYMMETRY_HORIZONTAL = 40,
656
+ ICON_SYMMETRY_VERTICAL = 41,
657
+ ICON_LENS = 42,
658
+ ICON_LENS_BIG = 43,
659
+ ICON_EYE_ON = 44,
660
+ ICON_EYE_OFF = 45,
661
+ ICON_FILTER_TOP = 46,
662
+ ICON_FILTER = 47,
663
+ ICON_TARGET_POINT = 48,
664
+ ICON_TARGET_SMALL = 49,
665
+ ICON_TARGET_BIG = 50,
666
+ ICON_TARGET_MOVE = 51,
667
+ ICON_CURSOR_MOVE = 52,
668
+ ICON_CURSOR_SCALE = 53,
669
+ ICON_CURSOR_SCALE_RIGHT = 54,
670
+ ICON_CURSOR_SCALE_LEFT = 55,
671
+ ICON_UNDO = 56,
672
+ ICON_REDO = 57,
673
+ ICON_REREDO = 58,
674
+ ICON_MUTATE = 59,
675
+ ICON_ROTATE = 60,
676
+ ICON_REPEAT = 61,
677
+ ICON_SHUFFLE = 62,
678
+ ICON_EMPTYBOX = 63,
679
+ ICON_TARGET = 64,
680
+ ICON_TARGET_SMALL_FILL = 65,
681
+ ICON_TARGET_BIG_FILL = 66,
682
+ ICON_TARGET_MOVE_FILL = 67,
683
+ ICON_CURSOR_MOVE_FILL = 68,
684
+ ICON_CURSOR_SCALE_FILL = 69,
685
+ ICON_CURSOR_SCALE_RIGHT_FILL = 70,
686
+ ICON_CURSOR_SCALE_LEFT_FILL = 71,
687
+ ICON_UNDO_FILL = 72,
688
+ ICON_REDO_FILL = 73,
689
+ ICON_REREDO_FILL = 74,
690
+ ICON_MUTATE_FILL = 75,
691
+ ICON_ROTATE_FILL = 76,
692
+ ICON_REPEAT_FILL = 77,
693
+ ICON_SHUFFLE_FILL = 78,
694
+ ICON_EMPTYBOX_SMALL = 79,
695
+ ICON_BOX = 80,
696
+ ICON_BOX_TOP = 81,
697
+ ICON_BOX_TOP_RIGHT = 82,
698
+ ICON_BOX_RIGHT = 83,
699
+ ICON_BOX_BOTTOM_RIGHT = 84,
700
+ ICON_BOX_BOTTOM = 85,
701
+ ICON_BOX_BOTTOM_LEFT = 86,
702
+ ICON_BOX_LEFT = 87,
703
+ ICON_BOX_TOP_LEFT = 88,
704
+ ICON_BOX_CENTER = 89,
705
+ ICON_BOX_CIRCLE_MASK = 90,
706
+ ICON_POT = 91,
707
+ ICON_ALPHA_MULTIPLY = 92,
708
+ ICON_ALPHA_CLEAR = 93,
709
+ ICON_DITHERING = 94,
710
+ ICON_MIPMAPS = 95,
711
+ ICON_BOX_GRID = 96,
712
+ ICON_GRID = 97,
713
+ ICON_BOX_CORNERS_SMALL = 98,
714
+ ICON_BOX_CORNERS_BIG = 99,
715
+ ICON_FOUR_BOXES = 100,
716
+ ICON_GRID_FILL = 101,
717
+ ICON_BOX_MULTISIZE = 102,
718
+ ICON_ZOOM_SMALL = 103,
719
+ ICON_ZOOM_MEDIUM = 104,
720
+ ICON_ZOOM_BIG = 105,
721
+ ICON_ZOOM_ALL = 106,
722
+ ICON_ZOOM_CENTER = 107,
723
+ ICON_BOX_DOTS_SMALL = 108,
724
+ ICON_BOX_DOTS_BIG = 109,
725
+ ICON_BOX_CONCENTRIC = 110,
726
+ ICON_BOX_GRID_BIG = 111,
727
+ ICON_OK_TICK = 112,
728
+ ICON_CROSS = 113,
729
+ ICON_ARROW_LEFT = 114,
730
+ ICON_ARROW_RIGHT = 115,
731
+ ICON_ARROW_DOWN = 116,
732
+ ICON_ARROW_UP = 117,
733
+ ICON_ARROW_LEFT_FILL = 118,
734
+ ICON_ARROW_RIGHT_FILL = 119,
735
+ ICON_ARROW_DOWN_FILL = 120,
736
+ ICON_ARROW_UP_FILL = 121,
737
+ ICON_AUDIO = 122,
738
+ ICON_FX = 123,
739
+ ICON_WAVE = 124,
740
+ ICON_WAVE_SINUS = 125,
741
+ ICON_WAVE_SQUARE = 126,
742
+ ICON_WAVE_TRIANGULAR = 127,
743
+ ICON_CROSS_SMALL = 128,
744
+ ICON_PLAYER_PREVIOUS = 129,
745
+ ICON_PLAYER_PLAY_BACK = 130,
746
+ ICON_PLAYER_PLAY = 131,
747
+ ICON_PLAYER_PAUSE = 132,
748
+ ICON_PLAYER_STOP = 133,
749
+ ICON_PLAYER_NEXT = 134,
750
+ ICON_PLAYER_RECORD = 135,
751
+ ICON_MAGNET = 136,
752
+ ICON_LOCK_CLOSE = 137,
753
+ ICON_LOCK_OPEN = 138,
754
+ ICON_CLOCK = 139,
755
+ ICON_TOOLS = 140,
756
+ ICON_GEAR = 141,
757
+ ICON_GEAR_BIG = 142,
758
+ ICON_BIN = 143,
759
+ ICON_HAND_POINTER = 144,
760
+ ICON_LASER = 145,
761
+ ICON_COIN = 146,
762
+ ICON_EXPLOSION = 147,
763
+ ICON_1UP = 148,
764
+ ICON_PLAYER = 149,
765
+ ICON_PLAYER_JUMP = 150,
766
+ ICON_KEY = 151,
767
+ ICON_DEMON = 152,
768
+ ICON_TEXT_POPUP = 153,
769
+ ICON_GEAR_EX = 154,
770
+ ICON_CRACK = 155,
771
+ ICON_CRACK_POINTS = 156,
772
+ ICON_STAR = 157,
773
+ ICON_DOOR = 158,
774
+ ICON_EXIT = 159,
775
+ ICON_MODE_2D = 160,
776
+ ICON_MODE_3D = 161,
777
+ ICON_CUBE = 162,
778
+ ICON_CUBE_FACE_TOP = 163,
779
+ ICON_CUBE_FACE_LEFT = 164,
780
+ ICON_CUBE_FACE_FRONT = 165,
781
+ ICON_CUBE_FACE_BOTTOM = 166,
782
+ ICON_CUBE_FACE_RIGHT = 167,
783
+ ICON_CUBE_FACE_BACK = 168,
784
+ ICON_CAMERA = 169,
785
+ ICON_SPECIAL = 170,
786
+ ICON_LINK_NET = 171,
787
+ ICON_LINK_BOXES = 172,
788
+ ICON_LINK_MULTI = 173,
789
+ ICON_LINK = 174,
790
+ ICON_LINK_BROKE = 175,
791
+ ICON_TEXT_NOTES = 176,
792
+ ICON_NOTEBOOK = 177,
793
+ ICON_SUITCASE = 178,
794
+ ICON_SUITCASE_ZIP = 179,
795
+ ICON_MAILBOX = 180,
796
+ ICON_MONITOR = 181,
797
+ ICON_PRINTER = 182,
798
+ ICON_PHOTO_CAMERA = 183,
799
+ ICON_PHOTO_CAMERA_FLASH = 184,
800
+ ICON_HOUSE = 185,
801
+ ICON_HEART = 186,
802
+ ICON_CORNER = 187,
803
+ ICON_VERTICAL_BARS = 188,
804
+ ICON_VERTICAL_BARS_FILL = 189,
805
+ ICON_LIFE_BARS = 190,
806
+ ICON_INFO = 191,
807
+ ICON_CROSSLINE = 192,
808
+ ICON_HELP = 193,
809
+ ICON_FILETYPE_ALPHA = 194,
810
+ ICON_FILETYPE_HOME = 195,
811
+ ICON_LAYERS_VISIBLE = 196,
812
+ ICON_LAYERS = 197,
813
+ ICON_WINDOW = 198,
814
+ ICON_HIDPI = 199,
815
+ ICON_FILETYPE_BINARY = 200,
816
+ ICON_HEX = 201,
817
+ ICON_SHIELD = 202,
818
+ ICON_FILE_NEW = 203,
819
+ ICON_FOLDER_ADD = 204,
820
+ ICON_ALARM = 205,
821
+ ICON_CPU = 206,
822
+ ICON_ROM = 207,
823
+ ICON_STEP_OVER = 208,
824
+ ICON_STEP_INTO = 209,
825
+ ICON_STEP_OUT = 210,
826
+ ICON_RESTART = 211,
827
+ ICON_BREAKPOINT_ON = 212,
828
+ ICON_BREAKPOINT_OFF = 213,
829
+ ICON_BURGER_MENU = 214,
830
+ ICON_CASE_SENSITIVE = 215,
831
+ ICON_REG_EXP = 216,
832
+ ICON_FOLDER = 217,
833
+ ICON_FILE = 218,
834
+ ICON_SAND_TIMER = 219,
835
+ ICON_WARNING = 220,
836
+ ICON_HELP_BOX = 221,
837
+ ICON_INFO_BOX = 222,
838
+ ICON_PRIORITY = 223,
839
+ ICON_LAYERS_ISO = 224,
840
+ ICON_LAYERS2 = 225,
841
+ ICON_MLAYERS = 226,
842
+ ICON_MAPS = 227,
843
+ ICON_HOT = 228,
844
+ ICON_LABEL = 229,
845
+ ICON_NAME_ID = 230,
846
+ ICON_SLICING = 231,
847
+ ICON_MANUAL_CONTROL = 232,
848
+ ICON_COLLISION = 233,
849
+ ICON_CIRCLE_ADD = 234,
850
+ ICON_CIRCLE_ADD_FILL = 235,
851
+ ICON_CIRCLE_WARNING = 236,
852
+ ICON_CIRCLE_WARNING_FILL = 237,
853
+ ICON_BOX_MORE = 238,
854
+ ICON_BOX_MORE_FILL = 239,
855
+ ICON_BOX_MINUS = 240,
856
+ ICON_BOX_MINUS_FILL = 241,
857
+ ICON_UNION = 242,
858
+ ICON_INTERSECTION = 243,
859
+ ICON_DIFFERENCE = 244,
860
+ ICON_SPHERE = 245,
861
+ ICON_CYLINDER = 246,
862
+ ICON_CONE = 247,
863
+ ICON_ELLIPSOID = 248,
864
+ ICON_CAPSULE = 249,
865
+ ICON_250 = 250,
866
+ ICON_251 = 251,
867
+ ICON_252 = 252,
868
+ ICON_253 = 253,
869
+ ICON_254 = 254,
870
+ ICON_255 = 255
871
+ } GuiIconName;
872
+ /***********************************************************************************
873
+ *
874
+ * RAYGUI IMPLEMENTATION
875
+ *
876
+ ************************************************************************************/