Skip to content

v1.1.0

Compare
Choose a tag to compare
@gucio321 gucio321 released this 29 Oct 11:35
· 167 commits to main since this release
0e9d3e5

Introduction

Hi!
We present another release of cimgui-go today.
Its major highlights are:

  • implementation of the ImGuizmo extension
  • Imgui update
  • bugfix in glfwbackend causing GL error in some circumstances.
  • fix of crucial issues in the internal conversions mechanism
  • package layout redesign (BREAKING CHANGE)
  • change of type for all in/out slices to pointers (BREAKING CHANGE)
  • improvement of Vector type - it now shares the Slice() method.

Breaking Changes

  • if you use a slice as an argument to cimgui-go function, replace it with utils.SliceToPtr(yourslice)
    • this was necessary, because we cannot in fact determine whether a C pointer is a Slice or Pointer. Conversion from slice to pointer is easier and makes more sense than conversion from ptr to slice.
    • There was an issue making it impossible to pass an empty slice or nil (runtime panic)
  • ConvertCTypes and some Wrap* functions have been hidden.
    • you shouldn't have to use these functions - its use should be handled internally by cimgui-go. They are highly unsafe.
  • imgui.Vector was moved to vectors.Vector
    • Vector type does not belong to the imgui package so putting it there isn't the right approach.
  • imgui.SliceToPtr was moved to utils.SliceToPtr
    • As above: this function does not belong to imgui's code and should not be there.
  • datautils package was renamed to utils.
    • Does it make it work better? - No, but this name is shorter. This package was entirely redesigned anyway so a name change will not break much more.

We are so sorry for these breaking changes. We hope their positive impact on your project will be much greater than your dissatisfaction related to implementing them. We promise we'll try to avoid them in future releases so that you can update smoothly.

What's Changed

Full Changelog: v1.0.3...v1.1.0