Wow, this looks great! It’s also the clean sort of C++:
ImGui takes advantage of a few C++ features for convenience but nothing anywhere Boost-insanity/quagmire. In particular, function overloading and default parameters are used to make the API easier to use and code more terse.
The imgui readme also mentions an interesting-looking fork, developed for use by LumixEngine, which adds dockable windows and an alternate theme.
Yeah - that’s why I allow it as an exception to my no-c++ rule. When the sdl is ignored, you don’t use crappy bloat like boost, and you don’t try to write it like Java, C++ is quite tolerable. At that point, though, it’s basically C with some syntactic sugar.
I would have preferred something like sql amalgamation, but if the author can manage to develop while things are all in one file and make it work I Would say it’s fine.
This is pretty cool, although I’m unsure of the advantages of having it all in a header file over a simple .c/.h pair of files. If/when I use this, I’ll probably just have a ‘nuklear.c’ file that merely includes the header file with the “implementation” flag set.
I know it’s C++ (eww), but I personally prefer imgui. I’ve had difficulty debugging nuklear when I’ve used it in the past, but imgui just works™
Wow, this looks great! It’s also the clean sort of C++:
The imgui readme also mentions an interesting-looking fork, developed for use by LumixEngine, which adds dockable windows and an alternate theme.
Yeah - that’s why I allow it as an exception to my no-c++ rule. When the sdl is ignored, you don’t use crappy bloat like boost, and you don’t try to write it like Java, C++ is quite tolerable. At that point, though, it’s basically C with some syntactic sugar.
imgui is, in fact, mentioned as an inspiration at the end of the nuklear page. I’m also intrigued by the stb header libraries mentioned there.
[Comment removed by author]
It literally does.
Perhaps I’m mistaken, but I believe the claim is “single header”, not “single file”.
It’s like a monorepo for your program! /s
I would have preferred something like sql amalgamation, but if the author can manage to develop while things are all in one file and make it work I Would say it’s fine.
This is pretty cool, although I’m unsure of the advantages of having it all in a header file over a simple .c/.h pair of files. If/when I use this, I’ll probably just have a ‘nuklear.c’ file that merely includes the header file with the “implementation” flag set.
We need a Haskell binding for that!