Ejemplo n.º 1
0
 private void OnSelectedAccountChanged()
 {
     _accountDetailsViewModel.Account = SelectedAccount;
     CurrentViewModel = _accountDetailsViewModel;
     EditCommand.RaiseCanExecuteChanged();
     RemoveCommand.RaiseCanExecuteChanged();
 }
 private void RemoveState()
 {
     _numberOfStates--;
     _triggerStateDataModels.Remove(_triggerStateDataModels.Last());
     ObservableTriggerStates.Refresh();
     RemoveCommand.RaiseCanExecuteChanged();
 }
Ejemplo n.º 3
0
 /// <summary>
 /// Check the commands' enabled state
 /// </summary>
 private void CheckCommands()
 {
     RunCommand.RaiseCanExecuteChanged();
     RemoveCommand.RaiseCanExecuteChanged();
     RunReportCommand.RaiseCanExecuteChanged();
     RunExportCommand.RaiseCanExecuteChanged();
 }
        /// <summary>
        /// Add a input file.
        /// </summary>
        /// <param name="file">The path of the file</param>
        public async Task AddInputFile(string file)
        {
            switch (OutOfProcessHelper.TestSourceFile(file))
            {
            //File is corrupt pdf.
            case OutOfProcessHelper.SourceTestResult.Unreadable:
                //Tell the user the pdf is corrupt.
                Application.Current.Dispatcher.BeginInvoke(new Action(() => ((MetroWindow)Application.Current.MainWindow).ShowMessageAsync("The file " + Path.GetFileName(file) + " could not be opened as a PDF or image", "Some thing went wrong when opening " + Path.GetFileName(file))));
                break;

            //File is a valid pdf.
            case OutOfProcessHelper.SourceTestResult.Ok:
                //Add the pdf to the ListBox.
                Application.Current.Dispatcher.Invoke(new Action(() => Files.Add(new PDFItem(file, null))));
                break;

            //File is a image (maybe not valid!).
            case OutOfProcessHelper.SourceTestResult.Image:
                break;
            }
            //Update Commands
            Application.Current.Dispatcher.Invoke(() => MergeCommand.RaiseCanExecuteChanged());
            MoveUpCommand.RaiseCanExecuteChanged();
            MoveDownCommand.RaiseCanExecuteChanged();
            Application.Current.Dispatcher.Invoke(() => RemoveCommand.RaiseCanExecuteChanged());
        }
 private void AddState()
 {
     _numberOfStates++;
     _triggerStateDataModels.Add(new TriggerStateDataModel(_avalibleSignals, _numberOfStates));
     ObservableTriggerStates.Refresh();
     RemoveCommand.RaiseCanExecuteChanged();
 }
Ejemplo n.º 6
0
 protected override void OnPropertyChanged(string propertyName)
 {
     base.OnPropertyChanged(propertyName);
     if (propertyName == "CanSave")
     {
         SaveCommand.RaiseCanExecuteChanged();
     }
     else if (propertyName == "CanCancel")
     {
         CancelCommand.RaiseCanExecuteChanged();
     }
     else if (propertyName == "CanDelete")
     {
         DeleteCommand.RaiseCanExecuteChanged();
     }
     else if (propertyName == "CanRemove")
     {
         RemoveCommand.RaiseCanExecuteChanged();
     }
     else if (propertyName == "CanAddNew")
     {
         AddCommand.RaiseCanExecuteChanged();
     }
     else if (propertyName == "IsBusy")
     {
         RefreshCommands();
     }
 }
Ejemplo n.º 7
0
 private void Remove()
 {
     Entries.Remove(EntrySelected);
     EntrySelected = null;
     NotifyPropertyChanged(nameof(EntrySelected));
     NotifyPropertyChanged(nameof(Total));
     RemoveCommand.RaiseCanExecuteChanged();
 }
Ejemplo n.º 8
0
 private void ChangeTrackingService_HasChangesChanged(object sender, EventArgs e)
 {
     // let the commands re-evaluate
     SaveCommand.RaiseCanExecuteChanged();
     GetCommand.RaiseCanExecuteChanged();
     RemoveCommand.RaiseCanExecuteChanged();
     RevertCommand.RaiseCanExecuteChanged();
 }
Ejemplo n.º 9
0
 private void RemoveAccount()
 {
     if (SelectedAccount != null)
     {
         _allAccounts.Remove(SelectedAccount);
         EditCommand.RaiseCanExecuteChanged();
         RemoveCommand.RaiseCanExecuteChanged();
     }
 }
