raylib-bindings 0.1.3 → 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
data/lib/raygui.rb CHANGED
@@ -2,12 +2,13 @@
2
2
  #
3
3
  # * https://github.com/vaiorabbit/raylib-bindings
4
4
  #
5
- # [NOTICE] This is an automatically generated file.
5
+ # [NOTICE] Autogenerated. Do not edit.
6
6
 
7
7
  require 'ffi'
8
8
 
9
9
  module Raylib
10
10
  extend FFI::Library
11
+
11
12
  # Define/Macro
12
13
 
13
14
  RAYGUI_VERSION = "3.2"
@@ -16,29 +17,40 @@ module Raylib
16
17
 
17
18
  # Enum
18
19
 
20
+ # enum GuiState
21
+ # Gui control state
19
22
  STATE_NORMAL = 0
20
23
  STATE_FOCUSED = 1
21
24
  STATE_PRESSED = 2
22
25
  STATE_DISABLED = 3
26
+
27
+ # enum GuiTextAlignment
28
+ # Gui control text alignment
23
29
  TEXT_ALIGN_LEFT = 0
24
30
  TEXT_ALIGN_CENTER = 1
25
31
  TEXT_ALIGN_RIGHT = 2
32
+
33
+ # enum GuiControl
34
+ # Gui controls
26
35
  DEFAULT = 0
27
- LABEL = 1
36
+ LABEL = 1 # Used also for: LABELBUTTON
28
37
  BUTTON = 2
29
- TOGGLE = 3
30
- SLIDER = 4
38
+ TOGGLE = 3 # Used also for: TOGGLEGROUP
39
+ SLIDER = 4 # Used also for: SLIDERBAR
31
40
  PROGRESSBAR = 5
32
41
  CHECKBOX = 6
33
42
  COMBOBOX = 7
34
43
  DROPDOWNBOX = 8
35
- TEXTBOX = 9
44
+ TEXTBOX = 9 # Used also for: TEXTBOXMULTI
36
45
  VALUEBOX = 10
37
- SPINNER = 11
46
+ SPINNER = 11 # Uses: BUTTON, VALUEBOX
38
47
  LISTVIEW = 12
39
48
  COLORPICKER = 13
40
49
  SCROLLBAR = 14
41
50
  STATUSBAR = 15
51
+
52
+ # enum GuiControlProperty
53
+ # Gui base properties for every control
42
54
  BORDER_COLOR_NORMAL = 0
43
55
  BASE_COLOR_NORMAL = 1
44
56
  TEXT_COLOR_NORMAL = 2
@@ -55,38 +67,77 @@ module Raylib
55
67
  TEXT_PADDING = 13
56
68
  TEXT_ALIGNMENT = 14
57
69
  RESERVED = 15
58
- TEXT_SIZE = 16
59
- TEXT_SPACING = 17
60
- LINE_COLOR = 18
61
- BACKGROUND_COLOR = 19
62
- GROUP_PADDING = 16
63
- SLIDER_WIDTH = 16
64
- SLIDER_PADDING = 17
65
- PROGRESS_PADDING = 16
70
+
71
+ # enum GuiDefaultProperty
72
+ # DEFAULT extended properties
73
+ TEXT_SIZE = 16 # Text size (glyphs max height)
74
+ TEXT_SPACING = 17 # Text spacing between glyphs
75
+ LINE_COLOR = 18 # Line control color
76
+ BACKGROUND_COLOR = 19 # Background color
77
+
78
+ # enum GuiToggleProperty
79
+ # Toggle/ToggleGroup
80
+ GROUP_PADDING = 16 # ToggleGroup separation between toggles
81
+
82
+ # enum GuiSliderProperty
83
+ # Slider/SliderBar
84
+ SLIDER_WIDTH = 16 # Slider size of internal bar
85
+ SLIDER_PADDING = 17 # Slider/SliderBar internal bar padding
86
+
87
+ # enum GuiProgressBarProperty
88
+ # ProgressBar
89
+ PROGRESS_PADDING = 16 # ProgressBar internal padding
90
+
91
+ # enum GuiScrollBarProperty
92
+ # ScrollBar
66
93
  ARROWS_SIZE = 16
67
94
  ARROWS_VISIBLE = 17
