public void AddConfiguration(AutoQcConfig config, int index) { Program.LogInfo(string.Format("Adding configuration \"{0}\"", config.Name)); var lvi = new ListViewItem(config.Name); lvi.Checked = config.IsEnabled; lvi.UseItemStyleForSubItems = false; // So that we can change the color for sub-items. lvi.SubItems.Add(config.User); lvi.SubItems.Add(config.Created.ToShortDateString()); lvi.SubItems.Add(ConfigRunner.RunnerStatus.Stopped.ToString()); if (index == -1) { listViewConfigs.Items.Add(lvi); } else { listViewConfigs.Items.Insert(index, lvi); } comboConfigs.Items.Add(config.Name); // Add a ConfigRunner for this configuration var configRunner = new ConfigRunner(config, this); _configRunners.Add(config.Name, configRunner); var configList = Settings.Default.ConfigList; if (!configList.Contains(config)) { configList.Add(config); Settings.Default.Save(); } UpdateLabelVisibility(); }
private void StartConfigRunner(ConfigRunner configRunner) { try { configRunner.Start(); } catch (Exception e) { var msg = string.Format("Error Starting Configuration \"{0}\"", configRunner.Config.Name); ShowErrorDialog(msg, e.Message); Program.LogError(msg, e); } }
private void StartConfigRunner(ConfigRunner configRunner) { try { configRunner.Start(); } catch (Exception e) { var title = string.Format("Error Starting Configuration \"{0}\"", configRunner.Config.Name); var msg = string.Format("{0}\n\nMore details can be found in the program log: {1}", e.Message, Program.GetProgramLogFilePath()); ShowErrorDialog(title, msg); Program.LogError(title, e); } }
private void StartConfigRunner(ConfigRunner configRunner) { try { configRunner.Start(); } catch (Exception e) { var title = string.Format(Resources.MainForm_StartConfigRunner_Error_Starting_Configuration___0__, configRunner.Config.Name); ShowErrorWithExceptionDialog(title, e.Message, e); // ReSharper disable once LocalizableElement Program.LogError(string.Format("Error Starting Configuration \"{0}\"", configRunner.Config.Name), e); } }
private void ChangeConfigState(ConfigRunner configRunner) { var config = configRunner.Config; if (config.IsEnabled) { Program.LogInfo(string.Format("Starting configuration \"{0}\"", config.Name)); StartConfigRunner(configRunner); } else { Program.LogInfo(string.Format("Stopping configuration \"{0}\"", config.Name)); configRunner.Stop(); } }
private void UpdateButtons(ConfigRunner configRunner) { if (configRunner == null) { btnCopy.Enabled = false; btnEdit.Text = "Edit"; btnEdit.Enabled = false; btnDelete.Enabled = false; } else { btnCopy.Enabled = true; btnDelete.Enabled = true; btnEdit.Enabled = true; btnEdit.Text = configRunner.IsStopped() ? "Edit" : "View"; } }
public void ChangeConfigUiStatus(ConfigRunner configRunner) { RunUI(() => { var lvi = listViewConfigs.FindItemWithText(configRunner.GetConfigName(), false, 0, false); // Do not allow partial match if (lvi == null) { return; } const int index = 3; lvi.SubItems[index].Text = configRunner.GetDisplayStatus(); if (configRunner.IsRunning()) { lvi.SubItems[index].ForeColor = Color.Green; } else if (configRunner.IsDisconnected()) { lvi.SubItems[index].ForeColor = Color.Orange; } else if (configRunner.IsError()) { lvi.SubItems[index].ForeColor = Color.Red; listViewConfigs.ItemChecked -= listViewConfigs_ItemChecked; listViewConfigs.ItemCheck -= listViewConfigs_ItemCheck; lvi.Checked = false; ChangeConfigEnabledSetting(lvi.SubItems[0].Text, false); listViewConfigs.ItemChecked += listViewConfigs_ItemChecked; listViewConfigs.ItemCheck += listViewConfigs_ItemCheck; } else if (!configRunner.IsStopped()) { lvi.SubItems[index].ForeColor = Color.DarkOrange; } else { lvi.SubItems[index].ForeColor = Color.Black; } if (!lvi.Selected) { return; } UpdateButtons(configRunner); }); }
private void UpdateButtons(ConfigRunner configRunner) { if (configRunner == null) { btnCopy.Enabled = false; btnEdit.Text = Resources.MainForm_UpdateButtons_Edit; btnEdit.Enabled = false; btnDelete.Enabled = false; } else { btnCopy.Enabled = true; btnDelete.Enabled = true; btnEdit.Enabled = true; btnEdit.Text = configRunner.IsStopped() ? Resources.MainForm_UpdateButtons_Edit : Resources.MainForm_UpdateButtons_View; } }
public AutoQcConfigForm(AutoQcConfig config, ConfigRunner configRunner, IMainUiControl mainControl) { _mainControl = mainControl; _config = config; InitializeComponent(); // Initialize file filter combobox var filterOptions = new object[] { AllFileFilter.NAME, StartsWithFilter.NAME, EndsWithFilter.NAME, ContainsFilter.NAME, RegexFilter.NAME }; comboBoxFileFilter.Items.AddRange(filterOptions); textConfigName.Text = _config.Name; SetUIMainSettings(_config.MainSettings); SetUIPanoramaSettings(_config.PanoramaSettings); if (configRunner != null && configRunner.IsBusy()) { lblConfigRunning.Show(); btnSaveConfig.Hide(); btnCancelConfig.Hide(); btnOkConfig.Show(); } else { lblConfigRunning.Hide(); btnSaveConfig.Show(); btnCancelConfig.Show(); btnOkConfig.Hide(); } }