Difference between revisions of "Dear ImGui"
From GiderosMobile
 (DONE)  | 
				|||
| (18 intermediate revisions by the same user not shown) | |||
| Line 7: | Line 7: | ||
This is an implementation of the '''Dear ImGui''' library: '''https://github.com/ocornut/imgui'''.  | This is an implementation of the '''Dear ImGui''' library: '''https://github.com/ocornut/imgui'''.  | ||
| − | To use Dear ImGui in your project you need to add the ImGui plugin and call require like so:  | + | Dear ImGui is licensed under the '''MIT License''', see '''https://github.com/ocornut/imgui/blob/master/LICENSE.txt''' for more information.  | 
| + | |||
| + | To use Dear ImGui in your project you need to add the ImGui plugin and call ''require'' like so:  | ||
<syntaxhighlight lang="lua">  | <syntaxhighlight lang="lua">  | ||
require "ImGui"  | require "ImGui"  | ||
| Line 14: | Line 16: | ||
Current Gideros Dear ImGui version: '''1.89.6'''.  | Current Gideros Dear ImGui version: '''1.89.6'''.  | ||
| − | + | === User Guide ===  | |
| − | + | * Double-click on title bar to collapse window  | |
| − | + | * Click and drag on lower corner to resize window (double-click to auto fit window to its contents)  | |
| − | + | * CTRL+Click on a slider or drag box to input value as text  | |
| − | + | * TAB/SHIFT+TAB to cycle through keyboard editable fields  | |
| − | + | * CTRL+Tab to select a window  | |
| − | + | * CTRL+Mouse Wheel to zoom window contents if ''io.FontAllowUserScaling'' is enabled  | |
| − | + | * While inputing text:  | |
| − | + | ** CTRL+Left/Right to word jump  | |
| − | + | ** CTRL+A or double-click to select all  | |
| + | ** CTRL+X/C/V to use clipboard cut/copy/paste  | ||
| + | ** CTRL+Z,CTRL+Y to undo/redo  | ||
| + | ** ESCAPE to revert  | ||
| + | * With keyboard navigation enabled:  | ||
| + | ** Arrow keys to navigate  | ||
| + | ** Space to activate a widget  | ||
| + | ** Return to input text into a widget  | ||
| + | ** Escape to deactivate a widget, close popup, exit child window  | ||
| + | ** Alt to jump to the menu layer of a window  | ||
| − | + | ==== Widgets ====  | |
| − | + | '''Widgets: Color Editor/Picker'''  | |
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | ==   | ||
| − | |||
| − | |||
| − | ==   | ||
| − | |||
  * tip: the ColorEdit* functions have a little color square that can be left-clicked to open a picker, and right-clicked to open an option menu  |   * tip: the ColorEdit* functions have a little color square that can be left-clicked to open a picker, and right-clicked to open an option menu  | ||
| − | + | '''Widgets: Input with Keyboard'''  | |
  * If you want to use InputText() with std::string or any custom dynamic string type, see misc/cpp/imgui_stdlib.h and comments in imgui_demo.cpp.  |   * If you want to use InputText() with std::string or any custom dynamic string type, see misc/cpp/imgui_stdlib.h and comments in imgui_demo.cpp.  | ||
  * Most of the ImGuiInputTextFlags flags are only useful for InputText() and not for InputFloatX, InputIntX, InputDouble etc.  |   * Most of the ImGuiInputTextFlags flags are only useful for InputText() and not for InputFloatX, InputIntX, InputDouble etc.  | ||
| − | + | '''Widgets: Regular Sliders'''  | |
  * CTRL+Click on any slider to turn them into an input box. Manually input values aren't clamped and can go off-bounds.  |   * CTRL+Click on any slider to turn them into an input box. Manually input values aren't clamped and can go off-bounds.  | ||
  * Adjust format string to decorate the value with a prefix, a suffix, or adapt the editing and display precision e.g. "%.3f" -> 1.234; "%5.2f secs" -> 01.23 secs; "Biscuit: %.0f" -> Biscuit: 1; etc.  |   * Adjust format string to decorate the value with a prefix, a suffix, or adapt the editing and display precision e.g. "%.3f" -> 1.234; "%5.2f secs" -> 01.23 secs; "Biscuit: %.0f" -> Biscuit: 1; etc.  | ||
| Line 53: | Line 51: | ||
  If you get a warning converting a float to ImGuiSliderFlags, read https://github.com/ocornut/imgui/issues/3361  |   If you get a warning converting a float to ImGuiSliderFlags, read https://github.com/ocornut/imgui/issues/3361  | ||
| − | + | '''Widgets: Drag Sliders'''  | |
  * CTRL+Click on any drag box to turn them into an input box. Manually input values aren't clamped and can go off-bounds.  |   * CTRL+Click on any drag box to turn them into an input box. Manually input values aren't clamped and can go off-bounds.  | ||
  * For all the Float2/Float3/Float4/Int2/Int3/Int4 versions of every functions, note that a 'float v[X]' function argument is the same as 'float* v', the array syntax is just a way to document the number of elements that are expected to be accessible. You can pass address of your first element out of a contiguous set, e.g. &myvector.x  |   * For all the Float2/Float3/Float4/Int2/Int3/Int4 versions of every functions, note that a 'float v[X]' function argument is the same as 'float* v', the array syntax is just a way to document the number of elements that are expected to be accessible. You can pass address of your first element out of a contiguous set, e.g. &myvector.x  | ||