68
- SCROLL_SLIDER_PADDING = 18
95
+ SCROLL_SLIDER_PADDING = 18 # (SLIDERBAR, SLIDER_PADDING)
69
96
  SCROLL_SLIDER_SIZE = 19
70
97
  SCROLL_PADDING = 20
71
98
  SCROLL_SPEED = 21
72
- CHECK_PADDING = 16
73
- COMBO_BUTTON_WIDTH = 16
74
- COMBO_BUTTON_SPACING = 17
75
- ARROW_PADDING = 16
76
- DROPDOWN_ITEMS_SPACING = 17
77
- TEXT_INNER_PADDING = 16
78
- TEXT_LINES_SPACING = 17
79
- SPIN_BUTTON_WIDTH = 16
80
- SPIN_BUTTON_SPACING = 17
81
- LIST_ITEMS_HEIGHT = 16
82
- LIST_ITEMS_SPACING = 17
83
- SCROLLBAR_WIDTH = 18
84
- SCROLLBAR_SIDE = 19
99
+
100
+ # enum GuiCheckBoxProperty
101
+ # CheckBox
102
+ CHECK_PADDING = 16 # CheckBox internal check padding
103
+
104
+ # enum GuiComboBoxProperty
105
+ # ComboBox
106
+ COMBO_BUTTON_WIDTH = 16 # ComboBox right button width
107
+ COMBO_BUTTON_SPACING = 17 # ComboBox button separation
108
+
109
+ # enum GuiDropdownBoxProperty
110
+ # DropdownBox
111
+ ARROW_PADDING = 16 # DropdownBox arrow separation from border and items
112
+ DROPDOWN_ITEMS_SPACING = 17 # DropdownBox items separation
113
+
114
+ # enum GuiTextBoxProperty
115
+ # TextBox/TextBoxMulti/ValueBox/Spinner
116
+ TEXT_INNER_PADDING = 16 # TextBox/TextBoxMulti/ValueBox/Spinner inner text padding
117
+ TEXT_LINES_SPACING = 17 # TextBoxMulti lines separation
118
+
119
+ # enum GuiSpinnerProperty
120
+ # Spinner
121
+ SPIN_BUTTON_WIDTH = 16 # Spinner left/right buttons width
122
+ SPIN_BUTTON_SPACING = 17 # Spinner buttons separation
123
+
124
+ # enum GuiListViewProperty
125
+ # ListView
126
+ LIST_ITEMS_HEIGHT = 16 # ListView items height
127
+ LIST_ITEMS_SPACING = 17 # ListView items separation
128
+ SCROLLBAR_WIDTH = 18 # ListView scrollbar size (usually width)
129
+ SCROLLBAR_SIDE = 19 # ListView scrollbar side (0-left, 1-right)
130
+
131
+ # enum GuiColorPickerProperty
132
+ # ColorPicker
85
133
  COLOR_SELECTOR_SIZE = 16
86
- HUEBAR_WIDTH = 17
87
- HUEBAR_PADDING = 18
88
- HUEBAR_SELECTOR_HEIGHT = 19
89
- HUEBAR_SELECTOR_OVERFLOW = 20
134
+ HUEBAR_WIDTH = 17 # ColorPicker right hue bar width
135
+ HUEBAR_PADDING = 18 # ColorPicker right hue bar separation from panel
136
+ HUEBAR_SELECTOR_HEIGHT = 19 # ColorPicker right hue bar selector height
137
+ HUEBAR_SELECTOR_OVERFLOW = 20 # ColorPicker right hue bar selector overflow
138
+
139
+ # enum GuiIconName
140
+ #
90
141
  ICON_NONE = 0
91
142
  ICON_FOLDER_FILE_OPEN = 1
92
143
  ICON_FILE_SAVE_CLASSIC = 2
@@ -344,6 +395,7 @@ module Raylib
344
395
  ICON_254 = 254
345
396
  ICON_255 = 255
346
397
 
398
+
347
399
  # Typedef
348
400
 
349
401
  typedef :int, :GuiState
@@ -366,6 +418,7 @@ module Raylib
366
418
 
367
419
  # Struct
368
420
 
421
+ # Style property
369
422
  class GuiStyleProp < FFI::Struct
