Bruce Mitchener 1bf9256998 Improve README.
This called Dear ImGui by its correct name, and notes that it is
an immediate mode GUI library rather than intermediate GUI library.

It also uses more Markdown syntax to improve readability and correctly
names the generated files. Also, it corrects the path for running
the generator script.
2018-10-04 19:11:20 +07:00
2018-09-10 13:23:49 +02:00
2015-04-07 19:12:56 +02:00
2018-09-12 12:22:46 +02:00
2018-09-02 17:20:46 +02:00
2015-04-07 16:06:21 +02:00
2018-10-04 19:11:20 +07:00
2017-05-30 07:14:57 +02:00

cimgui Build Status

sample

This is a thin c-api wrapper programmatically generated for the excellent C++ immediate mode gui Dear ImGui. All functions are programmatically wrapped except constructors, destructors and ImVector. (Unless someone find a use case for them) Generated files are: cimgui_auto.cpp, cimgui_auto.h for C compilation. Also for helping in bindings creation, definitions.lua with function definition information and structs_and_enums.lua. This library is intended as a intermediate layer to be able to use Dear ImGui from other languages that can interface with C (like D - see D-binding)

Notes:

compilation

  • clone
  • make using makefile on linux/macOS/mingw (Or use CMake to generate project)

auto binding generation

usage

  • use whatever method is in ImGui c++ namespace in the original imgui.h by prepending ig
  • methods have the same parameter list and return values (where possible)
  • functions that belong to a struct have an extra first argument with a pointer to the struct.
  • where a function returns UDT (user defined type) by value some compilers complain so another function with the name function_name_nonUDT is generated accepting a pointer to the UDT type as the first argument. (or second argument if it is a struct function)
  • also is generated function_name_nonUDT2 which instead of returning the UDT type returns a simple version (without functions) called UDTType_Simple (ImVec2_Simple for ImVec2)

example bindings based on cimgui

Description
Languages
Lua 73.2%
C 16.1%
C++ 9.6%
CMake 0.9%
Shell 0.1%