diff --git a/RGB.NET.Devices.Logitech/Enum/LogitechLedIds.cs b/RGB.NET.Devices.Logitech/Enum/LogitechLedIds.cs
index d82f868..f3edfd0 100644
--- a/RGB.NET.Devices.Logitech/Enum/LogitechLedIds.cs
+++ b/RGB.NET.Devices.Logitech/Enum/LogitechLedIds.cs
@@ -26,6 +26,7 @@ namespace RGB.NET.Devices.Logitech
PRINT_SCREEN = 0x137,
SCROLL_LOCK = 0x46,
PAUSE_BREAK = 0x45,
+
TILDE = 0x29,
ONE = 0x02,
TWO = 0x03,
@@ -47,6 +48,7 @@ namespace RGB.NET.Devices.Logitech
NUM_SLASH = 0x135,
NUM_ASTERISK = 0x37,
NUM_MINUS = 0x4A,
+
TAB = 0x0F,
Q = 0x10,
W = 0x11,
@@ -68,6 +70,7 @@ namespace RGB.NET.Devices.Logitech
NUM_EIGHT = 0x48,
NUM_NINE = 0x49,
NUM_PLUS = 0x4E,
+
CAPS_LOCK = 0x3A,
A = 0x1E,
S = 0x1F,
@@ -80,10 +83,12 @@ namespace RGB.NET.Devices.Logitech
L = 0x26,
SEMICOLON = 0x27,
APOSTROPHE = 0x28,
+ NonUsTilde = 0xFF, //TODO DarthAffe 26.03.2017: Find the real ID/Name of this key - it's not documented ...
ENTER = 0x1C,
NUM_FOUR = 0x4B,
NUM_FIVE = 0x4C,
NUM_SIX = 0x4D,
+
LEFT_SHIFT = 0x2A,
Z = 0x2C,
X = 0x2D,
@@ -101,6 +106,7 @@ namespace RGB.NET.Devices.Logitech
NUM_TWO = 0x50,
NUM_THREE = 0x51,
NUM_ENTER = 0x11C,
+
LEFT_CONTROL = 0x1D,
LEFT_WINDOWS = 0x15B,
LEFT_ALT = 0x38,
@@ -114,6 +120,7 @@ namespace RGB.NET.Devices.Logitech
ARROW_RIGHT = 0x14D,
NUM_ZERO = 0x52,
NUM_PERIOD = 0x53,
+
G_1 = 0xFFF1,
G_2 = 0xFFF2,
G_3 = 0xFFF3,
diff --git a/RGB.NET.Devices.Logitech/Generic/LogitechRGBDevice.cs b/RGB.NET.Devices.Logitech/Generic/LogitechRGBDevice.cs
index 8336467..12dd8ad 100644
--- a/RGB.NET.Devices.Logitech/Generic/LogitechRGBDevice.cs
+++ b/RGB.NET.Devices.Logitech/Generic/LogitechRGBDevice.cs
@@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
+using System.IO;
using System.Linq;
using RGB.NET.Core;
using RGB.NET.Core.Layout;
@@ -59,11 +60,15 @@ namespace RGB.NET.Devices.Logitech
/// Applies the given layout.
///
/// The file containing the layout.
- protected void ApplyLayoutFromFile(string layoutPath)
+ /// The name of the layout used tp get the images of the leds.
+ /// The path images for this device are collected in.
+ protected void ApplyLayoutFromFile(string layoutPath, string imageLayout, string imageBasePath)
{
DeviceLayout layout = DeviceLayout.Load(layoutPath);
if (layout != null)
{
+ LedImageLayout ledImageLayout = layout.LedImageLayouts.FirstOrDefault(x => string.Equals(x.Layout, imageLayout, StringComparison.OrdinalIgnoreCase));
+
InternalSize = new Size(layout.Width, layout.Height);
if (layout.Leds != null)
@@ -83,6 +88,12 @@ namespace RGB.NET.Devices.Logitech
led.LedRectangle.Size.Height = layoutLed.Height;
led.Shape = layoutLed.Shape;
+ led.ShapeData = layoutLed.ShapeData;
+
+ LedImage image = ledImageLayout?.LedImages.FirstOrDefault(x => x.Id == layoutLed.Id);
+ led.Image = (!string.IsNullOrEmpty(image?.Image))
+ ? new Uri(Path.Combine(imageBasePath, image.Image), UriKind.Absolute)
+ : new Uri(Path.Combine(imageBasePath, "Missing.png"), UriKind.Absolute);
}
}
}
@@ -91,13 +102,31 @@ namespace RGB.NET.Devices.Logitech
///
protected override void UpdateLeds(IEnumerable ledsToUpdate)
{
+ _LogitechGSDK.LogiLedSetTargetDevice(LogitechDeviceCaps.PerKeyRGB);
+
List leds = ledsToUpdate.Where(x => x.Color.A > 0).ToList();
+ byte[] bitmap = null;
foreach (Led led in leds)
- _LogitechGSDK.LogiLedSetLightingForKeyWithKeyName((int)((LogitechLedId)led.Id).LedId,
- (int)Math.Round(led.Color.RPercent * 100),
- (int)Math.Round(led.Color.GPercent * 100),
- (int)Math.Round(led.Color.BPercent * 100));
+ {
+ //TODO DarthAffe 26.03.2017: This is only needed since update by name doesn't work as expected for all keys ...
+ int bitmapOffset;
+ if (BitmapMapping.BitmapOffset.TryGetValue(((LogitechLedId)led.Id).LedId, out bitmapOffset))
+ {
+ if (bitmap == null)
+ bitmap = BitmapMapping.CreateBitmap();
+
+ BitmapMapping.SetColor(ref bitmap, bitmapOffset, led.Color);
+ }
+ else
+ _LogitechGSDK.LogiLedSetLightingForKeyWithKeyName((int)((LogitechLedId)led.Id).LedId,
+ (int)Math.Round(led.Color.RPercent * 100),
+ (int)Math.Round(led.Color.GPercent * 100),
+ (int)Math.Round(led.Color.BPercent * 100));
+ }
+
+ if (bitmap != null)
+ _LogitechGSDK.LogiLedSetLightingFromBitmap(bitmap);
}
#endregion
diff --git a/RGB.NET.Devices.Logitech/HID/DeviceChecker.cs b/RGB.NET.Devices.Logitech/HID/DeviceChecker.cs
index 8a753f1..14ff155 100644
--- a/RGB.NET.Devices.Logitech/HID/DeviceChecker.cs
+++ b/RGB.NET.Devices.Logitech/HID/DeviceChecker.cs
@@ -9,8 +9,8 @@ namespace RGB.NET.Devices.Logitech.HID
#region Constants
//TODO DarthAffe 04.02.2017: Add IDs
- private const int VENDOR_ID = 0x0;
- private const int G910_ID = 0x0;
+ private const int VENDOR_ID = 0x046D;
+ private const int G910_ID = 0xC32B;
private const int G810_ID = 0x0;
#endregion
diff --git a/RGB.NET.Devices.Logitech/Helper/BitmapMapping.cs b/RGB.NET.Devices.Logitech/Helper/BitmapMapping.cs
new file mode 100644
index 0000000..f0ac3f5
--- /dev/null
+++ b/RGB.NET.Devices.Logitech/Helper/BitmapMapping.cs
@@ -0,0 +1,172 @@
+using System.Collections.Generic;
+using System.Runtime.CompilerServices;
+using RGB.NET.Core;
+
+namespace RGB.NET.Devices.Logitech
+{
+ internal static class BitmapMapping
+ {
+ #region Constants
+
+ private const int BITMAP_SIZE = 21 * 6 * 4;
+
+ #endregion
+
+ #region Properties & Fields
+
+ internal static Dictionary BitmapOffset { get; } = new Dictionary
+ {
+ { LogitechLedIds.ESC, 0 },
+ { LogitechLedIds.F1, 4 },
+ { LogitechLedIds.F2, 8 },
+ { LogitechLedIds.F3, 12 },
+ { LogitechLedIds.F4, 16 },
+ { LogitechLedIds.F5, 20 },
+ { LogitechLedIds.F6, 24 },
+ { LogitechLedIds.F7, 28 },
+ { LogitechLedIds.F8, 32 },
+ { LogitechLedIds.F9, 36 },
+ { LogitechLedIds.F10, 40 },
+ { LogitechLedIds.F11, 44 },
+ { LogitechLedIds.F12, 48 },
+ { LogitechLedIds.PRINT_SCREEN, 52 },
+ { LogitechLedIds.SCROLL_LOCK, 56 },
+ { LogitechLedIds.PAUSE_BREAK, 60 },
+ // { LogitechLedIds.?, 64 },
+ // { LogitechLedIds.?, 68 },
+ // { LogitechLedIds.?, 72 },
+ // { LogitechLedIds.?, 76 },
+ // { LogitechLedIds.?, 80 },
+
+ { LogitechLedIds.TILDE, 84 },
+ { LogitechLedIds.ONE, 88 },
+ { LogitechLedIds.TWO, 92 },
+ { LogitechLedIds.THREE, 96 },
+ { LogitechLedIds.FOUR, 100 },
+ { LogitechLedIds.FIVE, 104 },
+ { LogitechLedIds.SIX, 108 },
+ { LogitechLedIds.SEVEN, 112 },
+ { LogitechLedIds.EIGHT, 116 },
+ { LogitechLedIds.NINE, 120 },
+ { LogitechLedIds.ZERO, 124 },
+ { LogitechLedIds.MINUS, 128 },
+ { LogitechLedIds.EQUALS, 132 },
+ { LogitechLedIds.BACKSPACE, 136 },
+ { LogitechLedIds.INSERT, 140 },
+ { LogitechLedIds.HOME, 144 },
+ { LogitechLedIds.PAGE_UP, 148 },
+ { LogitechLedIds.NUM_LOCK, 152 },
+ { LogitechLedIds.NUM_SLASH, 156 },
+ { LogitechLedIds.NUM_ASTERISK, 160 },
+ { LogitechLedIds.NUM_MINUS, 164 },
+
+ { LogitechLedIds.TAB, 168 },
+ { LogitechLedIds.Q, 172 },
+ { LogitechLedIds.W, 176 },
+ { LogitechLedIds.E, 180 },
+ { LogitechLedIds.R, 184 },
+ { LogitechLedIds.T, 188 },
+ { LogitechLedIds.Y, 192 },
+ { LogitechLedIds.U, 196 },
+ { LogitechLedIds.I, 200 },
+ { LogitechLedIds.O, 204 },
+ { LogitechLedIds.P, 208 },
+ { LogitechLedIds.OPEN_BRACKET, 212 },
+ { LogitechLedIds.CLOSE_BRACKET, 216 },
+ // { LogitechLedIds.?, 220 },
+ { LogitechLedIds.KEYBOARD_DELETE, 224 },
+ { LogitechLedIds.END, 228 },
+ { LogitechLedIds.PAGE_DOWN, 232 },
+ { LogitechLedIds.NUM_SEVEN, 236 },
+ { LogitechLedIds.NUM_EIGHT, 240 },
+ { LogitechLedIds.NUM_NINE, 244 },
+ { LogitechLedIds.NUM_PLUS, 248 },
+
+ { LogitechLedIds.CAPS_LOCK, 252 },
+ { LogitechLedIds.A, 256 },
+ { LogitechLedIds.S, 260 },
+ { LogitechLedIds.D, 264 },
+ { LogitechLedIds.F, 268 },
+ { LogitechLedIds.G, 272 },
+ { LogitechLedIds.H, 276 },
+ { LogitechLedIds.J, 280 },
+ { LogitechLedIds.K, 284 },
+ { LogitechLedIds.L, 288 },
+ { LogitechLedIds.SEMICOLON, 292 },
+ { LogitechLedIds.APOSTROPHE, 296 },
+ { LogitechLedIds.NonUsTilde, 300 }, //TODO DarthAffe 26.03.2017: Find the real ID/Name of this key - it's not documented ...
+ { LogitechLedIds.ENTER, 304 },
+ // { LogitechLedIds.?, 308 },
+ // { LogitechLedIds.?, 312 },
+ // { LogitechLedIds.?, 316 },
+ { LogitechLedIds.NUM_FOUR, 320 },
+ { LogitechLedIds.NUM_FIVE, 324 },
+ { LogitechLedIds.NUM_SIX, 328 },
+ // { LogitechLedIds.?, 332 },
+
+ { LogitechLedIds.LEFT_SHIFT, 336 },
+ { LogitechLedIds.BACKSLASH, 340 },
+ { LogitechLedIds.Z, 344 },
+ { LogitechLedIds.X, 348 },
+ { LogitechLedIds.C, 352 },
+ { LogitechLedIds.V, 356 },
+ { LogitechLedIds.B, 360 },
+ { LogitechLedIds.N, 364 },
+ { LogitechLedIds.M, 368 },
+ { LogitechLedIds.COMMA, 372 },
+ { LogitechLedIds.PERIOD, 376 },
+ { LogitechLedIds.FORWARD_SLASH, 380 },
+ { LogitechLedIds.RIGHT_SHIFT, 388 },
+ // { LogitechLedIds.?, 392 },
+ { LogitechLedIds.ARROW_UP, 396 },
+ // { LogitechLedIds.?, 400 },
+ { LogitechLedIds.NUM_ONE, 404 },
+ { LogitechLedIds.NUM_TWO, 408 },
+ { LogitechLedIds.NUM_THREE, 412 },
+ { LogitechLedIds.NUM_ENTER, 416 },
+
+ { LogitechLedIds.LEFT_CONTROL, 420 },
+ { LogitechLedIds.LEFT_WINDOWS, 424 },
+ { LogitechLedIds.LEFT_ALT, 428 },
+ // { LogitechLedIds.?, 432 },
+ // { LogitechLedIds.?, 436 },
+ { LogitechLedIds.SPACE, 440 },
+ // { LogitechLedIds.?, 444 },
+ // { LogitechLedIds.?, 448 },
+ // { LogitechLedIds.?, 452 },
+ // { LogitechLedIds.?, 456 },
+ // { LogitechLedIds.?, 460 },
+ { LogitechLedIds.RIGHT_ALT, 464 },
+ { LogitechLedIds.RIGHT_WINDOWS, 468 },
+ { LogitechLedIds.APPLICATION_SELECT, 472 },
+ { LogitechLedIds.RIGHT_CONTROL, 476 },
+ { LogitechLedIds.ARROW_LEFT, 480 },
+ { LogitechLedIds.ARROW_DOWN, 484 },
+ { LogitechLedIds.ARROW_RIGHT, 488 },
+ { LogitechLedIds.NUM_ZERO, 492 },
+ { LogitechLedIds.NUM_PERIOD, 496 },
+ // { LogitechLedIds.?, 500 },
+ };
+
+ #endregion
+
+ #region Methods
+
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
+ internal static byte[] CreateBitmap()
+ {
+ return new byte[BITMAP_SIZE];
+ }
+
+ [MethodImpl(MethodImplOptions.AggressiveInlining)]
+ internal static void SetColor(ref byte[] bitmap, int offset, Color color)
+ {
+ bitmap[offset] = color.B;
+ bitmap[offset + 1] = color.G;
+ bitmap[offset + 2] = color.R;
+ bitmap[offset + 3] = color.A;
+ }
+
+ #endregion
+ }
+}
diff --git a/RGB.NET.Devices.Logitech/Helper/PathHelper.cs b/RGB.NET.Devices.Logitech/Helper/PathHelper.cs
new file mode 100644
index 0000000..3247212
--- /dev/null
+++ b/RGB.NET.Devices.Logitech/Helper/PathHelper.cs
@@ -0,0 +1,24 @@
+using System.IO;
+using System.Reflection;
+
+namespace RGB.NET.Devices.Logitech
+{
+ ///
+ /// Offers some helper-methods for file-path related things.
+ ///
+ public static class PathHelper
+ {
+ ///
+ /// Returns an absolute path created from an relative path relatvie to the location of the executung assembly.
+ ///
+ /// The relative path to convert.
+ /// The absolute path.
+ public static string GetAbsolutePath(string relativePath)
+ {
+ string assemblyLocation = Assembly.GetEntryAssembly()?.Location;
+ if (assemblyLocation == null) return relativePath;
+
+ return Path.Combine(Path.GetDirectoryName(assemblyLocation), relativePath);
+ }
+ }
+}
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/G910.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/G910.png
new file mode 100644
index 0000000..dd42204
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/G910.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/0_Equals_CurlyBracketRight.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/0_Equals_CurlyBracketRight.png
new file mode 100644
index 0000000..e8afa3e
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/0_Equals_CurlyBracketRight.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/1_ExclamationMark.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/1_ExclamationMark.png
new file mode 100644
index 0000000..1beb4e4
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/1_ExclamationMark.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/2_QuotationMark_Exponent2.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/2_QuotationMark_Exponent2.png
new file mode 100644
index 0000000..e424ed9
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/2_QuotationMark_Exponent2.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/3_SectionSign_Exponent3.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/3_SectionSign_Exponent3.png
new file mode 100644
index 0000000..0611817
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/3_SectionSign_Exponent3.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/4_Dollar.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/4_Dollar.png
new file mode 100644
index 0000000..1c5c7c5
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/4_Dollar.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/5_Percent.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/5_Percent.png
new file mode 100644
index 0000000..4263254
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/5_Percent.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/6_Ampersand.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/6_Ampersand.png
new file mode 100644
index 0000000..b5af4e7
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/6_Ampersand.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/7_Slash_CurlyBracketLeft.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/7_Slash_CurlyBracketLeft.png
new file mode 100644
index 0000000..73a3a46
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/7_Slash_CurlyBracketLeft.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/8_BracketLeft_SquareBracketLeft.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/8_BracketLeft_SquareBracketLeft.png
new file mode 100644
index 0000000..e9d9352
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/8_BracketLeft_SquareBracketLeft.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/9_BracketRight_SquareBracketRight.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/9_BracketRight_SquareBracketRight.png
new file mode 100644
index 0000000..638f599
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/9_BracketRight_SquareBracketRight.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/A.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/A.png
new file mode 100644
index 0000000..925c71c
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/A.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/AE.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/AE.png
new file mode 100644
index 0000000..5714c5b
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/AE.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/AccentGrave_AccentAcute.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/AccentGrave_AccentAcute.png
new file mode 100644
index 0000000..2516065
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/AccentGrave_AccentAcute.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Alt.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Alt.png
new file mode 100644
index 0000000..864737a
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Alt.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/AltGr.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/AltGr.png
new file mode 100644
index 0000000..dfc4b37
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/AltGr.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Asterisk.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Asterisk.png
new file mode 100644
index 0000000..1d8608b
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Asterisk.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/B.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/B.png
new file mode 100644
index 0000000..296c373
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/B.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Backspace.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Backspace.png
new file mode 100644
index 0000000..5d24401
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Backspace.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/BildDown.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/BildDown.png
new file mode 100644
index 0000000..90de4fb
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/BildDown.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/BildUp.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/BildUp.png
new file mode 100644
index 0000000..31c1e22
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/BildUp.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/C.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/C.png
new file mode 100644
index 0000000..3eb305e
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/C.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/CapsLockA.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/CapsLockA.png
new file mode 100644
index 0000000..51add26
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/CapsLockA.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/CaretDown.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/CaretDown.png
new file mode 100644
index 0000000..5703949
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/CaretDown.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/CaretLeft.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/CaretLeft.png
new file mode 100644
index 0000000..553e6e0
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/CaretLeft.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/CaretRight.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/CaretRight.png
new file mode 100644
index 0000000..2e06744
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/CaretRight.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/CaretUp.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/CaretUp.png
new file mode 100644
index 0000000..3d72c38
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/CaretUp.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Circumflex_Degree.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Circumflex_Degree.png
new file mode 100644
index 0000000..4e17275
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Circumflex_Degree.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Comma_Entf.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Comma_Entf.png
new file mode 100644
index 0000000..9659d89
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Comma_Entf.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Comma_Semicolon.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Comma_Semicolon.png
new file mode 100644
index 0000000..ff4f205
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Comma_Semicolon.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/D.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/D.png
new file mode 100644
index 0000000..ec7475e
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/D.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Dot_Colon.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Dot_Colon.png
new file mode 100644
index 0000000..4ca7ad5
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Dot_Colon.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Drucken.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Drucken.png
new file mode 100644
index 0000000..dd20a5e
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Drucken.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/E_Euro.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/E_Euro.png
new file mode 100644
index 0000000..7f27c30
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/E_Euro.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Einfg.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Einfg.png
new file mode 100644
index 0000000..fdcfeee
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Einfg.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Ende.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Ende.png
new file mode 100644
index 0000000..8433a33
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Ende.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Enter.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Enter.png
new file mode 100644
index 0000000..1550183
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Enter.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Entf.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Entf.png
new file mode 100644
index 0000000..d6e9deb
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Entf.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Escape.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Escape.png
new file mode 100644
index 0000000..741b24c
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Escape.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F.png
new file mode 100644
index 0000000..fa20fc1
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F1.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F1.png
new file mode 100644
index 0000000..37495c1
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F1.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F10.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F10.png
new file mode 100644
index 0000000..fa18ec6
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F10.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F11.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F11.png
new file mode 100644
index 0000000..af3aa8a
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F11.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F12.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F12.png
new file mode 100644
index 0000000..f269431
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F12.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F2.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F2.png
new file mode 100644
index 0000000..b2d8211
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F2.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F3.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F3.png
new file mode 100644
index 0000000..3196276
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F3.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F4.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F4.png
new file mode 100644
index 0000000..849a49f
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F4.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F5.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F5.png
new file mode 100644
index 0000000..1251a80
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F5.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F6.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F6.png
new file mode 100644
index 0000000..ef3137c
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F6.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F7.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F7.png
new file mode 100644
index 0000000..56971fb
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F7.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F8.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F8.png
new file mode 100644
index 0000000..8af4c3e
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F8.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F9.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F9.png
new file mode 100644
index 0000000..4474815
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/F9.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G.png
new file mode 100644
index 0000000..c57c3ed
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G1.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G1.png
new file mode 100644
index 0000000..2e00a8e
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G1.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G2.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G2.png
new file mode 100644
index 0000000..f8d3a33
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G2.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G3.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G3.png
new file mode 100644
index 0000000..9ddb328
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G3.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G4.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G4.png
new file mode 100644
index 0000000..a79a2e9
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G4.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G5.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G5.png
new file mode 100644
index 0000000..e7bb655
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G5.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G6.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G6.png
new file mode 100644
index 0000000..5d569e8
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G6.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G7.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G7.png
new file mode 100644
index 0000000..4858d47
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G7.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G8.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G8.png
new file mode 100644
index 0000000..de667d2
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G8.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G9.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G9.png
new file mode 100644
index 0000000..5988127
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/G9.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/H.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/H.png
new file mode 100644
index 0000000..3a62b30
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/H.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Hash_Apostrophe.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Hash_Apostrophe.png
new file mode 100644
index 0000000..1d25a9d
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Hash_Apostrophe.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Hyphen_Underscore.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Hyphen_Underscore.png
new file mode 100644
index 0000000..754df53
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Hyphen_Underscore.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/I.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/I.png
new file mode 100644
index 0000000..78fecd8
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/I.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/J.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/J.png
new file mode 100644
index 0000000..072227d
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/J.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/K.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/K.png
new file mode 100644
index 0000000..fb572cc
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/K.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/L.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/L.png
new file mode 100644
index 0000000..8d878c8
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/L.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/LessThan_GreaterThan_Pipe.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/LessThan_GreaterThan_Pipe.png
new file mode 100644
index 0000000..eefd2ac
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/LessThan_GreaterThan_Pipe.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/M_Mu.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/M_Mu.png
new file mode 100644
index 0000000..7d1a93b
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/M_Mu.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Menu.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Menu.png
new file mode 100644
index 0000000..63edb4b
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Menu.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Minus.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Minus.png
new file mode 100644
index 0000000..7e87e5c
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Minus.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/N.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/N.png
new file mode 100644
index 0000000..9e99553
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/N.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num.png
new file mode 100644
index 0000000..ee26594
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num0_Einfg.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num0_Einfg.png
new file mode 100644
index 0000000..45d8fe6
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num0_Einfg.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num1_Ende.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num1_Ende.png
new file mode 100644
index 0000000..1c76372
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num1_Ende.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num2_ArrowDown.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num2_ArrowDown.png
new file mode 100644
index 0000000..de979d1
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num2_ArrowDown.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num3_BildDown.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num3_BildDown.png
new file mode 100644
index 0000000..2229b96
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num3_BildDown.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num4_ArrowLeft.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num4_ArrowLeft.png
new file mode 100644
index 0000000..6ffa5d5
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num4_ArrowLeft.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num5.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num5.png
new file mode 100644
index 0000000..2cd2843
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num5.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num6_ArrowRight.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num6_ArrowRight.png
new file mode 100644
index 0000000..2e2eaa7
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num6_ArrowRight.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num7_Pos1.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num7_Pos1.png
new file mode 100644
index 0000000..b523d9b
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num7_Pos1.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num8_ArrowUp.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num8_ArrowUp.png
new file mode 100644
index 0000000..ad683d7
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num8_ArrowUp.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num9_BildUp.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num9_BildUp.png
new file mode 100644
index 0000000..f41195d
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Num9_BildUp.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/NumEnter.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/NumEnter.png
new file mode 100644
index 0000000..e52f4e6
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/NumEnter.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/NumPlus.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/NumPlus.png
new file mode 100644
index 0000000..db412dc
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/NumPlus.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/O.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/O.png
new file mode 100644
index 0000000..b9c8cef
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/O.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/OE.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/OE.png
new file mode 100644
index 0000000..f5b05a1
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/OE.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/P.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/P.png
new file mode 100644
index 0000000..5c918f9
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/P.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/PauseUntbr.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/PauseUntbr.png
new file mode 100644
index 0000000..efc9f39
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/PauseUntbr.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Plus_Asterisk_Tilde.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Plus_Asterisk_Tilde.png
new file mode 100644
index 0000000..b072a01
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Plus_Asterisk_Tilde.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Pos1.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Pos1.png
new file mode 100644
index 0000000..bf02468
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Pos1.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Q_At.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Q_At.png
new file mode 100644
index 0000000..365b987
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Q_At.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/QuestionMark_SharpS_Backslash.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/QuestionMark_SharpS_Backslash.png
new file mode 100644
index 0000000..91d17bf
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/QuestionMark_SharpS_Backslash.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/R.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/R.png
new file mode 100644
index 0000000..1cdbf0d
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/R.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Rollen.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Rollen.png
new file mode 100644
index 0000000..f3696df
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Rollen.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/S.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/S.png
new file mode 100644
index 0000000..919121d
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/S.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Shift.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Shift.png
new file mode 100644
index 0000000..9ac730f
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Shift.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/ShiftBig.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/ShiftBig.png
new file mode 100644
index 0000000..f5ea312
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/ShiftBig.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Slash.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Slash.png
new file mode 100644
index 0000000..13609b3
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Slash.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Space.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Space.png
new file mode 100644
index 0000000..6c09dcd
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Space.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Strg.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Strg.png
new file mode 100644
index 0000000..d3761c8
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Strg.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/T.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/T.png
new file mode 100644
index 0000000..00328f2
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/T.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Tab.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Tab.png
new file mode 100644
index 0000000..c52c503
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Tab.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/U.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/U.png
new file mode 100644
index 0000000..c015e3b
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/U.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/UE.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/UE.png
new file mode 100644
index 0000000..8d51805
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/UE.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/V.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/V.png
new file mode 100644
index 0000000..0155f45
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/V.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/W.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/W.png
new file mode 100644
index 0000000..b99c2da
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/W.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Windows.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Windows.png
new file mode 100644
index 0000000..68198cd
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Windows.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/X.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/X.png
new file mode 100644
index 0000000..1032b23
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/X.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Y.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Y.png
new file mode 100644
index 0000000..9c6632d
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Y.png differ
diff --git a/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Z.png b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Z.png
new file mode 100644
index 0000000..a05a3ac
Binary files /dev/null and b/RGB.NET.Devices.Logitech/Images/Logitech/Keyboards/Raptor_Keys/Z.png differ
diff --git a/RGB.NET.Devices.Logitech/Keyboard/LogitechKeyboardRGBDevice.cs b/RGB.NET.Devices.Logitech/Keyboard/LogitechKeyboardRGBDevice.cs
index bb9e35e..cdb5261 100644
--- a/RGB.NET.Devices.Logitech/Keyboard/LogitechKeyboardRGBDevice.cs
+++ b/RGB.NET.Devices.Logitech/Keyboard/LogitechKeyboardRGBDevice.cs
@@ -1,7 +1,6 @@
// ReSharper disable MemberCanBePrivate.Global
// ReSharper disable UnusedMember.Global
-using System;
using System.IO;
using System.Reflection;
@@ -40,8 +39,10 @@ namespace RGB.NET.Devices.Logitech
///
protected override void InitializeLayout()
{
- ApplyLayoutFromFile(Path.Combine(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location),
- $@"Layouts\Logitech\Keyboards\{KeyboardDeviceInfo.Model.Replace(" ", string.Empty).ToUpper()}\{KeyboardDeviceInfo.PhysicalLayout.ToString().ToUpper()}.xml"));
+ string model = KeyboardDeviceInfo.Model.Replace(" ", string.Empty).ToUpper();
+ ApplyLayoutFromFile(PathHelper.GetAbsolutePath(
+ $@"Layouts\Logitech\Keyboards\{model}\{KeyboardDeviceInfo.PhysicalLayout.ToString().ToUpper()}.xml"),
+ KeyboardDeviceInfo.LogicalLayout.ToString(), PathHelper.GetAbsolutePath($@"Images\Logitech\Keyboards"));
}
#endregion
diff --git a/RGB.NET.Devices.Logitech/Keyboard/LogitechKeyboardRGBDeviceInfo.cs b/RGB.NET.Devices.Logitech/Keyboard/LogitechKeyboardRGBDeviceInfo.cs
index 1a9d00b..e4ce2da 100644
--- a/RGB.NET.Devices.Logitech/Keyboard/LogitechKeyboardRGBDeviceInfo.cs
+++ b/RGB.NET.Devices.Logitech/Keyboard/LogitechKeyboardRGBDeviceInfo.cs
@@ -43,7 +43,7 @@ namespace RGB.NET.Devices.Logitech
SetLayouts(culture.KeyboardLayoutId);
Image = new Uri(Path.Combine(Path.GetDirectoryName(Assembly.GetEntryAssembly().Location),
- $@"Images\Logitech\Keyboards\{Model.Replace(" ", string.Empty).ToUpper()}\{LogicalLayout.ToString().ToUpper()}.png"), UriKind.Absolute);
+ $@"Images\Logitech\Keyboards\{Model.Replace(" ", string.Empty).ToUpper()}.png"), UriKind.Absolute);
}
private void SetLayouts(int keyboardLayoutId)
@@ -52,8 +52,8 @@ namespace RGB.NET.Devices.Logitech
{
//TODO DarthAffe 04.02.2017: Check all available keyboards and there layout-ids
default:
- PhysicalLayout = LogitechPhysicalKeyboardLayout.US;
- LogicalLayout = LogitechLogicalKeyboardLayout.NA;
+ PhysicalLayout = LogitechPhysicalKeyboardLayout.UK;
+ LogicalLayout = LogitechLogicalKeyboardLayout.DE;
break;
}
}
diff --git a/RGB.NET.Devices.Logitech/Layouts/DeviceLayout.xsd b/RGB.NET.Devices.Logitech/Layouts/DeviceLayout.xsd
new file mode 100644
index 0000000..92690b3
--- /dev/null
+++ b/RGB.NET.Devices.Logitech/Layouts/DeviceLayout.xsd
@@ -0,0 +1,63 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/RGB.NET.Devices.Logitech/Layouts/Logitech/Keyboards/G910/UK.xml b/RGB.NET.Devices.Logitech/Layouts/Logitech/Keyboards/G910/UK.xml
new file mode 100644
index 0000000..d748514
--- /dev/null
+++ b/RGB.NET.Devices.Logitech/Layouts/Logitech/Keyboards/G910/UK.xml
@@ -0,0 +1,388 @@
+
+
+ Logitech G910 - Physical UK
+ Physical UK-Layout of Logitech G910 (Logical: ???)
+ Keyboard
+ Key
+ Logitech
+ G910
+ 491
+ 238
+
+
+
+ 42
+ 28
+
+
+
+ +12.667
+
+
+
+
+
+
+ +12.667
+
+
+
+
+
+
+ +12.667
+
+
+
+
+
+
+ +6.75
+
+
+
+
+
+
+ 42
+ 52
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 2
+
+
+
+ +6.75
+
+
+
+
+
+ +6.75
+
+
+
+
+
+
+
+ 42
+ +
+ 1.5
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ M0,0 L0,0.5 L0.16666666666,0.5 L0.16666666666,1 L1,1 L1,0 Z
+ 1.5
+ 2
+
+
+
+ +6.75
+
+
+
+
+
+ +6.75
+
+
+
+
+ 2
+
+
+
+
+ 42
+ ~
+ 1.75
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +94.25
+
+
+
+
+
+
+ 42
+ +
+ 1.25
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 2.75
+
+
+
+ +25.75
+
+
+
+ +25.75
+
+
+
+
+ 2
+
+
+
+
+ 42
+ ~
+ 1.5
+
+
+ 1.25
+
+
+ 1.25
+
+
+ 5.75
+
+
+ 1.25
+
+
+ 1.25
+
+
+ 1.25
+
+
+ 1.5
+
+
+
+ +6.75
+
+
+
+
+
+ +6.75
+ 2
+
+
+
+
+
+ 18
+ 52
+
+
+ 18
+ +
+
+
+ 18
+ +
+
+
+ 18
+ +
+
+
+ 18
+ +
+
+
+
+ 73.667
+ 9
+
+
+
+
+
+
+ M 0.43535,0.91509 c -0.083,-0.013 -0.1809,-0.0541 -0.24123,-0.11683 -0.21672,-0.2247 -0.10831,-0.63995 0.19645,-0.71442 0.044,-0.0108 0.44173,-0.0156 0.47505,-0.006 0.0632,0.0184 0.0708,0.15184 0.0119,0.18175 -0.0174,0.009 -0.0369,0.009 -0.21797,0.009 -0.23755,0 -0.25559,-0.002 -0.3144,0.067 -0.14073,0.16404 -0.0357,0.36697 0.16357,0.40076 0.0569,0.01 0.0835,0.0391 0.0831,0.0846 -4.5e-4,0.0636 -0.0621,0.10873 -0.15647,0.0941 z m 0.36491,6.7e-4 c -0.0366,-0.0138 -0.0539,-0.0325 -0.0567,-0.0973 -0.006,-0.14226 -0.0741,-0.23758 -0.21563,-0.24355 -0.0562,-0.003 -0.0629,-0.004 -0.0811,-0.0233 -0.0344,-0.0359 -0.021,-0.11984 0.0238,-0.14402 0.0129,-0.007 0.0145,-0.007 0.19631,-0.007 0.25897,0 0.25297,0.005 0.25151,0.27271 -8e-4,0.17441 -8e-4,0.19394 -0.0107,0.20972 -0.0183,0.0297 -0.0769,0.0443 -0.10753,0.0326 Z
+ 18
+ 28
+
+
+ M 0,0 L0.15,1 0.85,1 L 1,0 Z
+ 92.5
+ 166.5
+ 55mm
+ 9mm
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/RGB.NET.Devices.Logitech/LogitechDeviceProvider.cs b/RGB.NET.Devices.Logitech/LogitechDeviceProvider.cs
index c9c3939..9a3fbe5 100644
--- a/RGB.NET.Devices.Logitech/LogitechDeviceProvider.cs
+++ b/RGB.NET.Devices.Logitech/LogitechDeviceProvider.cs
@@ -69,7 +69,6 @@ namespace RGB.NET.Devices.Logitech
if (!_LogitechGSDK.LogiLedInit()) return false;
_LogitechGSDK.LogiLedSaveCurrentLighting();
- _LogitechGSDK.LogiLedSetTargetDevice(LogitechDeviceCaps.PerKeyRGB);
IList devices = new List();
diff --git a/RGB.NET.Devices.Logitech/Native/_LogitechGSDK.cs b/RGB.NET.Devices.Logitech/Native/_LogitechGSDK.cs
index e93e2cc..cd4db5b 100644
--- a/RGB.NET.Devices.Logitech/Native/_LogitechGSDK.cs
+++ b/RGB.NET.Devices.Logitech/Native/_LogitechGSDK.cs
@@ -48,6 +48,7 @@ namespace RGB.NET.Devices.Logitech.Native
_lgiLedSaveCurrentLightingPointer = (LogiLedSaveCurrentLightingPointer)Marshal.GetDelegateForFunctionPointer(GetProcAddress(_dllHandle, "LogiLedSaveCurrentLighting"), typeof(LogiLedSaveCurrentLightingPointer));
_logiLedRestoreLightingPointer = (LogiLedRestoreLightingPointer)Marshal.GetDelegateForFunctionPointer(GetProcAddress(_dllHandle, "LogiLedRestoreLighting"), typeof(LogiLedRestoreLightingPointer));
_logiLedSetLightingForKeyWithKeyNamePointer = (LogiLedSetLightingForKeyWithKeyNamePointer)Marshal.GetDelegateForFunctionPointer(GetProcAddress(_dllHandle, "LogiLedSetLightingForKeyWithKeyName"), typeof(LogiLedSetLightingForKeyWithKeyNamePointer));
+ _logiLedSetLightingFromBitmapPointer = (LogiLedSetLightingFromBitmapPointer)Marshal.GetDelegateForFunctionPointer(GetProcAddress(_dllHandle, "LogiLedSetLightingFromBitmap"), typeof(LogiLedSetLightingFromBitmapPointer));
}
private static void UnloadLogitechGSDK()
@@ -83,6 +84,7 @@ namespace RGB.NET.Devices.Logitech.Native
private static LogiLedSaveCurrentLightingPointer _lgiLedSaveCurrentLightingPointer;
private static LogiLedRestoreLightingPointer _logiLedRestoreLightingPointer;
private static LogiLedSetLightingForKeyWithKeyNamePointer _logiLedSetLightingForKeyWithKeyNamePointer;
+ private static LogiLedSetLightingFromBitmapPointer _logiLedSetLightingFromBitmapPointer;
#endregion
@@ -109,6 +111,9 @@ namespace RGB.NET.Devices.Logitech.Native
[UnmanagedFunctionPointer(CallingConvention.Cdecl)]
private delegate bool LogiLedSetLightingForKeyWithKeyNamePointer(int keyCode, int redPercentage, int greenPercentage, int bluePercentage);
+ [UnmanagedFunctionPointer(CallingConvention.Cdecl)]
+ private delegate bool LogiLedSetLightingFromBitmapPointer(byte[] bitmap);
+
#endregion
// ReSharper disable EventExceptionNotDocumented
@@ -159,6 +164,11 @@ namespace RGB.NET.Devices.Logitech.Native
return _logiLedSetLightingForKeyWithKeyNamePointer(keyCode, redPercentage, greenPercentage, bluePercentage);
}
+ internal static bool LogiLedSetLightingFromBitmap(byte[] bitmap)
+ {
+ return _logiLedSetLightingFromBitmapPointer(bitmap);
+ }
+
// ReSharper restore EventExceptionNotDocumented
#endregion
diff --git a/RGB.NET.Devices.Logitech/RGB.NET.Devices.Logitech.csproj b/RGB.NET.Devices.Logitech/RGB.NET.Devices.Logitech.csproj
index 01fa985..3eebc0a 100644
--- a/RGB.NET.Devices.Logitech/RGB.NET.Devices.Logitech.csproj
+++ b/RGB.NET.Devices.Logitech/RGB.NET.Devices.Logitech.csproj
@@ -57,7 +57,9 @@
+
+
@@ -66,14 +68,130 @@
+
+ Designer
+
+
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Designer
+