Ejemplo n.º 10
0
 private void RefreshCommands()
 {
     SaveCommand.RaiseCanExecuteChanged();
     CancelCommand.RaiseCanExecuteChanged();
     DeleteCommand.RaiseCanExecuteChanged();
     CreateCommand.RaiseCanExecuteChanged();
     RemoveCommand.RaiseCanExecuteChanged();
     AddCommand.RaiseCanExecuteChanged();
 }
Ejemplo n.º 11
0
        private void InitialiseNewCustomerContact()
        {
            if (NewCustomerContact != null)
            {
                NewCustomerContact.PropertyChanged -= NewCustomerContact_PropertyChanged;
            }

            NewCustomerContact = SelectedCustomerContact ?? new CustomerContact();
            NewCustomerContact.PropertyChanged += NewCustomerContact_PropertyChanged;

            SaveCommand.RaiseCanExecuteChanged();
            RemoveCommand.RaiseCanExecuteChanged();
        }
Ejemplo n.º 12
0
 private void NavigateEditAccount()
 {
     try
     {
         _addEditAccountViewModel.EditMode = true;
         _addEditAccountViewModel.Account  = ConvertToEditableACcount(SelectedAccount);
         CurrentViewModel = _addEditAccountViewModel;
         EditCommand.RaiseCanExecuteChanged();
         RemoveCommand.RaiseCanExecuteChanged();
     }
     catch (Exception ex)
     {
         Logger.LogException(ex);
     }
 }
Ejemplo n.º 13
0
 private void NavigateAddAccount()
 {
     try
     {
         _addEditAccountViewModel.EditMode = false;
         _addEditAccountViewModel.Account  = new EditableAccount();
         CurrentViewModel = _addEditAccountViewModel;
         EditCommand.RaiseCanExecuteChanged();
         RemoveCommand.RaiseCanExecuteChanged();
     }
     catch (Exception ex)
     {
         Logger.LogException(ex);
     }
 }
        public ManipulateSeriesMvvmViewModel()
        {
            _renderableSeriesViewModels = new ObservableCollection <IRenderableSeriesViewModel>();

            _addCommand = new ActionCommand(() =>
            {
                RenderableSeriesViewModels.Add(ViewModelsFactory.New(SelectedSeriesType.Type, 0));
                ZoomExtents();
                ClearCommand.RaiseCanExecuteChanged();
            }, () => SelectedSeriesType != null);

            _removeCommand = new ActionCommand(() =>
            {
                RenderableSeriesViewModels.RemoveWhere(s => s.IsSelected);
                ClearCommand.RaiseCanExecuteChanged();
            }, () => RenderableSeriesViewModels.Any(s => s.IsSelected));

            _clearCommand = new ActionCommand(() =>
            {
                RenderableSeriesViewModels.Clear();
                ClearCommand.RaiseCanExecuteChanged();
            }, () => RenderableSeriesViewModels.Count > 0);

            _selectionChangedCommand = new ActionCommand(() =>
            {
                var rSeriesVm = RenderableSeriesViewModels.FirstOrDefault(s => s.IsSelected);
                if (rSeriesVm != null)
                {
                    SelectedSeriesType = SeriesTypes.FirstOrDefault(x => x.Type == rSeriesVm.GetType());
                }
                RemoveCommand.RaiseCanExecuteChanged();
            });

            var data = DataManager.Instance.GetSinewave(1.0, 0.5, 100, 5);

            var lineDataSeries = new XyDataSeries <double, double>();

            lineDataSeries.Append(data.XData.Select(d => d * 5), data.YData);

            FillSeriesTypes();
            SelectedSeriesType = SeriesTypes[3];

            _addCommand.Execute(null);

            AddCommand.RaiseCanExecuteChanged();
            RemoveCommand.RaiseCanExecuteChanged();
        }
        private async void OnRemoveExecute()
        {
            var isReferenced = await _programmingLanguageRepository.IsReferencedByFriendAsync(SelectedProgrammingLanguage.Id);

            if (isReferenced)
            {
                await MessageDialogService.ShowInfoDialogAsync($"The language {SelectedProgrammingLanguage.Name} " +
                                                               "can't be removed, as it is referenced by at least one friend");

                return;
            }

            SelectedProgrammingLanguage.PropertyChanged -= Wrapper_PropertyChanged;
            _programmingLanguageRepository.Remove(SelectedProgrammingLanguage.Model);
            ProgrammingLanguages.Remove(SelectedProgrammingLanguage);
            SelectedProgrammingLanguage = null;
            HasChanges = _programmingLanguageRepository.HasChanges();
            RemoveCommand.RaiseCanExecuteChanged();
        }
