imgui-bindings 0.1.10 → 0.1.12

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e160bbc6de11474be8b789ef9da4406485f1eaf287007d24d924abd70da046c5
4
- data.tar.gz: ccfaf322d30b67c3bc21294de95c8a509d21ee05d17f54427c4888a721d7e252
3
+ metadata.gz: 4eb4f50581b7a47b6e09a91b258a30ce75385f5619bdf6ddedd0c49b4a00f4fa
4
+ data.tar.gz: 490ea29358668f366efd8aae97ab43354f8172f6bddf3ed4bc6ccd17d81b2b83
5
5
  SHA512:
6
- metadata.gz: 6134209486b6866eec12dc1664e1928399c956fe87cbdd770e40f69e1e23247f151733e9114a377ff48359e6dcb28a6e056d01bdb3223b8c07da18b0fee197af
7
- data.tar.gz: 3af69715d7f64e056d8ee187fec3a174cc413dceb9f37e66039a07c838aea576ea098235d6847a8ed9b12c49e39e0d81a794ad5a0824b13fce9649604ddb566a
6
+ metadata.gz: 8ce3055925aab98e75cb309717397d15f2853c42b2b61b6495f7ca2ae2d5e98ff0e991bccec131ef7ab69c10867ad61212daf55dd81109316d817879f62554d6
7
+ data.tar.gz: cbb24b7836dbe1e44da05e5302acfa5ef6ba7f03ed25403103dc6cd8e09197e3dc17305965472a485fb25b7fd47c183293eccbb9323e923e9ed819c2e2add404
data/ChangeLog CHANGED
@@ -1,3 +1,11 @@
1
+ 2024-04-13 vaiorabbit <http://twitter.com/vaiorabbit>
2
+
3
+ * ImGui v1.90.5
4
+
5
+ 2024-02-25 vaiorabbit <http://twitter.com/vaiorabbit>
6
+
7
+ * ImGui v1.90.4
8
+
1
9
  2024-01-12 vaiorabbit <http://twitter.com/vaiorabbit>
2
10
 
3
11
  * ImGui v1.90.1
data/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  # Yet another ImGui wrapper for Ruby #
4
4
 
5
5
  * Created : 2019-01-05
6
- * Last modified : 2024-01-12
6
+ * Last modified : 2024-04-13
7
7
 
8
8
  <img src="https://raw.githubusercontent.com/vaiorabbit/ruby-imgui/master/doc/jpfont_test.png" width="250">
9
9
 
data/lib/imgui.aarch64.so CHANGED
Binary file
Binary file
data/lib/imgui.dll CHANGED
Binary file
data/lib/imgui.rb CHANGED
@@ -113,7 +113,7 @@ ImGuiButtonFlags_MouseButtonDefault_ = 1 # ImGuiButtonFlags_MouseButtonLeft
113
113
 
114
114
  # ImGuiChildFlags_
115
115
  # Flags for ImGui::BeginChild()
116
- # (Legacy: bot 0 must always correspond to ImGuiChildFlags_Border to be backward compatible with old API using 'bool border = false'.
116
+ # (Legacy: bit 0 must always correspond to ImGuiChildFlags_Border to be backward compatible with old API using 'bool border = false'.
117
117
  # About using AutoResizeX/AutoResizeY flags:
118
118
  # - May be combined with SetNextWindowSizeConstraints() to set a min/max size for each axis (see "Demo->Child->Auto-resize with Constraints").
119
119
  # - Size measurement for a given axis is only performed when the child window is within visible boundaries, or is just appearing.
@@ -122,7 +122,7 @@ ImGuiButtonFlags_MouseButtonDefault_ = 1 # ImGuiButtonFlags_MouseButtonLeft
122
122
  # - You may also use ImGuiChildFlags_AlwaysAutoResize to force an update even when child window is not in view.
123
123
  # HOWEVER PLEASE UNDERSTAND THAT DOING SO WILL PREVENT BeginChild() FROM EVER RETURNING FALSE, disabling benefits of coarse clipping.
124
124
  ImGuiChildFlags_None = 0 # 0
