reflexion 0.1.12 → 0.1.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (333) hide show
  1. checksums.yaml +5 -5
  2. data/.doc/ext/reflex/application.cpp +9 -5
  3. data/.doc/ext/reflex/capture_event.cpp +4 -9
  4. data/.doc/ext/reflex/contact_event.cpp +17 -13
  5. data/.doc/ext/reflex/draw_event.cpp +3 -8
  6. data/.doc/ext/reflex/ellipse_shape.cpp +51 -24
  7. data/.doc/ext/reflex/event.cpp +0 -4
  8. data/.doc/ext/reflex/filter.cpp +81 -0
  9. data/.doc/ext/reflex/focus_event.cpp +9 -13
  10. data/.doc/ext/reflex/frame_event.cpp +47 -14
  11. data/.doc/ext/reflex/image_view.cpp +1 -10
  12. data/.doc/ext/reflex/key_event.cpp +9 -14
  13. data/.doc/ext/reflex/line_shape.cpp +99 -0
  14. data/.doc/ext/reflex/motion_event.cpp +73 -0
  15. data/.doc/ext/reflex/native.cpp +18 -18
  16. data/.doc/ext/reflex/pointer_event.cpp +27 -25
  17. data/.doc/ext/reflex/polygon_shape.cpp +65 -0
  18. data/.doc/ext/reflex/rect_shape.cpp +102 -23
  19. data/.doc/ext/reflex/reflex.cpp +24 -3
  20. data/.doc/ext/reflex/scroll_event.cpp +8 -15
  21. data/.doc/ext/reflex/selector.cpp +43 -15
  22. data/.doc/ext/reflex/shape.cpp +211 -0
  23. data/.doc/ext/reflex/style.cpp +359 -185
  24. data/.doc/ext/reflex/style_length.cpp +163 -35
  25. data/.doc/ext/reflex/timer.cpp +101 -0
  26. data/.doc/ext/reflex/timer_event.cpp +123 -0
  27. data/.doc/ext/reflex/update_event.cpp +12 -8
  28. data/.doc/ext/reflex/view.cpp +548 -144
  29. data/.doc/ext/reflex/wheel_event.cpp +5 -28
  30. data/.doc/ext/reflex/window.cpp +7 -15
  31. data/LICENSE +21 -0
  32. data/README.md +1 -1
  33. data/Rakefile +14 -12
  34. data/VERSION +1 -1
  35. data/ext/reflex/application.cpp +10 -5
  36. data/ext/reflex/capture_event.cpp +4 -9
  37. data/ext/reflex/contact_event.cpp +18 -13
  38. data/ext/reflex/defs.h +5 -2
  39. data/ext/reflex/draw_event.cpp +3 -8
  40. data/ext/reflex/ellipse_shape.cpp +56 -25
  41. data/ext/reflex/event.cpp +0 -4
  42. data/ext/reflex/extconf.rb +1 -2
  43. data/ext/reflex/filter.cpp +86 -0
  44. data/ext/reflex/focus_event.cpp +11 -15
  45. data/ext/reflex/frame_event.cpp +52 -14
  46. data/ext/reflex/image_view.cpp +1 -10
  47. data/ext/reflex/key_event.cpp +9 -14
  48. data/ext/reflex/line_shape.cpp +104 -0
  49. data/ext/reflex/motion_event.cpp +77 -0
  50. data/ext/reflex/native.cpp +18 -18
  51. data/ext/reflex/pointer_event.cpp +27 -25
  52. data/ext/reflex/polygon_shape.cpp +68 -0
  53. data/ext/reflex/rect_shape.cpp +113 -24
  54. data/ext/reflex/reflex.cpp +24 -3
  55. data/ext/reflex/scroll_event.cpp +8 -15
  56. data/ext/reflex/selector.cpp +46 -16
  57. data/ext/reflex/selector.h +130 -0
  58. data/ext/reflex/shape.cpp +231 -0
  59. data/ext/reflex/style.cpp +363 -192
  60. data/ext/reflex/style_length.cpp +164 -37
  61. data/ext/reflex/timer.cpp +108 -0
  62. data/ext/reflex/timer_event.cpp +133 -0
  63. data/ext/reflex/update_event.cpp +13 -8
  64. data/ext/reflex/view.cpp +594 -150
  65. data/ext/reflex/wheel_event.cpp +5 -30
  66. data/ext/reflex/window.cpp +7 -15
  67. data/include/reflex.h +5 -4
  68. data/include/reflex/application.h +2 -0
  69. data/include/reflex/debug.h +22 -0
  70. data/include/reflex/defs.h +45 -2
  71. data/include/reflex/event.h +55 -11
  72. data/include/reflex/exception.h +17 -2
  73. data/include/reflex/filter.h +56 -0
  74. data/include/reflex/image_view.h +1 -1
  75. data/include/reflex/ruby.h +6 -4
  76. data/include/reflex/ruby/application.h +17 -9
  77. data/include/reflex/ruby/event.h +22 -0
  78. data/include/reflex/ruby/filter.h +69 -0
  79. data/include/reflex/ruby/reflex.h +1 -0
  80. data/include/reflex/ruby/selector.h +1 -1
  81. data/include/reflex/ruby/shape.h +140 -0
  82. data/include/reflex/ruby/style.h +1 -1
  83. data/include/reflex/ruby/timer.h +69 -0
  84. data/include/reflex/ruby/view.h +43 -76
  85. data/include/reflex/ruby/window.h +17 -32
  86. data/include/reflex/selector.h +54 -2
  87. data/include/reflex/shape.h +211 -0
  88. data/include/reflex/style.h +136 -76
  89. data/include/reflex/timer.h +73 -0
  90. data/include/reflex/view.h +181 -59
  91. data/include/reflex/window.h +4 -3
  92. data/lib/reflex.rb +13 -6
  93. data/lib/reflex/application.rb +6 -3
  94. data/lib/reflex/button.rb +2 -2
  95. data/lib/reflex/{texture.rb → camera.rb} +2 -2
  96. data/lib/reflex/capture_event.rb +7 -6
  97. data/lib/reflex/contact_event.rb +10 -12
  98. data/lib/reflex/draw_event.rb +6 -1
  99. data/lib/reflex/ellipse_shape.rb +27 -0
  100. data/lib/reflex/filter.rb +18 -0
  101. data/lib/reflex/fixture.rb +4 -0
  102. data/lib/reflex/focus_event.rb +10 -12
  103. data/lib/reflex/frame_event.rb +1 -1
  104. data/lib/reflex/helper.rb +17 -29
  105. data/lib/reflex/key_event.rb +13 -11
  106. data/lib/reflex/line_shape.rb +18 -0
  107. data/lib/reflex/matrix.rb +13 -0
  108. data/lib/reflex/module.rb +4 -19
  109. data/lib/reflex/pointer_event.rb +28 -35
  110. data/lib/reflex/polygon.rb +14 -0
  111. data/lib/reflex/polygon_shape.rb +23 -0
  112. data/lib/reflex/polyline.rb +13 -0
  113. data/lib/reflex/rect_shape.rb +20 -0
  114. data/lib/reflex/reflex.rb +1 -3
  115. data/lib/reflex/scroll_event.rb +1 -1
  116. data/lib/reflex/selector.rb +2 -2
  117. data/lib/reflex/shape.rb +62 -0
  118. data/lib/reflex/style.rb +78 -11
  119. data/lib/reflex/style_length.rb +0 -11
  120. data/lib/reflex/text_view.rb +7 -24
  121. data/lib/reflex/timer.rb +30 -0
  122. data/lib/reflex/timer_event.rb +29 -0
  123. data/lib/reflex/update_event.rb +1 -1
  124. data/lib/reflex/view.rb +127 -32
  125. data/lib/reflex/wheel_event.rb +9 -1
  126. data/lib/reflex/window.rb +29 -9
  127. data/lib/reflexion.rb +23 -7
  128. data/reflex.gemspec +8 -10
  129. data/samples/bats.rb +4 -4
  130. data/samples/camera.rb +45 -0
  131. data/samples/fans.rb +1 -1
  132. data/samples/fps.rb +5 -3
  133. data/samples/hello.rb +4 -6
  134. data/samples/image.rb +5 -4
  135. data/samples/ios/hello/hello.xcodeproj/project.pbxproj +0 -2
  136. data/samples/layout.rb +16 -7
  137. data/samples/model.rb +10 -7
  138. data/samples/physics.rb +22 -20
  139. data/samples/reflexion/breakout.rb +4 -5
  140. data/samples/reflexion/hello.rb +2 -2
  141. data/samples/reflexion/jump_action.rb +191 -0
  142. data/samples/reflexion/noise.rb +23 -0
  143. data/samples/reflexion/paint.rb +7 -6
  144. data/samples/reflexion/physics.rb +15 -8
  145. data/samples/reflexion/pulse.rb +24 -10
  146. data/samples/shader.rb +8 -6
  147. data/samples/shapes.rb +79 -14
  148. data/samples/tree.rb +9 -10
  149. data/samples/views.rb +3 -3
  150. data/samples/visuals.rb +2 -5
  151. data/src/body.cpp +146 -345
  152. data/src/body.h +91 -0
  153. data/src/event.cpp +65 -15
  154. data/src/exception.cpp +13 -3
  155. data/src/filter.cpp +76 -0
  156. data/src/fixture.cpp +164 -39
  157. data/src/fixture.h +85 -0
  158. data/src/image_view.cpp +4 -4
  159. data/src/ios/app_delegate.h +5 -10
  160. data/src/ios/app_delegate.mm +79 -41
  161. data/src/ios/application.h +32 -0
  162. data/src/ios/application.mm +35 -25
  163. data/src/ios/event.mm +8 -4
  164. data/src/ios/reflex.mm +0 -7
  165. data/src/ios/view_controller.h +37 -0
  166. data/src/ios/view_controller.mm +424 -0
  167. data/src/ios/window.h +40 -0
  168. data/src/ios/window.mm +59 -250
  169. data/src/osx/app_delegate.h +5 -10
  170. data/src/osx/app_delegate.mm +52 -55
  171. data/src/osx/application.h +32 -0
  172. data/src/osx/application.mm +44 -39
  173. data/src/osx/native_window.h +0 -15
  174. data/src/osx/native_window.mm +127 -127
  175. data/src/osx/opengl_view.h +0 -2
  176. data/src/osx/opengl_view.mm +12 -3
  177. data/src/osx/reflex.mm +0 -9
  178. data/src/osx/window.h +42 -0
  179. data/src/osx/window.mm +45 -252
  180. data/src/selector.cpp +232 -7
  181. data/src/selector.h +52 -0
  182. data/src/shape.cpp +1191 -0
  183. data/src/shape.h +61 -0
  184. data/src/style.cpp +573 -376
  185. data/src/style.h +39 -0
  186. data/src/timer.cpp +288 -0
  187. data/src/timer.h +55 -0
  188. data/src/view.cpp +1624 -984
  189. data/src/view.h +56 -0
  190. data/src/win32/window.cpp +3 -4
  191. data/src/window.cpp +302 -20
  192. data/src/window.h +94 -0
  193. data/src/world.cpp +112 -111
  194. data/src/world.h +34 -53
  195. data/task/box2d.rake +31 -10
  196. data/test/test_capture_event.rb +8 -6
  197. data/test/test_pointer_event.rb +130 -0
  198. data/test/test_selector.rb +1 -1
  199. data/test/test_shape.rb +71 -0
  200. data/test/test_style.rb +77 -11
  201. data/test/test_style_length.rb +42 -13
  202. data/test/test_view.rb +138 -14
  203. metadata +115 -213
  204. data/.doc/ext/reflex/arc_shape.cpp +0 -89
  205. data/.doc/ext/reflex/body.cpp +0 -299
  206. data/.doc/ext/reflex/fixture.cpp +0 -101
  207. data/.doc/ext/reflex/shape_view.cpp +0 -153
  208. data/ext/reflex/arc_shape.cpp +0 -94
  209. data/ext/reflex/body.cpp +0 -328
  210. data/ext/reflex/fixture.cpp +0 -108
  211. data/ext/reflex/shape_view.cpp +0 -161
  212. data/include/reflex/bitmap.h +0 -20
  213. data/include/reflex/body.h +0 -128
  214. data/include/reflex/bounds.h +0 -20
  215. data/include/reflex/color.h +0 -20
  216. data/include/reflex/color_space.h +0 -20
  217. data/include/reflex/fixture.h +0 -117
  218. data/include/reflex/font.h +0 -20
  219. data/include/reflex/image.h +0 -20
  220. data/include/reflex/matrix.h +0 -20
  221. data/include/reflex/painter.h +0 -20
  222. data/include/reflex/point.h +0 -24
  223. data/include/reflex/ruby/body.h +0 -41
  224. data/include/reflex/ruby/fixture.h +0 -41
  225. data/include/reflex/ruby/shape_view.h +0 -96
  226. data/include/reflex/shader.h +0 -20
  227. data/include/reflex/shape_view.h +0 -146
  228. data/include/reflex/texture.h +0 -20
  229. data/lib/reflex/body.rb +0 -22
  230. data/lib/reflex/flags.rb +0 -18
  231. data/lib/reflex/shape_view.rb +0 -25
  232. data/src/ios/application_data.h +0 -45
  233. data/src/ios/native_window.h +0 -39
  234. data/src/ios/native_window.mm +0 -224
  235. data/src/ios/opengl_view.h +0 -13
  236. data/src/ios/opengl_view.mm +0 -139
  237. data/src/ios/window_data.h +0 -75
  238. data/src/osx/application_data.h +0 -45
  239. data/src/osx/window_data.h +0 -75
  240. data/src/physics/Box2D/Box2D.h +0 -68
  241. data/src/physics/Box2D/Collision/Shapes/b2ChainShape.cpp +0 -193
  242. data/src/physics/Box2D/Collision/Shapes/b2ChainShape.h +0 -105
  243. data/src/physics/Box2D/Collision/Shapes/b2CircleShape.cpp +0 -99
  244. data/src/physics/Box2D/Collision/Shapes/b2CircleShape.h +0 -91
  245. data/src/physics/Box2D/Collision/Shapes/b2EdgeShape.cpp +0 -138
  246. data/src/physics/Box2D/Collision/Shapes/b2EdgeShape.h +0 -74
  247. data/src/physics/Box2D/Collision/Shapes/b2PolygonShape.cpp +0 -467
  248. data/src/physics/Box2D/Collision/Shapes/b2PolygonShape.h +0 -101
  249. data/src/physics/Box2D/Collision/Shapes/b2Shape.h +0 -101
  250. data/src/physics/Box2D/Collision/b2BroadPhase.cpp +0 -119
  251. data/src/physics/Box2D/Collision/b2BroadPhase.h +0 -257
  252. data/src/physics/Box2D/Collision/b2CollideCircle.cpp +0 -154
  253. data/src/physics/Box2D/Collision/b2CollideEdge.cpp +0 -698
  254. data/src/physics/Box2D/Collision/b2CollidePolygon.cpp +0 -239
  255. data/src/physics/Box2D/Collision/b2Collision.cpp +0 -252
  256. data/src/physics/Box2D/Collision/b2Collision.h +0 -277
  257. data/src/physics/Box2D/Collision/b2Distance.cpp +0 -603
  258. data/src/physics/Box2D/Collision/b2Distance.h +0 -141
  259. data/src/physics/Box2D/Collision/b2DynamicTree.cpp +0 -778
  260. data/src/physics/Box2D/Collision/b2DynamicTree.h +0 -289
  261. data/src/physics/Box2D/Collision/b2TimeOfImpact.cpp +0 -486
  262. data/src/physics/Box2D/Collision/b2TimeOfImpact.h +0 -58
  263. data/src/physics/Box2D/Common/b2BlockAllocator.cpp +0 -215
  264. data/src/physics/Box2D/Common/b2BlockAllocator.h +0 -62
  265. data/src/physics/Box2D/Common/b2Draw.cpp +0 -44
  266. data/src/physics/Box2D/Common/b2Draw.h +0 -86
  267. data/src/physics/Box2D/Common/b2GrowableStack.h +0 -85
  268. data/src/physics/Box2D/Common/b2Math.cpp +0 -94
  269. data/src/physics/Box2D/Common/b2Math.h +0 -720
  270. data/src/physics/Box2D/Common/b2Settings.cpp +0 -44
  271. data/src/physics/Box2D/Common/b2Settings.h +0 -151
  272. data/src/physics/Box2D/Common/b2StackAllocator.cpp +0 -83
  273. data/src/physics/Box2D/Common/b2StackAllocator.h +0 -60
  274. data/src/physics/Box2D/Common/b2Timer.cpp +0 -101
  275. data/src/physics/Box2D/Common/b2Timer.h +0 -50
  276. data/src/physics/Box2D/Dynamics/Contacts/b2ChainAndCircleContact.cpp +0 -53
  277. data/src/physics/Box2D/Dynamics/Contacts/b2ChainAndCircleContact.h +0 -39
  278. data/src/physics/Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.cpp +0 -53
  279. data/src/physics/Box2D/Dynamics/Contacts/b2ChainAndPolygonContact.h +0 -39
  280. data/src/physics/Box2D/Dynamics/Contacts/b2CircleContact.cpp +0 -52
  281. data/src/physics/Box2D/Dynamics/Contacts/b2CircleContact.h +0 -39
  282. data/src/physics/Box2D/Dynamics/Contacts/b2Contact.cpp +0 -247
  283. data/src/physics/Box2D/Dynamics/Contacts/b2Contact.h +0 -349
  284. data/src/physics/Box2D/Dynamics/Contacts/b2ContactSolver.cpp +0 -838
  285. data/src/physics/Box2D/Dynamics/Contacts/b2ContactSolver.h +0 -95
  286. data/src/physics/Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.cpp +0 -49
  287. data/src/physics/Box2D/Dynamics/Contacts/b2EdgeAndCircleContact.h +0 -39
  288. data/src/physics/Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.cpp +0 -49
  289. data/src/physics/Box2D/Dynamics/Contacts/b2EdgeAndPolygonContact.h +0 -39
  290. data/src/physics/Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.cpp +0 -49
  291. data/src/physics/Box2D/Dynamics/Contacts/b2PolygonAndCircleContact.h +0 -38
  292. data/src/physics/Box2D/Dynamics/Contacts/b2PolygonContact.cpp +0 -52
  293. data/src/physics/Box2D/Dynamics/Contacts/b2PolygonContact.h +0 -39
  294. data/src/physics/Box2D/Dynamics/Joints/b2DistanceJoint.cpp +0 -260
  295. data/src/physics/Box2D/Dynamics/Joints/b2DistanceJoint.h +0 -169
  296. data/src/physics/Box2D/Dynamics/Joints/b2FrictionJoint.cpp +0 -251
  297. data/src/physics/Box2D/Dynamics/Joints/b2FrictionJoint.h +0 -119
  298. data/src/physics/Box2D/Dynamics/Joints/b2GearJoint.cpp +0 -419
  299. data/src/physics/Box2D/Dynamics/Joints/b2GearJoint.h +0 -125
  300. data/src/physics/Box2D/Dynamics/Joints/b2Joint.cpp +0 -211
  301. data/src/physics/Box2D/Dynamics/Joints/b2Joint.h +0 -226
  302. data/src/physics/Box2D/Dynamics/Joints/b2MotorJoint.cpp +0 -304
  303. data/src/physics/Box2D/Dynamics/Joints/b2MotorJoint.h +0 -133
  304. data/src/physics/Box2D/Dynamics/Joints/b2MouseJoint.cpp +0 -222
  305. data/src/physics/Box2D/Dynamics/Joints/b2MouseJoint.h +0 -129
  306. data/src/physics/Box2D/Dynamics/Joints/b2PrismaticJoint.cpp +0 -629
  307. data/src/physics/Box2D/Dynamics/Joints/b2PrismaticJoint.h +0 -196
  308. data/src/physics/Box2D/Dynamics/Joints/b2PulleyJoint.cpp +0 -348
  309. data/src/physics/Box2D/Dynamics/Joints/b2PulleyJoint.h +0 -152
  310. data/src/physics/Box2D/Dynamics/Joints/b2RevoluteJoint.cpp +0 -502
  311. data/src/physics/Box2D/Dynamics/Joints/b2RevoluteJoint.h +0 -204
  312. data/src/physics/Box2D/Dynamics/Joints/b2RopeJoint.cpp +0 -241
  313. data/src/physics/Box2D/Dynamics/Joints/b2RopeJoint.h +0 -114
  314. data/src/physics/Box2D/Dynamics/Joints/b2WeldJoint.cpp +0 -344
  315. data/src/physics/Box2D/Dynamics/Joints/b2WeldJoint.h +0 -126
  316. data/src/physics/Box2D/Dynamics/Joints/b2WheelJoint.cpp +0 -419
  317. data/src/physics/Box2D/Dynamics/Joints/b2WheelJoint.h +0 -210
  318. data/src/physics/Box2D/Dynamics/b2Body.cpp +0 -549
  319. data/src/physics/Box2D/Dynamics/b2Body.h +0 -860
  320. data/src/physics/Box2D/Dynamics/b2ContactManager.cpp +0 -296
  321. data/src/physics/Box2D/Dynamics/b2ContactManager.h +0 -52
  322. data/src/physics/Box2D/Dynamics/b2Fixture.cpp +0 -303
  323. data/src/physics/Box2D/Dynamics/b2Fixture.h +0 -345
  324. data/src/physics/Box2D/Dynamics/b2Island.cpp +0 -539
  325. data/src/physics/Box2D/Dynamics/b2Island.h +0 -93
  326. data/src/physics/Box2D/Dynamics/b2TimeStep.h +0 -70
  327. data/src/physics/Box2D/Dynamics/b2World.cpp +0 -1339
  328. data/src/physics/Box2D/Dynamics/b2World.h +0 -354
  329. data/src/physics/Box2D/Dynamics/b2WorldCallbacks.cpp +0 -36
  330. data/src/physics/Box2D/Dynamics/b2WorldCallbacks.h +0 -155
  331. data/src/physics/Box2D/Rope/b2Rope.cpp +0 -259
  332. data/src/physics/Box2D/Rope/b2Rope.h +0 -115
  333. data/src/shape_view.cpp +0 -306
