API reference
Preparing search index…

ImGui.ImGuiIOFields

Context configuration and live input/output state; native code updates outputs.

interface ImGuiIOFields {
    AppAcceptingEvents: boolean;
    AppFocusLost: boolean;
    BackendFlags: number;
    ConfigDebugBeginReturnValueLoop: boolean;
    ConfigDebugBeginReturnValueOnce: boolean;
    ConfigDebugHighlightIdConflicts: boolean;
    ConfigDebugHighlightIdConflictsShowItemPicker: boolean;
    ConfigDebugIgnoreFocusLoss: boolean;
    ConfigDebugIniSettings: boolean;
    ConfigDebugIsDebuggerPresent: boolean;
    ConfigDragClickToInputText: boolean;
    ConfigErrorRecovery: boolean;
    ConfigErrorRecoveryEnableAssert: boolean;
    ConfigErrorRecoveryEnableDebugLog: boolean;
    ConfigErrorRecoveryEnableTooltip: boolean;
    ConfigFlags: number;
    ConfigInputTextCursorBlink: boolean;
    ConfigInputTextEnterKeepActive: boolean;
    ConfigInputTrickleEventQueue: boolean;
    ConfigMacOSXBehaviors: boolean;
    ConfigMemoryCompactTimer: number;
    ConfigNavCaptureKeyboard: boolean;
    ConfigNavCursorVisibleAlways: boolean;
    ConfigNavCursorVisibleAuto: boolean;
    ConfigNavEscapeClearFocusItem: boolean;
    ConfigNavEscapeClearFocusWindow: boolean;
    ConfigNavMoveSetMousePos: boolean;
    ConfigNavSwapGamepadButtons: boolean;
    ConfigScrollbarScrollByPage: boolean;
    ConfigWindowsCopyContentsWithCtrlC: boolean;
    ConfigWindowsMoveFromTitleBarOnly: boolean;
    ConfigWindowsResizeFromEdges: boolean;
    DeltaTime: number;
    DisplayFramebufferScaleX: number;
    DisplayFramebufferScaleY: number;
    DisplaySizeX: number;
    DisplaySizeY: number;
    FontAllowUserScaling: boolean;
    FontGlobalScale: number;
    Framerate: number;
    IniSavingRate: number;
    InputQueueSurrogate: number;
    KeyAlt: boolean;
    KeyCtrl: boolean;
    KeyMods: number;
    KeyRepeatDelay: number;
    KeyRepeatRate: number;
    KeyShift: boolean;
    KeySuper: boolean;
    MetricsActiveWindows: number;
    MetricsRenderIndices: number;
    MetricsRenderVertices: number;
    MetricsRenderWindows: number;
    MouseClicked0: boolean;
    MouseClicked1: boolean;
    MouseClicked2: boolean;
    MouseClicked3: boolean;
    MouseClicked4: boolean;
    MouseClickedCount0: number;
    MouseClickedCount1: number;
    MouseClickedCount2: number;
    MouseClickedCount3: number;
    MouseClickedCount4: number;
    MouseClickedLastCount0: number;
    MouseClickedLastCount1: number;
    MouseClickedLastCount2: number;
    MouseClickedLastCount3: number;
    MouseClickedLastCount4: number;
    MouseClickedTime0: number;
    MouseClickedTime1: number;
    MouseClickedTime2: number;
    MouseClickedTime3: number;
    MouseClickedTime4: number;
    MouseCtrlLeftAsRightClick: boolean;
    MouseDeltaX: number;
    MouseDeltaY: number;
    MouseDoubleClicked0: boolean;
    MouseDoubleClicked1: boolean;
    MouseDoubleClicked2: boolean;
    MouseDoubleClicked3: boolean;
    MouseDoubleClicked4: boolean;
    MouseDoubleClickMaxDist: number;
    MouseDoubleClickTime: number;
    MouseDown0: boolean;
    MouseDown1: boolean;
    MouseDown2: boolean;
    MouseDown3: boolean;
    MouseDown4: boolean;
    MouseDownDuration0: number;
    MouseDownDuration1: number;
    MouseDownDuration2: number;
    MouseDownDuration3: number;
    MouseDownDuration4: number;
    MouseDownDurationPrev0: number;
    MouseDownDurationPrev1: number;
    MouseDownDurationPrev2: number;
    MouseDownDurationPrev3: number;
    MouseDownDurationPrev4: number;
    MouseDownOwned0: boolean;
    MouseDownOwned1: boolean;
    MouseDownOwned2: boolean;
    MouseDownOwned3: boolean;
    MouseDownOwned4: boolean;
    MouseDownOwnedUnlessPopupClose0: boolean;
    MouseDownOwnedUnlessPopupClose1: boolean;
    MouseDownOwnedUnlessPopupClose2: boolean;
    MouseDownOwnedUnlessPopupClose3: boolean;
    MouseDownOwnedUnlessPopupClose4: boolean;
    MouseDragMaxDistanceSqr0: number;
    MouseDragMaxDistanceSqr1: number;
    MouseDragMaxDistanceSqr2: number;
    MouseDragMaxDistanceSqr3: number;
    MouseDragMaxDistanceSqr4: number;
    MouseDragThreshold: number;
    MouseDrawCursor: boolean;
    MousePosPrevX: number;
    MousePosPrevY: number;
    MousePosX: number;
    MousePosY: number;
    MouseReleased0: boolean;
    MouseReleased1: boolean;
    MouseReleased2: boolean;
    MouseReleased3: boolean;
    MouseReleased4: boolean;
    MouseReleasedTime0: number;
    MouseReleasedTime1: number;
    MouseReleasedTime2: number;
    MouseReleasedTime3: number;
    MouseReleasedTime4: number;
    MouseSource: number;
    MouseWheel: number;
    MouseWheelH: number;
    MouseWheelRequestAxisSwap: boolean;
    NavActive: boolean;
    NavVisible: boolean;
    PenPressure: number;
    WantCaptureKeyboard: boolean;
    WantCaptureMouse: boolean;
    WantCaptureMouseUnlessPopupClose: boolean;
    WantSaveIniSettings: boolean;
    WantSetMousePos: boolean;
    WantTextInput: boolean;
}
Source & inheritance
Member directory142