125
- ImGuiChildFlags_Border = 1 # 1 << 0 # Show an outer border and enable WindowPadding. (Important: this is always == 1 == true for legacy reason)
125
+ ImGuiChildFlags_Border = 1 # 1 << 0 # Show an outer border and enable WindowPadding. (IMPORTANT: this is always == 1 == true for legacy reason)
126
126
  ImGuiChildFlags_AlwaysUseWindowPadding = 2 # 1 << 1 # Pad with style.WindowPadding even if no border are drawn (no padding by default for non-bordered child windows because it makes more sense)
127
127
  ImGuiChildFlags_ResizeX = 4 # 1 << 2 # Allow resize from right border (layout direction). Enable .ini saving (unless ImGuiWindowFlags_NoSavedSettings passed to window flags)
128
128
  ImGuiChildFlags_ResizeY = 8 # 1 << 3 # Allow resize from bottom border (layout direction). "
@@ -563,24 +563,25 @@ ImGuiMouseSource_COUNT = 3 # 3
563
563
 
564
564
  # ImGuiPopupFlags_
565
565
  # Flags for OpenPopup*(), BeginPopupContext*(), IsPopupOpen() functions.
566
- # - To be backward compatible with older API which took an 'int mouse_button = 1' argument, we need to treat
567
- # small flags values as a mouse button index, so we encode the mouse button in the first few bits of the flags.
566
+ # - To be backward compatible with older API which took an 'int mouse_button = 1' argument instead of 'ImGuiPopupFlags flags',
567
+ # we need to treat small flags values as a mouse button index, so we encode the mouse button in the first few bits of the flags.
568
568
  # It is therefore guaranteed to be legal to pass a mouse button index in ImGuiPopupFlags.
569
569
  # - For the same reason, we exceptionally default the ImGuiPopupFlags argument of BeginPopupContextXXX functions to 1 instead of 0.
570
570
  # IMPORTANT: because the default parameter is 1 (==ImGuiPopupFlags_MouseButtonRight), if you rely on the default parameter
571
571
  # and want to use another flag, you need to pass in the ImGuiPopupFlags_MouseButtonRight flag explicitly.
572
572
  # - Multiple buttons currently cannot be combined/or-ed in those functions (we could allow it later).
573
- ImGuiPopupFlags_None = 0 # 0
574
- ImGuiPopupFlags_MouseButtonLeft = 0 # 0 # For BeginPopupContext*(): open on Left Mouse release. Guaranteed to always be == 0 (same as ImGuiMouseButton_Left)
575
- ImGuiPopupFlags_MouseButtonRight = 1 # 1 # For BeginPopupContext*(): open on Right Mouse release. Guaranteed to always be == 1 (same as ImGuiMouseButton_Right)
576
- ImGuiPopupFlags_MouseButtonMiddle = 2 # 2 # For BeginPopupContext*(): open on Middle Mouse release. Guaranteed to always be == 2 (same as ImGuiMouseButton_Middle)
577
- ImGuiPopupFlags_MouseButtonMask_ = 31 # 0x1F
578
- ImGuiPopupFlags_MouseButtonDefault_ = 1 # 1
579
- ImGuiPopupFlags_NoOpenOverExistingPopup = 32 # 1 << 5 # For OpenPopup*(), BeginPopupContext*(): don't open if there's already a popup at the same level of the popup stack
580
- ImGuiPopupFlags_NoOpenOverItems = 64 # 1 << 6 # For BeginPopupContextWindow(): don't return true when hovering items, only when hovering empty space
581
- ImGuiPopupFlags_AnyPopupId = 128 # 1 << 7 # For IsPopupOpen(): ignore the ImGuiID parameter and test for any popup.
582
- ImGuiPopupFlags_AnyPopupLevel = 256 # 1 << 8 # For IsPopupOpen(): search/test at any level of the popup stack (default test in the current level)
583
- ImGuiPopupFlags_AnyPopup = 384 # ImGuiPopupFlags_AnyPopupId | ImGuiPopupFlags_AnyPopupLevel
573
+ ImGuiPopupFlags_None = 0 # 0
574
+ ImGuiPopupFlags_MouseButtonLeft = 0 # 0 # For BeginPopupContext*(): open on Left Mouse release. Guaranteed to always be == 0 (same as ImGuiMouseButton_Left)
575
+ ImGuiPopupFlags_MouseButtonRight = 1 # 1 # For BeginPopupContext*(): open on Right Mouse release. Guaranteed to always be == 1 (same as ImGuiMouseButton_Right)
576
+ ImGuiPopupFlags_MouseButtonMiddle = 2 # 2 # For BeginPopupContext*(): open on Middle Mouse release. Guaranteed to always be == 2 (same as ImGuiMouseButton_Middle)
577
+ ImGuiPopupFlags_MouseButtonMask_ = 31 # 0x1F
578
+ ImGuiPopupFlags_MouseButtonDefault_ = 1 # 1
579
+ ImGuiPopupFlags_NoReopen = 32 # 1 << 5 # For OpenPopup*(), BeginPopupContext*(): don't reopen same popup if already open (won't reposition, won't reinitialize navigation)
580
+ ImGuiPopupFlags_NoOpenOverExistingPopup = 128 # 1 << 7 # For OpenPopup*(), BeginPopupContext*(): don't open if there's already a popup at the same level of the popup stack
581
+ ImGuiPopupFlags_NoOpenOverItems = 256 # 1 << 8 # For BeginPopupContextWindow(): don't return true when hovering items, only when hovering empty space
582
+ ImGuiPopupFlags_AnyPopupId = 1024 # 1 << 10 # For IsPopupOpen(): ignore the ImGuiID parameter and test for any popup.
583
+ ImGuiPopupFlags_AnyPopupLevel = 2048 # 1 << 11 # For IsPopupOpen(): search/test at any level of the popup stack (default test in the current level)
584
+ ImGuiPopupFlags_AnyPopup = 3072 # ImGuiPopupFlags_AnyPopupId | ImGuiPopupFlags_AnyPopupLevel
584
585
 
