/// <summary> /// Document loaded. /// </summary> public override void OnDocumentLoaded() { base.OnDocumentLoaded(); this.filteredErrorListData.Clear(); // load filter file if ((this.ModelData.CurrentModelContext.RootElement as IParentModelElement) != null) { string path = (this.ModelData.CurrentModelContext.RootElement as IParentModelElement).DomainFilePath; if (path != null) { System.IO.FileInfo fileInfo = new System.IO.FileInfo(path); string name = fileInfo.Name.Replace(fileInfo.Extension, ""); filterFilePath = fileInfo.Directory + "\\" + name + FilterFileNameExtension; if (System.IO.File.Exists(filterFilePath)) { this.filteredErrorListData = FilteredErrorListData.Deserialize(filterFilePath); } } else { filterFilePath = null; } } else { filterFilePath = null; } UpdateDisplayList(); }
/// <summary> /// Document saved. /// </summary> /// <param name="args"></param> public virtual void OnDocumentSaved(DocumentEventArgs args) { if ((this.ModelData.CurrentModelContext.RootElement as IParentModelElement) != null) { string path = (this.ModelData.CurrentModelContext.RootElement as IParentModelElement).DomainFilePath; System.IO.FileInfo fileInfo = new System.IO.FileInfo(path); string name = fileInfo.Name.Replace(fileInfo.Extension, ""); filterFilePath = fileInfo.Directory + "\\" + name + FilterFileNameExtension; FilteredErrorListData.Serialize(filterFilePath, this.filteredErrorListData); } this.EventManager.GetEvent <DocumentSavedEvent>().Subscribe(OnDocumentSaved); }
public MainErrorListViewModel(ViewModelStore viewModelStore) : base(viewModelStore) { filteredErrorListData = new FilteredErrorListData(); toggleErrorCategory = new DelegateCommand(ToggleErrorCategory_Executed); toggleMessageCategory = new DelegateCommand(ToggleMessageCategory_Executed); toggleWarningCategory = new DelegateCommand(ToggleWarningCategory_Executed); toggleFilteredItems = new DelegateCommand(ToggleFilteredItems_Executed); navigateCommand = new DelegateCommand(NavigateCommand_Executed); filterCommand = new DelegateCommand(FilterCommand_Executed); unfilterCommand = new DelegateCommand(UnfilterCommand_Executed); sortByDescriptionCommand = new DelegateCommand(SortByDescriptionCommand_Executed); sortByCategoryCommand = new DelegateCommand(SortByCategoryCommand_Executed); sortByNumberCommand = new DelegateCommand(SortByNumberCommand_Executed); sortBySourceDisplayNameCommand = new DelegateCommand(SortBySourceDisplayNameCommand_Executed); selectedErrorListItems = new ObservableCollection <BaseErrorListItemViewModel>(); selectedErrorListItems.CollectionChanged += new System.Collections.Specialized.NotifyCollectionChangedEventHandler(selectedErrorListItems_CollectionChanged); unfilteredErrorListItems = new ObservableCollection <BaseErrorListItemViewModel>(); filteredErrorListItems = new ObservableCollection <BaseErrorListItemViewModel>(); displayedErrorListItems = new ObservableCollection <BaseErrorListItemViewModel>(); displayedErrorListItemsRO = new ReadOnlyObservableCollection <BaseErrorListItemViewModel>(displayedErrorListItems); hiddenCategories = new List <ErrorListItemCategory>(); if (this.ViewModelStore.Options != null) { if (!this.ViewModelStore.Options.ErrorCategoryVisible) { hiddenCategories.Add(ErrorListItemCategory.Error); } } if (this.ViewModelStore.Options != null) { if (!this.ViewModelStore.Options.InfoCategoryVisible) { hiddenCategories.Add(ErrorListItemCategory.Message); } } if (this.ViewModelStore.Options != null) { if (!this.ViewModelStore.Options.WarningCategoryVisible) { hiddenCategories.Add(ErrorListItemCategory.Warning); } } if (this.ViewModelStore.Options != null) { if (this.ViewModelStore.Options.FilteredCategoryVisible) { showFilteredItems = true; } } // create menu menuOptions = new ObservableCollection <MenuItemViewModel>(); navigateMenuItem = new MenuItemViewModel(viewModelStore, "Navigate"); navigateMenuItem.IconUrl = "pack://application:,,,/Tum.PDE.ToolFramework.Images;component/Views/Navigate-16.png"; navigateMenuItem.Command = this.NavigateCommand; menuOptions.Add(navigateMenuItem); menuOptions.Add(new SeparatorMenuItemViewModel(viewModelStore)); copyMenuItem = new MenuItemViewModel(viewModelStore, "Copy"); copyMenuItem.IconUrl = "pack://application:,,,/Tum.PDE.ToolFramework.Images;component/Views/Copy-16.png"; copyMenuItem.Command = this.CopyCommand; menuOptions.Add(copyMenuItem); separatorBeforeFilterItem = new SeparatorMenuItemViewModel(viewModelStore); filterMenuItem = new MenuItemViewModel(viewModelStore, "Filter"); filterMenuItem.Command = this.FilterCommand; unFilterMenuItem = new MenuItemViewModel(viewModelStore, "Unfilter"); unFilterMenuItem.Command = this.UnfilterCommand; this.EventManager.GetEvent <ErrorListClearItems>().Subscribe(new Action <BaseViewModel>(ClearItems)); this.EventManager.GetEvent <ErrorListAddItem>().Subscribe(new Action <BaseErrorListItemViewModel>(AddItem)); this.EventManager.GetEvent <ErrorListAddItems>().Subscribe(new Action <List <BaseErrorListItemViewModel> >(AddItems)); this.EventManager.GetEvent <ErrorListRemoveItem>().Subscribe(new Action <Guid>(RemoveItem)); this.EventManager.GetEvent <DocumentSavedEvent>().Subscribe(OnDocumentSaved); this.EventManager.GetEvent <DocumentClosingEvent>().Subscribe(OnDocumentClosing); }
public MainErrorListViewModel(ViewModelStore viewModelStore) : base(viewModelStore) { filteredErrorListData = new FilteredErrorListData(); toggleErrorCategory = new DelegateCommand(ToggleErrorCategory_Executed); toggleMessageCategory = new DelegateCommand(ToggleMessageCategory_Executed); toggleWarningCategory = new DelegateCommand(ToggleWarningCategory_Executed); toggleFilteredItems = new DelegateCommand(ToggleFilteredItems_Executed); navigateCommand = new DelegateCommand(NavigateCommand_Executed); filterCommand = new DelegateCommand(FilterCommand_Executed); unfilterCommand = new DelegateCommand(UnfilterCommand_Executed); sortByDescriptionCommand = new DelegateCommand(SortByDescriptionCommand_Executed); sortByCategoryCommand = new DelegateCommand(SortByCategoryCommand_Executed); sortByNumberCommand = new DelegateCommand(SortByNumberCommand_Executed); sortBySourceDisplayNameCommand = new DelegateCommand(SortBySourceDisplayNameCommand_Executed); selectedErrorListItems = new ObservableCollection<BaseErrorListItemViewModel>(); selectedErrorListItems.CollectionChanged += new System.Collections.Specialized.NotifyCollectionChangedEventHandler(selectedErrorListItems_CollectionChanged); unfilteredErrorListItems = new ObservableCollection<BaseErrorListItemViewModel>(); filteredErrorListItems = new ObservableCollection<BaseErrorListItemViewModel>(); displayedErrorListItems = new ObservableCollection<BaseErrorListItemViewModel>(); displayedErrorListItemsRO = new ReadOnlyObservableCollection<BaseErrorListItemViewModel>(displayedErrorListItems); hiddenCategories = new List<ErrorListItemCategory>(); if (this.ViewModelStore.Options != null) if (!this.ViewModelStore.Options.ErrorCategoryVisible) hiddenCategories.Add(ErrorListItemCategory.Error); if (this.ViewModelStore.Options != null) if (!this.ViewModelStore.Options.InfoCategoryVisible) hiddenCategories.Add(ErrorListItemCategory.Message); if (this.ViewModelStore.Options != null) if (!this.ViewModelStore.Options.WarningCategoryVisible) hiddenCategories.Add(ErrorListItemCategory.Warning); if (this.ViewModelStore.Options != null) if (this.ViewModelStore.Options.FilteredCategoryVisible) showFilteredItems = true; // create menu menuOptions = new ObservableCollection<MenuItemViewModel>(); navigateMenuItem = new MenuItemViewModel(viewModelStore, "Navigate"); navigateMenuItem.IconUrl = "pack://application:,,,/Tum.PDE.ToolFramework.Images;component/Views/Navigate-16.png"; navigateMenuItem.Command = this.NavigateCommand; menuOptions.Add(navigateMenuItem); menuOptions.Add(new SeparatorMenuItemViewModel(viewModelStore)); copyMenuItem = new MenuItemViewModel(viewModelStore, "Copy"); copyMenuItem.IconUrl = "pack://application:,,,/Tum.PDE.ToolFramework.Images;component/Views/Copy-16.png"; copyMenuItem.Command = this.CopyCommand; menuOptions.Add(copyMenuItem); separatorBeforeFilterItem = new SeparatorMenuItemViewModel(viewModelStore); filterMenuItem = new MenuItemViewModel(viewModelStore, "Filter"); filterMenuItem.Command = this.FilterCommand; unFilterMenuItem = new MenuItemViewModel(viewModelStore, "Unfilter"); unFilterMenuItem.Command = this.UnfilterCommand; this.EventManager.GetEvent<ErrorListClearItems>().Subscribe(new Action<BaseViewModel>(ClearItems)); this.EventManager.GetEvent<ErrorListAddItem>().Subscribe(new Action<BaseErrorListItemViewModel>(AddItem)); this.EventManager.GetEvent<ErrorListAddItems>().Subscribe(new Action<List<BaseErrorListItemViewModel>>(AddItems)); this.EventManager.GetEvent<ErrorListRemoveItem>().Subscribe(new Action<Guid>(RemoveItem)); this.EventManager.GetEvent<DocumentSavedEvent>().Subscribe(OnDocumentSaved); this.EventManager.GetEvent<DocumentClosingEvent>().Subscribe(OnDocumentClosing); }
/// <summary> /// Document loaded. /// </summary> public override void OnDocumentLoaded() { base.OnDocumentLoaded(); this.filteredErrorListData.Clear(); // load filter file if ((this.ModelData.CurrentModelContext.RootElement as IParentModelElement) != null) { string path = (this.ModelData.CurrentModelContext.RootElement as IParentModelElement).DomainFilePath; if (path != null) { System.IO.FileInfo fileInfo = new System.IO.FileInfo(path); string name = fileInfo.Name.Replace(fileInfo.Extension, ""); filterFilePath = fileInfo.Directory + "\\" + name + FilterFileNameExtension; if (System.IO.File.Exists(filterFilePath)) this.filteredErrorListData = FilteredErrorListData.Deserialize(filterFilePath); } else filterFilePath = null; } else filterFilePath = null; UpdateDisplayList(); }