reflexion 0.5.3 → 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.
Files changed (309) hide show
  1. checksums.yaml +4 -4
  2. data/.doc/ext/reflex/application.cpp +56 -7
  3. data/.doc/ext/reflex/capture_event.cpp +1 -1
  4. data/.doc/ext/reflex/chase_constraint.cpp +84 -0
  5. data/.doc/ext/reflex/clipboard.cpp +65 -0
  6. data/.doc/ext/reflex/color_event.cpp +76 -0
  7. data/.doc/ext/reflex/color_picker.cpp +113 -0
  8. data/.doc/ext/reflex/constraint.cpp +135 -0
  9. data/.doc/ext/reflex/contact_event.cpp +1 -1
  10. data/.doc/ext/reflex/control_change_event.cpp +1 -1
  11. data/.doc/ext/reflex/device.cpp +1 -1
  12. data/.doc/ext/reflex/device_event.cpp +1 -1
  13. data/.doc/ext/reflex/draw_event.cpp +1 -1
  14. data/.doc/ext/reflex/ellipse_shape.cpp +1 -1
  15. data/.doc/ext/reflex/event.cpp +1 -1
  16. data/.doc/ext/reflex/file_dialog.cpp +181 -0
  17. data/.doc/ext/reflex/file_event.cpp +103 -0
  18. data/.doc/ext/reflex/filter.cpp +1 -1
  19. data/.doc/ext/reflex/focus_event.cpp +1 -1
  20. data/.doc/ext/reflex/frame_event.cpp +1 -1
  21. data/.doc/ext/reflex/gamepad.cpp +48 -0
  22. data/.doc/ext/reflex/image_view.cpp +1 -1
  23. data/.doc/ext/reflex/key_event.cpp +1 -274
  24. data/.doc/ext/reflex/line_shape.cpp +1 -1
  25. data/.doc/ext/reflex/link_constraint.cpp +178 -0
  26. data/.doc/ext/reflex/menu.cpp +303 -0
  27. data/.doc/ext/reflex/midi.cpp +9 -2
  28. data/.doc/ext/reflex/midi_event.cpp +1 -1
  29. data/.doc/ext/reflex/motion_event.cpp +1 -1
  30. data/.doc/ext/reflex/native.cpp +40 -10
  31. data/.doc/ext/reflex/note_event.cpp +1 -1
  32. data/.doc/ext/reflex/pin.cpp +156 -0
  33. data/.doc/ext/reflex/pointer.cpp +3 -1
  34. data/.doc/ext/reflex/pointer_event.cpp +3 -3
  35. data/.doc/ext/reflex/polygon_shape.cpp +1 -1
  36. data/.doc/ext/reflex/rect_shape.cpp +1 -1
  37. data/.doc/ext/reflex/reflex.cpp +606 -237
  38. data/.doc/ext/reflex/screen.cpp +27 -1
  39. data/.doc/ext/reflex/scroll_event.cpp +1 -1
  40. data/.doc/ext/reflex/selector.cpp +5 -5
  41. data/.doc/ext/reflex/shape.cpp +1 -1
  42. data/.doc/ext/reflex/snap_constraint.cpp +125 -0
  43. data/.doc/ext/reflex/style.cpp +1 -1
  44. data/.doc/ext/reflex/style_length.cpp +4 -3
  45. data/.doc/ext/reflex/text_event.cpp +104 -0
  46. data/.doc/ext/reflex/timer.cpp +1 -1
  47. data/.doc/ext/reflex/timer_event.cpp +1 -1
  48. data/.doc/ext/reflex/update_event.cpp +1 -1
  49. data/.doc/ext/reflex/view.cpp +206 -79
  50. data/.doc/ext/reflex/wheel_constraint.cpp +142 -0
  51. data/.doc/ext/reflex/wheel_event.cpp +1 -1
  52. data/.doc/ext/reflex/window.cpp +282 -31
  53. data/.github/workflows/release-gem.yml +2 -40
  54. data/.github/workflows/tag.yml +5 -28
  55. data/.github/workflows/test.yml +1 -28
  56. data/ChangeLog.md +79 -0
  57. data/Gemfile.lock +13 -8
  58. data/README.md +1 -0
  59. data/Rakefile +13 -2
  60. data/Reflex.podspec +2 -2
  61. data/VERSION +1 -1
  62. data/ext/reflex/application.cpp +62 -7
  63. data/ext/reflex/capture_event.cpp +1 -1
  64. data/ext/reflex/chase_constraint.cpp +89 -0
  65. data/ext/reflex/clipboard.cpp +69 -0
  66. data/ext/reflex/color_event.cpp +80 -0
  67. data/ext/reflex/color_picker.cpp +121 -0
  68. data/ext/reflex/constraint.cpp +146 -0
  69. data/ext/reflex/contact_event.cpp +1 -1
  70. data/ext/reflex/control_change_event.cpp +1 -1
  71. data/ext/reflex/device.cpp +1 -1
  72. data/ext/reflex/device_event.cpp +1 -1
  73. data/ext/reflex/draw_event.cpp +1 -1
  74. data/ext/reflex/ellipse_shape.cpp +1 -1
  75. data/ext/reflex/event.cpp +1 -1
  76. data/ext/reflex/extconf.rb +4 -2
  77. data/ext/reflex/file_dialog.cpp +194 -0
  78. data/ext/reflex/file_event.cpp +108 -0
  79. data/ext/reflex/filter.cpp +1 -1
  80. data/ext/reflex/focus_event.cpp +1 -1
  81. data/ext/reflex/frame_event.cpp +1 -1
  82. data/ext/reflex/gamepad.cpp +50 -0
  83. data/ext/reflex/image_view.cpp +1 -1
  84. data/ext/reflex/key_event.cpp +1 -275
  85. data/ext/reflex/line_shape.cpp +1 -1
  86. data/ext/reflex/link_constraint.cpp +194 -0
  87. data/ext/reflex/menu.cpp +331 -0
  88. data/ext/reflex/midi.cpp +11 -3
  89. data/ext/reflex/midi_event.cpp +1 -1
  90. data/ext/reflex/motion_event.cpp +1 -1
  91. data/ext/reflex/native.cpp +40 -10
  92. data/ext/reflex/note_event.cpp +1 -1
  93. data/ext/reflex/pin.cpp +165 -0
  94. data/ext/reflex/pointer.cpp +3 -1
  95. data/ext/reflex/pointer_event.cpp +3 -3
  96. data/ext/reflex/polygon_shape.cpp +1 -1
  97. data/ext/reflex/rect_shape.cpp +1 -1
  98. data/ext/reflex/reflex.cpp +608 -237
  99. data/ext/reflex/screen.cpp +31 -2
  100. data/ext/reflex/scroll_event.cpp +1 -1
  101. data/ext/reflex/selector.cpp +5 -5
  102. data/ext/reflex/selector.h +10 -10
  103. data/ext/reflex/shape.cpp +1 -1
  104. data/ext/reflex/snap_constraint.cpp +135 -0
  105. data/ext/reflex/style.cpp +1 -1
  106. data/ext/reflex/style_length.cpp +4 -3
  107. data/ext/reflex/text_event.cpp +111 -0
  108. data/ext/reflex/timer.cpp +1 -1
  109. data/ext/reflex/timer_event.cpp +1 -1
  110. data/ext/reflex/update_event.cpp +1 -1
  111. data/ext/reflex/view.cpp +236 -96
  112. data/ext/reflex/wheel_constraint.cpp +154 -0
  113. data/ext/reflex/wheel_event.cpp +1 -1
  114. data/ext/reflex/window.cpp +318 -40
  115. data/include/reflex/application.h +19 -0
  116. data/include/reflex/clipboard.h +53 -0
  117. data/include/reflex/color_picker.h +65 -0
  118. data/include/reflex/constraint.h +275 -0
  119. data/include/reflex/defs.h +204 -195
  120. data/include/reflex/event.h +180 -88
  121. data/include/reflex/file_dialog.h +73 -0
  122. data/include/reflex/gamepad.h +3 -0
  123. data/include/reflex/menu.h +120 -0
  124. data/include/reflex/midi.h +3 -0
  125. data/include/reflex/pin.h +68 -0
  126. data/include/reflex/pointer.h +4 -0
  127. data/include/reflex/reflex.h +2 -0
  128. data/include/reflex/ruby/application.h +6 -1
  129. data/include/reflex/ruby/clipboard.h +23 -0
  130. data/include/reflex/ruby/color_picker.h +89 -0
  131. data/include/reflex/ruby/constraint.h +94 -0
  132. data/include/reflex/ruby/event.h +62 -29
  133. data/include/reflex/ruby/file_dialog.h +89 -0
  134. data/include/reflex/ruby/gamepad.h +46 -0
  135. data/include/reflex/ruby/menu.h +103 -0
  136. data/include/reflex/ruby/pin.h +40 -0
  137. data/include/reflex/ruby/reflex.h +3 -0
  138. data/include/reflex/ruby/view.h +123 -39
  139. data/include/reflex/ruby/window.h +96 -19
  140. data/include/reflex/ruby.h +3 -0
  141. data/include/reflex/screen.h +11 -2
  142. data/include/reflex/view.h +66 -27
  143. data/include/reflex/window.h +57 -12
  144. data/include/reflex.h +8 -0
  145. data/lib/reflex/application.rb +5 -5
  146. data/lib/reflex/autoinit.rb +3 -1
  147. data/lib/reflex/button.rb +3 -3
  148. data/lib/reflex/chase_constraint.rb +15 -0
  149. data/lib/reflex/clipboard.rb +19 -0
  150. data/lib/reflex/color_event.rb +16 -0
  151. data/lib/reflex/color_picker.rb +45 -0
  152. data/lib/reflex/constraint.rb +29 -0
  153. data/lib/reflex/control_change_event.rb +17 -0
  154. data/lib/reflex/extension.rb +1 -1
  155. data/lib/reflex/file_dialog.rb +70 -0
  156. data/lib/reflex/file_event.rb +37 -0
  157. data/lib/reflex/helper.rb +79 -0
  158. data/lib/reflex/key_event.rb +14 -14
  159. data/lib/reflex/link_constraint.rb +31 -0
  160. data/lib/reflex/menu.rb +92 -0
  161. data/lib/reflex/model.rb +19 -19
  162. data/lib/reflex/note_event.rb +1 -1
  163. data/lib/reflex/pin.rb +39 -0
  164. data/lib/reflex/pointer.rb +30 -1
  165. data/lib/reflex/pointer_event.rb +13 -2
  166. data/lib/reflex/reflex.rb +5 -0
  167. data/lib/reflex/shape.rb +14 -14
  168. data/lib/reflex/snap_constraint.rb +28 -0
  169. data/lib/reflex/style.rb +16 -16
  170. data/lib/reflex/text_event.rb +40 -0
  171. data/lib/reflex/timer.rb +3 -3
  172. data/lib/reflex/view.rb +85 -18
  173. data/lib/reflex/wheel_constraint.rb +28 -0
  174. data/lib/reflex/wheel_event.rb +19 -1
  175. data/lib/reflex/window.rb +25 -13
  176. data/lib/reflex.rb +23 -8
  177. data/pod.rake +1 -1
  178. data/reflex.gemspec +4 -4
  179. data/samples/constraint.rb +152 -0
  180. data/samples/ime.rb +100 -0
  181. data/samples/ios/hello/hello.xcodeproj/project.pbxproj +236 -224
  182. data/samples/menu.rb +32 -0
  183. data/samples/model.rb +3 -3
  184. data/samples/test/alert.rb +93 -0
  185. data/samples/test/always_on.rb +76 -0
  186. data/samples/test/app_background.rb +51 -0
  187. data/samples/test/boundary.rb +75 -0
  188. data/samples/test/callback_exception.rb +101 -0
  189. data/samples/test/cancel.rb +53 -0
  190. data/samples/test/color_picker.rb +63 -0
  191. data/samples/test/file_dialog.rb +102 -0
  192. data/samples/window_style.rb +156 -0
  193. data/src/application.cpp +180 -20
  194. data/src/application.h +95 -5
  195. data/src/clipboard.cpp +81 -0
  196. data/src/color_picker.cpp +113 -0
  197. data/src/color_picker.h +36 -0
  198. data/src/constraint.cpp +1662 -0
  199. data/src/constraint.h +64 -0
  200. data/src/event.cpp +416 -252
  201. data/src/event.h +13 -2
  202. data/src/file_dialog.cpp +163 -0
  203. data/src/file_dialog.h +52 -0
  204. data/src/gamepad.cpp +42 -5
  205. data/src/gamepad.h +4 -0
  206. data/src/ios/app_delegate.mm +5 -3
  207. data/src/ios/application.mm +29 -0
  208. data/src/ios/clipboard.mm +44 -0
  209. data/src/ios/color_picker.mm +19 -0
  210. data/src/ios/event.h +6 -2
  211. data/src/ios/event.mm +31 -12
  212. data/src/ios/file_dialog.mm +21 -0
  213. data/src/ios/gamepad.mm +4 -4
  214. data/src/ios/menu.mm +41 -0
  215. data/src/ios/reflex.mm +8 -0
  216. data/src/ios/screen.mm +26 -0
  217. data/src/ios/view_controller.mm +47 -42
  218. data/src/ios/window.mm +44 -9
  219. data/src/menu.cpp +387 -0
  220. data/src/menu.h +81 -0
  221. data/src/midi.cpp +61 -31
  222. data/src/osx/app_delegate.h +4 -0
  223. data/src/osx/app_delegate.mm +168 -139
  224. data/src/osx/application.mm +103 -5
  225. data/src/osx/clipboard.mm +45 -0
  226. data/src/osx/color_picker.mm +112 -0
  227. data/src/osx/event.h +10 -0
  228. data/src/osx/event.mm +114 -30
  229. data/src/osx/file_dialog.mm +168 -0
  230. data/src/osx/gamepad.mm +2 -2
  231. data/src/osx/gamepad_hid.mm +1 -1
  232. data/src/osx/menu.h +25 -0
  233. data/src/osx/menu.mm +516 -0
  234. data/src/osx/native_window.h +16 -2
  235. data/src/osx/native_window.mm +141 -57
  236. data/src/osx/opengl_view.h +2 -1
  237. data/src/osx/opengl_view.mm +229 -37
  238. data/src/osx/reflex.mm +38 -0
  239. data/src/osx/screen.mm +36 -0
  240. data/src/osx/window.mm +117 -24
  241. data/src/pin.cpp +137 -0
  242. data/src/pointer.cpp +36 -16
  243. data/src/pointer.h +10 -0
  244. data/src/rays.h +46 -0
  245. data/src/sdl/application.cpp +73 -8
  246. data/src/sdl/clipboard.cpp +39 -0
  247. data/src/sdl/color_picker.cpp +18 -0
  248. data/src/sdl/event.cpp +44 -6
  249. data/src/sdl/event.h +18 -3
  250. data/src/sdl/file_dialog.cpp +20 -0
  251. data/src/sdl/gamepad.cpp +3 -7
  252. data/src/sdl/menu.cpp +40 -0
  253. data/src/sdl/reflex.cpp +20 -0
  254. data/src/sdl/screen.cpp +36 -0
  255. data/src/sdl/window.cpp +168 -37
  256. data/src/shape.cpp +15 -10
  257. data/src/view.cpp +583 -233
  258. data/src/view.h +22 -4
  259. data/src/vk.h +416 -0
  260. data/src/win32/application.cpp +167 -12
  261. data/src/win32/application.h +20 -0
  262. data/src/win32/clipboard.cpp +210 -0
  263. data/src/win32/color_picker.cpp +82 -0
  264. data/src/win32/event.cpp +123 -11
  265. data/src/win32/event.h +22 -3
  266. data/src/win32/file_dialog.cpp +226 -0
  267. data/src/win32/gamepad.cpp +9 -2
  268. data/src/win32/menu.cpp +490 -0
  269. data/src/win32/menu.h +35 -0
  270. data/src/win32/opengl.cpp +2 -9
  271. data/src/win32/reflex.cpp +44 -3
  272. data/src/win32/screen.cpp +164 -3
  273. data/src/win32/screen.h +8 -0
  274. data/src/win32/tray.cpp +191 -0
  275. data/src/win32/tray.h +22 -0
  276. data/src/win32/vk.cpp +11 -0
  277. data/src/win32/window.cpp +858 -135
  278. data/src/win32/window.h +9 -0
  279. data/src/window.cpp +929 -183
  280. data/src/window.h +77 -33
  281. data/src/world.cpp +86 -15
  282. data/src/world.h +9 -2
  283. data/test/helper.rb +24 -0
  284. data/test/test_application.rb +101 -1
  285. data/test/test_chase_constraint.rb +122 -0
  286. data/test/test_clipboard.rb +54 -0
  287. data/test/test_color_event.rb +36 -0
  288. data/test/test_color_picker.rb +62 -0
  289. data/test/test_constraint.rb +184 -0
  290. data/test/test_event.rb +1 -1
  291. data/test/test_file_dialog.rb +48 -0
  292. data/test/test_file_event.rb +43 -0
  293. data/test/test_has_text_preedit.rb +54 -0
  294. data/test/test_key_event.rb +23 -2
  295. data/test/test_link_constraint.rb +237 -0
  296. data/test/test_menu.rb +237 -0
  297. data/test/test_pin.rb +65 -0
  298. data/test/test_pointer.rb +50 -26
  299. data/test/test_pointer_event.rb +25 -10
  300. data/test/test_reflex.rb +36 -0
  301. data/test/test_screen.rb +24 -2
  302. data/test/test_snap_constraint.rb +140 -0
  303. data/test/test_text_event.rb +54 -0
  304. data/test/test_view.rb +152 -25
  305. data/test/test_wheel_constraint.rb +125 -0
  306. data/test/test_wheel_event.rb +24 -10
  307. data/test/test_window.rb +205 -43
  308. metadata +154 -10
  309. data/.github/workflows/utils.rb +0 -127
