Compare commits

..

28 Commits

Author SHA1 Message Date
Serge
99dfcbb95c Clock reset revert 2024-01-17 17:33:16 +01:00
Serge
736cad7ff5 Ally controller wake up tweaks 2024-01-17 17:22:32 +01:00
Serge
b3b0b512d2 Sleeing controller fix 2024-01-17 16:02:58 +01:00
Serge
2462bc92de Labels fix 2024-01-17 14:10:47 +01:00
Serge
fcfa1821a6 DarkTheme fix 2024-01-17 14:02:05 +01:00
Serge
70e2e2e06e Label tweaks 2024-01-17 13:56:17 +01:00
Serge
c0b5ef93d3 Version Bump 2024-01-17 13:50:08 +01:00
Serge
737c83ec22 Ally mappings 2024-01-17 13:33:19 +01:00
Serge
fd1d929d0d Ally Mappings 2024-01-17 12:28:23 +01:00
Serge
c2aa4da1db Ally Mappings 2024-01-17 12:18:59 +01:00
Serge
adcbe33fbb Ally bindings 2024-01-16 23:49:28 +01:00
Serge
31e52dbf00 Ally Mappings 2024-01-16 21:00:51 +01:00
Serge
acef2407c7 Ally Mappings 2024-01-16 20:53:09 +01:00
Serge
6dd4905b95 Merge branch 'main' of https://github.com/seerge/g-helper 2024-01-16 20:31:22 +01:00
Serge
1657e89599 Ally Bindings 2024-01-16 20:31:20 +01:00
Serge
745deef642 New translations strings.resx (Romanian) (#1934) 2024-01-16 15:07:51 +01:00
IceStormNG
21ad10ce4e Fix for Gladius II Origin (#1936)
* Support for Strix Carry (P508)

* Fixes polling rate, angle snapping and debounce for Gladius II Origin.
2024-01-16 15:07:02 +01:00
Serge
5e7a2e8ced New translations strings.resx (Romanian) (#1932) 2024-01-16 12:11:46 +01:00
Serge
30fb32c3d5 Reste GPU clock limit when it's not set in new profile https://github.com/seerge/g-helper/issues/1915 2024-01-16 12:03:11 +01:00
Serge
ef442f3f11 Restored extra backlight checkboxes for Z13 https://github.com/seerge/g-helper/issues/1930 2024-01-16 11:54:31 +01:00
Serge
7bfd80b20f Ally M1/M2 bindings 2024-01-16 00:50:13 +01:00
Serge
4e1aa01fae Ally Controller Settings 2024-01-15 21:40:08 +01:00
Serge
2c8f14f783 Update bug_report.yml 2024-01-15 11:15:22 +01:00
Serge
cf46ed7eff Update bug_report.yml 2024-01-15 10:59:52 +01:00
Serge
8552eab367 Update bug_report.yml 2024-01-15 10:58:52 +01:00
Serge
abd28efb61 Update bug_report.yml 2024-01-15 10:56:44 +01:00
Serge
e161a76e66 Update bug_report.yml 2024-01-15 09:48:30 +01:00
Serge
0270a453b8 Input listener fix https://github.com/seerge/g-helper/issues/1924 2024-01-15 09:06:08 +01:00
26 changed files with 1959 additions and 369 deletions

View File

@@ -1,6 +1,5 @@
name: Bug Report
description: Something isn't working correctly
labels: ["bug"]
body:
- type: markdown
attributes:
@@ -58,15 +57,22 @@ body:
attributes:
label: Additional information.
description: If applicable, add screenshots or other relevant information to help explain your problem.
- type: checkboxes
- type: dropdown
id: armoury
attributes:
label: Armoury Crate
description: Do you have Armoury Crate installed?
options:
- Uninstalled
- Installed
- Never installed
default: 0
- type: input
id: asus
attributes:
label: Asus Software Running
description: Please check what Asus/Armoury Services do you have installed and running
options:
- label: Armoury Crate
- label: MyAsus
- label: Other Asus Services
label: Asus Services
description: How many Asus services do you have running (check ``Extra`` section in G-Helper)?
placeholder: e.g. None
- type: input
id: version
attributes:

View File

@@ -1,6 +1,8 @@
using GHelper.Gpu.AMD;
using GHelper.Input;
using GHelper.USB;
using HidSharp;
using System.Text;
namespace GHelper.Ally
{
@@ -9,9 +11,23 @@ namespace GHelper.Ally
{
Auto = 0,
Gamepad = 1,
WASD = 2,
Mouse = 3,
}
public enum BindingZone : byte
{
DPadUpDown = 1,
DPadLeftRight = 2,
StickClick = 3,
Bumper = 4,
AB = 5,
XY = 6,
ViewMenu = 7,
M1M2 = 8,
Trigger = 9
}
public class AllyControl
{
System.Timers.Timer timer = default!;
@@ -19,19 +35,196 @@ namespace GHelper.Ally
SettingsForm settings;
static ControllerMode mode = ControllerMode.Auto;
static ControllerMode _autoMode = ControllerMode.Auto;
static ControllerMode _mode = ControllerMode.Auto;
static ControllerMode _applyMode = ControllerMode.Mouse;
static int _autoCount = 0;
static int fpsLimit = -1;
public const int BindA = 0x0101;
public const int BindB = 0x0102;
public const int BindX = 0x0103;
public const int BindY = 0x0104;
public const int BindLB = 0x0105;
public const int BindRB = 0x0106;
public const int BindLS = 0x0107;
public const int BindRS = 0x0108;
public const int BindDU = 0x0109;
public const int BindDD = 0x010A;
public const int BindDL = 0x010B;
public const int BindDR = 0x010C;
public const int BindVB = 0x0111;
public const int BindMB = 0x0112;
public const int BindM1 = 0x028f;
public const int BindM2 = 0x028e;
public const int BindLT = 0x010d;
public const int BindRT = 0x010e;
static byte[] CommandReady = new byte[] { AsusHid.INPUT_ID, 0xd1, 0x0a, 0x01 };
static byte[] CommandSave = new byte[] { AsusHid.INPUT_ID, 0xd1, 0x0f, 0x20 };
public static Dictionary<int, string> BindCodes = new Dictionary<int, string>
{
{ -1, "--------" },
{ 0x0000, "[ Disabled ]" },
{ BindM1, "M1" },
{ BindM2, "M2" },
{ BindA, "A" },
{ BindB, "B" },
{ BindX, "X" },
{ BindY, "Y" },
{ BindLB, "Left Bumper" },
{ BindRB, "Right Bumper" },
{ BindLS, "Left Stick Click" },
{ BindRS, "Right Stick Click" },
{ BindDU, "DPad Up" },
{ BindDD, "DPad Down" },
{ BindDL, "DPad Left" },
{ BindDR, "DPad Right" },
{ BindVB, "View Button" },
{ BindMB, "Menu Button" },
{ 0x0113, "XBox/Steam" },
{ 0x0276, "Esc" },
{ 0x0250, "F1" },
{ 0x0260, "F2" },
{ 0x0240, "F3" },
{ 0x020C, "F4" },
{ 0x0203, "F5" },
{ 0x020b, "F6" },
{ 0x0280, "F7" },
{ 0x020a, "F8" },
{ 0x0201, "F9" },
{ 0x0209, "F10" },
{ 0x0278, "F11" },
{ 0x0207, "F12" },
{ 0x020E, "`" },
{ 0x0216, "1" },
{ 0x021E, "2" },
{ 0x0226, "3" },
{ 0x0225, "4" },
{ 0x022E, "5" },
{ 0x0236, "6" },
{ 0x023D, "7" },
{ 0x023E, "8" },
{ 0x0246, "9" },
{ 0x0245, "0" },
{ 0x024E, "-" },
{ 0x0255, "=" },
{ 0x0266, "Backspace" },
{ 0x020D, "Tab" },
{ 0x0215, "Q" },
{ 0x021D, "W" },
{ 0x0224, "E" },
{ 0x022D, "R" },
{ 0x022C, "T" },
{ 0x0235, "Y" },
{ 0x023C, "U" },
{ 0x0244, "O" },
{ 0x024D, "P" },
{ 0x0254, "[" },
{ 0x025B, "]" },
{ 0x025D, "|" },
{ 0x0258, "Caps" },
{ 0x021C, "A" },
{ 0x021B, "S" },
{ 0x0223, "D" },
{ 0x022B, "F" },
{ 0x0234, "G" },
{ 0x0233, "H" },
{ 0x023B, "J" },
{ 0x0242, "k" },
{ 0x024b, "l" },
{ 0x024c, ";" },
{ 0x0252, "'" },
{ 0x025A, "Enter" },
{ 0x0288, "LShift" },
{ 0x0222, "X" },
{ 0x021A, "Z" },
{ 0x0221, "C" },
{ 0x022A, "V" },
{ 0x0232, "B" },
{ 0x0231, "N" },
{ 0x023A, "M" },
{ 0x0241, "," },
{ 0x0249, "." },
{ 0x0289, "RShift" },
{ 0x028C, "LCtl" },
{ 0x0282, "Meta" },
{ 0x028A, "LAlt" },
{ 0x0229, "Space" },
{ 0x028B, "RAlt" },
{ 0x0284, "App menu" },
{ 0x028D, "RCtl" },
{ 0x02C3, "PrntScn" },
{ 0x027E, "ScrLk" },
{ 0x02C2, "Insert" },
{ 0x0294, "Home" },
{ 0x0296, "PgUp" },
{ 0x02C0, "Delete" },
{ 0x0295, "End" },
{ 0x0297, "PgDwn" },
{ 0x0298, "UpArrow" },
{ 0x0299, "DownArrow" },
{ 0x0291, "LeftArrow" },
{ 0x029B, "RightArrow" },
{ 0x0277, "NumLock" },
{ 0x0290, "NumSlash" },
{ 0x027C, "NumStar" },
{ 0x027B, "NumHyphen" },
{ 0x0270, "Num0" },
{ 0x0269, "Num1" },
{ 0x0272, "Num2" },
{ 0x027A, "Num3" },
{ 0x026B, "Num4" },
{ 0x0273, "Num5" },
{ 0x0274, "Num6" },
{ 0x026C, "Num7" },
{ 0x0275, "Num8" },
{ 0x027D, "Num9" },
{ 0x0279, "NumPlus" },
{ 0x0281, "NumEnter" },
{ 0x0271, "NumPeriod" },
{ 0x0301, "Mouse left click" },
{ 0x0302, "Mouse right click" },
{ 0x0303, "Mouse middle click" },
{ 0x0304, "Mouse scroll up" },
{ 0x0305, "Mouse scroll down" },
{ 0x0516, "Screenshot" },
{ 0x0519, "Show keyboard" },
{ 0x051c, "Show desktop" },
{ 0x051e, "Begin recording" },
{ 0x0501, "Mic off" },
{ 0x0502, "Vol Down" },
{ 0x0503, "Vol Up" }
};
public AllyControl(SettingsForm settingsForm)
{
if (!AppConfig.IsAlly()) return;
settings = settingsForm;
timer = new System.Timers.Timer(500);
timer = new System.Timers.Timer(300);
timer.Elapsed += Timer_Elapsed;
}
@@ -40,16 +233,17 @@ namespace GHelper.Ally
{
float fps = amdControl.GetFPS();
ControllerMode _newMode = (fps > 0) ? ControllerMode.Gamepad : ControllerMode.Mouse;
ControllerMode newMode = (fps > 0) ? ControllerMode.Gamepad : ControllerMode.Mouse;
if (_autoMode != _newMode) _autoCount++;
if (_applyMode != newMode) _autoCount++;
else _autoCount = 0;
if (_mode != ControllerMode.Auto) return;
if (_autoCount > 2)
{
_autoMode = _newMode;
_autoCount = 0;
AsusHid.WriteInput(new byte[] { AsusHid.INPUT_ID, 0xd1, 1, 1, (byte)_autoMode }, "ControllerAuto " + _autoMode);
ApplyMode(newMode);
Logger.WriteLine(fps.ToString());
}
@@ -60,14 +254,10 @@ namespace GHelper.Ally
if (AppConfig.IsAlly()) settings.VisualiseAlly(true);
else return;
Deadzones();
SetMode((ControllerMode)AppConfig.Get("controller_mode", (int)ControllerMode.Auto));
settings.VisualiseBacklight(InputDispatcher.GetBacklight());
fpsLimit = amdControl.GetFPSLimit();
Logger.WriteLine($"FPS Limit: {fpsLimit}");
settings.VisualiseFPSLimit(fpsLimit);
settings.VisualiseBacklight(InputDispatcher.GetBacklight());
settings.VisualiseFPSLimit(amdControl.GetFPSLimit());
}
@@ -103,16 +293,202 @@ namespace GHelper.Ally
settings.VisualiseBacklight(InputDispatcher.GetBacklight());
}
private void Deadzones()
static private byte[] DecodeBinding(int binding)
{
AsusHid.WriteInput(new byte[] { AsusHid.INPUT_ID, 0xd1, 4, 4, 0, 100, 0, 100 }, "ControllerDeadzone");
if (binding < 0) return new byte[2];
byte command = (byte)(binding & 0xFF);
byte device = (byte)((binding >> 8) & 0xFF);
byte[] code = new byte[10];
code[0] = device;
switch (device)
{
case 0x02:
code[2] = command;
break;
case 0x03:
code[4] = command;
break;
case 0x05:
code[3] = command;
break;
default:
code[1] = command;
break;
}
return code;
}
static private void BindZone(BindingZone zone)
{
int KeyL1, KeyR1;
int KeyL2, KeyR2;
switch (zone)
{
case BindingZone.DPadUpDown:
KeyL1 = AppConfig.Get("bind_du", BindDU);
KeyR1 = AppConfig.Get("bind_dd", BindDD);
KeyL2 = AppConfig.Get("bind2_du");
KeyR2 = AppConfig.Get("bind2_dd");
break;
case BindingZone.DPadLeftRight:
KeyL1 = AppConfig.Get("bind_dl", BindDL);
KeyR1 = AppConfig.Get("bind_dr", BindDR);
KeyL2 = AppConfig.Get("bind2_dl");
KeyR2 = AppConfig.Get("bind2_dr");
break;
case BindingZone.StickClick:
KeyL1 = AppConfig.Get("bind_ls", BindLS);
KeyR1 = AppConfig.Get("bind_rs", BindRS);
KeyL2 = AppConfig.Get("bind2_ls");
KeyR2 = AppConfig.Get("bind2_rs");
break;
case BindingZone.Bumper:
KeyL1 = AppConfig.Get("bind_lb", BindLB);
KeyR1 = AppConfig.Get("bind_rb", BindRB);
KeyL2 = AppConfig.Get("bind2_lb");
KeyR2 = AppConfig.Get("bind2_rb");
break;
case BindingZone.AB:
KeyL1 = AppConfig.Get("bind_a", BindA);
KeyR1 = AppConfig.Get("bind_b", BindB);
KeyL2 = AppConfig.Get("bind2_a");
KeyR2 = AppConfig.Get("bind2_b");
break;
case BindingZone.XY:
KeyL1 = AppConfig.Get("bind_x", BindX);
KeyR1 = AppConfig.Get("bind_y", BindY);
KeyL2 = AppConfig.Get("bind2_x");
KeyR2 = AppConfig.Get("bind2_y");
break;
case BindingZone.ViewMenu:
KeyL1 = AppConfig.Get("bind_vb", BindVB);
KeyR1 = AppConfig.Get("bind_mb", BindMB);
KeyL2 = AppConfig.Get("bind2_vb");
KeyR2 = AppConfig.Get("bind2_mb");
break;
case BindingZone.M1M2:
KeyL1 = AppConfig.Get("bind_m2", BindM2);
KeyR1 = AppConfig.Get("bind_m1", BindM1);
KeyL2 = AppConfig.Get("bind2_m2", BindM2);
KeyR2 = AppConfig.Get("bind2_m1", BindM1);
break;
default:
KeyL1 = AppConfig.Get("bind_trl", BindLT);
KeyR1 = AppConfig.Get("bind_trr", BindRT);
KeyL2 = AppConfig.Get("bind2_trl");
KeyR2 = AppConfig.Get("bind2_trr");
break;
}
if (KeyL1 == -1 && KeyR1 == -1) return;
byte[] bindings = new byte[64];
byte[] init = new byte[] { AsusHid.INPUT_ID, 0xd1, 0x02, (byte)zone, 0x2c };
init.CopyTo(bindings, 0);
DecodeBinding(KeyL1).CopyTo(bindings, 5);
DecodeBinding(KeyL2).CopyTo(bindings, 16);
DecodeBinding(KeyR1).CopyTo(bindings, 27);
DecodeBinding(KeyR2).CopyTo(bindings, 38);
AsusHid.WriteInput(CommandReady, null);
AsusHid.WriteInput(bindings, $"Bind{zone}");
}
static void WakeUp()
{
AsusHid.WriteInput(Encoding.ASCII.GetBytes("ZASUS Tech.Inc."), "Init");
}
static public void SetDeadzones()
{
WakeUp();
AsusHid.WriteInput(new byte[] { AsusHid.INPUT_ID, 0xd1, 4, 4,
(byte)AppConfig.Get("ls_min", 0),
(byte)AppConfig.Get("ls_max", 100),
(byte)AppConfig.Get("rs_min", 0),
(byte)AppConfig.Get("rs_max", 100)
}, "StickDeadzone");
AsusHid.WriteInput(new byte[] { AsusHid.INPUT_ID, 0xd1, 5, 4,
(byte)AppConfig.Get("lt_min", 0),
(byte)AppConfig.Get("lt_max", 100),
(byte)AppConfig.Get("rt_min", 0),
(byte)AppConfig.Get("rt_max", 100)
}, "TriggerDeadzone");
AsusHid.WriteInput(new byte[] { AsusHid.INPUT_ID, 0xd1, 6, 2,
(byte)AppConfig.Get("vibra", 100),
(byte)AppConfig.Get("vibra", 100)
}, "Vibration");
}
public static void ApplyMode(ControllerMode applyMode = ControllerMode.Auto)
{
Task.Run(() => {
HidStream? input = AsusHid.FindHidStream(AsusHid.INPUT_ID);
int count = 0;
while (input == null && count++ < 5)
{
input = AsusHid.FindHidStream(AsusHid.INPUT_ID);
Thread.Sleep(2000);
}
if (input == null)
{
Logger.WriteLine($"Controller not found");
return;
}
if (applyMode != ControllerMode.Auto) _applyMode = applyMode;
WakeUp();
AsusHid.WriteInput(new byte[] { AsusHid.INPUT_ID, 0xd1, 0x01, 0x01, (byte)_applyMode }, "Controller");
AsusHid.WriteInput(CommandSave, null);
BindZone(BindingZone.M1M2);
if (_applyMode == ControllerMode.Gamepad)
{
BindZone(BindingZone.DPadUpDown);
BindZone(BindingZone.DPadLeftRight);
BindZone(BindingZone.StickClick);
BindZone(BindingZone.Bumper);
BindZone(BindingZone.AB);
BindZone(BindingZone.XY);
BindZone(BindingZone.ViewMenu);
BindZone(BindingZone.Trigger);
}
AsusHid.WriteInput(CommandSave, null);
SetDeadzones();
});
}
private void SetMode(ControllerMode mode)
{
_mode = mode;
ApplyMode(mode);
AppConfig.Set("controller_mode", (int)mode);
if (mode == ControllerMode.Auto)
{
_autoMode = ControllerMode.Auto;
amdControl.StartFPS();
timer.Start();
}
@@ -120,31 +496,27 @@ namespace GHelper.Ally
{
timer.Stop();
amdControl.StopFPS();
AsusHid.WriteInput(new byte[] { AsusHid.INPUT_ID, 0xd1, 1, 1, (byte)mode }, "ControllerMode");
}
AppConfig.Set("controller_mode", (int)mode);
settings.VisualiseController(mode);
}
public void ToggleMode()
{
switch (mode)
switch (_mode)
{
case ControllerMode.Auto:
mode = ControllerMode.Gamepad;
SetMode(ControllerMode.Gamepad);
break;
case ControllerMode.Gamepad:
mode = ControllerMode.Mouse;
SetMode(ControllerMode.Mouse);
break;
case ControllerMode.Mouse:
mode = ControllerMode.Auto;
SetMode(ControllerMode.Auto);
break;
}
SetMode(mode);
}
}

View File

@@ -452,7 +452,7 @@ namespace Starlight.AnimeMatrix
}
}
SetBitmapDiagonal(bmp, (width - textWidth), height);
SetBitmapDiagonal(bmp, 5 , height);
}
}

