raylib-bindings 0.5.3 → 0.5.4

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,871 @@
1
+ # Yet another raylib wrapper for Ruby
2
+ #
3
+ # * https://github.com/vaiorabbit/raylib-bindings
4
+ #
5
+ # [NOTICE] Autogenerated. Do not edit.
6
+
7
+ require 'ffi'
8
+
9
+ module Raylib
10
+ extend FFI::Library
11
+
12
+ # Define/Macro
13
+
14
+ RAYGUI_VERSION_MAJOR = 4
15
+ RAYGUI_VERSION_MINOR = 0
16
+ RAYGUI_VERSION_PATCH = 0
17
+ RAYGUI_VERSION = "4.0-dev"
18
+ SCROLLBAR_LEFT_SIDE = 0
19
+ SCROLLBAR_RIGHT_SIDE = 1
20
+
21
+ # Enum
22
+
23
+ # enum GuiState
24
+ # Gui control state
25
+ STATE_NORMAL = 0
26
+ STATE_FOCUSED = 1
27
+ STATE_PRESSED = 2
28
+ STATE_DISABLED = 3
29
+
30
+ # enum GuiTextAlignment
31
+ # Gui control text alignment
32
+ TEXT_ALIGN_LEFT = 0
33
+ TEXT_ALIGN_CENTER = 1
34
+ TEXT_ALIGN_RIGHT = 2
35
+
36
+ # enum GuiControl
37
+ # Gui controls
38
+ DEFAULT = 0
39
+ LABEL = 1 # Used also for: LABELBUTTON
40
+ BUTTON = 2
41
+ TOGGLE = 3 # Used also for: TOGGLEGROUP
42
+ SLIDER = 4 # Used also for: SLIDERBAR
43
+ PROGRESSBAR = 5
44
+ CHECKBOX = 6
45
+ COMBOBOX = 7
46
+ DROPDOWNBOX = 8
47
+ TEXTBOX = 9 # Used also for: TEXTBOXMULTI
48
+ VALUEBOX = 10
49
+ SPINNER = 11 # Uses: BUTTON, VALUEBOX
50
+ LISTVIEW = 12
51
+ COLORPICKER = 13
52
+ SCROLLBAR = 14
53
+ STATUSBAR = 15
54
+
55
+ # enum GuiControlProperty
56
+ # Gui base properties for every control
57
+ BORDER_COLOR_NORMAL = 0
58
+ BASE_COLOR_NORMAL = 1
59
+ TEXT_COLOR_NORMAL = 2
60
+ BORDER_COLOR_FOCUSED = 3
61
+ BASE_COLOR_FOCUSED = 4
62
+ TEXT_COLOR_FOCUSED = 5
63
+ BORDER_COLOR_PRESSED = 6
64
+ BASE_COLOR_PRESSED = 7
65
+ TEXT_COLOR_PRESSED = 8
66
+ BORDER_COLOR_DISABLED = 9
67
+ BASE_COLOR_DISABLED = 10
68
+ TEXT_COLOR_DISABLED = 11
69
+ BORDER_WIDTH = 12
70
+ TEXT_PADDING = 13
71
+ TEXT_ALIGNMENT = 14
72
+ RESERVED = 15
73
+
74
+ # enum GuiDefaultProperty
75
+ # DEFAULT extended properties
76
+ TEXT_SIZE = 16 # Text size (glyphs max height)
77
+ TEXT_SPACING = 17 # Text spacing between glyphs
78
+ LINE_COLOR = 18 # Line control color
79
+ BACKGROUND_COLOR = 19 # Background color
80
+ TEXT_LINE_SPACING = 20 # Text spacing between lines
81
+
82
+ # enum GuiToggleProperty
83
+ # Toggle/ToggleGroup
84
+ GROUP_PADDING = 16 # ToggleGroup separation between toggles
85
+
86
+ # enum GuiSliderProperty
87
+ # Slider/SliderBar
88
+ SLIDER_WIDTH = 16 # Slider size of internal bar
89
+ SLIDER_PADDING = 17 # Slider/SliderBar internal bar padding
90
+
91
+ # enum GuiProgressBarProperty
92
+ # ProgressBar
93
+ PROGRESS_PADDING = 16 # ProgressBar internal padding
94
+
95
+ # enum GuiScrollBarProperty
96
+ # ScrollBar
97
+ ARROWS_SIZE = 16
98
+ ARROWS_VISIBLE = 17
99
+ SCROLL_SLIDER_PADDING = 18 # (SLIDERBAR, SLIDER_PADDING)
100
+ SCROLL_SLIDER_SIZE = 19
101
+ SCROLL_PADDING = 20
102
+ SCROLL_SPEED = 21
103
+
104
+ # enum GuiCheckBoxProperty
105
+ # CheckBox
106
+ CHECK_PADDING = 16 # CheckBox internal check padding
107
+
108
+ # enum GuiComboBoxProperty
109
+ # ComboBox
110
+ COMBO_BUTTON_WIDTH = 16 # ComboBox right button width
111
+ COMBO_BUTTON_SPACING = 17 # ComboBox button separation
112
+
113
+ # enum GuiDropdownBoxProperty
114
+ # DropdownBox
115
+ ARROW_PADDING = 16 # DropdownBox arrow separation from border and items
116
+ DROPDOWN_ITEMS_SPACING = 17 # DropdownBox items separation
117
+
118
+ # enum GuiTextBoxProperty
119
+ # TextBox/TextBoxMulti/ValueBox/Spinner
120
+ TEXT_INNER_PADDING = 16 # TextBox/TextBoxMulti/ValueBox/Spinner inner text padding
121
+ TEXT_LINES_SPACING = 17 # TextBoxMulti lines separation
122
+ TEXT_ALIGNMENT_VERTICAL = 18 # TextBoxMulti vertical alignment: 0-CENTERED, 1-UP, 2-DOWN
123
+ TEXT_MULTILINE = 19 # TextBox supports multiple lines
124
+ TEXT_WRAP_MODE = 20 # TextBox wrap mode for multiline: 0-NO_WRAP, 1-CHAR_WRAP, 2-WORD_WRAP
125
+
126
+ # enum GuiSpinnerProperty
127
+ # Spinner
128
+ SPIN_BUTTON_WIDTH = 16 # Spinner left/right buttons width
129
+ SPIN_BUTTON_SPACING = 17 # Spinner buttons separation
130
+
131
+ # enum GuiListViewProperty
132
+ # ListView
133
+ LIST_ITEMS_HEIGHT = 16 # ListView items height
134
+ LIST_ITEMS_SPACING = 17 # ListView items separation
135
+ SCROLLBAR_WIDTH = 18 # ListView scrollbar size (usually width)
136
+ SCROLLBAR_SIDE = 19 # ListView scrollbar side (0-left, 1-right)
137
+
138
+ # enum GuiColorPickerProperty
139
+ # ColorPicker
140
+ COLOR_SELECTOR_SIZE = 16
141
+ HUEBAR_WIDTH = 17 # ColorPicker right hue bar width
142
+ HUEBAR_PADDING = 18 # ColorPicker right hue bar separation from panel
143
+ HUEBAR_SELECTOR_HEIGHT = 19 # ColorPicker right hue bar selector height
144
+ HUEBAR_SELECTOR_OVERFLOW = 20 # ColorPicker right hue bar selector overflow
145
+
146
+ # enum GuiIconName
147
+ #
148
+ ICON_NONE = 0
149
+ ICON_FOLDER_FILE_OPEN = 1
150
+ ICON_FILE_SAVE_CLASSIC = 2
151
+ ICON_FOLDER_OPEN = 3
152
+ ICON_FOLDER_SAVE = 4
153
+ ICON_FILE_OPEN = 5
154
+ ICON_FILE_SAVE = 6
155
+ ICON_FILE_EXPORT = 7
156
+ ICON_FILE_ADD = 8
157
+ ICON_FILE_DELETE = 9
158
+ ICON_FILETYPE_TEXT = 10
159
+ ICON_FILETYPE_AUDIO = 11
160
+ ICON_FILETYPE_IMAGE = 12
161
+ ICON_FILETYPE_PLAY = 13
162
+ ICON_FILETYPE_VIDEO = 14
163
+ ICON_FILETYPE_INFO = 15
164
+ ICON_FILE_COPY = 16
165
+ ICON_FILE_CUT = 17
166
+ ICON_FILE_PASTE = 18
167
+ ICON_CURSOR_HAND = 19
168
+ ICON_CURSOR_POINTER = 20
169
+ ICON_CURSOR_CLASSIC = 21
170
+ ICON_PENCIL = 22
171
+ ICON_PENCIL_BIG = 23
172
+ ICON_BRUSH_CLASSIC = 24
173
+ ICON_BRUSH_PAINTER = 25
174
+ ICON_WATER_DROP = 26
175
+ ICON_COLOR_PICKER = 27
176
+ ICON_RUBBER = 28
177
+ ICON_COLOR_BUCKET = 29
178
+ ICON_TEXT_T = 30
179
+ ICON_TEXT_A = 31
180
+ ICON_SCALE = 32
181
+ ICON_RESIZE = 33
182
+ ICON_FILTER_POINT = 34
183
+ ICON_FILTER_BILINEAR = 35
184
+ ICON_CROP = 36
185
+ ICON_CROP_ALPHA = 37
186
+ ICON_SQUARE_TOGGLE = 38
187
+ ICON_SYMMETRY = 39
188
+ ICON_SYMMETRY_HORIZONTAL = 40
189
+ ICON_SYMMETRY_VERTICAL = 41
190
+ ICON_LENS = 42
191
+ ICON_LENS_BIG = 43
192
+ ICON_EYE_ON = 44
193
+ ICON_EYE_OFF = 45
194
+ ICON_FILTER_TOP = 46
195
+ ICON_FILTER = 47
196
+ ICON_TARGET_POINT = 48
197
+ ICON_TARGET_SMALL = 49
198
+ ICON_TARGET_BIG = 50
199
+ ICON_TARGET_MOVE = 51
200
+ ICON_CURSOR_MOVE = 52
201
+ ICON_CURSOR_SCALE = 53
202
+ ICON_CURSOR_SCALE_RIGHT = 54
203
+ ICON_CURSOR_SCALE_LEFT = 55
204
+ ICON_UNDO = 56
205
+ ICON_REDO = 57
206
+ ICON_REREDO = 58
207
+ ICON_MUTATE = 59
208
+ ICON_ROTATE = 60
209
+ ICON_REPEAT = 61
210
+ ICON_SHUFFLE = 62
211
+ ICON_EMPTYBOX = 63
212
+ ICON_TARGET = 64
213
+ ICON_TARGET_SMALL_FILL = 65
214
+ ICON_TARGET_BIG_FILL = 66
215
+ ICON_TARGET_MOVE_FILL = 67
216
+ ICON_CURSOR_MOVE_FILL = 68
217
+ ICON_CURSOR_SCALE_FILL = 69
218
+ ICON_CURSOR_SCALE_RIGHT_FILL = 70
219
+ ICON_CURSOR_SCALE_LEFT_FILL = 71
220
+ ICON_UNDO_FILL = 72
221
+ ICON_REDO_FILL = 73
222
+ ICON_REREDO_FILL = 74
223
+ ICON_MUTATE_FILL = 75
224
+ ICON_ROTATE_FILL = 76
225
+ ICON_REPEAT_FILL = 77
226
+ ICON_SHUFFLE_FILL = 78
227
+ ICON_EMPTYBOX_SMALL = 79
228
+ ICON_BOX = 80
229
+ ICON_BOX_TOP = 81
230
+ ICON_BOX_TOP_RIGHT = 82
231
+ ICON_BOX_RIGHT = 83
232
+ ICON_BOX_BOTTOM_RIGHT = 84
233
+ ICON_BOX_BOTTOM = 85
234
+ ICON_BOX_BOTTOM_LEFT = 86
235
+ ICON_BOX_LEFT = 87
236
+ ICON_BOX_TOP_LEFT = 88
237
+ ICON_BOX_CENTER = 89
238
+ ICON_BOX_CIRCLE_MASK = 90
239
+ ICON_POT = 91
240
+ ICON_ALPHA_MULTIPLY = 92
241
+ ICON_ALPHA_CLEAR = 93
242
+ ICON_DITHERING = 94
243
+ ICON_MIPMAPS = 95
244
+ ICON_BOX_GRID = 96
245
+ ICON_GRID = 97
246
+ ICON_BOX_CORNERS_SMALL = 98
247
+ ICON_BOX_CORNERS_BIG = 99
248
+ ICON_FOUR_BOXES = 100
249
+ ICON_GRID_FILL = 101
250
+ ICON_BOX_MULTISIZE = 102
251
+ ICON_ZOOM_SMALL = 103
252
+ ICON_ZOOM_MEDIUM = 104
253
+ ICON_ZOOM_BIG = 105
254
+ ICON_ZOOM_ALL = 106
255
+ ICON_ZOOM_CENTER = 107
256
+ ICON_BOX_DOTS_SMALL = 108
257
+ ICON_BOX_DOTS_BIG = 109
258
+ ICON_BOX_CONCENTRIC = 110
259
+ ICON_BOX_GRID_BIG = 111
260
+ ICON_OK_TICK = 112
261
+ ICON_CROSS = 113
262
+ ICON_ARROW_LEFT = 114
263
+ ICON_ARROW_RIGHT = 115
264
+ ICON_ARROW_DOWN = 116
265
+ ICON_ARROW_UP = 117
266
+ ICON_ARROW_LEFT_FILL = 118
267
+ ICON_ARROW_RIGHT_FILL = 119
268
+ ICON_ARROW_DOWN_FILL = 120
269
+ ICON_ARROW_UP_FILL = 121
270
+ ICON_AUDIO = 122
271
+ ICON_FX = 123
272
+ ICON_WAVE = 124
273
+ ICON_WAVE_SINUS = 125
274
+ ICON_WAVE_SQUARE = 126
275
+ ICON_WAVE_TRIANGULAR = 127
276
+ ICON_CROSS_SMALL = 128
277
+ ICON_PLAYER_PREVIOUS = 129
278
+ ICON_PLAYER_PLAY_BACK = 130
279
+ ICON_PLAYER_PLAY = 131
280
+ ICON_PLAYER_PAUSE = 132
281
+ ICON_PLAYER_STOP = 133
282
+ ICON_PLAYER_NEXT = 134
283
+ ICON_PLAYER_RECORD = 135
284
+ ICON_MAGNET = 136
285
+ ICON_LOCK_CLOSE = 137
286
+ ICON_LOCK_OPEN = 138
287
+ ICON_CLOCK = 139
288
+ ICON_TOOLS = 140
289
+ ICON_GEAR = 141
290
+ ICON_GEAR_BIG = 142
291
+ ICON_BIN = 143
292
+ ICON_HAND_POINTER = 144
293
+ ICON_LASER = 145
294
+ ICON_COIN = 146
295
+ ICON_EXPLOSION = 147
296
+ ICON_1UP = 148
297
+ ICON_PLAYER = 149
298
+ ICON_PLAYER_JUMP = 150
299
+ ICON_KEY = 151
300
+ ICON_DEMON = 152
301
+ ICON_TEXT_POPUP = 153
302
+ ICON_GEAR_EX = 154
303
+ ICON_CRACK = 155
304
+ ICON_CRACK_POINTS = 156
305
+ ICON_STAR = 157
306
+ ICON_DOOR = 158
307
+ ICON_EXIT = 159
308
+ ICON_MODE_2D = 160
309
+ ICON_MODE_3D = 161
310
+ ICON_CUBE = 162
311
+ ICON_CUBE_FACE_TOP = 163
312
+ ICON_CUBE_FACE_LEFT = 164
313
+ ICON_CUBE_FACE_FRONT = 165
314
+ ICON_CUBE_FACE_BOTTOM = 166
315
+ ICON_CUBE_FACE_RIGHT = 167
316
+ ICON_CUBE_FACE_BACK = 168
317
+ ICON_CAMERA = 169
318
+ ICON_SPECIAL = 170
319
+ ICON_LINK_NET = 171
320
+ ICON_LINK_BOXES = 172
321
+ ICON_LINK_MULTI = 173
322
+ ICON_LINK = 174
323
+ ICON_LINK_BROKE = 175
324
+ ICON_TEXT_NOTES = 176
325
+ ICON_NOTEBOOK = 177
326
+ ICON_SUITCASE = 178
327
+ ICON_SUITCASE_ZIP = 179
328
+ ICON_MAILBOX = 180
329
+ ICON_MONITOR = 181
330
+ ICON_PRINTER = 182
331
+ ICON_PHOTO_CAMERA = 183
332
+ ICON_PHOTO_CAMERA_FLASH = 184
333
+ ICON_HOUSE = 185
334
+ ICON_HEART = 186
335
+ ICON_CORNER = 187
336
+ ICON_VERTICAL_BARS = 188
337
+ ICON_VERTICAL_BARS_FILL = 189
338
+ ICON_LIFE_BARS = 190
339
+ ICON_INFO = 191
340
+ ICON_CROSSLINE = 192
341
+ ICON_HELP = 193
342
+ ICON_FILETYPE_ALPHA = 194
343
+ ICON_FILETYPE_HOME = 195
344
+ ICON_LAYERS_VISIBLE = 196
345
+ ICON_LAYERS = 197
346
+ ICON_WINDOW = 198
347
+ ICON_HIDPI = 199
348
+ ICON_FILETYPE_BINARY = 200
349
+ ICON_HEX = 201
350
+ ICON_SHIELD = 202
351
+ ICON_FILE_NEW = 203
352
+ ICON_FOLDER_ADD = 204
353
+ ICON_ALARM = 205
354
+ ICON_CPU = 206
355
+ ICON_ROM = 207
356
+ ICON_STEP_OVER = 208
357
+ ICON_STEP_INTO = 209
358
+ ICON_STEP_OUT = 210
359
+ ICON_RESTART = 211
360
+ ICON_BREAKPOINT_ON = 212
361
+ ICON_BREAKPOINT_OFF = 213
362
+ ICON_BURGER_MENU = 214
363
+ ICON_CASE_SENSITIVE = 215
364
+ ICON_REG_EXP = 216
365
+ ICON_FOLDER = 217
366
+ ICON_FILE = 218
367
+ ICON_SAND_TIMER = 219
368
+ ICON_220 = 220
369
+ ICON_221 = 221
370
+ ICON_222 = 222
371
+ ICON_223 = 223
372
+ ICON_224 = 224
373
+ ICON_225 = 225
374
+ ICON_226 = 226
375
+ ICON_227 = 227
376
+ ICON_228 = 228
377
+ ICON_229 = 229
378
+ ICON_230 = 230
379
+ ICON_231 = 231
380
+ ICON_232 = 232
381
+ ICON_233 = 233
382
+ ICON_234 = 234
383
+ ICON_235 = 235
384
+ ICON_236 = 236
385
+ ICON_237 = 237
386
+ ICON_238 = 238
387
+ ICON_239 = 239
388
+ ICON_240 = 240
389
+ ICON_241 = 241
390
+ ICON_242 = 242
391
+ ICON_243 = 243
392
+ ICON_244 = 244
393
+ ICON_245 = 245
394
+ ICON_246 = 246
395
+ ICON_247 = 247
396
+ ICON_248 = 248
397
+ ICON_249 = 249
398
+ ICON_250 = 250
399
+ ICON_251 = 251
400
+ ICON_252 = 252
401
+ ICON_253 = 253
402
+ ICON_254 = 254
403
+ ICON_255 = 255
404
+
405
+
406
+ # Typedef
407
+
408
+ typedef :int, :GuiState
409
+ typedef :int, :GuiTextAlignment
410
+ typedef :int, :GuiControl
411
+ typedef :int, :GuiControlProperty
412
+ typedef :int, :GuiDefaultProperty
413
+ typedef :int, :GuiToggleProperty
414
+ typedef :int, :GuiSliderProperty
415
+ typedef :int, :GuiProgressBarProperty
416
+ typedef :int, :GuiScrollBarProperty
417
+ typedef :int, :GuiCheckBoxProperty
418
+ typedef :int, :GuiComboBoxProperty
419
+ typedef :int, :GuiDropdownBoxProperty
420
+ typedef :int, :GuiTextBoxProperty
421
+ typedef :int, :GuiSpinnerProperty
422
+ typedef :int, :GuiListViewProperty
423
+ typedef :int, :GuiColorPickerProperty
424
+ typedef :int, :GuiIconName
425
+
426
+ # Struct
427
+
428
+ # Style property
429
+ class GuiStyleProp < FFI::Struct
430
+ layout(
431
+ :controlId, :ushort,
432
+ :propertyId, :ushort,
433
+ :propertyValue, :uint,
434
+ )
435
+ def controlId = self[:controlId]
436
+ def controlId=(v) self[:controlId] = v end
437
+ def propertyId = self[:propertyId]
438
+ def propertyId=(v) self[:propertyId] = v end
439
+ def propertyValue = self[:propertyValue]
440
+ def propertyValue=(v) self[:propertyValue] = v end
441
+ end
442
+
443
+
444
+ # Function
445
+
446
+ def self.setup_raygui_symbols
447
+ entries = [
448
+
449
+ # @!method GuiEnable()
450
+ # GuiEnable : Enable gui controls (global state)
451
+ # @return [void]
452
+ [:GuiEnable, :GuiEnable, [], :void],
453
+
454
+ # @!method GuiDisable()
455
+ # GuiDisable : Disable gui controls (global state)
456
+ # @return [void]
457
+ [:GuiDisable, :GuiDisable, [], :void],
458
+
459
+ # @!method GuiLock()
460
+ # GuiLock : Lock gui controls (global state)
461
+ # @return [void]
462
+ [:GuiLock, :GuiLock, [], :void],
463
+
464
+ # @!method GuiUnlock()
465
+ # GuiUnlock : Unlock gui controls (global state)
466
+ # @return [void]
467
+ [:GuiUnlock, :GuiUnlock, [], :void],
468
+
469
+ # @!method GuiIsLocked()
470
+ # GuiIsLocked : Check if gui is locked (global state)
471
+ # @return [bool]
472
+ [:GuiIsLocked, :GuiIsLocked, [], :bool],
473
+
474
+ # @!method GuiFade(alpha)
475
+ # GuiFade : Set gui controls alpha (global state), alpha goes from 0.0f to 1.0f
476
+ # @param alpha [float]
477
+ # @return [void]
478
+ [:GuiFade, :GuiFade, [:float], :void],
479
+
480
+ # @!method GuiSetState(state)
481
+ # GuiSetState : Set gui state (global state)
482
+ # @param state [int]
483
+ # @return [void]
484
+ [:GuiSetState, :GuiSetState, [:int], :void],
485
+
486
+ # @!method GuiGetState()
487
+ # GuiGetState : Get gui state (global state)
488
+ # @return [int]
489
+ [:GuiGetState, :GuiGetState, [], :int],
490
+
491
+ # @!method GuiSetFont(font)
492
+ # GuiSetFont : Set gui custom font (global state)
493
+ # @param font [Font]
494
+ # @return [void]
495
+ [:GuiSetFont, :GuiSetFont, [Font.by_value], :void],
496
+
497
+ # @!method GuiGetFont()
498
+ # GuiGetFont : Get gui custom font (global state)
499
+ # @return [Font]
500
+ [:GuiGetFont, :GuiGetFont, [], Font.by_value],
501
+
502
+ # @!method GuiSetStyle(control, property, value)
503
+ # GuiSetStyle : Set one style property
504
+ # @param control [int]
505
+ # @param property [int]
506
+ # @param value [int]
507
+ # @return [void]
508
+ [:GuiSetStyle, :GuiSetStyle, [:int, :int, :int], :void],
509
+
510
+ # @!method GuiGetStyle(control, property)
511
+ # GuiGetStyle : Get one style property
512
+ # @param control [int]
513
+ # @param property [int]
514
+ # @return [int]
515
+ [:GuiGetStyle, :GuiGetStyle, [:int, :int], :int],
516
+
517
+ # @!method GuiLoadStyle(fileName)
518
+ # GuiLoadStyle : Load style file over global style variable (.rgs)
519
+ # @param fileName [const char *]
520
+ # @return [void]
521
+ [:GuiLoadStyle, :GuiLoadStyle, [:pointer], :void],
522
+
523
+ # @!method GuiLoadStyleDefault()
524
+ # GuiLoadStyleDefault : Load style default over global style
525
+ # @return [void]
526
+ [:GuiLoadStyleDefault, :GuiLoadStyleDefault, [], :void],
527
+
528
+ # @!method GuiEnableTooltip()
529
+ # GuiEnableTooltip : Enable gui tooltips (global state)
530
+ # @return [void]
531
+ [:GuiEnableTooltip, :GuiEnableTooltip, [], :void],
532
+
533
+ # @!method GuiDisableTooltip()
534
+ # GuiDisableTooltip : Disable gui tooltips (global state)
535
+ # @return [void]
536
+ [:GuiDisableTooltip, :GuiDisableTooltip, [], :void],
537
+
538
+ # @!method GuiSetTooltip(tooltip)
539
+ # GuiSetTooltip : Set tooltip string
540
+ # @param tooltip [const char *]
541
+ # @return [void]
542
+ [:GuiSetTooltip, :GuiSetTooltip, [:pointer], :void],
543
+
544
+ # @!method GuiIconText(iconId, text)
545
+ # GuiIconText : Get text with icon id prepended (if supported)
546
+ # @param iconId [int]
547
+ # @param text [const char *]
548
+ # @return [const char *]
549
+ [:GuiIconText, :GuiIconText, [:int, :pointer], :pointer],
550
+
551
+ # @!method GuiSetIconScale(scale)
552
+ # GuiSetIconScale : Set default icon drawing size
553
+ # @param scale [int]
554
+ # @return [void]
555
+ [:GuiSetIconScale, :GuiSetIconScale, [:int], :void],
556
+
557
+ # @!method GuiGetIcons()
558
+ # GuiGetIcons : Get raygui icons data pointer
559
+ # @return [unsigned int *]
560
+ [:GuiGetIcons, :GuiGetIcons, [], :pointer],
561
+
562
+ # @!method GuiLoadIcons(fileName, loadIconsName)
563
+ # GuiLoadIcons : Load raygui icons file (.rgi) into internal icons data
564
+ # @param fileName [const char *]
565
+ # @param loadIconsName [bool]
566
+ # @return [char **]
567
+ [:GuiLoadIcons, :GuiLoadIcons, [:pointer, :bool], :pointer],
568
+
569
+ # @!method GuiDrawIcon(iconId, posX, posY, pixelSize, color)
570
+ # GuiDrawIcon : Draw icon using pixel size at specified position
571
+ # @param iconId [int]
572
+ # @param posX [int]
573
+ # @param posY [int]
574
+ # @param pixelSize [int]
575
+ # @param color [Color]
576
+ # @return [void]
577
+ [:GuiDrawIcon, :GuiDrawIcon, [:int, :int, :int, :int, Color.by_value], :void],
578
+
579
+ # @!method GuiWindowBox(bounds, title)
580
+ # GuiWindowBox : Window Box control, shows a window that can be closed
581
+ # @param bounds [Rectangle]
582
+ # @param title [const char *]
583
+ # @return [int]
584
+ [:GuiWindowBox, :GuiWindowBox, [Rectangle.by_value, :pointer], :int],
585
+
586
+ # @!method GuiGroupBox(bounds, text)
587
+ # GuiGroupBox : Group Box control with text name
588
+ # @param bounds [Rectangle]
589
+ # @param text [const char *]
590
+ # @return [int]
591
+ [:GuiGroupBox, :GuiGroupBox, [Rectangle.by_value, :pointer], :int],
592
+
593
+ # @!method GuiLine(bounds, text)
594
+ # GuiLine : Line separator control, could contain text
595
+ # @param bounds [Rectangle]
596
+ # @param text [const char *]
597
+ # @return [int]
598
+ [:GuiLine, :GuiLine, [Rectangle.by_value, :pointer], :int],
599
+
600
+ # @!method GuiPanel(bounds, text)
601
+ # GuiPanel : Panel control, useful to group controls
602
+ # @param bounds [Rectangle]
603
+ # @param text [const char *]
604
+ # @return [int]
605
+ [:GuiPanel, :GuiPanel, [Rectangle.by_value, :pointer], :int],
606
+
607
+ # @!method GuiTabBar(bounds, text, count, active)
608
+ # GuiTabBar : Tab Bar control, returns TAB to be closed or -1
609
+ # @param bounds [Rectangle]
610
+ # @param text [const char **]
611
+ # @param count [int]
612
+ # @param active [int *]
613
+ # @return [int]
614
+ [:GuiTabBar, :GuiTabBar, [Rectangle.by_value, :pointer, :int, :pointer], :int],
615
+
616
+ # @!method GuiScrollPanel(bounds, text, content, scroll, view)
617
+ # GuiScrollPanel : Scroll Panel control
618
+ # @param bounds [Rectangle]
619
+ # @param text [const char *]
620
+ # @param content [Rectangle]
621
+ # @param scroll [Vector2 *]
622
+ # @param view [Rectangle *]
623
+ # @return [int]
624
+ [:GuiScrollPanel, :GuiScrollPanel, [Rectangle.by_value, :pointer, Rectangle.by_value, :pointer, :pointer], :int],
625
+
626
+ # @!method GuiLabel(bounds, text)
627
+ # GuiLabel : Label control, shows text
628
+ # @param bounds [Rectangle]
629
+ # @param text [const char *]
630
+ # @return [int]
631
+ [:GuiLabel, :GuiLabel, [Rectangle.by_value, :pointer], :int],
632
+
633
+ # @!method GuiButton(bounds, text)
634
+ # GuiButton : Button control, returns true when clicked
635
+ # @param bounds [Rectangle]
636
+ # @param text [const char *]
637
+ # @return [int]
638
+ [:GuiButton, :GuiButton, [Rectangle.by_value, :pointer], :int],
639
+
640
+ # @!method GuiLabelButton(bounds, text)
641
+ # GuiLabelButton : Label button control, show true when clicked
642
+ # @param bounds [Rectangle]
643
+ # @param text [const char *]
644
+ # @return [int]
645
+ [:GuiLabelButton, :GuiLabelButton, [Rectangle.by_value, :pointer], :int],
646
+
647
+ # @!method GuiToggle(bounds, text, active)
648
+ # GuiToggle : Toggle Button control, returns true when active
649
+ # @param bounds [Rectangle]
650
+ # @param text [const char *]
651
+ # @param active [bool *]
652
+ # @return [int]
653
+ [:GuiToggle, :GuiToggle, [Rectangle.by_value, :pointer, :pointer], :int],
654
+
655
+ # @!method GuiToggleGroup(bounds, text, active)
656
+ # GuiToggleGroup : Toggle Group control, returns active toggle index
657
+ # @param bounds [Rectangle]
658
+ # @param text [const char *]
659
+ # @param active [int *]
660
+ # @return [int]
661
+ [:GuiToggleGroup, :GuiToggleGroup, [Rectangle.by_value, :pointer, :pointer], :int],
662
+
663
+ # @!method GuiCheckBox(bounds, text, checked)
664
+ # GuiCheckBox : Check Box control, returns true when active
665
+ # @param bounds [Rectangle]
666
+ # @param text [const char *]
667
+ # @param checked [bool *]
668
+ # @return [int]
669
+ [:GuiCheckBox, :GuiCheckBox, [Rectangle.by_value, :pointer, :pointer], :int],
670
+
671
+ # @!method GuiComboBox(bounds, text, active)
672
+ # GuiComboBox : Combo Box control, returns selected item index
673
+ # @param bounds [Rectangle]
674
+ # @param text [const char *]
675
+ # @param active [int *]
676
+ # @return [int]
677
+ [:GuiComboBox, :GuiComboBox, [Rectangle.by_value, :pointer, :pointer], :int],
678
+
679
+ # @!method GuiDropdownBox(bounds, text, active, editMode)
680
+ # GuiDropdownBox : Dropdown Box control, returns selected item
681
+ # @param bounds [Rectangle]
682
+ # @param text [const char *]
683
+ # @param active [int *]
684
+ # @param editMode [bool]
685
+ # @return [int]
686
+ [:GuiDropdownBox, :GuiDropdownBox, [Rectangle.by_value, :pointer, :pointer, :bool], :int],
687
+
688
+ # @!method GuiSpinner(bounds, text, value, minValue, maxValue, editMode)
689
+ # GuiSpinner : Spinner control, returns selected value
690
+ # @param bounds [Rectangle]
691
+ # @param text [const char *]
692
+ # @param value [int *]
693
+ # @param minValue [int]
694
+ # @param maxValue [int]
695
+ # @param editMode [bool]
696
+ # @return [int]
697
+ [:GuiSpinner, :GuiSpinner, [Rectangle.by_value, :pointer, :pointer, :int, :int, :bool], :int],
698
+
699
+ # @!method GuiValueBox(bounds, text, value, minValue, maxValue, editMode)
700
+ # GuiValueBox : Value Box control, updates input text with numbers
701
+ # @param bounds [Rectangle]
702
+ # @param text [const char *]
703
+ # @param value [int *]
704
+ # @param minValue [int]
705
+ # @param maxValue [int]
706
+ # @param editMode [bool]
707
+ # @return [int]
708
+ [:GuiValueBox, :GuiValueBox, [Rectangle.by_value, :pointer, :pointer, :int, :int, :bool], :int],
709
+
710
+ # @!method GuiTextBox(bounds, text, textSize, editMode)
711
+ # GuiTextBox : Text Box control, updates input text
712
+ # @param bounds [Rectangle]
713
+ # @param text [char *]
714
+ # @param textSize [int]
715
+ # @param editMode [bool]
716
+ # @return [int]
717
+ [:GuiTextBox, :GuiTextBox, [Rectangle.by_value, :pointer, :int, :bool], :int],
718
+
719
+ # @!method GuiSlider(bounds, textLeft, textRight, value, minValue, maxValue)
720
+ # GuiSlider : Slider control, returns selected value
721
+ # @param bounds [Rectangle]
722
+ # @param textLeft [const char *]
723
+ # @param textRight [const char *]
724
+ # @param value [float *]
725
+ # @param minValue [float]
726
+ # @param maxValue [float]
727
+ # @return [int]
728
+ [:GuiSlider, :GuiSlider, [Rectangle.by_value, :pointer, :pointer, :pointer, :float, :float], :int],
729
+
730
+ # @!method GuiSliderBar(bounds, textLeft, textRight, value, minValue, maxValue)
731
+ # GuiSliderBar : Slider Bar control, returns selected value
732
+ # @param bounds [Rectangle]
733
+ # @param textLeft [const char *]
734
+ # @param textRight [const char *]
735
+ # @param value [float *]
736
+ # @param minValue [float]
737
+ # @param maxValue [float]
738
+ # @return [int]
739
+ [:GuiSliderBar, :GuiSliderBar, [Rectangle.by_value, :pointer, :pointer, :pointer, :float, :float], :int],
740
+
741
+ # @!method GuiProgressBar(bounds, textLeft, textRight, value, minValue, maxValue)
742
+ # GuiProgressBar : Progress Bar control, shows current progress value
743
+ # @param bounds [Rectangle]
744
+ # @param textLeft [const char *]
745
+ # @param textRight [const char *]
746
+ # @param value [float *]
747
+ # @param minValue [float]
748
+ # @param maxValue [float]
749
+ # @return [int]
750
+ [:GuiProgressBar, :GuiProgressBar, [Rectangle.by_value, :pointer, :pointer, :pointer, :float, :float], :int],
751
+
752
+ # @!method GuiStatusBar(bounds, text)
753
+ # GuiStatusBar : Status Bar control, shows info text
754
+ # @param bounds [Rectangle]
755
+ # @param text [const char *]
756
+ # @return [int]
757
+ [:GuiStatusBar, :GuiStatusBar, [Rectangle.by_value, :pointer], :int],
758
+
759
+ # @!method GuiDummyRec(bounds, text)
760
+ # GuiDummyRec : Dummy control for placeholders
761
+ # @param bounds [Rectangle]
762
+ # @param text [const char *]
763
+ # @return [int]
764
+ [:GuiDummyRec, :GuiDummyRec, [Rectangle.by_value, :pointer], :int],
765
+
766
+ # @!method GuiGrid(bounds, text, spacing, subdivs, mouseCell)
767
+ # GuiGrid : Grid control, returns mouse cell position
768
+ # @param bounds [Rectangle]
769
+ # @param text [const char *]
770
+ # @param spacing [float]
771
+ # @param subdivs [int]
772
+ # @param mouseCell [Vector2 *]
773
+ # @return [int]
774
+ [:GuiGrid, :GuiGrid, [Rectangle.by_value, :pointer, :float, :int, :pointer], :int],
775
+
776
+ # @!method GuiListView(bounds, text, scrollIndex, active)
777
+ # GuiListView : List View control, returns selected list item index
778
+ # @param bounds [Rectangle]
779
+ # @param text [const char *]
780
+ # @param scrollIndex [int *]
781
+ # @param active [int *]
782
+ # @return [int]
783
+ [:GuiListView, :GuiListView, [Rectangle.by_value, :pointer, :pointer, :pointer], :int],
784
+
785
+ # @!method GuiListViewEx(bounds, text, count, scrollIndex, active, focus)
786
+ # GuiListViewEx : List View with extended parameters
787
+ # @param bounds [Rectangle]
788
+ # @param text [const char **]
789
+ # @param count [int]
790
+ # @param scrollIndex [int *]
791
+ # @param active [int *]
792
+ # @param focus [int *]
793
+ # @return [int]
794
+ [:GuiListViewEx, :GuiListViewEx, [Rectangle.by_value, :pointer, :int, :pointer, :pointer, :pointer], :int],
795
+
796
+ # @!method GuiMessageBox(bounds, title, message, buttons)
797
+ # GuiMessageBox : Message Box control, displays a message
798
+ # @param bounds [Rectangle]
799
+ # @param title [const char *]
800
+ # @param message [const char *]
801
+ # @param buttons [const char *]
802
+ # @return [int]
803
+ [:GuiMessageBox, :GuiMessageBox, [Rectangle.by_value, :pointer, :pointer, :pointer], :int],
804
+
805
+ # @!method GuiTextInputBox(bounds, title, message, buttons, text, textMaxSize, secretViewActive)
806
+ # GuiTextInputBox : Text Input Box control, ask for text, supports secret
807
+ # @param bounds [Rectangle]
808
+ # @param title [const char *]
809
+ # @param message [const char *]
810
+ # @param buttons [const char *]
811
+ # @param text [char *]
812
+ # @param textMaxSize [int]
813
+ # @param secretViewActive [bool *]
814
+ # @return [int]
815
+ [:GuiTextInputBox, :GuiTextInputBox, [Rectangle.by_value, :pointer, :pointer, :pointer, :pointer, :int, :pointer], :int],
816
+
817
+ # @!method GuiColorPicker(bounds, text, color)
818
+ # GuiColorPicker : Color Picker control (multiple color controls)
819
+ # @param bounds [Rectangle]
820
+ # @param text [const char *]
821
+ # @param color [Color *]
822
+ # @return [int]
823
+ [:GuiColorPicker, :GuiColorPicker, [Rectangle.by_value, :pointer, :pointer], :int],
824
+
825
+ # @!method GuiColorPanel(bounds, text, color)
826
+ # GuiColorPanel : Color Panel control
827
+ # @param bounds [Rectangle]
828
+ # @param text [const char *]
829
+ # @param color [Color *]
830
+ # @return [int]
831
+ [:GuiColorPanel, :GuiColorPanel, [Rectangle.by_value, :pointer, :pointer], :int],
832
+
833
+ # @!method GuiColorBarAlpha(bounds, text, alpha)
834
+ # GuiColorBarAlpha : Color Bar Alpha control
835
+ # @param bounds [Rectangle]
836
+ # @param text [const char *]
837
+ # @param alpha [float *]
838
+ # @return [int]
839
+ [:GuiColorBarAlpha, :GuiColorBarAlpha, [Rectangle.by_value, :pointer, :pointer], :int],
840
+
841
+ # @!method GuiColorBarHue(bounds, text, value)
842
+ # GuiColorBarHue : Color Bar Hue control
843
+ # @param bounds [Rectangle]
844
+ # @param text [const char *]
845
+ # @param value [float *]
846
+ # @return [int]
847
+ [:GuiColorBarHue, :GuiColorBarHue, [Rectangle.by_value, :pointer, :pointer], :int],
848
+
849
+ # @!method GuiColorPickerHSV(bounds, text, colorHsv)
850
+ # GuiColorPickerHSV : Color Picker control that avoids conversion to RGB on each call (multiple color controls)
851
+ # @param bounds [Rectangle]
852
+ # @param text [const char *]
853
+ # @param colorHsv [Vector3 *]
854
+ # @return [int]
855
+ [:GuiColorPickerHSV, :GuiColorPickerHSV, [Rectangle.by_value, :pointer, :pointer], :int],
856
+
857
+ # @!method GuiColorPanelHSV(bounds, text, colorHsv)
858
+ # GuiColorPanelHSV : Color Panel control that returns HSV color value, used by GuiColorPickerHSV()
859
+ # @param bounds [Rectangle]
860
+ # @param text [const char *]
861
+ # @param colorHsv [Vector3 *]
862
+ # @return [int]
863
+ [:GuiColorPanelHSV, :GuiColorPanelHSV, [Rectangle.by_value, :pointer, :pointer], :int],
864
+ ]
865
+ entries.each do |entry|
866
+ attach_function entry[0], entry[1], entry[2], entry[3]
867
+ rescue FFI::NotFoundError => e
868
+ warn "[Warning] Failed to import #{entry[0]} (#{e})."
869
+ end
870
+ end
871
+ end