Compare commits

...

14 Commits

Author SHA1 Message Date
Serge
8e9fea3a69 Charge limit cleanup 2024-06-09 12:12:54 +02:00
Serge
89951e1464 Merge branch 'main' of https://github.com/seerge/g-helper 2024-06-09 12:11:12 +02:00
Serge
c7d6e9ee70 Postpone gamut UI tweak 2024-06-09 12:11:08 +02:00
Serge
59f7500a36 New Crowdin updates (#2638)
* New translations strings.resx (Chinese Traditional)

* New translations strings.resx (Chinese Traditional)

* New translations strings.resx (Turkish)

* New translations strings.resx (Chinese Traditional)

* New translations strings.resx (German)

* New translations strings.resx (Danish)

* New translations strings.resx (Romanian)

* New translations strings.resx (French)

* New translations strings.resx (Spanish)

* New translations strings.resx (Hungarian)

* New translations strings.resx (Italian)

* New translations strings.resx (Korean)

* New translations strings.resx (Lithuanian)

* New translations strings.resx (Polish)

* New translations strings.resx (Portuguese)

* New translations strings.resx (Ukrainian)

* New translations strings.resx (Chinese Simplified)

* New translations strings.resx (Vietnamese)

* New translations strings.resx (Portuguese, Brazilian)

* New translations strings.resx (Indonesian)

* New translations strings.resx (Spanish)

* New translations strings.resx (Lithuanian)

* New translations strings.resx (Chinese Traditional)

* New translations strings.resx (Turkish)

* New translations strings.resx (Japanese)

* New translations strings.resx (German)

* New translations strings.resx (Danish)

* New translations strings.resx (Romanian)

* New translations strings.resx (French)

* New translations strings.resx (Hungarian)

* New translations strings.resx (Italian)

* New translations strings.resx (Korean)

* New translations strings.resx (Polish)

* New translations strings.resx (Portuguese)

* New translations strings.resx (Ukrainian)

* New translations strings.resx (Chinese Simplified)

* New translations strings.resx (Vietnamese)

* New translations strings.resx (Portuguese, Brazilian)

* New translations strings.resx (Indonesian)

* New translations strings.resx (Lithuanian)
2024-06-09 11:10:29 +02:00
Serge
7d0bc58abd Update SECURITY.md 2024-06-06 21:13:47 +02:00
Serge
c5550d1fd0 Update README.md 2024-06-06 21:10:29 +02:00
Serge
a7d5b38a1b Update README.zh-CN.md 2024-06-06 19:26:11 +02:00
Serge
07d93955f6 Update README.md 2024-06-06 19:24:14 +02:00
Serge
abc5b25800 Reset Gamut dropdown to default on Dimming change https://github.com/seerge/g-helper/issues/2543 2024-06-06 11:57:15 +02:00
Serge
5da61ded0f Merge branch 'main' of https://github.com/seerge/g-helper 2024-06-06 11:31:32 +02:00
Serge
583d706cd2 Per-key RGB checkbox https://github.com/seerge/g-helper/discussions/2691 2024-06-06 11:31:30 +02:00
Serge
8fe7a535af Update README.zh-CN.md 2024-06-05 09:02:37 +02:00
Serge
6523540834 Cleanup 2024-06-04 23:00:39 +02:00
Serge
211d8d3e61 Cleanup 2024-06-04 22:54:12 +02:00
33 changed files with 915 additions and 156 deletions

4
.github/SECURITY.md vendored
View File

@@ -4,8 +4,8 @@
| Version | Supported |
| ------- | ------------------ |
| 0.151+ | :white_check_mark: |
| < 0.151 | :x: |
| 0.170+ | :white_check_mark: |
| < 0.170 | :x: |
## Reporting a Vulnerability

View File

@@ -435,11 +435,15 @@ public static class AppConfig
return ContainsModel("G512LI") || ContainsModel("G513R") || ContainsModel("G713PV") || ContainsModel("G513IE") || ContainsModel("G713RC") || ContainsModel("G513QM") || ContainsModel("G531G");
}
public static bool Is4ZoneRGB()
public static bool IsPossible4ZoneRGB()
{
return (ContainsModel("G614JI_") || ContainsModel("G614JV_") || ContainsModel("G614JZ") || IsStrixLimitedRGB()) && !Is("per_key_rgb");
return ContainsModel("G614JI_") || ContainsModel("G614JV_") || ContainsModel("G614JZ") || IsStrixLimitedRGB();
}
public static bool Is4ZoneRGB()
{
return IsPossible4ZoneRGB() && !Is("per_key_rgb");
}
public static bool IsNoAirplaneMode()
{
@@ -626,14 +630,9 @@ public static class AppConfig
return IsAlly() || Is("stop_ac");
}
public static bool IsChargeLimit80()
{
return ContainsModel("GA403UI");
}
public static bool IsChargeLimit6080()
{
return ContainsModel("GA403UU") || ContainsModel("GA403UV") || ContainsModel("GU605") || ContainsModel("GA503R") || (IsTUF() && !(ContainsModel("FX507Z") || ContainsModel("FA617")));
return ContainsModel("GA403U") || ContainsModel("GU605") || ContainsModel("GA503R") || (IsTUF() && !(ContainsModel("FX507Z") || ContainsModel("FA617")));
}

View File

