New
v1.2.0
Introduction
Hi! Today we present a next release of cimgui-go with many new features and bugfixes.
Breaking Changes
We're so sorry for that, but again we had to do some (fortunately small) breaking changes.
Plot*andImNodes*prefixes were removed from auto-generated functions.- for fast migration check out https://github.com/AllenDang/cimgui-go/issues/364#issuecomment-2458260345 (you can use a one-line sed instruction to update your project)
Release Highlights
- A new imgui plugin was added: ImGuiColorTextEdit
- Special thanks goes to @sonoro1234 for help with C code generation
- Special thanks goes to @sonoro1234 for help with C code generation
- Callback types were added to codegen :tada:
- A long-existing issue https://github.com/AllenDang/cimgui-go/issues/224 was fixed
- For known limitations and brief description, see https://github.com/AllenDang/cimgui-go?tab=readme-ov-file#callbacks
- For implementation details check out https://github.com/AllenDang/cimgui-go/issues/224#issuecomment-2452156237
- This also makes
github.com/AllenDang/cimgui-go/immarkdownusable
- Many functions have been added (these using Callback typedefs; enum pointer arguments were added too)
github.com/AllenDang/cimgui-go/cmd/codegennow uses ajsonfile for imgui-specific generator configuration.- Our goal is to make the codegen a useful tool not only for cimgui-go but make it able to generate any Go binding based on cimgui-like JSON configs.
- Things like renames or skipped typedefs/structs/funcs are not hardcoded anymore.
- Some types were given a
NewEmptyXXXcreator initializing them with their 0 values (like they would be by usingnew(XXX))
What's Changed - detailed changelog
- add ImGuiColorTextEditor by @gucio321 in https://github.com/AllenDang/cimgui-go/pull/365
- build(deps): bump github.com/hajimehoshi/ebiten/v2 from 2.8.2 to 2.8.3 by @dependabot in https://github.com/AllenDang/cimgui-go/pull/368
- Auto generated callbacks implementation by @gucio321 in https://github.com/AllenDang/cimgui-go/pull/367
- Update dependencies by @gucio321 in https://github.com/AllenDang/cimgui-go/pull/373
- Code cleanup by @gucio321 in https://github.com/AllenDang/cimgui-go/pull/374
- codegen: add const unsigned char by @gucio321 in https://github.com/AllenDang/cimgui-go/pull/377
- remove ImNodes/Plot prefixes by @gucio321 in https://github.com/AllenDang/cimgui-go/pull/378
- codegen: free source char* after C.GoString call by @gucio321 in https://github.com/AllenDang/cimgui-go/pull/379
- codegen: fix enums generation by @gucio321 in https://github.com/AllenDang/cimgui-go/pull/380
- codegen: Add presets json support by @gucio321 in https://github.com/AllenDang/cimgui-go/pull/381
- Callbacks attempt 2: generate non-pointer callbacks by @gucio321 in https://github.com/AllenDang/cimgui-go/pull/382
- codegen: add NewEmptyXXX by @gucio321 in https://github.com/AllenDang/cimgui-go/pull/383
- build(deps): bump github.com/hajimehoshi/ebiten/v2 from 2.8.3 to 2.8.4 by @dependabot in https://github.com/AllenDang/cimgui-go/pull/384
- Codegen: fix unexported funcs by @gucio321 in https://github.com/AllenDang/cimgui-go/pull/385
- Rename NewXXXEmpty -> NewEmptyXXX by @gucio321 in https://github.com/AllenDang/cimgui-go/pull/386
- Revert "codegen: free source char* after C.GoString call" by @gucio321 in https://github.com/AllenDang/cimgui-go/pull/387
- update readme for callbacks generation by @gucio321 in https://github.com/AllenDang/cimgui-go/pull/388
- codegen: in non-pointer callbacks: interpret & as pointer by @gucio321 in https://github.com/AllenDang/cimgui-go/pull/389
Full Changelog: https://github.com/AllenDang/cimgui-go/compare/v1.1.0...v1.2.0