public void SetToolbarBreadCrumbs() { m_Breadcrumbs.Clear(); var allHierarchyDocuments = new List <BuilderDocumentOpenUXML>(); var allOpenDocuments = m_PaneWindow.document.openUXMLFiles; foreach (var Doc in allOpenDocuments) { if (Doc.openSubDocumentParentIndex > -1 || allOpenDocuments.IndexOf(Doc) == 0) { allHierarchyDocuments.Add(Doc); } } if (allHierarchyDocuments.Count == 1) { m_BreadcrumbsToolbar.style.display = DisplayStyle.None; return; } m_BreadcrumbsToolbar.style.display = DisplayStyle.Flex; foreach (var Doc in allHierarchyDocuments) { string docName = BreadcrumbFileName(Doc); Action onBreadCrumbClick = () => { document.GoToSubdocument(m_Viewport.documentRootElement, m_PaneWindow, Doc); m_Viewport.SetViewFromDocumentSetting(); }; bool clickedOnSameDocument = document.activeOpenUXMLFile == Doc; m_Breadcrumbs.PushItem(docName, clickedOnSameDocument ? null : onBreadCrumbClick); } }
void LoadDocumentInternal(VisualTreeAsset visualTreeAsset) { m_Selection.ClearSelection(null); document.LoadDocument(visualTreeAsset, m_Viewport.documentRootElement); m_Viewport.SetViewFromDocumentSetting(); m_Inspector?.canvasInspector.Refresh(); m_Selection.NotifyOfStylingChange(document); m_Selection.NotifyOfHierarchyChange(document); m_Library?.ResetCurrentlyLoadedUxmlStyles(); try { m_LastSavePath = Path.GetDirectoryName(document.uxmlPath); } catch { m_LastSavePath = "Assets"; } OnAfterBuilderDeserialize(); }
void LoadDocumentInternal(VisualTreeAsset visualTreeAsset) { m_Selection.ClearSelection(null); document.LoadDocument(visualTreeAsset, m_Viewport.documentElement); m_Viewport.SetViewFromDocumentSetting(); m_Inspector?.canvasInspector.Refresh(); m_Selection.NotifyOfStylingChange(document); m_Selection.NotifyOfHierarchyChange(document); m_Library?.ResetCurrentlyLoadedUxmlStyles(); m_LastSavePath = Path.GetDirectoryName(document.uxmlPath); SetViewportSubTitle(); ChangeCanvasTheme(document.currentCanvasTheme); }