@@ -0,0 +1,68 @@
1
+ // -*- c++ -*-
2
+ #pragma once
3
+ #ifndef __REFLEX_PIN_H__
4
+ #define __REFLEX_PIN_H__
5
+
6
+
7
+ #include <xot/pimpl.h>
8
+ #include <rays/point.h>
9
+ #include <reflex/defs.h>
10
+
11
+
12
+ namespace Reflex
13
+ {
14
+
15
+
16
+ class View;
17
+ class SnapConstraint;
18
+ class LinkConstraint;
19
+ class WheelConstraint;
20
+ class ChaseConstraint;
21
+
22
+
23
+ class Pin
24
+ {
25
+
26
+ public:
27
+
28
+ Pin ();
29
+
30
+ Pin (coord x, coord y);
31
+
32
+ Pin (const Point& position);
33
+
34
+ Pin (View* view);
35
+
36
+ Pin (View* view, coord x, coord y);
37
+
38
+ Pin (View* view, const Point& position);
39
+
40
+ SnapConstraint* snap (Pin target = Pin());
41
+
42
+ LinkConstraint* link (Pin target = Pin());
43
+
44
+ WheelConstraint* wheel (Pin target = Pin());
45
+
46
+ ChaseConstraint* chase (Pin target = Pin());
47
+
48
+ View* view ();
49
+
50
+ const View* view () const;
51
+
52
+ const Point* position () const;
53
+
54
+ operator bool () const;
55
+
56
+ bool operator ! () const;
57
+
58
+ struct Data;
59
+
60
+ Xot::PSharedImpl<Data> self;
61
+
62
+ };// Pin
63
+
64
+
65
+ }// Reflex
66
+
67
+
68
+ #endif//EOH
@@ -57,6 +57,10 @@ namespace Reflex
57
57
 
