imgui-bindings 0.1.10-x86_64-darwin → 0.1.12-x86_64-darwin

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 253156555fc3e5fe2c706c425fb4efe03d993d8d75353405bed385ea9bb2ac0b
4
- data.tar.gz: 8bc01f1bbd7455fadd2ccd52c9f93d0171c86ec400106a2f8b7b60f32608a848
3
+ metadata.gz: f24272fa2e666a411bbcb4b764dcb88b26f55cef9044605b8270aea015e40e79
4
+ data.tar.gz: 0d9ff78db93e86e6e58d5234eafdde414de4f3bc0aaaedf8f20b62b93b67aee2
5
5
  SHA512:
6
- metadata.gz: e40b8afe3dd784ffc4edcaebe354a55f5d281b03b7e4d67c2818adbc67d15ccb93b79f4142e84f4d3999d5b07f7bd732ea735c9f6dfbaeb957c32412442b44ab
7
- data.tar.gz: 5a96091714d73b3c9990e5c705c93d77af96358605017763827f6093d3aed920a00976651d9ab587e527d3c563990904745a9fb17bc124d66fbe8a03492f671b
6
+ metadata.gz: 8b3b01f1038fd7d2e3b93167d12eb2822b5f085733e286588cc920dcd569ea2c150182e7809d6f0329a6eee97663a10a949b8a34eb21ca8a067ad96c48b8291a
7
+ data.tar.gz: 17de91a0c722b8a16182fcf1fa121b22ea9e2ae8da86d86c938064d9463c904bc2610da84dcd981487c1f746b1d2b24ea80962749b2d91de86f25ae57682b567
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.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
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: x86_64-darwin
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
@@ -80,7 +80,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
80
80
  - !ruby/object:Gem::Version
81
81
  version: '0'
82
82
  requirements: []
83
- rubygems_version: 3.5.3
83
+ rubygems_version: 3.5.5
84
84
  signing_key:
85
85
  specification_version: 4
86
86
  summary: Bindings for Dear ImGui