omar
e2c1f0a7cd
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
6 years ago
omar
70fe409338
Window: Fixed InnerClipRect right-most coordinates using wrong padding setting (introduced in 1.71).
6 years ago
omar
ae2c9f7101
Internals: Columns: Poke into WorkRect and use them in the GetContentRegionMax() functions. This should be a no-op, but preparing us to transition toward using WorkRect instead of ContentRegionRect.
...
Removed one use of ContentsRegionRect.
6 years ago
omar
e9b92d1cef
Disable -Wpragmas warning in GCC to avoid relying on version checks, as unusual/forks/mods don't appear to always have same warning<>version. ( #2618 )
...
+ Fix version number in imgui.h
6 years ago
omar
ca43436cd3
Fix monitor dpi info not being copied to main viewport when multi-viewports are not enabled. ( #2621 , #1676 ) + Tweaks, short path in FindPlatformMonitorForRect().
6 years ago
omar
b27fd87177
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
# imgui.h
6 years ago
omar
af3080b81b
Removed redirecting functions/enums that were obsoleted in version 1.51 (June 2017): ImGuiCol_Column*, ImGuiSetCond_*, IsItemHoveredRect(), IsPosHoveringAnyWindow(), IsMouseHoveringAnyWindow(), IsMouseHoveringWindow(), IMGUI_ONCE_UPON_A_FRAME.
6 years ago
omar
5286ecb8a7
Version 1.72 WIP
6 years ago
omar
07d3083279
Docking: Fixed rendering of outer decoration happening on non-visible docked window ( #2623 , #2109 ). Revealed by 0770449
. We are actually better than before now, as previously those would get unnecessarily get rendered into a hidden draw list.
6 years ago
omar
d3d998a885
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# examples/README.txt
# imgui.cpp
# imgui.h
# imgui_internal.h
# imgui_widgets.cpp
6 years ago
omar
2da1c66d15
Version 1.71 + comments
6 years ago
omar
5ae268c0a3
Internals: Reworked RenderTextEllipsis() to satisfy what we need for table headers.
6 years ago
omar
4597632662
Readme, comments, dear imgui prefixes
6 years ago
omar
a8eb64fc54
Log/Capture: Fixed BeginTabItem() label not being included in a text log/capture.
...
Extracted tab rendering code into a RenderTextEllipsis() function.
6 years ago
omar
0770449630
Window: child windows outer decorations (e.g. scrollbar) are rendered as part of their parent window, avoiding the creation of an extraneous draw command.
...
+ Metrics: inverted color of clip rect vs vertices bounding box when hovering a draw command, so the color matches the per-vertex preview.
6 years ago
omar
afa3978ff6
Internals: Added drawlist and color arg to RenderArrow(), RenderBullet(). Reordered args for RenderPixelEllipsis.
6 years ago
omar
2b997141cf
Made PushID() behave the same in 32-bit and 64-bit, by not padding the integer into a void*. (Also technically faster.)
6 years ago
omar
63310acd58
Synced/merged minor cruft from master branch to minimize drift. Only meaningful change AFAIK is removing ImGuiComboFlags_PopupAlignLeft flag from the tab list combo emitted by TabBar.
6 years ago
omar
431aa4e456
Synced/merged minor cruft from docking branch to minimize drift. AFAIK the only meaningful no-op change is that the call UpdateHoveredWindowAndCaptureFlags() was moved above UpdateMouseMovingNewFrame() to match what docking branch has been doing for a while.
6 years ago
omar
480d57e6a2
Revert "Changed syntax for (very rarely used) IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT mechanism, instead you only need to '#define ImDrawVert MyDrawVert' to use this feature, avoiding the need to declare the entire structure within an awkward macro. Using the old macro will now error with a message pointing you to the new method. ( #38 , #103 , #1172 , #1231 , #2489 )"
...
This reverts commit 597c024904
.
6 years ago
omar
597c024904
Changed syntax for (very rarely used) IMGUI_OVERRIDE_DRAWVERT_STRUCT_LAYOUT mechanism, instead you only need to '#define ImDrawVert MyDrawVert' to use this feature, avoiding the need to declare the entire structure within an awkward macro. Using the old macro will now error with a message pointing you to the new method. ( #38 , #103 , #1172 , #1231 , #2489 )
6 years ago
omar
e6850891cc
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
6 years ago
omar
c96f2c4057
Window: Fixed one case where auto-resize by double-clicking the resize grip would make either scrollbar appear for a single frame after the resize. Moved Scrollbar visibility block.
6 years ago
omar
300d8dd656
Internals: Moved scrollbar visibility calculation block below the call to UpdateManualResize(). This commit is _intended_ to have no side-effect (next commit will). Also moved ItemWidthDefault calculation below rectangles.
6 years ago
omar
c1a61d25a7
Scrollbar overlap an extra WindowBorderSize amount on the left to make all distances consistent. Reverted to BorderSize not affecting work/contents rectangles. Scrollbar, Style: Changed default style.ScrollbarSize from 16 to 14.
6 years ago
omar
15282261dd
Internals: Minor no-op tidying up toward solving the WindowPadding / WindowBorderSize / ScrollbarSize overlapping mess.
...
+ Demo: Use SetScrollY().
6 years ago
omar
4149d22e85
Fixed newly created window (e.g. appearing child window) from having scrollbar active on the first frame. (fix 6e03b27) + reworded code a little. (+1 squashed commits)
...
Fixed auto-resize with AlwaysVerticalScrollbar or AlwaysHorizontalScrollbar flags not taking account of the expect scrollbar sizes.
6 years ago
omar
06f1d2c101
Internals: Storing ScrollMax into a member. Mostly to facilitate debugging. Also locking down window->Scroll slightly lower in the Begin function.
6 years ago
omar
d6df777ff2
TextWrapped, PushTextWrapPos(0.0f) within a window with horizontal scrolling from not covering the full horizontal area (previously only worked with an explicit contents size).
6 years ago
omar
fe32fde376
Internals: Renamed SizeContents to ContentSize, SizeContentsExplicit to ContentSizeExplicit. Tweaked Metrics->Show Rectangles functionality.
6 years ago
omar
f95c77eeea
Window rectangles: Changed WorkRect to cover the whole region including scrolling (toward obsolete ContentsRegionRect) + using full WindowPadding*1 padding.
...
Tweaked InnerClipRect.
TreeNode, CollapsingHeader: Fixed highlight frame not covering horizontal area fully when using horizontal scrolling. (#2211 , #2579 )
TabBar: Fixed BeginTabBar() within a window with horizontal scrolling from creating a feedback loop with the horizontal contents size.
Columns: Fixed Columns() within a window with horizontal scrolling from not covering the full horizontal area (previously only worked with an explicit contents size). (#125 )
Demo: Added demo code to test contentsrect/workrect
6 years ago
omar
a0994d74c2
Clarified behavior of SetNextWindowContentSize(). Content size is defined as the size available after removal of WindowPadding on each sides. So SetNextWindowContentSize(ImVec2(100,100)) + auto-resize will always allow submitting a 100x100 item without creating a scrollbar, regarding of WindowPadding.The exact meaning of ContentSize for decorated windows was previously ill-defined.
6 years ago
omar
09bcf9fbc5
Window rectangles: Made InnerRect not affected by window border sizes. its few users shouldn't be meaningfully affected.
6 years ago
omar
440ad0b440
Merge branch 'master' into docking
6 years ago
omar
5cdd788f30
Comments ( #2599 ). Moved branch Changelog above 1.71 wip one. Added some missing changelog bits.
6 years ago
omar
57d8ab62f4
Nav: Fixed rare crash when e.g. releasing Alt-key while focusing a window with a menu at the same frame as clearing the focus. This was in most noticeable in some back-ends with emits key release events when focusing another viewport. ( #2609 )
6 years ago
omar
eb7849b477
Nav: Fixed gamepad/keyboard moving of window affecting contents size incorrectly, sometimes leading to scrollbars appearing during the movement. + minor fix with the mostly dead Ctrl+wheel scaling.
6 years ago
omar
84f3ecc231
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
6 years ago
omar
546b728199
Internals: Window rectangles: Fixed ContentsRegion lag by moving back after Scrollbar, fixes b50c61c9
. Shuffling setup order and added comments.
6 years ago
omar
21ebdcafc9
Internals: Window rectangles: Renaming of all rectangles toward their final form. Should be a no-op. Renamed GetWorkRectMax() to GetContentRegionMaxAbs(). Metrics shows SizeContents.
6 years ago
omar
8dc04a4c9f
Merge branch 'master' into docking
...
# Conflicts:
# examples/imgui_impl_dx10.cpp
# examples/imgui_impl_dx11.cpp
# examples/imgui_impl_dx9.cpp
# examples/imgui_impl_opengl3.cpp
# imgui.h
# imgui_demo.cpp
6 years ago
omar
7755cbbef2
Renamed ImGuiBackendFlags_HasVtxOffset to ImGuiBackendFlags_RendererHasVtxOffset to match naming convention already used in viewport/docking branch. ( #2591 ) + Fix OpenGL3 code missing flag.
6 years ago
omar
c72040a715
Merge branch 'master' into docking
...
# Conflicts:
# examples/imgui_impl_dx10.cpp
# examples/imgui_impl_dx10.h
# examples/imgui_impl_dx11.cpp
# examples/imgui_impl_dx11.h
# examples/imgui_impl_dx9.cpp
# examples/imgui_impl_dx9.h
# examples/imgui_impl_opengl3.cpp
# examples/imgui_impl_opengl3.h
# examples/imgui_impl_osx.h
# examples/imgui_impl_osx.mm
# imgui.cpp
# imgui.h
# imgui_demo.cpp
# imgui_internal.h
6 years ago
omar
d1e8b698d0
ImDrawList: Added ImDrawCmd::VtxOffset value to support large meshes (64k+ vertices) using 16-bits indices. To enable the feature, the renderer back-end needs to set 'io.BackendFlags |= ImGuiBackendFlags_HasVtxOffset' and honor the ImDrawCmd::VtxOffset field. Otherwise the value will always be zero. This has the advantage of preserving smaller index buffers and allowing to execute on hardware that do not support 32-bits indices.
...
ImDrawList: Added ImDrawCmd::IdxOffset value, equivalent to summing element count for each draw command. This is provided for convenience and consistency with VtxOffset. (#2591 )
6 years ago
omar
40b9e5e0b4
ImDrawList: Store initial flags for the frame in ImDrawListSharedData, reducing code duplication in setting up the flags.
6 years ago
omar
70d9f79312
Internal: Renamed InnerMainRect to InnerVisibleRect. Printing coordinates in Metrics window.
6 years ago
omar
c7c1bf177b
Docking: Fixed DockBuilderRemoveNode() from overwriting other parent node flags when trying to move the CentralNode flag.
6 years ago
omar
5b0e59d9d5
Docking: Saving local _NoResize flag. ( #2583 )
6 years ago
omar
2d68e892a8
Added full "Dear ImGui" prefix to the title of "Dear ImGui Demo" and "Dear ImGui Metrics" windows. Shortened amount of nodes in columns>tree demo.
6 years ago
omar
7c06d9f043
Docking: Saving the NoTabBar, NoWindowMenuButton, NoCloseButton fields of dock node into the .ini file. Added them to the Metrics window. ( #2583 , #2423 , #2109 ).
6 years ago
omar
511e32e8ca
Docking: Clarified terminology of docking/tablist/collapse button into Window Menu button matching master. Added private ImGuiDockNodeFlags_NoWindowMenuButton, ImGuiDockNodeFlags_NoCloseButton flags. ( #2583 , #2109 )
6 years ago
omar
e5dfa0855f
Docking: Honor style.WindowMenuButtonPosition setting in docking node.
6 years ago
omar
afad952450
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
# imgui_widgets.cpp
6 years ago
omar
958d75c00a
Style: Added style.WindowMenuButtonPosition (left/right, defaults to ImGuiDir_Left) to move the collapsing/docking button to the other side of the title bar.
6 years ago
omar
6c3697f6f1
Internal: CloseButton takes an upper-left corner + a size to be consistent with similar widgets.
6 years ago
omar
fda1365c15
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
6 years ago
omar
7bc03f7155
Internals: Added InnerWorkRect equal to old InnerClipRect, added InnerWorkRectClipped actually clipped.
6 years ago
omar
a2eec8f5b5
Fix OuterRectClipped not being clipped correctly, which resulted in child window outside visible bound to not be marked with SkipItems. Broken in b50c61c961
.
...
+ Comments on InnerClipRect being misleading. Demo: Tweak to sizing of child window in the Layout->Scrolling section.
6 years ago
omar
04022114d9
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
6 years ago
omar
882d2c3aea
Fixed crash when appending with BeginMainMenuBar() more than once and no other window are showing. ( #2567 ) + comments
6 years ago
omar
392ab08580
BeginPopupContextItem(): Skip processing when SkipItems is set as LastItemId is unreliable and we assert when it is zero. + Minor comments on columns.
6 years ago
omar
f242cd4d8a
Fixed GCC mem-access warnings ( #2565 )
...
+ using "if defined" more consistently for Clang.
6 years ago
omar
1575a3fbcd
Docking: Fixed temporarily losing Dockspace flag when merging remaining sibling back into a parent node. ( #2563 , #2109 )
...
Would trigger an assert in the Passthru hole path. Broken by fd5859ed
.
6 years ago
omar
7e772f6a51
Docking: Fixed undocking whole node (from collapse/docking menu button) from losing its size/pos. Made collapose/docking menu id easier to compute for testing.
6 years ago
omar
31e3e861ef
Update changelog, comments, made empty/no-text clipboard return NULL as with other implementation. Minor style tweaks. ( #2546 )
...
Fixed IMGUI_DISABLE_WIN32_FUNCTIONS not disabling IME code.
6 years ago
Andrew Willmott
02de498a41
Add native mac copy/paste support to match win32 ( #2546 )
6 years ago
omar
2e5860b5a0
Docking: Fixed incomplete merge of 36e714a
leading to undocking. #2109
6 years ago
omar
4158cba1ff
Merge branch 'master' into docking
...
# Conflicts:
# examples/imgui_impl_glfw.cpp
# examples/imgui_impl_win32.cpp
# imgui.cpp
# imgui_internal.h
6 years ago
omar
fc3c3de551
Fixed uses of IsItemDeactivated(), IsItemDeactivatedAfterEdit() on multi-components widgets and after EndGroup(). ( #2550 , #1875 )
6 years ago
omar
99a845053a
Internal: Renamed fields + minor tweaks (probably shallow break stack-layout pr, sorry!)
6 years ago
omar
64dbd932d2
Internal: Removed GetNextItemWidth(), relying on ItemAdd or NextItemData.ClearFlags() to clear the width data. Amend 5078fa20
and undo some of its effects of imgui_widgets.cpp
6 years ago
omar
632469d2e5
Renamed SetNextTreeNodeOpen() to SetNextItemOpen(). Refactored SetNextItemXXX stuff to match SetNextWindowXXX code closely.
6 years ago
omar
36e714a459
Internal: Storing flags for NextWindowData so that we can clear everything with a single write and remove dummy condition fields.
6 years ago
omar
0b485f12d7
Internal: Minor tidying/reordering of sections within ImGuiContext / window DC.
6 years ago
omar
7355c84701
Tweak EndGroup() to facilitate fixing #2550 later (currently should have no side-effect0. Demo: Add extra widget to status query test.
6 years ago
Chris Savoie
b955e485f1
Fixed unused variables warnings when asserts are compiled out. ( #2551 )
6 years ago
omar
aca6ee1a91
Cast ImTextureId to void* before printing in Metrics window. ( #2548 )
6 years ago
omar
ef13d95466
IO: changed AddInputCharacter(unsigned short c) signature to AddInputCharacter(unsigned int c).
...
Examples/Backends: Don't filter characters under 0x10000 before calling io.AddInputCharacter(), the filtering is done in io.AddInputCharacter() itself. This is in prevision for fuller Unicode support. (#2538 , #2541 )
6 years ago
omar
b668726a38
Fixed a PVS Studio static analyzer warning.
6 years ago
omar
835a8b2c9b
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
6 years ago
omar
7c256fbd40
Internal: Extracted some of the Begin code into RenderWindowDecorations().
6 years ago
omar
72951a1a85
Internal: Extracted some of the Begin code into RenderWindowTitleBarContents().
6 years ago
omar
b50c61c961
Internal: Begin: Update rectangles before Scrollbar() which now uses them. Fixes 39eeda0
.
6 years ago
omar
e29176df53
Internals: Columns: Renamed fields. Comments and tweak. Moved a demo block.
6 years ago
omar
a4d0b0efa4
Internal: Refactored Separator into SeparatorEx(), exposed ImGuiSeparatorFlags_SpanAllColumns in imgui_internal.h and support without. ( #759 ) + misc comments
6 years ago
omar
b7c2759f95
Columns: Fixed Separator from creating an extraneous draw command. Fixed Selectable with SpanAllColumns flag from creating an extraneous draw command. ( #125 )
6 years ago
omar
239c8732d7
Viewports: Minor tweaks. ( #2471 )
6 years ago
omar
9bf3f910c8
Viewports: Fix to avoid SetNextWindowViewport being overrided by creation of a standalone viewport. ( #2544 , #1542 )
6 years ago
omar
42fc563fed
Version 1.71 WIP + fixed minor typo
6 years ago
omar
d1d5075b66
Version 1.70
6 years ago
omar
76e61958fd
Merge branch 'master' into docking
...
# Conflicts:
# examples/README.txt
# examples/imgui_impl_dx9.cpp
# imgui.cpp
# imgui.h
6 years ago
omar
6c196cf432
Examples Readme and Changelog tweaks, added #2527 , re-ordered examples/README alphabetically.
6 years ago
omar
526e2303bc
Window: Fixed SetNextWindowSizeConstraints() with non-rounded positions making windows drift. ( #2067 , #2530 )
6 years ago
omar
9c1f02a42c
Misc: Made IMGUI_CHECKVERSION() macro also check for matching size of ImDrawIdx.
6 years ago
omar
e2166db282
Internals: Fixed incorrect repeat delay/rate calculation in IsMouseClicked() with repeat flag leading to involontary but thankfully doubling the rate. Using our standard function, making the multiplicator explicit.
6 years ago
omar
2dc81057ec
Selectable: With ImGuiSelectableFlags_AllowDoubleClick doesn't return true on the mouse button releas efollowing the double-click. Only first mouse release + second mouse down (double-click) returns true. Likewise for internal ButtonBehavior() with both _PressedOnClickRelease | _PressedOnDoubleClick. ( #2503 )
6 years ago
omar
ce19cb465f
Internals: Rename GetContentRegionMaxScreen() -> GetWorkRectMax(). At this point this is mostly useful to facilitate merge of other branches.
6 years ago
omar
825b61e4ba
Merge branch 'master' into docking
...
# Conflicts:
# examples/imgui_impl_dx10.cpp
# examples/imgui_impl_dx11.cpp
# examples/imgui_impl_dx12.cpp
# examples/imgui_impl_dx9.cpp
# examples/imgui_impl_opengl2.cpp
# examples/imgui_impl_opengl3.cpp
# examples/imgui_impl_vulkan.cpp
# imgui.cpp
6 years ago
omar
a1c432d1ad
Internals: SettingsHandlerWindow_ReadLine uses context parameter.
6 years ago
omar
3fbc0b7a9e
Obsoleted GetContentRegionAvailWidth(), use GetContentRegionAvail().x instead. Kept inline redirection function.
6 years ago