View File

@@ -384,7 +384,7 @@ public static class AppConfig
public static bool IsStrixLimitedRGB()
{
return (ContainsModel("G614JV") || ContainsModel("G614JZ") || ContainsModel("G512LI") || ContainsModel("G513R") || ContainsModel("G713PV") || ContainsModel("G513IE") || ContainsModel("G713RC") || ContainsModel("G513QM")) && !Is("per_key_rgb");
return (ContainsModel("G614JV") || ContainsModel("G614JZ") || ContainsModel("G512LI") || ContainsModel("G513R") || ContainsModel("G713PV") || ContainsModel("G513IE") || ContainsModel("G713RC") || ContainsModel("G513QM") || ContainsModel("G531G")) && !Is("per_key_rgb");
}
public static bool IsNoDirectRGB()

View File

@@ -313,7 +313,7 @@ namespace GHelper
checkSleepLogo.CheckedChanged += CheckPower_CheckedChanged;
checkShutdownLogo.CheckedChanged += CheckPower_CheckedChanged;
if (!AppConfig.IsStrix())
if ((!AppConfig.IsStrix() && !AppConfig.IsZ13()) || AppConfig.IsStrixLimitedRGB() || AppConfig.IsARCNM())
{
labelBacklightBar.Visible = false;
checkAwakeBar.Visible = false;
@@ -321,10 +321,6 @@ namespace GHelper
checkSleepBar.Visible = false;
checkShutdownBar.Visible = false;
}
if ((!AppConfig.IsStrix() && !AppConfig.IsZ13()) || AppConfig.IsStrixLimitedRGB() || AppConfig.IsARCNM())
{
labelBacklightLid.Visible = false;
checkAwakeLid.Visible = false;
checkBootLid.Visible = false;
@@ -336,7 +332,6 @@ namespace GHelper
checkBootLogo.Visible = false;
checkSleepLogo.Visible = false;
checkShutdownLogo.Visible = false;
}
if (!AppConfig.IsStrix() && !AppConfig.IsZ13())

View File

@@ -15,7 +15,7 @@
<PlatformTarget>AnyCPU</PlatformTarget>
<ProduceReferenceAssembly>False</ProduceReferenceAssembly>
<AllowUnsafeBlocks>True</AllowUnsafeBlocks>
<AssemblyVersion>0.147</AssemblyVersion>
<AssemblyVersion>0.148</AssemblyVersion>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|AnyCPU'">

View File

@@ -168,6 +168,9 @@ public class AmdGpuControl : IGpuControl
if (_adlContextHandle == nint.Zero || _iGPU == null) return -1;
ADLFPSSettingsOutput settings;
if (ADL2_FPS_Settings_Get(_adlContextHandle, ((ADLAdapterInfo)_iGPU).AdapterIndex, out settings) != Adl2.ADL_SUCCESS) return -1;
Logger.WriteLine($"FPS Limit: {settings.ulACFPSCurrent}");
return settings.ulACFPSCurrent;
}

View File

@@ -145,18 +145,6 @@ namespace GHelper.Gpu
if (eco == 1)
{
/*
if (NvidiaSmi.GetDisplayActiveStatus())
{
DialogResult dialogResult = MessageBox.Show(Properties.Strings.EnableOptimusText, Properties.Strings.EnableOptimusTitle, MessageBoxButtons.YesNo);
if (dialogResult == DialogResult.No)
{
InitGPUMode();
return;
}
}
*/
HardwareControl.KillGPUApps();
}

