imgui-bindings 0.0.1

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 ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: a082a4e2a2123c2b36ed60baa84f1baa37950b939ddd35dfaf502952b885e7fd
4
+ data.tar.gz: 1ee2ad564ded03c54f72a949eaebf75d8ac51b3473c4ee5741225f147e38cfb6
5
+ SHA512:
6
+ metadata.gz: eba0adbca28f18809557c90d61be40444f0d21e61a0bbb9c0817bfa07c21aaf43c2e8b23861e2f420d148bada23f522cffb11a2c37540a3e51e56e010a452b03
7
+ data.tar.gz: 8eff191cbdcba86263e7c96cd213da34a1aea4cf980233a54d1a3df9d68b4c14397869b47cb769c0349c10298afbe2c57a70e23bf061208ff909b004c16c8107
data/ChangeLog ADDED
@@ -0,0 +1,256 @@
1
+ 2021-12-31 vaiorabbit <http://twitter.com/vaiorabbit>
2
+
3
+ * Added setup_dll.rb etc. for automatic library loading
4
+ * Changed generator output paths
5
+ * (Windows) Build binary with the latest ImGui
6
+
7
+ 2021-12-26 vaiorabbit <http://twitter.com/vaiorabbit>
8
+
9
+ * (macOS) ImGui 1.86
10
+ * imgui_impl_sdlrenderer.rb, sample/test_sdl2_sdlrenderer.rb: Temporary fix to render correctly
11
+
12
+ 2021-12-15 vaiorabbit <http://twitter.com/vaiorabbit>
13
+
14
+ * imgui_impl_sdlrenderer.rb, sample/test_sdl2_sdlrenderer.rb: Added
15
+
16
+ 2021-12-09 vaiorabbit <http://twitter.com/vaiorabbit>
17
+
18
+ * (macOS) ImGui 1.86 WIP
19
+
20
+ 2021-10-16 vaiorabbit <http://twitter.com/vaiorabbit>
21
+
22
+ * (macOS) ImGui 1.85
23
+ * basic_usage.rb: Added ImGuiDemo::StackToolWindow
24
+
25
+ 2021-09-05 vaiorabbit <http://twitter.com/vaiorabbit>
26
+
27
+ * (macOS) ImGui 1.84.2
28
+
29
+ 2021-08-22 vaiorabbit <http://twitter.com/vaiorabbit>
30
+
31
+ * (macOS) ImGui 1.84.1
32
+
33
+ 2021-08-07 vaiorabbit <http://twitter.com/vaiorabbit>
34
+
35
+ * imgui_impl_sdl2.rb: Applied https://github.com/ocornut/imgui/commit/1cdd110eb41830ed3c852eade976a066946b7071 (See https://github.com/ocornut/imgui/pull/2696#issuecomment-889336981 )
36
+ * imgui_impl_glfw.rb: Applied https://github.com/ocornut/imgui/commit/044fd0cd2d976b31962689afa73c9824a6a08146 (See https://github.com/ocornut/imgui/pull/2696#issuecomment-889336981 )
37
+
38
+ 2021-07-05 vaiorabbit <http://twitter.com/vaiorabbit>
39
+
40
+ * imgui_impl_sdl2.rb: Partially applied changes in https://github.com/ocornut/imgui/commit/6792e1a3e08c30c6e9015cf51658d14f7872b10b https://github.com/ocornut/imgui/blob/6792e1a3e08c30c6e9015cf51658d14f7872b10b/backends/imgui_impl_sdl.cpp
41
+
42
+ 2021-06-21 vaiorabbit <http://twitter.com/vaiorabbit>
43
+
44
+ * imgui_impl_opengl3.rb: Applied changes in https://github.com/ocornut/imgui/pull/4244
45
+
46
+ 2021-06-20 vaiorabbit <http://twitter.com/vaiorabbit>
47
+
48
+ * (Windows) ImGui 1.83
49
+ * (macOS) ImGui 1.83
50
+ * (macOS) Build script now generates ARM64 binary
51
+ * Added reference comments of arguments and return value
52
+ * Several APIs now contain underscore in its name due to cimgui change (e.g. GetColorU32Col -> GetColorU32_Col)
53
+ * (Experimental) Added overload functions (e.g.: ImGui::Combo, ImGui::MenuItem)
54
+
55
+ 2021-03-27 vaiorabbit <http://twitter.com/vaiorabbit>
56
+
57
+ * (Windows) ImGui 1.82
58
+
59
+ 2021-03-21 vaiorabbit <http://twitter.com/vaiorabbit>
60
+
61
+ * (macOS) ImGui 1.82
62
+
63
+ 2021-02-20 vaiorabbit <http://twitter.com/vaiorabbit>
64
+
65
+ * Applied https://github.com/ocornut/imgui/commit/bda12e5fdd829e44e01a25aac015e156f3dad761
66
+
67
+ 2021-02-12 vaiorabbit <http://twitter.com/vaiorabbit>
68
+
69
+ * (Windows) ImGui 1.81
70
+
71
+ 2021-02-11 vaiorabbit <http://twitter.com/vaiorabbit>
72
+
73
+ * (macOS) ImGui 1.81
74
+ * sample: Cleaned up Japanese font initialization
75
+
76
+ 2021-02-07 vaiorabbit <http://twitter.com/vaiorabbit>
77
+
78
+ * (Windows) ImGui 1.80
79
+ * (Windows) Built imgui.dll and imgui_debug.dll with:
80
+ * ruby 3.0.0p0 (2020-12-25 revision 95aff21468) [x64-mingw32]
81
+ * gcc (Rev6, Built by MSYS2 project) 10.2.0
82
+ * (macOS) ImGui 1.80
83
+ * (macOS) Built imgui.dylib with:
84
+ * ruby 3.0.0p0 (2020-12-25 revision 95aff21468) [arm64-darwin20]
85
+ * Apple clang version 12.0.0 (clang-1200.0.32.29) / Target: arm64-apple-darwin20.2.0
86
+ * imgui_impl_opengl2.rb, imgui_impl_opengl3.rb: Applied same changes made at https://github.com/ocornut/imgui/commit/7d5d5711c20d2448fb379de245ddc3b950289873
87
+ * generator/generate_imgui.rb: Modified to handle exceptions
88
+
89
+ 2020-12-20 vaiorabbit <http://twitter.com/vaiorabbit>
90
+
91
+ * third_party/glfw_build.sh, third_party/sdl2_build_dylib.sh: Modified/added to support x86_64|arm64 Universal Binary
92
+
93
+ 2020-11-15 vaiorabbit <http://twitter.com/vaiorabbit>
94
+
95
+ * (Windows) ImGui 1.79
96
+ * (macOS) ImGui 1.79
97
+
98
+ 2020-08-24 vaiorabbit <http://twitter.com/vaiorabbit>
99
+
100
+ * (macOS) ImGui 1.78
101
+
102
+ 2020-08-22 vaiorabbit <http://twitter.com/vaiorabbit>
103
+
104
+ * (Windows) ImGui 1.78
105
+ * (Windows) Added imgui_debug.dll (Built with 'CMAKE_BUILD_TYPE=Debug')
106
+
107
+ 2020-07-04 vaiorabbit <http://twitter.com/vaiorabbit>
108
+
109
+ * (Windows) ImGui 1.77
110
+
111
+ 2020-06-14 vaiorabbit <http://twitter.com/vaiorabbit>
112
+
113
+ * imgui_impl_sdl2.rb: Fixed forcing 'include SDL2'
114
+
115
+ 2020-06-12 vaiorabbit <http://twitter.com/vaiorabbit>
116
+
117
+ * basic_usage.rb: Fixed ImGui::End() mismatch
118
+
119
+ 2020-06-11 vaiorabbit <http://twitter.com/vaiorabbit>
120
+
121
+ * imgui_impl_sdl2.rb: Renamed ImplSDL2_InitForOpenGL to ImplSDL2_Init
122
+
123
+ 2020-05-13 vaiorabbit <http://twitter.com/vaiorabbit>
124
+
125
+ * 'Added support for pointer to struct. Now you can call like 'io[:Fonts].AddFontDefault()'.
126
+ * Constructors now return FFI::Struct, not :pointer
127
+
128
+ 2020-05-12 vaiorabbit <http://twitter.com/vaiorabbit>
129
+
130
+ * Added instance methods (e.g.: ImGui::FontAtlas_AddFontDefault(io[:Fonts]) -> ImFontAtlas.new(io[:Fonts]).AddFontDefault())
131
+
132
+ 2020-05-10 vaiorabbit <http://twitter.com/vaiorabbit>
133
+
134
+ * imgui_impl_opengl3.rb: Changed default GLSL version string from 130 to 150 (Ref.: https://github.com/ocornut/imgui/pull/3199 )
135
+ * generator: Read "stname", "constructor" and "destructor" from "definitions.json"
136
+
137
+ 2020-05-05 vaiorabbit <http://twitter.com/vaiorabbit>
138
+
139
+ * Added ImDrawList support / Added ImColor.col32
140
+ * Added support for ImFontConfig / Added icon font sample
141
+ * Added support for FontGlyphRangesBuilder, ImWchar vector / Now constructors return :pointer
142
+ * Added support for ImGuiTextFilter, etc. / public interfaces are changed a bit ("ImGuixxx" prefixes are omitted)
143
+ * Fixed ImColor.create argument conversion
144
+ * Fixed wrong default argument (sizeof(float))
145
+ * Added provisional callback signature analyzer / Added callback typedef generation
146
+ * Added some CallbackData / Added ImGuiTypedefMapEntry for later use
147
+ * Returns ImVec2/4/Color correctly / Added default augument values to ImVec2.create, etc.
148
+
149
+ 2020-05-03 vaiorabbit <http://twitter.com/vaiorabbit>
150
+
151
+ * Added provisional ImGuiStyle_ methods
152
+ * Added provisional ImGuiIO_ methods
153
+ * Added sample/basic_usage_sdl2_opengl2.rb
154
+ * (Windows) Catching up with ImGui 1.76
155
+
156
+ 2020-04-19 vaiorabbit <http://twitter.com/vaiorabbit>
157
+
158
+ * Supported default value of public API arguments
159
+
160
+ 2020-04-18 vaiorabbit <http://twitter.com/vaiorabbit>
161
+
162
+ * (macOS) Catching up with ImGui 1.76
163
+ * Generate APIs as wrapper methods (to support default arguments/method overloading in the future)
164
+
165
+ 2020-02-11 vaiorabbit <http://twitter.com/vaiorabbit>
166
+
167
+ * (macOS) Catching up with ImGui 1.75
168
+ * Fixed wrong array argument generation (e.g. arguments like 'float[3]' are now converted into :pointer.)
169
+ * Added OpenGL3 render backend (Note that this feature is only tested only on macOS)
170
+
171
+ 2020-01-26 vaiorabbit <http://twitter.com/vaiorabbit>
172
+
173
+ * Applied changes made in https://github.com/ocornut/imgui/commit/f6da5000bfaf3a035e8d8a7db9b5150644f4630b
174
+ "Backends: OpenGL2: Explicitly backup, setup and restore GL_TEXTURE_ENV to increase compatibility with legacy OpenGL applications."
175
+
176
+ 2019-11-27 vaiorabbit <http://twitter.com/vaiorabbit>
177
+
178
+ * (macOS) Catching up with ImGui 1.74
179
+
180
+ 2019-11-02 vaiorabbit <http://twitter.com/vaiorabbit>
181
+
182
+ * (Windows) Catching up with ImGui 1.73
183
+
184
+ 2019-10-25 vaiorabbit <http://twitter.com/vaiorabbit>
185
+
186
+ * (macOS) Catching up with ImGui 1.73
187
+
188
+ 2019-09-11 vaiorabbit <http://twitter.com/vaiorabbit>
189
+
190
+ * Revised folder structures
191
+ * Moved some older codes into backup/
192
+
193
+ 2019-09-01 vaiorabbit <http://twitter.com/vaiorabbit>
194
+
195
+ * Design change: Libraries are separated into imgui.rb, imgui_impl_glfw.rb and imgui_impl_opengl2.rb
196
+ * See sample/test_glfw_opengl2.rb for new usage
197
+ * imgui_impl_sdl2.rb, sample/test_sdl2_opengl2.rb, sample/imgui_and_testgl2.rb: Added.
198
+ * Note that imgui_glfw_opengl2.rb will not be supported any more.
199
+
200
+ 2019-08-25 vaiorabbit <http://twitter.com/vaiorabbit>
201
+
202
+ * Revised folder names
203
+
204
+ 2019-08-20 vaiorabbit <http://twitter.com/vaiorabbit>
205
+
206
+ * linux build tweak https://github.com/vaiorabbit/ruby-imgui/pull/1 (Thanks: Jake Vandereay https://github.com/lunarfyre7)
207
+
208
+ 2019-08-03 vaiorabbit <http://twitter.com/vaiorabbit>
209
+
210
+ * (Windows) Catching up with ImGui 1.72
211
+ * `imgui_glfw_opengl2.dll` was built against ruby 2.6.0p0 (2018-12-25 revision 66547) [x64-mingw32].
212
+
213
+ 2019-07-29 vaiorabbit <http://twitter.com/vaiorabbit>
214
+
215
+ * (macOS) Catching up with ImGui 1.72
216
+
217
+ 2019-07-28 vaiorabbit <http://twitter.com/vaiorabbit>
218
+
219
+ * (macOS) Catching up with ImGui 1.71
220
+
221
+ 2019-06-09 vaiorabbit <http://twitter.com/vaiorabbit>
222
+
223
+ * (macOS) Catching up with ImGui 1.70
224
+
225
+ 2019-03-24 vaiorabbit <http://twitter.com/vaiorabbit>
226
+
227
+ * (macOS) Catching up with ImGui 1.69
228
+
229
+ 2019-02-22 vaiorabbit <http://twitter.com/vaiorabbit>
230
+
231
+ * (macOS) Catching up with ImGui 1.68
232
+
233
+ 2019-01-15 vaiorabbit <http://twitter.com/vaiorabbit>
234
+
235
+ * Catching up with ImGui 1.67
236
+
237
+ 2019-01-14 vaiorabbit <http://twitter.com/vaiorabbit>
238
+
239
+ * ImFont, ImFontAtlas (imgui_glfw_opengl2.rb): Added
240
+
241
+ 2019-01-13 vaiorabbit <http://twitter.com/vaiorabbit>
242
+
243
+ * Tested on Windows.
244
+ * cimgui_build.sh, cimgui_build.bat: Added.
245
+
246
+ 2019-01-06 vaiorabbit <http://twitter.com/vaiorabbit>
247
+
248
+ * ImGuiBindings.build_ffi_typedef_map(common.rb): Changed usage
249
+ * imgui_glfw_opengl2.dylib: Specified the terms of use.
250
+
251
+ 2019-01-05 vaiorabbit <http://twitter.com/vaiorabbit>
252
+
253
+ * initial commmit
254
+ * Fixed API names (ex. igShowDemoWindow -> ImGui::ShowDemoWindow)
255
+ * [Fixed] Failed to generate array type member of struct.
256
+ * Added Japanese font loading & rendering example (test.rb)
data/LICENSE.txt ADDED
@@ -0,0 +1,21 @@
1
+ Ruby-ImGui : Yet another ImGui wrapper for Ruby
2
+ Copyright (c) 2019-2022 vaiorabbit <http://twitter.com/vaiorabbit>
3
+
4
+ This software is provided 'as-is', without any express or implied
5
+ warranty. In no event will the authors be held liable for any damages
6
+ arising from the use of this software.
7
+
8
+ Permission is granted to anyone to use this software for any purpose,
9
+ including commercial applications, and to alter it and redistribute it
10
+ freely, subject to the following restrictions:
11
+
12
+ 1. The origin of this software must not be misrepresented; you must not
13
+ claim that you wrote the original software. If you use this software
14
+ in a product, an acknowledgment in the product documentation would be
15
+ appreciated but is not required.
16
+
17
+ 2. Altered source versions must be plainly marked as such, and must not be
18
+ misrepresented as being the original software.
19
+
20
+ 3. This notice may not be removed or altered from any source
21
+ distribution.
data/README.md ADDED
@@ -0,0 +1,90 @@
1
+ <!-- -*- mode:markdown; coding:utf-8; -*- -->
2
+
3
+ # Yet another ImGui wrapper for Ruby #
4
+
5
+ * Created : 2019-01-05
6
+ * Last modified : 2021-12-31
7
+
8
+ <img src="https://raw.githubusercontent.com/vaiorabbit/ruby-imgui/master/doc/jpfont_test.png" width="250">
9
+
10
+ [Notice] This project is experimental.
11
+
12
+ ## Prerequisites ##
13
+
14
+ * Ruby interpreter
15
+ * Tested on:
16
+ * [Windows] https://rubyinstaller.org/downloads/ Ruby+Devkit
17
+ * ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x64-mingw32]
18
+ * ~~ruby 3.0.0p0 (2020-12-25 revision 95aff21468) [x64-mingw32]~~
19
+ * ~~ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [x64-mingw32]~~
20
+ * [macOS]
21
+ * ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [arm64-darwin20]
22
+ * ruby 3.0.1p64 (2021-04-05 revision 0fb782ee38) [arm64-darwin20]
23
+ * ~~ruby 3.0.0p0 (2020-12-25 revision 95aff21468) [arm64-darwin20]~~
24
+ * ~~ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-darwin19]~~
25
+ * ~~ruby 2.6.0p0 (2018-12-25 revision 66547) [x86_64-darwin18]~~
26
+ * Ruby Gems
27
+ * opengl-bindings
28
+ * gem install opengl-bindings
29
+ * ffi
30
+ * gem install ffi
31
+ * Compiler
32
+ * Tested on:
33
+ * [Windows] gcc (Rev1, Built by MSYS2 project) 8.2.1 20181214
34
+ * [macOS] clang (Apple clang version 12.0.5 (clang-1205.0.22.11), Target: arm64-apple-darwin20.6.0)
35
+ * CMake https://cmake.org/download/
36
+
37
+
38
+ ## Setting up and run sample ##
39
+
40
+ 1. Update cimgui submodule
41
+ * For the first time:
42
+ * git submodule update --init --recursive
43
+ * Update:
44
+ * cd cimgui
45
+ * git pull origin master <- to get latest cimgui
46
+ * git submodule update <- to get specific revision of imgui required by cimgui
47
+ 2. Get GLFW or SDL2
48
+ * GLFW : Use glfw_build.bat (Windows) or glfw_build.sh (macOS)
49
+ 3. Build imgui library
50
+ * Use imgui_dll_build.sh (macOS)
51
+ * Use imgui_dll_build.bat (Windows)
52
+ * e.g.)
53
+ * > ridk enable <- Activates msys2 GCC
54
+ * > imgui_dll_build.bat "D:\Program Files\CMake\bin\cmake.exe" <- You can give absolute path to cmake.exe as the 1st argument
55
+ 4. Run test.rb
56
+ * cd sample/
57
+ * ruby test_glfw_opengl2.rb (GLFW)
58
+ * ruby test_sld2_opengl2.rb (SDL2)
59
+
60
+ ## License ##
61
+
62
+ 'imgui.dylib', 'imgui.dll' and 'imgui_debug.dll' are built on top of these products and are available under the terms of the MIT License.
63
+ * cimgui ( https://github.com/cimgui/cimgui )
64
+ * https://github.com/cimgui/cimgui/blob/master/LICENSE
65
+ * Dear ImGui ( https://github.com/ocornut/imgui )
66
+ * https://github.com/ocornut/imgui/blob/master/LICENSE.txt
67
+
68
+ All ruby codes here are available under the terms of the zlib/libpng License ( http://opensource.org/licenses/Zlib ).
69
+
70
+ Ruby-Imgui : Yet another ImGui wrapper for Ruby
71
+ Copyright (c) 2019-2021 vaiorabbit <http://twitter.com/vaiorabbit>
72
+
73
+ This software is provided 'as-is', without any express or implied
74
+ warranty. In no event will the authors be held liable for any damages
75
+ arising from the use of this software.
76
+
77
+ Permission is granted to anyone to use this software for any purpose,
78
+ including commercial applications, and to alter it and redistribute it
79
+ freely, subject to the following restrictions:
80
+
81
+ 1. The origin of this software must not be misrepresented; you must not
82
+ claim that you wrote the original software. If you use this software
83
+ in a product, an acknowledgment in the product documentation would be
84
+ appreciated but is not required.
85
+
86
+ 2. Altered source versions must be plainly marked as such, and must not be
87
+ misrepresented as being the original software.
88
+
89
+ 3. This notice may not be removed or altered from any source
90
+ distribution.
data/lib/imgui.dll ADDED
Binary file
data/lib/imgui.dylib ADDED
Binary file