@ -127,7 +127,7 @@ It's mostly a bunch of personal notes, probably incomplete. Feel free to query i
- dock: B: when docking outer, perform size locking on neighbors nodes the same way we do it with splitters, so other nodes are not resized.
- dock: B~ central node resizing behavior incorrect.
- dock: B~ central node ID retrieval API?
- dock: B- full rebuild (which is a debug option) loses viewport of floating dock nodes.
- dock: B: changing title font/style per-window is not supported as dock nodes are created in NewFrame.
- dock: B- dock node inside its own viewports creates 1 temporary viewport per window on startup before ditching them (doesn't affect the user nor request platform windows to be created, but unnecessary)
- dock: B- resize sibling locking behavior may be less desirable if we merged same-axis sibling in a same node level?
- dock: B- single visible node part of a hidden split hierarchy (OnlyNodeWithWindows != NULL) should show a normal title bar (not a tab bar)
@ -143,7 +143,7 @@ It's mostly a bunch of personal notes, probably incomplete. Feel free to query i
- dock: B- tab bar: make selected tab always shows its full title?
- dock: B- tab bar: the order/focus restoring code could be part of TabBar and not DockNode? (#8)
- dock: B- nav: design interactions so nav controls can dock/undock
- dock: B- dockspace: flag to lock the dock tree and/or sizes
- dock: B- dockspace: flag to lock the dock tree and/or sizes (ImGuiDockFlags_Locked?)
- dock: B- reintroduce collapsing a floating dock node. also collapsing a docked dock node!
- dock: B- allow dragging a non-floating dock node by clicking on the title-bar-looking section (not just the collapse/menu button)
- dock: B- option to remember undocked window size? (instead of keeping their docked size) (relate to #2104)
// Move ourselves to the Menu layer (so we can be accessed by tapping Alt) + undo SkipItems flag in order to draw over the title bar even if the window is collapsed
tab_pos.x+=host_node->TabBar->OffsetMax+g.Style.ItemInnerSpacing.x;// We don't use OffsetNewTab because when using non-persistent-order tab bar it is incremented with each Tab submission.
{
if(!host_node->IsHiddenTabBar)
tab_pos.x+=host_node->TabBar->OffsetMax+g.Style.ItemInnerSpacing.x;// We don't use OffsetNewTab because when using non-persistent-order tab bar it is incremented with each Tab submission.
tab_pos.x+=g.Style.ItemInnerSpacing.x+TabItemCalcSize(host_window->Name,host_window->HasCloseButton).x;// Account for slight offset which will be added when changing from title bar to tab bar
}
// Draw tab shape/label preview (payload may be a loose window or a host window carrying multiple tabbed windows)
window->Flags&=~ImGuiWindowFlags_NoTitleBar;// Clear the NoTitleBar flag in case the user set it: confusingly enough we need a title bar height so we are correctly offset, but it won't be displayed!
if(dock_node->IsHiddenTabBar)
window->Flags|=ImGuiWindowFlags_NoTitleBar;
else
window->Flags&=~ImGuiWindowFlags_NoTitleBar;// Clear the NoTitleBar flag in case the user set it: confusingly enough we need a title bar height so we are correctly offset, but it won't be displayed!
// Save new dock order only if the tab bar is active