748
app/Handheld.Designer.cs generated Normal file
View File

@@ -0,0 +1,748 @@
namespace GHelper
{
partial class Handheld
{
/// <summary>
/// Required designer variable.
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// Clean up any resources being used.
/// </summary>
/// <param name="disposing">true if managed resources should be disposed; otherwise, false.</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows Form Designer generated code
/// <summary>
/// Required method for Designer support - do not modify
/// the contents of this method with the code editor.
/// </summary>
private void InitializeComponent()
{
panelController = new Panel();
buttonReset = new UI.RButton();
panelVibra = new Panel();
labelVibra = new Label();
labelVibraTitle = new Label();
trackVibra = new TrackBar();
panelVibrationTitle = new Panel();
pictureVibration = new PictureBox();
labelVibraHeader = new Label();
panelRT = new Panel();
trackRTMax = new TrackBar();
labelRT = new Label();
trackRTMin = new TrackBar();
labelRTTitle = new Label();
panelLT = new Panel();
trackLTMax = new TrackBar();
labelLT = new Label();
trackLTMin = new TrackBar();
labelLTTitle = new Label();
panelTDeadzone = new Panel();
pictureTDeadzone = new PictureBox();
labelTDeadzone = new Label();
panelRS = new Panel();
trackRSMax = new TrackBar();
labelRS = new Label();
trackRSMin = new TrackBar();
labelRSTitle = new Label();
panelLS = new Panel();
trackLSMax = new TrackBar();
labelLS = new Label();
trackLSMin = new TrackBar();
labelLSTitle = new Label();
panelSDeadzone = new Panel();
pictureSDeadzone = new PictureBox();
labelSDeadzone = new Label();
panelBindings = new Panel();
tableBindings = new TableLayoutPanel();
labelPrimary = new Label();
labelSecondary = new Label();
panelBindingsTitle = new Panel();
pictureBindings = new PictureBox();
labelBindings = new Label();
panelController.SuspendLayout();
panelVibra.SuspendLayout();
((System.ComponentModel.ISupportInitialize)trackVibra).BeginInit();
panelVibrationTitle.SuspendLayout();
((System.ComponentModel.ISupportInitialize)pictureVibration).BeginInit();
panelRT.SuspendLayout();
((System.ComponentModel.ISupportInitialize)trackRTMax).BeginInit();
((System.ComponentModel.ISupportInitialize)trackRTMin).BeginInit();
panelLT.SuspendLayout();
((System.ComponentModel.ISupportInitialize)trackLTMax).BeginInit();
((System.ComponentModel.ISupportInitialize)trackLTMin).BeginInit();
panelTDeadzone.SuspendLayout();
((System.ComponentModel.ISupportInitialize)pictureTDeadzone).BeginInit();
panelRS.SuspendLayout();
((System.ComponentModel.ISupportInitialize)trackRSMax).BeginInit();
((System.ComponentModel.ISupportInitialize)trackRSMin).BeginInit();
panelLS.SuspendLayout();
((System.ComponentModel.ISupportInitialize)trackLSMax).BeginInit();
((System.ComponentModel.ISupportInitialize)trackLSMin).BeginInit();
panelSDeadzone.SuspendLayout();
((System.ComponentModel.ISupportInitialize)pictureSDeadzone).BeginInit();
panelBindings.SuspendLayout();
tableBindings.SuspendLayout();
panelBindingsTitle.SuspendLayout();
((System.ComponentModel.ISupportInitialize)pictureBindings).BeginInit();
SuspendLayout();
//
// panelController
//
panelController.AutoSize = true;
panelController.Controls.Add(buttonReset);
panelController.Controls.Add(panelVibra);
panelController.Controls.Add(panelVibrationTitle);
panelController.Controls.Add(panelRT);
panelController.Controls.Add(panelLT);
panelController.Controls.Add(panelTDeadzone);
panelController.Controls.Add(panelRS);
panelController.Controls.Add(panelLS);
panelController.Controls.Add(panelSDeadzone);
panelController.Dock = DockStyle.Left;
panelController.Location = new Point(10, 10);
panelController.Margin = new Padding(4);
panelController.MinimumSize = new Size(560, 800);
panelController.Name = "panelController";
panelController.Padding = new Padding(0, 0, 0, 18);
panelController.Size = new Size(560, 912);
panelController.TabIndex = 45;
//
// buttonReset
//
buttonReset.Activated = false;
buttonReset.Anchor = AnchorStyles.Bottom | AnchorStyles.Left;
buttonReset.BackColor = SystemColors.ControlLight;
buttonReset.BorderColor = Color.Transparent;
buttonReset.BorderRadius = 2;
buttonReset.FlatStyle = FlatStyle.Flat;
buttonReset.Location = new Point(20, 840);
buttonReset.Margin = new Padding(4, 2, 4, 2);
buttonReset.Name = "buttonReset";
buttonReset.Secondary = true;
buttonReset.Size = new Size(239, 50);
buttonReset.TabIndex = 54;
buttonReset.Text = "Reset";
buttonReset.UseVisualStyleBackColor = false;
//
// panelVibra
//
panelVibra.AutoSize = true;
panelVibra.AutoSizeMode = AutoSizeMode.GrowAndShrink;
panelVibra.Controls.Add(labelVibra);
panelVibra.Controls.Add(labelVibraTitle);
panelVibra.Controls.Add(trackVibra);
panelVibra.Dock = DockStyle.Top;
panelVibra.Location = new Point(0, 676);
panelVibra.Margin = new Padding(4);
panelVibra.MaximumSize = new Size(0, 124);
panelVibra.Name = "panelVibra";
panelVibra.Size = new Size(560, 124);
panelVibra.TabIndex = 46;
//
// labelVibra
//
labelVibra.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point);
labelVibra.Location = new Point(408, 14);
labelVibra.Margin = new Padding(4, 0, 4, 0);
labelVibra.Name = "labelVibra";
labelVibra.Size = new Size(124, 32);
labelVibra.TabIndex = 44;
labelVibra.Text = "100%";
labelVibra.TextAlign = ContentAlignment.TopRight;
//
// labelVibraTitle
//
labelVibraTitle.AutoSize = true;
labelVibraTitle.Location = new Point(10, 14);
labelVibraTitle.Margin = new Padding(4, 0, 4, 0);
labelVibraTitle.Name = "labelVibraTitle";
labelVibraTitle.Size = new Size(209, 32);
labelVibraTitle.TabIndex = 43;
labelVibraTitle.Text = "Vibration Strength";
//
// trackVibra
//
trackVibra.Location = new Point(6, 48);
trackVibra.Margin = new Padding(4, 2, 4, 2);
trackVibra.Maximum = 100;
trackVibra.Name = "trackVibra";
trackVibra.Size = new Size(546, 90);
trackVibra.TabIndex = 42;
trackVibra.TickFrequency = 5;
trackVibra.TickStyle = TickStyle.TopLeft;
trackVibra.Value = 100;
//
// panelVibrationTitle
//
panelVibrationTitle.AutoSize = true;
panelVibrationTitle.AutoSizeMode = AutoSizeMode.GrowAndShrink;
panelVibrationTitle.Controls.Add(pictureVibration);
panelVibrationTitle.Controls.Add(labelVibraHeader);
panelVibrationTitle.Dock = DockStyle.Top;
panelVibrationTitle.Location = new Point(0, 616);
panelVibrationTitle.Margin = new Padding(4);
panelVibrationTitle.Name = "panelVibrationTitle";
panelVibrationTitle.Size = new Size(560, 60);
panelVibrationTitle.TabIndex = 53;
//
// pictureVibration
//
pictureVibration.BackgroundImage = Properties.Resources.icons8_soonvibes_32;
pictureVibration.BackgroundImageLayout = ImageLayout.Zoom;
pictureVibration.ErrorImage = null;
pictureVibration.InitialImage = null;
pictureVibration.Location = new Point(10, 18);
pictureVibration.Margin = new Padding(4, 2, 4, 10);
pictureVibration.Name = "pictureVibration";
pictureVibration.Size = new Size(32, 32);
pictureVibration.TabIndex = 41;
pictureVibration.TabStop = false;
//
// labelVibraHeader
//
labelVibraHeader.AutoSize = true;
labelVibraHeader.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point);
labelVibraHeader.Location = new Point(45, 17);
labelVibraHeader.Margin = new Padding(4, 0, 4, 0);
labelVibraHeader.Name = "labelVibraHeader";
labelVibraHeader.Size = new Size(121, 32);
labelVibraHeader.TabIndex = 40;
labelVibraHeader.Text = "Vibration";
//
// panelRT
//
panelRT.AutoSize = true;
panelRT.AutoSizeMode = AutoSizeMode.GrowAndShrink;
panelRT.Controls.Add(trackRTMax);
panelRT.Controls.Add(labelRT);
panelRT.Controls.Add(trackRTMin);
panelRT.Controls.Add(labelRTTitle);
panelRT.Dock = DockStyle.Top;
panelRT.Location = new Point(0, 492);
panelRT.Margin = new Padding(4);
panelRT.MaximumSize = new Size(0, 124);
panelRT.Name = "panelRT";
panelRT.Size = new Size(560, 124);
panelRT.TabIndex = 50;
//
// trackRTMax
//
trackRTMax.Location = new Point(272, 48);
trackRTMax.Margin = new Padding(4, 2, 4, 2);
trackRTMax.Maximum = 100;
trackRTMax.Minimum = 50;
trackRTMax.Name = "trackRTMax";
trackRTMax.RightToLeft = RightToLeft.No;
trackRTMax.Size = new Size(280, 90);
trackRTMax.TabIndex = 30;
trackRTMax.TickFrequency = 5;
trackRTMax.TickStyle = TickStyle.TopLeft;
trackRTMax.Value = 100;
//
// labelRT
//
labelRT.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point);
labelRT.Location = new Point(363, 13);
labelRT.Margin = new Padding(4, 0, 4, 0);
labelRT.Name = "labelRT";
labelRT.Size = new Size(176, 32);
labelRT.TabIndex = 29;
labelRT.Text = "0 - 100%";
labelRT.TextAlign = ContentAlignment.TopRight;
//
// trackRTMin
//
trackRTMin.LargeChange = 100;
trackRTMin.Location = new Point(6, 48);
trackRTMin.Margin = new Padding(4, 2, 4, 2);
trackRTMin.Maximum = 50;
trackRTMin.Name = "trackRTMin";
trackRTMin.RightToLeft = RightToLeft.No;
trackRTMin.Size = new Size(280, 90);
trackRTMin.SmallChange = 10;
trackRTMin.TabIndex = 18;
trackRTMin.TickFrequency = 5;
trackRTMin.TickStyle = TickStyle.TopLeft;
//
// labelRTTitle
//
labelRTTitle.AutoSize = true;
labelRTTitle.Location = new Point(10, 16);
labelRTTitle.Margin = new Padding(4, 0, 4, 0);
labelRTTitle.Name = "labelRTTitle";
labelRTTitle.Size = new Size(151, 32);
labelRTTitle.TabIndex = 17;
labelRTTitle.Text = "Right Trigger";
//
// panelLT
//
panelLT.AutoSize = true;
panelLT.AutoSizeMode = AutoSizeMode.GrowAndShrink;
panelLT.Controls.Add(trackLTMax);
panelLT.Controls.Add(labelLT);
panelLT.Controls.Add(trackLTMin);
panelLT.Controls.Add(labelLTTitle);
panelLT.Dock = DockStyle.Top;
panelLT.Location = new Point(0, 368);
panelLT.Margin = new Padding(4);
panelLT.MaximumSize = new Size(0, 124);
panelLT.Name = "panelLT";
panelLT.Size = new Size(560, 124);
panelLT.TabIndex = 51;
//
// trackLTMax
//
trackLTMax.Location = new Point(272, 48);
trackLTMax.Margin = new Padding(4, 2, 4, 2);
trackLTMax.Maximum = 100;
trackLTMax.Minimum = 50;
trackLTMax.Name = "trackLTMax";
trackLTMax.RightToLeft = RightToLeft.No;
trackLTMax.Size = new Size(280, 90);
trackLTMax.TabIndex = 30;
trackLTMax.TickFrequency = 5;
trackLTMax.TickStyle = TickStyle.TopLeft;
trackLTMax.Value = 100;
//
// labelLT
//
labelLT.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point);
labelLT.Location = new Point(363, 13);
labelLT.Margin = new Padding(4, 0, 4, 0);
labelLT.Name = "labelLT";
labelLT.Size = new Size(176, 32);
labelLT.TabIndex = 29;
labelLT.Text = "0 - 100%";
labelLT.TextAlign = ContentAlignment.TopRight;
//
// trackLTMin
//
trackLTMin.LargeChange = 100;
trackLTMin.Location = new Point(6, 48);
trackLTMin.Margin = new Padding(4, 2, 4, 2);
trackLTMin.Maximum = 50;
trackLTMin.Name = "trackLTMin";
trackLTMin.RightToLeft = RightToLeft.No;
trackLTMin.Size = new Size(280, 90);
trackLTMin.SmallChange = 10;
trackLTMin.TabIndex = 18;
trackLTMin.TickFrequency = 5;
trackLTMin.TickStyle = TickStyle.TopLeft;
//
// labelLTTitle
//
labelLTTitle.AutoSize = true;
labelLTTitle.Location = new Point(10, 16);
labelLTTitle.Margin = new Padding(4, 0, 4, 0);
labelLTTitle.Name = "labelLTTitle";
labelLTTitle.Size = new Size(135, 32);
labelLTTitle.TabIndex = 17;
labelLTTitle.Text = "Left Trigger";
//
// panelTDeadzone
//
panelTDeadzone.AutoSize = true;
panelTDeadzone.AutoSizeMode = AutoSizeMode.GrowAndShrink;
panelTDeadzone.Controls.Add(pictureTDeadzone);
panelTDeadzone.Controls.Add(labelTDeadzone);
panelTDeadzone.Dock = DockStyle.Top;
panelTDeadzone.Location = new Point(0, 308);
panelTDeadzone.Margin = new Padding(4);
panelTDeadzone.Name = "panelTDeadzone";
panelTDeadzone.Size = new Size(560, 60);
panelTDeadzone.TabIndex = 52;
//
// pictureTDeadzone
//
pictureTDeadzone.BackgroundImage = Properties.Resources.icons8_xbox_lt_32;
pictureTDeadzone.BackgroundImageLayout = ImageLayout.Zoom;
pictureTDeadzone.ErrorImage = null;
pictureTDeadzone.InitialImage = null;
pictureTDeadzone.Location = new Point(10, 18);
pictureTDeadzone.Margin = new Padding(4, 2, 4, 10);
pictureTDeadzone.Name = "pictureTDeadzone";
pictureTDeadzone.Size = new Size(32, 32);
pictureTDeadzone.TabIndex = 41;
pictureTDeadzone.TabStop = false;
//
// labelTDeadzone
//
labelTDeadzone.AutoSize = true;
labelTDeadzone.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point);
labelTDeadzone.Location = new Point(45, 17);
labelTDeadzone.Margin = new Padding(4, 0, 4, 0);
labelTDeadzone.Name = "labelTDeadzone";
labelTDeadzone.Size = new Size(228, 32);
labelTDeadzone.TabIndex = 40;
labelTDeadzone.Text = "Trigger Deadzones";
//
// panelRS
//
panelRS.AutoSize = true;
panelRS.AutoSizeMode = AutoSizeMode.GrowAndShrink;
panelRS.Controls.Add(trackRSMax);
panelRS.Controls.Add(labelRS);
panelRS.Controls.Add(trackRSMin);
panelRS.Controls.Add(labelRSTitle);
panelRS.Dock = DockStyle.Top;
panelRS.Location = new Point(0, 184);
panelRS.Margin = new Padding(4);
panelRS.MaximumSize = new Size(0, 124);
panelRS.Name = "panelRS";
panelRS.Size = new Size(560, 124);
panelRS.TabIndex = 49;
//
// trackRSMax
//
trackRSMax.Location = new Point(272, 48);
trackRSMax.Margin = new Padding(4, 2, 4, 2);
trackRSMax.Maximum = 100;
trackRSMax.Minimum = 50;
trackRSMax.Name = "trackRSMax";
trackRSMax.RightToLeft = RightToLeft.No;
trackRSMax.Size = new Size(280, 90);
trackRSMax.TabIndex = 30;
trackRSMax.TickFrequency = 5;
trackRSMax.TickStyle = TickStyle.TopLeft;
trackRSMax.Value = 100;
//
// labelRS
//
labelRS.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point);
labelRS.Location = new Point(363, 13);
labelRS.Margin = new Padding(4, 0, 4, 0);
labelRS.Name = "labelRS";
labelRS.Size = new Size(176, 32);
labelRS.TabIndex = 29;
labelRS.Text = "0 - 100%";
labelRS.TextAlign = ContentAlignment.TopRight;
//
// trackRSMin
//
trackRSMin.LargeChange = 100;
trackRSMin.Location = new Point(6, 48);
trackRSMin.Margin = new Padding(4, 2, 4, 2);
trackRSMin.Maximum = 50;
trackRSMin.Name = "trackRSMin";
trackRSMin.RightToLeft = RightToLeft.No;
trackRSMin.Size = new Size(280, 90);
trackRSMin.SmallChange = 10;
trackRSMin.TabIndex = 18;
trackRSMin.TickFrequency = 5;
trackRSMin.TickStyle = TickStyle.TopLeft;
//
// labelRSTitle
//
labelRSTitle.AutoSize = true;
labelRSTitle.Location = new Point(10, 16);
labelRSTitle.Margin = new Padding(4, 0, 4, 0);
labelRSTitle.Name = "labelRSTitle";
labelRSTitle.Size = new Size(126, 32);
labelRSTitle.TabIndex = 17;
labelRSTitle.Text = "Right Stick";
//
// panelLS
//
panelLS.AutoSize = true;
panelLS.AutoSizeMode = AutoSizeMode.GrowAndShrink;
panelLS.Controls.Add(trackLSMax);
panelLS.Controls.Add(labelLS);
panelLS.Controls.Add(trackLSMin);
panelLS.Controls.Add(labelLSTitle);
panelLS.Dock = DockStyle.Top;
panelLS.Location = new Point(0, 60);
panelLS.Margin = new Padding(4);
panelLS.MaximumSize = new Size(0, 124);
panelLS.Name = "panelLS";
panelLS.Size = new Size(560, 124);
panelLS.TabIndex = 48;
//
// trackLSMax
//
trackLSMax.Location = new Point(272, 48);
trackLSMax.Margin = new Padding(4, 2, 4, 2);
trackLSMax.Maximum = 100;
trackLSMax.Minimum = 50;
trackLSMax.Name = "trackLSMax";
trackLSMax.RightToLeft = RightToLeft.No;
trackLSMax.Size = new Size(280, 90);
trackLSMax.TabIndex = 30;
trackLSMax.TickFrequency = 5;
trackLSMax.TickStyle = TickStyle.TopLeft;
trackLSMax.Value = 100;
//
// labelLS
//
labelLS.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point);
labelLS.Location = new Point(363, 13);
labelLS.Margin = new Padding(4, 0, 4, 0);
labelLS.Name = "labelLS";
labelLS.Size = new Size(176, 32);
labelLS.TabIndex = 29;
labelLS.Text = "0 - 100%";
labelLS.TextAlign = ContentAlignment.TopRight;
//
// trackLSMin
//
trackLSMin.LargeChange = 100;
trackLSMin.Location = new Point(6, 48);
trackLSMin.Margin = new Padding(4, 2, 4, 2);
trackLSMin.Maximum = 50;
trackLSMin.Name = "trackLSMin";
trackLSMin.RightToLeft = RightToLeft.No;
trackLSMin.Size = new Size(280, 90);
trackLSMin.SmallChange = 10;
trackLSMin.TabIndex = 18;
trackLSMin.TickFrequency = 5;
trackLSMin.TickStyle = TickStyle.TopLeft;
//
// labelLSTitle
//
labelLSTitle.AutoSize = true;
labelLSTitle.Location = new Point(10, 16);
labelLSTitle.Margin = new Padding(4, 0, 4, 0);
labelLSTitle.Name = "labelLSTitle";
labelLSTitle.Size = new Size(110, 32);
labelLSTitle.TabIndex = 17;
labelLSTitle.Text = "Left Stick";
//
// panelSDeadzone
//
panelSDeadzone.AutoSize = true;
panelSDeadzone.AutoSizeMode = AutoSizeMode.GrowAndShrink;
panelSDeadzone.Controls.Add(pictureSDeadzone);
panelSDeadzone.Controls.Add(labelSDeadzone);
panelSDeadzone.Dock = DockStyle.Top;
panelSDeadzone.Location = new Point(0, 0);
panelSDeadzone.Margin = new Padding(4);
panelSDeadzone.Name = "panelSDeadzone";
panelSDeadzone.Size = new Size(560, 60);
panelSDeadzone.TabIndex = 43;
//
// pictureSDeadzone
//
pictureSDeadzone.BackgroundImage = Properties.Resources.icons8_joystick_32;
pictureSDeadzone.BackgroundImageLayout = ImageLayout.Zoom;
pictureSDeadzone.ErrorImage = null;
pictureSDeadzone.InitialImage = null;
pictureSDeadzone.Location = new Point(10, 18);
pictureSDeadzone.Margin = new Padding(4, 2, 4, 10);
pictureSDeadzone.Name = "pictureSDeadzone";
pictureSDeadzone.Size = new Size(32, 32);
pictureSDeadzone.TabIndex = 41;
pictureSDeadzone.TabStop = false;
//
// labelSDeadzone
//
labelSDeadzone.AutoSize = true;
labelSDeadzone.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point);
labelSDeadzone.Location = new Point(45, 17);
labelSDeadzone.Margin = new Padding(4, 0, 4, 0);
labelSDeadzone.Name = "labelSDeadzone";
labelSDeadzone.Size = new Size(199, 32);
labelSDeadzone.TabIndex = 40;
labelSDeadzone.Text = "Stick Deadzones";
//
// panelBindings
//
panelBindings.Controls.Add(tableBindings);
panelBindings.Controls.Add(panelBindingsTitle);
panelBindings.Dock = DockStyle.Left;
panelBindings.Location = new Point(570, 10);
panelBindings.MinimumSize = new Size(700, 0);
panelBindings.Name = "panelBindings";
panelBindings.Size = new Size(700, 912);
panelBindings.TabIndex = 46;
//
// tableBindings
//
tableBindings.AutoSize = true;
tableBindings.ColumnCount = 3;
tableBindings.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 20F));
tableBindings.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 40F));
tableBindings.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 40F));
tableBindings.Controls.Add(labelPrimary, 1, 0);
tableBindings.Controls.Add(labelSecondary, 2, 0);
tableBindings.Dock = DockStyle.Top;
tableBindings.Location = new Point(0, 60);
tableBindings.Name = "tableBindings";
tableBindings.Padding = new Padding(5);
tableBindings.RowCount = 1;
tableBindings.RowStyles.Add(new RowStyle(SizeType.Percent, 100F));
tableBindings.Size = new Size(700, 52);
tableBindings.TabIndex = 49;
//
// labelPrimary
//
labelPrimary.AutoSize = true;
labelPrimary.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point);
labelPrimary.Location = new Point(147, 5);
labelPrimary.Margin = new Padding(4, 0, 4, 0);
labelPrimary.Name = "labelPrimary";
labelPrimary.Padding = new Padding(5);
labelPrimary.Size = new Size(115, 42);
labelPrimary.TabIndex = 41;
labelPrimary.Text = "Primary";
//
// labelSecondary
//
labelSecondary.AutoSize = true;
labelSecondary.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point);
labelSecondary.Location = new Point(423, 5);
labelSecondary.Margin = new Padding(4, 0, 4, 0);
labelSecondary.Name = "labelSecondary";
labelSecondary.Padding = new Padding(5);
labelSecondary.Size = new Size(144, 42);
labelSecondary.TabIndex = 42;
labelSecondary.Text = "Secondary";
//
// panelBindingsTitle
//
panelBindingsTitle.AutoSize = true;
panelBindingsTitle.AutoSizeMode = AutoSizeMode.GrowAndShrink;
panelBindingsTitle.Controls.Add(pictureBindings);
panelBindingsTitle.Controls.Add(labelBindings);
panelBindingsTitle.Dock = DockStyle.Top;
panelBindingsTitle.Location = new Point(0, 0);
panelBindingsTitle.Margin = new Padding(4);
panelBindingsTitle.Name = "panelBindingsTitle";
panelBindingsTitle.Size = new Size(700, 60);
panelBindingsTitle.TabIndex = 44;
//
// pictureBindings
//
pictureBindings.BackgroundImage = Properties.Resources.icons8_next_32;
pictureBindings.BackgroundImageLayout = ImageLayout.Zoom;
pictureBindings.ErrorImage = null;
pictureBindings.InitialImage = null;
pictureBindings.Location = new Point(10, 18);
pictureBindings.Margin = new Padding(4, 2, 4, 10);
pictureBindings.Name = "pictureBindings";
pictureBindings.Size = new Size(32, 32);
pictureBindings.TabIndex = 41;
pictureBindings.TabStop = false;
//
// labelBindings
//
labelBindings.AutoSize = true;
labelBindings.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point);
labelBindings.Location = new Point(45, 17);
labelBindings.Margin = new Padding(4, 0, 4, 0);
labelBindings.Name = "labelBindings";
labelBindings.Size = new Size(558, 32);
labelBindings.TabIndex = 40;
labelBindings.Text = "Bindings for Gamepad or Auto (in-game) Mode";
//
// Handheld
//
AutoScaleDimensions = new SizeF(13F, 32F);
AutoScaleMode = AutoScaleMode.Font;
AutoSize = true;
ClientSize = new Size(1286, 932);
Controls.Add(panelBindings);
Controls.Add(panelController);
MaximizeBox = false;
MinimizeBox = false;
Name = "Handheld";
Padding = new Padding(10);
ShowIcon = false;
ShowInTaskbar = false;
Text = "Controller";
panelController.ResumeLayout(false);
panelController.PerformLayout();
panelVibra.ResumeLayout(false);
panelVibra.PerformLayout();
((System.ComponentModel.ISupportInitialize)trackVibra).EndInit();
panelVibrationTitle.ResumeLayout(false);
panelVibrationTitle.PerformLayout();
((System.ComponentModel.ISupportInitialize)pictureVibration).EndInit();
panelRT.ResumeLayout(false);
panelRT.PerformLayout();
((System.ComponentModel.ISupportInitialize)trackRTMax).EndInit();
((System.ComponentModel.ISupportInitialize)trackRTMin).EndInit();
panelLT.ResumeLayout(false);
panelLT.PerformLayout();
((System.ComponentModel.ISupportInitialize)trackLTMax).EndInit();
((System.ComponentModel.ISupportInitialize)trackLTMin).EndInit();
panelTDeadzone.ResumeLayout(false);
panelTDeadzone.PerformLayout();
((System.ComponentModel.ISupportInitialize)pictureTDeadzone).EndInit();
panelRS.ResumeLayout(false);
panelRS.PerformLayout();
((System.ComponentModel.ISupportInitialize)trackRSMax).EndInit();
((System.ComponentModel.ISupportInitialize)trackRSMin).EndInit();
panelLS.ResumeLayout(false);
panelLS.PerformLayout();
((System.ComponentModel.ISupportInitialize)trackLSMax).EndInit();
((System.ComponentModel.ISupportInitialize)trackLSMin).EndInit();
panelSDeadzone.ResumeLayout(false);
panelSDeadzone.PerformLayout();
((System.ComponentModel.ISupportInitialize)pictureSDeadzone).EndInit();
panelBindings.ResumeLayout(false);
panelBindings.PerformLayout();
tableBindings.ResumeLayout(false);
tableBindings.PerformLayout();
panelBindingsTitle.ResumeLayout(false);
panelBindingsTitle.PerformLayout();
((System.ComponentModel.ISupportInitialize)pictureBindings).EndInit();
ResumeLayout(false);
PerformLayout();
}
#endregion
private Panel panelController;
private Panel panelVibra;
private Label labelVibra;
private Label labelVibraTitle;
private TrackBar trackVibra;
private Panel panelLS;
private TrackBar trackLSMax;
private Label labelLS;
private TrackBar trackLSMin;
private Label labelLSTitle;
private Panel panelSDeadzone;
private PictureBox pictureSDeadzone;
private Label labelSDeadzone;
private Panel panelRS;
private TrackBar trackRSMax;
private Label labelRS;
private TrackBar trackRSMin;
private Label labelRSTitle;
private Panel panelRT;
private TrackBar trackRTMax;
private Label labelRT;
private TrackBar trackRTMin;
private Label labelRTTitle;
private Panel panelLT;
private TrackBar trackLTMax;
private Label labelLT;
private TrackBar trackLTMin;
private Label labelLTTitle;
private Panel panelTDeadzone;
private PictureBox pictureTDeadzone;
private Label labelTDeadzone;
private Panel panelVibrationTitle;
private PictureBox pictureVibration;
private Label labelVibraHeader;
private UI.RButton buttonReset;
private Panel panelBindings;
private Panel panelBindingsTitle;
private PictureBox pictureBindings;
private Label labelBindings;
private TableLayoutPanel tableBindings;
private Label labelPrimary;
private Label labelSecondary;
}
}

