public SocialRunViewModel() { StartRun = new RelayCommand(() => { BuddyRunManager.Instance.Start(); StopRun.RaiseCanExecuteChanged(); StartRun.RaiseCanExecuteChanged(); }, () => { return(!BuddyRunManager.Instance.InRun /*&& BandService.Instance.IsConnected*/); }); StopRun = new RelayCommand(() => { BuddyRunManager.Instance.Stop(); StopRun.RaiseCanExecuteChanged(); StartRun.RaiseCanExecuteChanged(); }, () => { return(BuddyRunManager.Instance.InRun); }); BuddyRunManager.Instance.OnRouteUpdate += Instance_OnRouteUpdate; LocationService.Instance.OnLocationChange += Instance_OnLocationChange; BandService.Instance.OnHeartRateChange += Instance_OnHeartRateChange; CurrentLocation = ExtentionMethods.GetDefaultPoint(); BuddyLocation = ExtentionMethods.GetDefaultPoint(); BuddyRunManager.Instance.OnBuddyRouteUpdate += Instance_OnBuddyRouteUpdate; BuddyRunManager.Instance.OnBuddyLocationUpdate += Instance_OnBuddyLocationUpdate; }
private void StopRunNow() { if (this.btnStop.InvokeRequired) { StopRun d = new StopRun(StopRunNow); this.Invoke(d, new object[] { }); return; } isUpdateProcessingStarted = false; }