Commit Graph
100 Commits
Author SHA1 Message Date
ocornut 377a387a42 Add proper ImGuiTextBuffer::resize() support other than 0. 2025-03-05 16:23:31 +01:00
ocornut 9f49292b35 Internals: Menus: reworked mangling of menu windows to use "###Menu_00" etc. instead of "##Menu_00". 2025-03-05 15:47:57 +01:00
ocornut 119dfbc627 Debug Tools: Tweaked layout of ID Stack Tool and always display full path. (#4631) 2025-03-05 15:04:26 +01:00
ocornut fcec08f7ae Demo: (Refactor) Moved ExampleTreeNode contents below ShowDemoWindow() so main entry point is more visible to casual reader. 2025-03-05 13:39:48 +01:00
ocornut 324172fb1f Demo: (Refactor) Moved DemoWindowWidgets() below the functions it calls, reducing amount of forward declarations. 2025-03-05 13:35:14 +01:00
ocornut a7657f2ed4 Examples: SDL3: Added comments to clarify setup for users of the unfortunate SDL_MAIN_USE_CALLBACKS feature. (#8455) 2025-03-04 14:36:00 +01:00
ocornut df31774327 Disabled: Fixed an issue restoring Alpha in EndDisabled() when using nested BeginDisabled() calls with PushStyleVar(ImGuiStyleVar_DisabledAlpha) within. (#8454, #7640) 2025-03-03 19:20:10 +01:00
ocornut 71b160cdbb Demo: (Refactor) Moved code into DemoWindowWidgetsDisableBlocks() section. 2025-03-03 18:56:21 +01:00
ocornut 7a919e80c9 Demo: (Refactor) Moved code into DemoWindowWidgetsQueryingStatuses() section. 2025-03-03 18:54:02 +01:00
ocornut 0758594bd2 Demo: (Refactor) Moved code into DemoWindowWidgetsDragAndDrop() section. 2025-03-03 18:54:01 +01:00
ocornut 9b486e47fe Demo: (Refactor) Moved code into DemoWindowWidgetsDragsAndSliders(), DemoWindowWidgetsMultiComponents(), DemoWindowWidgetsVerticalSliders() sections. 2025-03-03 18:47:11 +01:00
ocornut caf3faa054 Demo: (Refactor) Moved code into DemoWindowWidgetsColorAndPickers() section. 2025-03-03 18:46:44 +01:00
ocornut 510a9a77d6 Demo: (Refactor) Moved code into DemoWindowWidgetsDataTypes() section. 2025-03-03 18:46:44 +01:00
ocornut 4d0c776a80 Demo: (Refactor) Moved code into DemoWindowWidgetsPlotting(), DemoWindowWidgetsProgressBars(), DemoWindowWidgetsTabs() sections. 2025-03-03 18:46:44 +01:00
ocornut 4450d61ac2 Demo: (Refactor) Moved code into DemoWindowWidgetsSelectables(), DemoWindowWidgetsTextFilter(), DemoWindowWidgetsTextInputs() sections. 2025-03-03 18:46:44 +01:00
ocornut 22baec494b Demo: (Refactor) Moved code into DemoWindowWidgetsComboBoxes(), DemoWindowWidgetsImages(), DemoWindowWidgetsListBoxes() sections. 2025-03-03 18:46:44 +01:00
ocornut 94877a137d Demo: (Refactor) Moved code into DemoWindowWidgetsBullets(), DemoWindowWidgetsCollapsingHeaders(), DemoWindowWidgetsCollapsingText() sections. 2025-03-03 18:46:44 +01:00
ocornut de3f68a233 Demo: (Refactor) Moved code into DemoWindowWidgetsTooltips(), DemoWindowWidgetsTreeNodes() sections. 2025-03-03 18:46:44 +01:00
ocornut b2c55c9db5 Demo: (Refactor) Moved code into DemoWindowWidgetsBasic() section. 2025-03-03 18:46:44 +01:00
ocornut eefd2da0f6 Demo: (Refactor) Added new empty sections.. Renamed existing helper functions. 2025-03-03 18:46:43 +01:00
ocornut ce13f6b73e Backends: GLFW: Fixed clipboard handler assertion when using GLFW <= 3.2.1 compiled with asserts enabled. (#8452)
Amend 8e4010479
2025-03-03 13:11:16 +01:00
ocornut 9c2876b9f8 ShowFontAtlas() uses ImageWithBg(). (#8131, #8238)
Amend 494ea57
2025-02-27 22:04:56 +01:00
ocornut 1aab00da85 Misc shallow tweaks/tidying up. (#8446) 2025-02-27 21:58:02 +01:00
ocornut 482a1f50b6 Internals: rename ImGuiDataVarInfo to ImGuiStyleVarInfo. Move ImGuiStyleMod, ImGuiColorMod to own section.
# Conflicts:
#	imgui.cpp
2025-02-27 21:51:07 +01:00
ocornut 494ea57b65 Image: removed 'tint_col', 'border_col' parameters from Image(). Added ImageWithBg(). Added style.ImageBorderSize, ImGuiStyleVar_ImageBorderSize. (#8131, #8238)
Displaying a black background behind Font Atlas texture.
2025-02-27 21:48:24 +01:00
ocornutandocornut 4c0604ec2e Font: shallow refactor, rename ConfigData[] fields to Sources[], ConfigDataCount to SourcesCount.
In theory this is all internal stuff.
2025-02-25 17:41:29 +01:00
ocornut 030746faff Debug Tools: Added io.ConfigDebugHighlightIdConflictsShowItemPicker. (#7961, #7669) 2025-02-24 17:45:16 +01:00
ocornut ef969a53f5 Tabs: fixed Unsaved Marker not being visible when Close Button is. (#8430, #8387) 2025-02-24 11:44:48 +01:00
ocornut 5dce79e941 Backends: DirectX12: Fixed an issue where pre-1.91.5 legacy ImGui_ImplDX12_Init() signature started breaking in 1.91.8 due to missing command queue. (#8429) 2025-02-24 10:52:15 +01:00
ocornut 6dc376f676 ImFontAtlas: added software/drawlist version of ImGuiMouseCursor_Wait/ImGuiMouseCursor_Progress + moved GetMouseCursorTexData() to internals. 2025-02-20 12:17:21 +01:00
ocornut 85c488ee12 Hot-fix for broken MouseDrawCursor support for ImGuiMouseCursor_Wait/ImGuiMouseCursor_Progress/ImGuiMouseCursor_NotAllowed.
Amend 8a35386, eec097f.
2025-02-20 11:46:56 +01:00
ocornut eec097fe35 Added ImGuiMouseCursor_Progress mouse cursor 8a35386+ support in SDL2,SDL3,Win32,Allegro5 backends.
Amend 8a35386
2025-02-18 18:52:08 +01:00
ocornut 8a35386ba7 Added ImGuiMouseCursor_Wait mouse cursor (busy/wait/hourglass shape) + support in SDL2,SDL3,Win32,Allegro5 backends. 2025-02-18 18:40:47 +01:00
ocornut 8f0411ff03 Backends: OpenGL3: Lazily reinitialize embedded GL loader for when calling backend from e.g. other DLL boundaries. (#8406) 2025-02-18 18:19:10 +01:00
ocornut 78ec1272e9 ImDrawList: added InitialFringeScale in ImDrawListSharedData. Default to 1.0f.
This is to allow some DPI mods with less changes. Only the initial value in SetupDrawListSharedData() will need change.
2025-02-17 11:28:35 +01:00
ocornut 2860d7ba05 Selectable: Fixed horizontal label alignment with SelectableTextAlign.x > 0 and specifying a selectable size. (#8338)
Regression from ed7551c1d
2025-02-14 19:44:35 +01:00
ocornut 474305c476 ImFont: simpler constructor. 2025-02-14 16:15:09 +01:00
ocornut 98c2f6b0c4 Tables, Error Handling: Recovery from invalid index in TableSetColumnIndex(). (#1651) 2025-02-13 16:19:41 +01:00
ocornut e1ae7db4cc Backends: Vulkan: Fixed building with older headers not supporting VK_HEADER_VERSION_COMPLETE. (#8326, #8365) 2025-02-13 16:03:40 +01:00
ocornut 12963f5231 Examples: Vulkan: make ApiVersion a little more visible in examples. (#8326, #8365) 2025-02-13 15:49:47 +01:00
ocornut 890ead6a71 Backends: Vulkan: Added ApiVersion field in ImGui_ImplVulkan_InitInfo. Dynamic rendering path loads "vkCmdBeginRendering/vkCmdEndRendering" without -KHR on API 1.3. (#8326, #8365) 2025-02-13 15:40:49 +01:00
ocornut b78cc37891 Backends: SDL2: Fixed build for versions older than 2.0.14. (#7660) 2025-02-12 19:27:43 +01:00
ocornut a931fb7f51 Fixed static analyzer warning.
(was harmless as initialized in NewFrame)
2025-02-12 19:15:00 +01:00
ocornut 7cd31c3557 Tables: tamed some .ini settings optimizations to more accurately allow overwriting/hot-reloading settings. (#7934) 2025-02-12 19:08:52 +01:00
ocornut 7221f5e739 Styles, Tabs: Fixed ef7ffaf. (#8387) 2025-02-12 19:01:02 +01:00
ocornut ef7ffaff74 Styles, Tabs: (Breaking) Renamed TabMinWidthForCloseButton to TabCloseButtonMinWidthUnselected. Added TabCloseButtonMinWidthSelected. (#8387) 2025-02-12 15:46:17 +01:00
ocornut 3b2f2602b4 Windows: Fixed an issue where BeginChild() inside a collapsed Begin() wouldn't inherit the SkipItems flag.
Amend/fix a89f05a10 (old!)
Discovered while looking at glyph being processed in WIP branch.
2025-02-10 21:34:55 +01:00
ocornut 4dc9df6aae Tables: fixed an issue where Columns Visible/Hidden state wouldn't be correctly overridden when hot-reloading .ini state. (#7934) 2025-02-10 19:29:18 +01:00
ocornut 88cda0cab6 Fixed minor warning. Added comment. 2025-02-10 12:39:54 +01:00
ocornut a431e1277e Backends: SDL2, SDL3: Using SDL_OpenURL() in platform_io.Platform_OpenInShellFn handler. (#7660) 2025-02-10 12:09:44 +01:00
ocornut a18622c369 TextLinkOpenURL(): fixed default Win32 io.PlatformOpenInShellFn handler to handle UTF-8 regardless of system regional settings. (#7660) 2025-02-10 12:02:01 +01:00
ocornut 2206e31e54 Demo: Combos: demonstrate a very simple way to add a filter to a combo. (#718) 2025-02-10 11:38:17 +01:00
ocornut 50dbb086f2 Tables: sneakily honor ImGuiNextWindowDataFlags_HasChildFlags/ImGuiNextWindowDataFlags_HasWindowFlags as a way to facilitate various hacks/workarounds. 2025-02-07 22:57:15 +01:00
ocornut e368015d79 Tables: a clipped scrolling table correctly clears SetNextWindowXXX flags. (#8196)
Amend 43c51eb12
2025-02-07 22:56:02 +01:00
ocornut e5668b8c73 Internals: rename ImGuiNextWindowData::Flags to HasFlags for consistency and to reduce mistakes. 2025-02-07 22:48:31 +01:00
ocornut 4982602f6f Windows, Style: Added style.WindowBorderHoverPadding setting to configure inner/outer padding applied to hit-testing of windows borders.
Amend 3c7177c6, 59f3c4fc2, ae7f833c6.
Could be latched inside windows to be multi-dpi friendly, but likely won't matter soon.
2025-02-07 18:16:04 +01:00
ocornut 914fbcf2e5 Fonts: removed unnecessary const qualifier from ImFont::FindGlyph()
Amend 0bde57c
2025-02-07 16:26:20 +01:00
ocornut 0625b37760 Scrollbar: Rework logic that fades-out scrollbar when it becomes too small.
Amend 0236bc246f
2025-02-06 18:41:47 +01:00
ocornut cfed18afc7 Add ImFontConfig::GlyphExtraAdvanceX as a replacement for GlyphExtraSpacing.x (#242)
Partly restore 1a31e31.
2025-02-06 12:34:37 +01:00
ocornut 1a31e31ae9 (Breaking) Fonts: removed ImFontConfig::GlyphExtraSpacing option which seems largely obsolete and unused. (#242) 2025-02-03 17:55:35 +01:00
ocornut de962e83d0 ImFont: remove SetGlyphVisible()
Which was never marked public. Added by d284a6cff. (#2149, #515)
Making room by removing stuff that are inconvenient to implement in our scaling system.
If you were using this function please post an issue to report it.
2025-02-03 17:50:12 +01:00
ocornut 5dd84082ab InputTextWithHint(): Fixed buffer overflow when user callback modifies the buffer contents in a way that alters hint visibility. (#8368) 2025-02-03 15:11:22 +01:00
ocornut 204cebc8fc Backends: Metal: Fixed a crash on application resources. (#8367, #7419) [@anszom] 2025-02-03 14:21:53 +01:00
ocornut 6265339995 Fixed IsItemDeactivatedAfterEdit() signal being broken for Checkbox(), RadioButton(), Selectable(). (#8370)
Item is already made inactive at the time of calling MarkItemEdited().
Fix a604d4f71
2025-02-03 14:03:43 +01:00
ocornut f820bf7cd4 Version 1.91.9 WIP 2025-02-03 12:33:40 +01:00
ocornut e4db4e423d Internals: renamed GetIOEx() to GetIO(). Added GetPlatformIO() explicit context variant. - OOPS 2025-01-31 19:50:18 +01:00
ocornut e2a99b5760 Internals: renamed GetIOEx() to GetIO(). Added GetPlatformIO() explicit context variant. 2025-01-31 18:28:31 +01:00
ocornut dbb5eeaadf Version 1.91.8 2025-01-31 16:08:17 +01:00
ocornut ae6cfd32a0 Tables, Menus: Fixed tables or child windows submitted inside BeginMainMenuBar() being unable to save their settings. (#8356)
Amend error handling (fa178f4) to avoid us setting ImGuiWindowFlags_NoSavedSettings on the wrong window.
2025-01-30 14:34:51 +01:00
ocornut fa178f4235 Error Handling: Recovery from missing EndMenuBar() call. (#1651) 2025-01-30 14:30:14 +01:00
ocornut c0308da665 Fixed zealous GCC warning. (#8355)
Amend dfd1bc3
2025-01-29 20:13:22 +01:00
ocornut dabc990189 Rename internal id for standardizing naming convention. "##menubar" -> "##MenuBar", "###NavWindowingList" -> "###NavWindowingOverlay"
"###NavUpdateWindowing" one should have zero side effect on anyone.
2025-01-29 19:59:41 +01:00
ocornut a71191515a EndMainMenuBar doesn't attempt to restore focus when there's an active id. (#8355)
I don't have a specific issue in mind but it seems sane to add that test.
2025-01-29 19:07:28 +01:00
ocornut dfd1bc3c5b Tables, Menus: Fixed using BeginTable() in menu layer (any menu bar). (#8355) 2025-01-29 19:05:18 +01:00
ocornut 4230e98720 Error Handling, Debug Log: IMGUI_DEBUG_LOG_ERROR() doesn't need the extra variable.
Amend 236006152
2025-01-28 14:39:10 +01:00
ocornut ea0da0bf47 Extracted PushPasswordFont() out of InputText code. 2025-01-27 18:04:44 +01:00
ocornut 9c4948a4d1 TabBar: Internals: added TabItemSpacing(). (#8349, #3291) 2025-01-27 15:41:24 +01:00
ocornut a05d547ae8 Windows: separating WindowItemStatusFlags from ChildItemStatusFlag, because IsItemXXX _after_ BeginChild()>Begin() shouldn't return last status emitted by e.g. EndChild()
As IsItemXXX() after is specced as returning title bar data we don't want to lock ourselves up from adding them to child window (e.g. MDI idea using windows to host child windows).
2025-01-27 14:39:26 +01:00
ocornut 134fbe1245 Windows: Fixed IsItemXXXX() functions not working on append-version of EndChild(). (#8350)
Also made some of the fields accessible after BeginChild() to match Begin() logic.
2025-01-27 12:41:31 +01:00
ocornut 5a28f188ff Fixed parameter names to SetLastItemData() to align with current names. 2025-01-27 12:27:15 +01:00
ocornut afb6e9a879 Fonts: OversampleH auto-selection uses 36 as heuristic for now. 2025-01-24 20:03:04 +01:00
ocornut 8a1613a382 Fonts: OversampleH/OversampleV value defaults to 0 for automatic selection. 2025-01-24 19:32:30 +01:00
ocornut 4211fdc70b ImFont: compact comments in header section. 2025-01-24 17:49:34 +01:00
ocornut 9eafb7bbfb ImFont: IndexLookup[] table hold 16-bit values even in ImWchar32 mode. 2025-01-24 16:54:59 +01:00
ocornut 53244aaac7 Amend 9bc5b04 with a shadowed variable warning fix. 2025-01-24 15:00:21 +01:00
ocornut ed7551c1d4 Selectable: Fixed horizontal label alignment when combined with using ImGuiSelectableFlags_SpanAllColumns. (#8338) 2025-01-24 14:59:37 +01:00
ocornut bbf957875b Amend 9bc5b04 to avoid using GImGui mid-function. 2025-01-24 14:43:16 +01:00
ocornut 9bc5b0406d Windows, Style: Fixed small rendering issues with menu bar, resize grip and scrollbar when using thick border sizes. (#8267, #7887)
Amend e.g. 742b5f4c.
2025-01-24 14:39:07 +01:00
ocornut 10199341b1 ImFontAtlas: made calling ClearFonts() call ClearInputData(). (#8174, #6556, #6336, #4723) 2025-01-23 11:31:32 +01:00
ocornut 71da34c48c Debug Tools: Tweaked font preview + indent "Glyphs" block. 2025-01-22 16:56:18 +01:00
ocornut 6906ac979e ColorEdit, ColorPicker: (Breaking) redesigned how alpha is displayed in the preview square. (#8335, #1578, #346)
Added ImGuiColorEditFlags_AlphaOpaque, ImGuiColorEditFlags_AlphaNoBg.
Removed ImGuiColorEditFlags_AlphaPreview.
2025-01-22 12:12:07 +01:00
ocornut fdca6c08ad Inputs: added IsMouseReleasedWithDelay() helper. (#8337, #8320) 2025-01-22 11:28:47 +01:00
ocornut d17e9fc107 Backends: SDL_GPU: shallow tweaks + disable anisotropy in sampler. Examples: SDL+Vulkan: Fixed incorrect defines. 2025-01-22 10:37:39 +01:00
ocornut 3e6bdc2242 Examples: SDL3+SDL_GPU: use SDL_GPU_PRESENTMODE_MAILBOX swapchain parameters. 2025-01-22 10:22:31 +01:00
ocornut bf13442c7c Moved ImGuiColorEditFlags_AlphaPreview/ImGuiColorEditFlags_AlphaPreviewHalf flags. Demo: reorganized some of color edit/picker demo section. 2025-01-21 14:59:29 +01:00
ocornut 7ae7c90790 Tabs, Style: reworked selected overline rendering to better accommodate for rounded tabs. (#8334) 2025-01-21 13:55:44 +01:00
ocornut e8779a67b1 Font: direct AddText()/RenderText() calls don't need to call strlen() if below clipping region.
Unlikely to meaningful affect anyone but still..
2025-01-20 18:00:03 +01:00
ocornut 4c2e7bb035 Backends: SDL2,SDL3: removed assert preventing using ImGui_ImplSDL2_SetGamepadMode()/ImGui_ImplSDL3_SetGamepadMode() with ImGui_ImplSDL2_GamepadMode_Manual/ImGui_ImplSDL3_GamepadMode_Manual and an empty array. (#8329) 2025-01-20 15:24:46 +01:00
ocornut 8b0af7fddc Backends: SDL: update comments regarding API stability, regarding SDL_GPU and SDL_Renderer. 2025-01-20 14:30:40 +01:00
ocornut 80c9cd1f6e Font: reduce unnecessary padding in ImFontConfig struct too. 2025-01-18 16:45:58 +01:00