public void ProcessProgressionEvent(ProgressionEvent Event) { if (Event == null) { return; } // if we need to, invoke the delegate if (InvokeRequired) { Invoke(new DelegateProcessProgressionEvent(ProcessProgressionEvent), new object[] { Event }); return; } if (Event.State == EProgressionState.InstigatorConnected) { ProgressionData = new Progressions(); OverallProgressBar.Invalidate(); } if (ProgressionData != null) { if (ProgressionData.ProcessEvent(Event)) { VisualiserGridViewResized = true; VisualiserGridView.Invalidate(); OverallProgressBar.Invalidate(); } } }