public Dictionary <string, object> PrepareExecution(ProjectState project, List <ActionParameter> parameters) { OutputParameters = parameters.ToDictionary(ActionParametersDefinition); if (OutputParameters.ContainsKey("help")) { OutputParameters.Remove("help"); } Execute(project, parameters); return(OutputParameters); }
private void AddOutput(CKlaxVariable parameter, bool bIsNewParameter) { var newViewmodel = new CEntityVariableViewModel(parameter); var functionGraph = m_functionGraph; void Redo() { newViewmodel.PropertyChanged += OnParameterPropertyChanged; functionGraph.OutputParameters.Add(parameter); OutputParameters.Add(newViewmodel); functionGraph.RebuildFunctionNodes(); } void Undo() { newViewmodel.PropertyChanged -= OnParameterPropertyChanged; OutputParameters.Remove(newViewmodel); functionGraph.OutputParameters.Remove(parameter); functionGraph.RebuildFunctionNodes(); } newViewmodel.DeleteCommand = new CRelayCommand(arg => { Undo(); UndoRedoUtility.Record(new CRelayUndoItem(Redo, Undo)); }); if (bIsNewParameter) { Redo(); } else { newViewmodel.PropertyChanged += OnParameterPropertyChanged; OutputParameters.Add(newViewmodel); } if (bIsNewParameter) { UndoRedoUtility.Record(new CRelayUndoItem(Undo, Redo)); } }
private void AddOutput(CKlaxVariable parameter, bool bIsNewParameter) { var newViewmodel = new CEntityVariableViewModel(parameter); void Redo() { m_interfaceFunction.OutputParameters.Add(parameter); OutputParameters.Add(newViewmodel); } void Undo() { OutputParameters.Remove(newViewmodel); m_interfaceFunction.OutputParameters.Remove(parameter); } newViewmodel.DeleteCommand = new CRelayCommand(arg => { Undo(); UndoRedoUtility.Record(new CRelayUndoItem(Redo, Undo)); }); if (bIsNewParameter) { Redo(); } else { OutputParameters.Add(newViewmodel); } if (bIsNewParameter) { UndoRedoUtility.Record(new CRelayUndoItem(Undo, Redo)); } }