private void ExecuteSave() { _isSavingSettings = true; SaveCommand.RaiseCanExecuteChanged(); RaisePropertyChanged("CanSave"); _settings.Bridge = _selectedBridge.IPAddress; _settings.Save(); if (!_selectedBridge.IsConnected) { _selectedBridge.ConnectAsync().ContinueWith(o => RaisePropertyChanged("SelectedBridge")); } _isSavingSettings = false; SaveCommand.RaiseCanExecuteChanged(); RaisePropertyChanged("CanSave"); RaisePropertyChanged("IsConnected"); }
private async void SetAlertAsync() { _isSettingAlert = true; SetAlertCommand.RaiseCanExecuteChanged(); HueObjectBase rv = await LightSourceModel.SetAlertAsync(); if (!rv.IsError()) { bool refreshed = await LightSourceModel.RefreshAttributesAsync(); if (refreshed) { IsAlerting = LightSourceModel.State.Alert != "none"; } } _isSettingAlert = false; SetAlertCommand.RaiseCanExecuteChanged(); }
private async void ExecuteGetGroupsAsync() { _isGettingGroups = true; GetGroupsCommand.RaiseCanExecuteChanged(); var rv = await _bridge.GetGroupsFullAsync(); Groups.Clear(); if (!rv.IsError()) { foreach (Group group in ((HueObjectCollectionBase <Group>)rv).Dictionary.Values) { Groups.Add(new GroupViewModel(group, this, _commandFactory, _messageHandler)); } } else { await _messageHandler.GetResponseAsync("Error", "No Groups Found", MessageBoxButtons.OK); } _isGettingLights = false; GetGroupsCommand.RaiseCanExecuteChanged(); }
private async void ExecuteGetLightsAsync() { _isGettingLights = true; GetLightsCommand.RaiseCanExecuteChanged(); var rv = await _bridge.GetLightsFullAsync(); Lights.Clear(); if (!rv.IsError()) { foreach (Light light in (from l in ((HueObjectCollectionBase <Light>)rv).Dictionary.Values orderby l.Name select l)) { Lights.Add(new LightViewModel(light, _commandFactory)); } } else { await _messageHandler.GetResponseAsync("Error", "No Lights Found", MessageBoxButtons.OK); } _isGettingLights = false; GetLightsCommand.RaiseCanExecuteChanged(); }
private void CheckCanMovePage() { var canMoveToPreviousPage = this.pagedSource.CanMoveToPreviousPage; var canMoveToNextPage = this.pagedSource.CanMoveToNextPage; if (canMoveToPreviousPage != oldCanMoveToPreviousPage) { moveToFirstPageCommand?.RaiseCanExecuteChanged(); moveToPreviousPageCommand?.RaiseCanExecuteChanged(); this.oldCanMoveToPreviousPage = canMoveToPreviousPage; } if (canMoveToNextPage != oldCanMoveToNextPage) { moveToNextPageCommand?.RaiseCanExecuteChanged(); moveToLastPageCommand?.RaiseCanExecuteChanged(); this.oldCanMoveToNextPage = canMoveToNextPage; } }