ocornut
915c6393ad
Version 1.90.3 WIP
2024-02-12 14:54:48 +01:00
ocornut
71bcf350bd
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2024-02-09 17:26:45 +01:00
ocornut
536090303a
Version 1.90.2
2024-02-09 16:59:31 +01:00
ocornut
7b5357d817
Debug Tools: Metrics: Improved Monitors and Viewports minimap display. Highlight on hover.
...
Added ImGuiViewport ID in Master branch.
2024-02-09 16:32:26 +01:00
ocornut
a06dd7a27b
OpenPopup(): Added ImGuiPopupFlags_NoReopen. Nav, Menus: Fixed click on a BeginMenu() followed by right-arrow. ( #1497 , #1533 )
...
reopen
2024-02-08 15:02:22 +01:00
ocornut
f104967c68
Comments
2024-02-08 12:10:14 +01:00
ocornut
82eeafc196
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
2024-02-07 22:10:33 +01:00
ocornut
06ce312745
InputText: Internal: added reload from user-buf feature. ( #2890 )
...
Very highly requested feature (#6962 , #5219 , #3290 , #4627 , #5054 , #3878 , #2881 , #1506 , #1216 , #968 ).
Also useful for interactive completion/selection popups (#2057 , #718 )
Based on @kudaba PR. Design for Inputtext V2 should make this obsolete.
2024-02-07 22:04:18 +01:00
ocornut
8491cf36ad
Inputs: g.ActiveIdUsingManyKeys[] prevent routes from being claimed.
...
Amend fc134f5
2024-01-24 18:53:36 +01:00
ocornut
eb42e164dd
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_vulkan.cpp
2024-01-22 19:01:25 +01:00
ocornut
a201af7354
Added SetNextItemShortcut() wip function. ( #456 )
...
Mark widget as hovered. Amend d10641b
.
2024-01-22 18:38:54 +01:00
ocornut
7c3fa7d049
Refactor: moved section in imgui_internal.h
2024-01-22 17:42:00 +01:00
ocornut
1844f903d5
Nav: space/enter poll check ownership. InputText: declare ownership of Enter key as it doesn't go through Shortcut
...
InputText: no need to call SetShortcutRouting() directly.
Tangential to experiments for #7237
2024-01-19 16:22:45 +01:00
ocornut
cab7edd135
Merge branch 'master' into docking
...
# Conflicts:
# imgui_internal.h
2024-01-17 18:38:03 +01:00
ocornut
5fdcdf7080
Shortcut: ImGuiInputFlags_RouteFocused policy can filter Shortcuts conflicting with character input when an item is active. ( #456 )
2024-01-16 17:51:14 +01:00
ocornut
cceff4684a
Docking: added ImGuiWindowClass::FocusRouteParentWindowId as a public facing version of SetWindowParentWindowForFocusRoute() ( #6798 , #2637 , #456 )
2024-01-16 14:30:42 +01:00
ocornut
a27f22f0e9
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_vulkan.cpp
# imgui.cpp
# imgui_internal.h
2024-01-16 11:43:36 +01:00
ocornut
2156db7a07
Debug Log: added InputRouting logging. Made GetKeyChordName() use its own buffer. Fixed debug break in SetShortcutRouting(). ( #6798 , #2637 , #456 )
2024-01-15 17:33:23 +01:00
ocornut
8a3dfda8d0
Commented out obsolete ImGuiIO::ImeWindowHandle marked obsolete in 1.87, favor of writing to 'void* ImGuiViewport::PlatformHandleRaw'.
...
Amend 3a90dc38
(#2589 , #2598 , #3108 , #3113 , #3653 , #4642 )
2024-01-15 11:30:52 +01:00
ocornut
29809d7220
Version 1.90.2 WIP
2024-01-11 14:37:13 +01:00
ocornut
2dc85e6e43
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_opengl3.cpp
# imgui.cpp
# imgui_internal.h
2024-01-10 18:34:23 +01:00
ocornut
d6cb3c923d
Version 1.90.1
2024-01-10 18:00:57 +01:00
ocornut
fdf8d02be1
Debug Tools: Added io.ConfigDebugIsDebuggerPresent and Debug Break buttons. ( #2673 )
2024-01-10 17:33:19 +01:00
ocornut
ebcfcd8da3
Merge branch 'master' into docking
2024-01-09 22:39:06 +01:00
ocornut
fc2e532f99
Shortcut: do not return true on mods changes. Internals: added ImGuiInputFlags_RepeatUntilKeyModsChange, ImGuiInputFlags_RepeatUntilKeyModsChangeFromNone, ImGuiInputFlags_RepeatUntilOtherKeyPress. ( #456 , #2637 )
...
Took a while to come to this design, but it is flexible and lightweight and allow all decision to be taken a polling location. All three policies are useful.
2024-01-09 15:54:12 +01:00
Tom Seddon
27e83c2953
Add comment about how ImGuiKey values are named after US keyboard keys. ( #7205 )
...
General text input is already covered by AddInputCharacter. For scancode-based key up/down info, simplest to admit that the up/down state indexes are kind of arbitrary and may not actually map perfectly to the labels on the keys.
2024-01-08 11:37:38 +01:00
ocornut
7938550d52
Comments and some extra line-wrapping in demo ( #3193 )
2024-01-04 11:50:38 +01:00
ocornut
4aa81116a5
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# imgui.cpp
2023-12-20 23:57:19 +01:00
ocornut
b4c5a83cfe
Commented out obsolete ImGuiKey_KeyPadEnter redirection to ImGuiKey_KeypadEnter. ( #2625 , #7143 )
2023-12-19 13:55:09 +01:00
ocornut
70f2aaff43
Nav: tabbing happen within FocusScope. ImGuiWindowFlags_NavFlattened make window inherit focus scope from parent.
2023-12-19 13:48:04 +01:00
ocornut
8add6bcb9f
Merge remote-tracking branch 'origin/master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
2023-12-14 17:21:15 +01:00
ocornut
9d8de45313
Image(): comment and minor refactor to resurface the fact that a border size may be added. ( #2118 )
...
Make more similar to ImageButton()
2023-12-07 16:07:50 +01:00
ocornut
c58d2c89c3
Tabs: Added ImGuiTabItemFlags_NoAssumedClosure to enable app to react on closure attempt. ( #7084 )
2023-12-07 14:20:35 +01:00
ocornut
d72e1563d4
Removed CalcListClipping() marked obsolete in 1.86. ( #3841 ) + comments
...
Amend 64daeddf
2023-12-06 15:10:12 +01:00
ocornut
0b77980cab
Moved Tables API related declarations to their own section in imgui.h
2023-12-05 18:13:04 +01:00
ocornut
96b5b1724b
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_vulkan.cpp
# imgui_internal.h
2023-12-05 12:20:16 +01:00
Bryce Berger
52886872f1
Misc: Added IMGUI_USER_H_FILENAME to change the path included when using IMGUI_INCLUDE_IMGUI_USER_H. ( #7039 )
2023-12-01 14:26:21 +01:00
ocornut
7965494ff3
Debug Tools: Added DebugFlashStyleColor() to identify a style color. Added to Style Editor.
2023-11-28 19:40:38 +01:00
ocornut
c1a3c7f445
Fixed Clang zealous warnings
2023-11-28 19:33:10 +01:00
ocornut
077e4db772
Misc: Added extra courtesy ==/!= operators when IMGUI_DEFINE_MATH_OPERATORS is defined.
2023-11-28 15:00:32 +01:00
ocornut
f6253b87d0
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_sdl3.cpp
# imgui.cpp
2023-11-28 14:39:46 +01:00
ocornut
3d083dbe1a
Version 1.90.1 WIP
2023-11-15 23:53:58 +01:00
ocornut
ce0d0ac829
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_sdl3.cpp
# backends/imgui_impl_vulkan.cpp
# imgui.cpp
2023-11-15 16:08:53 +01:00
ocornut
b81bd7ed98
Version 1.90.0
...
w/ Changelog tweaks.
2023-11-15 15:56:05 +01:00
ocornut
f298491a8a
Docs: amend/tweak details about using io.WantCaptureMouse. ( #7012 )
2023-11-15 13:29:37 +01:00
ocornut
afadf74a53
BeginChild: undo child name simplification as it reveal an issue with handling of ### in child names.
...
When the later is fixed we can re-enable this. Essentially reverts 8ee8513
.
2023-11-14 14:23:18 +01:00
ocornut
46843b683b
Fonts: minor/shallow amends ( #6925 )
2023-11-13 19:00:29 +01:00
thedmd
abfb9269b5
Fonts: added RasterizerDensity to ImFontConfig. ( #6925 )
2023-11-13 19:00:28 +01:00
ocornut
fe6544622b
SetNextWindowSizeConstraints() clarified parameters, fixed comments. ( #1139 , #3186 , #3270 )
2023-11-13 14:13:17 +01:00
ocornut
454f36d2af
Removed 'bool border' legacy versions of BeginChild() as they seemingly have no value other than confusing user and IDE.
...
Amend 7713c29
(was for #1666 , #1496 , #1395 , #1710 )
2023-11-10 16:03:19 +01:00
ocornut
450f1d7e7b
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_opengl3.cpp
# backends/imgui_impl_vulkan.cpp
# imgui.cpp
2023-11-10 14:56:10 +01:00
ocornut
d0da79c572
Defining IMGUI_DISABLE_OBSOLETE_FUNCTIONS now automaticaly define IMGUI_DISABLE_OBSOLETE_KEYIO. ( #4921 )
2023-11-09 16:51:31 +01:00
ocornut
ab522dd18c
Removed IM_OFFSETOF() macro in favor of using offsetof() available in C++11. Kept redirection define. ( #4537 )
2023-11-09 16:44:39 +01:00
ocornut
37ea320b96
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2023-11-07 20:20:41 +01:00
ocornut
0d3b468cb3
BeginChild(): added ImGuiChildFlags_AutoResizeX, ImGuiChildFlags_AutoResizeY, ImGuiChildFlags_AlwaysAutoResize + support for SetNextWindowSizeConstraints(). ( #1666 , #1395 , #1496 , #1710 ) + Demo
...
Note that child don't report ideal content size to parent so nesting may be difficult.
Note 4e4042b
simplified SkipItems logic.
Note e2035a5
standardizing WindowMinSize application on child
2023-11-07 20:15:32 +01:00
ocornut
44345c2108
Better documented the difference between BeginListBox() and BeginChild() w/ ImGuiChildFlags_FrameStyle.
...
BeginListBox() can't yet expose child flags because coarse clipping require query of stored size (same issue as with adding resize support to Tables).
2023-11-07 20:14:54 +01:00
ocornut
cdbc21a191
BeginChild(): Added ImGuiChildFlags_FrameStyle as a replacement for BeginChildFrame(). ( #1666 , #1496 , #1395 , #1710 , #462 , #503 , #263 )
...
Effectively allows us to avoid extending BeginChildFrame() api to mimic BeginChild() new parameters.
2023-11-07 18:50:32 +01:00
ocornut
ab47efd9a0
Bits / comments
2023-11-06 18:17:12 +01:00
ocornut
cfc71ab7c5
Made ImDrawCallback_ResetRenderState special value -8 instead of -1 so it is pointer aligned ( #6969 )
...
note https://github.com/dearimgui/dear_bindings/issues/56 may not be of direct use as-i.
2023-11-06 14:00:39 +01:00
ocornut
9298e310b2
Merge branch 'master' into docking (note: won't build as-is, see next commit)
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_internal.h
2023-11-02 18:05:43 +01:00
ocornut
c0bc43ccff
Offset values for ImGuiWindowFlags_NoNavInputs, ImGuiWindowFlags_NoNavFocus, ImGuiWindowFlags_UnsavedDocument.
...
(ABI breaking but we technically never supported ABI backward/forward compat, thought it is possible that some generated backends be affected)
2023-11-02 17:39:32 +01:00
ocornut
9235352400
BeginChild: Added ImGuiChildFlags_ResizeX and ImGuiChildFlags_ResizeY. ( #1710 )
2023-11-02 17:34:49 +01:00
ocornut
34a0bc456e
BeginChild: Added ImGuiChildFlags_AlwaysUseWindowPadding, obsoleted ImGuiWindowFlags_AlwaysUseWindowPadding. ( #462 , (toward #1666 , #1496 , #1395 , #1710 )
...
(bonus: will also eventually free a window flag)
2023-11-02 17:26:23 +01:00
ocornut
7713c29258
BeginChild: Upgraded 'bool border = true' parameter to use a ImGuiChildFlags type and the ImGuiChildFlags_Border value. (toward #1666 , #1496 , #1395 , #1710 )
2023-11-02 17:26:05 +01:00
ocornut
8ee85137d8
BeginChild(): Internal name used by child windows now omits the hash/id if the child window is submitted in root of id stack of parent window.
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.h
2023-10-20 15:40:11 +02:00
ocornut
ade2acfd1d
Inputs: Added IsKeyChordPressed() public helper function.
...
Amend 99913b5
2023-10-19 14:44:24 +02:00
ocornut
2a6d7b1eaa
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_demo.cpp
2023-10-18 19:45:19 +02:00
ocornut
1b9cb52d7b
BeginChild(): rename parameters to reduce diff of upcoming patches.
...
Should be a no-op.
2023-10-18 19:41:51 +02:00
ocornut
d6d00b4fcf
Moved BeginChild() above BeginChildEx() as it is more readable.
...
Misc shallow tidying up. Should be a no-op.
2023-10-17 13:45:39 +02:00
ocornut
f7fc186408
Merge branch 'master' into docking
...
+ 2 comments
# Conflicts:
# backends/imgui_impl_glfw.cpp
# backends/imgui_impl_osx.mm
# backends/imgui_impl_sdl2.cpp
# backends/imgui_impl_sdl3.cpp
# backends/imgui_impl_win32.cpp
2023-10-12 19:22:36 +02:00
ocornut
32228d8add
Tables: added Angled headers support. Added ImGuiTableColumnFlags_AngledHeader, ImGui::TableHeadersAngledRow(), style.TableAngledHeadersAngle. ( #2957 )
2023-10-12 19:21:02 +02:00
ocornut
9f851ebfe4
Tables: added ImGuiTableFlags_HighlightHoveredColumn.
2023-10-12 19:15:17 +02:00
ocornut
be1311cfc1
Tables: fixed double-clicking on a column from clearing HoveredColumnBorder for a frame.
2023-10-12 13:56:06 +02:00
ocornut
b9ebb8e06f
Tables: fixed right-clicking right-most section (past right-most column) from highlighting right-most column.
2023-10-10 16:44:56 +02:00
ocornut
feddcf3030
Combo: amends for ImGuiComboFlags_WidthFitPreview. ( #6881 )
...
Amend 112d8fc
2023-10-09 11:34:05 +02:00
mpv-enjoyer
112d8fc41d
Combo: added ImGuiComboFlags_WidthFitPreview. ( #6881 )
2023-10-09 11:26:00 +02:00
ocornut
001f102f38
IO, Backends: added ImGuiKey_AppBack, ImGuiKey_AppForward. ( #6891 , #4921 )
2023-10-05 21:26:07 +02:00
Andon M. Coleman
73346e4341
IO: Add extra keys to ImGuiKey enumerator: ImGuiKey_F13 to ImGuiKey_F24. ( #6891 , #4921 )
2023-10-05 20:16:08 +02:00
ocornut
0312a29e4c
ImageButton(): clarify purpose of size. ( #6901 , #5533 , #4471 , #2464 , #1390 ).
...
Amend 4a2ae06ca
2023-10-05 18:51:45 +02:00
ocornut
72ebd91567
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_opengl3.cpp
# imgui.h
2023-10-05 15:10:45 +02:00
ocornut
2c07d581de
TreeNode: Added ImGuiTreeNodeFlags_SpanAllColumns for use in tables. ( #3151 , #3565 , #2451 , #2438 )
2023-10-05 15:05:58 +02:00
ocornut
0dd756bceb
Moved GetCursorScreenPos/SetCursorScreenPos on top of its section.
...
+ update gallery thread link + minor typo (#6898 )
2023-10-05 13:52:28 +02:00
ocornut
330d763477
Separator: clarified setting the ImGuiSeparatorFlags_SpanAllColumns flag. ( #759 )
...
Technically a no-op.
2023-10-03 15:24:42 +02:00
ocornut
f8aed6499f
Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). ( #4631 )
...
Squashed of 2 master commits.
2023-09-28 20:16:13 +02:00
ocornut
c21278eeae
Debug Tools: Rename ShowIdStackToolWindow() -> ShowIDStackToolWindow(). ( #4631 )
...
Amend 8175a47
2023-09-27 19:49:12 +02:00
ocornut
b7c250925f
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2023-09-27 18:21:39 +02:00
ocornut
2f431a948c
IO: removed io.MetricsActiveAllocations introduced in 1.63. Same as 'g.DebugMemAllocCount - g.DebugMemFreeCount' (still displayed in Metrics.
2023-09-27 18:14:48 +02:00
ocornut
8175a47881
Debug Tools: Renamed ShowStackToolWindow() ("Stack Tool") to ShowIdStackToolWindow() ("ID Stack Tool"). ( #4631 )
2023-09-26 15:21:55 +02:00
ocornut
bb2fb74645
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_win32.cpp
# imgui.cpp
2023-09-26 11:42:49 +02:00
ocornut
d4869207e3
Misc: Most text functions also treat "%.*s" (along with "%s") specially to avoid formatting. ( #3466 , #6846 )
2023-09-25 10:47:28 +02:00
Glordim
f4790f6f66
BeginItemTooltip: Rename flag in comment ( #6853 )
2023-09-22 17:52:50 +02:00
ocornut
ef8ff1b5d8
TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. ( #6820 , #4859 , #5022 , #5239 )
...
Cherry-picked from docking's 64b1e44
2023-09-18 15:29:42 +02:00
ocornut
64b1e448d2
TabBar, Style: added style.TabBarBorderSize and associated ImGuiStyleVar_TabBarBorderSize. ( #6820 , #4859 , #5022 , #5239 )
...
Removed ImGuiTabItemFlags_Preview. Will need cherry-picking in master.
2023-09-18 15:28:44 +02:00
ocornut
afd0d3fca1
Docking: made ImGuiDockNodeFlags_NoUndocking public. ( #2999 , #6823 , #6780 , #3492 )
...
Amend 1612813
.
2023-09-18 12:41:18 +02:00
ocornut
72d760ba00
Docking: (Breaking) renamed ImGuiDockNodeFlags_NoDockingInCentralNode -> ImGuiDockNodeFlags_NoDockingOverCentralNode, ImGuiDockNodeFlags_NoSplit -> ImGuiDockNodeFlags_NoDockingSplit.
...
Shuffled other internal flags and added comments.
2023-09-18 12:27:29 +02:00
ocornut
7e246a7bb9
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2023-09-16 13:51:51 +02:00
ocornut
14f8b76c1a
Docking: Comments. Removed misleading shared/local identicators. ( #6823 , #2999 )
...
NoDocking not marked as saved (it never was). Removed unused ImGuiDockNodeFlags_LocalFlagsMask_.
2023-09-15 20:44:15 +02:00
ocornut
b101cf46b6
ListBox, Combo: Changed signature of "name getter" callback in old one-liner ListBox()/Combo() apis.
2023-09-15 18:43:04 +02:00
ocornut
32171a8b0c
Fonts: Better assert during load when passing truncated font data or wrong data size. ( #6822 )
2023-09-14 14:40:28 +02:00
Dexter Castor Döpping
556a1397a9
Tables: Remove comment referencing removed field SortSign ( #6807 )
2023-09-11 17:26:53 +02:00
ocornut
357f752bed
Docs: add more links to the top of every examples and backends files.
2023-09-11 14:01:40 +02:00
ocornut
0e1ce76ea8
InputTextMultiline: Fixed Tabbing cycle leading to a situation where Enter key wouldn't be accepted by the widget when navigation highlight is visible. ( #6802 , #3092 , #5759 , #787 )
...
+ Added test in ImGuiTestSuite: "widgets_inputtext_multiline_enter"
2023-09-11 11:41:56 +02:00
ocornut
72dbe45adc
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_win32.cpp
# imgui.cpp
2023-09-08 18:02:06 +02:00
ocornut
7812039402
ImVector: Added find_index() helper.
2023-09-08 16:57:48 +02:00
ocornut
44a6b493ee
Commented out obsolete ImDrawCornerFlags_XXX. Commented out runtime support for hardcoded ~0 or 0x01..0x0F rounding flags values for AddRect()/AddRectFilled()/PathRect()/AddImageRounded()
...
Amend 5185329
, 3f5b2a3
, c2d6d26
, 39432bf
, 033dfd9
2023-09-08 12:14:11 +02:00
ocornut
becd75676f
Commented out obsolete redirecting function: GetWindowContentRegionWidth().
2023-09-08 11:28:17 +02:00
ocornut
727c462069
Internals: Added ImTextFindPreviousUtf8Codepoint() helper + comments.
2023-09-08 11:28:13 +02:00
Leonardo Serrano
e3d9b875c9
ImDrawList: added PathEllipticalArcTo(), AddEllipse(), AddEllipseFilled(). ( #2743 )
...
Rebased with mods by ocornut: defaults to num_segments==0, supports for auto-tesselation, tweak demo.
2023-09-07 12:12:21 +02:00
ocornut
fb9b006865
Version 1.90 WIP
2023-09-05 16:46:52 +02:00
ocornut
a1b60fc1f5
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_demo.cpp
2023-09-04 14:59:59 +02:00
ocornut
fef3389157
Version 1.89.9
2023-09-04 14:30:32 +02:00
ocornut
e8a5c9e1b8
Tables: Made it possible to change style.CellPadding.y between rows. Added demo.
2023-09-04 11:23:54 +02:00
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
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
200053771a
Clipper: Added IncludeIndex() helper to include a single item. ( #6424 , #3841 )
2023-08-25 18:01:40 +02:00
ocornut
676497fe05
Merge branch 'master' into docking
...
ac64b65
on master seemed incorrect.
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
# imgui_internal.h
# imgui_widgets.cpp
2023-08-25 14:20:51 +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
ocornut
c06c796242
TreeNode: added note about ImGuiTreeNodeFlags_Bullet.
2023-08-15 16:28:10 +02:00
ocornut
8f5ce73140
Tables: Made it possible to use SameLine(0,0) after TableNextColumn() or TableSetColumnIndex() in order to reuse line height from previous cell.
2023-08-14 13:09:39 +02:00
ocornut
63b6300c39
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_internal.h
2023-08-08 14:16:13 +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
2b1fc6f765
Demo: Demonstrate out-of-order rendering using ImDrawListSplitter.
2023-08-06 20:13:05 +02:00
ocornut
d6d94d90bf
Version 1.89.9 WIP
...
+ Minor typo fixes
2023-08-03 19:19:21 +02:00
ocornut
f8704cd085
Merge branch 'master' into docking
2023-08-01 13:11:26 +02:00
ocornut
f7eea63872
Version v1.89.8
2023-08-01 12:53:57 +02:00
ocornut
30594c37d0
Merge branch 'master' into docking
2023-08-01 10:22:21 +02:00
ocornut
19ae142bdd
Mark alternative ImColor constructors as constexpr, second attempt ( #6656 )
...
Earlier 7c5b0e8
broke with VS2015 and some other MingGW/GCC setups.
2023-07-29 17:48:19 +02:00
ocornut
dc2b0a2823
Disable -Wreserved-identifier warning on Clang (applying to member fields seems excessively weird).
2023-07-29 17:37:32 +02:00
ocornut
88a330ebef
Revert "Mark alternative ImColor constructors as constexpr ( #6656 )"
...
This reverts commit 7c5b0e8292
.
2023-07-29 17:24:34 +02:00
EggsyCRO
7c5b0e8292
Mark alternative ImColor constructors as constexpr ( #6656 )
2023-07-29 16:56:21 +02:00
ocornut
eefc9035f0
Fonts: ImFontConfig::OversampleH now defaults to 2 instead of 3.
2023-07-29 16:22:30 +02:00
ocornut
f8f805f046
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_dx10.cpp
# backends/imgui_impl_dx11.cpp
# backends/imgui_impl_dx12.cpp
# backends/imgui_impl_dx9.cpp
# backends/imgui_impl_glfw.cpp
# backends/imgui_impl_opengl2.cpp
# backends/imgui_impl_opengl3.cpp
# backends/imgui_impl_osx.mm
# backends/imgui_impl_sdl2.cpp
# backends/imgui_impl_sdl3.cpp
# backends/imgui_impl_vulkan.cpp
# backends/imgui_impl_win32.cpp
2023-07-20 23:18:47 +02:00
ocornut
1109de3827
Tooltips: fixed ImGuiHoveredFlags_ForTooltip conflicting with ImGuiHoveredFlags_NoNavOverride since 10c7709f
. ( #6622 , #1485 )
2023-07-20 22:59:15 +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
863ac31f01
Doc: various tweaks + tweak imconfig comments.
2023-07-13 12:38:16 +02:00
ocornut
0110f4c8cc
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_internal.h
2023-07-12 18:19:24 +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
f6feddd1ee
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
2023-07-11 12:44:15 +02:00
ocornut
b79751ebad
Docking: Added DockingSeparatorSize to style: amends ( #3481 , #4721 , #2522 )
...
Add ImGuiStyleVar_DockingSeparatorSize + misc Docking related comments.
2023-07-11 12:43:50 +02:00
PossiblyAShrub
a5aff5fd3e
Docking: Added DockingSeparatorSize to style ( #3481 , #4721 , #2522 )
...
(DockingSplitterSize in current commit, about to be renamed)
2023-07-11 12:37:40 +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
dc3e531ff2
Merge branch 'master' into docking
2023-07-04 16:22:25 +02:00
ocornut
d4ddc46e77
InputText: Fixed a crash on deactivating a ReadOnly buffer. ( #6570 , #6292 , #4714 )
...
This will be part of 1.89.7 Tagged relase.
2023-07-04 16:20:51 +02:00
ocornut
677c7b2258
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_vulkan.cpp
# docs/CHANGELOG.txt
# docs/TODO.txt
2023-07-04 14:58:03 +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
a88e5be7f4
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_widgets.cpp
2023-06-28 14:56:33 +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
06f5b46133
Overlap: Fixed first frame of an overlap highlighting underlying item if previous frame didn't hover anything. ( #6512 , #3909 , #517 )
2023-06-27 15:46:35 +02:00
ocornut
6b01114057
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_opengl3.cpp
2023-06-23 16:04:13 +02:00
ocornut
94c46d7486
InputText: Fixed not returning true when buffer is cleared by ImGuiInputTextFlags_EscapeClearsAll. ( #5688 , #2620 )
2023-06-21 14:20:13 +02:00
ocornut
1450d23b60
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# docs/CHANGELOG.txt
# imgui.cpp
2023-06-20 15:12:09 +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
ocornut
d4b94bd65b
(Breaking) Moved io.HoverDelayShort/io.HoverDelayNormal to style.HoverDelayShort/style.HoverDelayNormal. ( #1485 )
2023-06-20 15:04:13 +02:00
ocornut
f09ef23ae6
IsItemHovered, Tooltips: Tweak default delay again. ( #1485 )
...
Amend eec344c
2023-06-20 14:43:38 +02:00
ocornut
d96bbf0aae
TreeNode: Added undocumented ImGuiTreeNodeFlags_UpsideDownArrow flag. ( #6517 )
...
+ Minor tweak comment/layout in ImGuiIO
2023-06-19 14:33:23 +02:00
ocornut
194916135a
Internals: renamed HoverDelay fields.
2023-06-16 16:56:33 +02:00
ocornut
eec344cc1e
Tweak HoverDelayClearTimer. Not exposing since I am unsure logic is viable (and is rather complex with upcoming addition of stationary logic). ( #1485 )
...
+ Tweaked default value of io.HoverDelayNormal from 0.30 to 0.35.
2023-06-14 18:29:49 +02:00
ocornut
e95d66faa8
Clipper: Rework inner logic to allow functioning with a zero-clear constructor. ( #5856 )
2023-06-13 14:55:02 +02:00
ocornut
ef07ddf087
Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments.
...
Moved from compile-time to runtime flag. Applied docking specific change to this cherry-picked commit.
# Conflicts:
# docs/CHANGELOG.txt
2023-06-13 11:55:21 +02:00
ocornut
9c16976749
Debug Tools: Added 'io.ConfigDebugIniSettings' option to save .ini data with extra comments.
...
Moved from compile-time to runtime flag. Note: commit in master is not particularly useful. Docking version will add stuff.
2023-06-13 11:54:29 +02:00
ocornut
0664877998
Merge branch 'master' into docking
2023-06-09 14:02:19 +02:00
ocornut
4fab72b40e
BeginChild/Tables: Fixed BeginChild temporary activation id collision. Fixes regression in 1.89.6 leading to the first column of tables with either ScrollX or ScrollY flags from being impossible to resize. ( #6503 )
2023-06-09 14:01:21 +02:00
ocornut
61ebb37843
Version 1.89.7 WIP
2023-06-01 11:22:43 +02:00
ocornut
823a1385a2
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_sdlrenderer.h
# docs/CHANGELOG.txt
# imgui.cpp
2023-05-31 14:51:56 +02:00
ocornut
5319d1cffa
Version 1.89.6
2023-05-31 14:47:32 +02:00
ocornut
7e03ae3240
Window: Fixed resizing from upper border when io.ConfigWindowsMoveFromTitleBarOnly is set. ( #6390 )
2023-05-25 15:23:01 +02:00
ocornut
54c1ac3e38
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2023-05-22 10:10:29 +02:00
ocornut
45c8c3b611
Listbox: commented out obsolete/redirecting functions that were marked obsolete more than two years ago: ListBoxHeader(), ListBoxFooter().
...
+ Added default parameter to SeparatorEx() amend 2c558d5
2023-05-22 10:09:20 +02:00
ocornut
7348e99269
CI: temporarily use Emscripten 3.1.37 because 3.1.18 has a regression.
...
Ref https://github.com/emscripten-core/emscripten/issues/19363
2023-05-18 12:33:47 +02:00
ocornut
ecb0aaa7c2
Clipper: Renamed ForceDisplayRangeByIndices() to IncludeRangeByIndices(). ( #6424 , #3841 ) + commented out obsolete ImGuiListClipper() constructor.
2023-05-15 12:06:29 +02:00
ocornut
bcfc1ad8f6
Nav: Forwarded (wrap/loop) request don't mistakenly wreck reference pos.
...
Amend 6656553
2023-05-10 15:22:17 +02:00
ocornut
530134d125
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_metal.mm
# backends/imgui_impl_opengl3.cpp
# backends/imgui_impl_osx.mm
# backends/imgui_impl_sdl3.cpp
# imgui.cpp
2023-05-10 12:57:37 +02:00
ocornut
430c05991c
Docs: added more detailed information about UTF-8 encoding.
...
+ Revert mistakenly committed Win32+DX11 main.cpp from last commit.
2023-05-10 12:54:51 +02:00
ocornut
0397321be0
Debug Tools: Added 'io.ConfigDebugIgnoreFocusLoss' option. ( #4388 , #4921 )
2023-05-09 20:28:08 +02:00
ocornut
6656553fa4
Nav: Record/restore preferred position on each given axis.
...
Tagging #6344 #6003 #2694 #1688 as it relates to scoring, however this doesn't technically fix any of them fully yet.
But e.g. once we restore axial path for #2694 this commit will allow going back and forth to initial location.
2023-05-09 17:26:27 +02:00
ocornut
6cdedf5834
Drag, Sliders: if the format string doesn't contain any %, when using CTRL+Click to input we use a default format. ( #6405 )
2023-05-09 12:04:04 +02:00
Koostosh
fd943182bd
ImVec2: Added unary minus operator ( #6368 )
2023-04-25 16:24:50 +02:00
ocornut
594cc4793a
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
2023-04-25 12:21:16 +02:00
ocornut
d3ad2f357f
Menus: Fixed an issue when opening a menu hierarchy in a given menu-bar would allow opening another via simple hovering. ( #3496 , #4797 )
...
Amend 48f26333
2023-04-25 12:17:37 +02:00
ocornut
bba39762dc
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_win32.cpp
# imgui.cpp
# imgui_internal.h
# imgui_widgets.cpp
2023-04-21 19:12:11 +02:00
ocornut
4d42450a73
Focus: amend ImGuiFocusRequestFlags_UnlessBelowModal to bring to front-most below the modal, simplify code in Begin(). ( #6357 , #4317 )
2023-04-21 19:07:45 +02:00
ocornut
adf693c061
Viewports: added void* ImGuiPlatformMonitor::PlatformHandle field (backend-dependant).
2023-04-21 15:31:14 +02:00
ocornut
00d3f9295e
Nav: Fixed navigation within tables/columns where item boundaries goes beyond columns limits. ( #2221 )
2023-04-20 16:42:52 +02:00
ocornut
4f692ba840
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_metal.mm
# backends/imgui_impl_opengl3.cpp
# backends/imgui_impl_osx.mm
# backends/imgui_impl_win32.cpp
# docs/CHANGELOG.txt
2023-04-19 16:35:50 +02:00
ocornut
064153fca4
Version 1.89.6 WIP
2023-04-17 14:40:00 +02:00
ocornut
0ea3b87bd6
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui_internal.h
2023-04-13 16:24:09 +02:00
ocornut
1ebb913827
Version 1.89.5
2023-04-13 16:17:49 +02:00
ocornut
ec461c6ccb
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_sdl2.cpp
# backends/imgui_impl_sdl3.cpp
# imgui_demo.cpp
2023-04-06 19:16:08 +02:00
ocornut
1f0b46b93c
Viewports: moved Platform_GetWindowFocus queries in UpdateViewportsNewFrame(). Added ImGuiViewportFlags_IsFocused status flag. ( #1542 )
...
Not sure why queries were in UpdatePlatformWindows().
- initially added there on 2018/04/26 f1ae07e532
(squashed)
- slightly moved in cd51f37fc0
for the purpose of putting less constraint on backend but that check is now done on our side anyhow.
Seems more consistent to do it nxt to other polling in UpdateViewportsNewFrame().
Not using ImGuiViewportFlags_IsFocused yet.
2023-04-06 16:08:53 +02:00
ocornut
ed72fcd12a
Viewports: Internal: rename LastFrontMostStampCount -> LastFocusedStampCount. Rename ImGuiViewportFlags_Minimized -> ImGuiViewportFlags_IsMinimized
...
Effectively it is currently the later, but see comment "Even without focus, we assume the window becomes front-most." in UpdatePlatformWindows().
+ Moved Window field at top since it is most useful.
2023-04-06 15:17:52 +02:00
ocornut
47a07d8476
ButtonBehavior: Fixed an edge case where changing widget type/behavior while active and using same id could lead to an assert. ( #6304 )
...
+ Demo: use BeginDisabled() block in BackendFlags section.
I'd still consider this undefined behavior as some combination may not work properly, but let's fix things while we can as we encounter them.
2023-04-05 18:34:49 +02:00
ocornut
ee5ce36745
Merge branch 'master' into docking, including specific merge for imgui_impl_glfw.cpp for f070497
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# backends/imgui_impl_sdl2.cpp
# backends/imgui_impl_sdl3.cpp
# backends/imgui_impl_win32.cpp
# docs/CHANGELOG.txt
# imgui.cpp
# imgui.h
# imgui_internal.h
2023-04-04 21:17:47 +02:00
ocornut
c9fe7ebc7b
IO: Input queue trickling adjustment for touch screens. ( #2702 , #4921 )
...
+ amend two comments in imgui.h
2023-04-04 21:05:27 +02:00
ocornut
a16f99c6a2
IO: Added io.AddMouseSourceEvent() and ImGuiMouseSource enum. ( #2702 , #2334 , #2372 , #3453 , #5693 )
2023-04-04 20:18:57 +02:00
ocornut
9a1e09eb1f
Fixed ImVec2 operator[] warning.in Clang. ( #6272 )
...
Added by a38e3c2
2023-04-04 19:26:48 +02:00
ocornut
13931fd851
Redirecting domain name
...
Tired of paying/maintaining two domains names and .org tend to be fluctuating + changing host company for sponsoring.
2023-04-03 15:07:20 +02:00
ocornut
e8206db829
InputText: Fixed crash introduced by 5a2b1e848
( #6292 , #4714 )
2023-04-02 17:29:56 +02:00
ocornut
4fdafef54f
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_opengl2.cpp
# backends/imgui_impl_opengl3.cpp
# backends/imgui_impl_sdl2.cpp
# backends/imgui_impl_sdl3.cpp
# docs/CHANGELOG.txt
# imgui_widgets.cpp
2023-03-29 18:41:41 +02:00
ocornut
84fd0c7ff4
Inputs, IO: record MouseWheelRequestAxisSwap information. Apply in UpdateMouseWheel() before legacy ctrl+wheel.
2023-03-29 17:09:58 +02:00
ocornut
a38e3c222f
Fixed ImVec2 operator[] violating aliasing rules causing issue with Intel C++ compiler. ( #6272 )
...
Note that this is not BayesBug's exact intended solution, so issues would be my responsibility ;)
Amended.
2023-03-29 12:51:41 +02:00
AJ Weeks
821814b450
InputText: Reworked prev/next-word behavior . Include period as delimiter and tweak prev/next words logic. ( #6067 )
2023-03-22 20:48:47 +01:00
ocornut
89d09070e3
Nav: Made Ctrl+Tab/Ctrl+Shift+Tab windowing register ownership to held modifier. ( #4828 , #3255 , #5641 )
2023-03-22 15:42:14 +01:00
ocornut
ad44f5831a
Merge branch 'master' into docking
2023-03-21 17:04:54 +01:00
ocornut
e55a0ef107
IO: avoid changing context in AddKeyAnalogEvent(). Amend 7269498
. ( #6199 , #6256 , #4921 , #5856 )
2023-03-21 14:32:37 +01:00
ocornut
5a2b1e8482
InputText: Fixed a tricky edge case, ensuring value is always written back on the frame where IsItemDeactivated() returns true ( #4714 )
...
Altered ItemAdd() clipping rule to keep previous-frame ActiveId unclipped to support that late commit.
Also, MarkItemEdited() may in theory need to do:
if (g.ActiveIdPreviousFrame == id)
g.ActiveIdPreviousFrameHasBeenEditedBefore = true;
But this should already be set so not adding now.
2023-03-16 21:12:57 +01:00
ocornut
6b3435a2db
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# backends/imgui_impl_opengl3.cpp
# docs/CHANGELOG.txt
2023-03-16 12:01:13 +01:00
ocornut
24a44b9abe
Version 1.89.5 WIP
2023-03-15 12:25:20 +01:00
ocornut
9e30fb0ec1
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# docs/CHANGELOG.txt
# imgui.cpp
2023-03-14 16:38:22 +01:00
ocornut
f3f6295d53
Version 1.89.4
...
Commented out obsolete enums/functions names: ImGuiSliderFlags_ClampOnInput, ImGuiInputTextFlags_AlwaysInsertMode, ImDrawList::AddBezierCurve(), ImDrawList::PathBezierCurveTo()()
2023-03-14 16:36:19 +01:00
ocornut
cc2177de15
Debug Tools: Added io.ConfigDebugBeginReturnValueOnce / io.ConfigDebugBeginReturnValueLoop options.
2023-03-14 15:25:13 +01:00
ocornut
c426e32247
Tables: Fixed an issue where user's Y cursor movement within a hidden column would have side-effects.
...
- Afaik the "to allow ImGuiListClipper to function" was added early during Tables development (prior to commit 55) and later replaced by support in ImGuiListCipper, it seems unnecessary.
- Also removed RowPosY2 being accted in TableEndCell().
+ Comments about 2bb9e35
+ fix example bb224c8
2023-03-13 16:26:38 +01:00
ocornut
9937660b1c
Merge branch 'master' into docking
...
# Conflicts:
# examples/example_allegro5/main.cpp
# examples/example_apple_metal/main.mm
# examples/example_apple_opengl2/main.mm
# examples/example_glfw_metal/main.mm
# examples/example_glfw_opengl2/main.cpp
# examples/example_glfw_opengl3/main.cpp
# examples/example_glfw_vulkan/main.cpp
# examples/example_glut_opengl2/main.cpp
# examples/example_sdl2_directx11/main.cpp
# examples/example_sdl2_metal/main.mm
# examples/example_sdl2_opengl2/main.cpp
# examples/example_sdl2_opengl3/main.cpp
# examples/example_sdl2_vulkan/main.cpp
# examples/example_sdl3_opengl3/main.cpp
# examples/example_win32_directx10/main.cpp
# examples/example_win32_directx11/main.cpp
# examples/example_win32_directx12/main.cpp
# examples/example_win32_directx9/main.cpp
# imgui.cpp
2023-03-10 18:40:04 +01:00
ocornut
2bb9e35a48
Nav: Tabbing now cycles through all items when ImGuiConfigFlags_NavEnableKeyboard is set. ( #3092 , #5759 , #787 )
2023-03-10 18:35:52 +01:00
ocornut
e83fb468c6
Renamed PushAllowKeyboardFocus()/PopAllowKeyboardFocus() to PushTabStop()/PopTabStop(). ( #3092 )
2023-03-09 18:53:57 +01:00
ocornut
3b2f617652
BeginTooltip: Added 'bool' return value to BeginTooltip() for API consistency. Updated demo.
...
Add SetWindowHiddendAndSkipItemsForCurrentFrame().
2023-03-09 15:16:40 +01:00
ocornut
e2cede6542
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
2023-03-08 17:41:32 +01:00
Marc Delorme
c8ad25caa6
Make classes not depend on the implicit GImGui context ( #5856 , #6199 ): ImGuiWindow, ImGuiInputTextCallbackData, ImGuiListClipper, ImGuiStackSizes
...
This commit is a preparation toward adding ImGui apis with explicit context
and making ImGui applications being able to use multiple context at the same time
whatever their concurrency model.
This commit modifies ImGuiInputTextCallback, ImGuiListClipper and ImGuiStackSize so those classes do not to depend on GImGui context anymore.
About ImGuiInputTextCallback:
- ImGuiInputTextCallback depends on ImGuiContext because it has a
`InsertChars` method adding character to `g.InputTextState`
- To make ImGuiInputTextCallback aware of which context to use, the
appropriate context is given as argument of ImGuiInputTextCallback
constructor.
About ImGuiListClipper:
- ImGuiListClipper apply to a context through its `Begin`, `End`, and `Step`
method.
- To make ImGuiListClipper aware of which context to use, the
appropriate context is given as argument of ImGuiListClipper
constructor.
- Since the behavior is different than previously the class has been
renamed ImGuiListClipperEx
- In order to preserve backward compatibility, a subclass of ImGuiListClipperEx
named ImGuiListClipper has been defined and forward the implicit context
to ImGuiListClipperEx parent.
About ImGuiTextFilter:
- ImGuiTextFilter depends on the implicit context because the Draw(..)
method call ImGui::InputText(...)
- Instead from that commit the Draw(...) method takes an explicit context
as first argument
- Since the behavior is different than previously the class has been
renamed ImGuiTextFilterEx
- In order to preserve backward compatibility, a subclass of ImGuiTextFilterEx
named ImGuiTextFilter has been defined. This subclass has a draw method
override which and forward the implicit context to the parent class Draw(...)
About ImGuiStackSizes:
- ImGuiStackSizes was depending on ImGuiContext because of its
`SetToCurrentState` and `CompareWithCurrentState` method
- ImGuiStackSizes is an helper object use
for comparing state of context. It does not necessarily need to
compare the same context. For that reason, as opposed to previous
classes it takes the context it wants to compare to as argument of
its method.
- For this occasion `SetToCurrentState` and `CompareWithCurrentState`
have been renamed `SetToContextState` and `CompareWithContextState`
to match the new method signature.
ImGuiListClipper
ImGuiInputTextCallbackData
2023-03-08 15:55:38 +01:00
Marc Delorme
10ace228bc
Make classes not depend on the implicit GImGui context ( #6199 , #5856 , #6199 ): ImGuiIO
...
This commit is a preparation toward adding ImGui apis with explicit context
and making ImGui applications being able to use multiple context at the same time
whatever their concurrency model.
About ImGuiIO:
- ImGuiIO depends on ImGuiContext because some of its method want to event to `g.InputEventQueue`.
- To make ImGuiIO aware of the context to use, context which creates the ImGuiIO is given as argument of ImGuiIO constructor.
- The assert `IM_ASSERT(&g.IO == this && "Can only add events to current context.")` has been removed since it does not make sense anymore
NOTE: ImGuiIO could be completely independent of ImGuiContext if the InputEventQueue was moved from ImGuiContext to ImGuiIO, but since
ImGuiIO is a public class it would expose InputEvent type. Solving this problem is out of the current scope, but it is interesting to notice.
2023-03-08 15:39:22 +01:00
ocornut
c9a53aa74d
Nav: Made Enter key submit the same type of Activation event as Space key. ( #5606 )
...
Instead of adding NavActivateInputId support in ButtonBehavior() started untangling the mess.
2023-03-07 18:41:49 +01:00
ocornut
b6586bb06d
TestEngine: update IMGUI_TEST_ENGINE_ITEM_ADD() hooks to support passing item in flags.
2023-03-06 18:10:04 +01:00
ocornut
4078abe14c
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_opengl3.cpp
# backends/imgui_impl_sdl2.cpp
# backends/imgui_impl_sdl3.cpp
# imgui.cpp
# imgui.h
2023-03-06 17:03:55 +01:00
ocornut
bfce7750b1
Simpified code in GetKeyData() and used ImGuiKey_KeysData_OFFSET for consistency. Rework demo, Comments. Moved ImGuiKey_KeysData_OFFSET to internal.h ( #4921 , #6191 )
2023-02-24 13:05:32 +01:00
ocornut
e9743d85dd
Drag and Drop: Clear state on EndDragDropTarget() with delivery + fixed handling of overlapping targets when smaller one is submitted before and can accept the same data type. ( #6183 , #5817 )
2023-02-21 21:23:54 +01:00
ocornut
a1b8457cb5
Moved the optional "courtesy maths operators" (#define IMGUI_DEFINE_MATH_OPERATORS) implementation from imgui_internal.h in imgui.h. ( #6164 , #6137 , #5966 , #2832 )
2023-02-15 19:23:12 +01:00
ocornut
e25e4526cd
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_win32.cpp
# docs/CHANGELOG.txt
2023-02-15 18:18:47 +01:00
ocornut
204cb4d226
Version 1.89.4 WIP
2023-02-15 15:35:56 +01:00
ocornut
192196711a
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
2023-02-14 16:01:11 +01:00
ocornut
458a109031
Version 1.89.3
2023-02-14 16:00:18 +01:00
ocornut
092b6825ac
Fonts: Assert that in each GlyphRanges[] pairs first is <= second.
2023-02-14 15:00:12 +01:00
ocornut
ea4565368e
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_sdl2.cpp
# backends/imgui_impl_sdl2.h
# backends/imgui_impl_sdl3.cpp
# backends/imgui_impl_sdl3.h
# imgui.cpp
2023-02-10 17:05:06 +01:00
ocornut
99c0bd65df
Added SeparatorText() widget. ( #1643 )
2023-02-10 12:16:41 +01:00
ocornut
b0a936e5d4
Merge branch 'master' into docking (incl revert of examples refactor)
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# backends/imgui_impl_sdl.cpp
# examples/example_glfw_opengl2/main.cpp
# examples/example_glfw_opengl3/main.cpp
# examples/example_glfw_vulkan/main.cpp
# examples/example_sdl_directx11/main.cpp
# examples/example_sdl_opengl2/main.cpp
# examples/example_sdl_opengl3/main.cpp
# examples/example_sdl_vulkan/main.cpp
# examples/example_win32_directx10/main.cpp
# examples/example_win32_directx11/main.cpp
# examples/example_win32_directx12/main.cpp
# examples/example_win32_directx9/main.cpp
2023-02-03 22:38:39 +01:00
ocornut
f799a293c8
Tables: Solved an ID conflict issue with multiple-instances of a same table. Storing instance id for convenience. ( #6140 )
...
TableGetColumnResizeID() are still using an incorrect table, but having only one-level left tends to cancel things out.
2023-02-03 20:03:03 +01:00
ocornut
887abe9578
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# backends/imgui_impl_osx.mm
# backends/imgui_impl_sdl.cpp
# backends/imgui_impl_win32.cpp
# imgui.cpp
# imgui.h
# imgui_internal.h
# imgui_widgets.cpp
2023-02-01 22:18:57 +01:00
ocornut
3617a96372
Backends, Inputs: Made horizontal scroll wheel and horizontal scroll direction consistent accross backends/os. ( #4019 , #6096 , #1463 )
...
Documented assumptions.
2023-02-01 21:29:08 +01:00
ocornut
867bdbecb3
Text: fixed issue in RenderText() leading to IM_ASSERT_PARANOID() triggering if enabled. ( #6132 , #5720 , #5919 )
...
Amend 3482d4ec
, bd96f6e
2023-01-31 14:41:16 +01:00
ocornut
5741cbae45
Internals: ImFileOpen: fixed misleading use of ImWchar (would allocate more when ImWchar=ImWchar32) + update version for previous changes namely tab bar ones.
2023-01-25 20:34:48 +01:00
ocornut
88dfd85e92
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
2023-01-21 00:49:06 +01:00
ocornut
91667430a8
Tables: increase table columns limit from 64 to 512 using bit array allocated in contiguous memory +. ( #6094 , #5305 , #4876 , #3572 )
2023-01-21 00:41:54 +01:00
ocornut
3482d4eccf
Text: Fixed layouting of wrapped-text block skipping successive empty lines. ( #5720 , #5919 )
...
Regression in the bd96f6e
fix
2023-01-19 15:59:39 +01:00
ocornut
1297a2be52
Text: Tweaked rendering of three-dots "..." ellipsis variant. Baking more data. ( #2775 , #4269 )
...
Ideally we're bake a single glyph but it's currently difficult to setup in our font building process.
2023-01-11 16:37:47 +01:00
ocornut
482ac70a0b
Version 1.89.3 WIP
2023-01-11 15:52:30 +01:00
ocornut
d822c65317
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# docs/CHANGELOG.txt
2023-01-05 15:58:49 +01:00
ocornut
d7c8516a4b
Version 1.89.2
2023-01-05 15:49:29 +01:00
ocornut
e06bbe05e1
Revert most/part of "Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo." ( #456 , #2637 )
...
This reverts commit 0949acb6e6
.
# Conflicts:
# imgui.h
2023-01-05 15:21:48 +01:00
ocornut
57a5b73a4c
InputText: fixed cursor navigation when pressing Up Arrow on the last character of a multiline buffer which doesn't end with a carriage return. ( #6000 )
...
Simplify stb_textedit_find_charpos(). Leaving that to simmer for a while before attempting an upstream PR.
2023-01-04 17:58:07 +01:00
ocornut
fc3815bfe5
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_sdl.cpp
# backends/imgui_impl_vulkan.cpp
2023-01-03 21:06:09 +01:00
ocornut
4b39c1f654
Docs: adding Tests badge + more references to Test Engine.
2023-01-03 20:26:26 +01:00
ocornut
c191faf0ba
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
# imgui_internal.h
# imgui_widgets.cpp
2022-12-08 21:19:01 +01:00
ocornut
59b63defe5
Misc shallow merge/sync from docking designed to faciliate cross-merging between docking and string_view.
2022-12-08 21:14:39 +01:00
ocornut
0949acb6e6
Shortcut: added Shortcut() function and ImGuiInputFlags in public API + Demo. ( #456 , #2637 )
2022-12-08 18:54:41 +01:00
ocornut
1dae7df26f
Misc: added GetItemID() in public API.
2022-12-08 18:45:04 +01:00
ocornut
48215231f9
Demo: moved WantCapture overrides items + various comments related to ImGuiKey, ImGuiMod
2022-12-08 18:30:48 +01:00
ocornut
d3025cde37
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2022-12-06 22:13:12 +01:00
ocornut
fd0b3734d3
Tables, Nav, Scrolling: fixed scrolling functions and focus tracking with frozen rows and columns. ( #5143 , #4868 , #3692 )
2022-12-06 21:07:50 +01:00
ocornut
3ea0fad204
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
# imgui.h
2022-12-01 20:22:27 +01:00
ocornut
0e2a167bdb
Fonts: added a 'void* UserData' field in ImFontAtlas, as a convenience for use by applications using multiple font atlases.
...
+ fixed mislocated Changelog entries added recently.
2022-12-01 20:10:37 +01:00
ocornut
87caf27ac4
Inputs, Scrolling: better selection of scrolling window when hovering nested windows and backend/OS is emitting dual-axis wheeling inputs. ( #3795 , #4559 )
2022-11-30 17:49:59 +01:00
ocornut
1a497c2499
Inputs, IO: reworked ImGuiMod_Shortcut to redirect to Ctrl/Super at runtime instead of compile-time. ( #5923 , #456 )
2022-11-29 19:07:50 +01:00
ocornut
bd96f6eac4
Text: Fixed layouting of wrapped-text block when the last source line is above the clipping region. Regression added in 1.89. ( #5720 , #5919 )
...
+ Update version marker
2022-11-28 14:59:13 +01:00
ocornut
540909bddf
Fixed version string for consistency ( #5918 )
2022-11-28 14:42:37 +01:00
ocornut
6af38b1a43
Fixed version string for consistency ( #5918 )
2022-11-28 14:42:30 +01:00
ocornut
595a428baa
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_glfw.cpp
# docs/CHANGELOG.txt
# imgui.cpp
# imgui_internal.h
2022-11-24 21:27:15 +01:00
ocornut
a8df192df0
Version 1.89.1
2022-11-24 21:24:33 +01:00
ocornut
27c58c3946
Scrolling, Focus, Combo: fixed SetKeyboardFocusHere()/SetItemDefaultFocus()/ScrollToRectEx() during an appearing form not centering item. ( #5902 , #2812 , #4242 , #2900 )
...
Amend 44f801186
and 8f495e554
2022-11-24 20:57:41 +01:00
ocornut
d2f9c5dfb7
Viewports: moving PlatformWindowCreated field to public structure. ( #5882 )
2022-11-24 16:39:45 +01:00
ocornut
3a685749cb
ColorEdit: fixed label overlapping when using style.ColorButtonPosition == ImGuiDir_Left. ( #5912 )
...
Amend 54fb051e5
+ Internals: added IsKeyboardKey(), IsMouseKey() helpers.
2022-11-23 15:00:50 +01:00
ocornut
38cfe22b8b
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
2022-11-16 17:57:05 +01:00
ocornut
5bb2874940
Version 1.89.1 WIP
2022-11-16 17:55:27 +01:00
ocornut
d60985df7f
Inputs: fix moving a window or drag and dropping from capture mods. ( #5888 , #4921 , #456 )
...
Amend change of SetActiveIdUsingAllKeyboardKeys() in 4448d97
which seemingly accidentally reverted the change intended by fd408c97
2022-11-16 17:41:24 +01:00
ocornut
83cee9e091
InputText: replaced some uses of SetKeyOwner() + IsKeyPressed() with Shortcut()
...
Which makes it easier to hook/disable those keys from outside if needed.
2022-11-16 17:09:14 +01:00
ocornut
94e850fd6f
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
2022-11-15 15:40:54 +01:00
ocornut
81160fee56
Version 1.89
...
+ fix warning from a582d92
2022-11-15 15:20:36 +01:00
ocornut
7380b9816e
Scrolling: Exposed SetNextWindowScroll() in public API. ( #1526 )
2022-11-09 17:03:07 +01:00
ocornut
cda26635cd
Inputs: refacotr/extract CalcRoutingScore() out of SetShortcutRouting(), easier to follow with early returns.
...
+ clarified comments about GetMouseCursor() #5739
2022-11-09 16:35:50 +01:00
ocornut
4d5da74c79
Merge branch 'master' into docking
2022-11-08 20:44:04 +01:00
ocornut
7ff2d3353c
Inputs: added wip/experiment routing system: Shortcut(), RoutingFocused policy, SetShortcutRouting(). ( #456 , #2637 , #3724 )
...
- InputText() uses Shortcut().
2022-11-08 20:37:58 +01:00
ocornut
4448d975d1
Inputs: added wip/internal Input Owner system. ( #456 , #2637 , #2620 , #2891 , #3370 , #4828 , #5108 , #5242 , #5641 )
...
- Added SetKeyOwner(), SetItemKeyOwner(), TestKeyOwner().
- Added new IsKeyXXX IsMouseXXX functions with ImGuID owner_id and flags.
- Obsoleted SetItemUsingMouseWheel(). (#2891 )
- Removed IsKeyPresseedEx() which was a recent internal addition 2022-07-08 deemed to be temporary exactly for this.
- Added ImGuiButtonFlags_NoSetKeyOwner, ImGuiButtonFlags_NoTestKeyOwner
- Added ImGuiSelectableFlags_NoSetKeyOwner.
- Added ImGuiInputFlags_LockThisFrame, ImGuiInputFlags_LockUntilRelease for for SetKeyOwner(), SetItemKeyOwner().
- Added ImGuiInputFlags_CondXXX values for SetItemKeyOwner().
2022-11-08 18:47:36 +01:00
ocornut
849c8052b7
Merge branch 'master' into docking
...
# Conflicts:
# backends/imgui_impl_osx.mm
# backends/imgui_impl_win32.cpp
# imgui.cpp
# imgui_internal.h
2022-11-04 16:26:15 +01:00
ocornut
9f66a3a9ed
Internals: rework FocusScope system, current scope doesn't need to be in window + child doesn't inherit.
...
Intended as part of work for input routing + blind menu processing shortcuts. Some of this commit will be stripped by next commit.
Intent was to sort windows along with focus scope to build a hierarchy, but for our needs we'd need a persistant one, so scrapping the idea. Not squashing this with next commit to keep a bit of history for future references.
2022-11-04 12:19:20 +01:00
ocornut
6e9dfe1de1
Window: Auto-fit size takes account of work rectangle (menu bars eating from viewport). ( #5843 )
2022-11-02 12:36:22 +01:00
ocornut
a61bbdc239
Commented out redirecting OpenPopupContextItem() which was briefly the name of OpenPopupOnItemClick() from 1.77 to 1.79.
2022-10-26 22:22:53 +02:00
ocornut
375ae5dce4
Merge branch 'master' into docking (incl glfw use of GLFW_VERSION_COMBINED)
...
Note switched from GLFW_VERSION_REVISION * 10 to GLFW_VERSION_REVISION * 1
2022-10-24 22:58:25 +02:00
ocornut
9a35bfea39
Internals: added temporary ImGuiItemStatusFlags_Visible (used internally - please do not use).
...
Used by BeginMenu() as I'm experimenting with blind menus honoring shortcuts.
Extra comments about KeyMap and ImGuiKeys
2022-10-21 14:57:10 +02:00
ocornut
e3fa56ae05
BeginMenu(): Menus: Fixed a one-frame issue where SetNextWindowXXX data are not consumed by a BeginMenu().
...
+ Shallow tweaks to reduce diff of future branches. Removing early return also facilitate some changes.
2022-10-19 14:12:04 +02:00
ocornut
5ac94ad898
Window: Fixed an issue where uncollapsed a window would show a scrollbar for a frame.
...
Amend / fix regression from 6e8e2c0
2022-10-18 16:43:38 +02:00
ocornut
f87e891f18
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
2022-10-14 18:50:40 +02:00
ocornut
81176737f8
Menus: Fixed using IsItemHovered()/IsItemClicked() on BeginMenu(). ( #5775 )
2022-10-14 17:39:04 +02:00
ocornut
3920b1c764
Removed commented out old flags from when Tables was a branch.
...
ImGuiTableFlags_ColumnsWidthFixed, ImGuiTableFlags_ColumnsWidthStretch,
ImGuiTableFlags_SizingPolicyFixed, ImGuiTableFlags_SizingPolicyStretch
ImGuiTableColumnFlags_WidthAuto
2022-10-14 16:36:41 +02:00
ocornut
b15347cb7d
Tables: activating an ID (e.g. clicking button inside) column doesn't prevent columns output flags from having ImGuiTableColumnFlags_IsHovered set. ( #2957 )
2022-10-13 15:15:42 +02:00