Compare commits

...

15 Commits

Author SHA1 Message Date
Serge
60be68b217 Font tweaks 2023-10-01 10:16:48 +02:00
Serge
4fe8953a48 Incomplete fan curve crash https://github.com/seerge/g-helper/issues/1396 2023-10-01 10:10:13 +02:00
Serge
7845f278f8 Option to bind G-Helper window to any macro key https://github.com/seerge/g-helper/issues/1389
Auto refresh tweaks https://github.com/seerge/g-helper/issues/1395
Anime Matrix tweaks
2023-09-30 23:08:34 +02:00
Serge
03944dc208 Merge pull request #1378 from seerge/l10n_main
New Crowdin updates
2023-09-27 19:53:22 +02:00
Serge
3b6caf1a52 New translations strings.resx (Turkish) 2023-09-27 19:52:47 +02:00
Serge
7ede6e3cb0 Merge pull request #1375 from seerge/l10n_main
New Crowdin updates
2023-09-27 18:40:30 +02:00
Serge
1a3ae449d6 New translations strings.resx (Turkish) 2023-09-27 15:03:01 +02:00
Serge
78a384d760 Merge pull request #1365 from seerge/l10n_main
New Crowdin updates
2023-09-26 15:27:06 +02:00
Serge
26828f5c93 New translations strings.resx (Hungarian) 2023-09-26 13:25:15 +02:00
Serge
594bf061e1 New translations strings.resx (Hungarian) 2023-09-26 11:36:26 +02:00
Serge
aa32942c92 Merge pull request #1362 from IceStormNG/asus-mouse-support
Support for ROG Strix Impact II (P506)
2023-09-25 15:13:44 +02:00
IceStormNG
4a3108a5e0 Corrected a comment. The mouse has 3 zones. 2023-09-25 14:35:09 +02:00
IceStormNG
82f5afa278 Only show battery percentage when the mouse has a battery. 2023-09-25 14:31:23 +02:00
IceStormNG
cd95802912 Support for Strix Impact II (P506) 2023-09-25 14:30:47 +02:00
Serge
0fed74e069 M16 Fan fix for older BIOS only 2023-09-24 12:23:31 +02:00
17 changed files with 552 additions and 270 deletions

View File

@@ -350,6 +350,8 @@ namespace GHelper.AnimeMatrix
int matrixZoom = AppConfig.Get("matrix_zoom", 100); int matrixZoom = AppConfig.Get("matrix_zoom", 100);
int matrixSpeed = AppConfig.Get("matrix_speed", 50); int matrixSpeed = AppConfig.Get("matrix_speed", 50);
MatrixRotation rotation = (MatrixRotation)AppConfig.Get("matrix_rotation", 0);
InterpolationMode matrixQuality = (InterpolationMode)AppConfig.Get("matrix_quality", 0); InterpolationMode matrixQuality = (InterpolationMode)AppConfig.Get("matrix_quality", 0);
@@ -364,7 +366,12 @@ namespace GHelper.AnimeMatrix
for (int i = 0; i < frameCount; i++) for (int i = 0; i < frameCount; i++)
{ {
image.SelectActiveFrame(dimension, i); image.SelectActiveFrame(dimension, i);
device.GenerateFrame(image, matrixZoom, matrixX, matrixY, matrixQuality);
if (rotation == MatrixRotation.Planar)
device.GenerateFrame(image, matrixZoom, matrixX, matrixY, matrixQuality);
else
device.GenerateFrameDiagonal(image, matrixZoom, matrixX, matrixY, matrixQuality);
device.AddFrame(); device.AddFrame();
} }
@@ -377,7 +384,11 @@ namespace GHelper.AnimeMatrix
} }
else else
{ {
device.GenerateFrame(image, matrixZoom, matrixX, matrixY, matrixQuality); if (rotation == MatrixRotation.Planar)
device.GenerateFrame(image, matrixZoom, matrixX, matrixY, matrixQuality);
else
device.GenerateFrameDiagonal(image, matrixZoom, matrixX, matrixY, matrixQuality);
device.Present(); device.Present();
} }

View File

@@ -2,7 +2,6 @@
using GHelper.AnimeMatrix.Communication; using GHelper.AnimeMatrix.Communication;
using System.Drawing.Drawing2D; using System.Drawing.Drawing2D;
using System.Drawing.Imaging;
using System.Drawing.Text; using System.Drawing.Text;
using System.Management; using System.Management;
using System.Text; using System.Text;
@@ -51,6 +50,12 @@ namespace Starlight.AnimeMatrix
} }
} }
public enum MatrixRotation
{
Planar,
Diagonal
}
internal class AnimeMatrixPacket : Packet internal class AnimeMatrixPacket : Packet
{ {
public AnimeMatrixPacket(byte[] command) public AnimeMatrixPacket(byte[] command)
@@ -90,7 +95,7 @@ namespace Starlight.AnimeMatrix
public int MaxColumns = 34; public int MaxColumns = 34;
public int LedStart = 0; public int LedStart = 0;
public int TextShift = 8; public int FullRows = 11;
private int frameIndex = 0; private int frameIndex = 0;
@@ -114,7 +119,7 @@ namespace Starlight.AnimeMatrix
UpdatePageLength = 410; UpdatePageLength = 410;
TextShift = 11; FullRows = 5;
LedStart = 1; LedStart = 1;
} }
@@ -128,19 +133,11 @@ namespace Starlight.AnimeMatrix
LedCount = 1711; LedCount = 1711;
UpdatePageLength = 630; UpdatePageLength = 630;
TextShift = 10; FullRows = 9;
} }
_displayBuffer = new byte[LedCount]; _displayBuffer = new byte[LedCount];
/*
for (int i = 0; i < MaxRows; i++)
{
_model = AnimeType.GA401;
Logger.WriteLine(FirstX(i) + " " + Pitch(i));
}
*/
LoadMFont(); LoadMFont();
} }
@@ -298,6 +295,17 @@ namespace Starlight.AnimeMatrix
SetLedLinear(RowToLinearAddress(y) - FirstX(y) + x, value); SetLedLinear(RowToLinearAddress(y) - FirstX(y) + x, value);
} }
public void SetLedDiagonal(int x, int y, byte color, int deltaX = 0, int deltaY = 0)
{
x += deltaX;
y -= deltaY;
int plX = (x - y) / 2;
int plY = x + y;
SetLedPlanar(plX, plY, color);
}
public void WakeUp() public void WakeUp()
{ {
Set(Packet<AnimeMatrixPacket>(Encoding.ASCII.GetBytes("ASUS Tech.Inc."))); Set(Packet<AnimeMatrixPacket>(Encoding.ASCII.GetBytes("ASUS Tech.Inc.")));
@@ -391,25 +399,43 @@ namespace Starlight.AnimeMatrix
} }
public void PresentClock() private void SetBitmapDiagonal(Bitmap bmp, int deltaX = 0, int deltaY = 0)
{ {
string second = (DateTime.Now.Second % 2 == 0) ? ":" : " "; for (int y = 0; y < bmp.Height; y++)
string time = DateTime.Now.ToString("HH" + second + "mm"); {
for (int x = 0; x < bmp.Width; x++)
Clear(); {
TextDiagonal(time, 15, 12, TextShift + 11); var pixel = bmp.GetPixel(x, y);
TextDiagonal(DateTime.Now.ToString("yy'. 'MM'. 'dd"), 11.5F, 3, TextShift); var color = (pixel.R + pixel.G + pixel.B) / 3;
Present(); if (color > 20)
SetLedDiagonal(x, y, (byte)color, deltaX + (FullRows / 2) + 1, deltaY - (FullRows / 2) - 1);
}
}
} }
public void TextDiagonal(string text, float fontSize = 10, int deltaX = 0, int deltaY = 10) private void SetBitmapLinear(Bitmap bmp)
{
for (int y = 0; y < bmp.Height; y++)
{
for (int x = 0; x < bmp.Width; x++)
if (x % 2 == y % 2)
{
var pixel = bmp.GetPixel(x, y);
var color = (pixel.R + pixel.G + pixel.B) / 3;
if (color > 20)
SetLedPlanar(x / 2, y, (byte)color);
}
}
}
public void Text(string text, float fontSize = 10, int x = 0, int y = 0)
{ {
int maxX = (int)Math.Sqrt(MaxRows * MaxRows + MaxColumns * MaxColumns); int width = MaxRows - FullRows;
int textHeight; int height = MaxRows - FullRows;
int textHeight, textWidth;
using (Bitmap bmp = new Bitmap(maxX, MaxRows)) using (Bitmap bmp = new Bitmap(width, height))
{ {
using (Graphics g = Graphics.FromImage(bmp)) using (Graphics g = Graphics.FromImage(bmp))
{ {
@@ -421,59 +447,29 @@ namespace Starlight.AnimeMatrix
{ {
SizeF textSize = g.MeasureString(text, font); SizeF textSize = g.MeasureString(text, font);
textHeight = (int)textSize.Height; textHeight = (int)textSize.Height;
g.DrawString(text, font, Brushes.White, 0, 0); textWidth = (int)textSize.Width;
g.DrawString(text, font, Brushes.White, x, height - y);
} }
} }
for (int y = 0; y < bmp.Height; y++) SetBitmapDiagonal(bmp, (width - textWidth), height);
{
for (int x = 0; x < bmp.Width; x++)
{
var pixel = bmp.GetPixel(x, y);
var color = (pixel.R + pixel.G + pixel.B) / 3;
if (color > 100) SetLedDiagonal(x, y, (byte)color, deltaX, deltaY);
}
}
} }
} }
public void PresentClock()
public void PresentText(string text1, string text2 = "")
{ {
using (Bitmap bmp = new Bitmap(MaxColumns * 3, MaxRows)) string second = (DateTime.Now.Second % 2 == 0) ? ":" : " ";
{ string time = DateTime.Now.ToString("HH" + second + "mm");
using (Graphics g = Graphics.FromImage(bmp))
{
g.CompositingQuality = CompositingQuality.HighQuality;
g.SmoothingMode = SmoothingMode.AntiAlias;
g.TextRenderingHint = TextRenderingHint.SingleBitPerPixel;
using (Font font = new Font("Consolas", 22F, FontStyle.Regular, GraphicsUnit.Pixel)) Clear();
{ Text(time, 15, 0, 25);
SizeF textSize = g.MeasureString(text1, font); Text(DateTime.Now.ToString("yy'. 'MM'. 'dd"), 11.5F, 0, 14);
g.DrawString(text1, font, Brushes.White, (MaxColumns * 3 - textSize.Width) + 3, -4); Present();
}
if (text2.Length > 0)
using (Font font = new Font("Consolas", 18F, GraphicsUnit.Pixel))
{
SizeF textSize = g.MeasureString(text2, font);
g.DrawString(text2, font, Brushes.White, (MaxColumns * 3 - textSize.Width) + 1, 25);
}
}
bmp.Save("test.bmp", ImageFormat.Bmp);
GenerateFrame(bmp);
Present();
}
} }
public void GenerateFrame(Image image, float zoom = 100, int panX = 0, int panY = 0, InterpolationMode quality = InterpolationMode.Default) public void GenerateFrame(Image image, float zoom = 100, int panX = 0, int panY = 0, InterpolationMode quality = InterpolationMode.Default)
{ {
int width = MaxColumns / 2 * 6; int width = MaxColumns / 2 * 6;
int height = MaxRows; int height = MaxRows;
@@ -498,29 +494,37 @@ namespace Starlight.AnimeMatrix
} }
for (int y = 0; y < bmp.Height; y++) Clear();
{ SetBitmapLinear(bmp);
for (int x = 0; x < bmp.Width; x++)
if (x % 2 == y % 2)
{
var pixel = bmp.GetPixel(x, y);
var color = (pixel.R + pixel.G + pixel.B) / 3;
if (color < 10) color = 0;
SetLedPlanar(x / 2, y, (byte)color);
}
}
} }
} }
public void GenerateFrameDiagonal(Image image, float zoom = 100, int panX = 0, int panY = 0, InterpolationMode quality = InterpolationMode.Default)
public void SetLedDiagonal(int x, int y, byte color, int deltaX = 0, int deltaY = 10)
{ {
x += deltaX; int width = MaxRows - FullRows;
y -= deltaY; int height = MaxRows - FullRows*2;
float scale;
int plX = (x - y) / 2; using (Bitmap bmp = new Bitmap(width, height))
int plY = x + y; {
SetLedPlanar(plX, plY, color); scale = Math.Min((float)width / (float)image.Width, (float)height / (float)image.Height) * zoom / 100;
using (var graph = Graphics.FromImage(bmp))
{
var scaleWidth = (float)(image.Width * scale);
var scaleHeight = (float)(image.Height * scale);
graph.InterpolationMode = quality;
graph.CompositingQuality = CompositingQuality.HighQuality;
graph.SmoothingMode = SmoothingMode.AntiAlias;
graph.DrawImage(image, width - scaleWidth, height - scaleHeight, scaleWidth, scaleHeight);
}
Clear();
SetBitmapDiagonal(bmp, -panX, height + panY);
}
} }

