.. _stdlib_imgui_widgets_builtin: ============================================================ Built-in widgets — inputs, selection, color, plots, output ============================================================ .. das:module:: imgui_widgets_builtin Built-in widgets shipped on top of the boost layer — the same ``[widget]`` mechanism users get. Covers the button family (``button``, ``small_button``, ``arrow_button``, ``image_button``, ``invisible_button``, ``checkbox``, ``radio_button``), the slider / drag / input numeric families across scalar and 2/3/4-vector ``float`` / ``int`` variants, color edits and pickers, selection widgets (``combo``, ``list_box``, ``selectable``), plot helpers (``plot_lines``, ``plot_histogram``, ``progress_bar``), and output widgets (``text_show``, ``label_text``, ``bullet_text``, ``help_marker``). Each widget def shapes its body around the per-kind state struct from :ref:`imgui_boost_runtime ` plus a brief finalize helper. The helpers — ``click_finalize``, ``toggle_finalize``, ``radio_int_finalize``, ``pending_value_finalize`` — collapse the repetitive ``widget_finalize`` lambda construction per family so each def stays focused on the ImGui call and per-frame state mutation. +++++++++++ Call macros +++++++++++ .. _call-macro-imgui_widgets_builtin-edit_input_int3: .. das:attribute:: edit_input_int3 Function annotation edit_input_int3 .. _call-macro-imgui_widgets_builtin-input_text_callback: .. das:attribute:: input_text_callback Function annotation input_text_callback .. _call-macro-imgui_widgets_builtin-color_picker3: .. das:attribute:: color_picker3 Function annotation color_picker3 .. _call-macro-imgui_widgets_builtin-text_filter: .. das:attribute:: text_filter Function annotation text_filter .. _call-macro-imgui_widgets_builtin-drag_int4: .. das:attribute:: drag_int4 Function annotation drag_int4 .. _call-macro-imgui_widgets_builtin-slider_int3: .. das:attribute:: slider_int3 Function annotation slider_int3 .. _call-macro-imgui_widgets_builtin-tree_node_ex: .. das:attribute:: tree_node_ex Function annotation tree_node_ex .. _call-macro-imgui_widgets_builtin-color_edit4: .. das:attribute:: color_edit4 Function annotation color_edit4 .. _call-macro-imgui_widgets_builtin-bullet_text: .. das:attribute:: bullet_text Function annotation bullet_text .. _call-macro-imgui_widgets_builtin-drag_int: .. das:attribute:: drag_int Function annotation drag_int .. _call-macro-imgui_widgets_builtin-edit_input_int4: .. das:attribute:: edit_input_int4 Function annotation edit_input_int4 .. _call-macro-imgui_widgets_builtin-text: .. das:attribute:: text Function annotation text .. _call-macro-imgui_widgets_builtin-edit_input_float: .. das:attribute:: edit_input_float Function annotation edit_input_float .. _call-macro-imgui_widgets_builtin-button: .. das:attribute:: button Function annotation button .. _call-macro-imgui_widgets_builtin-combo: .. das:attribute:: combo Function annotation combo .. _call-macro-imgui_widgets_builtin-radio_button: .. das:attribute:: radio_button Function annotation radio_button .. _call-macro-imgui_widgets_builtin-color_picker4: .. das:attribute:: color_picker4 Function annotation color_picker4 .. _call-macro-imgui_widgets_builtin-text_wrapped: .. das:attribute:: text_wrapped Function annotation text_wrapped .. _call-macro-imgui_widgets_builtin-plot_lines: .. das:attribute:: plot_lines Function annotation plot_lines .. _call-macro-imgui_widgets_builtin-menu_label: .. das:attribute:: menu_label Function annotation menu_label .. _call-macro-imgui_widgets_builtin-spacing: .. das:attribute:: spacing Function annotation spacing .. _call-macro-imgui_widgets_builtin-new_line: .. das:attribute:: new_line Function annotation new_line .. _call-macro-imgui_widgets_builtin-edit_radio_button: .. das:attribute:: edit_radio_button Function annotation edit_radio_button .. _call-macro-imgui_widgets_builtin-edit_collapsing_header: .. das:attribute:: edit_collapsing_header Function annotation edit_collapsing_header .. _call-macro-imgui_widgets_builtin-edit_input_float2: .. das:attribute:: edit_input_float2 Function annotation edit_input_float2 .. _call-macro-imgui_widgets_builtin-checkbox: .. das:attribute:: checkbox Function annotation checkbox .. _call-macro-imgui_widgets_builtin-edit_drag_float: .. das:attribute:: edit_drag_float Function annotation edit_drag_float .. _call-macro-imgui_widgets_builtin-edit_drag_float2: .. das:attribute:: edit_drag_float2 Function annotation edit_drag_float2 .. _call-macro-imgui_widgets_builtin-edit_drag_float3: .. das:attribute:: edit_drag_float3 Function annotation edit_drag_float3 .. _call-macro-imgui_widgets_builtin-edit_drag_float4: .. das:attribute:: edit_drag_float4 Function annotation edit_drag_float4 .. _call-macro-imgui_widgets_builtin-edit_input_int: .. das:attribute:: edit_input_int Function annotation edit_input_int .. _call-macro-imgui_widgets_builtin-edit_input_int2: .. das:attribute:: edit_input_int2 Function annotation edit_input_int2 .. _call-macro-imgui_widgets_builtin-text_unformatted: .. das:attribute:: text_unformatted Function annotation text_unformatted .. _call-macro-imgui_widgets_builtin-slider_float3: .. das:attribute:: slider_float3 Function annotation slider_float3 .. _call-macro-imgui_widgets_builtin-edit_color_edit3: .. das:attribute:: edit_color_edit3 Function annotation edit_color_edit3 .. _call-macro-imgui_widgets_builtin-text_disabled: .. das:attribute:: text_disabled Function annotation text_disabled .. _call-macro-imgui_widgets_builtin-edit_color_edit4: .. das:attribute:: edit_color_edit4 Function annotation edit_color_edit4 .. _call-macro-imgui_widgets_builtin-bullet: .. das:attribute:: bullet Function annotation bullet .. _call-macro-imgui_widgets_builtin-edit_drag_int: .. das:attribute:: edit_drag_int Function annotation edit_drag_int .. _call-macro-imgui_widgets_builtin-drag_float: .. das:attribute:: drag_float Function annotation drag_float .. _call-macro-imgui_widgets_builtin-drag_float3: .. das:attribute:: drag_float3 Function annotation drag_float3 .. _call-macro-imgui_widgets_builtin-edit_drag_int2: .. das:attribute:: edit_drag_int2 Function annotation edit_drag_int2 .. _call-macro-imgui_widgets_builtin-edit_drag_int3: .. das:attribute:: edit_drag_int3 Function annotation edit_drag_int3 .. _call-macro-imgui_widgets_builtin-edit_drag_int4: .. das:attribute:: edit_drag_int4 Function annotation edit_drag_int4 .. _call-macro-imgui_widgets_builtin-drag_int2: .. das:attribute:: drag_int2 Function annotation drag_int2 .. _call-macro-imgui_widgets_builtin-set_item_tooltip: .. das:attribute:: set_item_tooltip Function annotation set_item_tooltip .. _call-macro-imgui_widgets_builtin-edit_slider_float: .. das:attribute:: edit_slider_float Function annotation edit_slider_float .. _call-macro-imgui_widgets_builtin-combo_getter: .. das:attribute:: combo_getter Function annotation combo_getter .. _call-macro-imgui_widgets_builtin-selectable_label: .. das:attribute:: selectable_label Function annotation selectable_label .. _call-macro-imgui_widgets_builtin-input_float: .. das:attribute:: input_float Function annotation input_float .. _call-macro-imgui_widgets_builtin-input_float2: .. das:attribute:: input_float2 Function annotation input_float2 .. _call-macro-imgui_widgets_builtin-input_float3: .. das:attribute:: input_float3 Function annotation input_float3 .. _call-macro-imgui_widgets_builtin-input_float4: .. das:attribute:: input_float4 Function annotation input_float4 .. _call-macro-imgui_widgets_builtin-vslider_float: .. das:attribute:: vslider_float Function annotation vslider_float .. _call-macro-imgui_widgets_builtin-input_text_growable: .. das:attribute:: input_text_growable Function annotation input_text_growable .. _call-macro-imgui_widgets_builtin-drag_float4: .. das:attribute:: drag_float4 Function annotation drag_float4 .. _call-macro-imgui_widgets_builtin-separator_text: .. das:attribute:: separator_text Function annotation separator_text .. _call-macro-imgui_widgets_builtin-slider_float: .. das:attribute:: slider_float Function annotation slider_float .. _call-macro-imgui_widgets_builtin-edit_slider_float2: .. das:attribute:: edit_slider_float2 Function annotation edit_slider_float2 .. _call-macro-imgui_widgets_builtin-menu_item: .. das:attribute:: menu_item Function annotation menu_item .. _call-macro-imgui_widgets_builtin-drag_float_range2: .. das:attribute:: drag_float_range2 Function annotation drag_float_range2 .. _call-macro-imgui_widgets_builtin-edit_slider_float3: .. das:attribute:: edit_slider_float3 Function annotation edit_slider_float3 .. _call-macro-imgui_widgets_builtin-edit_slider_float4: .. das:attribute:: edit_slider_float4 Function annotation edit_slider_float4 .. _call-macro-imgui_widgets_builtin-slider_int4: .. das:attribute:: slider_int4 Function annotation slider_int4 .. _call-macro-imgui_widgets_builtin-slider_int: .. das:attribute:: slider_int Function annotation slider_int .. _call-macro-imgui_widgets_builtin-selectable: .. das:attribute:: selectable Function annotation selectable .. _call-macro-imgui_widgets_builtin-edit_input_float3: .. das:attribute:: edit_input_float3 Function annotation edit_input_float3 .. _call-macro-imgui_widgets_builtin-dummy: .. das:attribute:: dummy Function annotation dummy .. _call-macro-imgui_widgets_builtin-color_edit3: .. das:attribute:: color_edit3 Function annotation color_edit3 .. _call-macro-imgui_widgets_builtin-vslider_int: .. das:attribute:: vslider_int Function annotation vslider_int .. _call-macro-imgui_widgets_builtin-plot_lines_getter: .. das:attribute:: plot_lines_getter Function annotation plot_lines_getter .. _call-macro-imgui_widgets_builtin-input_text_with_hint: .. das:attribute:: input_text_with_hint Function annotation input_text_with_hint .. _call-macro-imgui_widgets_builtin-edit_color_picker3: .. das:attribute:: edit_color_picker3 Function annotation edit_color_picker3 .. _call-macro-imgui_widgets_builtin-edit_color_picker4: .. das:attribute:: edit_color_picker4 Function annotation edit_color_picker4 .. _call-macro-imgui_widgets_builtin-input_text_multiline: .. das:attribute:: input_text_multiline Function annotation input_text_multiline .. _call-macro-imgui_widgets_builtin-slider_float2: .. das:attribute:: slider_float2 Function annotation slider_float2 .. _call-macro-imgui_widgets_builtin-drag_int_range2: .. das:attribute:: drag_int_range2 Function annotation drag_int_range2 .. _call-macro-imgui_widgets_builtin-indent: .. das:attribute:: indent Function annotation indent .. _call-macro-imgui_widgets_builtin-edit_input_float4: .. das:attribute:: edit_input_float4 Function annotation edit_input_float4 .. _call-macro-imgui_widgets_builtin-edit_combo: .. das:attribute:: edit_combo Function annotation edit_combo .. _call-macro-imgui_widgets_builtin-radio_button_int: .. das:attribute:: radio_button_int Function annotation radio_button_int .. _call-macro-imgui_widgets_builtin-drag_float2: .. das:attribute:: drag_float2 Function annotation drag_float2 .. _call-macro-imgui_widgets_builtin-align_text_to_frame_padding: .. das:attribute:: align_text_to_frame_padding Function annotation align_text_to_frame_padding .. _call-macro-imgui_widgets_builtin-small_button: .. das:attribute:: small_button Function annotation small_button .. _call-macro-imgui_widgets_builtin-drag_int3: .. das:attribute:: drag_int3 Function annotation drag_int3 .. _call-macro-imgui_widgets_builtin-slider_int2: .. das:attribute:: slider_int2 Function annotation slider_int2 .. _call-macro-imgui_widgets_builtin-arrow_button: .. das:attribute:: arrow_button Function annotation arrow_button .. _call-macro-imgui_widgets_builtin-set_tooltip: .. das:attribute:: set_tooltip Function annotation set_tooltip .. _call-macro-imgui_widgets_builtin-separator: .. das:attribute:: separator Function annotation separator .. _call-macro-imgui_widgets_builtin-edit_input_double: .. das:attribute:: edit_input_double Function annotation edit_input_double .. _call-macro-imgui_widgets_builtin-color_button: .. das:attribute:: color_button Function annotation color_button .. _call-macro-imgui_widgets_builtin-plot_histogram: .. das:attribute:: plot_histogram Function annotation plot_histogram .. _call-macro-imgui_widgets_builtin-unindent: .. das:attribute:: unindent Function annotation unindent .. _call-macro-imgui_widgets_builtin-slider_float4: .. das:attribute:: slider_float4 Function annotation slider_float4 .. _call-macro-imgui_widgets_builtin-plot_histogram_getter: .. das:attribute:: plot_histogram_getter Function annotation plot_histogram_getter .. _call-macro-imgui_widgets_builtin-edit_checkbox: .. das:attribute:: edit_checkbox Function annotation edit_checkbox .. _call-macro-imgui_widgets_builtin-label_text: .. das:attribute:: label_text Function annotation label_text .. _call-macro-imgui_widgets_builtin-invisible_button: .. das:attribute:: invisible_button Function annotation invisible_button .. _call-macro-imgui_widgets_builtin-edit_slider_angle: .. das:attribute:: edit_slider_angle Function annotation edit_slider_angle .. _call-macro-imgui_widgets_builtin-edit_checkbox_flags: .. das:attribute:: edit_checkbox_flags Function annotation edit_checkbox_flags .. _call-macro-imgui_widgets_builtin-same_line: .. das:attribute:: same_line Function annotation same_line .. _call-macro-imgui_widgets_builtin-image_button: .. das:attribute:: image_button Function annotation image_button .. _call-macro-imgui_widgets_builtin-input_double: .. das:attribute:: input_double Function annotation input_double .. _call-macro-imgui_widgets_builtin-image: .. das:attribute:: image Function annotation image .. _call-macro-imgui_widgets_builtin-text_show: .. das:attribute:: text_show Function annotation text_show .. _call-macro-imgui_widgets_builtin-input_text: .. das:attribute:: input_text Function annotation input_text .. _call-macro-imgui_widgets_builtin-input_int: .. das:attribute:: input_int Function annotation input_int .. _call-macro-imgui_widgets_builtin-input_int2: .. das:attribute:: input_int2 Function annotation input_int2 .. _call-macro-imgui_widgets_builtin-input_int3: .. das:attribute:: input_int3 Function annotation input_int3 .. _call-macro-imgui_widgets_builtin-input_int4: .. das:attribute:: input_int4 Function annotation input_int4 .. _call-macro-imgui_widgets_builtin-progress_bar: .. das:attribute:: progress_bar Function annotation progress_bar .. _call-macro-imgui_widgets_builtin-edit_slider_int: .. das:attribute:: edit_slider_int Function annotation edit_slider_int .. _call-macro-imgui_widgets_builtin-edit_slider_int2: .. das:attribute:: edit_slider_int2 Function annotation edit_slider_int2 .. _call-macro-imgui_widgets_builtin-edit_slider_int3: .. das:attribute:: edit_slider_int3 Function annotation edit_slider_int3 .. _call-macro-imgui_widgets_builtin-edit_slider_int4: .. das:attribute:: edit_slider_int4 Function annotation edit_slider_int4 .. _call-macro-imgui_widgets_builtin-text_colored: .. das:attribute:: text_colored Function annotation text_colored +++++++++++++ Uncategorized +++++++++++++ .. _function-imgui_widgets_builtin_passes_filter_TextFilterState_string: .. das:function:: passes_filter(state: TextFilterState; line: string) : bool Predicate companion to `text_filter`. Delegates to the hand-bound `PassFilter(filter, text)` standalone helper at `src/dasIMGUI.main.cpp:305`. While the editor is empty the underlying `Filters` `ImVector` is empty too and PassFilter returns true for all lines. NB: an exclude-only filter (e.g. `-error`) has no include terms either, so `passes_filter(state, "")` returns `true` even though the filter is active — use `is_active(state)`, not `passes_filter(state, "")`, to detect the active/inactive transition. :Arguments: * **state** : :ref:`TextFilterState ` * **line** : string .. _function-imgui_widgets_builtin_is_active_TextFilterState: .. das:function:: is_active(state: TextFilterState) : bool `ImGuiTextFilter::IsActive()` — true iff parsing produced at least one include OR exclude term. Use this to gate filter-active vs filter-inactive code paths (e.g. clipper-cull vs sequential scan in scrolling log views). :Arguments: * **state** : :ref:`TextFilterState ` .. _function-imgui_widgets_builtin_set_scroll_here_y_float: .. das:function:: set_scroll_here_y(center_y_ratio: float = 1f) `SetScrollHereY(center_y_ratio)` — scrolls the current window so the recently-submitted item is anchored at the given vertical ratio (0=top, 0.5=middle, 1=bottom). Common pattern: tail-follow scrolling regions call `set_scroll_here_y(1.0f)` after the last entry. :Arguments: * **center_y_ratio** : float .. _function-imgui_widgets_builtin_set_keyboard_focus_here_int: .. das:function:: set_keyboard_focus_here(offset: int = 0) `SetKeyboardFocusHere(offset)` — moves keyboard focus to the item N items ahead (`offset = 0`) or behind (`offset = -1`, the item that was just submitted). REPL-style inputs use `-1` after Enter to refocus the editbox for the next command. :Arguments: * **offset** : int .. _function-imgui_widgets_builtin_set_item_default_focus: .. das:function:: set_item_default_focus() `SetItemDefaultFocus()` — marks the previous item as the default focus target on first frame of a window. Used on the primary input widget so the user can start typing immediately. .. _function-imgui_widgets_builtin_log_to_clipboard_int: .. das:function:: log_to_clipboard(auto_open_depth: int = -1) `LogToClipboard(auto_open_depth)` — starts capturing subsequent text-emitting widgets to the OS clipboard until `log_finish()` is called. `auto_open_depth = -1` means capture all depths. :Arguments: * **auto_open_depth** : int .. _function-imgui_widgets_builtin_log_finish: .. das:function:: log_finish() `LogFinish()` — stops the active log capture started by `log_to_clipboard` (or any other `LogTo*` call) and finalizes the clipboard contents. .. _function-imgui_widgets_builtin_log_text_string: .. das:function:: log_text(s: string) `LogText(s)` — append literal text into the active log capture without rendering. Only meaningful between `log_to_clipboard()` and `log_finish()` (or other `LogTo*` brackets). :Arguments: * **s** : string