This change overhauls ImGui.NET to be almost entirely auto-generated.
It parses data files from cimgui, which contain pre-processed
information about Dear ImGui's structures, enums, and functions. The
code generator spits out identical C# types and functions, and also
generates a safe, friendly wrapper layer.
--- This is a combination of 22 commits. ---
Initial attempt at auto-generating the native bindings.
More WIP generator stuff.
Mostly-working bindings with some TODO's left.
More WIP stuff for safe wrappers and bindings.
WIP
Update cimgui definitions and even better safe wrappers.
Fix "nonUDT" overloads and add a "RangeAccessor" struct.
Remove constructor methods from wrapper types.
More WIP
Grab latest structs_and_enums.json file
Attempted improvements
Very good state, everything working.
Correct cimgui.dll (win-x64)
Rework how ref/out parameters are marshalled.
Remove problematic string begin/end parameter pairs.
Update native deps to 1.0.65, update ImGui.NET.csproj.
Fix sample program compilation.
Fix up XNA sample program with new binding changes.
Add several more manual ImGui overloads to ease the upgrade.
Add [Flags] to flags enums.
Change version to 1.65.0.
Capitalize "Dear ImGui".