View File

@@ -7,7 +7,9 @@ public static class AppConfig
{ {
private static string configFile; private static string configFile;
private static string? _model; private static string? _model;
private static string? _bios;
private static Dictionary<string, object> config = new Dictionary<string, object>(); private static Dictionary<string, object> config = new Dictionary<string, object>();
@@ -69,6 +71,34 @@ public static class AppConfig
return _model; return _model;
} }
public static (string, string) GetBiosAndModel()
{
if (_bios is not null && _model is not null) return (_bios, _model);
using (ManagementObjectSearcher objSearcher = new ManagementObjectSearcher(@"SELECT * FROM Win32_BIOS"))
{
using (ManagementObjectCollection objCollection = objSearcher.Get())
{
foreach (ManagementObject obj in objCollection)
if (obj["SMBIOSBIOSVersion"] is not null)
{
string[] results = obj["SMBIOSBIOSVersion"].ToString().Split(".");
if (results.Length > 1)
{
_model = results[0];
_bios = results[1];
}
else
{
_model = obj["SMBIOSBIOSVersion"].ToString();
}
}
return (_bios, _model);
}
}
}
public static string GetModelShort() public static string GetModelShort()
{ {
string model = GetModel(); string model = GetModel();
@@ -363,12 +393,21 @@ public static class AppConfig
public static bool IsFanScale() public static bool IsFanScale()
{ {
return ContainsModel("GU604"); if (!ContainsModel("GU604")) return false;
try
{
var (bios, model) = GetBiosAndModel();
return (Int32.Parse(bios) < 312);
} catch
{
return false;
}
} }
public static bool IsFanRequired() public static bool IsFanRequired()
{ {
return ContainsModel("GA402X") || ContainsModel("G513") || ContainsModel("G713R"); return ContainsModel("GA402X") || ContainsModel("G513") || ContainsModel("G713R") || ContainsModel("G713P");
} }
public static bool IsPowerRequired() public static bool IsPowerRequired()

View File

@@ -287,7 +287,7 @@ public class AsusACPI
} }
public int DeviceSet(uint DeviceID, int Status, string logName) public int DeviceSet(uint DeviceID, int Status, string? logName)
{ {
byte[] args = new byte[8]; byte[] args = new byte[8];
BitConverter.GetBytes((uint)DeviceID).CopyTo(args, 0); BitConverter.GetBytes((uint)DeviceID).CopyTo(args, 0);
@@ -296,12 +296,14 @@ public class AsusACPI
byte[] status = CallMethod(DEVS, args); byte[] status = CallMethod(DEVS, args);
int result = BitConverter.ToInt32(status, 0); int result = BitConverter.ToInt32(status, 0);
Logger.WriteLine(logName + " = " + Status + " : " + (result == 1 ? "OK" : result)); if (logName is not null)
Logger.WriteLine(logName + " = " + Status + " : " + (result == 1 ? "OK" : result));
return result; return result;
} }
public int DeviceSet(uint DeviceID, byte[] Params, string logName) public int DeviceSet(uint DeviceID, byte[] Params, string? logName)
{ {
byte[] args = new byte[4 + Params.Length]; byte[] args = new byte[4 + Params.Length];
BitConverter.GetBytes((uint)DeviceID).CopyTo(args, 0); BitConverter.GetBytes((uint)DeviceID).CopyTo(args, 0);
@@ -310,7 +312,9 @@ public class AsusACPI
byte[] status = CallMethod(DEVS, args); byte[] status = CallMethod(DEVS, args);
int result = BitConverter.ToInt32(status, 0); int result = BitConverter.ToInt32(status, 0);
Logger.WriteLine(logName + " = " + BitConverter.ToString(Params) + " : " + (result == 1 ? "OK" : result)); if (logName is not null)
Logger.WriteLine(logName + " = " + BitConverter.ToString(Params) + " : " + (result == 1 ? "OK" : result));
return BitConverter.ToInt32(status, 0); return BitConverter.ToInt32(status, 0);
} }
@@ -376,6 +380,10 @@ public class AsusACPI
public int SetFanRange(AsusFan device, byte[] curve) public int SetFanRange(AsusFan device, byte[] curve)
{ {
if (curve.Length != 16) return -1;
if (curve.All(singleByte => singleByte == 0)) return -1;
byte min = (byte)(curve[8] * 255 / 100); byte min = (byte)(curve[8] * 255 / 100);
byte max = (byte)(curve[15] * 255 / 100); byte max = (byte)(curve[15] * 255 / 100);
byte[] range = { min, max}; byte[] range = { min, max};
@@ -390,6 +398,7 @@ public class AsusACPI
result = DeviceSet(DevsCPUFan, range, "FanRangeCPU"); result = DeviceSet(DevsCPUFan, range, "FanRangeCPU");
break; break;
} }
return result; return result;
} }
@@ -540,7 +549,7 @@ public class AsusACPI
DeviceSet(TUF_KB_BRIGHTNESS, param, "TUF Brightness"); DeviceSet(TUF_KB_BRIGHTNESS, param, "TUF Brightness");
} }
public void TUFKeyboardRGB(int mode, Color color, int speed) public void TUFKeyboardRGB(int mode, Color color, int speed, string? log = "TUF RGB")
{ {
byte[] setting = new byte[6]; byte[] setting = new byte[6];
@@ -552,8 +561,8 @@ public class AsusACPI
setting[4] = color.B; setting[4] = color.B;
setting[5] = (byte)speed; setting[5] = (byte)speed;
int result = DeviceSet(TUF_KB, setting, "TUF RGB"); int result = DeviceSet(TUF_KB, setting, log);
if (result != 1) DeviceSet(TUF_KB2, setting, "TUF RGB"); if (result != 1) DeviceSet(TUF_KB2, setting, log);
} }

View File

@@ -472,7 +472,7 @@ namespace GHelper
if (isTuf) if (isTuf)
{ {
Program.acpi.TUFKeyboardRGB(0, color, 0); Program.acpi.TUFKeyboardRGB(0, color, 0, null);
return; return;
} }
@@ -531,7 +531,7 @@ namespace GHelper
else else
{ {
Debug.WriteLine(color.ToString()); //Debug.WriteLine(color.ToString());
auraDevice.Write(AuraMessage(0, color, color, 0)); auraDevice.Write(AuraMessage(0, color, color, 0));
auraDevice.Write(MESSAGE_SET); auraDevice.Write(MESSAGE_SET);
} }

View File

@@ -162,7 +162,8 @@ namespace GHelper.Display
if (log) Logger.WriteLine(device.monitorDevicePath + " " + device.outputTechnology); if (log) Logger.WriteLine(device.monitorDevicePath + " " + device.outputTechnology);
AppConfig.Set("internal_display", device.monitorFriendlyDeviceName); AppConfig.Set("internal_display", device.monitorFriendlyDeviceName);
var names = device.monitorDevicePath.Split("#"); var names = device.monitorDevicePath.Split("#");
return names[1]; if (names.Length > 0) return names[1];
else return "";
} }
} }
} }