@@ -0,0 +1,69 @@
1
+ // -*- c++ -*-
2
+ #pragma once
3
+ #ifndef __REFLEX_RUBY_TIMER_H__
4
+ #define __REFLEX_RUBY_TIMER_H__
5
+
6
+
7
+ #include <rucy/rucy.h>
8
+ #include <rucy/class.h>
9
+ #include <rucy/extension.h>
10
+ #include <reflex/timer.h>
11
+
12
+
13
+ namespace Reflex
14
+ {
15
+
16
+
17
+ Rucy::Class timer_class ();
18
+ // class Reflex::Timer
19
+
20
+
21
+ template <typename T>
22
+ class RubyTimer : public Rucy::ClassWrapper<T>
23
+ {
24
+
25
+ typedef Rucy::ClassWrapper<T> Super;
26
+
27
+ public:
28
+
29
+ virtual void fire ()
30
+ {
31
+ if (this->value.is_kind_of(timer_class()))
32
+ {
33
+ RUCY_SYM(call_timer_block);
34
+ this->value.call(call_timer_block);
35
+ }
36
+
37
+ Super::fire();
38
+ }
39
+
40
+ };// RubyTimer
41
+
42
+
43
+ }// Reflex
44
+
45
+
46
+ RUCY_DECLARE_WRAPPER_VALUE_FROM_TO(Reflex::Timer)
47
+
48
+
49
+ namespace Rucy
50
+ {
51
+
52
+
53
+ template <> inline Class
54
+ get_ruby_class<Reflex::Timer> ()
55
+ {
56
+ return Reflex::timer_class();
57
+ }
58
+
59
+ inline Value
60
+ value (Reflex::Timer::Ref& ref, Value klass = Reflex::timer_class())
61
+ {
62
+ return value(ref.get(), klass);
63
+ }
64
+
65
+
66
+ }// Rucy
67
+
68
+
69
+ #endif//EOH
@@ -23,59 +23,26 @@ namespace Reflex
23
23
  class RubyView : public Rucy::ClassWrapper<T>
