reflexion 0.1.3 → 0.1.4

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 (88) hide show
  1. data/.doc/ext/reflex/application.cpp +35 -76
  2. data/.doc/ext/reflex/defs.cpp +8 -0
  3. data/.doc/ext/reflex/key.cpp +38 -43
  4. data/.doc/ext/reflex/native.cpp +6 -4
  5. data/.doc/ext/reflex/points.cpp +47 -52
  6. data/.doc/ext/reflex/reflex.cpp +12 -13
  7. data/.doc/ext/reflex/view.cpp +242 -0
  8. data/.doc/ext/reflex/window.cpp +87 -178
  9. data/.gitignore +14 -0
  10. data/Rakefile +6 -31
  11. data/VERSION +1 -1
  12. data/examples/hello/.gitignore +2 -0
  13. data/examples/ruby/app.rb +2 -2
  14. data/examples/ruby/checker.rb +3 -3
  15. data/examples/ruby/fps.rb +14 -14
  16. data/examples/ruby/grid.rb +65 -0
  17. data/examples/ruby/hello.rb +19 -7
  18. data/examples/ruby/key.rb +4 -4
  19. data/examples/ruby/shapes.rb +6 -6
  20. data/examples/ruby/text.rb +20 -17
  21. data/examples/ruby/views.rb +88 -0
  22. data/examples/ruby/visuals.rb +27 -0
  23. data/ext/reflex/application.cpp +36 -76
  24. data/ext/reflex/defs.cpp +8 -0
  25. data/ext/reflex/defs.h +1 -18
  26. data/ext/reflex/extconf.rb +16 -8
  27. data/ext/reflex/key.cpp +39 -43
  28. data/ext/reflex/native.cpp +6 -4
  29. data/ext/reflex/points.cpp +48 -52
  30. data/ext/reflex/reflex.cpp +12 -13
  31. data/ext/reflex/view.cpp +260 -0
  32. data/ext/reflex/window.cpp +89 -178
  33. data/include/reflex/application.h +14 -7
  34. data/include/reflex/defs.h +8 -6
  35. data/include/reflex/exception.h +1 -1
  36. data/include/reflex/ruby/application.h +31 -10
  37. data/include/reflex/ruby/key.h +3 -3
  38. data/include/reflex/ruby/points.h +3 -3
  39. data/include/reflex/ruby/view.h +106 -0
  40. data/include/reflex/ruby/window.h +83 -12
  41. data/include/reflex/ruby.h +3 -2
  42. data/include/reflex/view.h +103 -0
  43. data/include/reflex/window.h +43 -18
  44. data/include/reflex.h +2 -1
  45. data/lib/reflex/application.rb +8 -7
  46. data/lib/reflex/autoinit.rb +1 -1
  47. data/lib/reflex/bitmap.rb +13 -0
  48. data/lib/reflex/bounds.rb +2 -122
  49. data/lib/reflex/ext.rb +5 -0
  50. data/lib/reflex/helpers.rb +36 -31
  51. data/lib/reflex/image.rb +13 -0
  52. data/lib/reflex/module.rb +9 -2
  53. data/lib/reflex/painter.rb +13 -0
  54. data/lib/reflex/point.rb +3 -59
  55. data/lib/reflex/reflex.rb +1 -1
  56. data/lib/reflex/texture.rb +13 -0
  57. data/lib/reflex/view.rb +33 -0
  58. data/lib/reflex/visuals/string.rb +53 -0
  59. data/lib/reflex/window.rb +18 -43
  60. data/lib/reflex.rb +3 -3
  61. data/reflex.gemspec +16 -42
  62. data/src/cocoa/application.mm +17 -23
  63. data/src/cocoa/applicationdata.h +3 -9
  64. data/src/cocoa/cocoaapplication.h +6 -4
  65. data/src/cocoa/cocoaapplication.mm +61 -19
  66. data/src/cocoa/cocoawindow.h +7 -5
  67. data/src/cocoa/cocoawindow.mm +109 -50
  68. data/src/cocoa/defs.mm +5 -2
  69. data/src/cocoa/window.mm +71 -41
  70. data/src/cocoa/windowdata.h +14 -9
  71. data/src/defs.cpp +1 -1
  72. data/src/exception.cpp +3 -18
  73. data/src/helpers.h +12 -0
  74. data/src/reflex.cpp +11 -5
  75. data/src/view.cpp +326 -0
  76. data/src/win32/application.cpp +7 -8
  77. data/src/win32/defs.h +1 -1
  78. data/src/win32/window.cpp +137 -41
  79. data/src/window.cpp +38 -1
  80. data/test/helpers.rb +2 -5
  81. data/test/test_application.rb +17 -0
  82. data/test/test_reflex.rb +4 -2
  83. data/test/test_view.rb +74 -0
  84. data/test/test_window.rb +33 -2
  85. metadata +157 -97
  86. data/include/reflex/helpers.h +0 -32
  87. data/test/test_bounds.rb +0 -163
  88. data/test/test_point.rb +0 -81