205
app/Handheld.cs Normal file
View File

@@ -0,0 +1,205 @@
using GHelper.Ally;
using GHelper.UI;
namespace GHelper
{
public partial class Handheld : RForm
{
public Handheld()
{
InitializeComponent();
InitTheme(true);
Shown += Handheld_Shown;
Init();
trackLSMin.Scroll += Controller_Scroll;
trackLSMax.Scroll += Controller_Scroll;
trackRSMin.Scroll += Controller_Scroll;
trackRSMax.Scroll += Controller_Scroll;
trackLTMin.Scroll += Controller_Scroll;
trackLTMax.Scroll += Controller_Scroll;
trackRTMin.Scroll += Controller_Scroll;
trackRTMax.Scroll += Controller_Scroll;
trackVibra.Scroll += Controller_Scroll;
buttonReset.Click += ButtonReset_Click;
trackLSMin.ValueChanged += Controller_Complete;
trackLSMax.ValueChanged += Controller_Complete;
trackRSMin.ValueChanged += Controller_Complete;
trackRSMax.ValueChanged += Controller_Complete;
trackLTMin.ValueChanged += Controller_Complete;
trackLTMax.ValueChanged += Controller_Complete;
trackRTMin.ValueChanged += Controller_Complete;
trackRTMax.ValueChanged += Controller_Complete;
trackVibra.ValueChanged += Controller_Complete;
FillBinding("m1", "M1", AllyControl.BindM1);
FillBinding("m2", "M2", AllyControl.BindM2);
FillBinding("a", "A");
FillBinding("b", "B");
FillBinding("x", "X");
FillBinding("y", "Y");
FillBinding("du", "DPadUp");
FillBinding("dd", "DPadDown");
FillBinding("dl", "DPadLeft");
FillBinding("dr", "DPadRight");
FillBinding("rb", "RBumper");
FillBinding("lb", "LBumper");
FillBinding("rs", "RStick");
FillBinding("ll", "LStick");
FillBinding("vb", "View");
FillBinding("mb", "Menu");
}
private RComboBox ComboBinding(string name, int value)
{
var combo = new RComboBox();
combo.BorderColor = Color.White;
combo.ButtonColor = Color.FromArgb(255, 255, 255);
combo.Dock = DockStyle.Fill;
combo.Name = name;
combo.Margin = new Padding(5, 5, 5, 5);
combo.DropDownStyle = ComboBoxStyle.DropDownList;
combo.DisplayMember = "Value";
combo.ValueMember = "Key";
foreach (var item in AllyControl.BindCodes)
{
combo.Items.Add(new KeyValuePair<int, string>(item.Key, item.Value));
if (item.Key == value) combo.SelectedItem = item;
}
combo.SelectedValueChanged += Binding_SelectedValueChanged;
return combo;
}
private void FillBinding(string binding, string label, int defaultValue = -1)
{
tableBindings.RowStyles.Add(new RowStyle(SizeType.AutoSize));
tableBindings.Controls.Add(new Label { Text = label, Anchor = AnchorStyles.Left, Dock = DockStyle.Fill, Padding = new Padding(5, 5, 5, 5) }, 0, tableBindings.RowCount);
tableBindings.Controls.Add(ComboBinding("bind_" + binding, AppConfig.Get("bind_" + binding, defaultValue)), 1, tableBindings.RowCount);
tableBindings.Controls.Add(ComboBinding("bind2_" + binding, AppConfig.Get("bind2_" + binding)), 2, tableBindings.RowCount);
tableBindings.RowCount++;
}
private void Binding_SelectedValueChanged(object? sender, EventArgs e)
{
if (sender is null) return;
RComboBox combo = (RComboBox)sender;
int value = ((KeyValuePair<int, string>)combo.SelectedItem).Key;
if (value >= 0) AppConfig.Set(combo.Name, value);
else AppConfig.Remove(combo.Name);
AllyControl.ApplyMode();
}
private void Controller_Complete(object? sender, EventArgs e)
{
AllyControl.SetDeadzones();
}
private void ButtonReset_Click(object? sender, EventArgs e)
{
trackLSMin.Value = 0;
trackLSMax.Value = 100;
trackRSMin.Value = 0;
trackRSMax.Value = 100;
trackLTMin.Value = 0;
trackLTMax.Value = 100;
trackRTMin.Value = 0;
trackRTMax.Value = 100;
trackVibra.Value = 100;
AppConfig.Remove("ls_min");
AppConfig.Remove("ls_max");
AppConfig.Remove("rs_min");
AppConfig.Remove("rs_max");
AppConfig.Remove("lt_min");
AppConfig.Remove("lt_max");
AppConfig.Remove("rt_min");
AppConfig.Remove("rt_max");
AppConfig.Remove("vibra");
VisualiseController();
}
private void Init()
{
trackLSMin.Value = AppConfig.Get("ls_min", 0);
trackLSMax.Value = AppConfig.Get("ls_max", 100);
trackRSMin.Value = AppConfig.Get("rs_min", 0);
trackRSMax.Value = AppConfig.Get("rs_max", 100);
trackLTMin.Value = AppConfig.Get("lt_min", 0);
trackLTMax.Value = AppConfig.Get("lt_max", 100);
trackRTMin.Value = AppConfig.Get("rt_min", 0);
trackRTMax.Value = AppConfig.Get("rt_max", 100);
trackVibra.Value = AppConfig.Get("vibra", 100);
VisualiseController();
}
private void VisualiseController()
{
labelLS.Text = $"{trackLSMin.Value} - {trackLSMax.Value}%";
labelRS.Text = $"{trackRSMin.Value} - {trackRSMax.Value}%";
labelLT.Text = $"{trackLTMin.Value} - {trackLTMax.Value}%";
labelRT.Text = $"{trackRTMin.Value} - {trackRTMax.Value}%";
labelVibra.Text = $"{trackVibra.Value}%";
}
private void Controller_Scroll(object? sender, EventArgs e)
{
AppConfig.Set("ls_min", trackLSMin.Value);
AppConfig.Set("ls_max", trackLSMax.Value);
AppConfig.Set("rs_min", trackRSMin.Value);
AppConfig.Set("rs_max", trackRSMax.Value);
AppConfig.Set("lt_min", trackLTMin.Value);
AppConfig.Set("lt_max", trackLTMax.Value);
AppConfig.Set("rt_min", trackRTMin.Value);
AppConfig.Set("rt_max", trackRTMax.Value);
AppConfig.Set("vibra", trackVibra.Value);
VisualiseController();
}
private void Handheld_Shown(object? sender, EventArgs e)
{
Height = Program.settingsForm.Height;
Top = Program.settingsForm.Top;
Left = Program.settingsForm.Left - Width - 5;
}
}
}