@@ -36,11 +36,6 @@ namespace GHelper.Battery
if (limit < 0) limit = AppConfig.Get("charge_limit");
if (limit < 40 || limit > 100) return;
if (AppConfig.IsChargeLimit80())
{
limit = (limit <= 80) ? 80 : 100;
}
if (AppConfig.IsChargeLimit6080())
{
if (limit > 80) limit = 100;

View File

@@ -51,6 +51,8 @@ namespace GHelper.Display
public const int DefaultColorTemp = 50;
public static bool forceVisual = false;
public static bool skipGamut = false;
static VisualControl()
{
brightnessTimer.Elapsed += BrightnessTimerTimer_Elapsed;
@@ -169,6 +171,7 @@ namespace GHelper.Display
public static void SetGamut(int mode = -1)
{
if (skipGamut) return;
if (mode < 0) mode = (int)GetDefaultGamut();
AppConfig.Set("gamut", mode);
@@ -197,8 +200,9 @@ namespace GHelper.Display
if (whiteBalance != DefaultColorTemp && !init) ProcessHelper.RunAsAdmin();
int? balance;
switch (mode) {
switch (mode)
{
case SplendidCommand.Eyecare:
balance = 2;
break;
@@ -296,10 +300,23 @@ namespace GHelper.Display
brightnessTimer.Start();
Program.settingsForm.VisualiseBrightness();
//if (brightness < 100) ResetGamut();
return _brightness;
}
public static void ResetGamut()
{
int defaultGamut = (int)GetDefaultGamut();
if (AppConfig.Get("gamut") != defaultGamut)
{
skipGamut = true;
AppConfig.Set("gamut", defaultGamut);
Program.settingsForm.VisualiseGamut();
skipGamut = false;
}
}
public static void SetGamma(int brightness = 100)

43
app/Extra.Designer.cs generated
View File

@@ -138,6 +138,7 @@ namespace GHelper
buttonACPISend = new RButton();
pictureDebug = new PictureBox();
labelACPITitle = new Label();
checkPerKeyRGB = new CheckBox();
panelServices.SuspendLayout();
((System.ComponentModel.ISupportInitialize)pictureService).BeginInit();
panelBindingsHeader.SuspendLayout();
@@ -176,7 +177,7 @@ namespace GHelper
panelServices.Controls.Add(labelServices);
panelServices.Controls.Add(buttonServices);
panelServices.Dock = DockStyle.Top;
panelServices.Location = new Point(15, 1638);
panelServices.Location = new Point(15, 1680);
panelServices.Name = "panelServices";
panelServices.Size = new Size(949, 75);
panelServices.TabIndex = 5;
@@ -1136,18 +1137,19 @@ namespace GHelper
panelSettings.Controls.Add(checkGpuApps);
panelSettings.Controls.Add(checkGPUFix);
panelSettings.Controls.Add(checkStatusLed);
panelSettings.Controls.Add(checkPerKeyRGB);
panelSettings.Dock = DockStyle.Top;
panelSettings.Location = new Point(15, 1154);
panelSettings.Name = "panelSettings";
panelSettings.Padding = new Padding(20, 5, 11, 5);
panelSettings.Size = new Size(949, 430);
panelSettings.Size = new Size(949, 472);
panelSettings.TabIndex = 3;
//
// checkAutoToggleClamshellMode
//
checkAutoToggleClamshellMode.AutoSize = true;
checkAutoToggleClamshellMode.Dock = DockStyle.Top;
checkAutoToggleClamshellMode.Location = new Point(20, 383);
checkAutoToggleClamshellMode.Location = new Point(20, 425);
checkAutoToggleClamshellMode.Name = "checkAutoToggleClamshellMode";
checkAutoToggleClamshellMode.Padding = new Padding(3);
checkAutoToggleClamshellMode.Size = new Size(918, 42);
@@ -1159,7 +1161,7 @@ namespace GHelper
//
checkBWIcon.AutoSize = true;
checkBWIcon.Dock = DockStyle.Top;
checkBWIcon.Location = new Point(20, 341);
checkBWIcon.Location = new Point(20, 383);
checkBWIcon.Margin = new Padding(4, 3, 4, 3);
checkBWIcon.Name = "checkBWIcon";
checkBWIcon.Padding = new Padding(3);
@@ -1172,7 +1174,7 @@ namespace GHelper
//
checkTopmost.AutoSize = true;
checkTopmost.Dock = DockStyle.Top;
checkTopmost.Location = new Point(20, 299);
checkTopmost.Location = new Point(20, 341);
checkTopmost.Margin = new Padding(4, 3, 4, 3);
checkTopmost.Name = "checkTopmost";
checkTopmost.Padding = new Padding(3);
@@ -1185,7 +1187,7 @@ namespace GHelper
//
checkNoOverdrive.AutoSize = true;
checkNoOverdrive.Dock = DockStyle.Top;
checkNoOverdrive.Location = new Point(20, 257);
checkNoOverdrive.Location = new Point(20, 299);
checkNoOverdrive.Margin = new Padding(4, 3, 4, 3);
checkNoOverdrive.Name = "checkNoOverdrive";
checkNoOverdrive.Padding = new Padding(3);
@@ -1198,7 +1200,7 @@ namespace GHelper
//
checkBootSound.AutoSize = true;
checkBootSound.Dock = DockStyle.Top;
checkBootSound.Location = new Point(20, 215);
checkBootSound.Location = new Point(20, 257);
checkBootSound.Margin = new Padding(4, 3, 4, 3);
checkBootSound.Name = "checkBootSound";
checkBootSound.Padding = new Padding(3);
@@ -1211,7 +1213,7 @@ namespace GHelper
//
checkUSBC.AutoSize = true;
checkUSBC.Dock = DockStyle.Top;
checkUSBC.Location = new Point(20, 173);
checkUSBC.Location = new Point(20, 215);
checkUSBC.Margin = new Padding(4, 3, 4, 3);
checkUSBC.Name = "checkUSBC";
checkUSBC.Padding = new Padding(3);
@@ -1224,7 +1226,7 @@ namespace GHelper
//
checkVariBright.AutoSize = true;
checkVariBright.Dock = DockStyle.Top;
checkVariBright.Location = new Point(20, 131);
checkVariBright.Location = new Point(20, 173);
checkVariBright.Margin = new Padding(4, 3, 4, 3);
checkVariBright.Name = "checkVariBright";
checkVariBright.Padding = new Padding(3);
@@ -1237,7 +1239,7 @@ namespace GHelper
//
checkGpuApps.AutoSize = true;
checkGpuApps.Dock = DockStyle.Top;
checkGpuApps.Location = new Point(20, 89);
checkGpuApps.Location = new Point(20, 131);
checkGpuApps.Margin = new Padding(4, 3, 4, 3);
checkGpuApps.Name = "checkGpuApps";
checkGpuApps.Padding = new Padding(3);
@@ -1250,7 +1252,7 @@ namespace GHelper
//
checkGPUFix.AutoSize = true;
checkGPUFix.Dock = DockStyle.Top;
checkGPUFix.Location = new Point(20, 47);
checkGPUFix.Location = new Point(20, 89);
checkGPUFix.Margin = new Padding(4, 3, 4, 3);
checkGPUFix.Name = "checkGPUFix";
checkGPUFix.Padding = new Padding(3);
@@ -1263,7 +1265,7 @@ namespace GHelper
//
checkStatusLed.AutoSize = true;
checkStatusLed.Dock = DockStyle.Top;
checkStatusLed.Location = new Point(20, 5);
checkStatusLed.Location = new Point(20, 47);
checkStatusLed.Margin = new Padding(4, 3, 4, 3);
checkStatusLed.Name = "checkStatusLed";
checkStatusLed.Padding = new Padding(3);
@@ -1279,7 +1281,7 @@ namespace GHelper
panelPower.Controls.Add(labelHibernateAfter);
panelPower.Controls.Add(pictureHibernate);
panelPower.Dock = DockStyle.Top;
panelPower.Location = new Point(15, 1584);
panelPower.Location = new Point(15, 1626);
panelPower.Name = "panelPower";
panelPower.Size = new Size(949, 54);
panelPower.TabIndex = 4;
@@ -1525,6 +1527,20 @@ namespace GHelper
labelACPITitle.TabIndex = 0;
labelACPITitle.Text = "ACPI DEVS Test";
//
// checkPerKeyRGB
//
checkPerKeyRGB.AutoSize = true;
checkPerKeyRGB.Dock = DockStyle.Top;
checkPerKeyRGB.Location = new Point(20, 5);
checkPerKeyRGB.Margin = new Padding(4, 3, 4, 3);
checkPerKeyRGB.Name = "checkPerKeyRGB";
checkPerKeyRGB.Padding = new Padding(3);
checkPerKeyRGB.Size = new Size(918, 42);
checkPerKeyRGB.TabIndex = 13;
checkPerKeyRGB.Text = "Per-Key RGB Keyboard";
checkPerKeyRGB.UseVisualStyleBackColor = true;
checkPerKeyRGB.Visible = false;
//
// Extra
//
AutoScaleDimensions = new SizeF(192F, 192F);
@@ -1709,5 +1725,6 @@ namespace GHelper
private Label labelACPITitle;
private CheckBox checkBWIcon;
private CheckBox checkStatusLed;
private CheckBox checkPerKeyRGB;
}
}

View File

@@ -423,6 +423,10 @@ namespace GHelper
checkGPUFix.Checked = AppConfig.IsGPUFix();
checkGPUFix.CheckedChanged += CheckGPUFix_CheckedChanged;
checkPerKeyRGB.Visible = AppConfig.IsPossible4ZoneRGB();
checkPerKeyRGB.Checked = AppConfig.Is("per_key_rgb");
checkPerKeyRGB.CheckedChanged += CheckPerKeyRGB_CheckedChanged;
toolTip.SetToolTip(checkAutoToggleClamshellMode, "Disable sleep on lid close when plugged in and external monitor is connected");
InitCores();
@@ -434,6 +438,11 @@ namespace GHelper
}
private void CheckPerKeyRGB_CheckedChanged(object? sender, EventArgs e)
{
AppConfig.Set("per_key_rgb", (checkPerKeyRGB.Checked ? 1 : 0));
}
private void CheckLEDStatus_CheckedChanged(object? sender, EventArgs e)
{
Program.acpi.DeviceSet(AsusACPI.StatusLed, (checkStatusLed.Checked ? 7 : 0), "StatusLED");

76
app/Fans.Designer.cs generated
View File

@@ -82,10 +82,6 @@ namespace GHelper
labelTemp = new Label();
labelLeftTemp = new Label();
trackTemp = new TrackBar();
panelSkin = new Panel();
labelSkin = new Label();
labelSkinTitle = new Label();
trackSkin = new TrackBar();
panelTitleTemp = new Panel();
pictureTemp = new PictureBox();
labelTempLimit = new Label();
@@ -176,8 +172,6 @@ namespace GHelper
((System.ComponentModel.ISupportInitialize)pictureUV).BeginInit();
panelTemperature.SuspendLayout();
((System.ComponentModel.ISupportInitialize)trackTemp).BeginInit();
panelSkin.SuspendLayout();
((System.ComponentModel.ISupportInitialize)trackSkin).BeginInit();
panelTitleTemp.SuspendLayout();
((System.ComponentModel.ISupportInitialize)pictureTemp).BeginInit();
panelDownload.SuspendLayout();
@@ -540,14 +534,13 @@ namespace GHelper
panelAdvanced.Controls.Add(panelUViGPU);
panelAdvanced.Controls.Add(panelUV);
panelAdvanced.Controls.Add(panelTitleAdvanced);
panelAdvanced.Controls.Add(panelSkin);
panelAdvanced.Controls.Add(panelTemperature);
panelAdvanced.Controls.Add(panelTitleTemp);
panelAdvanced.Controls.Add(panelDownload);
panelAdvanced.Dock = DockStyle.Top;
panelAdvanced.Location = new Point(10, 1768);
panelAdvanced.Name = "panelAdvanced";
panelAdvanced.Size = new Size(520, 1116);
panelAdvanced.Size = new Size(520, 992);
panelAdvanced.TabIndex = 14;
panelAdvanced.Visible = false;
//
@@ -556,7 +549,7 @@ namespace GHelper
panelAdvancedAlways.AutoSize = true;
panelAdvancedAlways.Controls.Add(checkApplyUV);
panelAdvancedAlways.Dock = DockStyle.Top;
panelAdvancedAlways.Location = new Point(0, 1055);
panelAdvancedAlways.Location = new Point(0, 931);
panelAdvancedAlways.Name = "panelAdvancedAlways";
panelAdvancedAlways.Padding = new Padding(16, 0, 16, 15);
panelAdvancedAlways.Size = new Size(520, 61);
@@ -582,7 +575,7 @@ namespace GHelper
panelAdvancedApply.AutoSize = true;
panelAdvancedApply.Controls.Add(buttonApplyAdvanced);
panelAdvancedApply.Dock = DockStyle.Top;
panelAdvancedApply.Location = new Point(0, 975);
panelAdvancedApply.Location = new Point(0, 851);
panelAdvancedApply.Name = "panelAdvancedApply";
panelAdvancedApply.Padding = new Padding(15);
panelAdvancedApply.Size = new Size(520, 80);
@@ -611,7 +604,7 @@ namespace GHelper
labelRisky.BackColor = Color.IndianRed;
labelRisky.Dock = DockStyle.Top;
labelRisky.ForeColor = SystemColors.ControlLightLight;
labelRisky.Location = new Point(0, 732);
labelRisky.Location = new Point(0, 608);
labelRisky.Margin = new Padding(0);
labelRisky.Name = "labelRisky";
labelRisky.Padding = new Padding(10, 10, 10, 5);
@@ -627,7 +620,7 @@ namespace GHelper
panelUViGPU.Controls.Add(labelLeftUViGPU);
panelUViGPU.Controls.Add(trackUViGPU);
panelUViGPU.Dock = DockStyle.Top;
panelUViGPU.Location = new Point(0, 608);
panelUViGPU.Location = new Point(0, 484);
panelUViGPU.Margin = new Padding(4);
panelUViGPU.MaximumSize = new Size(0, 124);
panelUViGPU.Name = "panelUViGPU";
@@ -675,7 +668,7 @@ namespace GHelper
panelUV.Controls.Add(labelLeftUV);
panelUV.Controls.Add(trackUV);
panelUV.Dock = DockStyle.Top;
panelUV.Location = new Point(0, 484);
panelUV.Location = new Point(0, 360);
panelUV.Margin = new Padding(4);
panelUV.MaximumSize = new Size(0, 124);
panelUV.Name = "panelUV";
@@ -720,7 +713,7 @@ namespace GHelper
panelTitleAdvanced.Controls.Add(pictureUV);
panelTitleAdvanced.Controls.Add(labelTitleUV);
panelTitleAdvanced.Dock = DockStyle.Top;
panelTitleAdvanced.Location = new Point(0, 418);
panelTitleAdvanced.Location = new Point(0, 294);
panelTitleAdvanced.Name = "panelTitleAdvanced";
panelTitleAdvanced.Size = new Size(520, 66);
panelTitleAdvanced.TabIndex = 48;
@@ -796,54 +789,6 @@ namespace GHelper
trackTemp.TickFrequency = 5;
trackTemp.TickStyle = TickStyle.TopLeft;
//
// panelSkin
//
panelSkin.AutoSize = true;
panelSkin.AutoSizeMode = AutoSizeMode.GrowAndShrink;
panelSkin.Controls.Add(labelSkin);
panelSkin.Controls.Add(labelSkinTitle);
panelSkin.Controls.Add(trackSkin);
panelSkin.Dock = DockStyle.Top;
panelSkin.Location = new Point(0, 294);
panelSkin.Margin = new Padding(4);
panelSkin.MaximumSize = new Size(0, 124);
panelSkin.Name = "panelSkin";
panelSkin.Size = new Size(520, 124);
panelSkin.TabIndex = 53;
//
// labelSkin
//
labelSkin.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point);
labelSkin.Location = new Point(347, 13);
labelSkin.Margin = new Padding(4, 0, 4, 0);
labelSkin.Name = "labelSkin";
labelSkin.Size = new Size(148, 32);
labelSkin.TabIndex = 13;
labelSkin.Text = "T";
labelSkin.TextAlign = ContentAlignment.TopRight;
//
// labelSkinTitle
//
labelSkinTitle.AutoSize = true;
labelSkinTitle.Location = new Point(10, 10);
labelSkinTitle.Margin = new Padding(4, 0, 4, 0);
labelSkinTitle.Name = "labelSkinTitle";
labelSkinTitle.Size = new Size(235, 32);
labelSkinTitle.TabIndex = 12;
labelSkinTitle.Text = "APU Skin Temp Limit";
//
// trackSkin
//
trackSkin.Location = new Point(6, 48);
trackSkin.Margin = new Padding(4, 2, 4, 2);
trackSkin.Maximum = 0;
trackSkin.Minimum = -40;
trackSkin.Name = "trackSkin";
trackSkin.Size = new Size(508, 90);
trackSkin.TabIndex = 11;
trackSkin.TickFrequency = 5;
trackSkin.TickStyle = TickStyle.TopLeft;
//
// panelTitleTemp
//
panelTitleTemp.Controls.Add(pictureTemp);
@@ -1776,9 +1721,6 @@ namespace GHelper
panelTemperature.ResumeLayout(false);
panelTemperature.PerformLayout();
((System.ComponentModel.ISupportInitialize)trackTemp).EndInit();
panelSkin.ResumeLayout(false);
panelSkin.PerformLayout();
((System.ComponentModel.ISupportInitialize)trackSkin).EndInit();
panelTitleTemp.ResumeLayout(false);
panelTitleTemp.PerformLayout();
((System.ComponentModel.ISupportInitialize)pictureTemp).EndInit();
@@ -1952,9 +1894,5 @@ namespace GHelper
private Label labelGPUPower;
private Label labelGPUPowerTitle;
private TrackBar trackGPUPower;
private Panel panelSkin;
private Label labelSkin;
private Label labelSkinTitle;
private TrackBar trackSkin;
}
}

