wxruby3 0.9.7 → 1.0.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.
Files changed (184) hide show
  1. checksums.yaml +4 -4
  2. data/INSTALL.md +183 -42
  3. data/README.md +40 -48
  4. data/ext/mkrf_conf_ext.rb +72 -0
  5. data/lib/wx/core/app.rb +16 -0
  6. data/lib/wx/core/colour.rb +36 -28
  7. data/lib/wx/core/const.rb +19 -0
  8. data/lib/wx/core/enum.rb +17 -1
  9. data/lib/wx/core/geometry.rb +121 -0
  10. data/lib/wx/core/graphics_pen_info.rb +18 -0
  11. data/lib/wx/core/image.rb +49 -0
  12. data/lib/wx/core/menu_bar.rb +11 -0
  13. data/lib/wx/core/paintdc.rb +9 -3
  14. data/lib/wx/core/secret_store.rb +38 -0
  15. data/lib/wx/doc/app.rb +97 -41
  16. data/lib/wx/doc/bitmap.rb +4 -0
  17. data/lib/wx/doc/client_dc.rb +2 -2
  18. data/lib/wx/doc/clipboard.rb +1 -1
  19. data/lib/wx/doc/colour.rb +12 -0
  20. data/lib/wx/doc/const.rb +16 -0
  21. data/lib/wx/doc/cursor.rb +4 -0
  22. data/lib/wx/doc/dc_overlay.rb +34 -0
  23. data/lib/wx/doc/enum.rb +7 -1
  24. data/lib/wx/doc/event_blocker.rb +1 -1
  25. data/lib/wx/doc/evthandler.rb +25 -3
  26. data/lib/wx/doc/functions.rb +3 -6
  27. data/lib/wx/doc/gc_dc.rb +13 -4
  28. data/lib/wx/doc/geometry.rb +136 -0
  29. data/lib/wx/doc/graphics_context.rb +25 -7
  30. data/lib/wx/doc/icon.rb +4 -0
  31. data/lib/wx/doc/image.rb +56 -0
  32. data/lib/wx/doc/list_ctrl.rb +6 -6
  33. data/lib/wx/doc/memory_dc.rb +2 -11
  34. data/lib/wx/doc/mirror_dc.rb +1 -1
  35. data/lib/wx/doc/pen.rb +26 -0
  36. data/lib/wx/doc/persistence_manager.rb +1 -1
  37. data/lib/wx/doc/persistent_object.rb +1 -1
  38. data/lib/wx/doc/pg/property_grid_interface.rb +3 -3
  39. data/lib/wx/doc/prt/printer_dc.rb +2 -2
  40. data/lib/wx/doc/region_iterator.rb +1 -1
  41. data/lib/wx/doc/scaled_dc.rb +1 -1
  42. data/lib/wx/doc/screen_dc.rb +1 -1
  43. data/lib/wx/doc/secret_store.rb +55 -0
  44. data/lib/wx/doc/svg_file_dc.rb +1 -1
  45. data/lib/wx/doc/textctrl.rb +1 -1
  46. data/lib/wx/doc/tree_ctrl.rb +2 -2
  47. data/lib/wx/doc/validator.rb +6 -6
  48. data/lib/wx/doc/variant.rb +2 -2
  49. data/lib/wx/doc/window.rb +5 -4
  50. data/lib/wx/grid/keyword_defs.rb +1 -1
  51. data/lib/wx/html/keyword_defs.rb +3 -3
  52. data/lib/wx/keyword_defs.rb +76 -71
  53. data/lib/wx/pg/keyword_defs.rb +2 -2
  54. data/lib/wx/pg/pg_property.rb +12 -0
  55. data/lib/wx/rbn/keyword_defs.rb +1 -1
  56. data/lib/wx/rtc/keyword_defs.rb +1 -1
  57. data/lib/wx/stc/keyword_defs.rb +1 -1
  58. data/lib/wx/version.rb +1 -1
  59. data/lib/wx/wxruby/base.rb +3 -5
  60. data/lib/wx/wxruby/cmd/check.rb +182 -0
  61. data/lib/wx/wxruby/cmd/sampler.rb +1 -1
  62. data/lib/wx/wxruby/cmd/setup.rb +9 -3
  63. data/lib/wx/wxruby/cmd/test.rb +1 -1
  64. data/rakelib/configure.rb +67 -52
  65. data/rakelib/gem.rake +97 -66
  66. data/rakelib/gem.rb +294 -41
  67. data/rakelib/install.rb +3 -3
  68. data/rakelib/lib/config/{cygwin.rb → freebsd.rb} +1 -1
  69. data/rakelib/lib/config/linux.rb +4 -2
  70. data/rakelib/lib/config/macosx.rb +42 -11
  71. data/rakelib/lib/config/mingw.rb +2 -2
  72. data/rakelib/lib/config/pkgman/{base.rb → linux.rb} +36 -61
  73. data/rakelib/lib/config/pkgman/macosx.rb +17 -78
  74. data/rakelib/lib/config/unixish.rb +17 -8
  75. data/rakelib/lib/config/{netbsd.rb → unknown.rb} +3 -2
  76. data/rakelib/lib/config.rb +74 -33
  77. data/rakelib/lib/core/include/enum.inc +31 -1
  78. data/rakelib/lib/director/affine_matrix.rb +51 -0
  79. data/rakelib/lib/director/app.rb +29 -13
  80. data/rakelib/lib/director/art_provider.rb +4 -0
  81. data/rakelib/lib/director/aui_manager.rb +1 -1
  82. data/rakelib/lib/director/cursor.rb +6 -2
  83. data/rakelib/lib/director/dc.rb +1 -6
  84. data/rakelib/lib/director/derived_dc.rb +88 -31
  85. data/rakelib/lib/director/geometry.rb +142 -0
  86. data/rakelib/lib/director/graphics_context.rb +3 -2
  87. data/rakelib/lib/director/graphics_object.rb +18 -25
  88. data/rakelib/lib/director/grid_ctrl.rb +2 -2
  89. data/rakelib/lib/director/image.rb +59 -0
  90. data/rakelib/lib/director/menu.rb +2 -3
  91. data/rakelib/lib/director/menu_bar.rb +0 -3
  92. data/rakelib/lib/director/pen.rb +1 -1
  93. data/rakelib/lib/director/richtext_composite_object.rb +2 -4
  94. data/rakelib/lib/director/richtext_ctrl.rb +1 -1
  95. data/rakelib/lib/director/secret_store.rb +117 -0
  96. data/rakelib/lib/director/system_settings.rb +1 -1
  97. data/rakelib/lib/director/tree_event.rb +2 -2
  98. data/rakelib/lib/director/window.rb +4 -3
  99. data/rakelib/lib/extractor/function.rb +1 -1
  100. data/rakelib/lib/generate/doc/animation_ctrl.yaml +10 -0
  101. data/rakelib/lib/generate/doc/banner_window.yaml +35 -0
  102. data/rakelib/lib/generate/doc/graphics_context.yaml +12 -0
  103. data/rakelib/lib/generate/doc/graphics_object.yaml +12 -0
  104. data/rakelib/lib/generate/doc/grid_ctrl.yaml +25 -0
  105. data/rakelib/lib/generate/doc/header_ctrl.yaml +91 -0
  106. data/rakelib/lib/generate/doc/icon.yaml +10 -0
  107. data/rakelib/lib/generate/doc/info_bar.yaml +27 -0
  108. data/rakelib/lib/generate/doc/log.yaml +1 -1
  109. data/rakelib/lib/generate/doc/media_ctrl.yaml +27 -0
  110. data/rakelib/lib/generate/doc/persistent_window.yaml +22 -0
  111. data/rakelib/lib/generate/doc/pg_editor.yaml +1 -1
  112. data/rakelib/lib/generate/doc/pg_property.yaml +4 -4
  113. data/rakelib/lib/generate/doc/rearrange_list.yaml +14 -0
  114. data/rakelib/lib/generate/doc/ribbon_panel.yaml +15 -0
  115. data/rakelib/lib/generate/doc/rich_text_formatting_dialog.yaml +26 -0
  116. data/rakelib/lib/generate/doc/secret_store.yaml +55 -0
  117. data/rakelib/lib/generate/doc/text_ctrl.yaml +1 -1
  118. data/rakelib/lib/generate/doc/wizard.yaml +27 -0
  119. data/rakelib/lib/generate/doc.rb +5 -5
  120. data/rakelib/lib/generate/interface.rb +1 -1
  121. data/rakelib/lib/specs/interfaces.rb +4 -0
  122. data/rakelib/lib/swig_runner.rb +24 -3
  123. data/rakelib/lib/typemap/common.rb +10 -0
  124. data/rakelib/lib/typemap/points_list.rb +8 -2
  125. data/rakelib/lib/typemap/richtext.rb +17 -0
  126. data/rakelib/prepost.rake +8 -1
  127. data/rakelib/yard/templates/default/fulldoc/html/css/wxruby3.css +4 -0
  128. data/rakelib/yard/templates/default/fulldoc/html/setup.rb +3 -3
  129. data/samples/dialogs/wizard.rb +20 -19
  130. data/samples/drawing/art/drawing/image.bmp +0 -0
  131. data/samples/drawing/art/drawing/mask.bmp +0 -0
  132. data/samples/drawing/art/drawing/pat35.bmp +0 -0
  133. data/samples/drawing/art/drawing/pat36.bmp +0 -0
  134. data/samples/drawing/art/drawing/pat4.bmp +0 -0
  135. data/samples/drawing/art/drawing/smile.xpm +42 -0
  136. data/samples/drawing/drawing.rb +2276 -0
  137. data/samples/drawing/tn_drawing.png +0 -0
  138. data/samples/html/html.rb +1 -1
  139. data/samples/propgrid/propgrid.rb +1 -1
  140. data/samples/propgrid/propgrid_minimal.rb +1 -1
  141. data/samples/propgrid/sample_props.rb +1 -1
  142. data/samples/sampler/editor.rb +13 -11
  143. data/samples/sampler/sample.rb +2 -0
  144. data/samples/sampler.rb +14 -10
  145. data/samples/text/richtext.rb +53 -0
  146. data/samples/text/scintilla.rb +1 -1
  147. data/samples/text/unicode.rb +4 -4
  148. data/tests/lib/wxapp_runner.rb +1 -1
  149. data/tests/test_config.rb +7 -4
  150. data/tests/test_ext_controls.rb +12 -5
  151. data/tests/test_secret_store.rb +83 -0
  152. data/tests/test_std_controls.rb +12 -12
  153. metadata +66 -47
  154. data/lib/wx/doc/extra/00_starting.md +0 -154
  155. data/lib/wx/doc/extra/01_packages.md +0 -180
  156. data/lib/wx/doc/extra/02_lifecycles.md +0 -166
  157. data/lib/wx/doc/extra/03_dialogs.md +0 -57
  158. data/lib/wx/doc/extra/04_enums.md +0 -143
  159. data/lib/wx/doc/extra/05_event-handling.md +0 -191
  160. data/lib/wx/doc/extra/06_geometry.md +0 -62
  161. data/lib/wx/doc/extra/07_colour_and_font.md +0 -52
  162. data/lib/wx/doc/extra/08_extensions.md +0 -144
  163. data/lib/wx/doc/extra/09_exceptions.md +0 -54
  164. data/lib/wx/doc/extra/10_art.md +0 -111
  165. data/lib/wx/doc/extra/11_drawing_and_dc.md +0 -62
  166. data/lib/wx/doc/extra/12_client_data.md +0 -89
  167. data/lib/wx/doc/extra/13_validators.md +0 -139
  168. data/lib/wx/doc/extra/14_config.md +0 -101
  169. data/lib/wx/doc/extra/15_persistence.md +0 -148
  170. data/rakefile +0 -14
  171. data/rakelib/lib/config/pkgman/arch.rb +0 -53
  172. data/rakelib/lib/config/pkgman/debian.rb +0 -66
  173. data/rakelib/lib/config/pkgman/rhel.rb +0 -54
  174. data/rakelib/lib/config/pkgman/suse.rb +0 -54
  175. data/samples/sampler/back.xpm +0 -21
  176. data/samples/sampler/copy.xpm +0 -44
  177. data/samples/sampler/cut.xpm +0 -46
  178. data/samples/sampler/filesave.xpm +0 -42
  179. data/samples/sampler/find.xpm +0 -62
  180. data/samples/sampler/findrepl.xpm +0 -63
  181. data/samples/sampler/forward.xpm +0 -21
  182. data/samples/sampler/paste.xpm +0 -46
  183. data/samples/sampler/redo.xpm +0 -58
  184. data/samples/sampler/undo.xpm +0 -58
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: 0.9.7
4
+ version: 1.0.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-02-05 00:00:00.000000000 Z
11
+ date: 2024-05-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: nokogiri
@@ -66,12 +66,27 @@ dependencies:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: '3.5'
69
+ - !ruby/object:Gem::Dependency
70
+ name: plat4m
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '1.0'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '1.0'
69
83
  description: wxRuby3 is a Ruby library providing an extension for the wxWidgets C++
