/ src / settings-ui / Settings.UI.Library / PowerAccentProperties.cs
PowerAccentProperties.cs
 1  // Copyright (c) Microsoft Corporation
 2  // The Microsoft Corporation licenses this file to you under the MIT license.
 3  // See the LICENSE file in the project root for more information.
 4  
 5  using System.Text.Json.Serialization;
 6  
 7  using Microsoft.PowerToys.Settings.UI.Library.Enumerations;
 8  
 9  namespace Microsoft.PowerToys.Settings.UI.Library
10  {
11      public class PowerAccentProperties
12      {
13          [JsonPropertyName("activation_key")]
14          public PowerAccentActivationKey ActivationKey { get; set; }
15  
16          [JsonPropertyName("do_not_activate_on_game_mode")]
17          public bool DoNotActivateOnGameMode { get; set; }
18  
19          [JsonPropertyName("toolbar_position")]
20          public StringProperty ToolbarPosition { get; set; }
21  
22          [JsonPropertyName("input_time_ms")]
23          public IntProperty InputTime { get; set; }
24  
25          [JsonPropertyName("selected_lang")]
26          public StringProperty SelectedLang { get; set; }
27  
28          [JsonPropertyName("excluded_apps")]
29          public StringProperty ExcludedApps { get; set; }
30  
31          [JsonPropertyName("show_description")]
32          public bool ShowUnicodeDescription { get; set; }
33  
34          [JsonPropertyName("sort_by_usage_frequency")]
35          public bool SortByUsageFrequency { get; set; }
36  
37          [JsonPropertyName("start_selection_from_the_left")]
38          public bool StartSelectionFromTheLeft { get; set; }
39  
40          public PowerAccentProperties()
41          {
42              ActivationKey = PowerAccentActivationKey.Both;
43              DoNotActivateOnGameMode = true;
44              ToolbarPosition = "Top center";
45              InputTime = new IntProperty(PowerAccentSettings.DefaultInputTimeMs);
46              SelectedLang = "ALL";
47              ExcludedApps = new StringProperty();
48              ShowUnicodeDescription = false;
49              SortByUsageFrequency = false;
50              StartSelectionFromTheLeft = false;
51          }
52      }
53  }