Properties

Properties

AppAcceptingEvents: boolean

Input event acceptance gate; change through IO_SetAppAcceptingEvents().

Source & inheritance
AppFocusLost: boolean

Application focus-loss state; update through IO_AddFocusEvent(), not directly.

Source & inheritance
BackendFlags: number

ImGuiBackendFlags advertising capabilities actually supported by the backend.

Source & inheritance
ConfigDebugBeginReturnValueLoop: boolean

Cycle false Begin/BeginChild results through window depths for testing.

Source & inheritance
ConfigDebugBeginReturnValueOnce: boolean

Make first Begin/BeginChild calls return false to test matching End calls.

Source & inheritance
ConfigDebugHighlightIdConflicts: boolean

Highlight duplicate item IDs and show an error popup.

Source & inheritance
ConfigDebugHighlightIdConflictsShowItemPicker: boolean

Include the Item Picker button in the ID-conflict popup.

Source & inheritance
ConfigDebugIgnoreFocusLoss: boolean

Ignore focus-loss events instead of clearing input state during debugging.

Source & inheritance
ConfigDebugIniSettings: boolean

Add diagnostic comments when saving .ini settings, at extra saving cost.

Source & inheritance
ConfigDebugIsDebuggerPresent: boolean

Enable debug-break tools only when a native debugger is attached.

Source & inheritance
ConfigDragClickToInputText: boolean

A click-release without dragging switches Drag widgets to text input.

Source & inheritance
ConfigErrorRecovery: boolean

Enable best-effort recovery from supported API misuse; not crash protection.

Source & inheritance
ConfigErrorRecoveryEnableAssert: boolean

Trigger native assertions on recoverable errors.

Source & inheritance
ConfigErrorRecoveryEnableDebugLog: boolean

Write recoverable errors to the ImGui debug log.

Source & inheritance
ConfigErrorRecoveryEnableTooltip: boolean

Show tooltips for recoverable errors; keep at least one error channel enabled.

Source & inheritance
ConfigFlags: number

Application ImGuiConfigFlags, including keyboard/gamepad navigation.

Source & inheritance
ConfigInputTextCursorBlink: boolean

Enable blinking of the text-edit caret.

Source & inheritance
ConfigInputTextEnterKeepActive: boolean

Keep single-line text input active and select its contents after Enter.

Source & inheritance
ConfigInputTrickleEventQueue: boolean

Spread conflicting queued inputs across frames to preserve short clicks.

Source & inheritance
ConfigMacOSXBehaviors: boolean

Use macOS editing, shortcut and selection conventions, including Cmd for Ctrl.

Source & inheritance
ConfigMemoryCompactTimer: number

Seconds before freeing unused window/table buffers; -1 disables compaction.

Source & inheritance
ConfigNavCaptureKeyboard: boolean

Set WantCaptureKeyboard while keyboard/gamepad navigation is active.

Source & inheritance
ConfigNavCursorVisibleAlways: boolean

Keep the navigation cursor visible regardless of mouse use.

