Skip to content

Commit d16a03d

Browse files
committed
Remove LogiPy dependency for cleaner code
1 parent 881d207 commit d16a03d

File tree

7 files changed

+291
-565
lines changed

7 files changed

+291
-565
lines changed

README.md

-1
Original file line numberDiff line numberDiff line change
@@ -71,5 +71,4 @@ can add you as a contributer to the project.
7171

7272
- 10se1ucgo and JiFish for creating the [cue_sdk](https://github.com/10se1ucgo/cue_sdk) Python wrapper which is used in
7373
this project (Apache 2.0 License)
74-
- Logitech for providing [logiPy](https://github.com/Logitech/logiPy) on GitHub (MIT License)
7574

rgbkeyboards/logitech/defs.py

+127
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,127 @@
1+
"""
2+
DLL Definitions taken from the LogiPy Python package under the MIT License
3+
4+
Copyright (C) 2011-2015 Logitech
5+
"""
6+
ESC = 0x01
7+
F1 = 0x3b
8+
F2 = 0x3c
9+
F3 = 0x3d
10+
F4 = 0x3e
11+
F5 = 0x3f
12+
F6 = 0x40
13+
F7 = 0x41
14+
F8 = 0x42
15+
F9 = 0x43
16+
F10 = 0x44
17+
F11 = 0x57
18+
F12 = 0x58
19+
PRINT_SCREEN = 0x137
20+
SCROLL_LOCK = 0x46
21+
PAUSE_BREAK = 0x145
22+
TILDE = 0x29
23+
ONE = 0x02
24+
TWO = 0x03
25+
THREE = 0x04
26+
FOUR = 0x05
27+
FIVE = 0x06
28+
SIX = 0x07
29+
SEVEN = 0x08
30+
EIGHT = 0x09
31+
NINE = 0x0a
32+
ZERO = 0x0b
33+
MINUS = 0x0c
34+
EQUALS = 0x0d
35+
BACKSPACE = 0x0e
36+
INSERT = 0x152
37+
HOME = 0x147
38+
PAGE_UP = 0x149
39+
NUM_LOCK = 0x45
40+
NUM_SLASH = 0x135
41+
NUM_ASTERISK = 0x37
42+
NUM_MINUS = 0x4a
43+
TAB = 0x0f
44+
Q = 0x10
45+
W = 0x11
46+
E = 0x12
47+
R = 0x13
48+
T = 0x14
49+
Y = 0x15
50+
U = 0x16
51+
I = 0x17
52+
O = 0x18
53+
P = 0x19
54+
OPEN_BRACKET = 0x1a
55+
CLOSE_BRACKET = 0x1b
56+
BACKSLASH = 0x2b
57+
KEYBOARD_DELETE = 0x153
58+
END = 0x14f
59+
PAGE_DOWN = 0x151
60+
NUM_SEVEN = 0x47
61+
NUM_EIGHT = 0x48
62+
NUM_NINE = 0x49
63+
NUM_PLUS = 0x4e
64+
CAPS_LOCK = 0x3a
65+
A = 0x1e
66+
S = 0x1f
67+
D = 0x20
68+
F = 0x21
69+
G = 0x22
70+
H = 0x23
71+
J = 0x24
72+
K = 0x25
73+
L = 0x26
74+
SEMICOLON = 0x27
75+
APOSTROPHE = 0x28
76+
ENTER = 0x1c
77+
NUM_FOUR = 0x4b
78+
NUM_FIVE = 0x4c
79+
NUM_SIX = 0x4d
80+
LEFT_SHIFT = 0x2a
81+
Z = 0x2c
82+
X = 0x2d
83+
C = 0x2e
84+
V = 0x2f
85+
B = 0x30
86+
N = 0x31
87+
M = 0x32
88+
COMMA = 0x33
89+
PERIOD = 0x34
90+
FORWARD_SLASH = 0x35
91+
RIGHT_SHIFT = 0x36
92+
ARROW_UP = 0x148
93+
NUM_ONE = 0x4f
94+
NUM_TWO = 0x50
95+
NUM_THREE = 0x51
96+
NUM_ENTER = 0x11c
97+
LEFT_CONTROL = 0x1d
98+
LEFT_WINDOWS = 0x15b
99+
LEFT_ALT = 0x38
100+
SPACE = 0x39
101+
RIGHT_ALT = 0x138
102+
RIGHT_WINDOWS = 0x15c
103+
APPLICATION_SELECT = 0x15d
104+
RIGHT_CONTROL = 0x11d
105+
ARROW_LEFT = 0x14b
106+
ARROW_DOWN = 0x150
107+
ARROW_RIGHT = 0x14d
108+
NUM_ZERO = 0x52
109+
NUM_PERIOD = 0x53
110+
111+
LOGI_LED_BITMAP_WIDTH = 21
112+
LOGI_LED_BITMAP_HEIGHT = 6
113+
LOGI_LED_BITMAP_BYTES_PER_KEY = 4
114+
115+
LOGI_LED_BITMAP_SIZE = LOGI_LED_BITMAP_WIDTH * LOGI_LED_BITMAP_HEIGHT * LOGI_LED_BITMAP_BYTES_PER_KEY
116+
117+
LOGI_LED_DURATION_INFINITE = 0
118+
119+
LOGI_DEVICETYPE_MONOCHROME_ORD = 0
120+
LOGI_DEVICETYPE_RGB_ORD = 1
121+
LOGI_DEVICETYPE_PERKEY_RGB_ORD = 2
122+
123+
LOGI_DEVICETYPE_MONOCHROME = 1 << LOGI_DEVICETYPE_MONOCHROME_ORD
124+
LOGI_DEVICETYPE_RGB = 1 << LOGI_DEVICETYPE_RGB_ORD
125+
LOGI_DEVICETYPE_PERKEY_RGB = 1 << LOGI_DEVICETYPE_PERKEY_RGB_ORD
126+
127+
LOGI_DEVICETYPE_ALL = LOGI_DEVICETYPE_MONOCHROME | LOGI_DEVICETYPE_RGB | LOGI_DEVICETYPE_PERKEY_RGB

rgbkeyboards/logitech/keys.py

+113-112
Original file line numberDiff line numberDiff line change
@@ -1,116 +1,117 @@
11
# Python RGB Keyboards, Copyright (C) 2017 by RedFantom
22
# All additions are under the copyright of their respective authors
33
# For license see LICENSE
4-
from .logipy.logi_led import *
4+
from .defs import *
55

6-
keys = {'esc': ESC,
7-
'F1': F1,
8-
'F2': F2,
9-
'F3': F3,
10-
'F4': F4,
11-
'F5': F5,
12-
'F6': F6,
13-
'F7': F7,
14-
'F8': F8,
15-
'F9': F9,
16-
'F10': F10,
17-
'F11': F11,
18-
'F12': F12,
19-
'printscreen': PRINT_SCREEN,
20-
'scrolllock': SCROLL_LOCK,
21-
'pause': PAUSE_BREAK,
22-
'P1': None,
23-
'P2': None,
24-
'P3': None,
25-
'P4': None,
26-
'`': TILDE,
27-
'1': ONE,
28-
'2': TWO,
29-
'3': THREE,
30-
'4': FOUR,
31-
'5': FIVE,
32-
'6': SIX,
33-
'7': SEVEN,
34-
'8': EIGHT,
35-
'9': NINE,
36-
'0': ZERO,
37-
'-': MINUS,
38-
'=': EQUALS,
39-
'backspace': BACKSPACE,
40-
'insert': INSERT,
41-
'home': HOME,
42-
'pageup': PAGE_UP,
43-
'numlock': NUM_LOCK,
44-
'(/)': NUM_SLASH,
45-
'(*)': NUM_ASTERISK,
46-
'(-)': NUM_MINUS,
47-
'tab': TAB,
48-
'q': Q,
49-
'w': W,
50-
'e': E,
51-
'r': R,
52-
't': T,
53-
'y': Y,
54-
'u': U,
55-
'i': I,
56-
'o': O,
57-
'p': P,
58-
'[': OPEN_BRACKET,
59-
']': CLOSE_BRACKET,
60-
'enter': ENTER,
61-
'delete': KEYBOARD_DELETE,
62-
'end': END,
63-
'pagedown': PAGE_DOWN,
64-
'(7)': NUM_SEVEN,
65-
'(8)': NUM_EIGHT,
66-
'(9)': NUM_NINE,
67-
'(+)': NUM_PLUS,
68-
'capslock': CAPS_LOCK,
69-
'a': A,
70-
's': S,
71-
'd': D,
72-
'f': F,
73-
'g': G,
74-
'h': H,
75-
'j': J,
76-
'k': K,
77-
'l': L,
78-
';': SEMICOLON,
79-
'\'': APOSTROPHE,
80-
'\\': BACKSLASH,
81-
'(4)': NUM_FOUR,
82-
'(5)': NUM_FIVE,
83-
'(6)': NUM_SIX,
84-
'shift_l': LEFT_SHIFT,
85-
'eu': None,
86-
'z': Z,
87-
'x': X,
88-
'c': C,
89-
'v': V,
90-
'b': B,
91-
'n': N,
92-
'm': M,
93-
',': COMMA,
94-
'.': PERIOD,
95-
'/': FORWARD_SLASH,
96-
'shift_r': RIGHT_SHIFT,
97-
'up': ARROW_UP,
98-
'(1)': NUM_ONE,
99-
'(2)': NUM_TWO,
100-
'(3)': NUM_THREE,
101-
'(enter)': NUM_ENTER,
102-
'ctrl_l': LEFT_CONTROL,
103-
'win_l': LEFT_WINDOWS,
104-
'alt_l': LEFT_ALT,
105-
'space': SPACE,
106-
'alt_r': RIGHT_ALT,
107-
'win_r': RIGHT_WINDOWS,
108-
'app': APPLICATION_SELECT,
109-
'ctrl_r': RIGHT_CONTROL,
110-
'left': ARROW_LEFT,
111-
'down': ARROW_DOWN,
112-
'right': ARROW_RIGHT,
113-
'(0)': NUM_ZERO,
114-
'(.)': NUM_PERIOD,
115-
'(00)': None
116-
}
6+
keys = {
7+
'esc': ESC,
8+
'F1': F1,
9+
'F2': F2,
10+
'F3': F3,
11+
'F4': F4,
12+
'F5': F5,
13+
'F6': F6,
14+
'F7': F7,
15+
'F8': F8,
16+
'F9': F9,
17+
'F10': F10,
18+
'F11': F11,
19+
'F12': F12,
20+
'printscreen': PRINT_SCREEN,
21+
'scrolllock': SCROLL_LOCK,
22+
'pause': PAUSE_BREAK,
23+
'P1': None,
24+
'P2': None,
25+
'P3': None,
26+
'P4': None,
27+
'`': TILDE,
28+
'1': ONE,
29+
'2': TWO,
30+
'3': THREE,
31+
'4': FOUR,
32+
'5': FIVE,
33+
'6': SIX,
34+
'7': SEVEN,
35+
'8': EIGHT,
36+
'9': NINE,
37+
'0': ZERO,
38+
'-': MINUS,
39+
'=': EQUALS,
40+
'backspace': BACKSPACE,
41+
'insert': INSERT,
42+
'home': HOME,
43+
'pageup': PAGE_UP,
44+
'numlock': NUM_LOCK,
45+
'(/)': NUM_SLASH,
46+
'(*)': NUM_ASTERISK,
47+
'(-)': NUM_MINUS,
48+
'tab': TAB,
49+
'q': Q,
50+
'w': W,
51+
'e': E,
52+
'r': R,
53+
't': T,
54+
'y': Y,
55+
'u': U,
56+
'i': I,
57+
'o': O,
58+
'p': P,
59+
'[': OPEN_BRACKET,
60+
']': CLOSE_BRACKET,
61+
'enter': ENTER,
62+
'delete': KEYBOARD_DELETE,
63+
'end': END,
64+
'pagedown': PAGE_DOWN,
65+
'(7)': NUM_SEVEN,
66+
'(8)': NUM_EIGHT,
67+
'(9)': NUM_NINE,
68+
'(+)': NUM_PLUS,
69+
'capslock': CAPS_LOCK,
70+
'a': A,
71+
's': S,
72+
'd': D,
73+
'f': F,
74+
'g': G,
75+
'h': H,
76+
'j': J,
77+
'k': K,
78+
'l': L,
79+
';': SEMICOLON,
80+
'\'': APOSTROPHE,
81+
'\\': BACKSLASH,
82+
'(4)': NUM_FOUR,
83+
'(5)': NUM_FIVE,
84+
'(6)': NUM_SIX,
85+
'shift_l': LEFT_SHIFT,
86+
'eu': None,
87+
'z': Z,
88+
'x': X,
89+
'c': C,
90+
'v': V,
91+
'b': B,
92+
'n': N,
93+
'm': M,
94+
',': COMMA,
95+
'.': PERIOD,
96+
'/': FORWARD_SLASH,
97+
'shift_r': RIGHT_SHIFT,
98+
'up': ARROW_UP,
99+
'(1)': NUM_ONE,
100+
'(2)': NUM_TWO,
101+
'(3)': NUM_THREE,
102+
'(enter)': NUM_ENTER,
103+
'ctrl_l': LEFT_CONTROL,
104+
'win_l': LEFT_WINDOWS,
105+
'alt_l': LEFT_ALT,
106+
'space': SPACE,
107+
'alt_r': RIGHT_ALT,
108+
'win_r': RIGHT_WINDOWS,
109+
'app': APPLICATION_SELECT,
110+
'ctrl_r': RIGHT_CONTROL,
111+
'left': ARROW_LEFT,
112+
'down': ARROW_DOWN,
113+
'right': ARROW_RIGHT,
114+
'(0)': NUM_ZERO,
115+
'(.)': NUM_PERIOD,
116+
'(00)': None
117+
}

rgbkeyboards/logitech/logipy/LICENSE

-22
This file was deleted.

rgbkeyboards/logitech/logipy/__init__.py

Whitespace-only changes.

0 commit comments

Comments
 (0)