/// <summary> /// This is an overridden method, from the Print Support PrintingEngine class /// PrintTag Virtual Method. /// </summary> /// <param name="printQueue"></param> /// <param name="executionData"></param> public override StringBuilder PrintTag(PrintQueue printQueue, PluginExecutionData executionData) { DriverConfigurationPrintActivityData data = executionData.GetMetadata <DriverConfigurationPrintActivityData>(); PrintPreferenceOptions(data.PrinterPreference); _strContentToPrint.AppendLine(); _strContentToPrint.AppendLine(); _strContentToPrint.AppendLine($"UserName: {Environment.UserName}"); _strContentToPrint.AppendLine($"Session ID: {executionData.SessionId}"); _strContentToPrint.AppendLine($"Activity ID:{executionData.ActivityExecutionId}"); _strContentToPrint.AppendLine($"Date: {DateTime.Now.ToShortDateString()}"); _strContentToPrint.AppendLine($"Time: {DateTime.Now.ToShortTimeString()}"); return(_strContentToPrint); }
/// <summary> /// Creates and returns a <see cref="PluginConfigurationData" /> instance containing the /// configuration data from this control. /// </summary> /// <returns>The configuration data.</returns> public PluginConfigurationData GetConfiguration() { PrintingActivityData data = new DriverConfigurationPrintActivityData() { ShuffleDocuments = shuffle_CheckBox.Checked, PrintJobSeparator = jobseparator_checkBox.Checked, PrinterPreference = _printerPreferenceData }; return(new PluginConfigurationData(data, "1.0") { Documents = documentSelectionControl.DocumentSelectionData, PrintQueues = new PrintQueueSelectionData(_printQueues) }); }
/// <summary> /// Executes this plugin's workflow using the specified <see cref="PluginExecutionData" />. /// </summary> /// <param name="executionData">The execution data.</param> /// <returns>A <see cref="PluginExecutionResult" /> indicating the outcome of the execution.</returns> public PluginExecutionResult Execute(PluginExecutionData executionData) { try { DriverConfigurationPrintActivityData data = executionData.GetMetadata <DriverConfigurationPrintActivityData>(); PrintQueueInfo item = executionData.PrintQueues.GetRandom(); _engine.ConfigureDriverSettings(data.PrinterPreference, item.QueueName); return(_engine.ProcessActivity(executionData)); } catch (Exception ex) { return(new PluginExecutionResult(PluginResult.Failed, ex)); } }
private void ConfigureControls(DriverConfigurationPrintActivityData data) { shuffle_CheckBox.Checked = data.ShuffleDocuments; jobseparator_checkBox.Checked = data.PrintJobSeparator; _printerPreferenceData = data.PrinterPreference; }