Package imgui
Class ImGuiIO
java.lang.Object
imgui.binding.ImGuiStruct
imgui.ImGuiIO
Communicate most settings and inputs/outputs to Dear ImGui using this structure.
Access via ImGui::GetIO(). Read 'Programmer guide' section in .cpp file for general usage.
-
Field Summary
Fields inherited from class imgui.binding.ImGuiStruct
ptr -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidaddBackendFlags(int flags) See ImGuiBackendFlags enum.voidaddConfigFlags(int flags) See ImGuiConfigFlags enum.voidaddFocusEvent(boolean focused) Queue a gain/loss of focus for the application (generally based on OS/platform focus of your window)voidaddInputCharacter(int c) Queue new character input.voidQueue new characters input from a UTF-8 string.voidaddInputCharacterUTF16(short c) Queue new character input from a UTF-16 character, it can be a surrogatevoidaddKeyAnalogEvent(int key, boolean down, float v) Queue a new key down/up event for analog values (e.g.voidaddKeyEvent(int key, boolean down) Queue a new key down/up event.voidaddMouseButtonEvent(int button, boolean down) Queue a mouse button changevoidaddMousePosEvent(float x, float y) Queue a mouse position update.voidaddMouseSourceEvent(int source) Queue a mouse source change (Mouse/TouchScreen/Pen)voidaddMouseViewportEvent(int id) Queue a mouse hovered viewport.voidaddMouseWheelEvent(float whX, float whY) Queue a mouse wheel update.voidClear all incoming events.voidClear current keyboard/gamepad state + current frame text input buffer.voidClear current mouse state.booleanOnly modify via SetAppAcceptingEvents().booleanOnly modify via AddFocusEvent().intSee ImGuiBackendFlags enum.Optional: Platform backend name (informational only! will be displayed in About Window) + User data for backend/wrappers to store their own stuff.booleanSome calls to Begin()/BeginChild() will return false.booleanTools to test correct Begin/End and BeginChild/EndChild behaviors.booleanHighlight and show an error message popup when multiple items have conflicting identifiers.booleanOption to deactivate io.AddFocusEvent(false) handling.booleanOption to audit .ini data Save .ini data with extra comments (particularly helpful for Docking, but makes saving slower)booleanOption to enable various debug tools showing buttons that will call the IM_DEBUG_BREAK() macro.booleanbooleanSimplified docking mode: disable window merging into the same tab-bar, so docking is limited to splitting windows.booleanSimplified docking mode: disable window splitting, so docking is limited to merging multiple windows together into tab-bars.booleanMake window or viewport transparent when docking and only display docking boxes on the target viewport.booleanEnable docking with holding Shift key (reduce visual noise, allows dropping in wider space)boolean[EXPERIMENTAL] Automatically overwritestyle.FontScaleDpiwhen monitor DPI changes.boolean[EXPERIMENTAL] Scale Dear ImGui and platform windows when monitor DPI changes.boolean[BETA] Enable turning DragXXX widgets into text input with a simple mouse click-release (without moving).booleanEnable error recovery support.booleanEnable asserts on recoverable errors.booleanEnable debug log output on recoverable errors.booleanEnable tooltip on recoverable errors.intSee ImGuiConfigFlags enum.booleanSet to false to disable blinking cursor, for users who consider it distracting.boolean[BETA] Pressing Enter will keep item active and select contents (single-line only).booleanEnable input queue trickling: some types of events submitted during the same frame (e.g.booleanOS X style: Text editing cursor movement using Alt instead of Ctrl, Shortcuts using Cmd/Super instead of Ctrl, Line/Text Start and End using Cmd+Arrows instead of Home/End, Double click selects by word instead of selecting whole text, Multi-selection in lists uses Cmd/Super instead of Ctrlboolean[Timer (in seconds) to free transient windows/tables memory buffers when unused.booleanSet to make all floating imgui windows always create their own viewport.booleanDisable default OS window decoration flag for secondary viewports.booleanDisable default OS parenting to main viewport for secondary viewports.booleanDisable default OS task bar icon flag for secondary viewports.booleanEnable allowing to move windows only when clicking on their title bar.booleanEnable resizing of windows from their edges and from the lower-left corner.getCtx()Parent UI context (needs to be set explicitly by parent).floatTime elapsed since last frame, in seconds.For retina display or other situations where window coordinates are different from framebuffer coordinates.voidFor retina display or other situations where window coordinates are different from framebuffer coordinates.floatFor retina display or other situations where window coordinates are different from framebuffer coordinates.floatFor retina display or other situations where window coordinates are different from framebuffer coordinates.Main display size, in pixels (generally ==GetMainViewport()->Size).voidgetDisplaySize(ImVec2 dst) Main display size, in pixels (generally ==GetMainViewport()->Size).floatMain display size, in pixels (generally ==GetMainViewport()->Size).floatMain display size, in pixels (generally ==GetMainViewport()->Size).booleanAllow user scaling text of individual window with CTRL+Wheel.Font to use on NewFrame().floatGlobal scale all fontsgetFonts()Font atlas: load, rasterize and pack one or more fonts into a single texture.floatEstimate of application framerate (rolling average over 60 frames, based on io.DeltaTime), in frame per second.Path to .ini file.floatMinimum time between saving positions/sizes to .ini file, in seconds.shortFor AddInputCharacterUTF16booleanKeyboard modifier pressed: AltbooleanKeyboard modifier pressed: ControlintKey mods flags (same as io.KeyCtrl/KeyShift/KeyAlt/KeySuper but merged into flags), updated by NewFrame()floatWhen holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.).floatWhen holding a key/button, rate at which it repeats, in seconds.Key state for all known keys.booleanKeyboard modifier pressed: ShiftbooleanKeyboard modifier pressed: Cmd/Super/WindowsPath to .log file (default parameter to ImGui::LogToFile when no file is specified).intNumber of active windowsintIndices output during last call to Render() = number of triangles * 3intVertices output during last call to Render()intNumber of visible windowsboolean[]Mouse button went from !Down to Down (same as MouseClickedCount[x] != 0)booleangetMouseClicked(int idx) Mouse button went from !Down to Down (same as MouseClickedCount[x] != 0)int[]== 0 (not clicked), == 1 (same as MouseClicked[]), == 2 (double-clicked), == 3 (triple-clicked) etc.intgetMouseClickedCount(int idx) == 0 (not clicked), == 1 (same as MouseClicked[]), == 2 (double-clicked), == 3 (triple-clicked) etc.int[]Count successive number of clicks.intgetMouseClickedLastCount(int idx) Count successive number of clicks.ImVec2[]Position at time of clicking.double[]Time of last click (used to figure out double-click)doublegetMouseClickedTime(int idx) Time of last click (used to figure out double-click)boolean(OSX) Set to true when the current click was a ctrl-click that spawned a simulated right click.Mouse delta.voidgetMouseDelta(ImVec2 dst) Mouse delta.floatMouse delta.floatMouse delta.boolean[]Has mouse button been double-clicked? (same as MouseClickedCount[x] == 2)booleangetMouseDoubleClicked(int idx) Has mouse button been double-clicked? (same as MouseClickedCount[x] == 2)floatDistance threshold to stay in to validate a double-click, in pixels.floatTime for a double-click, in seconds.boolean[]Mouse buttons: 0=left, 1=right, 2=middle + extras (ImGuiMouseButton_COUNT == 5).booleangetMouseDown(int idx) Mouse buttons: 0=left, 1=right, 2=middle + extras (ImGuiMouseButton_COUNT == 5).float[]Duration the mouse button has been down (0.0f == just clicked)floatgetMouseDownDuration(int idx) Duration the mouse button has been down (0.0f == just clicked)float[]Previous time the mouse button has been downfloatgetMouseDownDurationPrev(int idx) Previous time the mouse button has been downboolean[]Track if button was clicked inside a dear imgui window or over void blocked by a popup.booleangetMouseDownOwned(int idx) Track if button was clicked inside a dear imgui window or over void blocked by a popup.boolean[]Track if button was clicked inside a dear imgui window.booleangetMouseDownOwnedUnlessPopupClose(int idx) Track if button was clicked inside a dear imgui window.ImVec2[]Maximum distance, absolute, on each axis, of how much mouse has traveled from the clicking pointfloat[]Squared maximum distance of how much mouse has traveled from the clicking pointfloatgetMouseDragMaxDistanceSqr(int idx) Squared maximum distance of how much mouse has traveled from the clicking pointfloatDistance threshold before considering we are dragging.booleanRequest ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor).int(Optional) When using multiple viewports: viewport the OS mouse cursor is hovering _IGNORING_ viewports with the ImGuiViewportFlags_NoInputs flag, and _REGARDLESS_ of whether another viewport is focused.Mouse position, in pixels.voidgetMousePos(ImVec2 dst) Mouse position, in pixels.Previous mouse position (note that MouseDelta is not necessary == MousePos-MousePosPrev, in case either position is invalid)voidgetMousePosPrev(ImVec2 dst) Previous mouse position (note that MouseDelta is not necessary == MousePos-MousePosPrev, in case either position is invalid)floatPrevious mouse position (note that MouseDelta is not necessary == MousePos-MousePosPrev, in case either position is invalid)floatPrevious mouse position (note that MouseDelta is not necessary == MousePos-MousePosPrev, in case either position is invalid)floatMouse position, in pixels.floatMouse position, in pixels.boolean[]Mouse button went from Down to !DownbooleangetMouseReleased(int idx) Mouse button went from Down to !DownfloatMouse wheel Vertical: 1 unit scrolls about 5 lines text.floatMouse wheel Horizontal.booleanOn a non-Mac system, holding SHIFT requests WheelY to perform the equivalent of a WheelX event.booleanKeyboard/Gamepad navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag.booleanKeyboard/Gamepad navigation is visible and allowed (will handle ImGuiKey_NavXXX events).floatTouch/Pen pressure (0.0f to 1.0f, should be>0.0f only when MouseDown[0] == true).booleanSet when Dear ImGui will use keyboard inputs, in this case do not dispatch them to your main game/application (either way, always pass keyboard inputs to imgui).booleanSet when Dear ImGui will use mouse inputs, in this case do not dispatch them to your main game/application (either way, always pass on mouse inputs to imgui).booleanAlternative to WantCaptureMouse: (WantCaptureMouse == true&&WantCaptureMouseUnlessPopupClose == false) when a click over void is expected to close a popup.booleanWhen manual .ini load/save is active (io.IniFilename == NULL), this will be set to notify your application that you can call SaveIniSettingsToMemory() and save yourself.booleanMousePos has been altered, backend should reposition mouse on next frame.booleanMobile/console: when set, you may display an on-screen keyboard.booleanhasBackendFlags(int flags) See ImGuiBackendFlags enum.booleanhasConfigFlags(int flags) See ImGuiConfigFlags enum.voidremoveBackendFlags(int flags) See ImGuiBackendFlags enum.voidremoveConfigFlags(int flags) See ImGuiConfigFlags enum.voidsetAppAcceptingEvents(boolean acceptingEvents) Set master flag for accepting key/mouse/text events (default to true).voidsetBackendFlags(int value) See ImGuiBackendFlags enum.voidsetBackendPlatformName(String value) Optional: Platform backend name (informational only! will be displayed in About Window) + User data for backend/wrappers to store their own stuff.voidsetBackendRendererName(String value) voidsetConfigDebugBeginReturnValueLoop(boolean value) Some calls to Begin()/BeginChild() will return false.voidsetConfigDebugBeginReturnValueOnce(boolean value) Tools to test correct Begin/End and BeginChild/EndChild behaviors.voidsetConfigDebugHighlightIdConflicts(boolean value) Highlight and show an error message popup when multiple items have conflicting identifiers.voidsetConfigDebugIgnoreFocusLoss(boolean value) Option to deactivate io.AddFocusEvent(false) handling.voidsetConfigDebugIniSettings(boolean value) Option to audit .ini data Save .ini data with extra comments (particularly helpful for Docking, but makes saving slower)voidsetConfigDebugIsDebuggerPresent(boolean value) Option to enable various debug tools showing buttons that will call the IM_DEBUG_BREAK() macro.voidsetConfigDockingAlwaysTabBar(boolean value) voidsetConfigDockingNoDockingOver(boolean value) Simplified docking mode: disable window merging into the same tab-bar, so docking is limited to splitting windows.voidsetConfigDockingNoSplit(boolean value) Simplified docking mode: disable window splitting, so docking is limited to merging multiple windows together into tab-bars.voidsetConfigDockingTransparentPayload(boolean value) Make window or viewport transparent when docking and only display docking boxes on the target viewport.voidsetConfigDockingWithShift(boolean value) Enable docking with holding Shift key (reduce visual noise, allows dropping in wider space)voidsetConfigDpiScaleFonts(boolean value) [EXPERIMENTAL] Automatically overwritestyle.FontScaleDpiwhen monitor DPI changes.voidsetConfigDpiScaleViewports(boolean value) [EXPERIMENTAL] Scale Dear ImGui and platform windows when monitor DPI changes.voidsetConfigDragClickToInputText(boolean value) [BETA] Enable turning DragXXX widgets into text input with a simple mouse click-release (without moving).voidsetConfigErrorRecovery(boolean value) Enable error recovery support.voidsetConfigErrorRecoveryEnableAssert(boolean value) Enable asserts on recoverable errors.voidsetConfigErrorRecoveryEnableDebugLog(boolean value) Enable debug log output on recoverable errors.voidsetConfigErrorRecoveryEnableTooltip(boolean value) Enable tooltip on recoverable errors.voidsetConfigFlags(int value) See ImGuiConfigFlags enum.voidsetConfigInputTextCursorBlink(boolean value) Set to false to disable blinking cursor, for users who consider it distracting.voidsetConfigInputTextEnterKeepActive(boolean value) [BETA] Pressing Enter will keep item active and select contents (single-line only).voidsetConfigInputTrickleEventQueue(boolean value) Enable input queue trickling: some types of events submitted during the same frame (e.g.voidsetConfigMacOSXBehaviors(boolean value) OS X style: Text editing cursor movement using Alt instead of Ctrl, Shortcuts using Cmd/Super instead of Ctrl, Line/Text Start and End using Cmd+Arrows instead of Home/End, Double click selects by word instead of selecting whole text, Multi-selection in lists uses Cmd/Super instead of CtrlvoidsetConfigMemoryCompactTimer(boolean value) [Timer (in seconds) to free transient windows/tables memory buffers when unused.voidsetConfigViewportsNoAutoMerge(boolean value) Set to make all floating imgui windows always create their own viewport.voidsetConfigViewportsNoDecoration(boolean value) Disable default OS window decoration flag for secondary viewports.voidsetConfigViewportsNoDefaultParent(boolean value) Disable default OS parenting to main viewport for secondary viewports.voidsetConfigViewportsNoTaskBarIcon(boolean value) Disable default OS task bar icon flag for secondary viewports.voidsetConfigWindowsMoveFromTitleBarOnly(boolean value) Enable allowing to move windows only when clicking on their title bar.voidsetConfigWindowsResizeFromEdges(boolean value) Enable resizing of windows from their edges and from the lower-left corner.voidsetCtx(ImGuiContext value) Parent UI context (needs to be set explicitly by parent).voidsetDeltaTime(float value) Time elapsed since last frame, in seconds.voidsetDisplayFramebufferScale(float valueX, float valueY) For retina display or other situations where window coordinates are different from framebuffer coordinates.voidsetDisplayFramebufferScale(ImVec2 value) For retina display or other situations where window coordinates are different from framebuffer coordinates.voidsetDisplaySize(float valueX, float valueY) Main display size, in pixels (generally ==GetMainViewport()->Size).voidsetDisplaySize(ImVec2 value) Main display size, in pixels (generally ==GetMainViewport()->Size).voidsetFontAllowUserScaling(boolean value) Allow user scaling text of individual window with CTRL+Wheel.voidsetFontDefault(ImFont value) Font to use on NewFrame().voidsetFontGlobalScale(float value) Global scale all fontsvoidsetFonts(ImFontAtlas value) Font atlas: load, rasterize and pack one or more fonts into a single texture.voidsetFramerate(float value) Estimate of application framerate (rolling average over 60 frames, based on io.DeltaTime), in frame per second.voidsetGetClipboardTextFn(ImStrSupplier getClipboardTextCallback) voidsetIniFilename(String value) Path to .ini file.voidsetIniSavingRate(float value) Minimum time between saving positions/sizes to .ini file, in seconds.voidsetInputQueueSurrogate(short value) For AddInputCharacterUTF16voidsetKeyAlt(boolean value) Keyboard modifier pressed: AltvoidsetKeyCtrl(boolean value) Keyboard modifier pressed: ControlvoidsetKeyEventNativeData(int key, int nativeKeycode, int nativeScancode) [Optional] Specify index for legacy<1.87IsKeyXXX() functions with native indices + specify native keycode, scancode.voidsetKeyEventNativeData(int key, int nativeKeycode, int nativeScancode, int nativeLegacyIndex) [Optional] Specify index for legacy<1.87IsKeyXXX() functions with native indices + specify native keycode, scancode.voidsetKeyMods(int value) Key mods flags (same as io.KeyCtrl/KeyShift/KeyAlt/KeySuper but merged into flags), updated by NewFrame()voidsetKeyRepeatDelay(float value) When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.).voidsetKeyRepeatRate(float value) When holding a key/button, rate at which it repeats, in seconds.voidsetKeysData(ImGuiKeyData[] value) Key state for all known keys.voidsetKeyShift(boolean value) Keyboard modifier pressed: ShiftvoidsetKeySuper(boolean value) Keyboard modifier pressed: Cmd/Super/WindowsvoidsetLogFilename(String value) Path to .log file (default parameter to ImGui::LogToFile when no file is specified).voidsetMetricsActiveWindows(int value) Number of active windowsvoidsetMetricsRenderIndices(int value) Indices output during last call to Render() = number of triangles * 3voidsetMetricsRenderVertices(int value) Vertices output during last call to Render()voidsetMetricsRenderWindows(int value) Number of visible windowsvoidsetMouseClicked(boolean[] value) Mouse button went from !Down to Down (same as MouseClickedCount[x] != 0)voidsetMouseClicked(int idx, boolean value) Mouse button went from !Down to Down (same as MouseClickedCount[x] != 0)voidsetMouseClickedCount(int[] value) == 0 (not clicked), == 1 (same as MouseClicked[]), == 2 (double-clicked), == 3 (triple-clicked) etc.voidsetMouseClickedCount(int idx, int value) == 0 (not clicked), == 1 (same as MouseClicked[]), == 2 (double-clicked), == 3 (triple-clicked) etc.voidsetMouseClickedLastCount(int[] value) Count successive number of clicks.voidsetMouseClickedLastCount(int idx, int value) Count successive number of clicks.voidsetMouseClickedPos(ImVec2[] value) Position at time of clicking.voidsetMouseClickedTime(double[] value) Time of last click (used to figure out double-click)voidsetMouseClickedTime(int idx, double value) Time of last click (used to figure out double-click)voidsetMouseCtrlLeftAsRightClick(boolean value) (OSX) Set to true when the current click was a ctrl-click that spawned a simulated right click.voidsetMouseDelta(float valueX, float valueY) Mouse delta.voidsetMouseDelta(ImVec2 value) Mouse delta.voidsetMouseDoubleClicked(boolean[] value) Has mouse button been double-clicked? (same as MouseClickedCount[x] == 2)voidsetMouseDoubleClicked(int idx, boolean value) Has mouse button been double-clicked? (same as MouseClickedCount[x] == 2)voidsetMouseDoubleClickMaxDist(float value) Distance threshold to stay in to validate a double-click, in pixels.voidsetMouseDoubleClickTime(float value) Time for a double-click, in seconds.voidsetMouseDown(boolean[] value) Mouse buttons: 0=left, 1=right, 2=middle + extras (ImGuiMouseButton_COUNT == 5).voidsetMouseDown(int idx, boolean value) Mouse buttons: 0=left, 1=right, 2=middle + extras (ImGuiMouseButton_COUNT == 5).voidsetMouseDownDuration(float[] value) Duration the mouse button has been down (0.0f == just clicked)voidsetMouseDownDuration(int idx, float value) Duration the mouse button has been down (0.0f == just clicked)voidsetMouseDownDurationPrev(float[] value) Previous time the mouse button has been downvoidsetMouseDownDurationPrev(int idx, float value) Previous time the mouse button has been downvoidsetMouseDownOwned(boolean[] value) Track if button was clicked inside a dear imgui window or over void blocked by a popup.voidsetMouseDownOwned(int idx, boolean value) Track if button was clicked inside a dear imgui window or over void blocked by a popup.voidsetMouseDownOwnedUnlessPopupClose(boolean[] value) Track if button was clicked inside a dear imgui window.voidsetMouseDownOwnedUnlessPopupClose(int idx, boolean value) Track if button was clicked inside a dear imgui window.voidsetMouseDragMaxDistanceAbs(ImVec2[] value) Maximum distance, absolute, on each axis, of how much mouse has traveled from the clicking pointvoidsetMouseDragMaxDistanceSqr(float[] value) Squared maximum distance of how much mouse has traveled from the clicking pointvoidsetMouseDragMaxDistanceSqr(int idx, float value) Squared maximum distance of how much mouse has traveled from the clicking pointvoidsetMouseDragThreshold(float value) Distance threshold before considering we are dragging.voidsetMouseDrawCursor(boolean value) Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor).voidsetMouseHoveredViewport(int value) (Optional) When using multiple viewports: viewport the OS mouse cursor is hovering _IGNORING_ viewports with the ImGuiViewportFlags_NoInputs flag, and _REGARDLESS_ of whether another viewport is focused.voidsetMousePos(float valueX, float valueY) Mouse position, in pixels.voidsetMousePos(ImVec2 value) Mouse position, in pixels.voidsetMousePosPrev(float valueX, float valueY) Previous mouse position (note that MouseDelta is not necessary == MousePos-MousePosPrev, in case either position is invalid)voidsetMousePosPrev(ImVec2 value) Previous mouse position (note that MouseDelta is not necessary == MousePos-MousePosPrev, in case either position is invalid)voidsetMouseReleased(boolean[] value) Mouse button went from Down to !DownvoidsetMouseReleased(int idx, boolean value) Mouse button went from Down to !DownvoidsetMouseWheel(float value) Mouse wheel Vertical: 1 unit scrolls about 5 lines text.voidsetMouseWheelH(float value) Mouse wheel Horizontal.voidsetMouseWheelRequestAxisSwap(boolean value) On a non-Mac system, holding SHIFT requests WheelY to perform the equivalent of a WheelX event.voidsetNavActive(boolean value) Keyboard/Gamepad navigation is currently allowed (will handle ImGuiKey_NavXXX events) = a window is focused and it doesn't use the ImGuiWindowFlags_NoNavInputs flag.voidsetNavVisible(boolean value) Keyboard/Gamepad navigation is visible and allowed (will handle ImGuiKey_NavXXX events).voidsetPenPressure(float value) Touch/Pen pressure (0.0f to 1.0f, should be>0.0f only when MouseDown[0] == true).voidsetSetClipboardTextFn(ImStrConsumer setClipboardTextCallback) voidsetWantCaptureKeyboard(boolean value) Set when Dear ImGui will use keyboard inputs, in this case do not dispatch them to your main game/application (either way, always pass keyboard inputs to imgui).voidsetWantCaptureMouse(boolean value) Set when Dear ImGui will use mouse inputs, in this case do not dispatch them to your main game/application (either way, always pass on mouse inputs to imgui).voidsetWantCaptureMouseUnlessPopupClose(boolean value) Alternative to WantCaptureMouse: (WantCaptureMouse == true&&WantCaptureMouseUnlessPopupClose == false) when a click over void is expected to close a popup.voidsetWantSaveIniSettings(boolean value) When manual .ini load/save is active (io.IniFilename == NULL), this will be set to notify your application that you can call SaveIniSettingsToMemory() and save yourself.voidsetWantSetMousePos(boolean value) MousePos has been altered, backend should reposition mouse on next frame.voidsetWantTextInput(boolean value) Mobile/console: when set, you may display an on-screen keyboard.Methods inherited from class imgui.binding.ImGuiStruct
isNotValidPtr, isValidPtr
-
Constructor Details
-
ImGuiIO
public ImGuiIO(long ptr)
-
-
Method Details
-
getConfigFlags
public int getConfigFlags()See ImGuiConfigFlags enum. Set by user/application. Gamepad/keyboard navigation options, etc. -
setConfigFlags
public void setConfigFlags(int value) See ImGuiConfigFlags enum. Set by user/application. Gamepad/keyboard navigation options, etc. -
addConfigFlags
public void addConfigFlags(int flags) See ImGuiConfigFlags enum. Set by user/application. Gamepad/keyboard navigation options, etc. -
removeConfigFlags
public void removeConfigFlags(int flags) See ImGuiConfigFlags enum. Set by user/application. Gamepad/keyboard navigation options, etc. -
hasConfigFlags
public boolean hasConfigFlags(int flags) See ImGuiConfigFlags enum. Set by user/application. Gamepad/keyboard navigation options, etc. -
getBackendFlags
public int getBackendFlags()See ImGuiBackendFlags enum. Set by backend to communicate features supported by the backend. -
setBackendFlags
public void setBackendFlags(int value) See ImGuiBackendFlags enum. Set by backend to communicate features supported by the backend. -
addBackendFlags
public void addBackendFlags(int flags) See ImGuiBackendFlags enum. Set by backend to communicate features supported by the backend. -
removeBackendFlags
public void removeBackendFlags(int flags) See ImGuiBackendFlags enum. Set by backend to communicate features supported by the backend. -
hasBackendFlags
public boolean hasBackendFlags(int flags) See ImGuiBackendFlags enum. Set by backend to communicate features supported by the backend. -
getDisplaySize
Main display size, in pixels (generally ==GetMainViewport()->Size). May change every frame. -
getDisplaySizeX
public float getDisplaySizeX()Main display size, in pixels (generally ==GetMainViewport()->Size). May change every frame. -
getDisplaySizeY
public float getDisplaySizeY()Main display size, in pixels (generally ==GetMainViewport()->Size). May change every frame. -
getDisplaySize
Main display size, in pixels (generally ==GetMainViewport()->Size). May change every frame. -
setDisplaySize
Main display size, in pixels (generally ==GetMainViewport()->Size). May change every frame. -
setDisplaySize
public void setDisplaySize(float valueX, float valueY) Main display size, in pixels (generally ==GetMainViewport()->Size). May change every frame. -
getDeltaTime
public float getDeltaTime()Time elapsed since last frame, in seconds. May change every frame. -
setDeltaTime
public void setDeltaTime(float value) Time elapsed since last frame, in seconds. May change every frame. -
getIniSavingRate
public float getIniSavingRate()Minimum time between saving positions/sizes to .ini file, in seconds. -
setIniSavingRate
public void setIniSavingRate(float value) Minimum time between saving positions/sizes to .ini file, in seconds. -
getIniFilename
Path to .ini file. Set NULL to disable automatic .ini loading/saving, if e.g. you want to manually load/save from memory. -
setIniFilename
Path to .ini file. Set NULL to disable automatic .ini loading/saving, if e.g. you want to manually load/save from memory. -
getLogFilename
Path to .log file (default parameter to ImGui::LogToFile when no file is specified). -
setLogFilename
Path to .log file (default parameter to ImGui::LogToFile when no file is specified). -
getFonts
Font atlas: load, rasterize and pack one or more fonts into a single texture. -
setFonts
Font atlas: load, rasterize and pack one or more fonts into a single texture. -
getFontGlobalScale
public float getFontGlobalScale()Global scale all fonts -
setFontGlobalScale
public void setFontGlobalScale(float value) Global scale all fonts -
getFontAllowUserScaling
public boolean getFontAllowUserScaling()Allow user scaling text of individual window with CTRL+Wheel. -
setFontAllowUserScaling
public void setFontAllowUserScaling(boolean value) Allow user scaling text of individual window with CTRL+Wheel. -
getFontDefault
Font to use on NewFrame(). Use NULL to uses Fonts->Fonts[0]. -
setFontDefault
Font to use on NewFrame(). Use NULL to uses Fonts->Fonts[0]. -
getDisplayFramebufferScale
For retina display or other situations where window coordinates are different from framebuffer coordinates. This generally ends up in ImDrawData::FramebufferScale. -
getDisplayFramebufferScaleX
public float getDisplayFramebufferScaleX()For retina display or other situations where window coordinates are different from framebuffer coordinates. This generally ends up in ImDrawData::FramebufferScale. -
getDisplayFramebufferScaleY
public float getDisplayFramebufferScaleY()For retina display or other situations where window coordinates are different from framebuffer coordinates. This generally ends up in ImDrawData::FramebufferScale. -
getDisplayFramebufferScale
For retina display or other situations where window coordinates are different from framebuffer coordinates. This generally ends up in ImDrawData::FramebufferScale. -
setDisplayFramebufferScale
For retina display or other situations where window coordinates are different from framebuffer coordinates. This generally ends up in ImDrawData::FramebufferScale. -
setDisplayFramebufferScale
public void setDisplayFramebufferScale(float valueX, float valueY) For retina display or other situations where window coordinates are different from framebuffer coordinates. This generally ends up in ImDrawData::FramebufferScale. -
getConfigDockingNoSplit
public boolean getConfigDockingNoSplit()Simplified docking mode: disable window splitting, so docking is limited to merging multiple windows together into tab-bars. -
setConfigDockingNoSplit
public void setConfigDockingNoSplit(boolean value) Simplified docking mode: disable window splitting, so docking is limited to merging multiple windows together into tab-bars. -
getConfigDockingNoDockingOver
public boolean getConfigDockingNoDockingOver()Simplified docking mode: disable window merging into the same tab-bar, so docking is limited to splitting windows. (new in imgui 1.92) -
setConfigDockingNoDockingOver
public void setConfigDockingNoDockingOver(boolean value) Simplified docking mode: disable window merging into the same tab-bar, so docking is limited to splitting windows. (new in imgui 1.92) -
getConfigDockingWithShift
public boolean getConfigDockingWithShift()Enable docking with holding Shift key (reduce visual noise, allows dropping in wider space) -
setConfigDockingWithShift
public void setConfigDockingWithShift(boolean value) Enable docking with holding Shift key (reduce visual noise, allows dropping in wider space) -
getConfigDockingAlwaysTabBar
public boolean getConfigDockingAlwaysTabBar() -
setConfigDockingAlwaysTabBar
public void setConfigDockingAlwaysTabBar(boolean value) -
getConfigDockingTransparentPayload
public boolean getConfigDockingTransparentPayload()Make window or viewport transparent when docking and only display docking boxes on the target viewport. Useful if rendering of multiple viewport cannot be synced. Best used with ConfigViewportsNoAutoMerge. -
setConfigDockingTransparentPayload
public void setConfigDockingTransparentPayload(boolean value) Make window or viewport transparent when docking and only display docking boxes on the target viewport. Useful if rendering of multiple viewport cannot be synced. Best used with ConfigViewportsNoAutoMerge. -
getConfigViewportsNoAutoMerge
public boolean getConfigViewportsNoAutoMerge()Set to make all floating imgui windows always create their own viewport. Otherwise, they are merged into the main host viewports when overlapping it. May also set ImGuiViewportFlags_NoAutoMerge on individual viewport. -
setConfigViewportsNoAutoMerge
public void setConfigViewportsNoAutoMerge(boolean value) Set to make all floating imgui windows always create their own viewport. Otherwise, they are merged into the main host viewports when overlapping it. May also set ImGuiViewportFlags_NoAutoMerge on individual viewport. -
getConfigViewportsNoTaskBarIcon
public boolean getConfigViewportsNoTaskBarIcon()Disable default OS task bar icon flag for secondary viewports. When a viewport doesn't want a task bar icon, ImGuiViewportFlags_NoTaskBarIcon will be set on it. -
setConfigViewportsNoTaskBarIcon
public void setConfigViewportsNoTaskBarIcon(boolean value) Disable default OS task bar icon flag for secondary viewports. When a viewport doesn't want a task bar icon, ImGuiViewportFlags_NoTaskBarIcon will be set on it. -
getConfigViewportsNoDecoration
public boolean getConfigViewportsNoDecoration()Disable default OS window decoration flag for secondary viewports. When a viewport doesn't want window decorations, ImGuiViewportFlags_NoDecoration will be set on it. Enabling decoration can create subsequent issues at OS levels (e.g. minimum window size). -
setConfigViewportsNoDecoration
public void setConfigViewportsNoDecoration(boolean value) Disable default OS window decoration flag for secondary viewports. When a viewport doesn't want window decorations, ImGuiViewportFlags_NoDecoration will be set on it. Enabling decoration can create subsequent issues at OS levels (e.g. minimum window size). -
getConfigViewportsNoDefaultParent
public boolean getConfigViewportsNoDefaultParent()Disable default OS parenting to main viewport for secondary viewports. By default, viewports are marked with ParentViewportId =<main_viewport>, expecting the platform backend to setup a parent/child relationship between the OS windows (some backend may ignore this). Set to true if you want the default to be 0, then all viewports will be top-level OS windows. -
setConfigViewportsNoDefaultParent
public void setConfigViewportsNoDefaultParent(boolean value) Disable default OS parenting to main viewport for secondary viewports. By default, viewports are marked with ParentViewportId =<main_viewport>, expecting the platform backend to setup a parent/child relationship between the OS windows (some backend may ignore this). Set to true if you want the default to be 0, then all viewports will be top-level OS windows. -
getConfigDpiScaleFonts
public boolean getConfigDpiScaleFonts()[EXPERIMENTAL] Automatically overwritestyle.FontScaleDpiwhen monitor DPI changes. Scales fonts but NOT sizes/padding (for now). Docking branch only. (since imgui 1.92) -
setConfigDpiScaleFonts
public void setConfigDpiScaleFonts(boolean value) [EXPERIMENTAL] Automatically overwritestyle.FontScaleDpiwhen monitor DPI changes. Scales fonts but NOT sizes/padding (for now). Docking branch only. (since imgui 1.92) -
getConfigDpiScaleViewports
public boolean getConfigDpiScaleViewports()[EXPERIMENTAL] Scale Dear ImGui and platform windows when monitor DPI changes. Docking branch only. (since imgui 1.92) -
setConfigDpiScaleViewports
public void setConfigDpiScaleViewports(boolean value) [EXPERIMENTAL] Scale Dear ImGui and platform windows when monitor DPI changes. Docking branch only. (since imgui 1.92) -
getConfigErrorRecovery
public boolean getConfigErrorRecovery()Enable error recovery support. Some errors won't be detected and lead to direct crashes if recovery is disabled. (since imgui 1.91.6) -
setConfigErrorRecovery
public void setConfigErrorRecovery(boolean value) Enable error recovery support. Some errors won't be detected and lead to direct crashes if recovery is disabled. (since imgui 1.91.6) -
getConfigErrorRecoveryEnableAssert
public boolean getConfigErrorRecoveryEnableAssert()Enable asserts on recoverable errors. By default calls IM_ASSERT() when returning from a failing IM_ASSERT_USER_ERROR(). (since imgui 1.91.6) -
setConfigErrorRecoveryEnableAssert
public void setConfigErrorRecoveryEnableAssert(boolean value) Enable asserts on recoverable errors. By default calls IM_ASSERT() when returning from a failing IM_ASSERT_USER_ERROR(). (since imgui 1.91.6) -
getConfigErrorRecoveryEnableDebugLog
public boolean getConfigErrorRecoveryEnableDebugLog()Enable debug log output on recoverable errors. (since imgui 1.91.6) -
setConfigErrorRecoveryEnableDebugLog
public void setConfigErrorRecoveryEnableDebugLog(boolean value) Enable debug log output on recoverable errors. (since imgui 1.91.6) -
getConfigErrorRecoveryEnableTooltip
public boolean getConfigErrorRecoveryEnableTooltip()Enable tooltip on recoverable errors. The tooltip includes a way to enable asserts if they were disabled. (since imgui 1.91.6) -
setConfigErrorRecoveryEnableTooltip
public void setConfigErrorRecoveryEnableTooltip(boolean value) Enable tooltip on recoverable errors. The tooltip includes a way to enable asserts if they were disabled. (since imgui 1.91.6) -
getConfigDebugHighlightIdConflicts
public boolean getConfigDebugHighlightIdConflicts()Highlight and show an error message popup when multiple items have conflicting identifiers. (since imgui 1.91.0) -
setConfigDebugHighlightIdConflicts
public void setConfigDebugHighlightIdConflicts(boolean value) Highlight and show an error message popup when multiple items have conflicting identifiers. (since imgui 1.91.0) -
getMouseDrawCursor
public boolean getMouseDrawCursor()Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). Cannot be easily renamed to 'io.ConfigXXX' because this is frequently used by backend implementations. -
setMouseDrawCursor
public void setMouseDrawCursor(boolean value) Request ImGui to draw a mouse cursor for you (if you are on a platform without a mouse cursor). Cannot be easily renamed to 'io.ConfigXXX' because this is frequently used by backend implementations. -
getConfigMacOSXBehaviors
public boolean getConfigMacOSXBehaviors()OS X style: Text editing cursor movement using Alt instead of Ctrl, Shortcuts using Cmd/Super instead of Ctrl, Line/Text Start and End using Cmd+Arrows instead of Home/End, Double click selects by word instead of selecting whole text, Multi-selection in lists uses Cmd/Super instead of Ctrl -
setConfigMacOSXBehaviors
public void setConfigMacOSXBehaviors(boolean value) OS X style: Text editing cursor movement using Alt instead of Ctrl, Shortcuts using Cmd/Super instead of Ctrl, Line/Text Start and End using Cmd+Arrows instead of Home/End, Double click selects by word instead of selecting whole text, Multi-selection in lists uses Cmd/Super instead of Ctrl -
getConfigInputTrickleEventQueue
public boolean getConfigInputTrickleEventQueue()Enable input queue trickling: some types of events submitted during the same frame (e.g. button down + up) will be spread over multiple frames, improving interactions with low framerates. -
setConfigInputTrickleEventQueue
public void setConfigInputTrickleEventQueue(boolean value) Enable input queue trickling: some types of events submitted during the same frame (e.g. button down + up) will be spread over multiple frames, improving interactions with low framerates. -
getConfigInputTextCursorBlink
public boolean getConfigInputTextCursorBlink()Set to false to disable blinking cursor, for users who consider it distracting. -
setConfigInputTextCursorBlink
public void setConfigInputTextCursorBlink(boolean value) Set to false to disable blinking cursor, for users who consider it distracting. -
getConfigInputTextEnterKeepActive
public boolean getConfigInputTextEnterKeepActive()[BETA] Pressing Enter will keep item active and select contents (single-line only). -
setConfigInputTextEnterKeepActive
public void setConfigInputTextEnterKeepActive(boolean value) [BETA] Pressing Enter will keep item active and select contents (single-line only). -
getConfigDragClickToInputText
public boolean getConfigDragClickToInputText()[BETA] Enable turning DragXXX widgets into text input with a simple mouse click-release (without moving). Not desirable on devices without a keyboard. -
setConfigDragClickToInputText
public void setConfigDragClickToInputText(boolean value) [BETA] Enable turning DragXXX widgets into text input with a simple mouse click-release (without moving). Not desirable on devices without a keyboard. -
getConfigWindowsResizeFromEdges
public boolean getConfigWindowsResizeFromEdges()Enable resizing of windows from their edges and from the lower-left corner. This requires (io.BackendFlags&ImGuiBackendFlags_HasMouseCursors) because it needs mouse cursor feedback. (This used to be a per-window ImGuiWindowFlags_ResizeFromAnySide flag) -
setConfigWindowsResizeFromEdges
public void setConfigWindowsResizeFromEdges(boolean value) Enable resizing of windows from their edges and from the lower-left corner. This requires (io.BackendFlags&ImGuiBackendFlags_HasMouseCursors) because it needs mouse cursor feedback. (This used to be a per-window ImGuiWindowFlags_ResizeFromAnySide flag) -
getConfigWindowsMoveFromTitleBarOnly
public boolean getConfigWindowsMoveFromTitleBarOnly()Enable allowing to move windows only when clicking on their title bar. Does not apply to windows without a title bar. -
setConfigWindowsMoveFromTitleBarOnly
public void setConfigWindowsMoveFromTitleBarOnly(boolean value) Enable allowing to move windows only when clicking on their title bar. Does not apply to windows without a title bar. -
getConfigMemoryCompactTimer
public boolean getConfigMemoryCompactTimer()[Timer (in seconds) to free transient windows/tables memory buffers when unused. Set to -1.0f to disable. -
setConfigMemoryCompactTimer
public void setConfigMemoryCompactTimer(boolean value) [Timer (in seconds) to free transient windows/tables memory buffers when unused. Set to -1.0f to disable. -
getMouseDoubleClickTime
public float getMouseDoubleClickTime()Time for a double-click, in seconds. -
setMouseDoubleClickTime
public void setMouseDoubleClickTime(float value) Time for a double-click, in seconds. -
getMouseDoubleClickMaxDist
public float getMouseDoubleClickMaxDist()Distance threshold to stay in to validate a double-click, in pixels. -
setMouseDoubleClickMaxDist
public void setMouseDoubleClickMaxDist(float value) Distance threshold to stay in to validate a double-click, in pixels. -
getMouseDragThreshold
public float getMouseDragThreshold()Distance threshold before considering we are dragging. -
setMouseDragThreshold
public void setMouseDragThreshold(float value) Distance threshold before considering we are dragging. -
getKeyRepeatDelay
public float getKeyRepeatDelay()When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). -
setKeyRepeatDelay
public void setKeyRepeatDelay(float value) When holding a key/button, time before it starts repeating, in seconds (for buttons in Repeat mode, etc.). -
getKeyRepeatRate
public float getKeyRepeatRate()When holding a key/button, rate at which it repeats, in seconds. -
setKeyRepeatRate
public void setKeyRepeatRate(float value) When holding a key/button, rate at which it repeats, in seconds. -
getConfigDebugIsDebuggerPresent
public boolean getConfigDebugIsDebuggerPresent()Option to enable various debug tools showing buttons that will call the IM_DEBUG_BREAK() macro. - The Item Picker tool will be available regardless of this being enabled, in order to maximize its discoverability. - Requires a debugger being attached, otherwise IM_DEBUG_BREAK() options will appear to crash your application. e.g. io.ConfigDebugIsDebuggerPresent = ::IsDebuggerPresent() on Win32, or refer to ImOsIsDebuggerPresent() imgui_test_engine/imgui_te_utils.cpp for a Unix compatible version). -
setConfigDebugIsDebuggerPresent
public void setConfigDebugIsDebuggerPresent(boolean value) Option to enable various debug tools showing buttons that will call the IM_DEBUG_BREAK() macro. - The Item Picker tool will be available regardless of this being enabled, in order to maximize its discoverability. - Requires a debugger being attached, otherwise IM_DEBUG_BREAK() options will appear to crash your application. e.g. io.ConfigDebugIsDebuggerPresent = ::IsDebuggerPresent() on Win32, or refer to ImOsIsDebuggerPresent() imgui_test_engine/imgui_te_utils.cpp for a Unix compatible version). -
getConfigDebugBeginReturnValueOnce
public boolean getConfigDebugBeginReturnValueOnce()Tools to test correct Begin/End and BeginChild/EndChild behaviors. Presently Begin()/End() and BeginChild()/EndChild() needs to ALWAYS be called in tandem, regardless of return value of BeginXXX() This is inconsistent with other BeginXXX functions and create confusion for many users. We expect to update the API eventually. In the meanwhile we provide tools to facilitate checking user-code behavior. First-time calls to Begin()/BeginChild() will return false. NEEDS TO BE SET AT APPLICATION BOOT TIME if you don't want to miss windows. -
setConfigDebugBeginReturnValueOnce
public void setConfigDebugBeginReturnValueOnce(boolean value) Tools to test correct Begin/End and BeginChild/EndChild behaviors. Presently Begin()/End() and BeginChild()/EndChild() needs to ALWAYS be called in tandem, regardless of return value of BeginXXX() This is inconsistent with other BeginXXX functions and create confusion for many users. We expect to update the API eventually. In the meanwhile we provide tools to facilitate checking user-code behavior. First-time calls to Begin()/BeginChild() will return false. NEEDS TO BE SET AT APPLICATION BOOT TIME if you don't want to miss windows. -
getConfigDebugBeginReturnValueLoop
public boolean getConfigDebugBeginReturnValueLoop()Some calls to Begin()/BeginChild() will return false. Will cycle through window depths then repeat. Suggested use: add "io.ConfigDebugBeginReturnValue = io.KeyShift" in your main loop then occasionally press SHIFT. Windows should be flickering while running. -
setConfigDebugBeginReturnValueLoop
public void setConfigDebugBeginReturnValueLoop(boolean value) Some calls to Begin()/BeginChild() will return false. Will cycle through window depths then repeat. Suggested use: add "io.ConfigDebugBeginReturnValue = io.KeyShift" in your main loop then occasionally press SHIFT. Windows should be flickering while running. -
getConfigDebugIgnoreFocusLoss
public boolean getConfigDebugIgnoreFocusLoss()Option to deactivate io.AddFocusEvent(false) handling. May facilitate interactions with a debugger when focus loss leads to clearing inputs data. Backends may have other side-effects on focus loss, so this will reduce side-effects but not necessary remove all of them. Consider using e.g. Win32's IsDebuggerPresent() as an additional filter (or see ImOsIsDebuggerPresent() in imgui_test_engine/imgui_te_utils.cpp for a Unix compatible version). Ignore io.AddFocusEvent(false), consequently not calling io.ClearInputKeys() in input processing. -
setConfigDebugIgnoreFocusLoss
public void setConfigDebugIgnoreFocusLoss(boolean value) Option to deactivate io.AddFocusEvent(false) handling. May facilitate interactions with a debugger when focus loss leads to clearing inputs data. Backends may have other side-effects on focus loss, so this will reduce side-effects but not necessary remove all of them. Consider using e.g. Win32's IsDebuggerPresent() as an additional filter (or see ImOsIsDebuggerPresent() in imgui_test_engine/imgui_te_utils.cpp for a Unix compatible version). Ignore io.AddFocusEvent(false), consequently not calling io.ClearInputKeys() in input processing. -
getConfigDebugIniSettings
public boolean getConfigDebugIniSettings()Option to audit .ini data Save .ini data with extra comments (particularly helpful for Docking, but makes saving slower) -
setConfigDebugIniSettings
public void setConfigDebugIniSettings(boolean value) Option to audit .ini data Save .ini data with extra comments (particularly helpful for Docking, but makes saving slower) -
getBackendPlatformName
Optional: Platform backend name (informational only! will be displayed in About Window) + User data for backend/wrappers to store their own stuff. -
setBackendPlatformName
Optional: Platform backend name (informational only! will be displayed in About Window) + User data for backend/wrappers to store their own stuff. -
getBackendRendererName
-
setBackendRendererName
-
setSetClipboardTextFn
-
setGetClipboardTextFn
-
addKeyEvent
public void addKeyEvent(int key, boolean down) Queue a new key down/up event. Key should be "translated" (as in, generally ImGuiKey_A matches the key end-user would use to emit an 'A' character) -
addKeyAnalogEvent
public void addKeyAnalogEvent(int key, boolean down, float v) Queue a new key down/up event for analog values (e.g. ImGuiKey_Gamepad_ values). Dead-zones should be handled by the backend. -
addMousePosEvent
public void addMousePosEvent(float x, float y) Queue a mouse position update. Use -FLT_MAX,-FLT_MAX to signify no mouse (e.g. app not focused and not hovered) -
addMouseButtonEvent
public void addMouseButtonEvent(int button, boolean down) Queue a mouse button change -
addMouseWheelEvent
public void addMouseWheelEvent(float whX, float whY) Queue a mouse wheel update. -
addMouseSourceEvent
public void addMouseSourceEvent(int source) Queue a mouse source change (Mouse/TouchScreen/Pen) -
addMouseViewportEvent
public void addMouseViewportEvent(int id) Queue a mouse hovered viewport. Requires backend to set ImGuiBackendFlags_HasMouseHoveredViewport to call this (for multi-viewport support). -
addFocusEvent
public void addFocusEvent(boolean focused) Queue a gain/loss of focus for the application (generally based on OS/platform focus of your window) -
addInputCharacter
public void addInputCharacter(int c) Queue new character input. -
addInputCharacterUTF16
public void addInputCharacterUTF16(short c) Queue new character input from a UTF-16 character, it can be a surrogate -
addInputCharactersUTF8
Queue new characters input from a UTF-8 string. -
setKeyEventNativeData
public void setKeyEventNativeData(int key, int nativeKeycode, int nativeScancode) [Optional] Specify index for legacy<1.87IsKeyXXX() functions with native indices + specify native keycode, scancode. -
setKeyEventNativeData
public void setKeyEventNativeData(int key, int nativeKeycode, int nativeScancode, int nativeLegacyIndex) [Optional] Specify index for legacy<1.87IsKeyXXX() functions with native indices + specify native keycode, scancode. -
setAppAcceptingEvents
public void setAppAcceptingEvents(boolean acceptingEvents) Set master flag for accepting key/mouse/text events (default to true). Useful if you have native dialog boxes that are interrupting your application loop/refresh, and you want to disable events being queued while your app is frozen. -
clearEventsQueue
public void clearEventsQueue()Clear all incoming events. -
clearInputKeys
public void clearInputKeys()Clear current keyboard/gamepad state + current frame text input buffer. Equivalent to releasing all keys/buttons. -
clearInputMouse
public void clearInputMouse()Clear current mouse state. -
getWantCaptureMouse
public boolean getWantCaptureMouse()Set when Dear ImGui will use mouse inputs, in this case do not dispatch them to your main game/application (either way, always pass on mouse inputs to imgui). (e.g. unclicked mouse is hovering over an imgui window, widget is active, mouse was clicked over an imgui window, etc.). -
setWantCaptureMouse
public void setWantCaptureMouse(boolean value) Set when Dear ImGui will use mouse inputs, in this case do not dispatch them to your main game/application (either way, always pass on mouse inputs to imgui). (e.g. unclicked mouse is hovering over an imgui window, widget is active, mouse was clicked over an imgui window, etc.). -
getWantCaptureKeyboard
public boolean getWantCaptureKeyboard()Set when Dear ImGui will use keyboard inputs, in this case do not dispatch them to your main game/application (either way, always pass keyboard inputs to imgui). (e.g. InputText active, or an imgui window is focused and navigation is enabled, etc.). -
setWantCaptureKeyboard
public void setWantCaptureKeyboard(boolean value) Set when Dear ImGui will use keyboard inputs, in this case do not dispatch them to your main game/application (either way, always pass keyboard inputs to imgui). (e.g. InputText active, or an imgui window is focused and navigation is enabled, etc.). -
getWantTextInput
public boolean getWantTextInput()Mobile/console: when set, you may display an on-screen keyboard. This is set by Dear ImGui when it wants textual keyboard input to happen (e.g. when a InputText widget is active). -
setWantTextInput
public void setWantTextInput(boolean value) Mobile/console: when set, you may display an on-screen keyboard. This is set by Dear ImGui when it wants textual keyboard input to happen (e.g. when a InputText widget is active). -
getWantSetMousePos
public boolean getWantSetMousePos()MousePos has been altered, backend should reposition mouse on next frame. Rarely used! Set only when ImGuiConfigFlags_NavEnableSetMousePos flag is enabled. -
setWantSetMousePos
public void setWantSetMousePos(boolean value) MousePos has been altered, backend should reposition mouse on next frame. Rarely used! Set only when ImGuiConfigFlags_NavEnableSetMousePos flag is enabled. -
getWantSaveIniSettings
public boolean getWantSaveIniSettings()When manual .ini load/save is active (io.IniFilename == NULL), this will be set to notify your application that you can call SaveIniSettingsToMemory() and save yourself. Important: clear io.WantSaveIniSettings yourself after saving! -
setWantSaveIniSettings
public void setWantSaveIniSettings(boolean value) When manual .ini load/save is active (io.IniFilename == NULL), this will be set to notify your application that you can call SaveIniSettingsToMemory() and save yourself. Important: clear io.WantSaveIniSettings yourself after saving! -
getFramerate
public float getFramerate()Estimate of application framerate (rolling average over 60 frames, based on io.DeltaTime), in frame per second. Solely for convenience. Slow applications may not want to use a moving average or may want to reset underlying buffers occasionally. -
setFramerate
public void setFramerate(float value) Estimate of application framerate (rolling average over 60 frames, based on io.DeltaTime), in frame per second. Solely for convenience. Slow applications may not want to use a moving average or may want to reset underlying buffers occasionally. -
getMetricsRenderVertices
public int getMetricsRenderVertices()Vertices output during last call to Render() -
setMetricsRenderVertices
public void setMetricsRenderVertices(int value) Vertices output during last call to Render() -
getMetricsRenderIndices
public int getMetricsRenderIndices()Indices output during last call to Render() = number of triangles * 3 -
setMetricsRenderIndices
public void setMetricsRenderIndices(int value) Indices output during last call to Render() = number of triangles * 3 -
getMetricsRenderWindows
public int getMetricsRenderWindows()Number of visible windows -
setMetricsRenderWindows
public void setMetricsRenderWindows(int value) Number of visible windows -
getMetricsActiveWindows
public int getMetricsActiveWindows()Number of active windows -
setMetricsActiveWindows
public void setMetricsActiveWindows(int value) Number of active windows -
getMouseDelta
Mouse delta. Note that this is zero if either current or previous position are invalid (-FLT_MAX,-FLT_MAX), so a disappearing/reappearing mouse won't have a huge delta. -
getMouseDeltaX
public float getMouseDeltaX()Mouse delta. Note that this is zero if either current or previous position are invalid (-FLT_MAX,-FLT_MAX), so a disappearing/reappearing mouse won't have a huge delta. -
getMouseDeltaY
public float getMouseDeltaY()Mouse delta. Note that this is zero if either current or previous position are invalid (-FLT_MAX,-FLT_MAX), so a disappearing/reappearing mouse won't have a huge delta. -
getMouseDelta
Mouse delta. Note that this is zero if either current or previous position are invalid (-FLT_MAX,-FLT_MAX), so a disappearing/reappearing mouse won't have a huge delta. -
setMouseDelta
Mouse delta. Note that this is zero if either current or previous position are invalid (-FLT_MAX,-FLT_MAX), so a disappearing/reappearing mouse won't have a huge delta. -
setMouseDelta
public void setMouseDelta(float valueX, float valueY) Mouse delta. Note that this is zero if either current or previous position are invalid (-FLT_MAX,-FLT_MAX), so a disappearing/reappearing mouse won't have a huge delta. -
getCtx
Parent UI context (needs to be set explicitly by parent). -
setCtx
Parent UI context (needs to be set explicitly by parent). -
getMousePos
Mouse position, in pixels. Set to ImVec2(-FLT_MAX, -FLT_MAX) if mouse is unavailable (on another screen, etc.) -
getMousePosX
public float getMousePosX()Mouse position, in pixels. Set to ImVec2(-FLT_MAX, -FLT_MAX) if mouse is unavailable (on another screen, etc.) -
getMousePosY
public float getMousePosY()Mouse position, in pixels. Set to ImVec2(-FLT_MAX, -FLT_MAX) if mouse is unavailable (on another screen, etc.) -
getMousePos
Mouse position, in pixels. Set to ImVec2(-FLT_MAX, -FLT_MAX) if mouse is unavailable (on another screen, etc.) -
setMousePos
Mouse position, in pixels. Set to ImVec2(-FLT_MAX, -FLT_MAX) if mouse is unavailable (on another screen, etc.) -
setMousePos
public void setMousePos(float valueX, float valueY) Mouse position, in pixels. Set to ImVec2(-FLT_MAX, -FLT_MAX) if mouse is unavailable (on another screen, etc.) -
getMouseDown
public boolean[] getMouseDown()Mouse buttons: 0=left, 1=right, 2=middle + extras (ImGuiMouseButton_COUNT == 5). Dear ImGui mostly uses left and right buttons. Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. -
getMouseDown
public boolean getMouseDown(int idx) Mouse buttons: 0=left, 1=right, 2=middle + extras (ImGuiMouseButton_COUNT == 5). Dear ImGui mostly uses left and right buttons. Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. -
setMouseDown
public void setMouseDown(boolean[] value) Mouse buttons: 0=left, 1=right, 2=middle + extras (ImGuiMouseButton_COUNT == 5). Dear ImGui mostly uses left and right buttons. Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. -
setMouseDown
public void setMouseDown(int idx, boolean value) Mouse buttons: 0=left, 1=right, 2=middle + extras (ImGuiMouseButton_COUNT == 5). Dear ImGui mostly uses left and right buttons. Others buttons allows us to track if the mouse is being used by your application + available to user as a convenience via IsMouse** API. -
getMouseWheel
public float getMouseWheel()Mouse wheel Vertical: 1 unit scrolls about 5 lines text. -
setMouseWheel
public void setMouseWheel(float value) Mouse wheel Vertical: 1 unit scrolls about 5 lines text. -
getMouseWheelH
public float getMouseWheelH()Mouse wheel Horizontal. Most users don't have a mouse with an horizontal wheel, may not be filled by all backends. -
setMouseWheelH
public void setMouseWheelH(float value) Mouse wheel Horizontal. Most users don't have a mouse with an horizontal wheel, may not be filled by all backends. -
getMouseHoveredViewport
public int getMouseHoveredViewport()(Optional) When using multiple viewports: viewport the OS mouse cursor is hovering _IGNORING_ viewports with the ImGuiViewportFlags_NoInputs flag, and _REGARDLESS_ of whether another viewport is focused. Set io.BackendFlags |= ImGuiBackendFlags_HasMouseHoveredViewport if you can provide this info. If you don't imgui will infer the value using the rectangles and last focused time of the viewports it knows about (ignoring other OS windows). -
setMouseHoveredViewport
public void setMouseHoveredViewport(int value) (Optional) When using multiple viewports: viewport the OS mouse cursor is hovering _IGNORING_ viewports with the ImGuiViewportFlags_NoInputs flag, and _REGARDLESS_ of whether another viewport is focused. Set io.BackendFlags |= ImGuiBackendFlags_HasMouseHoveredViewport if you can provide this info. If you don't imgui will infer the value using the rectangles and last focused time of the viewports it knows about (ignoring other OS windows). -
getKeyCtrl
public boolean getKeyCtrl()Keyboard modifier pressed: Control -
setKeyCtrl
public void setKeyCtrl(boolean value) Keyboard modifier pressed: Control -
getKeyShift
public boolean getKeyShift()Keyboard modifier pressed: Shift -
setKeyShift
public void setKeyShift(boolean value) Keyboard modifier pressed: Shift -
getKeyAlt
public boolean getKeyAlt()Keyboard modifier pressed: Alt -
setKeyAlt
public void setKeyAlt(boolean value) Keyboard modifier pressed: Alt -
getKeySuper
public boolean getKeySuper()Keyboard modifier pressed: Cmd/Super/Windows -
setKeySuper
public void setKeySuper(boolean value) Keyboard modifier pressed: Cmd/Super/Windows -
getKeyMods
public int getKeyMods()Key mods flags (same as io.KeyCtrl/KeyShift/KeyAlt/KeySuper but merged into flags), updated by NewFrame() -
setKeyMods
public void setKeyMods(int value) Key mods flags (same as io.KeyCtrl/KeyShift/KeyAlt/KeySuper but merged into flags), updated by NewFrame() -
getKeysData
Key state for all known keys. Use IsKeyXXX() functions to access this. -
setKeysData
Key state for all known keys. Use IsKeyXXX() functions to access this. -
getWantCaptureMouseUnlessPopupClose
public boolean getWantCaptureMouseUnlessPopupClose()Alternative to WantCaptureMouse: (WantCaptureMouse == true&&WantCaptureMouseUnlessPopupClose == false) when a click over void is expected to close a popup. -
setWantCaptureMouseUnlessPopupClose
public void setWantCaptureMouseUnlessPopupClose(boolean value) Alternative to WantCaptureMouse: (WantCaptureMouse == true&&WantCaptureMouseUnlessPopupClose == false) when a click over void is expected to close a popup. -
getMousePosPrev
Previous mouse position (note that MouseDelta is not necessary == MousePos-MousePosPrev, in case either position is invalid) -
getMousePosPrevX
public float getMousePosPrevX()Previous mouse position (note that MouseDelta is not necessary == MousePos-MousePosPrev, in case either position is invalid) -
getMousePosPrevY
public float getMousePosPrevY()Previous mouse position (note that MouseDelta is not necessary == MousePos-MousePosPrev, in case either position is invalid) -
getMousePosPrev
Previous mouse position (note that MouseDelta is not necessary == MousePos-MousePosPrev, in case either position is invalid) -
setMousePosPrev
Previous mouse position (note that MouseDelta is not necessary == MousePos-MousePosPrev, in case either position is invalid) -
setMousePosPrev
public void setMousePosPrev(float valueX, float valueY) Previous mouse position (note that MouseDelta is not necessary == MousePos-MousePosPrev, in case either position is invalid) -
getMouseClickedPos
Position at time of clicking. -
setMouseClickedPos
Position at time of clicking. -
getMouseClickedTime
public double[] getMouseClickedTime()Time of last click (used to figure out double-click) -
getMouseClickedTime
public double getMouseClickedTime(int idx) Time of last click (used to figure out double-click) -
setMouseClickedTime
public void setMouseClickedTime(double[] value) Time of last click (used to figure out double-click) -
setMouseClickedTime
public void setMouseClickedTime(int idx, double value) Time of last click (used to figure out double-click) -
getMouseClicked
public boolean[] getMouseClicked()Mouse button went from !Down to Down (same as MouseClickedCount[x] != 0) -
getMouseClicked
public boolean getMouseClicked(int idx) Mouse button went from !Down to Down (same as MouseClickedCount[x] != 0) -
setMouseClicked
public void setMouseClicked(boolean[] value) Mouse button went from !Down to Down (same as MouseClickedCount[x] != 0) -
setMouseClicked
public void setMouseClicked(int idx, boolean value) Mouse button went from !Down to Down (same as MouseClickedCount[x] != 0) -
getMouseDoubleClicked
public boolean[] getMouseDoubleClicked()Has mouse button been double-clicked? (same as MouseClickedCount[x] == 2) -
getMouseDoubleClicked
public boolean getMouseDoubleClicked(int idx) Has mouse button been double-clicked? (same as MouseClickedCount[x] == 2) -
setMouseDoubleClicked
public void setMouseDoubleClicked(boolean[] value) Has mouse button been double-clicked? (same as MouseClickedCount[x] == 2) -
setMouseDoubleClicked
public void setMouseDoubleClicked(int idx, boolean value) Has mouse button been double-clicked? (same as MouseClickedCount[x] == 2) -
getMouseClickedCount
public int[] getMouseClickedCount()== 0 (not clicked), == 1 (same as MouseClicked[]), == 2 (double-clicked), == 3 (triple-clicked) etc. when going from !Down to Down -
getMouseClickedCount
public int getMouseClickedCount(int idx) == 0 (not clicked), == 1 (same as MouseClicked[]), == 2 (double-clicked), == 3 (triple-clicked) etc. when going from !Down to Down -
setMouseClickedCount
public void setMouseClickedCount(int[] value) == 0 (not clicked), == 1 (same as MouseClicked[]), == 2 (double-clicked), == 3 (triple-clicked) etc. when going from !Down to Down -
setMouseClickedCount
public void setMouseClickedCount(int idx, int value) == 0 (not clicked), == 1 (same as MouseClicked[]), == 2 (double-clicked), == 3 (triple-clicked) etc. when going from !Down to Down -
getMouseClickedLastCount
public int[] getMouseClickedLastCount()Count successive number of clicks. Stays valid after mouse release. Reset after another click is done. -
getMouseClickedLastCount
public int getMouseClickedLastCount(int idx) Count successive number of clicks. Stays valid after mouse release. Reset after another click is done. -
setMouseClickedLastCount
public void setMouseClickedLastCount(int[] value) Count successive number of clicks. Stays valid after mouse release. Reset after another click is done. -
setMouseClickedLastCount
public void setMouseClickedLastCount(int idx, int value) Count successive number of clicks. Stays valid after mouse release. Reset after another click is done. -
getMouseReleased
public boolean[] getMouseReleased()Mouse button went from Down to !Down -
getMouseReleased
public boolean getMouseReleased(int idx) Mouse button went from Down to !Down -
setMouseReleased
public void setMouseReleased(boolean[] value) Mouse button went from Down to !Down -
setMouseReleased
public void setMouseReleased(int idx, boolean value) Mouse button went from Down to !Down -
getMouseDownOwned
public boolean[] getMouseDownOwned()Track if button was clicked inside a dear imgui window or over void blocked by a popup. We don't request mouse capture from the application if click started outside ImGui bounds. -
getMouseDownOwned
public boolean getMouseDownOwned(int idx) Track if button was clicked inside a dear imgui window or over void blocked by a popup. We don't request mouse capture from the application if click started outside ImGui bounds. -
setMouseDownOwned
public void setMouseDownOwned(boolean[] value) Track if button was clicked inside a dear imgui window or over void blocked by a popup. We don't request mouse capture from the application if click started outside ImGui bounds. -
setMouseDownOwned
public void setMouseDownOwned(int idx, boolean value) Track if button was clicked inside a dear imgui window or over void blocked by a popup. We don't request mouse capture from the application if click started outside ImGui bounds. -
getMouseDownOwnedUnlessPopupClose
public boolean[] getMouseDownOwnedUnlessPopupClose()Track if button was clicked inside a dear imgui window. -
getMouseDownOwnedUnlessPopupClose
public boolean getMouseDownOwnedUnlessPopupClose(int idx) Track if button was clicked inside a dear imgui window. -
setMouseDownOwnedUnlessPopupClose
public void setMouseDownOwnedUnlessPopupClose(boolean[] value) Track if button was clicked inside a dear imgui window. -
setMouseDownOwnedUnlessPopupClose
public void setMouseDownOwnedUnlessPopupClose(int idx, boolean value) Track if button was clicked inside a dear imgui window. -
getMouseWheelRequestAxisSwap
public boolean getMouseWheelRequestAxisSwap()On a non-Mac system, holding SHIFT requests WheelY to perform the equivalent of a WheelX event. On a Mac system this is already enforced by the system. -
setMouseWheelRequestAxisSwap
public void setMouseWheelRequestAxisSwap(boolean value) On a non-Mac system, holding SHIFT requests WheelY to perform the equivalent of a WheelX event. On a Mac system this is already enforced by the system. -
getMouseCtrlLeftAsRightClick
public boolean getMouseCtrlLeftAsRightClick()(OSX) Set to true when the current click was a ctrl-click that spawned a simulated right click. -
setMouseCtrlLeftAsRightClick
public void setMouseCtrlLeftAsRightClick(boolean value) (OSX) Set to true when the current click was a ctrl-click that spawned a simulated right click. -
getMouseDownDuration
public float[] getMouseDownDuration()Duration the mouse button has been down (0.0f == just clicked) -
getMouseDownDuration
public float getMouseDownDuration(int idx) Duration the mouse button has been down (0.0f == just clicked) -
setMouseDownDuration
public void setMouseDownDuration(float[] value) Duration the mouse button has been down (0.0f == just clicked) -
setMouseDownDuration
public void setMouseDownDuration(int idx, float value) Duration the mouse button has been down (0.0f == just clicked) -
getMouseDownDurationPrev
public float[] getMouseDownDurationPrev()Previous time the mouse button has been down -
getMouseDownDurationPrev
public float getMouseDownDurationPrev(int idx) Previous time the mouse button has been down -
setMouseDownDurationPrev
public void setMouseDownDurationPrev(float[] value) Previous time the mouse button has been down -
setMouseDownDurationPrev
public void setMouseDownDurationPrev(int idx, float value) Previous time the mouse button has been down -
getMouseDragMaxDistanceAbs
Maximum distance, absolute, on each axis, of how much mouse has traveled from the clicking point -
setMouseDragMaxDistanceAbs
Maximum distance, absolute, on each axis, of how much mouse has traveled from the clicking point -
getMouseDragMaxDistanceSqr
public float[] getMouseDragMaxDistanceSqr()Squared maximum distance of how much mouse has traveled from the clicking point -
getMouseDragMaxDistanceSqr
public float getMouseDragMaxDistanceSqr(int idx) Squared maximum distance of how much mouse has traveled from the clicking point -
setMouseDragMaxDistanceSqr
public void setMouseDragMaxDistanceSqr(float[] value) Squared maximum distance of how much mouse has traveled from the clicking point -
setMouseDragMaxDistanceSqr
public void setMouseDragMaxDistanceSqr(int idx, float value) Squared maximum distance of how much mouse has traveled from the clicking point -
getPenPressure
public float getPenPressure()Touch/Pen pressure (0.0f to 1.0f, should be>0.0f only when MouseDown[0] == true). Helper storage currently unused by Dear ImGui. -
setPenPressure
public void setPenPressure(float value) Touch/Pen pressure (0.0f to 1.0f, should be>0.0f only when MouseDown[0] == true). Helper storage currently unused by Dear ImGui. -
getAppFocusLost
public boolean getAppFocusLost()Only modify via AddFocusEvent(). -
getAppAcceptingEvents
public boolean getAppAcceptingEvents()Only modify via SetAppAcceptingEvents(). -
getInputQueueSurrogate
public short getInputQueueSurrogate()For AddInputCharacterUTF16 -
setInputQueueSurrogate
public void setInputQueueSurrogate(short value) For AddInputCharacterUTF16
-