private void This_PropertyChanged(object sender, PropertyChangedEventArgs e)
 {
     if (e.PropertyName == nameof(this.SelectedAirfoilPreviewMode))
     {
         previewWindowMode = SelectedAirfoilPreviewMode.PreviewMode;
         ReDrawPreviewWindow();
     }
 }
        /// <summary>
        /// Constructor
        /// </summary>
        public MainWindowViewModel()
        {
            // Allocate Event CallBack Functions
            AirfoilOptimizationResource.Instance.LogMessageAdded            += UpdateLogMessage;
            AirfoilOptimizationResource.Instance.CurrentPopulationUpdated   += SourceChanged;
            AirfoilOptimizationResource.Instance.OffspringCandidatesUpdated += OffspringAirfoilsReady;
            this.PropertyChanged += this.This_PropertyChanged;
            //

            openOptConfigDialog = new Action(OpenOptimizingConfigurationDialog);
            isOptConfigEnabled  = new Func <bool>(IsOptConfigDialogEnabled);

            // Assign the delegate Command
            openWorkingFile               = new General.DelegateCommand(OpenWorkingFile, () => true);
            saveWorkingFile               = new General.DelegateCommand(SaveWorkingFile, () => true);
            showOprConfigDialog           = new General.DelegateCommand(openOptConfigDialog, isOptConfigEnabled);
            showCoefficientManager        = new General.DelegateCommand(OpenCoefficientManager, IsCoefManagerEnabled);
            updatePreviewWindow           = new General.DelegateCommand(ReDrawPreviewWindow, () => true);
            startGAOptimization           = new General.DelegateCommand(StartGeneticOptimization, IsGAExecutable);
            resumeGAOptimization          = new General.DelegateCommand(ResumeGeneticOptimization, IsGASelectionAvailable);
            airfoilCharacteristicsManager = new General.DelegateCommand(OpenCharacteristicsManager, IsCharacteristicsManagerAvailable);
            exportAirfoilCsv              = new General.DelegateCommand(ExportCsv, IsCsvExportable);
            setSpecifications             = new General.ParamDelegateCommand <String>(DisplaySpecifications, () => true);
            //

            // Instantiate Fields
            previewWindowMode = PreviewWindowMode.CurrentPopulation;
            //currentPopulations = new Airfoil.CombinedAirfoilsGroup(NumberOfChildren);

            previewCoordinates = new ObservableCollection <System.Windows.Point> [NumberOfChildren];
            for (int i = 0; i < NumberOfChildren; i++)
            {
                previewCoordinates[i] = new ObservableCollection <System.Windows.Point>();
            }

            AirfoilPreviewModes        = PreviewWindowSelecterViewModel.Create();
            SelectedAirfoilPreviewMode = this.AirfoilPreviewModes.First();
            //
        }
Пример #3
0
 public static PreviewWindowSelecterViewModel Create(PreviewWindowMode mode)
 {
     return(new PreviewWindowSelecterViewModel(mode, previewModeMap[mode]));
 }
Пример #4
0
 public PreviewWindowSelecterViewModel(PreviewWindowMode previewMode, string label)
 {
     this.PreviewMode = previewMode;
     this.Label       = label;
 }