70
84
  UI framework
71
85
  email: mcorino@m2c-software.nl
72
86
  executables:
73
87
  - wxruby
74
- extensions: []
88
+ extensions:
89
+ - ext/mkrf_conf_ext.rb
75
90
  extra_rdoc_files: []
76
91
  files:
77
92
  - ".yardopts"
@@ -95,6 +110,7 @@ files:
95
110
  - assets/logo.xcf
96
111
  - assets/repo-social-preview.png
97
112
  - bin/wxruby
113
+ - ext/mkrf_conf_ext.rb
98
114
  - ext/wxruby3/include/wxRubyApp.h
99
115
  - ext/wxruby3/include/wxruby-ClientData.h
100
116
  - ext/wxruby3/include/wxruby-ComboPopup.h
@@ -170,6 +186,8 @@ files:
170
186
  - lib/wx/core/gauge.rb
171
187
  - lib/wx/core/generic_validator.rb
172
188
  - lib/wx/core/genericdirctrl.rb
189
+ - lib/wx/core/geometry.rb
190
+ - lib/wx/core/graphics_pen_info.rb
173
191
  - lib/wx/core/hboxsizer.rb
174
192
  - lib/wx/core/helpcontroller.rb
175
193
  - lib/wx/core/helpcontrollerhelpprovider.rb