View File

@@ -16,25 +16,33 @@ namespace GHelper
const string EMPTY = "--------------"; const string EMPTY = "--------------";
Dictionary<string, string> customActions = new Dictionary<string, string>
{
{"", EMPTY},
{"mute", Properties.Strings.VolumeMute},
{"screenshot", Properties.Strings.PrintScreen},
{"play", Properties.Strings.PlayPause},
{"aura", Properties.Strings.ToggleAura},
{"performance", Properties.Strings.PerformanceMode},
{"screen", Properties.Strings.ToggleScreen},
{"miniled", Properties.Strings.ToggleMiniled},
{"fnlock", Properties.Strings.ToggleFnLock},
{"brightness_down", Properties.Strings.BrightnessDown},
{"brightness_up", Properties.Strings.BrightnessUp},
{"custom", Properties.Strings.Custom}
};
private void SetKeyCombo(ComboBox combo, TextBox txbox, string name) private void SetKeyCombo(ComboBox combo, TextBox txbox, string name)
{ {
Dictionary<string, string> customActions = new Dictionary<string, string>
{
{"", EMPTY},
{"mute", Properties.Strings.VolumeMute},
{"screenshot", Properties.Strings.PrintScreen},
{"play", Properties.Strings.PlayPause},
{"aura", Properties.Strings.ToggleAura},
{"performance", Properties.Strings.PerformanceMode},
{"screen", Properties.Strings.ToggleScreen},
{"miniled", Properties.Strings.ToggleMiniled},
{"fnlock", Properties.Strings.ToggleFnLock},
{"brightness_down", Properties.Strings.BrightnessDown},
{"brightness_up", Properties.Strings.BrightnessUp},
{"ghelper", Properties.Strings.OpenGHelper},
{"custom", Properties.Strings.Custom}
};
if (AppConfig.IsDUO())
{
customActions.Add("screenpad_down", Properties.Strings.ScreenPadDown);
customActions.Add("screenpad_up", Properties.Strings.ScreenPadUp);
}
switch (name) switch (name)
{ {
case "m1": case "m1":
@@ -48,6 +56,7 @@ namespace GHelper
break; break;
case "m4": case "m4":
customActions[""] = Properties.Strings.OpenGHelper; customActions[""] = Properties.Strings.OpenGHelper;
customActions.Remove("ghelper");
break; break;
case "fnf4": case "fnf4":
customActions[""] = Properties.Strings.ToggleAura; customActions[""] = Properties.Strings.ToggleAura;
@@ -59,7 +68,6 @@ namespace GHelper
break; break;
case "fne": case "fne":
customActions[""] = "Calculator"; customActions[""] = "Calculator";
customActions["ghelper"] = Properties.Strings.OpenGHelper;
break; break;
case "paddle": case "paddle":
customActions[""] = EMPTY; customActions[""] = EMPTY;
@@ -131,12 +139,6 @@ namespace GHelper
Text = Properties.Strings.ExtraSettings; Text = Properties.Strings.ExtraSettings;
if (AppConfig.IsDUO())
{
customActions.Add("screenpad_down", Properties.Strings.ScreenPadDown);
customActions.Add("screenpad_up", Properties.Strings.ScreenPadUp);
}
if (AppConfig.IsARCNM()) if (AppConfig.IsARCNM())
{ {
labelM3.Text = "FN+F6"; labelM3.Text = "FN+F6";

View File

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

View File

@@ -80,7 +80,7 @@ public static class HardwareControl
} }
catch (Exception ex) catch (Exception ex)
{ {
Logger.WriteLine("Discharge Reading: " + ex.Message); Debug.WriteLine("Discharge Reading: " + ex.Message);
} }
} }
@@ -102,7 +102,7 @@ public static class HardwareControl
} }
catch (Exception ex) catch (Exception ex)
{ {
Logger.WriteLine("Full Charge Reading: " + ex.Message); Debug.WriteLine("Full Charge Reading: " + ex.Message);
} }
} }
@@ -125,7 +125,7 @@ public static class HardwareControl
} }
catch (Exception ex) catch (Exception ex)
{ {
Logger.WriteLine("Design Capacity Reading: " + ex.Message); Debug.WriteLine("Design Capacity Reading: " + ex.Message);
} }
} }

46
app/Matrix.Designer.cs generated
View File

@@ -41,6 +41,9 @@
panelZoom = new Panel(); panelZoom = new Panel();
labelZoom = new Label(); labelZoom = new Label();
labelZoomTitle = new Label(); labelZoomTitle = new Label();
panelRotation = new Panel();
comboRotation = new UI.RComboBox();
labelRotation = new Label();
((System.ComponentModel.ISupportInitialize)pictureMatrix).BeginInit(); ((System.ComponentModel.ISupportInitialize)pictureMatrix).BeginInit();
((System.ComponentModel.ISupportInitialize)trackZoom).BeginInit(); ((System.ComponentModel.ISupportInitialize)trackZoom).BeginInit();
panelPicture.SuspendLayout(); panelPicture.SuspendLayout();
@@ -48,6 +51,7 @@
panelButtons.SuspendLayout(); panelButtons.SuspendLayout();
panelScaling.SuspendLayout(); panelScaling.SuspendLayout();
panelZoom.SuspendLayout(); panelZoom.SuspendLayout();
panelRotation.SuspendLayout();
SuspendLayout(); SuspendLayout();
// //
// pictureMatrix // pictureMatrix
@@ -106,6 +110,7 @@
// panelMain // panelMain
// //
panelMain.Controls.Add(panelButtons); panelMain.Controls.Add(panelButtons);
panelMain.Controls.Add(panelRotation);
panelMain.Controls.Add(panelScaling); panelMain.Controls.Add(panelScaling);
panelMain.Controls.Add(panelZoom); panelMain.Controls.Add(panelZoom);
panelMain.Controls.Add(panelPicture); panelMain.Controls.Add(panelPicture);
@@ -120,7 +125,7 @@
panelButtons.Controls.Add(buttonReset); panelButtons.Controls.Add(buttonReset);
panelButtons.Controls.Add(buttonPicture); panelButtons.Controls.Add(buttonPicture);
panelButtons.Dock = DockStyle.Top; panelButtons.Dock = DockStyle.Top;
panelButtons.Location = new Point(0, 642); panelButtons.Location = new Point(0, 720);
panelButtons.Name = "panelButtons"; panelButtons.Name = "panelButtons";
panelButtons.Size = new Size(834, 94); panelButtons.Size = new Size(834, 94);
panelButtons.TabIndex = 6; panelButtons.TabIndex = 6;
@@ -211,6 +216,40 @@
labelZoomTitle.TabIndex = 3; labelZoomTitle.TabIndex = 3;
labelZoomTitle.Text = "Zoom"; labelZoomTitle.Text = "Zoom";
// //
// panelRotation
//
panelRotation.Controls.Add(comboRotation);
panelRotation.Controls.Add(labelRotation);
panelRotation.Dock = DockStyle.Top;
panelRotation.Location = new Point(0, 642);
panelRotation.Name = "panelRotation";
panelRotation.Size = new Size(834, 78);
panelRotation.TabIndex = 8;
//
// comboRotation
//
comboRotation.BorderColor = Color.White;
comboRotation.ButtonColor = Color.FromArgb(255, 255, 255);
comboRotation.Font = new Font("Segoe UI", 9F, FontStyle.Regular, GraphicsUnit.Point);
comboRotation.FormattingEnabled = true;
comboRotation.ItemHeight = 32;
comboRotation.Items.AddRange(new object[] { "Straight", "Diagonal" });
comboRotation.Location = new Point(229, 17);
comboRotation.Margin = new Padding(4, 11, 4, 8);
comboRotation.Name = "comboRotation";
comboRotation.Size = new Size(322, 40);
comboRotation.TabIndex = 17;
//
// labelRotation
//
labelRotation.AutoSize = true;
labelRotation.Font = new Font("Segoe UI", 9F, FontStyle.Bold, GraphicsUnit.Point);
labelRotation.Location = new Point(16, 20);
labelRotation.Name = "labelRotation";
labelRotation.Size = new Size(190, 32);
labelRotation.TabIndex = 4;
labelRotation.Text = "Image Rotation";
//
// Matrix // Matrix
// //
AutoScaleDimensions = new SizeF(192F, 192F); AutoScaleDimensions = new SizeF(192F, 192F);
@@ -236,6 +275,8 @@
panelScaling.PerformLayout(); panelScaling.PerformLayout();
panelZoom.ResumeLayout(false); panelZoom.ResumeLayout(false);
panelZoom.PerformLayout(); panelZoom.PerformLayout();
panelRotation.ResumeLayout(false);
panelRotation.PerformLayout();
ResumeLayout(false); ResumeLayout(false);
} }
@@ -254,5 +295,8 @@
private Panel panelScaling; private Panel panelScaling;
private Label labelScaling; private Label labelScaling;
private UI.RComboBox comboScaling; private UI.RComboBox comboScaling;
private Panel panelRotation;
private UI.RComboBox comboRotation;
private Label labelRotation;
} }
} }

View File

