diff --git a/app/App.config b/app/App.config index 3a6bb535..0d099bd0 100644 --- a/app/App.config +++ b/app/App.config @@ -1,7 +1,7 @@  - + diff --git a/app/Fans.Designer.cs b/app/Fans.Designer.cs index 149b7e6d..f600aad6 100644 --- a/app/Fans.Designer.cs +++ b/app/Fans.Designer.cs @@ -31,6 +31,7 @@ System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea1 = new System.Windows.Forms.DataVisualization.Charting.ChartArea(); System.Windows.Forms.DataVisualization.Charting.ChartArea chartArea2 = new System.Windows.Forms.DataVisualization.Charting.ChartArea(); panelFans = new Panel(); + labelTip = new Label(); labelBoost = new Label(); comboBoost = new ComboBox(); picturePerf = new PictureBox(); @@ -73,6 +74,7 @@ // // panelFans // + panelFans.Controls.Add(labelTip); panelFans.Controls.Add(labelBoost); panelFans.Controls.Add(comboBoost); panelFans.Controls.Add(picturePerf); @@ -89,6 +91,17 @@ panelFans.Size = new Size(824, 1159); panelFans.TabIndex = 12; // + // labelTip + // + labelTip.AutoSize = true; + labelTip.BackColor = SystemColors.ControlLightLight; + labelTip.Location = new Point(245, 13); + labelTip.Name = "labelTip"; + labelTip.Padding = new Padding(5); + labelTip.Size = new Size(107, 42); + labelTip.TabIndex = 40; + labelTip.Text = "500,300"; + // // labelBoost // labelBoost.AutoSize = true; @@ -468,5 +481,6 @@ private PictureBox pictureBox1; private ComboBox comboBoost; private Label labelBoost; + private Label labelTip; } } \ No newline at end of file diff --git a/app/Fans.cs b/app/Fans.cs index d2775306..bf53c1ee 100644 --- a/app/Fans.cs +++ b/app/Fans.cs @@ -1,5 +1,9 @@ using System; using System.Diagnostics; +using System.Diagnostics.Metrics; +using System.Drawing.Imaging; +using System.Drawing.Text; +using System.IO; using System.Windows.Forms.DataVisualization.Charting; namespace GHelper @@ -11,6 +15,12 @@ namespace GHelper Series seriesCPU; Series seriesGPU; + static string ChartPercToRPM(int percentage, string unit = "") + { + if (percentage == 0) return "OFF"; + return (1800 + 200 * Math.Floor(percentage * 0.2)).ToString() + unit; + } + void SetChart(Chart chart, int device) { @@ -41,10 +51,8 @@ namespace GHelper chart.ChartAreas[0].AxisY.LabelStyle.Font = new Font("Arial", 7F); - chart.ChartAreas[0].AxisY.CustomLabels.Add(-2, 2, "OFF"); - - for (int i = 1; i <= 9; i++) - chart.ChartAreas[0].AxisY.CustomLabels.Add(i * 10 - 2, i * 10 + 2, (1800 + 400 * i).ToString()); + for (int i = 0; i <= 90; i += 10) + chart.ChartAreas[0].AxisY.CustomLabels.Add(i - 2, i + 2, ChartPercToRPM(i)); chart.ChartAreas[0].AxisY.CustomLabels.Add(98, 102, "RPM"); @@ -77,6 +85,9 @@ namespace GHelper InitializeComponent(); + labelTip.Visible = false; + labelTip.BackColor = Color.Transparent; + FormClosing += Fans_FormClosing; seriesCPU = chartCPU.Series.Add("CPU"); @@ -126,7 +137,7 @@ namespace GHelper { int boost = NativeMethods.GetCPUBoost(); if (boost >= 0) - comboBoost.SelectedIndex = boost; + comboBoost.SelectedIndex = Math.Min(boost, comboBoost.Items.Count - 1); } private void ComboBoost_Changed(object? sender, EventArgs e) @@ -334,6 +345,7 @@ namespace GHelper private void ChartCPU_MouseUp(object? sender, MouseEventArgs e) { curPoint = null; + labelTip.Visible = false; } private void ChartCPU_MouseMove(object? sender, MouseEventArgs e) @@ -371,13 +383,18 @@ namespace GHelper if (dy < 0) dy = 0; if (dy > 100) dy = 100; - dymin = (dx - 60) * 1.2; + dymin = (dx - 65) * 1.2; if (dy < dymin) dy = dymin; curPoint.XValue = dx; curPoint.YValues[0] = dy; + labelTip.Visible = true; + labelTip.Text = Math.Round(dx) + "C, " + ChartPercToRPM((int)dy, " RPM"); + labelTip.Top = e.Y + ((Control)sender).Top; + labelTip.Left = e.X; + } catch { diff --git a/app/GHelper.csproj b/app/GHelper.csproj index 745a26e8..a03a05ae 100644 --- a/app/GHelper.csproj +++ b/app/GHelper.csproj @@ -16,9 +16,15 @@ x64 False True - 0.29 + 0.31 + + + + + + @@ -102,8 +108,4 @@ - - - - \ No newline at end of file diff --git a/app/HighDpiHelper.cs b/app/HighDpiHelper.cs new file mode 100644 index 00000000..c94abed4 --- /dev/null +++ b/app/HighDpiHelper.cs @@ -0,0 +1,67 @@ +using System.Drawing.Drawing2D; + +public static class HighDpiHelper +{ + public static void AdjustControlImagesDpiScale(Control container, float baseScale = 2) + { + var dpiScale = GetDpiScale(container).Value; + AdjustControlImagesDpiScale(container.Controls, dpiScale / baseScale); + } + + public static void AdjustButtonDpiScale(ButtonBase button, float dpiScale) + { + var image = button.Image; + + if (image == null) + return; + + button.Image = ScaleImage(image, dpiScale); + } + + private static void AdjustControlImagesDpiScale(Control.ControlCollection controls, float dpiScale) + { + foreach (Control control in controls) + { + var button = control as ButtonBase; + if (button != null) + AdjustButtonDpiScale(button, dpiScale); + + AdjustControlImagesDpiScale(control.Controls, dpiScale); + } + } + + public static Lazy GetDpiScale(Control control) + { + return new Lazy(() => + { + using (var graphics = control.CreateGraphics()) + return graphics.DpiX / 96.0f; + }); + } + + private static Image ScaleImage(Image image, float dpiScale) + { + var newSize = ScaleSize(image.Size, dpiScale); + var newBitmap = new Bitmap(newSize.Width, newSize.Height); + + using (var g = Graphics.FromImage(newBitmap)) + { + // According to this blog post http://blogs.msdn.com/b/visualstudio/archive/2014/03/19/improving-high-dpi-support-for-visual-studio-2013.aspx + // NearestNeighbor is more adapted for 200% and 200%+ DPI + + var interpolationMode = InterpolationMode.HighQualityBicubic; + if (dpiScale >= 2.0f) + interpolationMode = InterpolationMode.NearestNeighbor; + + g.InterpolationMode = interpolationMode; + g.DrawImage(image, new Rectangle(new Point(), newSize)); + } + + return newBitmap; + } + + private static Size ScaleSize(Size size, float scale) + { + return new Size((int)(size.Width * scale), (int)(size.Height * scale)); + } +} diff --git a/app/Program.cs b/app/Program.cs index 602ed9dd..8e1f7027 100644 --- a/app/Program.cs +++ b/app/Program.cs @@ -60,8 +60,6 @@ namespace GHelper settingsForm.InitAura(); settingsForm.InitMatrix(); - settingsForm.VisualiseGPUAuto(config.getConfig("gpu_auto")); - settingsForm.VisualiseScreenAuto(config.getConfig("screen_auto")); settingsForm.SetStartupCheck(Startup.IsScheduled()); SetAutoModes(); diff --git a/app/Properties/Resources.Designer.cs b/app/Properties/Resources.Designer.cs index 82636674..2b9dfe3d 100644 --- a/app/Properties/Resources.Designer.cs +++ b/app/Properties/Resources.Designer.cs @@ -80,6 +80,26 @@ namespace GHelper.Properties { } } + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_balance_symbol_96 { + get { + object obj = ResourceManager.GetObject("icons8-balance-symbol-96", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_bicycle_48__1_ { + get { + object obj = ResourceManager.GetObject("icons8-bicycle-48 (1)", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + /// /// Looks up a localized resource of type System.Drawing.Bitmap. /// @@ -90,6 +110,16 @@ namespace GHelper.Properties { } } + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_fan_48 { + get { + object obj = ResourceManager.GetObject("icons8-fan-48", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + /// /// Looks up a localized resource of type System.Drawing.Bitmap. /// @@ -100,6 +130,36 @@ namespace GHelper.Properties { } } + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_fan_speed_48 { + get { + object obj = ResourceManager.GetObject("icons8-fan-speed-48", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_fiat_500_48 { + get { + object obj = ResourceManager.GetObject("icons8-fiat-500-48", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_game_controller_48 { + get { + object obj = ResourceManager.GetObject("icons8-game-controller-48", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + /// /// Looks up a localized resource of type System.Drawing.Bitmap. /// @@ -120,6 +180,36 @@ namespace GHelper.Properties { } } + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_launch_96 { + get { + object obj = ResourceManager.GetObject("icons8-launch-96", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_leaf_48 { + get { + object obj = ResourceManager.GetObject("icons8-leaf-48", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_leaf_96 { + get { + object obj = ResourceManager.GetObject("icons8-leaf-96", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + /// /// Looks up a localized resource of type System.Drawing.Bitmap. /// @@ -130,6 +220,26 @@ namespace GHelper.Properties { } } + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_organic_food_96 { + get { + object obj = ResourceManager.GetObject("icons8-organic-food-96", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_organic_food_961 { + get { + object obj = ResourceManager.GetObject("icons8-organic-food-961", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + /// /// Looks up a localized resource of type System.Drawing.Bitmap. /// @@ -140,6 +250,56 @@ namespace GHelper.Properties { } } + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_project_management_48 { + get { + object obj = ResourceManager.GetObject("icons8-project-management-48", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_project_management_48__1_ { + get { + object obj = ResourceManager.GetObject("icons8-project-management-48 (1)", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_rocket_48 { + get { + object obj = ResourceManager.GetObject("icons8-rocket-48", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_spa_flower_48 { + get { + object obj = ResourceManager.GetObject("icons8-spa-flower-48", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_spa_flower_96 { + get { + object obj = ResourceManager.GetObject("icons8-spa-flower-96", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + /// /// Looks up a localized resource of type System.Drawing.Bitmap. /// @@ -170,6 +330,16 @@ namespace GHelper.Properties { } } + /// + /// Looks up a localized resource of type System.Drawing.Bitmap. + /// + internal static System.Drawing.Bitmap icons8_xbox_controller_96 { + get { + object obj = ResourceManager.GetObject("icons8-xbox-controller-96", resourceCulture); + return ((System.Drawing.Bitmap)(obj)); + } + } + /// /// Looks up a localized resource of type System.Drawing.Icon similar to (Icon). /// diff --git a/app/Properties/Resources.resx b/app/Properties/Resources.resx index c08865b5..12794545 100644 --- a/app/Properties/Resources.resx +++ b/app/Properties/Resources.resx @@ -118,43 +118,94 @@ System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 - - ..\Resources\eco.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icons8-leaf-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\icons8-matrix-desktop-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icons8-launch-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-charging-battery-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-organic-food-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-fiat-500-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-video-card-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-project-management-48 (1).png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-bicycle-48 (1).png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-fan-head-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-processor-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-spa-flower-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-spa-flower-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\standard.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\icons8-keyboard-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icons8-fan-speed-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-speed-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\eco.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-laptop-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-rocket-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-organic-food-961.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-balance-symbol-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-fan-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-matrix-desktop-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-xbox-controller-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-project-management-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + + ..\Resources\icons8-leaf-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + ..\Resources\ultimate.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\standard.ico;System.Drawing.Icon, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - ..\Resources\icons8-speed-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a ..\Resources\everything-is-fine-itsfine.gif;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - ..\Resources\icons8-speed-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\icons8-video-card-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\icons8-fan-head-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\icons8-charging-battery-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\icons8-laptop-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a - - - ..\Resources\icons8-processor-96.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a + + ..\Resources\icons8-game-controller-48.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a \ No newline at end of file diff --git a/app/Resources/icons8-balance-symbol-96.png b/app/Resources/icons8-balance-symbol-96.png new file mode 100644 index 00000000..e1ad7907 Binary files /dev/null and b/app/Resources/icons8-balance-symbol-96.png differ diff --git a/app/Resources/icons8-bicycle-48 (1).png b/app/Resources/icons8-bicycle-48 (1).png new file mode 100644 index 00000000..8843bf44 Binary files /dev/null and b/app/Resources/icons8-bicycle-48 (1).png differ diff --git a/app/Resources/icons8-fan-48.png b/app/Resources/icons8-fan-48.png new file mode 100644 index 00000000..501975b8 Binary files /dev/null and b/app/Resources/icons8-fan-48.png differ diff --git a/app/Resources/icons8-fan-speed-48.png b/app/Resources/icons8-fan-speed-48.png new file mode 100644 index 00000000..573458ba Binary files /dev/null and b/app/Resources/icons8-fan-speed-48.png differ diff --git a/app/Resources/icons8-fiat-500-48.png b/app/Resources/icons8-fiat-500-48.png new file mode 100644 index 00000000..3649c266 Binary files /dev/null and b/app/Resources/icons8-fiat-500-48.png differ diff --git a/app/Resources/icons8-game-controller-48.png b/app/Resources/icons8-game-controller-48.png new file mode 100644 index 00000000..9b25b701 Binary files /dev/null and b/app/Resources/icons8-game-controller-48.png differ diff --git a/app/Resources/icons8-launch-96.png b/app/Resources/icons8-launch-96.png new file mode 100644 index 00000000..a59eeb58 Binary files /dev/null and b/app/Resources/icons8-launch-96.png differ diff --git a/app/Resources/icons8-leaf-48.png b/app/Resources/icons8-leaf-48.png new file mode 100644 index 00000000..a863dc6b Binary files /dev/null and b/app/Resources/icons8-leaf-48.png differ diff --git a/app/Resources/icons8-leaf-96.png b/app/Resources/icons8-leaf-96.png new file mode 100644 index 00000000..f005f855 Binary files /dev/null and b/app/Resources/icons8-leaf-96.png differ diff --git a/app/Resources/icons8-organic-food-96.png b/app/Resources/icons8-organic-food-96.png new file mode 100644 index 00000000..09abca8c Binary files /dev/null and b/app/Resources/icons8-organic-food-96.png differ diff --git a/app/Resources/icons8-organic-food-961.png b/app/Resources/icons8-organic-food-961.png new file mode 100644 index 00000000..9b448557 Binary files /dev/null and b/app/Resources/icons8-organic-food-961.png differ diff --git a/app/Resources/icons8-project-management-48 (1).png b/app/Resources/icons8-project-management-48 (1).png new file mode 100644 index 00000000..101f6812 Binary files /dev/null and b/app/Resources/icons8-project-management-48 (1).png differ diff --git a/app/Resources/icons8-project-management-48.png b/app/Resources/icons8-project-management-48.png new file mode 100644 index 00000000..44f2af0f Binary files /dev/null and b/app/Resources/icons8-project-management-48.png differ diff --git a/app/Resources/icons8-rocket-48.png b/app/Resources/icons8-rocket-48.png new file mode 100644 index 00000000..1580691f Binary files /dev/null and b/app/Resources/icons8-rocket-48.png differ diff --git a/app/Resources/icons8-spa-flower-48.png b/app/Resources/icons8-spa-flower-48.png new file mode 100644 index 00000000..1258c195 Binary files /dev/null and b/app/Resources/icons8-spa-flower-48.png differ diff --git a/app/Resources/icons8-spa-flower-96.png b/app/Resources/icons8-spa-flower-96.png new file mode 100644 index 00000000..b353220b Binary files /dev/null and b/app/Resources/icons8-spa-flower-96.png differ diff --git a/app/Resources/icons8-xbox-controller-96.png b/app/Resources/icons8-xbox-controller-96.png new file mode 100644 index 00000000..e428d922 Binary files /dev/null and b/app/Resources/icons8-xbox-controller-96.png differ diff --git a/app/RoundedButton.cs b/app/RoundedButton.cs index f8ecfabf..6c1b50d4 100644 --- a/app/RoundedButton.cs +++ b/app/RoundedButton.cs @@ -1,4 +1,5 @@ using System.ComponentModel; +using System.Drawing; using System.Drawing.Drawing2D; namespace CustomControls @@ -29,9 +30,11 @@ namespace CustomControls if (activated != value) this.Invalidate(); activated = value; + } } + public RoundedButton() { this.FlatStyle = FlatStyle.Flat; @@ -52,19 +55,23 @@ namespace CustomControls return path; } + protected override void OnPaint(PaintEventArgs pevent) { base.OnPaint(pevent); + float ratio = pevent.Graphics.DpiX / 192.0f; + int border = (int)(ratio * borderSize); + Rectangle rectSurface = this.ClientRectangle; - Rectangle rectBorder = Rectangle.Inflate(rectSurface, -borderSize, -borderSize); + Rectangle rectBorder = Rectangle.Inflate(rectSurface, -border, -border); Color borderDrawColor = activated ? borderColor : Color.Transparent; - using (GraphicsPath pathSurface = GetFigurePath(rectSurface, borderRadius+borderSize)) + using (GraphicsPath pathSurface = GetFigurePath(rectSurface, borderRadius+ border)) using (GraphicsPath pathBorder = GetFigurePath(rectBorder, borderRadius)) - using (Pen penSurface = new Pen(this.Parent.BackColor, borderSize)) - using (Pen penBorder = new Pen(borderDrawColor, borderSize)) + using (Pen penSurface = new Pen(this.Parent.BackColor, border)) + using (Pen penBorder = new Pen(borderDrawColor, border)) { penBorder.Alignment = PenAlignment.Outset; pevent.Graphics.SmoothingMode = SmoothingMode.AntiAlias; diff --git a/app/Settings.Designer.cs b/app/Settings.Designer.cs index 8b0bea00..81296c24 100644 --- a/app/Settings.Designer.cs +++ b/app/Settings.Designer.cs @@ -34,9 +34,9 @@ namespace GHelper panelMatrix = new Panel(); checkMatrix = new CheckBox(); tableLayoutMatrix = new TableLayoutPanel(); + comboMatrix = new ComboBox(); buttonMatrix = new Button(); comboMatrixRunning = new ComboBox(); - comboMatrix = new ComboBox(); pictureMatrix = new PictureBox(); labelMatrix = new Label(); panelBattery = new Panel(); @@ -49,28 +49,30 @@ namespace GHelper buttonQuit = new Button(); checkStartup = new CheckBox(); panelPerformance = new Panel(); - buttonFans = new Button(); picturePerf = new PictureBox(); labelPerf = new Label(); labelCPUFan = new Label(); tablePerf = new TableLayoutPanel(); - buttonTurbo = new RoundedButton(); - buttonBalanced = new RoundedButton(); buttonSilent = new RoundedButton(); + buttonBalanced = new RoundedButton(); + buttonTurbo = new RoundedButton(); + buttonFans = new Button(); panelGPU = new Panel(); - checkGPU = new CheckBox(); + labelTipGPU = new Label(); pictureGPU = new PictureBox(); labelGPU = new Label(); labelGPUFan = new Label(); tableGPU = new TableLayoutPanel(); - buttonUltimate = new RoundedButton(); - buttonStandard = new RoundedButton(); buttonEco = new RoundedButton(); + buttonStandard = new RoundedButton(); + buttonOptimized = new RoundedButton(); + buttonUltimate = new RoundedButton(); panelScreen = new Panel(); - checkScreen = new CheckBox(); + labelTipScreen = new Label(); tableScreen = new TableLayoutPanel(); - button120Hz = new RoundedButton(); + buttonScreenAuto = new RoundedButton(); button60Hz = new RoundedButton(); + button120Hz = new RoundedButton(); pictureScreen = new PictureBox(); labelSreen = new Label(); panelKeyboard = new Panel(); @@ -82,7 +84,7 @@ namespace GHelper pictureColor = new PictureBox(); buttonKeyboardColor = new Button(); pictureKeyboard = new PictureBox(); - label1 = new Label(); + labelKeyboard = new Label(); panelMatrix.SuspendLayout(); tableLayoutMatrix.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)pictureMatrix).BeginInit(); @@ -109,23 +111,26 @@ namespace GHelper // // panelMatrix // + panelMatrix.AutoSize = true; + panelMatrix.AutoSizeMode = AutoSizeMode.GrowAndShrink; panelMatrix.Controls.Add(checkMatrix); panelMatrix.Controls.Add(tableLayoutMatrix); panelMatrix.Controls.Add(pictureMatrix); panelMatrix.Controls.Add(labelMatrix); panelMatrix.Dock = DockStyle.Top; - panelMatrix.Location = new Point(16, 806); - panelMatrix.Margin = new Padding(4); + panelMatrix.Location = new Point(10, 758); + panelMatrix.Margin = new Padding(8); panelMatrix.Name = "panelMatrix"; - panelMatrix.Size = new Size(722, 180); + panelMatrix.Padding = new Padding(0, 0, 0, 12); + panelMatrix.Size = new Size(816, 168); panelMatrix.TabIndex = 33; // // checkMatrix // checkMatrix.AutoSize = true; checkMatrix.ForeColor = SystemColors.GrayText; - checkMatrix.Location = new Point(28, 109); - checkMatrix.Margin = new Padding(4, 2, 4, 2); + checkMatrix.Location = new Point(24, 116); + checkMatrix.Margin = new Padding(8, 4, 8, 4); checkMatrix.Name = "checkMatrix"; checkMatrix.Size = new Size(249, 36); checkMatrix.TabIndex = 44; @@ -135,70 +140,73 @@ namespace GHelper // tableLayoutMatrix // tableLayoutMatrix.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; - tableLayoutMatrix.ColumnCount = 3; - tableLayoutMatrix.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33.3333321F)); - tableLayoutMatrix.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33.3333321F)); - tableLayoutMatrix.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33.3333321F)); - tableLayoutMatrix.Controls.Add(buttonMatrix, 0, 0); - tableLayoutMatrix.Controls.Add(comboMatrixRunning, 0, 0); + tableLayoutMatrix.AutoSize = true; + tableLayoutMatrix.AutoSizeMode = AutoSizeMode.GrowAndShrink; + tableLayoutMatrix.ColumnCount = 4; + tableLayoutMatrix.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); + tableLayoutMatrix.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); + tableLayoutMatrix.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); + tableLayoutMatrix.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); tableLayoutMatrix.Controls.Add(comboMatrix, 0, 0); - tableLayoutMatrix.Location = new Point(15, 52); - tableLayoutMatrix.Margin = new Padding(4); + tableLayoutMatrix.Controls.Add(buttonMatrix, 2, 0); + tableLayoutMatrix.Controls.Add(comboMatrixRunning, 1, 0); + tableLayoutMatrix.Location = new Point(16, 52); + tableLayoutMatrix.Margin = new Padding(8); tableLayoutMatrix.Name = "tableLayoutMatrix"; tableLayoutMatrix.RowCount = 1; tableLayoutMatrix.RowStyles.Add(new RowStyle(SizeType.Percent, 100F)); - tableLayoutMatrix.Size = new Size(684, 62); + tableLayoutMatrix.Size = new Size(780, 60); tableLayoutMatrix.TabIndex = 43; // + // comboMatrix + // + comboMatrix.Dock = DockStyle.Top; + comboMatrix.Font = new Font("Segoe UI", 9F, FontStyle.Regular, GraphicsUnit.Point); + comboMatrix.FormattingEnabled = true; + comboMatrix.ItemHeight = 32; + comboMatrix.Items.AddRange(new object[] { "Off", "Dim", "Medium", "Bright" }); + comboMatrix.Location = new Point(4, 10); + comboMatrix.Margin = new Padding(4, 10, 4, 8); + comboMatrix.Name = "comboMatrix"; + comboMatrix.Size = new Size(187, 40); + comboMatrix.TabIndex = 41; + comboMatrix.TabStop = false; + // // buttonMatrix // buttonMatrix.BackColor = SystemColors.ButtonFace; buttonMatrix.Dock = DockStyle.Top; buttonMatrix.FlatAppearance.BorderSize = 0; - buttonMatrix.Location = new Point(466, 10); - buttonMatrix.Margin = new Padding(10); + buttonMatrix.Location = new Point(394, 8); + buttonMatrix.Margin = new Padding(4, 8, 4, 8); buttonMatrix.Name = "buttonMatrix"; - buttonMatrix.Size = new Size(208, 42); + buttonMatrix.Size = new Size(187, 44); buttonMatrix.TabIndex = 43; buttonMatrix.Text = "Picture / Gif"; buttonMatrix.UseVisualStyleBackColor = false; // // comboMatrixRunning // - comboMatrixRunning.Dock = DockStyle.Fill; + comboMatrixRunning.Dock = DockStyle.Top; comboMatrixRunning.Font = new Font("Segoe UI", 9F, FontStyle.Regular, GraphicsUnit.Point); comboMatrixRunning.FormattingEnabled = true; comboMatrixRunning.ItemHeight = 32; comboMatrixRunning.Items.AddRange(new object[] { "Binary Banner", "Rog Logo", "Picture" }); - comboMatrixRunning.Location = new Point(238, 10); - comboMatrixRunning.Margin = new Padding(10); + comboMatrixRunning.Location = new Point(199, 10); + comboMatrixRunning.Margin = new Padding(4, 10, 4, 8); comboMatrixRunning.Name = "comboMatrixRunning"; - comboMatrixRunning.Size = new Size(208, 40); + comboMatrixRunning.Size = new Size(187, 40); comboMatrixRunning.TabIndex = 42; comboMatrixRunning.TabStop = false; // - // comboMatrix - // - comboMatrix.Dock = DockStyle.Fill; - comboMatrix.Font = new Font("Segoe UI", 9F, FontStyle.Regular, GraphicsUnit.Point); - comboMatrix.FormattingEnabled = true; - comboMatrix.ItemHeight = 32; - comboMatrix.Items.AddRange(new object[] { "Off", "Dim", "Medium", "Bright" }); - comboMatrix.Location = new Point(10, 10); - comboMatrix.Margin = new Padding(10); - comboMatrix.Name = "comboMatrix"; - comboMatrix.Size = new Size(208, 40); - comboMatrix.TabIndex = 41; - comboMatrix.TabStop = false; - // // pictureMatrix // pictureMatrix.BackgroundImage = Properties.Resources.icons8_matrix_desktop_48; pictureMatrix.BackgroundImageLayout = ImageLayout.Zoom; - pictureMatrix.Location = new Point(25, 10); - pictureMatrix.Margin = new Padding(4, 2, 4, 2); + pictureMatrix.Location = new Point(24, 15); + pictureMatrix.Margin = new Padding(4); pictureMatrix.Name = "pictureMatrix"; - pictureMatrix.Size = new Size(36, 36); + pictureMatrix.Size = new Size(32, 32); pictureMatrix.TabIndex = 39; pictureMatrix.TabStop = false; // @@ -206,8 +214,8 @@ namespace GHelper // labelMatrix.AutoSize = true; labelMatrix.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point); - labelMatrix.Location = new Point(64, 12); - labelMatrix.Margin = new Padding(4, 0, 4, 0); + labelMatrix.Location = new Point(60, 14); + labelMatrix.Margin = new Padding(8, 0, 8, 0); labelMatrix.Name = "labelMatrix"; labelMatrix.Size = new Size(170, 32); labelMatrix.TabIndex = 38; @@ -215,16 +223,19 @@ namespace GHelper // // panelBattery // + panelBattery.AutoSize = true; + panelBattery.AutoSizeMode = AutoSizeMode.GrowAndShrink; panelBattery.Controls.Add(labelVersion); panelBattery.Controls.Add(labelBattery); panelBattery.Controls.Add(pictureBattery); panelBattery.Controls.Add(labelBatteryTitle); panelBattery.Controls.Add(trackBattery); panelBattery.Dock = DockStyle.Top; - panelBattery.Location = new Point(16, 986); - panelBattery.Margin = new Padding(4); + panelBattery.Location = new Point(10, 926); + panelBattery.Margin = new Padding(8); panelBattery.Name = "panelBattery"; - panelBattery.Size = new Size(722, 148); + panelBattery.Padding = new Padding(0, 0, 0, 12); + panelBattery.Size = new Size(816, 158); panelBattery.TabIndex = 34; // // labelVersion @@ -232,8 +243,8 @@ namespace GHelper labelVersion.AutoSize = true; labelVersion.Font = new Font("Segoe UI", 9F, FontStyle.Underline, GraphicsUnit.Point); labelVersion.ForeColor = SystemColors.ControlDark; - labelVersion.Location = new Point(26, 102); - labelVersion.Margin = new Padding(4, 0, 4, 0); + labelVersion.Location = new Point(25, 109); + labelVersion.Margin = new Padding(8, 0, 8, 0); labelVersion.Name = "labelVersion"; labelVersion.Size = new Size(44, 32); labelVersion.TabIndex = 37; @@ -242,10 +253,10 @@ namespace GHelper // labelBattery // labelBattery.Anchor = AnchorStyles.Top | AnchorStyles.Right; - labelBattery.Location = new Point(432, 12); - labelBattery.Margin = new Padding(4, 0, 4, 0); + labelBattery.Location = new Point(428, 9); + labelBattery.Margin = new Padding(8, 0, 8, 0); labelBattery.Name = "labelBattery"; - labelBattery.Size = new Size(258, 32); + labelBattery.Size = new Size(364, 44); labelBattery.TabIndex = 36; labelBattery.Text = " "; labelBattery.TextAlign = ContentAlignment.TopRight; @@ -254,34 +265,34 @@ namespace GHelper // pictureBattery.BackgroundImage = (Image)resources.GetObject("pictureBattery.BackgroundImage"); pictureBattery.BackgroundImageLayout = ImageLayout.Zoom; - pictureBattery.Location = new Point(25, 10); - pictureBattery.Margin = new Padding(4, 2, 4, 2); + pictureBattery.Location = new Point(24, 16); + pictureBattery.Margin = new Padding(4); pictureBattery.Name = "pictureBattery"; - pictureBattery.Size = new Size(36, 38); + pictureBattery.Size = new Size(32, 32); pictureBattery.TabIndex = 35; pictureBattery.TabStop = false; // // labelBatteryTitle // labelBatteryTitle.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point); - labelBatteryTitle.Location = new Point(66, 12); - labelBatteryTitle.Margin = new Padding(4, 0, 4, 0); + labelBatteryTitle.Location = new Point(60, 15); + labelBatteryTitle.Margin = new Padding(8, 0, 8, 0); labelBatteryTitle.Name = "labelBatteryTitle"; - labelBatteryTitle.Size = new Size(408, 36); + labelBatteryTitle.Size = new Size(393, 36); labelBatteryTitle.TabIndex = 34; labelBatteryTitle.Text = "Battery Charge Limit"; // // trackBattery // trackBattery.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; - trackBattery.LargeChange = 20; - trackBattery.Location = new Point(15, 48); - trackBattery.Margin = new Padding(4, 2, 4, 2); + trackBattery.LargeChange = 10; + trackBattery.Location = new Point(20, 52); + trackBattery.Margin = new Padding(8, 4, 8, 4); trackBattery.Maximum = 100; trackBattery.Minimum = 50; trackBattery.Name = "trackBattery"; - trackBattery.Size = new Size(684, 90); - trackBattery.SmallChange = 10; + trackBattery.Size = new Size(772, 90); + trackBattery.SmallChange = 5; trackBattery.TabIndex = 33; trackBattery.TickFrequency = 10; trackBattery.TickStyle = TickStyle.TopLeft; @@ -289,23 +300,26 @@ namespace GHelper // // panelFooter // + panelFooter.AutoSize = true; + panelFooter.AutoSizeMode = AutoSizeMode.GrowAndShrink; panelFooter.Controls.Add(buttonQuit); panelFooter.Controls.Add(checkStartup); panelFooter.Dock = DockStyle.Top; - panelFooter.Location = new Point(16, 1134); - panelFooter.Margin = new Padding(4); + panelFooter.Location = new Point(10, 1084); + panelFooter.Margin = new Padding(8); panelFooter.Name = "panelFooter"; - panelFooter.Size = new Size(722, 64); + panelFooter.Padding = new Padding(0, 0, 0, 10); + panelFooter.Size = new Size(816, 74); panelFooter.TabIndex = 35; // // buttonQuit // buttonQuit.Anchor = AnchorStyles.Top | AnchorStyles.Right; buttonQuit.BackColor = SystemColors.ButtonFace; - buttonQuit.Location = new Point(588, 9); - buttonQuit.Margin = new Padding(4, 2, 4, 2); + buttonQuit.Location = new Point(584, 16); + buttonQuit.Margin = new Padding(8, 4, 8, 4); buttonQuit.Name = "buttonQuit"; - buttonQuit.Size = new Size(116, 40); + buttonQuit.Size = new Size(208, 44); buttonQuit.TabIndex = 18; buttonQuit.Text = "Quit"; buttonQuit.UseVisualStyleBackColor = false; @@ -313,8 +327,8 @@ namespace GHelper // checkStartup // checkStartup.AutoSize = true; - checkStartup.Location = new Point(27, 15); - checkStartup.Margin = new Padding(4, 2, 4, 2); + checkStartup.Location = new Point(24, 21); + checkStartup.Margin = new Padding(8, 4, 8, 4); checkStartup.Name = "checkStartup"; checkStartup.Size = new Size(206, 36); checkStartup.TabIndex = 17; @@ -323,40 +337,29 @@ namespace GHelper // // panelPerformance // - panelPerformance.Controls.Add(buttonFans); + panelPerformance.AutoSize = true; + panelPerformance.AutoSizeMode = AutoSizeMode.GrowAndShrink; panelPerformance.Controls.Add(picturePerf); panelPerformance.Controls.Add(labelPerf); panelPerformance.Controls.Add(labelCPUFan); panelPerformance.Controls.Add(tablePerf); panelPerformance.Dock = DockStyle.Top; - panelPerformance.Location = new Point(16, 16); + panelPerformance.Location = new Point(10, 10); panelPerformance.Margin = new Padding(0); panelPerformance.Name = "panelPerformance"; - panelPerformance.Size = new Size(722, 220); + panelPerformance.Padding = new Padding(0, 0, 0, 12); + panelPerformance.Size = new Size(816, 200); panelPerformance.TabIndex = 36; // - // buttonFans - // - buttonFans.Anchor = AnchorStyles.Top | AnchorStyles.Right; - buttonFans.BackColor = SystemColors.ButtonFace; - buttonFans.FlatAppearance.BorderSize = 0; - buttonFans.Location = new Point(479, 161); - buttonFans.Margin = new Padding(4, 2, 4, 2); - buttonFans.Name = "buttonFans"; - buttonFans.Size = new Size(213, 48); - buttonFans.TabIndex = 34; - buttonFans.Text = "Fans and Power"; - buttonFans.UseVisualStyleBackColor = false; - // // picturePerf // picturePerf.BackgroundImage = (Image)resources.GetObject("picturePerf.BackgroundImage"); picturePerf.BackgroundImageLayout = ImageLayout.Zoom; picturePerf.InitialImage = null; - picturePerf.Location = new Point(25, 10); - picturePerf.Margin = new Padding(4, 2, 4, 2); + picturePerf.Location = new Point(24, 20); + picturePerf.Margin = new Padding(4); picturePerf.Name = "picturePerf"; - picturePerf.Size = new Size(36, 38); + picturePerf.Size = new Size(32, 32); picturePerf.TabIndex = 32; picturePerf.TabStop = false; // @@ -364,8 +367,8 @@ namespace GHelper // labelPerf.AutoSize = true; labelPerf.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point); - labelPerf.Location = new Point(64, 12); - labelPerf.Margin = new Padding(4, 0, 4, 0); + labelPerf.Location = new Point(60, 18); + labelPerf.Margin = new Padding(8, 0, 8, 0); labelPerf.Name = "labelPerf"; labelPerf.Size = new Size(234, 32); labelPerf.TabIndex = 31; @@ -374,10 +377,10 @@ namespace GHelper // labelCPUFan // labelCPUFan.Anchor = AnchorStyles.Top | AnchorStyles.Right; - labelCPUFan.Location = new Point(326, 10); - labelCPUFan.Margin = new Padding(4, 0, 4, 0); + labelCPUFan.Location = new Point(456, 16); + labelCPUFan.Margin = new Padding(8, 0, 8, 0); labelCPUFan.Name = "labelCPUFan"; - labelCPUFan.Size = new Size(366, 32); + labelCPUFan.Size = new Size(336, 36); labelCPUFan.TabIndex = 30; labelCPUFan.Text = " "; labelCPUFan.TextAlign = ContentAlignment.TopRight; @@ -385,40 +388,46 @@ namespace GHelper // tablePerf // tablePerf.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; - tablePerf.AutoScroll = true; + tablePerf.AutoSize = true; tablePerf.AutoSizeMode = AutoSizeMode.GrowAndShrink; - tablePerf.ColumnCount = 3; - tablePerf.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33.33333F)); - tablePerf.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33.33333F)); - tablePerf.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33.33333F)); - tablePerf.Controls.Add(buttonTurbo, 2, 0); - tablePerf.Controls.Add(buttonBalanced, 1, 0); + tablePerf.ColumnCount = 4; + tablePerf.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); + tablePerf.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); + tablePerf.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); + tablePerf.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); tablePerf.Controls.Add(buttonSilent, 0, 0); - tablePerf.Location = new Point(15, 48); - tablePerf.Margin = new Padding(4, 2, 4, 2); + tablePerf.Controls.Add(buttonBalanced, 1, 0); + tablePerf.Controls.Add(buttonTurbo, 2, 0); + tablePerf.Controls.Add(buttonFans, 3, 0); + tablePerf.Location = new Point(16, 56); + tablePerf.Margin = new Padding(8, 4, 8, 4); tablePerf.Name = "tablePerf"; tablePerf.RowCount = 1; - tablePerf.RowStyles.Add(new RowStyle(SizeType.Absolute, 108F)); - tablePerf.Size = new Size(684, 108); + tablePerf.RowStyles.Add(new RowStyle(SizeType.Absolute, 128F)); + tablePerf.Size = new Size(780, 128); tablePerf.TabIndex = 29; // - // buttonTurbo + // buttonSilent // - buttonTurbo.Activated = false; - buttonTurbo.BackColor = SystemColors.ControlLightLight; - buttonTurbo.BorderColor = Color.Transparent; - buttonTurbo.Dock = DockStyle.Fill; - buttonTurbo.FlatAppearance.BorderColor = Color.FromArgb(192, 0, 0); - buttonTurbo.FlatAppearance.BorderSize = 0; - buttonTurbo.FlatStyle = FlatStyle.Flat; - buttonTurbo.ForeColor = SystemColors.ControlText; - buttonTurbo.Location = new Point(464, 12); - buttonTurbo.Margin = new Padding(8, 12, 8, 12); - buttonTurbo.Name = "buttonTurbo"; - buttonTurbo.Size = new Size(212, 84); - buttonTurbo.TabIndex = 2; - buttonTurbo.Text = "Turbo"; - buttonTurbo.UseVisualStyleBackColor = false; + buttonSilent.Activated = false; + buttonSilent.BackColor = SystemColors.ControlLightLight; + buttonSilent.BackgroundImageLayout = ImageLayout.None; + buttonSilent.BorderColor = Color.Transparent; + buttonSilent.CausesValidation = false; + buttonSilent.Dock = DockStyle.Fill; + buttonSilent.FlatAppearance.BorderSize = 0; + buttonSilent.FlatStyle = FlatStyle.Flat; + buttonSilent.ForeColor = SystemColors.ControlText; + buttonSilent.Image = Properties.Resources.icons8_bicycle_48__1_; + buttonSilent.ImageAlign = ContentAlignment.BottomCenter; + buttonSilent.Location = new Point(4, 4); + buttonSilent.Margin = new Padding(4); + buttonSilent.Name = "buttonSilent"; + buttonSilent.Size = new Size(187, 120); + buttonSilent.TabIndex = 0; + buttonSilent.Text = "Silent"; + buttonSilent.TextImageRelation = TextImageRelation.ImageAboveText; + buttonSilent.UseVisualStyleBackColor = false; // // buttonBalanced // @@ -426,71 +435,91 @@ namespace GHelper buttonBalanced.BackColor = SystemColors.ControlLightLight; buttonBalanced.BorderColor = Color.Transparent; buttonBalanced.Dock = DockStyle.Fill; - buttonBalanced.FlatAppearance.BorderColor = Color.FromArgb(0, 0, 192); buttonBalanced.FlatAppearance.BorderSize = 0; buttonBalanced.FlatStyle = FlatStyle.Flat; buttonBalanced.ForeColor = SystemColors.ControlText; - buttonBalanced.Location = new Point(236, 12); - buttonBalanced.Margin = new Padding(8, 12, 8, 12); + buttonBalanced.Image = Properties.Resources.icons8_fiat_500_48; + buttonBalanced.ImageAlign = ContentAlignment.BottomCenter; + buttonBalanced.Location = new Point(199, 4); + buttonBalanced.Margin = new Padding(4); buttonBalanced.Name = "buttonBalanced"; - buttonBalanced.Size = new Size(212, 84); + buttonBalanced.Size = new Size(187, 120); buttonBalanced.TabIndex = 1; buttonBalanced.Text = "Balanced"; + buttonBalanced.TextImageRelation = TextImageRelation.ImageAboveText; buttonBalanced.UseVisualStyleBackColor = false; // - // buttonSilent + // buttonTurbo // - buttonSilent.Activated = false; - buttonSilent.BackColor = SystemColors.ControlLightLight; - buttonSilent.BorderColor = Color.Transparent; - buttonSilent.CausesValidation = false; - buttonSilent.Dock = DockStyle.Fill; - buttonSilent.FlatAppearance.BorderColor = Color.FromArgb(0, 192, 192); - buttonSilent.FlatAppearance.BorderSize = 0; - buttonSilent.FlatStyle = FlatStyle.Flat; - buttonSilent.ForeColor = SystemColors.ControlText; - buttonSilent.Location = new Point(8, 12); - buttonSilent.Margin = new Padding(8, 12, 8, 12); - buttonSilent.Name = "buttonSilent"; - buttonSilent.Size = new Size(212, 84); - buttonSilent.TabIndex = 0; - buttonSilent.Text = "Silent"; - buttonSilent.UseVisualStyleBackColor = false; + buttonTurbo.Activated = false; + buttonTurbo.BackColor = SystemColors.ControlLightLight; + buttonTurbo.BorderColor = Color.Transparent; + buttonTurbo.Dock = DockStyle.Fill; + buttonTurbo.FlatAppearance.BorderSize = 0; + buttonTurbo.FlatStyle = FlatStyle.Flat; + buttonTurbo.ForeColor = SystemColors.ControlText; + buttonTurbo.Image = Properties.Resources.icons8_rocket_48; + buttonTurbo.ImageAlign = ContentAlignment.BottomCenter; + buttonTurbo.Location = new Point(394, 4); + buttonTurbo.Margin = new Padding(4); + buttonTurbo.Name = "buttonTurbo"; + buttonTurbo.Size = new Size(187, 120); + buttonTurbo.TabIndex = 2; + buttonTurbo.Text = "Turbo"; + buttonTurbo.TextImageRelation = TextImageRelation.ImageAboveText; + buttonTurbo.UseVisualStyleBackColor = false; + // + // buttonFans + // + buttonFans.BackColor = SystemColors.ButtonFace; + buttonFans.Dock = DockStyle.Fill; + buttonFans.FlatAppearance.BorderSize = 0; + buttonFans.Image = Properties.Resources.icons8_fan_48; + buttonFans.ImageAlign = ContentAlignment.BottomCenter; + buttonFans.Location = new Point(589, 4); + buttonFans.Margin = new Padding(4); + buttonFans.Name = "buttonFans"; + buttonFans.Size = new Size(187, 120); + buttonFans.TabIndex = 35; + buttonFans.Text = "Fans + Power"; + buttonFans.TextImageRelation = TextImageRelation.ImageAboveText; + buttonFans.UseVisualStyleBackColor = false; // // panelGPU // - panelGPU.Controls.Add(checkGPU); + panelGPU.AutoSize = true; + panelGPU.AutoSizeMode = AutoSizeMode.GrowAndShrink; + panelGPU.Controls.Add(labelTipGPU); panelGPU.Controls.Add(pictureGPU); panelGPU.Controls.Add(labelGPU); panelGPU.Controls.Add(labelGPUFan); panelGPU.Controls.Add(tableGPU); panelGPU.Dock = DockStyle.Top; - panelGPU.Location = new Point(16, 236); - panelGPU.Margin = new Padding(4); + panelGPU.Location = new Point(10, 210); + panelGPU.Margin = new Padding(8); panelGPU.Name = "panelGPU"; - panelGPU.Size = new Size(722, 216); + panelGPU.Padding = new Padding(0, 0, 0, 10); + panelGPU.Size = new Size(816, 237); panelGPU.TabIndex = 37; // - // checkGPU + // labelTipGPU // - checkGPU.AutoSize = true; - checkGPU.ForeColor = SystemColors.GrayText; - checkGPU.Location = new Point(27, 155); - checkGPU.Margin = new Padding(4, 2, 4, 2); - checkGPU.Name = "checkGPU"; - checkGPU.Size = new Size(550, 36); - checkGPU.TabIndex = 20; - checkGPU.Text = "Set Eco on battery and Standard when plugged"; - checkGPU.UseVisualStyleBackColor = true; + labelTipGPU.ForeColor = SystemColors.GrayText; + labelTipGPU.Location = new Point(24, 191); + labelTipGPU.Margin = new Padding(4, 0, 4, 0); + labelTipGPU.Name = "labelTipGPU"; + labelTipGPU.Size = new Size(720, 36); + labelTipGPU.TabIndex = 20; + labelTipGPU.Text = " "; // // pictureGPU // pictureGPU.BackgroundImage = (Image)resources.GetObject("pictureGPU.BackgroundImage"); pictureGPU.BackgroundImageLayout = ImageLayout.Zoom; - pictureGPU.Location = new Point(25, 10); - pictureGPU.Margin = new Padding(4, 2, 4, 2); + pictureGPU.Location = new Point(24, 20); + pictureGPU.Margin = new Padding(4); pictureGPU.Name = "pictureGPU"; - pictureGPU.Size = new Size(36, 38); + pictureGPU.Size = new Size(32, 32); pictureGPU.TabIndex = 19; pictureGPU.TabStop = false; // @@ -498,8 +527,8 @@ namespace GHelper // labelGPU.AutoSize = true; labelGPU.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point); - labelGPU.Location = new Point(66, 12); - labelGPU.Margin = new Padding(4, 0, 4, 0); + labelGPU.Location = new Point(60, 20); + labelGPU.Margin = new Padding(8, 0, 8, 0); labelGPU.Name = "labelGPU"; labelGPU.Size = new Size(136, 32); labelGPU.TabIndex = 18; @@ -508,10 +537,10 @@ namespace GHelper // labelGPUFan // labelGPUFan.Anchor = AnchorStyles.Top | AnchorStyles.Right; - labelGPUFan.Location = new Point(346, 10); - labelGPUFan.Margin = new Padding(4, 0, 4, 0); + labelGPUFan.Location = new Point(244, 12); + labelGPUFan.Margin = new Padding(8, 0, 8, 0); labelGPUFan.Name = "labelGPUFan"; - labelGPUFan.Size = new Size(348, 32); + labelGPUFan.Size = new Size(548, 44); labelGPUFan.TabIndex = 17; labelGPUFan.Text = " "; labelGPUFan.TextAlign = ContentAlignment.TopRight; @@ -521,133 +550,166 @@ namespace GHelper tableGPU.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; tableGPU.AutoSize = true; tableGPU.AutoSizeMode = AutoSizeMode.GrowAndShrink; - tableGPU.ColumnCount = 3; - tableGPU.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33.33333F)); - tableGPU.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33.33333F)); - tableGPU.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33.33333F)); - tableGPU.Controls.Add(buttonUltimate, 2, 0); - tableGPU.Controls.Add(buttonStandard, 1, 0); + tableGPU.ColumnCount = 4; + tableGPU.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); + tableGPU.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); + tableGPU.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); + tableGPU.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); tableGPU.Controls.Add(buttonEco, 0, 0); - tableGPU.Location = new Point(15, 48); - tableGPU.Margin = new Padding(4, 2, 4, 2); + tableGPU.Controls.Add(buttonStandard, 1, 0); + tableGPU.Controls.Add(buttonOptimized, 2, 0); + tableGPU.Controls.Add(buttonUltimate, 2, 0); + tableGPU.Location = new Point(16, 60); + tableGPU.Margin = new Padding(8, 4, 8, 4); tableGPU.Name = "tableGPU"; tableGPU.RowCount = 1; - tableGPU.RowStyles.Add(new RowStyle(SizeType.Absolute, 108F)); - tableGPU.Size = new Size(684, 108); + tableGPU.RowStyles.Add(new RowStyle(SizeType.Absolute, 128F)); + tableGPU.Size = new Size(780, 128); tableGPU.TabIndex = 16; // - // buttonUltimate - // - buttonUltimate.Activated = false; - buttonUltimate.BackColor = SystemColors.ControlLightLight; - buttonUltimate.BorderColor = Color.Transparent; - buttonUltimate.Dock = DockStyle.Fill; - buttonUltimate.FlatAppearance.BorderSize = 0; - buttonUltimate.FlatStyle = FlatStyle.Flat; - buttonUltimate.ForeColor = SystemColors.ControlText; - buttonUltimate.Location = new Point(464, 12); - buttonUltimate.Margin = new Padding(8, 12, 8, 12); - buttonUltimate.Name = "buttonUltimate"; - buttonUltimate.Size = new Size(212, 84); - buttonUltimate.TabIndex = 2; - buttonUltimate.Text = "Ultimate"; - buttonUltimate.UseVisualStyleBackColor = false; - // - // buttonStandard - // - buttonStandard.Activated = false; - buttonStandard.BackColor = SystemColors.ControlLightLight; - buttonStandard.BorderColor = Color.Transparent; - buttonStandard.Dock = DockStyle.Fill; - buttonStandard.FlatAppearance.BorderSize = 0; - buttonStandard.FlatStyle = FlatStyle.Flat; - buttonStandard.ForeColor = SystemColors.ControlText; - buttonStandard.Location = new Point(236, 12); - buttonStandard.Margin = new Padding(8, 12, 8, 12); - buttonStandard.Name = "buttonStandard"; - buttonStandard.Size = new Size(212, 84); - buttonStandard.TabIndex = 1; - buttonStandard.Text = "Standard"; - buttonStandard.UseVisualStyleBackColor = false; - // // buttonEco // buttonEco.Activated = false; buttonEco.BackColor = SystemColors.ControlLightLight; buttonEco.BorderColor = Color.Transparent; buttonEco.CausesValidation = false; - buttonEco.Dock = DockStyle.Fill; + buttonEco.Dock = DockStyle.Top; buttonEco.FlatAppearance.BorderSize = 0; buttonEco.FlatStyle = FlatStyle.Flat; buttonEco.ForeColor = SystemColors.ControlText; - buttonEco.Location = new Point(8, 12); - buttonEco.Margin = new Padding(8, 12, 8, 12); + buttonEco.Image = Properties.Resources.icons8_leaf_48; + buttonEco.ImageAlign = ContentAlignment.BottomCenter; + buttonEco.Location = new Point(4, 4); + buttonEco.Margin = new Padding(4); buttonEco.Name = "buttonEco"; - buttonEco.Size = new Size(212, 84); + buttonEco.Size = new Size(187, 120); buttonEco.TabIndex = 0; buttonEco.Text = "Eco"; + buttonEco.TextImageRelation = TextImageRelation.ImageAboveText; buttonEco.UseVisualStyleBackColor = false; // + // buttonStandard + // + buttonStandard.Activated = false; + buttonStandard.BackColor = SystemColors.ControlLightLight; + buttonStandard.BorderColor = Color.Transparent; + buttonStandard.Dock = DockStyle.Top; + buttonStandard.FlatAppearance.BorderSize = 0; + buttonStandard.FlatStyle = FlatStyle.Flat; + buttonStandard.ForeColor = SystemColors.ControlText; + buttonStandard.Image = Properties.Resources.icons8_spa_flower_48; + buttonStandard.ImageAlign = ContentAlignment.BottomCenter; + buttonStandard.Location = new Point(199, 4); + buttonStandard.Margin = new Padding(4); + buttonStandard.Name = "buttonStandard"; + buttonStandard.Size = new Size(187, 120); + buttonStandard.TabIndex = 1; + buttonStandard.Text = "Standard"; + buttonStandard.TextImageRelation = TextImageRelation.ImageAboveText; + buttonStandard.UseVisualStyleBackColor = false; + // + // buttonOptimized + // + buttonOptimized.Activated = false; + buttonOptimized.BackColor = SystemColors.ControlLightLight; + buttonOptimized.BorderColor = Color.Transparent; + buttonOptimized.Dock = DockStyle.Top; + buttonOptimized.FlatAppearance.BorderSize = 0; + buttonOptimized.FlatStyle = FlatStyle.Flat; + buttonOptimized.ForeColor = SystemColors.ControlText; + buttonOptimized.Image = Properties.Resources.icons8_project_management_48__1_; + buttonOptimized.ImageAlign = ContentAlignment.BottomCenter; + buttonOptimized.Location = new Point(589, 4); + buttonOptimized.Margin = new Padding(4); + buttonOptimized.Name = "buttonOptimized"; + buttonOptimized.Size = new Size(187, 120); + buttonOptimized.TabIndex = 3; + buttonOptimized.Text = "Optimized"; + buttonOptimized.TextImageRelation = TextImageRelation.ImageAboveText; + buttonOptimized.UseVisualStyleBackColor = false; + // + // buttonUltimate + // + buttonUltimate.Activated = false; + buttonUltimate.BackColor = SystemColors.ControlLightLight; + buttonUltimate.BorderColor = Color.Transparent; + buttonUltimate.Dock = DockStyle.Top; + buttonUltimate.FlatAppearance.BorderSize = 0; + buttonUltimate.FlatStyle = FlatStyle.Flat; + buttonUltimate.ForeColor = SystemColors.ControlText; + buttonUltimate.Image = Properties.Resources.icons8_game_controller_48; + buttonUltimate.ImageAlign = ContentAlignment.BottomCenter; + buttonUltimate.Location = new Point(394, 4); + buttonUltimate.Margin = new Padding(4); + buttonUltimate.Name = "buttonUltimate"; + buttonUltimate.Size = new Size(187, 120); + buttonUltimate.TabIndex = 2; + buttonUltimate.Text = "Ultimate"; + buttonUltimate.TextImageRelation = TextImageRelation.ImageAboveText; + buttonUltimate.UseVisualStyleBackColor = false; + // // panelScreen // - panelScreen.Controls.Add(checkScreen); + panelScreen.AutoSize = true; + panelScreen.AutoSizeMode = AutoSizeMode.GrowAndShrink; + panelScreen.Controls.Add(labelTipScreen); panelScreen.Controls.Add(tableScreen); panelScreen.Controls.Add(pictureScreen); panelScreen.Controls.Add(labelSreen); panelScreen.Dock = DockStyle.Top; - panelScreen.Location = new Point(16, 452); - panelScreen.Margin = new Padding(4); + panelScreen.Location = new Point(10, 447); + panelScreen.Margin = new Padding(8); panelScreen.Name = "panelScreen"; - panelScreen.Size = new Size(722, 200); + panelScreen.Padding = new Padding(0, 0, 0, 10); + panelScreen.Size = new Size(816, 181); panelScreen.TabIndex = 38; // - // checkScreen + // labelTipScreen // - checkScreen.AutoSize = true; - checkScreen.ForeColor = SystemColors.GrayText; - checkScreen.Location = new Point(27, 154); - checkScreen.Margin = new Padding(4, 2, 4, 2); - checkScreen.Name = "checkScreen"; - checkScreen.Size = new Size(527, 36); - checkScreen.TabIndex = 24; - checkScreen.Text = "Set 60Hz on battery, and back when plugged"; - checkScreen.UseVisualStyleBackColor = true; + labelTipScreen.ForeColor = SystemColors.GrayText; + labelTipScreen.Location = new Point(20, 135); + labelTipScreen.Margin = new Padding(4, 0, 4, 0); + labelTipScreen.Name = "labelTipScreen"; + labelTipScreen.Size = new Size(724, 36); + labelTipScreen.TabIndex = 24; // // tableScreen // tableScreen.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; tableScreen.AutoSize = true; tableScreen.AutoSizeMode = AutoSizeMode.GrowAndShrink; - tableScreen.ColumnCount = 3; - tableScreen.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33.33333F)); - tableScreen.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33.33333F)); - tableScreen.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33.33333F)); - tableScreen.Controls.Add(button120Hz, 1, 0); - tableScreen.Controls.Add(button60Hz, 0, 0); - tableScreen.Location = new Point(15, 48); - tableScreen.Margin = new Padding(4, 2, 4, 2); + tableScreen.ColumnCount = 4; + tableScreen.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); + tableScreen.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); + tableScreen.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); + tableScreen.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); + tableScreen.Controls.Add(buttonScreenAuto, 0, 0); + tableScreen.Controls.Add(button60Hz, 1, 0); + tableScreen.Controls.Add(button120Hz, 2, 0); + tableScreen.Location = new Point(16, 51); + tableScreen.Margin = new Padding(8, 4, 8, 4); tableScreen.Name = "tableScreen"; tableScreen.RowCount = 1; - tableScreen.RowStyles.Add(new RowStyle(SizeType.Absolute, 108F)); - tableScreen.Size = new Size(684, 108); + tableScreen.RowStyles.Add(new RowStyle(SizeType.Absolute, 80F)); + tableScreen.Size = new Size(780, 80); tableScreen.TabIndex = 23; // - // button120Hz + // buttonScreenAuto // - button120Hz.Activated = false; - button120Hz.BackColor = SystemColors.ControlLightLight; - button120Hz.BorderColor = Color.Transparent; - button120Hz.Dock = DockStyle.Fill; - button120Hz.FlatAppearance.BorderSize = 0; - button120Hz.FlatStyle = FlatStyle.Flat; - button120Hz.ForeColor = SystemColors.ControlText; - button120Hz.Location = new Point(236, 12); - button120Hz.Margin = new Padding(8, 12, 8, 12); - button120Hz.Name = "button120Hz"; - button120Hz.Size = new Size(212, 84); - button120Hz.TabIndex = 1; - button120Hz.Text = "120Hz + OD"; - button120Hz.UseVisualStyleBackColor = false; + buttonScreenAuto.Activated = false; + buttonScreenAuto.BackColor = SystemColors.ControlLightLight; + buttonScreenAuto.BorderColor = Color.Transparent; + buttonScreenAuto.Dock = DockStyle.Fill; + buttonScreenAuto.FlatAppearance.BorderSize = 0; + buttonScreenAuto.FlatStyle = FlatStyle.Flat; + buttonScreenAuto.ForeColor = SystemColors.ControlText; + buttonScreenAuto.Location = new Point(4, 4); + buttonScreenAuto.Margin = new Padding(4); + buttonScreenAuto.Name = "buttonScreenAuto"; + buttonScreenAuto.Size = new Size(187, 72); + buttonScreenAuto.TabIndex = 0; + buttonScreenAuto.Text = "Auto"; + buttonScreenAuto.UseVisualStyleBackColor = false; // // button60Hz // @@ -659,22 +721,39 @@ namespace GHelper button60Hz.FlatAppearance.BorderSize = 0; button60Hz.FlatStyle = FlatStyle.Flat; button60Hz.ForeColor = SystemColors.ControlText; - button60Hz.Location = new Point(8, 12); - button60Hz.Margin = new Padding(8, 12, 8, 12); + button60Hz.Location = new Point(199, 4); + button60Hz.Margin = new Padding(4); button60Hz.Name = "button60Hz"; - button60Hz.Size = new Size(212, 84); - button60Hz.TabIndex = 0; + button60Hz.Size = new Size(187, 72); + button60Hz.TabIndex = 1; button60Hz.Text = "60Hz"; button60Hz.UseVisualStyleBackColor = false; // + // button120Hz + // + button120Hz.Activated = false; + button120Hz.BackColor = SystemColors.ControlLightLight; + button120Hz.BorderColor = Color.Transparent; + button120Hz.Dock = DockStyle.Fill; + button120Hz.FlatAppearance.BorderSize = 0; + button120Hz.FlatStyle = FlatStyle.Flat; + button120Hz.ForeColor = SystemColors.ControlText; + button120Hz.Location = new Point(394, 4); + button120Hz.Margin = new Padding(4); + button120Hz.Name = "button120Hz"; + button120Hz.Size = new Size(187, 72); + button120Hz.TabIndex = 2; + button120Hz.Text = "120Hz + OD"; + button120Hz.UseVisualStyleBackColor = false; + // // pictureScreen // pictureScreen.BackgroundImage = (Image)resources.GetObject("pictureScreen.BackgroundImage"); pictureScreen.BackgroundImageLayout = ImageLayout.Zoom; - pictureScreen.Location = new Point(25, 8); - pictureScreen.Margin = new Padding(4, 2, 4, 2); + pictureScreen.Location = new Point(24, 11); + pictureScreen.Margin = new Padding(4); pictureScreen.Name = "pictureScreen"; - pictureScreen.Size = new Size(36, 38); + pictureScreen.Size = new Size(32, 32); pictureScreen.TabIndex = 22; pictureScreen.TabStop = false; // @@ -682,8 +761,8 @@ namespace GHelper // labelSreen.AutoSize = true; labelSreen.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point); - labelSreen.Location = new Point(68, 10); - labelSreen.Margin = new Padding(4, 0, 4, 0); + labelSreen.Location = new Point(60, 9); + labelSreen.Margin = new Padding(8, 0, 8, 0); labelSreen.Name = "labelSreen"; labelSreen.Size = new Size(176, 32); labelSreen.TabIndex = 21; @@ -691,32 +770,38 @@ namespace GHelper // // panelKeyboard // + panelKeyboard.AutoSize = true; + panelKeyboard.AutoSizeMode = AutoSizeMode.GrowAndShrink; panelKeyboard.Controls.Add(tableLayoutKeyboard); panelKeyboard.Controls.Add(pictureKeyboard); - panelKeyboard.Controls.Add(label1); + panelKeyboard.Controls.Add(labelKeyboard); panelKeyboard.Dock = DockStyle.Top; - panelKeyboard.Location = new Point(16, 652); - panelKeyboard.Margin = new Padding(4); + panelKeyboard.Location = new Point(10, 628); + panelKeyboard.Margin = new Padding(8); panelKeyboard.Name = "panelKeyboard"; - panelKeyboard.Size = new Size(722, 154); + panelKeyboard.Padding = new Padding(0, 0, 0, 12); + panelKeyboard.Size = new Size(816, 130); panelKeyboard.TabIndex = 39; // // tableLayoutKeyboard // tableLayoutKeyboard.Anchor = AnchorStyles.Top | AnchorStyles.Left | AnchorStyles.Right; - tableLayoutKeyboard.ColumnCount = 3; - tableLayoutKeyboard.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33.33333F)); - tableLayoutKeyboard.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33.3333321F)); - tableLayoutKeyboard.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 33.3333321F)); + tableLayoutKeyboard.AutoSize = true; + tableLayoutKeyboard.AutoSizeMode = AutoSizeMode.GrowAndShrink; + tableLayoutKeyboard.ColumnCount = 4; + tableLayoutKeyboard.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); + tableLayoutKeyboard.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); + tableLayoutKeyboard.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); + tableLayoutKeyboard.ColumnStyles.Add(new ColumnStyle(SizeType.Percent, 25F)); tableLayoutKeyboard.Controls.Add(buttonKeyboard, 2, 0); tableLayoutKeyboard.Controls.Add(comboKeyboard, 0, 0); tableLayoutKeyboard.Controls.Add(panelColor, 1, 0); - tableLayoutKeyboard.Location = new Point(15, 56); - tableLayoutKeyboard.Margin = new Padding(4); + tableLayoutKeyboard.Location = new Point(16, 50); + tableLayoutKeyboard.Margin = new Padding(8); tableLayoutKeyboard.Name = "tableLayoutKeyboard"; tableLayoutKeyboard.RowCount = 1; tableLayoutKeyboard.RowStyles.Add(new RowStyle(SizeType.Percent, 100F)); - tableLayoutKeyboard.Size = new Size(684, 66); + tableLayoutKeyboard.Size = new Size(780, 60); tableLayoutKeyboard.TabIndex = 39; // // buttonKeyboard @@ -724,45 +809,46 @@ namespace GHelper buttonKeyboard.BackColor = SystemColors.ButtonFace; buttonKeyboard.Dock = DockStyle.Top; buttonKeyboard.FlatAppearance.BorderSize = 0; - buttonKeyboard.Location = new Point(466, 10); - buttonKeyboard.Margin = new Padding(10); + buttonKeyboard.Location = new Point(394, 8); + buttonKeyboard.Margin = new Padding(4, 8, 4, 8); buttonKeyboard.Name = "buttonKeyboard"; - buttonKeyboard.Size = new Size(208, 42); + buttonKeyboard.Size = new Size(187, 44); buttonKeyboard.TabIndex = 37; buttonKeyboard.Text = "Extra"; buttonKeyboard.UseVisualStyleBackColor = false; // // comboKeyboard // - comboKeyboard.Dock = DockStyle.Fill; + comboKeyboard.Dock = DockStyle.Top; comboKeyboard.Font = new Font("Segoe UI", 9F, FontStyle.Regular, GraphicsUnit.Point); comboKeyboard.FormattingEnabled = true; comboKeyboard.ItemHeight = 32; comboKeyboard.Items.AddRange(new object[] { "Static", "Breathe", "Strobe", "Rainbow", "Dingding" }); - comboKeyboard.Location = new Point(10, 10); - comboKeyboard.Margin = new Padding(10); + comboKeyboard.Location = new Point(4, 10); + comboKeyboard.Margin = new Padding(4, 10, 4, 8); comboKeyboard.Name = "comboKeyboard"; - comboKeyboard.Size = new Size(208, 40); + comboKeyboard.Size = new Size(187, 40); comboKeyboard.TabIndex = 35; comboKeyboard.TabStop = false; // // panelColor // + panelColor.AutoSize = true; panelColor.Controls.Add(pictureColor2); panelColor.Controls.Add(pictureColor); panelColor.Controls.Add(buttonKeyboardColor); panelColor.Dock = DockStyle.Fill; - panelColor.Location = new Point(238, 10); - panelColor.Margin = new Padding(10); + panelColor.Location = new Point(199, 8); + panelColor.Margin = new Padding(4, 8, 4, 8); panelColor.Name = "panelColor"; - panelColor.Size = new Size(208, 46); + panelColor.Size = new Size(187, 44); panelColor.TabIndex = 36; // // pictureColor2 // pictureColor2.Anchor = AnchorStyles.Top | AnchorStyles.Right; - pictureColor2.Location = new Point(148, 12); - pictureColor2.Margin = new Padding(4); + pictureColor2.Location = new Point(125, 12); + pictureColor2.Margin = new Padding(8); pictureColor2.Name = "pictureColor2"; pictureColor2.Size = new Size(20, 20); pictureColor2.TabIndex = 41; @@ -771,8 +857,8 @@ namespace GHelper // pictureColor // pictureColor.Anchor = AnchorStyles.Top | AnchorStyles.Right; - pictureColor.Location = new Point(176, 12); - pictureColor.Margin = new Padding(4); + pictureColor.Location = new Point(153, 12); + pictureColor.Margin = new Padding(8); pictureColor.Name = "pictureColor"; pictureColor.Size = new Size(20, 20); pictureColor.TabIndex = 40; @@ -786,9 +872,9 @@ namespace GHelper buttonKeyboardColor.FlatAppearance.BorderSize = 2; buttonKeyboardColor.ForeColor = SystemColors.ControlText; buttonKeyboardColor.Location = new Point(0, 0); - buttonKeyboardColor.Margin = new Padding(0); + buttonKeyboardColor.Margin = new Padding(4, 8, 4, 8); buttonKeyboardColor.Name = "buttonKeyboardColor"; - buttonKeyboardColor.Size = new Size(208, 42); + buttonKeyboardColor.Size = new Size(187, 44); buttonKeyboardColor.TabIndex = 39; buttonKeyboardColor.Text = "Color "; buttonKeyboardColor.UseVisualStyleBackColor = false; @@ -797,23 +883,23 @@ namespace GHelper // pictureKeyboard.BackgroundImage = Properties.Resources.icons8_keyboard_48; pictureKeyboard.BackgroundImageLayout = ImageLayout.Zoom; - pictureKeyboard.Location = new Point(27, 16); - pictureKeyboard.Margin = new Padding(4, 2, 4, 2); + pictureKeyboard.Location = new Point(24, 14); + pictureKeyboard.Margin = new Padding(4); pictureKeyboard.Name = "pictureKeyboard"; - pictureKeyboard.Size = new Size(32, 36); + pictureKeyboard.Size = new Size(32, 32); pictureKeyboard.TabIndex = 33; pictureKeyboard.TabStop = false; // - // label1 + // labelKeyboard // - label1.AutoSize = true; - label1.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point); - label1.Location = new Point(68, 16); - label1.Margin = new Padding(4, 0, 4, 0); - label1.Name = "label1"; - label1.Size = new Size(210, 32); - label1.TabIndex = 32; - label1.Text = "Laptop Keyboard"; + labelKeyboard.AutoSize = true; + labelKeyboard.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point); + labelKeyboard.Location = new Point(60, 13); + labelKeyboard.Margin = new Padding(8, 0, 8, 0); + labelKeyboard.Name = "labelKeyboard"; + labelKeyboard.Size = new Size(210, 32); + labelKeyboard.TabIndex = 32; + labelKeyboard.Text = "Laptop Keyboard"; // // SettingsForm // @@ -821,7 +907,7 @@ namespace GHelper AutoScaleMode = AutoScaleMode.Dpi; AutoSize = true; AutoSizeMode = AutoSizeMode.GrowAndShrink; - ClientSize = new Size(754, 1217); + ClientSize = new Size(830, 1173); Controls.Add(panelFooter); Controls.Add(panelBattery); Controls.Add(panelMatrix); @@ -829,13 +915,13 @@ namespace GHelper Controls.Add(panelScreen); Controls.Add(panelGPU); Controls.Add(panelPerformance); - Margin = new Padding(4, 2, 4, 2); + Margin = new Padding(8, 4, 8, 4); MaximizeBox = false; MdiChildrenMinimizedAnchorBottom = false; MinimizeBox = false; - MinimumSize = new Size(780, 0); + MinimumSize = new Size(830, 71); Name = "SettingsForm"; - Padding = new Padding(16); + Padding = new Padding(10); ShowIcon = false; StartPosition = FormStartPosition.CenterScreen; Text = "G-Helper"; @@ -865,11 +951,13 @@ namespace GHelper panelKeyboard.ResumeLayout(false); panelKeyboard.PerformLayout(); tableLayoutKeyboard.ResumeLayout(false); + tableLayoutKeyboard.PerformLayout(); panelColor.ResumeLayout(false); ((System.ComponentModel.ISupportInitialize)pictureColor2).EndInit(); ((System.ComponentModel.ISupportInitialize)pictureColor).EndInit(); ((System.ComponentModel.ISupportInitialize)pictureKeyboard).EndInit(); ResumeLayout(false); + PerformLayout(); } #endregion @@ -886,7 +974,6 @@ namespace GHelper private Button buttonQuit; private CheckBox checkStartup; private Panel panelPerformance; - private Button buttonFans; private PictureBox picturePerf; private Label labelPerf; private Label labelCPUFan; @@ -895,7 +982,6 @@ namespace GHelper private RoundedButton buttonBalanced; private RoundedButton buttonSilent; private Panel panelGPU; - private CheckBox checkGPU; private PictureBox pictureGPU; private Label labelGPU; private Label labelGPUFan; @@ -904,15 +990,14 @@ namespace GHelper private RoundedButton buttonStandard; private RoundedButton buttonEco; private Panel panelScreen; - private CheckBox checkScreen; private TableLayoutPanel tableScreen; - private RoundedButton button120Hz; + private RoundedButton buttonScreenAuto; private RoundedButton button60Hz; private PictureBox pictureScreen; private Label labelSreen; private Panel panelKeyboard; private PictureBox pictureKeyboard; - private Label label1; + private Label labelKeyboard; private TableLayoutPanel tableLayoutMatrix; private Button buttonMatrix; private ComboBox comboMatrixRunning; @@ -925,5 +1010,10 @@ namespace GHelper private PictureBox pictureColor; private Button buttonKeyboardColor; private CheckBox checkMatrix; + private RoundedButton button120Hz; + private Button buttonFans; + private RoundedButton buttonOptimized; + private Label labelTipGPU; + private Label labelTipScreen; } } \ No newline at end of file diff --git a/app/Settings.cs b/app/Settings.cs index 4f9ddafd..bfba92bb 100644 --- a/app/Settings.cs +++ b/app/Settings.cs @@ -3,7 +3,6 @@ using System.Diagnostics; using System.Drawing.Imaging; using System.Timers; - namespace GHelper { @@ -28,9 +27,10 @@ namespace GHelper public SettingsForm() { - InitializeComponent(); + HighDpiHelper.AdjustControlImagesDpiScale(this, 2); + FormClosing += SettingsForm_FormClosing; buttonSilent.BorderColor = colorEco; @@ -40,10 +40,13 @@ namespace GHelper buttonEco.BorderColor = colorEco; buttonStandard.BorderColor = colorStandard; buttonUltimate.BorderColor = colorTurbo; + buttonOptimized.BorderColor = colorEco; button60Hz.BorderColor = SystemColors.ActiveBorder; button120Hz.BorderColor = SystemColors.ActiveBorder; + buttonScreenAuto.BorderColor = SystemColors.ActiveBorder; + buttonOptimized.Click += ButtonOptimized_Click; buttonSilent.Click += ButtonSilent_Click; buttonBalanced.Click += ButtonBalanced_Click; buttonTurbo.Click += ButtonTurbo_Click; @@ -58,13 +61,10 @@ namespace GHelper button60Hz.Click += Button60Hz_Click; button120Hz.Click += Button120Hz_Click; + buttonScreenAuto.Click += ButtonScreenAuto_Click; buttonQuit.Click += ButtonQuit_Click; - checkGPU.CheckedChanged += CheckGPU_CheckedChanged; - - checkScreen.CheckedChanged += checkScreen_CheckedChanged; - comboKeyboard.DropDownStyle = ComboBoxStyle.DropDownList; comboKeyboard.SelectedIndex = 0; comboKeyboard.SelectedValueChanged += ComboKeyboard_SelectedValueChanged; @@ -94,10 +94,92 @@ namespace GHelper labelVersion.Click += LabelVersion_Click; + buttonOptimized.MouseMove += ButtonOptimized_MouseHover; + buttonOptimized.MouseLeave += ButtonGPU_MouseLeave; + + buttonEco.MouseMove += ButtonEco_MouseHover; + buttonEco.MouseLeave += ButtonGPU_MouseLeave; + + buttonStandard.MouseMove += ButtonStandard_MouseHover; + buttonStandard.MouseLeave += ButtonGPU_MouseLeave; + + buttonUltimate.MouseMove += ButtonUltimate_MouseHover; + buttonUltimate.MouseLeave += ButtonGPU_MouseLeave; + + buttonScreenAuto.MouseMove += ButtonScreenAuto_MouseHover; + buttonScreenAuto.MouseLeave += ButtonScreen_MouseLeave; + + button60Hz.MouseMove += Button60Hz_MouseHover; + button60Hz.MouseLeave += ButtonScreen_MouseLeave; + + button120Hz.MouseMove += Button120Hz_MouseHover; + button120Hz.MouseLeave += ButtonScreen_MouseLeave; + + //buttonStandard.Image = (Image)(new Bitmap(buttonStandard.Image, new Size(16, 16))); + SetTimer(); } + private void Button120Hz_MouseHover(object? sender, EventArgs e) + { + labelTipScreen.Text = "Max refresh rate + screen overdrive for lower latency"; + } + + private void Button60Hz_MouseHover(object? sender, EventArgs e) + { + labelTipScreen.Text = "60Hz refresh rate to save battery"; + } + + private void ButtonScreen_MouseLeave(object? sender, EventArgs e) + { + labelTipScreen.Text = ""; + } + + private void ButtonScreenAuto_MouseHover(object? sender, EventArgs e) + { + labelTipScreen.Text = "Sets 60Hz to save battery, and back when plugged"; + } + + private void ButtonUltimate_MouseHover(object? sender, EventArgs e) + { + labelTipGPU.Text = "Routes laptop screen to dGPU, maximizing FPS"; + } + + private void ButtonStandard_MouseHover(object? sender, EventArgs e) + { + labelTipGPU.Text = "Enables dGPU for standard use"; + } + + private void ButtonEco_MouseHover(object? sender, EventArgs e) + { + labelTipGPU.Text = "Disables dGPU for battery savings"; + } + + private void ButtonOptimized_MouseHover(object? sender, EventArgs e) + { + labelTipGPU.Text = "Switch to Eco on battery and to Standard when plugged"; + } + + private void ButtonGPU_MouseLeave(object? sender, EventArgs e) + { + labelTipGPU.Text = ""; + } + + + private void ButtonOptimized_Click(object? sender, EventArgs e) + { + Program.config.setConfig("gpu_auto", (Program.config.getConfig("gpu_auto") == 1) ? 0 : 1); + VisualiseGPUMode(); + AutoGPUMode(SystemInformation.PowerStatus.PowerLineStatus); + } + + private void ButtonScreenAuto_Click(object? sender, EventArgs e) + { + Program.config.setConfig("screen_auto", 1); + InitScreen(); + AutoScreen(SystemInformation.PowerStatus.PowerLineStatus); + } protected override void WndProc(ref Message m) { @@ -130,12 +212,6 @@ namespace GHelper base.WndProc(ref m); } - private void CheckGPU_CheckedChanged(object? sender, EventArgs e) - { - if (sender is null) return; - CheckBox check = (CheckBox)sender; - Program.config.setConfig("gpu_auto", check.Checked ? 1 : 0); - } public void SetVersionLabel(string label, string url = null) { @@ -528,11 +604,13 @@ namespace GHelper private void Button120Hz_Click(object? sender, EventArgs e) { + Program.config.setConfig("screen_auto", 0); SetScreen(1000, 1); } private void Button60Hz_Click(object? sender, EventArgs e) { + Program.config.setConfig("screen_auto", 0); SetScreen(60, 0); } @@ -558,10 +636,11 @@ namespace GHelper if (frequency <= 0) return; NativeMethods.SetRefreshRate(frequency); - if (overdrive > 0) + if (overdrive >= 0) Program.wmi.DeviceSet(ASUSWmi.ScreenOverdrive, overdrive); InitScreen(); + Logger.WriteLine("Screen " + frequency.ToString() + "Hz"); } @@ -572,22 +651,7 @@ namespace GHelper int frequency = NativeMethods.GetRefreshRate(); int maxFrequency = Program.config.getConfig("max_frequency"); - if (frequency < 0) - { - button60Hz.Enabled = false; - button120Hz.Enabled = false; - labelSreen.Text = "Laptop Screen: Turned off"; - button60Hz.BackColor = SystemColors.ControlLight; - button120Hz.BackColor = SystemColors.ControlLight; - } - else - { - button60Hz.Enabled = true; - button120Hz.Enabled = true; - button60Hz.BackColor = SystemColors.ControlLightLight; - button120Hz.BackColor = SystemColors.ControlLightLight; - labelSreen.Text = "Laptop Screen"; - } + bool screenAuto = (Program.config.getConfig("screen_auto") == 1); int overdrive = 0; try @@ -599,10 +663,37 @@ namespace GHelper Logger.WriteLine("Screen Overdrive not supported"); } + if (frequency < 0) + { + button60Hz.Enabled = false; + button120Hz.Enabled = false; + buttonScreenAuto.Enabled = false; + labelSreen.Text = "Laptop Screen: Turned off"; + button60Hz.BackColor = SystemColors.ControlLight; + button120Hz.BackColor = SystemColors.ControlLight; + buttonScreenAuto.BackColor = SystemColors.ControlLight; + } + else + { + button60Hz.Enabled = true; + button120Hz.Enabled = true; + buttonScreenAuto.Enabled = true; + button60Hz.BackColor = SystemColors.ControlLightLight; + button120Hz.BackColor = SystemColors.ControlLightLight; + buttonScreenAuto.BackColor = SystemColors.ControlLightLight; + labelSreen.Text = "Laptop Screen: " + frequency + "Hz" + ((overdrive == 1) ? " + Overdrive" : ""); + } + + button60Hz.Activated = false; button120Hz.Activated = false; + buttonScreenAuto.Activated = false; - if (frequency == 60) + if (screenAuto) + { + buttonScreenAuto.Activated = true; + } + else if (frequency == 60) { button60Hz.Activated = true; } @@ -857,8 +948,7 @@ namespace GHelper public void AutoScreen(PowerLineStatus Plugged = PowerLineStatus.Online) { - int ScreenAuto = Program.config.getConfig("screen_auto"); - if (ScreenAuto != 1) return; + if (Program.config.getConfig("screen_auto") != 1) return; if (Plugged == PowerLineStatus.Online) SetScreen(1000, 1); @@ -871,8 +961,8 @@ namespace GHelper public bool AutoGPUMode(PowerLineStatus Plugged = PowerLineStatus.Online) { - int GpuAuto = Program.config.getConfig("gpu_auto"); - if (GpuAuto != 1) return false; + bool GpuAuto = Program.config.getConfig("gpu_auto") == 1; + if (!GpuAuto) return false; int eco = Program.wmi.DeviceGet(ASUSWmi.GPUEco); int mux = Program.wmi.DeviceGet(ASUSWmi.GPUMux); @@ -897,6 +987,29 @@ namespace GHelper } + private void UltimateUI(bool ultimate) + { + if (!ultimate) + { + tableGPU.Controls.Remove(buttonUltimate); + + /* + * buttonFans.Image = null; + buttonFans.Height = 44; + */ + + tablePerf.ColumnCount = 0; + tableGPU.ColumnCount = 0; + + } + + tableLayoutKeyboard.ColumnCount = 0; + tableScreen.ColumnCount = 0; + tableLayoutMatrix.ColumnCount = 0; + + + } + public int InitGPUMode() { @@ -914,9 +1027,11 @@ namespace GHelper else GpuMode = ASUSWmi.GPUModeStandard; - buttonUltimate.Visible = (mux == 1); + UltimateUI(mux == 1); + } + ButtonEnabled(buttonOptimized, true); ButtonEnabled(buttonEco, true); ButtonEnabled(buttonStandard, true); ButtonEnabled(buttonUltimate, true); @@ -932,6 +1047,7 @@ namespace GHelper public void SetEcoGPU(int eco) { + ButtonEnabled(buttonOptimized, false); ButtonEnabled(buttonEco, false); ButtonEnabled(buttonStandard, false); ButtonEnabled(buttonUltimate, false); @@ -968,9 +1084,13 @@ namespace GHelper { int CurrentGPU = Program.config.getConfig("gpu_mode"); + Program.config.setConfig("gpu_auto", 0); if (CurrentGPU == GPUMode) + { + VisualiseGPUMode(); return; + } var restart = false; var changed = false; @@ -987,7 +1107,7 @@ namespace GHelper } else if (GPUMode == ASUSWmi.GPUModeUltimate) { - DialogResult dialogResult = MessageBox.Show(" Ultimate Mode requires restart", "Reboot now?", MessageBoxButtons.YesNo); + DialogResult dialogResult = MessageBox.Show("Ultimate Mode requires restart", "Reboot now?", MessageBoxButtons.YesNo); if (dialogResult == DialogResult.Yes) { Program.wmi.DeviceSet(ASUSWmi.GPUMux, 0); @@ -1012,60 +1132,55 @@ namespace GHelper if (changed) { Program.config.setConfig("gpu_mode", GPUMode); - HardwareMonitor.RecreateGpuTemperatureProviderWithRetry(); } if (restart) { - VisualiseGPUMode(GPUMode); + VisualiseGPUMode(); Process.Start("shutdown", "/r /t 1"); } } - public void VisualiseGPUAuto(int GPUAuto) - { - checkGPU.Checked = (GPUAuto == 1); - } - - public void VisualiseScreenAuto(int ScreenAuto) - { - checkScreen.Checked = (ScreenAuto == 1); - } - public void VisualiseGPUMode(int GPUMode = -1) { if (GPUMode == -1) - { GPUMode = Program.config.getConfig("gpu_mode"); - } + + bool GPUAuto = (Program.config.getConfig("gpu_auto") == 1); buttonEco.Activated = false; buttonStandard.Activated = false; buttonUltimate.Activated = false; + buttonOptimized.Activated = false; switch (GPUMode) { case ASUSWmi.GPUModeEco: - buttonEco.Activated = true; + buttonOptimized.BorderColor = colorEco; + buttonEco.Activated = !GPUAuto; + buttonOptimized.Activated = GPUAuto; labelGPU.Text = "GPU Mode: iGPU only"; - Program.trayIcon.Icon = GHelper.Properties.Resources.eco; + Program.trayIcon.Icon = Properties.Resources.eco; break; case ASUSWmi.GPUModeUltimate: buttonUltimate.Activated = true; labelGPU.Text = "GPU Mode: dGPU exclusive"; - Program.trayIcon.Icon = GHelper.Properties.Resources.ultimate; + Program.trayIcon.Icon = Properties.Resources.ultimate; break; default: - buttonStandard.Activated = true; + buttonOptimized.BorderColor = colorStandard; + buttonStandard.Activated = !GPUAuto; + buttonOptimized.Activated = GPUAuto; labelGPU.Text = "GPU Mode: iGPU + dGPU"; - Program.trayIcon.Icon = GHelper.Properties.Resources.standard; + Program.trayIcon.Icon = Properties.Resources.standard; break; } + } @@ -1123,14 +1238,6 @@ namespace GHelper } - private void checkScreen_CheckedChanged(object? sender, EventArgs e) - { - if (sender is null) return; - CheckBox check = (CheckBox)sender; - Program.config.setConfig("screen_auto", check.Checked ? 1 : 0); - } - - } diff --git a/app/app.manifest b/app/app.manifest index 52900f78..e16db2fe 100644 --- a/app/app.manifest +++ b/app/app.manifest @@ -54,8 +54,8 @@ - true System + true