public SettingsViewModel() { InitializeCommands(); _selectedTheme = Domain.Settings.Instance.Theme; _selectedColorScheme = _colors.FirstOrDefault(c => c.Name == Domain.Settings.Instance.AccentColor); _checkForUpdates = Domain.Settings.Instance.CheckForUpdates; _enableNotifications = Domain.Settings.Instance.ShowTrackNotifications; _enableTrayIcon = Domain.Settings.Instance.EnableTrayIcon; _showBackgroundArt = Domain.Settings.Instance.ShowBackgroundArt; _showBackgroundArtCompactMode = Domain.Settings.Instance.ShowBackgroundArtCompactMode; _blurBackground = Domain.Settings.Instance.BlurBackground; _downloadArtistArt = Domain.Settings.Instance.DownloadArtistArt; _downloadAlbumArt = Domain.Settings.Instance.DownloadAlbumArt; _selectedEngine = Engines.FirstOrDefault(e => e.Engine == Domain.Settings.Instance.MediaEngine); _enableRemotePlay = Domain.Settings.Instance.EnableRemotePlay; _remotePlayPort = Domain.Settings.Instance.RemotePlayPort.ToString(); _useHttps = Domain.Settings.Instance.UseHttps; if (string.IsNullOrEmpty(Domain.Settings.Instance.RemotePlayAddress)) { var addresses = NetworkHelper.GetLocalIpAddresses(); if (addresses != null && addresses.Count > 0) { _selectedRemotePlayAddress = addresses.First(); } } else { _selectedRemotePlayAddress = Domain.Settings.Instance.RemotePlayAddress; } var lang = _languages.FirstOrDefault(l => l.LanguageCode == Domain.Settings.Instance.Language); if (lang != null) { _selectedLanguage = lang; } else { _selectedLanguage = _languages.First(); } #region Hotkeys _hotkeys.Add(new SettingsHotkey() { Id = "Next", Title = MainResources.SettingsHotkeyNext, Ctrl = Domain.Settings.Instance.NextHotKeyModifier.HasFlag(ModifierKeys.Control), Alt = Domain.Settings.Instance.NextHotKeyModifier.HasFlag(ModifierKeys.Alt), Shift = Domain.Settings.Instance.NextHotKeyModifier.HasFlag(ModifierKeys.Shift), Key = Domain.Settings.Instance.NextHotKey.ToString() }); _hotkeys.Add(new SettingsHotkey() { Id = "Prev", Title = MainResources.SettingsHotkeyPrev, Ctrl = Domain.Settings.Instance.PrevHotKeyModifier.HasFlag(ModifierKeys.Control), Alt = Domain.Settings.Instance.PrevHotKeyModifier.HasFlag(ModifierKeys.Alt), Shift = Domain.Settings.Instance.PrevHotKeyModifier.HasFlag(ModifierKeys.Shift), Key = Domain.Settings.Instance.PrevHotKey.ToString() }); _hotkeys.Add(new SettingsHotkey() { Id = "PlayPause", Title = MainResources.SettingsHotkeyPlayPause, Ctrl = Domain.Settings.Instance.PlayPauseHotKeyModifier.HasFlag(ModifierKeys.Control), Alt = Domain.Settings.Instance.PlayPauseHotKeyModifier.HasFlag(ModifierKeys.Alt), Shift = Domain.Settings.Instance.PlayPauseHotKeyModifier.HasFlag(ModifierKeys.Shift), Key = Domain.Settings.Instance.PlayPauseHotKey.ToString() }); _hotkeys.Add(new SettingsHotkey() { Id = "FastForward", Title = MainResources.SettingsHotkeyFastForward, Ctrl = Domain.Settings.Instance.FastForwardHotKeyModifier.HasFlag(ModifierKeys.Control), Alt = Domain.Settings.Instance.FastForwardHotKeyModifier.HasFlag(ModifierKeys.Alt), Shift = Domain.Settings.Instance.FastForwardHotKeyModifier.HasFlag(ModifierKeys.Shift), Key = Domain.Settings.Instance.FastForwardHotKey.ToString() }); _hotkeys.Add(new SettingsHotkey() { Id = "Rewind", Title = MainResources.SettingsHotkeyRewind, Ctrl = Domain.Settings.Instance.RewindHotKeyModifier.HasFlag(ModifierKeys.Control), Alt = Domain.Settings.Instance.RewindHotKeyModifier.HasFlag(ModifierKeys.Alt), Shift = Domain.Settings.Instance.RewindHotKeyModifier.HasFlag(ModifierKeys.Shift), Key = Domain.Settings.Instance.RewindHotKey.ToString() }); _hotkeys.Add(new SettingsHotkey() { Id = "LikeDislike", Title = MainResources.SettingsHotkeyAddRemove, Ctrl = Domain.Settings.Instance.LikeDislikeHotKeyModifier.HasFlag(ModifierKeys.Control), Alt = Domain.Settings.Instance.LikeDislikeHotKeyModifier.HasFlag(ModifierKeys.Alt), Shift = Domain.Settings.Instance.LikeDislikeHotKeyModifier.HasFlag(ModifierKeys.Shift), Key = Domain.Settings.Instance.LikeDislikeHotKey.ToString() }); _hotkeys.Add(new SettingsHotkey() { Id = "Shuffle", Title = MainResources.SettingsHotkeyShuffle, Ctrl = Domain.Settings.Instance.ShuffleHotKeyModifier.HasFlag(ModifierKeys.Control), Alt = Domain.Settings.Instance.ShuffleHotKeyModifier.HasFlag(ModifierKeys.Alt), Shift = Domain.Settings.Instance.ShuffleHotKeyModifier.HasFlag(ModifierKeys.Shift), Key = Domain.Settings.Instance.ShuffleHotKey.ToString() }); _hotkeys.Add(new SettingsHotkey() { Id = "Repeat", Title = MainResources.SettingsHotkeyRepeat, Ctrl = Domain.Settings.Instance.RepeatHotKeyModifier.HasFlag(ModifierKeys.Control), Alt = Domain.Settings.Instance.RepeatHotKeyModifier.HasFlag(ModifierKeys.Alt), Shift = Domain.Settings.Instance.RepeatHotKeyModifier.HasFlag(ModifierKeys.Shift), Key = Domain.Settings.Instance.RepeatHotKey.ToString() }); _hotkeys.Add(new SettingsHotkey() { Id = "IncreaseVolume", Title = MainResources.SettingsHotkeyIncreaseVolume, Ctrl = Domain.Settings.Instance.IncreaseVolumeHotKeyModifier.HasFlag(ModifierKeys.Control), Alt = Domain.Settings.Instance.IncreaseVolumeHotKeyModifier.HasFlag(ModifierKeys.Alt), Shift = Domain.Settings.Instance.IncreaseVolumeHotKeyModifier.HasFlag(ModifierKeys.Shift), Key = Domain.Settings.Instance.IncreaseVolumeHotKey.ToString() }); _hotkeys.Add(new SettingsHotkey() { Id = "DecreaseVolume", Title = MainResources.SettingsHotkeyDecreaseVolume, Ctrl = Domain.Settings.Instance.DecreaseVolumeHotKeyModifier.HasFlag(ModifierKeys.Control), Alt = Domain.Settings.Instance.DecreaseVolumeHotKeyModifier.HasFlag(ModifierKeys.Alt), Shift = Domain.Settings.Instance.DecreaseVolumeHotKeyModifier.HasFlag(ModifierKeys.Shift), Key = Domain.Settings.Instance.DecreaseVolumeHotKey.ToString() }); _hotkeys.Add(new SettingsHotkey() { Id = "ShowHide", Title = MainResources.SettingsHotkeyShowHide, Ctrl = Domain.Settings.Instance.ShowHideHotKeyModifier.HasFlag(ModifierKeys.Control), Alt = Domain.Settings.Instance.ShowHideHotKeyModifier.HasFlag(ModifierKeys.Alt), Shift = Domain.Settings.Instance.ShowHideHotKeyModifier.HasFlag(ModifierKeys.Shift), Key = Domain.Settings.Instance.ShowHideHotKey.ToString() }); #endregion }
public static void ApplySettings(object instance) => SettingsEngine.ApplySettings(instance);