Ejemplo n.º 16
0
        protected void Load(IEnumerable <TModel> units, IUnitOfWork unitOfWork, bool isNew)
        {
            UnitOfWork = unitOfWork;
            var unitsArray = units as TModel[] ?? units.ToArray();

            //проставляем количество родительских юнитов включенного оборудования
            var productsIncluded = unitsArray.SelectMany(x => x.ProductsIncluded).ToList();

            foreach (var productIncluded in productsIncluded)
            {
                productIncluded.ParentsCount = unitsArray.Count(x => x.ProductsIncluded.Contains(productIncluded));
            }

            //создаем контейнер
            Groups             = new GroupsCollection <TModel, TGroup, TMember>(GetGroups(unitsArray), isNew);
            Groups.SumChanged += () => { RaisePropertyChanged(nameof(Sum)); };

            // реакция на выбор группы
            Groups.SelectedGroupChanged += group =>
            {
                RemoveCommand?.RaiseCanExecuteChanged();
                AddProductIncludedCommand?.RaiseCanExecuteChanged();
                RaisePropertyChanged(nameof(Prices));
                RaisePropertyChanged(nameof(PricesLaborHours));
            };

            // реакция на выбор включенного оборудования
            Groups.SelectedProductIncludedChanged += productIncluded =>
            {
                (RemoveProductIncludedCommand)?.RaiseCanExecuteChanged();
                SetCustomFixedPriceCommand?.RaiseCanExecuteChanged();
            };

            // событие для того, чтобы вид перепривязал группы
            RaisePropertyChanged(nameof(Groups));

            // подписка на события изменения каждой группы и их членов
            ((IValidatableChangeTrackingCollection <TGroup>)Groups).PropertyChanged += (sender, args) => GroupChanged?.Invoke();
            Groups.CollectionChanged += (sender, args) => GroupChanged?.Invoke();

            // обновление прайса каждой группы
            Groups.ForEach(RefreshPrice);
        }
Ejemplo n.º 17
0
 private void OnReturnedTo(object sender, AccountsChangedEventArgs e)
 {
     try
     {
         if (!e.ChangeCanceled)
         {
             Account account = ConvertToACcount(e.Account);
             if (e.EditMode)
             {
                 Account listAccount = _allAccounts.FirstOrDefault(a => a.Id == account.Id);
                 if (listAccount != null)
                 {
                     _allAccounts[_allAccounts.IndexOf(listAccount)] = account;
                     SelectedAccount = account;
                 }
             }
             else
             {
                 if (_allAccounts.Any())
                 {
                     account.Id = _allAccounts.Select(a => a.Id).Max() + 1;
                     _allAccounts.Add(account);
                     SelectedAccount = account;
                 }
                 else
                 {
                     account.Id = 0;
                     _allAccounts.Add(account);
                     SelectedAccount = account;
                 }
             }
         }
         CurrentViewModel = _accountDetailsViewModel;
         EditCommand.RaiseCanExecuteChanged();
         RemoveCommand.RaiseCanExecuteChanged();
     }
     catch (Exception ex)
     {
         Logger.LogException(ex);
     }
 }
Ejemplo n.º 18
0
        public void RemoveGame(object o)
        {
            int indexEditeur = lesEdit.IndexOf(SelectedEdit);

            lesEdit.Remove(SelectedEdit);
            if (lesEdit.Count > 0)
            {
                if (lesEdit.Count == indexEditeur)
                {
                    SelectedEdit = lesEdit[indexEditeur - 1];
                }
                else
                {
                    SelectedEdit = lesEdit[indexEditeur];
                }
            }
            else
            {
                AddVisibilityCommand.Execute(o);
                RemoveCommand.RaiseCanExecuteChanged();
            }
        }
        public ManipulateSeries3DMvvmViewModel()
        {
            RenderableSeries = new ObservableCollection <IRenderableSeries3DViewModel>();

            SeriesTypes = new ObservableCollection <string>
            {
                "Column Series",
                "Impulse Series",
                "Mountain Series",
                "PointLine Series",
                "SurfaceMesh Series",
                "Waterfall Series",
                "Scatter Series"
            };

            AddCommand = new ActionCommand(() =>
            {
                RenderableSeries.Add(ViewModelFactory3D.New(SelectedType));

                RemoveCommand.RaiseCanExecuteChanged();
                ClearCommand.RaiseCanExecuteChanged();
            });

            RemoveCommand = new ActionCommand(() =>
            {
                RenderableSeries.Remove(RenderableSeries.Last());

                ClearCommand.RaiseCanExecuteChanged();
                RemoveCommand.RaiseCanExecuteChanged();
            }, () => RenderableSeries.Any());

            ClearCommand = new ActionCommand(() =>
            {
                RenderableSeries.Clear();

                ClearCommand.RaiseCanExecuteChanged();
                RemoveCommand.RaiseCanExecuteChanged();
            }, () => RenderableSeries.Any());
        }
