1
- using System ;
2
- using System . Windows . Forms ;
3
- using SoundSwitch . Framework . Factory ;
1
+ using SoundSwitch . Framework . Factory ;
4
2
using SoundSwitch . Localization ;
5
- using SoundSwitch . Util ;
6
3
7
4
namespace SoundSwitch . Framework . Profile . Trigger
8
5
{
@@ -15,7 +12,8 @@ public enum Enum
15
12
Process ,
16
13
Steam ,
17
14
Startup ,
18
- UwpApp
15
+ UwpApp ,
16
+ TrayMenu
19
17
}
20
18
21
19
private static readonly IEnumImplList < Enum , ITriggerDefinition > Impl =
@@ -26,7 +24,8 @@ public enum Enum
26
24
new WindowTrigger ( ) ,
27
25
new SteamBigPictureTrigger ( ) ,
28
26
new Startup ( ) ,
29
- new UwpApp ( )
27
+ new UwpApp ( ) ,
28
+ new TrayMenu ( )
30
29
} ;
31
30
32
31
public TriggerFactory ( ) : base ( Impl )
@@ -66,68 +65,76 @@ public override string ToString()
66
65
return Label ;
67
66
}
68
67
69
- public virtual TriggerFactory . Enum TypeEnum { get ; }
70
- public virtual string Label { get ; }
71
- public virtual int MaxOccurence { get ; } = - 1 ;
72
- public virtual int MaxGlobalOccurence { get ; } = - 1 ;
73
- public abstract string Description { get ; }
74
- public virtual bool CanRestoreDevices { get ; } = false ;
75
- public virtual bool AlwaysDefaultAndRestoreDevice { get ; } = false ;
68
+ public virtual TriggerFactory . Enum TypeEnum { get ; }
69
+ public virtual string Label { get ; }
70
+ public virtual int MaxOccurence => - 1 ;
71
+ public virtual int MaxGlobalOccurence => - 1 ;
72
+ public abstract string Description { get ; }
73
+ public virtual bool CanRestoreDevices => false ;
74
+ public virtual bool AlwaysDefaultAndRestoreDevice => false ;
76
75
}
77
76
78
77
public class HotKeyTrigger : BaseTrigger
79
78
{
80
- public override TriggerFactory . Enum TypeEnum { get ; } = TriggerFactory . Enum . HotKey ;
81
- public override string Label => SettingsStrings . hotkeys ;
82
- public override string Description { get ; } = SettingsStrings . profile_trigger_hotkey_desc ;
83
- public override int MaxOccurence { get ; } = 1 ;
79
+ public override TriggerFactory . Enum TypeEnum => TriggerFactory . Enum . HotKey ;
80
+ public override string Label => SettingsStrings . hotkeys ;
81
+ public override string Description { get ; } = SettingsStrings . profile_trigger_hotkey_desc ;
82
+ public override int MaxOccurence => 1 ;
84
83
}
85
84
86
85
public class WindowTrigger : BaseTrigger
87
86
{
88
- public override TriggerFactory . Enum TypeEnum { get ; } = TriggerFactory . Enum . Window ;
89
- public override string Label => SettingsStrings . profile_trigger_window ;
90
- public override string Description { get ; } = SettingsStrings . profile_trigger_window_desc ;
91
- public override bool CanRestoreDevices { get ; } = true ;
87
+ public override TriggerFactory . Enum TypeEnum => TriggerFactory . Enum . Window ;
88
+ public override string Label => SettingsStrings . profile_trigger_window ;
89
+ public override string Description { get ; } = SettingsStrings . profile_trigger_window_desc ;
90
+ public override bool CanRestoreDevices => true ;
92
91
}
93
92
94
93
public class ProcessTrigger : BaseTrigger
95
94
{
96
- public override TriggerFactory . Enum TypeEnum { get ; } = TriggerFactory . Enum . Process ;
97
- public override string Label => SettingsStrings . profile_trigger_process ;
98
- public override string Description { get ; } = SettingsStrings . profile_trigger_process_desc ;
99
- public override bool CanRestoreDevices { get ; } = true ;
95
+ public override TriggerFactory . Enum TypeEnum => TriggerFactory . Enum . Process ;
96
+ public override string Label => SettingsStrings . profile_trigger_process ;
97
+ public override string Description { get ; } = SettingsStrings . profile_trigger_process_desc ;
98
+ public override bool CanRestoreDevices => true ;
100
99
}
101
100
102
101
public class SteamBigPictureTrigger : BaseTrigger
103
102
{
104
- public override TriggerFactory . Enum TypeEnum { get ; } = TriggerFactory . Enum . Steam ;
105
- public override string Label => SettingsStrings . profile_trigger_steam ;
106
-
107
- public override int MaxOccurence { get ; } = 1 ;
108
- public override int MaxGlobalOccurence { get ; } = 1 ;
109
- public override string Description { get ; } = SettingsStrings . profile_trigger_steam_desc ;
110
- public override bool CanRestoreDevices { get ; } = true ;
111
- public override bool AlwaysDefaultAndRestoreDevice { get ; } = true ;
103
+ public override TriggerFactory . Enum TypeEnum => TriggerFactory . Enum . Steam ;
104
+ public override string Label => SettingsStrings . profile_trigger_steam ;
105
+
106
+ public override int MaxOccurence => 1 ;
107
+ public override int MaxGlobalOccurence => 1 ;
108
+ public override string Description { get ; } = SettingsStrings . profile_trigger_steam_desc ;
109
+ public override bool CanRestoreDevices => true ;
110
+ public override bool AlwaysDefaultAndRestoreDevice => true ;
112
111
}
113
112
114
113
public class Startup : BaseTrigger
115
114
{
116
- public override TriggerFactory . Enum TypeEnum { get ; } = TriggerFactory . Enum . Startup ;
117
- public override string Label => SettingsStrings . profile_trigger_startup ;
115
+ public override TriggerFactory . Enum TypeEnum => TriggerFactory . Enum . Startup ;
116
+ public override string Label => SettingsStrings . profile_trigger_startup ;
118
117
119
- public override int MaxOccurence { get ; } = 1 ;
120
- public override int MaxGlobalOccurence { get ; } = 1 ;
118
+ public override int MaxOccurence => 1 ;
119
+ public override int MaxGlobalOccurence => 1 ;
121
120
122
121
public override string Description { get ; } = SettingsStrings . profile_trigger_startup_desc ;
123
122
}
124
123
125
124
public class UwpApp : BaseTrigger
126
125
{
127
- public override TriggerFactory . Enum TypeEnum { get ; } = TriggerFactory . Enum . UwpApp ;
128
- public override string Label => SettingsStrings . profile_trigger_uwp ;
129
- public override bool CanRestoreDevices { get ; } = true ;
130
- public override string Description => SettingsStrings . profile_trigger_uwp_desc ;
131
- public override bool AlwaysDefaultAndRestoreDevice { get ; } = true ;
126
+ public override TriggerFactory . Enum TypeEnum => TriggerFactory . Enum . UwpApp ;
127
+ public override string Label => SettingsStrings . profile_trigger_uwp ;
128
+ public override bool CanRestoreDevices => true ;
129
+ public override string Description => SettingsStrings . profile_trigger_uwp_desc ;
130
+ public override bool AlwaysDefaultAndRestoreDevice => true ;
131
+ }
132
+
133
+ public class TrayMenu : BaseTrigger
134
+ {
135
+ public override string Description => SettingsStrings . profile_trigger_trayMenu_desc ;
136
+ public override TriggerFactory . Enum TypeEnum => TriggerFactory . Enum . TrayMenu ;
137
+ public override string Label => SettingsStrings . profile_trigger_trayMenu ;
138
+ public override int MaxOccurence => 1 ;
132
139
}
133
140
}
0 commit comments