View File

@@ -184,9 +184,6 @@ namespace GHelper
trackTemp.Minimum = RyzenControl.MinTemp;
trackTemp.Maximum = RyzenControl.MaxTemp;
trackSkin.Minimum = RyzenControl.MinSkin;
trackSkin.Maximum = RyzenControl.MaxSkin;
comboPowerMode.DropDownStyle = ComboBoxStyle.DropDownList;
comboPowerMode.DataSource = new BindingSource(PowerNative.powerModes, null);
comboPowerMode.DisplayMember = "Value";
@@ -214,7 +211,6 @@ namespace GHelper
trackUV.Scroll += TrackUV_Scroll;
trackUViGPU.Scroll += TrackUV_Scroll;
trackTemp.Scroll += TrackUV_Scroll;
trackSkin.Scroll += TrackUV_Scroll;
buttonApplyAdvanced.Click += ButtonApplyAdvanced_Click;
@@ -252,7 +248,6 @@ namespace GHelper
panelUV.Visible = true;
panelTitleAdvanced.Visible = true;
panelTemperature.Visible = true;
panelSkin.Visible = true;
panelTitleTemp.Visible = true;
VisualiseAdvanced();
@@ -386,15 +381,11 @@ namespace GHelper
int temp = AppConfig.GetMode("cpu_temp");
if (temp < RyzenControl.MinTemp || temp > RyzenControl.MaxTemp) temp = RyzenControl.MaxTemp;
int skin = AppConfig.GetMode("skin_temp");
if (skin < RyzenControl.MinSkin || skin > RyzenControl.MaxSkin) skin = RyzenControl.MaxSkin;
checkApplyUV.Enabled = checkApplyUV.Checked = AppConfig.IsMode("auto_uv");
trackUV.Value = cpuUV;
trackUViGPU.Value = igpuUV;
trackTemp.Value = temp;
trackSkin.Value = skin;
VisualiseAdvanced();
@@ -413,7 +404,6 @@ namespace GHelper
panelUViGPU.Visible = false;
panelTitleTemp.Visible = false;
panelTemperature.Visible = false;
panelSkin.Visible = false;
panelAdvancedAlways.Visible = false;
panelAdvancedApply.Visible = false;
panelDownload.Visible = true;
@@ -440,7 +430,6 @@ namespace GHelper
labelUViGPU.Text = trackUViGPU.Value.ToString();
labelTemp.Text = (trackTemp.Value < RyzenControl.MaxTemp) ? trackTemp.Value.ToString() + "°C" : "Default";
labelSkin.Text = (trackSkin.Value < RyzenControl.MaxSkin) ? trackSkin.Value.ToString() + "°C" : "Default";
}
private void AdvancedScroll()
@@ -450,7 +439,6 @@ namespace GHelper
VisualiseAdvanced();
AppConfig.SetMode("skin_temp", trackSkin.Value);
AppConfig.SetMode("cpu_temp", trackTemp.Value);
AppConfig.SetMode("cpu_uv", trackUV.Value);
AppConfig.SetMode("igpu_uv", trackUViGPU.Value);
@@ -1153,11 +1141,9 @@ namespace GHelper
trackUV.Value = RyzenControl.MaxCPUUV;
trackUViGPU.Value = RyzenControl.MaxIGPUUV;
trackTemp.Value = RyzenControl.MaxTemp;
trackSkin.Value = RyzenControl.MaxSkin;
AdvancedScroll();
AppConfig.RemoveMode("cpu_temp");
AppConfig.RemoveMode("skin_temp");
modeControl.ResetPerformanceMode();

