public void DisplayOutput(AbstractServiceTab callingService, string callingAction, object output, params string[] extraInfo) { var outputType = TypeUtils.DetermineOutputType(output); addOutputHeader(callingAction, extraInfo); addCopyOutputButton(); bool success = false; switch (outputType) { case OutputType.Single: _outputControl = outputAsSingle(output, out success); break; case OutputType.List: _outputControl = outputAsList(output, out success); break; case OutputType.Table: _outputControl = outputAsTable(output, out success); break; default: _outputControl = new Control(); break; } Canvas.SetTop(_outputControl, 50); Canvas.SetLeft(_outputControl, CANVAS_MARGIN); if (success) { _tabCanvas.Children.Add(_outputControl); _disposableElements.Add(_outputControl); } _executingTab = callingService; }
public void DisplayInputFields(AbstractServiceTab callingService, MethodInfo callingAction) { _mandatoryControls = new Dictionary <string, Control>(); _inputControls = new Dictionary <string, Control>(); int i = 1; _executedAction = callingAction; _executingTab = callingService; foreach (var parameter in callingAction.GetParameters()) { var fieldLabel = createFieldLabel(parameter, i); _disposableElements.Add(fieldLabel); if (parameter.ParameterType == typeof(bool)) { _inputControls[parameter.Name] = createBoolField(parameter, i); } else { _inputControls[parameter.Name] = createInputField(parameter, i); } if (parameter.IsMandatory()) { _mandatoryControls[parameter.Name] = _inputControls[parameter.Name]; } _disposableElements.Add(_inputControls[parameter.Name]); i++; } addExecuteButton(); }
public OutputTab InitialiseOutputTab(AbstractServiceTab executingTab, MethodInfo executedAction) { var inputTab = createNewOutputTab(_outputControl, ref _outputTabCount, executedAction); inputTab.Focus(); return(inputTab); }
public void DisplayOutput(OutputTab outputTab, object objectToDisplay, AbstractServiceTab source, MethodInfo actionMethod) { var callingAction = outputTab.ExecutedAction ?? actionMethod; outputTab.ClearInputElements(); outputTab.DisplayOutput(source, callingAction.Name, objectToDisplay ?? "No Output To Display"); outputTab.Focus(); }
private void addNewServiceTab(AbstractServiceTab tab, double width, double left, TabControl tabControl) { var tabItem = createNewServiceTabItem(tab.Title, width, left, tabControl); tab.TabManager = this; tab.SetControls(tabItem, tabControl); tab.InitialiseServiceTab(); }
public void DisplayError(Exception exception, AbstractServiceTab source, OutputTab tab) { tab.TabTitle = "Error"; var outputString = new StringBuilder(); outputString.AppendLine("Error calling action. Unwinding Stacktrace:"); outputString.AppendLine("-------------------------------------------"); outputString.AppendLine(exception.Message); var indent = string.Empty; while (exception.InnerException != null) { indent += " "; outputString.AppendLine(indent + ">" + exception.InnerException.Message); exception = exception.InnerException; } tab.DisplayOutput(source, "Error", outputString.ToString()); tab.Focus(); }
public void DisplayInputTab(OutputTab inputTab, AbstractServiceTab executingTab, MethodInfo executedAction) { inputTab.DisplayInputFields(executingTab, executedAction); inputTab.Focus(); }