58
58
  CANCEL,
59
59
 
60
+ ENTER,
61
+
62
+ LEAVE,
63
+
60
64
  STAY
61
65
 
62
66
  };// Action
@@ -18,6 +18,8 @@ namespace Reflex
18
18
 
19
19
  void process_events ();
20
20
 
21
+ void alert (const char* message, const char* title = NULL);
22
+
21
23
 
22
24
  }// Reflex
23
25
 
@@ -49,9 +49,14 @@ namespace Reflex
49
49
 
50
50
  virtual void on_start (Event* e)
51
51
  {
52
- RUCY_SYM(on_start);
53
52
  if (this->is_overridable())
53
+ {
54
+ RUCY_SYM(call_start_block);
55
+ this->value.call(call_start_block);
56
+
57
+ RUCY_SYM(on_start);
54
58
  this->value.call(on_start, Rucy::value(e));
59
+ }
55
60
  else
56
61
  return Super::on_start(e);
57
62
  }
@@ -0,0 +1,23 @@
1
+ // -*- c++ -*-
2
+ #pragma once
3
+ #ifndef __REFLEX_RUBY_CLIPBOARD_H__
4
+ #define __REFLEX_RUBY_CLIPBOARD_H__
5
+
6
+
7
+ #include <rucy/class.h>
8
+ #include <rucy/extension.h>
9
+ #include <reflex/clipboard.h>
10
+
11
+
12
+ namespace Reflex
13
+ {
14
+
15
+
16
+ REFLEX_EXPORT Rucy::Class clipboard_class ();
17
+ // class Reflex::Clipboard
18
+
19
+
20
+ }// Reflex
21
+
22
+
23
+ #endif//EOH
@@ -0,0 +1,89 @@
1
+ // -*- c++ -*-
2
+ #pragma once
3
+ #ifndef __REFLEX_RUBY_COLOR_PICKER_H__
4
+ #define __REFLEX_RUBY_COLOR_PICKER_H__
5
+
6
+
7
+ #include <rucy/class.h>
8
+ #include <rucy/extension.h>
9
+ #include <reflex/color_picker.h>
10
+ #include <reflex/ruby/event.h>
11
+
12
+
13
+ RUCY_DECLARE_WRAPPER_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::ColorPicker)
14
+
15
+
16
+ namespace Reflex
17
+ {
18
+
19
+
20
+ REFLEX_EXPORT Rucy::Class color_picker_class ();
21
+ // class Reflex::ColorPicker
22
+
23
+
24
+ template <typename T>
25
+ class RubyColorPicker : public Rucy::ClassWrapper<T>
26
+ {
27
+
28
+ typedef Rucy::ClassWrapper<T> Super;
29
+
30
+ public:
31
+
32
+ virtual void on_color (ColorEvent* e)
33
+ {
34
+ if (this->is_overridable())
35
+ {
36
+ RUCY_SYM(call_color_block);
37
+ this->value.call(call_color_block, Rucy::value(e));
38
+
39
+ if (!e->is_blocked())
40
+ {
41
+ RUCY_SYM(on_color);
42
+ this->value.call(on_color, Rucy::value(e));
43
+ }
44
+ }
45
+ else
46
+ Super::on_color(e);
47
+ }
48
+
49
+ virtual void on_close (Event* e)
50
+ {
51
+ if (this->is_overridable())
52
+ {
53
+ RUCY_SYM(clear_color_block);
54
+ this->value.call(clear_color_block);
55
+
56
+ RUCY_SYM(on_close);
57
+ this->value.call(on_close, Rucy::value(e));
58
+ }
59
+ else
60
+ Super::on_close(e);
61
+ }
62
+
63
+ };// RubyColorPicker
64
+
65
+
66
+ }// Reflex
67
+
68
+
69
+ namespace Rucy
70
+ {
71
+
72
+
73
+ template <> inline Class
74
+ get_ruby_class<Reflex::ColorPicker> ()
75
+ {
76
+ return Reflex::color_picker_class();
77
+ }
78
+
79
+ inline Value
80
+ value (Reflex::ColorPicker::Ref& ref, Value klass = Reflex::color_picker_class())
81
+ {
82
+ return value(ref.get(), klass);
83
+ }
84
+
85
+
86
+ }// Rucy
87
+
88
+
89
+ #endif//EOH
@@ -0,0 +1,94 @@
1
+ // -*- c++ -*-
2
+ #pragma once
3
+ #ifndef __REFLEX_RUBY_CONSTRAINT_H__
4
+ #define __REFLEX_RUBY_CONSTRAINT_H__
5
+
6
+
7
+ #include <rucy/class.h>
8
+ #include <rucy/extension.h>
9
+ #include <reflex/constraint.h>
10
+
11
+
12
+ RUCY_DECLARE_WRAPPER_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::Constraint)
13
+
14
+ RUCY_DECLARE_WRAPPER_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::SnapConstraint)
15
+
16
+ RUCY_DECLARE_WRAPPER_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::LinkConstraint)
17
+
18
+ RUCY_DECLARE_WRAPPER_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::WheelConstraint)
19
+
20
+ RUCY_DECLARE_WRAPPER_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::ChaseConstraint)
21
+
22
+
23
+ namespace Reflex
24
+ {
25
+
26
+
27
+ template <typename T>
28
+ class RubyConstraint : public Rucy::ClassWrapper<T> {};
29
+
30
+
31
+ REFLEX_EXPORT Rucy::Class constraint_class ();
32
+ // class Reflex::Constraint
33
+
34
+ REFLEX_EXPORT Rucy::Class snap_constraint_class ();
35
+ // class Reflex::SnapConstraint
36
+
37
+ REFLEX_EXPORT Rucy::Class link_constraint_class ();
38
+ // class Reflex::LinkConstraint
39
+
40
+ REFLEX_EXPORT Rucy::Class wheel_constraint_class ();
41
+ // class Reflex::WheelConstraint
42
+
43
+ REFLEX_EXPORT Rucy::Class chase_constraint_class ();
44
+ // class Reflex::ChaseConstraint
45
+
46
+
47
+ }// Reflex
48
+
49
+
50
+ namespace Rucy
51
+ {
52
+
53
+
54
+ template <> inline Class
55
+ get_ruby_class<Reflex::Constraint> ()
56
+ {
57
+ return Reflex::constraint_class();
58
+ }
59
+
60
+ template <> inline Class
61
+ get_ruby_class<Reflex::SnapConstraint> ()
62
+ {
63
+ return Reflex::snap_constraint_class();
64
+ }
65
+
66
+ template <> inline Class
67
+ get_ruby_class<Reflex::LinkConstraint> ()
68
+ {
69
+ return Reflex::link_constraint_class();
70
+ }
71
+
72
+ template <> inline Class
73
+ get_ruby_class<Reflex::WheelConstraint> ()
74
+ {
75
+ return Reflex::wheel_constraint_class();
76
+ }
77
+
78
+ template <> inline Class
79
+ get_ruby_class<Reflex::ChaseConstraint> ()
80
+ {
81
+ return Reflex::chase_constraint_class();
82
+ }
83
+
84
+ inline Value
85
+ value (Reflex::Constraint::Ref& ref, Value klass = Reflex::constraint_class())
86
+ {
87
+ return value(ref.get(), klass);
88
+ }
89
+
90
+
91
+ }// Rucy
92
+
93
+
94
+ #endif//EOH
@@ -25,16 +25,12 @@ RUCY_DECLARE_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::FocusEvent)
25
25
 
