imgui-bindings 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
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