@@ -45,11 +45,22 @@ namespace GHelper
comboScaling.SelectedIndex = AppConfig.Get("matrix_quality", 0); comboScaling.SelectedIndex = AppConfig.Get("matrix_quality", 0);
comboScaling.SelectedValueChanged += ComboScaling_SelectedValueChanged; comboScaling.SelectedValueChanged += ComboScaling_SelectedValueChanged;
comboRotation.DropDownStyle = ComboBoxStyle.DropDownList;
comboRotation.SelectedIndex = AppConfig.Get("matrix_rotation", 0);
comboRotation.SelectedValueChanged += ComboRotation_SelectedValueChanged; ;
uiScale = panelPicture.Width / matrixControl.device.MaxColumns / 3; uiScale = panelPicture.Width / matrixControl.device.MaxColumns / 3;
panelPicture.Height = (int)(matrixControl.device.MaxRows * uiScale); panelPicture.Height = (int)(matrixControl.device.MaxRows * uiScale);
} }
private void ComboRotation_SelectedValueChanged(object? sender, EventArgs e)
{
AppConfig.Set("matrix_rotation", comboRotation.SelectedIndex);
SetMatrixPicture(false);
}
private void ComboScaling_SelectedValueChanged(object? sender, EventArgs e) private void ComboScaling_SelectedValueChanged(object? sender, EventArgs e)
{ {
AppConfig.Set("matrix_quality", comboScaling.SelectedIndex); AppConfig.Set("matrix_quality", comboScaling.SelectedIndex);

View File

@@ -0,0 +1,177 @@
namespace GHelper.Peripherals.Mouse.Models
{
//P506
public class StrixImpactII : AsusMouse
{
public StrixImpactII() : base(0x0B05, 0x18E1, "mi_00", false)
{
}
public override int DPIProfileCount()
{
return 4;
}
public override string GetDisplayName()
{
return "ROG Strix Impact II";
}
public override PollingRate[] SupportedPollingrates()
{
return new PollingRate[] {
PollingRate.PR125Hz,
PollingRate.PR250Hz,
PollingRate.PR500Hz,
PollingRate.PR1000Hz
};
}
public override int ProfileCount()
{
return 3;
}
public override int MaxDPI()
{
return 6_200;
}
public override bool HasRGB()
{
return true;
}
public override bool HasAutoPowerOff()
{
return false;
}
public override bool HasAngleSnapping()
{
return true;
}
public override bool HasAngleTuning()
{
return false;
}
public override bool HasDebounceSetting()
{
return true;
}
public override bool HasLowBatteryWarning()
{
return false;
}
public override bool HasBattery()
{
return false;
}
public override bool HasDPIColors()
{
return false;
}
public override bool IsLightingModeSupported(LightingMode lightingMode)
{
return lightingMode == LightingMode.Static
|| lightingMode == LightingMode.Breathing
|| lightingMode == LightingMode.ColorCycle
|| lightingMode == LightingMode.React;
}
public override LightingZone[] SupportedLightingZones()
{
return new LightingZone[] { LightingZone.Logo, LightingZone.Scrollwheel, LightingZone.Underglow };
}
public override int DPIIncrements()
{
return 100;
}
public override bool CanChangeDPIProfile()
{
return true;
}
public override int MaxBrightness()
{
return 4;
}
protected override byte IndexForLightingMode(LightingMode lightingMode)
{
if (lightingMode == LightingMode.React)
{
return 0x03;
}
return ((byte)lightingMode);
}
protected override LightingMode LightingModeForIndex(byte lightingMode)
{
if (lightingMode == 0x03)
{
return LightingMode.React;
}
return base.LightingModeForIndex(lightingMode);
}
protected override byte[] GetReadLightingModePacket(LightingZone zone)
{
return new byte[] { 0x00, 0x12, 0x03, 0x00 };
}
protected LightingSetting? ParseLightingSetting(byte[] packet, LightingZone zone)
{
if (packet[1] != 0x12 || packet[2] != 0x03)
{
return null;
}
int offset = 5 + (((int)zone) * 5);
LightingSetting setting = new LightingSetting();
setting.LightingMode = LightingModeForIndex(packet[offset + 0]);
setting.Brightness = packet[offset + 1];
setting.RGBColor = Color.FromArgb(packet[offset + 2], packet[offset + 3], packet[offset + 4]);
return setting;
}
public override void ReadLightingSetting()
{
if (!HasRGB())
{
return;
}
//Mouse sends all lighting zones in one response
//00 12 03 00 00 [00 04 ff 00 80] [00 04 00 ff ff] [00 04 ff ff ff] 00 00 00 00 00 00 00 00 00 00 00 00 00 0
byte[]? response = WriteForResponse(GetReadLightingModePacket(LightingZone.All));
if (response is null) return;
LightingZone[] lz = SupportedLightingZones();
for (int i = 0; i < lz.Length; ++i)
{
LightingSetting? ls = ParseLightingSetting(response, lz[i]);
if (ls is null)
{
Logger.WriteLine(GetDisplayName() + ": Failed to read RGB Setting for Zone " + lz[i].ToString());
continue;
}
Logger.WriteLine(GetDisplayName() + ": Read RGB Setting for Zone " + lz[i].ToString() + ": " + ls.ToString());
LightingSetting[i] = ls;
}
}
}
}

View File

@@ -204,6 +204,7 @@ namespace GHelper.Peripherals
DetectMouse(new KerisWirelssAimpointWired()); DetectMouse(new KerisWirelssAimpointWired());
DetectMouse(new PugioII()); DetectMouse(new PugioII());
DetectMouse(new PugioIIWired()); DetectMouse(new PugioIIWired());
DetectMouse(new StrixImpactII());
} }
public static void DetectMouse(AsusMouse am) public static void DetectMouse(AsusMouse am)

View File