120
app/Handheld.resx Normal file
View File

@@ -0,0 +1,120 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>

View File

@@ -1,5 +1,6 @@
using HidSharp;
using GHelper.USB;
using GHelper.Ally;
namespace GHelper.Input
{
@@ -12,7 +13,7 @@ namespace GHelper.Input
public KeyboardListener(Action<int> KeyHandler)
{
_handler = KeyHandler;
Listen();
var task = Task.Run(Listen);
}
private void Listen () {
@@ -20,13 +21,12 @@ namespace GHelper.Input
HidStream? input = AsusHid.FindHidStream(AsusHid.INPUT_ID);
// Fallback
int count = 0;
while (input == null && count++ < 60)
while (input == null && count++ < 5)
{
Aura.Init();
Thread.Sleep(1000);
Thread.Sleep(2000);
input = AsusHid.FindHidStream(AsusHid.INPUT_ID);
}
@@ -38,39 +38,35 @@ namespace GHelper.Input
Logger.WriteLine($"Input: {input.Device.DevicePath}");
var task = Task.Run(() =>
try
{
try
while (!cancellationTokenSource.Token.IsCancellationRequested)
{
while (!cancellationTokenSource.Token.IsCancellationRequested)
// Emergency break
if (input == null || !input.CanRead)
{
// Emergency break
if (input == null || !input.CanRead)
{
Logger.WriteLine("Listener terminated");
break;
}
input.ReadTimeout = int.MaxValue;
var data = input.Read();
if (data.Length > 1 && data[0] == AsusHid.INPUT_ID && data[1] > 0 && data[1] != 236)
{
Logger.WriteLine($"Key: {data[1]}");
_handler(data[1]);
}
Logger.WriteLine("Listener terminated");
break;
}
Logger.WriteLine("Listener stopped");
input.ReadTimeout = int.MaxValue;
var data = input.Read();
if (data.Length > 1 && data[0] == AsusHid.INPUT_ID && data[1] > 0 && data[1] != 236)
{
Logger.WriteLine($"Key: {data[1]}");
_handler(data[1]);
}
}
catch (Exception ex)
{
Logger.WriteLine(ex.ToString());
}
});
Logger.WriteLine("Listener stopped");
}
catch (Exception ex)
{
Logger.WriteLine(ex.ToString());
}
}