26
26
  RUCY_DECLARE_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::KeyEvent)
27
27
 
28
+ RUCY_DECLARE_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::TextEvent)
29
+
28
30
  RUCY_DECLARE_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::PointerEvent)
29
31
 
30
32
  RUCY_DECLARE_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::WheelEvent)
31
33
 
32
- RUCY_DECLARE_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::MIDIEvent)
33
-
34
- RUCY_DECLARE_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::NoteEvent)
35
-
36
- RUCY_DECLARE_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::ControlChangeEvent)
37
-
38
34
  RUCY_DECLARE_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::CaptureEvent)
39
35
 
40
36
  RUCY_DECLARE_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::TimerEvent)
@@ -43,6 +39,16 @@ RUCY_DECLARE_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::ContactEvent)
43
39
 
44
40
  RUCY_DECLARE_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::MotionEvent)
45
41
 
42
+ RUCY_DECLARE_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::FileEvent)
43
+
44
+ RUCY_DECLARE_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::ColorEvent)
45
+
46
+ RUCY_DECLARE_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::MIDIEvent)
47
+
48
+ RUCY_DECLARE_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::NoteEvent)
49
+
50
+ RUCY_DECLARE_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::ControlChangeEvent)
51
+
46
52
 
47
53
  namespace Reflex