@@ -0,0 +1,260 @@
1
+ #include "reflex/ruby/view.h"
2
+
3
+
4
+ #include <rucy.h>
5
+ #include <reflex/ruby/window.h>
6
+ #include "defs.h"
7
+
8
+
9
+ using namespace Rucy;
10
+
11
+ using Reflex::coord;
12
+
13
+
14
+ static Class cView;
15
+
16
+
17
+ namespace Reflex
18
+ {
19
+
20
+
21
+ Class
22
+ view_class ()
23
+ {
24
+ return cView;
25
+ }
26
+
27
+
28
+ }// Reflex
29
+
30
+
31
+ typedef Reflex::RubyView<Reflex::View> RubyView;
32
+
33
+
34
+ #define THIS to<Reflex::View*>(self)
35
+
36
+ #define CHECK RUCY_CHECK_OBJECT(self, Reflex::View, cView)
37
+
38
+ #define CALL(fun) RUCY_WRAPPER_CALL(RubyView, THIS, fun)
39
+
40
+
41
+ static
42
+ RUBY_DEF_ALLOC(alloc, klass)
43
+ {
44
+ return value(new RubyView, klass);
45
+ }
46
+ RUBY_END
47
+
48
+ static
49
+ RUBY_DEF0(show)
50
+ {
51
+ CHECK;
52
+ if (!CALL(show()))
53
+ reflex_error("failed to show view.");
54
+ return self;
55
+ }
56
+ RUBY_END
57
+
58
+ static
59
+ RUBY_DEF0(hide)
60
+ {
61
+ CHECK;
62
+ if (!CALL(hide()))
63
+ reflex_error("failed to hide view.");
64
+ return self;
65
+ }
66
+ RUBY_END
67
+
68
+ static
69
+ RUBY_DEF0(redraw)
70
+ {
71
+ CHECK;
72
+ if (!THIS->redraw())
73
+ reflex_error("failed to redraw view.");
74
+ return self;
75
+ }
76
+ RUBY_END
77
+
78
+ static
79
+ RUBY_DEF1(add_child, child)
80
+ {
81
+ CHECK;
82
+
83
+ Reflex::View* c = to<Reflex::View*>(child);
84
+ if (!c) argument_error();
85
+
86
+ if (!THIS->add_child(c))
87
+ reflex_error("failed to add child view.");
88
+
89
+ return self;
90
+ }
91
+ RUBY_END
92
+
93
+ static
94
+ RUBY_DEF1(remove_child, child)
95
+ {
96
+ CHECK;
97
+
98
+ Reflex::View* c = to<Reflex::View*>(child);
99
+ if (!c) argument_error();
100
+
101
+ if (!THIS->remove_child(c))
102
+ reflex_error("failed to remove child view.");
103
+
104
+ return self;
105
+ }
106
+ RUBY_END
107
+
108
+ static
109
+ RUBY_DEFN(find_child)
110
+ {
111
+ CHECK;
112
+ if (argc < 1 || 3 < argc)
113
+ arg_count_error("View#find_child", argc, 1, 2, 3);
114
+
115
+ const char* name = to<const char*>(argv[0]);
116
+ size_t index = (argc >= 2) ? to<size_t>(argv[1]) : 0;
117
+ bool recursive = (argc >= 3) ? to<bool>(argv[2]) : false;
118
+
119
+ Reflex::View* c = THIS->find_child(name, index, recursive);
120
+ if (!c) return Qnil;
121
+
122
+ return value(c);
123
+ }
124
+ RUBY_END
125
+
126
+ static
127
+ RUBY_DEF1(set_name, name)
128
+ {
129
+ CHECK;
130
+ if (!THIS->set_name(name.c_str()))
131
+ reflex_error("failed to set the name of view.");
132
+ return name;
133
+ }
134
+ RUBY_END
135
+
136
+ static
137
+ RUBY_DEF0(get_name)
138
+ {
139
+ CHECK;
140
+ const char* s = THIS->name();
141
+ if (!s) reflex_error("failed to get name of view.");
142
+ return value(s);
143
+ }
144
+ RUBY_END
145
+
146
+ static
147
+ RUBY_DEF4(set_bounds, x, y, width, height)
148
+ {
149
+ CHECK;
150
+ if (!THIS->set_bounds(
151
+ to<coord>(x), to<coord>(y), to<coord>(width), to<coord>(height)))
152
+ {
153
+ reflex_error("failed to set the bounds of view.");
154
+ }
155
+ return value(THIS->bounds());
156
+ }
157
+ RUBY_END
158
+
159
+ static
160
+ RUBY_DEF0(get_bounds)
161
+ {
162
+ CHECK;
163
+ return value(THIS->bounds());
164
+ }
165
+ RUBY_END
166
+
167
+ static
168
+ RUBY_DEF0(hidden)
169
+ {
170
+ CHECK;
171
+ return value(THIS->hidden());
172
+ }
173
+ RUBY_END
174
+
175
+ static
176
+ RUBY_DEF0(parent)
177
+ {
178
+ CHECK;
179
+
180
+ Reflex::View* v = THIS->parent();
181
+ if (!v) return Qnil;
182
+
183
+ return value(v);
184
+ }
185
+ RUBY_END
186
+
187
+ static
188
+ RUBY_DEF0(window)
189
+ {
190
+ CHECK;
191
+
192
+ Reflex::Window* w = THIS->window();
193
+ if (!w) return Qnil;
194
+
195
+ return value(w);
196
+ }
197
+ RUBY_END
198
+
199
+ static
200
+ RUBY_DEF1(update, dt)
201
+ {
202
+ CHECK;
203
+ CALL(update(to<float>(dt)));
204
+ return self;
205
+ }
206
+ RUBY_END
207
+
208
+ static
209
+ RUBY_DEF2(draw, painter, bounds)
210
+ {
211
+ CHECK;
212
+ CALL(draw(to<Rays::Painter*>(painter), *to<Rays::Bounds*>(bounds)));
213
+ return self;
214
+ }
215
+ RUBY_END
216
+
217
+ static
218
+ RUBY_DEF2(moved, dx, dy)
219
+ {
220
+ CHECK;
221
+ CALL(moved(to<coord>(dx), to<coord>(dy)));
222
+ return self;
223
+ }
224
+ RUBY_END
225
+
226
+ static
227
+ RUBY_DEF2(resized, dwidth, dheight)
228
+ {
229
+ CHECK;
230
+ CALL(resized(to<coord>(dwidth), to<coord>(dheight)));
231
+ return self;
232
+ }
233
+ RUBY_END
234
+
235
+
236
+ void
237
+ Init_view ()
238
+ {
239
+ Module mReflex = define_module("Reflex");
240
+
241
+ cView = mReflex.define_class("View");
242
+ cView.define_alloc_func(alloc);
243
+ cView.define_method("show", show);
244
+ cView.define_method("hide", hide);
245
+ cView.define_method("redraw", redraw);
246
+ cView.define_method("add_child", add_child);
247
+ cView.define_method("remove_child", remove_child);
248
+ cView.define_method("find_child", find_child);
249
+ cView.define_method("name=", set_name);
250
+ cView.define_method("name", get_name);
251
+ cView.define_private_method("set_bounds", set_bounds);
252
+ cView.define_private_method("get_bounds", get_bounds);
253
+ cView.define_method("hidden", hidden);
254
+ cView.define_method("parent", parent);
255
+ cView.define_method("window", window);
256
+ cView.define_method("update", update);
257
+ cView.define_method("draw", draw);
258
+ cView.define_method("moved", moved);
259
+ cView.define_method("resized", resized);
260
+ }
@@ -2,8 +2,8 @@
2
2
 