@@ -199,6 +217,7 @@ files:
199
217
  - lib/wx/core/real_point.rb
200
218
  - lib/wx/core/rect.rb
201
219
  - lib/wx/core/region_iterator.rb
220
+ - lib/wx/core/secret_store.rb
202
221
  - lib/wx/core/simplehelpprovider.rb
203
222
  - lib/wx/core/size.rb
204
223
  - lib/wx/core/sizer.rb
@@ -231,6 +250,7 @@ files:
231
250
  - lib/wx/doc/busy_info.rb
232
251
  - lib/wx/doc/client_dc.rb
233
252
  - lib/wx/doc/clipboard.rb
253
+ - lib/wx/doc/colour.rb
234
254
  - lib/wx/doc/colour_dialog.rb
235
255
  - lib/wx/doc/comboctrl.rb
236
256
  - lib/wx/doc/config.rb
@@ -242,6 +262,7 @@ files:
242
262
  - lib/wx/doc/date_picker_ctrl.rb
243
263
  - lib/wx/doc/datetime.rb
244
264
  - lib/wx/doc/dc.rb
265
+ - lib/wx/doc/dc_overlay.rb
245
266
  - lib/wx/doc/editable_listbox.rb
246
267
  - lib/wx/doc/enum.rb
247
268
  - lib/wx/doc/event.rb
@@ -249,28 +270,13 @@ files:
249
270
  - lib/wx/doc/event_loop.rb
250
271
  - lib/wx/doc/events.rb
251
272
  - lib/wx/doc/evthandler.rb
252
- - lib/wx/doc/extra/00_starting.md
253
- - lib/wx/doc/extra/01_packages.md
254
- - lib/wx/doc/extra/02_lifecycles.md
255
- - lib/wx/doc/extra/03_dialogs.md
256
- - lib/wx/doc/extra/04_enums.md
257
- - lib/wx/doc/extra/05_event-handling.md
258
- - lib/wx/doc/extra/06_geometry.md
259
- - lib/wx/doc/extra/07_colour_and_font.md
260
- - lib/wx/doc/extra/08_extensions.md
261
- - lib/wx/doc/extra/09_exceptions.md
262
- - lib/wx/doc/extra/10_art.md
263
- - lib/wx/doc/extra/11_drawing_and_dc.md
264
- - lib/wx/doc/extra/12_client_data.md
265
- - lib/wx/doc/extra/13_validators.md
266
- - lib/wx/doc/extra/14_config.md
267
- - lib/wx/doc/extra/15_persistence.md
268
273
  - lib/wx/doc/font.rb
269
274
  - lib/wx/doc/font_data.rb
270
275
  - lib/wx/doc/functions.rb
271
276
  - lib/wx/doc/gc_dc.rb
272
277
  - lib/wx/doc/gdi_common.rb
273
278
  - lib/wx/doc/generic_validator.rb
279
+ - lib/wx/doc/geometry.rb
274
280
  - lib/wx/doc/graphics_context.rb
275
281
  - lib/wx/doc/grid/grid.rb