View File

@@ -319,7 +319,6 @@ namespace GHelper.Mode
int clock_limit = AppConfig.GetMode("gpu_clock_limit");
if (core == -1 && memory == -1 && clock_limit == -1) return;
//if ((gpu_core > -5 && gpu_core < 5) && (gpu_memory > -5 && gpu_memory < 5)) launchAsAdmin = false;
if (Program.acpi.DeviceGet(AsusACPI.GPUEco) == 1) { Logger.WriteLine("Clocks: Eco"); return; }

View File

@@ -221,6 +221,63 @@
LightingSetting[i] = ls;
}
}
protected override PollingRate ParsePollingRate(byte[] packet)
{
if (packet[1] == 0x12 && packet[2] == 0x04 && packet[3] == 0x00)
{
return (PollingRate)packet[9];
}
return PollingRate.PR125Hz;
}
protected override byte[] GetUpdatePollingRatePacket(PollingRate pollingRate)
{
return new byte[] { reportId, 0x51, 0x31, 0x02, 0x00, (byte)pollingRate };
}
protected override bool ParseAngleSnapping(byte[] packet)
{
if (packet[1] == 0x12 && packet[2] == 0x04 && packet[3] == 0x00)
{
return packet[13] == 0x01;
}
return false;
}
protected override byte[] GetUpdateAngleSnappingPacket(bool angleSnapping)
{
return new byte[] { reportId, 0x51, 0x31, 0x04, 0x00, (byte)(angleSnapping ? 0x01 : 0x00) };
}
protected override DebounceTime ParseDebounce(byte[] packet)
{
if (packet[1] != 0x12 || packet[2] != 0x04 || packet[3] != 0x00)
{
return DebounceTime.MS12;
}
if (packet[11] < 0x02)
{
return DebounceTime.MS12;
}
if (packet[11] > 0x07)
{
return DebounceTime.MS32;
}
return (DebounceTime)packet[11];
}
protected override byte[] GetUpdateDebouncePacket(DebounceTime debounce)
{
return new byte[] { reportId, 0x51, 0x31, 0x03, 0x00, ((byte)debounce) };
}
}
//P502

View File

@@ -196,6 +196,10 @@ namespace GHelper
if (settingsForm.matrixForm is not null && settingsForm.matrixForm.Text != "")
settingsForm.matrixForm.InitTheme();
if (settingsForm.handheldForm is not null && settingsForm.handheldForm.Text != "")
settingsForm.handheldForm.InitTheme();
break;
}
}

View File