3
3
 
4
4
  #include <rucy.h>
5
- #include <reflex/ruby/key.h>
6
- #include <reflex/ruby/points.h>
5
+ #include <rays/ruby/painter.h>
6
+ #include <reflex/ruby/view.h>
7
7
  #include "defs.h"
8
8
 
9
9
 
@@ -12,12 +12,13 @@ using namespace Rucy;
12
12
  using Reflex::coord;
13
13
 
14
14
 
15
+ static Class cWindow;
16
+
17
+
15
18
  namespace Reflex
16
19
  {
17
20
 
18
21
 
19
- static Class cWindow;
20
-
21
22
  Class
22
23
  window_class ()
23
24
  {
@@ -28,120 +29,20 @@ namespace Reflex
28
29
  }// Reflex
29
30
 
30
31
 
31
- namespace Rucy
32
- {
33
-
34
-
35
- Value
36
- value (const Reflex::Window& window)
37
- {
38
- return new_type<Reflex::Window>(
39
- Reflex::window_class(), new Reflex::Window(window));
40
- }
41
-
32
+ typedef Reflex::RubyWindow<Reflex::Window> RubyWindow;
42
33
 
43
- }// Rucy
44
34
 
35
+ #define THIS to<Reflex::Window*>(self)
45
36
 
46
- class RubyWindow : public Reflex::Window
47
- {
37
+ #define CHECK RUCY_CHECK_OBJECT(self, Reflex::Window, cWindow)
48
38
 
49
- public:
50
-
51
- typedef Reflex::Window Super;
52
-
53
- Value self;
54
-
55
- void mark ()
56
- {
57
- self.mark();
58
- }
59
-
60
- virtual bool close ()
61
- {
62
- SYM(close);
63
- return self.call(close);
64
- }
65
-
66
- virtual bool show ()
67
- {
68
- SYM(show);
69
- return self.call(show);
70
- }
71
-
72
- virtual bool hide ()
73
- {
74
- SYM(hide);
75
- return self.call(hide);
76
- }
77
-
78
- virtual void update ()
79
- {
80
- SYM(update);
81
- self.call(update);
82
- }
83
-
84
- virtual void draw ()
85
- {
86
- SYM(draw);
87
- self.call(draw);
88
- }
89
-
90
- virtual void moved (coord x, coord y)
91
- {
92
- SYM(moved);
93
- self.call(moved, x, y);
94
- }
95
-
96
- virtual void resized (coord width, coord height)
97
- {
98
- SYM(resized);
99
- self.call(resized, width, height);
100
- }
101
-
102
- virtual void key_down (const Reflex::Key& key)
103
- {
104
- SYM(key_down);
105
- self.call(key_down, value(key));
106
- }
107
-
108
- virtual void key_up (const Reflex::Key& key)
109
- {
110
- SYM(key_up);
111
- self.call(key_up, value(key));
112
- }
113
-
114
- virtual void points_down (const Reflex::Points& points)
115
- {
116
- SYM(points_down);
117
- self.call(points_down, value(points));
118
- }
119
-
120
- virtual void points_up (const Reflex::Points& points)
121
- {
122
- SYM(points_up);
123
- self.call(points_up, value(points));
124
- }
125
-
126
- virtual void points_moved (const Reflex::Points& points)
127
- {
128
- SYM(points_moved);
129
- self.call(points_moved, value(points));
130
- }
131
-
132
- };// RubyWindow
133
-
134
-
135
- #define this ((RubyWindow*) to<Reflex::Window*>(self))
136
-
137
- #define CHECK CHECK_OBJECT(self, RubyWindow, Reflex::window_class())
39
+ #define CALL(fun) RUCY_WRAPPER_CALL(RubyWindow, THIS, fun)
138
40
 
139
41
 
140
42
  static
141
43
  RUBY_DEF_ALLOC(alloc, klass)
142
44
  {
143
- RubyWindow* win = new RubyWindow;
144
- return win->self = new_type<RubyWindow>(klass, win, mark_type<RubyWindow>);
45
+ return value(new RubyWindow, klass);
145
46
  }
146
47
  RUBY_END
147
48
 
@@ -149,7 +50,7 @@ static
149
50
  RUBY_DEF0(close)
150
51
  {
151
52
  CHECK;
152
- if (!this->Super::close())
53
+ if (!CALL(close()))
153
54
  system_error("failed to close window.");
154
55
  return self;
155
56
  }
@@ -159,7 +60,7 @@ static
159
60
  RUBY_DEF0(show)
160
61
  {
161
62
  CHECK;
162
- if (!this->Super::show())
63
+ if (!CALL(show()))
163
64
  system_error("failed to show window.");
164
65
  return self;
165
66
  }
@@ -169,92 +70,102 @@ static
169
70
  RUBY_DEF0(hide)
170
71
  {
171
72
  CHECK;
172
- if (!this->Super::hide())
73
+ if (!CALL(hide()))
173
74
  system_error("failed to hide window.");
174
75
  return self;
175
76
  }
176
77
  RUBY_END
177
78
 
178
79
  static
179
- RUBY_DEF0(hidden)
80
+ RUBY_DEF0(redraw)
180
81
  {
181
82
  CHECK;
182
- return value(this->hidden());
83
+ if (!THIS->redraw())
84
+ system_error("failed to redraw window.");
85
+ return self;
183
86
  }
184
87
  RUBY_END
185
88
 
186
89
  static
187
- RUBY_DEF0(update)
90
+ RUBY_DEF1(set_title, title)
188
91
  {
189
92
  CHECK;
190
- this->Super::update();
191
- return self;
93
+ if (!THIS->set_title(title.c_str()))
94
+ system_error("failed to set title of window.");
95
+ return title;
192
96
  }
193
97
  RUBY_END
194
98
 
195
99
  static
196
- RUBY_DEF0(draw)
100
+ RUBY_DEF0(get_title)
197
101
  {
198
102
  CHECK;
199
- this->Super::draw();
200
- return self;
103
+ const char* s = THIS->title();
104
+ if (!s) system_error("failed to get title of window.");
105
+ return value(s);
201
106
  }
202
107
  RUBY_END
203
108
 
204
109
  static
205
- RUBY_DEF0(redraw)
110
+ RUBY_DEF4(set_bounds, x, y, width, height)
206
111
  {
207
112
  CHECK;
208
- if (!this->Super::redraw())
209
- system_error("failed to redraw window.");
210
- return self;
113
+ if (!THIS->set_bounds(
114
+ to<coord>(x), to<coord>(y), to<coord>(width), to<coord>(height)))
115
+ {
116
+ system_error("failed to set bounds of window.");
117
+ }
118
+ return value(THIS->bounds());
211
119
  }
212
120
  RUBY_END
213
121
 
214
122
  static
215
- RUBY_DEF0(get_title)
123
+ RUBY_DEF0(get_bounds)
216
124
  {
217
125
  CHECK;
218
- String s;
219
- if (!this->get_title(&s))
220
- system_error("failed to get title of window.");
221
- return value(s.c_str());
126
+ return value(THIS->bounds());
222
127
  }
223
128
  RUBY_END
224
129
 
225
130
  static
226
- RUBY_DEF1(set_title, title)
131
+ RUBY_DEF0(hidden)
227
132
  {
228
133
  CHECK;
229
- if (!this->set_title(title.c_str()))
230
- system_error("failed to set title of window.");
231
- return title;
134
+ return value(THIS->hidden());
232
135
  }
233
136
  RUBY_END
234
137
 
235
138
  static
236
- RUBY_DEF0(get_bounds)
139
+ RUBY_DEF0(root)
237
140
  {
238
141
  CHECK;
239
- coord x = 0, y = 0, width = 0, height = 0;
240
- if (!this->get_bounds(&x, &y, &width, &height))
241
- system_error("failed to get bounds of window.");
242
- Value ret[] = {x, y, width, height};
243
- return value(4, ret);
142
+ return value(THIS->root());
244
143
  }
245
144
  RUBY_END
246
145
 
247
146
  static
248
- RUBY_DEF4(set_bounds, x, y, width, height)
147
+ RUBY_DEF0(painter)
249
148
  {
250
149
  CHECK;
251
- if (!this->set_bounds(
252
- to<coord>(x), to<coord>(y), to<coord>(width), to<coord>(height)))
253
- {
254
- system_error("failed to set bounds of window.");
255
- }
256
- Value ret[] = {x, y, width, height};
257
- return value(4, ret);
150
+ return value(THIS->painter());
151
+ }
152
+ RUBY_END
153
+
154
+ static
155
+ RUBY_DEF1(update, dt)
156
+ {
157
+ CHECK;
158
+ CALL(update(to<float>(dt)));
159
+ return self;
160
+ }
161
+ RUBY_END
162
+
163
+ static
164
+ RUBY_DEF0(draw)
165
+ {
166
+ CHECK;
167
+ CALL(draw());
168
+ return self;
258
169
  }
259
170
  RUBY_END
260
171
 
@@ -262,7 +173,7 @@ static
262
173
  RUBY_DEF2(moved, x, y)
263
174
  {
264
175
  CHECK;
265
- this->Super::moved(to<coord>(x), to<coord>(y));
176
+ CALL(moved(to<coord>(x), to<coord>(y)));
266
177
  return self;
267
178
  }
268
179
  RUBY_END
@@ -271,7 +182,7 @@ static
271
182
  RUBY_DEF2(resized, width, height)
272
183
  {
273
184
  CHECK;
274
- this->Super::resized(to<coord>(width), to<coord>(height));
185
+ CALL(resized(to<coord>(width), to<coord>(height)));
275
186
  return self;
276
187
  }
277
188
  RUBY_END
@@ -282,7 +193,7 @@ RUBY_DEF1(key_down, key)
282
193
  CHECK;
283
194
  Reflex::Key* k = to<Reflex::Key*>(key);
284
195
  if (!k) argument_error();
285
- this->Super::key_down(*k);
196
+ CALL(key_down(*k));
286
197
  return self;
287
198
  }
