Exemplo n.º 1
0
void TreeDlg::OnTreeExpand() 
{
    GetDlgItems();
    HTREEITEM hFirstVisible = mpTreeCtrl->GetFirstVisibleItem();
    RecursiveExpand(mpTreeCtrl->GetSelectedItem());
    if (hFirstVisible) mpTreeCtrl->SelectSetFirstVisible(hFirstVisible);
}
Exemplo n.º 2
0
void SHierarchyView::RestoreExpandedItems()
{
	for ( TSharedPtr<FHierarchyModel>& Model : RootWidgets )
	{
		RecursiveExpand(Model);
	}
}
Exemplo n.º 3
0
void TreeDlg::RecursiveExpand(HTREEITEM hItem)
{
    GetDlgItems();
    mpTreeCtrl->Expand(hItem, TVE_EXPAND);
    if (mpTreeCtrl->ItemHasChildren(hItem))
    {
        HTREEITEM hChild = mpTreeCtrl->GetChildItem(hItem);
        while (hChild != NULL)
        {
            RecursiveExpand(hChild);
            hChild = mpTreeCtrl->GetNextSiblingItem(hChild);
        }
    }            
}
Exemplo n.º 4
0
void SHierarchyView::RecursiveExpand(TSharedPtr<FHierarchyModel>& Model)
{
	if ( Model->IsExpanded() )
	{
		WidgetTreeView->SetItemExpansion(Model, true);

		TArray< TSharedPtr<FHierarchyModel> > Children;
		Model->GatherChildren(Children);

		for ( TSharedPtr<FHierarchyModel>& ChildModel : Children )
		{
			RecursiveExpand(ChildModel);
		}
	}
}