/ src / settings-ui / Settings.UI.Library / ZoomItProperties.cs
ZoomItProperties.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  using Settings.UI.Library.Attributes;
 7  
 8  namespace Microsoft.PowerToys.Settings.UI.Library
 9  {
10      public class ZoomItProperties
11      {
12          public ZoomItProperties()
13          {
14          }
15  
16          [CmdConfigureIgnore]
17          public static HotkeySettings DefaultToggleKey => new HotkeySettings(false, true, false, false, '1'); // Ctrl+1
18  
19          [CmdConfigureIgnore]
20          public static HotkeySettings DefaultLiveZoomToggleKey => new HotkeySettings(false, true, false, false, '4'); // Ctrl+4
21  
22          [CmdConfigureIgnore]
23          public static HotkeySettings DefaultDrawToggleKey => new HotkeySettings(false, true, false, false, '2'); // Ctrl+2
24  
25          [CmdConfigureIgnore]
26          public static HotkeySettings DefaultRecordToggleKey => new HotkeySettings(false, true, false, false, '5'); // Ctrl+5
27  
28          [CmdConfigureIgnore]
29          public static HotkeySettings DefaultSnipToggleKey => new HotkeySettings(false, true, false, false, '6'); // Ctrl+6
30  
31          [CmdConfigureIgnore]
32          public static HotkeySettings DefaultBreakTimerKey => new HotkeySettings(false, true, false, false, '3'); // Ctrl+3
33  
34          [CmdConfigureIgnore]
35          public static HotkeySettings DefaultDemoTypeToggleKey => new HotkeySettings(false, true, false, false, '7'); // Ctrl+7
36  
37          public KeyboardKeysProperty ToggleKey { get; set; }
38  
39          public KeyboardKeysProperty LiveZoomToggleKey { get; set; }
40  
41          public KeyboardKeysProperty DrawToggleKey { get; set; }
42  
43          public KeyboardKeysProperty RecordToggleKey { get; set; }
44  
45          public KeyboardKeysProperty SnipToggleKey { get; set; }
46  
47          public KeyboardKeysProperty BreakTimerKey { get; set; }
48  
49          public StringProperty Font { get; set; }
50  
51          public KeyboardKeysProperty DemoTypeToggleKey { get; set; }
52  
53          public StringProperty DemoTypeFile { get; set; }
54  
55          public IntProperty DemoTypeSpeedSlider { get; set; }
56  
57          public BoolProperty DemoTypeUserDrivenMode { get; set; }
58  
59          public IntProperty BreakTimeout { get; set; }
60  
61          public IntProperty BreakOpacity { get; set; }
62  
63          public BoolProperty BreakPlaySoundFile { get; set; }
64  
65          public StringProperty BreakSoundFile { get; set; }
66  
67          public BoolProperty BreakShowBackgroundFile { get; set; }
68  
69          public BoolProperty BreakBackgroundStretch { get; set; }
70  
71          public StringProperty BreakBackgroundFile { get; set; }
72  
73          public IntProperty BreakTimerPosition { get; set; }
74  
75          public BoolProperty BreakShowDesktop { get; set; }
76  
77          public BoolProperty ShowExpiredTime { get; set; }
78  
79          public BoolProperty ShowTrayIcon { get; set; }
80  
81          [JsonPropertyName("AnimnateZoom")]
82          public BoolProperty AnimateZoom { get; set; }
83  
84          public BoolProperty SmoothImage { get; set; }
85  
86          public IntProperty ZoominSliderLevel { get; set; }
87  
88          public IntProperty RecordScaling { get; set; }
89  
90          public StringProperty RecordFormat { get; set; }
91  
92          public BoolProperty CaptureSystemAudio { get; set; }
93  
94          public BoolProperty CaptureAudio { get; set; }
95  
96          public StringProperty MicrophoneDeviceId { get; set; }
97      }
98  }