private void OnGateCampAdded(GateCampMessageModel gatecamp) { lock (this) { _gateCamps.Add(gatecamp); } Application.Current.Dispatcher.BeginInvoke(new Action(() => { GateCampAdded?.Invoke(gatecamp); })); }
private void OnGateCampIndexChanged(GateCampMessageModel gatecamp) { var gateCampToChange = _gateCamps.FirstOrDefault(x => x.StargateLocations.HasIntersection(gatecamp.StargateLocations)); if (gateCampToChange != null) { gateCampToChange.StargateLocations = gateCampToChange.StargateLocations; gateCampToChange.GateCampIndex = gatecamp.GateCampIndex; Application.Current.Dispatcher.BeginInvoke(new Action(() => { GateCampIndexChanged?.Invoke(gateCampToChange); })); } }
private void OnGateCampRemoved(GateCampMessageModel gatecamp) { lock (this) { var gateCampToRemove = _gateCamps.FirstOrDefault(x => x.StargateLocations.HasIntersection(gatecamp.StargateLocations)); if (gateCampToRemove != null) { _gateCamps.Remove(gateCampToRemove); Application.Current.Dispatcher.BeginInvoke(new Action(() => { GateCampRemoved?.Invoke(gateCampToRemove); })); } } }
private void GateCampDetectionServiceOnGateCampAdded(GateCampMessageModel gateCamp) { UpdateValues(); }