ocornut
25fbff2156
ImDrawList: Revert alteration of normal scaling threshold, for now prioritize preserving property of limiting extents. ( #4053 , #3366 , #2964 , #2868 , #2518 , #2183 )
...
Amend fdda8b8
2021-04-19 14:58:54 +02:00
ocornut
fdda8b8c12
ImDrawList: Fixed/improved thickness of thick strokes with sharp angles. ( #4053 , #3366 , #2964 , #2868 , #2518 , #2183 )
2021-04-19 14:03:21 +02:00
ocornut
936f53229d
Internals: maintaining focus order inside windows + only storing root windows in WindowsFocusOrder[] array. (toward #2304 )
2021-04-16 19:28:24 +02:00
ocornut
770f9daab3
Tables: Better preserve column data (mainly widths) when columns count changes. ( #4046 ) + .ini skips columns with no data.
2021-04-16 18:30:11 +02:00
ocornut
5fed6bdc72
Demo: Improved popups demo and comments.
2021-04-15 15:58:12 +02:00
ocornut
7c9c5dbe9a
Internals: Added ImFloorSigned() + use our own ImFloorSigned() for stb_truetype, compared as matching output for variety of font data. ( #2884 )
2021-04-15 14:27:45 +02:00
ocornut
858ea17eba
Backends: DirectX10, DirectX11: fixed a crash when backing/restoring state if nothing is bound when entering the rendering function. ( #4045 )
2021-04-15 13:29:42 +02:00
ocornut
b957300260
Documentation tweaks ( #4042 )
2021-04-14 15:46:55 +02:00
ocornut
d6a5cc7934
Metrics: hotfix (fix 6ba13349 + f08566b4, #4005 )
2021-04-07 17:57:14 +02:00
ocornut
c283a1da5b
Fixed clipping of multi-line value text when label is single-line + Fixed vertical alignment of single-line value text when label is multi-line. ( #4004 )
2021-04-06 18:35:06 +02:00
ocornut
92b7b1f72b
Scrolling: Fix mouse wheel axis swap when using SHIFT on macOS (system already does it). ( #4010 )
2021-04-06 17:51:21 +02:00
ocornut
00d570e280
Added OpenPopup() ImGuiID overload ( #3993 , #331 )
2021-04-01 17:18:18 +02:00
ocornut
f0fc822837
Fix popup positioning, broken by 84e6fe4. ( #3991 , #3982 )
2021-03-31 19:09:08 +02:00
ocornut
2403ed92a3
Added build/ to gitignore ( #3027 ), Examples: SDL2: Link with shell32.lib required by SDL2main.lib since SDL 2.0.12. [ #3988 , #3884 ] + added batch file for SDL+Vulkan.
2021-03-31 16:19:44 +02:00
ocornut
3c7177c6a7
Internals: storing WindowsHoverPadding in context for external access. + Docs update binaries
2021-03-31 16:06:36 +02:00
ocornut
45c45d2506
Internals: shallow tidying up of the old resize border structure. Make them match the ImGuiDir order. Split GetWindowResizeID() into GetWindowResizeCornerID() and GetWindowResizeBorderID().
2021-03-30 16:44:47 +02:00
ocornut
84e6fe4fc7
Fix IsWindowAppearing() from returning true twice in most cases. ( #3982 , #1497 , #1061 )
2021-03-29 19:45:55 +02:00
ocornut
951c84969b
Popups: fix comment about OpenPopupOnItemClick(). ( #3981 )
2021-03-29 15:49:40 +02:00
ocornut
1dcd3a45cc
ColorEdit4: Alpha default to 255 (instead of 0) when omitted in hex input. ( #3973 )
...
Courtesy of @squadack
2021-03-26 11:34:07 +01:00
ocornut
688e06490e
TabBar: Amend previous commit. Fix tab reordering when tab bar has scrolling.
...
Some tidying up with helpers + honor 16-bit offsets as with other tab bar features (unlikely single reorder can reach that but consistent)
2021-03-25 19:16:24 +01:00
ocornut
a58271c079
Internals: extracted a more reusable BeginViewportSideBar() out of BeginMainMenuBar(). ( #3966 , #3518 )
...
Complement ca34c81c in docking branch which removed assumption that we can't tell size ahead of Begin().
2021-03-25 16:20:42 +01:00
ocornut
aa5431fde2
Tables: Expose TableSetColumnEnabled() in public api. ( #3935 )
2021-03-24 14:36:01 +01:00
ocornut
6f360d6040
Examples: Win32: using a more explicit loop for PeekMessage polling to make the code easier to copy and paste and less error-prone.
2021-03-23 18:22:27 +01:00
ocornut
1491d2c916
Backends: Win32: Clearing keyboard down array when losing focus (WM_KILLFOCUS). ( #2062 , #3532 , #3961 )
2021-03-23 16:48:10 +01:00
ocornut
59da01901e
Scrolling: Fix scroll tracking with e.g. SetScrollHereX/Y() when WindowPadding < ItemSpacing. Fix scroll snapping on edge of scroll region when both scrollbars are enabled.
...
CalcNextScrollFromScrollTargetAndClamp() fixed snapping edge calculation missing ScrollbarSizes.y
2021-03-19 16:58:23 +01:00
ocornut
6e4770ea5c
Examples: Vulkan: Rebuild swapchain on VK_SUBOPTIMAL_KHR. ( #3881 )
...
Ref https://vulkan-tutorial.com/Drawing_a_triangle/Swap_chain_recreation#page_Suboptimal-or-out-of-date-swap-chain
2021-03-18 18:12:52 +01:00
ocornut
61a0908713
Tables comments + Backends: DirectX9: calling IDirect3DStateBlock9::Capture() after CreateStateBlock() which appears to workaround/fix state restoring issues. . ( #3857 )
2021-03-18 18:04:52 +01:00
ocornut
412d6f7efe
Fixes zealous MSVC static analyzers warnings ( #3938 )
...
Other unfixed as I'm not happy with caving to false positives of every analyzers.
2021-03-18 16:10:25 +01:00
ocornut
a1a39c632a
Version 1.83 WIP
2021-03-16 14:45:30 +01:00
ocornut
4bf646e4b0
Drags, Sliders, Inputs: Specifying a NULL format to Float functions default them to "%.3f" to be consistent with the compile-time default. ( #3922 )
2021-03-16 12:59:35 +01:00
ocornut
35b1148efb
Version 1.82
2021-03-15 20:26:48 +01:00
ocornut
352f64697c
Internals: rename legagy tab focus fields to TabFocusXXXX for clarity + removed one unnecessary FocusWindow() call.
2021-03-15 20:10:08 +01:00
ocornut
d94644261d
Drags, Sliders: Support ImGuiSliderFlags_Logarithmic flag with integers. Because why not? ( #3786 )
...
Renamed is_decimal to is_floating_point.
2021-03-15 12:21:37 +01:00
ocornut
287bd9b984
InputText: renamed ImGuiInputTextFlags_AlwaysInsertMode to ImGuiInputTextFlags_AlwaysOverwrite. ( #2863 )
2021-03-12 18:23:30 +01:00
ocornut
033dfd9d35
ImDrawFlags: rework/revert c2d6d26 + 39432bf in a way that is closer to old version and back to opt-in but with default 0 = all corners.
2021-03-12 16:31:46 +01:00
ocornut
fdc2324d9a
Moved 'misc/natvis/imgui.natvis' to 'misc/debuggers/imgui.natvis'
2021-03-11 16:21:46 +01:00
ocornut
39432bfd9c
Amend 0c93238a ImDrawList: upgraded AddRect(), AddRectFilled(), PathRect() to use general ImDrawFlags instead of ImDrawCornersFlags
2021-03-11 16:03:45 +01:00
ocornut
8b9fedba28
Moved Obsolete function block lower in the file + obsoleted old SetScrollHere (->SetScrollHereY)
2021-03-11 12:16:52 +01:00
ocornut
8ed34af6f8
ImDrawList: clarified that PathArcTo()/PathArcToFast() cannot take radius < 0.0f. ( #3491 ) + changed poor-man ceiling in _CalcCircleAutoSegmentCount() to use 0.999999f to reduce gaps
...
Previously it sorts of accidentally worked but would lead to counter-clockwise paths which and have an effect on anti-aliasing.
2021-03-11 10:51:20 +01:00
ocornut
6ba1334903
Nav: internals: renaming ImGuiInputSource so it is not specific to nav. Comments.
2021-03-10 16:36:39 +01:00
ocornut
a64e0eb3a4
Nav: merged SetNavID() and SetNavIDWithRectRel() to improve sanity, moved flags overwrite off them. ( #787 )
2021-03-09 17:21:01 +01:00
ocornut
1c9cc7c117
Nav: tweaks so docking can use same code. NavRestoreLayer restore nav id but Menu key typicallys clears it for menu layer (+ less relying on _ChildWindow flag).
2021-03-09 16:57:13 +01:00
ocornut
4bb5a36f90
Nav: do not clear per-window NavId when window reappears. Process NavInit regardless of current highllight state. Consistently set g.NavLayer in SetNavID(). ( #787 )
2021-03-09 12:39:18 +01:00
ocornut
954b06afe2
Drag and Drop: can use BeginDragDropSource() for other than the left mouse button ( #1637 , #3885 )
...
As long as the item has an ID (for ID-less items will add new functionalities later.
Amend 2c3c5125
2021-03-08 15:50:53 +01:00
ocornut
e842b196df
Amend sanitization of format strings. Support ' without stb_printf. Simpler loops, will also be used for ImStrv branch. ( 8ee77f1) ( #3604 )
...
Widgets: Sliders: Fix a bug where numbers after format specifier (eg. %d123) would cause RoundScalarWithFormatT() return incorrect value.
2021-03-05 18:27:35 +01:00
ocornut
fdebb2e093
Internals: removed HoveredRootWindow, tweak IsWindowHovered().
2021-03-05 15:56:59 +01:00
ocornut
ee643b2ad9
IsItemHovered(): fixed return value false positive when used after EndChild(), EndGroup() or widgets using either... ( #3851 , #1370 )
...
...when the hovered location is located within a child window, e.g. InputTextMultiline().
This is intended to have no side effects, but brace yourself for the possible comeback..
This essentially makes IsItemHovered() not accept hover from child windows, but EndChild/EndGroup are forwarded.
More or less should fix/revert c76f014292 which was a revert of 344d48be3
2021-03-04 19:59:59 +01:00
ocornut
3e6dfd3c1a
ImDrawList: AddImageRounded() compare texid from cmdheader as with other functions. + Made the ImGuiMemAllocFunc / ImGuiMemFreeFunc consistent with our other typedefs ( #3836 )
2021-03-04 14:29:01 +01:00
ocornut
8dd692c29c
Android: Amend backend and examples with minor consistency tweaks. ( #3446 )
2021-03-04 11:07:03 +01:00
ocornut
d8c88bd943
Tables: Fixed unaligned accesses when using TableSetBgColor(ImGuiTableBgTarget_CellBg). ( #3872 )
...
ImSpanAllocator: Support for alignment.
2021-03-04 09:52:03 +01:00
ocornut
1ddaff83d8
Demo: Tweak inputs display.
2021-03-03 18:45:52 +01:00
ocornut
662535f357
Backends: DX9: Fix handling of colored textures ( #3844 , #3868 )
2021-03-03 18:34:07 +01:00
ocornut
25679a411e
Window, Nav: Fixed crash when calling SetWindowFocus(NULL) as the time a new window appears. ( #3865 )
2021-03-02 18:23:08 +01:00
ocornut
4537d98d46
Backends: DX9: Fix to support colored glyphs, using newly introduced 'TexPixelsUseColors' info. ( #3369 , #3844 )
2021-03-02 15:04:34 +01:00
ocornut
23ab4978e4
ImFontAtlas: Added 'bool TexPixelsUseColors' output to help backend decide of underlying texture format. ( #3369 , #3844 )
2021-03-02 15:04:34 +01:00
ocornut
760c394707
Added links to Discussions. Closed Discord, yeah! ( #2748 )
2021-02-25 00:47:37 +01:00
ocornut
3776ba565f
Internals: TabBar: minor tweaks and renaming.
2021-02-24 19:40:15 +01:00
ocornut
6f4b9c65ae
Added commentary about DLL boundaries. Added GetAllocatorFunctions(). Tidying up. ( #3836 )
2021-02-24 19:38:39 +01:00
ocornut
9b32f7bf2d
Fix example_null Makefile for Mingw ( #2590 )
2021-02-22 14:44:06 +01:00
ocornut
edf135c18d
Win32+MinGW: Re-enabled IME functions by default even under MinGW. ( #2590 , #738 )
2021-02-22 14:39:44 +01:00
ocornut
a8f76c23a4
Window: Shrink close button hit-testing region when it covers an abnormally high portion of the window visible area (e.g. when window is collapsed and moved in a corner)to facilitate moving the window away. ( #3825 )
2021-02-18 17:23:10 +01:00
ocornut
0ecdf8167c
DragScalar: Fixed crash when using DragScalar() directly with ImGuiSliderFlags_AlwaysClamp + only one of either p_min or p_max set. ( #3824 ) [@harry75369]
2021-02-18 16:12:41 +01:00
ocornut
c154629152
Backends: Win32: Added ImGui_ImplWin32_EnableAlphaCompositing() helper. ( #2766 , #3447 )
...
Pragma linking with dwmapi.lib (Vista-era, ~9 kb). MinGW users will need to link with -ldwmapi.
2021-02-18 16:04:11 +01:00
ocornut
6a161b8789
Examples: Reworked setup of clear color to be compatible with transparent values. ( #2693 , #2764 , #2766 , #2873 , #3447 , #3813 , #3816 )
2021-02-18 11:38:41 +01:00
ocornut
bda12e5fdd
Backends: Rework blending equation to preserve alpha in output buffer accross all backends. ( #2693 , #2764 , #2766 , #2873 , #3447 , #3813 , #3816 )
...
Some of the viewport ideas from #2766 are not in there yet (e.g. Vulkan: setting compositeAlpha based on cap.supportedCompositeAlpha)
2021-02-18 11:38:41 +01:00
ocornut
27a5bdb916
Backends: Win32: Fixed ImGui_ImplWin32_EnableDpiAwareness() attempting to get SetProcessDpiAwareness from shcore.dll on Windows 8 whereas it is only supported on Windows 8.1.
...
+ Added other helpers for reference (unused currently, other features will want them)
2021-02-17 19:41:41 +01:00
ocornut
fb15d8c858
Improve on automatic circle segment count calculation. ( #3808 ) Amends
2021-02-17 14:22:31 +01:00
ocornut
b47aa46d81
Tables: TableSetupColumn() user id uses ImGuiID as intended (typedef ImU32). internals: added GetCurrentTable(), LeftMostEnabledColumn. Demo/docs tweaks.
2021-02-17 12:18:22 +01:00
ocornut
30b7545841
Version 1.82 WIP
2021-02-15 18:10:14 +01:00
ocornut
61b19489f1
Made a change to CalcWindowSizeAfterConstraint() which MSVC optimizer seems to trip on. (read on)
...
We seldomly modify a local ImVec2 passed as parameter. This should be perfectly legal but libigl stumbled on a what may be a MSVC optimizer bug?
Only seven function in the codebase modify as 'ImVec2 parameter' but this is the only static one (and fairly small that is) which may tempt optimizer to perform optimizations over caller-callee boundaries?
While we can't explain it fully yet and I assume it may haunt us back someday. Might also be chain reaction from some unobvious UB but can't see it right now...
Link: https://github.com/libigl/libigl/issues/1669
2021-02-12 16:34:22 +01:00
ocornut
4df57136e9
Version 1.81
2021-02-10 21:16:58 +01:00
ocornut
647a308ad3
Backends: GLFW: Add ImGui_ImplGlfw_InitForOther() instead of ImGui_ImplGlfw_InitForWebGPU() so it can be used for e.g. DX11. ( #3632 )
...
Amend dff0044
2021-02-10 17:27:33 +01:00
ocornut
f14042ca78
Viewports Added ImGui::GetMainViewport() as a way to get the bounds and work area of the host display. ( #3789 , #1542 )
...
Viewports: Backport a few constructs from 'docking' branch.
Viewports: Added ImGuiViewportFlags_IsPlatformWindow, ImGuiViewportFlags_IsPlatformMonitor, ImGuiViewportFlags_OwnedByApp (none of them were in docking branch yet). ImGuiViewportFlags_IsPlatformMonitor is merely there to convey future intent, not yet used.
Reduce uses of io.DisplaySize.
MainMenuBar: Backport work area handling code from 'docking' branch.
Metrics: Backported "Viewports" debug visualizer from 'docking' branch.
Demo: Rework 'Examples->Fullscreen Window'.
Demo: 'Simple Overlay' demo now moves under main menu-bar (if any) using GetMainViewport()'s work area.
2021-02-10 16:09:53 +01:00
ocornut
56f7bdae99
ImDrawList: Clarified PathArcTo() need for a_min <= a_max with an assert. Fixed PathArcToFast() handling of a_min > a_max.
2021-02-08 16:37:51 +01:00
ocornut
03038df1cc
ImDrawList: fix divide by zero (for which result was unused but triggering on some archs/setup) added by f144c67676 ( #3738 )
2021-02-08 14:03:24 +01:00
ocornut
b898281e3c
Demo: Added 'Examples->Fullscreen Window' demo. ( #3789 ) + repack and zero-clear ImDrawData.
2021-02-05 15:44:10 +01:00
ocornut
58a0a7058c
Backends: Using SetTexID() consistently instead of assigning to ->TexID. May make the later obsolete eventually.
2021-02-03 18:30:26 +01:00
ocornut
03d74a293d
ListBox: renamed ListBoxHeader>BeginListBox, ListBoxFooter>EndListBox. Added demo bits.
2021-02-03 16:33:22 +01:00
ocornut
6f6d4e0b70
ListBoxHeader: In version taking height in number of items, made vertical padding consistent regardless of if (items_count <= height_in_items) or not.
...
Demo: Tweaks.
2021-02-03 15:07:14 +01:00
ocornut
e5cbf60def
ListBox: tweaked default height calculation. simplifying code internally (rework passing of full rect). Should have no visible side-effects + misc comments.
2021-02-03 14:54:56 +01:00
ocornut
d1a9efdd8f
InputText: Fixed slightly off ScrollX tracking, noticeable with large values of FramePadding.x. Multiline: Fixed padding/cliprect not matching single-line version. ( #3781 )
...
Fixed FramePadding.y worth of vertical offset when aiming with mouse.
2021-02-02 16:30:57 +01:00
ocornut
a3f0393351
Menus: Fixed an issue with child-menu auto-sizing (issue introduced by 6af92b0) ( #3779 )
2021-02-02 13:06:51 +01:00
ocornut
929563c3a7
Log/Capture: Fixes for handling \n in strings. Improve the look of various widgets. Added LogSetNextTextDecoration helper. Fixup/amend dbaf74d75.
...
For now removed LogRenderedTextNewLine() - it is eventually desirable but currently carries too much ambiguities, so reverted until we have a better system and test suite.
2021-02-02 12:29:58 +01:00
ocornut
9d576a96a5
Tables: added internal TableSetColumnEnabled() helper. Comments.
2021-02-02 09:23:40 +01:00
ocornut
24be26e00e
imgui_freetype: Add support for colored glyphs. Font: add support for untinted glyphs ( #3369 )
...
Amend 9499afd with missing static inline.
2021-02-01 16:32:26 +01:00
ocornut
4622fa4b66
Fonts: Fixed CalcTextSize() width rounding so it behaves more like a ceil. ( #3776 )
...
his is in order for text wrapping to have enough space when provided width precisely calculated with CalcTextSize().x. Amend 7b0bf230 .
Note that the rounding of either positions and widths are technically undesirable (e.g. #3437 , #791 ) but variety of code is currently on it so we are first fixing current behavior before we'll eventually change it.
2021-02-01 12:49:18 +01:00
ocornut
9499afdf5e
imgui_freetype: clarify breaking changes, and add BuildFontAtlas() to be consistent with planned obsolescence. Rename mislabelled internal helper. Demo: clarify labels in nested table demo. ( #3765 )
2021-01-28 20:53:53 +01:00
ocornut
dff0044d4e
Backends, Examples: Added support for WebGPU and corresponding example. Amend 5853fbd ( #3632 )
2021-01-28 15:40:31 +01:00
ocornut
6487860aae
Backends: Vulkan: Rework support for custom function/symbol loader ( #3759 , #3227 ), add ImGui_ImplVulkan_LoadFunctions (amend 6001c54)
...
Making it a separate function allows to use/test this with our examples or any code using the VulkanH helper called before ImGui_ImplVulkan_Init()
2021-01-27 13:43:49 +01:00
ocornut
e28b51786e
Tables: Fixed PopItemWidth() or multi-components items not restoring per-colum ItemWidth correctly. ( #3760 ) rework local stacks to facilitate modifying current value without altering the stack.
...
May consider doing the same for ItemFlags and moving to g.ItemFlags...
2021-01-27 12:35:57 +01:00
ocornut
3867c6c5f0
Fonts: (Breaking) Rename ImGuiFreeType:: flags to ImGuiFreeTypeBuilderFlags_XXX. Remove ImGuiFreeType::BuildFontAtlas() flags. Rename ImFontConfig::RasterizerFlags to FontBuilderFlags. Add ImFontBuilderIO (opaque). Amend 53d59f3 with a dozen of small fixes.
2021-01-26 17:25:09 +01:00
ocornut
6b32d0ebc7
Fixed minor title bar text clipping issue when FramePadding is small/zero and there are no close button in the window. ( #3731 )
2021-01-26 16:07:41 +01:00
ocornut
a8d2d8ee97
Fixed uninitialized variable, amend f3f2578. ( #3753 )
2021-01-26 15:26:41 +01:00
ocornut
f139846750
Backends: Win32: dynamically load XInput library (amends) ( #3646 , #3645 , #3248 , #2716 )
2021-01-25 16:30:44 +01:00
ocornut
2ed47e5822
Version 1.81 WIP
2021-01-25 16:30:44 +01:00
ocornut
f144c67676
ImDrawList: fixed AddCircle, AddCircleFilled buffer read overflow with (rad > 0.0f && rad < 1.0f && num_segments == 0). ( #3738 )
...
Amend 051ce076 . Maximum cached count becomes 63 instead of 64.
2021-01-25 14:59:09 +01:00
ocornut
58075c4414
Version 1.80
2021-01-21 20:36:18 +01:00
ocornut
5178c3ce21
Tables: added ImGuiTableFlags_NoHostExtendX instead of using outer_size.x == 0.0f. Changed default outer_size to (0.0f, 0.0f). ( #3605 )
2021-01-21 16:20:31 +01:00
ocornut
3b409d2b68
BeginChild: half-fixed child window name longer than 255 conflicting, merely raised the limit by using our shared large buffer. Comments.
2021-01-21 12:36:47 +01:00
ocornut
6737037743
Tab Bar: fix 0ea4408 ( #3414 )
2021-01-20 19:35:10 +01:00