Source & inheritance
ConfigNavCursorVisibleAuto: boolean

Show the navigation cursor on directional input and hide it on mouse clicks.

Source & inheritance
ConfigNavEscapeClearFocusItem: boolean

Allow Escape to clear the focused item and its navigation highlight.

Source & inheritance
ConfigNavEscapeClearFocusWindow: boolean

Allow Escape to clear window focus as well as item focus.

Source & inheritance
ConfigNavMoveSetMousePos: boolean

Let navigation move MousePos and request cursor warping via WantSetMousePos.

Source & inheritance
ConfigNavSwapGamepadButtons: boolean

Swap gamepad Activate and Cancel buttons for the Nintendo-style layout.

Source & inheritance
ConfigScrollbarScrollByPage: boolean

Scroll by pages outside the grab; Shift+click still seeks to the click.

Source & inheritance
ConfigWindowsCopyContentsWithCtrlC: boolean

Experimental Ctrl+C copy of focused window text in submission order.

Source & inheritance
ConfigWindowsMoveFromTitleBarOnly: boolean

Restrict dragging to title bars, except for windows with no title bar.

Source & inheritance
ConfigWindowsResizeFromEdges: boolean

Enable resizing from edges and the lower-left corner; needs cursor support.

Source & inheritance
DeltaTime: number

Positive elapsed seconds since the previous frame.

Source & inheritance
DisplayFramebufferScaleX: number

Horizontal framebuffer pixels per display pixel, typically one or two.

Source & inheritance
DisplayFramebufferScaleY: number

Vertical framebuffer pixels per display pixel, typically one or two.

Source & inheritance
DisplaySizeX: number

Main display width in display pixels, before framebuffer scaling.

Source & inheritance
DisplaySizeY: number

Main display height in display pixels, before framebuffer scaling.

Source & inheritance
FontAllowUserScaling: boolean

Obsolete option allowing Ctrl+wheel to scale an individual window's text.

Source & inheritance
FontGlobalScale: number

Global font size multiplier; does not rebuild the font atlas.

Source & inheritance
Framerate: number

Estimated frames per second from a rolling 60-frame DeltaTime average.

Source & inheritance
IniSavingRate: number

Minimum interval in seconds between automatic .ini settings saves.

Source & inheritance
InputQueueSurrogate: number

Pending UTF-16 high surrogate for IO_AddInputCharacterUTF16(); zero if none.

Source & inheritance
KeyAlt: boolean

Whether the Alt modifier is currently held.

Source & inheritance
KeyCtrl: boolean

Whether the Control modifier is currently held.

Source & inheritance
KeyMods: number

ImGuiMod bitmask merged by NewFrame(); treat as read-only derived state.

Source & inheritance
KeyRepeatDelay: number

Initial hold delay in seconds before key or repeat-button repetition.

Source & inheritance
KeyRepeatRate: number

Interval in seconds between repeated key or button activations.

Source & inheritance
KeyShift: boolean

Whether the Shift modifier is currently held.

Source & inheritance
KeySuper: boolean

Whether the Cmd/Super/Windows modifier is currently held.

Source & inheritance
MetricsActiveWindows: number

Number of active windows, including active windows that are not visible.

Source & inheritance
MetricsRenderIndices: number

Index count emitted by the last Render(), three per triangle.

Source & inheritance
MetricsRenderVertices: number

Vertex count emitted by the last Render() call.

Source & inheritance
MetricsRenderWindows: number

Number of visible windows rendered.

Source & inheritance
MouseClicked0: boolean

Button 0 transitioned from released to pressed this frame.

Source & inheritance
MouseClicked1: boolean

Button 1 transitioned from released to pressed this frame.

Source & inheritance
MouseClicked2: boolean

Button 2 transitioned from released to pressed this frame.

Source & inheritance
MouseClicked3: boolean

Button 3 transitioned from released to pressed this frame.

Source & inheritance
MouseClicked4: boolean

Button 4 transitioned from released to pressed this frame.

Source & inheritance
MouseClickedCount0: number

Button 0 click sequence count this frame; zero if no new click.

Source & inheritance
MouseClickedCount1: number

Button 1 click sequence count this frame; zero if no new click.

Source & inheritance
MouseClickedCount2: number

Button 2 click sequence count this frame; zero if no new click.

Source & inheritance
MouseClickedCount3: number

Button 3 click sequence count this frame; zero if no new click.

Source & inheritance
MouseClickedCount4: number

Button 4 click sequence count this frame; zero if no new click.

Source & inheritance
MouseClickedLastCount0: number

Button 0 last click sequence count, retained after release.

Source & inheritance
MouseClickedLastCount1: number

