wxruby3 1.3.0 → 1.4.2
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/INSTALL.md +16 -12
- data/README.md +4 -3
- data/ext/wxruby3/include/wxRubyApp.h +9 -9
- data/ext/wxruby3/swig/custom/director.swg +11 -3
- data/ext/wxruby3/swig/custom/rubyapi.swg +15 -1
- data/ext/wxruby3/swig/mark_free_impl.i +47 -11
- data/ext/wxruby3/swig/wx.i +30 -12
- data/lib/wx/aui/auifloatframe.rb +1 -1
- data/lib/wx/aui/auimanager.rb +50 -14
- data/lib/wx/aui/auinotebook.rb +1 -1
- data/lib/wx/aui/require.rb +0 -2
- data/lib/wx/core/acceleratortable.rb +1 -1
- data/lib/wx/core/animation.rb +2 -2
- data/lib/wx/core/app.rb +1 -1
- data/lib/wx/core/array_ext.rb +1 -0
- data/lib/wx/core/artprovider.rb +4 -4
- data/lib/wx/core/bitmap.rb +1 -1
- data/lib/wx/core/bitmap_combobox.rb +2 -2
- data/lib/wx/core/brush.rb +8 -0
- data/lib/wx/core/clientdc.rb +1 -1
- data/lib/wx/core/clipboard.rb +4 -4
- data/lib/wx/core/colour.rb +1 -1
- data/lib/wx/core/combobox.rb +1 -1
- data/lib/wx/core/config.rb +7 -7
- data/lib/wx/core/controlwithitems.rb +3 -3
- data/lib/wx/core/data_object.rb +4 -4
- data/lib/wx/core/dataformat.rb +9 -3
- data/lib/wx/core/defs.rb +49 -0
- data/lib/wx/core/dialog.rb +3 -2
- data/lib/wx/core/enum.rb +16 -3
- data/lib/wx/core/event.rb +3 -3
- data/lib/wx/core/evthandler.rb +317 -289
- data/lib/wx/core/file_dialog.rb +1 -1
- data/lib/wx/core/find_replace_dialog.rb +2 -2
- data/lib/wx/core/font.rb +14 -0
- data/lib/wx/core/functions.rb +1 -1
- data/lib/wx/core/genericdirctrl.rb +1 -1
- data/lib/wx/core/geometry.rb +2 -2
- data/lib/wx/core/graphics_pen_info.rb +1 -1
- data/lib/wx/core/hboxsizer.rb +24 -4
- data/lib/wx/core/helpprovider.rb +1 -1
- data/lib/wx/core/icon.rb +1 -1
- data/lib/wx/core/image.rb +2 -2
- data/lib/wx/core/imagelist.rb +1 -1
- data/lib/wx/core/locale.rb +5 -5
- data/lib/wx/core/log.rb +8 -8
- data/lib/wx/core/menu.rb +3 -3
- data/lib/wx/core/module_ext.rb +16 -0
- data/lib/wx/core/owner_drawn_combobox.rb +3 -3
- data/lib/wx/core/pen.rb +20 -0
- data/lib/wx/core/pen_info.rb +1 -1
- data/lib/wx/core/persistence_manager.rb +2 -2
- data/lib/wx/core/real_point.rb +1 -0
- data/lib/wx/core/rect.rb +1 -1
- data/lib/wx/core/secret_store.rb +1 -1
- data/lib/wx/core/simplehelpprovider.rb +1 -1
- data/lib/wx/core/sizer.rb +166 -39
- data/lib/wx/core/splash_screen.rb +1 -1
- data/lib/wx/core/standard_paths.rb +1 -1
- data/lib/wx/core/task_bar_button.rb +1 -1
- data/lib/wx/core/text_entry.rb +1 -1
- data/lib/wx/core/textctrl.rb +2 -2
- data/lib/wx/core/timer.rb +2 -2
- data/lib/wx/core/tree_ctrl.rb +1 -1
- data/lib/wx/core/v_list_box.rb +1 -1
- data/lib/wx/core/validator.rb +2 -2
- data/lib/wx/core/variant.rb +2 -2
- data/lib/wx/core/vboxsizer.rb +24 -4
- data/lib/wx/core/window.rb +48 -2
- data/lib/wx/core/xmlresource.rb +4 -4
- data/lib/wx/core.rb +2 -0
- data/lib/wx/doc/array_ext.rb +1 -0
- data/lib/wx/doc/aui/auimanager.rb +2 -0
- data/lib/wx/doc/enum.rb +26 -0
- data/lib/wx/doc/evthandler.rb +1 -0
- data/lib/wx/doc/gdi_common.rb +1 -0
- data/lib/wx/doc/tip_window.rb +22 -0
- data/lib/wx/grid/grid.rb +3 -3
- data/lib/wx/grid/require.rb +0 -2
- data/lib/wx/html/htmlhelpcontroller.rb +1 -1
- data/lib/wx/html/htmlwindow.rb +1 -1
- data/lib/wx/html/require.rb +0 -2
- data/lib/wx/html/simple_html_listbox.rb +3 -3
- data/lib/wx/keyword_ctors.rb +14 -7
- data/lib/wx/keyword_defs.rb +7 -7
- data/lib/wx/pg/pg_properties.rb +1 -1
- data/lib/wx/pg/pg_property.rb +3 -3
- data/lib/wx/pg/property_grid.rb +2 -2
- data/lib/wx/pg/property_grid_interface.rb +2 -2
- data/lib/wx/pg/require.rb +0 -2
- data/lib/wx/prt/previewframe.rb +1 -1
- data/lib/wx/prt/require.rb +0 -2
- data/lib/wx/rbn/ribbon_control.rb +1 -1
- data/lib/wx/rbn/ribbon_page.rb +1 -1
- data/lib/wx/rbn/ribbon_panel.rb +1 -1
- data/lib/wx/rtc/require.rb +0 -2
- data/lib/wx/rtc/rich_text_composite_object.rb +1 -1
- data/lib/wx/rtc/rich_text_ctrl.rb +1 -1
- data/lib/wx/rtc/rich_text_paragraph.rb +1 -1
- data/lib/wx/rtc/richtext_buffer.rb +3 -3
- data/lib/wx/rtc/richtext_formatting_dialog.rb +2 -2
- data/lib/wx/rtc/richtext_style_organiser_dialog.rb +1 -1
- data/lib/wx/rtc/symbol_picker_dialog.rb +1 -1
- data/lib/wx/stc/require.rb +0 -2
- data/lib/wx/stc/styled_text_ctrl.rb +1 -1
- data/lib/wx/version.rb +1 -1
- data/lib/wx/wxruby/base.rb +8 -2
- data/lib/wx/wxruby/cmd/setup.rb +61 -37
- data/rakelib/gem.rb +8 -4
- data/rakelib/lib/config/mingw.rb +1 -1
- data/rakelib/lib/core/include/swigrubyrun.inc +2 -2
- data/rakelib/lib/director/about_dialog_info.rb +1 -0
- data/rakelib/lib/director/aui_manager.rb +124 -3
- data/rakelib/lib/director/aui_notebook.rb +7 -0
- data/rakelib/lib/director/colour.rb +1 -1
- data/rakelib/lib/director/data_format.rb +1 -1
- data/rakelib/lib/director/dialog.rb +4 -2
- data/rakelib/lib/director/event.rb +1 -0
- data/rakelib/lib/director/event_handler.rb +82 -46
- data/rakelib/lib/director/functions.rb +0 -3
- data/rakelib/lib/director/list_ctrl.rb +14 -10
- data/rakelib/lib/director/locale.rb +2 -0
- data/rakelib/lib/director/num_validator.rb +7 -0
- data/rakelib/lib/director/pgproperties.rb +2 -2
- data/rakelib/lib/director/property_grid_interface.rb +4 -3
- data/rakelib/lib/director/textctrl.rb +7 -0
- data/rakelib/lib/director/tip_window.rb +34 -0
- data/rakelib/lib/director/variant.rb +2 -2
- data/rakelib/lib/director/window.rb +9 -1
- data/rakelib/lib/director.rb +0 -1
- data/rakelib/lib/extractor/function.rb +5 -0
- data/rakelib/lib/generate/doc/evt_handler.yaml +31 -12
- data/rakelib/lib/specs/interfaces.rb +1 -0
- data/rakelib/lib/typemap/common.rb +2 -2
- data/samples/dialogs/dialogs.rb +1 -1
- data/tests/test_combo_ctrl.rb +1 -0
- data/tests/test_event_handling.rb +158 -31
- metadata +7 -5
|
@@ -10,6 +10,14 @@ class EventHandlingTests < Test::Unit::TestCase
|
|
|
10
10
|
EVT_TEST_EVENT = Wx::EvtHandler.register_class(self, nil, 'evt_test_event', 0)
|
|
11
11
|
def initialize(id=0)
|
|
12
12
|
super(EVT_TEST_EVENT, id)
|
|
13
|
+
@value = nil
|
|
14
|
+
end
|
|
15
|
+
|
|
16
|
+
attr_accessor :value
|
|
17
|
+
|
|
18
|
+
def initialize_clone(org)
|
|
19
|
+
super
|
|
20
|
+
self.value = org.value.dup if org.value
|
|
13
21
|
end
|
|
14
22
|
end
|
|
15
23
|
|
|
@@ -53,15 +61,18 @@ class EventHandlingTests < Test::Unit::TestCase
|
|
|
53
61
|
super(nil, size: [300,300])
|
|
54
62
|
@child = Child.new(self)
|
|
55
63
|
@test_event = false
|
|
64
|
+
@test_event_value = nil
|
|
56
65
|
@test_cmd_event = false
|
|
66
|
+
@focus_event = false
|
|
57
67
|
@called_after = false
|
|
58
68
|
|
|
59
|
-
evt_test_event { |evt| @test_event = true }
|
|
69
|
+
evt_test_event { |evt| @test_event = true; @test_event_value = evt.value }
|
|
60
70
|
evt_test_cmd_event { |evt| @test_cmd_event = true }
|
|
71
|
+
evt_set_focus { |evt| @focus_event = true }
|
|
61
72
|
end
|
|
62
73
|
|
|
63
74
|
attr_reader :child
|
|
64
|
-
attr_reader :test_event, :test_cmd_event
|
|
75
|
+
attr_reader :test_event, :test_event_value, :test_cmd_event, :focus_event
|
|
65
76
|
attr_accessor :called_after
|
|
66
77
|
|
|
67
78
|
def reset
|
|
@@ -76,16 +87,20 @@ class EventHandlingTests < Test::Unit::TestCase
|
|
|
76
87
|
win = TestFrame.new
|
|
77
88
|
assert(!win.test_event)
|
|
78
89
|
assert(!win.child.test_event)
|
|
79
|
-
win.child.
|
|
90
|
+
win.child.process_event(TestEvent.new)
|
|
80
91
|
assert(!win.test_event)
|
|
81
92
|
assert(win.child.test_event)
|
|
82
93
|
win.reset
|
|
83
|
-
win.child.
|
|
94
|
+
win.child.process_event(TestEvent.new(1))
|
|
84
95
|
assert(!win.test_event)
|
|
85
96
|
assert(win.child.test_event)
|
|
86
97
|
win.reset
|
|
87
|
-
|
|
98
|
+
evt = TestEvent.new
|
|
99
|
+
evt.value = 'Something happened'.dup
|
|
100
|
+
win.process_event(evt)
|
|
101
|
+
evt.value << ' again'
|
|
88
102
|
assert(win.test_event)
|
|
103
|
+
assert_equal('Something happened again', win.test_event_value)
|
|
89
104
|
assert(!win.child.test_event)
|
|
90
105
|
win.destroy
|
|
91
106
|
Wx.get_app.yield
|
|
@@ -95,43 +110,72 @@ class EventHandlingTests < Test::Unit::TestCase
|
|
|
95
110
|
win = TestFrame.new
|
|
96
111
|
assert_false(win.test_cmd_event)
|
|
97
112
|
assert_false(win.child.test_cmd_event)
|
|
98
|
-
win.child.
|
|
113
|
+
win.child.process_event(TestCmdEvent.new)
|
|
99
114
|
assert_false(win.test_cmd_event)
|
|
100
115
|
assert_true(win.child.test_cmd_event)
|
|
101
116
|
assert_false(win.child.test_client_data)
|
|
102
117
|
win.reset
|
|
103
|
-
win.child.
|
|
118
|
+
win.child.process_event(TestCmdEvent.new(1))
|
|
104
119
|
assert_true(win.test_cmd_event)
|
|
105
120
|
assert_true(win.child.test_cmd_event)
|
|
106
121
|
assert_true(win.child.test_client_data)
|
|
107
122
|
win.reset
|
|
108
|
-
win.
|
|
123
|
+
win.process_event(TestCmdEvent.new)
|
|
109
124
|
assert_true(win.test_cmd_event)
|
|
110
125
|
assert_false(win.child.test_cmd_event)
|
|
111
126
|
win.destroy
|
|
112
127
|
Wx.get_app.yield
|
|
113
128
|
end
|
|
114
129
|
|
|
130
|
+
def test_queue_focus_event
|
|
131
|
+
win = TestFrame.new
|
|
132
|
+
assert_false(win.focus_event)
|
|
133
|
+
win.queue_event(Wx::FocusEvent.new(Wx::EVT_SET_FOCUS))
|
|
134
|
+
Wx.get_app.yield
|
|
135
|
+
assert_true(win.focus_event)
|
|
136
|
+
win.destroy
|
|
137
|
+
Wx.get_app.yield
|
|
138
|
+
end
|
|
139
|
+
|
|
115
140
|
def test_queue_event
|
|
116
141
|
win = TestFrame.new
|
|
117
142
|
assert_false(win.test_cmd_event)
|
|
118
143
|
assert_false(win.child.test_cmd_event)
|
|
119
|
-
win.child.
|
|
144
|
+
win.child.queue_event(TestCmdEvent.new)
|
|
120
145
|
Wx.get_app.yield
|
|
121
146
|
assert_false(win.test_cmd_event)
|
|
122
147
|
assert_true(win.child.test_cmd_event)
|
|
123
148
|
assert_false(win.child.test_client_data)
|
|
124
149
|
win.reset
|
|
125
|
-
win.child.
|
|
150
|
+
win.child.queue_event(TestCmdEvent.new(1))
|
|
126
151
|
Wx.get_app.yield
|
|
127
152
|
assert_true(win.test_cmd_event)
|
|
128
153
|
assert_true(win.child.test_cmd_event)
|
|
129
154
|
assert_true(win.child.test_client_data)
|
|
130
155
|
win.reset
|
|
131
|
-
win.
|
|
156
|
+
win.queue_event(TestCmdEvent.new)
|
|
132
157
|
Wx.get_app.yield
|
|
133
158
|
assert_true(win.test_cmd_event)
|
|
134
159
|
assert_false(win.child.test_cmd_event)
|
|
160
|
+
win.reset
|
|
161
|
+
evt = TestEvent.new
|
|
162
|
+
evt.value = 'Something happened'.dup
|
|
163
|
+
win.queue_event(evt)
|
|
164
|
+
evt.value << ' again'
|
|
165
|
+
Wx.get_app.yield
|
|
166
|
+
assert_true(win.test_event)
|
|
167
|
+
assert_equal('Something happened again', win.test_event_value)
|
|
168
|
+
assert_false(win.child.test_event)
|
|
169
|
+
win.destroy
|
|
170
|
+
Wx.get_app.yield
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
def test_pending_focus_event
|
|
174
|
+
win = TestFrame.new
|
|
175
|
+
assert_false(win.focus_event)
|
|
176
|
+
win.add_pending_event(Wx::FocusEvent.new(Wx::EVT_SET_FOCUS))
|
|
177
|
+
Wx.get_app.yield
|
|
178
|
+
assert_true(win.focus_event)
|
|
135
179
|
win.destroy
|
|
136
180
|
Wx.get_app.yield
|
|
137
181
|
end
|
|
@@ -140,22 +184,31 @@ class EventHandlingTests < Test::Unit::TestCase
|
|
|
140
184
|
win = TestFrame.new
|
|
141
185
|
assert_false(win.test_cmd_event)
|
|
142
186
|
assert_false(win.child.test_cmd_event)
|
|
143
|
-
win.child.
|
|
187
|
+
win.child.add_pending_event(TestCmdEvent.new)
|
|
144
188
|
Wx.get_app.yield
|
|
145
189
|
assert_false(win.test_cmd_event)
|
|
146
190
|
assert_true(win.child.test_cmd_event)
|
|
147
191
|
assert_false(win.child.test_client_data)
|
|
148
192
|
win.reset
|
|
149
|
-
win.child.
|
|
193
|
+
win.child.add_pending_event(TestCmdEvent.new(1))
|
|
150
194
|
Wx.get_app.yield
|
|
151
195
|
assert_true(win.test_cmd_event)
|
|
152
196
|
assert_true(win.child.test_cmd_event)
|
|
153
197
|
assert_true(win.child.test_client_data)
|
|
154
198
|
win.reset
|
|
155
|
-
win.
|
|
199
|
+
win.add_pending_event(TestCmdEvent.new)
|
|
156
200
|
Wx.get_app.yield
|
|
157
201
|
assert_true(win.test_cmd_event)
|
|
158
202
|
assert_false(win.child.test_cmd_event)
|
|
203
|
+
win.reset
|
|
204
|
+
evt = TestEvent.new
|
|
205
|
+
evt.value = 'Something happened'.dup
|
|
206
|
+
win.add_pending_event(evt)
|
|
207
|
+
evt.value << ' again'
|
|
208
|
+
Wx.get_app.yield
|
|
209
|
+
assert_true(win.test_event)
|
|
210
|
+
assert_equal('Something happened', win.test_event_value)
|
|
211
|
+
assert_false(win.child.test_event)
|
|
159
212
|
win.destroy
|
|
160
213
|
Wx.get_app.yield
|
|
161
214
|
end
|
|
@@ -164,19 +217,19 @@ class EventHandlingTests < Test::Unit::TestCase
|
|
|
164
217
|
win = TestFrame.new
|
|
165
218
|
assert_false(win.test_cmd_event)
|
|
166
219
|
assert_false(win.child.test_cmd_event)
|
|
167
|
-
Wx.post_event(win.child
|
|
220
|
+
Wx.post_event(win.child, TestCmdEvent.new)
|
|
168
221
|
Wx.get_app.yield
|
|
169
222
|
assert_false(win.test_cmd_event)
|
|
170
223
|
assert_true(win.child.test_cmd_event)
|
|
171
224
|
assert_false(win.child.test_client_data)
|
|
172
225
|
win.reset
|
|
173
|
-
Wx.post_event(win.child
|
|
226
|
+
Wx.post_event(win.child, TestCmdEvent.new(1))
|
|
174
227
|
Wx.get_app.yield
|
|
175
228
|
assert_true(win.test_cmd_event)
|
|
176
229
|
assert_true(win.child.test_cmd_event)
|
|
177
230
|
assert_true(win.child.test_client_data)
|
|
178
231
|
win.reset
|
|
179
|
-
Wx.post_event(win
|
|
232
|
+
Wx.post_event(win, TestCmdEvent.new)
|
|
180
233
|
Wx.get_app.yield
|
|
181
234
|
assert_true(win.test_cmd_event)
|
|
182
235
|
assert_false(win.child.test_cmd_event)
|
|
@@ -187,11 +240,11 @@ class EventHandlingTests < Test::Unit::TestCase
|
|
|
187
240
|
def test_call_after
|
|
188
241
|
win = TestFrame.new
|
|
189
242
|
assert(!win.called_after)
|
|
190
|
-
win.
|
|
243
|
+
win.call_after { win.called_after = true }
|
|
191
244
|
Wx.get_app.yield
|
|
192
245
|
assert(win.called_after)
|
|
193
246
|
win.reset
|
|
194
|
-
win.child.
|
|
247
|
+
win.child.call_after { win.called_after = true }
|
|
195
248
|
Wx.get_app.yield
|
|
196
249
|
assert(win.called_after)
|
|
197
250
|
win.destroy
|
|
@@ -201,31 +254,105 @@ class EventHandlingTests < Test::Unit::TestCase
|
|
|
201
254
|
def test_event_blocker
|
|
202
255
|
win = TestFrame.new
|
|
203
256
|
assert(!win.test_event)
|
|
204
|
-
win.
|
|
257
|
+
win.process_event(TestEvent.new)
|
|
205
258
|
assert(win.test_event)
|
|
206
259
|
win.reset
|
|
207
260
|
Wx::EventBlocker.blocked_for(win) do |blkr|
|
|
208
|
-
win.
|
|
261
|
+
win.process_event(TestEvent.new(1))
|
|
209
262
|
end
|
|
210
263
|
assert(!win.test_event)
|
|
211
|
-
win.
|
|
264
|
+
win.process_event(TestEvent.new)
|
|
212
265
|
assert(win.test_event)
|
|
213
266
|
win.reset
|
|
214
267
|
Wx::EventBlocker.blocked_for(win, TestEvent::EVT_TEST_EVENT) do |blkr|
|
|
215
|
-
win.
|
|
268
|
+
win.process_event(TestEvent.new(1))
|
|
216
269
|
end
|
|
217
270
|
assert(!win.test_event)
|
|
218
|
-
win.
|
|
271
|
+
win.process_event(TestEvent.new)
|
|
219
272
|
assert(win.test_event)
|
|
220
273
|
win.reset
|
|
221
274
|
Wx::EventBlocker.blocked_for(win, Wx::EVT_ACTIVATE) do |blkr|
|
|
222
|
-
win.
|
|
275
|
+
win.process_event(TestEvent.new(1))
|
|
223
276
|
end
|
|
224
277
|
assert(win.test_event)
|
|
225
278
|
win.destroy
|
|
226
279
|
Wx.get_app.yield
|
|
227
280
|
end
|
|
228
281
|
|
|
282
|
+
class MyEventHandler < Wx::EvtHandler
|
|
283
|
+
|
|
284
|
+
def initialize
|
|
285
|
+
super
|
|
286
|
+
@test_event = false
|
|
287
|
+
@test_cmd_event = false
|
|
288
|
+
evt_test_event :on_test_event
|
|
289
|
+
evt_test_cmd_event :on_test_cmd_event
|
|
290
|
+
end
|
|
291
|
+
|
|
292
|
+
attr_reader :test_event, :test_cmd_event
|
|
293
|
+
|
|
294
|
+
def on_test_event(_evt)
|
|
295
|
+
@test_event = true
|
|
296
|
+
end
|
|
297
|
+
|
|
298
|
+
def on_test_cmd_event(evt)
|
|
299
|
+
@test_cmd_event = true
|
|
300
|
+
end
|
|
301
|
+
end
|
|
302
|
+
|
|
303
|
+
class EventSnooper < Wx::EvtHandler
|
|
304
|
+
|
|
305
|
+
def initialize
|
|
306
|
+
super
|
|
307
|
+
@test_event = false
|
|
308
|
+
@test_cmd_event = false
|
|
309
|
+
evt_test_event :on_test_event
|
|
310
|
+
evt_test_cmd_event :on_test_cmd_event
|
|
311
|
+
end
|
|
312
|
+
|
|
313
|
+
attr_reader :test_event, :test_cmd_event
|
|
314
|
+
|
|
315
|
+
def on_test_event(_evt)
|
|
316
|
+
@test_event = true
|
|
317
|
+
end
|
|
318
|
+
|
|
319
|
+
def on_test_cmd_event(evt)
|
|
320
|
+
@test_cmd_event = true
|
|
321
|
+
evt.skip # make sure other handler(s) get this too
|
|
322
|
+
end
|
|
323
|
+
|
|
324
|
+
end
|
|
325
|
+
|
|
326
|
+
def test_chained_event_handler
|
|
327
|
+
snooper = EventSnooper.new
|
|
328
|
+
my_handler = MyEventHandler.new
|
|
329
|
+
snooper.set_next_handler(my_handler)
|
|
330
|
+
assert_false(my_handler.test_event)
|
|
331
|
+
assert_false(snooper.test_event)
|
|
332
|
+
snooper.process_event(TestEvent.new)
|
|
333
|
+
assert_false(my_handler.test_event)
|
|
334
|
+
assert_true(snooper.test_event)
|
|
335
|
+
end
|
|
336
|
+
|
|
337
|
+
def test_pushed_event_handler
|
|
338
|
+
win = TestFrame.new
|
|
339
|
+
snooper = EventSnooper.new
|
|
340
|
+
win.push_event_handler(snooper)
|
|
341
|
+
assert_false(win.test_event)
|
|
342
|
+
assert_false(snooper.test_event)
|
|
343
|
+
win.process_event(TestEvent.new)
|
|
344
|
+
assert_false(win.test_event)
|
|
345
|
+
assert_true(snooper.test_event)
|
|
346
|
+
win.reset
|
|
347
|
+
assert_false(win.test_cmd_event)
|
|
348
|
+
assert_false(snooper.test_cmd_event)
|
|
349
|
+
win.process_event(TestCmdEvent.new)
|
|
350
|
+
assert_true(win.test_cmd_event)
|
|
351
|
+
assert_true(snooper.test_cmd_event)
|
|
352
|
+
win.destroy
|
|
353
|
+
Wx.get_app.yield
|
|
354
|
+
end
|
|
355
|
+
|
|
229
356
|
class MyEventFilter < Wx::EventFilter
|
|
230
357
|
def initialize
|
|
231
358
|
super
|
|
@@ -245,16 +372,16 @@ class EventHandlingTests < Test::Unit::TestCase
|
|
|
245
372
|
assert_nothing_raised { Wx::EvtHandler.add_filter(filter) }
|
|
246
373
|
GC.start
|
|
247
374
|
win = TestFrame.new
|
|
248
|
-
win.child.
|
|
375
|
+
win.child.process_event(TestEvent.new)
|
|
249
376
|
GC.start
|
|
250
377
|
assert(filter.filtered)
|
|
251
378
|
filter.filtered = false
|
|
252
|
-
win.child.
|
|
379
|
+
win.child.process_event(TestCmdEvent.new)
|
|
253
380
|
GC.start
|
|
254
381
|
assert(!filter.filtered)
|
|
255
382
|
assert_nothing_raised { Wx::EvtHandler.remove_filter(filter) }
|
|
256
383
|
GC.start
|
|
257
|
-
win.child.
|
|
384
|
+
win.child.process_event(TestEvent.new)
|
|
258
385
|
assert(!filter.filtered)
|
|
259
386
|
GC.start
|
|
260
387
|
win.destroy
|
|
@@ -277,16 +404,16 @@ class EventHandlingTests < Test::Unit::TestCase
|
|
|
277
404
|
assert_nothing_raised { Wx::EvtHandler.add_filter(MyEventFilter2.new) }
|
|
278
405
|
GC.start
|
|
279
406
|
win = TestFrame.new
|
|
280
|
-
win.child.
|
|
407
|
+
win.child.process_event(TestEvent.new)
|
|
281
408
|
GC.start
|
|
282
409
|
assert(MyEventFilter2.filtered)
|
|
283
410
|
MyEventFilter2.filtered = false
|
|
284
|
-
win.child.
|
|
411
|
+
win.child.process_event(TestCmdEvent.new)
|
|
285
412
|
GC.start
|
|
286
413
|
assert(!MyEventFilter2.filtered)
|
|
287
414
|
assert_nothing_raised { Wx::EvtHandler.clear_filters }
|
|
288
415
|
GC.start
|
|
289
|
-
win.child.
|
|
416
|
+
win.child.process_event(TestEvent.new)
|
|
290
417
|
assert(!MyEventFilter2.filtered)
|
|
291
418
|
GC.start
|
|
292
419
|
win.destroy
|
metadata
CHANGED
|
@@ -1,14 +1,13 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: wxruby3
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.4.2
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Martin Corino
|
|
8
|
-
autorequire:
|
|
9
8
|
bindir: bin
|
|
10
9
|
cert_chain: []
|
|
11
|
-
date: 2024-
|
|
10
|
+
date: 2024-12-29 00:00:00.000000000 Z
|
|
12
11
|
dependencies:
|
|
13
12
|
- !ruby/object:Gem::Dependency
|
|
14
13
|
name: nokogiri
|
|
@@ -172,6 +171,7 @@ files:
|
|
|
172
171
|
- lib/wx/core/dataformat.rb
|
|
173
172
|
- lib/wx/core/datetime.rb
|
|
174
173
|
- lib/wx/core/dc.rb
|
|
174
|
+
- lib/wx/core/defs.rb
|
|
175
175
|
- lib/wx/core/dialog.rb
|
|
176
176
|
- lib/wx/core/enum.rb
|
|
177
177
|
- lib/wx/core/event.rb
|
|
@@ -204,6 +204,7 @@ files:
|
|
|
204
204
|
- lib/wx/core/menu.rb
|
|
205
205
|
- lib/wx/core/menu_bar.rb
|
|
206
206
|
- lib/wx/core/menuitem.rb
|
|
207
|
+
- lib/wx/core/module_ext.rb
|
|
207
208
|
- lib/wx/core/notebook.rb
|
|
208
209
|
- lib/wx/core/object.rb
|
|
209
210
|
- lib/wx/core/owner_drawn_combobox.rb
|
|
@@ -338,6 +339,7 @@ files:
|
|
|
338
339
|
- lib/wx/doc/system_settings.rb
|
|
339
340
|
- lib/wx/doc/text_validator.rb
|
|
340
341
|
- lib/wx/doc/textctrl.rb
|
|
342
|
+
- lib/wx/doc/tip_window.rb
|
|
341
343
|
- lib/wx/doc/top_level_window.rb
|
|
342
344
|
- lib/wx/doc/tree_ctrl.rb
|
|
343
345
|
- lib/wx/doc/tree_event.rb
|
|
@@ -666,6 +668,7 @@ files:
|
|
|
666
668
|
- rakelib/lib/director/time_picker_ctrl.rb
|
|
667
669
|
- rakelib/lib/director/timer.rb
|
|
668
670
|
- rakelib/lib/director/tip_provider.rb
|
|
671
|
+
- rakelib/lib/director/tip_window.rb
|
|
669
672
|
- rakelib/lib/director/toggle_button.rb
|
|
670
673
|
- rakelib/lib/director/tool_bar.rb
|
|
671
674
|
- rakelib/lib/director/tool_tip.rb
|
|
@@ -1206,8 +1209,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
1206
1209
|
- !ruby/object:Gem::Version
|
|
1207
1210
|
version: '0'
|
|
1208
1211
|
requirements: []
|
|
1209
|
-
rubygems_version: 3.
|
|
1210
|
-
signing_key:
|
|
1212
|
+
rubygems_version: 3.6.2
|
|
1211
1213
|
specification_version: 4
|
|
1212
1214
|
summary: wxWidgets extension for Ruby
|
|
1213
1215
|
test_files: []
|