mirror of
https://github.com/ocornut/imgui.git
synced 2025-12-18 20:35:30 +00:00
Misc: standardized casing of keyboard mods in comments and demo ("CTRL" -> "Ctrl").
This commit is contained in:
90
imgui.cpp
90
imgui.cpp
@@ -131,7 +131,7 @@ CODE
|
||||
|
||||
- MOUSE CONTROLS
|
||||
- Mouse wheel: Scroll vertically.
|
||||
- SHIFT+Mouse wheel: Scroll horizontally.
|
||||
- Shift+Mouse wheel: Scroll horizontally.
|
||||
- Click [X]: Close a window, available when 'bool* p_open' is passed to ImGui::Begin().
|
||||
- Click ^, Double-Click title: Collapse window.
|
||||
- Drag on corner/border: Resize window (double-click to auto fit window to its contents).
|
||||
@@ -139,23 +139,23 @@ CODE
|
||||
- Left-click outside popup: Close popup stack (right-click over underlying popup: Partially close popup stack).
|
||||
|
||||
- TEXT EDITOR
|
||||
- Hold SHIFT or Drag Mouse: Select text.
|
||||
- CTRL+Left/Right: Word jump.
|
||||
- CTRL+Shift+Left/Right: Select words.
|
||||
- CTRL+A or Double-Click: Select All.
|
||||
- CTRL+X, CTRL+C, CTRL+V: Use OS clipboard.
|
||||
- CTRL+Z Undo.
|
||||
- CTRL+Y or CTRL+Shift+Z: Redo.
|
||||
- Hold Shift or Drag Mouse: Select text.
|
||||
- Ctrl+Left/Right: Word jump.
|
||||
- Ctrl+Shift+Left/Right: Select words.
|
||||
- Ctrl+A or Double-Click: Select All.
|
||||
- Ctrl+X, Ctrl+C, Ctrl+V: Use OS clipboard.
|
||||
- Ctrl+Z Undo.
|
||||
- Ctrl+Y or Ctrl+Shift+Z: Redo.
|
||||
- ESCAPE: Revert text to its original value.
|
||||
- On OSX, controls are automatically adjusted to match standard OSX text editing 2ts and behaviors.
|
||||
|
||||
- KEYBOARD CONTROLS
|
||||
- Basic:
|
||||
- Tab, SHIFT+Tab Cycle through text editable fields.
|
||||
- CTRL+Tab, CTRL+Shift+Tab Cycle through windows.
|
||||
- CTRL+Click Input text into a Slider or Drag widget.
|
||||
- Tab, Shift+Tab Cycle through text editable fields.
|
||||
- Ctrl+Tab, Ctrl+Shift+Tab Cycle through windows.
|
||||
- Ctrl+Click Input text into a Slider or Drag widget.
|
||||
- Extended features with `io.ConfigFlags |= ImGuiConfigFlags_NavEnableKeyboard`:
|
||||
- Tab, SHIFT+Tab: Cycle through every items.
|
||||
- Tab, Shift+Tab: Cycle through every items.
|
||||
- Arrow keys Move through items using directional navigation. Tweak value.
|
||||
- Arrow keys + Alt, Shift Tweak slower, tweak faster (when using arrow keys).
|
||||
- Enter Activate item (prefer text input when possible).
|
||||
@@ -164,7 +164,7 @@ CODE
|
||||
- Page Up, Page Down Previous page, next page.
|
||||
- Home, End Scroll to top, scroll to bottom.
|
||||
- Alt Toggle between scrolling layer and menu layer.
|
||||
- CTRL+Tab then Ctrl+Arrows Move window. Hold SHIFT to resize instead of moving.
|
||||
- Ctrl+Tab then Ctrl+Arrows Move window. Hold Shift to resize instead of moving.
|
||||
- Output when ImGuiConfigFlags_NavEnableKeyboard set,
|
||||
- io.WantCaptureKeyboard flag is set when keyboard is claimed.
|
||||
- io.NavActive: true when a window is focused and it doesn't have the ImGuiWindowFlags_NoNavInputs flag set.
|
||||
@@ -1245,13 +1245,13 @@ IMPLEMENTING SUPPORT for ImGuiBackendFlags_RendererHasTextures:
|
||||
#endif
|
||||
|
||||
// Debug options
|
||||
#define IMGUI_DEBUG_NAV_SCORING 0 // Display navigation scoring preview when hovering items. Hold CTRL to display for all candidates. CTRL+Arrow to change last direction.
|
||||
#define IMGUI_DEBUG_NAV_SCORING 0 // Display navigation scoring preview when hovering items. Hold Ctrl to display for all candidates. Ctrl+Arrow to change last direction.
|
||||
#define IMGUI_DEBUG_NAV_RECTS 0 // Display the reference navigation rectangle for each window
|
||||
|
||||
// Default font size if unspecified in both style.FontSizeBase and AddFontXXX() calls.
|
||||
static const float FONT_DEFAULT_SIZE = 20.0f;
|
||||
|
||||
// When using CTRL+TAB (or Gamepad Square+L/R) we delay the visual a little in order to reduce visual noise doing a fast switch.
|
||||
// When using Ctrl+Tab (or Gamepad Square+L/R) we delay the visual a little in order to reduce visual noise doing a fast switch.
|
||||
static const float NAV_WINDOWING_HIGHLIGHT_DELAY = 0.20f; // Time before the highlight and screen dimming starts fading in
|
||||
static const float NAV_WINDOWING_LIST_APPEAR_DELAY = 0.15f; // Time before the window list starts to appear
|
||||
static const float NAV_ACTIVATE_HIGHLIGHT_TIMER = 0.10f; // Time to highlight an item activated by a shortcut.
|
||||
@@ -5175,7 +5175,7 @@ void ImGui::StopMouseMovingWindow()
|
||||
}
|
||||
|
||||
// Handle mouse moving window
|
||||
// Note: moving window with the navigation keys (Square + d-pad / CTRL+TAB + Arrows) are processed in NavUpdateWindowing()
|
||||
// Note: moving window with the navigation keys (Square + d-pad / Ctrl+Tab + Arrows) are processed in NavUpdateWindowing()
|
||||
// FIXME: We don't have strong guarantee that g.MovingWindow stay synced with g.ActiveId == g.MovingWindow->MoveId.
|
||||
// This is currently enforced by the fact that BeginDragDropSource() is setting all g.ActiveIdUsingXXXX flags to inhibit navigation inputs,
|
||||
// but if we should more thoroughly test cases where g.ActiveId or g.MovingWindow gets changed and not the other.
|
||||
@@ -5448,7 +5448,7 @@ void ImGui::NewFrame()
|
||||
KeepAliveID(g.DragDropPayload.SourceId);
|
||||
|
||||
// [DEBUG]
|
||||
if (!g.IO.ConfigDebugHighlightIdConflicts || !g.IO.KeyCtrl) // Count is locked while holding CTRL
|
||||
if (!g.IO.ConfigDebugHighlightIdConflicts || !g.IO.KeyCtrl) // Count is locked while holding Ctrl
|
||||
g.DebugDrawIdConflictsId = 0;
|
||||
if (g.IO.ConfigDebugHighlightIdConflicts && g.HoveredIdPreviousFrameItemCount > 1)
|
||||
g.DebugDrawIdConflictsId = g.HoveredIdPreviousFrame;
|
||||
@@ -5835,10 +5835,10 @@ static void ImGui::RenderDimmedBackgrounds()
|
||||
}
|
||||
else if (dim_bg_for_window_list)
|
||||
{
|
||||
// Draw dimming behind CTRL+Tab target window and behind CTRL+Tab UI window
|
||||
// Draw dimming behind Ctrl+Tab target window and behind Ctrl+Tab UI window
|
||||
RenderDimmedBackgroundBehindWindow(g.NavWindowingTargetAnim, GetColorU32(ImGuiCol_NavWindowingDimBg, g.DimBgRatio));
|
||||
|
||||
// Draw border around CTRL+Tab target window
|
||||
// Draw border around Ctrl+Tab target window
|
||||
ImGuiWindow* window = g.NavWindowingTargetAnim;
|
||||
ImGuiViewport* viewport = GetMainViewport();
|
||||
float distance = g.FontSize;
|
||||
@@ -5894,7 +5894,7 @@ void ImGui::EndFrame()
|
||||
g.CurrentWindow->Active = false;
|
||||
End();
|
||||
|
||||
// Update navigation: CTRL+Tab, wrap-around requests
|
||||
// Update navigation: Ctrl+Tab, wrap-around requests
|
||||
NavEndFrame();
|
||||
|
||||
// Drag and Drop: Elapse payload (if delivered, or if source stops being submitted)
|
||||
@@ -7460,7 +7460,7 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags)
|
||||
// Update stored window name when it changes (which can _only_ happen with the "###" operator, so the ID would stay unchanged).
|
||||
// The title bar always display the 'name' parameter, so we only update the string storage if it needs to be visible to the end-user elsewhere.
|
||||
bool window_title_visible_elsewhere = false;
|
||||
if (g.NavWindowingListWindow != NULL && (flags & ImGuiWindowFlags_NoNavFocus) == 0) // Window titles visible when using CTRL+TAB
|
||||
if (g.NavWindowingListWindow != NULL && (flags & ImGuiWindowFlags_NoNavFocus) == 0) // Window titles visible when using Ctrl+Tab
|
||||
window_title_visible_elsewhere = true;
|
||||
if (flags & ImGuiWindowFlags_ChildMenu)
|
||||
window_title_visible_elsewhere = true;
|
||||
@@ -7938,7 +7938,7 @@ bool ImGui::Begin(const char* name, bool* p_open, ImGuiWindowFlags flags)
|
||||
if (want_focus && window == g.NavWindow)
|
||||
NavInitWindow(window, false); // <-- this is in the way for us to be able to defer and sort reappearing FocusWindow() calls
|
||||
|
||||
// Pressing CTRL+C copy window content into the clipboard
|
||||
// Pressing Ctrl+C copy window content into the clipboard
|
||||
// [EXPERIMENTAL] Breaks on nested Begin/End pairs. We need to work that out and add better logging scope.
|
||||
// [EXPERIMENTAL] Text outputs has many issues.
|
||||
if (g.IO.ConfigWindowsCopyContentsWithCtrlC)
|
||||
@@ -10059,7 +10059,7 @@ static void ImGui::UpdateMouseInputs()
|
||||
ImGuiIO& io = g.IO;
|
||||
|
||||
// Mouse Wheel swapping flag
|
||||
// As a standard behavior holding SHIFT while using Vertical Mouse Wheel triggers Horizontal scroll instead
|
||||
// As a standard behavior holding Shift while using Vertical Mouse Wheel triggers Horizontal scroll instead
|
||||
// - We avoid doing it on OSX as it the OS input layer handles this already.
|
||||
// - FIXME: However this means when running on OSX over Emscripten, Shift+WheelY will incur two swapping (1 in OS, 1 here), canceling the feature.
|
||||
// - FIXME: When we can distinguish e.g. touchpad scroll events from mouse ones, we'll set this accordingly based on input source.
|
||||
@@ -11021,7 +11021,7 @@ void ImGui::ErrorCheckEndFrameFinalizeErrorTooltip()
|
||||
Separator();
|
||||
if (g.IO.ConfigDebugHighlightIdConflictsShowItemPicker)
|
||||
{
|
||||
Text("(Hold CTRL to: use ");
|
||||
Text("(Hold Ctrl to: use ");
|
||||
SameLine(0.0f, 0.0f);
|
||||
if (SmallButton("Item Picker"))
|
||||
DebugStartItemPicker();
|
||||
@@ -11030,10 +11030,10 @@ void ImGui::ErrorCheckEndFrameFinalizeErrorTooltip()
|
||||
}
|
||||
else
|
||||
{
|
||||
Text("(Hold CTRL to ");
|
||||
Text("(Hold Ctrl to: ");
|
||||
}
|
||||
SameLine(0.0f, 0.0f);
|
||||
TextLinkOpenURL("Read FAQ \"About ID Stack System\"", "https://github.com/ocornut/imgui/blob/master/docs/FAQ.md#qa-usage");
|
||||
TextLinkOpenURL("read FAQ \"About ID Stack System\"", "https://github.com/ocornut/imgui/blob/master/docs/FAQ.md#qa-usage");
|
||||
SameLine(0.0f, 0.0f);
|
||||
Text(")");
|
||||
EndErrorTooltip();
|
||||
@@ -11042,8 +11042,8 @@ void ImGui::ErrorCheckEndFrameFinalizeErrorTooltip()
|
||||
if (g.ErrorCountCurrentFrame > 0 && BeginErrorTooltip()) // Amend at end of frame
|
||||
{
|
||||
Separator();
|
||||
Text("(Hold CTRL to:");
|
||||
SameLine();
|
||||
Text("(Hold Ctrl to: ");
|
||||
SameLine(0.0f, 0.0f);
|
||||
if (SmallButton("Enable Asserts"))
|
||||
g.IO.ConfigErrorRecoveryEnableAssert = true;
|
||||
//SameLine();
|
||||
@@ -11056,7 +11056,7 @@ void ImGui::ErrorCheckEndFrameFinalizeErrorTooltip()
|
||||
#endif
|
||||
}
|
||||
|
||||
// Pseudo-tooltip. Follow mouse until CTRL is held. When CTRL is held we lock position, allowing to click it.
|
||||
// Pseudo-tooltip. Follow mouse until Ctrl is held. When Ctrl is held we lock position, allowing to click it.
|
||||
bool ImGui::BeginErrorTooltip()
|
||||
{
|
||||
ImGuiContext& g = *GImGui;
|
||||
@@ -13054,7 +13054,7 @@ static bool ImGui::NavScoreItem(ImGuiNavItemData* result, const ImRect& nav_bb)
|
||||
const ImGuiDir move_dir = g.NavMoveDir;
|
||||
#if IMGUI_DEBUG_NAV_SCORING
|
||||
char buf[200];
|
||||
if (g.IO.KeyCtrl) // Hold CTRL to preview score in matching quadrant. CTRL+Arrow to rotate.
|
||||
if (g.IO.KeyCtrl) // Hold Ctrl to preview score in matching quadrant. Ctrl+Arrow to rotate.
|
||||
{
|
||||
if (quadrant == move_dir)
|
||||
{
|
||||
@@ -13600,7 +13600,7 @@ static void ImGui::NavUpdate()
|
||||
if (g.NavWindow && g.NavWindow->NavLastChildNavWindow != NULL && g.NavLayer == ImGuiNavLayer_Main)
|
||||
g.NavWindow->NavLastChildNavWindow = NULL;
|
||||
|
||||
// Update CTRL+TAB and Windowing features (hold Square to move/resize/etc.)
|
||||
// Update Ctrl+Tab and Windowing features (hold Square to move/resize/etc.)
|
||||
NavUpdateWindowing();
|
||||
|
||||
// Set output flags for user application
|
||||
@@ -13817,7 +13817,7 @@ void ImGui::NavUpdateCreateMoveRequest()
|
||||
g.NavScoringNoClipRect.TranslateY(scoring_rect_offset_y);
|
||||
}
|
||||
|
||||
// [DEBUG] Always send a request when holding CTRL. Hold CTRL + Arrow change the direction.
|
||||
// [DEBUG] Always send a request when holding Ctrl. Hold Ctrl + Arrow change the direction.
|
||||
#if IMGUI_DEBUG_NAV_SCORING
|
||||
//if (io.KeyCtrl && IsKeyPressed(ImGuiKey_C))
|
||||
// g.NavMoveDirForDebug = (ImGuiDir)((g.NavMoveDirForDebug + 1) & 3);
|
||||
@@ -14169,7 +14169,7 @@ static void ImGui::NavEndFrame()
|
||||
{
|
||||
ImGuiContext& g = *GImGui;
|
||||
|
||||
// Show CTRL+TAB list window
|
||||
// Show Ctrl+Tab list window
|
||||
if (g.NavWindowingTarget != NULL)
|
||||
NavUpdateWindowingOverlay();
|
||||
|
||||
@@ -14239,8 +14239,8 @@ static void ImGui::NavUpdateCreateWrappingRequest()
|
||||
NavMoveRequestForward(g.NavMoveDir, clip_dir, move_flags, g.NavMoveScrollFlags);
|
||||
}
|
||||
|
||||
// Can we focus this window with CTRL+TAB (or PadMenu + PadFocusPrev/PadFocusNext)
|
||||
// Note that NoNavFocus makes the window not reachable with CTRL+TAB but it can still be focused with mouse or programmatically.
|
||||
// Can we focus this window with Ctrl+Tab (or PadMenu + PadFocusPrev/PadFocusNext)
|
||||
// Note that NoNavFocus makes the window not reachable with Ctrl+Tab but it can still be focused with mouse or programmatically.
|
||||
// If you want a window to never be focused, you may use the e.g. NoInputs flag.
|
||||
bool ImGui::IsWindowNavFocusable(ImGuiWindow* window)
|
||||
{
|
||||
@@ -14292,7 +14292,7 @@ static void ImGui::NavUpdateWindowingApplyFocus(ImGuiWindow* apply_focus_window)
|
||||
|
||||
// If the window has ONLY a menu layer (no main layer), select it directly
|
||||
// Use NavLayersActiveMaskNext since windows didn't have a chance to be Begin()-ed on this frame,
|
||||
// so CTRL+Tab where the keys are only held for 1 frame will be able to use correct layers mask since
|
||||
// so Ctrl+Tab where the keys are only held for 1 frame will be able to use correct layers mask since
|
||||
// the target window as already been previewed once.
|
||||
// FIXME-NAV: This should be done in NavInit.. or in FocusWindow... However in both of those cases,
|
||||
// we won't have a guarantee that windows has been visible before and therefore NavLayersActiveMask*
|
||||
@@ -14304,7 +14304,7 @@ static void ImGui::NavUpdateWindowingApplyFocus(ImGuiWindow* apply_focus_window)
|
||||
}
|
||||
|
||||
// Windowing management mode
|
||||
// Keyboard: CTRL+Tab (change focus/move/resize), Alt (toggle menu layer)
|
||||
// Keyboard: Ctrl+Tab (change focus/move/resize), Alt (toggle menu layer)
|
||||
// Gamepad: Hold Menu/Square (change focus/move/resize), Tap Menu/Square (toggle menu layer)
|
||||
static void ImGui::NavUpdateWindowing()
|
||||
{
|
||||
@@ -14315,7 +14315,7 @@ static void ImGui::NavUpdateWindowing()
|
||||
bool apply_toggle_layer = false;
|
||||
|
||||
ImGuiWindow* modal_window = GetTopMostPopupModal();
|
||||
bool allow_windowing = (modal_window == NULL); // FIXME: This prevent CTRL+TAB from being usable with windows that are inside the Begin-stack of that modal.
|
||||
bool allow_windowing = (modal_window == NULL); // FIXME: This prevent Ctrl+Tab from being usable with windows that are inside the Begin-stack of that modal.
|
||||
if (!allow_windowing)
|
||||
g.NavWindowingTarget = NULL;
|
||||
|
||||
@@ -14327,7 +14327,7 @@ static void ImGui::NavUpdateWindowing()
|
||||
g.NavWindowingTargetAnim = NULL;
|
||||
}
|
||||
|
||||
// Start CTRL+Tab or Square+L/R window selection
|
||||
// Start Ctrl+Tab or Square+L/R window selection
|
||||
// (g.ConfigNavWindowingKeyNext/g.ConfigNavWindowingKeyPrev defaults are ImGuiMod_Ctrl|ImGuiKey_Tab and ImGuiMod_Ctrl|ImGuiMod_Shift|ImGuiKey_Tab)
|
||||
const ImGuiID owner_id = ImHashStr("##NavUpdateWindowing");
|
||||
const bool nav_gamepad_active = (io.ConfigFlags & ImGuiConfigFlags_NavEnableGamepad) != 0 && (io.BackendFlags & ImGuiBackendFlags_HasGamepad) != 0;
|
||||
@@ -14395,7 +14395,7 @@ static void ImGui::NavUpdateWindowing()
|
||||
// Keyboard: Focus
|
||||
if (g.NavWindowingTarget && g.NavWindowingInputSource == ImGuiInputSource_Keyboard)
|
||||
{
|
||||
// Visuals only appears after a brief time after pressing TAB the first time, so that a fast CTRL+TAB doesn't add visual noise
|
||||
// Visuals only appears after a brief time after pressing TAB the first time, so that a fast Ctrl+Tab doesn't add visual noise
|
||||
ImGuiKeyChord shared_mods = ((g.ConfigNavWindowingKeyNext ? g.ConfigNavWindowingKeyNext : ImGuiMod_Mask_) & (g.ConfigNavWindowingKeyPrev ? g.ConfigNavWindowingKeyPrev : ImGuiMod_Mask_)) & ImGuiMod_Mask_;
|
||||
IM_ASSERT(shared_mods != 0); // Next/Prev shortcut currently needs a shared modifier to "hold", otherwise Prev actions would keep cycling between two windows.
|
||||
g.NavWindowingTimer += io.DeltaTime;
|
||||
@@ -14406,7 +14406,7 @@ static void ImGui::NavUpdateWindowing()
|
||||
apply_focus_window = g.NavWindowingTarget;
|
||||
}
|
||||
|
||||
// Keyboard: Press and Release ALT to toggle menu layer
|
||||
// Keyboard: Press and Release Alt to toggle menu layer
|
||||
const ImGuiKey windowing_toggle_keys[] = { ImGuiKey_LeftAlt, ImGuiKey_RightAlt };
|
||||
bool windowing_toggle_layer_start = false;
|
||||
if (g.NavWindow != NULL && !(g.NavWindow->Flags & ImGuiWindowFlags_NoNavInputs))
|
||||
@@ -14512,7 +14512,7 @@ static const char* GetFallbackWindowNameForWindowingList(ImGuiWindow* window)
|
||||
return ImGui::LocalizeGetMsg(ImGuiLocKey_WindowingUntitled);
|
||||
}
|
||||
|
||||
// Overlay displayed when using CTRL+TAB. Called by EndFrame().
|
||||
// Overlay displayed when using Ctrl+Tab. Called by EndFrame().
|
||||
void ImGui::NavUpdateWindowingOverlay()
|
||||
{
|
||||
ImGuiContext& g = *GImGui;
|
||||
@@ -16704,7 +16704,7 @@ void ImGui::ShowMetricsWindow(bool* p_open)
|
||||
Text("Keys down:"); for (ImGuiKey key = ImGuiKey_NamedKey_BEGIN; key < ImGuiKey_NamedKey_END; key = (ImGuiKey)(key + 1)) { if (!IsKeyDown(key)) continue; SameLine(); Text(IsNamedKey(key) ? "\"%s\"" : "\"%s\" %d", GetKeyName(key), key); SameLine(); Text("(%.02f)", GetKeyData(key)->DownDuration); }
|
||||
Text("Keys pressed:"); for (ImGuiKey key = ImGuiKey_NamedKey_BEGIN; key < ImGuiKey_NamedKey_END; key = (ImGuiKey)(key + 1)) { if (!IsKeyPressed(key)) continue; SameLine(); Text(IsNamedKey(key) ? "\"%s\"" : "\"%s\" %d", GetKeyName(key), key); }
|
||||
Text("Keys released:"); for (ImGuiKey key = ImGuiKey_NamedKey_BEGIN; key < ImGuiKey_NamedKey_END; key = (ImGuiKey)(key + 1)) { if (!IsKeyReleased(key)) continue; SameLine(); Text(IsNamedKey(key) ? "\"%s\"" : "\"%s\" %d", GetKeyName(key), key); }
|
||||
Text("Keys mods: %s%s%s%s", io.KeyCtrl ? "CTRL " : "", io.KeyShift ? "SHIFT " : "", io.KeyAlt ? "ALT " : "", io.KeySuper ? "SUPER " : "");
|
||||
Text("Keys mods: %s%s%s%s", io.KeyCtrl ? "Ctrl " : "", io.KeyShift ? "Shift " : "", io.KeyAlt ? "Alt " : "", io.KeySuper ? "Super " : "");
|
||||
Text("Chars queue:"); for (int i = 0; i < io.InputQueueCharacters.Size; i++) { ImWchar c = io.InputQueueCharacters[i]; SameLine(); Text("\'%c\' (0x%04X)", (c > ' ' && c <= 255) ? (char)c : '?', c); } // FIXME: We should convert 'c' to UTF-8 here but the functions are not public.
|
||||
DebugRenderKeyboardPreview(GetWindowDrawList());
|
||||
Unindent();
|
||||
@@ -17571,7 +17571,7 @@ static void ShowDebugLogFlag(const char* name, ImGuiDebugLogFlags flags)
|
||||
}
|
||||
else
|
||||
{
|
||||
ImGui::SetItemTooltip("Hold SHIFT when clicking to enable for 2 frames only (useful for spammy log entries)");
|
||||
ImGui::SetItemTooltip("Hold Shift when clicking to enable for 2 frames only (useful for spammy log entries)");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17952,7 +17952,7 @@ void ImGui::ShowIDStackToolWindow(bool* p_open)
|
||||
SameLine();
|
||||
MetricsHelpMarker("Hover an item with the mouse to display elements of the ID Stack leading to the item's final ID.\nEach level of the stack correspond to a PushID() call.\nAll levels of the stack are hashed together to make the final ID of a widget (ID displayed at the bottom level of the stack).\nRead FAQ entry about the ID stack for details.");
|
||||
|
||||
// CTRL+C to copy path
|
||||
// Ctrl+C to copy path
|
||||
const float time_since_copy = (float)g.Time - tool->CopyToClipboardLastTime;
|
||||
PushStyleVarY(ImGuiStyleVar_FramePadding, 0.0f);
|
||||
Checkbox("Hex-encode non-ASCII", &tool->OptHexEncodeNonAsciiChars);
|
||||
|
||||
Reference in New Issue
Block a user