276
282
  - lib/wx/doc/hboxsizer.rb
@@ -318,6 +324,7 @@ files:
318
324
  - lib/wx/doc/rtc/richtext_style_sheet.rb
319
325
  - lib/wx/doc/scaled_dc.rb
320
326
  - lib/wx/doc/screen_dc.rb
327
+ - lib/wx/doc/secret_store.rb
321
328
  - lib/wx/doc/sizer.rb
322
329
  - lib/wx/doc/static_bitmap.rb
323
330
  - lib/wx/doc/stc/styled_text_ctrl.rb
@@ -395,10 +402,10 @@ files:
395
402
  - lib/wx/stc/styled_text_ctrl.rb
396
403
  - lib/wx/version.rb
397
404
  - lib/wx/wxruby/base.rb
405
+ - lib/wx/wxruby/cmd/check.rb
398
406
  - lib/wx/wxruby/cmd/sampler.rb
399
407
  - lib/wx/wxruby/cmd/setup.rb
400
408
  - lib/wx/wxruby/cmd/test.rb
401
- - rakefile
402
409
  - rakelib/bin.rake
403
410
  - rakelib/bin.rb
404
411
  - rakelib/build.rake
@@ -412,18 +419,14 @@ files:
412
419
  - rakelib/install.rake
413
420
  - rakelib/install.rb
414
421
  - rakelib/lib/config.rb
415
- - rakelib/lib/config/cygwin.rb
422
+ - rakelib/lib/config/freebsd.rb
416
423
  - rakelib/lib/config/linux.rb
417
424
  - rakelib/lib/config/macosx.rb
418
425
  - rakelib/lib/config/mingw.rb
419
- - rakelib/lib/config/netbsd.rb
420
- - rakelib/lib/config/pkgman/arch.rb
421
- - rakelib/lib/config/pkgman/base.rb
422
- - rakelib/lib/config/pkgman/debian.rb
426
+ - rakelib/lib/config/pkgman/linux.rb
423
427
  - rakelib/lib/config/pkgman/macosx.rb
424
- - rakelib/lib/config/pkgman/rhel.rb
425
- - rakelib/lib/config/pkgman/suse.rb
426
428
  - rakelib/lib/config/unixish.rb
429
+ - rakelib/lib/config/unknown.rb
427
430
  - rakelib/lib/core/include/client_data.inc
428
431
  - rakelib/lib/core/include/enum.inc
429
432
  - rakelib/lib/core/include/funcall.inc
@@ -441,6 +444,7 @@ files:
441
444
  - rakelib/lib/director/about_dialog_info.rb
442
445
  - rakelib/lib/director/accelerator.rb
443
446
  - rakelib/lib/director/accessible.rb
447
+ - rakelib/lib/director/affine_matrix.rb
444
448
  - rakelib/lib/director/animation.rb
445
449
  - rakelib/lib/director/animation_ctrl.rb
446
450
  - rakelib/lib/director/any_button.rb
@@ -526,6 +530,7 @@ files:
526
530
  - rakelib/lib/director/gdi_object.rb
527
531
  - rakelib/lib/director/gdicommon.rb
528
532
  - rakelib/lib/director/generic_dirctrl.rb
533
+ - rakelib/lib/director/geometry.rb
529
534
  - rakelib/lib/director/graphics_context.rb
530
535
  - rakelib/lib/director/graphics_object.rb
531
536
  - rakelib/lib/director/grid_cell_attr.rb
@@ -633,6 +638,7 @@ files:
633
638
  - rakelib/lib/director/scroll_bar.rb
634
639
  - rakelib/lib/director/scrolled_t.rb
635
640
  - rakelib/lib/director/searchctrl.rb
641
+ - rakelib/lib/director/secret_store.rb
636
642
  - rakelib/lib/director/sizer.rb
637
643
  - rakelib/lib/director/sizer_item.rb
638
644
  - rakelib/lib/director/slider.rb
@@ -688,6 +694,7 @@ files:
688
694
  - rakelib/lib/generate/doc/animation_ctrl.yaml
689
695
  - rakelib/lib/generate/doc/art_provider.yaml
690
696
  - rakelib/lib/generate/doc/aui_manager.yaml
697
+ - rakelib/lib/generate/doc/banner_window.yaml
691
698
  - rakelib/lib/generate/doc/bitmap.yaml
692
699
  - rakelib/lib/generate/doc/box_sizer.yaml
693
700
  - rakelib/lib/generate/doc/busy_info.yaml
@@ -715,9 +722,11 @@ files:
715
722
  - rakelib/lib/generate/doc/fs_file.yaml
716
723
  - rakelib/lib/generate/doc/gdi_common.yaml
717
724
  - rakelib/lib/generate/doc/graphics_context.yaml
725
+ - rakelib/lib/generate/doc/graphics_object.yaml
718
726
  - rakelib/lib/generate/doc/grid_cell_attr.yaml
719
727
  - rakelib/lib/generate/doc/grid_ctrl.yaml
720
728
  - rakelib/lib/generate/doc/gui_event_loop.yaml
729
+ - rakelib/lib/generate/doc/header_ctrl.yaml
721
730
  - rakelib/lib/generate/doc/help_controller.yaml
722
731
  - rakelib/lib/generate/doc/html_cell.yaml
723
732
  - rakelib/lib/generate/doc/html_help_controller.yaml
@@ -725,11 +734,13 @@ files:
725
734
  - rakelib/lib/generate/doc/html_window.yaml
726
735
  - rakelib/lib/generate/doc/icon.yaml
727
736
  - rakelib/lib/generate/doc/image.yaml
737
+ - rakelib/lib/generate/doc/info_bar.yaml
728
738
  - rakelib/lib/generate/doc/keyboard_state.yaml
729
739
  - rakelib/lib/generate/doc/list_ctrl.yaml
730
740
  - rakelib/lib/generate/doc/locale.yaml
