91 lines
3.1 KiB
C#
91 lines
3.1 KiB
C#
|
using CC_Functions.W32;
|
|||
|
using System;
|
|||
|
using System.Drawing;
|
|||
|
using System.Windows.Forms;
|
|||
|
using Resizor.Properties;
|
|||
|
using Microsoft.Win32;
|
|||
|
|
|||
|
namespace Resizor
|
|||
|
{
|
|||
|
public partial class SettingsForm : Form
|
|||
|
{
|
|||
|
RegistryKey rkApp;
|
|||
|
string appName = "Rasizor";
|
|||
|
public SettingsForm()
|
|||
|
{
|
|||
|
InitializeComponent();
|
|||
|
Program.kh = new KeyboardHook();
|
|||
|
keySelectButton.Text = Settings.Default.ImmediateResizeKey.ToString();
|
|||
|
keySelectButton.Tag = false;
|
|||
|
rowsSelect.Value = Settings.Default.ResizeDividor.Y;
|
|||
|
columnsSelect.Value = Settings.Default.ResizeDividor.X;
|
|||
|
rkApp = Registry.CurrentUser.OpenSubKey(@"SOFTWARE\Microsoft\Windows\CurrentVersion\Run", true);
|
|||
|
startupBox.Checked = rkApp.GetValue(appName) != null;
|
|||
|
}
|
|||
|
|
|||
|
private void KeySelectButton_Click(object sender, EventArgs e)
|
|||
|
{
|
|||
|
if ((bool)keySelectButton.Tag)
|
|||
|
{
|
|||
|
Program.kh.OnKeyPress -= Hook_OnKeyPress;
|
|||
|
keySelectButton.BackColor = SystemColors.Control;
|
|||
|
keySelectButton.Tag = false;
|
|||
|
keySelectButton.Text = Settings.Default.ImmediateResizeKey.ToString();
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
keySelectButton.BackColor = Color.Red;
|
|||
|
keySelectButton.Text = "Cancel";
|
|||
|
keySelectButton.Tag = true;
|
|||
|
Program.kh.OnKeyPress += Hook_OnKeyPress;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
private void Hook_OnKeyPress(KeyboardHookEventArgs e)
|
|||
|
{
|
|||
|
Program.kh.OnKeyPress -= Hook_OnKeyPress;
|
|||
|
keySelectButton.BackColor = SystemColors.Control;
|
|||
|
if (e.Key != Keys.Escape)
|
|||
|
{
|
|||
|
Settings.Default.ImmediateResizeKey = e.Key;
|
|||
|
Settings.Default.Save();
|
|||
|
}
|
|||
|
keySelectButton.Text = Settings.Default.ImmediateResizeKey.ToString();
|
|||
|
keySelectButton.Tag = false;
|
|||
|
}
|
|||
|
|
|||
|
private void RowsSelect_ValueChanged(object sender, EventArgs e)
|
|||
|
{
|
|||
|
Point tmp = Settings.Default.ResizeDividor;
|
|||
|
tmp.Y = (int)rowsSelect.Value;
|
|||
|
Settings.Default.ResizeDividor = tmp;
|
|||
|
Settings.Default.Save();
|
|||
|
}
|
|||
|
|
|||
|
private void ColumnsSelect_ValueChanged(object sender, EventArgs e)
|
|||
|
{
|
|||
|
Point tmp = Settings.Default.ResizeDividor;
|
|||
|
tmp.X = (int)columnsSelect.Value;
|
|||
|
Settings.Default.ResizeDividor = tmp;
|
|||
|
Settings.Default.Save();
|
|||
|
}
|
|||
|
|
|||
|
private void StartupBox_CheckedChanged(object sender, EventArgs e)
|
|||
|
{
|
|||
|
try
|
|||
|
{
|
|||
|
if (startupBox.Checked)
|
|||
|
rkApp.SetValue(appName, Application.ExecutablePath.ToString());
|
|||
|
else
|
|||
|
rkApp.DeleteValue(appName, false);
|
|||
|
startupBox.Checked = rkApp.GetValue(appName) != null;
|
|||
|
}
|
|||
|
catch (Exception e1)
|
|||
|
{
|
|||
|
startupBox.Checked = rkApp.GetValue(appName) != null;
|
|||
|
MessageBox.Show(e1.ToString(), "Failed");
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|