private void TriggersListView_MouseClick(object sender, MouseEventArgs e)
 {
     if (e.Button == MouseButtons.Right)
     {
         var selected = TriggersListView.SelectedObject;
         if (selected != null)
         {
             var trigger = (ITrigger)selected;
             trigger.Active = !trigger.Active;
             RefreshBankAndList();
             TriggersListView.DeselectAll();
         }
     }
 }
 public FormTriggersConfig(
     [NotNull] TriggerManager triggerManager, 
     [NotNull] ISoundManager soundManager,
     [NotNull] IWindowManager windowManager,
     [NotNull] IExporterFactory exporterFactory,
     [NotNull] IImporterFactory importerFactory)
 {
     if (triggerManager == null) throw new ArgumentNullException(nameof(triggerManager));
     if (soundManager == null) throw new ArgumentNullException(nameof(soundManager));
     if (windowManager == null) throw new ArgumentNullException(nameof(windowManager));
     if (exporterFactory == null) throw new ArgumentNullException(nameof(exporterFactory));
     if (importerFactory == null) throw new ArgumentNullException(nameof(importerFactory));
     InitializeComponent();
     this.triggerManager = triggerManager;
     this.soundManager = soundManager;
     this.windowManager = windowManager;
     this.exporterFactory = exporterFactory;
     this.importerFactory = importerFactory;
     BuildFormText();
     UpdateMutedState();
     TriggersListView.SetObjects(this.triggerManager.Triggers);
     timer1.Enabled = true;
 }
 private void EditTriggerClosed(object o, EventArgs args)
 {
     TriggersListView.BuildList(true);
 }
 private void RefreshBankAndList()
 {
     TriggersListView.SetObjects(this.triggerManager.Triggers, true);
 }
 void SaveStateToSettings()
 {
     var settings = TriggersListView.SaveState();
     triggerManager.TriggerListState = settings;
 }
 private void FormSoundNotifyConfig_Load(object sender, EventArgs e)
 {
     RefreshBankAndList();
     TriggersListView.RestoreState(triggerManager.TriggerListState);
 }