private void EditOpArg() { var dialog = new PapyrusReferenceAndConstantValueViewModel(loadedAssemblies, currentType, currentMethod, null, null); var result = dialogService.ShowDialog(dialog); if (result == DialogResult.OK) { var i = OperandArguments.IndexOf(selectedOperandArgument); OperandArguments.RemoveAt(i); var papyrusVariableReference = new PapyrusVariableReference(); UpdateOperandArgument(dialog, ref papyrusVariableReference); OperandArguments.Insert(i, papyrusVariableReference); SelectedOperandArgument = papyrusVariableReference; //// FFS! Just update? But nooo.. ObservableCollection refresh only triggers on remove/add :p //var dummy = new PapyrusVariableReference(); //OperandArguments.Add(dummy); //OperandArguments.Remove(dummy); } }
private void RemoveOpArg() { var obj = SelectedOperandArgument; var name = obj.Name?.Value ?? ""; if (MessageBox.Show("Are you sure you want to delete this Argument?", "Delete Argument " + name, MessageBoxButton.OKCancel) == MessageBoxResult.OK) { OperandArguments.Remove(SelectedOperandArgument); } }
private void AddOpArg() { var dialog = new PapyrusReferenceAndConstantValueViewModel(loadedAssemblies, currentType, currentMethod, null, null); var result = dialogService.ShowDialog(dialog); if (result == DialogResult.OK) { var papyrusVariableReference = new PapyrusVariableReference(); OperandArguments.Add(UpdateOperandArgument(dialog, ref papyrusVariableReference)); } }