| Line 63: | Line 61: | ||
  * We use the same sets of flags for DragXXX() and SliderXXX() functions as the features are the same and it makes it easier to swap them.  |   * We use the same sets of flags for DragXXX() and SliderXXX() functions as the features are the same and it makes it easier to swap them.  | ||
| − | + | === Gideros Dear ImGui Documentation ===  | |
| − | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">  | <div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">  | ||
*'''[[Dear ImGui FAQ]]'''  | *'''[[Dear ImGui FAQ]]'''  | ||
| Line 71: | Line 68: | ||
*'''[[Dear ImGui Enums]]'''  | *'''[[Dear ImGui Enums]]'''  | ||
*'''[[Dear ImGui Flags]]'''  | *'''[[Dear ImGui Flags]]'''  | ||
| − | *'''[[  | + | *'''[[Dear ImGui Examples]]'''  | 
</div>  | </div>  | ||
| − | + | <!--introduction documentation (c++): https://pixtur.github.io/mkdocs-for-imgui/site/-->  | |
| − | <  | + | <!--Dear ImGui demo (c++): https://pthom.github.io/imgui_manual_online/manual/imgui_manual.html-->  | 
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
| − | |||
<!--=== Methods ===-->  | <!--=== Methods ===-->  | ||
| − | + | <!--GIDEROSMTD:ImGui.new([font_atlas = nil, mouse_listeners = true, keyboard_listeners = true, touch_listeners = false]) initializes ImGui-->  | |
| − | + | <!--GIDEROSMTD:ImGui:showLog(title, p_open [, ImGui.WindowFlags = 0]) draw log window, p_open = ImGui:showLog(...)-->  | |
| − | + | <!--GIDEROSMTD:ImGui:ImGui:writeLog(text)-->  | |
| − | + | <!--GIDEROSMTD:ImGui:setTouchGesturesEnabled(bool)-->  | |
| − | + | <!--GIDEROSMTD:ImGui:isTouchGesturesEnabled() bool = ImGui:isTouchGesturesEnabled()-->  | |
| − | + | <!--GIDEROSMTD:Imgui:getIO() local IO = Imgui:getIO()-->  | |
| + | <!--GIDEROSMTD:IO:getFonts() local FontAtlas = IO:getFonts()-->  | ||
| + | <!--GIDEROSMTD:FontAtlas:addFont(ttf_font_path, font_size [, options]) local Font = FontAtlas:addFont(...)-->  | ||
| + | <!--GIDEROSMTD:FontAtlas:addFonts(fontsDescription)-->  | ||
| + | <!--GIDEROSMTD:FontAtlas:getFont([index]) local Font = FontAtlas:getFont(...) gets font by index (if index is 0 or nil get default font instance)-->  | ||
| + | <!--GIDEROSMTD:FontAtlas:build() call after multiple FontAtlas:addFont(...) calls to update ImGui font atlas-->  | ||
| + | <!--GIDEROSMTD:FontAtlas:clearInputData()-->  | ||
| + | <!--GIDEROSMTD:FontAtlas:clearTexData()-->  | ||
| + | <!--GIDEROSMTD:FontAtlas:clearFonts()-->  | ||
| + | <!--GIDEROSMTD:FontAtlas:clear()-->  | ||
| + | <!--GIDEROSMTD:FontAtlas:getFonts() table = FontAtlas:getFonts() returns a table with all fonts (included default)-->  | ||
| + | <!--GIDEROSMTD:FontAtlas:isBuilt() flag = FontAtlas:isBuilt()-->  | ||
| + | <!--GIDEROSMTD:FontAtlas:addCustomRectRegular(width, height) number = FontAtlas:addCustomRectRegular(...)-->  | ||
| + | <!--GIDEROSMTD:FontAtlas:addCustomRectFontGlyph(font, id, width, height, advance_x [, offset_x, offset_y]) number = FontAtlas:addCustomRectFontGlyph(...)-->  | ||
| + | <!--GIDEROSMTD:FontAtlas:getCustomRectByIndex(index) w, h, x, y, glyph_id, offset_x, offset_y, font, is_packed_flag = FontAtlas:getCustomRectByIndex(...)-->  | ||
| + | <!--GIDEROSMTD:ImGui:pushFont(font) font (table): object returned by FontAtlas:addFont(...) or FontAtlas:getFont([index])-->  | ||
| + | <!--GIDEROSMTD:ImGui:popFont()-->  | ||
| + | <!--GIDEROSMTD:Font:getSize() number = Font:getSize()-->  | ||
| + | <!--GIDEROSMTD:Font:getContainerAtlas() FontAtlas = Font:getContainerAtlas()-->  | ||
| + | <!--GIDEROSMTD:Font:setScale(number)-->  | ||
| + | <!--GIDEROSMTD:Font:getScale() number = Font:getScale()-->  | ||
| + | <!--GIDEROSMTD:Font:getAscent() number = Font:getAscent()-->  | ||
| + | <!--GIDEROSMTD:Font:getDescent() number = Font:getDescent()-->  | ||
| + | <!--GIDEROSMTD:Font:isLoaded() bool = Font:isLoaded()-->  | ||
| + | <!--GIDEROSMTD:Font:getDebugName() string = Font:getDebugName()-->  | ||
| + | <!--  | ||
<!--=== Events ===-->  | <!--=== Events ===-->  | ||
<!--GIDEROSEVT:ImGui.KeyChar-->  | <!--GIDEROSEVT:ImGui.KeyChar-->  | ||
| Line 198: | Line 840: | ||
<!--GIDEROSEVT:ImGui.MouseWheel-->  | <!--GIDEROSEVT:ImGui.MouseWheel-->  | ||
<!--GIDEROSEVT:ImGui.TouchBegin-->  | <!--GIDEROSEVT:ImGui.TouchBegin-->  | ||
| + | <!--GIDEROSEVT:ImGui.TouchCancel-->  | ||
<!--GIDEROSEVT:ImGui.TouchEnd-->  | <!--GIDEROSEVT:ImGui.TouchEnd-->  | ||
| − | |||
<!--GIDEROSEVT:ImGui.TouchMove-->  | <!--GIDEROSEVT:ImGui.TouchMove-->  | ||
| − | |||
<!--=== Constants ===-->  | <!--=== Constants ===-->  | ||
<!--GIDEROSCST:ImGui._VERSION-->  | <!--GIDEROSCST:ImGui._VERSION-->  | ||
| Line 209: | Line 850: | ||
<!--GIDEROSCST:ImGui.BackendFlags_HasSetMousePos-->  | <!--GIDEROSCST:ImGui.BackendFlags_HasSetMousePos-->  | ||
<!--GIDEROSCST:ImGui.BackendFlags_RendererHasVtxOffset-->  | <!--GIDEROSCST:ImGui.BackendFlags_RendererHasVtxOffset-->  | ||
| − | |||
| − | |||
<!--GIDEROSCST:ImGui.Col_Border-->  | <!--GIDEROSCST:ImGui.Col_Border-->  | ||
<!--GIDEROSCST:ImGui.Col_BorderShadow-->  | <!--GIDEROSCST:ImGui.Col_BorderShadow-->  | ||
| Line 264: | Line 903: | ||
<!--GIDEROSCST:ImGui.Col_TitleBgCollapsed-->  | <!--GIDEROSCST:ImGui.Col_TitleBgCollapsed-->  | ||
<!--GIDEROSCST:ImGui.Col_WindowBg-->  | <!--GIDEROSCST:ImGui.Col_WindowBg-->  | ||
| − | + | <!--GIDEROSCST:ImGui.ColorEditFlags_None-->  | |
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_AlphaBar-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_AlphaPreview-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_AlphaPreviewHalf-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_DisplayHex-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_DisplayHSV-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_DisplayRGB-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_Float-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_HDR-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_InputHSV-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_InputRGB-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_NoAlpha-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_NoBorder-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_NoDragDrop-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_NoInputs-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_NoLabel-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_NoOptions-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_NoPicker-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_NoSidePreview-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_NoSmallPreview-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_NoTooltip-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_OptionsDefault-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_PickerHueBar-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_PickerHueWheel-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ColorEditFlags_Uint8-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ComboFlags_None-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ComboFlags_HeightLarge-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ComboFlags_HeightLargest-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ComboFlags_HeightMask-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ComboFlags_HeightRegular-->  | 
| − | <!--GIDEROSCST:ImGui.  | + | <!--GIDEROSCST:ImGui.ComboFlags_HeightSmall-->  | 
| − | + | <!--GIDEROSCST:ImGui.ComboFlags_NoArrowButton-->  | |
| + | <!--GIDEROSCST:ImGui.ComboFlags_NoPreview-->  | ||
| + | <!--GIDEROSCST:ImGui.ComboFlags_PopupAlignLeft -->  | ||
| + | <!--GIDEROSCST:ImGui.Cond_None-->  | ||
| + | <!--GIDEROSCST:ImGui.Cond_Always-->  | ||
| + | <!--GIDEROSCST:ImGui.Cond_Appearing-->  | ||
| + | <!--GIDEROSCST:ImGui.Cond_FirstUseEver-->  | ||
| + | <!--GIDEROSCST:ImGui.Cond_Once -->  | ||
| + | <!--GIDEROSCST:ImGui.ConfigFlags_None-->  | ||
| + | <!--GIDEROSCST:ImGui.ConfigFlags_IsSRGB-->  | ||
| + | <!--GIDEROSCST:ImGui.ConfigFlags_IsTouchScreen-->  | ||
| + | <!--GIDEROSCST:ImGui.ConfigFlags_NavEnableGamepad-->  | ||
| + | <!--GIDEROSCST:ImGui.ConfigFlags_NavEnableKeyboard-->  | ||
| + | <!--GIDEROSCST:ImGui.ConfigFlags_NavEnableSetMousePos-->  | ||
| + | <!--GIDEROSCST:ImGui.ConfigFlags_NavNoCaptureKeyboard-->  | ||
| + | <!--GIDEROSCST:ImGui.ConfigFlags_NoMouse-->  | ||
| + | <!--GIDEROSCST:ImGui.ConfigFlags_NoMouseCursorChange -->  | ||
| + | <!--GIDEROSCST:ImGui.DrawFlags_None-->  | ||
| + | <!--GIDEROSCST:ImGui.DrawFlags_Closed-->  | ||
| + | <!--GIDEROSCST:ImGui.DrawFlags_RoundCornersAll-->  | ||
| + | <!--GIDEROSCST:ImGui.DrawFlags_RoundCornersBottom-->  | ||
| + | <!--GIDEROSCST:ImGui.DrawFlags_RoundCornersBottomLeft-->  | ||
| + | <!--GIDEROSCST:ImGui.DrawFlags_RoundCornersBottomRight-->  | ||
| + | <!--GIDEROSCST:ImGui.DrawFlags_RoundCornersLeft-->  | ||
| + | <!--GIDEROSCST:ImGui.DrawFlags_RoundCornersRight-->  | ||
| + | <!--GIDEROSCST:ImGui.DrawFlags_RoundCornersTop-->  | ||
| + | <!--GIDEROSCST:ImGui.DrawFlags_RoundCornersTopLeft-->  | ||
| + | <!--GIDEROSCST:ImGui.DrawFlags_RoundCornersTopRight -->  | ||
| + | <!--GIDEROSCST:ImGui.DataType_Double-->  | ||
| + | <!--GIDEROSCST:ImGui.DataType_Float-->  | ||
| + | <!--GIDEROSCST:ImGui.DataType_S8-->  | ||
| + | <!--GIDEROSCST:ImGui.DataType_S16-->  | ||
| + | <!--GIDEROSCST:ImGui.DataType_S32-->  | ||
| + | <!--GIDEROSCST:ImGui.DataType_S64-->  | ||
| + | <!--GIDEROSCST:ImGui.DataType_U8-->  | ||
| + | <!--GIDEROSCST:ImGui.DataType_U16-->  | ||
| + | <!--GIDEROSCST:ImGui.DataType_U32-->  | ||
| + | <!--GIDEROSCST:ImGui.DataType_U64 -->  | ||
| + | <!--GIDEROSCST:ImGui.Dir_None-->  | ||
| + | <!--GIDEROSCST:ImGui.Dir_Down-->  | ||
| + | <!--GIDEROSCST:ImGui.Dir_Left-->  | ||
| + | <!--GIDEROSCST:ImGui.Dir_Right-->  | ||
| + | <!--GIDEROSCST:ImGui.Dir_Up-->  | ||
| + | <!--GIDEROSCST:ImGui.DragDropFlags_None-->  | ||
| + | <!--GIDEROSCST:ImGui.DragDropFlags_AcceptBeforeDelivery-->  | ||
| + | <!--GIDEROSCST:ImGui.DragDropFlags_AcceptNoDrawDefaultRect-->  | ||
| + | <!--GIDEROSCST:ImGui.DragDropFlags_AcceptNoPreviewTooltip-->  | ||
| + | <!--GIDEROSCST:ImGui.DragDropFlags_AcceptPeekOnly-->  | ||
| + | <!--GIDEROSCST:ImGui.DragDropFlags_SourceAllowNullID-->  | ||
| + | <!--GIDEROSCST:ImGui.DragDropFlags_SourceAutoExpirePayload-->  | ||
| + | <!--GIDEROSCST:ImGui.DragDropFlags_SourceExtern-->  | ||
| + | <!--GIDEROSCST:ImGui.DragDropFlags_SourceNoDisableHover-->  | ||
| + | <!--GIDEROSCST:ImGui.DragDropFlags_SourceNoHoldToOpenOthers-->  | ||
| + | <!--GIDEROSCST:ImGui.DragDropFlags_SourceNoPreviewTooltip-->  | ||
| + | <!--GIDEROSCST:ImGui.FocusedFlags_None-->  | ||
| + | <!--GIDEROSCST:ImGui.FocusedFlags_AnyWindow-->  | ||
| + | <!--GIDEROSCST:ImGui.FocusedFlags_ChildWindows-->  | ||
| + | <!--GIDEROSCST:ImGui.FocusedFlags_NoPopupHierarchy-->  | ||
| + | <!--GIDEROSCST:ImGui.FocusedFlags_RootAndChildWindows-->  | ||
| + | <!--GIDEROSCST:ImGui.FocusedFlags_RootWindow -->  | ||
| + | <!--GIDEROSCST:ImGui.GlyphRanges_ChineseFull-->  | ||
| + | <!--GIDEROSCST:ImGui.GlyphRanges_ChineseSimplifiedCommon-->  | ||
| + | <!--GIDEROSCST:ImGui.GlyphRanges_Cyrillic-->  | ||
| + | <!--GIDEROSCST:ImGui.GlyphRanges_Default-->  | ||
| + | <!--GIDEROSCST:ImGui.GlyphRanges_Japanese-->  | ||
| + | <!--GIDEROSCST:ImGui.GlyphRanges_Korean-->  | ||
| + | <!--GIDEROSCST:ImGui.GlyphRanges_Thai-->  | ||
| + | <!--GIDEROSCST:ImGui.GlyphRanges_Vietnamese -->  | ||
| + | <!--GIDEROSCST:ImGui.HoveredFlags_None-->  | ||
| + | <!--GIDEROSCST:ImGui.HoveredFlags_AllowWhenBlockedByActiveItem-->  | ||
| + | <!--GIDEROSCST:ImGui.HoveredFlags_AllowWhenBlockedByPopup-->  | ||
| + | <!--GIDEROSCST:ImGui.HoveredFlags_AllowWhenDisabled-->  | ||
| + | <!--GIDEROSCST:ImGui.HoveredFlags_AllowWhenOverlapped-->  | ||
| + | <!--GIDEROSCST:ImGui.HoveredFlags_AnyWindow-->  | ||
| + | <!--GIDEROSCST:ImGui.HoveredFlags_ChildWindows-->  | ||
| + | <!--GIDEROSCST:ImGui.HoveredFlags_DelayNormal-->  | ||
| + | <!--GIDEROSCST:ImGui.HoveredFlags_DelayShort-->  | ||
| + | <!--GIDEROSCST:ImGui.HoveredFlags_NoNavOverride-->  | ||
| + | <!--GIDEROSCST:ImGui.HoveredFlags_NoSharedDelay-->  | ||
| + | <!--GIDEROSCST:ImGui.HoveredFlags_RectOnly-->  | ||
| + | <!--GIDEROSCST:ImGui.HoveredFlags_RootAndChildWindows-->  | ||
| + | <!--GIDEROSCST:ImGui.HoveredFlags_RootWindow -->  | ||
| + | <!--GIDEROSCST:ImGui.ImageScaleMode_FitHeight-->  | ||
| + | <!--GIDEROSCST:ImGui.ImageScaleMode_FitWidth-->  | ||
| + | <!--GIDEROSCST:ImGui.ImageScaleMode_LetterBox-->  | ||
| + | <!--GIDEROSCST:ImGui.ImageScaleMode_Stretch -->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_None-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_AllowTabInput-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_AlwaysInsertMode-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_AutoSelectAll-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_CallbackAlways-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_CallbackCharFilter-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_CallbackCompletion-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_CallbackEdit-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_CallbackHistory-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_CallbackResize-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_CharsDecimal-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_CharsHexadecimal-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_CharsNoBlank-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_CharsScientific-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_CharsUppercase-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_CtrlEnterForNewLine-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_EnterReturnsTrue-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_EscapeClearsAll-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_NoBackground-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_NoHorizontalScroll-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_NoUndoRedo-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_Password-->  | ||
| + | <!--GIDEROSCST:ImGui.InputTextFlags_ReadOnly -->  | ||
| + | <!--GIDEROSCST:ImGui.ItemFlags_ButtonRepeat-->  | ||
| + | <!--GIDEROSCST:ImGui.ItemFlags_Disabled-->  | ||
| + | <!--GIDEROSCST:ImGui.ItemFlags_NoTabStop -->  | ||
| + | <!--GIDEROSCST:ImGui.MouseButton_Left-->  | ||
| + | <!--GIDEROSCST:ImGui.MouseButton_Middle-->  | ||
| + | <!--GIDEROSCST:ImGui.MouseButton_Right -->  | ||
| + | <!--GIDEROSCST:ImGui.MouseCursor_None-->  | ||
| + | <!--GIDEROSCST:ImGui.MouseCursor_Arrow-->  | ||
| + | <!--GIDEROSCST:ImGui.MouseCursor_Hand-->  | ||
| + | <!--GIDEROSCST:ImGui.MouseCursor_NotAllowed-->  | ||
| + | <!--GIDEROSCST:ImGui.MouseCursor_ResizeAll-->  | ||
| + | <!--GIDEROSCST:ImGui.MouseCursor_ResizeEW-->  | ||
| + | <!--GIDEROSCST:ImGui.MouseCursor_ResizeNESW-->  | ||
| + | <!--GIDEROSCST:ImGui.MouseCursor_ResizeNS-->  | ||
| + | <!--GIDEROSCST:ImGui.MouseCursor_ResizeNWSE-->  | ||
| + | <!--GIDEROSCST:ImGui.MouseCursor_TextInput -->  | ||
| + | <!--GIDEROSCST:ImGui.NavInput_Activate-->  | ||
| + | <!--GIDEROSCST:ImGui.NavInput_Cancel-->  | ||
| + | <!--GIDEROSCST:ImGui.NavInput_DpadDown-->  | ||
| + | <!--GIDEROSCST:ImGui.NavInput_DpadLeft-->  | ||
| + | <!--GIDEROSCST:ImGui.NavInput_DpadRight-->  | ||
| + | <!--GIDEROSCST:ImGui.NavInput_DpadUp-->  | ||
| + | <!--GIDEROSCST:ImGui.NavInput_FocusNext-->  | ||
| + | <!--GIDEROSCST:ImGui.NavInput_FocusPrev-->  | ||
| + | <!--GIDEROSCST:ImGui.NavInput_Input-->  | ||
| + | <!--GIDEROSCST:ImGui.NavInput_LStickDown-->  | ||
| + | <!--GIDEROSCST:ImGui.NavInput_LStickLeft-->  | ||
| + | <!--GIDEROSCST:ImGui.NavInput_LStickRight-->  | ||
| + | <!--GIDEROSCST:ImGui.NavInput_LStickUp-->  | ||
| + | <!--GIDEROSCST:ImGui.NavInput_Menu-->  | ||
| + | <!--GIDEROSCST:ImGui.NavInput_TweakFast-->  | ||
| + | <!--GIDEROSCST:ImGui.NavInput_TweakSlow -->  | ||
| + | <!--GIDEROSCST:ImGui.PopupFlags_None-->  | ||
| + | <!--GIDEROSCST:ImGui.PopupFlags_AnyPopup-->  | ||
| + | <!--GIDEROSCST:ImGui.PopupFlags_AnyPopupId-->  | ||
| + | <!--GIDEROSCST:ImGui.PopupFlags_AnyPopupLevel-->  | ||
| + | <!--GIDEROSCST:ImGui.PopupFlags_MouseButtonDefault-->  | ||
| + | <!--GIDEROSCST:ImGui.PopupFlags_MouseButtonLeft-->  | ||
| + | <!--GIDEROSCST:ImGui.PopupFlags_MouseButtonMask-->  | ||
| + | <!--GIDEROSCST:ImGui.PopupFlags_MouseButtonMiddle-->  | ||
| + | <!--GIDEROSCST:ImGui.PopupFlags_MouseButtonRight-->  | ||
| + | <!--GIDEROSCST:ImGui.PopupFlags_NoOpenOverExistingPopup-->  | ||
| + | <!--GIDEROSCST:ImGui.PopupFlags_NoOpenOverItems -->  | ||
| + | <!--GIDEROSCST:ImGui.SelectableFlags_None-->  | ||
| + | <!--GIDEROSCST:ImGui.SelectableFlags_AllowDoubleClick-->  | ||
| + | <!--GIDEROSCST:ImGui.SelectableFlags_AllowItemOverlap-->  | ||
| + | <!--GIDEROSCST:ImGui.SelectableFlags_Disabled-->  | ||
| + | <!--GIDEROSCST:ImGui.SelectableFlags_DontClosePopups-->  | ||
| + | <!--GIDEROSCST:ImGui.SelectableFlags_SpanAllColumns -->  | ||
| + | <!--GIDEROSCST:ImGui.SliderFlags_None          -->  | ||
| + | <!--GIDEROSCST:ImGui.SliderFlags_AlwaysClamp-->  | ||
| + | <!--GIDEROSCST:ImGui.SliderFlags_Logarithmic  -->  | ||
| + | <!--GIDEROSCST:ImGui.SliderFlags_NoInput-->  | ||
| + | <!--GIDEROSCST:ImGui.SliderFlags_NoRoundToFormat -->  | ||
| + | <!--GIDEROSCST:ImGui.SortDirection_None-->  | ||
| + | <!--GIDEROSCST:ImGui.SortDirection_Ascending-->  | ||
| + | <!--GIDEROSCST:ImGui.SortDirection_Descending -->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_Alpha-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_ButtonTextAlign-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_CellPadding-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_ChildBorderSize-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_ChildRounding-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_DisabledAlpha-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_FrameBorderSize-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_FramePadding-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_FrameRounding-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_GrabMinSize-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_GrabRounding-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_IndentSpacing-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_ItemInnerSpacing-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_ItemSpacing-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_PopupBorderSize-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_PopupRounding-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_ScrollbarRounding-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_ScrollbarSize-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_SelectableTextAlign-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_SeparatorTextAlign-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_SeparatorTextBorderSize-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_SeparatorTextPadding-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_TabRounding-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_WindowBorderSize-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_WindowMinSize-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_WindowPadding-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_WindowRounding-->  | ||
| + | <!--GIDEROSCST:ImGui.StyleVar_WindowTitleAlign -->  | ||
| + | <!--GIDEROSCST:ImGui.TabBarFlags_None-->  | ||
| + | <!--GIDEROSCST:ImGui.TabBarFlags_AutoSelectNewTabs-->  | ||
| + | <!--GIDEROSCST:ImGui.TabBarFlags_FittingPolicyDefault-->  | ||
| + | <!--GIDEROSCST:ImGui.TabBarFlags_FittingPolicyMask-->  | ||
| + | <!--GIDEROSCST:ImGui.TabBarFlags_FittingPolicyResizeDown-->  | ||
| + | <!--GIDEROSCST:ImGui.TabBarFlags_FittingPolicyScroll-->  | ||
| + | <!--GIDEROSCST:ImGui.TabBarFlags_NoCloseWithMiddleMouseButton-->  | ||
| + | <!--GIDEROSCST:ImGui.TabBarFlags_NoTabListScrollingButtons-->  | ||
| + | <!--GIDEROSCST:ImGui.TabBarFlags_NoTooltip-->  | ||
| + | <!--GIDEROSCST:ImGui.TabBarFlags_Reorderable-->  | ||
| + | <!--GIDEROSCST:ImGui.TabBarFlags_TabListPopupButton -->  | ||
| + | <!--GIDEROSCST:ImGui.TabItemFlags_None-->  | ||
| + | <!--GIDEROSCST:ImGui.TabItemFlags_Leading-->  | ||
| + | <!--GIDEROSCST:ImGui.TabItemFlags_NoCloseWithMiddleMouseButton-->  | ||
| + | <!--GIDEROSCST:ImGui.TabItemFlags_NoPushId-->  | ||
| + | <!--GIDEROSCST:ImGui.TabItemFlags_NoReorder-->  | ||
| + | <!--GIDEROSCST:ImGui.TabItemFlags_NoTooltip-->  | ||
| + | <!--GIDEROSCST:ImGui.TabItemFlags_SetSelected-->  | ||
| + | <!--GIDEROSCST:ImGui.TabItemFlags_Trailing-->  | ||
| + | <!--GIDEROSCST:ImGui.TabItemFlags_UnsavedDocument -->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_None-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_Borders-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_BordersH-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_BordersInner-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_BordersInnerH -->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_BordersInnerV-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_BordersOuter-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_BordersOuterH-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_BordersOuterV-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_BordersV-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_ContextMenuInBody-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_Hideable-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_NoBordersInBody-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_NoBordersInBodyUntilResize-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_NoClip-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_NoHostExtendX-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_NoHostExtendY-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_NoKeepColumnsVisible-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_NoPadInnerX-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_NoPadOuterX-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_NoSavedSettings-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_PadOuterX-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_PreciseWidths-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_Reorderable-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_Resizable-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_RowBg-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_ScrollX-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_ScrollY-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_SizingFixedFit-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_SizingFixedSame-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_SizingStretchProp-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_SizingStretchSame-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_Sortable-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_SortMulti-->  | ||
| + | <!--GIDEROSCST:ImGui.TableFlags_SortTristate -->  | ||
| + | <!--GIDEROSCST:ImGui.TableBgTarget_None-->  | ||
| + | <!--GIDEROSCST:ImGui.TableBgTarget_CellBg-->  | ||
| + | <!--GIDEROSCST:ImGui.TableBgTarget_RowBg0-->  | ||
| + | <!--GIDEROSCST:ImGui.TableBgTarget_RowBg1 -->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_None-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_DefaultHide-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_DefaultSort-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_Disabled-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_IndentDisable-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_IndentEnable-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_IsEnabled-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_IsHovered-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_IsSorted-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_IsVisible-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_NoClip-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_NoHeaderLabel-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_NoHeaderWidth-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_NoHide-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_NoReorder-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_NoResize-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_NoSort-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_NoSortAscending-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_NoSortDescending-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_PreferSortAscending-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_PreferSortDescending-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_WidthFixed-->  | ||
| + | <!--GIDEROSCST:ImGui.TableColumnFlags_WidthStretch -->  | ||
| + | <!--GIDEROSCST:ImGui.TableRowFlags_None-->  | ||
| + | <!--GIDEROSCST:ImGui.TableRowFlags_Headers -->  | ||
| + | <!--GIDEROSCST:ImGui.TE_Background-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_Breakpoint-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_CharLiteral-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_ColorIndex-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_Comment-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_CurrentLineEdge-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_CurrentLineFill-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_CurrentLineFillInactive-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_Cursor-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_Default-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_ErrorMarker-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_Identifier-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_Keyword-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_KnownIdentifier-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_LineNumber-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_MultiLineComment-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_Number-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_Preprocessor-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_PreprocIdentifier-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_Punctuation-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_Selection-->  | ||
| + | <!--GIDEROSCST:ImGui.TE_String-->  | ||
| + | <!--GIDEROSCST:ImGui.TreeNodeFlags_None-->  | ||
| + | <!--GIDEROSCST:ImGui.TreeNodeFlags_AllowItemOverlap-->  | ||
| + | <!--GIDEROSCST:ImGui.TreeNodeFlags_Bullet-->  | ||
| + | <!--GIDEROSCST:ImGui.TreeNodeFlags_CollapsingHeader-->  | ||
| + | <!--GIDEROSCST:ImGui.TreeNodeFlags_DefaultOpen-->  | ||
| + | <!--GIDEROSCST:ImGui.TreeNodeFlags_Framed-->  | ||
| + | <!--GIDEROSCST:ImGui.TreeNodeFlags_FramePadding-->  | ||
| + | <!--GIDEROSCST:ImGui.TreeNodeFlags_Leaf-->  | ||
| + | <!--GIDEROSCST:ImGui.TreeNodeFlags_NavLeftJumpsBackHere-->  | ||
| + | <!--GIDEROSCST:ImGui.TreeNodeFlags_NoAutoOpenOnLog-->  | ||
| + | <!--GIDEROSCST:ImGui.TreeNodeFlags_NoTreePushOnOpen-->  | ||
| + | <!--GIDEROSCST:ImGui.TreeNodeFlags_OpenOnArrow-->  | ||
| + | <!--GIDEROSCST:ImGui.TreeNodeFlags_OpenOnDoubleClick-->  | ||
| + | <!--GIDEROSCST:ImGui.TreeNodeFlags_Selected-->  | ||
| + | <!--GIDEROSCST:ImGui.TreeNodeFlags_SpanAvailWidth-->  | ||
| + | <!--GIDEROSCST:ImGui.TreeNodeFlags_SpanFullWidth-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_None-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_AlwaysAutoResize-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_AlwaysHorizontalScrollbar-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_AlwaysUseWindowPadding-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_AlwaysVerticalScrollbar-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_FullScreen-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_HorizontalScrollbar-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_MenuBar-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_NoBackground-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_NoBringToFrontOnFocus-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_NoCollapse-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_NoDecoration-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_NoFocusOnAppearing-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_NoInputs-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_NoMouseInputs-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_NoMove-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_NoNav-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_NoNavFocus-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_NoNavInputs-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_NoResize-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_NoSavedSettings-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_NoScrollbar-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_NoScrollWithMouse-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_NoTitleBar-->  | ||
| + | <!--GIDEROSCST:ImGui.WindowFlags_UnsavedDocument-->  | ||
{{GIDEROS IMPORTANT LINKS}}  | {{GIDEROS IMPORTANT LINKS}}  | ||
Latest revision as of 01:46, 11 October 2024
Supported platforms: ![]()
![]()
![]()
![]()
![]()
![]()
![]()
Available since: Gideros 2020.9
Description
This is an implementation of the Dear ImGui library: https://github.com/ocornut/imgui.
Dear ImGui is licensed under the MIT License, see https://github.com/ocornut/imgui/blob/master/LICENSE.txt for more information.
To use Dear ImGui in your project you need to add the ImGui plugin and call require like so:
require "ImGui"
Current Gideros Dear ImGui version: 1.89.6.
User Guide
- Double-click on title bar to collapse window
 - Click and drag on lower corner to resize window (double-click to auto fit window to its contents)
 - CTRL+Click on a slider or drag box to input value as text
 - TAB/SHIFT+TAB to cycle through keyboard editable fields
 - CTRL+Tab to select a window
 - CTRL+Mouse Wheel to zoom window contents if io.FontAllowUserScaling is enabled
 - While inputing text:
- CTRL+Left/Right to word jump
 - CTRL+A or double-click to select all
 - CTRL+X/C/V to use clipboard cut/copy/paste
 - CTRL+Z,CTRL+Y to undo/redo
 - ESCAPE to revert
 
 - With keyboard navigation enabled:
- Arrow keys to navigate
 - Space to activate a widget
 - Return to input text into a widget
 - Escape to deactivate a widget, close popup, exit child window
 - Alt to jump to the menu layer of a window
 
 
Widgets
Widgets: Color Editor/Picker
* tip: the ColorEdit* functions have a little color square that can be left-clicked to open a picker, and right-clicked to open an option menu
Widgets: Input with Keyboard
* If you want to use InputText() with std::string or any custom dynamic string type, see misc/cpp/imgui_stdlib.h and comments in imgui_demo.cpp. * Most of the ImGuiInputTextFlags flags are only useful for InputText() and not for InputFloatX, InputIntX, InputDouble etc.
Widgets: Regular Sliders
* CTRL+Click on any slider to turn them into an input box. Manually input values aren't clamped and can go off-bounds.
* Adjust format string to decorate the value with a prefix, a suffix, or adapt the editing and display precision e.g. "%.3f" -> 1.234; "%5.2f secs" -> 01.23 secs; "Biscuit: %.0f" -> Biscuit: 1; etc.
* Format string may also be set to NULL or use the default format ("%f" or "%d").
If you get a warning converting a float to ImGuiSliderFlags, read https://github.com/ocornut/imgui/issues/3361
Widgets: Drag Sliders
* CTRL+Click on any drag box to turn them into an input box. Manually input values aren't clamped and can go off-bounds.
* For all the Float2/Float3/Float4/Int2/Int3/Int4 versions of every functions, note that a 'float v[X]' function argument is the same as 'float* v', the array syntax is just a way to document the number of elements that are expected to be accessible. You can pass address of your first element out of a contiguous set, e.g. &myvector.x
* Adjust format string to decorate the value with a prefix, a suffix, or adapt the editing and display precision e.g. "%.3f" -> 1.234; "%5.2f secs" -> 01.23 secs; "Biscuit: %.0f" -> Biscuit: 1; etc.
* Format string may also be set to NULL or use the default format ("%f" or "%d").
* Speed are per-pixel of mouse movement (v_speed=0.2f: mouse needs to move by 5 pixels to increase value by 1). For gamepad/keyboard navigation, minimum speed is Max(v_speed, minimum_step_at_given_precision).
* Use v_min < v_max to clamp edits to given limits. Note that CTRL+Click manual input can override those limits.
* Use v_max = FLT_MAX / INT_MAX etc to avoid clamping to a maximum, same with v_min = -FLT_MAX / INT_MIN to avoid clamping to a minimum.
* We use the same sets of flags for DragXXX() and SliderXXX() functions as the features are the same and it makes it easier to swap them.
Gideros Dear ImGui Documentation