585
586
  # ImGuiSelectableFlags_
586
587
  # Flags for ImGui::Selectable()
@@ -613,8 +614,9 @@ ImGuiSortDirection_Descending = 2 # 2 # Descending = 9->0, Z->A etc.
613
614
  # - The enum only refers to fields of ImGuiStyle which makes sense to be pushed/popped inside UI code.
614
615
  # During initialization or between frames, feel free to just poke into ImGuiStyle directly.
615
616
  # - Tip: Use your programming IDE navigation facilities on the names in the _second column_ below to find the actual members and their description.
616
- # In Visual Studio IDE: CTRL+comma ("Edit.GoToAll") can follow symbols in comments, whereas CTRL+F12 ("Edit.GoToImplementation") cannot.
617
- # With Visual Assist installed: ALT+G ("VAssistX.GoToImplementation") can also follow symbols in comments.
617
+ # - In Visual Studio: CTRL+comma ("Edit.GoToAll") can follow symbols inside comments, whereas CTRL+F12 ("Edit.GoToImplementation") cannot.
618
+ # - In Visual Studio w/ Visual Assist installed: ALT+G ("VAssistX.GoToImplementation") can also follow symbols inside comments.
619
+ # - In VS Code, CLion, etc.: CTRL+click can follow symbols inside comments.
618
620
  # - When changing this enum, you need to update the associated internal table GStyleVarInfo[] accordingly. This is where we link enum values to members offset/type.
619
621
  ImGuiStyleVar_Alpha = 0 # 0 # float Alpha
620
622
  ImGuiStyleVar_DisabledAlpha = 1 # 1 # float DisabledAlpha
@@ -639,13 +641,15 @@ ImGuiStyleVar_ScrollbarRounding = 19 # 19 # float ScrollbarRounding
639
641
  ImGuiStyleVar_GrabMinSize = 20 # 20 # float GrabMinSize
640
642
  ImGuiStyleVar_GrabRounding = 21 # 21 # float GrabRounding
641
643
  ImGuiStyleVar_TabRounding = 22 # 22 # float TabRounding