731
741
  - rakelib/lib/generate/doc/log.yaml
732
742
  - rakelib/lib/generate/doc/mdi_frame.yaml
743
+ - rakelib/lib/generate/doc/media_ctrl.yaml
733
744
  - rakelib/lib/generate/doc/memory_dc.yaml
734
745
  - rakelib/lib/generate/doc/menu.yaml
735
746
  - rakelib/lib/generate/doc/menu_item.yaml
@@ -738,6 +749,7 @@ files:
738
749
  - rakelib/lib/generate/doc/notebook.yaml
739
750
  - rakelib/lib/generate/doc/panel.yaml
740
751
  - rakelib/lib/generate/doc/pen.yaml
752
+ - rakelib/lib/generate/doc/persistent_window.yaml
741
753
  - rakelib/lib/generate/doc/pg_editor.yaml
742
754
  - rakelib/lib/generate/doc/pg_multi_button.yaml
743
755
  - rakelib/lib/generate/doc/pg_properties.yaml
@@ -748,11 +760,15 @@ files:
748
760
  - rakelib/lib/generate/doc/property_grid_interface.yaml
749
761
  - rakelib/lib/generate/doc/property_grid_manager.yaml
750
762
  - rakelib/lib/generate/doc/property_sheet_dialog.yaml
763
+ - rakelib/lib/generate/doc/rearrange_list.yaml
764
+ - rakelib/lib/generate/doc/ribbon_panel.yaml
765
+ - rakelib/lib/generate/doc/rich_text_formatting_dialog.yaml
751
766
  - rakelib/lib/generate/doc/rich_text_html_handler.yaml
752
767
  - rakelib/lib/generate/doc/scroll_bar.yaml
753
768
  - rakelib/lib/generate/doc/scrolled_canvas.yaml
754
769
  - rakelib/lib/generate/doc/scrolled_control.yaml
755
770
  - rakelib/lib/generate/doc/scrolled_window.yaml
771
+ - rakelib/lib/generate/doc/secret_store.yaml
756
772
  - rakelib/lib/generate/doc/sizer.yaml
757
773
  - rakelib/lib/generate/doc/splash_screen.yaml
758
774
  - rakelib/lib/generate/doc/static_box.yaml
@@ -769,6 +785,7 @@ files:
769
785
  - rakelib/lib/generate/doc/validator.yaml
770
786
  - rakelib/lib/generate/doc/variant.yaml
771
787
  - rakelib/lib/generate/doc/window.yaml
788
+ - rakelib/lib/generate/doc/wizard.yaml
772
789
  - rakelib/lib/generate/doc/wizard_page_simple.yaml
773
790
  - rakelib/lib/generate/doc/xml_node.yaml
774
791
  - rakelib/lib/generate/doc/xml_resource.yaml
@@ -829,8 +846,15 @@ files:
829
846
  - samples/dragdrop/dragdrop.rb
830
847
  - samples/dragdrop/tn_dragdrop.png
831
848
  - samples/drawing/SVGlogo24.xpm
849
+ - samples/drawing/art/drawing/image.bmp
850
+ - samples/drawing/art/drawing/mask.bmp
851
+ - samples/drawing/art/drawing/pat35.bmp
852
+ - samples/drawing/art/drawing/pat36.bmp
853
+ - samples/drawing/art/drawing/pat4.bmp
854
+ - samples/drawing/art/drawing/smile.xpm
832
855
  - samples/drawing/bitmap.rb
833
856
  - samples/drawing/bitmap_image.rb
857
+ - samples/drawing/drawing.rb
834
858
  - samples/drawing/graphics_drawing.rb
835
859
  - samples/drawing/image_prt.rb
836
860
  - samples/drawing/maths_images.rb
@@ -838,6 +862,7 @@ files:
838
862
  - samples/drawing/ruby-logo.jpg
839
863
  - samples/drawing/tn_bitmap.png
840
864
  - samples/drawing/tn_bitmap_image.png
865
+ - samples/drawing/tn_drawing.png
841
866
  - samples/drawing/tn_graphics_drawing.png
842
867
  - samples/drawing/tn_image_prt.png
843
868
  - samples/drawing/tn_maths_images.png
@@ -925,22 +950,12 @@ files:
925
950
  - samples/ribbon/triangle.xpm
926
951
  - samples/sample.xpm
927
952
  - samples/sampler.rb
928
- - samples/sampler/back.xpm
929
- - samples/sampler/copy.xpm
930
- - samples/sampler/cut.xpm
931
953
  - samples/sampler/editor.rb
932
954
  - samples/sampler/ext.rb
933
- - samples/sampler/filesave.xpm
934
- - samples/sampler/find.xpm
935
- - samples/sampler/findrepl.xpm
936
- - samples/sampler/forward.xpm
937
- - samples/sampler/paste.xpm
938
955
  - samples/sampler/play.xpm
939
- - samples/sampler/redo.xpm
940
956
  - samples/sampler/sample.rb
941
957
  - samples/sampler/stc_editor.rb
942
958
  - samples/sampler/txt_editor.rb
943
- - samples/sampler/undo.xpm
944
959
  - samples/splash/mobile.xpm
945
960
  - samples/splash/splash.png
946
961
  - samples/splash/splash.rb
@@ -1126,6 +1141,7 @@ files:
1126
1141
  - tests/test_pg.rb
1127
1142
  - tests/test_proof_check.rb
1128
1143
  - tests/test_richtext.rb
1144
+ - tests/test_secret_store.rb
1129
1145
  - tests/test_sizer.rb
1130
1146
  - tests/test_std_controls.rb
1131
1147
  - tests/test_styled_text_ctrl.rb
@@ -1141,17 +1157,20 @@ licenses:
1141
1157
  - MIT
1142
1158
  metadata:
1143
1159
  bug_tracker_uri: https://github.com/mcorino/wxRuby3/issues
1160
+ homepage_uri: https://github.com/mcorino/wxRuby3/wiki
1144
1161
  source_code_uri: https://github.com/mcorino/wxRuby3
1145
1162
  documentation_uri: https://mcorino.github.io/wxRuby3
1146
- homepage_uri: https://github.com/mcorino/wxRuby3
1147
- post_install_message: |2+
1148
-
1149
- The wxRuby3 Gem has been successfully installed.
1150
- Before being able to use wxRuby3 you need to run the post-install setup process
1151
- by executing the command 'wxruby setup'.
1152
-
1153
- Run 'wxruby setup -h' to see information on the available commandline options.
1154
-
1163
+ github_repo: https://github.com/mcorino/wxRuby3
1164
+ post_install_message: "\nThe wxRuby3 Gem has been successfully installed including
1165
+ the 'wxruby' utility.\n\nIn case no suitable binary release package was available
1166
+ for your platform you \nwill need to run the post-install setup process by executing:\n\n$
1167
+ wxruby setup\n\nTo check whether wxRuby3 is ready to run or not you can at any time
1168
+ execute the \nfollowing command:\n\n$ wxruby check\n\nRun 'wxruby check -h' for
1169
+ more information.\n\nWhen the wxRuby3 setup has been fully completed you can start
1170
+ using wxRuby3.\n\nYou can run the regression tests to verify the installation by
1171
+ executing:\n\n$ wxruby test\n\nThe wxRuby3 sample explorer can be run by executing:\n\n$
1172
+ wxruby sampler\n\nHave fun using wxRuby3.\n\nRun 'wxruby -h' to see information
1173
+ on the available commands.\n\n"
1155
1174
  rdoc_options:
1156
1175
  - "--exclude=\\.dll"
1157
1176
  - "--exclude=\\.so"
@@ -1171,7 +1190,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
1171
1190
  - !ruby/object:Gem::Version
1172
1191
  version: '0'
1173
1192
  requirements: []
1174
- rubygems_version: 3.4.19
1193
+ rubygems_version: 3.5.9
1175
1194
  signing_key:
1176
1195
  specification_version: 4
1177
1196
  summary: wxWidgets extension for Ruby
@@ -1,154 +0,0 @@
1
- <!--
2
- # @markup markdown
3
- # @title 0. Overview of wxRuby
4
- -->
5
-
6
- # 0. Overview of wxRuby
7
-
8
- ## What is wxRuby?
9
-
10
- wxRuby3 is a cross-platform GUI library for Ruby, based on the popular [wxWidgets](https://wxwidgets.org)
11
- cross platform GUI toolkit for C++. It uses native widgets wherever possible, providing
12
- the correct look, feel and behaviour to GUI applications on Windows, OS
13
- X and Linux/GTK. wxRuby aims to provide a comprehensive solution to
14
- developing professional-standard desktop applications in Ruby.
15
-
16
- Like Ruby and wxWidgets, wxRuby is Open Source, which means that it is free for anyone to use and the source code
17
- is available for anyone to look at and use in any way they like. Also, anyone can contribute (tested) fixes, additions
18
- and enhancements to the project.
19
-
20
- Like wxWidgets wxRuby is a cross platform toolkit. This means that the same program will run on multiple platforms
21
- without modification. Currently Supported platforms are Microsoft Windows, MacOSX and Linux or other
22
- unix-like systems with GTK2 or GTK3 libraries. Contributions to achieve support for other wxWidgets supported platforms
23
- are appreciated.
24
-
25
- Since the programming language is Ruby, wxRuby programs are simple and easy to write and understand. To accomplish the
26
- full Ruby experience wxRuby has not ported the wxWidgets API 1 on 1 to Ruby but has made an effort to make the wxRuby
27
- API typically Ruby-ish. This means all method signatures (names, arguments) have been transformed to conform to common
28
- Ruby naming rules as well as other Ruby programming practices. Also does wxRuby introduce iterators in favor of getters
29
- returning arrays or lists.
30
- Check out the samples and the documentation for details.
31
-
32
- ## What is wxRuby3?
33
-
34
- The wxRuby3 project is a new, rebooted, implementation of wxRuby (as compared to wxRuby2 and earlier versions) with the
35
- clear intent to make this implementation better maintainable and extensible.
36
-
37
- To this end wxRuby3 adopted much of the approach of the wxPython Phoenix project in that the wxRuby API is generated
38
- from the wxWidgets XML interface definitions. Unlike the Phoenix project however, wxRuby does not use a home-grown
39
- interface code generator but rather still relies on SWIG for that (with Ruby tooling to configure and post-process).
40
- The wxRuby generation process more or less conforms to:
41
-
42
- 1. build wxWidgets interface XML
43
- 2. parse interface XML
44
- 3. generate SWIG interface definitions
45
- 4. generate Ruby extension code with SWIG
46
- 5. post-process Ruby extension code
47
-
48
- As the wxRuby tooling is already parsing the full wxWidgets interface specs (from which wxWidgets generates it's own
49
- reference documentation) it also uses the parsed information to generate matching reference documentation for the
50
- wxRuby API. This documentation is not (yet) perfect but should go a long way in helping people using wxRuby to build
51
- GUI applications.
52
-
53
- The wxRuby3 API is largely compatible with the earlier wxRuby incarnations but not 100% mostly due to more
54
- modularization and more explicit typing of (especially) enums. Also wxRuby3 exclusively targets a lot more modern
55
- versions of wxWidgets (>= 3.2) and Ruby (>= 2.5) so there are some shifts from that as well. All in all though,
56
- people that once took a stab at looking at wxRuby(2) should not have much problems getting up to speed again.
57
-
58
- ## Quick start
59
-
60
- To create an application with wxRuby you need to require the wxRuby libraries:
61
-
62
- ```ruby
63
- require 'wx'
64
- ```
65
-
66
- Next would be the application code and a main entry point. With wxRuby (as with wxWidgets) the entry
67
- point is mostly just a simple call to start the applications event loop (as we're talking about event
68
- based GUI applications here).
69
- In wxRuby the Wx::App class provides some typically Ruby-style magic to make this as easy as possible.
70
-
71
- Using this the simplest Hello World application could be:
72
-
73
- ```ruby
74
- require 'wx'
75
- Wx::App.run { puts 'Hello world!' }
76
- ```
77
-
78
- As you can see there is no obligation to create an instance of the Wx::App class in wxRuby for
79
- (admittedly extremely) simple applications. Calling the #run class method with a block will suffice.<br>
80
- The class method will create an instance of the generic Wx::App class under the hood and use the
81
- provided block as the #on_init callback. As the code inside the block returns a false-type value (#puts
82
- returns `nil`) the application will terminate immediately after writing "Hello world!" to standard
83
- output (actually not even starting the event loop at all).
84
-
85
- Of course this is not truly a GUI application so let's elaborate a little to make the GUI element
86
- more real.
87
-
88
- ```ruby
89
- require 'wx'
90
- Wx::App.run { Wx::Frame.new(nil, title: 'Hello World!').show }
91
- ```
92
-
93
- Executing this will create a generic Frame instance in the on_init callback of the application
94
- and show the frame. As #show returns a true-type when successful the event loop will actually be
95
- started and keep the application running until the frame is closed.
96
-
97
- ## The application class
98
-
99
- For more complex applications the approach demonstrated above will quickly become insufficient. In those cases
100
- creating a specialized derived App class is the better option.
101
- This provides the possibility (as with all Ruby classes) to override the constructor (#initialize) for
102
- custom initialization, attribute definitions and create customized #on_init and/or #on_exit methods like
103
- this:
104
-
105
- ```ruby
106
- require 'wx'
107
-
108
- class MyApp < Wx::App
109
- def initialize
110
- super
111
- @frame = nil
112
- end
113
- attr_reader :frame
114
-
115
- def on_init
116
- @frame = Wx::Frame.new(nil, title: 'Hello World!')
117
- @frame.show
118
- end
119
-
120
- def on_exit
121
- puts 'Exiting.'
122
- end
123
- end
124
- ```
125
-
126
- When creating #on_init/#on_exit methods it is important to understand that those would not be overrides (as is the case
127
- with wxWidgets itself). The base Wx::App class actually does not define these methods so it's also not needed (even not possible)
128
- to call `super` in the implementation. The wxRuby application class implementation will call the wxWidget OnInit base implementation
129
- itself and after successful completion check for the existence of an #on_init method (which could also be 'automagicallly'
130
- created from a block passed to #run) and call that if available or terminate the application if not. The
131
- exit sequence of executions are similar but reversed (first a possible #on_exit method and than the wxWidgets base OnExit).
132
-
133
- What remains though is that for a derived application class it is still not necessary to explicitly create a class instance.
134
- Simply calling the #run class method will suffice.
135
-
136
- ```ruby
137
- MyApp.run
138
- ```
139
-
140
- The current application instance (as long as the application is active) can always be retrieved by
141
- calling `Wx.get_app`.
142
-
143
- ## wxRuby modules
144
-
145
- The toplevel module of the wxRuby library is the `Wx` module and when using `require 'wx'` to load the wxRuby library
146
- **all** constants and classes are loaded and can be accessed from that scope like `Wx::Frame` or `Wx::RichTextCtrl`
147
- like previous versions of wxRuby supported.
148
-
149
- With the current wxRuby library however a more modular approach has been used similar to wxWidgets itself which
150
- distributes implementations over various sub-modules. These sub-modules can be loaded separately to provide more control.
151
- The core module still provides the toplevel `Wx` namespace and all classes and constants declared in that namespace.
152
- All other modules add to that (and **all** require the core module).
153
-
154
- See [here](01_packages.md) for more details on wxRuby sub-modules.
@@ -1,180 +0,0 @@
1
- <!--
2
- # @markup markdown
3
- # @title 1. wxRuby Modules
4
- -->
5
-
6
- # 1. wxRuby Modules
7
-
8
- ## Introduction
9
-
10
- Previous wxRuby implementations provided a single toplevel module approach for the wxRuby API with a single loading
11
- option. Including `require 'wx'` in any application would load the entire wxRuby library and make all classes, module
12
- methods and constants available under the `Wx` toplevel module.
13
-
14
- The wxRuby3 project however implements a more modular approach similar to wxWidgets itself which distributes
15
- implementations over various sub-modules. These sub-modules can be loaded separately to provide more control.
16
- The core module still provides the toplevel `Wx` namespace and all classes and constants declared in that namespace.
17
- All other modules add to that (and **all** require the core module).
18
-
19
- ## Loading and Naming scopes
20
-
21
- The *old* **all-in-one** approach in still supported with the wxRuby3 project. Using
22
-
23
- ```ruby
24
- require 'wx'
25
- ```
26
-
27
- will load all wxRuby API modules and make all classes and constants available from the `Wx` toplevel module. This
28
- *global* naming scope approach does **not** extend to class or module methods (including dialog *functors*; see
29
- [here](03_dialogs.md) for more information).
30
-
31
- The *new* sub-module approach however allows for loading only part(s) of the wxRuby library like:
32
-
33
- ```ruby
34
- require 'wx/core' # load wxRuby core Wx module
35
- require 'wx/grid' # load wxRuby Wx::GRID module - provides Grid control
36
- require 'wx/rtc' # load wxRuby Wx::RTC module - provides RichText control
37
- ```
38
-
39
- However, when loading the library like this scoping rules change by default. Specifically the constants and classes
40
- from the loaded sub-modules will **not** be accessible from the `Wx` scope anymore (like `Wx::Grid`) but must instead be
41
- explicitly scoped from the sub-module (like `Wx::GRID::Grid`).
42
-
43
- It is possible to revert the 'global scope' resolution behaviour by setting the toplevel constant `WX_GLOBAL_CONSTANTS` to
44
- `true` before the require statements like:
45
-
46
- ```ruby
47
- WX_GLOBAL_CONSTANTS=true
48
- require 'wx/core' # load wxRuby core Wx module
49
- require 'wx/grid' # load wxRuby Wx::GRID module - provides Grid control
50
- require 'wx/rtc' # load wxRuby Wx::RTC module - provides RichText control
51
- ```
52
-
53
- ## Modules
54
-
55
- Currently the following modules have been implemented.
56
-
57
- ### Core
58
-
59
- The core wxRuby package providing the toplevel {Wx} module.
60
- This package includes basic classes like:
61
-
62
- - {Wx::Object}
63
- - {Wx::EvtHandler}
64
- - {Wx::Event}
65
- - {Wx::CommandEvent}
66
- - {Wx::App}
67
- - {Wx::Window}
68
- - {Wx::NonOwnedWindow}
69
- - {Wx::TopLevelWindow}
70
- - {Wx::Frame}
71
- - {Wx::Dialog}
72
-
73
- as well as most common window classes, control/widget classes, event classes, constant and enum definitions
74
- and global functions not part of any of the other packages.
75
-
76
- ### AUI - Advanced User Interface controls and related classes
77
-
78
- The wxRuby AUI package providing the {Wx::AUI} module.
79
- This package includes all classes, constants and enum definitions that are considered part of the
80
- wxWidgets AUI framework like:
81
-
82
- - {Wx::AUI::AuiManager}
83
- - {Wx::AUI::AuiMDIParentFrame}
84
- - {Wx::AUI::AuiMDIChildFrame}
85
- - {Wx::AUI::AuiMDIClientWindow}
86
- - etc
87
-
88
- ### GRID - Grid control and related classes
89
-
90
- The wxRuby GRID package providing the {Wx::GRID} module.
91
- This package includes all classes, constants and enum definitions that are associated with the
92
- wxWidgets wxGrid control like:
93
-
94
- - {Wx::GRID::Grid}
95
- - {Wx::GRID::GridTableBase}
96
- - {Wx::GRID::GridCellEditor}
97
- - {Wx::GRID::GridCellRenderer}
98
- - {Wx::GRID::GridEvent}
99
- - etc
100
-
101
- ### HTML - Html framework classes
102
-
103
- The wxRuby HTML package providing the {Wx::HTML} module.
104
- This package includes all classes, constants and enum definitions that are considered part of the
105
- wxWidgets Html framework like:
106
-
107
- - {Wx::HTML::HtmlWindow}
108
- - {Wx::HTML::HtmlHelpWindow}
109
- - {Wx::HTML::HtmlPrintout}
110
- - {Wx::HTML::HtmlHelpController}
111
- - {Wx::HTML::HtmlListBox}
112
- - etc
113
-
114
- ### PG - PropertyGrid control and related classes
115
-
116
- The wxRuby PG package providing the {Wx::PG} module.
117
- This package includes all classes, constants and enum definitions that are associated with the
118
- wxWidgets wxPropertyGrid control like:
119
-
120
- - {Wx::PG::PropertyGrid}
121
- - {Wx::PG::PropertyGridManager}
122
- - {Wx::PG::PGCell}
123
- - {Wx::PG::PGProperty}
124
- - {Wx::PG::PropertyGridEvent}
125
- - etc
126
-
127
- ### PRT - Printing framework classes
128
-
129
- The wxRuby PRT package providing the {Wx::PRT} module.
130
- This package includes all classes, constants and enum definitions that are considered part of the
131
- wxWidgets Printing framework like:
132
-
133
- - {Wx::PRT::PreviewFrame}
134
- - {Wx::PRT::Printer}
135
- - {Wx::PRT::PrinterDC}
136
- - {Wx::PRT::PrintDialog}
137
- - etc
138
-
139
- ### RBN - Ribbon framework classes
140
-
141
- The wxRuby RBN package providing the {Wx::RBN} module.
142
- This package includes all classes, constants and enum definitions that are considered part of the
143
- wxWidgets Ribbon framework like:
144
-
145
- - {Wx::RBN::RibbonControl}
146
- - {Wx::RBN::RibbonGallery}
147
- - {Wx::RBN::RibbonPanel}
148
- - {Wx::RBN::RibbonPage}
149
- - {Wx::RBN::RibbonBar}
150
- - etc
151
-
152
- ### RTC - RichText control and related classes
153
-
154
- The wxRuby RTC package providing the {Wx::RTC} module.
155
- This package includes all classes, constants and enum definitions that are associated with the
156
- wxWidgets wxRichTextCtrl control like:
157
-
158
- - {Wx::RTC::RichTextCtrl}
159
- - {Wx::RTC::RichTextEvent}
160
- - {Wx::RTC::RichTextBuffer}
161
- - etc
162
-
163
- ### STC - StyledText control and related classes
164
-
165
- The wxRuby STC package providing the {Wx::STC} module.
166
- This package includes all classes, constants and enum definitions that are associated with the
167
- wxWidgets wxStyledTextCtrl control (Scintilla integration) like:
168
-
169
- - {Wx::STC::StyledTextCtrl}
170
- - {Wx::STC::StyledTextEvent}
171
-
172
- ## Feature dependencies
173
-
174
- Availability of wxRuby packages is controlled by the wxWidget feature switches. The default build options will
175
- include all platform supported features but in case of building wxRuby for customized wxWidgets builds the wxRuby3
176
- build procedures will take the wxWidgets settings into account.
177
-
178
- If for instance wxWidgets was built without Html support (using the configure `--disable-html` switch) the wxRuby
179
- HTML package will not be available as well.
180
- This behavior is controlled by the `wxUSE_xxx` macros that wxRuby extracts from the wxWidgets `wx/setup.h` file.