83 lines
2.1 KiB
C#
83 lines
2.1 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel;
|
|
using System.Data;
|
|
using System.Drawing;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
using System.Windows.Forms;
|
|
using AsusFanControl;
|
|
|
|
namespace AsusFanControlGUI
|
|
{
|
|
public partial class Form1 : Form
|
|
{
|
|
AsusControl asusControl = new AsusControl();
|
|
int fanSpeed = 0;
|
|
|
|
public Form1()
|
|
{
|
|
InitializeComponent();
|
|
|
|
trackBarFanSpeed.Value = Properties.Settings.Default.fanSpeed;
|
|
}
|
|
|
|
private void setFanSpeed()
|
|
{
|
|
var value = trackBarFanSpeed.Value;
|
|
Properties.Settings.Default.fanSpeed = value;
|
|
Properties.Settings.Default.Save();
|
|
|
|
if (!checkBoxTurnOn.Checked)
|
|
value = 0;
|
|
else if(value < 40)
|
|
value = 0;
|
|
else if (value > 99)
|
|
value = 99;
|
|
|
|
if (!checkBoxTurnOn.Checked)
|
|
labelValue.Text = "turned off";
|
|
else if (value == 0)
|
|
labelValue.Text = "turned off (set value between 40 and 100)";
|
|
else
|
|
labelValue.Text = value.ToString();
|
|
|
|
if (fanSpeed == value)
|
|
return;
|
|
|
|
fanSpeed = value;
|
|
|
|
asusControl.SetFansSpeed(value);
|
|
}
|
|
|
|
private void trackBar1_MouseCaptureChanged(object sender, EventArgs e)
|
|
{
|
|
setFanSpeed();
|
|
}
|
|
|
|
private void trackBar1_KeyUp(object sender, KeyEventArgs e)
|
|
{
|
|
if (e.KeyCode != Keys.Left && e.KeyCode != Keys.Right)
|
|
return;
|
|
|
|
setFanSpeed();
|
|
}
|
|
|
|
private void button1_Click(object sender, EventArgs e)
|
|
{
|
|
labelRPM.Text = string.Join(" ", asusControl.GetFanSpeeds());
|
|
}
|
|
|
|
private void checkBoxTurnOn_CheckedChanged(object sender, EventArgs e)
|
|
{
|
|
setFanSpeed();
|
|
}
|
|
|
|
private void button2_Click(object sender, EventArgs e)
|
|
{
|
|
labelCPUTemp.Text = $"{asusControl.Thermal_Read_Cpu_Temperature()}";
|
|
}
|
|
}
|
|
}
|