private void _rpc_OnUpdateEvent(RPCController sender, string id, EventType type, long peerId, long channelIndex, string variable) { if (type == EventType.Timed) { if (!TimedEvents.ContainsKey(id)) { return; } Event currentEvent = TimedEvents[id]; _rpc.GetEvent(currentEvent); EventUpdated?.Invoke(this, currentEvent); } else { if (!Devices.ContainsKey(peerId)) { return; } Device device = Devices[peerId]; if (!device.Events.ContainsKey(id)) { return; } Event currentEvent = device.Events[id]; _rpc.GetEvent(currentEvent); EventUpdated?.Invoke(this, currentEvent); } }
#pragma warning disable SS002 // DateTime.Now was referenced private static bool LoadEvent(string specialEventName, SpecialEventLayerContent specialEventLayer) { var currentTime = DateTime.Now; if (!specialEventLayer.EventTimeSatisfied(currentTime) || !specialEventLayer.LoadEvent()) { return(false); } CurrentInstanceName = specialEventName; CurrentInstance = specialEventLayer; MainWindow.Instance.RootLayout.Children.Add(CurrentInstance); MainWindow.Instance.SettingsFlyout.SpecialEventToggle.IsEnabled = true; MainWindow.Instance.SettingsFlyout.SpecialEventEnabled = CurrentInstance.EventEnabled; MainWindow.Instance.SettingsFlyout.BgmVolume = SettingsManager.AppSettings.BgmVolume; MainWindow.Instance.SettingsFlyout.SpecialEventPanel.Visibility = Visibility.Visible; EventUpdated?.Invoke(null, EventArgs.Empty); return(true); }
private async void OnSave(object sender, EventArgs e) { var eve = BindingContext as Event; if (String.IsNullOrWhiteSpace(eve.Label)) { await DisplayAlert("Error", "Please enter the label.", "OK"); return; } if (eve.StartDate > eve.EndDate) { await DisplayAlert("Error", "Please enter correct dates.", "OK"); return; } if (eve.Id == 0) { await _connection.InsertAsync(eve); EventAdded?.Invoke(this, eve); } else { EventUpdated?.Invoke(this, eve); } await Navigation.PopAsync(); }
#pragma warning restore SS002 // DateTime.Now was referenced private static void UnloadEvent() { MainWindow.Instance.SettingsFlyout.SpecialEventPanel.Visibility = Visibility.Collapsed; MainWindow.Instance.SettingsFlyout.SpecialEventToggle.IsEnabled = false; if (CurrentInstance == null) { EventUpdated?.Invoke(null, EventArgs.Empty); return; } CurrentInstance.UnloadEvent(); MainWindow.Instance.RootLayout.Children.Remove(CurrentInstance); CurrentInstanceName = null; CurrentInstance = null; EventUpdated?.Invoke(null, EventArgs.Empty); }