private void CallHistoryEventChanged(object sender, VATRP.Core.Events.VATRPCallEventArgs e) { if (ServiceManager.Instance.Dispatcher.Thread != System.Threading.Thread.CurrentThread) { ServiceManager.Instance.Dispatcher.BeginInvoke((Action)(() => this.CallHistoryEventChanged(sender, e))); return; } var callEvent = sender as VATRPCallEvent; switch (e.historyEventType) { case HistoryEventTypes.Add: AddNewCallEvent(callEvent, true); break; case HistoryEventTypes.Load: LoadCallEvents(); break; case HistoryEventTypes.Reset: Calls.Clear(); _unseenMissedCallsCount = 0; CallsListView.Refresh(); break; case HistoryEventTypes.Delete: RemoveCallEvent(callEvent); break; } }