370
423
  layout(
371
424
  :controlId, :ushort,
@@ -377,180 +430,361 @@ module Raylib
377
430
 
378
431
  # Function
379
432
 
380
- def self.setup_raygui_symbols()
381
- symbols = [
382
- :GuiEnable,
383
- :GuiDisable,
384
- :GuiLock,
385
- :GuiUnlock,
386
- :GuiIsLocked,
387
- :GuiFade,
388
- :GuiSetState,
389
- :GuiGetState,
390
- :GuiSetFont,
391
- :GuiGetFont,
392
- :GuiSetStyle,
393
- :GuiGetStyle,
394
- :GuiWindowBox,
395
- :GuiGroupBox,
396
- :GuiLine,
397
- :GuiPanel,
398
- :GuiTabBar,
399
- :GuiScrollPanel,
400
- :GuiLabel,
401
- :GuiButton,
402
- :GuiLabelButton,
403
- :GuiToggle,
404
- :GuiToggleGroup,
405
- :GuiCheckBox,
406
- :GuiComboBox,
407
- :GuiDropdownBox,
408
- :GuiSpinner,
409
- :GuiValueBox,
410
- :GuiTextBox,
411
- :GuiTextBoxMulti,
412
- :GuiSlider,
413
- :GuiSliderBar,
414
- :GuiProgressBar,
415
- :GuiStatusBar,
416
- :GuiDummyRec,
417
- :GuiGrid,
418
- :GuiListView,
419
- :GuiListViewEx,
420
- :GuiMessageBox,
421
- :GuiTextInputBox,
422
- :GuiColorPicker,
423
- :GuiColorPanel,
424
- :GuiColorBarAlpha,
425
- :GuiColorBarHue,
426
- :GuiLoadStyle,
427
- :GuiLoadStyleDefault,
428
- :GuiEnableTooltip,
429
- :GuiDisableTooltip,
430
- :GuiSetTooltip,
431
- :GuiIconText,
432
- :GuiGetIcons,
433
- :GuiLoadIcons,
434
- :GuiDrawIcon,
433
+ def self.setup_raygui_symbols
434
+ entries = [
435
+
436
+ # GuiEnable : Enable gui controls (global state)
437
+ # @return [void]
438
+ [:GuiEnable, :GuiEnable, [], :void],
439
+
440
+ # GuiDisable : Disable gui controls (global state)
441
+ # @return [void]
442
+ [:GuiDisable, :GuiDisable, [], :void],
443
+
444
+ # GuiLock : Lock gui controls (global state)
445
+ # @return [void]
446
+ [:GuiLock, :GuiLock, [], :void],
447
+
448
+ # GuiUnlock : Unlock gui controls (global state)
449
+ # @return [void]
450
+ [:GuiUnlock, :GuiUnlock, [], :void],
451
+
452
+ # GuiIsLocked : Check if gui is locked (global state)
453
+ # @return [bool]
454
+ [:GuiIsLocked, :GuiIsLocked, [], :bool],
455
+
456
+ # GuiFade : Set gui controls alpha (global state), alpha goes from 0.0f to 1.0f
457
+ # @param alpha [float]
458
+ # @return [void]
459
+ [:GuiFade, :GuiFade, [:float], :void],
460
+
461
+ # GuiSetState : Set gui state (global state)
462
+ # @param state [int]
463
+ # @return [void]
464
+ [:GuiSetState, :GuiSetState, [:int], :void],
465
+
466
+ # GuiGetState : Get gui state (global state)
467
+ # @return [int]
468
+ [:GuiGetState, :GuiGetState, [], :int],
469
+
470
+ # GuiSetFont : Set gui custom font (global state)
471
+ # @param font [Font]
472
+ # @return [void]
473
+ [:GuiSetFont, :GuiSetFont, [Font.by_value], :void],
474
+
475
+ # GuiGetFont : Get gui custom font (global state)
476
+ # @return [Font]
477
+ [:GuiGetFont, :GuiGetFont, [], Font.by_value],
478
+
479
+ # GuiSetStyle : Set one style property
480
+ # @param control [int]
481
+ # @param property [int]
482
+ # @param value [int]
483
+ # @return [void]
484
+ [:GuiSetStyle, :GuiSetStyle, [:int, :int, :int], :void],
485
+
486
+ # GuiGetStyle : Get one style property
487
+ # @param control [int]
488
+ # @param property [int]
489
+ # @return [int]
490
+ [:GuiGetStyle, :GuiGetStyle, [:int, :int], :int],
491
+
492
+ # GuiWindowBox : Window Box control, shows a window that can be closed
493
+ # @param bounds [Rectangle]
494
+ # @param title [const char *]
495
+ # @return [bool]
496
+ [:GuiWindowBox, :GuiWindowBox, [Rectangle.by_value, :pointer], :bool],
497
+
498
+ # GuiGroupBox : Group Box control with text name
499
+ # @param bounds [Rectangle]
500
+ # @param text [const char *]
501
+ # @return [void]
502
+ [:GuiGroupBox, :GuiGroupBox, [Rectangle.by_value, :pointer], :void],
503
+
504
+ # GuiLine : Line separator control, could contain text
505
+ # @param bounds [Rectangle]
506
+ # @param text [const char *]
507
+ # @return [void]
508
+ [:GuiLine, :GuiLine, [Rectangle.by_value, :pointer], :void],
509
+
510
+ # GuiPanel : Panel control, useful to group controls
511
+ # @param bounds [Rectangle]
512
+ # @param text [const char *]
513
+ # @return [void]
514
+ [:GuiPanel, :GuiPanel, [Rectangle.by_value, :pointer], :void],
515
+
516
+ # GuiTabBar : Tab Bar control, returns TAB to be closed or -1
517
+ # @param bounds [Rectangle]
518
+ # @param text [const char **]
519
+ # @param count [int]
520
+ # @param active [int *]
521
+ # @return [int]
522
+ [:GuiTabBar, :GuiTabBar, [Rectangle.by_value, :pointer, :int, :pointer], :int],
523
+
524
+ # GuiScrollPanel : Scroll Panel control
525
+ # @param bounds [Rectangle]
526
+ # @param text [const char *]
527
+ # @param content [Rectangle]
528
+ # @param scroll [Vector2 *]
529
+ # @return [Rectangle]
530
+ [:GuiScrollPanel, :GuiScrollPanel, [Rectangle.by_value, :pointer, Rectangle.by_value, :pointer], Rectangle.by_value],
531
+
532
+ # GuiLabel : Label control, shows text
533
+ # @param bounds [Rectangle]
534
+ # @param text [const char *]
535
+ # @return [void]
536
+ [:GuiLabel, :GuiLabel, [Rectangle.by_value, :pointer], :void],
537
+
538
+ # GuiButton : Button control, returns true when clicked
539
+ # @param bounds [Rectangle]
540
+ # @param text [const char *]
541
+ # @return [bool]
542
+ [:GuiButton, :GuiButton, [Rectangle.by_value, :pointer], :bool],
543
+
544
+ # GuiLabelButton : Label button control, show true when clicked
545
+ # @param bounds [Rectangle]
546
+ # @param text [const char *]
547
+ # @return [bool]
548
+ [:GuiLabelButton, :GuiLabelButton, [Rectangle.by_value, :pointer], :bool],
549
+
550
+ # GuiToggle : Toggle Button control, returns true when active
551
+ # @param bounds [Rectangle]
552
+ # @param text [const char *]
553
+ # @param active [bool]
554
+ # @return [bool]
555
+ [:GuiToggle, :GuiToggle, [Rectangle.by_value, :pointer, :bool], :bool],
556
+
557
+ # GuiToggleGroup : Toggle Group control, returns active toggle index
558
+ # @param bounds [Rectangle]
559
+ # @param text [const char *]
560
+ # @param active [int]
561
+ # @return [int]
562
+ [:GuiToggleGroup, :GuiToggleGroup, [Rectangle.by_value, :pointer, :int], :int],
563
+
564
+ # GuiCheckBox : Check Box control, returns true when active
565
+ # @param bounds [Rectangle]
566
+ # @param text [const char *]
567
+ # @param checked [bool]
568
+ # @return [bool]
569
+ [:GuiCheckBox, :GuiCheckBox, [Rectangle.by_value, :pointer, :bool], :bool],
570
+
571
+ # GuiComboBox : Combo Box control, returns selected item index
572
+ # @param bounds [Rectangle]
573
+ # @param text [const char *]
574
+ # @param active [int]
575
+ # @return [int]
576
+ [:GuiComboBox, :GuiComboBox, [Rectangle.by_value, :pointer, :int], :int],
577
+
578
+ # GuiDropdownBox : Dropdown Box control, returns selected item
579
+ # @param bounds [Rectangle]
580
+ # @param text [const char *]
581
+ # @param active [int *]
582
+ # @param editMode [bool]
583
+ # @return [bool]
584
+ [:GuiDropdownBox, :GuiDropdownBox, [Rectangle.by_value, :pointer, :pointer, :bool], :bool],
585
+
586
+ # GuiSpinner : Spinner control, returns selected value
587
+ # @param bounds [Rectangle]
588
+ # @param text [const char *]
589
+ # @param value [int *]
590
+ # @param minValue [int]
591
+ # @param maxValue [int]
592
+ # @param editMode [bool]
593
+ # @return [bool]
594
+ [:GuiSpinner, :GuiSpinner, [Rectangle.by_value, :pointer, :pointer, :int, :int, :bool], :bool],
595
+
596
+ # GuiValueBox : Value Box control, updates input text with numbers
597
+ # @param bounds [Rectangle]
598
+ # @param text [const char *]
599
+ # @param value [int *]
600
+ # @param minValue [int]
601
+ # @param maxValue [int]
602
+ # @param editMode [bool]
603
+ # @return [bool]
604
+ [:GuiValueBox, :GuiValueBox, [Rectangle.by_value, :pointer, :pointer, :int, :int, :bool], :bool],
605
+
606
+ # GuiTextBox : Text Box control, updates input text
607
+ # @param bounds [Rectangle]
608
+ # @param text [char *]
609
+ # @param textSize [int]
610
+ # @param editMode [bool]
611
+ # @return [bool]
612
+ [:GuiTextBox, :GuiTextBox, [Rectangle.by_value, :pointer, :int, :bool], :bool],
613
+
614
+ # GuiTextBoxMulti : Text Box control with multiple lines
615
+ # @param bounds [Rectangle]
616
+ # @param text [char *]
617
+ # @param textSize [int]
618
+ # @param editMode [bool]
619
+ # @return [bool]
620
+ [:GuiTextBoxMulti, :GuiTextBoxMulti, [Rectangle.by_value, :pointer, :int, :bool], :bool],
621
+
622
+ # GuiSlider : Slider control, returns selected value
623
+ # @param bounds [Rectangle]
624
+ # @param textLeft [const char *]
625
+ # @param textRight [const char *]
626
+ # @param value [float]
627
+ # @param minValue [float]
628
+ # @param maxValue [float]
629
+ # @return [float]
630
+ [:GuiSlider, :GuiSlider, [Rectangle.by_value, :pointer, :pointer, :float, :float, :float], :float],
631
+
632
+ # GuiSliderBar : Slider Bar control, returns selected value
633
+ # @param bounds [Rectangle]
634
+ # @param textLeft [const char *]
635
+ # @param textRight [const char *]
636
+ # @param value [float]
637
+ # @param minValue [float]
638
+ # @param maxValue [float]
639
+ # @return [float]
640
+ [:GuiSliderBar, :GuiSliderBar, [Rectangle.by_value, :pointer, :pointer, :float, :float, :float], :float],
641
+
642
+ # GuiProgressBar : Progress Bar control, shows current progress value
643
+ # @param bounds [Rectangle]
644
+ # @param textLeft [const char *]
645
+ # @param textRight [const char *]
646
+ # @param value [float]
647
+ # @param minValue [float]
648
+ # @param maxValue [float]
649
+ # @return [float]
650
+ [:GuiProgressBar, :GuiProgressBar, [Rectangle.by_value, :pointer, :pointer, :float, :float, :float], :float],
651
+
652
+ # GuiStatusBar : Status Bar control, shows info text
653
+ # @param bounds [Rectangle]
654
+ # @param text [const char *]
655
+ # @return [void]
656
+ [:GuiStatusBar, :GuiStatusBar, [Rectangle.by_value, :pointer], :void],
657
+
658
+ # GuiDummyRec : Dummy control for placeholders
659
+ # @param bounds [Rectangle]
660
+ # @param text [const char *]
661
+ # @return [void]
662
+ [:GuiDummyRec, :GuiDummyRec, [Rectangle.by_value, :pointer], :void],
663
+
664
+ # GuiGrid : Grid control, returns mouse cell position
665
+ # @param bounds [Rectangle]
666
+ # @param text [const char *]
667
+ # @param spacing [float]
668
+ # @param subdivs [int]
669
+ # @return [Vector2]
670
+ [:GuiGrid, :GuiGrid, [Rectangle.by_value, :pointer, :float, :int], Vector2.by_value],
671
+
672
+ # GuiListView : List View control, returns selected list item index
673
+ # @param bounds [Rectangle]
674
+ # @param text [const char *]
675
+ # @param scrollIndex [int *]
676
+ # @param active [int]
677
+ # @return [int]
678
+ [:GuiListView, :GuiListView, [Rectangle.by_value, :pointer, :pointer, :int], :int],
679
+
680
+ # GuiListViewEx : List View with extended parameters
681
+ # @param bounds [Rectangle]
682
+ # @param text [const char **]
683
+ # @param count [int]
684
+ # @param focus [int *]
685
+ # @param scrollIndex [int *]
686
+ # @param active [int]
687
+ # @return [int]
688
+ [:GuiListViewEx, :GuiListViewEx, [Rectangle.by_value, :pointer, :int, :pointer, :pointer, :int], :int],
689
+
690
+ # GuiMessageBox : Message Box control, displays a message
691
+ # @param bounds [Rectangle]
692
+ # @param title [const char *]
693
+ # @param message [const char *]
694
+ # @param buttons [const char *]
695
+ # @return [int]
696
+ [:GuiMessageBox, :GuiMessageBox, [Rectangle.by_value, :pointer, :pointer, :pointer], :int],
697
+
698
+ # GuiTextInputBox : Text Input Box control, ask for text, supports secret
699
+ # @param bounds [Rectangle]
700
+ # @param title [const char *]
701
+ # @param message [const char *]
702
+ # @param buttons [const char *]
703
+ # @param text [char *]
704
+ # @param textMaxSize [int]
705
+ # @param secretViewActive [int *]
706
+ # @return [int]
707
+ [:GuiTextInputBox, :GuiTextInputBox, [Rectangle.by_value, :pointer, :pointer, :pointer, :pointer, :int, :pointer], :int],
708
+
709
+ # GuiColorPicker : Color Picker control (multiple color controls)
710
+ # @param bounds [Rectangle]
711
+ # @param text [const char *]
712
+ # @param color [Color]
713
+ # @return [Color]
714
+ [:GuiColorPicker, :GuiColorPicker, [Rectangle.by_value, :pointer, Color.by_value], Color.by_value],
715
+
716
+ # GuiColorPanel : Color Panel control
717
+ # @param bounds [Rectangle]
718
+ # @param text [const char *]
719
+ # @param color [Color]
720
+ # @return [Color]
721
+ [:GuiColorPanel, :GuiColorPanel, [Rectangle.by_value, :pointer, Color.by_value], Color.by_value],
722
+
723
+ # GuiColorBarAlpha : Color Bar Alpha control
724
+ # @param bounds [Rectangle]
725
+ # @param text [const char *]
726
+ # @param alpha [float]
727
+ # @return [float]
728
+ [:GuiColorBarAlpha, :GuiColorBarAlpha, [Rectangle.by_value, :pointer, :float], :float],
729
+
730
+ # GuiColorBarHue : Color Bar Hue control
731
+ # @param bounds [Rectangle]
732
+ # @param text [const char *]
733
+ # @param value [float]
734
+ # @return [float]
735
+ [:GuiColorBarHue, :GuiColorBarHue, [Rectangle.by_value, :pointer, :float], :float],
736
+
737
+ # GuiLoadStyle : Load style file over global style variable (.rgs)
738
+ # @param fileName [const char *]
739
+ # @return [void]
740
+ [:GuiLoadStyle, :GuiLoadStyle, [:pointer], :void],
741
+
742
+ # GuiLoadStyleDefault : Load style default over global style
743
+ # @return [void]
744
+ [:GuiLoadStyleDefault, :GuiLoadStyleDefault, [], :void],
745
+
746
+ # GuiEnableTooltip : Enable gui tooltips (global state)
747
+ # @return [void]
748
+ [:GuiEnableTooltip, :GuiEnableTooltip, [], :void],
749
+
750
+ # GuiDisableTooltip : Disable gui tooltips (global state)
751
+ # @return [void]
752
+ [:GuiDisableTooltip, :GuiDisableTooltip, [], :void],
753
+
754
+ # GuiSetTooltip : Set tooltip string
755
+ # @param tooltip [const char *]
756
+ # @return [void]
757
+ [:GuiSetTooltip, :GuiSetTooltip, [:pointer], :void],
758
+
759
+ # GuiIconText : Get text with icon id prepended (if supported)
760
+ # @param iconId [int]
761
+ # @param text [const char *]
762
+ # @return [const char *]
763
+ [:GuiIconText, :GuiIconText, [:int, :pointer], :pointer],
764
+
765
+ # GuiGetIcons : Get raygui icons data pointer
766
+ # @return [unsigned int *]
767
+ [:GuiGetIcons, :GuiGetIcons, [], :pointer],
768
+
769
+ # GuiLoadIcons : Load raygui icons file (.rgi) into internal icons data
770
+ # @param fileName [const char *]
771
+ # @param loadIconsName [bool]
772
+ # @return [char **]
773
+ [:GuiLoadIcons, :GuiLoadIcons, [:pointer, :bool], :pointer],
774
+
775
+ # GuiDrawIcon
776
+ # @param iconId [int]
777
+ # @param posX [int]
778
+ # @param posY [int]
779
+ # @param pixelSize [int]
780
+ # @param color [Color]
781
+ # @return [void]
782
+ [:GuiDrawIcon, :GuiDrawIcon, [:int, :int, :int, :int, Color.by_value], :void],
435
783
  ]
436
- args = {
437
- :GuiEnable => [],
438
- :GuiDisable => [],
439
- :GuiLock => [],
440
- :GuiUnlock => [],
441
- :GuiIsLocked => [],
442
- :GuiFade => [:float],
443
- :GuiSetState => [:int],
444
- :GuiGetState => [],
445
- :GuiSetFont => [Font.by_value],
446
- :GuiGetFont => [],
447
- :GuiSetStyle => [:int, :int, :int],
448
- :GuiGetStyle => [:int, :int],
449
- :GuiWindowBox => [Rectangle.by_value, :pointer],
450
- :GuiGroupBox => [Rectangle.by_value, :pointer],
451
- :GuiLine => [Rectangle.by_value, :pointer],
452
- :GuiPanel => [Rectangle.by_value, :pointer],
453
- :GuiTabBar => [Rectangle.by_value, :pointer, :int, :pointer],
454
- :GuiScrollPanel => [Rectangle.by_value, :pointer, Rectangle.by_value, :pointer],
455
- :GuiLabel => [Rectangle.by_value, :pointer],
456
- :GuiButton => [Rectangle.by_value, :pointer],
457
- :GuiLabelButton => [Rectangle.by_value, :pointer],
458
- :GuiToggle => [Rectangle.by_value, :pointer, :bool],
459
- :GuiToggleGroup => [Rectangle.by_value, :pointer, :int],
460
- :GuiCheckBox => [Rectangle.by_value, :pointer, :bool],
461
- :GuiComboBox => [Rectangle.by_value, :pointer, :int],
462
- :GuiDropdownBox => [Rectangle.by_value, :pointer, :pointer, :bool],
463
- :GuiSpinner => [Rectangle.by_value, :pointer, :pointer, :int, :int, :bool],
464
- :GuiValueBox => [Rectangle.by_value, :pointer, :pointer, :int, :int, :bool],
465
- :GuiTextBox => [Rectangle.by_value, :pointer, :int, :bool],
466
- :GuiTextBoxMulti => [Rectangle.by_value, :pointer, :int, :bool],
467
- :GuiSlider => [Rectangle.by_value, :pointer, :pointer, :float, :float, :float],
468
- :GuiSliderBar => [Rectangle.by_value, :pointer, :pointer, :float, :float, :float],
469
- :GuiProgressBar => [Rectangle.by_value, :pointer, :pointer, :float, :float, :float],
470
- :GuiStatusBar => [Rectangle.by_value, :pointer],
471
- :GuiDummyRec => [Rectangle.by_value, :pointer],
472
- :GuiGrid => [Rectangle.by_value, :pointer, :float, :int],
473
- :GuiListView => [Rectangle.by_value, :pointer, :pointer, :int],
474
- :GuiListViewEx => [Rectangle.by_value, :pointer, :int, :pointer, :pointer, :int],
475
- :GuiMessageBox => [Rectangle.by_value, :pointer, :pointer, :pointer],
476
- :GuiTextInputBox => [Rectangle.by_value, :pointer, :pointer, :pointer, :pointer, :int, :pointer],
477
- :GuiColorPicker => [Rectangle.by_value, :pointer, Color.by_value],
478
- :GuiColorPanel => [Rectangle.by_value, :pointer, Color.by_value],
479
- :GuiColorBarAlpha => [Rectangle.by_value, :pointer, :float],
480
- :GuiColorBarHue => [Rectangle.by_value, :pointer, :float],
481
- :GuiLoadStyle => [:pointer],
482
- :GuiLoadStyleDefault => [],
483
- :GuiEnableTooltip => [],
484
- :GuiDisableTooltip => [],
485
- :GuiSetTooltip => [:pointer],
486
- :GuiIconText => [:int, :pointer],
487
- :GuiGetIcons => [],
488
- :GuiLoadIcons => [:pointer, :bool],
489
- :GuiDrawIcon => [:int, :int, :int, :int, Color.by_value],
490
- }
491
- retvals = {
492
- :GuiEnable => :void,
493
- :GuiDisable => :void,
494
- :GuiLock => :void,
495
- :GuiUnlock => :void,
496
- :GuiIsLocked => :bool,
497
- :GuiFade => :void,
498
- :GuiSetState => :void,
499
- :GuiGetState => :int,
500
- :GuiSetFont => :void,
501
- :GuiGetFont => Font.by_value,
502
- :GuiSetStyle => :void,
503
- :GuiGetStyle => :int,
504
- :GuiWindowBox => :bool,
505
- :GuiGroupBox => :void,
506
- :GuiLine => :void,
507
- :GuiPanel => :void,
508
- :GuiTabBar => :int,
509
- :GuiScrollPanel => Rectangle.by_value,
510
- :GuiLabel => :void,
511
- :GuiButton => :bool,
512
- :GuiLabelButton => :bool,
513
- :GuiToggle => :bool,
514
- :GuiToggleGroup => :int,
515
- :GuiCheckBox => :bool,
516
- :GuiComboBox => :int,
517
- :GuiDropdownBox => :bool,
518
- :GuiSpinner => :bool,
519
- :GuiValueBox => :bool,
520
- :GuiTextBox => :bool,
521
- :GuiTextBoxMulti => :bool,
522
- :GuiSlider => :float,
523
- :GuiSliderBar => :float,
524
- :GuiProgressBar => :float,
525
- :GuiStatusBar => :void,
526
- :GuiDummyRec => :void,
527
- :GuiGrid => Vector2.by_value,
528
- :GuiListView => :int,
529
- :GuiListViewEx => :int,
530
- :GuiMessageBox => :int,
531
- :GuiTextInputBox => :int,
532
- :GuiColorPicker => Color.by_value,
533
- :GuiColorPanel => Color.by_value,
534
- :GuiColorBarAlpha => :float,
535
- :GuiColorBarHue => :float,
536
- :GuiLoadStyle => :void,
537
- :GuiLoadStyleDefault => :void,
538
- :GuiEnableTooltip => :void,
539
- :GuiDisableTooltip => :void,
540
- :GuiSetTooltip => :void,
541
- :GuiIconText => :pointer,
542
- :GuiGetIcons => :pointer,
543
- :GuiLoadIcons => :pointer,
544
- :GuiDrawIcon => :void,
545
- }
546
- symbols.each do |sym|
547
- begin
548
- attach_function sym, args[sym], retvals[sym]
549
- rescue FFI::NotFoundError => error
550
- $stderr.puts("[Warning] Failed to import #{sym} (#{error}).")
551
- end
784
+ entries.each do |entry|
785
+ attach_function entry[0], entry[1], entry[2], entry[3]
786
+ rescue FFI::NotFoundError => e
787
+ warn "[Warning] Failed to import #{entry[0]} (#{e})."
552
788
  end
553
789
  end
554
-
555
790
  end
556
-