reflexion 0.1.41 → 0.1.43
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/window.cpp +16 -0
- data/ChangeLog.md +13 -0
- data/VERSION +1 -1
- data/ext/reflex/window.cpp +18 -0
- data/include/reflex/ruby/window.h +18 -0
- data/include/reflex/window.h +4 -0
- data/reflex.gemspec +1 -1
- data/src/ios/screen.h +20 -0
- data/src/ios/screen.mm +62 -0
- data/src/ios/view_controller.h +2 -0
- data/src/ios/view_controller.mm +40 -0
- data/src/ios/window.h +1 -3
- data/src/ios/window.mm +38 -17
- data/src/osx/native_window.mm +15 -2
- data/src/osx/screen.mm +8 -4
- data/src/osx/window.h +1 -3
- data/src/osx/window.mm +13 -14
- data/src/window.cpp +49 -4
- data/src/window.h +13 -14
- metadata +6 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: c10c73adab35ef74f8426582c0343a84873fbe71b116fd669e656b42edfee613
|
4
|
+
data.tar.gz: ffcf1e0fb5a0b26d3bd0dbc3a5e1627bc25ae7addbbd5dd213332f21b661e5d6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7761664e1ba50fa8b10ef92c14dbeac9bfca2e4820bbe67d7f01cd44f6b7b235d06657796d567d9d3ff55bdf7e33eb911ab7dd2ea9f83dc77488c3f12771bada
|
7
|
+
data.tar.gz: 50ec935dcb2f5b692cab1ae3549aea533a8a2b7b4c4f89944ee92b39ca849feb7ac8f799dcf82cd8a4f066bdd2986d21489c56761f3e38acbda079e930fe677d
|
data/.doc/ext/reflex/window.cpp
CHANGED
@@ -194,6 +194,20 @@ VALUE get_painter(VALUE self)
|
|
194
194
|
return value(THIS->painter());
|
195
195
|
}
|
196
196
|
|
197
|
+
static
|
198
|
+
VALUE on_activate(VALUE self, VALUE event)
|
199
|
+
{
|
200
|
+
CHECK;
|
201
|
+
CALL(on_activate(to<Reflex::Event*>(event)));
|
202
|
+
}
|
203
|
+
|
204
|
+
static
|
205
|
+
VALUE on_deactivate(VALUE self, VALUE event)
|
206
|
+
{
|
207
|
+
CHECK;
|
208
|
+
CALL(on_deactivate(to<Reflex::Event*>(event)));
|
209
|
+
}
|
210
|
+
|
197
211
|
static
|
198
212
|
VALUE on_show(VALUE self, VALUE event)
|
199
213
|
{
|
@@ -341,6 +355,8 @@ Init_reflex_window ()
|
|
341
355
|
rb_define_method(cWindow, "root", RUBY_METHOD_FUNC(get_root), 0);
|
342
356
|
rb_define_method(cWindow, "focus", RUBY_METHOD_FUNC(get_focus), 0);
|
343
357
|
rb_define_method(cWindow, "painter", RUBY_METHOD_FUNC(get_painter), 0);
|
358
|
+
rb_define_method(cWindow, "on_activate", RUBY_METHOD_FUNC(on_activate), 1);
|
359
|
+
rb_define_method(cWindow, "on_deactivate", RUBY_METHOD_FUNC(on_deactivate), 1);
|
344
360
|
rb_define_method(cWindow, "on_show", RUBY_METHOD_FUNC(on_show), 1);
|
345
361
|
rb_define_method(cWindow, "on_hide", RUBY_METHOD_FUNC(on_hide), 1);
|
346
362
|
rb_define_method(cWindow, "on_close", RUBY_METHOD_FUNC(on_close), 1);
|
data/ChangeLog.md
CHANGED
@@ -1,6 +1,19 @@
|
|
1
1
|
# reflex ChangeLog
|
2
2
|
|
3
3
|
|
4
|
+
## [v0.1.43] - 2023-06-07
|
5
|
+
|
6
|
+
- Add on_activate() and on_deactivate() to Window class
|
7
|
+
|
8
|
+
|
9
|
+
## [v0.1.42] - 2023-06-02
|
10
|
+
|
11
|
+
- Implement the Screen class for iOS
|
12
|
+
- Implement Window_get_screen() for iOS
|
13
|
+
- Implement window flags for iOS
|
14
|
+
- Update reflexView's size on viewDidLayoutSubviews
|
15
|
+
|
16
|
+
|
4
17
|
## [v0.1.41] - 2023-05-29
|
5
18
|
|
6
19
|
- Add Reflex::Screen class
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.1.
|
1
|
+
0.1.43
|
data/ext/reflex/window.cpp
CHANGED
@@ -216,6 +216,22 @@ RUCY_DEF0(get_painter)
|
|
216
216
|
}
|
217
217
|
RUCY_END
|
218
218
|
|
219
|
+
static
|
220
|
+
RUCY_DEF1(on_activate, event)
|
221
|
+
{
|
222
|
+
CHECK;
|
223
|
+
CALL(on_activate(to<Reflex::Event*>(event)));
|
224
|
+
}
|
225
|
+
RUCY_END
|
226
|
+
|
227
|
+
static
|
228
|
+
RUCY_DEF1(on_deactivate, event)
|
229
|
+
{
|
230
|
+
CHECK;
|
231
|
+
CALL(on_deactivate(to<Reflex::Event*>(event)));
|
232
|
+
}
|
233
|
+
RUCY_END
|
234
|
+
|
219
235
|
static
|
220
236
|
RUCY_DEF1(on_show, event)
|
221
237
|
{
|
@@ -379,6 +395,8 @@ Init_reflex_window ()
|
|
379
395
|
cWindow.define_method("root", get_root);
|
380
396
|
cWindow.define_method("focus", get_focus);
|
381
397
|
cWindow.define_method("painter", get_painter);
|
398
|
+
cWindow.define_method("on_activate", on_activate);
|
399
|
+
cWindow.define_method("on_deactivate", on_deactivate);
|
382
400
|
cWindow.define_method("on_show", on_show);
|
383
401
|
cWindow.define_method("on_hide", on_hide);
|
384
402
|
cWindow.define_method("on_close", on_close);
|
@@ -29,6 +29,24 @@ namespace Reflex
|
|
29
29
|
|
30
30
|
public:
|
31
31
|
|
32
|
+
virtual void on_activate (Event* e)
|
33
|
+
{
|
34
|
+
RUCY_SYM(on_activate);
|
35
|
+
if (this->is_overridable())
|
36
|
+
this->value.call(on_activate, Rucy::value(e));
|
37
|
+
else
|
38
|
+
return Super::on_activate(e);
|
39
|
+
}
|
40
|
+
|
41
|
+
virtual void on_deactivate (Event* e)
|
42
|
+
{
|
43
|
+
RUCY_SYM(on_deactivate);
|
44
|
+
if (this->is_overridable())
|
45
|
+
this->value.call(on_deactivate, Rucy::value(e));
|
46
|
+
else
|
47
|
+
return Super::on_deactivate(e);
|
48
|
+
}
|
49
|
+
|
32
50
|
virtual void on_show (Event* e)
|
33
51
|
{
|
34
52
|
RUCY_SYM(on_show);
|
data/include/reflex/window.h
CHANGED
data/reflex.gemspec
CHANGED
@@ -28,7 +28,7 @@ Gem::Specification.new do |s|
|
|
28
28
|
s.add_runtime_dependency 'xot', '~> 0.1.38'
|
29
29
|
s.add_runtime_dependency 'rucy', '~> 0.1.38'
|
30
30
|
s.add_runtime_dependency 'beeps', '~> 0.1.39'
|
31
|
-
s.add_runtime_dependency 'rays', '~> 0.1.
|
31
|
+
s.add_runtime_dependency 'rays', '~> 0.1.40'
|
32
32
|
|
33
33
|
s.add_development_dependency 'rake'
|
34
34
|
s.add_development_dependency 'test-unit'
|
data/src/ios/screen.h
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
// -*- c++ -*-
|
2
|
+
#pragma once
|
3
|
+
#ifndef __REFLEX_SRC_IOS_SCREEN_H__
|
4
|
+
#define __REFLEX_SRC_IOS_SCREEN_H__
|
5
|
+
|
6
|
+
|
7
|
+
#include "reflex/screen.h"
|
8
|
+
|
9
|
+
|
10
|
+
namespace Reflex
|
11
|
+
{
|
12
|
+
|
13
|
+
|
14
|
+
void Screen_initialize (Screen* pthis, UIScreen* screen);
|
15
|
+
|
16
|
+
|
17
|
+
}// Reflex
|
18
|
+
|
19
|
+
|
20
|
+
#endif//EOH
|
data/src/ios/screen.mm
ADDED
@@ -0,0 +1,62 @@
|
|
1
|
+
// -*- mode: objc -*-
|
2
|
+
#include "screen.h"
|
3
|
+
|
4
|
+
|
5
|
+
#include "reflex/exception.h"
|
6
|
+
|
7
|
+
|
8
|
+
namespace Reflex
|
9
|
+
{
|
10
|
+
|
11
|
+
|
12
|
+
struct Screen::Data
|
13
|
+
{
|
14
|
+
|
15
|
+
UIScreen* screen = nil;
|
16
|
+
|
17
|
+
~Data ()
|
18
|
+
{
|
19
|
+
if (screen) [screen release];
|
20
|
+
}
|
21
|
+
|
22
|
+
};// Screen::Data
|
23
|
+
|
24
|
+
|
25
|
+
void
|
26
|
+
Screen_initialize (Screen* pthis, UIScreen* screen)
|
27
|
+
{
|
28
|
+
pthis->self->screen = [screen retain];
|
29
|
+
}
|
30
|
+
|
31
|
+
|
32
|
+
Screen::Screen ()
|
33
|
+
{
|
34
|
+
}
|
35
|
+
|
36
|
+
Screen::~Screen ()
|
37
|
+
{
|
38
|
+
}
|
39
|
+
|
40
|
+
Bounds
|
41
|
+
Screen::frame () const
|
42
|
+
{
|
43
|
+
if (!*this)
|
44
|
+
invalid_state_error(__FILE__, __LINE__);
|
45
|
+
|
46
|
+
CGRect b = self->screen.bounds;
|
47
|
+
return Bounds(b.origin.x, b.origin.y, b.size.width, b.size.height);
|
48
|
+
}
|
49
|
+
|
50
|
+
Screen::operator bool () const
|
51
|
+
{
|
52
|
+
return self->screen;
|
53
|
+
}
|
54
|
+
|
55
|
+
bool
|
56
|
+
Screen::operator ! () const
|
57
|
+
{
|
58
|
+
return !operator bool();
|
59
|
+
}
|
60
|
+
|
61
|
+
|
62
|
+
}// Reflex
|
data/src/ios/view_controller.h
CHANGED
data/src/ios/view_controller.mm
CHANGED
@@ -285,14 +285,54 @@ ReflexViewController_get_show_fun ()
|
|
285
285
|
{
|
286
286
|
[super viewDidAppear: animated];
|
287
287
|
[self startTimer];
|
288
|
+
|
289
|
+
Window_call_activate_event(self.window);
|
290
|
+
|
291
|
+
[NSNotificationCenter.defaultCenter
|
292
|
+
addObserver: self
|
293
|
+
selector: @selector(didBecomeActive)
|
294
|
+
name: UIApplicationDidBecomeActiveNotification
|
295
|
+
object: nil];
|
296
|
+
[NSNotificationCenter.defaultCenter
|
297
|
+
addObserver: self
|
298
|
+
selector: @selector(willResignActive)
|
299
|
+
name: UIApplicationWillResignActiveNotification
|
300
|
+
object: nil];
|
288
301
|
}
|
289
302
|
|
290
303
|
- (void) viewDidDisappear: (BOOL) animated
|
291
304
|
{
|
305
|
+
[NSNotificationCenter.defaultCenter
|
306
|
+
removeObserver: self
|
307
|
+
name: UIApplicationDidBecomeActiveNotification
|
308
|
+
object: nil];
|
309
|
+
[NSNotificationCenter.defaultCenter
|
310
|
+
removeObserver: self
|
311
|
+
name: UIApplicationWillResignActiveNotification
|
312
|
+
object: nil];
|
313
|
+
|
314
|
+
Window_ca__deactivate_event(self.window);
|
315
|
+
|
292
316
|
[self stopTimer];
|
293
317
|
[super viewDidDisappear: animated];
|
294
318
|
}
|
295
319
|
|
320
|
+
- (void) didBecomeActive
|
321
|
+
{
|
322
|
+
Window_call_activate_event(self.window);
|
323
|
+
}
|
324
|
+
|
325
|
+
- (void) willResignActive
|
326
|
+
{
|
327
|
+
Window_call_deactivate_event(self.window);
|
328
|
+
}
|
329
|
+
|
330
|
+
- (void)viewDidLayoutSubviews
|
331
|
+
{
|
332
|
+
[super viewDidLayoutSubviews];
|
333
|
+
self.reflexView.frame = self.view.bounds;
|
334
|
+
}
|
335
|
+
|
296
336
|
- (void) startTimer
|
297
337
|
{
|
298
338
|
[self startTimer: 60];
|
data/src/ios/window.h
CHANGED
data/src/ios/window.mm
CHANGED
@@ -3,6 +3,7 @@
|
|
3
3
|
|
4
4
|
|
5
5
|
#include "reflex/exception.h"
|
6
|
+
#include "screen.h"
|
6
7
|
#import "view_controller.h"
|
7
8
|
|
8
9
|
|
@@ -48,6 +49,12 @@ namespace Reflex
|
|
48
49
|
return new WindowData();
|
49
50
|
}
|
50
51
|
|
52
|
+
uint
|
53
|
+
Window_default_flags ()
|
54
|
+
{
|
55
|
+
return 0;
|
56
|
+
}
|
57
|
+
|
51
58
|
void
|
52
59
|
Window_initialize (Window* window)
|
53
60
|
{
|
@@ -127,24 +134,44 @@ namespace Reflex
|
|
127
134
|
Bounds
|
128
135
|
Window_get_frame (const Window& window)
|
129
136
|
{
|
130
|
-
CGRect
|
131
|
-
return Bounds(
|
132
|
-
rect.origin.x,
|
133
|
-
rect.origin.y,
|
134
|
-
rect.size.width,
|
135
|
-
rect.size.height);
|
137
|
+
CGRect b = get_vc(&window).reflexView.bounds;
|
138
|
+
return Bounds(b.origin.x, b.origin.y, b.size.width, b.size.height);
|
136
139
|
}
|
137
140
|
|
138
141
|
void
|
139
|
-
|
142
|
+
Window_set_flags (Window* window, uint flags)
|
140
143
|
{
|
141
|
-
|
144
|
+
if (Xot::has_flag(flags, Window::FLAG_CLOSABLE))
|
145
|
+
argument_error(__FILE__, __LINE__, "FLAG_CLOSABLE is not supported");
|
146
|
+
|
147
|
+
if (Xot::has_flag(flags, Window::FLAG_MINIMIZABLE))
|
148
|
+
argument_error(__FILE__, __LINE__, "FLAG_MINIMIZABLE is not supported");
|
149
|
+
|
150
|
+
if (Xot::has_flag(flags, Window::FLAG_RESIZABLE))
|
151
|
+
argument_error(__FILE__, __LINE__, "FLAG_RESIZABLE is not supported");
|
152
|
+
}
|
153
|
+
|
154
|
+
static UIScreen*
|
155
|
+
get_screen (const Window& window)
|
156
|
+
{
|
157
|
+
UIWindow* w = get_vc(&window).view.window;
|
158
|
+
if (@available(iOS 13.0, *))
|
159
|
+
{
|
160
|
+
return w.windowScene.screen;
|
161
|
+
}
|
162
|
+
else
|
163
|
+
{
|
164
|
+
return w.screen;
|
165
|
+
}
|
142
166
|
}
|
143
167
|
|
144
|
-
|
145
|
-
|
168
|
+
Screen
|
169
|
+
Window_get_screen (const Window& window)
|
146
170
|
{
|
147
|
-
|
171
|
+
Screen s;
|
172
|
+
UIScreen* screen = get_screen(window);
|
173
|
+
Screen_initialize(&s, screen ? screen : UIScreen.mainScreen);
|
174
|
+
return s;
|
148
175
|
}
|
149
176
|
|
150
177
|
float
|
@@ -154,10 +181,4 @@ namespace Reflex
|
|
154
181
|
}
|
155
182
|
|
156
183
|
|
157
|
-
WindowData::WindowData ()
|
158
|
-
{
|
159
|
-
view_controller = nil;
|
160
|
-
}
|
161
|
-
|
162
|
-
|
163
184
|
}// Reflex
|
data/src/osx/native_window.mm
CHANGED
@@ -15,8 +15,8 @@
|
|
15
15
|
static NSWindowStyleMask
|
16
16
|
default_style_mask ()
|
17
17
|
{
|
18
|
-
return Window_make_style_mask(
|
19
|
-
Reflex::
|
18
|
+
return Reflex::Window_make_style_mask(
|
19
|
+
Reflex::Window_default_flags(),
|
20
20
|
NSTitledWindowMask | NSTexturedBackgroundWindowMask);
|
21
21
|
}
|
22
22
|
|
@@ -242,6 +242,9 @@ update_pixel_density (Reflex::Window* window)
|
|
242
242
|
|
243
243
|
- (void) windowWillClose: (NSNotification*) notification
|
244
244
|
{
|
245
|
+
if (self.isKeyWindow)
|
246
|
+
Window_call_deactivate_event(self.window);
|
247
|
+
|
245
248
|
[self stopTimer];
|
246
249
|
[self unbind];
|
247
250
|
[self setDelegate: nil];
|
@@ -306,6 +309,16 @@ update_pixel_density (Reflex::Window* window)
|
|
306
309
|
}
|
307
310
|
}
|
308
311
|
|
312
|
+
- (void) windowDidBecomeKey: (NSNotification*) notification
|
313
|
+
{
|
314
|
+
Window_call_activate_event(self.window);
|
315
|
+
}
|
316
|
+
|
317
|
+
- (void) windowDidResignKey: (NSNotification*) notification
|
318
|
+
{
|
319
|
+
Window_call_deactivate_event(self.window);
|
320
|
+
}
|
321
|
+
|
309
322
|
- (void) keyDown: (NSEvent*) event
|
310
323
|
{
|
311
324
|
Reflex::Window* win = self.window;
|
data/src/osx/screen.mm
CHANGED
@@ -2,6 +2,9 @@
|
|
2
2
|
#include "screen.h"
|
3
3
|
|
4
4
|
|
5
|
+
#include "reflex/exception.h"
|
6
|
+
|
7
|
+
|
5
8
|
namespace Reflex
|
6
9
|
{
|
7
10
|
|
@@ -37,10 +40,11 @@ namespace Reflex
|
|
37
40
|
Bounds
|
38
41
|
Screen::frame () const
|
39
42
|
{
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
43
|
+
if (!*this)
|
44
|
+
invalid_state_error(__FILE__, __LINE__);
|
45
|
+
|
46
|
+
NSRect f = self->screen.frame;
|
47
|
+
return Bounds(f.origin.x, f.origin.y, f.size.width, f.size.height);
|
44
48
|
}
|
45
49
|
|
46
50
|
Screen::operator bool () const
|
data/src/osx/window.h
CHANGED
data/src/osx/window.mm
CHANGED
@@ -70,6 +70,15 @@ namespace Reflex
|
|
70
70
|
return new WindowData();
|
71
71
|
}
|
72
72
|
|
73
|
+
uint
|
74
|
+
Window_default_flags ()
|
75
|
+
{
|
76
|
+
return
|
77
|
+
Window::FLAG_CLOSABLE |
|
78
|
+
Window::FLAG_MINIMIZABLE |
|
79
|
+
Window::FLAG_RESIZABLE;
|
80
|
+
}
|
81
|
+
|
73
82
|
void
|
74
83
|
Window_initialize (Window* window)
|
75
84
|
{
|
@@ -126,12 +135,8 @@ namespace Reflex
|
|
126
135
|
Window_get_frame (const Window& window)
|
127
136
|
{
|
128
137
|
NativeWindow* native = get_native(&window);
|
129
|
-
NSRect
|
130
|
-
return Bounds(
|
131
|
-
rect.origin.x,
|
132
|
-
rect.origin.y,
|
133
|
-
rect.size.width,
|
134
|
-
rect.size.height);
|
138
|
+
NSRect r = [native contentRectForFrameRect: [native frame]];
|
139
|
+
return Bounds(r.origin.x, r.origin.y, r.size.width, r.size.height);
|
135
140
|
}
|
136
141
|
|
137
142
|
void
|
@@ -149,8 +154,8 @@ namespace Reflex
|
|
149
154
|
Window_get_screen (const Window& window)
|
150
155
|
{
|
151
156
|
Screen s;
|
152
|
-
|
153
|
-
if (
|
157
|
+
NSScreen* screen = get_native(&window).screen;
|
158
|
+
if (screen) Screen_initialize(&s, screen);
|
154
159
|
return s;
|
155
160
|
}
|
156
161
|
|
@@ -161,10 +166,4 @@ namespace Reflex
|
|
161
166
|
}
|
162
167
|
|
163
168
|
|
164
|
-
WindowData::WindowData ()
|
165
|
-
{
|
166
|
-
native = nil;
|
167
|
-
}
|
168
|
-
|
169
|
-
|
170
169
|
}// Reflex
|
data/src/window.cpp
CHANGED
@@ -22,6 +22,17 @@ namespace Reflex
|
|
22
22
|
using TargetPointerMap = Window::Data::TargetPointerMap;
|
23
23
|
|
24
24
|
|
25
|
+
Window::Data::Data ()
|
26
|
+
: flags(Window_default_flags())
|
27
|
+
{
|
28
|
+
prev_time_update = prev_time_draw = Xot::time();
|
29
|
+
}
|
30
|
+
|
31
|
+
Window::Data::~Data ()
|
32
|
+
{
|
33
|
+
}
|
34
|
+
|
35
|
+
|
25
36
|
Window::Data::PointerData::PointerData (uint view_index)
|
26
37
|
: view_index(view_index)
|
27
38
|
{
|
@@ -123,6 +134,24 @@ namespace Reflex
|
|
123
134
|
}
|
124
135
|
}
|
125
136
|
|
137
|
+
void
|
138
|
+
Window_call_activate_event (Reflex::Window* window)
|
139
|
+
{
|
140
|
+
if (!window) return;
|
141
|
+
|
142
|
+
Reflex::Event e;
|
143
|
+
window->on_activate(&e);
|
144
|
+
}
|
145
|
+
|
146
|
+
void
|
147
|
+
Window_call_deactivate_event (Reflex::Window* window)
|
148
|
+
{
|
149
|
+
if (!window) return;
|
150
|
+
|
151
|
+
Reflex::Event e;
|
152
|
+
window->on_deactivate(&e);
|
153
|
+
}
|
154
|
+
|
126
155
|
void
|
127
156
|
Window_call_draw_event (Window* window, DrawEvent* event)
|
128
157
|
{
|
@@ -520,17 +549,23 @@ namespace Reflex
|
|
520
549
|
void
|
521
550
|
Window::add_flag (uint flags)
|
522
551
|
{
|
523
|
-
|
552
|
+
uint value = self->flags;
|
553
|
+
Xot::add_flag(&value, flags);
|
554
|
+
|
555
|
+
Window_set_flags(this, value);
|
524
556
|
|
525
|
-
|
557
|
+
self->flags = value;
|
526
558
|
}
|
527
559
|
|
528
560
|
void
|
529
561
|
Window::remove_flag (uint flags)
|
530
562
|
{
|
531
|
-
|
563
|
+
uint value = self->flags;
|
564
|
+
Xot::remove_flag(&value, flags);
|
532
565
|
|
533
|
-
Window_set_flags(this,
|
566
|
+
Window_set_flags(this, value);
|
567
|
+
|
568
|
+
self->flags = value;
|
534
569
|
}
|
535
570
|
|
536
571
|
bool
|
@@ -581,6 +616,16 @@ namespace Reflex
|
|
581
616
|
return const_cast<Window*>(this)->painter();
|
582
617
|
}
|
583
618
|
|
619
|
+
void
|
620
|
+
Window::on_activate (Event* e)
|
621
|
+
{
|
622
|
+
}
|
623
|
+
|
624
|
+
void
|
625
|
+
Window::on_deactivate (Event* e)
|
626
|
+
{
|
627
|
+
}
|
628
|
+
|
584
629
|
void
|
585
630
|
Window::on_show (Event* e)
|
586
631
|
{
|
data/src/window.h
CHANGED
@@ -37,8 +37,6 @@ namespace Reflex
|
|
37
37
|
|
38
38
|
typedef std::map<View::Ref, TargetPointerMap> CaptureMap;
|
39
39
|
|
40
|
-
enum {FLAG_DEFAULT = FLAG_CLOSABLE | FLAG_MINIMIZABLE | FLAG_RESIZABLE};
|
41
|
-
|
42
40
|
int hide_count = 1;
|
43
41
|
|
44
42
|
bool redraw = true;
|
@@ -53,16 +51,11 @@ namespace Reflex
|
|
53
51
|
|
54
52
|
CaptureMap captures;
|
55
53
|
|
56
|
-
uint flags
|
54
|
+
uint flags;
|
57
55
|
|
58
|
-
Data ()
|
59
|
-
{
|
60
|
-
prev_time_update = prev_time_draw = Xot::time();
|
61
|
-
}
|
56
|
+
Data ();
|
62
57
|
|
63
|
-
virtual ~Data ()
|
64
|
-
{
|
65
|
-
}
|
58
|
+
virtual ~Data ();
|
66
59
|
|
67
60
|
virtual bool is_valid () const = 0;
|
68
61
|
|
@@ -81,6 +74,8 @@ namespace Reflex
|
|
81
74
|
|
82
75
|
Window::Data* Window_create_data ();
|
83
76
|
|
77
|
+
uint Window_default_flags ();
|
78
|
+
|
84
79
|
void Window_initialize (Window* window);
|
85
80
|
|
86
81
|
void Window_show (Window* window);
|
@@ -110,13 +105,17 @@ namespace Reflex
|
|
110
105
|
void Window_unregister_capture (
|
111
106
|
Window* window, View* view, Pointer::ID target);
|
112
107
|
|
113
|
-
void
|
108
|
+
void Window_call_activate_event (Window* window);
|
109
|
+
|
110
|
+
void Window_call_deactivate_event (Window* window);
|
111
|
+
|
112
|
+
void Window_call_draw_event (Window* window, DrawEvent* event);
|
114
113
|
|
115
|
-
void Window_call_key_event
|
114
|
+
void Window_call_key_event (Window* window, KeyEvent* event);
|
116
115
|
|
117
|
-
void Window_call_pointer_event
|
116
|
+
void Window_call_pointer_event (Window* window, PointerEvent* event);
|
118
117
|
|
119
|
-
void Window_call_wheel_event
|
118
|
+
void Window_call_wheel_event (Window* window, WheelEvent* event);
|
120
119
|
|
121
120
|
float Window_get_pixel_density (const Window& window);
|
122
121
|
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: reflexion
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.43
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- xordog
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-
|
11
|
+
date: 2023-06-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: xot
|
@@ -58,14 +58,14 @@ dependencies:
|
|
58
58
|
requirements:
|
59
59
|
- - "~>"
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 0.1.
|
61
|
+
version: 0.1.40
|
62
62
|
type: :runtime
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
66
|
- - "~>"
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 0.1.
|
68
|
+
version: 0.1.40
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rake
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|
@@ -355,6 +355,8 @@ files:
|
|
355
355
|
- src/ios/event.h
|
356
356
|
- src/ios/event.mm
|
357
357
|
- src/ios/reflex.mm
|
358
|
+
- src/ios/screen.h
|
359
|
+
- src/ios/screen.mm
|
358
360
|
- src/ios/view_controller.h
|
359
361
|
- src/ios/view_controller.mm
|
360
362
|
- src/ios/window.h
|