@@ -320,6 +320,16 @@ namespace GHelper.Properties {
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap icons8_joystick_32 {
get {
object obj = ResourceManager.GetObject("icons8-joystick-32", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
@@ -440,6 +450,16 @@ namespace GHelper.Properties {
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap icons8_next_32 {
get {
object obj = ResourceManager.GetObject("icons8-next-32", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
@@ -560,6 +580,16 @@ namespace GHelper.Properties {
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap icons8_soonvibes_32 {
get {
object obj = ResourceManager.GetObject("icons8-soonvibes-32", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
@@ -620,6 +650,16 @@ namespace GHelper.Properties {
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>
internal static System.Drawing.Bitmap icons8_xbox_lt_32 {
get {
object obj = ResourceManager.GetObject("icons8-xbox-lt-32", resourceCulture);
return ((System.Drawing.Bitmap)(obj));
}
}
/// <summary>
/// Looks up a localized resource of type System.Drawing.Bitmap.
/// </summary>

View File

@@ -118,190 +118,202 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
<data name="brightness_up" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\brightness-up.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_temperature_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-temperature-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="backlight_down" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\backlight-down.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_mute_unmute_96" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-mute-unmute-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-hibernate-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-hibernate-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="MFont" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Font.otf;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="icons8-quit-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-quit-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-fiat-500-48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-fiat-500-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_microphone_96" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-microphone-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_voltage_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-voltage-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-project-management-48 (1)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-project-management-48 (1).png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="dot_standard" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\dot-standard.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-charging-battery-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-charging-battery-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="lighting_dot_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\lighting_dot_32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_touchpad_96" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-touchpad-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-automation-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-automation-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_maus_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-maus-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-help-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-help-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-software-32-white" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-software-32-white.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_add_64" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-add-64.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-game-controller-48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-game-controller-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-refresh-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-refresh-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_share_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-share-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="standard" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\standard.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="lighting_dot_24" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\lighting_dot_24.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_charged_battery_96" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-charged-battery-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="lighting_dot_24" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\lighting_dot_24.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-bicycle-48 (1)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-bicycle-48 (1).png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="brightness_down" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\brightness-down.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_batterie_voll_geladen_48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-batterie-voll-geladen-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_charging_battery_96" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-charging-battery-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="eco" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\eco.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-video-card-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-video-card-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="lighting_dot_48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\lighting_dot_48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-rocket-48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-rocket-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="dot_ultimate" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\dot-ultimate.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_edit_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-edit-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="backlight_up" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\backlight-up.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_video_48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-video-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-save-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-save-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-log-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-log-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_function" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-function-mac-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-keyboard-32 (1)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-keyboard-32 (1).png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-fan-48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-fan-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="icons8_microphone_96" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-microphone-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_maus_48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-maus-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_remove_64" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-remove-64.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="icons8-bicycle-48 (1)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-bicycle-48 (1).png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_mauszeiger_50" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-mauszeiger-50.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="eco" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\eco.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-matrix-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-matrix-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="icons8_mute_unmute_96" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-mute-unmute-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-keyboard-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-keyboard-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="icons8_batterie_voll_geladen_48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-batterie-voll-geladen-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_fan_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-fan-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="lighting_dot_48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\lighting_dot_48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_software_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-software-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-gauge-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-gauge-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-leaf-48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-leaf-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ultimate" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ultimate.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-spa-flower-48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-spa-flower-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="backlight" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\backlight.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-settings-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-settings-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="dot_eco" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\dot-eco.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_processor_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-processor-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-laptop-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-laptop-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_ladende_batterie_48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-ladende-batterie-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_rocket_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-rocket-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
<data name="icons8-quit-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-quit-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-controller-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-controller-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-next-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-next-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-automation-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-automation-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="brightness_up" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\brightness-up.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_processor_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-processor-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-fiat-500-48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-fiat-500-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_touchpad_96" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-touchpad-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-game-controller-48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-game-controller-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-help-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-help-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-matrix-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-matrix-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-laptop-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-laptop-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_remove_64" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-remove-64.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_function" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-function-mac-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-joystick-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-joystick-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-keyboard-32 (1)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-keyboard-32 (1).png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-spa-flower-48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-spa-flower-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-video-card-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-video-card-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="backlight" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\backlight.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-refresh-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-refresh-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-hibernate-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-hibernate-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="ultimate" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\ultimate.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-keyboard-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-keyboard-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-fan-48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-fan-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-settings-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-settings-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_maus_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-maus-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_charging_battery_96" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-charging-battery-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="dot_ultimate" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\dot-ultimate.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="brightness_down" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\brightness-down.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="backlight_up" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\backlight-up.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="backlight_down" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\backlight-down.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-rocket-48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-rocket-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="dot_standard" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\dot-standard.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_rocket_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-rocket-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-project-management-48 (1)" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-project-management-48 (1).png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_mauszeiger_50" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-mauszeiger-50.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-save-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-save-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_ladende_batterie_48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-ladende-batterie-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_video_48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-video-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="MFont" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\Font.otf;System.Byte[], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</data>
<data name="dot_eco" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\dot-eco.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-gauge-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-gauge-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="standard" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\standard.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_fan_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-fan-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_voltage_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-voltage-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-software-32-white" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-software-32-white.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-log-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-log-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_temperature_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-temperature-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-leaf-48" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-leaf-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_add_64" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-add-64.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_software_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-software-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8_share_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-share-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-soonvibes-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-soonvibes-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="lighting_dot_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\lighting_dot_32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-charging-battery-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-charging-battery-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
<data name="icons8-xbox-lt-32" type="System.Resources.ResXFileRef, System.Windows.Forms">
<value>..\Resources\icons8-xbox-lt-32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
</data>
</root>

View File

@@ -118,16 +118,16 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<data name="Acceleration" xml:space="preserve">
<value>Acceleration</value>
<value>Accelerare</value>
</data>
<data name="ACPIError" xml:space="preserve">
<value>Nu se poate conecta la ASUS ACPI. Aplicația nu poate funcționa fără aceasta. Încercați să instalați Asus System Control Interface</value>
</data>
<data name="AlertAPUMemoryRestart" xml:space="preserve">
<value>Restart your device to apply changes</value>
<value>Reporniți dispozitivul pentru a aplica modificările</value>
</data>
<data name="AlertAPUMemoryRestartTitle" xml:space="preserve">
<value>Restart now?</value>
<value>Reporniți acum?</value>
</data>
<data name="AlertDGPU" xml:space="preserve">
<value>Se pare că GPU-ul este folosit intens, dezactivați?</value>
@@ -169,34 +169,34 @@
<value>Reglare automată a modului de alimentare Windows</value>
</data>
<data name="APUMemory" xml:space="preserve">
<value>Memory Assigned to GPU</value>
<value>Memorie alocată GPU-ului</value>
</data>
<data name="AsusServicesRunning" xml:space="preserve">
<value>Servicii Asus în derulare</value>
</data>
<data name="AuraBatteryState" xml:space="preserve">
<value>Battery State</value>
<value>Starea bateriei</value>
</data>
<data name="AuraBreathe" xml:space="preserve">
<value>Respirație</value>
</data>
<data name="AuraClockwise" xml:space="preserve">
<value>Clockwise</value>
<value>În sensul acelor de ceas</value>
</data>
<data name="AuraColorCycle" xml:space="preserve">
<value>Ciclu de culori</value>
</data>
<data name="AuraComet" xml:space="preserve">
<value>Comet</value>
<value>Cometă</value>
</data>
<data name="AuraCounterClockwise" xml:space="preserve">
<value>Counterclockwise</value>
<value>În sens invers acelor de ceas</value>
</data>
<data name="AuraFast" xml:space="preserve">
<value>Rapid</value>
</data>
<data name="AuraLightingMode" xml:space="preserve">
<value>Lighting Mode</value>
<value>Mod iluminare</value>
</data>
<data name="AuraNormal" xml:space="preserve">
<value>Normal</value>
@@ -205,10 +205,10 @@
<value>Curcubeu</value>
</data>
<data name="AuraRandomColor" xml:space="preserve">
<value>Random</value>
<value>Aleatoriu</value>
</data>
<data name="AuraReact" xml:space="preserve">
<value>React</value>
<value>Reacție</value>
</data>
<data name="AuraSlow" xml:space="preserve">
<value>Încet</value>
@@ -220,7 +220,7 @@
<value>Stroboscop</value>
</data>
<data name="AuraZoneAll" xml:space="preserve">
<value>All</value>
<value>Toate</value>
</data>
<data name="AuraZoneDock" xml:space="preserve">
<value>Dock</value>
@@ -229,10 +229,10 @@
<value>Logo</value>
</data>
<data name="AuraZoneScroll" xml:space="preserve">
<value>Scrollwheel</value>
<value>Rotiță scroll</value>
</data>
<data name="AuraZoneUnderglow" xml:space="preserve">
<value>Underglow</value>
<value>Iluminare de jos</value>
</data>
<data name="AutoApply" xml:space="preserve">
<value>Aplicare automată</value>
@@ -250,16 +250,16 @@
<value>Timeout conectat / folosind bateria (0 - ON)</value>
</data>
<data name="BacklightTimeoutBattery" xml:space="preserve">
<value>Backlight Timeout when on battery</value>
<value>Timp oprire iluminare pe baterie</value>
</data>
<data name="BacklightTimeoutPlugged" xml:space="preserve">
<value>Backlight Timeout when plugged</value>
<value>Timp oprire iluminare când e conectat</value>
</data>
<data name="Balanced" xml:space="preserve">
<value>Echilibrat</value>
</data>
<data name="BatteryCharge" xml:space="preserve">
<value>Charge</value>
<value>Încărcare</value>
</data>
<data name="BatteryChargeLimit" xml:space="preserve">
<value>Limita de încărcare a bateriei</value>
@@ -268,7 +268,7 @@
<value>Sănătatea bateriei</value>
</data>
<data name="BatteryLimitFull" xml:space="preserve">
<value>One time charge to 100%</value>
<value>Încarcă o dată la 100%</value>
</data>
<data name="BiosAndDriverUpdates" xml:space="preserve">
<value>Actualizări BIOS și Driver</value>
@@ -277,7 +277,7 @@
<value>Pornire</value>
</data>
<data name="BootSound" xml:space="preserve">
<value>Boot Sound</value>
<value>Sunet la pornire</value>
</data>
<data name="Brightness" xml:space="preserve">
<value>Luminozitate</value>
@@ -289,7 +289,7 @@
<value>Mărirea luminozității</value>
</data>
<data name="Calibrate" xml:space="preserve">
<value>Calibrate</value>
<value>Calibrează</value>
</data>
<data name="Charging" xml:space="preserve">
<value>Se încarcă</value>
@@ -304,7 +304,7 @@
<value>Personalizat</value>
</data>
<data name="Deceleration" xml:space="preserve">
<value>Deceleration</value>
<value>Decelerare</value>
</data>
<data name="Default" xml:space="preserve">
<value>Implicit</value>
@@ -316,7 +316,7 @@
<value>Se descarcă</value>
</data>
<data name="DownloadUpdate" xml:space="preserve">
<value>Download</value>
<value>Descarcă</value>
</data>
<data name="DriverAndSoftware" xml:space="preserve">
<value>Drivers și Aplicații</value>
@@ -336,7 +336,7 @@
<value>NVIDIA Display Mode nu este setat la modul Optimus</value>
</data>
<data name="EnergySettings" xml:space="preserve">
<value>Energy Settings</value>
<value>Setări energie</value>
</data>
<data name="Extra" xml:space="preserve">
<value>Extra</value>
@@ -405,10 +405,10 @@
<value>Temperatura țintă</value>
</data>
<data name="HibernateAfter" xml:space="preserve">
<value>Minutes till Hibernation in sleep on battery (0 - OFF)</value>
<value>Minute până la Hibernare în mod repaus pe baterie (0 - Oprit)</value>
</data>
<data name="High" xml:space="preserve">
<value>High</value>
<value>Ridicat</value>
</data>
<data name="KeyBindings" xml:space="preserve">
<value>Asocieri taste</value>
@@ -429,19 +429,19 @@
<value>Ecran Laptop</value>
</data>
<data name="Lid" xml:space="preserve">
<value>Lid</value>
<value>Capac</value>
</data>
<data name="Lightbar" xml:space="preserve">
<value>Lightbar</value>
</data>
<data name="Lighting" xml:space="preserve">
<value>Lighting</value>
<value>Iluminare</value>
</data>
<data name="Logo" xml:space="preserve">
<value>Logo-ul</value>
</data>
<data name="Low" xml:space="preserve">
<value>Low</value>
<value>Scăzut</value>
</data>
<data name="MatrixAudio" xml:space="preserve">
<value>Vizualizator audio</value>
@@ -471,37 +471,37 @@
<value>Imagine</value>
</data>
<data name="MaxRefreshTooltip" xml:space="preserve">
<value>Valoare maximă refresh rate pentru latență mai mică</value>
<value>Rata maximă de reîmprospătare pentru latență mai mică</value>
</data>
<data name="MinRefreshTooltip" xml:space="preserve">
<value>60Hz refresh rate pentru a economisi bateria</value>
<value>60Hz rată de reîmprospătare pentru a economisi bateria</value>
</data>
<data name="Minute" xml:space="preserve">
<value>Minute</value>
<value>Minut</value>
</data>
<data name="Minutes" xml:space="preserve">
<value>Minutes</value>
<value>Minute</value>
</data>
<data name="MouseAngleSnapping" xml:space="preserve">
<value>Angle Snapping</value>
<value>Fixare mișcare la unghi</value>
</data>
<data name="MouseAutoPowerOff" xml:space="preserve">
<value>Auto Power Off After</value>
<value>Oprire automată după</value>
</data>
<data name="MouseButtonResponse" xml:space="preserve">
<value>Button Response</value>
<value>Răspuns buton</value>
</data>
<data name="MouseLiftOffDistance" xml:space="preserve">
<value>Lift Off Distance</value>
<value>Distanța de oprire</value>
</data>
<data name="MouseLowBatteryWarning" xml:space="preserve">
<value>Low Battery Warning at</value>
<value>Avertizare baterie scăzută la</value>
</data>
<data name="MousePerformance" xml:space="preserve">
<value>Performance</value>
<value>Performanță</value>
</data>
<data name="MouseSynchronize" xml:space="preserve">
<value>Synchronize with mouse</value>
<value>Sincronizare cu mouse-ul</value>
</data>
<data name="Multizone" xml:space="preserve">
<value>Multizone</value>
@@ -510,7 +510,7 @@
<value>Oprire microfon</value>
</data>
<data name="Never" xml:space="preserve">
<value>Never</value>
<value>Niciodată</value>
</data>
<data name="NewUpdates" xml:space="preserve">
<value>Actualizări noi</value>
@@ -519,7 +519,7 @@
<value>Nu există actualizări noi</value>
</data>
<data name="NotConnected" xml:space="preserve">
<value>Not Connected</value>
<value>Neconectat</value>
</data>
<data name="OpenGHelper" xml:space="preserve">
<value>Deschide fereastra G-Helper</value>
@@ -543,7 +543,7 @@
<value>Mod</value>
</data>
<data name="Peripherals" xml:space="preserve">
<value>Peripherals</value>
<value>Periferice</value>
</data>
<data name="PictureGif" xml:space="preserve">
<value>Poză / Gif</value>
@@ -552,7 +552,7 @@
<value>Redare / Pauză</value>
</data>
<data name="PollingRate" xml:space="preserve">
<value>Polling Rate</value>
<value>Rată sondaj</value>
</data>
<data name="PowerLimits" xml:space="preserve">
<value>Limite de putere</value>
@@ -564,13 +564,13 @@
<value>PrintScreen</value>
</data>
<data name="Profile" xml:space="preserve">
<value>Profile</value>
<value>Profil</value>
</data>
<data name="Quit" xml:space="preserve">
<value>Închide</value>
</data>
<data name="RestartGPU" xml:space="preserve">
<value>Something is using dGPU and preventing Eco mode. Let G-Helper try to restart dGPU in device manager? (Please proceed at your own risk)</value>
<value>Ceva folosește dGPU și previne modul Eco. Permiteți G-Helper să repornească dGPU în managerul de dispozitive? (Continuați pe propriul risc)</value>
</data>
<data name="RPM" xml:space="preserve">
<value>RPM</value>

Binary file not shown.

After

Width:  |  Height:  |  Size: 288 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 248 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 773 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 458 B

156
app/Settings.Designer.cs generated
View File

@@ -64,6 +64,8 @@ namespace GHelper
labelCPUFan = new Label();
panelGPU = new Panel();
labelTipGPU = new Label();
tableAMD = new TableLayoutPanel();
buttonFPS = new RButton();
tableGPU = new TableLayoutPanel();
buttonStopGPU = new RButton();
buttonEco = new RButton();
@@ -111,12 +113,11 @@ namespace GHelper
panelAlly = new Panel();
tableLayoutAlly = new TableLayoutPanel();
buttonBacklight = new RButton();
buttonController = new RButton();
buttonControllerMode = new RButton();
panelAllyTitle = new Panel();
pictureAlly = new PictureBox();
labelAlly = new Label();
tableAMD = new TableLayoutPanel();
buttonFPS = new RButton();
buttonController = new RButton();
panelMatrix.SuspendLayout();
tableLayoutMatrix.SuspendLayout();
panelMatrixTitle.SuspendLayout();
@@ -131,6 +132,7 @@ namespace GHelper
panelCPUTitle.SuspendLayout();
((System.ComponentModel.ISupportInitialize)picturePerf).BeginInit();
panelGPU.SuspendLayout();
tableAMD.SuspendLayout();
tableGPU.SuspendLayout();
panelGPUTitle.SuspendLayout();
((System.ComponentModel.ISupportInitialize)pictureGPU).BeginInit();
@@ -154,7 +156,6 @@ namespace GHelper
tableLayoutAlly.SuspendLayout();
panelAllyTitle.SuspendLayout();
((System.ComponentModel.ISupportInitialize)pictureAlly).BeginInit();
tableAMD.SuspendLayout();
SuspendLayout();
//
// panelMatrix
@@ -685,6 +686,47 @@ namespace GHelper
labelTipGPU.Size = new Size(787, 36);
labelTipGPU.TabIndex = 20;
//
// tableAMD
//
tableAMD.AutoSize = true;
tableAMD.AutoSizeMode = AutoSizeMode.GrowAndShrink;
tableAMD.ColumnCount = 3;
tableAMD.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33F));
tableAMD.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33F));
tableAMD.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33F));
tableAMD.Controls.Add(buttonFPS, 0, 0);
tableAMD.Dock = DockStyle.Top;
tableAMD.Location = new Point(20, 316);
tableAMD.Margin = new Padding(8, 4, 8, 4);
tableAMD.Name = "tableAMD";
tableAMD.RowCount = 1;
tableAMD.RowStyles.Add(new RowStyle(SizeType.Absolute, 80F));
tableAMD.Size = new Size(787, 80);
tableAMD.TabIndex = 24;
tableAMD.Visible = false;
//
// buttonFPS
//
buttonFPS.Activated = false;
buttonFPS.BackColor = SystemColors.ControlLightLight;
buttonFPS.BorderColor = Color.Transparent;
buttonFPS.BorderRadius = 5;
buttonFPS.Dock = DockStyle.Fill;
buttonFPS.FlatAppearance.BorderSize = 0;
buttonFPS.FlatStyle = FlatStyle.Flat;
buttonFPS.ForeColor = SystemColors.ControlText;
buttonFPS.Image = Properties.Resources.icons8_video_48;
buttonFPS.ImageAlign = ContentAlignment.MiddleRight;
buttonFPS.Location = new Point(4, 4);
buttonFPS.Margin = new Padding(4);
buttonFPS.Name = "buttonFPS";
buttonFPS.Secondary = false;
buttonFPS.Size = new Size(254, 72);
buttonFPS.TabIndex = 11;
buttonFPS.Text = "FPS Limit OFF";
buttonFPS.TextImageRelation = TextImageRelation.ImageBeforeText;
buttonFPS.UseVisualStyleBackColor = false;
//
// tableGPU
//
tableGPU.AutoSize = true;
@@ -1431,8 +1473,9 @@ namespace GHelper
tableLayoutAlly.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33F));
tableLayoutAlly.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33F));
tableLayoutAlly.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33F));
tableLayoutAlly.Controls.Add(buttonBacklight, 0, 0);
tableLayoutAlly.Controls.Add(buttonController, 0, 0);
tableLayoutAlly.Controls.Add(buttonBacklight, 0, 0);
tableLayoutAlly.Controls.Add(buttonControllerMode, 0, 0);
tableLayoutAlly.Dock = DockStyle.Top;
tableLayoutAlly.Location = new Point(20, 60);
tableLayoutAlly.Margin = new Padding(8, 4, 8, 4);
@@ -1464,27 +1507,27 @@ namespace GHelper
buttonBacklight.TextImageRelation = TextImageRelation.ImageBeforeText;
buttonBacklight.UseVisualStyleBackColor = false;
//
// buttonController
// buttonControllerMode
//
buttonController.Activated = false;
buttonController.BackColor = SystemColors.ControlLightLight;
buttonController.BorderColor = Color.Transparent;
buttonController.BorderRadius = 5;
buttonController.Dock = DockStyle.Fill;
buttonController.FlatAppearance.BorderSize = 0;
buttonController.FlatStyle = FlatStyle.Flat;
buttonController.ForeColor = SystemColors.ControlText;
buttonController.Image = Properties.Resources.icons8_game_controller_48;
buttonController.ImageAlign = ContentAlignment.MiddleRight;
buttonController.Location = new Point(4, 4);
buttonController.Margin = new Padding(4);
buttonController.Name = "buttonController";
buttonController.Secondary = false;
buttonController.Size = new Size(254, 72);
buttonController.TabIndex = 9;
buttonController.Text = Properties.Strings.AutoMode;
buttonController.TextImageRelation = TextImageRelation.ImageBeforeText;
buttonController.UseVisualStyleBackColor = false;
buttonControllerMode.Activated = false;
buttonControllerMode.BackColor = SystemColors.ControlLightLight;
buttonControllerMode.BorderColor = Color.Transparent;
buttonControllerMode.BorderRadius = 5;
buttonControllerMode.Dock = DockStyle.Fill;
buttonControllerMode.FlatAppearance.BorderSize = 0;
buttonControllerMode.FlatStyle = FlatStyle.Flat;
buttonControllerMode.ForeColor = SystemColors.ControlText;
buttonControllerMode.Image = Properties.Resources.icons8_game_controller_48;
buttonControllerMode.ImageAlign = ContentAlignment.MiddleRight;
buttonControllerMode.Location = new Point(4, 4);
buttonControllerMode.Margin = new Padding(4);
buttonControllerMode.Name = "buttonControllerMode";
buttonControllerMode.Secondary = false;
buttonControllerMode.Size = new Size(254, 72);
buttonControllerMode.TabIndex = 9;
buttonControllerMode.Text = Properties.Strings.AutoMode;
buttonControllerMode.TextImageRelation = TextImageRelation.ImageBeforeText;
buttonControllerMode.UseVisualStyleBackColor = false;
//
// panelAllyTitle
//
@@ -1519,46 +1562,26 @@ namespace GHelper
labelAlly.TabIndex = 26;
labelAlly.Text = "Ally Controller";
//
// tableAMD
// buttonController
//
tableAMD.AutoSize = true;
tableAMD.AutoSizeMode = AutoSizeMode.GrowAndShrink;
tableAMD.ColumnCount = 3;
tableAMD.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33F));
tableAMD.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33F));
tableAMD.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33F));
tableAMD.Controls.Add(buttonFPS, 0, 0);
tableAMD.Dock = DockStyle.Top;
tableAMD.Location = new Point(20, 316);
tableAMD.Margin = new Padding(8, 4, 8, 4);
tableAMD.Name = "tableAMD";
tableAMD.RowCount = 1;
tableAMD.RowStyles.Add(new RowStyle(SizeType.Absolute, 80F));
tableAMD.Size = new Size(787, 80);
tableAMD.TabIndex = 24;
tableAMD.Visible = false;
//
// buttonFPS
//
buttonFPS.Activated = false;
buttonFPS.BackColor = SystemColors.ControlLightLight;
buttonFPS.BorderColor = Color.Transparent;
buttonFPS.BorderRadius = 5;
buttonFPS.Dock = DockStyle.Fill;
buttonFPS.FlatAppearance.BorderSize = 0;
buttonFPS.FlatStyle = FlatStyle.Flat;
buttonFPS.ForeColor = SystemColors.ControlText;
buttonFPS.Image = Properties.Resources.icons8_video_48;
buttonFPS.ImageAlign = ContentAlignment.MiddleRight;
buttonFPS.Location = new Point(4, 4);
buttonFPS.Margin = new Padding(4);
buttonFPS.Name = "buttonFPS";
buttonFPS.Secondary = false;
buttonFPS.Size = new Size(254, 72);
buttonFPS.TabIndex = 11;
buttonFPS.Text = "FPS Limit OFF";
buttonFPS.TextImageRelation = TextImageRelation.ImageBeforeText;
buttonFPS.UseVisualStyleBackColor = false;
buttonController.Activated = false;
buttonController.BackColor = SystemColors.ControlLight;
buttonController.BorderColor = Color.Transparent;
buttonController.BorderRadius = 5;
buttonController.Dock = DockStyle.Fill;
buttonController.FlatAppearance.BorderSize = 0;
buttonController.FlatStyle = FlatStyle.Flat;
buttonController.ForeColor = SystemColors.ControlText;
buttonController.ImageAlign = ContentAlignment.MiddleRight;
buttonController.Location = new Point(528, 4);
buttonController.Margin = new Padding(4);
buttonController.Name = "buttonController";
buttonController.Secondary = true;
buttonController.Size = new Size(255, 72);
buttonController.TabIndex = 11;
buttonController.Text = "Controller";
buttonController.TextImageRelation = TextImageRelation.ImageBeforeText;
buttonController.UseVisualStyleBackColor = false;
//
// SettingsForm
//
@@ -1607,6 +1630,7 @@ namespace GHelper
((System.ComponentModel.ISupportInitialize)picturePerf).EndInit();
panelGPU.ResumeLayout(false);
panelGPU.PerformLayout();
tableAMD.ResumeLayout(false);
tableGPU.ResumeLayout(false);
panelGPUTitle.ResumeLayout(false);
panelGPUTitle.PerformLayout();
@@ -1641,7 +1665,6 @@ namespace GHelper
panelAllyTitle.ResumeLayout(false);
panelAllyTitle.PerformLayout();
((System.ComponentModel.ISupportInitialize)pictureAlly).EndInit();
tableAMD.ResumeLayout(false);
ResumeLayout(false);
PerformLayout();
}
@@ -1727,12 +1750,13 @@ namespace GHelper
private RButton buttonBatteryFull;
private Panel panelAlly;
private TableLayoutPanel tableLayoutAlly;
private RButton buttonController;
private RButton buttonControllerMode;
private Panel panelAllyTitle;
private Label labelAlly;
private PictureBox pictureAlly;
private RButton buttonBacklight;
private TableLayoutPanel tableAMD;
private RButton buttonFPS;
private RButton buttonController;
}
}