642
- ImGuiStyleVar_TabBarBorderSize = 23 # 23 # float TabBarBorderSize
643
- ImGuiStyleVar_ButtonTextAlign = 24 # 24 # ImVec2 ButtonTextAlign
644
- ImGuiStyleVar_SelectableTextAlign = 25 # 25 # ImVec2 SelectableTextAlign
645
- ImGuiStyleVar_SeparatorTextBorderSize = 26 # 26 # float SeparatorTextBorderSize
646
- ImGuiStyleVar_SeparatorTextAlign = 27 # 27 # ImVec2 SeparatorTextAlign
647
- ImGuiStyleVar_SeparatorTextPadding = 28 # 28 # ImVec2 SeparatorTextPadding
648
- ImGuiStyleVar_COUNT = 29 # 29
644
+ ImGuiStyleVar_TabBorderSize = 23 # 23 # float TabBorderSize
645
+ ImGuiStyleVar_TabBarBorderSize = 24 # 24 # float TabBarBorderSize
646
+ ImGuiStyleVar_TableAngledHeadersAngle = 25 # 25 # float TableAngledHeadersAngle
647
+ ImGuiStyleVar_ButtonTextAlign = 26 # 26 # ImVec2 ButtonTextAlign
648
+ ImGuiStyleVar_SelectableTextAlign = 27 # 27 # ImVec2 SelectableTextAlign
649
+ ImGuiStyleVar_SeparatorTextBorderSize = 28 # 28 # float SeparatorTextBorderSize
650
+ ImGuiStyleVar_SeparatorTextAlign = 29 # 29 # ImVec2 SeparatorTextAlign
651
+ ImGuiStyleVar_SeparatorTextPadding = 30 # 30 # ImVec2 SeparatorTextPadding
652
+ ImGuiStyleVar_COUNT = 31 # 31
649
653
 
650
654
  # ImGuiTabBarFlags_
651
655
  # Flags for ImGui::BeginTabBar()
@@ -811,7 +815,7 @@ ImGuiTreeNodeFlags_CollapsingHeader = 26 # ImGuiTreeNodeFlags_Framed | Im
811
815
  ImGuiViewportFlags_None = 0 # 0
812
816
  ImGuiViewportFlags_IsPlatformWindow = 1 # 1 << 0 # Represent a Platform Window
813
817
  ImGuiViewportFlags_IsPlatformMonitor = 2 # 1 << 1 # Represent a Platform Monitor (unused yet)
814
- ImGuiViewportFlags_OwnedByApp = 4 # 1 << 2 # Platform Window: is created/managed by the application (rather than a dear imgui backend)
818
+ ImGuiViewportFlags_OwnedByApp = 4 # 1 << 2 # Platform Window: Was created/managed by the user application? (rather than our backend)
815
819
 
816
820
  # ImGuiWindowFlags_
817
821
  # Flags for ImGui::Begin()
@@ -1006,6 +1010,10 @@ class ImDrawList < FFI::Struct
1006
1010
  ImGui::ImDrawList_AddCircleFilled(self, center, radius, col, num_segments)
1007
1011
  end
1008
1012
 
1013
+ def AddConcavePolyFilled(points, num_points, col)
1014
+ ImGui::ImDrawList_AddConcavePolyFilled(self, points, num_points, col)
1015
+ end
1016
+
1009
1017
  def AddConvexPolyFilled(points, num_points, col)
1010
1018
  ImGui::ImDrawList_AddConvexPolyFilled(self, points, num_points, col)
1011
1019
  end
@@ -1014,12 +1022,12 @@ class ImDrawList < FFI::Struct
1014
1022
  ImGui::ImDrawList_AddDrawCmd(self)
1015
1023
  end
1016
1024
 
1017
- def AddEllipse(center, radius_x, radius_y, col, rot = 0.0, num_segments = 0, thickness = 1.0)
1018
- ImGui::ImDrawList_AddEllipse(self, center, radius_x, radius_y, col, rot, num_segments, thickness)
1025
+ def AddEllipse(center, radius, col, rot = 0.0, num_segments = 0, thickness = 1.0)
1026
+ ImGui::ImDrawList_AddEllipse(self, center, radius, col, rot, num_segments, thickness)
1019
1027
  end
1020
1028
 
1021
- def AddEllipseFilled(center, radius_x, radius_y, col, rot = 0.0, num_segments = 0)
1022
- ImGui::ImDrawList_AddEllipseFilled(self, center, radius_x, radius_y, col, rot, num_segments)
1029
+ def AddEllipseFilled(center, radius, col, rot = 0.0, num_segments = 0)
1030
+ ImGui::ImDrawList_AddEllipseFilled(self, center, radius, col, rot, num_segments)
1023
1031
  end
1024
1032
 
1025
1033
  def AddImage(user_texture_id, p_min, p_max, uv_min = ImVec2.create(0,0), uv_max = ImVec2.create(1,1), col = ImColor.col32(255,255,255,255))
@@ -1138,8 +1146,12 @@ class ImDrawList < FFI::Struct
1138
1146
  ImGui::ImDrawList_PathClear(self)
1139
1147
  end