48
54
  {
@@ -72,21 +78,15 @@ namespace Reflex
72
78
  REFLEX_EXPORT Rucy::Class key_event_class ();
73
79
  // class Reflex::KeyEvent
74
80
 
81
+ REFLEX_EXPORT Rucy::Class text_event_class ();
82
+ // class Reflex::TextEvent
83
+
75
84
  REFLEX_EXPORT Rucy::Class pointer_event_class ();
76
85
  // class Reflex::PointerEvent
77
86
 
78
87
  REFLEX_EXPORT Rucy::Class wheel_event_class ();
79
88
  // class Reflex::WheelEvent
80
89
 
81
- REFLEX_EXPORT Rucy::Class midi_event_class ();
82
- // class Reflex::MIDIEvent
83
-
84
- REFLEX_EXPORT Rucy::Class note_event_class ();
85
- // class Reflex::NoteEvent
86
-
87
- REFLEX_EXPORT Rucy::Class control_change_event_class ();
88
- // class Reflex::ControlChangeEvent
89
-
90
90
  REFLEX_EXPORT Rucy::Class capture_event_class ();
91
91
  // class Reflex::CaptureEvent
92
92
 
@@ -99,6 +99,21 @@ namespace Reflex
99
99
  REFLEX_EXPORT Rucy::Class motion_event_class ();
100
100
  // class Reflex::MotionEvent
101
101
 
102
+ REFLEX_EXPORT Rucy::Class file_event_class ();
103
+ // class Reflex::FileEvent
104
+
105
+ REFLEX_EXPORT Rucy::Class color_event_class ();
106
+ // class Reflex::ColorEvent
107
+
108
+ REFLEX_EXPORT Rucy::Class midi_event_class ();
109
+ // class Reflex::MIDIEvent
110
+
111
+ REFLEX_EXPORT Rucy::Class note_event_class ();
112
+ // class Reflex::NoteEvent
113
+
114
+ REFLEX_EXPORT Rucy::Class control_change_event_class ();
115
+ // class Reflex::ControlChangeEvent
116
+
102
117
 
103
118
  }// Reflex
