reflexion 0.6.0 → 0.7.0
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/application.cpp +37 -6
- data/.doc/ext/reflex/capture_event.cpp +1 -1
- data/.doc/ext/reflex/chase_constraint.cpp +1 -1
- data/.doc/ext/reflex/clipboard.cpp +1 -1
- data/.doc/ext/reflex/color_event.cpp +76 -0
- data/.doc/ext/reflex/color_picker.cpp +113 -0
- data/.doc/ext/reflex/constraint.cpp +1 -1
- data/.doc/ext/reflex/contact_event.cpp +1 -1
- data/.doc/ext/reflex/control_change_event.cpp +1 -1
- data/.doc/ext/reflex/device.cpp +1 -1
- data/.doc/ext/reflex/device_event.cpp +1 -1
- data/.doc/ext/reflex/draw_event.cpp +1 -1
- data/.doc/ext/reflex/ellipse_shape.cpp +1 -1
- data/.doc/ext/reflex/event.cpp +1 -1
- data/.doc/ext/reflex/file_dialog.cpp +181 -0
- data/.doc/ext/reflex/file_event.cpp +103 -0
- data/.doc/ext/reflex/filter.cpp +1 -1
- data/.doc/ext/reflex/focus_event.cpp +1 -1
- data/.doc/ext/reflex/frame_event.cpp +1 -1
- data/.doc/ext/reflex/gamepad.cpp +48 -0
- data/.doc/ext/reflex/image_view.cpp +1 -1
- data/.doc/ext/reflex/key_event.cpp +1 -274
- data/.doc/ext/reflex/line_shape.cpp +1 -1
- data/.doc/ext/reflex/link_constraint.cpp +1 -1
- data/.doc/ext/reflex/menu.cpp +6 -5
- data/.doc/ext/reflex/midi.cpp +9 -2
- data/.doc/ext/reflex/midi_event.cpp +1 -1
- data/.doc/ext/reflex/motion_event.cpp +1 -1
- data/.doc/ext/reflex/native.cpp +18 -6
- data/.doc/ext/reflex/note_event.cpp +1 -1
- data/.doc/ext/reflex/pin.cpp +1 -1
- data/.doc/ext/reflex/pointer.cpp +1 -1
- data/.doc/ext/reflex/pointer_event.cpp +2 -2
- data/.doc/ext/reflex/polygon_shape.cpp +1 -1
- data/.doc/ext/reflex/rect_shape.cpp +1 -1
- data/.doc/ext/reflex/reflex.cpp +566 -232
- data/.doc/ext/reflex/screen.cpp +27 -1
- data/.doc/ext/reflex/scroll_event.cpp +1 -1
- data/.doc/ext/reflex/selector.cpp +1 -1
- data/.doc/ext/reflex/shape.cpp +1 -1
- data/.doc/ext/reflex/snap_constraint.cpp +1 -1
- data/.doc/ext/reflex/style.cpp +1 -1
- data/.doc/ext/reflex/style_length.cpp +1 -1
- data/.doc/ext/reflex/text_event.cpp +104 -0
- data/.doc/ext/reflex/timer.cpp +1 -1
- data/.doc/ext/reflex/timer_event.cpp +1 -1
- data/.doc/ext/reflex/update_event.cpp +1 -1
- data/.doc/ext/reflex/view.cpp +110 -56
- data/.doc/ext/reflex/wheel_constraint.cpp +1 -1
- data/.doc/ext/reflex/wheel_event.cpp +1 -1
- data/.doc/ext/reflex/window.cpp +226 -17
- data/.github/workflows/release-gem.yml +2 -49
- data/.github/workflows/tag.yml +5 -28
- data/.github/workflows/test.yml +1 -37
- data/ChangeLog.md +54 -0
- data/Gemfile.lock +13 -8
- data/Rakefile +13 -2
- data/Reflex.podspec +2 -2
- data/VERSION +1 -1
- data/ext/reflex/application.cpp +41 -6
- data/ext/reflex/capture_event.cpp +1 -1
- data/ext/reflex/chase_constraint.cpp +1 -1
- data/ext/reflex/clipboard.cpp +1 -1
- data/ext/reflex/color_event.cpp +80 -0
- data/ext/reflex/color_picker.cpp +121 -0
- data/ext/reflex/constraint.cpp +1 -1
- data/ext/reflex/contact_event.cpp +1 -1
- data/ext/reflex/control_change_event.cpp +1 -1
- data/ext/reflex/device.cpp +1 -1
- data/ext/reflex/device_event.cpp +1 -1
- data/ext/reflex/draw_event.cpp +1 -1
- data/ext/reflex/ellipse_shape.cpp +1 -1
- data/ext/reflex/event.cpp +1 -1
- data/ext/reflex/extconf.rb +4 -2
- data/ext/reflex/file_dialog.cpp +194 -0
- data/ext/reflex/file_event.cpp +108 -0
- data/ext/reflex/filter.cpp +1 -1
- data/ext/reflex/focus_event.cpp +1 -1
- data/ext/reflex/frame_event.cpp +1 -1
- data/ext/reflex/gamepad.cpp +50 -0
- data/ext/reflex/image_view.cpp +1 -1
- data/ext/reflex/key_event.cpp +1 -275
- data/ext/reflex/line_shape.cpp +1 -1
- data/ext/reflex/link_constraint.cpp +1 -1
- data/ext/reflex/menu.cpp +8 -7
- data/ext/reflex/midi.cpp +11 -3
- data/ext/reflex/midi_event.cpp +1 -1
- data/ext/reflex/motion_event.cpp +1 -1
- data/ext/reflex/native.cpp +18 -6
- data/ext/reflex/note_event.cpp +1 -1
- data/ext/reflex/pin.cpp +1 -1
- data/ext/reflex/pointer.cpp +1 -1
- data/ext/reflex/pointer_event.cpp +2 -2
- data/ext/reflex/polygon_shape.cpp +1 -1
- data/ext/reflex/rect_shape.cpp +1 -1
- data/ext/reflex/reflex.cpp +568 -232
- data/ext/reflex/screen.cpp +31 -2
- data/ext/reflex/scroll_event.cpp +1 -1
- data/ext/reflex/selector.cpp +1 -1
- data/ext/reflex/selector.h +9 -9
- data/ext/reflex/shape.cpp +1 -1
- data/ext/reflex/snap_constraint.cpp +1 -1
- data/ext/reflex/style.cpp +1 -1
- data/ext/reflex/style_length.cpp +1 -1
- data/ext/reflex/text_event.cpp +111 -0
- data/ext/reflex/timer.cpp +1 -1
- data/ext/reflex/timer_event.cpp +1 -1
- data/ext/reflex/update_event.cpp +1 -1
- data/ext/reflex/view.cpp +121 -61
- data/ext/reflex/wheel_constraint.cpp +1 -1
- data/ext/reflex/wheel_event.cpp +1 -1
- data/ext/reflex/window.cpp +256 -25
- data/include/reflex/application.h +10 -0
- data/include/reflex/color_picker.h +65 -0
- data/include/reflex/event.h +178 -88
- data/include/reflex/file_dialog.h +73 -0
- data/include/reflex/gamepad.h +3 -0
- data/include/reflex/menu.h +3 -3
- data/include/reflex/midi.h +3 -0
- data/include/reflex/reflex.h +2 -0
- data/include/reflex/ruby/application.h +6 -1
- data/include/reflex/ruby/color_picker.h +89 -0
- data/include/reflex/ruby/event.h +62 -29
- data/include/reflex/ruby/file_dialog.h +89 -0
- data/include/reflex/ruby/gamepad.h +46 -0
- data/include/reflex/ruby/reflex.h +3 -0
- data/include/reflex/ruby/view.h +92 -44
- data/include/reflex/ruby/window.h +60 -1
- data/include/reflex/ruby.h +3 -0
- data/include/reflex/screen.h +11 -2
- data/include/reflex/view.h +28 -16
- data/include/reflex/window.h +40 -8
- data/include/reflex.h +3 -0
- data/lib/reflex/application.rb +5 -5
- data/lib/reflex/autoinit.rb +3 -1
- data/lib/reflex/button.rb +3 -3
- data/lib/reflex/color_event.rb +16 -0
- data/lib/reflex/color_picker.rb +45 -0
- data/lib/reflex/control_change_event.rb +17 -0
- data/lib/reflex/file_dialog.rb +70 -0
- data/lib/reflex/file_event.rb +37 -0
- data/lib/reflex/helper.rb +58 -7
- data/lib/reflex/key_event.rb +9 -4
- data/lib/reflex/menu.rb +17 -1
- data/lib/reflex/model.rb +19 -19
- data/lib/reflex/note_event.rb +1 -1
- data/lib/reflex/pointer.rb +14 -3
- data/lib/reflex/pointer_event.rb +12 -1
- data/lib/reflex/reflex.rb +5 -0
- data/lib/reflex/shape.rb +14 -14
- data/lib/reflex/style.rb +16 -16
- data/lib/reflex/text_event.rb +40 -0
- data/lib/reflex/timer.rb +3 -3
- data/lib/reflex/view.rb +29 -14
- data/lib/reflex/wheel_event.rb +12 -3
- data/lib/reflex/window.rb +25 -13
- data/lib/reflex.rb +8 -2
- data/reflex.gemspec +4 -4
- data/samples/ime.rb +100 -0
- data/samples/ios/hello/hello.xcodeproj/project.pbxproj +236 -224
- data/samples/menu.rb +4 -1
- data/samples/model.rb +3 -3
- data/samples/test/alert.rb +93 -0
- data/samples/test/always_on.rb +76 -0
- data/samples/test/app_background.rb +51 -0
- data/samples/test/boundary.rb +75 -0
- data/samples/test/callback_exception.rb +101 -0
- data/samples/test/cancel.rb +53 -0
- data/samples/test/color_picker.rb +63 -0
- data/samples/test/file_dialog.rb +102 -0
- data/samples/window_style.rb +156 -0
- data/src/application.cpp +159 -18
- data/src/application.h +92 -7
- data/src/color_picker.cpp +113 -0
- data/src/color_picker.h +36 -0
- data/src/event.cpp +410 -252
- data/src/event.h +12 -0
- data/src/file_dialog.cpp +163 -0
- data/src/file_dialog.h +52 -0
- data/src/gamepad.cpp +42 -5
- data/src/gamepad.h +4 -0
- data/src/ios/app_delegate.mm +5 -3
- data/src/ios/application.mm +24 -0
- data/src/ios/color_picker.mm +19 -0
- data/src/ios/file_dialog.mm +21 -0
- data/src/ios/gamepad.mm +4 -4
- data/src/ios/menu.mm +5 -0
- data/src/ios/reflex.mm +8 -0
- data/src/ios/screen.mm +26 -0
- data/src/ios/view_controller.mm +2 -30
- data/src/ios/window.mm +38 -9
- data/src/menu.cpp +66 -4
- data/src/menu.h +17 -1
- data/src/midi.cpp +61 -31
- data/src/osx/app_delegate.h +4 -0
- data/src/osx/app_delegate.mm +102 -22
- data/src/osx/application.mm +88 -6
- data/src/osx/color_picker.mm +112 -0
- data/src/osx/event.h +10 -0
- data/src/osx/event.mm +84 -30
- data/src/osx/file_dialog.mm +168 -0
- data/src/osx/gamepad.mm +2 -2
- data/src/osx/gamepad_hid.mm +1 -1
- data/src/osx/menu.mm +177 -33
- data/src/osx/native_window.h +16 -2
- data/src/osx/native_window.mm +114 -57
- data/src/osx/opengl_view.h +2 -1
- data/src/osx/opengl_view.mm +184 -43
- data/src/osx/reflex.mm +38 -0
- data/src/osx/screen.mm +36 -0
- data/src/osx/window.mm +106 -24
- data/src/pointer.cpp +13 -4
- data/src/pointer.h +4 -0
- data/src/rays.h +46 -0
- data/src/sdl/application.cpp +68 -8
- data/src/sdl/color_picker.cpp +18 -0
- data/src/sdl/event.cpp +24 -3
- data/src/sdl/event.h +12 -0
- data/src/sdl/file_dialog.cpp +20 -0
- data/src/sdl/gamepad.cpp +3 -7
- data/src/sdl/menu.cpp +5 -0
- data/src/sdl/reflex.cpp +20 -0
- data/src/sdl/screen.cpp +36 -0
- data/src/sdl/window.cpp +142 -29
- data/src/shape.cpp +15 -10
- data/src/view.cpp +287 -198
- data/src/view.h +4 -2
- data/src/vk.h +416 -0
- data/src/win32/application.cpp +162 -12
- data/src/win32/application.h +20 -0
- data/src/win32/color_picker.cpp +82 -0
- data/src/win32/event.cpp +114 -12
- data/src/win32/event.h +21 -4
- data/src/win32/file_dialog.cpp +226 -0
- data/src/win32/gamepad.cpp +9 -2
- data/src/win32/menu.cpp +191 -53
- data/src/win32/menu.h +9 -1
- data/src/win32/opengl.cpp +2 -9
- data/src/win32/reflex.cpp +44 -3
- data/src/win32/screen.cpp +164 -3
- data/src/win32/screen.h +8 -0
- data/src/win32/tray.cpp +191 -0
- data/src/win32/tray.h +22 -0
- data/src/win32/vk.cpp +11 -0
- data/src/win32/window.cpp +809 -148
- data/src/win32/window.h +6 -0
- data/src/window.cpp +718 -185
- data/src/window.h +66 -33
- data/src/world.cpp +9 -1
- data/test/helper.rb +17 -0
- data/test/test_application.rb +90 -1
- data/test/test_chase_constraint.rb +1 -3
- data/test/test_color_event.rb +36 -0
- data/test/test_color_picker.rb +62 -0
- data/test/test_constraint.rb +2 -4
- data/test/test_event.rb +1 -1
- data/test/test_file_dialog.rb +48 -0
- data/test/test_file_event.rb +43 -0
- data/test/test_has_text_preedit.rb +54 -0
- data/test/test_key_event.rb +20 -5
- data/test/test_link_constraint.rb +1 -3
- data/test/test_menu.rb +40 -10
- data/test/test_pointer.rb +33 -23
- data/test/test_pointer_event.rb +24 -9
- data/test/test_reflex.rb +36 -0
- data/test/test_screen.rb +24 -2
- data/test/test_snap_constraint.rb +1 -3
- data/test/test_text_event.rb +54 -0
- data/test/test_view.rb +41 -4
- data/test/test_wheel_constraint.rb +1 -3
- data/test/test_wheel_event.rb +13 -5
- data/test/test_window.rb +196 -44
- metadata +80 -10
- data/.github/workflows/utils.rb +0 -127
data/ext/reflex/window.cpp
CHANGED
|
@@ -13,7 +13,8 @@ RUCY_DEFINE_WRAPPER_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::Window)
|
|
|
13
13
|
|
|
14
14
|
#define THIS to<Reflex::Window*>(self)
|
|
15
15
|
|
|
16
|
-
#define
|
|
16
|
+
#define CHECK_PTR RUCY_CHECK_PTR(Reflex::Window, self)
|
|
17
|
+
#define CHECK RUCY_CHECK_OBJ(Reflex::Window, self)
|
|
17
18
|
|
|
18
19
|
#define CALL(fun) RUCY_CALL_SUPER(THIS, fun)
|
|
19
20
|
|
|
@@ -44,7 +45,7 @@ RUCY_DEF0(hide)
|
|
|
44
45
|
RUCY_END
|
|
45
46
|
|
|
46
47
|
static
|
|
47
|
-
RUCY_DEF0(
|
|
48
|
+
RUCY_DEF0(is_hidden)
|
|
48
49
|
{
|
|
49
50
|
CHECK;
|
|
50
51
|
return value(THIS->hidden());
|
|
@@ -54,8 +55,8 @@ RUCY_END
|
|
|
54
55
|
static
|
|
55
56
|
RUCY_DEF0(close)
|
|
56
57
|
{
|
|
57
|
-
|
|
58
|
-
THIS->close();
|
|
58
|
+
CHECK_PTR;
|
|
59
|
+
if (*THIS) THIS->close();
|
|
59
60
|
return self;
|
|
60
61
|
}
|
|
61
62
|
RUCY_END
|
|
@@ -210,6 +211,88 @@ RUCY_DEF0(is_resizable)
|
|
|
210
211
|
}
|
|
211
212
|
RUCY_END
|
|
212
213
|
|
|
214
|
+
static const uint TITLEBAR_MASK =
|
|
215
|
+
Reflex::Window::FLAG_TITLEBAR_BUTTONS |
|
|
216
|
+
Reflex::Window::FLAG_TITLEBAR_BACKGROUND;
|
|
217
|
+
|
|
218
|
+
static
|
|
219
|
+
RUCY_DEF1(set_titlebar, titlebar)
|
|
220
|
+
{
|
|
221
|
+
CHECK;
|
|
222
|
+
|
|
223
|
+
uint flags = to<uint>(titlebar);
|
|
224
|
+
THIS->set_flags((flags & TITLEBAR_MASK) | (THIS->flags() & ~TITLEBAR_MASK));
|
|
225
|
+
}
|
|
226
|
+
RUCY_END
|
|
227
|
+
|
|
228
|
+
static
|
|
229
|
+
RUCY_DEF0(get_titlebar)
|
|
230
|
+
{
|
|
231
|
+
CHECK;
|
|
232
|
+
return value(THIS->flags() & TITLEBAR_MASK);
|
|
233
|
+
}
|
|
234
|
+
RUCY_END
|
|
235
|
+
|
|
236
|
+
static
|
|
237
|
+
RUCY_DEF1(set_unlisted, state)
|
|
238
|
+
{
|
|
239
|
+
CHECK;
|
|
240
|
+
|
|
241
|
+
if (state)
|
|
242
|
+
THIS-> add_flag(Reflex::Window::FLAG_UNLISTED);
|
|
243
|
+
else
|
|
244
|
+
THIS->remove_flag(Reflex::Window::FLAG_UNLISTED);
|
|
245
|
+
}
|
|
246
|
+
RUCY_END
|
|
247
|
+
|
|
248
|
+
static
|
|
249
|
+
RUCY_DEF0(is_unlisted)
|
|
250
|
+
{
|
|
251
|
+
CHECK;
|
|
252
|
+
return value(THIS->has_flag(Reflex::Window::FLAG_UNLISTED));
|
|
253
|
+
}
|
|
254
|
+
RUCY_END
|
|
255
|
+
|
|
256
|
+
static
|
|
257
|
+
RUCY_DEF1(set_shadow, state)
|
|
258
|
+
{
|
|
259
|
+
CHECK;
|
|
260
|
+
|
|
261
|
+
if (state)
|
|
262
|
+
THIS-> add_flag(Reflex::Window::FLAG_SHADOW);
|
|
263
|
+
else
|
|
264
|
+
THIS->remove_flag(Reflex::Window::FLAG_SHADOW);
|
|
265
|
+
}
|
|
266
|
+
RUCY_END
|
|
267
|
+
|
|
268
|
+
static
|
|
269
|
+
RUCY_DEF0(has_shadow)
|
|
270
|
+
{
|
|
271
|
+
CHECK;
|
|
272
|
+
return value(THIS->has_flag(Reflex::Window::FLAG_SHADOW));
|
|
273
|
+
}
|
|
274
|
+
RUCY_END
|
|
275
|
+
|
|
276
|
+
static
|
|
277
|
+
RUCY_DEF1(set_transparent, state)
|
|
278
|
+
{
|
|
279
|
+
CHECK;
|
|
280
|
+
|
|
281
|
+
if (state)
|
|
282
|
+
THIS-> add_flag(Reflex::Window::FLAG_TRANSPARENT);
|
|
283
|
+
else
|
|
284
|
+
THIS->remove_flag(Reflex::Window::FLAG_TRANSPARENT);
|
|
285
|
+
}
|
|
286
|
+
RUCY_END
|
|
287
|
+
|
|
288
|
+
static
|
|
289
|
+
RUCY_DEF0(is_transparent)
|
|
290
|
+
{
|
|
291
|
+
CHECK;
|
|
292
|
+
return value(THIS->has_flag(Reflex::Window::FLAG_TRANSPARENT));
|
|
293
|
+
}
|
|
294
|
+
RUCY_END
|
|
295
|
+
|
|
213
296
|
static
|
|
214
297
|
RUCY_DEF1(set_fullscreen, state)
|
|
215
298
|
{
|
|
@@ -232,18 +315,98 @@ RUCY_DEF0(is_fullscreen)
|
|
|
232
315
|
}
|
|
233
316
|
RUCY_END
|
|
234
317
|
|
|
318
|
+
static
|
|
319
|
+
RUCY_DEF1(set_always_on_top, state)
|
|
320
|
+
{
|
|
321
|
+
CHECK;
|
|
322
|
+
|
|
323
|
+
if (state)
|
|
324
|
+
{
|
|
325
|
+
THIS->remove_flag(Reflex::Window::FLAG_ALWAYS_ON_BOTTOM);
|
|
326
|
+
THIS-> add_flag(Reflex::Window::FLAG_ALWAYS_ON_TOP);
|
|
327
|
+
}
|
|
328
|
+
else
|
|
329
|
+
THIS->remove_flag(Reflex::Window::FLAG_ALWAYS_ON_TOP);
|
|
330
|
+
}
|
|
331
|
+
RUCY_END
|
|
332
|
+
|
|
333
|
+
static
|
|
334
|
+
RUCY_DEF0(is_always_on_top)
|
|
335
|
+
{
|
|
336
|
+
CHECK;
|
|
337
|
+
return value(THIS->has_flag(Reflex::Window::FLAG_ALWAYS_ON_TOP));
|
|
338
|
+
}
|
|
339
|
+
RUCY_END
|
|
340
|
+
|
|
341
|
+
static
|
|
342
|
+
RUCY_DEF1(set_always_on_bottom, state)
|
|
343
|
+
{
|
|
344
|
+
CHECK;
|
|
345
|
+
|
|
346
|
+
if (state)
|
|
347
|
+
{
|
|
348
|
+
THIS->remove_flag(Reflex::Window::FLAG_ALWAYS_ON_TOP);
|
|
349
|
+
THIS-> add_flag(Reflex::Window::FLAG_ALWAYS_ON_BOTTOM);
|
|
350
|
+
}
|
|
351
|
+
else
|
|
352
|
+
THIS->remove_flag(Reflex::Window::FLAG_ALWAYS_ON_BOTTOM);
|
|
353
|
+
}
|
|
354
|
+
RUCY_END
|
|
355
|
+
|
|
356
|
+
static
|
|
357
|
+
RUCY_DEF0(is_always_on_bottom)
|
|
358
|
+
{
|
|
359
|
+
CHECK;
|
|
360
|
+
return value(THIS->has_flag(Reflex::Window::FLAG_ALWAYS_ON_BOTTOM));
|
|
361
|
+
}
|
|
362
|
+
RUCY_END
|
|
363
|
+
|
|
364
|
+
static
|
|
365
|
+
RUCY_DEF1(set_pointer_through, state)
|
|
366
|
+
{
|
|
367
|
+
CHECK;
|
|
368
|
+
|
|
369
|
+
if (state)
|
|
370
|
+
THIS-> add_flag(Reflex::Window::FLAG_POINTER_THROUGH);
|
|
371
|
+
else
|
|
372
|
+
THIS->remove_flag(Reflex::Window::FLAG_POINTER_THROUGH);
|
|
373
|
+
}
|
|
374
|
+
RUCY_END
|
|
375
|
+
|
|
376
|
+
static
|
|
377
|
+
RUCY_DEF0(is_pointer_through)
|
|
378
|
+
{
|
|
379
|
+
CHECK;
|
|
380
|
+
return value(THIS->has_flag(Reflex::Window::FLAG_POINTER_THROUGH));
|
|
381
|
+
}
|
|
382
|
+
RUCY_END
|
|
383
|
+
|
|
384
|
+
static
|
|
385
|
+
RUCY_DEF1(set_pointer_through_alpha, alpha)
|
|
386
|
+
{
|
|
387
|
+
CHECK;
|
|
388
|
+
THIS->set_pointer_through_alpha(to<float>(alpha));
|
|
389
|
+
}
|
|
390
|
+
RUCY_END
|
|
391
|
+
|
|
392
|
+
static
|
|
393
|
+
RUCY_DEF0(get_pointer_through_alpha)
|
|
394
|
+
{
|
|
395
|
+
CHECK;
|
|
396
|
+
return value(THIS->pointer_through_alpha());
|
|
397
|
+
}
|
|
398
|
+
RUCY_END
|
|
399
|
+
|
|
235
400
|
static const uint ORIENTATION_MASK =
|
|
236
401
|
Reflex::Window::FLAG_PORTRAIT | Reflex::Window::FLAG_LANDSCAPE;
|
|
237
402
|
|
|
238
403
|
static
|
|
239
404
|
RUCY_DEF1(set_orientations, orientations)
|
|
240
405
|
{
|
|
241
|
-
using namespace Reflex;
|
|
242
|
-
|
|
243
406
|
CHECK;
|
|
244
407
|
|
|
245
408
|
uint flags = to<uint>(orientations);
|
|
246
|
-
THIS->
|
|
409
|
+
THIS->set_flags(
|
|
247
410
|
( flags & ORIENTATION_MASK) |
|
|
248
411
|
(THIS->flags() & ~ORIENTATION_MASK));
|
|
249
412
|
}
|
|
@@ -252,8 +415,6 @@ RUCY_END
|
|
|
252
415
|
static
|
|
253
416
|
RUCY_DEF0(get_orientations)
|
|
254
417
|
{
|
|
255
|
-
using namespace Reflex;
|
|
256
|
-
|
|
257
418
|
CHECK;
|
|
258
419
|
return value(THIS->flags() & ORIENTATION_MASK);
|
|
259
420
|
}
|
|
@@ -296,9 +457,6 @@ RUCY_DEF1(on_show, event)
|
|
|
296
457
|
{
|
|
297
458
|
CHECK;
|
|
298
459
|
|
|
299
|
-
RUCY_SYM(call_show_block);
|
|
300
|
-
self.call(call_show_block);
|
|
301
|
-
|
|
302
460
|
CALL(on_show(to<Reflex::Event*>(event)));
|
|
303
461
|
}
|
|
304
462
|
RUCY_END
|
|
@@ -391,6 +549,30 @@ RUCY_DEF1(on_key_up, event)
|
|
|
391
549
|
}
|
|
392
550
|
RUCY_END
|
|
393
551
|
|
|
552
|
+
static
|
|
553
|
+
RUCY_DEF1(on_text, event)
|
|
554
|
+
{
|
|
555
|
+
CHECK;
|
|
556
|
+
CALL(on_text(to<Reflex::TextEvent*>(event)));
|
|
557
|
+
}
|
|
558
|
+
RUCY_END
|
|
559
|
+
|
|
560
|
+
static
|
|
561
|
+
RUCY_DEF1(on_text_preedit, event)
|
|
562
|
+
{
|
|
563
|
+
CHECK;
|
|
564
|
+
CALL(on_text_preedit(to<Reflex::TextEvent*>(event)));
|
|
565
|
+
}
|
|
566
|
+
RUCY_END
|
|
567
|
+
|
|
568
|
+
static
|
|
569
|
+
RUCY_DEF1(on_text_commit, event)
|
|
570
|
+
{
|
|
571
|
+
CHECK;
|
|
572
|
+
CALL(on_text_commit(to<Reflex::TextEvent*>(event)));
|
|
573
|
+
}
|
|
574
|
+
RUCY_END
|
|
575
|
+
|
|
394
576
|
static
|
|
395
577
|
RUCY_DEF1(on_pointer, event)
|
|
396
578
|
{
|
|
@@ -455,6 +637,30 @@ RUCY_DEF1(on_wheel, event)
|
|
|
455
637
|
}
|
|
456
638
|
RUCY_END
|
|
457
639
|
|
|
640
|
+
static
|
|
641
|
+
RUCY_DEF1(on_file, event)
|
|
642
|
+
{
|
|
643
|
+
CHECK;
|
|
644
|
+
CALL(on_file(to<Reflex::FileEvent*>(event)));
|
|
645
|
+
}
|
|
646
|
+
RUCY_END
|
|
647
|
+
|
|
648
|
+
static
|
|
649
|
+
RUCY_DEF1(on_file_open, event)
|
|
650
|
+
{
|
|
651
|
+
CHECK;
|
|
652
|
+
CALL(on_file_open(to<Reflex::FileEvent*>(event)));
|
|
653
|
+
}
|
|
654
|
+
RUCY_END
|
|
655
|
+
|
|
656
|
+
static
|
|
657
|
+
RUCY_DEF1(on_file_save, event)
|
|
658
|
+
{
|
|
659
|
+
CHECK;
|
|
660
|
+
CALL(on_file_save(to<Reflex::FileEvent*>(event)));
|
|
661
|
+
}
|
|
662
|
+
RUCY_END
|
|
663
|
+
|
|
458
664
|
static
|
|
459
665
|
RUCY_DEF1(on_midi, event)
|
|
460
666
|
{
|
|
@@ -505,8 +711,9 @@ Init_reflex_window ()
|
|
|
505
711
|
|
|
506
712
|
cWindow = mReflex.define_class("Window");
|
|
507
713
|
cWindow.define_alloc_func(alloc);
|
|
508
|
-
cWindow.define_method("show",
|
|
509
|
-
cWindow.define_method("hide",
|
|
714
|
+
cWindow.define_method("show", show);
|
|
715
|
+
cWindow.define_method("hide", hide);
|
|
716
|
+
cWindow.define_method("hidden?", is_hidden);
|
|
510
717
|
cWindow.define_method("close", close);
|
|
511
718
|
cWindow.define_method("redraw", redraw);
|
|
512
719
|
cWindow.define_method("from_screen", from_screen);
|
|
@@ -518,17 +725,32 @@ Init_reflex_window ()
|
|
|
518
725
|
cWindow.define_method("frame", get_frame);
|
|
519
726
|
cWindow.define_method("menu=", set_menu);
|
|
520
727
|
cWindow.define_method("menu", get_menu);
|
|
521
|
-
cWindow.define_method("closable=",
|
|
522
|
-
cWindow.define_method("closable?",
|
|
523
|
-
cWindow.define_method("minimizable=",
|
|
524
|
-
cWindow.define_method("minimizable?",
|
|
525
|
-
cWindow.define_method("resizable=",
|
|
526
|
-
cWindow.define_method("resizable?",
|
|
527
|
-
cWindow.define_method("
|
|
528
|
-
cWindow.define_method("
|
|
529
|
-
cWindow.define_method("
|
|
530
|
-
cWindow.define_method("
|
|
531
|
-
cWindow.define_method("
|
|
728
|
+
cWindow.define_method("closable=", set_closable);
|
|
729
|
+
cWindow.define_method("closable?", is_closable);
|
|
730
|
+
cWindow.define_method("minimizable=", set_minimizable);
|
|
731
|
+
cWindow.define_method("minimizable?", is_minimizable);
|
|
732
|
+
cWindow.define_method("resizable=", set_resizable);
|
|
733
|
+
cWindow.define_method("resizable?", is_resizable);
|
|
734
|
+
cWindow.define_method("titlebar=", set_titlebar);
|
|
735
|
+
cWindow.define_method("titlebar", get_titlebar);
|
|
736
|
+
cWindow.define_method("unlisted=", set_unlisted);
|
|
737
|
+
cWindow.define_method("unlisted?", is_unlisted);
|
|
738
|
+
cWindow.define_method("shadow=", set_shadow);
|
|
739
|
+
cWindow.define_method("shadow?", has_shadow);
|
|
740
|
+
cWindow.define_method("transparent=", set_transparent);
|
|
741
|
+
cWindow.define_method("transparent?", is_transparent);
|
|
742
|
+
cWindow.define_method("fullscreen=", set_fullscreen);
|
|
743
|
+
cWindow.define_method("fullscreen?", is_fullscreen);
|
|
744
|
+
cWindow.define_method("always_on_top=", set_always_on_top);
|
|
745
|
+
cWindow.define_method("always_on_top?", is_always_on_top);
|
|
746
|
+
cWindow.define_method("always_on_bottom=", set_always_on_bottom);
|
|
747
|
+
cWindow.define_method("always_on_bottom?", is_always_on_bottom);
|
|
748
|
+
cWindow.define_method("pointer_through=", set_pointer_through);
|
|
749
|
+
cWindow.define_method("pointer_through?", is_pointer_through);
|
|
750
|
+
cWindow.define_method("pointer_through_alpha=", set_pointer_through_alpha);
|
|
751
|
+
cWindow.define_method("pointer_through_alpha", get_pointer_through_alpha);
|
|
752
|
+
cWindow.define_method("orientations=", set_orientations);
|
|
753
|
+
cWindow.define_method("orientations", get_orientations);
|
|
532
754
|
cWindow.define_method("screen", get_screen);
|
|
533
755
|
cWindow.define_method("root", get_root);
|
|
534
756
|
cWindow.define_method("focus", get_focus);
|
|
@@ -545,6 +767,9 @@ Init_reflex_window ()
|
|
|
545
767
|
cWindow.define_method("on_key", on_key);
|
|
546
768
|
cWindow.define_method("on_key_down", on_key_down);
|
|
547
769
|
cWindow.define_method("on_key_up", on_key_up);
|
|
770
|
+
cWindow.define_method("on_text", on_text);
|
|
771
|
+
cWindow.define_method("on_text_preedit", on_text_preedit);
|
|
772
|
+
cWindow.define_method("on_text_commit", on_text_commit);
|
|
548
773
|
cWindow.define_method("on_pointer", on_pointer);
|
|
549
774
|
cWindow.define_method("on_pointer_down", on_pointer_down);
|
|
550
775
|
cWindow.define_method("on_pointer_up", on_pointer_up);
|
|
@@ -553,12 +778,18 @@ Init_reflex_window ()
|
|
|
553
778
|
cWindow.define_method("on_pointer_enter", on_pointer_enter);
|
|
554
779
|
cWindow.define_method("on_pointer_leave", on_pointer_leave);
|
|
555
780
|
cWindow.define_method("on_wheel", on_wheel);
|
|
781
|
+
cWindow.define_method("on_file", on_file);
|
|
782
|
+
cWindow.define_method("on_file_open", on_file_open);
|
|
783
|
+
cWindow.define_method("on_file_save", on_file_save);
|
|
556
784
|
cWindow.define_method("on_midi", on_midi);
|
|
557
785
|
cWindow.define_method("on_note", on_note);
|
|
558
786
|
cWindow.define_method("on_note_on", on_note_on);
|
|
559
787
|
cWindow.define_method("on_note_off", on_note_off);
|
|
560
788
|
cWindow.define_method("on_control_change", on_control_change);
|
|
561
789
|
|
|
790
|
+
cWindow.define_const("TITLEBAR_BUTTONS", Reflex::Window::FLAG_TITLEBAR_BUTTONS);
|
|
791
|
+
cWindow.define_const("TITLEBAR_BACKGROUND", Reflex::Window::FLAG_TITLEBAR_BACKGROUND);
|
|
792
|
+
|
|
562
793
|
cWindow.define_const("ORIENTATION_PORTRAIT", Reflex::Window::FLAG_PORTRAIT);
|
|
563
794
|
cWindow.define_const("ORIENTATION_LANDSCAPE", Reflex::Window::FLAG_LANDSCAPE);
|
|
564
795
|
|
|
@@ -50,6 +50,16 @@ namespace Reflex
|
|
|
50
50
|
|
|
51
51
|
virtual const Menu* menu () const;
|
|
52
52
|
|
|
53
|
+
virtual void set_background (bool state);
|
|
54
|
+
|
|
55
|
+
virtual bool background () const;
|
|
56
|
+
|
|
57
|
+
virtual void set_background_menu (Menu* menu);
|
|
58
|
+
|
|
59
|
+
virtual Menu* background_menu ();
|
|
60
|
+
|
|
61
|
+
virtual const Menu* background_menu () const;
|
|
62
|
+
|
|
53
63
|
virtual window_iterator window_begin ();
|
|
54
64
|
|
|
55
65
|
virtual const_window_iterator window_begin () const;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
// -*- c++ -*-
|
|
2
|
+
#pragma once
|
|
3
|
+
#ifndef __REFLEX_COLOR_PICKER_H__
|
|
4
|
+
#define __REFLEX_COLOR_PICKER_H__
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
#include <xot/ref.h>
|
|
8
|
+
#include <xot/pimpl.h>
|
|
9
|
+
#include <reflex/defs.h>
|
|
10
|
+
#include <reflex/event.h>
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
namespace Reflex
|
|
14
|
+
{
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
class Window;
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class ColorPicker : public Xot::RefCountable<>
|
|
21
|
+
{
|
|
22
|
+
|
|
23
|
+
typedef ColorPicker This;
|
|
24
|
+
|
|
25
|
+
public:
|
|
26
|
+
|
|
27
|
+
typedef Xot::Ref<This> Ref;
|
|
28
|
+
|
|
29
|
+
ColorPicker ();
|
|
30
|
+
|
|
31
|
+
virtual ~ColorPicker ();
|
|
32
|
+
|
|
33
|
+
virtual void pick_color ();
|
|
34
|
+
|
|
35
|
+
virtual void pick_color (const Color& initial);
|
|
36
|
+
|
|
37
|
+
virtual void set_owner (Window* window);
|
|
38
|
+
|
|
39
|
+
virtual Window* owner ();
|
|
40
|
+
|
|
41
|
+
virtual const Window* owner () const;
|
|
42
|
+
|
|
43
|
+
virtual void set_alpha (bool state);
|
|
44
|
+
|
|
45
|
+
virtual bool alpha () const;
|
|
46
|
+
|
|
47
|
+
virtual void on_color (ColorEvent* e);
|
|
48
|
+
|
|
49
|
+
virtual void on_close (Event* e);
|
|
50
|
+
|
|
51
|
+
virtual operator bool () const;
|
|
52
|
+
|
|
53
|
+
virtual bool operator ! () const;
|
|
54
|
+
|
|
55
|
+
struct Data;
|
|
56
|
+
|
|
57
|
+
Xot::PSharedImpl<Data> self;
|
|
58
|
+
|
|
59
|
+
};// ColorPicker
|
|
60
|
+
|
|
61
|
+
|
|
62
|
+
}// Reflex
|
|
63
|
+
|
|
64
|
+
|
|
65
|
+
#endif//EOH
|