NativeStructs
Portable creation of the few ImGui helper structs that user code owns (the generator binds their fields and member functions, but cannot emit constructors: C++ ctor semantics are replicated here per target).
Also provides raw native memory helpers for the rare APIs taking a buffer + size (drag and drop payloads, polyline points...).
Static Members
createListClipper(): cpp.StarAllocate an ImGuiListClipper (C++ ctor semantics in imgui 1.92: plain
zeroing). Destroy it with destroyListClipper when done, or keep one
per call site for its lifetime (clippers are reusable).
| Returns |
|---|
| cpp.Star |
| Name | Type |
|---|---|
clipper |
cpp.Star |
createSelectionBasicStorage(adapter: cpp.RawPointer<cpp.Void>): cpp.StarCreate an ImGuiSelectionBasicStorage. adapter is the index-to-storage-id
function pointer (use imgui.ImGuiCallbacks.selectionAdapter to install a
Haxe handler); the C++ constructor installs an identity adapter, but the
bindings replicate the ctor per target so the adapter is always set here.
| Name | Type |
|---|---|
adapter |
cpp.RawPointer<cpp.Void> |
| Returns |
|---|
| cpp.Star |
| Name | Type |
|---|---|
storage |
cpp.Star |
createFontConfig(): cpp.StarAllocate an ImFontConfig (C++ ctor semantics replicated per target:
fontDataOwnedByAtlas=true, glyphMaxAdvanceX=FLT_MAX, rasterizer
multiply/density=1). Destroy it with destroyFontConfig when done
(the atlas copies the config during AddFont* calls).
| Returns |
|---|
| cpp.Star |
| Name | Type |
|---|---|
cfg |
cpp.Star |
allocBytesFromHaxe(bytes: haxe.io.Bytes): cpp.RawPointer<cpp.UInt8>Allocate native bytes and copy a haxe.io.Bytes into them (fast per target: memcpy / HEAPU8.set / Marshal.Copy). Suited to font files and other large blobs. The returned buffer is never freed automatically.
| Name | Type |
|---|---|
bytes |
haxe.io.Bytes |
| Returns |
|---|
| cpp.RawPointer<cpp.UInt8> |
allocBytes(size: Int): cpp.RawPointer<cpp.UInt8>Allocate raw native bytes (for payloads, point buffers...). The address type follows the target's convention (cpp pointer, js Int, cs Float); use the Bytes* helpers below to read/write portably.
| Name | Type |
|---|---|
size |
Int |
| Returns |
|---|
| cpp.RawPointer<cpp.UInt8> |
setU8(buffer: cpp.RawPointer<cpp.UInt8>, offset: Int, value: Int): Void| Name | Type |
|---|---|
buffer |
cpp.RawPointer<cpp.UInt8> |
offset |
Int |
value |
Int |
getU8(buffer: cpp.RawPointer<cpp.UInt8>, offset: Int): Int| Name | Type |
|---|---|
buffer |
cpp.RawPointer<cpp.UInt8> |
offset |
Int |
| Returns |
|---|
| Int |
setI32(buffer: cpp.RawPointer<cpp.UInt8>, offset: Int, value: Int): Void| Name | Type |
|---|---|
buffer |
cpp.RawPointer<cpp.UInt8> |
offset |
Int |
value |
Int |
getI32(buffer: cpp.RawPointer<cpp.UInt8>, offset: Int): Int| Name | Type |
|---|---|
buffer |
cpp.RawPointer<cpp.UInt8> |
offset |
Int |
| Returns |
|---|
| Int |
setI16(buffer: cpp.RawPointer<cpp.UInt8>, offset: Int, value: Int): Void| Name | Type |
|---|---|
buffer |
cpp.RawPointer<cpp.UInt8> |
offset |
Int |
value |
Int |
getI16(buffer: cpp.RawPointer<cpp.UInt8>, offset: Int): Int| Name | Type |
|---|---|
buffer |
cpp.RawPointer<cpp.UInt8> |
offset |
Int |
| Returns |
|---|
| Int |
setI64(buffer: cpp.RawPointer<cpp.UInt8>, offset: Int, value: Float): Void64-bit integers cross as Haxe Float (53-bit precision, fine for UI demo values).
| Name | Type |
|---|---|
buffer |
cpp.RawPointer<cpp.UInt8> |
offset |
Int |
value |
Float |
getI64(buffer: cpp.RawPointer<cpp.UInt8>, offset: Int): Float| Name | Type |
|---|---|
buffer |
cpp.RawPointer<cpp.UInt8> |
offset |
Int |
| Returns |
|---|
| Float |
setF64(buffer: cpp.RawPointer<cpp.UInt8>, offset: Int, value: Float): Void| Name | Type |
|---|---|
buffer |
cpp.RawPointer<cpp.UInt8> |
offset |
Int |
value |
Float |
getF64(buffer: cpp.RawPointer<cpp.UInt8>, offset: Int): Float| Name | Type |
|---|---|
buffer |
cpp.RawPointer<cpp.UInt8> |
offset |
Int |
| Returns |
|---|
| Float |
setF32(buffer: cpp.RawPointer<cpp.UInt8>, offset: Int, value: Float): Void| Name | Type |
|---|---|
buffer |
cpp.RawPointer<cpp.UInt8> |
offset |
Int |
value |
Float |
getF32(buffer: cpp.RawPointer<cpp.UInt8>, offset: Int): Float| Name | Type |
|---|---|
buffer |
cpp.RawPointer<cpp.UInt8> |
offset |
Int |
| Returns |
|---|
| Float |
Metadata
| Name | Parameters |
|---|---|
:cppInclude |
"linc_imgui.h" |