1140
1148
 
1141
- def PathEllipticalArcTo(center, radius_x, radius_y, rot, a_min, a_max, num_segments = 0)
1142
- ImGui::ImDrawList_PathEllipticalArcTo(self, center, radius_x, radius_y, rot, a_min, a_max, num_segments)
1149
+ def PathEllipticalArcTo(center, radius, rot, a_min, a_max, num_segments = 0)
1150
+ ImGui::ImDrawList_PathEllipticalArcTo(self, center, radius, rot, a_min, a_max, num_segments)
1151
+ end
1152
+
1153
+ def PathFillConcave(col)
1154
+ ImGui::ImDrawList_PathFillConcave(self, col)
1143
1155
  end
1144
1156
 
1145
1157
  def PathFillConvex(col)
@@ -1441,7 +1453,7 @@ class ImGuiKeyData < FFI::Struct
1441
1453
  end
1442
1454
 
1443
1455
  # - Currently represents the Platform Window created by the application which is hosting our Dear ImGui windows.
1444
- # - In 'docking' branch with multi-viewport enabled, we extend this concept to have multiple active viewports.
1456
+ # - With multi-viewport enabled, we extend this concept to have multiple active viewports.
1445
1457
  # - In the future we will extend this concept further to also represent Platform Monitor and support a "no main platform window" operation mode.
1446
1458
  # - About Main Area vs Work Area:
1447
1459
  # - Main Area = entire viewport.
@@ -1449,6 +1461,7 @@ end
1449
1461
  # - Windows are generally trying to stay within the Work Area of their host viewport.
1450
1462
  class ImGuiViewport < FFI::Struct
