flyover / imgui-js

JavaScript bindings for Dear ImGui using Emscripten and TypeScript
https://flyover.github.io/imgui-js/example/
MIT License
915 stars 98 forks source link

Update imgui to 1.80 #34

Closed sh54 closed 3 years ago

sh54 commented 3 years ago

This bumps up the imgui submodule to reference the 1.80 release and adds various new bindings and updates some changed ones. The big new feature that I added bindings for is the tables api. The new tables examples in the demo window have been ported over to typescript. The added code very closely matches the original c++ implementations. I updated a few other bindings that I noticed were causing some issues with the demo window example but I have not done an extensive test.

flyover commented 3 years ago

This is great! Thanks for working on this. The only thing I found was ImDrawList:AddBezierCurve needs to be renamed to AddBezierCubic.

flyover commented 3 years ago

also, PathBezierCurveTo to PathBezierCubicCurveTo

sh54 commented 3 years ago

Good catch. I added those fixes.

I also have a branch that wraps the docking stuff. See here. Maybe that is something you would like in too? It feels appropriate for it to remain as a branch.

On my local clone I also have a couple of c++ widgets found here. It is nice to wrap existing stuff rather than just port to Typescript. Right now they just end up compiled into "imgui.umd.js". Maybe they would be better off compiled into their own modules, or to one contrib module? Any thoughts?