public static Guid?SelectVplType(this IEnumerable <IVplType> types, Guid?selectedVplType = null) { if (types == null) { throw new ArgumentNullException(nameof(types)); } //Create the view model var viewModel = new SelectTypeDialogViewModel(types) { SelectedTypeId = selectedVplType }; //Create the view var view = new SelectTypeDialogView() { Owner = WindowUtil.GetActiveWindow(), DataContext = viewModel }; //Show the dialog if (view.ShowDialog() == true) { return(viewModel.SelectedTypeId); } return(null); }
private void SelectReturnType() { //Create the view model var viewModel = new SelectTypeDialogViewModel(_context.Types) { SelectedTypeId = Function.ReturnTypeId }; var view = new SelectTypeDialogView() { Owner = WindowUtil.GetActiveWindow(), DataContext = viewModel }; if (view.ShowDialog() == true) { if (ClearReturnType()) { Function.ReturnTypeId = viewModel.SelectedTypeId; if (Function.ReturnTypeId != null) { //Get the type var type = Function.GetVplTypeOrThrow(Function.ReturnTypeId.Value); //Add the return variable Function.AddVariable(new ReturnValueVariable(Function, type)); } } } }