imgui-bindings 0.1.11-x86_64-darwin → 0.1.13-x86_64-darwin
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/ChangeLog +8 -0
- data/README.md +5 -3
- data/lib/imgui.rb +237 -158
- data/lib/imgui.x86_64.dylib +0 -0
- data/lib/imnodes.x86_64.dylib +0 -0
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: f7fa52cb98f6d17eb1d1f775ca9dd42f45c75e67fdf56af8bab3d36e817d93f8
|
4
|
+
data.tar.gz: 6862e3481f60d1aca14247c3fcf3b88423003e49837342567283502985b71948
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4d6870e24ade7800b554f3ff1d40acd45ec5ab48b116e3ab19a22ce4285e3dac9577c599a05bf645c5891ed68de305bac7ebecde726422116679dcc26ef370cd
|
7
|
+
data.tar.gz: 108a62abc0990c62d2c5d656c02f56353aade423d0705284f657657cd11c9a1627e8a973a8a8c1dd6b84c0ab7f962d61bbf1b90d4e72dddd98807960664d01b3
|
data/ChangeLog
CHANGED
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-
|
6
|
+
* Last modified : 2024-07-14
|
7
7
|
|
8
8
|
<img src="https://raw.githubusercontent.com/vaiorabbit/ruby-imgui/master/doc/jpfont_test.png" width="250">
|
9
9
|
|
@@ -16,7 +16,7 @@
|
|
16
16
|
* [Windows] https://rubyinstaller.org/downloads/ Ruby+Devkit
|
17
17
|
* ruby 3.2.0 (2022-12-25 revision a528908271) [x64-mingw-ucrt]
|
18
18
|
* [macOS]
|
19
|
-
* ruby 3.3.
|
19
|
+
* ruby 3.3.3 (2024-06-12 revision f1c7b6f435) [arm64-darwin23]
|
20
20
|
* [Linux]
|
21
21
|
* ruby 3.2.0 (2022-12-25 revision a528908271) [aarch64-linux]
|
22
22
|
* Ruby Gems
|
@@ -27,7 +27,7 @@
|
|
27
27
|
* Compiler
|
28
28
|
* Tested on:
|
29
29
|
* [Windows] gcc (Rev7, Built by MSYS2 project) 12.2.0
|
30
|
-
* [macOS] Apple clang version
|
30
|
+
* [macOS] Apple clang version 15.0.0 (clang-1500.3.9.4)
|
31
31
|
* [Linux] gcc (Debian 10.2.1-6) 10.2.1 20210110
|
32
32
|
* CMake https://cmake.org/download/
|
33
33
|
|
@@ -42,6 +42,7 @@
|
|
42
42
|
* ruby 3.0.0p0 (2020-12-25 revision 95aff21468) [x64-mingw32]
|
43
43
|
* ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [x64-mingw32]
|
44
44
|
* [macOS]
|
45
|
+
* ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [arm64-darwin23]
|
45
46
|
* ruby 3.2.1 (2023-02-08 revision 31819e82c8) [arm64-darwin22]
|
46
47
|
* ruby 3.2.0 (2022-12-25 revision a528908271) [arm64-darwin21]
|
47
48
|
* ruby 3.1.2p20 (2022-04-12 revision 4491bb740a) [arm64-darwin21]
|
@@ -57,6 +58,7 @@
|
|
57
58
|
* Tested on:
|
58
59
|
* [Windows] gcc (Rev10, Built by MSYS2 project) 11.2.0
|
59
60
|
* [Windows] gcc (Rev1, Built by MSYS2 project) 8.2.1 20181214
|
61
|
+
* [macOS] Apple clang version 14.0.0 (clang-1400.0.29.202), Target: arm64-apple-darwin22.2.0
|
60
62
|
* [macOS] clang (Apple clang version 13.1.6 (clang-1316.0.21.2.5), Target: arm64-apple-darwin21.5.0)
|
61
63
|
* [macOS] clang (Apple clang version 12.0.5 (clang-1205.0.22.11), Target: arm64-apple-darwin20.6.0)
|
62
64
|
</details>
|
data/lib/imgui.rb
CHANGED
@@ -20,11 +20,11 @@ FFI.typedef :int, :ImGuiComboFlags
|
|
20
20
|
FFI.typedef :int, :ImGuiCond
|
21
21
|
FFI.typedef :int, :ImGuiConfigFlags
|
22
22
|
FFI.typedef :int, :ImGuiDataType
|
23
|
-
FFI.typedef :int, :ImGuiDir
|
24
23
|
FFI.typedef :int, :ImGuiDragDropFlags
|
25
24
|
FFI.typedef :int, :ImGuiFocusedFlags
|
26
25
|
FFI.typedef :int, :ImGuiHoveredFlags
|
27
26
|
FFI.typedef :uint, :ImGuiID
|
27
|
+
FFI.typedef :int, :ImGuiInputFlags
|
28
28
|
FFI.typedef :int, :ImGuiInputTextFlags
|
29
29
|
FFI.typedef :int, :ImGuiKeyChord
|
30
30
|
FFI.typedef :pointer, :ImGuiMemAllocFunc
|
@@ -34,7 +34,6 @@ FFI.typedef :int, :ImGuiMouseCursor
|
|
34
34
|
FFI.typedef :int, :ImGuiPopupFlags
|
35
35
|
FFI.typedef :int, :ImGuiSelectableFlags
|
36
36
|
FFI.typedef :int, :ImGuiSliderFlags
|
37
|
-
FFI.typedef :int, :ImGuiSortDirection
|
38
37
|
FFI.typedef :int, :ImGuiStyleVar
|
39
38
|
FFI.typedef :int, :ImGuiTabBarFlags
|
40
39
|
FFI.typedef :int, :ImGuiTabItemFlags
|
@@ -57,8 +56,10 @@ FFI.typedef :uchar, :ImU8
|
|
57
56
|
FFI.typedef :ushort, :ImWchar
|
58
57
|
FFI.typedef :ushort, :ImWchar16
|
59
58
|
FFI.typedef :uint, :ImWchar32
|
59
|
+
FFI.typedef :int, :ImGuiDir
|
60
60
|
FFI.typedef :int, :ImGuiKey
|
61
61
|
FFI.typedef :int, :ImGuiMouseSource
|
62
|
+
FFI.typedef :uchar, :ImGuiSortDirection
|
62
63
|
|
63
64
|
# ImDrawFlags_
|
64
65
|
# Flags for ImDrawList functions
|
@@ -104,12 +105,11 @@ ImGuiBackendFlags_RendererHasVtxOffset = 8 # 1 << 3 # Backend Renderer supports
|
|
104
105
|
|
105
106
|
# ImGuiButtonFlags_
|
106
107
|
# Flags for InvisibleButton() [extended in imgui_internal.h]
|
107
|
-
ImGuiButtonFlags_None = 0
|
108
|
-
ImGuiButtonFlags_MouseButtonLeft = 1
|
109
|
-
ImGuiButtonFlags_MouseButtonRight = 2
|
110
|
-
ImGuiButtonFlags_MouseButtonMiddle = 4
|
111
|
-
ImGuiButtonFlags_MouseButtonMask_ = 7
|
112
|
-
ImGuiButtonFlags_MouseButtonDefault_ = 1 # ImGuiButtonFlags_MouseButtonLeft
|
108
|
+
ImGuiButtonFlags_None = 0 # 0
|
109
|
+
ImGuiButtonFlags_MouseButtonLeft = 1 # 1 << 0 # React on left mouse button (default)
|
110
|
+
ImGuiButtonFlags_MouseButtonRight = 2 # 1 << 1 # React on right mouse button
|
111
|
+
ImGuiButtonFlags_MouseButtonMiddle = 4 # 1 << 2 # React on center mouse button
|
112
|
+
ImGuiButtonFlags_MouseButtonMask_ = 7 # ImGuiButtonFlags_MouseButtonLeft | ImGuiButtonFlags_MouseButtonRight | ImGuiButtonFlags_MouseButtonMiddle
|
113
113
|
|
114
114
|
# ImGuiChildFlags_
|
115
115
|
# Flags for ImGui::BeginChild()
|
@@ -130,63 +130,67 @@ ImGuiChildFlags_AutoResizeX = 16 # 1 << 4 # Enable auto-resizing width
|
|
130
130
|
ImGuiChildFlags_AutoResizeY = 32 # 1 << 5 # Enable auto-resizing height. Read "IMPORTANT: Size measurement" details above.
|
131
131
|
ImGuiChildFlags_AlwaysAutoResize = 64 # 1 << 6 # Combined with AutoResizeX/AutoResizeY. Always measure size even when child is hidden, always return true, always disable clipping optimization! NOT RECOMMENDED.
|
132
132
|
ImGuiChildFlags_FrameStyle = 128 # 1 << 7 # Style the child window like a framed item: use FrameBg, FrameRounding, FrameBorderSize, FramePadding instead of ChildBg, ChildRounding, ChildBorderSize, WindowPadding.
|
133
|
+
ImGuiChildFlags_NavFlattened = 256 # 1 << 8
|
133
134
|
|
134
135
|
# ImGuiCol_
|
135
136
|
# Enumeration for PushStyleColor() / PopStyleColor()
|
136
|
-
ImGuiCol_Text = 0
|
137
|
-
ImGuiCol_TextDisabled = 1
|
138
|
-
ImGuiCol_WindowBg = 2
|
139
|
-
ImGuiCol_ChildBg = 3
|
140
|
-
ImGuiCol_PopupBg = 4
|
141
|
-
ImGuiCol_Border = 5
|
142
|
-
ImGuiCol_BorderShadow = 6
|
143
|
-
ImGuiCol_FrameBg = 7
|
144
|
-
ImGuiCol_FrameBgHovered = 8
|
145
|
-
ImGuiCol_FrameBgActive = 9
|
146
|
-
ImGuiCol_TitleBg = 10
|
147
|
-
ImGuiCol_TitleBgActive = 11
|
148
|
-
ImGuiCol_TitleBgCollapsed = 12
|
149
|
-
ImGuiCol_MenuBarBg = 13
|
150
|
-
ImGuiCol_ScrollbarBg = 14
|
151
|
-
ImGuiCol_ScrollbarGrab = 15
|
152
|
-
ImGuiCol_ScrollbarGrabHovered = 16
|
153
|
-
ImGuiCol_ScrollbarGrabActive = 17
|
154
|
-
ImGuiCol_CheckMark = 18
|
155
|
-
ImGuiCol_SliderGrab = 19
|
156
|
-
ImGuiCol_SliderGrabActive = 20
|
157
|
-
ImGuiCol_Button = 21
|
158
|
-
ImGuiCol_ButtonHovered = 22
|
159
|
-
ImGuiCol_ButtonActive = 23
|
160
|
-
ImGuiCol_Header = 24
|
161
|
-
ImGuiCol_HeaderHovered = 25
|
162
|
-
ImGuiCol_HeaderActive = 26
|
163
|
-
ImGuiCol_Separator = 27
|
164
|
-
ImGuiCol_SeparatorHovered = 28
|
165
|
-
ImGuiCol_SeparatorActive = 29
|
166
|
-
ImGuiCol_ResizeGrip = 30
|
167
|
-
ImGuiCol_ResizeGripHovered = 31
|
168
|
-
ImGuiCol_ResizeGripActive = 32
|
169
|
-
|
170
|
-
|
171
|
-
|
172
|
-
|
173
|
-
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
|
181
|
-
|
182
|
-
|
183
|
-
|
184
|
-
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
137
|
+
ImGuiCol_Text = 0 # 0
|
138
|
+
ImGuiCol_TextDisabled = 1 # 1
|
139
|
+
ImGuiCol_WindowBg = 2 # 2 # Background of normal windows
|
140
|
+
ImGuiCol_ChildBg = 3 # 3 # Background of child windows
|
141
|
+
ImGuiCol_PopupBg = 4 # 4 # Background of popups, menus, tooltips windows
|
142
|
+
ImGuiCol_Border = 5 # 5
|
143
|
+
ImGuiCol_BorderShadow = 6 # 6
|
144
|
+
ImGuiCol_FrameBg = 7 # 7 # Background of checkbox, radio button, plot, slider, text input
|
145
|
+
ImGuiCol_FrameBgHovered = 8 # 8
|
146
|
+
ImGuiCol_FrameBgActive = 9 # 9
|
147
|
+
ImGuiCol_TitleBg = 10 # 10 # Title bar
|
148
|
+
ImGuiCol_TitleBgActive = 11 # 11 # Title bar when focused
|
149
|
+
ImGuiCol_TitleBgCollapsed = 12 # 12 # Title bar when collapsed
|
150
|
+
ImGuiCol_MenuBarBg = 13 # 13
|
151
|
+
ImGuiCol_ScrollbarBg = 14 # 14
|
152
|
+
ImGuiCol_ScrollbarGrab = 15 # 15
|
153
|
+
ImGuiCol_ScrollbarGrabHovered = 16 # 16
|
154
|
+
ImGuiCol_ScrollbarGrabActive = 17 # 17
|
155
|
+
ImGuiCol_CheckMark = 18 # 18 # Checkbox tick and RadioButton circle
|
156
|
+
ImGuiCol_SliderGrab = 19 # 19
|
157
|
+
ImGuiCol_SliderGrabActive = 20 # 20
|
158
|
+
ImGuiCol_Button = 21 # 21
|
159
|
+
ImGuiCol_ButtonHovered = 22 # 22
|
160
|
+
ImGuiCol_ButtonActive = 23 # 23
|
161
|
+
ImGuiCol_Header = 24 # 24 # Header* colors are used for CollapsingHeader, TreeNode, Selectable, MenuItem
|
162
|
+
ImGuiCol_HeaderHovered = 25 # 25
|
163
|
+
ImGuiCol_HeaderActive = 26 # 26
|
164
|
+
ImGuiCol_Separator = 27 # 27
|
165
|
+
ImGuiCol_SeparatorHovered = 28 # 28
|
166
|
+
ImGuiCol_SeparatorActive = 29 # 29
|
167
|
+
ImGuiCol_ResizeGrip = 30 # 30 # Resize grip in lower-right and lower-left corners of windows.
|
168
|
+
ImGuiCol_ResizeGripHovered = 31 # 31
|
169
|
+
ImGuiCol_ResizeGripActive = 32 # 32
|
170
|
+
ImGuiCol_TabHovered = 33 # 33
|
171
|
+
ImGuiCol_Tab = 34 # 34 # TabItem in a TabBar
|
172
|
+
ImGuiCol_TabSelected = 35 # 35
|
173
|
+
ImGuiCol_TabSelectedOverline = 36 # 36
|
174
|
+
ImGuiCol_TabDimmed = 37 # 37
|
175
|
+
ImGuiCol_TabDimmedSelected = 38 # 38
|
176
|
+
ImGuiCol_TabDimmedSelectedOverline = 39 # 39
|
177
|
+
ImGuiCol_PlotLines = 40 # 40
|
178
|
+
ImGuiCol_PlotLinesHovered = 41 # 41
|
179
|
+
ImGuiCol_PlotHistogram = 42 # 42
|
180
|
+
ImGuiCol_PlotHistogramHovered = 43 # 43
|
181
|
+
ImGuiCol_TableHeaderBg = 44 # 44 # Table header background
|
182
|
+
ImGuiCol_TableBorderStrong = 45 # 45 # Table outer and header borders (prefer using Alpha=1.0 here)
|
183
|
+
ImGuiCol_TableBorderLight = 46 # 46 # Table inner borders (prefer using Alpha=1.0 here)
|
184
|
+
ImGuiCol_TableRowBg = 47 # 47 # Table row background (even rows)
|
185
|
+
ImGuiCol_TableRowBgAlt = 48 # 48 # Table row background (odd rows)
|
186
|
+
ImGuiCol_TextLink = 49 # 49
|
187
|
+
ImGuiCol_TextSelectedBg = 50 # 50
|
188
|
+
ImGuiCol_DragDropTarget = 51 # 51 # Rectangle highlighting a drop target
|
189
|
+
ImGuiCol_NavHighlight = 52 # 52 # Gamepad/keyboard: current highlighted item
|
190
|
+
ImGuiCol_NavWindowingHighlight = 53 # 53 # Highlight window when using CTRL+TAB
|
191
|
+
ImGuiCol_NavWindowingDimBg = 54 # 54 # Darken/colorize entire screen behind the CTRL+TAB window list, when active
|
192
|
+
ImGuiCol_ModalWindowDimBg = 55 # 55 # Darken/colorize entire screen behind a modal window, when one is active
|
193
|
+
ImGuiCol_COUNT = 56 # 56
|
190
194
|
|
191
195
|
# ImGuiColorEditFlags_
|
192
196
|
# Flags for ColorEdit3() / ColorEdit4() / ColorPicker3() / ColorPicker4() / ColorButton()
|
@@ -252,6 +256,7 @@ ImGuiConfigFlags_NavEnableSetMousePos = 4 # 1 << 2 # Instruct navigation to move
|
|
252
256
|
ImGuiConfigFlags_NavNoCaptureKeyboard = 8 # 1 << 3 # Instruct navigation to not set the io.WantCaptureKeyboard flag when io.NavActive is set.
|
253
257
|
ImGuiConfigFlags_NoMouse = 16 # 1 << 4 # Instruct imgui to clear mouse position/buttons in NewFrame(). This allows ignoring the mouse information set by the backend.
|
254
258
|
ImGuiConfigFlags_NoMouseCursorChange = 32 # 1 << 5 # Instruct backend to not alter mouse cursor shape and visibility. Use if the backend cursor changes are interfering with yours and you don't want to use SetMouseCursor() to change mouse cursor. You may want to honor requests from imgui by reading GetMouseCursor() yourself instead.
|
259
|
+
ImGuiConfigFlags_NoKeyboard = 64 # 1 << 6
|
255
260
|
ImGuiConfigFlags_IsSRGB = 1048576 # 1 << 20 # Application is SRGB-aware.
|
256
261
|
ImGuiConfigFlags_IsTouchScreen = 2097152 # 1 << 21 # Application is using a touch screen instead of a mouse.
|
257
262
|
|
@@ -269,8 +274,7 @@ ImGuiDataType_Float = 8 # 8 # float
|
|
269
274
|
ImGuiDataType_Double = 9 # 9 # double
|
270
275
|
ImGuiDataType_COUNT = 10 # 10
|
271
276
|
|
272
|
-
#
|
273
|
-
# A cardinal direction
|
277
|
+
# ImGuiDir
|
274
278
|
ImGuiDir_None = -1 # -1
|
275
279
|
ImGuiDir_Left = 0 # 0
|
276
280
|
ImGuiDir_Right = 1 # 1
|
@@ -286,7 +290,9 @@ ImGuiDragDropFlags_SourceNoDisableHover = 2 # 1 << 1 # By default, when dr
|
|
286
290
|
ImGuiDragDropFlags_SourceNoHoldToOpenOthers = 4 # 1 << 2 # Disable the behavior that allows to open tree nodes and collapsing header by holding over them while dragging a source item.
|
287
291
|
ImGuiDragDropFlags_SourceAllowNullID = 8 # 1 << 3 # Allow items such as Text(), Image() that have no unique identifier to be used as drag source, by manufacturing a temporary identifier based on their window-relative position. This is extremely unusual within the dear imgui ecosystem and so we made it explicit.
|
288
292
|
ImGuiDragDropFlags_SourceExtern = 16 # 1 << 4 # External source (from outside of dear imgui), won't attempt to read current item/window info. Will always return true. Only one Extern source can be active simultaneously.
|
289
|
-
|
293
|
+
ImGuiDragDropFlags_PayloadAutoExpire = 32 # 1 << 5
|
294
|
+
ImGuiDragDropFlags_PayloadNoCrossContext = 64 # 1 << 6
|
295
|
+
ImGuiDragDropFlags_PayloadNoCrossProcess = 128 # 1 << 7
|
290
296
|
ImGuiDragDropFlags_AcceptBeforeDelivery = 1024 # 1 << 10 # AcceptDragDropPayload() will returns true even before the mouse button is released. You can then call IsDelivery() to test if the payload needs to be delivered.
|
291
297
|
ImGuiDragDropFlags_AcceptNoDrawDefaultRect = 2048 # 1 << 11 # Do not draw the default highlight rectangle when hovering over target.
|
292
298
|
ImGuiDragDropFlags_AcceptNoPreviewTooltip = 4096 # 1 << 12 # Request hiding the BeginDragDropSource tooltip from the BeginDragDropTarget site.
|
@@ -326,31 +332,46 @@ ImGuiHoveredFlags_DelayShort = 32768 # 1 << 15 # IsItemHovered()
|
|
326
332
|
ImGuiHoveredFlags_DelayNormal = 65536 # 1 << 16 # IsItemHovered() only: Return true after style.HoverDelayNormal elapsed (~0.40 sec) (shared between items) + requires mouse to be stationary for style.HoverStationaryDelay (once per item).
|
327
333
|
ImGuiHoveredFlags_NoSharedDelay = 131072 # 1 << 17 # IsItemHovered() only: Disable shared delay system where moving from one item to the next keeps the previous timer for a short time (standard for tooltips with long delays)
|
328
334
|
|
335
|
+
# ImGuiInputFlags_
|
336
|
+
ImGuiInputFlags_None = 0 # 0
|
337
|
+
ImGuiInputFlags_Repeat = 1 # 1 << 0
|
338
|
+
ImGuiInputFlags_RouteActive = 1024 # 1 << 10
|
339
|
+
ImGuiInputFlags_RouteFocused = 2048 # 1 << 11
|
340
|
+
ImGuiInputFlags_RouteGlobal = 4096 # 1 << 12
|
341
|
+
ImGuiInputFlags_RouteAlways = 8192 # 1 << 13
|
342
|
+
ImGuiInputFlags_RouteOverFocused = 16384 # 1 << 14
|
343
|
+
ImGuiInputFlags_RouteOverActive = 32768 # 1 << 15
|
344
|
+
ImGuiInputFlags_RouteUnlessBgFocused = 65536 # 1 << 16
|
345
|
+
ImGuiInputFlags_RouteFromRootWindow = 131072 # 1 << 17
|
346
|
+
ImGuiInputFlags_Tooltip = 262144 # 1 << 18
|
347
|
+
|
329
348
|
# ImGuiInputTextFlags_
|
330
349
|
# Flags for ImGui::InputText()
|
331
350
|
# (Those are per-item flags. There are shared flags in ImGuiIO: io.ConfigInputTextCursorBlink and io.ConfigInputTextEnterKeepActive)
|
332
|
-
ImGuiInputTextFlags_None = 0
|
333
|
-
ImGuiInputTextFlags_CharsDecimal = 1
|
334
|
-
ImGuiInputTextFlags_CharsHexadecimal = 2
|
335
|
-
|
336
|
-
|
337
|
-
|
338
|
-
|
339
|
-
|
340
|
-
|
341
|
-
|
342
|
-
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
347
|
-
|
348
|
-
|
349
|
-
ImGuiInputTextFlags_NoUndoRedo = 65536
|
350
|
-
|
351
|
-
|
352
|
-
|
353
|
-
|
351
|
+
ImGuiInputTextFlags_None = 0 # 0
|
352
|
+
ImGuiInputTextFlags_CharsDecimal = 1 # 1 << 0 # Allow 0123456789.+-*/
|
353
|
+
ImGuiInputTextFlags_CharsHexadecimal = 2 # 1 << 1 # Allow 0123456789ABCDEFabcdef
|
354
|
+
ImGuiInputTextFlags_CharsScientific = 4 # 1 << 2 # Allow 0123456789.+-*/eE (Scientific notation input)
|
355
|
+
ImGuiInputTextFlags_CharsUppercase = 8 # 1 << 3 # Turn a..z into A..Z
|
356
|
+
ImGuiInputTextFlags_CharsNoBlank = 16 # 1 << 4 # Filter out spaces, tabs
|
357
|
+
ImGuiInputTextFlags_AllowTabInput = 32 # 1 << 5 # Pressing TAB input a '\t' character into the text field
|
358
|
+
ImGuiInputTextFlags_EnterReturnsTrue = 64 # 1 << 6 # Return 'true' when Enter is pressed (as opposed to every time the value was modified). Consider looking at the IsItemDeactivatedAfterEdit() function.
|
359
|
+
ImGuiInputTextFlags_EscapeClearsAll = 128 # 1 << 7 # Escape key clears content if not empty, and deactivate otherwise (contrast to default behavior of Escape to revert)
|
360
|
+
ImGuiInputTextFlags_CtrlEnterForNewLine = 256 # 1 << 8 # In multi-line mode, unfocus with Enter, add new line with Ctrl+Enter (default is opposite: unfocus with Ctrl+Enter, add line with Enter).
|
361
|
+
ImGuiInputTextFlags_ReadOnly = 512 # 1 << 9 # Read-only mode
|
362
|
+
ImGuiInputTextFlags_Password = 1024 # 1 << 10 # Password mode, display all characters as '*'
|
363
|
+
ImGuiInputTextFlags_AlwaysOverwrite = 2048 # 1 << 11 # Overwrite mode
|
364
|
+
ImGuiInputTextFlags_AutoSelectAll = 4096 # 1 << 12 # Select entire text when first taking mouse focus
|
365
|
+
ImGuiInputTextFlags_ParseEmptyRefVal = 8192 # 1 << 13
|
366
|
+
ImGuiInputTextFlags_DisplayEmptyRefVal = 16384 # 1 << 14
|
367
|
+
ImGuiInputTextFlags_NoHorizontalScroll = 32768 # 1 << 15 # Disable following the cursor horizontally
|
368
|
+
ImGuiInputTextFlags_NoUndoRedo = 65536 # 1 << 16 # Disable undo/redo. Note that input text owns the text data while active, if you want to provide your own undo/redo stack you need e.g. to call ClearActiveID().
|
369
|
+
ImGuiInputTextFlags_CallbackCompletion = 131072 # 1 << 17 # Callback on pressing TAB (for completion handling)
|
370
|
+
ImGuiInputTextFlags_CallbackHistory = 262144 # 1 << 18 # Callback on pressing Up/Down arrows (for history handling)
|
371
|
+
ImGuiInputTextFlags_CallbackAlways = 524288 # 1 << 19 # Callback on each iteration. User code may query cursor position, modify text buffer.
|
372
|
+
ImGuiInputTextFlags_CallbackCharFilter = 1048576 # 1 << 20 # Callback on character inputs to replace or discard them. Modify 'EventChar' to replace or discard, or return 1 in callback to discard.
|
373
|
+
ImGuiInputTextFlags_CallbackResize = 2097152 # 1 << 21 # Callback on buffer capacity changes request (beyond 'buf_size' parameter value), allowing the string to grow. Notify when the string wants to be resized (for string types which hold a cache of their Size). You will be provided a new BufSize in the callback and NEED to honor it. (see misc/cpp/imgui_stdlib.h for an example of using this)
|
374
|
+
ImGuiInputTextFlags_CallbackEdit = 4194304 # 1 << 22 # Callback on any edit (note that InputText() already returns true on edit, the callback is useful mainly to manipulate the underlying buffer while focus is active)
|
354
375
|
|
355
376
|
# ImGuiKey
|
356
377
|
# A key identifier (ImGuiKey_XXX or ImGuiMod_XXX value): can represent Keyboard, Mouse and Gamepad values.
|
@@ -520,8 +541,7 @@ ImGuiMod_Ctrl = 4096 # 1 << 12 # Ctrl
|
|
520
541
|
ImGuiMod_Shift = 8192 # 1 << 13 # Shift
|
521
542
|
ImGuiMod_Alt = 16384 # 1 << 14 # Option/Menu
|
522
543
|
ImGuiMod_Super = 32768 # 1 << 15 # Cmd/Super/Windows
|
523
|
-
|
524
|
-
ImGuiMod_Mask_ = 63488 # 0xF800 # 5-bits
|
544
|
+
ImGuiMod_Mask_ = 61440 # 0xF000 # 5-bits
|
525
545
|
ImGuiKey_NamedKey_BEGIN = 512 # 512
|
526
546
|
ImGuiKey_NamedKey_END = 666 # ImGuiKey_COUNT
|
527
547
|
ImGuiKey_NamedKey_COUNT = 154 # ImGuiKey_NamedKey_END - ImGuiKey_NamedKey_BEGIN
|
@@ -601,52 +621,56 @@ ImGuiSliderFlags_AlwaysClamp = 16 # 1 << 4 # Clamp value to min/max bou
|
|
601
621
|
ImGuiSliderFlags_Logarithmic = 32 # 1 << 5 # Make the widget logarithmic (linear otherwise). Consider using ImGuiSliderFlags_NoRoundToFormat with this if using a format-string with small amount of digits.
|
602
622
|
ImGuiSliderFlags_NoRoundToFormat = 64 # 1 << 6 # Disable rounding underlying value to match precision of the display format string (e.g. %.3f values are rounded to those 3 digits)
|
603
623
|
ImGuiSliderFlags_NoInput = 128 # 1 << 7 # Disable CTRL+Click or Enter key allowing to input text directly into the widget
|
624
|
+
ImGuiSliderFlags_WrapAround = 256 # 1 << 8
|
604
625
|
ImGuiSliderFlags_InvalidMask_ = 1879048207 # 0x7000000F # [Internal] We treat using those bits as being potentially a 'float power' argument from the previous API that has got miscast to this enum, and will trigger an assert if needed.
|
605
626
|
|
606
|
-
#
|
607
|
-
# A sorting direction
|
627
|
+
# ImGuiSortDirection
|
608
628
|
ImGuiSortDirection_None = 0 # 0
|
609
|
-
ImGuiSortDirection_Ascending = 1 # 1
|
610
|
-
ImGuiSortDirection_Descending = 2 # 2
|
629
|
+
ImGuiSortDirection_Ascending = 1 # 1
|
630
|
+
ImGuiSortDirection_Descending = 2 # 2
|
611
631
|
|
612
632
|
# ImGuiStyleVar_
|
613
633
|
# Enumeration for PushStyleVar() / PopStyleVar() to temporarily modify the ImGuiStyle structure.
|
614
634
|
# - The enum only refers to fields of ImGuiStyle which makes sense to be pushed/popped inside UI code.
|
615
635
|
# During initialization or between frames, feel free to just poke into ImGuiStyle directly.
|
616
636
|
# - Tip: Use your programming IDE navigation facilities on the names in the _second column_ below to find the actual members and their description.
|
617
|
-
# In Visual Studio
|
618
|
-
#
|
637
|
+
# - In Visual Studio: CTRL+comma ("Edit.GoToAll") can follow symbols inside comments, whereas CTRL+F12 ("Edit.GoToImplementation") cannot.
|
638
|
+
# - In Visual Studio w/ Visual Assist installed: ALT+G ("VAssistX.GoToImplementation") can also follow symbols inside comments.
|
639
|
+
# - In VS Code, CLion, etc.: CTRL+click can follow symbols inside comments.
|
619
640
|
# - 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.
|
620
|
-
ImGuiStyleVar_Alpha = 0
|
621
|
-
ImGuiStyleVar_DisabledAlpha = 1
|
622
|
-
ImGuiStyleVar_WindowPadding = 2
|
623
|
-
ImGuiStyleVar_WindowRounding = 3
|
624
|
-
ImGuiStyleVar_WindowBorderSize = 4
|
625
|
-
ImGuiStyleVar_WindowMinSize = 5
|
626
|
-
ImGuiStyleVar_WindowTitleAlign = 6
|
627
|
-
ImGuiStyleVar_ChildRounding = 7
|
628
|
-
ImGuiStyleVar_ChildBorderSize = 8
|
629
|
-
ImGuiStyleVar_PopupRounding = 9
|
630
|
-
ImGuiStyleVar_PopupBorderSize = 10
|
631
|
-
ImGuiStyleVar_FramePadding = 11
|
632
|
-
ImGuiStyleVar_FrameRounding = 12
|
633
|
-
ImGuiStyleVar_FrameBorderSize = 13
|
634
|
-
ImGuiStyleVar_ItemSpacing = 14
|
635
|
-
ImGuiStyleVar_ItemInnerSpacing = 15
|
636
|
-
ImGuiStyleVar_IndentSpacing = 16
|
637
|
-
ImGuiStyleVar_CellPadding = 17
|
638
|
-
ImGuiStyleVar_ScrollbarSize = 18
|
639
|
-
ImGuiStyleVar_ScrollbarRounding = 19
|
640
|
-
ImGuiStyleVar_GrabMinSize = 20
|
641
|
-
ImGuiStyleVar_GrabRounding = 21
|
642
|
-
ImGuiStyleVar_TabRounding = 22
|
643
|
-
|
644
|
-
|
645
|
-
|
646
|
-
|
647
|
-
|
648
|
-
|
649
|
-
|
641
|
+
ImGuiStyleVar_Alpha = 0 # 0 # float Alpha
|
642
|
+
ImGuiStyleVar_DisabledAlpha = 1 # 1 # float DisabledAlpha
|
643
|
+
ImGuiStyleVar_WindowPadding = 2 # 2 # ImVec2 WindowPadding
|
644
|
+
ImGuiStyleVar_WindowRounding = 3 # 3 # float WindowRounding
|
645
|
+
ImGuiStyleVar_WindowBorderSize = 4 # 4 # float WindowBorderSize
|
646
|
+
ImGuiStyleVar_WindowMinSize = 5 # 5 # ImVec2 WindowMinSize
|
647
|
+
ImGuiStyleVar_WindowTitleAlign = 6 # 6 # ImVec2 WindowTitleAlign
|
648
|
+
ImGuiStyleVar_ChildRounding = 7 # 7 # float ChildRounding
|
649
|
+
ImGuiStyleVar_ChildBorderSize = 8 # 8 # float ChildBorderSize
|
650
|
+
ImGuiStyleVar_PopupRounding = 9 # 9 # float PopupRounding
|
651
|
+
ImGuiStyleVar_PopupBorderSize = 10 # 10 # float PopupBorderSize
|
652
|
+
ImGuiStyleVar_FramePadding = 11 # 11 # ImVec2 FramePadding
|
653
|
+
ImGuiStyleVar_FrameRounding = 12 # 12 # float FrameRounding
|
654
|
+
ImGuiStyleVar_FrameBorderSize = 13 # 13 # float FrameBorderSize
|
655
|
+
ImGuiStyleVar_ItemSpacing = 14 # 14 # ImVec2 ItemSpacing
|
656
|
+
ImGuiStyleVar_ItemInnerSpacing = 15 # 15 # ImVec2 ItemInnerSpacing
|
657
|
+
ImGuiStyleVar_IndentSpacing = 16 # 16 # float IndentSpacing
|
658
|
+
ImGuiStyleVar_CellPadding = 17 # 17 # ImVec2 CellPadding
|
659
|
+
ImGuiStyleVar_ScrollbarSize = 18 # 18 # float ScrollbarSize
|
660
|
+
ImGuiStyleVar_ScrollbarRounding = 19 # 19 # float ScrollbarRounding
|
661
|
+
ImGuiStyleVar_GrabMinSize = 20 # 20 # float GrabMinSize
|
662
|
+
ImGuiStyleVar_GrabRounding = 21 # 21 # float GrabRounding
|
663
|
+
ImGuiStyleVar_TabRounding = 22 # 22 # float TabRounding
|
664
|
+
ImGuiStyleVar_TabBorderSize = 23 # 23 # float TabBorderSize
|
665
|
+
ImGuiStyleVar_TabBarBorderSize = 24 # 24 # float TabBarBorderSize
|
666
|
+
ImGuiStyleVar_TableAngledHeadersAngle = 25 # 25 # float TableAngledHeadersAngle
|
667
|
+
ImGuiStyleVar_TableAngledHeadersTextAlign = 26 # 26
|
668
|
+
ImGuiStyleVar_ButtonTextAlign = 27 # 27 # ImVec2 ButtonTextAlign
|
669
|
+
ImGuiStyleVar_SelectableTextAlign = 28 # 28 # ImVec2 SelectableTextAlign
|
670
|
+
ImGuiStyleVar_SeparatorTextBorderSize = 29 # 29 # float SeparatorTextBorderSize
|
671
|
+
ImGuiStyleVar_SeparatorTextAlign = 30 # 30 # ImVec2 SeparatorTextAlign
|
672
|
+
ImGuiStyleVar_SeparatorTextPadding = 31 # 31 # ImVec2 SeparatorTextPadding
|
673
|
+
ImGuiStyleVar_COUNT = 32 # 32
|
650
674
|
|
651
675
|
# ImGuiTabBarFlags_
|
652
676
|
# Flags for ImGui::BeginTabBar()
|
@@ -657,10 +681,11 @@ ImGuiTabBarFlags_TabListPopupButton = 4 # 1 << 2 # Disable buttons to
|
|
657
681
|
ImGuiTabBarFlags_NoCloseWithMiddleMouseButton = 8 # 1 << 3 # Disable behavior of closing tabs (that are submitted with p_open != NULL) with middle mouse button. You may handle this behavior manually on user's side with if (IsItemHovered() && IsMouseClicked(2)) *p_open = false.
|
658
682
|
ImGuiTabBarFlags_NoTabListScrollingButtons = 16 # 1 << 4 # Disable scrolling buttons (apply when fitting policy is ImGuiTabBarFlags_FittingPolicyScroll)
|
659
683
|
ImGuiTabBarFlags_NoTooltip = 32 # 1 << 5 # Disable tooltips when hovering a tab
|
660
|
-
|
661
|
-
|
662
|
-
|
663
|
-
|
684
|
+
ImGuiTabBarFlags_DrawSelectedOverline = 64 # 1 << 6
|
685
|
+
ImGuiTabBarFlags_FittingPolicyResizeDown = 128 # 1 << 7 # Resize tabs when they don't fit
|
686
|
+
ImGuiTabBarFlags_FittingPolicyScroll = 256 # 1 << 8 # Add scroll buttons when tabs don't fit
|
687
|
+
ImGuiTabBarFlags_FittingPolicyMask_ = 384 # ImGuiTabBarFlags_FittingPolicyResizeDown | ImGuiTabBarFlags_FittingPolicyScroll
|
688
|
+
ImGuiTabBarFlags_FittingPolicyDefault_ = 128 # ImGuiTabBarFlags_FittingPolicyResizeDown
|
664
689
|
|
665
690
|
# ImGuiTabItemFlags_
|
666
691
|
# Flags for ImGui::BeginTabItem()
|
@@ -803,8 +828,9 @@ ImGuiTreeNodeFlags_Bullet = 512 # 1 << 9 # Display a bullet inst
|
|
803
828
|
ImGuiTreeNodeFlags_FramePadding = 1024 # 1 << 10 # Use FramePadding (even for an unframed text node) to vertically align text baseline to regular widget height. Equivalent to calling AlignTextToFramePadding().
|
804
829
|
ImGuiTreeNodeFlags_SpanAvailWidth = 2048 # 1 << 11 # Extend hit box to the right-most edge, even if not framed. This is not the default in order to allow adding other items on the same line. In the future we may refactor the hit system to be front-to-back, allowing natural overlaps and then this can become the default.
|
805
830
|
ImGuiTreeNodeFlags_SpanFullWidth = 4096 # 1 << 12 # Extend hit box to the left-most and right-most edges (bypass the indented area).
|
806
|
-
|
807
|
-
|
831
|
+
ImGuiTreeNodeFlags_SpanTextWidth = 8192 # 1 << 13
|
832
|
+
ImGuiTreeNodeFlags_SpanAllColumns = 16384 # 1 << 14 # Frame will span all columns of its container table (text will still fit in current column)
|
833
|
+
ImGuiTreeNodeFlags_NavLeftJumpsBackHere = 32768 # 1 << 15 # (WIP) Nav: left direction may move to this TreeNode() from any of its child (items submitted between TreeNode and TreePop)
|
808
834
|
ImGuiTreeNodeFlags_CollapsingHeader = 26 # ImGuiTreeNodeFlags_Framed | ImGuiTreeNodeFlags_NoTreePushOnOpen | ImGuiTreeNodeFlags_NoAutoOpenOnLog
|
809
835
|
|
810
836
|
# ImGuiViewportFlags_
|
@@ -840,7 +866,6 @@ ImGuiWindowFlags_UnsavedDocument = 262144 # 1 << 18 # Display a dot nex
|
|
840
866
|
ImGuiWindowFlags_NoNav = 196608 # ImGuiWindowFlags_NoNavInputs | ImGuiWindowFlags_NoNavFocus
|
841
867
|
ImGuiWindowFlags_NoDecoration = 43 # ImGuiWindowFlags_NoTitleBar | ImGuiWindowFlags_NoResize | ImGuiWindowFlags_NoScrollbar | ImGuiWindowFlags_NoCollapse
|
842
868
|
ImGuiWindowFlags_NoInputs = 197120 # ImGuiWindowFlags_NoMouseInputs | ImGuiWindowFlags_NoNavInputs | ImGuiWindowFlags_NoNavFocus
|
843
|
-
ImGuiWindowFlags_NavFlattened = 8388608 # 1 << 23 # [BETA] On child window: share focus scope, allow gamepad/keyboard navigation to cross over parent border to this child or between sibling child windows.
|
844
869
|
ImGuiWindowFlags_ChildWindow = 16777216 # 1 << 24 # Don't use! For internal use by BeginChild()
|
845
870
|
ImGuiWindowFlags_Tooltip = 33554432 # 1 << 25 # Don't use! For internal use by BeginTooltip()
|
846
871
|
ImGuiWindowFlags_Popup = 67108864 # 1 << 26 # Don't use! For internal use by BeginPopup()
|
@@ -976,15 +1001,15 @@ class ImDrawList < FFI::Struct
|
|
976
1001
|
:Flags, :int,
|
977
1002
|
:_VtxCurrentIdx, :uint,
|
978
1003
|
:_Data, :pointer,
|
979
|
-
:_OwnerName, :pointer,
|
980
1004
|
:_VtxWritePtr, ImDrawVert.ptr,
|
981
1005
|
:_IdxWritePtr, :pointer,
|
982
|
-
:_ClipRectStack, ImVector.by_value,
|
983
|
-
:_TextureIdStack, ImVector.by_value,
|
984
1006
|
:_Path, ImVector.by_value,
|
985
1007
|
:_CmdHeader, ImDrawCmdHeader.by_value,
|
986
1008
|
:_Splitter, ImDrawListSplitter.by_value,
|
987
|
-
:
|
1009
|
+
:_ClipRectStack, ImVector.by_value,
|
1010
|
+
:_TextureIdStack, ImVector.by_value,
|
1011
|
+
:_FringeScale, :float,
|
1012
|
+
:_OwnerName, :pointer
|
988
1013
|
)
|
989
1014
|
|
990
1015
|
def AddBezierCubic(p1, p2, p3, p4, col, thickness, num_segments = 0)
|
@@ -1007,6 +1032,10 @@ class ImDrawList < FFI::Struct
|
|
1007
1032
|
ImGui::ImDrawList_AddCircleFilled(self, center, radius, col, num_segments)
|
1008
1033
|
end
|
1009
1034
|
|
1035
|
+
def AddConcavePolyFilled(points, num_points, col)
|
1036
|
+
ImGui::ImDrawList_AddConcavePolyFilled(self, points, num_points, col)
|
1037
|
+
end
|
1038
|
+
|
1010
1039
|
def AddConvexPolyFilled(points, num_points, col)
|
1011
1040
|
ImGui::ImDrawList_AddConvexPolyFilled(self, points, num_points, col)
|
1012
1041
|
end
|
@@ -1015,12 +1044,12 @@ class ImDrawList < FFI::Struct
|
|
1015
1044
|
ImGui::ImDrawList_AddDrawCmd(self)
|
1016
1045
|
end
|
1017
1046
|
|
1018
|
-
def AddEllipse(center,
|
1019
|
-
ImGui::ImDrawList_AddEllipse(self, center,
|
1047
|
+
def AddEllipse(center, radius, col, rot = 0.0, num_segments = 0, thickness = 1.0)
|
1048
|
+
ImGui::ImDrawList_AddEllipse(self, center, radius, col, rot, num_segments, thickness)
|
1020
1049
|
end
|
1021
1050
|
|
1022
|
-
def AddEllipseFilled(center,
|
1023
|
-
ImGui::ImDrawList_AddEllipseFilled(self, center,
|
1051
|
+
def AddEllipseFilled(center, radius, col, rot = 0.0, num_segments = 0)
|
1052
|
+
ImGui::ImDrawList_AddEllipseFilled(self, center, radius, col, rot, num_segments)
|
1024
1053
|
end
|
1025
1054
|
|
1026
1055
|
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))
|
@@ -1139,8 +1168,12 @@ class ImDrawList < FFI::Struct
|
|
1139
1168
|
ImGui::ImDrawList_PathClear(self)
|
1140
1169
|
end
|
1141
1170
|
|
1142
|
-
def PathEllipticalArcTo(center,
|
1143
|
-
ImGui::ImDrawList_PathEllipticalArcTo(self, center,
|
1171
|
+
def PathEllipticalArcTo(center, radius, rot, a_min, a_max, num_segments = 0)
|
1172
|
+
ImGui::ImDrawList_PathEllipticalArcTo(self, center, radius, rot, a_min, a_max, num_segments)
|
1173
|
+
end
|
1174
|
+
|
1175
|
+
def PathFillConcave(col)
|
1176
|
+
ImGui::ImDrawList_PathFillConcave(self, col)
|
1144
1177
|
end
|
1145
1178
|
|
1146
1179
|
def PathFillConvex(col)
|
@@ -1456,6 +1489,7 @@ class ImGuiViewport < FFI::Struct
|
|
1456
1489
|
:Size, ImVec2.by_value,
|
1457
1490
|
:WorkPos, ImVec2.by_value,
|
1458
1491
|
:WorkSize, ImVec2.by_value,
|
1492
|
+
:PlatformHandle, :pointer,
|
1459
1493
|
:PlatformHandleRaw, :pointer
|
1460
1494
|
)
|
1461
1495
|
|
@@ -1802,7 +1836,9 @@ class ImGuiIO < FFI::Struct
|
|
1802
1836
|
:GetClipboardTextFn, :pointer,
|
1803
1837
|
:SetClipboardTextFn, :pointer,
|
1804
1838
|
:ClipboardUserData, :pointer,
|
1805
|
-
:
|
1839
|
+
:PlatformOpenInShellFn, :pointer,
|
1840
|
+
:PlatformOpenInShellUserData, :pointer,
|
1841
|
+
:PlatformSetImeDataFn, :pointer,
|
1806
1842
|
:PlatformLocaleDecimalPoint, :ushort,
|
1807
1843
|
:WantCaptureMouse, :bool,
|
1808
1844
|
:WantCaptureKeyboard, :bool,
|
@@ -1841,6 +1877,7 @@ class ImGuiIO < FFI::Struct
|
|
1841
1877
|
:MouseDownOwned, [:bool, 5],
|
1842
1878
|
:MouseDownOwnedUnlessPopupClose, [:bool, 5],
|
1843
1879
|
:MouseWheelRequestAxisSwap, :bool,
|
1880
|
+
:MouseCtrlLeftAsRightClick, :bool,
|
1844
1881
|
:MouseDownDuration, [:float, 5],
|
1845
1882
|
:MouseDownDurationPrev, [:float, 5],
|
1846
1883
|
:MouseDragMaxDistanceSqr, [:float, 5],
|
@@ -1901,6 +1938,10 @@ class ImGuiIO < FFI::Struct
|
|
1901
1938
|
ImGui::ImGuiIO_ClearInputKeys(self)
|
1902
1939
|
end
|
1903
1940
|
|
1941
|
+
def ClearInputMouse()
|
1942
|
+
ImGui::ImGuiIO_ClearInputMouse(self)
|
1943
|
+
end
|
1944
|
+
|
1904
1945
|
def self.create()
|
1905
1946
|
return ImGuiIO.new(ImGui::ImGuiIO_ImGuiIO())
|
1906
1947
|
end
|
@@ -2212,6 +2253,7 @@ class ImGuiStyle < FFI::Struct
|
|
2212
2253
|
:TabMinWidthForCloseButton, :float,
|
2213
2254
|
:TabBarBorderSize, :float,
|
2214
2255
|
:TableAngledHeadersAngle, :float,
|
2256
|
+
:TableAngledHeadersTextAlign, ImVec2.by_value,
|
2215
2257
|
:ColorButtonPosition, :int,
|
2216
2258
|
:ButtonTextAlign, ImVec2.by_value,
|
2217
2259
|
:SelectableTextAlign, ImVec2.by_value,
|
@@ -2226,7 +2268,7 @@ class ImGuiStyle < FFI::Struct
|
|
2226
2268
|
:AntiAliasedFill, :bool,
|
2227
2269
|
:CurveTessellationTol, :float,
|
2228
2270
|
:CircleTessellationMaxError, :float,
|
2229
|
-
:Colors, [ImVec4.by_value,
|
2271
|
+
:Colors, [ImVec4.by_value, 56],
|
2230
2272
|
:HoverStationaryDelay, :float,
|
2231
2273
|
:HoverDelayShort, :float,
|
2232
2274
|
:HoverDelayNormal, :float,
|
@@ -2254,7 +2296,7 @@ class ImGuiTableColumnSortSpecs < FFI::Struct
|
|
2254
2296
|
:ColumnUserID, :uint,
|
2255
2297
|
:ColumnIndex, :short,
|
2256
2298
|
:SortOrder, :short,
|
2257
|
-
:SortDirection, :
|
2299
|
+
:SortDirection, :uchar
|
2258
2300
|
)
|
2259
2301
|
|
2260
2302
|
def self.create()
|
@@ -2501,10 +2543,11 @@ module ImGui
|
|
2501
2543
|
[:ImDrawList_AddCallback, [:pointer, :ImDrawCallback, :pointer], :void],
|
2502
2544
|
[:ImDrawList_AddCircle, [:pointer, ImVec2.by_value, :float, :uint, :int, :float], :void],
|
2503
2545
|
[:ImDrawList_AddCircleFilled, [:pointer, ImVec2.by_value, :float, :uint, :int], :void],
|
2546
|
+
[:ImDrawList_AddConcavePolyFilled, [:pointer, :pointer, :int, :uint], :void],
|
2504
2547
|
[:ImDrawList_AddConvexPolyFilled, [:pointer, :pointer, :int, :uint], :void],
|
2505
2548
|
[:ImDrawList_AddDrawCmd, [:pointer], :void],
|
2506
|
-
[:ImDrawList_AddEllipse, [:pointer, ImVec2.by_value,
|
2507
|
-
[:ImDrawList_AddEllipseFilled, [:pointer, ImVec2.by_value,
|
2549
|
+
[:ImDrawList_AddEllipse, [:pointer, ImVec2.by_value, ImVec2.by_value, :uint, :float, :int, :float], :void],
|
2550
|
+
[:ImDrawList_AddEllipseFilled, [:pointer, ImVec2.by_value, ImVec2.by_value, :uint, :float, :int], :void],
|
2508
2551
|
[:ImDrawList_AddImage, [:pointer, :pointer, ImVec2.by_value, ImVec2.by_value, ImVec2.by_value, ImVec2.by_value, :uint], :void],
|
2509
2552
|
[: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],
|
2510
2553
|
[:ImDrawList_AddImageRounded, [:pointer, :pointer, ImVec2.by_value, ImVec2.by_value, ImVec2.by_value, ImVec2.by_value, :uint, :float, :int], :void],
|
@@ -2533,7 +2576,8 @@ module ImGui
|
|
2533
2576
|
[:ImDrawList_PathBezierCubicCurveTo, [:pointer, ImVec2.by_value, ImVec2.by_value, ImVec2.by_value, :int], :void],
|
2534
2577
|
[:ImDrawList_PathBezierQuadraticCurveTo, [:pointer, ImVec2.by_value, ImVec2.by_value, :int], :void],
|
2535
2578
|
[:ImDrawList_PathClear, [:pointer], :void],
|
2536
|
-
[:ImDrawList_PathEllipticalArcTo, [:pointer, ImVec2.by_value,
|
2579
|
+
[:ImDrawList_PathEllipticalArcTo, [:pointer, ImVec2.by_value, ImVec2.by_value, :float, :float, :float, :int], :void],
|
2580
|
+
[:ImDrawList_PathFillConcave, [:pointer, :uint], :void],
|
2537
2581
|
[:ImDrawList_PathFillConvex, [:pointer, :uint], :void],
|
2538
2582
|
[:ImDrawList_PathLineTo, [:pointer, ImVec2.by_value], :void],
|
2539
2583
|
[:ImDrawList_PathLineToMergeDuplicate, [:pointer, ImVec2.by_value], :void],
|
@@ -2638,6 +2682,7 @@ module ImGui
|
|
2638
2682
|
[:ImGuiIO_AddMouseWheelEvent, [:pointer, :float, :float], :void],
|
2639
2683
|
[:ImGuiIO_ClearEventsQueue, [:pointer], :void],
|
2640
2684
|
[:ImGuiIO_ClearInputKeys, [:pointer], :void],
|
2685
|
+
[:ImGuiIO_ClearInputMouse, [:pointer], :void],
|
2641
2686
|
[:ImGuiIO_ImGuiIO, [], :pointer],
|
2642
2687
|
[:ImGuiIO_SetAppAcceptingEvents, [:pointer, :bool], :void],
|
2643
2688
|
[:ImGuiIO_SetKeyEventNativeData, [:pointer, :int, :int, :int, :int], :void],
|
@@ -2771,6 +2816,7 @@ module ImGui
|
|
2771
2816
|
[:igCreateContext, [:pointer], :pointer],
|
2772
2817
|
[:igDebugCheckVersionAndDataLayout, [:pointer, :size_t, :size_t, :size_t, :size_t, :size_t, :size_t], :bool],
|
2773
2818
|
[:igDebugFlashStyleColor, [:int], :void],
|
2819
|
+
[:igDebugLog, [:pointer, :varargs], :void],
|
2774
2820
|
[:igDebugStartItemPicker, [], :void],
|
2775
2821
|
[:igDebugTextEncoding, [:pointer], :void],
|
2776
2822
|
[:igDestroyContext, [:pointer], :void],
|
@@ -2840,7 +2886,6 @@ module ImGui
|
|
2840
2886
|
[:igGetItemRectMax, [:pointer], :void],
|
2841
2887
|
[:igGetItemRectMin, [:pointer], :void],
|
2842
2888
|
[:igGetItemRectSize, [:pointer], :void],
|
2843
|
-
[:igGetKeyIndex, [:int], :int],
|
2844
2889
|
[:igGetKeyName, [:int], :pointer],
|
2845
2890
|
[:igGetKeyPressedAmount, [:int, :float, :float], :int],
|
2846
2891
|
[:igGetMainViewport, [], :pointer],
|
@@ -2998,6 +3043,7 @@ module ImGui
|
|
2998
3043
|
[:igSetNextFrameWantCaptureMouse, [:bool], :void],
|
2999
3044
|
[:igSetNextItemAllowOverlap, [], :void],
|
3000
3045
|
[:igSetNextItemOpen, [:bool, :int], :void],
|
3046
|
+
[:igSetNextItemShortcut, [:int, :int], :void],
|
3001
3047
|
[:igSetNextItemWidth, [:float], :void],
|
3002
3048
|
[:igSetNextWindowBgAlpha, [:float], :void],
|
3003
3049
|
[:igSetNextWindowCollapsed, [:bool, :int], :void],
|
@@ -3025,6 +3071,7 @@ module ImGui
|
|
3025
3071
|
[:igSetWindowPos_Str, [:pointer, ImVec2.by_value, :int], :void],
|
3026
3072
|
[:igSetWindowSize_Vec2, [ImVec2.by_value, :int], :void],
|
3027
3073
|
[:igSetWindowSize_Str, [:pointer, ImVec2.by_value, :int], :void],
|
3074
|
+
[:igShortcut, [:int, :int], :bool],
|
3028
3075
|
[:igShowAboutWindow, [:pointer], :void],
|
3029
3076
|
[:igShowDebugLogWindow, [:pointer], :void],
|
3030
3077
|
[:igShowDemoWindow, [:pointer], :void],
|
@@ -3056,6 +3103,7 @@ module ImGui
|
|
3056
3103
|
[:igTableGetColumnFlags, [:int], :int],
|
3057
3104
|
[:igTableGetColumnIndex, [], :int],
|
3058
3105
|
[:igTableGetColumnName, [:int], :pointer],
|
3106
|
+
[:igTableGetHoveredColumn, [], :int],
|
3059
3107
|
[:igTableGetRowIndex, [], :int],
|
3060
3108
|
[:igTableGetSortSpecs, [], :pointer],
|
3061
3109
|
[:igTableHeader, [:pointer], :void],
|
@@ -3070,6 +3118,8 @@ module ImGui
|
|
3070
3118
|
[:igText, [:pointer, :varargs], :void],
|
3071
3119
|
[:igTextColored, [ImVec4.by_value, :pointer, :varargs], :void],
|
3072
3120
|
[:igTextDisabled, [:pointer, :varargs], :void],
|
3121
|
+
[:igTextLink, [:pointer], :bool],
|
3122
|
+
[:igTextLinkOpenURL, [:pointer, :pointer], :void],
|
3073
3123
|
[:igTextUnformatted, [:pointer, :pointer], :void],
|
3074
3124
|
[:igTextWrapped, [:pointer, :varargs], :void],
|
3075
3125
|
[:igTreeNode_Str, [:pointer], :bool],
|
@@ -3302,7 +3352,7 @@ module ImGui
|
|
3302
3352
|
igBeginTabItem(label, p_open, flags)
|
3303
3353
|
end
|
3304
3354
|
|
3305
|
-
# arg: str_id(const char*),
|
3355
|
+
# arg: str_id(const char*), columns(int), flags(ImGuiTableFlags), outer_size(ImVec2), inner_width(float)
|
3306
3356
|
# ret: bool
|
3307
3357
|
#
|
3308
3358
|
# Tables
|
@@ -3326,8 +3376,8 @@ module ImGui
|
|
3326
3376
|
# - TableNextColumn() -> Text("Hello 0") -> TableNextColumn() -> Text("Hello 1") // OK: TableNextColumn() automatically gets to next row!
|
3327
3377
|
# - TableNextRow() -> Text("Hello 0") // Not OK! Missing TableSetColumnIndex() or TableNextColumn()! Text will not appear!
|
3328
3378
|
# - 5. Call EndTable()
|
3329
|
-
def self.BeginTable(str_id,
|
3330
|
-
igBeginTable(str_id,
|
3379
|
+
def self.BeginTable(str_id, columns, flags = 0, outer_size = ImVec2.create(0.0,0.0), inner_width = 0.0) # Implied outer_size = ImVec2(0.0f, 0.0f), inner_width = 0.0f
|
3380
|
+
igBeginTable(str_id, columns, flags, outer_size, inner_width)
|
3331
3381
|
end
|
3332
3382
|
|
3333
3383
|
# ret: bool
|
@@ -3522,6 +3572,12 @@ module ImGui
|
|
3522
3572
|
igDebugFlashStyleColor(idx)
|
3523
3573
|
end
|
3524
3574
|
|
3575
|
+
# arg: fmt(const char*), ...(...)
|
3576
|
+
# ret: void
|
3577
|
+
def self.DebugLog(fmt, *varargs)
|
3578
|
+
igDebugLog(fmt, *varargs)
|
3579
|
+
end
|
3580
|
+
|
3525
3581
|
# ret: void
|
3526
3582
|
def self.DebugStartItemPicker()
|
3527
3583
|
igDebugStartItemPicker()
|
@@ -3948,12 +4004,6 @@ module ImGui
|
|
3948
4004
|
return pOut
|
3949
4005
|
end
|
3950
4006
|
|
3951
|
-
# arg: key(ImGuiKey)
|
3952
|
-
# ret: int
|
3953
|
-
def self.GetKeyIndex(key)
|
3954
|
-
igGetKeyIndex(key)
|
3955
|
-
end
|
3956
|
-
|
3957
4007
|
# arg: key(ImGuiKey)
|
3958
4008
|
# ret: pointer
|
3959
4009
|
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.
|
@@ -4926,6 +4976,12 @@ module ImGui
|
|
4926
4976
|
igSetNextItemOpen(is_open, cond)
|
4927
4977
|
end
|
4928
4978
|
|
4979
|
+
# arg: key_chord(ImGuiKeyChord), flags(ImGuiInputFlags)
|
4980
|
+
# ret: void
|
4981
|
+
def self.SetNextItemShortcut(key_chord, flags = 0)
|
4982
|
+
igSetNextItemShortcut(key_chord, flags)
|
4983
|
+
end
|
4984
|
+
|
4929
4985
|
# arg: item_width(float)
|
4930
4986
|
# ret: void
|
4931
4987
|
def self.SetNextItemWidth(item_width) # set width of the _next_ common large "item+label" widget. >0.0f: width in pixels, <0.0f align xx pixels to the right of window (so -FLT_MIN always align width to the right side)
|
@@ -5089,6 +5145,12 @@ module ImGui
|
|
5089
5145
|
igSetWindowSize_Str(name, size, cond)
|
5090
5146
|
end
|
5091
5147
|
|
5148
|
+
# arg: key_chord(ImGuiKeyChord), flags(ImGuiInputFlags)
|
5149
|
+
# ret: bool
|
5150
|
+
def self.Shortcut(key_chord, flags = 0)
|
5151
|
+
igShortcut(key_chord, flags)
|
5152
|
+
end
|
5153
|
+
|
5092
5154
|
# arg: p_open(bool*)
|
5093
5155
|
# ret: void
|
5094
5156
|
def self.ShowAboutWindow(p_open = nil) # create About window. display Dear ImGui version, credits and build/system information.
|
@@ -5281,6 +5343,11 @@ module ImGui
|
|
5281
5343
|
igTableGetColumnName(column_n)
|
5282
5344
|
end
|
5283
5345
|
|
5346
|
+
# ret: int
|
5347
|
+
def self.TableGetHoveredColumn()
|
5348
|
+
igTableGetHoveredColumn()
|
5349
|
+
end
|
5350
|
+
|
5284
5351
|
# ret: int
|
5285
5352
|
def self.TableGetRowIndex() # return current row index.
|
5286
5353
|
igTableGetRowIndex()
|
@@ -5377,6 +5444,18 @@ module ImGui
|
|
5377
5444
|
igTextDisabled(fmt, *varargs)
|
5378
5445
|
end
|
5379
5446
|
|
5447
|
+
# arg: label(const char*)
|
5448
|
+
# ret: bool
|
5449
|
+
def self.TextLink(label)
|
5450
|
+
igTextLink(label)
|
5451
|
+
end
|
5452
|
+
|
5453
|
+
# arg: label(const char*), url(const char*)
|
5454
|
+
# ret: void
|
5455
|
+
def self.TextLinkOpenURL(label, url = nil)
|
5456
|
+
igTextLinkOpenURL(label, url)
|
5457
|
+
end
|
5458
|
+
|
5380
5459
|
# arg: text(const char*), text_end(const char*)
|
5381
5460
|
# ret: void
|
5382
5461
|
#
|
data/lib/imgui.x86_64.dylib
CHANGED
Binary file
|
data/lib/imnodes.x86_64.dylib
CHANGED
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.
|
4
|
+
version: 0.1.13
|
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-
|
11
|
+
date: 2024-07-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.
|
83
|
+
rubygems_version: 3.5.15
|
84
84
|
signing_key:
|
85
85
|
specification_version: 4
|
86
86
|
summary: Bindings for Dear ImGui
|