コード例 #1
0
        private async void SaveUserSettings(object sender, RoutedEventArgs e)
        {
            //TODO: Settings
            Storage.Settings.HighlightEveryone = (bool)HighlightEveryone.IsChecked;
            //Storage.Settings.Toasts = (bool)Toasts.IsChecked;
            Storage.Settings.LiveTile = (bool)LiveTile.IsChecked;
            Storage.Settings.Badge    = (bool)Badge.IsChecked;
            Storage.Settings.Vibrate  = (bool)Vibrate.IsChecked;
            Storage.Settings.RespUiM  = RespUI_M.Value;
            Storage.Settings.RespUiL  = RespUI_L.Value;
            Storage.Settings.RespUiXl = RespUI_XL.Value;
            //Storage.Settings.AppBarAtBottom = (bool)AppBarAtBottom_checkbox.IsChecked;
            Storage.Settings.MSGFontSize                = (int)FontSizeSlider.Value;
            Storage.Settings.CompactMode                = (bool)CompactMode.IsChecked;
            Storage.Settings.FriendsNotifyDMs           = (bool)FriendsNotifyDMs.IsChecked;
            Storage.Settings.FriendsNotifyFriendRequest = (bool)FriendsNotifyFriendRequests.IsChecked;
            //Storage.Settings.FriendsNotifyIncoming = (bool)FriendsNotifyIncomingFriendRequests.IsChecked;
            //Storage.Settings.FriendsNotifyOutgoing = (bool)FriendsNotifyOutgoingFriendRequests.IsChecked;

            Storage.Settings.AccentBrush     = (bool)radioAccent_Windows.IsChecked;
            Storage.Settings.DerivedColor    = (bool)DerviedColor.IsChecked;
            Storage.Settings.Acrylics        = (bool)EnableAcrylic.IsChecked;
            Storage.Settings.BackgroundVoice = (bool)EnableBackgroundVoice.IsChecked;
            Storage.Settings.ExpensiveRender = (bool)ExpensiveUI.IsChecked;
            //Storage.Settings.DropShadowPresence = (bool)DropShadowPresence.IsChecked;
            Storage.Settings.ShowWelcomeMessage       = (bool)ShowWelcome.IsChecked;
            Storage.Settings.ShowNoPermissionChannels = (bool)ShowNoPermissionsChannels.IsChecked;
            Storage.Settings.HideMutedChannels        = (bool)HideMutedChannels.IsChecked;
            Storage.Settings.UseCompression           = (bool)UseCompression.IsChecked;
            Storage.Settings.RichPresence             = (bool)RichPresence.IsChecked;
            Storage.Settings.Scaling = (bool)Scaling.IsChecked;
            Storage.Settings.OLED    = (bool)OLED.IsChecked;
            //Storage.Settings.VoiceChannels = (bool)VoiceChannels.IsChecked;
            //Storage.Settings.GifsOnHover = (bool)GifsOnHover.IsChecked;
            Storage.Settings.ServerMuteIcons = (bool)ShowServerMute.IsChecked;
            Storage.Settings.GlowOnMention   = (bool)MentionGlow.IsChecked;

            Storage.Settings.MessageSound   = (bool)MessageNotification.IsChecked;
            Storage.Settings.VoiceDCSound   = (bool)VoiceDCNotification.IsChecked;
            Storage.Settings.UserJoinSound  = (bool)UserJoinNotification.IsChecked;
            Storage.Settings.UserLeaveSound = (bool)UserLeaveNotification.IsChecked;

            //Storage.Settings.SoundNotifications = (bool)NotificationSounds.IsChecked;
            //Storage.Settings.DiscordSounds = (bool)radio_DiscordSounds.IsChecked;

            ApplicationLanguages.PrimaryLanguageOverride = ((ComboBoxItem)LanguageSelection.SelectedItem).Tag.ToString().Trim();

            if (bgEnabler.IsOn)
            {
                Storage.Settings.BackgroundTaskTime = (int)timeSlider.Value;
            }
            else
            {
                Storage.Settings.BackgroundTaskTime = 0;
            }
            await Managers.BackgroundTaskManager.UpdateNotificationBGTask();

            ChangeSetting("bgNotifyFriend", (bool)bgNotifyFriend.IsChecked);
            ChangeSetting("bgNotifyDM", (bool)bgNotifyDM.IsChecked);
            ChangeSetting("bgNotifyMention", (bool)bgNotifyMention.IsChecked);
            ChangeSetting("bgNotifyMutedMention", (bool)bgNotifyMutedMention.IsChecked);

            switch (TimeFormat.SelectedIndex)
            {
            case 0:
                Storage.Settings.TimeFormat = "hh:mm";
                break;

            case 1:
                Storage.Settings.TimeFormat = "H:mm";
                break;

            case 2:
                Storage.Settings.TimeFormat = "hh:mm:ss tt";
                break;

            case 3:
                Storage.Settings.TimeFormat = "HH:mm:ss";
                break;

            default:
                Storage.Settings.TimeFormat = CustomTimeF.Text;
                break;
            }
            switch (DateFormat.SelectedIndex)
            {
            case 0:
                Storage.Settings.DateFormat = "M/d/yyyy";
                break;

            case 1:
                Storage.Settings.DateFormat = "M/d/yy";
                break;

            case 2:
                Storage.Settings.DateFormat = "MM/dd/yy";
                break;

            case 3:
                Storage.Settings.DateFormat = "MMM/dd/yy";
                break;

            default:
                Storage.Settings.DateFormat = CustomDateF.Text;
                break;
            }

            if ((bool)radio_Dark.IsChecked)
            {
                Storage.Settings.Theme = Theme.Dark;
            }
            else if ((bool)radio_Light.IsChecked)
            {
                Storage.Settings.Theme = Theme.Light;
            }
            else if ((bool)radio_Windows.IsChecked)
            {
                Storage.Settings.Theme = Theme.Windows;
            }
            else if ((bool)radio_Discord.IsChecked)
            {
                Storage.Settings.Theme = Theme.Discord;
            }

            if ((bool)NoOverride.IsChecked)
            {
                Storage.Settings.collapseOverride = CollapseOverride.None;
            }
            else if ((bool)OverrideMention.IsChecked)
            {
                Storage.Settings.collapseOverride = CollapseOverride.Mention;
            }
            else if ((bool)OverrideUnread.IsChecked)
            {
                Storage.Settings.collapseOverride = CollapseOverride.Unread;
            }

            //Storage.Settings.MainOpacity = MainPanelBlur.Value;
            //Storage.Settings.SecondaryOpacity = SecondaryPanelBlur.Value;
            //Storage.Settings.TertiaryOpacity = TertiaryPanelBlur.Value;
            //Storage.Settings.CmdOpacity = CommandBarBlur.Value;

            //Storage.Settings.CustomBG = CustomBGToggle.IsOn;
            //Storage.Settings.BGFilePath = FilePath.Text;

            Storage.Settings.NoiseSensitivity = (int)NoiseSensitivity.Value;

            Storage.Settings.OutputDevice = (OutputDevices.SelectedItem as ComboBoxItem).Tag.ToString();
            Storage.Settings.InputDevice  = (InputDevices.SelectedItem as ComboBoxItem).Tag.ToString();


            standardNetwork.TTL        = (bool)TTLAttachments.IsChecked;
            standardNetwork.SmallIcons = (bool)HideSIcons.IsChecked;
            mobileNetwork.TTL          = (bool)TTLAttachmentsMD.IsChecked;
            mobileNetwork.SmallIcons   = (bool)HideSIconsMD.IsChecked;

            Storage.Settings.StandardData = standardNetwork.GetInt();
            Storage.Settings.MobileData   = mobileNetwork.GetInt();


            Storage.SaveAppSettings();
            Storage.SettingsChanged();
            CloseButton_Click(null, null);
        }