1451
1463
  layout(
1464
+ :ID, :uint,
1452
1465
  :Flags, :int,
1453
1466
  :Pos, ImVec2.by_value,
1454
1467
  :Size, ImVec2.by_value,
@@ -1815,7 +1828,6 @@ class ImGuiIO < FFI::Struct
1815
1828
  :MetricsRenderWindows, :int,
1816
1829
  :MetricsActiveWindows, :int,
1817
1830
  :MouseDelta, ImVec2.by_value,
1818
- :_UnusedPadding, :pointer,
1819
1831
  :Ctx, :pointer,
1820
1832
  :MousePos, ImVec2.by_value,
1821
1833
  :MouseDown, [:bool, 5],
@@ -2500,10 +2512,11 @@ module ImGui
2500
2512
  [:ImDrawList_AddCallback, [:pointer, :ImDrawCallback, :pointer], :void],
2501
2513
  [:ImDrawList_AddCircle, [:pointer, ImVec2.by_value, :float, :uint, :int, :float], :void],
2502
2514
  [:ImDrawList_AddCircleFilled, [:pointer, ImVec2.by_value, :float, :uint, :int], :void],
2515
+ [:ImDrawList_AddConcavePolyFilled, [:pointer, :pointer, :int, :uint], :void],
2503
2516
  [:ImDrawList_AddConvexPolyFilled, [:pointer, :pointer, :int, :uint], :void],
2504
2517
  [:ImDrawList_AddDrawCmd, [:pointer], :void],
2505
- [:ImDrawList_AddEllipse, [:pointer, ImVec2.by_value, :float, :float, :uint, :float, :int, :float], :void],
2506
- [:ImDrawList_AddEllipseFilled, [:pointer, ImVec2.by_value, :float, :float, :uint, :float, :int], :void],
2518
+ [:ImDrawList_AddEllipse, [:pointer, ImVec2.by_value, ImVec2.by_value, :uint, :float, :int, :float], :void],
2519
+ [:ImDrawList_AddEllipseFilled, [:pointer, ImVec2.by_value, ImVec2.by_value, :uint, :float, :int], :void],
2507
2520
  [:ImDrawList_AddImage, [:pointer, :pointer, ImVec2.by_value, ImVec2.by_value, ImVec2.by_value, ImVec2.by_value, :uint], :void],
2508
2521
  [:ImDrawList_AddImageQuad, [:pointer, :pointer, ImVec2.by_value, ImVec2.by_value, ImVec2.by_value, ImVec2.by_value, ImVec2.by_value, ImVec2.by_value, ImVec2.by_value, ImVec2.by_value, :uint], :void],
2509
2522
  [:ImDrawList_AddImageRounded, [:pointer, :pointer, ImVec2.by_value, ImVec2.by_value, ImVec2.by_value, ImVec2.by_value, :uint, :float, :int], :void],
@@ -2532,7 +2545,8 @@ module ImGui
2532
2545
  [:ImDrawList_PathBezierCubicCurveTo, [:pointer, ImVec2.by_value, ImVec2.by_value, ImVec2.by_value, :int], :void],
2533
2546
  [:ImDrawList_PathBezierQuadraticCurveTo, [:pointer, ImVec2.by_value, ImVec2.by_value, :int], :void],
2534
2547
  [:ImDrawList_PathClear, [:pointer], :void],
2535
- [:ImDrawList_PathEllipticalArcTo, [:pointer, ImVec2.by_value, :float, :float, :float, :float, :float, :int], :void],
2548
+ [:ImDrawList_PathEllipticalArcTo, [:pointer, ImVec2.by_value, ImVec2.by_value, :float, :float, :float, :int], :void],
2549
+ [:ImDrawList_PathFillConcave, [:pointer, :uint], :void],
2536
2550
  [:ImDrawList_PathFillConvex, [:pointer, :uint], :void],
2537
2551
  [:ImDrawList_PathLineTo, [:pointer, ImVec2.by_value], :void],
2538
2552
  [:ImDrawList_PathLineToMergeDuplicate, [:pointer, ImVec2.by_value], :void],
@@ -2770,6 +2784,7 @@ module ImGui
2770
2784
  [:igCreateContext, [:pointer], :pointer],
2771
2785
  [:igDebugCheckVersionAndDataLayout, [:pointer, :size_t, :size_t, :size_t, :size_t, :size_t, :size_t], :bool],
2772
2786
  [:igDebugFlashStyleColor, [:int], :void],
2787
+ [:igDebugStartItemPicker, [], :void],
2773
2788
  [:igDebugTextEncoding, [:pointer], :void],
2774
2789
  [:igDestroyContext, [:pointer], :void],
2775
2790
  [:igDragFloat, [:pointer, :pointer, :float, :float, :float, :pointer, :int], :bool],
@@ -2807,7 +2822,7 @@ module ImGui
2807
2822
  [:igGetClipboardText, [], :pointer],
2808
2823
  [:igGetColorU32_Col, [:int, :float], :uint],
2809
2824
  [:igGetColorU32_Vec4, [ImVec4.by_value], :uint],
2810
- [:igGetColorU32_U32, [:uint], :uint],
2825
+ [:igGetColorU32_U32, [:uint, :float], :uint],
2811
2826
  [:igGetColumnIndex, [], :int],
2812
2827
  [:igGetColumnOffset, [:int], :float],
2813
2828
  [:igGetColumnWidth, [:int], :float],
@@ -2838,7 +2853,6 @@ module ImGui
2838
2853
  [:igGetItemRectMax, [:pointer], :void],
2839
2854
  [:igGetItemRectMin, [:pointer], :void],
2840
2855
  [:igGetItemRectSize, [:pointer], :void],
2841
- [:igGetKeyIndex, [:int], :int],
2842
2856
  [:igGetKeyName, [:int], :pointer],
2843
2857
  [:igGetKeyPressedAmount, [:int, :float, :float], :int],
2844
2858
  [:igGetMainViewport, [], :pointer],
@@ -3520,6 +3534,11 @@ module ImGui
3520
3534
  igDebugFlashStyleColor(idx)
3521
3535
  end
3522
3536
 
3537
+ # ret: void
3538
+ def self.DebugStartItemPicker()
3539
+ igDebugStartItemPicker()
3540
+ end
3541
+
3523
3542
  # arg: text(const char*)
3524
3543
  # ret: void
3525
3544
  #
@@ -3720,7 +3739,7 @@ module ImGui
3720
3739
  # ret: pointer
3721
3740
  #
3722
3741
  # Background/Foreground Draw Lists
3723
- def self.GetBackgroundDrawList() # this draw list will be the first rendered one. Useful to quickly draw shapes/text behind dear imgui contents.
3742
+ def self.GetBackgroundDrawList() # get background draw list for the viewport associated to the current window. this draw list will be the first rendering one. Useful to quickly draw shapes/text behind dear imgui contents.
3724
3743
  igGetBackgroundDrawList()
3725
3744
  end
3726
3745
 
@@ -3744,10 +3763,10 @@ module ImGui
3744
3763
  igGetColorU32_Vec4(col)
3745
3764
  end
3746
3765
 
3747
- # arg: col(ImU32)
3766
+ # arg: col(ImU32), alpha_mul(float)
3748
3767
  # ret: uint
3749
- def self.GetColorU32_U32(col)
3750
- igGetColorU32_U32(col)
3768
+ def self.GetColorU32_U32(col, alpha_mul = 1.0)
3769
+ igGetColorU32_U32(col, alpha_mul)
3751
3770
  end
3752
3771
 
3753
3772
  # ret: int
@@ -3871,7 +3890,7 @@ module ImGui
3871
3890
  end
3872
3891
 
3873
3892
  # ret: pointer
3874
- def self.GetForegroundDrawList() # this draw list will be the last rendered one. Useful to quickly draw shapes/text over dear imgui contents.
3893
+ def self.GetForegroundDrawList() # get foreground draw list for the viewport associated to the current window. this draw list will be the last rendered one. Useful to quickly draw shapes/text over dear imgui contents.
3875
3894
  igGetForegroundDrawList()
3876
3895
  end
3877
3896
 
@@ -3941,12 +3960,6 @@ module ImGui
3941
3960
  return pOut
3942
3961
  end
3943
3962
 
3944
- # arg: key(ImGuiKey)
3945
- # ret: int
3946
- def self.GetKeyIndex(key)
3947
- igGetKeyIndex(key)
3948
- end
3949
-
3950
3963
  # arg: key(ImGuiKey)
3951
3964
  # ret: pointer
3952
3965
  def self.GetKeyName(key) # [DEBUG] returns English name of the key. Those names a provided for debugging purpose and are not meant to be saved persistently not compared.
@@ -5492,7 +5505,7 @@ module ImGui
5492
5505
  # - Use child windows to begin into a self-contained independent scrolling/clipping regions within a host window. Child windows can embed their own child.
5493
5506
  # - Before 1.90 (November 2023), the "ImGuiChildFlags child_flags = 0" parameter was "bool border = false".
5494
5507
  # This API is backward compatible with old code, as we guarantee that ImGuiChildFlags_Border == true.
5495
- # Consider updating your old call sites:
5508
+ # Consider updating your old code:
5496
5509
  # BeginChild("Name", size, false) -> Begin("Name", size, 0); or Begin("Name", size, ImGuiChildFlags_None);
5497
5510
  # BeginChild("Name", size, true) -> Begin("Name", size, ImGuiChildFlags_Border);
5498
5511
  # - Manual sizing (each axis can use a different setting e.g. ImVec2(0.0f, 400.0f)):
@@ -5556,9 +5569,9 @@ module ImGui
5556
5569
  # arg: 0:col(ImVec4)
5557
5570
  # ret: uint
5558
5571
  return igGetColorU32_Vec4(arg[0]) if arg.length == 1 && (arg[0].kind_of?(ImVec4))
5559
- # arg: 0:col(ImU32)
5572
+ # arg: 0:col(ImU32), 1:alpha_mul(float)
5560
5573
  # ret: uint
5561
- return igGetColorU32_U32(arg[0]) if arg.length == 1 && (arg[0].kind_of?(Integer))
5574
+ return igGetColorU32_U32(arg[0], arg[1]) if arg.length == 2 && (arg[0].kind_of?(Integer) && arg[1].kind_of?(Float))
5562
5575
  $stderr.puts("[Warning] GetColorU32 : No matching functions found (#{arg})")
5563
5576
  end
5564
5577
 
Binary file
data/lib/imgui.x86_64.so CHANGED
Binary file
Binary file
Binary file
data/lib/imnodes.dll CHANGED
Binary file
Binary file
Binary file
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: imgui-bindings
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.10
4
+ version: 0.1.12
5
5
  platform: ruby
6
6
  authors:
7
7
  - vaiorabbit
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-01-13 00:00:00.000000000 Z
11
+ date: 2024-04-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ffi
@@ -88,7 +88,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
88
88
  - !ruby/object:Gem::Version
89
89
  version: '0'
90
90
  requirements: []
91
- rubygems_version: 3.5.3
91
+ rubygems_version: 3.5.5
92
92
  signing_key:
93
93
  specification_version: 4
94
94
  summary: Bindings for Dear ImGui