Button 1 last click sequence count, retained after release.

Source & inheritance
MouseClickedLastCount2: number

Button 2 last click sequence count, retained after release.

Source & inheritance
MouseClickedLastCount3: number

Button 3 last click sequence count, retained after release.

Source & inheritance
MouseClickedLastCount4: number

Button 4 last click sequence count, retained after release.

Source & inheritance
MouseClickedTime0: number

Last button 0 click time in context seconds, used for multi-click detection.

Source & inheritance
MouseClickedTime1: number

Last button 1 click time in context seconds, used for multi-click detection.

Source & inheritance
MouseClickedTime2: number

Last button 2 click time in context seconds, used for multi-click detection.

Source & inheritance
MouseClickedTime3: number

Last button 3 click time in context seconds, used for multi-click detection.

Source & inheritance
MouseClickedTime4: number

Last button 4 click time in context seconds, used for multi-click detection.

Source & inheritance
MouseCtrlLeftAsRightClick: boolean

Current macOS Ctrl+left click is being simulated as a right click.

Source & inheritance
MouseDeltaX: number

Horizontal mouse movement in pixels; zero if either position is invalid.

Source & inheritance
MouseDeltaY: number

Vertical mouse movement in pixels; zero if either position is invalid.

Source & inheritance
MouseDoubleClicked0: boolean

Button 0 double-clicked this frame; MouseClickedCount0 equals two.

Source & inheritance
MouseDoubleClicked1: boolean

Button 1 double-clicked this frame; MouseClickedCount1 equals two.

Source & inheritance
MouseDoubleClicked2: boolean

Button 2 double-clicked this frame; MouseClickedCount2 equals two.

Source & inheritance
MouseDoubleClicked3: boolean

Button 3 double-clicked this frame; MouseClickedCount3 equals two.

Source & inheritance
MouseDoubleClicked4: boolean

Button 4 double-clicked this frame; MouseClickedCount4 equals two.

Source & inheritance
MouseDoubleClickMaxDist: number

Maximum distance in pixels between clicks in a double-click sequence.

Source & inheritance
MouseDoubleClickTime: number

Maximum interval in seconds for successive clicks to form a double-click.

Source & inheritance
MouseDown0: boolean

Current left mouse button down state (button 0).

Source & inheritance
MouseDown1: boolean

Current right mouse button down state (button 1).

Source & inheritance
MouseDown2: boolean

Current middle mouse button down state (button 2).

Source & inheritance
MouseDown3: boolean

Current first extra mouse button down state (button 3).

Source & inheritance
MouseDown4: boolean

Current second extra mouse button down state (button 4).

Source & inheritance
MouseDownDuration0: number

Button 0 hold seconds; -1 means released, zero means just pressed.

Source & inheritance
MouseDownDuration1: number

Button 1 hold seconds; -1 means released, zero means just pressed.

Source & inheritance
MouseDownDuration2: number

Button 2 hold seconds; -1 means released, zero means just pressed.

Source & inheritance
MouseDownDuration3: number

Button 3 hold seconds; -1 means released, zero means just pressed.

Source & inheritance
MouseDownDuration4: number

Button 4 hold seconds; -1 means released, zero means just pressed.

Source & inheritance
MouseDownDurationPrev0: number

Previous frame's button 0 hold seconds; -1 means it was released.

Source & inheritance
MouseDownDurationPrev1: number

Previous frame's button 1 hold seconds; -1 means it was released.

Source & inheritance
MouseDownDurationPrev2: number

Previous frame's button 2 hold seconds; -1 means it was released.

Source & inheritance
MouseDownDurationPrev3: number

Previous frame's button 3 hold seconds; -1 means it was released.

Source & inheritance
MouseDownDurationPrev4: number

Previous frame's button 4 hold seconds; -1 means it was released.

Source & inheritance
MouseDownOwned0: boolean

Button 0 press began in an ImGui window or in popup-blocked empty space.

Source & inheritance
MouseDownOwned1: boolean

Button 1 press began in an ImGui window or in popup-blocked empty space.

Source & inheritance
MouseDownOwned2: boolean

Button 2 press began in an ImGui window or in popup-blocked empty space.

Source & inheritance
MouseDownOwned3: boolean

Button 3 press began in an ImGui window or in popup-blocked empty space.

Source & inheritance
MouseDownOwned4: boolean

Button 4 press began in an ImGui window or in popup-blocked empty space.

Source & inheritance
MouseDownOwnedUnlessPopupClose0: boolean

Button 0 press belongs to ImGui, excluding ordinary popup-dismiss clicks.

Source & inheritance
MouseDownOwnedUnlessPopupClose1: boolean