288
199
  RUBY_END
@@ -293,7 +204,7 @@ RUBY_DEF1(key_up, key)
293
204
  CHECK;
294
205
  Reflex::Key* k = to<Reflex::Key*>(key);
295
206
  if (!k) argument_error();
296
- this->Super::key_up(*k);
207
+ CALL(key_up(*k));
297
208
  return self;
298
209
  }
299
210
  RUBY_END
@@ -304,7 +215,7 @@ RUBY_DEF1(points_down, points)
304
215
  CHECK;
305
216
  Reflex::Points* p = to<Reflex::Points*>(points);
306
217
  if (!p) argument_error();
307
- this->Super::points_down(*p);
218
+ CALL(points_down(*p));
308
219
  return self;
309
220
  }
310
221
  RUBY_END
@@ -315,7 +226,7 @@ RUBY_DEF1(points_up, points)
315
226
  CHECK;
316
227
  Reflex::Points* p = to<Reflex::Points*>(points);
317
228
  if (!p) argument_error();
318
- this->Super::points_up(*p);
229
+ CALL(points_up(*p));
319
230
  return self;
320
231
  }
321
232
  RUBY_END
@@ -326,7 +237,7 @@ RUBY_DEF1(points_moved, points)
326
237
  CHECK;
327
238
  Reflex::Points* p = to<Reflex::Points*>(points);