@@ -118,7 +118,7 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="Acceleration" xml:space="preserve"> <data name="Acceleration" xml:space="preserve">
<value>Acceleration</value> <value>Gyorsítás</value>
</data> </data>
<data name="ACPIError" xml:space="preserve"> <data name="ACPIError" xml:space="preserve">
<value>Nem sikerült csatlakozni az ASUS ACPI-hez, az alkalmazás nem működik enélkül. Próbáld meg telepíteni az ASUS rendszervezérlő interfész-t</value> <value>Nem sikerült csatlakozni az ASUS ACPI-hez, az alkalmazás nem működik enélkül. Próbáld meg telepíteni az ASUS rendszervezérlő interfész-t</value>
@@ -166,28 +166,28 @@
<value>Asus szolgáltatások futnak</value> <value>Asus szolgáltatások futnak</value>
</data> </data>
<data name="AuraBatteryState" xml:space="preserve"> <data name="AuraBatteryState" xml:space="preserve">
<value>Battery State</value> <value>Akkuállapot</value>
</data> </data>
<data name="AuraBreathe" xml:space="preserve"> <data name="AuraBreathe" xml:space="preserve">
<value>Lélegző</value> <value>Lélegző</value>
</data> </data>
<data name="AuraClockwise" xml:space="preserve"> <data name="AuraClockwise" xml:space="preserve">
<value>Clockwise</value> <value>Jobbra forog</value>
</data> </data>
<data name="AuraColorCycle" xml:space="preserve"> <data name="AuraColorCycle" xml:space="preserve">
<value>Színváltás</value> <value>Színváltás</value>
</data> </data>
<data name="AuraComet" xml:space="preserve"> <data name="AuraComet" xml:space="preserve">
<value>Comet</value> <value>Üstökös</value>
</data> </data>
<data name="AuraCounterClockwise" xml:space="preserve"> <data name="AuraCounterClockwise" xml:space="preserve">
<value>Counterclockwise</value> <value>Balra forog</value>
</data> </data>
<data name="AuraFast" xml:space="preserve"> <data name="AuraFast" xml:space="preserve">
<value>Gyors</value> <value>Gyors</value>
</data> </data>
<data name="AuraLightingMode" xml:space="preserve"> <data name="AuraLightingMode" xml:space="preserve">
<value>Lighting Mode</value> <value>Világítás típusa</value>
</data> </data>
<data name="AuraNormal" xml:space="preserve"> <data name="AuraNormal" xml:space="preserve">
<value>Normál</value> <value>Normál</value>
@@ -196,10 +196,10 @@
<value>Szivárvány</value> <value>Szivárvány</value>
</data> </data>
<data name="AuraRandomColor" xml:space="preserve"> <data name="AuraRandomColor" xml:space="preserve">
<value>Random</value> <value>Véletlen</value>
</data> </data>
<data name="AuraReact" xml:space="preserve"> <data name="AuraReact" xml:space="preserve">
<value>React</value> <value>Reagál</value>
</data> </data>
<data name="AuraSlow" xml:space="preserve"> <data name="AuraSlow" xml:space="preserve">
<value>Lassú</value> <value>Lassú</value>
@@ -211,16 +211,16 @@
<value>Stroboszkóp</value> <value>Stroboszkóp</value>
</data> </data>
<data name="AuraZoneAll" xml:space="preserve"> <data name="AuraZoneAll" xml:space="preserve">
<value>All</value> <value>Mindegyik</value>
</data> </data>
<data name="AuraZoneDock" xml:space="preserve"> <data name="AuraZoneDock" xml:space="preserve">
<value>Dock</value> <value>Dokk</value>
</data> </data>
<data name="AuraZoneLogo" xml:space="preserve"> <data name="AuraZoneLogo" xml:space="preserve">
<value>Logo</value> <value>Logó</value>
</data> </data>
<data name="AuraZoneScroll" xml:space="preserve"> <data name="AuraZoneScroll" xml:space="preserve">
<value>Scrollwheel</value> <value>Görgetés</value>
</data> </data>
<data name="AuraZoneUnderglow" xml:space="preserve"> <data name="AuraZoneUnderglow" xml:space="preserve">
<value>Underglow</value> <value>Underglow</value>
@@ -238,19 +238,19 @@
<value>Ébren</value> <value>Ébren</value>
</data> </data>
<data name="BacklightTimeout" xml:space="preserve"> <data name="BacklightTimeout" xml:space="preserve">
<value>Timeout plugged / on battery (0 - ON)</value> <value>Késleltetés töltés / akku módban (0 - BE)</value>
</data> </data>
<data name="Balanced" xml:space="preserve"> <data name="Balanced" xml:space="preserve">
<value>Teljesítmény</value> <value>Teljesítmény</value>
</data> </data>
<data name="BatteryCharge" xml:space="preserve"> <data name="BatteryCharge" xml:space="preserve">
<value>Charge</value> <value>Töltés</value>
</data> </data>
<data name="BatteryChargeLimit" xml:space="preserve"> <data name="BatteryChargeLimit" xml:space="preserve">
<value>Töltési korlát</value> <value>Töltési korlát</value>
</data> </data>
<data name="BatteryHealth" xml:space="preserve"> <data name="BatteryHealth" xml:space="preserve">
<value>Battery Health</value> <value>Akku állapot</value>
</data> </data>
<data name="BiosAndDriverUpdates" xml:space="preserve"> <data name="BiosAndDriverUpdates" xml:space="preserve">
<value>BIOS és illesztőprogram frissítések</value> <value>BIOS és illesztőprogram frissítések</value>
@@ -259,7 +259,7 @@
<value>Rendszerbetöltés</value> <value>Rendszerbetöltés</value>
</data> </data>
<data name="BootSound" xml:space="preserve"> <data name="BootSound" xml:space="preserve">
<value>Boot Sound</value> <value>Rendszerindítási hang</value>
</data> </data>
<data name="Brightness" xml:space="preserve"> <data name="Brightness" xml:space="preserve">
<value>Fényerő</value> <value>Fényerő</value>
@@ -271,10 +271,10 @@
<value>Fényerő növelése</value> <value>Fényerő növelése</value>
</data> </data>
<data name="Calibrate" xml:space="preserve"> <data name="Calibrate" xml:space="preserve">
<value>Calibrate</value> <value>Kalibrálás</value>
</data> </data>
<data name="Charging" xml:space="preserve"> <data name="Charging" xml:space="preserve">
<value>Charging</value> <value>Töltés</value>
</data> </data>
<data name="Color" xml:space="preserve"> <data name="Color" xml:space="preserve">
<value>Szín</value> <value>Szín</value>
@@ -286,7 +286,7 @@
<value>Egyéni</value> <value>Egyéni</value>
</data> </data>
<data name="Deceleration" xml:space="preserve"> <data name="Deceleration" xml:space="preserve">
<value>Deceleration</value> <value>Lassítás</value>
</data> </data>
<data name="Default" xml:space="preserve"> <data name="Default" xml:space="preserve">
<value>Alapért.</value> <value>Alapért.</value>
@@ -298,7 +298,7 @@
<value>Merülés</value> <value>Merülés</value>
</data> </data>
<data name="DownloadUpdate" xml:space="preserve"> <data name="DownloadUpdate" xml:space="preserve">
<value>Download</value> <value>Letöltés</value>
</data> </data>
<data name="DriverAndSoftware" xml:space="preserve"> <data name="DriverAndSoftware" xml:space="preserve">
<value>Illesztőprogramok és alkalmazások</value> <value>Illesztőprogramok és alkalmazások</value>
@@ -318,7 +318,7 @@ Do you still want to continue?</value>
<value>NVIDIA kijelzőmód nincs Optimus-ra állítva</value> <value>NVIDIA kijelzőmód nincs Optimus-ra állítva</value>
</data> </data>
<data name="EnergySettings" xml:space="preserve"> <data name="EnergySettings" xml:space="preserve">
<value>Energy Settings</value> <value>Energia beállítások</value>
</data> </data>
<data name="Extra" xml:space="preserve"> <data name="Extra" xml:space="preserve">
<value>Extra</value> <value>Extra</value>
@@ -354,7 +354,7 @@ Do you still want to continue?</value>
<value>Venti + energia</value> <value>Venti + energia</value>
</data> </data>
<data name="FnLock" xml:space="preserve"> <data name="FnLock" xml:space="preserve">
<value>Process Fn+F hotkeys without Fn</value> <value>Fn + F gyorsgombok feldolgozása Fn nélkül</value>
</data> </data>
<data name="GPUBoost" xml:space="preserve"> <data name="GPUBoost" xml:space="preserve">
<value>Dinamikus gyorsítás</value> <value>Dinamikus gyorsítás</value>
@@ -387,10 +387,10 @@ Do you still want to continue?</value>
<value>Célhőmérséklet</value> <value>Célhőmérséklet</value>
</data> </data>
<data name="HibernateAfter" xml:space="preserve"> <data name="HibernateAfter" xml:space="preserve">
<value>Minutes till Hibernation in sleep on battery (0 - OFF)</value> <value>Akku módban az alvó módból Hibernálásig eltelt idő (0 - KI)</value>
</data> </data>
<data name="High" xml:space="preserve"> <data name="High" xml:space="preserve">
<value>High</value> <value>Magas</value>
</data> </data>
<data name="KeyBindings" xml:space="preserve"> <data name="KeyBindings" xml:space="preserve">
<value>Gyorsbillentyűk</value> <value>Gyorsbillentyűk</value>
@@ -399,7 +399,7 @@ Do you still want to continue?</value>
<value>Billentyűzet</value> <value>Billentyűzet</value>
</data> </data>
<data name="KillGpuApps" xml:space="preserve"> <data name="KillGpuApps" xml:space="preserve">
<value>Stop all apps using GPU when switching to Eco</value> <value>Eco módba lépéskor minden alkalmazást leállít, ami a GPU-t használja</value>
</data> </data>
<data name="LaptopBacklight" xml:space="preserve"> <data name="LaptopBacklight" xml:space="preserve">
<value>Laptop háttérvilágítás</value> <value>Laptop háttérvilágítás</value>
@@ -417,19 +417,19 @@ Do you still want to continue?</value>
<value>Fénysáv</value> <value>Fénysáv</value>
</data> </data>
<data name="Lighting" xml:space="preserve"> <data name="Lighting" xml:space="preserve">
<value>Lighting</value> <value>Világítás</value>
</data> </data>
<data name="Logo" xml:space="preserve"> <data name="Logo" xml:space="preserve">
<value>Logó</value> <value>Logó</value>
</data> </data>
<data name="Low" xml:space="preserve"> <data name="Low" xml:space="preserve">
<value>Low</value> <value>Alacsony</value>
</data> </data>
<data name="MatrixAudio" xml:space="preserve"> <data name="MatrixAudio" xml:space="preserve">
<value>Hang vizualizáció</value> <value>Hang vizualizáció</value>
</data> </data>
<data name="MatrixBanner" xml:space="preserve"> <data name="MatrixBanner" xml:space="preserve">
<value>Binary Banner</value> <value>Bináris logó</value>
</data> </data>
<data name="MatrixBright" xml:space="preserve"> <data name="MatrixBright" xml:space="preserve">
<value>Fényes</value> <value>Fényes</value>
@@ -459,19 +459,19 @@ Do you still want to continue?</value>
<value>60Hz-s frissítési gyakoriság, hogy spóroljon az akkuval</value> <value>60Hz-s frissítési gyakoriság, hogy spóroljon az akkuval</value>
</data> </data>
<data name="Minute" xml:space="preserve"> <data name="Minute" xml:space="preserve">
<value>Minute</value> <value>perc</value>
</data> </data>
<data name="Minutes" xml:space="preserve"> <data name="Minutes" xml:space="preserve">
<value>Minutes</value> <value>perc</value>
</data> </data>
<data name="MouseAngleSnapping" xml:space="preserve"> <data name="MouseAngleSnapping" xml:space="preserve">
<value>Angle Snapping</value> <value>Angle Snapping</value>
</data> </data>
<data name="MouseAutoPowerOff" xml:space="preserve"> <data name="MouseAutoPowerOff" xml:space="preserve">
<value>Auto Power Off After</value> <value>Automatikus kikapcsolás idő múlva</value>
</data> </data>
<data name="MouseButtonResponse" xml:space="preserve"> <data name="MouseButtonResponse" xml:space="preserve">
<value>Button Response</value> <value>Gomb funkciója</value>
</data> </data>
<data name="MouseLiftOffDistance" xml:space="preserve"> <data name="MouseLiftOffDistance" xml:space="preserve">
<value>Lift Off Distance</value> <value>Lift Off Distance</value>
@@ -480,10 +480,10 @@ Do you still want to continue?</value>
<value>Low Battery Warning at</value> <value>Low Battery Warning at</value>
</data> </data>
<data name="MousePerformance" xml:space="preserve"> <data name="MousePerformance" xml:space="preserve">
<value>Performance</value> <value>Teljesítmény</value>
</data> </data>
<data name="MouseSynchronize" xml:space="preserve"> <data name="MouseSynchronize" xml:space="preserve">
<value>Synchronize with mouse</value> <value>Szinkronizálás egérrel</value>
</data> </data>
<data name="Multizone" xml:space="preserve"> <data name="Multizone" xml:space="preserve">
<value>Többzónás</value> <value>Többzónás</value>
@@ -492,7 +492,7 @@ Do you still want to continue?</value>
<value>Mikrofon némítása</value> <value>Mikrofon némítása</value>
</data> </data>
<data name="Never" xml:space="preserve"> <data name="Never" xml:space="preserve">
<value>Never</value> <value>Soha</value>
</data> </data>
<data name="NewUpdates" xml:space="preserve"> <data name="NewUpdates" xml:space="preserve">
<value>Új frissítés</value> <value>Új frissítés</value>
@@ -501,7 +501,7 @@ Do you still want to continue?</value>
<value>Nincs új frissítés</value> <value>Nincs új frissítés</value>
</data> </data>
<data name="NotConnected" xml:space="preserve"> <data name="NotConnected" xml:space="preserve">
<value>Not Connected</value> <value>Nincs csatlakoztatva</value>
</data> </data>
<data name="OpenGHelper" xml:space="preserve"> <data name="OpenGHelper" xml:space="preserve">
<value>G-Helper ablak megnyitása</value> <value>G-Helper ablak megnyitása</value>
@@ -510,7 +510,7 @@ Do you still want to continue?</value>
<value>Optimalizált</value> <value>Optimalizált</value>
</data> </data>
<data name="OptimizedGPUTooltip" xml:space="preserve"> <data name="OptimizedGPUTooltip" xml:space="preserve">
<value>Akkus módban váltson Eco módra, töltés közben pedig Standard-ra</value> <value>Akkus módban váltson Eco módra, töltéskor pedig Standard-ra</value>
</data> </data>
<data name="OptimizedUSBC" xml:space="preserve"> <data name="OptimizedUSBC" xml:space="preserve">
<value>Optimalizált módban USB-C-s töltés közben tartsa letiltva a GPU-t</value> <value>Optimalizált módban USB-C-s töltés közben tartsa letiltva a GPU-t</value>
@@ -525,7 +525,7 @@ Do you still want to continue?</value>
<value>Üzemmód</value> <value>Üzemmód</value>
</data> </data>
<data name="Peripherals" xml:space="preserve"> <data name="Peripherals" xml:space="preserve">
<value>Peripherals</value> <value>Perifériák</value>
</data> </data>
<data name="PictureGif" xml:space="preserve"> <data name="PictureGif" xml:space="preserve">
<value>Kép / Gif</value> <value>Kép / Gif</value>
@@ -546,19 +546,19 @@ Do you still want to continue?</value>
<value>PrintScreen</value> <value>PrintScreen</value>
</data> </data>
<data name="Profile" xml:space="preserve"> <data name="Profile" xml:space="preserve">
<value>Profile</value> <value>Profil</value>
</data> </data>
<data name="Quit" xml:space="preserve"> <data name="Quit" xml:space="preserve">
<value>Bezárás</value> <value>Bezárás</value>
</data> </data>
<data name="RestartGPU" xml:space="preserve"> <data name="RestartGPU" xml:space="preserve">
<value>Something is using dGPU and preventing Eco mode. Let G-Helper try to restart dGPU in device manager? (Please proceed at your own risk)</value> <value>Valami használja még a dGPU-t, ezzel megakadályozva az Eco móda lépést. Próbálja meg a G-Helper újraindítani a dGPU-t az eszközkezelőben? (Kérjük, saját felelősségére folytassa)</value>
</data> </data>
<data name="RPM" xml:space="preserve"> <data name="RPM" xml:space="preserve">
<value>Fordulatszám</value> <value>Fordulatszám</value>
</data> </data>
<data name="RunOnStartup" xml:space="preserve"> <data name="RunOnStartup" xml:space="preserve">
<value>Futtatás rendszerindításkor</value> <value>Indítás a rendszerrel</value>
</data> </data>
<data name="ScreenPadDown" xml:space="preserve"> <data name="ScreenPadDown" xml:space="preserve">
<value>Screenpad Brightness Down</value> <value>Screenpad Brightness Down</value>
@@ -624,7 +624,7 @@ Do you still want to continue?</value>
<value>Akkus üzemmódban kikapcsol</value> <value>Akkus üzemmódban kikapcsol</value>
</data> </data>
<data name="UltimateGPUTooltip" xml:space="preserve"> <data name="UltimateGPUTooltip" xml:space="preserve">
<value>Routes laptop screen to dGPU, maximizing FPS</value> <value>A jobb FPS érdekében a laptop kijelzőt közvetlenül a GPU-n keresztül működteti</value>
</data> </data>
<data name="UltimateMode" xml:space="preserve"> <data name="UltimateMode" xml:space="preserve">
<value>Ultimate</value> <value>Ultimate</value>