24
24
  {
25
25
 
26
+ typedef Rucy::ClassWrapper<T> Super;
27
+
26
28
  public:
27
29
 
28
- RUCY_OVERRIDE_BEGIN(Rucy::ClassWrapper<T>)
29
-
30
- RUCY_OVERRIDE_ID(content_size)
31
- RUCY_OVERRIDE_ID(on_update)
32
- RUCY_OVERRIDE_ID(on_draw)
33
- RUCY_OVERRIDE_ID(on_move)
34
- RUCY_OVERRIDE_ID(on_resize)
35
- RUCY_OVERRIDE_ID(on_rotate)
36
- RUCY_OVERRIDE_ID(on_scroll)
37
- RUCY_OVERRIDE_ID(on_focus)
38
- RUCY_OVERRIDE_ID(on_blur)
39
- RUCY_OVERRIDE_ID(on_key)
40
- RUCY_OVERRIDE_ID(on_key_down)
41
- RUCY_OVERRIDE_ID(on_key_up)
42
- RUCY_OVERRIDE_ID(on_pointer)
43
- RUCY_OVERRIDE_ID(on_pointer_down)
44
- RUCY_OVERRIDE_ID(on_pointer_up)
45
- RUCY_OVERRIDE_ID(on_pointer_move)
46
- RUCY_OVERRIDE_ID(on_wheel)
47
- RUCY_OVERRIDE_ID(on_capture)
48
- RUCY_OVERRIDE_ID(on_contact)
49
- RUCY_OVERRIDE_ID(on_contact_begin)
50
- RUCY_OVERRIDE_ID(on_contact_end)
51
-
52
- RUCY_OVERRIDE_END
53
-
54
- virtual Point content_size () const
30
+ virtual Bounds content_bounds () const
55
31
  {
56
- RUCY_SYM(content_size);
57
- if (RUCY_IS_OVERRIDDEN(content_size))
32
+ RUCY_SYM(content_bounds);
33
+ if (this->is_overridable())
58
34
  {
59
- Rucy::Value ret = this->value.call(content_size);
60
- return ret.is_nil() ? Super::content_size() : Rucy::to<Point>(ret);
35
+ Rucy::Value ret = this->value.call(content_bounds);
36
+ return ret.is_nil() ? Super::content_bounds() : Rucy::to<Bounds>(ret);
61
37
  }
62
38
  else
63
- return Super::content_size();
64
- }
65
-
66
- virtual void make_body ()
67
- {
68
- RUCY_SYM(make_body);
69
- if (RUCY_IS_OVERRIDABLE())
70
- this->value.call(make_body);
71
- else
72
- Super::make_body();
39
+ return Super::content_bounds();
73
40
  }
74
41
 
75
42
  virtual void on_attach (Event* e)
76
43
  {
77
44
  RUCY_SYM(on_attach);
78
- if (RUCY_IS_OVERRIDABLE())
45
+ if (this->is_overridable())
79
46
  this->value.call(on_attach, Rucy::value(e));
80
47
  else
81
48
  Super::on_attach(e);
@@ -84,7 +51,7 @@ namespace Reflex
84
51
  virtual void on_detach (Event* e)
85
52
  {
86
53
  RUCY_SYM(on_detach);
87
- if (RUCY_IS_OVERRIDABLE())
54
+ if (this->is_overridable())
88
55
  this->value.call(on_detach, Rucy::value(e));
89
56
  else
90
57
  Super::on_detach(e);
@@ -93,7 +60,7 @@ namespace Reflex
93
60
  virtual void on_show (Event* e)
94
61
  {
95
62
  RUCY_SYM(on_show);
96
- if (RUCY_IS_OVERRIDABLE())
63
+ if (this->is_overridable())
97
64
  this->value.call(on_show, Rucy::value(e));
98
65
  else
99
66
  Super::on_show(e);
@@ -102,7 +69,7 @@ namespace Reflex
102
69
  virtual void on_hide (Event* e)
103
70
  {
104
71
  RUCY_SYM(on_hide);
105
- if (RUCY_IS_OVERRIDABLE())
72
+ if (this->is_overridable())
106
73
  this->value.call(on_hide, Rucy::value(e));
107
74
  else
108
75
  Super::on_hide(e);
@@ -111,7 +78,7 @@ namespace Reflex
111
78
  virtual void on_update (UpdateEvent* e)
112
79
  {
113
80
  RUCY_SYM(on_update);
114
- if (RUCY_IS_OVERRIDDEN(on_update))
81
+ if (this->is_overridable())
115
82
  this->value.call(on_update, Rucy::value(e));
116
83
  else
117
84
  Super::on_update(e);
@@ -120,7 +87,7 @@ namespace Reflex
120
87
  virtual void on_draw (DrawEvent* e)
121
88
  {
122
89
  RUCY_SYM(on_draw);
123
- if (RUCY_IS_OVERRIDDEN(on_draw))
90
+ if (this->is_overridable())
124
91
  this->value.call(on_draw, Rucy::value(e));
125
92
  else
126
93
  Super::on_draw(e);
@@ -129,7 +96,7 @@ namespace Reflex
129
96
  virtual void on_move (FrameEvent* e)
130
97
  {
131
98
  RUCY_SYM(on_move);
132
- if (RUCY_IS_OVERRIDDEN(on_move))
99
+ if (this->is_overridable())
133
100
  this->value.call(on_move, Rucy::value(e));
134
101
  else
135
102
  Super::on_move(e);
@@ -138,7 +105,7 @@ namespace Reflex
138
105
  virtual void on_resize (FrameEvent* e)
139
106
  {
140
107
  RUCY_SYM(on_resize);
141
- if (RUCY_IS_OVERRIDDEN(on_resize))
108
+ if (this->is_overridable())
142
109
  this->value.call(on_resize, Rucy::value(e));
143
110
  else
144
111
  Super::on_resize(e);
@@ -147,7 +114,7 @@ namespace Reflex
147
114
  virtual void on_rotate (FrameEvent* e)
148
115
  {
149
116
  RUCY_SYM(on_rotate);
150
- if (RUCY_IS_OVERRIDDEN(on_rotate))
117
+ if (this->is_overridable())
151
118
  this->value.call(on_rotate, Rucy::value(e));
152
119
  else
153
120
  Super::on_rotate(e);
@@ -156,7 +123,7 @@ namespace Reflex
156
123
  virtual void on_scroll (ScrollEvent* e)
157
124
  {
158
125
  RUCY_SYM(on_scroll);
159
- if (RUCY_IS_OVERRIDDEN(on_scroll))
126
+ if (this->is_overridable())
160
127
  this->value.call(on_scroll, Rucy::value(e));
161
128
  else
162
129
  Super::on_scroll(e);
@@ -165,25 +132,16 @@ namespace Reflex
165
132
  virtual void on_focus (FocusEvent* e)
166
133
  {
167
134
  RUCY_SYM(on_focus);
168
- if (RUCY_IS_OVERRIDDEN(on_focus))
135
+ if (this->is_overridable())
169
136
  this->value.call(on_focus, Rucy::value(e));
170
137
  else
171
138
  Super::on_focus(e);
172
139
  }
173
140
 
174
- virtual void on_blur (FocusEvent* e)
175
- {
176
- RUCY_SYM(on_blur);
177
- if (RUCY_IS_OVERRIDDEN(on_blur))
178
- this->value.call(on_blur, Rucy::value(e));
179
- else
180
- Super::on_blur(e);
181
- }
182
-
183
141
  virtual void on_key (KeyEvent* e)
184
142
  {
185
143
  RUCY_SYM(on_key);
186
- if (RUCY_IS_OVERRIDDEN(on_key))
144
+ if (this->is_overridable())
187
145
  this->value.call(on_key, Rucy::value(e));
188
146
  else
189
147
  Super::on_key(e);
@@ -192,7 +150,7 @@ namespace Reflex
192
150
  virtual void on_key_down (KeyEvent* e)
193
151
  {
194
152
  RUCY_SYM(on_key_down);
195
- if (RUCY_IS_OVERRIDDEN(on_key_down))
153
+ if (this->is_overridable())
196
154
  this->value.call(on_key_down, Rucy::value(e));
197
155
  else
198
156
  Super::on_key_down(e);
@@ -201,7 +159,7 @@ namespace Reflex
201
159
  virtual void on_key_up (KeyEvent* e)
202
160
  {
203
161
  RUCY_SYM(on_key_up);
204
- if (RUCY_IS_OVERRIDDEN(on_key_up))
162
+ if (this->is_overridable())
205
163
  this->value.call(on_key_up, Rucy::value(e));
206
164
  else
207
165
  Super::on_key_up(e);
@@ -210,7 +168,7 @@ namespace Reflex
210
168
  virtual void on_pointer (PointerEvent* e)
211
169
  {
212
170
  RUCY_SYM(on_pointer);
213
- if (RUCY_IS_OVERRIDDEN(on_pointer))
171
+ if (this->is_overridable())
214
172
  this->value.call(on_pointer, Rucy::value(e));
215
173
  else
216
174
  Super::on_pointer(e);
@@ -219,7 +177,7 @@ namespace Reflex
219
177
  virtual void on_pointer_down (PointerEvent* e)
220
178
  {
221
179
  RUCY_SYM(on_pointer_down);
222
- if (RUCY_IS_OVERRIDDEN(on_pointer_down))
180
+ if (this->is_overridable())
223
181
  this->value.call(on_pointer_down, Rucy::value(e));
224
182
  else
225
183
  Super::on_pointer_down(e);
@@ -228,7 +186,7 @@ namespace Reflex
228
186
  virtual void on_pointer_up (PointerEvent* e)
229
187
  {
230
188
  RUCY_SYM(on_pointer_up);
231
- if (RUCY_IS_OVERRIDDEN(on_pointer_up))
189
+ if (this->is_overridable())
232
190
  this->value.call(on_pointer_up, Rucy::value(e));
233
191
  else
234
192
  Super::on_pointer_up(e);
@@ -237,7 +195,7 @@ namespace Reflex
237
195
  virtual void on_pointer_move (PointerEvent* e)
238
196
  {
239
197
  RUCY_SYM(on_pointer_move);
240
- if (RUCY_IS_OVERRIDDEN(on_pointer_move))
198
+ if (this->is_overridable())
241
199
  this->value.call(on_pointer_move, Rucy::value(e));
242
200
  else
243
201
  Super::on_pointer_move(e);
@@ -246,7 +204,7 @@ namespace Reflex
246
204
  virtual void on_wheel (WheelEvent* e)
247
205
  {
248
206
  RUCY_SYM(on_wheel);
249
- if (RUCY_IS_OVERRIDDEN(on_wheel))
207
+ if (this->is_overridable())
250
208
  this->value.call(on_wheel, Rucy::value(e));
251
209
  else
252
210
  Super::on_wheel(e);
@@ -255,16 +213,25 @@ namespace Reflex
255
213
  virtual void on_capture (CaptureEvent* e)
256
214
  {
257
215
  RUCY_SYM(on_capture);
258
- if (RUCY_IS_OVERRIDDEN(on_capture))
216
+ if (this->is_overridable())
259
217
  this->value.call(on_capture, Rucy::value(e));
260
218
  else
261
219
  Super::on_capture(e);
262
220
  }
263
221
 
222
+ virtual void on_timer (TimerEvent* e)
223
+ {
224
+ RUCY_SYM(on_timer);
225
+ if (this->is_overridable())
226
+ this->value.call(on_timer, Rucy::value(e));
227
+ else
228
+ Super::on_timer(e);
229
+ }
230
+
264
231
  virtual void on_contact (ContactEvent* e)
265
232
  {
266
- RUCY_SYM(on_contact);
267
- if (RUCY_IS_OVERRIDDEN(on_contact))
233
+ RUCY_SYM_B(on_contact);
234
+ if (this->is_overridable())
268
235
  this->value.call(on_contact, Rucy::value(e));
269
236
  else
270
237
  Super::on_contact(e);
@@ -272,8 +239,8 @@ namespace Reflex
272
239
 
273
240
  virtual void on_contact_begin (ContactEvent* e)
274
241
  {
275
- RUCY_SYM(on_contact_begin);
276
- if (RUCY_IS_OVERRIDDEN(on_contact_begin))
242
+ RUCY_SYM_B(on_contact_begin);
243
+ if (this->is_overridable())
277
244
  this->value.call(on_contact_begin, Rucy::value(e));
278
245
  else
279
246
  Super::on_contact_begin(e);
@@ -281,8 +248,8 @@ namespace Reflex
281
248
 
282
249
  virtual void on_contact_end (ContactEvent* e)
283
250
  {
284
- RUCY_SYM(on_contact_end);
285
- if (RUCY_IS_OVERRIDDEN(on_contact_end))
251
+ RUCY_SYM_B(on_contact_end);
252
+ if (this->is_overridable())
286
253
  this->value.call(on_contact_end, Rucy::value(e));
287
254
  else
288
255
  Super::on_contact_end(e);
@@ -23,29 +23,14 @@ namespace Reflex
23
23
  class RubyWindow : public Rucy::ClassWrapper<T>
24
24
  {
25
25
 
26
- public:
27
-
28
- RUCY_OVERRIDE_BEGIN(Rucy::ClassWrapper<T>)
26
+ typedef Rucy::ClassWrapper<T> Super;
29
27
 
30
- RUCY_OVERRIDE_ID(on_update)
31
- RUCY_OVERRIDE_ID(on_draw)
32
- RUCY_OVERRIDE_ID(on_move)
33
- RUCY_OVERRIDE_ID(on_resize)
34
- RUCY_OVERRIDE_ID(on_key)
35
- RUCY_OVERRIDE_ID(on_key_down)
36
- RUCY_OVERRIDE_ID(on_key_up)
37
- RUCY_OVERRIDE_ID(on_pointer)
38
- RUCY_OVERRIDE_ID(on_pointer_down)
39
- RUCY_OVERRIDE_ID(on_pointer_up)
40
- RUCY_OVERRIDE_ID(on_pointer_move)
41
- RUCY_OVERRIDE_ID(on_wheel)
42
-
43
- RUCY_OVERRIDE_END
28
+ public:
44
29
 
45
30
  virtual void on_show (Event* e)
46
31
  {
47
32
  RUCY_SYM(on_show);
48
- if (RUCY_IS_OVERRIDABLE())
33
+ if (this->is_overridable())
49
34
  this->value.call(on_show, Rucy::value(e));
50
35
  else
51
36
  return Super::on_show(e);
@@ -54,7 +39,7 @@ namespace Reflex
54
39
  virtual void on_hide (Event* e)
55
40
  {
56
41
  RUCY_SYM(on_hide);
57
- if (RUCY_IS_OVERRIDABLE())
42
+ if (this->is_overridable())
58
43
  this->value.call(on_hide, Rucy::value(e));
59
44
  else
60
45
  return Super::on_hide(e);
@@ -63,7 +48,7 @@ namespace Reflex
63
48
  virtual void on_close (Event* e)
64
49
  {
65
50
  RUCY_SYM(on_close);
66
- if (RUCY_IS_OVERRIDABLE())
51
+ if (this->is_overridable())
67
52
  this->value.call(on_close, Rucy::value(e));
68
53
  else
69
54
  return Super::on_close(e);
@@ -72,7 +57,7 @@ namespace Reflex
72
57
  virtual void on_update (UpdateEvent* e)
73
58
  {
74
59
  RUCY_SYM(on_update);
75
- if (RUCY_IS_OVERRIDDEN(on_update))
60
+ if (this->is_overridable())
76
61
  this->value.call(on_update, Rucy::value(e));
77
62
  else
78
63
  Super::on_update(e);
@@ -81,7 +66,7 @@ namespace Reflex
81
66
  virtual void on_draw (DrawEvent* e)
82
67
  {
83
68
  RUCY_SYM(on_draw);
84
- if (RUCY_IS_OVERRIDDEN(on_draw))
69
+ if (this->is_overridable())
85
70
  this->value.call(on_draw, Rucy::value(e));
86
71
  else
87
72
  Super::on_draw(e);
@@ -90,7 +75,7 @@ namespace Reflex
90
75
  virtual void on_move (FrameEvent* e)
91
76
  {
92
77
  RUCY_SYM(on_move);
93
- if (RUCY_IS_OVERRIDDEN(on_move))
78
+ if (this->is_overridable())
94
79
  this->value.call(on_move, Rucy::value(e));
95
80
  else
96
81
  Super::on_move(e);
@@ -99,7 +84,7 @@ namespace Reflex
99
84
  virtual void on_resize (FrameEvent* e)
100
85
  {
101
86
  RUCY_SYM(on_resize);
102
- if (RUCY_IS_OVERRIDDEN(on_resize))
87
+ if (this->is_overridable())
103
88
  this->value.call(on_resize, Rucy::value(e));
104
89
  else
105
90
  Super::on_resize(e);
@@ -108,7 +93,7 @@ namespace Reflex
108
93
  virtual void on_key (KeyEvent* e)
109
94
  {
110
95
  RUCY_SYM(on_key);
111
- if (RUCY_IS_OVERRIDDEN(on_key))
96
+ if (this->is_overridable())
112
97
  this->value.call(on_key, Rucy::value(e));
113
98
  else
114
99
  Super::on_key(e);
@@ -117,7 +102,7 @@ namespace Reflex
117
102
  virtual void on_key_down (KeyEvent* e)
118
103
  {
119
104
  RUCY_SYM(on_key_down);
120
- if (RUCY_IS_OVERRIDDEN(on_key_down))
105
+ if (this->is_overridable())
121
106
  this->value.call(on_key_down, Rucy::value(e));
122
107
  else
123
108
  Super::on_key_down(e);
@@ -126,7 +111,7 @@ namespace Reflex
126
111
  virtual void on_key_up (KeyEvent* e)
127
112
  {
128
113
  RUCY_SYM(on_key_up);
129
- if (RUCY_IS_OVERRIDDEN(on_key_up))
114
+ if (this->is_overridable())
130
115
  this->value.call(on_key_up, Rucy::value(e));
131
116
  else
132
117
  Super::on_key_up(e);
@@ -135,7 +120,7 @@ namespace Reflex
135
120
  virtual void on_pointer (PointerEvent* e)
136
121
  {
137
122
  RUCY_SYM(on_pointer);
138
- if (RUCY_IS_OVERRIDDEN(on_pointer))
123
+ if (this->is_overridable())
139
124
  this->value.call(on_pointer, Rucy::value(e));
140
125
  else
141
126
  Super::on_pointer(e);
@@ -144,7 +129,7 @@ namespace Reflex
144
129
  virtual void on_pointer_down (PointerEvent* e)
145
130
  {
146
131
  RUCY_SYM(on_pointer_down);
147
- if (RUCY_IS_OVERRIDDEN(on_pointer_down))
132
+ if (this->is_overridable())
148
133
  this->value.call(on_pointer_down, Rucy::value(e));
149
134
  else
150
135
  Super::on_pointer_down(e);
@@ -153,7 +138,7 @@ namespace Reflex
153
138
  virtual void on_pointer_up (PointerEvent* e)
154
139
  {
155
140
  RUCY_SYM(on_pointer_up);
156
- if (RUCY_IS_OVERRIDDEN(on_pointer_up))
141
+ if (this->is_overridable())
157
142
  this->value.call(on_pointer_up, Rucy::value(e));
158
143
  else
159
144
  Super::on_pointer_up(e);
@@ -162,7 +147,7 @@ namespace Reflex
162
147
  virtual void on_pointer_move (PointerEvent* e)
163
148
  {
164
149
  RUCY_SYM(on_pointer_move);
165
- if (RUCY_IS_OVERRIDDEN(on_pointer_move))
150
+ if (this->is_overridable())
166
151
  this->value.call(on_pointer_move, Rucy::value(e));
167
152
  else
168
153
  Super::on_pointer_move(e);
@@ -171,7 +156,7 @@ namespace Reflex
171
156
  virtual void on_wheel (WheelEvent* e)
172
157
  {
173
158
  RUCY_SYM(on_wheel);
174
- if (RUCY_IS_OVERRIDDEN(on_wheel))
159
+ if (this->is_overridable())
175
160
  this->value.call(on_wheel, Rucy::value(e));
176
161
  else
177
162
  Super::on_wheel(e);