View File

@@ -12,6 +12,7 @@ using GHelper.Peripherals;
using GHelper.Peripherals.Mouse;
using GHelper.UI;
using GHelper.USB;
using System;
using System.Diagnostics;
using System.Timers;
@@ -37,6 +38,7 @@ namespace GHelper
public Fans? fansForm;
public Extra? extraForm;
public Updates? updatesForm;
public Handheld? handheldForm;
static long lastRefresh;
static long lastBatteryRefresh;
@@ -159,6 +161,7 @@ namespace GHelper
buttonFans.Click += ButtonFans_Click;
buttonKeyboard.Click += ButtonKeyboard_Click;
buttonController.Click += ButtonHandheld_Click;
pictureColor.Click += PictureColor_Click;
pictureColor2.Click += PictureColor2_Click;
@@ -230,7 +233,7 @@ namespace GHelper
buttonBatteryFull.MouseLeave += ButtonBatteryFull_MouseLeave;
buttonBatteryFull.Click += ButtonBatteryFull_Click;
buttonController.Click += ButtonController_Click;
buttonControllerMode.Click += ButtonControllerMode_Click;
buttonBacklight.Click += ButtonBacklight_Click;
buttonFPS.Click += ButtonFPS_Click;
@@ -247,6 +250,25 @@ namespace GHelper
panelPerformance.Focus();
}
private void ButtonHandheld_Click(object? sender, EventArgs e)
{
if (handheldForm == null || handheldForm.Text == "")
{
handheldForm = new Handheld();
AddOwnedForm(handheldForm);
}
if (handheldForm.Visible)
{
handheldForm.Close();
}
else
{
//handheldForm.FormPosition();
handheldForm.Show();
}
}
private void ButtonFPS_Click(object? sender, EventArgs e)
{
allyControl.ToggleFPSLimit();
@@ -257,7 +279,7 @@ namespace GHelper
allyControl.ToggleBacklight();
}
private void ButtonController_Click(object? sender, EventArgs e)
private void ButtonControllerMode_Click(object? sender, EventArgs e)
{
allyControl.ToggleMode();
}
@@ -278,13 +300,13 @@ namespace GHelper
switch (mode)
{
case ControllerMode.Gamepad:
buttonController.Text = "Gamepad";
buttonControllerMode.Text = "Gamepad";
break;
case ControllerMode.Mouse:
buttonController.Text = "Mouse";
buttonControllerMode.Text = "Mouse";
break;
default:
buttonController.Text = "Auto";
buttonControllerMode.Text = "Auto";
break;
}
}

View File

@@ -57,7 +57,7 @@ public static class AsusHid
return null;
}
public static void WriteInput(byte[] data, string log = "USB")
public static void WriteInput(byte[] data, string? log = "USB")
{
foreach (var device in FindDevices(INPUT_ID))
{
@@ -68,7 +68,7 @@ public static class AsusHid
var payload = new byte[device.GetMaxFeatureReportLength()];
Array.Copy(data, payload, data.Length);
stream.SetFeature(payload);
Logger.WriteLine($"{log} Feature {device.ProductID.ToString("X")}|{device.GetMaxFeatureReportLength()}: {BitConverter.ToString(data)}");
if (log is not null) Logger.WriteLine($"{log} {device.ProductID.ToString("X")}|{device.GetMaxFeatureReportLength()}: {BitConverter.ToString(data)}");
}
}
catch (Exception ex)

View File

@@ -78,7 +78,6 @@ namespace GHelper
InitializeComponent();
InitTheme(true);
LoadUpdates(true);
//buttonRefresh.Visible = false;