View File

@@ -118,7 +118,7 @@
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="Acceleration" xml:space="preserve"> <data name="Acceleration" xml:space="preserve">
<value>Acceleration</value> <value>Hızlandırma</value>
</data> </data>
<data name="ACPIError" xml:space="preserve"> <data name="ACPIError" xml:space="preserve">
<value>ASUS ACPI'ye bağlanılamıyor. Uygulama o olmadan çalışamaz. Asus Sistem Kontrol Arayüzü'nü yüklemeyi deneyin.</value> <value>ASUS ACPI'ye bağlanılamıyor. Uygulama o olmadan çalışamaz. Asus Sistem Kontrol Arayüzü'nü yüklemeyi deneyin.</value>
@@ -151,7 +151,7 @@
<value>G-Helper zaten çalışıyor. Simge için görev çubuğunu kontrol edin.</value> <value>G-Helper zaten çalışıyor. Simge için görev çubuğunu kontrol edin.</value>
</data> </data>
<data name="Apply" xml:space="preserve"> <data name="Apply" xml:space="preserve">
<value>Apply</value> <value>Uygula</value>
</data> </data>
<data name="ApplyFanCurve" xml:space="preserve"> <data name="ApplyFanCurve" xml:space="preserve">
<value>Özel Fan Eğrisini Uygula</value> <value>Özel Fan Eğrisini Uygula</value>
@@ -163,31 +163,31 @@
<value>Windows Güç Modunu otomatik ayarla</value> <value>Windows Güç Modunu otomatik ayarla</value>
</data> </data>
<data name="AsusServicesRunning" xml:space="preserve"> <data name="AsusServicesRunning" xml:space="preserve">
<value>Asus Services Running</value> <value>Çalışan Asus Hizmetleri</value>
</data> </data>
<data name="AuraBatteryState" xml:space="preserve"> <data name="AuraBatteryState" xml:space="preserve">
<value>Battery State</value> <value>Pil Durumu</value>
</data> </data>
<data name="AuraBreathe" xml:space="preserve"> <data name="AuraBreathe" xml:space="preserve">
<value>Nefes</value> <value>Nefes</value>
</data> </data>
<data name="AuraClockwise" xml:space="preserve"> <data name="AuraClockwise" xml:space="preserve">
<value>Clockwise</value> <value>Saat Yönünde</value>
</data> </data>
<data name="AuraColorCycle" xml:space="preserve"> <data name="AuraColorCycle" xml:space="preserve">
<value>Renk Döngüsü</value> <value>Renk Döngüsü</value>
</data> </data>
<data name="AuraComet" xml:space="preserve"> <data name="AuraComet" xml:space="preserve">
<value>Comet</value> <value>Kuyruklu Yıldız</value>
</data> </data>
<data name="AuraCounterClockwise" xml:space="preserve"> <data name="AuraCounterClockwise" xml:space="preserve">
<value>Counterclockwise</value> <value>Saat Yönünün Tersine</value>
</data> </data>
<data name="AuraFast" xml:space="preserve"> <data name="AuraFast" xml:space="preserve">
<value>Hızlı</value> <value>Hızlı</value>
</data> </data>
<data name="AuraLightingMode" xml:space="preserve"> <data name="AuraLightingMode" xml:space="preserve">
<value>Lighting Mode</value> <value>ıklandırma Modu</value>
</data> </data>
<data name="AuraNormal" xml:space="preserve"> <data name="AuraNormal" xml:space="preserve">
<value>Normal</value> <value>Normal</value>
@@ -196,10 +196,10 @@
<value>Gökkuşağı</value> <value>Gökkuşağı</value>
</data> </data>
<data name="AuraRandomColor" xml:space="preserve"> <data name="AuraRandomColor" xml:space="preserve">
<value>Random</value> <value>Rastgele</value>
</data> </data>
<data name="AuraReact" xml:space="preserve"> <data name="AuraReact" xml:space="preserve">
<value>React</value> <value>Reaksiyon</value>
</data> </data>
<data name="AuraSlow" xml:space="preserve"> <data name="AuraSlow" xml:space="preserve">
<value>Yavaş</value> <value>Yavaş</value>
@@ -211,22 +211,22 @@
<value>Flaş</value> <value>Flaş</value>
</data> </data>
<data name="AuraZoneAll" xml:space="preserve"> <data name="AuraZoneAll" xml:space="preserve">
<value>All</value> <value>Tümü</value>
</data> </data>
<data name="AuraZoneDock" xml:space="preserve"> <data name="AuraZoneDock" xml:space="preserve">
<value>Dock</value> <value>Yuva</value>
</data> </data>
<data name="AuraZoneLogo" xml:space="preserve"> <data name="AuraZoneLogo" xml:space="preserve">
<value>Logo</value> <value>Logo</value>
</data> </data>
<data name="AuraZoneScroll" xml:space="preserve"> <data name="AuraZoneScroll" xml:space="preserve">
<value>Scrollwheel</value> <value>Kaydırma Tekerleği</value>
</data> </data>
<data name="AuraZoneUnderglow" xml:space="preserve"> <data name="AuraZoneUnderglow" xml:space="preserve">
<value>Underglow</value> <value>Alttan Aydınlatma</value>
</data> </data>
<data name="AutoApply" xml:space="preserve"> <data name="AutoApply" xml:space="preserve">
<value>Auto Apply</value> <value>Otomatik Uygula</value>
</data> </data>
<data name="AutoMode" xml:space="preserve"> <data name="AutoMode" xml:space="preserve">
<value>Otomatik</value> <value>Otomatik</value>
@@ -244,49 +244,49 @@
<value>Dengeli</value> <value>Dengeli</value>
</data> </data>
<data name="BatteryCharge" xml:space="preserve"> <data name="BatteryCharge" xml:space="preserve">
<value>Charge</value> <value>Şarj</value>
</data> </data>
<data name="BatteryChargeLimit" xml:space="preserve"> <data name="BatteryChargeLimit" xml:space="preserve">
<value>Pil Şarj Limiti</value> <value>Pil Şarj Limiti</value>
</data> </data>
<data name="BatteryHealth" xml:space="preserve"> <data name="BatteryHealth" xml:space="preserve">
<value>Battery Health</value> <value>Pil Sağlığı</value>
</data> </data>
<data name="BiosAndDriverUpdates" xml:space="preserve"> <data name="BiosAndDriverUpdates" xml:space="preserve">
<value>BIOS and Driver Updates</value> <value>BIOS ve Sürücü Güncellemeleri</value>
</data> </data>
<data name="Boot" xml:space="preserve"> <data name="Boot" xml:space="preserve">
<value>Önyükleme</value> <value>Önyükleme</value>
</data> </data>
<data name="BootSound" xml:space="preserve"> <data name="BootSound" xml:space="preserve">
<value>Boot Sound</value> <value>Boot Sesi</value>
</data> </data>
<data name="Brightness" xml:space="preserve"> <data name="Brightness" xml:space="preserve">
<value>Parlaklığı</value> <value>Parlaklığı</value>
</data> </data>
<data name="BrightnessDown" xml:space="preserve"> <data name="BrightnessDown" xml:space="preserve">
<value>Brightness Down</value> <value>Parlaklığı Azalt</value>
</data> </data>
<data name="BrightnessUp" xml:space="preserve"> <data name="BrightnessUp" xml:space="preserve">
<value>Brightness Up</value> <value>Parlaklığı Artır</value>
</data> </data>
<data name="Calibrate" xml:space="preserve"> <data name="Calibrate" xml:space="preserve">
<value>Calibrate</value> <value>Kalibre Et</value>
</data> </data>
<data name="Charging" xml:space="preserve"> <data name="Charging" xml:space="preserve">
<value>Charging</value> <value>Şarj oluyor</value>
</data> </data>
<data name="Color" xml:space="preserve"> <data name="Color" xml:space="preserve">
<value>Renk</value> <value>Renk</value>
</data> </data>
<data name="CPUBoost" xml:space="preserve"> <data name="CPUBoost" xml:space="preserve">
<value>CPU Boost</value> <value>CPU Desteği</value>
</data> </data>
<data name="Custom" xml:space="preserve"> <data name="Custom" xml:space="preserve">
<value>Özel</value> <value>Özel</value>
</data> </data>
<data name="Deceleration" xml:space="preserve"> <data name="Deceleration" xml:space="preserve">
<value>Deceleration</value> <value>Yavaşlama</value>
</data> </data>
<data name="Default" xml:space="preserve"> <data name="Default" xml:space="preserve">
<value>Varsayılan</value> <value>Varsayılan</value>
@@ -298,10 +298,10 @@
<value>Pil boşalıyor</value> <value>Pil boşalıyor</value>
</data> </data>
<data name="DownloadUpdate" xml:space="preserve"> <data name="DownloadUpdate" xml:space="preserve">
<value>Download</value> <value>İndir</value>
</data> </data>
<data name="DriverAndSoftware" xml:space="preserve"> <data name="DriverAndSoftware" xml:space="preserve">
<value>Drivers and Software</value> <value>Sürücüler ve Yazılımlar</value>
</data> </data>
<data name="EcoGPUTooltip" xml:space="preserve"> <data name="EcoGPUTooltip" xml:space="preserve">
<value>Pil tasarrufu için harici GPU'yu devre dışı bırakır</value> <value>Pil tasarrufu için harici GPU'yu devre dışı bırakır</value>
@@ -310,15 +310,15 @@
<value>Eko</value> <value>Eko</value>
</data> </data>
<data name="EnableOptimusText" xml:space="preserve"> <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. <value>NVIDIA Denetim Masası'ndaki Görüntü Modu Optimus olarak ayarlı değilken Eko moduna geçilerek harici GPU'nun devre dışı bırakılması, bir sonraki yeniden başlatmaya kadar parlaklık ayarlarında sorunlara neden olabilir.
Do you still want to continue?</value> Yine de devam etmek istiyor musunuz?</value>
</data> </data>
<data name="EnableOptimusTitle" xml:space="preserve"> <data name="EnableOptimusTitle" xml:space="preserve">
<value>NVIDIA Display Mode is not set to Optimus</value> <value>NVIDIA Görüntü Modu Optimus olarak ayarlanmamış</value>
</data> </data>
<data name="EnergySettings" xml:space="preserve"> <data name="EnergySettings" xml:space="preserve">
<value>Energy Settings</value> <value>Enerji Ayarları</value>
</data> </data>
<data name="Extra" xml:space="preserve"> <data name="Extra" xml:space="preserve">
<value>Ekstra</value> <value>Ekstra</value>
@@ -363,10 +363,10 @@ Do you still want to continue?</value>
<value>Değiştiriliyor</value> <value>Değiştiriliyor</value>
</data> </data>
<data name="GPUCoreClockOffset" xml:space="preserve"> <data name="GPUCoreClockOffset" xml:space="preserve">
<value>Core Clock Offset</value> <value>Çekirdek Frekans Dengesi</value>
</data> </data>
<data name="GPUMemoryClockOffset" xml:space="preserve"> <data name="GPUMemoryClockOffset" xml:space="preserve">
<value>Memory Clock Offset</value> <value>Hafıza Frekans Dengesi</value>
</data> </data>
<data name="GPUMode" xml:space="preserve"> <data name="GPUMode" xml:space="preserve">
<value>GPU Modu</value> <value>GPU Modu</value>
@@ -381,16 +381,16 @@ Do you still want to continue?</value>
<value>sadece harici GPU</value> <value>sadece harici GPU</value>
</data> </data>
<data name="GPUSettings" xml:space="preserve"> <data name="GPUSettings" xml:space="preserve">
<value>GPU Settings</value> <value>GPU Ayarları</value>
</data> </data>
<data name="GPUTempTarget" xml:space="preserve"> <data name="GPUTempTarget" xml:space="preserve">
<value>Temperature Target</value> <value>Sıcaklık Hedefi</value>
</data> </data>
<data name="HibernateAfter" xml:space="preserve"> <data name="HibernateAfter" xml:space="preserve">
<value>Minutes till Hibernation in sleep on battery (0 - OFF)</value> <value>Uyku modunda, Hazırda Bekleme Moduna geçiş dakikası (0 - KAPALI)</value>
</data> </data>
<data name="High" xml:space="preserve"> <data name="High" xml:space="preserve">
<value>High</value> <value>Yüksek</value>
</data> </data>
<data name="KeyBindings" xml:space="preserve"> <data name="KeyBindings" xml:space="preserve">
<value>Tuş Bağlantıları</value> <value>Tuş Bağlantıları</value>
@@ -411,22 +411,22 @@ Do you still want to continue?</value>
<value>Laptop Ekranı</value> <value>Laptop Ekranı</value>
</data> </data>
<data name="Lid" xml:space="preserve"> <data name="Lid" xml:space="preserve">
<value>Lid</value> <value>Kapak</value>
</data> </data>
<data name="Lightbar" xml:space="preserve"> <data name="Lightbar" xml:space="preserve">
<value>Lightbar</value> <value>ık Çubuğu</value>
</data> </data>
<data name="Lighting" xml:space="preserve"> <data name="Lighting" xml:space="preserve">
<value>Lighting</value> <value>ıklandırma</value>
</data> </data>
<data name="Logo" xml:space="preserve"> <data name="Logo" xml:space="preserve">
<value>Logo</value> <value>Logo</value>
</data> </data>
<data name="Low" xml:space="preserve"> <data name="Low" xml:space="preserve">
<value>Low</value> <value>Düşük</value>
</data> </data>
<data name="MatrixAudio" xml:space="preserve"> <data name="MatrixAudio" xml:space="preserve">
<value>Audio Visualizer</value> <value>Ses Görselleştirici</value>
</data> </data>
<data name="MatrixBanner" xml:space="preserve"> <data name="MatrixBanner" xml:space="preserve">
<value>Matrix Banner</value> <value>Matrix Banner</value>
@@ -459,49 +459,49 @@ Do you still want to continue?</value>
<value>Pil tasarrufu için 60Hz yenileme hızı</value> <value>Pil tasarrufu için 60Hz yenileme hızı</value>
</data> </data>
<data name="Minute" xml:space="preserve"> <data name="Minute" xml:space="preserve">
<value>Minute</value> <value>Dakika</value>
</data> </data>
<data name="Minutes" xml:space="preserve"> <data name="Minutes" xml:space="preserve">
<value>Minutes</value> <value>Dakika</value>
</data> </data>
<data name="MouseAngleSnapping" xml:space="preserve"> <data name="MouseAngleSnapping" xml:space="preserve">
<value>Angle Snapping</value> <value>Angle Snapping</value>
</data> </data>
<data name="MouseAutoPowerOff" xml:space="preserve"> <data name="MouseAutoPowerOff" xml:space="preserve">
<value>Auto Power Off After</value> <value>Sonrasında Otomatik Kapat</value>
</data> </data>
<data name="MouseButtonResponse" xml:space="preserve"> <data name="MouseButtonResponse" xml:space="preserve">
<value>Button Response</value> <value>Tuş Tepkisi</value>
</data> </data>
<data name="MouseLiftOffDistance" xml:space="preserve"> <data name="MouseLiftOffDistance" xml:space="preserve">
<value>Lift Off Distance</value> <value>Havalanma Mesafesi</value>
</data> </data>
<data name="MouseLowBatteryWarning" xml:space="preserve"> <data name="MouseLowBatteryWarning" xml:space="preserve">
<value>Low Battery Warning at</value> <value>Düşük Pil Uyarısı seviyesi</value>
</data> </data>
<data name="MousePerformance" xml:space="preserve"> <data name="MousePerformance" xml:space="preserve">
<value>Performance</value> <value>Performans</value>
</data> </data>
<data name="MouseSynchronize" xml:space="preserve"> <data name="MouseSynchronize" xml:space="preserve">
<value>Synchronize with mouse</value> <value>Fare ile senkronize edin</value>
</data> </data>
<data name="Multizone" xml:space="preserve"> <data name="Multizone" xml:space="preserve">
<value>Çoklu Bölge</value> <value>Çoklu Bölge</value>
</data> </data>
<data name="MuteMic" xml:space="preserve"> <data name="MuteMic" xml:space="preserve">
<value>Mute Mic</value> <value>Mikrofonu Sustur</value>
</data> </data>
<data name="Never" xml:space="preserve"> <data name="Never" xml:space="preserve">
<value>Never</value> <value>Asla</value>
</data> </data>
<data name="NewUpdates" xml:space="preserve"> <data name="NewUpdates" xml:space="preserve">
<value>New updates</value> <value>Yeni güncellemeler</value>
</data> </data>
<data name="NoNewUpdates" xml:space="preserve"> <data name="NoNewUpdates" xml:space="preserve">
<value>No new updates</value> <value>Yeni güncelleme yok</value>
</data> </data>
<data name="NotConnected" xml:space="preserve"> <data name="NotConnected" xml:space="preserve">
<value>Not Connected</value> <value>Bağlantı Yok</value>
</data> </data>
<data name="OpenGHelper" xml:space="preserve"> <data name="OpenGHelper" xml:space="preserve">
<value>G-Helper penceresini aç</value> <value>G-Helper penceresini aç</value>
@@ -525,7 +525,7 @@ Do you still want to continue?</value>
<value>Performans Modu</value> <value>Performans Modu</value>
</data> </data>
<data name="Peripherals" xml:space="preserve"> <data name="Peripherals" xml:space="preserve">
<value>Peripherals</value> <value>Çevre Birimleri</value>
</data> </data>
<data name="PictureGif" xml:space="preserve"> <data name="PictureGif" xml:space="preserve">
<value>Resim / Gif</value> <value>Resim / Gif</value>
@@ -534,7 +534,7 @@ Do you still want to continue?</value>
<value>Oynat / Duraklat</value> <value>Oynat / Duraklat</value>
</data> </data>
<data name="PollingRate" xml:space="preserve"> <data name="PollingRate" xml:space="preserve">
<value>Polling Rate</value> <value>Yoklama Sıklığı</value>
</data> </data>
<data name="PowerLimits" xml:space="preserve"> <data name="PowerLimits" xml:space="preserve">
<value>Güç Sınırları</value> <value>Güç Sınırları</value>
@@ -546,13 +546,13 @@ Do you still want to continue?</value>
<value>Ekran Görüntüsü Al</value> <value>Ekran Görüntüsü Al</value>
</data> </data>
<data name="Profile" xml:space="preserve"> <data name="Profile" xml:space="preserve">
<value>Profile</value> <value>Profil</value>
</data> </data>
<data name="Quit" xml:space="preserve"> <data name="Quit" xml:space="preserve">
<value>Çıkış Yap</value> <value>Çıkış Yap</value>
</data> </data>
<data name="RestartGPU" xml:space="preserve"> <data name="RestartGPU" xml:space="preserve">
<value>Something is using dGPU and preventing Eco mode. Let G-Helper try to restart dGPU in device manager? (Please proceed at your own risk)</value> <value>Bir şey harici GPU'yu kullanıyor ve Eco modunu engelliyor. G-Helper aygıt yöneticisinde harici Gpu'yu yeniden başlatmayı denesin mi? (Kendi sorumluluğunuzdadır)</value>
</data> </data>
<data name="RPM" xml:space="preserve"> <data name="RPM" xml:space="preserve">
<value>RPM</value> <value>RPM</value>
@@ -561,10 +561,10 @@ Do you still want to continue?</value>
<value>Başlangıçta Çalıştır</value> <value>Başlangıçta Çalıştır</value>
</data> </data>
<data name="ScreenPadDown" xml:space="preserve"> <data name="ScreenPadDown" xml:space="preserve">
<value>Screenpad Brightness Down</value> <value>Screenpad Parlaklığını Azalt</value>
</data> </data>
<data name="ScreenPadUp" xml:space="preserve"> <data name="ScreenPadUp" xml:space="preserve">
<value>Screenpad Brightness Up</value> <value>Screenpad Parlaklığını Arttır</value>
</data> </data>
<data name="Shutdown" xml:space="preserve"> <data name="Shutdown" xml:space="preserve">
<value>Kapalı</value> <value>Kapalı</value>
@@ -582,37 +582,37 @@ Do you still want to continue?</value>
<value>Standart</value> <value>Standart</value>
</data> </data>
<data name="Start" xml:space="preserve"> <data name="Start" xml:space="preserve">
<value>Start</value> <value>Başlat</value>
</data> </data>
<data name="StartingServices" xml:space="preserve"> <data name="StartingServices" xml:space="preserve">
<value>Starting Services</value> <value>Hizmetler Başlatılıyor</value>
</data> </data>
<data name="StartupError" xml:space="preserve"> <data name="StartupError" xml:space="preserve">
<value>Başlatma Hatası</value> <value>Başlatma Hatası</value>
</data> </data>
<data name="Stop" xml:space="preserve"> <data name="Stop" xml:space="preserve">
<value>Stop</value> <value>Durdur</value>
</data> </data>
<data name="StopGPUApps" xml:space="preserve"> <data name="StopGPUApps" xml:space="preserve">
<value>Stop GPU Applications</value> <value>GPU Uygulamalarını Durdur</value>
</data> </data>
<data name="StoppingServices" xml:space="preserve"> <data name="StoppingServices" xml:space="preserve">
<value>Stopping Services</value> <value>Hizmetler Durduruluyor</value>
</data> </data>
<data name="ToggleAura" xml:space="preserve"> <data name="ToggleAura" xml:space="preserve">
<value>Aura'yı Değiştir</value> <value>Aura'yı Değiştir</value>
</data> </data>
<data name="ToggleClamshellMode" xml:space="preserve"> <data name="ToggleClamshellMode" xml:space="preserve">
<value>Auto Toggle Clamshell Mode</value> <value>Otomatik Clamshell Modunu Aç</value>
</data> </data>
<data name="ToggleFnLock" xml:space="preserve"> <data name="ToggleFnLock" xml:space="preserve">
<value>Toggle Fn-Lock</value> <value>Fn-Lock'u Aç</value>
</data> </data>
<data name="ToggleMiniled" xml:space="preserve"> <data name="ToggleMiniled" xml:space="preserve">
<value>Toggle Miniled (if supported)</value> <value>Miniled'i Aç (destekliyorsa)</value>
</data> </data>
<data name="ToggleScreen" xml:space="preserve"> <data name="ToggleScreen" xml:space="preserve">
<value>Toggle Screen</value> <value>Ekranı Değiştir</value>
</data> </data>
<data name="Turbo" xml:space="preserve"> <data name="Turbo" xml:space="preserve">
<value>Turbo</value> <value>Turbo</value>
@@ -630,22 +630,22 @@ Do you still want to continue?</value>
<value>Ultimate</value> <value>Ultimate</value>
</data> </data>
<data name="UndervoltingRisky" xml:space="preserve"> <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> <value>Undervolting deneysel ve riskli bir özelliktir. Uygulanan değerler cihazınız için çok düşükse, cihazınız stabil çalışmayabilir, kapanabilir veya veri kaybına uğrayabilir. Yine de denemek istiyorsanız, önce küçük değerlerden başlayıp Uygula'ya tıklayın ve sizin için uygun olanı test edin.</value>
</data> </data>
<data name="Updates" xml:space="preserve"> <data name="Updates" xml:space="preserve">
<value>Updates</value> <value>Güncellemeler</value>
</data> </data>
<data name="VersionLabel" xml:space="preserve"> <data name="VersionLabel" xml:space="preserve">
<value>Sürüm</value> <value>Sürüm</value>
</data> </data>
<data name="VolumeDown" xml:space="preserve"> <data name="VolumeDown" xml:space="preserve">
<value>Volume Down</value> <value>Sesi Azalt</value>
</data> </data>
<data name="VolumeMute" xml:space="preserve"> <data name="VolumeMute" xml:space="preserve">
<value>Ses Kısma</value> <value>Ses Kısma</value>
</data> </data>
<data name="VolumeUp" xml:space="preserve"> <data name="VolumeUp" xml:space="preserve">
<value>Volume Up</value> <value>Sesi Arttır</value>
</data> </data>
<data name="WindowTop" xml:space="preserve"> <data name="WindowTop" xml:space="preserve">
<value>Uygulama penceresini her zaman en üstte tut</value> <value>Uygulama penceresini her zaman en üstte tut</value>