104
119
 
@@ -155,6 +170,12 @@ namespace Rucy
155
170
  return Reflex::key_event_class();
156
171
  }
157
172
 
173
+ template <> inline Class
174
+ get_ruby_class<Reflex::TextEvent> ()
175
+ {
176
+ return Reflex::text_event_class();
177
+ }
178
+
158
179
  template <> inline Class
159
180
  get_ruby_class<Reflex::PointerEvent> ()
160
181
  {
@@ -168,45 +189,57 @@ namespace Rucy
168
189
  }
169
190
 
170
191
  template <> inline Class
171
- get_ruby_class<Reflex::MIDIEvent> ()
192
+ get_ruby_class<Reflex::CaptureEvent> ()
172
193
  {
173
- return Reflex::midi_event_class();
194
+ return Reflex::capture_event_class();
174
195
  }
175
196
 
176
197
  template <> inline Class
177
- get_ruby_class<Reflex::NoteEvent> ()
198
+ get_ruby_class<Reflex::TimerEvent> ()
178
199
  {
179
- return Reflex::note_event_class();
200
+ return Reflex::timer_event_class();
180
201
  }
181
202
 
182
203
  template <> inline Class
183
- get_ruby_class<Reflex::ControlChangeEvent> ()
204
+ get_ruby_class<Reflex::ContactEvent> ()
184
205
  {
185
- return Reflex::control_change_event_class();
206
+ return Reflex::contact_event_class();
186
207
  }
