ImGuiStyle#
You may modify the ImGui.get_style
main instance during initialization and before ImGui.new_frame
.
During the frame, use ImGui::PushStyleVar(ImGuiStyleVar_XXXX)/ImGui.pop_style_var
to alter the main style values,
and ImGui::PushStyleColor(ImGuiCol_XXX)/ImGui.pop_style_color
for colors.
struct ImGui::ImGuiStyle
inherits Struct
#
Included modules
ImGui::ClassType
Global alpha applies to everything in Dear ImGui.
Additional alpha multiplier applied by ImGui.begin_disabled
. Multiply over current value of Alpha.
Padding within a window.
Radius of window corners rounding. Set to 0.0f to have rectangular windows. Large values tend to lead to variety of artifacts and are not recommended.
Thickness of border around windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly).
Minimum window size. This is a global setting. If you want to constraint individual windows, use ImGui.set_next_window_size_constraints
.
Alignment for title bar text. Defaults to (0.0f,0.5f) for left-aligned,vertically centered.
Side of the collapsing/docking button in the title bar (None/Left/Right). Defaults to ImGuiDir_Left.
Radius of child window corners rounding. Set to 0.0f to have rectangular windows.
Thickness of border around child windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly).
Radius of popup window corners rounding. (Note that tooltip windows use WindowRounding)
Thickness of border around popup/tooltip windows. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly).
Padding within a framed rectangle (used by most widgets).
Radius of frame corners rounding. Set to 0.0f to have rectangular frame (used by most widgets).
Thickness of border around frames. Generally set to 0.0f or 1.0f. (Other values are not well tested and more CPU/GPU costly).
Horizontal and vertical spacing between widgets/lines.
Horizontal and vertical spacing between within elements of a composed widget (e.g. a slider and its label).
Padding within a table cell
Expand reactive bounding box for touch-based system where touch position is not accurate enough. Unfortunately we don't sort widgets so priority on overlap will always be given to the first widget. So don't grow this too much!
Horizontal indentation when e.g. entering a tree node. Generally == (FontSize + FramePadding.x*2).
Minimum horizontal spacing between two columns. Preferably > (FramePadding.x + 1).
Width of the vertical scrollbar, Height of the horizontal scrollbar.
Radius of grab corners for scrollbar.
Minimum width/height of a grab box for slider/scrollbar.
Radius of grabs corners rounding. Set to 0.0f to have rectangular slider grabs.
The size in pixels of the dead-zone around zero on logarithmic sliders that cross zero.
Radius of upper corners of a tab. Set to 0.0f to have rectangular tabs.
Thickness of border around tabs.
Minimum width for close button to appears on an unselected tab when hovered. Set to 0.0f to always show when hovering, set to FLT_MAX to never show close button unless selected.
Side of the color button in the ImGui.color_edit4
widget (left/right). Defaults to ImGuiDir_Right.
Alignment of button text when button is larger than text. Defaults to (0.5f, 0.5f) (centered).
Alignment of selectable text. Defaults to (0.0f, 0.0f) (top-left aligned). It's generally important to keep this left-aligned if you want to lay multiple items on a same line.
Window position are clamped to be visible within the display area or monitors by at least this amount. Only applies to regular windows.
If you cannot see the edges of your screen (e.g. on a TV) increase the safe area padding. Apply to popups/tooltips as well regular windows. NB: Prefer configuring your TV sets correctly!
Scale software rendered mouse cursor (when io.MouseDrawCursor is enabled). May be removed later.
Enable anti-aliased lines/borders. Disable if you are really tight on CPU/GPU. Latched at the beginning of the frame (copied to ImGui::ImDrawList
).
Enable anti-aliased lines/borders using textures where possible. Require backend to render with bilinear filtering (NOT point/nearest filtering). Latched at the beginning of the frame (copied to ImGui::ImDrawList
).
Enable anti-aliased edges around filled shapes (rounded rectangles, circles, etc.). Disable if you are really tight on CPU/GPU. Latched at the beginning of the frame (copied to ImGui::ImDrawList
).
Tessellation tolerance when using PathBezierCurveTo() without a specific number of segments. Decrease for highly tessellated curves (higher quality, more polygons), increase to reduce quality.
Maximum error (in pixels) allowed when using AddCircle()/AddCircleFilled() or drawing rounded corner rectangles with no explicit segment count specified. Decrease for higher quality but more geometry.