View File

@@ -1187,8 +1187,16 @@ namespace GHelper
if (m.IsDeviceReady) if (m.IsDeviceReady)
{ {
b.Text = m.GetDisplayName() + "\n" + m.Battery + "%" if (m.HasBattery())
+ (m.Charging ? "(" + Properties.Strings.Charging + ")" : ""); {
b.Text = m.GetDisplayName() + "\n" + m.Battery + "%"
+ (m.Charging ? "(" + Properties.Strings.Charging + ")" : "");
}
else
{
b.Text = m.GetDisplayName();
}
} }
else else
{ {

View File

@@ -13,8 +13,8 @@ namespace GHelper
const int DRIVER_NEWER = 1; const int DRIVER_NEWER = 1;
//static int rowCount = 0; //static int rowCount = 0;
static string model;
static string bios; static string bios;
static string model;
static int updatesCount = 0; static int updatesCount = 0;
private static long lastUpdate; private static long lastUpdate;
@@ -33,7 +33,7 @@ namespace GHelper
if (!force && (Math.Abs(DateTimeOffset.Now.ToUnixTimeMilliseconds() - lastUpdate) < 5000)) return; if (!force && (Math.Abs(DateTimeOffset.Now.ToUnixTimeMilliseconds() - lastUpdate) < 5000)) return;
lastUpdate = DateTimeOffset.Now.ToUnixTimeMilliseconds(); lastUpdate = DateTimeOffset.Now.ToUnixTimeMilliseconds();
InitBiosAndModel(); (bios, model) = AppConfig.GetBiosAndModel();
updatesCount = 0; updatesCount = 0;
labelUpdates.ForeColor = colorEco; labelUpdates.ForeColor = colorEco;
@@ -116,31 +116,6 @@ namespace GHelper
} }
} }
private string InitBiosAndModel()
{
using (ManagementObjectSearcher objSearcher = new ManagementObjectSearcher("SELECT * FROM Win32_BIOS"))
{
using (ManagementObjectCollection objCollection = objSearcher.Get())
{
foreach (ManagementObject obj in objCollection)
if (obj["SMBIOSBIOSVersion"] is not null)
{
string[] results = obj["SMBIOSBIOSVersion"].ToString().Split(".");
if (results.Length > 1)
{
model = results[0];
bios = results[1];
}
else
{
model = obj["SMBIOSBIOSVersion"].ToString();
}
}
return "";
}
}
}
public void VisualiseDriver(DriverDownload driver, TableLayoutPanel table) public void VisualiseDriver(DriverDownload driver, TableLayoutPanel table)
{ {