187
208
 
188
209
  template <> inline Class
189
- get_ruby_class<Reflex::CaptureEvent> ()
210
+ get_ruby_class<Reflex::MotionEvent> ()
190
211
  {
191
- return Reflex::capture_event_class();
212
+ return Reflex::motion_event_class();
192
213
  }
193
214
 
194
215
  template <> inline Class
195
- get_ruby_class<Reflex::TimerEvent> ()
216
+ get_ruby_class<Reflex::FileEvent> ()
196
217
  {
197
- return Reflex::timer_event_class();
218
+ return Reflex::file_event_class();
198
219
  }
199
220
 
200
221
  template <> inline Class
201
- get_ruby_class<Reflex::ContactEvent> ()
222
+ get_ruby_class<Reflex::ColorEvent> ()
202
223
  {
203
- return Reflex::contact_event_class();
224
+ return Reflex::color_event_class();
204
225
  }
205
226
 
206
227
  template <> inline Class
207
- get_ruby_class<Reflex::MotionEvent> ()
228
+ get_ruby_class<Reflex::MIDIEvent> ()
208
229
  {
209
- return Reflex::motion_event_class();
230
+ return Reflex::midi_event_class();
231
+ }
232
+
233
+ template <> inline Class
234
+ get_ruby_class<Reflex::NoteEvent> ()
235
+ {
236
+ return Reflex::note_event_class();
237
+ }
238
+
239
+ template <> inline Class
240
+ get_ruby_class<Reflex::ControlChangeEvent> ()
241
+ {
242
+ return Reflex::control_change_event_class();
210
243
  }
211
244
 
212
245
 
