Commit Graph

4279 Commits

Author SHA1 Message Date
ocornut a066074054 Clipper: Fixed a bug if attempt to force-include a range which matches an already included range. (#3841) 2023-08-31 21:39:27 +02:00
ocornut bdd9b96fa3 Demo: Reorganized "Examples" menu. Tweak Property Editor. 2023-08-31 20:04:43 +02:00
ocornut 08b3a1a34a ImDrawList: Automatically calling ChannelsMerge() if not done after a split.
Ties fixing f422e78 in docking: iterating root windows was incorrect. Will be faster to lazily merge in RenderDimmedBackground() rather than iterate all.
2023-08-30 15:22:36 +02:00
ocornut 82d177ccbd Using range-based for where it makes sense. (#4537) 2023-08-28 12:21:44 +02:00
ocornut 33ea1e8b78 ColorEdit, ColorPicker: Manipulating options popup don't mark item as edited. (#6722) 2023-08-28 10:38:13 +02:00
ocornut f617fe7890 Clipper: Renamed IncludeRangeByIndices()/ForceDisplayRangeByIndices() to IncludeItemsByIndex(). (#6424, #3841)
Single item version added in prevous commit (2000537) renamed to IncludeItemByIndex() too.
2023-08-25 18:22:54 +02:00
ocornut 4a81424492 CloseButton, CollapseButton: don't include FramePadding into size. Use ItemInnerSpacing.x between title bar buttons. (#6749) 2023-08-25 14:14:34 +02:00
Diego Mateos 040e818d72 Fix typo in SameLine comment (#6745) 2023-08-23 10:11:42 +02:00
ocornut ba1fa904a9 IO: Exposed io.PlatformLocaleDecimalPoint to configure decimal point ('.' or ','). (#6719, #2278)
Amend 13f718337
2023-08-17 13:12:21 +02:00
Rick Huang a6857ede03 IO: fix writing to incorrect union section for MouseSource in AddMousePosEvent and AddMouseButtonEvent. (#6727, #2702)
Technically may have had no side-effects unless non-standard alignment used.
2023-08-16 17:50:11 +02:00
ocornut d2c7cbcbf9 Misc: Made multiple calls to Render() during the same frame early out faster. 2023-08-14 16:23:04 +02:00
ocornut ac64b65634 Render: draw dimmed background earlier to match docking code. (#6716)
Amend f422e78
2023-08-14 16:21:12 +02:00
ocornut 1362fc0c56 Debug, Internals: Added DebugDrawCursorPos(), DebugDrawLineExtents() helpers. 2023-08-09 11:14:44 +02:00
ocornut bc3c0ce772 Nav, TreeNode: Pressing Left with ImGuiTreeNodeFlags_NavLeftJumpsBackHere now goes through proper navigation logic: honor scrolling and selection. (#1079, #1131)
Added a stack for this purpose which other features might build on (e.g. #2920). However this is currently gated by many tests and not a performance concern, but making stack happen all the time may be undesirable.
2023-08-08 14:07:00 +02:00
ocornut 226923fa7e Metrics: Fixed "Drawlists" section and per-viewport equivalent appearing empty (regression from c649aca).
(#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860)
2023-08-06 20:30:07 +02:00
ocornut cf3726bcbc Internals: rename bg/fg drawlist holders in structs to reduce confusion. 2023-08-06 19:46:27 +02:00
ocornut d6d94d90bf Version 1.89.9 WIP
+ Minor typo fixes
2023-08-03 19:19:21 +02:00
ocornut f7eea63872 Version v1.89.8 2023-08-01 12:53:57 +02:00
septag f1781c20a3 Added IMGUI_DISABLE_STB_SPRINTF_IMPLEMENTATION config macro to disable stb_sprintf implementation (#6626) 2023-07-25 12:07:32 +02:00
ocornut db66e33e9e Tables: fixed GetContentRegionAvail().y report not taking account of lower cell padding or of using ImGuiTableFlags_NoHostExtendY. (#6619)
Made GetContentRegionMax() fully defer to WorkRect when inside a table container.
2023-07-20 13:26:58 +02:00
ocornut 2bc5d17ac3 Tables: fixed calculation of multi-instance shared decoration/scrollbar width of scrolling tables. (#5920, #6619)
Avoid width variation when resizing down a table hosting a child window.
+ shallow tweak to GetContentRegionMax().
2023-07-20 12:01:29 +02:00
ocornut d342ec10cc Overlap, IsItemHovered: clarification on using IsItemHovered() on a non-reactive item after a reactive overlappable one. (#6610) 2023-07-18 11:18:58 +02:00
ocornut 0e8eb8c48e Removed _MSC_VER <= 1500 checks for Visual Studio 2008 or earlier.
Our codebase requires VS2012+ since a while.
2023-07-13 12:38:16 +02:00
ocornut 863ac31f01 Doc: various tweaks + tweak imconfig comments. 2023-07-13 12:38:16 +02:00
ocornut 6888e6cdff ImDrawData: call _PopUnusedDrawCmd() later. as RenderDimmedBackgrounds() rely on a valid command being there (especially in docking branch). (#6406, #4879, #1878)
Amend/fix dbeeeae for docking.
+ Build fix when using IMGUI_DISABLE_DEBUG_TOOLS
2023-07-12 18:39:48 +02:00
ocornut dbeeeae593 ImDrawData: Slight refactor so internal logic uses same logic as AddDrawList(). (#6406, #4879, #1878)
# Conflicts:
#	imgui.cpp
#	imgui_internal.h
2023-07-12 18:11:42 +02:00
ocornut 1a9ddd2396 ImDrawData: added AddDrawList() helper function. (#6406, #4879, #1878) 2023-07-12 18:11:42 +02:00
ocornut c649aca20a ImDrawData: changed CmdLists from raw array to ImVector<> owned by ImDrawData itself. Faclitate user-manipulation of the array (#6406, #4879, #1878) + deep swap. (#6597, #6475, #6167, #5776, #5109, #4763, #3515, #1860)
+ Metrics: avoid misleadingly iterating all layers of DrawDataBuilder as everything is flattened into Layers[0] at this point.

# Conflicts:
#	imgui.cpp
#	imgui_internal.h
2023-07-12 18:11:42 +02:00
ocornut cc4c37dbac Nav: PageUp/PageDown always set NavJustMovedTo even when landing on same spot (which can trigger a selection).
This is mostly expected for range-select.
+ Rename ImGuiNavMoveFlags_Tabbing -> ImGuiNavMoveFlags_IsTabbing
2023-07-11 16:49:26 +02:00
ocornut 140726d23f Fixed CTRL+Tab dimming background assert when target window has a callback in the last ImDrawCmd. (#4857, #5937) 2023-07-10 15:10:42 +02:00
ocornut 6aa408c6af IO: Added io.ClearEventsQueue(). Obsoleted io.ClearInputCharacters(). (#4921)
cc #2425 #1153 #1600
2023-07-06 15:55:17 +02:00
ocornut 3fe4319314 Version 1.89.8 WIP 2023-07-05 14:17:46 +02:00
ocornut cb9015e254 Version 1.89.7 2023-07-04 14:56:09 +02:00
ocornut 1029f57b8a Inputs, Tooltip: Rework stationary timer logic as it broke on high-framerates with lower rate of mouse inputs. (#1485) 2023-07-03 12:17:46 +02:00
ocornut 655aae5911 Comments + docs: tidying up todo list + demo tweak for tooltips. 2023-06-30 14:58:49 +02:00
ocornut 6137443d24 Overlap: moved ImGuiItemflags_AllowOverlap handling from ButtoBehavior() to ItemHoverable() now that it is possible. (#6512, #3909, #517)
This allows DragXXX, SliderXXX, PlotXXX etc to honor SetNextItemAllowOverlap().
2023-06-28 14:42:14 +02:00
ocornut 4dee919bc0 (Breaking) Internals: added ImGuiItemFlags param to ItemHoverable(), so it can be called from ButtonBehavior() not following an ItemAdd().
This also allow moving AllowOverlap logic from ButtonBehavior() to ItemHoverable(), allowing other widgets to honor it. (#6512, #3909, #517)
2023-06-28 14:42:14 +02:00
ocornut 10c7709f30 Overlap: IsItemHovered: Changed behavior to return false when querying an item using AllowOverlap mode. Added ImGuiHoveredFlags_AllowWhenOverlappedByItem, ImGuiHoveredFlags_AllowWhenOverlappedByWindow., (#6512, #3909, #517) 2023-06-28 14:40:47 +02:00
ocornut 8439a73645 Overlap: Added 'SetNextItemAllowOverlap()' as a replacement for 'SetItemAllowOverlap()'. (#6512, #3909, #517)
# Conflicts:
#	imgui.cpp
#	imgui_widgets.cpp
2023-06-28 14:40:47 +02:00
ocornut a9a5cbf431 Overlap: Internals: add NextItemData.ItemFlags to facilitate implementation of SetNextItemAllowOverlap() + potentially remove extra_flags from ItemAdd(). (#6512, #3909) 2023-06-28 14:40:47 +02:00
ocornut 51f564eea6 (Breaking) Overlap: Renamed 'ImGuiTreeNodeFlags_AllowItemOverlap' to 'ImGuiTreeNodeFlags_AllowOverlap', 'ImGuiSelectableFlags_AllowItemOverlap' to 'ImGuiSelectableFlags_AllowOverlap'. Kept redirecting enums (will obsolete). (#6512, #3909, #517)
+ Internals: Renamed 'ImGuiButtonFlags_AllowItemOverlap' to 'ImGuiButtonFlags_AllowOverlap' without redirection.
2023-06-28 14:37:05 +02:00
ocornut b03a4993b3 Internals: reorder tests in ItemHoverable() so most likely early out are taken first. 2023-06-27 15:44:35 +02:00
ocornut 836aff3467 Drag and Drop: Amend ItemHoverable() logic for item with no identifier.
Amend d5d4d70
2023-06-27 15:23:19 +02:00
ocornut d5d4d709c7 Drag and Drop: moved "drag souce doesn't report as hovered" from ButtonBehavior() to ItemHoverable().
Ensure DragXXX, SliderXXXX, InputText, PlotXXX follow same logic. Amend 251f178a6, a33f0d1f7
2023-06-27 14:44:39 +02:00
ocornut 6b2e03c5b1 GetKeyName(): Fixed assert with ImGuiMod_XXX values when IMGUI_DISABLE_OBSOLETE_KEYIO is set. 2023-06-22 22:03:02 +02:00
ocornut 9214c28aad IsWindowHovered, IsItemHovered: Assert when passed any unsupported flags. 2023-06-20 15:04:15 +02:00
ocornut e7a4327eb8 IsWindowHovered: Added support for ImGuiHoveredFlags_Stationary. 2023-06-20 15:04:14 +02:00
ocornut b60acfa87d Tooltips: Added SetItemTooltip(), BeginItemTooltip(). Improved Demo section. 2023-06-20 15:04:14 +02:00
ocornut 0f72652c2d IsItemHovered, Tooltips: Added io.HoveredFlagsForTooltipMouse, io.HoveredFlagsForTooltipNav now pulled by ImGuiHoveredFlags_Tooltip. (#1485) 2023-06-20 15:04:14 +02:00
ocornut b3b8cbd001 IsItemHovered, Tooltips: Added ImGuiHoveredFlags_ForTooltip, ImGuiHoveredFlags_Stationary. (#1485)
Update demo accordingly.
2023-06-20 15:04:14 +02:00