carb::simplegui
-
namespace simplegui
Namespace for carb.simplegui plugin.
Enumerations
carb::simplegui::Condition: Condition for simplegui::setWindow***(), setNextWindow***(), setNextTreeNode***() functions.
carb::simplegui::DataType: A primary data type.
carb::simplegui::Direction: A cardinal direction.
carb::simplegui::MouseCursor: Enumeration for GetMouseCursor() User code may request binding to display given cursor by calling SetMouseCursor(), which is why we have some cursors that are marked unused here.
carb::simplegui::StyleColor: Enumeration for pushStyleColor() / popStyleColor()
carb::simplegui::StyleColorsPreset: Predefined Style Colors presets.
carb::simplegui::StyleVar: Defines style variable (properties) that can be used to temporarily modify UI styles.
Structs
carb::simplegui::ContextDesc: Defines a descriptor for simplegui context.
carb::simplegui::DrawCommand: Defines a drawing command.
carb::simplegui::DrawData: Defines the data used for drawing back-ends.
carb::simplegui::DrawList: Defines a list of draw commands.
carb::simplegui::DrawVertex: Defines a vertex used for drawing lists.
carb::simplegui::FontConfig: Structure defining the configuration for a font.
carb::simplegui::FontCustomRect: Structure of a custom rectangle for a font definition.
carb::simplegui::ISimpleGui: Defines the simplegui interface.
carb::simplegui::ListClipper: Helper: Manually clip large list of items.
carb::simplegui::Payload: Data payload for Drag and Drop operations: acceptDragDropPayload(), getDragDropPayload()
carb::simplegui::Style: Struct with all style variables.
carb::simplegui::TextEditCallbackData: Shared state of InputText(), passed to callback when a ImGuiInputTextFlags_Callback* flag is used and the corresponding callback is triggered.
carb::simplegui::Viewport: The viewports created and managed by simplegui.
carb::simplegui::WindowClass: [BETA] Rarely used / very advanced uses only. Use with SetNextWindowClass() and DockSpace() functions. Provide hints to the platform back-end via altered viewport flags (enable/disable OS decoration, OS task bar icons, etc.) and OS level parent/child relationships.
Typedefs
carb::simplegui::ColorEditFlags: Defines flags to be used in colorEdit3() / colorEdit4() / colorPicker3() / colorPicker4() / colorButton()
carb::simplegui::ComboFlags: Defines flags to be used in simplegui::beginCombo()
carb::simplegui::DockNodeFlags: Defines flags to be used in simplegui::dockSpace()
carb::simplegui::DragDropFlags: Defines flags to be used in simplegui::beginDragDropSource(), simplegui::acceptDragDropPayload()
carb::simplegui::DrawCallback: Draw callbacks for advanced uses.
carb::simplegui::DrawCornerFlags: Defines DrawCornerFlags.
carb::simplegui::FocusedFlags: Defines flags to be used in simplegui::isWindowFocused()
carb::simplegui::FontEnumFn: Font enumeration function.
carb::simplegui::HoveredFlags: Defines flags to be used in simplegui::isItemHovered(), simplegui::isWindowHovered()
carb::simplegui::InputTextFlags: Defines input text flags for simplegui::inputText()
carb::simplegui::ItemFlags: Defines item flags for simplegui::pushItemFlags().
carb::simplegui::KeyModifiers: Key modifiers returned by ISimpleGui::getKeyModifiers() .
carb::simplegui::SelectableFlags: Defines flags to be used in simplegui::selectable()
carb::simplegui::TabBarFlags: Defines flags to be used in simplegui::beginTabBar()
carb::simplegui::TabItemFlags: Defines flags to be used in simplegui::beginTabItem()
carb::simplegui::TextEditCallback: Definition of callback from InputText().
carb::simplegui::TextureId: User data to identify a texture.
carb::simplegui::TreeNodeFlags: Defines tree node flags to be used in simplegui::collapsingHeader(), simplegui::treeNodeEx()
carb::simplegui::ViewportFlags: Flags stored in ImGuiViewport::Flags, giving indications to the platform back-ends.
carb::simplegui::Wchar: SimpleGui-specific definition of a wide character.
carb::simplegui::WindowFlags: Defines window flags for simplegui::begin()
Variables
carb::simplegui::kColorEditFlagAlphaBar: ColorEdit, ColorPicker: show vertical alpha bar/gradient in picker.
carb::simplegui::kColorEditFlagAlphaPreview: ColorEdit, ColorPicker, ColorButton: display preview as a transparent color over a checkerboard, instead of opaque.
carb::simplegui::kColorEditFlagAlphaPreviewHalf: ColorEdit, ColorPicker, ColorButton: display half opaque / half checkerboard, instead of opaque.
carb::simplegui::kColorEditFlagFloat: [DataType] ColorEdit, ColorPicker, ColorButton: display values formatted as 0.0f..1.0f floats instead of 0..255 integers. No round-trip of value via integers.
carb::simplegui::kColorEditFlagHDR: (WIP) ColorEdit: Currently only disable 0.0f..1.0f limits in RGBA edition (note: you probably want to use ImGuiColorEditFlags_Float flag as well).
carb::simplegui::kColorEditFlagHEX: [Inputs]
carb::simplegui::kColorEditFlagHSV: [Inputs]
carb::simplegui::kColorEditFlagNoAlpha: ColorEdit, ColorPicker, ColorButton: ignore Alpha component (read 3 components from the input pointer).
carb::simplegui::kColorEditFlagNoInputs: ColorEdit, ColorPicker: disable inputs sliders/text widgets (e.g. to show only the small preview colored square).
carb::simplegui::kColorEditFlagNoLabel: ColorEdit, ColorPicker: disable display of inline text label (the label is still forwarded to the tooltip and picker).
carb::simplegui::kColorEditFlagNoOptions: ColorEdit: disable toggling options menu when right-clicking on inputs/small preview.
carb::simplegui::kColorEditFlagNoPicker: ColorEdit: disable picker when clicking on colored square.
carb::simplegui::kColorEditFlagNoSidePreview: ColorPicker: disable bigger color preview on right side of the picker, use small colored square preview instead.
carb::simplegui::kColorEditFlagNoSmallPreview: ColorEdit, ColorPicker: disable colored square preview next to the inputs. (e.g. to show only the inputs)
carb::simplegui::kColorEditFlagNoTooltip: ColorEdit, ColorPicker, ColorButton: disable tooltip when hovering the preview.
carb::simplegui::kColorEditFlagNone: Absence of other color edit flags.
carb::simplegui::kColorEditFlagPickerHueBar: [PickerMode] // ColorPicker: bar for Hue, rectangle for Sat/Value.
carb::simplegui::kColorEditFlagPickerHueWheel: [PickerMode] // ColorPicker: wheel for Hue, triangle for Sat/Value.
carb::simplegui::kColorEditFlagRGB: [Inputs] ColorEdit: choose one among RGB/HSV/HEX. ColorPicker: choose any combination using RGB/HSV/HEX.
carb::simplegui::kColorEditFlagUint8: [DataType] ColorEdit, ColorPicker, ColorButton: display values formatted as 0..255.
carb::simplegui::kComboFlagHeightLarge: Max ~20 items visible.
carb::simplegui::kComboFlagHeightLargest: As many fitting items as possible.
carb::simplegui::kComboFlagHeightMask: Composed flag.
carb::simplegui::kComboFlagHeightRegular: Max ~8 items visible (default)
carb::simplegui::kComboFlagHeightSmall: Max ~4 items visible. Tip: If you want your combo popup to be a specific size you can use SetNextWindowSizeConstraints() prior to calling BeginCombo()
carb::simplegui::kComboFlagNoArrowButton: Display on the preview box without the square arrow button.
carb::simplegui::kComboFlagNoPreview: Display only a square arrow button.
carb::simplegui::kComboFlagNone: Absence of other combo flags.
carb::simplegui::kComboFlagPopupAlignLeft: Align the popup toward the left by default.
carb::simplegui::kDockNodeFlagAutoHideTabBar: Tab bar will automatically hide when there is a single window in the dock node.
carb::simplegui::kDockNodeFlagKeepAliveOnly: Don't display the dockspace node but keep it alive. Windows docked into this dockspace node won't be undocked.
carb::simplegui::kDockNodeFlagNoDockingInCentralNode: Disable docking inside the Central Node, which will be always kept empty.
carb::simplegui::kDockNodeFlagNoResize: Disable resizing child nodes using the splitter/separators. Useful with programmatically setup dockspaces.
carb::simplegui::kDockNodeFlagNoSplit: Disable splitting the node into smaller nodes. Useful e.g. when embedding dockspaces into a main root one (the root one may have splitting disabled to reduce confusion)
carb::simplegui::kDockNodeFlagNone: Absence of other dock node flags.
carb::simplegui::kDockNodeFlagPassthruCentralNode: Enable passthru dockspace: 1) DockSpace() will render a ImGuiCol_WindowBg background covering everything excepted the Central Node when empty. Meaning the host window should probably use SetNextWindowBgAlpha(0.0f) prior to Begin() when using this. 2) When Central Node is empty: let inputs pass-through + won't display a DockingEmptyBg background. See demo for details.
carb::simplegui::kDragDropFlagAcceptBeforeDelivery: AcceptDragDropPayload() will returns true even before the mouse button is released. You can then call IsDelivery() to test if the payload needs to be delivered.
carb::simplegui::kDragDropFlagAcceptNoDrawDefaultRect: Do not draw the default highlight rectangle when hovering over target.
carb::simplegui::kDragDropFlagAcceptNoPreviewTooltip: Request hiding the BeginDragDropSource tooltip from the BeginDragDropTarget site.
carb::simplegui::kDragDropFlagAcceptPeekOnly: For peeking ahead and inspecting the payload before delivery.
carb::simplegui::kDragDropFlagNone: Absence of other drag/drop flags.
carb::simplegui::kDragDropFlagSourceAllowNullID: Allow items such as Text(), Image() that have no unique identifier to be used as drag source, by manufacturing a temporary identifier based on their window-relative position. This is extremely unusual within the simplegui ecosystem and so we made it explicit.
carb::simplegui::kDragDropFlagSourceAutoExpirePayload: Automatically expire the payload if the source cease to be submitted (otherwise payloads are persisting while being dragged)
carb::simplegui::kDragDropFlagSourceExtern: External source (from outside of simplegui), won't attempt to read current item/window info. Will always return true. Only one Extern source can be active simultaneously.
carb::simplegui::kDragDropFlagSourceNoDisableHover: By default, when dragging we clear data so that IsItemHovered() will return true, to avoid subsequent user code submitting tooltips. This flag disable this behavior so you can still call IsItemHovered() on the source item.
carb::simplegui::kDragDropFlagSourceNoHoldToOpenOthers: Disable the behavior that allows to open tree nodes and collapsing header by holding over them while dragging a source item.
carb::simplegui::kDragDropFlagSourceNoPreviewTooltip: By default, a successful call to BeginDragDropSource opens a tooltip so you can display a preview or description of the source contents. This flag disable this behavior.
carb::simplegui::kDrawCornerFlagAll: All corners.
carb::simplegui::kDrawCornerFlagBot: Bottom.
carb::simplegui::kDrawCornerFlagBotLeft: Bottom left.
carb::simplegui::kDrawCornerFlagBotRight: Bottom right.
carb::simplegui::kDrawCornerFlagTopLeft: Top left.
carb::simplegui::kDrawCornerFlagTopRight: Top right.
carb::simplegui::kFocusedFlagAnyWindow: IsWindowFocused(): Return true if any window is focused.
carb::simplegui::kFocusedFlagChildWindows: IsWindowFocused(): Return true if any children of the window is focused.
carb::simplegui::kFocusedFlagNone: Absence of other focused flags.
carb::simplegui::kFocusedFlagRootAndChildWindows: Composed flag.
carb::simplegui::kFocusedFlagRootWindow: IsWindowFocused(): Test from root window (top most parent of the current hierarchy)
carb::simplegui::kHoveredFlagAllowWhenBlockedByActiveItem: Return true even if an active item is blocking access to this item/window. Useful for Drag and Drop patterns.
carb::simplegui::kHoveredFlagAllowWhenBlockedByPopup: Return true even if a popup window is normally blocking access to this item/window.
carb::simplegui::kHoveredFlagAllowWhenDisabled: Return true even if the item is disabled.
carb::simplegui::kHoveredFlagAllowWhenOverlapped: Return true even if the position is overlapped by another window.
carb::simplegui::kHoveredFlagAnyWindow: IsWindowHovered() only: Return true if any window is hovered.
carb::simplegui::kHoveredFlagChildWindows: IsWindowHovered() only: Return true if any children of the window is hovered.
carb::simplegui::kHoveredFlagNone: Return true if directly over the item/window, not obstructed by another window, not obstructed by an active popup or modal blocking inputs under them.
carb::simplegui::kHoveredFlagRectOnly: Composed flag.
carb::simplegui::kHoveredFlagRootAndChildWindows: Composed flag.
carb::simplegui::kHoveredFlagRootWindow: IsWindowHovered() only: Test from root window (top most parent of the current hierarchy)
carb::simplegui::kInputTextFlagAllowTabInput: Pressing TAB input a
\t
character into the text field.carb::simplegui::kInputTextFlagAlwaysInsertMode: Insert mode.
carb::simplegui::kInputTextFlagAutoSelectAll: Select entire text when first taking mouse focus.
carb::simplegui::kInputTextFlagCallbackAlways: Call user function every time. User code may query cursor position, modify text buffer.
carb::simplegui::kInputTextFlagCallbackCharFilter: Call user function to filter character. Modify data->EventChar to replace/filter input, or return 1 to discard character.
carb::simplegui::kInputTextFlagCallbackCompletion: Call user function on pressing TAB (for completion handling)
carb::simplegui::kInputTextFlagCallbackHistory: Call user function on pressing Up/Down arrows (for history handling)
carb::simplegui::kInputTextFlagCallbackResize: Callback on buffer capacity changes request (beyond
buf_size
parameter value)carb::simplegui::kInputTextFlagCharsDecimal: Allow
0123456789.+-*‍/
carb::simplegui::kInputTextFlagCharsHexadecimal: Allow
0123456789ABCDEFabcdef
carb::simplegui::kInputTextFlagCharsNoBlank: Filter out spaces, tabs.
carb::simplegui::kInputTextFlagCharsScientific: Allow
0123456789.+-*‍/eE
(Scientific notation input)carb::simplegui::kInputTextFlagCharsUppercase: Turn
a..z
intoA..Z
carb::simplegui::kInputTextFlagCtrlEnterForNewLine: In multi-line mode, unfocus with Enter, add new line with Ctrl+Enter (default is opposite: unfocus with Ctrl+Enter, add line with Enter).
carb::simplegui::kInputTextFlagEnterReturnsTrue: Return 'true' when Enter is pressed (as opposed to when the value was modified)
carb::simplegui::kInputTextFlagNoHorizontalScroll: Disable following the cursor horizontally.
carb::simplegui::kInputTextFlagNoUndoRedo: Disable undo/redo. Note that input text owns the text data while active, if you want to provide your own undo/redo stack you need e.g. to call ClearActiveID().
carb::simplegui::kInputTextFlagNone: Absence of other input text flags.
carb::simplegui::kInputTextFlagPassword: Password mode, display all characters as '*'.
carb::simplegui::kInputTextFlagReadOnly: Read-only mode.
carb::simplegui::kItemFlagButtonRepeat: Button repeat.
carb::simplegui::kItemFlagDefault: Absence of other item flags.
carb::simplegui::kItemFlagDisabled: Disable interactions.
carb::simplegui::kItemFlagNoNav: No Navigation.
carb::simplegui::kItemFlagNoNavDefaultFocus: No Navigation Default Focus.
carb::simplegui::kItemFlagSelectableDontClosePopup: MenuItem/Selectable() automatically closes current Popup window.
carb::simplegui::kItemFlagsNoTabStop: No tab stop.
carb::simplegui::kKeyModifierAlt: Indicates ALT is held.
carb::simplegui::kKeyModifierCtrl: Indicates CTRL is held.
carb::simplegui::kKeyModifierNone: Indicates no key modifiers.
carb::simplegui::kKeyModifierShift: Indicates SHIFT is held.
carb::simplegui::kKeyModifierSuper: Indicates a "super key" is held (Cmd/Windows/etc.).
carb::simplegui::kSelectableFlagAllowDoubleClick: Generate press events on double clicks too.
carb::simplegui::kSelectableFlagDisabled: Cannot be selected, display grayed out text.
carb::simplegui::kSelectableFlagDontClosePopups: Clicking this don't close parent popup window.
carb::simplegui::kSelectableFlagNone: Absence of other selectable flags.
carb::simplegui::kSelectableFlagSpanAllColumns: Selectable frame can span all columns (text will still fit in current column)
carb::simplegui::kTabBarFlagAutoSelectNewTabs: Automatically select new tabs when they appear.
carb::simplegui::kTabBarFlagFittingPolicyDefault: Composed flag.
carb::simplegui::kTabBarFlagFittingPolicyMask: Composed flag.
carb::simplegui::kTabBarFlagFittingPolicyResizeDown: Resize tabs when they don't fit.
carb::simplegui::kTabBarFlagFittingPolicyScroll: Add scroll buttons when tabs don't fit.
carb::simplegui::kTabBarFlagNoCloseWithMiddleMouseButton: Disable behavior of closing tabs (that are submitted with
p_open != NULL
) with middle mouse button. You can still repro this behavior on user's side with if (IsItemHovered() && IsMouseClicked(2))*p_open = false
.carb::simplegui::kTabBarFlagNoTabListScrollingButtons: No scrolling buttons.
carb::simplegui::kTabBarFlagNoTooltip: Disable tooltips when hovering a tab.
carb::simplegui::kTabBarFlagNone: Absence of other tab bar flags.
carb::simplegui::kTabBarFlagReorderable: Allow manually dragging tabs to re-order them + New tabs are appended at the end of list.
carb::simplegui::kTabBarFlagTabListPopupButton: Tab list popup button.
carb::simplegui::kTabItemFlagNoCloseWithMiddleMouseButton: Disable behavior of closing tabs (that are submitted with
p_open != NULL
) with middle mouse button. You can still repro this behavior on user's side with if (IsItemHovered() && IsMouseClicked(2))*p_open = false
.carb::simplegui::kTabItemFlagNoPushId: Don't call PushID(tab->ID)/PopID() on BeginTabItem()/EndTabItem()
carb::simplegui::kTabItemFlagNone: Absence of other tab item flags.
carb::simplegui::kTabItemFlagSetSelected: Trigger flag to programmatically make the tab selected when calling BeginTabItem()
carb::simplegui::kTabItemFlagUnsavedDocument: Append '*' to title without affecting the ID; as a convenience to avoid using the ### operator. Also: tab is selected on closure and closure is deferred by one frame to allow code to undo it without flicker.
carb::simplegui::kTreeNodeFlagAllowItemOverlap: Hit testing to allow subsequent widgets to overlap this one.
carb::simplegui::kTreeNodeFlagBullet: Display a bullet instead of arrow.
carb::simplegui::kTreeNodeFlagCollapsingHeader: Composed flag indicating collapsing header.
carb::simplegui::kTreeNodeFlagDefaultOpen: Default node to be open.
carb::simplegui::kTreeNodeFlagFramePadding: Use FramePadding (even for an unframed text node) to vertically align text baseline to regular widget.
carb::simplegui::kTreeNodeFlagFramed: Full colored frame (e.g. for CollapsingHeader)
carb::simplegui::kTreeNodeFlagLeaf: No collapsing, no arrow (use as a convenience for leaf nodes).
carb::simplegui::kTreeNodeFlagNavLeftJumpsBackHere: (WIP) Nav: left direction may move to this TreeNode() from any of its child (items submitted between TreeNode and TreePop)
carb::simplegui::kTreeNodeFlagNoAutoOpenOnLog: Don't automatically and temporarily open node when Logging is active (by default logging will automatically open tree nodes)
carb::simplegui::kTreeNodeFlagNoTreePushOnOpen: Don't do a TreePush() when open (e.g. for CollapsingHeader) = no extra indent nor pushing on ID stack.
carb::simplegui::kTreeNodeFlagNone: Absence of other tree node flags.
carb::simplegui::kTreeNodeFlagOpenOnArrow: Only open when clicking on the arrow part. If kTreeNodeFlagOpenOnDoubleClick is also set, single-click arrow or double-click all box to open.
carb::simplegui::kTreeNodeFlagOpenOnDoubleClick: Need double-click to open node.
carb::simplegui::kTreeNodeFlagSelected: Draw as selected.
carb::simplegui::kViewportFlagNoDecoration: Platform Window: Disable platform decorations: title bar; borders; etc.
carb::simplegui::kViewportFlagNoFocusOnAppearing: Platform Window: Don't take focus when created.
carb::simplegui::kViewportFlagNoFocusOnClick: Platform Window: Don't take focus when clicked on.
carb::simplegui::kViewportFlagNoInputs: Platform Window: Make mouse pass through so we can drag this window while peaking behind it.
carb::simplegui::kViewportFlagNoRendererClear: Platform Window: Renderer doesn't need to clear the framebuffer ahead.
carb::simplegui::kViewportFlagNoTaskBarIcon: Platform Window: Disable platform task bar icon (for popups; menus; or all windows if ImGuiConfigFlags_ViewportsNoTaskBarIcons if set)
carb::simplegui::kViewportFlagNone: Absence of other viewport flags.
carb::simplegui::kViewportFlagTopMost: Platform Window: Display on top (for tooltips only)
carb::simplegui::kWindowFlagAlwaysAutoResize: Window Flag to resize every window to its content every frame.
carb::simplegui::kWindowFlagAlwaysHorizontalScrollbar: Window Flag to always show horizontal scrollbar (even if content Size.x < Size.x).
carb::simplegui::kWindowFlagAlwaysUseWindowPadding: Window Flag to ensure child windows without border uses style.WindowPadding. Ignored by default for non-bordered child windows, because more convenient.
carb::simplegui::kWindowFlagAlwaysVerticalScrollbar: Window Flag to always show vertical scrollbar (even if content Size.y < Size.y).
carb::simplegui::kWindowFlagHorizontalScrollbar: Window Flag to allow horizontal scrollbar to appear (off by default). You may use
SetNextWindowContentSize(Float2(width,0.0f))
, prior to calling Begin() to specify width.carb::simplegui::kWindowFlagMenuBar: Window Flag to state that this has a menu-bar.
carb::simplegui::kWindowFlagNoBackground: Window Flag to disable drawing background color (WindowBg, etc.) and outside border. Similar as using SetNextWindowBgAlpha(0.0f).
carb::simplegui::kWindowFlagNoBringToFrontOnFocus: Window Flag to disable bringing window to front when taking focus. (Ex. clicking on it or programmatically giving it focus).
carb::simplegui::kWindowFlagNoCollapse: Window Flag to disable user collapsing window by double-clicking on it.
carb::simplegui::kWindowFlagNoDecoration: Special composed Window Flag to disable all decorative elements.
carb::simplegui::kWindowFlagNoDocking: Disable docking of this window.
carb::simplegui::kWindowFlagNoFocusOnAppearing: Window Flag to disable taking focus when transitioning from hidden to visible state.
carb::simplegui::kWindowFlagNoInput: Special composed Window Flag to disable input.
carb::simplegui::kWindowFlagNoMouseInputs: Window Flag to disable catching mouse, hovering test with pass through.
carb::simplegui::kWindowFlagNoMove: Window Flag to disable user moving the window.
carb::simplegui::kWindowFlagNoNav: Special composed Window Flag to disable navigation.
carb::simplegui::kWindowFlagNoNavFocus: No focusing toward this window with gamepad/keyboard navigation (e.g. skipped by CTRL+TAB)
carb::simplegui::kWindowFlagNoNavInputs: No gamepad/keyboard navigation within the window.
carb::simplegui::kWindowFlagNoResize: Window Flag to disable user resizing with the lower-right grip.
carb::simplegui::kWindowFlagNoSavedSettings: Window Flag to never load/save settings in .ini file.
carb::simplegui::kWindowFlagNoScrollWithMouse: Window Flag to disable user vertically scrolling with mouse wheel. On child window, mouse wheel will be forwarded to the parent unless NoScrollbar is also set..
carb::simplegui::kWindowFlagNoScrollbar: Window Flag to disable user moving the window.
carb::simplegui::kWindowFlagNoTitleBar: Window Flag to disable the title bar.
carb::simplegui::kWindowFlagNone: Indicates the absence of all other window flags.
carb::simplegui::kWindowFlagUnsavedDocument: Append '*' to title without affecting the ID, as a convenience to avoid using the ### operator. When used in a tab/docking context, tab is selected on closure and closure is deferred by one frame to allow code to cancel the closure (with a confirmation popup, etc.) without flicker.