private void ToolStripButtonClick(object sender, EventArgs e) { var newPlacement = GetPlacement(); var changeType = (PlacementChangeType)((ToolStripButton)sender).Tag; log.Info($"User triggered {changeType} for placement {newPlacement}"); switch (changeType) { case PlacementChangeType.Added: case PlacementChangeType.Updated: INISettings.SavePlacement(newPlacement); break; case PlacementChangeType.Deleted: INISettings.DeletePlacement(newPlacement); break; case PlacementChangeType.None: break; default: throw new ArgumentOutOfRangeException(); } PlacementChangedEvent?.Invoke(this, new PlacementChangedEventArgs(newPlacement, changeType)); }
private void PlacementValueChanged(object sender, EventArgs e) { var placement = GetPlacement(); UpdateToolButtons(placement); PlacementChangedEvent?.Invoke(this, new PlacementChangedEventArgs(placement, PlacementChangeType.None)); }
private void InitUi() { SuspendLayout(); var layout = new TableLayoutPanel { Dock = DockStyle.Fill }; layout.SuspendLayout(); layout.Controls.Add(_lblCaption, 0, 0); layout.Controls.Add(_placementEntryPanel, 0, 1); layout.Controls.Add(_monitorMap, 0, 2); layout.ResumeLayout(); Controls.Add(layout); ResumeLayout(); _placementEntryPanel.PlacementChangedEvent += (source, args) => { _monitorMap.Placement = args.Placement; }; _placementEntryPanel.PlacementChangedEvent += (source, args) => { PlacementChangedEvent?.Invoke(this, args); }; }