@@ -0,0 +1,89 @@
1
+ // -*- c++ -*-
2
+ #pragma once
3
+ #ifndef __REFLEX_RUBY_FILE_DIALOG_H__
4
+ #define __REFLEX_RUBY_FILE_DIALOG_H__
5
+
6
+
7
+ #include <rucy/class.h>
8
+ #include <rucy/extension.h>
9
+ #include <reflex/file_dialog.h>
10
+ #include <reflex/ruby/event.h>
11
+
12
+
13
+ RUCY_DECLARE_WRAPPER_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::FileDialog)
14
+
15
+
16
+ namespace Reflex
17
+ {
18
+
19
+
20
+ REFLEX_EXPORT Rucy::Class file_dialog_class ();
21
+ // class Reflex::FileDialog
22
+
23
+
24
+ template <typename T>
25
+ class RubyFileDialog : public Rucy::ClassWrapper<T>
26
+ {
27
+
28
+ typedef Rucy::ClassWrapper<T> Super;
29
+
30
+ public:
31
+
32
+ virtual void on_file (FileEvent* e)
33
+ {
34
+ if (this->is_overridable())
35
+ {
36
+ RUCY_SYM(call_file_block);
37
+ this->value.call(call_file_block, Rucy::value(e));
38
+
39
+ if (!e->is_blocked())
40
+ {
41
+ RUCY_SYM(on_file);
42
+ this->value.call(on_file, Rucy::value(e));
43
+ }
44
+ }
45
+ else
46
+ Super::on_file(e);
47
+ }
48
+
49
+ virtual void on_cancel (Event* e)
50
+ {
51
+ if (this->is_overridable())
52
+ {
53
+ RUCY_SYM(call_cancel_block);
54
+ this->value.call(call_cancel_block);
55
+
56
+ RUCY_SYM(on_cancel);
57
+ this->value.call(on_cancel, Rucy::value(e));
58
+ }
59
+ else
60
+ Super::on_cancel(e);
61
+ }
62
+
63
+ };// RubyFileDialog
64
+
65
+
66
+ }// Reflex
67
+
68
+
69
+ namespace Rucy
70
+ {
71
+
72
+
73
+ template <> inline Class
74
+ get_ruby_class<Reflex::FileDialog> ()
75
+ {
76
+ return Reflex::file_dialog_class();
77
+ }
78
+
79
+ inline Value
80
+ value (Reflex::FileDialog::Ref& ref, Value klass = Reflex::file_dialog_class())
81
+ {
82
+ return value(ref.get(), klass);
83
+ }
84
+
85
+
86
+ }// Rucy
87
+
88
+
89
+ #endif//EOH
@@ -0,0 +1,46 @@
1
+ // -*- c++ -*-
2
+ #pragma once
3
+ #ifndef __REFLEX_RUBY_GAMEPAD_H__
4
+ #define __REFLEX_RUBY_GAMEPAD_H__
5
+
6
+
7
+ #include <rucy/class.h>
8
+ #include <rucy/extension.h>
9
+ #include <reflex/gamepad.h>
10
+
11
+
12
+ RUCY_DECLARE_WRAPPER_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::Gamepad)
13
+
14
+
15
+ namespace Reflex
16
+ {
17
+
18
+
19
+ REFLEX_EXPORT Rucy::Class gamepad_class ();
20
+ // class Reflex::Gamepad
21
+
22
+
23
+ }// Reflex
24
+
25
+
26
+ namespace Rucy
27
+ {
28
+
29
+
30
+ template <> inline Class
31
+ get_ruby_class<Reflex::Gamepad> ()
32
+ {
33
+ return Reflex::gamepad_class();
34
+ }
35
+
36
+ inline Value
37
+ value (Reflex::Gamepad::Ref& ref, Value klass = Reflex::gamepad_class())
38
+ {
39
+ return value(ref.get(), klass);
40
+ }
41
+
42
+
43
+ }// Rucy
44
+
45
+
46
+ #endif//EOH
@@ -0,0 +1,103 @@
1
+ // -*- c++ -*-
2
+ #pragma once
3
+ #ifndef __REFLEX_RUBY_MENU_H__
4
+ #define __REFLEX_RUBY_MENU_H__
5
+
6
+
7
+ #include <rucy/class.h>
8
+ #include <rucy/extension.h>
9
+ #include <reflex/menu.h>
10
+ #include <reflex/ruby/event.h>
11
+
12
+
13
+ RUCY_DECLARE_WRAPPER_VALUE_FROM_TO(REFLEX_EXPORT, Reflex::Menu)
14
+
15
+
16
+ namespace Reflex
17
+ {
18
+
19
+
20
+ REFLEX_EXPORT Rucy::Class menu_class ();
21
+ // class Reflex::Menu
22
+
23
+
24
+ template <typename T>
25
+ class RubyMenu : public Rucy::ClassWrapper<T>
26
+ {
27
+
28
+ typedef Rucy::ClassWrapper<T> Super;
29
+
30
+ public:
31
+
32
+ virtual void on_show (Event* e)
33
+ {
34
+ RUCY_SYM(on_show);
35
+ if (this->is_overridable())
36
+ this->value.call(on_show, Rucy::value(e));
37
+ else
38
+ Super::on_show(e);
39
+ }
40
+
41
+ virtual void on_hide (Event* e)
42
+ {
43
+ RUCY_SYM(on_hide);
44
+ if (this->is_overridable())
45
+ this->value.call(on_hide, Rucy::value(e));
46
+ else
47
+ Super::on_hide(e);
48
+ }
49
+
50
+ virtual void on_open_submenu (Event* e)
51
+ {
52
+ RUCY_SYM(on_open_submenu);
53
+ if (this->is_overridable())
54
+ this->value.call(on_open_submenu, Rucy::value(e));
55
+ else
56
+ Super::on_open_submenu(e);
57
+ }
58
+
59
+ virtual void on_close_submenu (Event* e)
60
+ {
61
+ RUCY_SYM(on_close_submenu);
62
+ if (this->is_overridable())
63
+ this->value.call(on_close_submenu, Rucy::value(e));
64
+ else
65
+ Super::on_close_submenu(e);
66
+ }
67
+
68
+ virtual void on_click (Event* e)
69
+ {
70
+ RUCY_SYM(on_click);
71
+ if (this->is_overridable())
72
+ this->value.call(on_click, Rucy::value(e));
73
+ else
74
+ Super::on_click(e);
75
+ }
76
+
77
+ };// RubyMenu
78
+
79
+
80
+ }// Reflex
81
+
82
+
83
+ namespace Rucy
84
+ {
85
+
86
+
87
+ template <> inline Class
88
+ get_ruby_class<Reflex::Menu> ()
89
+ {
90
+ return Reflex::menu_class();
91
+ }
92
+
93
+ inline Value
94
+ value (Reflex::Menu::Ref& ref, Value klass = Reflex::menu_class())
95
+ {
96
+ return value(ref.get(), klass);
97
+ }
98
+
99
+
100
+ }// Rucy
101
+
102
+
103
+ #endif//EOH