/// <summary> /// method executes via interface call when the attached view is loaded. /// </summary> void IDocumentCanUnload.OnViewLoaded() { lock (lockObject) { DocumentViewIsLoaded = true; if (this.ActionOnLoad == RequestActionOnLoad.LoadItems) { this.ActionOnLoad = RequestActionOnLoad.None; var pageViewmodel = CurrentEditPage as EditTranslationsDocumentViewModel; if (pageViewmodel != null) { ISolutionItem selectedParent = null; if (SolutionSelectedItem != null) { selectedParent = SolutionSelectedItem.GetParent(); } if (selectedParent != null) { LoadEditPage(pageViewmodel, selectedParent.ItemPathName, SolutionSelectedItem.ItemPathName); } } } } }
/// <summary> /// Perform default selection to get users started without an additional extra click /// </summary> internal void PerformDefaultSeleciton() { mSolutionSelectedItem = null; ISolutionItem selectItemParent = null; ISolutionItem selectItem = null; if (mSolution.Children.Count > 0) { var root = mSolution.Children[0] as ISolutionItem; if (root != null) { root.IsExpanded = true; selectItem = root; if (root.Children.Count > 0) { // Get first project var item = root.SearchFirstItemByType(TypeOfSolutionItem.Project); if (item != null) { if (item.Exists == ItemExisits.DoesExist) { selectItemParent = selectItem.GetParent(); selectItem = item; } item.IsExpanded = true; var expandedItem = item.GetParent(); while (expandedItem != null) { expandedItem.IsExpanded = true; expandedItem = expandedItem.GetParent(); } item = selectItem.SearchFirstItemByType(TypeOfSolutionItem.File); if (item != null) { if (item.Exists == ItemExisits.DoesExist) { selectItemParent = selectItem.GetParent(); selectItem = item; } item.IsExpanded = true; expandedItem = item.GetParent(); while (expandedItem != null) { expandedItem.IsExpanded = true; expandedItem = expandedItem.GetParent(); } } } } } if (selectItem != null) { selectItem.IsSelected = true; SolutionSelectedItem = selectItem; } } CurrentEditPage = CreateDocumentPageViewModel(selectItem.GetParent(), selectItem, this.mProcessItems); var pageViewmodel = CurrentEditPage as EditTranslationsDocumentViewModel; if (pageViewmodel != null) { this.ActionOnLoad = RequestActionOnLoad.LoadItems; } // Load source and target files belonging to this project (if any) if (CurrentEditPage != null && selectItemParent != null && pageViewmodel != null) { if (selectItemParent.TypeOfItem == TypeOfSolutionItem.Project) { var currentPage = CurrentEditPage as DocumentDirtyChangedViewModelBase; if (currentPage != null) { // Is current document a EditTranslationsDocumentViewModel? // Then try to load default data for it... currentPage.DirtyFlagChangedEvent += CurrentEditPage_DirtyFlagChangedEvent; ////pageViewmodel.LoadEditPage(project.SourceFile.Path, child.Path); } } } }