mirror of
https://github.com/ayufan/steam-deck-tools.git
synced 2026-04-06 06:43:49 +00:00
Improve FanControl UI
This commit is contained in:
parent
e4914dbffb
commit
2b8951dbf3
4 changed files with 91 additions and 33 deletions
|
|
@ -37,17 +37,23 @@ namespace FanControl
|
|||
notifyIcon.Text = Text;
|
||||
notifyIcon.Visible = true;
|
||||
|
||||
toolStripMenuItemAlwaysOnTop.Checked = TopMost = Properties.Settings.Default.AlwaysOnTop;
|
||||
TopMost = Properties.Settings.Default.AlwaysOnTop;
|
||||
toolStripMenuItemAlwaysOnTop.Checked = TopMost;
|
||||
toolStripMenuItemAlwaysOnTopContext.Checked = TopMost;
|
||||
|
||||
toolStripMenuItemStartupOnBoot.Visible = startupManager.IsAvailable;
|
||||
toolStripMenuItemStartupOnBoot.Checked = startupManager.Startup;
|
||||
|
||||
propertyGrid1.SelectedObject = fanControl;
|
||||
propertyGrid1.ExpandAllGridItems();
|
||||
toolStripMenuItemStartupOnBootContext.Visible = startupManager.IsAvailable;
|
||||
toolStripMenuItemStartupOnBootContext.Checked = startupManager.Startup;
|
||||
|
||||
foreach (var item in Enum.GetValues(typeof(FanMode)))
|
||||
{
|
||||
var menuItem = new ToolStripMenuItem(item.ToString()) { Tag = item };
|
||||
menuItem.Click += FanMode_Click;
|
||||
int insertIndex = contextMenu.Items.IndexOf(toolStripSeparatorEndOfModes);
|
||||
contextMenu.Items.Insert(insertIndex, menuItem);
|
||||
|
||||
fanModeSelectMenu.Items.Add(item);
|
||||
fanModeSelectNotifyMenu.Items.Add(item);
|
||||
}
|
||||
|
||||
try
|
||||
|
|
@ -60,6 +66,9 @@ namespace FanControl
|
|||
setFanMode(FanMode.Default);
|
||||
}
|
||||
|
||||
propertyGrid1.SelectedObject = fanControl;
|
||||
propertyGrid1.ExpandAllGridItems();
|
||||
|
||||
notifyIcon.ShowBalloonTip(3000, Text, "Fan Control Started", ToolTipIcon.Info);
|
||||
|
||||
Microsoft.Win32.SystemEvents.PowerModeChanged += SystemEvents_PowerModeChanged;
|
||||
|
|
@ -83,17 +92,28 @@ namespace FanControl
|
|||
private void setFanMode(FanMode mode)
|
||||
{
|
||||
fanControl.SetMode(mode);
|
||||
fanModeSelectMenu.SelectedItem = mode;
|
||||
fanModeSelectNotifyMenu.SelectedItem = mode;
|
||||
Properties.Settings.Default["FanMode"] = mode.ToString();
|
||||
Properties.Settings.Default.Save();
|
||||
|
||||
foreach (ToolStripItem menuItem in contextMenu.Items)
|
||||
{
|
||||
if (menuItem is ToolStripMenuItem && menuItem.Tag is FanMode)
|
||||
((ToolStripMenuItem)menuItem).Checked = ((FanMode)menuItem.Tag == mode);
|
||||
}
|
||||
|
||||
fanModeSelectMenu.SelectedItem = mode;
|
||||
}
|
||||
|
||||
private void fanModeSelect_SelectedValueChanged(object sender, EventArgs e)
|
||||
private void FanMode_Click(object? sender, EventArgs e)
|
||||
{
|
||||
var comboBox = (ToolStripComboBox)sender;
|
||||
var selectedMode = (FanMode)comboBox.SelectedItem;
|
||||
setFanMode(selectedMode);
|
||||
var menuItem = (ToolStripMenuItem)sender;
|
||||
setFanMode((FanMode)menuItem.Tag);
|
||||
}
|
||||
|
||||
private void fanModeSelectMenu_SelectedIndexChanged(object sender, EventArgs e)
|
||||
{
|
||||
var menuItem = (ToolStripComboBox)sender;
|
||||
setFanMode((FanMode)menuItem.SelectedItem);
|
||||
}
|
||||
|
||||
private void FanControlForm_FormClosing(object sender, FormClosingEventArgs e)
|
||||
|
|
@ -155,6 +175,7 @@ namespace FanControl
|
|||
{
|
||||
startupManager.Startup = !startupManager.Startup;
|
||||
toolStripMenuItemStartupOnBoot.Checked = startupManager.Startup;
|
||||
toolStripMenuItemStartupOnBootContext.Checked = startupManager.Startup;
|
||||
}
|
||||
|
||||
private void help_DoubleClick(object sender, EventArgs e)
|
||||
|
|
@ -164,8 +185,9 @@ namespace FanControl
|
|||
|
||||
private void toolStripMenuItemAlwaysOnTop_Click(object sender, EventArgs e)
|
||||
{
|
||||
toolStripMenuItemAlwaysOnTop.Checked = !toolStripMenuItemAlwaysOnTop.Checked;
|
||||
TopMost = toolStripMenuItemAlwaysOnTop.Checked;
|
||||
TopMost = !TopMost;
|
||||
toolStripMenuItemAlwaysOnTop.Checked = TopMost;
|
||||
toolStripMenuItemAlwaysOnTopContext.Checked = TopMost;
|
||||
Properties.Settings.Default.AlwaysOnTop = toolStripMenuItemAlwaysOnTop.Checked;
|
||||
Properties.Settings.Default.Save();
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue