wxruby3 1.2.1 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/ext/wxruby3/swig/custom/director.swg +6 -20
- data/lib/wx/core/animation.rb +35 -14
- data/lib/wx/core/choicedlg.rb +7 -10
- data/lib/wx/core/colour.rb +10 -0
- data/lib/wx/core/dialog.rb +2 -2
- data/lib/wx/core/event.rb +7 -0
- data/lib/wx/core/file_dialog.rb +25 -0
- data/lib/wx/core/gdi_object.rb +24 -0
- data/lib/wx/core/object.rb +26 -11
- data/lib/wx/core/variant.rb +108 -51
- data/lib/wx/doc/colour.rb +12 -0
- data/lib/wx/doc/evthandler.rb +6 -0
- data/lib/wx/doc/functions.rb +35 -3
- data/lib/wx/doc/gdi_object.rb +22 -0
- data/lib/wx/doc/object.rb +24 -0
- data/lib/wx/doc/variant.rb +8 -0
- data/lib/wx/helpers.rb +2 -3
- data/lib/wx/keyword_defs.rb +7 -0
- data/lib/wx/version.rb +1 -1
- data/rakelib/lib/config.rb +1 -1
- data/rakelib/lib/core/include/funcall.inc +9 -24
- data/rakelib/lib/core/include/swigdirector.inc +29 -11
- data/rakelib/lib/director/animation_ctrl.rb +6 -0
- data/rakelib/lib/director/defs.rb +3 -0
- data/rakelib/lib/director/dialog.rb +15 -7
- data/rakelib/lib/director/file_dialog_customize_hook.rb +77 -1
- data/rakelib/lib/director/functions.rb +0 -12
- data/rakelib/lib/director/validator.rb +7 -42
- data/rakelib/lib/generate/doc/credential_entry_dialog.yaml +10 -0
- data/rakelib/lib/generate/doc/generic_about_dialog.yaml +46 -0
- data/rakelib/lib/specs/interfaces.rb +2 -0
- data/rakelib/lib/swig_runner.rb +6 -3
- data/rakelib/lib/util/string.rb +7 -6
- data/samples/animate/anitest.rb +13 -9
- data/tests/lib/leaked_overload_exception_test.rb +25 -0
- data/tests/lib/leaked_process_event_exception_test.rb +33 -0
- data/tests/lib/leaked_queued_event_exception_test.rb +34 -0
- data/tests/lib/overload_type_exception_test.rb +25 -0
- data/tests/test_exceptions.rb +24 -24
- metadata +11 -2
@@ -0,0 +1,25 @@
|
|
1
|
+
# Copyright (c) 2023 M.J.N. Corino, The Netherlands
|
2
|
+
#
|
3
|
+
# This software is released under the MIT license.
|
4
|
+
|
5
|
+
require_relative './wxframe_runner'
|
6
|
+
|
7
|
+
class DirectorTypeExceptionTests < WxRuby::Test::GUITests
|
8
|
+
|
9
|
+
class InvalidOutputSizer < Wx::BoxSizer
|
10
|
+
|
11
|
+
def calc_min
|
12
|
+
nil #Wx::Point.new(1,1) # expects Wx::Size
|
13
|
+
end
|
14
|
+
|
15
|
+
end
|
16
|
+
|
17
|
+
def test_invalid_output
|
18
|
+
szr = InvalidOutputSizer.new(Wx::Orientation::VERTICAL)
|
19
|
+
szr.add(Wx::Button.new(frame_win, name: 'button'), Wx::Direction::TOP)
|
20
|
+
frame_win.sizer = szr
|
21
|
+
frame_win.layout
|
22
|
+
frame_win.sizer = nil
|
23
|
+
end
|
24
|
+
|
25
|
+
end
|
data/tests/test_exceptions.rb
CHANGED
@@ -2,40 +2,40 @@
|
|
2
2
|
#
|
3
3
|
# This software is released under the MIT license.
|
4
4
|
|
5
|
-
|
5
|
+
require 'test/unit'
|
6
|
+
require 'plat4m'
|
7
|
+
require 'open3'
|
6
8
|
|
7
|
-
class DirectorExceptionTests <
|
9
|
+
class DirectorExceptionTests < Test::Unit::TestCase
|
8
10
|
|
9
|
-
|
11
|
+
# Path to the currently running Ruby program
|
12
|
+
RUBY = ENV["RUBY"] || File.join(
|
13
|
+
RbConfig::CONFIG["bindir"],
|
14
|
+
RbConfig::CONFIG["ruby_install_name"] + RbConfig::CONFIG["EXEEXT"]).
|
15
|
+
sub(/.*\s.*/m, '"\&"')
|
10
16
|
|
11
|
-
|
12
|
-
|
13
|
-
|
17
|
+
OPTS = {
|
18
|
+
:err => (Plat4m.current.windows? ? 'NULL' : '/dev/null'), :out => (Plat4m.current.windows? ? 'NULL' : '/dev/null'),
|
19
|
+
}
|
14
20
|
|
21
|
+
def test_invalid_overload_type
|
22
|
+
assert_false(Kernel.system(RUBY, File.join(__dir__, 'lib/overload_type_exception_test.rb'), **OPTS))
|
23
|
+
assert_equal(254, $?.exitstatus)
|
15
24
|
end
|
16
25
|
|
17
|
-
def
|
18
|
-
|
19
|
-
|
20
|
-
frame_win.sizer = szr
|
21
|
-
assert_raise_kind_of(TypeError) { frame_win.layout }
|
22
|
-
frame_win.sizer = nil
|
26
|
+
def test_leaked_exception_in_overload
|
27
|
+
assert_false(Kernel.system(RUBY, File.join(__dir__, 'lib/leaked_overload_exception_test.rb'), **OPTS))
|
28
|
+
assert_equal(255, $?.exitstatus)
|
23
29
|
end
|
24
30
|
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
raise RuntimeError, 'AnyThing'
|
29
|
-
end
|
30
|
-
|
31
|
+
def test_leaked_process_event_handling_exception
|
32
|
+
assert_false(Kernel.system(RUBY, File.join(__dir__, 'lib/leaked_process_event_exception_test.rb'), **OPTS))
|
33
|
+
assert_equal(1, $?.exitstatus)
|
31
34
|
end
|
32
35
|
|
33
|
-
def
|
34
|
-
|
35
|
-
|
36
|
-
frame_win.sizer = szr
|
37
|
-
assert_raise_kind_of(RuntimeError) { frame_win.layout }
|
38
|
-
frame_win.sizer = nil
|
36
|
+
def test_leaked_queued_event_handling_exception
|
37
|
+
assert_false(Kernel.system(RUBY, File.join(__dir__, 'lib/leaked_queued_event_exception_test.rb'), **OPTS))
|
38
|
+
assert_equal(1, $?.exitstatus)
|
39
39
|
end
|
40
40
|
|
41
41
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wxruby3
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.3.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Martin Corino
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-10-15 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: nokogiri
|
@@ -184,6 +184,7 @@ files:
|
|
184
184
|
- lib/wx/core/font.rb
|
185
185
|
- lib/wx/core/functions.rb
|
186
186
|
- lib/wx/core/gauge.rb
|
187
|
+
- lib/wx/core/gdi_object.rb
|
187
188
|
- lib/wx/core/generic_validator.rb
|
188
189
|
- lib/wx/core/genericdirctrl.rb
|
189
190
|
- lib/wx/core/geometry.rb
|
@@ -276,6 +277,7 @@ files:
|
|
276
277
|
- lib/wx/doc/functions.rb
|
277
278
|
- lib/wx/doc/gc_dc.rb
|
278
279
|
- lib/wx/doc/gdi_common.rb
|
280
|
+
- lib/wx/doc/gdi_object.rb
|
279
281
|
- lib/wx/doc/generic_validator.rb
|
280
282
|
- lib/wx/doc/geometry.rb
|
281
283
|
- lib/wx/doc/graphics_context.rb
|
@@ -294,6 +296,7 @@ files:
|
|
294
296
|
- lib/wx/doc/mirror_dc.rb
|
295
297
|
- lib/wx/doc/notebook.rb
|
296
298
|
- lib/wx/doc/num_validator.rb
|
299
|
+
- lib/wx/doc/object.rb
|
297
300
|
- lib/wx/doc/owner_drawn_combobox.rb
|
298
301
|
- lib/wx/doc/pen.rb
|
299
302
|
- lib/wx/doc/persistence_manager.rb
|
@@ -707,6 +710,7 @@ files:
|
|
707
710
|
- rakelib/lib/generate/doc/combo_ctrl.yaml
|
708
711
|
- rakelib/lib/generate/doc/context_help_button.yaml
|
709
712
|
- rakelib/lib/generate/doc/control.yaml
|
713
|
+
- rakelib/lib/generate/doc/credential_entry_dialog.yaml
|
710
714
|
- rakelib/lib/generate/doc/cursor.yaml
|
711
715
|
- rakelib/lib/generate/doc/data_object.yaml
|
712
716
|
- rakelib/lib/generate/doc/dc.yaml
|
@@ -723,6 +727,7 @@ files:
|
|
723
727
|
- rakelib/lib/generate/doc/frame.yaml
|
724
728
|
- rakelib/lib/generate/doc/fs_file.yaml
|
725
729
|
- rakelib/lib/generate/doc/gdi_common.yaml
|
730
|
+
- rakelib/lib/generate/doc/generic_about_dialog.yaml
|
726
731
|
- rakelib/lib/generate/doc/graphics_context.yaml
|
727
732
|
- rakelib/lib/generate/doc/graphics_object.yaml
|
728
733
|
- rakelib/lib/generate/doc/grid_cell_attr.yaml
|
@@ -1110,6 +1115,10 @@ files:
|
|
1110
1115
|
- tests/art/test_art/image/wxruby.png
|
1111
1116
|
- tests/art/test_art/sample2.xpm
|
1112
1117
|
- tests/lib/item_container_tests.rb
|
1118
|
+
- tests/lib/leaked_overload_exception_test.rb
|
1119
|
+
- tests/lib/leaked_process_event_exception_test.rb
|
1120
|
+
- tests/lib/leaked_queued_event_exception_test.rb
|
1121
|
+
- tests/lib/overload_type_exception_test.rb
|
1113
1122
|
- tests/lib/text_entry_tests.rb
|
1114
1123
|
- tests/lib/wxapp_runner.rb
|
1115
1124
|
- tests/lib/wxframe_runner.rb
|