5. External types
Types defined by C++-bound sister modules (imgui core bindings, dasGLFW)
that dasImgui references but does not own. Until those modules ship their own
Sphinx sites and an intersphinx bridge, this page anchors the labels so the
generated module pages can link without dangling references.
5.1. imgui::ImGuiCol
Style-color enum exposed by the imgui builtin module (the C++ Dear ImGui
binding layer). Indexes a slot in the active style’s color table — passed to
push_style_one,
push_style_color, pop_style_color, and friends. Values map directly to
upstream ImGuiCol_* enumerants (Text, WindowBg, Button, …); see
the Dear ImGui ImGuiCol_ reference
for the full enumerator list.
5.2. imgui::ImGui*Flags
Bitfield enums exposed by the imgui builtin module: ImGuiWindowFlags,
ImGuiChildFlags, ImGuiTabBarFlags, ImGuiTabItemFlags,
ImGuiTreeNodeFlags, ImGuiPopupFlags, ImGuiTableFlags,
ImGuiTableColumnFlags, ImGuiTableRowFlags. Passed to the corresponding
imgui::Begin* / BeginTabBar / BeginTabItem / TreeNodeEx /
OpenPopup / BeginTable / TableSetupColumn / TableNextRow calls.
Values map directly to upstream ImGui*Flags_* enumerants; see the
Dear ImGui flag enums
for the full enumerator lists.
5.3. imgui::ImGuiCond
Window-state condition enum exposed by the imgui builtin module. Used as
the trailing cond argument to SetNextWindowPos / SetNextWindowSize /
set_window_size etc. to gate when the value applies (Always / Once /
FirstUseEver / Appearing). Values map directly to upstream ImGuiCond_*
enumerants; see the
Dear ImGui ImGuiCond_ reference
for the full list.
5.4. imgui::ImVec2 / imgui::ImVec4 / imgui::ImColor
Core vector aliases exposed by the imgui builtin module and consumed across
the style/layout APIs. ImVec2 is used for 2D positions/sizes (window pos,
cursor pos, spacing, paddings). ImVec4 is used for RGBA colors and 4D style
values. ImColor is a float4-aliased convenience wrapper for RGBA
colors. These aliases map directly to Dear ImGui’s ImVec2/ImVec4/
ImColor structs.
5.5. imgui::ImGuiViewport
Per-viewport handle exposed by the imgui builtin module. Returned (as
ImGuiViewport?) from GetMainViewport and consumed by the
viewport_center wrapper plus the multi-viewport docking pipeline. Fields
Pos / Size / WorkPos / WorkSize / ID are directly accessible;
the GetCenter() method is wrapped as viewport_center(self) in
imgui/imgui_containers_builtin. See
ImGuiViewport in imgui.h
for the upstream definition.
5.6. imgui::ImGuiSizeCallbackData
Per-resize callback payload passed by ImGui to the
SetNextWindowSizeConstraints callback (ImGuiSizeCallback). Daslang
exposes this through the ImGuiSizeConstraints lambda wrapper in
imgui/imgui_window_constraints_builtin: the lambda body reads
data.CurrentSize and writes data.DesiredSize to re-shape the requested
window size (aspect-ratio lock, fixed-step quantization, “always square”, …).
See
ImGuiSizeCallbackData in imgui.h
for the upstream definition.
5.7. glfw::GLFWwindow
Opaque GLFW window handle exposed by the dasGLFW sister module. Passed
through the live-reload host’s window lifecycle (creation, swap, event drain)
and forwarded into ImGui’s GLFW backend. See the
GLFW documentation
for the handle’s C-side semantics.
5.8. imgui::ImGuiTextFilter
C++ helper for parsed comma-separated include/exclude filter expressions
(-prefix excludes), with an inline editor renderable via Draw(label,
width) and a PassFilter(text) predicate. Held inline as a value field
of TextFilterState backing the text_filter boost widget. See
ImGuiTextFilter in imgui.h
for the upstream definition.