private void _changeVMToPopulationUpdate()
 {
     populationVM._gpContainer.cleanPopulation();
     gpData.calculateStatistics();
     currentViewModel = new PopulationViewModel(populationVM._gpContainer);
     OnPropertyChanged("currentViewModel");
 }
 private void _changeVMToPopulation()
 {
     gpData.calculateStatistics();
     populationVM     = new PopulationViewModel(gpData);
     currentViewModel = populationVM;
     OnPropertyChanged("currentViewModel");
 }
 private void _newPopulation()
 {
     gpData = new GeneticManagement();
     gpData.calculateStatistics();
     populationVM     = new PopulationViewModel(gpData);
     currentViewModel = populationVM;
     OnPropertyChanged("currentViewModel");
 }
        public DefaultViewModel()
        {
            gpData = new GeneticManagement();

            entryVM      = new EntryViewModel();
            populationVM = new PopulationViewModel();
            highlightVM  = new HighlightViewModel();
            fitnessVM    = new FitnessViewModel();
            selectionVM  = new SelectionCrossoverViewModel();

            initPopulationCommand = new RelayCommand(x => this._newPopulation(), x => this._canChangeVMToPopulation());
            populationCommand     = new RelayCommand(x => _changeVMToPopulation(x), x => _canChangeVMToPopulation());
            mainMenuCommand       = new RelayCommand(x => this._changeVMToEntry(), x => this._canChangeVMToEntry());
            highlightCommand      = new RelayCommand(x => this._changeVMToHighlight(x), x => this._canChangeVMToHighlight(x));
            fitnessCommand        = new RelayCommand(x => _changeVMToFitness(), x => _canChangeVMToFitness());
            selectionCommand      = new RelayCommand(x => _changeVMToSelection(), x => _canChangeVMToSelection());
            newGenCommand         = new RelayCommand(x => _changeVMToPopulationUpdate(), x => true);

            currentViewModel = entryVM;
            OnPropertyChanged("currentViewModel");
        }
        private bool _canChangeVMToPopulation()
        {
            PopulationViewModel vm = currentViewModel as PopulationViewModel;

            return(vm == null);
        }
 private void _changeVMToPopulation(object o)
 {
     currentViewModel = new PopulationViewModel(gpData);
     OnPropertyChanged("currentViewModel");
 }