Button 1 press belongs to ImGui, excluding ordinary popup-dismiss clicks.

Source & inheritance
MouseDownOwnedUnlessPopupClose2: boolean

Button 2 press belongs to ImGui, excluding ordinary popup-dismiss clicks.

Source & inheritance
MouseDownOwnedUnlessPopupClose3: boolean

Button 3 press belongs to ImGui, excluding ordinary popup-dismiss clicks.

Source & inheritance
MouseDownOwnedUnlessPopupClose4: boolean

Button 4 press belongs to ImGui, excluding ordinary popup-dismiss clicks.

Source & inheritance
MouseDragMaxDistanceSqr0: number

Maximum squared pixel distance from button 0's click origin while held.

Source & inheritance
MouseDragMaxDistanceSqr1: number

Maximum squared pixel distance from button 1's click origin while held.

Source & inheritance
MouseDragMaxDistanceSqr2: number

Maximum squared pixel distance from button 2's click origin while held.

Source & inheritance
MouseDragMaxDistanceSqr3: number

Maximum squared pixel distance from button 3's click origin while held.

Source & inheritance
MouseDragMaxDistanceSqr4: number

Maximum squared pixel distance from button 4's click origin while held.

Source & inheritance
MouseDragThreshold: number

Travel distance in pixels before a held mouse button counts as dragging.

Source & inheritance
MouseDrawCursor: boolean

Ask ImGui to render a software mouse cursor.

Source & inheritance
MousePosPrevX: number

Previous mouse X in display pixels; -3.4028234663852886e38 means unavailable.

Source & inheritance
MousePosPrevY: number

Previous mouse Y in display pixels; -3.4028234663852886e38 means unavailable.

Source & inheritance
MousePosX: number

Mouse display X in pixels; -3.4028234663852886e38 means unavailable.

Source & inheritance
MousePosY: number

Mouse display Y in pixels; -3.4028234663852886e38 means unavailable.

Source & inheritance
MouseReleased0: boolean

Button 0 transitioned from pressed to released this frame.

Source & inheritance
MouseReleased1: boolean

Button 1 transitioned from pressed to released this frame.

Source & inheritance
MouseReleased2: boolean

Button 2 transitioned from pressed to released this frame.

Source & inheritance
MouseReleased3: boolean

Button 3 transitioned from pressed to released this frame.

Source & inheritance
MouseReleased4: boolean

Button 4 transitioned from pressed to released this frame.

Source & inheritance
MouseReleasedTime0: number

Last button 0 release time in seconds on the ImGui context clock.

Source & inheritance
MouseReleasedTime1: number

Last button 1 release time in seconds on the ImGui context clock.

Source & inheritance
MouseReleasedTime2: number

Last button 2 release time in seconds on the ImGui context clock.

Source & inheritance
MouseReleasedTime3: number

Last button 3 release time in seconds on the ImGui context clock.

Source & inheritance
MouseReleasedTime4: number

Last button 4 release time in seconds on the ImGui context clock.

Source & inheritance
MouseSource: number

ImGuiMouseSource identifying mouse, touchscreen or pen input.

Source & inheritance
MouseWheel: number

Vertical wheel delta this frame; positive scrolls up, about five lines/unit.

Source & inheritance
MouseWheelH: number

Horizontal wheel delta this frame; positive scrolls left, negative right.

Source & inheritance
MouseWheelRequestAxisSwap: boolean

Shift requests vertical-to-horizontal wheel conversion on non-macOS systems.

Source & inheritance
NavActive: boolean

A focused window currently accepts keyboard/gamepad navigation.

Source & inheritance
NavVisible: boolean

Keyboard/gamepad navigation is allowed and its highlight is visible.

Source & inheritance
PenPressure: number

Touch/pen pressure from zero to one; currently unused by ImGui itself.

Source & inheritance
WantCaptureKeyboard: boolean

Withhold keyboard input from the app when true; always feed it to ImGui.

Source & inheritance
WantCaptureMouse: boolean

Withhold mouse input from the app when true; always still feed it to ImGui.

Source & inheritance
WantCaptureMouseUnlessPopupClose: boolean

Mouse capture excluding clicks on empty space that only close a popup.

Source & inheritance
WantSaveIniSettings: boolean

Manual .ini save requested; clear this flag after saving settings.

Source & inheritance
WantSetMousePos: boolean

Ask the backend to move the system cursor to the navigation-updated MousePos.

Source & inheritance
WantTextInput: boolean

Request text entry, for example by displaying an on-screen keyboard.

Source & inheritance

Icons made by Lorc, Delapouite & Skoll · game-icons.net · CC BY 3.0