ocornut
047dc16af5
Debug Tools: Added DebugStartItemPicker() in imgui_internal.h to facilitate binding this anywhere in user's tool. Adedd highlight. Added IMGUI_DEBUG_TOOL_ITEM_PICKER_EX to break in ItemAdd().
6 years ago
omar
7fd34d4f30
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
6 years ago
omar
1f3feb481e
Internals: Refactor: Moved all Columns code from imgui.cpp to imgui_widgets.cpp ( #125 )
...
Also moved NextColumn between BeginColumn and NextColumn which makes it easier to work on that code.
6 years ago
omar
bb2aa5e770
Docking: Making it possible to undock a node by clicking on the tab bar / title bar for the node. ( #2645 , #2109 )
6 years ago
omar
ea79992d9a
Fixed old SetWindowFontScale() api value from not being inherited by child window. Added comments about the right way to scale your UI (load a font at the right side, rebuild atlas, scale style).
...
+ Added missing IMGUI_API marker to the EmptyString storage used by ImGuiTextBuffer. (#2672 )
6 years ago
omar
56e10f1c35
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
6 years ago
omar
130b44994e
Debug, Metrics: Added "Tools->Item Picker" tool which allow clicking on a widget to break in the debugger within the item code. The tool calls IM_DEBUG_BREAK() which can be redefined in imconfig.h if needed.
6 years ago
omar
718e15c7de
Docking: Fix so that an appearing window making a dock node reappear won't have a zero-size on its first frame (because dock node ->Size was 0.0 unlike ->SizeRef) ( #2109 )
...
Docking: Added ImGuiDockNode to .natvis file.
6 years ago
omar
e461e7bc7a
Moved ImGuiColumnsFlags erroneously forward declared in imgui.h + demo bit.
6 years ago
omar
1f54c16f52
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
6 years ago
omar
2a3517a399
Internals: Checkbox: Added undocumented mixed/indeterminate/tristate support via ImGuiItemFlags_MixedValue. ( #2644 )
6 years ago
omar
f563e1a504
Internals: Renamed GetFrontMostPopupModal() to GetTopMostPopupModal() to be consistent. Renamed other locals to follow that terminology.
6 years ago
omar
e2c1f0a7cd
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
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
b27fd87177
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
# imgui.h
6 years ago
omar
5286ecb8a7
Version 1.72 WIP
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
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
afa3978ff6
Internals: Added drawlist and color arg to RenderArrow(), RenderBullet(). Reordered args for RenderPixelEllipsis.
6 years ago
omar
32ab0a82d6
imgui-test: Added IMGUI_TEST_ENGINE_LOG macro to emit into test log from core or user land.
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
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
e6850891cc
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
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
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
440ad0b440
Merge branch 'master' into docking
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
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
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
40b9e5e0b4
ImDrawList: Store initial flags for the frame in ImDrawListSharedData, reducing code duplication in setting up the flags.
6 years ago
omar
cb7ba60d3f
CollapsingHeader: When a close button is enabled, better clip the label to avoid overlap. ( #600 )
6 years ago
omar
70d9f79312
Internal: Renamed InnerMainRect to InnerVisibleRect. Printing coordinates in Metrics window.
6 years ago
omar
5b0e59d9d5
Docking: Saving local _NoResize flag. ( #2583 )
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
9c35344175
Comments, todo entries, moved ImGuiSelectableFlagsPrivate in higher ranges to match others.
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
afad952450
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
# imgui_widgets.cpp
6 years ago
omar
6c3697f6f1
Internal: CloseButton takes an upper-left corner + a size to be consistent with similar widgets.
6 years ago
omar
ec3ec24157
Internals: Extracted some of the tab bar shrinking code into a ShrinkWidths() function so columns/table can use it.
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
f242cd4d8a
Fixed GCC mem-access warnings ( #2565 )
...
+ using "if defined" more consistently for Clang.
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
835a8b2c9b
Merge branch 'master' into docking
...
# Conflicts:
# docs/CHANGELOG.txt
# imgui.cpp
6 years ago
omar
37174c85e2
Internal: Scrollbar: Extracted scrollbar code for other uses (eg. table v2 scrolling without using a child window).
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
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
86f92fe756
Demo: Improved trees in columns demo. ( #2136 )
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
7e67aba286
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
6 years ago
omar
842a720e72
Popups: Closes popup at the time of FocusWindow(). Fixes right-click from closing all popups instead of aiming at the hovered popup level (regression in 1.67's ae76a1fd
).
6 years ago
omar
bda2cde68e
Popups: Closing a popup restores the focused/nav window in place at the time of the popup opening, instead of restoring the window that was in the window stack at the time of the OpenPopup call. ( #2517 )
...
Among other things, this allows opening a popup while no window are focused, and pressing Escape to clear the focus again.
6 years ago
omar
3276b12765
Internals: Added DataTypeApplyOp, DataTypeApplyOpFromText to imgui_internal.h
6 years ago
omar
4e81b2d093
Internals: Renaming. Renamed ImGuiPopupRef to ImGuiPopupData for consistency and added constructor.
6 years ago
omar
3d363c91fd
Internals: Exposed ImGuiDataTypeInfo, DataTypeGetInfo(), DataTypeFormatString(). Comments.
6 years ago
omar
dfb82d5c22
Merge branch 'master' into docking
...
# Conflicts:
# examples/example_sdl_opengl2/main.cpp
# examples/example_sdl_opengl3/main.cpp
# examples/example_sdl_vulkan/main.cpp
# examples/imgui_impl_sdl.cpp
# examples/imgui_impl_sdl.h
# imgui.cpp
6 years ago
omar
0ca1675ff9
Internals: TempInputText: Rename InputScalarAsWidgetReplacement() -> TempInputTextScalar(), ScalarAsInputTextId -> TempInputTextId, small tidying up in affected functions.
6 years ago
omar
59a3f0476d
Internals: Using more explicit PushOverrideID() helper + renamed equivalent internal tree helper.
6 years ago
omar
6db0766564
Misc comments, internal renaming, added disable indentation option to Columns demo section.
6 years ago
omar
d0fb547dc1
Viewports: Avoid rendering/swapping secondary viewports that are minimized. ( #1542 , #2496 )
6 years ago
omar
03b64defa5
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui.h
6 years ago
omar
59f012d656
Internals: ImHashStr() default parameter.
6 years ago
omar
5078fa208b
Added SetNextItemWidth() helper to avoid using PushItemWidth/PopItemWidth() for single items.
6 years ago
omar
f355a40367
Added commentary about ContentRegion functions. Added internal GetContentRegionMaxScreen() to facilitate internal code at the moment.
6 years ago
omar
9d4a893a77
Internals: Moved CalcItemSize next to CalcItemWidth, added comments to clarify their respective intent. Should have no side effect.
6 years ago
omar
1aeee9d40f
Internals: Columns: Tweaks, renaming. Metrics: Show rectangles for child windows.
...
Renamed SameLine() first parameter.
6 years ago
omar
655ebe4eaf
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_demo.cpp
6 years ago
omar
742b5f4c68
Merged a bunch of small changes from Docking branch to reduce the difference between branches.
...
Noticeable: horizontal alignment of CloseButton. Menu fill take account of border. Various stylistic tweaks to accomodate other changes in Docking.
6 years ago
omar
311469e9d6
Internals: Columns: Some renaming, extracted code into GetColumnsID().
6 years ago
omar
f70eacee8e
Docking: Internal: Added helper for automation to process docking at the mouse level.
6 years ago
omar
712203dbcb
Merge branch 'master' into docking
...
# Conflicts:
# imgui.cpp
# imgui_internal.h
6 years ago
omar
224f087a5f
Docking: Rename typo Autority -> Authority + Rename DockContextNewFrameUpdateDocking -> DockContextUpdateDocking.
6 years ago
omar
fb2626c21b
Tests: Added hook/tweaks for imgui-test engine. + Fixed warnings.
6 years ago
omar
092426bed2
Docking: Hold Shift to force disable docking. ( #2109 )
6 years ago
omar
c6f1b7b92a
Tests: Added hook/tweaks for imgui-test engine. + Fixed warnings.
6 years ago
omar
ee02cdbf03
Internals, Docs: Added a bunch of clarification about ButtonBehavior in the form of a table (and to facilitate writing tests)
6 years ago
omar
328e4fa7e7
Merge branch 'master' into docking
...
# Conflicts:
# imgui_demo.cpp
6 years ago
omar
07a70dc972
Internals: Merge minor things from range_select branch. Added ImGuiButtonFlags_NoHoveredOnNav. Added IsItemToggledSelected() - unused here. Renaming.
6 years ago
omar
cf029b3e1c
Merge branch 'master' into docking
6 years ago
omar
1391904fd2
Internals: Selectable: Added ImGuiSelectableFlags_AllowItemOverlap in imgui_internal.h (~ #684 , #2341 )
6 years ago
omar
49fb8e6c45
Merge branch 'master' into docking
...
# Conflicts:
# examples/imgui_impl_dx9.cpp
# examples/imgui_impl_opengl3.cpp
6 years ago