mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-07 19:57:07 +02:00
Use variable instead of global static method
1. introduce variable 2. part of #389 3. refactoring program suffix in program plugin 4. 全局变量一时爽,代码重构火葬场
This commit is contained in:
@@ -17,6 +17,7 @@ namespace Wox.Plugin.CMD
|
||||
private PluginInitContext context;
|
||||
private bool WinRStroked;
|
||||
private readonly KeyboardSimulator keyboardSimulator = new KeyboardSimulator(new InputSimulator());
|
||||
private readonly CMDStorage _settings = CMDStorage.Instance;
|
||||
|
||||
public List<Result> Query(Query query)
|
||||
{
|
||||
@@ -80,7 +81,7 @@ namespace Wox.Plugin.CMD
|
||||
|
||||
private List<Result> GetHistoryCmds(string cmd, Result result)
|
||||
{
|
||||
IEnumerable<Result> history = CMDStorage.Instance.CMDHistory.Where(o => o.Key.Contains(cmd))
|
||||
IEnumerable<Result> history = _settings.CMDHistory.Where(o => o.Key.Contains(cmd))
|
||||
.OrderByDescending(o => o.Value)
|
||||
.Select(m =>
|
||||
{
|
||||
@@ -126,7 +127,7 @@ namespace Wox.Plugin.CMD
|
||||
|
||||
private List<Result> ResultsFromlHistory()
|
||||
{
|
||||
IEnumerable<Result> history = CMDStorage.Instance.CMDHistory.OrderByDescending(o => o.Value)
|
||||
IEnumerable<Result> history = _settings.CMDHistory.OrderByDescending(o => o.Value)
|
||||
.Select(m => new Result
|
||||
{
|
||||
Title = m.Key,
|
||||
@@ -143,7 +144,7 @@ namespace Wox.Plugin.CMD
|
||||
|
||||
private void ExecuteCMD(string cmd, bool runAsAdministrator = false)
|
||||
{
|
||||
var arguments = CMDStorage.Instance.LeaveCmdOpen ? $"/k {cmd}" : $"/c {cmd} & pause";
|
||||
var arguments = _settings.LeaveCmdOpen ? $"/k {cmd}" : $"/c {cmd} & pause";
|
||||
var info = new ProcessStartInfo
|
||||
{
|
||||
UseShellExecute = true,
|
||||
@@ -154,7 +155,7 @@ namespace Wox.Plugin.CMD
|
||||
try
|
||||
{
|
||||
Process.Start(info);
|
||||
CMDStorage.Instance.AddCmdHistory(cmd);
|
||||
_settings.AddCmdHistory(cmd);
|
||||
}
|
||||
catch (FileNotFoundException e)
|
||||
{
|
||||
@@ -170,7 +171,7 @@ namespace Wox.Plugin.CMD
|
||||
|
||||
bool API_GlobalKeyboardEvent(int keyevent, int vkcode, SpecialKeyState state)
|
||||
{
|
||||
if (CMDStorage.Instance.ReplaceWinR)
|
||||
if (_settings.ReplaceWinR)
|
||||
{
|
||||
if (keyevent == (int)KeyEvent.WM_KEYDOWN && vkcode == (int)Keys.R && state.WinPressed)
|
||||
{
|
||||
@@ -196,7 +197,7 @@ namespace Wox.Plugin.CMD
|
||||
|
||||
public Control CreateSettingPanel()
|
||||
{
|
||||
return new CMDSetting();
|
||||
return new CMDSetting(_settings);
|
||||
}
|
||||
|
||||
public string GetTranslatedPluginTitle()
|
||||
|
||||
@@ -5,37 +5,40 @@ namespace Wox.Plugin.CMD
|
||||
{
|
||||
public partial class CMDSetting : UserControl
|
||||
{
|
||||
public CMDSetting()
|
||||
private readonly CMDStorage _settings;
|
||||
|
||||
public CMDSetting(CMDStorage settings)
|
||||
{
|
||||
InitializeComponent();
|
||||
_settings = settings;
|
||||
}
|
||||
|
||||
private void CMDSetting_OnLoaded(object sender, RoutedEventArgs re)
|
||||
{
|
||||
cbReplaceWinR.IsChecked = CMDStorage.Instance.ReplaceWinR;
|
||||
cbLeaveCmdOpen.IsChecked = CMDStorage.Instance.LeaveCmdOpen;
|
||||
cbReplaceWinR.IsChecked = _settings.ReplaceWinR;
|
||||
cbLeaveCmdOpen.IsChecked = _settings.LeaveCmdOpen;
|
||||
|
||||
cbLeaveCmdOpen.Checked += (o, e) =>
|
||||
{
|
||||
CMDStorage.Instance.LeaveCmdOpen = true;
|
||||
CMDStorage.Instance.Save();
|
||||
_settings.LeaveCmdOpen = true;
|
||||
_settings.Save();
|
||||
};
|
||||
|
||||
cbLeaveCmdOpen.Unchecked += (o, e) =>
|
||||
{
|
||||
CMDStorage.Instance.LeaveCmdOpen = false;
|
||||
CMDStorage.Instance.Save();
|
||||
_settings.LeaveCmdOpen = false;
|
||||
_settings.Save();
|
||||
};
|
||||
|
||||
cbReplaceWinR.Checked += (o, e) =>
|
||||
{
|
||||
CMDStorage.Instance.ReplaceWinR = true;
|
||||
CMDStorage.Instance.Save();
|
||||
_settings.ReplaceWinR = true;
|
||||
_settings.Save();
|
||||
};
|
||||
cbReplaceWinR.Unchecked += (o, e) =>
|
||||
{
|
||||
CMDStorage.Instance.ReplaceWinR = false;
|
||||
CMDStorage.Instance.Save();
|
||||
_settings.ReplaceWinR = false;
|
||||
_settings.Save();
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user