Ejemplo n.º 20
0
        //supprime le jeu sélectionné et sélectionne le précédent dans la liste. Si il ne reste plus de jeu après la suppression l'ajout est déclenché
        public void RemoveGame(object o)
        {
            int indexJeu = lesJeux.IndexOf(SelectedJeu);

            lesJeux.Remove(SelectedJeu);
            if (lesJeux.Count > 0)
            {
                if (lesJeux.Count == indexJeu)
                {
                    SelectedJeu = lesJeux[indexJeu - 1];
                }
                else
                {
                    SelectedJeu = lesJeux[indexJeu];
                }
            }
            else
            {
                AddVisibilityCommand.Execute(o);
                RemoveCommand.RaiseCanExecuteChanged();
            }
        }
        protected TechnicalRequrementsTasksBaseViewModel(IUnityContainer container) : base(container)
        {
            //костыль - удаление пустых задач
            RemoveFailTasks();

            Load();

            this.SelectedLookupChanged += lookup =>
            {
                EditCommand.RaiseCanExecuteChanged();
                RemoveCommand.RaiseCanExecuteChanged();
            };

            #region Commands

            NewCommand = new DelegateLogCommand(
                () =>
            {
                //RegionManager.RequestNavigateContentRegion<PriceCalculations.View.PriceCalculationView>(new NavigationParameters { { nameof(PriceCalculation), new PriceCalculation() } });
            });


            EditCommand = new DelegateLogCommand(
                () =>
            {
                RegionManager.RequestNavigateContentRegion <TechnicalRequrementsTaskView>(new NavigationParameters {
                    { nameof(TechnicalRequrementsTask), SelectedItem }
                });
            },
                () => SelectedItem != null);

            RemoveCommand = new DelegateLogCommand(
                () =>
            {
                //var messageService = Container.Resolve<IMessageService>();
                //var result = messageService.ShowYesNoMessageDialog("Удаление", "Действительно хотите удалить из расчет ПЗ?", defaultNo:true);
                //if (result != MessageDialogResult.Yes) return;

                //var unitOfWork = Container.Resolve<IUnitOfWork>();

                //var calculation = unitOfWork.Repository<PriceCalculation>().GetById(SelectedItem.Id);
                //foreach (var item in calculation.PriceCalculationItems.ToList())
                //{
                //    var salesUnits = item.SalesUnits.ToList();

                //    //единицы, которы нельзя удалить из расчета, т.к. они размещены в производстве
                //    var salesUnitsNotForRemove = salesUnits
                //        .Where(x => x.SignalToStartProduction.HasValue)
                //        .Where(x => x.ActualPriceCalculationItem(unitOfWork).Id == item.Id)
                //        .ToList();

                //    if (salesUnitsNotForRemove.Any())
                //    {
                //        var salesUnitsToRemove = salesUnits.Except(salesUnitsNotForRemove).ToList();
                //        salesUnitsToRemove.ForEach(x => item.SalesUnits.Remove(x));
                //        if (!item.SalesUnits.Any())
                //        {
                //            calculation.PriceCalculationItems.Remove(item);
                //            unitOfWork.Repository<PriceCalculationItem>().Delete(item);
                //        }
                //    }
                //    else
                //    {
                //        calculation.PriceCalculationItems.Remove(item);
                //        unitOfWork.Repository<PriceCalculationItem>().Delete(item);
                //    }
                //}

                //if (calculation.PriceCalculationItems.Any())
                //{
                //    messageService.ShowOkMessageDialog("Удаление", "Вы не можете удалить некоторые строки в расчете, т.к. они размещены в производстве.");
                //}
                //else
                //{
                //    unitOfWork.Repository<PriceCalculation>().Delete(calculation);
                //    ((ICollection<PriceCalculationLookup>)Lookups).Remove(SelectedLookup);
                //}

                //unitOfWork.SaveChanges();
            },
                () => SelectedItem != null);

            ReloadCommand = new DelegateLogCommand(Load);

            #endregion
        }
        public ToolbarViewModel(IToolbarView view, IEventAggregator eventAggregator)
        {
            View             = view;
            View.DataContext = this;

            _eventAggregator = eventAggregator;

            IPList     = new ObservableCollection <string>(LoadIpList());
            FolderList = new ObservableCollection <string>(LoadFolderList());

            AddCommand = new DelegateCommand(() =>
            {
                IPList.Add(SelectedIP);
                AddCommand.RaiseCanExecuteChanged();
                RemoveCommand.RaiseCanExecuteChanged();
                UpdateFileList();
            }, () => ValidateIP(SelectedIP) && !IPList.Contains(SelectedIP));

            RemoveCommand = new DelegateCommand(() =>
            {
                IPList.Remove(SelectedIP);
                AddCommand.RaiseCanExecuteChanged();
                RemoveCommand.RaiseCanExecuteChanged();
                UpdateFileList();
            }, () => ValidateIP(SelectedIP) && IPList.Contains(SelectedIP));

            ConnectCommand = new DelegateCommand(() =>
            {
                Connected = !Connected;

                UpdateLastIp();
            }, () => ValidateIP(SelectedIP));

            DeployCommand = new DelegateCommand(() =>
            {
                _eventAggregator.GetEvent <DeployEvent>().Publish(new DeployModel(SelectedIP, Folder));
            }, () => Connected);

            OpenFolderCommand = new DelegateCommand(() =>
            {
                var dialog          = new System.Windows.Forms.FolderBrowserDialog();
                dialog.SelectedPath = Folder;
                if (dialog.ShowDialog() == DialogResult.OK)
                {
                    Folder = dialog.SelectedPath;
                    UpdateLastFolder();
                    FolderList.Add(Folder);
                    UpdateFolderList();
                }
            });

            ConfigCommand = new DelegateCommand(() =>
            {
                _eventAggregator.GetEvent <ShowConfigEvent>().Publish(Folder);
            });

            LaunchAppCommand = new DelegateCommand(() =>
            {
                _eventAggregator.GetEvent <SendCommandEvent>().Publish(new EventModel(EventType.Launch, EventKey.Dev));
            }, () => Connected);

            Command = new DelegateCommand <DebuggerCommandEnum?>(cmd =>
            {
                if (cmd.HasValue)
                {
                    _eventAggregator.GetEvent <CommandEvent>().Publish(new CommandModel(_port, cmd.ToString()));
                }
            });

            ClearLogsCommand = new DelegateCommand(() =>
            {
                _eventAggregator.GetEvent <ClearLogsEvent>().Publish(null);
            });

            //_eventAggregator.GetEvent<LogEvent>().Subscribe(msg => Enable = msg.Message.Contains("Debugger>"), ThreadOption.UIThread);
            _eventAggregator.GetEvent <OutputChangeEvent>().Subscribe(p => _port = p);

            _eventAggregator.GetEvent <ConnectEvent>().Subscribe(ip => Connected     = true, ThreadOption.UIThread);
            _eventAggregator.GetEvent <DisconnectEvent>().Subscribe(obj => Connected = false, ThreadOption.UIThread);

            LoadLastIp();
            LoadLastFolder();
        }
