Пример #1
0
        /// <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();
        }
Пример #2
0
        /// <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);
        }
Пример #3
0
        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();
        }