328
239
  if (!p) argument_error();
329
- this->Super::points_moved(*p);
240
+ CALL(points_moved(*p));
330
241
  return self;
331
242
  }
332
243
  RUBY_END
@@ -335,28 +246,28 @@ RUBY_END
335
246
  void
336
247
  Init_window ()
337
248
  {
338
- Module m = define_module("Reflex");
339
-
340
- Class c = m.define_class("Window");
341
- Reflex::cWindow = c;
342
-
343
- c.define_alloc_func(alloc);
344
- c.define_method("close", close);
345
- c.define_method("show", show);
346
- c.define_method("hide", hide);
347
- c.define_method("hidden", hidden);
348
- c.define_method("update", update);
349
- c.define_method("draw", draw);
350
- c.define_method("redraw", redraw);
351
- c.define_method("title", get_title);
352
- c.define_method("title=", set_title);
353
- c.define_private_method("get_bounds", get_bounds);
354
- c.define_private_method("set_bounds", set_bounds);
355
- c.define_method("moved", moved);
356
- c.define_method("resized", resized);
357
- c.define_method("key_down", key_down);
358
- c.define_method("key_up", key_up);
359
- c.define_method("points_down", points_down);
360
- c.define_method("points_up", points_up);
361
- c.define_method("points_moved", points_moved);
249
+ Module mReflex = define_module("Reflex");
250
+
251
+ cWindow = mReflex.define_class("Window");
252
+ cWindow.define_alloc_func(alloc);
253
+ cWindow.define_method("close", close);
254
+ cWindow.define_method("show", show);
255
+ cWindow.define_method("hide", hide);
256
+ cWindow.define_method("redraw", redraw);
257
+ cWindow.define_method("title=", set_title);
258
+ cWindow.define_method("title", get_title);
259
+ cWindow.define_private_method("set_bounds", set_bounds);
260
+ cWindow.define_private_method("get_bounds", get_bounds);
261
+ cWindow.define_method("hidden", hidden);
262
+ cWindow.define_method("root", root);
263
+ cWindow.define_method("painter", painter);
264
+ cWindow.define_method("update", update);
265
+ cWindow.define_method("draw", draw);
266
+ cWindow.define_method("moved", moved);
267
+ cWindow.define_method("resized", resized);
268
+ cWindow.define_method("key_down", key_down);
269
+ cWindow.define_method("key_up", key_up);
270
+ cWindow.define_method("points_down", points_down);
271
+ cWindow.define_method("points_up", points_up);
272
+ cWindow.define_method("points_moved", points_moved);
362
273
  }