@ -11310,16 +11310,16 @@ struct ImGuiDockPreviewData
struct ImGuiDockNodeSettings
{
ImGuiID ID ;
ImGuiID ParentNodeI D ;
ImGuiID ParentWindowI D ;
ImGuiID SelectedWindowI D ;
ImGuiID ParentNodeI d ;
ImGuiID ParentWindowI d ;
ImGuiID SelectedWindowI d ;
signed char SplitAxis ;
char Depth ;
ImGuiDockNodeFlags Flags ; // NB: We save individual flags one by one in ascii format (ImGuiDockNodeFlags_SavedFlagsMask_)
ImVec2ih Pos ;
ImVec2ih Size ;
ImVec2ih SizeRef ;
ImGuiDockNodeSettings ( ) { ID = ParentNodeI D = ParentWindowID = SelectedWindowID = 0 ; SplitAxis = ImGuiAxis_None ; Depth = 0 ; Flags = ImGuiDockNodeFlags_None ; }
ImGuiDockNodeSettings ( ) { ID = ParentNodeI d = ParentWindowId = SelectedWindowId = 0 ; SplitAxis = ImGuiAxis_None ; Depth = 0 ; Flags = ImGuiDockNodeFlags_None ; }
} ;
struct ImGuiDockContext
@ -11615,8 +11615,8 @@ static int IMGUI_CDECL DockNodeComparerDepthMostFirst(const void* lhs, const voi
struct ImGuiDockContextPruneNodeData
{
int CountWindows , CountChildWindows , CountChildNodes ;
ImGuiID RootI D ;
ImGuiDockContextPruneNodeData ( ) { CountWindows = CountChildWindows = CountChildNodes = 0 ; RootI D = 0 ; }
ImGuiID RootI d ;
ImGuiDockContextPruneNodeData ( ) { CountWindows = CountChildWindows = CountChildNodes = 0 ; RootI d = 0 ; }
} ;
// Garbage collect unused nodes (run once at init time)
@ -11633,10 +11633,10 @@ static void ImGui::DockContextPruneUnusedSettingsNodes(ImGuiContext* ctx)
for ( int settings_n = 0 ; settings_n < dc - > SettingsNodes . Size ; settings_n + + )
{
ImGuiDockNodeSettings * settings = & dc - > SettingsNodes [ settings_n ] ;
ImGuiDockContextPruneNodeData * parent_data = settings - > ParentNodeI D ? pool . GetByKey ( settings - > ParentNodeI D ) : 0 ;
pool . GetOrAddByKey ( settings - > ID ) - > RootI D = parent_data ? parent_data - > RootID : settings - > ID ;
if ( settings - > ParentNodeI D )
pool . GetOrAddByKey ( settings - > ParentNodeI D ) - > CountChildNodes + + ;
ImGuiDockContextPruneNodeData * parent_data = settings - > ParentNodeI d ? pool . GetByKey ( settings - > ParentNodeI d ) : 0 ;
pool . GetOrAddByKey ( settings - > ID ) - > RootI d = parent_data ? parent_data - > RootId : settings - > ID ;
if ( settings - > ParentNodeI d )
pool . GetOrAddByKey ( settings - > ParentNodeI d ) - > CountChildNodes + + ;
}
// Count reference to dock ids from dockspaces
@ -11644,8 +11644,8 @@ static void ImGui::DockContextPruneUnusedSettingsNodes(ImGuiContext* ctx)
for ( int settings_n = 0 ; settings_n < dc - > SettingsNodes . Size ; settings_n + + )
{
ImGuiDockNodeSettings * settings = & dc - > SettingsNodes [ settings_n ] ;
if ( settings - > ParentWindowI D ! = 0 )
if ( ImGuiWindowSettings * window_settings = FindWindowSettings ( settings - > ParentWindowI D ) )
if ( settings - > ParentWindowI d ! = 0 )
if ( ImGuiWindowSettings * window_settings = FindWindowSettings ( settings - > ParentWindowI d ) )
if ( window_settings - > DockId )
if ( ImGuiDockContextPruneNodeData * data = pool . GetByKey ( window_settings - > DockId ) )
data - > CountChildNodes + + ;
@ -11658,7 +11658,7 @@ static void ImGui::DockContextPruneUnusedSettingsNodes(ImGuiContext* ctx)
if ( ImGuiDockContextPruneNodeData * data = pool . GetByKey ( dock_id ) )
{
data - > CountWindows + + ;
if ( ImGuiDockContextPruneNodeData * data_root = ( data - > RootI D = = dock_id ) ? data : pool . GetByKey ( data - > RootI D ) )
if ( ImGuiDockContextPruneNodeData * data_root = ( data - > RootI d = = dock_id ) ? data : pool . GetByKey ( data - > RootI d ) )
data_root - > CountChildWindows + + ;
}
@ -11669,11 +11669,11 @@ static void ImGui::DockContextPruneUnusedSettingsNodes(ImGuiContext* ctx)
ImGuiDockContextPruneNodeData * data = pool . GetByKey ( settings - > ID ) ;
if ( data - > CountWindows > 1 )
continue ;
ImGuiDockContextPruneNodeData * data_root = ( data - > RootI D = = settings - > ID ) ? data : pool . GetByKey ( data - > RootI D ) ;
ImGuiDockContextPruneNodeData * data_root = ( data - > RootI d = = settings - > ID ) ? data : pool . GetByKey ( data - > RootI d ) ;
bool remove = false ;
remove | = ( data - > CountWindows = = 1 & & settings - > ParentNodeI D = = 0 & & data - > CountChildNodes = = 0 & & ! ( settings - > Flags & ImGuiDockNodeFlags_CentralNode ) ) ; // Floating root node with only 1 window
remove | = ( data - > CountWindows = = 0 & & settings - > ParentNodeI D = = 0 & & data - > CountChildNodes = = 0 ) ; // Leaf nodes with 0 window
remove | = ( data - > CountWindows = = 1 & & settings - > ParentNodeI d = = 0 & & data - > CountChildNodes = = 0 & & ! ( settings - > Flags & ImGuiDockNodeFlags_CentralNode ) ) ; // Floating root node with only 1 window
remove | = ( data - > CountWindows = = 0 & & settings - > ParentNodeI d = = 0 & & data - > CountChildNodes = = 0 ) ; // Leaf nodes with 0 window
remove | = ( data_root - > CountChildWindows = = 0 ) ;
if ( remove )
{
@ -11693,7 +11693,7 @@ static void ImGui::DockContextBuildNodesFromSettings(ImGuiContext* ctx, ImGuiDoc
if ( settings - > ID = = 0 )
continue ;
ImGuiDockNode * node = DockContextAddNode ( ctx , settings - > ID ) ;
node - > ParentNode = settings - > ParentNodeI D ? DockContextFindNodeByID ( ctx , settings - > ParentNodeI D ) : NULL ;
node - > ParentNode = settings - > ParentNodeI d ? DockContextFindNodeByID ( ctx , settings - > ParentNodeI d ) : NULL ;
node - > Pos = ImVec2 ( settings - > Pos . x , settings - > Pos . y ) ;
node - > Size = ImVec2 ( settings - > Size . x , settings - > Size . y ) ;
node - > SizeRef = ImVec2 ( settings - > SizeRef . x , settings - > SizeRef . y ) ;
@ -11702,7 +11702,7 @@ static void ImGui::DockContextBuildNodesFromSettings(ImGuiContext* ctx, ImGuiDoc
node - > ParentNode - > ChildNodes [ 0 ] = node ;
else if ( node - > ParentNode & & node - > ParentNode - > ChildNodes [ 1 ] = = NULL )
node - > ParentNode - > ChildNodes [ 1 ] = node ;
node - > SelectedTabI D = settings - > SelectedWindowID ;
node - > SelectedTabI d = settings - > SelectedWindowId ;
node - > SplitAxis = settings - > SplitAxis ;
node - > LocalFlags | = ( settings - > Flags & ImGuiDockNodeFlags_SavedFlagsMask_ ) ;
@ -11880,7 +11880,7 @@ void ImGui::DockContextProcessDock(ImGuiContext* ctx, ImGuiDockRequest* req)
{
// Central node property needs to be moved to a leaf node, pick the last focused one.
// FIXME-DOCK: If we had to transfer other flags here, what would the policy be?
ImGuiDockNode * last_focused_node = DockContextFindNodeByID ( ctx , payload_node - > LastFocusedNodeI D ) ;
ImGuiDockNode * last_focused_node = DockContextFindNodeByID ( ctx , payload_node - > LastFocusedNodeI d ) ;
IM_ASSERT ( last_focused_node ! = NULL ) ;
ImGuiDockNode * last_focused_root_node = DockNodeGetRootNode ( last_focused_node ) ;
IM_ASSERT ( last_focused_root_node = = DockNodeGetRootNode ( payload_node ) ) ;
@ -12026,9 +12026,9 @@ ImGuiDockNode::ImGuiDockNode(ImGuiID id)
HostWindow = VisibleWindow = NULL ;
CentralNode = OnlyNodeWithWindows = NULL ;
LastFrameAlive = LastFrameActive = LastFrameFocused = - 1 ;
LastFocusedNodeI D = 0 ;
SelectedTabI D = 0 ;
WantCloseTabI D = 0 ;
LastFocusedNodeI d = 0 ;
SelectedTabI d = 0 ;
WantCloseTabI d = 0 ;
AuthorityForPos = AuthorityForSize = ImGuiDataAuthority_DockNode ;
AuthorityForViewport = ImGuiDataAuthority_Auto ;
IsVisible = true ;
@ -12098,7 +12098,7 @@ static void ImGui::DockNodeAddWindow(ImGuiDockNode* node, ImGuiWindow* window, b
if ( node - > TabBar = = NULL )
{
DockNodeAddTabBar ( node ) ;
node - > TabBar - > SelectedTabId = node - > TabBar - > NextSelectedTabId = node - > SelectedTabI D ;
node - > TabBar - > SelectedTabId = node - > TabBar - > NextSelectedTabId = node - > SelectedTabI d ;
// Add existing windows
for ( int n = 0 ; n < node - > Windows . Size - 1 ; n + + )
@ -12321,7 +12321,7 @@ static void ImGui::DockNodeUpdateVisibleFlagAndInactiveChilds(ImGuiDockNode* nod
bool node_was_active = ( node - > LastFrameActive + 1 = = g . FrameCount ) ;
bool remove = false ;
remove | = node_was_active & & ( window - > LastFrameActive + 1 < g . FrameCount ) ;
remove | = node_was_active & & ( node - > WantCloseAll | | node - > WantCloseTabI D = = window - > ID ) & & window - > HasCloseButton & & ! ( window - > Flags & ImGuiWindowFlags_UnsavedDocument ) ; // Submit all _expected_ closure from last frame
remove | = node_was_active & & ( node - > WantCloseAll | | node - > WantCloseTabI d = = window - > ID ) & & window - > HasCloseButton & & ! ( window - > Flags & ImGuiWindowFlags_UnsavedDocument ) ; // Submit all _expected_ closure from last frame
remove | = ( window - > DockTabWantClose ) ;
if ( remove )
{
@ -12387,8 +12387,8 @@ static void ImGui::DockNodeUpdateForRootNode(ImGuiDockNode* node)
DockNodeFindInfo ( node , & results ) ;
node - > CentralNode = results . CentralNode ;
node - > OnlyNodeWithWindows = ( results . CountNodesWithWindows = = 1 ) ? results . FirstNodeWithWindows : NULL ;
if ( node - > LastFocusedNodeI D = = 0 & & results . FirstNodeWithWindows ! = NULL )
node - > LastFocusedNodeI D = results . FirstNodeWithWindows - > ID ;
if ( node - > LastFocusedNodeI d = = 0 & & results . FirstNodeWithWindows ! = NULL )
node - > LastFocusedNodeI d = results . FirstNodeWithWindows - > ID ;
// Copy the window class from of our first window so it can be used for proper dock filtering.
// When node has mixed windows, prioritize the class with the most constraint (DockingAllowUnclassed = false) as the reference to copy.
@ -12453,7 +12453,7 @@ static void ImGui::DockNodeUpdate(ImGuiDockNode* node)
DockNodeHideHostWindow ( node ) ;
node - > State = ImGuiDockNodeState_HostWindowHiddenBecauseSingleWindow ;
node - > WantCloseAll = false ;
node - > WantCloseTabI D = 0 ;
node - > WantCloseTabI d = 0 ;
node - > HasCloseButton = node - > HasWindowMenuButton = node - > EnableCloseButton = false ;
node - > LastFrameActive = g . FrameCount ;
@ -12476,8 +12476,8 @@ static void ImGui::DockNodeUpdate(ImGuiDockNode* node)
{
IM_ASSERT ( node - > Windows . Size > 0 ) ;
ImGuiWindow * ref_window = NULL ;
if ( node - > SelectedTabI D ! = 0 ) // Note that we prune single-window-node settings on .ini loading, so this is generally 0 for them!
ref_window = DockNodeFindWindowByID ( node , node - > SelectedTabI D ) ;
if ( node - > SelectedTabI d ! = 0 ) // Note that we prune single-window-node settings on .ini loading, so this is generally 0 for them!
ref_window = DockNodeFindWindowByID ( node , node - > SelectedTabI d ) ;
if ( ref_window = = NULL )
ref_window = node - > Windows [ 0 ] ;
if ( ref_window - > AutoFitFramesX > 0 | | ref_window - > AutoFitFramesY > 0 )
@ -12585,7 +12585,7 @@ static void ImGui::DockNodeUpdate(ImGuiDockNode* node)
IM_ASSERT ( node - > TabBar = = NULL ) ;
if ( node - > IsRootNode ( ) )
if ( g . NavWindow & & g . NavWindow - > RootWindowDockStop - > DockNode & & g . NavWindow - > RootWindowDockStop - > ParentWindow = = host_window )
node - > LastFocusedNodeI D = g . NavWindow - > RootWindowDockStop - > DockNode - > ID ;
node - > LastFocusedNodeI d = g . NavWindow - > RootWindowDockStop - > DockNode - > ID ;
// We need to draw a background at the root level if requested by ImGuiDockNodeFlags_PassthruCentralNode, but we will only know the correct pos/size after
// processing the resizing splitters. So we are using the DrawList channel splitting facility to submit drawing primitives out of order!
@ -12647,13 +12647,13 @@ static void ImGui::DockNodeUpdate(ImGuiDockNode* node)
else
{
node - > WantCloseAll = false ;
node - > WantCloseTabI D = 0 ;
node - > WantCloseTabI d = 0 ;
node - > IsFocused = false ;
}
if ( node - > TabBar & & node - > TabBar - > SelectedTabId )
node - > SelectedTabI D = node - > TabBar - > SelectedTabId ;
node - > SelectedTabI d = node - > TabBar - > SelectedTabId ;
else if ( node - > Windows . Size > 0 )
node - > SelectedTabI D = node - > Windows [ 0 ] - > ID ;
node - > SelectedTabI d = node - > Windows [ 0 ] - > ID ;
// Draw payload drop target
if ( host_window & & node - > IsVisible )
@ -12733,16 +12733,16 @@ static void ImGui::DockNodeUpdateTabBar(ImGuiDockNode* node, ImGuiWindow* host_w
const bool node_was_active = ( node - > LastFrameActive + 1 = = g . FrameCount ) ;
const bool closed_all = node - > WantCloseAll & & node_was_active ;
const ImGuiID closed_one = node - > WantCloseTabI D & & node_was_active ;
const ImGuiID closed_one = node - > WantCloseTabI d & & node_was_active ;
node - > WantCloseAll = false ;
node - > WantCloseTabI D = 0 ;
node - > WantCloseTabI d = 0 ;
// Decide if we should use a focused title bar color
bool is_focused = false ;
ImGuiDockNode * root_node = DockNodeGetRootNode ( node ) ;
if ( g . NavWindowingTarget )
is_focused = ( g . NavWindowingTarget - > DockNode = = node ) ;
else if ( g . NavWindow & & g . NavWindow - > RootWindowForTitleBarHighlight = = host_window - > RootWindow & & root_node - > LastFocusedNodeI D = = node - > ID )
else if ( g . NavWindow & & g . NavWindow - > RootWindowForTitleBarHighlight = = host_window - > RootWindow & & root_node - > LastFocusedNodeI d = = node - > ID )
is_focused = true ;
// Hidden tab bar will show a triangle on the upper-left (in Begin)
@ -12849,8 +12849,8 @@ static void ImGui::DockNodeUpdateTabBar(ImGuiDockNode* node, ImGuiWindow* host_w
}
// Selected newly added tabs, or persistent tab ID if the tab bar was just recreated
if ( tab_bar_is_recreated & & TabBarFindTabByID ( tab_bar , node - > SelectedTabI D ) ! = NULL )
tab_bar - > SelectedTabId = tab_bar - > NextSelectedTabId = node - > SelectedTabI D ;
if ( tab_bar_is_recreated & & TabBarFindTabByID ( tab_bar , node - > SelectedTabI d ) ! = NULL )
tab_bar - > SelectedTabId = tab_bar - > NextSelectedTabId = node - > SelectedTabI d ;
else if ( tab_bar - > Tabs . Size > tabs_count_old )
tab_bar - > SelectedTabId = tab_bar - > NextSelectedTabId = tab_bar - > Tabs . back ( ) . Window - > ID ;
@ -12880,7 +12880,7 @@ static void ImGui::DockNodeUpdateTabBar(ImGuiDockNode* node, ImGuiWindow* host_w
bool tab_open = true ;
TabItemEx ( tab_bar , window - > Name , window - > HasCloseButton ? & tab_open : NULL , tab_item_flags , window ) ;
if ( ! tab_open )
node - > WantCloseTabI D = window - > ID ;
node - > WantCloseTabI d = window - > ID ;
if ( tab_bar - > VisibleTabId = = window - > ID )
node - > VisibleWindow = window ;
@ -12912,7 +12912,7 @@ static void ImGui::DockNodeUpdateTabBar(ImGuiDockNode* node, ImGuiWindow* host_w
if ( CloseButton ( host_window - > GetID ( " #CLOSE " ) , title_bar_rect . GetTR ( ) + ImVec2 ( - style . FramePadding . x * 2.0f - button_sz , 0.0f ) ) )
if ( ImGuiTabItem * tab = TabBarFindTabByID ( tab_bar , tab_bar - > VisibleTabId ) )
{
node - > WantCloseTabI D = tab - > ID ;
node - > WantCloseTabI d = tab - > ID ;
TabBarCloseTab ( tab_bar , tab ) ;
}
//if (IsItemActive())
@ -13697,7 +13697,7 @@ void ImGui::SetWindowDock(ImGuiWindow* window, ImGuiID dock_id, ImGuiCond cond)
}
else
{
dock_id = new_node - > LastFocusedNodeI D ;
dock_id = new_node - > LastFocusedNodeI d ;
}
}
@ -14416,7 +14416,7 @@ void ImGui::BeginDocked(ImGuiWindow* window, bool* p_open)
if ( node - > TabBar & & node - > TabBar - > CurrFrameVisible ! = - 1 )
window - > DockOrder = ( short ) DockNodeGetTabOrder ( window ) ;
if ( ( node - > WantCloseAll | | node - > WantCloseTabI D = = window - > ID ) & & p_open ! = NULL )
if ( ( node - > WantCloseAll | | node - > WantCloseTabI d = = window - > ID ) & & p_open ! = NULL )
* p_open = false ;
// Update ChildId to allow returning from Child to Parent with Escape
@ -14588,9 +14588,9 @@ static void ImGui::DockSettingsHandler_ReadLine(ImGuiContext* ctx, ImGuiSettings
else if ( strncmp ( line , " DockSpace " , 9 ) = = 0 ) { line = ImStrSkipBlank ( line + strlen ( " DockSpace " ) ) ; node . Flags | = ImGuiDockNodeFlags_DockSpace ; }
else return ;
if ( sscanf ( line , " ID=0x%08X%n " , & node . ID , & r ) = = 1 ) { line + = r ; } else return ;
if ( sscanf ( line , " Parent=0x%08X%n " , & node . ParentNodeI D , & r ) = = 1 ) { line + = r ; if ( node . ParentNodeI D = = 0 ) return ; }
if ( sscanf ( line , " Window=0x%08X%n " , & node . ParentWindowI D , & r ) = = 1 ) { line + = r ; if ( node . ParentWindowI D = = 0 ) return ; }
if ( node . ParentNodeI D = = 0 )
if ( sscanf ( line , " Parent=0x%08X%n " , & node . ParentNodeI d , & r ) = = 1 ) { line + = r ; if ( node . ParentNodeI d = = 0 ) return ; }
if ( sscanf ( line , " Window=0x%08X%n " , & node . ParentWindowI d , & r ) = = 1 ) { line + = r ; if ( node . ParentWindowI d = = 0 ) return ; }
if ( node . ParentNodeI d = = 0 )
{
if ( sscanf ( line , " Pos=%i,%i%n " , & x , & y , & r ) = = 2 ) { line + = r ; node . Pos = ImVec2ih ( ( short ) x , ( short ) y ) ; } else return ;
if ( sscanf ( line , " Size=%i,%i%n " , & x , & y , & r ) = = 2 ) { line + = r ; node . Size = ImVec2ih ( ( short ) x , ( short ) y ) ; } else return ;
@ -14606,10 +14606,10 @@ static void ImGui::DockSettingsHandler_ReadLine(ImGuiContext* ctx, ImGuiSettings
if ( sscanf ( line , " HiddenTabBar=%d%n " , & x , & r ) = = 1 ) { line + = r ; if ( x ! = 0 ) node . Flags | = ImGuiDockNodeFlags_HiddenTabBar ; }
if ( sscanf ( line , " NoWindowMenuButton=%d%n " , & x , & r ) = = 1 ) { line + = r ; if ( x ! = 0 ) node . Flags | = ImGuiDockNodeFlags_NoWindowMenuButton ; }
if ( sscanf ( line , " NoCloseButton=%d%n " , & x , & r ) = = 1 ) { line + = r ; if ( x ! = 0 ) node . Flags | = ImGuiDockNodeFlags_NoCloseButton ; }
if ( sscanf ( line , " Selected=0x%08X%n " , & node . SelectedWindowI D , & r ) = = 1 ) { line + = r ; }
if ( sscanf ( line , " Selected=0x%08X%n " , & node . SelectedWindowI d , & r ) = = 1 ) { line + = r ; }
ImGuiDockContext * dc = ctx - > DockContext ;
if ( node . ParentNodeI D ! = 0 )
if ( ImGuiDockNodeSettings * parent_settings = DockSettingsFindNodeSettings ( ctx , node . ParentNodeI D ) )
if ( node . ParentNodeI d ! = 0 )
if ( ImGuiDockNodeSettings * parent_settings = DockSettingsFindNodeSettings ( ctx , node . ParentNodeI d ) )
node . Depth = parent_settings - > Depth + 1 ;
dc - > SettingsNodes . push_back ( node ) ;
}
@ -14619,9 +14619,9 @@ static void DockSettingsHandler_DockNodeToSettings(ImGuiDockContext* dc, ImGuiDo
ImGuiDockNodeSettings node_settings ;
IM_ASSERT ( depth < ( 1 < < ( sizeof ( node_settings . Depth ) < < 3 ) ) ) ;
node_settings . ID = node - > ID ;
node_settings . ParentNodeI D = node - > ParentNode ? node - > ParentNode - > ID : 0 ;
node_settings . ParentWindowI D = ( node - > IsDockSpace ( ) & & node - > HostWindow & & node - > HostWindow - > ParentWindow ) ? node - > HostWindow - > ParentWindow - > ID : 0 ;
node_settings . SelectedWindowI D = node - > SelectedTabID ;
node_settings . ParentNodeI d = node - > ParentNode ? node - > ParentNode - > ID : 0 ;
node_settings . ParentWindowI d = ( node - > IsDockSpace ( ) & & node - > HostWindow & & node - > HostWindow - > ParentWindow ) ? node - > HostWindow - > ParentWindow - > ID : 0 ;
node_settings . SelectedWindowI d = node - > SelectedTabId ;
node_settings . SplitAxis = node - > IsSplitNode ( ) ? ( char ) node - > SplitAxis : ImGuiAxis_None ;
node_settings . Depth = ( char ) depth ;
node_settings . Flags = ( node - > LocalFlags & ImGuiDockNodeFlags_SavedFlagsMask_ ) ;
@ -14663,14 +14663,14 @@ static void ImGui::DockSettingsHandler_WriteAll(ImGuiContext* ctx, ImGuiSettings
const ImGuiDockNodeSettings * node_settings = & dc - > SettingsNodes [ node_n ] ;
buf - > appendf ( " %*s%s%*s " , node_settings - > Depth * 2 , " " , ( node_settings - > Flags & ImGuiDockNodeFlags_DockSpace ) ? " DockSpace " : " DockNode " , ( max_depth - node_settings - > Depth ) * 2 , " " ) ; // Text align nodes to facilitate looking at .ini file
buf - > appendf ( " ID=0x%08X " , node_settings - > ID ) ;
if ( node_settings - > ParentNodeI D )
if ( node_settings - > ParentNodeI d )
{
buf - > appendf ( " Parent=0x%08X SizeRef=%d,%d " , node_settings - > ParentNodeI D , node_settings - > SizeRef . x , node_settings - > SizeRef . y ) ;
buf - > appendf ( " Parent=0x%08X SizeRef=%d,%d " , node_settings - > ParentNodeI d , node_settings - > SizeRef . x , node_settings - > SizeRef . y ) ;
}
else
{
if ( node_settings - > ParentWindowI D )
buf - > appendf ( " Window=0x%08X " , node_settings - > ParentWindowI D ) ;
if ( node_settings - > ParentWindowI d )
buf - > appendf ( " Window=0x%08X " , node_settings - > ParentWindowI d ) ;
buf - > appendf ( " Pos=%d,%d Size=%d,%d " , node_settings - > Pos . x , node_settings - > Pos . y , node_settings - > Size . x , node_settings - > Size . y ) ;
}
if ( node_settings - > SplitAxis ! = ImGuiAxis_None )
@ -14687,8 +14687,8 @@ static void ImGui::DockSettingsHandler_WriteAll(ImGuiContext* ctx, ImGuiSettings
buf - > appendf ( " NoWindowMenuButton=1 " ) ;
if ( node_settings - > Flags & ImGuiDockNodeFlags_NoCloseButton )
buf - > appendf ( " NoCloseButton=1 " ) ;
if ( node_settings - > SelectedWindowI D )
buf - > appendf ( " Selected=0x%08X " , node_settings - > SelectedWindowI D ) ;
if ( node_settings - > SelectedWindowI d )
buf - > appendf ( " Selected=0x%08X " , node_settings - > SelectedWindowI d ) ;
# if IMGUI_DEBUG_INI_SETTINGS
// [DEBUG] Include comments in the .ini file to ease debugging
@ -15211,7 +15211,7 @@ void ImGui::ShowMetricsWindow(bool* p_open)
node - > Pos . x , node - > Pos . y , node - > Size . x , node - > Size . y , node - > SizeRef . x , node - > SizeRef . y ) ;
NodeWindow ( node - > HostWindow , " HostWindow " ) ;
NodeWindow ( node - > VisibleWindow , " VisibleWindow " ) ;
ImGui : : BulletText ( " SelectedTabID: 0x%08X, LastFocusedNodeID: 0x%08X " , node - > SelectedTabI D, node - > LastFocusedNodeID ) ;
ImGui : : BulletText ( " SelectedTabID: 0x%08X, LastFocusedNodeID: 0x%08X " , node - > SelectedTabI d, node - > LastFocusedNodeId ) ;
ImGui : : BulletText ( " Misc:%s%s%s%s " , node - > IsDockSpace ( ) ? " IsDockSpace " : " " , node - > IsCentralNode ( ) ? " IsCentralNode " : " " , ( g . FrameCount - node - > LastFrameAlive < 2 ) ? " IsAlive " : " " , ( g . FrameCount - node - > LastFrameActive < 2 ) ? " IsActive " : " " ) ;
if ( ImGui : : TreeNode ( " flags " , " LocalFlags: 0x%04X SharedFlags: 0x%04X " , node - > LocalFlags , node - > SharedFlags ) )
{
@ -15372,14 +15372,14 @@ void ImGui::ShowMetricsWindow(bool* p_open)
{
ImGuiDockNodeSettings * settings = & dc - > SettingsNodes [ n ] ;
const char * selected_tab_name = NULL ;
if ( settings - > SelectedWindowI D )
if ( settings - > SelectedWindowI d )
{
if ( ImGuiWindow * window = FindWindowByID ( settings - > SelectedWindowI D ) )
if ( ImGuiWindow * window = FindWindowByID ( settings - > SelectedWindowI d ) )
selected_tab_name = window - > Name ;
else if ( ImGuiWindowSettings * window_settings = FindWindowSettings ( settings - > SelectedWindowI D ) )
else if ( ImGuiWindowSettings * window_settings = FindWindowSettings ( settings - > SelectedWindowI d ) )
selected_tab_name = window_settings - > GetName ( ) ;
}
ImGui : : BulletText ( " Node %08X, Parent %08X, SelectedTab %08X ('%s') " , settings - > ID , settings - > ParentNodeI D, settings - > SelectedWindowID , selected_tab_name ? selected_tab_name : settings - > SelectedWindowI D ? " N/A " : " " ) ;
ImGui : : BulletText ( " Node %08X, Parent %08X, SelectedTab %08X ('%s') " , settings - > ID , settings - > ParentNodeI d, settings - > SelectedWindowId , selected_tab_name ? selected_tab_name : settings - > SelectedWindowI d ? " N/A " : " " ) ;
}
ImGui : : TreePop ( ) ;
}