ImDrawData

imguicpp.ImDrawData (extern class)

Static Members

clear(self: cpp.Star): Void
Name Type
self cpp.Star

addDrawList(self: cpp.Star, drawList: cpp.Star): Void

Helper to add an external draw list into an existing ImDrawData.

Name Type
self cpp.Star
drawList cpp.Star

deIndexAllBuffers(self: cpp.Star): Void

Helper to convert all buffers from indexed to non-indexed, in case you cannot render indexed. Note: this is slow and most likely a waste of resources. Always prefer indexed rendering!

Name Type
self cpp.Star

scaleClipRects(self: cpp.Star, fbScale: ImVec2): Void

Helper to scale the ClipRect field of each ImDrawCmd. Use if your final output buffer is at a different scale than Dear ImGui expects, or if there is a difference between your window resolution and framebuffer resolution.

Name Type
self cpp.Star
fbScale ImVec2

Instance Members

valid: Bool

Only valid after Render() is called and before the next NewFrame() is called.


cmdListsCount: Int

== CmdLists.Size. (OBSOLETE: exists for legacy reasons). Number of ImDrawList* to render.


totalIdxCount: Int

For convenience, sum of all ImDrawList's IdxBuffer.Size


totalVtxCount: Int

For convenience, sum of all ImDrawList's VtxBuffer.Size


Array of ImDrawList* to render. The ImDrawLists are owned by ImGuiContext and only pointed to from here.


displayPos: ImVec2

Top-left position of the viewport to render (== top-left of the orthogonal projection matrix to use) (== GetMainViewport()->Pos for the main viewport, == (0.0) in most single-viewport applications)


displaySize: ImVec2

Size of the viewport to render (== GetMainViewport()->Size for the main viewport, == io.DisplaySize in most single-viewport applications)


framebufferScale: ImVec2

Amount of pixels for each unit of DisplaySize. Copied from viewport->FramebufferScale (== io.DisplayFramebufferScale for main viewport). Generally (1,1) on normal display, (2,2) on OSX with Retina display.


ownerViewport: cpp.Star

Viewport carrying the ImDrawData instance, might be of use to the renderer (generally not).


textures: cpp.Star

List of textures to update. Most of the times the list is shared by all ImDrawData, has only 1 texture and it doesn't need any update. This almost always points to ImGui::GetPlatformIO().Textures[]. May be overridden or set to NULL if you want to manually update textures.

Metadata

Name Parameters
:structAccess -
:include "linc_imgui.h"