omar
|
f2d577c33f
|
Viewport: BeginMainMenuBar(): explicitly set viewport to avoid creating new one when ImGuiConfigFlags_ViewportsNoMerge is set + misc shallow changes.
|
6 years ago |
omar
|
ae34241f8b
|
Viewport: BeginMainMenuBar(): explicitly set viewport to avoid creating new one when ImGuiConfigFlags_ViewportsNoMerge is set + misc shallow changes.
|
6 years ago |
omar
|
1546153ca2
|
Docking: Fixed a regression where clicking a Tab wouldn't immediately set NavWindow. Which led to breaking the NavSaveLastChildNavWindow/NavRestoreLastChildNavWindow logic. (#2109)
|
6 years ago |
omar
|
19b4fcdacb
|
Made IsWindowFocused() work outside of NewFrame()-EndFrame() and added comments about how ImGuiFocusedFlags_AnyWindow should NOT be used in place of io.WantCaptureMouse. (#2185)
|
6 years ago |
omar
|
565af90958
|
Merge branch 'viewport' into docking
|
6 years ago |
omar
|
797f2044cd
|
Viewport: Fixed SDL+OpenGL2 example to work with multi-viewports. (#2175)
|
6 years ago |
omar
|
52ca91ca57
|
Merge branch 'master' into viewport
|
6 years ago |
omar
|
c808eb92c6
|
Config: Added IMGUI_DISABLE_WIN32_FUNCTIONS to disable linking with _any_ Win32 function, as a general forward compatible measure.
|
6 years ago |
Torkel Bjørnson-Langen
|
1441756a0f
|
Doc: Fixed comments referring to LoadFromFileTTF() instead of AddFontFromFileTTF() (#2153)
|
6 years ago |
omar
|
168af9b377
|
Merge branch 'viewport' into docking
# Conflicts:
# imgui_demo.cpp
|
6 years ago |
omar
|
1a6eea012d
|
Docking: Tweaked tooltip on tabs so they don't show immediately when holding and releasing a tab (using HoveredIdNotActiveTimer) + Minor refactor + Removed legacy .ini parsing.
|
6 years ago |
omar
|
50f6e12d31
|
Merge branch 'master' into viewport
# Conflicts:
# imgui.cpp
|
6 years ago |
omar
|
12c72d2893
|
Fixed OpenGL texture loading example in comment + Discourse link to root of discourse
|
6 years ago |
omar
|
a72d5ada61
|
Misc comments improvements
|
6 years ago |
omar
|
ac9aaf4b6e
|
Comments in demo and opengl code + Internals: Added HoveredIdNotActiveTimer tracking hovering time unless the item is active, which is a commonly useful pattern.
|
6 years ago |
omar
|
c547b2e8ee
|
Added DockSpaceOverViewport() call, not sure about this because of the menu bar limitation. (#2109)
|
6 years ago |
omar
|
56ba60ee68
|
Docking: Fixed not saving .ini file correct if DockingEnable flag is cleared. (#2109)
|
6 years ago |
omar
|
f270c81c49
|
Viewport, Docking: Fixed incorrectly setting the ImGuiViewportFlags_NoInputs flag, affecting split docking node. (#2109)
|
6 years ago |
omar
|
745fda081e
|
Viewport, Docking: Fixed incorrectly setting the ImGuiViewportFlags_NoInputs flag, affecting split docking node. (#2109)
|
6 years ago |
omar
|
5f8c9ae0ef
|
Merge branch 'viewport' into docking
# Conflicts:
# imgui.cpp
# imgui.h
|
6 years ago |
omar
|
056af2b1af
|
Merge branch 'master' into viewport
# Conflicts:
# imgui.cpp
# imgui.h
|
6 years ago |
omar
|
5be915d6ab
|
Added ImGuiWindowFlags_NoMouseInputs which is basically the old ImGuiWindowFlags_NoInputs (essentially we have renamed ImGuiWindowFlags_NoInputs to ImGuiWindowFlags_NoMouseInputs). Made the new ImGuiWindowFlags_NoInputs encompass both NoMouseInputs+NoNav, which is consistent with its description. (#1660, #787)
|
6 years ago |
omar
|
90b50bd4c3
|
Window: Added ImGuiWindowFlags_NoBackground flag for consistency and to ease creating new flag combinations. Added ImGuiWindowFlags_NoDecoration helper flag which is essentially NoTitleBar+NoResize+NoScrollbar+NoCollapse. (#1660)
|
6 years ago |
omar
|
69db792bf0
|
Viewport: Exposed GetOverlayDrawList(ImGuiViewport* viewport) in public API. (#1542, #1660, #1878, etc.)
|
6 years ago |
omar
|
e6cc547a94
|
Merge branch 'viewport' into docking
# Conflicts:
# imgui.cpp
# imgui_widgets.cpp
|
6 years ago |
omar
|
e73217d6f7
|
Merge branch 'master' into viewport
# Conflicts:
# examples/imgui_impl_sdl.cpp
# imgui.cpp
|
6 years ago |
omar
|
ca753829cb
|
Revert using wchar_t functions (9cf94d5 + 2eaf5b0 ). Big mistake, wchar_t is not guaranteed to be 16-bits.
|
6 years ago |
omar
|
28953208d4
|
Tests: Added imgui-test engine hooks (experimental).
|
6 years ago |
omar
|
c398153b40
|
Merge branch 'master' into docking
# Conflicts:
# examples/imgui_impl_sdl.cpp
# imgui.cpp
# imgui_internal.h
|
6 years ago |
omar
|
33994bbfa1
|
Docking: Fixed Modal window from being dockable.
|
6 years ago |
omar
|
9cf94d5dd6
|
RenderText(), InputTextMultiline(): Optimization for large text by using memchr, wmemchr, wcschr when appropriate.
|
6 years ago |
omar
|
0fe48cbb61
|
Renamed misc/stl/imgui_stl.h,.cpp to misc/cpp/imgui_stdlib.h in prevision for other files.(#2035, #2096)
Added misc/README file.
|
6 years ago |
omar
|
ed4dcd9072
|
Shutdown: Unlock font atlas before destroying context, so we can destroy a context between NewFrame and EndFrame if we wait (facilitate main loop structures). Internals: GetWindowScrollMaxX(), GetWindowScrollMaxY()
|
6 years ago |
omar
|
7525637804
|
Merge branch 'viewport' into docking. 15ec78e Fixes the update of title buffer when docked in a leaf dock node with a single window. Added comment about overwriting DockIsActive in DockNodeUpdate().
# Conflicts:
# imgui.cpp
|
6 years ago |
omar
|
15ec78e9d8
|
Internal: Moved stored window name update code to the first_begin_of_the_frame block. This will be useful in the Docking branch.
|
6 years ago |
omar
|
cf0afb48ac
|
TextUnformatted: Using memchr(), fixed not properly testing for text_end bound + comments.
Internals: Added ImStreolRange() + used in LogRenderedText() + comments.
|
6 years ago |
omar
|
d02b11dfbd
|
ImGuiTextBuffer: Avoid heap allocation when empty.
|
6 years ago |
omar
|
1efafa1d29
|
Comments + internal using Tab Stop terminology (ImGuiItemFlags_NoTabStop instead of !ImGuiItemFlags_AllowKeyboardFocus)
|
6 years ago |
omar
|
3a7828de6b
|
Viewport: Added ImGuiConfigFlags_ViewportsDecoration to re-enable platform decoration (#1542)
|
6 years ago |
omar
|
7b3433c68b
|
Viewport: Added ImGuiConfigFlags_ViewportsDecoration to re-enable platform decoration (#1542)
|
6 years ago |
omar
|
84507cc744
|
Docking: Kept ImGuiDockNodeFlags_PassthruDockspace and removed ImGuiDockNodeFlags_PassthruInEmptyNodes, ImGuiDockNodeFlags_RenderWindowBg. Doesn't include ImGuiDockNodeFlags_NoDockingInCentralNode. (#2109)
|
6 years ago |
omar
|
cb76c086e0
|
Docking: Removed context parameter from internal DockBuilderXXX api at it is expected we transition it to be public facing. (#2109)
|
6 years ago |
omar
|
4e30698706
|
Docking: Added ImGuiDockNodeFlags_PassthruDockspace mode (subdivided in three flags: ImGuiDockNodeFlags_NoDockingInCentralNode, ImGuiDockNodeFlags_PassthruInEmptyNodes, ImGuiDockNodeFlags_RenderWindowBg). Added internal facility for register a rectangular hit-test hole in window. Updated DockSpace demo accordingly. (#2109)
|
6 years ago |
omar
|
2dd8338e7d
|
Docking: Added ImGuiDockNodeFlags_NoOuterBorder, tweaked DockSpace demo to remove window border. Made docking splitter use the same standard setting as resizing from edges. (#2109)
|
6 years ago |
omar
|
d348d86df4
|
Docking: Renamed "DocRoot/DocumentRoot" to "CentralNode", more self explanatory. Moved Splitter update higher up in DockNodeUpdate() + minor misc tweak. (#2109)
|
6 years ago |
omar
|
1d3862b6b3
|
Docking: Added ImGuiDockNodeFlags_NoDockingInsideDocRootNode flag. Honoring ImGuiDockNodeFlags_NoSplit in child node is already split (so we can use DockBuilder and then lock the layout). Added those options to the demo. (#2109)
|
6 years ago |
omar
|
bd82539ad5
|
Docking: Fixed DockSpace() child window displaying a scrollbar behind the node backgrounds. Rename ImGuiCol_DockingBg to ImGuiCol_DockingEmptyBg. Added ImGuiDockNode::IsLeaftNode(). (#2109)
|
6 years ago |
omar
|
83f55c9de5
|
Merge branch 'viewport' into docking
|
6 years ago |
omar
|
33b88a0339
|
Merge branch 'master' into viewport
# Conflicts:
# imgui.cpp
|
6 years ago |
omar
|
fbfe193fcd
|
Window, Inputs: Fixed resizing from edges when io.MousePos is not pixel-rounded by rounding mouse position input. (#2110)
|
6 years ago |
omar
|
ae7f833c69
|
Window: Resizing from edges (with io.ConfigResizeWindowsFromEdges Beta flag) extends the hit region of root floating windows outside the window, making it easier to resize windows. Resize grips are also extended accordingly so there are no discontinuity when hovering between borders and corners. (#1495, #822, #2110)
|
6 years ago |
omar
|
44bfa24cc3
|
Docking: Fixed crash using DockBuilderSplitNode(). (#2109)
|
6 years ago |
omar
|
2cff3f6a65
|
Docking: Renamed io.ConfigDockingWithKeyMode to io.ConfigDockingWithShift.
|
6 years ago |
omar
|
e623be998d
|
Drag and Drop: Added GetDragDropPayload() to peek directly into the payload (if any) from anywhere. (#143)
|
6 years ago |
omar
|
b48ed9ebc0
|
Docking: Better tracking of current dock id for inactive and uncreated windows (in settings etc.). + Fixed assert when docking a single-visible leaf node of a hierarchy into another
|
6 years ago |
omar
|
4e717b524c
|
Docking: Fixes for C++03 compilers.
|
6 years ago |
omar
|
ae657a349a
|
Docking: Fixed extracting a dock node from a document root: document root should be preserved.
|
6 years ago |
omar
|
ed3c015f4e
|
Docking: Reorganizing some of the tab-bar selection and window focus related code.
|
6 years ago |
omar
|
9cfc40c2cc
|
Docking: Demo: Displaying a message if master docking flag is disabled. + DockSpace() early out + comments.
|
6 years ago |
omar
|
6ebc63d3ef
|
Docking: Various sanity fixes + fixed tab-bar items sorting issue when docking single window with a dock node into single window without dock node.
|
6 years ago |
omar
|
1ae0a1e658
|
Docking: Fix DockContextRebuild() temporarily invalidating dockid reference leading to undesirable merging of nodes.
|
6 years ago |
omar
|
46dff42239
|
Docking: Fixed dock node with single window accidental stealing of non-owned host viewport (leading to general havoc).
|
6 years ago |
omar
|
35d1fb7b34
|
Style: Added style.TabRounding setting.
|
6 years ago |
omar
|
876a3299fc
|
Docking: Added DockBuilderCopyDockspace() wip. Added DockBuilderCopyWindowSettings(), renamed DockBuilderForkNode() to DockBuilderCopyNode().
|
6 years ago |
omar
|
3dcd552628
|
Fixed extraneous static attribute. (#2105)
|
6 years ago |
Loïc HAMOT
|
9aae21483a
|
Fix missing IMGUI_API and mismatching namespace internal's CreateNewWindowSettings (#2105)
|
6 years ago |
omar
|
93896d550e
|
Added FindOrCreateWindowSettings() internal helper.
|
6 years ago |
omar
|
18ffb7dd86
|
Docking: Reworked DockContextPruneUnusedSettingsNodes() to prune entire unused trees.
|
6 years ago |
omar
|
c6193d0605
|
Merge branch 'viewport' into docking
|
6 years ago |
omar
|
6cc380fc41
|
Merge branch 'master' into viewport
# Conflicts:
# examples/imgui_impl_win32.cpp
# examples/imgui_impl_win32.h
# imgui.cpp
|
6 years ago |
omar
|
61d94ff88e
|
Renamed SetScrollHere() to SetScrollHereY(). Kept redirection function (will obsolete).
|
6 years ago |
omar
|
a7d3ae8937
|
BeginChild(): Fixed BeginChild(const char*, ...) variation erroneously not applying the ID stack to the provided string to uniquely identify the child window. This was undoing an intentional change introduced in 1.50 and broken in 1.60. (#1698, #894, #713) + reworked the Begin/BeginChild comments in imgui.h.
|
6 years ago |
omar
|
4053d9d638
|
Docking: Fixed tab order restoring (follow up to 67be485e , broken in 455dc6e2 )
|
6 years ago |
omar
|
45731cca19
|
Docking: Added DockBuilderForkNode() primitive for usage for user code to fork/copy entire layouts. This will probably need to be added to as I find ways to migrate patterns from user code to the library. Added IMGUI_DEBUG_DOCKING_INI helper to facilitate debugging. (+1 squashed commits)
|
6 years ago |
omar
|
dc92431328
|
Docking: Minor renaming. DockContextAddNode() uses 0 as marker for automatic ID selection + TODO update and moved docking entries to docs/TODO.txt
|
6 years ago |
omar
|
d3e8e5731a
|
Docking: Renamed SetNextWindowDock() to SetNextWindowDockId(). Added GetWindowDockId().
|
6 years ago |
omar
|
53a5d32df1
|
Docking: Reworked SetNextWindowUserType() as SetNextWindowDockFamily(), allowing multiple scene to be tagged with their scene id and not receive tabs from other scene + persistent storage for family id to allow for docking tree fork/remap.
|
6 years ago |
omar
|
85e1e2b0c8
|
Docking: Added DockBuilderGetNode() wrapper for consistency.
|
6 years ago |
omar
|
9960ccddb2
|
Docking: Added DockBuilderRemoveNode() + various tweaks. Fixed dragging/undocking dock node from CollapseButton.
|
6 years ago |
omar
|
4021776d0f
|
Docking: Fix for undocking node where the dockspace node is attached to an immovable parent window. + Tweak .ini output.
|
6 years ago |
omar
|
fa0ce4b7d5
|
Docking: Some DockBuilder functions are applied on settings data if windows are not present. Added DockBuilderCreateNode which needs a size else if we can't split properly. DockNodeTreeSplit() doesn't clamp SizeRef. (+1 squashed commits)
|
6 years ago |
omar
|
2a5ce1849a
|
Docking, Viewport: Reworked viewport inheritance/transition so that extracting a dock node from a split node owning its viewport will have both viewports be in the expected OS z-order. (The lower window re-use the exiting viewport, the detached node uses a new viewport:
|
6 years ago |
omar
|
ae4b838840
|
Docking, Viewport: Rework ownership transfer/stealing to fix issues where non-child windows could be stick marked as not owning their viewport.
|
6 years ago |
omar
|
79c075ca09
|
Docking+Viewport: Fixed PlatformRequestClose (e.g. ALT-F4) being redrected to the first window of the docking node instead of the selected one.
|
6 years ago |
omar
|
1127804109
|
Viewport: Misc tweaks.
|
6 years ago |
omar
|
67be485e24
|
Docking: Fixed losing tab bar selection when extracting a whole docked node + reusing existing dock node when possible.
|
6 years ago |
omar
|
fda57f48d5
|
Merge branch 'viewport' into docking
# Conflicts:
# examples/example_glfw_opengl2/main.cpp
# examples/example_glfw_opengl3/main.cpp
# examples/example_glfw_vulkan/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
|
6 years ago |
omar
|
840652830d
|
Docking: Fixed undocking on whole dock node from leaving undesirable empty node in the docking tree. Fixed calls to MarkIniSettingsDirty().
|
6 years ago |
omar
|
5eabf44021
|
Nav: Use Platform_SetWindowFocus when CTRL+Tabbing to another viewport.
|
6 years ago |
omar
|
599d5f185c
|
TabBar: Recover if SelectedTabId doesn't exist anymore.
|
6 years ago |
omar
|
3e47978a80
|
Docking: Renamed ImGuiDockSpaceFlags to ImGuiDockNodeFlags. Clarified in comments/demos that DockSpace creates a Node. Renamed IsExplicitRoot to IsDockSpace. Assert against explicitly calling DockSpace twice in a frame.
|
6 years ago |
omar
|
e647f89c33
|
Docking: Added undocking of whole dock node by dragging from the Collapse button. Super useful and works great!
|
6 years ago |
omar
|
82978fc88f
|
Docking: Fix of title bar flicker during rebuild. Fixed dragging of DockNode always triggering BeginAsDockableDragDropSource() when io.ConfigDockingWithKeyMod is false.
|
6 years ago |
omar
|
95d49c3b98
|
Docking: Internals renaming LastExplicitSize to SizeRef (invalidate .ini data) + todo
|
6 years ago |
omar
|
455dc6e229
|
Docking: Creating tab bar and adding window into tab bar immediately (not sure why I didn't do that before). Probably broke something subtle, will find out. *Edit* Initially broke restoring selected tab.
|
6 years ago |
omar
|
291bfe6841
|
Docking: work to allow programmatic control of dock nodes, various refactor + assert fix. Probably broke something (but I haven't found what yet!)
|
6 years ago |
omar
|
35032d41fa
|
Docking: Internals: Transitioning some code toward consistently using ImGuiContext* ctx parameter instead of ImGuiDockContext
|
6 years ago |
omar
|
28094b7cea
|
Docking: Fixed central docking display with ImGuiDockSpaceFlags_NoSplit, affecting in particular with io.ConfigDockingWithKeyMod = false. + comments, asserts
|
6 years ago |
omar
|
b55b9aee9b
|
Fixed bad merge (a82be53 ) where we lost the version number in Docking branch + moved Docking related API together for now.
|
6 years ago |
omar
|
0f1c21a6c9
|
Docking: Changed DockSpace() signature to take an ID, as ID will frequently be used by other API it makes more sense to let the user compute it.
|
6 years ago |