View File

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

View File

@@ -31,7 +31,6 @@ namespace GHelper.Mode
private void ReapplyTimer_Elapsed(object? sender, System.Timers.ElapsedEventArgs e)
{
SetCPUTemp(AppConfig.GetMode("cpu_temp"));
SetSkinTemp(AppConfig.GetMode("skin_temp"));
SetRyzenPower();
}
@@ -410,15 +409,6 @@ namespace GHelper.Mode
}
}
public void SetSkinTemp(int? skinTemp, bool init = false)
{
if (skinTemp >= RyzenControl.MinSkin && skinTemp < RyzenControl.MaxSkin)
{
var restultAPU = SendCommand.set_apu_skin_temp_limit((uint)skinTemp);
if (init) Logger.WriteLine($"APU Skin Temp: {skinTemp} {restultAPU}");
}
}
public void SetUV(int cpuUV)
{
if (!RyzenControl.IsSupportedUV()) return;
@@ -459,7 +449,6 @@ namespace GHelper.Mode
SetUV(AppConfig.GetMode("cpu_uv", 0));
SetUViGPU(AppConfig.GetMode("igpu_uv", 0));
SetCPUTemp(AppConfig.GetMode("cpu_temp"), true);
SetSkinTemp(AppConfig.GetMode("skin_temp"), true);
}
catch (Exception ex)
{

View File

@@ -800,4 +800,4 @@ Vil du stadig fortsætte?</value>
<data name="Zoom" xml:space="preserve">
<value>Zoom</value>
</data>
</root>
</root>

View File

@@ -741,7 +741,7 @@ Trotzdem fortfahren?</value>
<value>Bildschirm umschalten</value>
</data>
<data name="ToggleTouchscreen" xml:space="preserve">
<value>Toggle Touchscreen</value>
<value>Touchscreen umschalten</value>
</data>
<data name="Touchscreen" xml:space="preserve">
<value/>
@@ -800,4 +800,4 @@ Trotzdem fortfahren?</value>
<data name="Zoom" xml:space="preserve">
<value>Zoom</value>
</data>
</root>
</root>

View File

@@ -624,7 +624,7 @@
<value>Optimizado</value>
</data>
<data name="OptimizedGPUTooltip" xml:space="preserve">
<value>Cambia a Eco con batería y a Estándar cuando está enchufado</value>
<value>Cambiar a Eco con batería y a Estándar cuando está enchufado</value>
</data>
<data name="OptimizedUSBC" xml:space="preserve">
<value>Deshabilitar dGPU con cargador USB-C en modo Optimizado</value>
@@ -800,4 +800,4 @@
<data name="Zoom" xml:space="preserve">
<value>Zoom</value>
</data>
</root>
</root>

View File

@@ -800,4 +800,4 @@ Voulez-vous continuer ?</value>
<data name="Zoom" xml:space="preserve">
<value>Zoom</value>
</data>
</root>
</root>

View File

@@ -800,4 +800,4 @@ Do you still want to continue?</value>
<data name="Zoom" xml:space="preserve">
<value>Zoom</value>
</data>
</root>
</root>

View File

@@ -800,4 +800,4 @@ Apakah Anda masih ingin melanjutkan?</value>
<data name="Zoom" xml:space="preserve">
<value>Perbesar</value>
</data>
</root>
</root>

View File

@@ -800,4 +800,4 @@ Sei sicuro di voler continuare?</value>
<data name="Zoom" xml:space="preserve">
<value>Zoom</value>
</data>
</root>
</root>

View File

@@ -0,0 +1,803 @@
<?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 xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" id="root">
<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>
<data name="Acceleration" xml:space="preserve">
<value>Acceleration</value>
</data>
<data name="ACPIError" xml:space="preserve">
<value>Can't connect to ASUS ACPI. Application can't function without it. Try to install Asus System Control Interface</value>
</data>
<data name="AlertAPUMemoryRestart" xml:space="preserve">
<value>Restart your device to apply changes</value>
</data>
<data name="AlertAPUMemoryRestartTitle" xml:space="preserve">
<value>Restart now?</value>
</data>
<data name="AlertDGPU" xml:space="preserve">
<value>Looks like GPU is in heavy use, disable it?</value>
</data>
<data name="AlertDGPUTitle" xml:space="preserve">
<value>Eco Mode</value>
</data>
<data name="AlertUltimateOff" xml:space="preserve">
<value>Switching off Ultimate Mode requires restart</value>
</data>
<data name="AlertUltimateOn" xml:space="preserve">
<value>Ultimate Mode requires restart</value>
</data>
<data name="AlertUltimateTitle" xml:space="preserve">
<value>Reboot now?</value>
</data>
<data name="AllyController" xml:space="preserve">
<value>Ally Controller</value>
</data>
<data name="AnimationSpeed" xml:space="preserve">
<value>Animation Speed</value>
</data>
<data name="AnimeMatrix" xml:space="preserve">
<value>Anime Matrix</value>
</data>
<data name="AppAlreadyRunning" xml:space="preserve">
<value>App already running</value>
</data>
<data name="AppAlreadyRunningText" xml:space="preserve">
<value>G-Helper is already running. Check system tray for an icon.</value>
</data>
<data name="Apply" xml:space="preserve">
<value>Apply</value>
</data>
<data name="ApplyFanCurve" xml:space="preserve">
<value>Apply Custom Fan Curve</value>
</data>
<data name="ApplyPowerLimits" xml:space="preserve">
<value>Apply Power Limits</value>
</data>
<data name="ApplyWindowsPowerPlan" xml:space="preserve">
<value>Auto adjust Windows Power Modes</value>
</data>
<data name="APUMemory" xml:space="preserve">
<value>Memory Assigned to GPU</value>
</data>
<data name="AsusServicesRunning" xml:space="preserve">
<value>Asus Services Running</value>
</data>
<data name="AuraBatteryState" xml:space="preserve">
<value>Battery State</value>
</data>
<data name="AuraBreathe" xml:space="preserve">
<value>Breathe</value>
</data>
<data name="AuraClockwise" xml:space="preserve">
<value>Clockwise</value>
</data>
<data name="AuraColorCycle" xml:space="preserve">
<value>Color Cycle</value>
</data>
<data name="AuraComet" xml:space="preserve">
<value>Comet</value>
</data>
<data name="AuraCounterClockwise" xml:space="preserve">
<value>Counterclockwise</value>
</data>
<data name="AuraFast" xml:space="preserve">
<value>Fast</value>
</data>
<data name="AuraLightingMode" xml:space="preserve">
<value>Lighting Mode</value>
</data>
<data name="AuraNormal" xml:space="preserve">
<value>Normal</value>
</data>
<data name="AuraRainbow" xml:space="preserve">
<value>Rainbow</value>
</data>
<data name="AuraRandomColor" xml:space="preserve">
<value>Random</value>
</data>
<data name="AuraReact" xml:space="preserve">
<value>React</value>
</data>
<data name="AuraSlow" xml:space="preserve">
<value>Slow</value>
</data>
<data name="AuraStatic" xml:space="preserve">
<value>Static</value>
</data>
<data name="AuraStrobe" xml:space="preserve">
<value>Strobe</value>
</data>
<data name="AuraZoneAll" xml:space="preserve">
<value>All</value>
</data>
<data name="AuraZoneDock" xml:space="preserve">
<value>Dock</value>
</data>
<data name="AuraZoneLogo" xml:space="preserve">
<value>Logo</value>
</data>
<data name="AuraZoneScroll" xml:space="preserve">
<value>Scrollwheel</value>
</data>
<data name="AuraZoneUnderglow" xml:space="preserve">
<value>Underglow</value>
</data>
<data name="AutoApply" xml:space="preserve">
<value>Auto Apply</value>
</data>
<data name="AutoMode" xml:space="preserve">
<value>Auto</value>
</data>
<data name="AutoRefreshTooltip" xml:space="preserve">
<value>Sets 60Hz to save battery, and back when plugged</value>
</data>
<data name="Awake" xml:space="preserve">
<value>Awake</value>
</data>
<data name="BacklightLow" xml:space="preserve">
<value>Low</value>
</data>
<data name="BacklightMax" xml:space="preserve">
<value>Max</value>
</data>
<data name="BacklightMid" xml:space="preserve">
<value>Mid</value>
</data>
<data name="BacklightOff" xml:space="preserve">
<value>Off</value>
</data>
<data name="BacklightTimeout" xml:space="preserve">
<value>Timeout plugged / on battery (0 - ON)</value>
</data>
<data name="BacklightTimeoutBattery" xml:space="preserve">
<value>Backlight Timeout when on battery</value>
</data>
<data name="BacklightTimeoutPlugged" xml:space="preserve">
<value>Backlight Timeout when plugged</value>
</data>
<data name="Balanced" xml:space="preserve">
<value>Balanced</value>
</data>
<data name="BatteryCharge" xml:space="preserve">
<value>Charge</value>
</data>
<data name="BatteryChargeLimit" xml:space="preserve">
<value>Battery Charge Limit</value>
</data>
<data name="BatteryHealth" xml:space="preserve">
<value>Battery Health</value>
</data>
<data name="BatteryLimitFull" xml:space="preserve">
<value>One time charge to 100%</value>
</data>
<data name="Binding" xml:space="preserve">
<value>Binding</value>
</data>
<data name="BindingPrimary" xml:space="preserve">
<value>Primary</value>
</data>
<data name="BindingSecondary" xml:space="preserve">
<value>Secondary</value>
</data>
<data name="BiosAndDriverUpdates" xml:space="preserve">
<value>BIOS and Driver Updates</value>
</data>
<data name="Boot" xml:space="preserve">
<value>Boot</value>
</data>
<data name="BootSound" xml:space="preserve">
<value>Boot Sound</value>
</data>
<data name="Brightness" xml:space="preserve">
<value>Brightness</value>
</data>
<data name="BrightnessDown" xml:space="preserve">
<value>Brightness Down</value>
</data>
<data name="BrightnessUp" xml:space="preserve">
<value>Brightness Up</value>
</data>
<data name="BWTrayIcon" xml:space="preserve">
<value>Black and white tray icon</value>
</data>
<data name="Calibrate" xml:space="preserve">
<value>Calibrate</value>
</data>
<data name="Charging" xml:space="preserve">
<value>Charging</value>
</data>
<data name="Color" xml:space="preserve">
<value>Color</value>
</data>
<data name="Contrast" xml:space="preserve">
<value>Contrast</value>
</data>
<data name="Controller" xml:space="preserve">
<value>Controller</value>
</data>
<data name="CPUBoost" xml:space="preserve">
<value>CPU Boost</value>
</data>
<data name="Custom" xml:space="preserve">
<value>Custom</value>
</data>
<data name="Deceleration" xml:space="preserve">
<value>Deceleration</value>
</data>
<data name="Default" xml:space="preserve">
<value>Default</value>
</data>
<data name="DisableController" xml:space="preserve">
<value>Disable Controller</value>
</data>
<data name="DisableOnLidClose" xml:space="preserve">
<value>Disable on lid close</value>
</data>
<data name="DisableOverdrive" xml:space="preserve">
<value>Disable screen overdrive</value>
</data>
<data name="Discharging" xml:space="preserve">
<value>Discharging</value>
</data>
<data name="DownloadColorProfiles" xml:space="preserve">
<value>Download Color Profiles</value>
</data>
<data name="DownloadUpdate" xml:space="preserve">
<value>Download</value>
</data>
<data name="DriverAndSoftware" xml:space="preserve">
<value>Drivers and Software</value>
</data>
<data name="EcoGPUTooltip" xml:space="preserve">
<value>Disables dGPU to save battery</value>
</data>
<data name="EcoMode" xml:space="preserve">
<value>Eco</value>
</data>
<data name="EnableGPUOnShutdown" xml:space="preserve">
<value>Enable GPU on shutdown (prevents issue with Eco mode)</value>
</data>
<data name="EnableOptimusText" xml:space="preserve">
<value>Disabling the dGPU by going into Eco mode while Display Mode in NVIDIA Control Panel is not set to Optimus might cause problems with brightness controls until after the next reboot.
Do you still want to continue?</value>
</data>
<data name="EnableOptimusTitle" xml:space="preserve">
<value>NVIDIA Display Mode is not set to Optimus</value>
</data>
<data name="EnergySettings" xml:space="preserve">
<value>Energy Settings</value>
</data>
<data name="Export" xml:space="preserve">
<value>Export Profile</value>
</data>
<data name="Extra" xml:space="preserve">
<value>Extra</value>
</data>
<data name="ExtraSettings" xml:space="preserve">
<value>Extra Settings</value>
</data>
<data name="FactoryDefaults" xml:space="preserve">
<value>Factory Defaults</value>
</data>
<data name="FanCurves" xml:space="preserve">
<value>Fan Curves</value>
</data>
<data name="FanProfileCPU" xml:space="preserve">
<value>CPU Fan Profile</value>
</data>
<data name="FanProfileGPU" xml:space="preserve">
<value>GPU Fan Profile</value>
</data>
<data name="FanProfileMid" xml:space="preserve">
<value>Mid Fan Profile</value>
</data>
<data name="FanProfiles" xml:space="preserve">
<value>Fan Profiles</value>
</data>
<data name="FansAndPower" xml:space="preserve">
<value>Fans and Power</value>
</data>
<data name="FanSpeed" xml:space="preserve">
<value>Fan</value>
</data>
<data name="FansPower" xml:space="preserve">
<value>Fans + Power</value>
</data>
<data name="FlickerFreeDimming" xml:space="preserve">
<value>Flicker-free Dimming</value>
</data>
<data name="FnLock" xml:space="preserve">
<value>Process Fn+F hotkeys without Fn</value>
</data>
<data name="FnLockOff" xml:space="preserve">
<value>FN-Lock Off</value>
</data>
<data name="FnLockOn" xml:space="preserve">
<value>FN-Lock On</value>
</data>
<data name="GPUBoost" xml:space="preserve">
<value>Dynamic Boost</value>
</data>
<data name="GPUChanging" xml:space="preserve">
<value>Changing</value>
</data>
<data name="GPUCoreClockOffset" xml:space="preserve">
<value>Core Clock Offset</value>
</data>
<data name="GPUMemoryClockOffset" xml:space="preserve">
<value>Memory Clock Offset</value>
</data>
<data name="GPUMode" xml:space="preserve">
<value>GPU Mode</value>
</data>
<data name="GPUModeEco" xml:space="preserve">
<value>iGPU only</value>
</data>
<data name="GPUModeStandard" xml:space="preserve">
<value>iGPU + dGPU</value>
</data>
<data name="GPUModeUltimate" xml:space="preserve">
<value>dGPU exclusive</value>
</data>
<data name="GPUPower" xml:space="preserve">
<value>GPU Power</value>
</data>
<data name="GPUSettings" xml:space="preserve">
<value>GPU Settings</value>
</data>
<data name="GPUTempTarget" xml:space="preserve">
<value>Temperature Target</value>
</data>
<data name="HibernateAfter" xml:space="preserve">
<value>Minutes till Hibernation in sleep on battery (0 - OFF)</value>
</data>
<data name="High" xml:space="preserve">
<value>High</value>
</data>
<data name="ImageRotation" xml:space="preserve">
<value>Image Rotation</value>
</data>
<data name="Import" xml:space="preserve">
<value>Import Profile</value>
</data>
<data name="KeyBindings" xml:space="preserve">
<value>Key Bindings</value>
</data>
<data name="Keyboard" xml:space="preserve">
<value>Keyboard</value>
</data>
<data name="KillGpuApps" xml:space="preserve">
<value>Stop all apps using GPU when switching to Eco</value>
</data>
<data name="LaptopBacklight" xml:space="preserve">
<value>Laptop Backlight</value>
</data>
<data name="LaptopKeyboard" xml:space="preserve">
<value>Laptop Keyboard</value>
</data>
<data name="LaptopScreen" xml:space="preserve">
<value>Laptop Screen</value>
</data>
<data name="LEDStatusIndicators" xml:space="preserve">
<value>LED Status Indicators</value>
</data>
<data name="Lid" xml:space="preserve">
<value>Lid</value>
</data>
<data name="Lightbar" xml:space="preserve">
<value>Lightbar</value>
</data>
<data name="Lighting" xml:space="preserve">
<value>Lighting</value>
</data>
<data name="LockScreen" xml:space="preserve">
<value>Lock Screen</value>
</data>
<data name="Logo" xml:space="preserve">
<value>Logo</value>
</data>
<data name="Low" xml:space="preserve">
<value>Low</value>
</data>
<data name="LSDeadzones" xml:space="preserve">
<value>Left Stick Deadzones</value>
</data>
<data name="LTDeadzones" xml:space="preserve">
<value>Left Trigger Deadzones</value>
</data>
<data name="MatrixAudio" xml:space="preserve">
<value>Audio Visualizer</value>
</data>
<data name="MatrixBanner" xml:space="preserve">
<value>Binary Banner</value>
</data>
<data name="MatrixBright" xml:space="preserve">
<value>Bright</value>
</data>
<data name="MatrixClock" xml:space="preserve">
<value>Clock</value>
</data>
<data name="MatrixDim" xml:space="preserve">
<value>Dim</value>
</data>
<data name="MatrixLogo" xml:space="preserve">
<value>Rog Logo</value>
</data>
<data name="MatrixMedium" xml:space="preserve">
<value>Medium</value>
</data>
<data name="MatrixOff" xml:space="preserve">
<value>Off</value>
</data>
<data name="MatrixPicture" xml:space="preserve">
<value>Picture</value>
</data>
<data name="MaxRefreshTooltip" xml:space="preserve">
<value>Max refresh rate for lower latency</value>
</data>
<data name="MinRefreshTooltip" xml:space="preserve">
<value>60Hz refresh rate to save battery</value>
</data>
<data name="Minute" xml:space="preserve">
<value>Minute</value>
</data>
<data name="Minutes" xml:space="preserve">
<value>Minutes</value>
</data>
<data name="MouseAngleSnapping" xml:space="preserve">
<value>Angle Snapping</value>
</data>
<data name="MouseAutoPowerOff" xml:space="preserve">
<value>Auto Power Off After</value>
</data>
<data name="MouseButtonResponse" xml:space="preserve">
<value>Button Response</value>
</data>
<data name="MouseImportFailed" xml:space="preserve">
<value>Import failed. Selected file is not a valid mouse profile or corrutpted.</value>
</data>
<data name="MouseLiftOffDistance" xml:space="preserve">
<value>Lift Off Distance</value>
</data>
<data name="MouseLowBatteryWarning" xml:space="preserve">
<value>Low Battery Warning at</value>
</data>
<data name="MousePerformance" xml:space="preserve">
<value>Performance</value>
</data>
<data name="MouseSynchronize" xml:space="preserve">
<value>Synchronize with mouse</value>
</data>
<data name="Multizone" xml:space="preserve">
<value>Multi Zone</value>
</data>
<data name="MultizoneStrong" xml:space="preserve">
<value>Multi Zone Strong</value>
</data>
<data name="Muted" xml:space="preserve">
<value>Muted</value>
</data>
<data name="MuteMic" xml:space="preserve">
<value>Mute Mic</value>
</data>
<data name="Never" xml:space="preserve">
<value>Never</value>
</data>
<data name="NewUpdates" xml:space="preserve">
<value>New updates</value>
</data>
<data name="NoNewUpdates" xml:space="preserve">
<value>No new updates</value>
</data>
<data name="NotConnected" xml:space="preserve">
<value>Not Connected</value>
</data>
<data name="Off" xml:space="preserve">
<value>Off</value>
</data>
<data name="On" xml:space="preserve">
<value>On</value>
</data>
<data name="OneZone" xml:space="preserve">
<value>One Zone</value>
</data>
<data name="OpenGHelper" xml:space="preserve">
<value>Open G-Helper window</value>
</data>
<data name="Optimized" xml:space="preserve">
<value>Optimized</value>
</data>
<data name="OptimizedGPUTooltip" xml:space="preserve">
<value>Switch to Eco on battery and to Standard when plugged in</value>
</data>
<data name="OptimizedUSBC" xml:space="preserve">
<value>Keep GPU disabled on USB-C charger in Optimized mode</value>
</data>
<data name="Other" xml:space="preserve">
<value>Other</value>
</data>
<data name="Overdrive" xml:space="preserve">
<value>Overdrive</value>
</data>
<data name="PerformanceMode" xml:space="preserve">
<value>Mode</value>
</data>
<data name="Peripherals" xml:space="preserve">
<value>Peripherals</value>
</data>
<data name="PictureGif" xml:space="preserve">
<value>Picture / Gif</value>
</data>
<data name="PlayPause" xml:space="preserve">
<value>Play / Pause</value>
</data>
<data name="PollingRate" xml:space="preserve">
<value>Polling Rate</value>
</data>
<data name="PowerLimits" xml:space="preserve">
<value>Power Limits</value>
</data>
<data name="PPTExperimental" xml:space="preserve">
<value>Power Limits is an experimental feature. Use carefully and at your own risk!</value>
</data>
<data name="PrintScreen" xml:space="preserve">
<value>PrintScreen</value>
</data>
<data name="Profile" xml:space="preserve">
<value>Profile</value>
</data>
<data name="Quit" xml:space="preserve">
<value>Quit</value>
</data>
<data name="Reset" xml:space="preserve">
<value>Reset</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>
</data>
<data name="RPM" xml:space="preserve">
<value>RPM</value>
</data>
<data name="RSDeadzones" xml:space="preserve">
<value>Right Stick Deadzones</value>
</data>
<data name="RTDeadzones" xml:space="preserve">
<value>Right Trigger Deadzones</value>
</data>
<data name="RunOnStartup" xml:space="preserve">
<value>Run on Startup</value>
</data>
<data name="ScalingQuality" xml:space="preserve">
<value>Scaling Quality</value>
</data>
<data name="ScreenPadDown" xml:space="preserve">
<value>Screenpad Brightness Down</value>
</data>
<data name="ScreenPadUp" xml:space="preserve">
<value>Screenpad Brightness Up</value>
</data>
<data name="Shutdown" xml:space="preserve">
<value>Shutdown</value>
</data>
<data name="Silent" xml:space="preserve">
<value>Silent</value>
</data>
<data name="Sleep" xml:space="preserve">
<value>Sleep</value>
</data>
<data name="StandardGPUTooltip" xml:space="preserve">
<value>Enables dGPU for standard use</value>
</data>
<data name="StandardMode" xml:space="preserve">
<value>Standard</value>
</data>
<data name="Start" xml:space="preserve">
<value>Start</value>
</data>
<data name="StartingServices" xml:space="preserve">
<value>Starting Services</value>
</data>
<data name="StartupError" xml:space="preserve">
<value>Startup Error</value>
</data>
<data name="Stop" xml:space="preserve">
<value>Stop</value>
</data>
<data name="StopGPUApps" xml:space="preserve">
<value>Stop GPU Applications</value>
</data>
<data name="StoppingServices" xml:space="preserve">
<value>Stopping Services</value>
</data>
<data name="ToggleAura" xml:space="preserve">
<value>Toggle Aura</value>
</data>
<data name="ToggleClamshellMode" xml:space="preserve">
<value>Auto Toggle Clamshell Mode</value>
</data>
<data name="ToggleFnLock" xml:space="preserve">
<value>Toggle Fn-Lock</value>
</data>
<data name="ToggleMiniled" xml:space="preserve">
<value>Toggle Miniled (if supported)</value>
</data>
<data name="ToggleScreen" xml:space="preserve">
<value>Toggle Screen</value>
</data>
<data name="ToggleTouchscreen" xml:space="preserve">
<value>Toggle Touchscreen</value>
</data>
<data name="Touchscreen" xml:space="preserve">
<value/>
</data>
<data name="Turbo" xml:space="preserve">
<value>Turbo</value>
</data>
<data name="TurnedOff" xml:space="preserve">
<value>Turned off</value>
</data>
<data name="TurnOffOnBattery" xml:space="preserve">
<value>Disable on battery</value>
</data>
<data name="UltimateGPUTooltip" xml:space="preserve">
<value>Routes laptop screen to dGPU, maximizing FPS</value>
</data>
<data name="UltimateMode" xml:space="preserve">
<value>Ultimate</value>
</data>
<data name="UndervoltingRisky" xml:space="preserve">
<value>Undervolting is an experimental and risky feature. If applied values are too low for your hardware, it can become unstable, shut down or cause data corruption. If you want to try - start from small values first, click Apply and test what works for you.</value>
</data>
<data name="Unmuted" xml:space="preserve">
<value>Unmuted</value>
</data>
<data name="Updates" xml:space="preserve">
<value>Updates</value>
</data>
<data name="VersionLabel" xml:space="preserve">
<value>Version</value>
</data>
<data name="VibrationStrength" xml:space="preserve">
<value>Vibration Strength</value>
</data>
<data name="VisualMode" xml:space="preserve">
<value>Visual Mode</value>
</data>
<data name="VisualModesHDR" xml:space="preserve">
<value>Visual Modes are not available when HDR is active</value>
</data>
<data name="VisualModesScreen" xml:space="preserve">
<value>Visual Modes are not available when laptop screen is off</value>
</data>
<data name="VolumeDown" xml:space="preserve">
<value>Volume Down</value>
</data>
<data name="VolumeMute" xml:space="preserve">
<value>Volume Mute</value>
</data>
<data name="VolumeUp" xml:space="preserve">
<value>Volume Up</value>
</data>
<data name="WindowTop" xml:space="preserve">
<value>Keep app window always on top</value>
</data>
<data name="Zoom" xml:space="preserve">
<value>Zoom</value>
</data>
</root>

View File

@@ -800,4 +800,4 @@
<data name="Zoom" xml:space="preserve">
<value>확대/축소</value>
</data>
</root>
</root>

View File

@@ -127,7 +127,7 @@
<value>Restart your device to apply changes</value>
</data>
<data name="AlertAPUMemoryRestartTitle" xml:space="preserve">
<value>Restart now?</value>
<value>Paleisti iš naujo?</value>
</data>
<data name="AlertDGPU" xml:space="preserve">
<value>Panašu, kad jūsų GPU yra intensyviai naudojamas. Išjungti jį?</value>
@@ -289,10 +289,10 @@
<value>Binding</value>
</data>
<data name="BindingPrimary" xml:space="preserve">
<value>Primary</value>
<value>Pirminis</value>
</data>
<data name="BindingSecondary" xml:space="preserve">
<value>Secondary</value>
<value>Antrinis</value>
</data>
<data name="BiosAndDriverUpdates" xml:space="preserve">
<value>BIOS ir tvarkyklių naujinimai</value>
@@ -774,10 +774,10 @@ Vis tiek norite tęsti?</value>
<value>Versija</value>
</data>
<data name="VibrationStrength" xml:space="preserve">
<value>Vibration Strength</value>
<value>Vibracijos stiprumas</value>
</data>
<data name="VisualMode" xml:space="preserve">
<value>Visual Mode</value>
<value>Vizualinis režimas</value>
</data>
<data name="VisualModesHDR" xml:space="preserve">
<value>Visual Modes are not available when HDR is active</value>
@@ -800,4 +800,4 @@ Vis tiek norite tęsti?</value>
<data name="Zoom" xml:space="preserve">
<value>Zoom</value>
</data>
</root>
</root>

View File

@@ -800,4 +800,4 @@ Nadal chcesz kontynuować?</value>
<data name="Zoom" xml:space="preserve">
<value>Przybliżenie</value>
</data>
</root>
</root>

View File

@@ -800,4 +800,4 @@ Do you still want to continue?</value>
<data name="Zoom" xml:space="preserve">
<value>Zoom</value>
</data>
</root>
</root>

View File

@@ -800,4 +800,4 @@ Quer prosseguir?</value>
<data name="Zoom" xml:space="preserve">
<value>Zoom</value>
</data>
</root>
</root>

View File

@@ -800,4 +800,4 @@
<data name="Zoom" xml:space="preserve">
<value>Zoom</value>
</data>
</root>
</root>

View File

@@ -624,7 +624,7 @@ Yine de devam etmek istiyor musunuz?</value>
<value>İyileştirilmiş</value>
</data>
<data name="OptimizedGPUTooltip" xml:space="preserve">
<value>Pil ile çalışırken Eko moda, şarjda Standart moda geçiş yap</value>
<value>Pilde çalışırken Eco moda, fişe takılıyken Standart moda geçin</value>
</data>
<data name="OptimizedUSBC" xml:space="preserve">
<value>İyileştirilmiş modda USB-C şarj cihazı bağlıyken, GPU devre dışı kalsın</value>
@@ -800,4 +800,4 @@ Yine de devam etmek istiyor musunuz?</value>
<data name="Zoom" xml:space="preserve">
<value>Yakınlaştır</value>
</data>
</root>
</root>

View File

@@ -800,4 +800,4 @@
<data name="Zoom" xml:space="preserve">
<value>Зум</value>
</data>
</root>
</root>

View File

@@ -800,4 +800,4 @@ Do you still want to continue?</value>
<data name="Zoom" xml:space="preserve">
<value>Zoom</value>
</data>
</root>
</root>

View File

@@ -800,4 +800,4 @@
<data name="Zoom" xml:space="preserve">
<value>缩放</value>
</data>
</root>
</root>

View File

@@ -624,7 +624,7 @@
<value>自動調節</value>
</data>
<data name="OptimizedGPUTooltip" xml:space="preserve">
<value>使用電池切換到整合式顯卡,插入電源時切換到獨立顯卡</value>
<value>使用電池切換到,插入電源時切換到標準模式</value>
</data>
<data name="OptimizedUSBC" xml:space="preserve">
<value>自動調節模式下使用USB-C充電時持續關閉獨顯</value>
@@ -800,4 +800,4 @@
<data name="Zoom" xml:space="preserve">
<value>縮放</value>
</data>
</root>
</root>

View File

@@ -21,8 +21,6 @@ namespace Ryzen
public static int MinTemp => AppConfig.Get("min_temp", 75);
public const int MaxTemp = 98;
public static int MinSkin => 25;
public const int MaxSkin = 46;
public static int FAMID { get; protected set; }

View File

@@ -443,6 +443,14 @@ namespace GHelper
});
}
public void VisualiseGamut()
{
Invoke(delegate
{
if (comboGamut.Items.Count > 0) comboGamut.SelectedIndex = 0;
});
}
private void SliderGamma_ValueChanged(object? sender, EventArgs e)
{
if (sliderGammaIgnore) return;

View File

@@ -7,6 +7,7 @@ Small and lightweight Armoury Crate alternative for Asus laptops offering almost
Works with all popular models, such as ROG Zephyrus G14, G15, G16, M16, Flow X13, Flow X16, Flow Z13, TUF Series, Strix / Scar Series, ProArt, Vivobook, Zenbook, ROG Ally and many more!
# [:floppy_disk:Download](https://github.com/seerge/g-helper/releases/latest/download/GHelper.zip)
### Support project : [:euro: Paypal EUR](https://bit.ly/4c0ZWs9) | [💵 Paypal USD](https://bit.ly/4aGTyW8) | [💳 Stripe](https://buy.stripe.com/bIY4hl8HbalH3G8bIJ) | [🪙 支付宝 / 微信支付](https://buy.stripe.com/bIY4hl8HbalH3G8bIJ)
- [FAQ](https://github.com/seerge/g-helper/wiki/FAQ)
- [Setup and Requirements](https://github.com/seerge/g-helper/wiki/Requirements)

View File

@@ -11,6 +11,7 @@ G-helper兼容所有主流型号例如 ROG 幻14、幻15、幻16、幻13、
# [:floppy_disk:下载应用](https://github.com/seerge/g-helper/releases/latest/download/GHelper.zip)
## 支持此项目:[💳 信用卡 / 支付宝 / 微信支付](https://buy.stripe.com/bIY4hl8HbalH3G8bIJ)
如果你喜欢这个应用,请[给这个项目⭐️](https://github.com/seerge/g-helper) 或者向别人推荐它!
@@ -20,8 +21,6 @@ G-helper兼容所有主流型号例如 ROG 幻14、幻15、幻16、幻13、
[高级用户设置](#高级用户设置)
### 通过paypal支持本项目[:euro: EUR](https://www.paypal.com/donate/?hosted_button_id=4HMSHS4EBQWTA)或者[💵 USD](https://www.paypal.com/donate/?hosted_button_id=SRM6QUX6ACXDY)
[![G-Helper Download](https://github.com/pasical/g-helper/assets/112304778/03f442b9-29e8-4e99-a095-8eaa533c995b)](https://github.com/seerge/g-helper/releases/latest/download/GHelper.zip)
_如果你在别的地方提到这个软件-请记得加上这个项目的网址。十分感谢。_