reflexion 0.3.14 → 0.3.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.doc/ext/reflex/key_event.cpp +10 -4
- data/.doc/ext/reflex/view.cpp +1 -2
- data/.github/workflows/release-gem.yml +3 -0
- data/.github/workflows/utils.rb +88 -17
- data/ChangeLog.md +12 -0
- data/VERSION +1 -1
- data/ext/reflex/extconf.rb +1 -6
- data/ext/reflex/key_event.cpp +10 -4
- data/ext/reflex/view.cpp +1 -2
- data/include/reflex/defs.h +316 -196
- data/include/reflex/ruby.h +2 -2
- data/include/reflex.h +2 -2
- data/lib/reflex/extension.rb +8 -2
- data/reflex.gemspec +4 -5
- data/src/application.cpp +12 -0
- data/src/application.h +2 -0
- data/src/midi.cpp +4 -0
- data/src/osx/device.mm +3 -0
- data/src/sdl/application.cpp +40 -16
- data/src/sdl/event.cpp +176 -0
- data/src/sdl/event.h +58 -0
- data/src/sdl/window.cpp +103 -22
- data/src/shape.cpp +1 -7
- data/src/style.cpp +1 -1
- data/src/timer.cpp +3 -0
- data/src/win32/event.cpp +0 -1
- metadata +10 -8
data/include/reflex/defs.h
CHANGED
|
@@ -48,6 +48,8 @@ namespace Reflex
|
|
|
48
48
|
|
|
49
49
|
using Rays::String;
|
|
50
50
|
|
|
51
|
+
using Rays::StringList;
|
|
52
|
+
|
|
51
53
|
|
|
52
54
|
using Rays::coord;
|
|
53
55
|
|
|
@@ -76,208 +78,324 @@ namespace Reflex
|
|
|
76
78
|
KEY_NONE = -1,
|
|
77
79
|
|
|
78
80
|
#if defined(WIN32)
|
|
79
|
-
#define NATIVE_VK(
|
|
81
|
+
#define NATIVE_VK(darwin, win32, sdl) win32
|
|
82
|
+
#elif defined(LINUX)
|
|
83
|
+
#define NATIVE_VK(darwin, win32, sdl) sdl
|
|
80
84
|
#else
|
|
81
|
-
#define NATIVE_VK(darwin,
|
|
85
|
+
#define NATIVE_VK(darwin, win32, sdl) darwin
|
|
82
86
|
#endif
|
|
83
87
|
|
|
84
|
-
KEY_A = NATIVE_VK(0x00, 0x41),
|
|
85
|
-
KEY_B = NATIVE_VK(0x0B, 0x42),
|
|
86
|
-
KEY_C = NATIVE_VK(0x08, 0x43),
|
|
87
|
-
KEY_D = NATIVE_VK(0x02, 0x44),
|
|
88
|
-
KEY_E = NATIVE_VK(0x0E, 0x45),
|
|
89
|
-
KEY_F = NATIVE_VK(0x03, 0x46),
|
|
90
|
-
KEY_G = NATIVE_VK(0x05, 0x47),
|
|
91
|
-
KEY_H = NATIVE_VK(0x04, 0x48),
|
|
92
|
-
KEY_I = NATIVE_VK(0x22, 0x49),
|
|
93
|
-
KEY_J = NATIVE_VK(0x26,
|
|
94
|
-
KEY_K = NATIVE_VK(0x28,
|
|
95
|
-
KEY_L = NATIVE_VK(0x25,
|
|
96
|
-
KEY_M = NATIVE_VK(0x2E,
|
|
97
|
-
KEY_N = NATIVE_VK(0x2D,
|
|
98
|
-
KEY_O = NATIVE_VK(0x1F,
|
|
99
|
-
KEY_P = NATIVE_VK(0x23, 0x50),
|
|
100
|
-
KEY_Q = NATIVE_VK(0x0C, 0x51),
|
|
101
|
-
KEY_R = NATIVE_VK(0x0F, 0x52),
|
|
102
|
-
KEY_S = NATIVE_VK(0x01, 0x53),
|
|
103
|
-
KEY_T = NATIVE_VK(0x11, 0x54),
|
|
104
|
-
KEY_U = NATIVE_VK(0x20, 0x55),
|
|
105
|
-
KEY_V = NATIVE_VK(0x09, 0x56),
|
|
106
|
-
KEY_W = NATIVE_VK(0x0D, 0x57),
|
|
107
|
-
KEY_X = NATIVE_VK(0x07, 0x58),
|
|
108
|
-
KEY_Y = NATIVE_VK(0x10, 0x59),
|
|
109
|
-
KEY_Z = NATIVE_VK(0x06,
|
|
110
|
-
|
|
111
|
-
KEY_0 = NATIVE_VK(0x1D, 0x30),
|
|
112
|
-
KEY_1 = NATIVE_VK(0x12, 0x31),
|
|
113
|
-
KEY_2 = NATIVE_VK(0x13, 0x32),
|
|
114
|
-
KEY_3 = NATIVE_VK(0x14, 0x33),
|
|
115
|
-
KEY_4 = NATIVE_VK(0x15, 0x34),
|
|
116
|
-
KEY_5 = NATIVE_VK(0x17, 0x35),
|
|
117
|
-
KEY_6 = NATIVE_VK(0x16, 0x36),
|
|
118
|
-
KEY_7 = NATIVE_VK(0x1A, 0x37),
|
|
119
|
-
KEY_8 = NATIVE_VK(0x1C, 0x38),
|
|
120
|
-
KEY_9 = NATIVE_VK(0x19, 0x39),
|
|
121
|
-
|
|
122
|
-
KEY_MINUS = NATIVE_VK(0x1B, -2),
|
|
123
|
-
KEY_EQUAL = NATIVE_VK(0x18, -3),
|
|
124
|
-
KEY_COMMA = NATIVE_VK(0x2B, -4),
|
|
125
|
-
KEY_PERIOD = NATIVE_VK(0x2F, -5),
|
|
126
|
-
KEY_SEMICOLON = NATIVE_VK(0x29, -6),
|
|
127
|
-
KEY_QUOTE = NATIVE_VK(0x27, -7),
|
|
128
|
-
KEY_SLASH = NATIVE_VK(0x2C, -8),
|
|
129
|
-
KEY_BACKSLASH = NATIVE_VK(0x2A, -9),
|
|
130
|
-
KEY_UNDERSCORE = NATIVE_VK(0x5E, -10)
|
|
131
|
-
KEY_GRAVE = NATIVE_VK(0x32, -11),
|
|
132
|
-
KEY_YEN = NATIVE_VK(0x5D, -12),
|
|
133
|
-
KEY_LBRACKET = NATIVE_VK(0x21, -13),
|
|
134
|
-
KEY_RBRACKET = NATIVE_VK(0x1E, -14),
|
|
135
|
-
|
|
136
|
-
KEY_ENTER = NATIVE_VK(0x24, 0x0D),
|
|
137
|
-
KEY_RETURN = NATIVE_VK(0x24, 0x0D),
|
|
138
|
-
KEY_SPACE = NATIVE_VK(0x31, 0x20),
|
|
139
|
-
KEY_TAB = NATIVE_VK(0x30, 0x09),
|
|
140
|
-
KEY_DELETE = NATIVE_VK(0x75, 0x2E),
|
|
141
|
-
KEY_BACKSPACE = NATIVE_VK(0x33, 0x08),
|
|
142
|
-
KEY_INSERT = NATIVE_VK(-2, 0x2D),
|
|
143
|
-
KEY_ESCAPE = NATIVE_VK(0x35, 0x1B),
|
|
144
|
-
|
|
145
|
-
KEY_LEFT = NATIVE_VK(0x7B, 0x25),
|
|
146
|
-
KEY_RIGHT = NATIVE_VK(0x7C, 0x27),
|
|
147
|
-
KEY_UP = NATIVE_VK(0x7E, 0x26),
|
|
148
|
-
KEY_DOWN = NATIVE_VK(0x7D, 0x28),
|
|
149
|
-
KEY_HOME = NATIVE_VK(0x73, 0x24),
|
|
150
|
-
KEY_END = NATIVE_VK(0x77, 0x23),
|
|
151
|
-
KEY_PAGEUP = NATIVE_VK(0x74, 0x21),
|
|
152
|
-
KEY_PAGEDOWN = NATIVE_VK(0x79, 0x22),
|
|
153
|
-
|
|
154
|
-
KEY_SHIFT = NATIVE_VK(0x38, 0x10),
|
|
155
|
-
KEY_LSHIFT = NATIVE_VK(0x38, 0xA0),
|
|
156
|
-
KEY_RSHIFT = NATIVE_VK(0x3C, 0xA1),
|
|
157
|
-
KEY_CONTROL = NATIVE_VK(0x3B, 0x11),
|
|
158
|
-
KEY_LCONTROL = NATIVE_VK(0x3B, 0xA2),
|
|
159
|
-
KEY_RCONTROL = NATIVE_VK(0x3E, 0xA3),
|
|
160
|
-
KEY_ALT = NATIVE_VK(-3, 0x12),
|
|
161
|
-
KEY_LALT = NATIVE_VK(-4, 0xA4),
|
|
162
|
-
KEY_RALT = NATIVE_VK(-5, 0xA5),
|
|
163
|
-
KEY_LWIN = NATIVE_VK(-6, 0x5B),
|
|
164
|
-
KEY_RWIN = NATIVE_VK(-7, 0x5C),
|
|
165
|
-
KEY_COMMAND = NATIVE_VK(0x37, -15),
|
|
166
|
-
KEY_LCOMMAND = NATIVE_VK(0x37, -16),
|
|
167
|
-
KEY_RCOMMAND = NATIVE_VK(0x36, -17),
|
|
168
|
-
KEY_OPTION = NATIVE_VK(0x3A, -18),
|
|
169
|
-
KEY_LOPTION = NATIVE_VK(0x3A, -19),
|
|
170
|
-
KEY_ROPTION = NATIVE_VK(0x3D, -20),
|
|
171
|
-
KEY_FUNCTION = NATIVE_VK(0x3F, -21),
|
|
172
|
-
|
|
173
|
-
KEY_F1 = NATIVE_VK(0x7A, 0x70),
|
|
174
|
-
KEY_F2 = NATIVE_VK(0x78, 0x71),
|
|
175
|
-
KEY_F3 = NATIVE_VK(0x63, 0x72),
|
|
176
|
-
KEY_F4 = NATIVE_VK(0x76, 0x73),
|
|
177
|
-
KEY_F5 = NATIVE_VK(0x60, 0x74),
|
|
178
|
-
KEY_F6 = NATIVE_VK(0x61, 0x75),
|
|
179
|
-
KEY_F7 = NATIVE_VK(0x62, 0x76),
|
|
180
|
-
KEY_F8 = NATIVE_VK(0x64, 0x77),
|
|
181
|
-
KEY_F9 = NATIVE_VK(0x65, 0x78),
|
|
182
|
-
KEY_F10 = NATIVE_VK(0x6D, 0x79),
|
|
183
|
-
KEY_F11 = NATIVE_VK(0x67, 0x7A),
|
|
184
|
-
KEY_F12 = NATIVE_VK(0x6F, 0x7B),
|
|
185
|
-
KEY_F13 = NATIVE_VK(0x69, 0x7C),
|
|
186
|
-
KEY_F14 = NATIVE_VK(0x6B, 0x7D),
|
|
187
|
-
KEY_F15 = NATIVE_VK(0x71, 0x7E),
|
|
188
|
-
KEY_F16 = NATIVE_VK(0x6A, 0x7F),
|
|
189
|
-
KEY_F17 = NATIVE_VK(0x40, 0x80),
|
|
190
|
-
KEY_F18 = NATIVE_VK(0x4F, 0x81),
|
|
191
|
-
KEY_F19 = NATIVE_VK(0x50, 0x82),
|
|
192
|
-
KEY_F20 = NATIVE_VK(0x5A, 0x83),
|
|
193
|
-
KEY_F21 = NATIVE_VK(-8, 0x84),
|
|
194
|
-
KEY_F22 = NATIVE_VK(-9, 0x85),
|
|
195
|
-
KEY_F23 = NATIVE_VK(-10, 0x86),
|
|
196
|
-
KEY_F24 = NATIVE_VK(-11, 0x87),
|
|
197
|
-
|
|
198
|
-
KEY_NUM_0 = NATIVE_VK(0x52, 0x60),
|
|
199
|
-
KEY_NUM_1 = NATIVE_VK(0x53, 0x61),
|
|
200
|
-
KEY_NUM_2 = NATIVE_VK(0x54, 0x62),
|
|
201
|
-
KEY_NUM_3 = NATIVE_VK(0x55, 0x63),
|
|
202
|
-
KEY_NUM_4 = NATIVE_VK(0x56, 0x64),
|
|
203
|
-
KEY_NUM_5 = NATIVE_VK(0x57, 0x65),
|
|
204
|
-
KEY_NUM_6 = NATIVE_VK(0x58, 0x66),
|
|
205
|
-
KEY_NUM_7 = NATIVE_VK(0x59, 0x67),
|
|
206
|
-
KEY_NUM_8 = NATIVE_VK(0x5B, 0x68),
|
|
207
|
-
KEY_NUM_9 = NATIVE_VK(0x5C, 0x69),
|
|
208
|
-
|
|
209
|
-
KEY_NUM_PLUS = NATIVE_VK(0x45, -22),
|
|
210
|
-
KEY_NUM_MINUS = NATIVE_VK(0x4E, -23),
|
|
211
|
-
KEY_NUM_MULTIPLY = NATIVE_VK(0x43, -24),
|
|
212
|
-
KEY_NUM_DIVIDE = NATIVE_VK(0x4B, -25),
|
|
213
|
-
KEY_NUM_EQUAL = NATIVE_VK(0x51, -26),
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
88
|
+
KEY_A = NATIVE_VK(0x00, 0x41, 0x04),
|
|
89
|
+
KEY_B = NATIVE_VK(0x0B, 0x42, 0x05),
|
|
90
|
+
KEY_C = NATIVE_VK(0x08, 0x43, 0x06),
|
|
91
|
+
KEY_D = NATIVE_VK(0x02, 0x44, 0x07),
|
|
92
|
+
KEY_E = NATIVE_VK(0x0E, 0x45, 0x08),
|
|
93
|
+
KEY_F = NATIVE_VK(0x03, 0x46, 0x09),
|
|
94
|
+
KEY_G = NATIVE_VK(0x05, 0x47, 0x0A),
|
|
95
|
+
KEY_H = NATIVE_VK(0x04, 0x48, 0x0B),
|
|
96
|
+
KEY_I = NATIVE_VK(0x22, 0x49, 0x0C),
|
|
97
|
+
KEY_J = NATIVE_VK(0x26, 0x4A, 0x0D),
|
|
98
|
+
KEY_K = NATIVE_VK(0x28, 0x4B, 0x0E),
|
|
99
|
+
KEY_L = NATIVE_VK(0x25, 0x4C, 0x0F),
|
|
100
|
+
KEY_M = NATIVE_VK(0x2E, 0x4D, 0x10),
|
|
101
|
+
KEY_N = NATIVE_VK(0x2D, 0x4E, 0x11),
|
|
102
|
+
KEY_O = NATIVE_VK(0x1F, 0x4F, 0x12),
|
|
103
|
+
KEY_P = NATIVE_VK(0x23, 0x50, 0x13),
|
|
104
|
+
KEY_Q = NATIVE_VK(0x0C, 0x51, 0x14),
|
|
105
|
+
KEY_R = NATIVE_VK(0x0F, 0x52, 0x15),
|
|
106
|
+
KEY_S = NATIVE_VK(0x01, 0x53, 0x16),
|
|
107
|
+
KEY_T = NATIVE_VK(0x11, 0x54, 0x17),
|
|
108
|
+
KEY_U = NATIVE_VK(0x20, 0x55, 0x18),
|
|
109
|
+
KEY_V = NATIVE_VK(0x09, 0x56, 0x19),
|
|
110
|
+
KEY_W = NATIVE_VK(0x0D, 0x57, 0x1A),
|
|
111
|
+
KEY_X = NATIVE_VK(0x07, 0x58, 0x1B),
|
|
112
|
+
KEY_Y = NATIVE_VK(0x10, 0x59, 0x1C),
|
|
113
|
+
KEY_Z = NATIVE_VK(0x06, 0x5A, 0x1D),
|
|
114
|
+
|
|
115
|
+
KEY_0 = NATIVE_VK(0x1D, 0x30, 0x27),
|
|
116
|
+
KEY_1 = NATIVE_VK(0x12, 0x31, 0x1E),
|
|
117
|
+
KEY_2 = NATIVE_VK(0x13, 0x32, 0x1F),
|
|
118
|
+
KEY_3 = NATIVE_VK(0x14, 0x33, 0x20),
|
|
119
|
+
KEY_4 = NATIVE_VK(0x15, 0x34, 0x21),
|
|
120
|
+
KEY_5 = NATIVE_VK(0x17, 0x35, 0x22),
|
|
121
|
+
KEY_6 = NATIVE_VK(0x16, 0x36, 0x23),
|
|
122
|
+
KEY_7 = NATIVE_VK(0x1A, 0x37, 0x24),
|
|
123
|
+
KEY_8 = NATIVE_VK(0x1C, 0x38, 0x25),
|
|
124
|
+
KEY_9 = NATIVE_VK(0x19, 0x39, 0x26),
|
|
125
|
+
|
|
126
|
+
KEY_MINUS = NATIVE_VK(0x1B, -2, 0x2D),
|
|
127
|
+
KEY_EQUAL = NATIVE_VK(0x18, -3, 0x2E),
|
|
128
|
+
KEY_COMMA = NATIVE_VK(0x2B, -4, 0x36),
|
|
129
|
+
KEY_PERIOD = NATIVE_VK(0x2F, -5, 0x37),
|
|
130
|
+
KEY_SEMICOLON = NATIVE_VK(0x29, -6, 0x33),
|
|
131
|
+
KEY_QUOTE = NATIVE_VK(0x27, -7, 0x34),
|
|
132
|
+
KEY_SLASH = NATIVE_VK(0x2C, -8, 0x38),
|
|
133
|
+
KEY_BACKSLASH = NATIVE_VK(0x2A, -9, 0x31),
|
|
134
|
+
KEY_UNDERSCORE = NATIVE_VK(0x5E, -10, 0x87),// JIS
|
|
135
|
+
KEY_GRAVE = NATIVE_VK(0x32, -11, 0x35),
|
|
136
|
+
KEY_YEN = NATIVE_VK(0x5D, -12, 0x89),
|
|
137
|
+
KEY_LBRACKET = NATIVE_VK(0x21, -13, 0x2F),
|
|
138
|
+
KEY_RBRACKET = NATIVE_VK(0x1E, -14, 0x30),
|
|
139
|
+
|
|
140
|
+
KEY_ENTER = NATIVE_VK(0x24, 0x0D, 0x28),
|
|
141
|
+
KEY_RETURN = NATIVE_VK(0x24, 0x0D, 0x28),
|
|
142
|
+
KEY_SPACE = NATIVE_VK(0x31, 0x20, 0x2C),
|
|
143
|
+
KEY_TAB = NATIVE_VK(0x30, 0x09, 0x2B),
|
|
144
|
+
KEY_DELETE = NATIVE_VK(0x75, 0x2E, 0x4C),
|
|
145
|
+
KEY_BACKSPACE = NATIVE_VK(0x33, 0x08, 0x2A),
|
|
146
|
+
KEY_INSERT = NATIVE_VK(-2, 0x2D, 0x49),
|
|
147
|
+
KEY_ESCAPE = NATIVE_VK(0x35, 0x1B, 0x29),
|
|
148
|
+
|
|
149
|
+
KEY_LEFT = NATIVE_VK(0x7B, 0x25, 0x50),
|
|
150
|
+
KEY_RIGHT = NATIVE_VK(0x7C, 0x27, 0x4F),
|
|
151
|
+
KEY_UP = NATIVE_VK(0x7E, 0x26, 0x52),
|
|
152
|
+
KEY_DOWN = NATIVE_VK(0x7D, 0x28, 0x51),
|
|
153
|
+
KEY_HOME = NATIVE_VK(0x73, 0x24, 0x4A),
|
|
154
|
+
KEY_END = NATIVE_VK(0x77, 0x23, 0x4D),
|
|
155
|
+
KEY_PAGEUP = NATIVE_VK(0x74, 0x21, 0x4B),
|
|
156
|
+
KEY_PAGEDOWN = NATIVE_VK(0x79, 0x22, 0x4E),
|
|
157
|
+
|
|
158
|
+
KEY_SHIFT = NATIVE_VK(0x38, 0x10, 0xE1),
|
|
159
|
+
KEY_LSHIFT = NATIVE_VK(0x38, 0xA0, 0xE1),
|
|
160
|
+
KEY_RSHIFT = NATIVE_VK(0x3C, 0xA1, 0xE5),
|
|
161
|
+
KEY_CONTROL = NATIVE_VK(0x3B, 0x11, 0xE0),
|
|
162
|
+
KEY_LCONTROL = NATIVE_VK(0x3B, 0xA2, 0xE0),
|
|
163
|
+
KEY_RCONTROL = NATIVE_VK(0x3E, 0xA3, 0xE4),
|
|
164
|
+
KEY_ALT = NATIVE_VK(-3, 0x12, 0xE2),
|
|
165
|
+
KEY_LALT = NATIVE_VK(-4, 0xA4, 0xE2),
|
|
166
|
+
KEY_RALT = NATIVE_VK(-5, 0xA5, 0xE6),
|
|
167
|
+
KEY_LWIN = NATIVE_VK(-6, 0x5B, 0xE3),
|
|
168
|
+
KEY_RWIN = NATIVE_VK(-7, 0x5C, 0xE7),
|
|
169
|
+
KEY_COMMAND = NATIVE_VK(0x37, -15, 0xE3),
|
|
170
|
+
KEY_LCOMMAND = NATIVE_VK(0x37, -16, 0xE3),
|
|
171
|
+
KEY_RCOMMAND = NATIVE_VK(0x36, -17, 0xE7),
|
|
172
|
+
KEY_OPTION = NATIVE_VK(0x3A, -18, 0xE2),
|
|
173
|
+
KEY_LOPTION = NATIVE_VK(0x3A, -19, 0xE2),
|
|
174
|
+
KEY_ROPTION = NATIVE_VK(0x3D, -20, 0xE6),
|
|
175
|
+
KEY_FUNCTION = NATIVE_VK(0x3F, -21, -2),
|
|
176
|
+
|
|
177
|
+
KEY_F1 = NATIVE_VK(0x7A, 0x70, 0x3A),
|
|
178
|
+
KEY_F2 = NATIVE_VK(0x78, 0x71, 0x3B),
|
|
179
|
+
KEY_F3 = NATIVE_VK(0x63, 0x72, 0x3C),
|
|
180
|
+
KEY_F4 = NATIVE_VK(0x76, 0x73, 0x3D),
|
|
181
|
+
KEY_F5 = NATIVE_VK(0x60, 0x74, 0x3E),
|
|
182
|
+
KEY_F6 = NATIVE_VK(0x61, 0x75, 0x3F),
|
|
183
|
+
KEY_F7 = NATIVE_VK(0x62, 0x76, 0x40),
|
|
184
|
+
KEY_F8 = NATIVE_VK(0x64, 0x77, 0x41),
|
|
185
|
+
KEY_F9 = NATIVE_VK(0x65, 0x78, 0x42),
|
|
186
|
+
KEY_F10 = NATIVE_VK(0x6D, 0x79, 0x43),
|
|
187
|
+
KEY_F11 = NATIVE_VK(0x67, 0x7A, 0x44),
|
|
188
|
+
KEY_F12 = NATIVE_VK(0x6F, 0x7B, 0x45),
|
|
189
|
+
KEY_F13 = NATIVE_VK(0x69, 0x7C, 0x68),
|
|
190
|
+
KEY_F14 = NATIVE_VK(0x6B, 0x7D, 0x69),
|
|
191
|
+
KEY_F15 = NATIVE_VK(0x71, 0x7E, 0x6A),
|
|
192
|
+
KEY_F16 = NATIVE_VK(0x6A, 0x7F, 0x6B),
|
|
193
|
+
KEY_F17 = NATIVE_VK(0x40, 0x80, 0x6C),
|
|
194
|
+
KEY_F18 = NATIVE_VK(0x4F, 0x81, 0x6D),
|
|
195
|
+
KEY_F19 = NATIVE_VK(0x50, 0x82, 0x6E),
|
|
196
|
+
KEY_F20 = NATIVE_VK(0x5A, 0x83, 0x6F),
|
|
197
|
+
KEY_F21 = NATIVE_VK(-8, 0x84, 0x70),
|
|
198
|
+
KEY_F22 = NATIVE_VK(-9, 0x85, 0x71),
|
|
199
|
+
KEY_F23 = NATIVE_VK(-10, 0x86, 0x72),
|
|
200
|
+
KEY_F24 = NATIVE_VK(-11, 0x87, 0x73),
|
|
201
|
+
|
|
202
|
+
KEY_NUM_0 = NATIVE_VK(0x52, 0x60, 0x62),
|
|
203
|
+
KEY_NUM_1 = NATIVE_VK(0x53, 0x61, 0x59),
|
|
204
|
+
KEY_NUM_2 = NATIVE_VK(0x54, 0x62, 0x5A),
|
|
205
|
+
KEY_NUM_3 = NATIVE_VK(0x55, 0x63, 0x5B),
|
|
206
|
+
KEY_NUM_4 = NATIVE_VK(0x56, 0x64, 0x5C),
|
|
207
|
+
KEY_NUM_5 = NATIVE_VK(0x57, 0x65, 0x5D),
|
|
208
|
+
KEY_NUM_6 = NATIVE_VK(0x58, 0x66, 0x5E),
|
|
209
|
+
KEY_NUM_7 = NATIVE_VK(0x59, 0x67, 0x5F),
|
|
210
|
+
KEY_NUM_8 = NATIVE_VK(0x5B, 0x68, 0x60),
|
|
211
|
+
KEY_NUM_9 = NATIVE_VK(0x5C, 0x69, 0x61),
|
|
212
|
+
|
|
213
|
+
KEY_NUM_PLUS = NATIVE_VK(0x45, -22, 0x57),
|
|
214
|
+
KEY_NUM_MINUS = NATIVE_VK(0x4E, -23, 0x56),
|
|
215
|
+
KEY_NUM_MULTIPLY = NATIVE_VK(0x43, -24, 0x55),
|
|
216
|
+
KEY_NUM_DIVIDE = NATIVE_VK(0x4B, -25, 0x54),
|
|
217
|
+
KEY_NUM_EQUAL = NATIVE_VK(0x51, -26, 0x67),
|
|
218
|
+
KEY_NUM_PERIOD = NATIVE_VK(-12, -27, 0x63),
|
|
219
|
+
KEY_NUM_COMMA = NATIVE_VK(0x5F, -28, 0x85),
|
|
220
|
+
KEY_NUM_DECIMAL = NATIVE_VK(0x41, -29, 0xDC),
|
|
221
|
+
KEY_NUM_CLEAR = NATIVE_VK(0x47, -30, 0x53),
|
|
222
|
+
KEY_NUM_ENTER = NATIVE_VK(0x4C, -31, 0x58),
|
|
223
|
+
|
|
224
|
+
KEY_CAPSLOCK = NATIVE_VK(0x39, 0x14, 0x39),
|
|
225
|
+
KEY_NUMLOCK = NATIVE_VK(-13, 0x90, 0x53),
|
|
226
|
+
KEY_SCROLLLOCK = NATIVE_VK(-14, 0x91, 0x47),
|
|
227
|
+
|
|
228
|
+
KEY_PRINTSCREEN = NATIVE_VK(-15, 0x2C, 0x46),
|
|
229
|
+
KEY_PAUSE = NATIVE_VK(-16, 0x13, 0x48),
|
|
230
|
+
KEY_BREAK = NATIVE_VK(-17, -32, -3),
|
|
231
|
+
KEY_SECTION = NATIVE_VK(0x0A, 0xE2, 0x64),
|
|
232
|
+
KEY_HELP = NATIVE_VK(0x72, 0x2F, 0x75),
|
|
233
|
+
|
|
234
|
+
KEY_EISU = NATIVE_VK(0x66, -33, -4),
|
|
235
|
+
KEY_KANA = NATIVE_VK(0x68, 0x15, -5),
|
|
236
|
+
KEY_KANJI = NATIVE_VK(-18, 0x19, -6),
|
|
237
|
+
KEY_IME_ON = NATIVE_VK(-19, 0x16, -7),
|
|
238
|
+
KEY_IME_OFF = NATIVE_VK(-20, 0x1A, -8),
|
|
239
|
+
KEY_IME_MODECHANGE = NATIVE_VK(-21, 0x1F, -9),
|
|
240
|
+
KEY_CONVERT = NATIVE_VK(-22, 0x1C, -10),
|
|
241
|
+
KEY_NONCONVERT = NATIVE_VK(-23, 0x1D, -11),
|
|
242
|
+
KEY_ACCEPT = NATIVE_VK(-24, 0x1E, -12),
|
|
243
|
+
KEY_PROCESS = NATIVE_VK(-25, 0xE5, -13),
|
|
244
|
+
|
|
245
|
+
KEY_VOLUME_UP = NATIVE_VK(0x48, 0xAF, 0x80),
|
|
246
|
+
KEY_VOLUME_DOWN = NATIVE_VK(0x49, 0xAE, 0x81),
|
|
247
|
+
KEY_MUTE = NATIVE_VK(0x4A, 0xAD, 0x7F),
|
|
248
|
+
|
|
249
|
+
KEY_SLEEP = NATIVE_VK(-26, 0x5F, 0x11A),
|
|
250
|
+
KEY_EXEC = NATIVE_VK(-27, 0x2B, 0x74),
|
|
251
|
+
KEY_PRINT = NATIVE_VK(-28, 0x2A, -14),
|
|
252
|
+
KEY_APPS = NATIVE_VK(-29, 0x5D, 0x65),
|
|
253
|
+
KEY_SELECT = NATIVE_VK(-30, 0x29, 0x77),
|
|
254
|
+
KEY_CLEAR = NATIVE_VK(-31, 0x0C, 0x9C),
|
|
255
|
+
|
|
256
|
+
KEY_NAVIGATION_VIEW = NATIVE_VK(-32, 0x88, -15),
|
|
257
|
+
KEY_NAVIGATION_MENU = NATIVE_VK(-33, 0x89, -16),
|
|
258
|
+
KEY_NAVIGATION_UP = NATIVE_VK(-34, 0x8A, -17),
|
|
259
|
+
KEY_NAVIGATION_DOWN = NATIVE_VK(-35, 0x8B, -18),
|
|
260
|
+
KEY_NAVIGATION_LEFT = NATIVE_VK(-36, 0x8C, -19),
|
|
261
|
+
KEY_NAVIGATION_RIGHT = NATIVE_VK(-37, 0x8D, -20),
|
|
262
|
+
KEY_NAVIGATION_ACCEPT = NATIVE_VK(-38, 0x8E, -21),
|
|
263
|
+
KEY_NAVIGATION_CANCEL = NATIVE_VK(-39, 0x8F, -22),
|
|
264
|
+
|
|
265
|
+
KEY_BROWSER_BACK = NATIVE_VK(-40, 0xA6, 0x10E),
|
|
266
|
+
KEY_BROWSER_FORWARD = NATIVE_VK(-41, 0xA7, 0x10F),
|
|
267
|
+
KEY_BROWSER_REFRESH = NATIVE_VK(-42, 0xA8, 0x111),
|
|
268
|
+
KEY_BROWSER_STOP = NATIVE_VK(-43, 0xA9, 0x110),
|
|
269
|
+
KEY_BROWSER_SEARCH = NATIVE_VK(-44, 0xAA, 0x10C),
|
|
270
|
+
KEY_BROWSER_FAVORITES = NATIVE_VK(-45, 0xAB, 0x112),
|
|
271
|
+
KEY_BROWSER_HOME = NATIVE_VK(-46, 0xAC, 0x10D),
|
|
272
|
+
|
|
273
|
+
KEY_MEDIA_PREV_TRACK = NATIVE_VK(-47, 0xB1, 0x103),
|
|
274
|
+
KEY_MEDIA_NEXT_TRACK = NATIVE_VK(-48, 0xB0, 0x102),
|
|
275
|
+
KEY_MEDIA_PLAY_PAUSE = NATIVE_VK(-49, 0xB3, 0x105),
|
|
276
|
+
KEY_MEDIA_STOP = NATIVE_VK(-50, 0xB2, 0x104),
|
|
277
|
+
|
|
278
|
+
KEY_LAUNCH_MAIL = NATIVE_VK(-51, 0xB4, 0x109),
|
|
279
|
+
KEY_LAUNCH_MEDIA_SELECT = NATIVE_VK(-52, 0xB5, 0x107),
|
|
280
|
+
KEY_LAUNCH_APP1 = NATIVE_VK(-53, 0xB6, 0x11B),
|
|
281
|
+
KEY_LAUNCH_APP2 = NATIVE_VK(-54, 0xB7, 0x11C),
|
|
282
|
+
|
|
283
|
+
// from SDK scan codes
|
|
284
|
+
KEY_NONUSHASH = NATIVE_VK(-55, -34, 0x32),
|
|
285
|
+
KEY_POWER = NATIVE_VK(-56, -35, 0x66),
|
|
286
|
+
KEY_MENU = NATIVE_VK(-57, -36, 0x76),
|
|
287
|
+
|
|
288
|
+
KEY_STOP = NATIVE_VK(-58, -37, 0x78),
|
|
289
|
+
KEY_AGAIN = NATIVE_VK(-59, -38, 0x79),
|
|
290
|
+
KEY_UNDO = NATIVE_VK(-60, -39, 0x7A),
|
|
291
|
+
KEY_CUT = NATIVE_VK(-61, -40, 0x7B),
|
|
292
|
+
KEY_COPY = NATIVE_VK(-62, -41, 0x7C),
|
|
293
|
+
KEY_PASTE = NATIVE_VK(-63, -42, 0x7D),
|
|
294
|
+
KEY_FIND = NATIVE_VK(-64, -43, 0x7E),
|
|
295
|
+
|
|
296
|
+
KEY_NUM_EQUALSAS400 = NATIVE_VK(-65, -44, 0x86),
|
|
297
|
+
|
|
298
|
+
KEY_INTERNATIONAL2 = NATIVE_VK(-66, -45, 0x88),
|
|
299
|
+
KEY_INTERNATIONAL4 = NATIVE_VK(-67, -46, 0x8A),
|
|
300
|
+
KEY_INTERNATIONAL5 = NATIVE_VK(-68, -47, 0x8B),
|
|
301
|
+
KEY_INTERNATIONAL6 = NATIVE_VK(-69, -48, 0x8C),
|
|
302
|
+
KEY_INTERNATIONAL7 = NATIVE_VK(-70, -49, 0x8D),
|
|
303
|
+
KEY_INTERNATIONAL8 = NATIVE_VK(-71, -50, 0x8E),
|
|
304
|
+
KEY_INTERNATIONAL9 = NATIVE_VK(-72, -51, 0x8F),
|
|
305
|
+
|
|
306
|
+
KEY_LANG1 = NATIVE_VK(-73, -52, 0x90),// Hangul/English toggle
|
|
307
|
+
KEY_LANG2 = NATIVE_VK(-74, -53, 0x91),// Hanja conversion
|
|
308
|
+
KEY_LANG3 = NATIVE_VK(-75, -54, 0x92),// Katakana
|
|
309
|
+
KEY_LANG4 = NATIVE_VK(-76, -55, 0x93),// Hiragana
|
|
310
|
+
KEY_LANG5 = NATIVE_VK(-77, -56, 0x94),// Zenkaku/Hankaku
|
|
311
|
+
KEY_LANG6 = NATIVE_VK(-78, -57, 0x95),
|
|
312
|
+
KEY_LANG7 = NATIVE_VK(-79, -58, 0x96),
|
|
313
|
+
KEY_LANG8 = NATIVE_VK(-80, -59, 0x97),
|
|
314
|
+
KEY_LANG9 = NATIVE_VK(-81, -60, 0x98),
|
|
315
|
+
|
|
316
|
+
KEY_ALTERASE = NATIVE_VK(-82, -61, 0x99),
|
|
317
|
+
KEY_SYSREQ = NATIVE_VK(-83, -62, 0x9A),
|
|
318
|
+
KEY_CANCEL = NATIVE_VK(-84, -63, 0x9B),
|
|
319
|
+
KEY_PRIOR = NATIVE_VK(-85, -64, 0x9D),
|
|
320
|
+
KEY_RETURN2 = NATIVE_VK(-86, -65, 0x9E),
|
|
321
|
+
KEY_SEPARATOR = NATIVE_VK(-87, -66, 0x9F),
|
|
322
|
+
KEY_OUT = NATIVE_VK(-88, -67, 0xA0),
|
|
323
|
+
KEY_OPER = NATIVE_VK(-89, -68, 0xA1),
|
|
324
|
+
KEY_CLEARAGAIN = NATIVE_VK(-90, -69, 0xA2),
|
|
325
|
+
KEY_CRSEL = NATIVE_VK(-91, -70, 0xA3),
|
|
326
|
+
KEY_EXSEL = NATIVE_VK(-92, -71, 0xA4),
|
|
327
|
+
|
|
328
|
+
KEY_NUM_00 = NATIVE_VK(-93, -72, 0xB0),
|
|
329
|
+
KEY_NUM_000 = NATIVE_VK(-94, -73, 0xB1),
|
|
330
|
+
KEY_THOUSANDSSEP = NATIVE_VK(-95, -74, 0xB2),
|
|
331
|
+
KEY_DECIMALSEP = NATIVE_VK(-96, -75, 0xB3),
|
|
332
|
+
KEY_CURRENCYUNIT = NATIVE_VK(-97, -76, 0xB4),
|
|
333
|
+
KEY_CURRENCYSUBUNIT = NATIVE_VK(-98, -77, 0xB5),
|
|
334
|
+
KEY_NUM_LPAREN = NATIVE_VK(-99, -78, 0xB6),
|
|
335
|
+
KEY_NUM_RPAREN = NATIVE_VK(-100, -79, 0xB7),
|
|
336
|
+
KEY_NUM_LBRACE = NATIVE_VK(-101, -80, 0xB8),
|
|
337
|
+
KEY_NUM_RBRACE = NATIVE_VK(-102, -81, 0xB9),
|
|
338
|
+
KEY_NUM_TAB = NATIVE_VK(-103, -82, 0xBA),
|
|
339
|
+
KEY_NUM_BACKSPACE = NATIVE_VK(-104, -83, 0xBB),
|
|
340
|
+
KEY_NUM_A = NATIVE_VK(-105, -84, 0xBC),
|
|
341
|
+
KEY_NUM_B = NATIVE_VK(-106, -85, 0xBD),
|
|
342
|
+
KEY_NUM_C = NATIVE_VK(-107, -86, 0xBE),
|
|
343
|
+
KEY_NUM_D = NATIVE_VK(-108, -87, 0xBF),
|
|
344
|
+
KEY_NUM_E = NATIVE_VK(-109, -88, 0xC0),
|
|
345
|
+
KEY_NUM_F = NATIVE_VK(-110, -89, 0xC1),
|
|
346
|
+
KEY_NUM_XOR = NATIVE_VK(-111, -90, 0xC2),
|
|
347
|
+
KEY_NUM_POWER = NATIVE_VK(-112, -91, 0xC3),
|
|
348
|
+
KEY_NUM_PERCENT = NATIVE_VK(-113, -92, 0xC4),
|
|
349
|
+
KEY_NUM_LESS = NATIVE_VK(-114, -93, 0xC5),
|
|
350
|
+
KEY_NUM_GREATER = NATIVE_VK(-115, -94, 0xC6),
|
|
351
|
+
KEY_NUM_AMPERSAND = NATIVE_VK(-116, -95, 0xC7),
|
|
352
|
+
KEY_NUM_DBLAMPERSAND = NATIVE_VK(-117, -96, 0xC8),
|
|
353
|
+
KEY_NUM_VERTICALBAR = NATIVE_VK(-118, -97, 0xC9),
|
|
354
|
+
KEY_NUM_DBLVERTICALBAR = NATIVE_VK(-119, -98, 0xCA),
|
|
355
|
+
KEY_NUM_COLON = NATIVE_VK(-120, -99, 0xCB),
|
|
356
|
+
KEY_NUM_HASH = NATIVE_VK(-121, -100, 0xCC),
|
|
357
|
+
KEY_NUM_SPACE = NATIVE_VK(-122, -101, 0xCD),
|
|
358
|
+
KEY_NUM_AT = NATIVE_VK(-123, -102, 0xCE),
|
|
359
|
+
KEY_NUM_EXCLAM = NATIVE_VK(-124, -103, 0xCF),
|
|
360
|
+
KEY_NUM_MEMSTORE = NATIVE_VK(-125, -104, 0xD0),
|
|
361
|
+
KEY_NUM_MEMRECALL = NATIVE_VK(-126, -105, 0xD1),
|
|
362
|
+
KEY_NUM_MEMCLEAR = NATIVE_VK(-127, -106, 0xD2),
|
|
363
|
+
KEY_NUM_MEMADD = NATIVE_VK(-128, -107, 0xD3),
|
|
364
|
+
KEY_NUM_MEMSUBTRACT = NATIVE_VK(-129, -108, 0xD4),
|
|
365
|
+
KEY_NUM_MEMMULTIPLY = NATIVE_VK(-130, -109, 0xD5),
|
|
366
|
+
KEY_NUM_MEMDIVIDE = NATIVE_VK(-131, -110, 0xD6),
|
|
367
|
+
KEY_NUM_PLUSMINUS = NATIVE_VK(-132, -111, 0xD7),
|
|
368
|
+
KEY_NUM_CLEARENTRY = NATIVE_VK(-133, -112, 0xD9),
|
|
369
|
+
KEY_NUM_BINARY = NATIVE_VK(-134, -113, 0xDA),
|
|
370
|
+
KEY_NUM_OCTAL = NATIVE_VK(-135, -114, 0xDB),
|
|
371
|
+
KEY_NUM_HEXADECIMAL = NATIVE_VK(-136, -115, 0xDD),
|
|
372
|
+
|
|
373
|
+
KEY_MODE = NATIVE_VK(-137, -116, 0x101),
|
|
374
|
+
|
|
375
|
+
KEY_AUDIOMUTE = NATIVE_VK(-138, -117, 0x106),
|
|
376
|
+
KEY_WWW = NATIVE_VK(-139, -118, 0x108),
|
|
377
|
+
KEY_CALCULATOR = NATIVE_VK(-140, -119, 0x10A),
|
|
378
|
+
KEY_COMPUTER = NATIVE_VK(-141, -120, 0x10B),
|
|
379
|
+
|
|
380
|
+
KEY_BRIGHTNESSDOWN = NATIVE_VK(-142, -121, 0x113),
|
|
381
|
+
KEY_BRIGHTNESSUP = NATIVE_VK(-143, -122, 0x114),
|
|
382
|
+
KEY_DISPLAYSWITCH = NATIVE_VK(-144, -123, 0x115),
|
|
383
|
+
KEY_KBDILLUMTOGGLE = NATIVE_VK(-145, -124, 0x116),
|
|
384
|
+
KEY_KBDILLUMDOWN = NATIVE_VK(-146, -125, 0x117),
|
|
385
|
+
KEY_KBDILLUMUP = NATIVE_VK(-147, -126, 0x118),
|
|
386
|
+
KEY_EJECT = NATIVE_VK(-148, -127, 0x119),
|
|
387
|
+
|
|
388
|
+
KEY_AUDIOREWIND = NATIVE_VK(-149, -128, 0x11D),
|
|
389
|
+
KEY_AUDIOFASTFORWARD = NATIVE_VK(-150, -129, 0x11E),
|
|
390
|
+
|
|
391
|
+
KEY_SOFTLEFT = NATIVE_VK(-151, -130, 0x11F),
|
|
392
|
+
KEY_SOFTRIGHT = NATIVE_VK(-152, -131, 0x120),
|
|
393
|
+
KEY_CALL = NATIVE_VK(-153, -132, 0x121),
|
|
394
|
+
KEY_ENDCALL = NATIVE_VK(-154, -133, 0x122),
|
|
277
395
|
|
|
278
396
|
#undef NATIVE_VK
|
|
279
397
|
|
|
280
|
-
KEY_GAMEPAD_LEFT =
|
|
398
|
+
KEY_GAMEPAD_LEFT = 0x200,
|
|
281
399
|
KEY_GAMEPAD_RIGHT,
|
|
282
400
|
KEY_GAMEPAD_UP,
|
|
283
401
|
KEY_GAMEPAD_DOWN,
|
|
@@ -367,6 +485,8 @@ namespace Reflex
|
|
|
367
485
|
|
|
368
486
|
MOD_CAPS = 0x1 << 9,
|
|
369
487
|
|
|
488
|
+
MOD_SCROLL = 0x1 << 10,
|
|
489
|
+
|
|
370
490
|
};// Modifier
|
|
371
491
|
|
|
372
492
|
|
data/include/reflex/ruby.h
CHANGED
data/include/reflex.h
CHANGED
data/lib/reflex/extension.rb
CHANGED
|
@@ -5,8 +5,10 @@ module Reflex
|
|
|
5
5
|
|
|
6
6
|
module_function
|
|
7
7
|
|
|
8
|
-
def name()
|
|
9
|
-
super.split('::')[-2]
|
|
8
|
+
def name(downcase = false)
|
|
9
|
+
super().split('::')[-2].then {|s|
|
|
10
|
+
downcase ? s.gsub(/([a-z])([A-Z])/) {"#{$1}-#{$2}"}.downcase : s
|
|
11
|
+
}
|
|
10
12
|
end
|
|
11
13
|
|
|
12
14
|
def version()
|
|
@@ -29,6 +31,10 @@ module Reflex
|
|
|
29
31
|
root_dir 'ext'
|
|
30
32
|
end
|
|
31
33
|
|
|
34
|
+
def lib_name()
|
|
35
|
+
"#{name true}.dll" if /mswin|ming|cygwin/.match? RUBY_PLATFORM
|
|
36
|
+
end
|
|
37
|
+
|
|
32
38
|
end# Extension
|
|
33
39
|
|
|
34
40
|
|
data/reflex.gemspec
CHANGED
|
@@ -10,7 +10,7 @@ Gem::Specification.new do |s|
|
|
|
10
10
|
end
|
|
11
11
|
|
|
12
12
|
ext = Reflex::Extension
|
|
13
|
-
name = ext.name
|
|
13
|
+
name = ext.name true
|
|
14
14
|
rdocs = glob.call *%w[README .doc/ext/**/*.cpp]
|
|
15
15
|
|
|
16
16
|
s.name = "#{name}ion"
|
|
@@ -25,15 +25,14 @@ Gem::Specification.new do |s|
|
|
|
25
25
|
s.platform = Gem::Platform::RUBY
|
|
26
26
|
s.required_ruby_version = '>= 3.0.0'
|
|
27
27
|
|
|
28
|
-
s.add_dependency 'xot', '~> 0.3.
|
|
29
|
-
s.add_dependency 'rucy', '~> 0.3.
|
|
30
|
-
s.add_dependency 'rays', '~> 0.3.
|
|
28
|
+
s.add_dependency 'xot', '~> 0.3.12'
|
|
29
|
+
s.add_dependency 'rucy', '~> 0.3.12'
|
|
30
|
+
s.add_dependency 'rays', '~> 0.3.12'
|
|
31
31
|
|
|
32
32
|
s.files = `git ls-files`.split $/
|
|
33
33
|
s.executables = s.files.grep(%r{^bin/}) {|f| File.basename f}
|
|
34
34
|
s.test_files = s.files.grep %r{^(test|spec|features)/}
|
|
35
35
|
s.extra_rdoc_files = rdocs.to_a
|
|
36
|
-
s.has_rdoc = true
|
|
37
36
|
|
|
38
37
|
s.extensions << 'Rakefile'
|
|
39
38
|
end
|
data/src/application.cpp
CHANGED
|
@@ -29,12 +29,24 @@ namespace Reflex
|
|
|
29
29
|
MIDI_init(app);
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
+
static void
|
|
33
|
+
close_all_windows (Application* app)
|
|
34
|
+
{
|
|
35
|
+
for (auto it = app->window_begin(), end = app->window_end(); it != end; ++it)
|
|
36
|
+
(*it)->close(true);
|
|
37
|
+
}
|
|
38
|
+
|
|
32
39
|
void
|
|
33
40
|
Application_call_quit (Application* app, Event* e)
|
|
34
41
|
{
|
|
42
|
+
if (app->self->quitting) return;
|
|
43
|
+
|
|
35
44
|
app->on_quit(e);
|
|
36
45
|
if (e->is_blocked()) return;
|
|
37
46
|
|
|
47
|
+
app->self->quitting = true;
|
|
48
|
+
|
|
49
|
+
close_all_windows(app);
|
|
38
50
|
MIDI_fin(app);
|
|
39
51
|
Gamepad_fin(app);
|
|
40
52
|
}
|
data/src/application.h
CHANGED