Ejemplo n.º 23
0
 public void Default()
 {
     DefaultSize = SelectedItem;
     RemoveCommand.RaiseCanExecuteChanged();
     DefaultCommand.RaiseCanExecuteChanged();
 }
Ejemplo n.º 24
0
 private void CollectionModified(object sender, NotifyCollectionChangedEventArgs e)
 {
     RemoveCommand.RaiseCanExecuteChanged();
 }
Ejemplo n.º 25
0
 private void OnStatusChanged()
 {
     AddCommand.RaiseCanExecuteChanged();
     RemoveCommand.RaiseCanExecuteChanged();
 }
Ejemplo n.º 26
0
 private void UpdateCommands()
 {
     RemoveCommand.RaiseCanExecuteChanged();
     SaveChangesCommand.RaiseCanExecuteChanged();
 }
 public void Remove()
 {
     Try(() => Files.RemoveAt(SelectedIndex));
     RemoveCommand.RaiseCanExecuteChanged();
 }
Ejemplo n.º 28
0
 private void OnSelectedItemChanged(ValueChangedEventArgs <PersonViewModel> args)
 {
     FireSelectedItemChanged(args.OldValue, args.NewValue);
     OnPropertyChanged(nameof(SelectedIndex));
     RemoveCommand.RaiseCanExecuteChanged();
 }
Ejemplo n.º 29
0
 private void CanExecuteChanged()
 {
     ReadCommand.RaiseCanExecuteChanged();
     RemoveCommand.RaiseCanExecuteChanged();
     ListenCommand.RaiseCanExecuteChanged();
 }