wxruby3 0.9.5-x64-mingw-ucrt → 0.9.7-x64-mingw-ucrt

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 (386) hide show
  1. checksums.yaml +4 -4
  2. data/.wxconfig +9 -8
  3. data/INSTALL.md +315 -78
  4. data/README.md +31 -20
  5. data/ext/wxbase32u_gcc_custom.dll +0 -0
  6. data/ext/wxbase32u_net_gcc_custom.dll +0 -0
  7. data/ext/wxbase32u_xml_gcc_custom.dll +0 -0
  8. data/ext/wxmsw32u_aui_gcc_custom.dll +0 -0
  9. data/ext/wxmsw32u_core_gcc_custom.dll +0 -0
  10. data/ext/wxmsw32u_gl_gcc_custom.dll +0 -0
  11. data/ext/wxmsw32u_html_gcc_custom.dll +0 -0
  12. data/ext/wxmsw32u_media_gcc_custom.dll +0 -0
  13. data/ext/wxmsw32u_propgrid_gcc_custom.dll +0 -0
  14. data/ext/wxmsw32u_qa_gcc_custom.dll +0 -0
  15. data/ext/wxmsw32u_ribbon_gcc_custom.dll +0 -0
  16. data/ext/wxmsw32u_richtext_gcc_custom.dll +0 -0
  17. data/ext/wxmsw32u_stc_gcc_custom.dll +0 -0
  18. data/ext/wxmsw32u_webview_gcc_custom.dll +0 -0
  19. data/ext/wxmsw32u_xrc_gcc_custom.dll +0 -0
  20. data/lib/wx/core/ext.rb +22 -3
  21. data/lib/wx/doc/gen/about_dialog_info.rb +1 -1
  22. data/lib/wx/doc/gen/accelerator.rb +1 -1
  23. data/lib/wx/doc/gen/accessible.rb +1 -1
  24. data/lib/wx/doc/gen/activity_indicator.rb +1 -1
  25. data/lib/wx/doc/gen/animation.rb +1 -1
  26. data/lib/wx/doc/gen/animation_ctrl.rb +1 -1
  27. data/lib/wx/doc/gen/any_button.rb +1 -1
  28. data/lib/wx/doc/gen/app.rb +1 -1
  29. data/lib/wx/doc/gen/app_traits.rb +1 -1
  30. data/lib/wx/doc/gen/art_provider.rb +1 -1
  31. data/lib/wx/doc/gen/aui/aui_dock_art.rb +430 -426
  32. data/lib/wx/doc/gen/aui/aui_floating_frame.rb +34 -30
  33. data/lib/wx/doc/gen/aui/aui_manager.rb +352 -348
  34. data/lib/wx/doc/gen/aui/aui_manager_event.rb +107 -103
  35. data/lib/wx/doc/gen/aui/aui_mdi_child_frame.rb +157 -153
  36. data/lib/wx/doc/gen/aui/aui_mdi_client_window.rb +42 -38
  37. data/lib/wx/doc/gen/aui/aui_mdi_parent_frame.rb +109 -105
  38. data/lib/wx/doc/gen/aui/aui_notebook.rb +438 -434
  39. data/lib/wx/doc/gen/aui/aui_notebook_event.rb +145 -141
  40. data/lib/wx/doc/gen/aui/aui_pane_info.rb +689 -685
  41. data/lib/wx/doc/gen/aui/aui_tab_art.rb +369 -365
  42. data/lib/wx/doc/gen/aui/aui_tab_ctrl.rb +100 -96
  43. data/lib/wx/doc/gen/aui/aui_tool_bar.rb +445 -441
  44. data/lib/wx/doc/gen/aui/aui_tool_bar_art.rb +268 -264
  45. data/lib/wx/doc/gen/aui/aui_tool_bar_event.rb +179 -175
  46. data/lib/wx/doc/gen/aui/aui_tool_bar_item.rb +219 -215
  47. data/lib/wx/doc/gen/banner_window.rb +1 -1
  48. data/lib/wx/doc/gen/bitmap.rb +1 -1
  49. data/lib/wx/doc/gen/bitmap_button.rb +1 -1
  50. data/lib/wx/doc/gen/bitmap_combo_box.rb +1 -1
  51. data/lib/wx/doc/gen/book_ctrl_base.rb +1 -1
  52. data/lib/wx/doc/gen/book_ctrl_event.rb +1 -1
  53. data/lib/wx/doc/gen/box_sizer.rb +1 -1
  54. data/lib/wx/doc/gen/brush.rb +1 -1
  55. data/lib/wx/doc/gen/busy_info.rb +1 -1
  56. data/lib/wx/doc/gen/button.rb +1 -1
  57. data/lib/wx/doc/gen/calculate_layout_event.rb +1 -1
  58. data/lib/wx/doc/gen/calendar_ctrl.rb +1 -1
  59. data/lib/wx/doc/gen/calendar_date_attr.rb +1 -1
  60. data/lib/wx/doc/gen/calendar_event.rb +1 -1
  61. data/lib/wx/doc/gen/caret.rb +1 -1
  62. data/lib/wx/doc/gen/check_box.rb +1 -1
  63. data/lib/wx/doc/gen/check_list_box.rb +1 -1
  64. data/lib/wx/doc/gen/choice.rb +1 -1
  65. data/lib/wx/doc/gen/choicebook.rb +1 -1
  66. data/lib/wx/doc/gen/client_dc.rb +1 -1
  67. data/lib/wx/doc/gen/clipboard.rb +1 -1
  68. data/lib/wx/doc/gen/collapsible_pane.rb +1 -1
  69. data/lib/wx/doc/gen/collapsible_pane_event.rb +1 -1
  70. data/lib/wx/doc/gen/colour.rb +1 -1
  71. data/lib/wx/doc/gen/colour_dialog.rb +1 -1
  72. data/lib/wx/doc/gen/colour_picker_ctrl.rb +1 -1
  73. data/lib/wx/doc/gen/colour_picker_event.rb +1 -1
  74. data/lib/wx/doc/gen/combo_box.rb +1 -1
  75. data/lib/wx/doc/gen/combo_ctrl.rb +1 -1
  76. data/lib/wx/doc/gen/command_link_button.rb +1 -1
  77. data/lib/wx/doc/gen/config_base.rb +1 -1
  78. data/lib/wx/doc/gen/context_help_button.rb +1 -1
  79. data/lib/wx/doc/gen/control.rb +1 -1
  80. data/lib/wx/doc/gen/control_with_items.rb +1 -1
  81. data/lib/wx/doc/gen/core.rb +5 -5
  82. data/lib/wx/doc/gen/cursor.rb +1 -1
  83. data/lib/wx/doc/gen/data_format.rb +1 -1
  84. data/lib/wx/doc/gen/data_object.rb +1 -1
  85. data/lib/wx/doc/gen/data_object_simple_base.rb +1 -1
  86. data/lib/wx/doc/gen/date_event.rb +1 -1
  87. data/lib/wx/doc/gen/date_picker_ctrl.rb +1 -1
  88. data/lib/wx/doc/gen/dc.rb +1 -1
  89. data/lib/wx/doc/gen/defs.rb +1 -1
  90. data/lib/wx/doc/gen/dial_up_event.rb +1 -1
  91. data/lib/wx/doc/gen/dial_up_manager.rb +1 -1
  92. data/lib/wx/doc/gen/dialog.rb +1 -1
  93. data/lib/wx/doc/gen/dir_dialog.rb +1 -1
  94. data/lib/wx/doc/gen/dir_filter_list_ctrl.rb +1 -1
  95. data/lib/wx/doc/gen/dir_picker_ctrl.rb +1 -1
  96. data/lib/wx/doc/gen/drag_drop.rb +1 -1
  97. data/lib/wx/doc/gen/drag_image.rb +1 -1
  98. data/lib/wx/doc/gen/editable_list_box.rb +1 -1
  99. data/lib/wx/doc/gen/event.rb +1 -1
  100. data/lib/wx/doc/gen/event_blocker.rb +1 -1
  101. data/lib/wx/doc/gen/event_filter.rb +1 -1
  102. data/lib/wx/doc/gen/events.rb +1 -1
  103. data/lib/wx/doc/gen/evt_handler.rb +1 -1
  104. data/lib/wx/doc/gen/ext_help_controller.rb +1 -1
  105. data/lib/wx/doc/gen/file_ctrl.rb +1 -1
  106. data/lib/wx/doc/gen/file_ctrl_event.rb +1 -1
  107. data/lib/wx/doc/gen/file_dialog.rb +1 -1
  108. data/lib/wx/doc/gen/file_dialog_custom_control.rb +1 -1
  109. data/lib/wx/doc/gen/file_dialog_customize_hook.rb +1 -1
  110. data/lib/wx/doc/gen/file_dir_picker_event.rb +1 -1
  111. data/lib/wx/doc/gen/file_picker_ctrl.rb +1 -1
  112. data/lib/wx/doc/gen/file_system.rb +1 -1
  113. data/lib/wx/doc/gen/find_dialog_event.rb +1 -1
  114. data/lib/wx/doc/gen/find_replace_data.rb +1 -1
  115. data/lib/wx/doc/gen/find_replace_dialog.rb +1 -1
  116. data/lib/wx/doc/gen/flex_grid_sizer.rb +1 -1
  117. data/lib/wx/doc/gen/font.rb +1 -1
  118. data/lib/wx/doc/gen/font_data.rb +1 -1
  119. data/lib/wx/doc/gen/font_dialog.rb +1 -1
  120. data/lib/wx/doc/gen/font_picker_ctrl.rb +1 -1
  121. data/lib/wx/doc/gen/font_picker_event.rb +1 -1
  122. data/lib/wx/doc/gen/frame.rb +1 -1
  123. data/lib/wx/doc/gen/fs_file.rb +1 -1
  124. data/lib/wx/doc/gen/functions.rb +1 -1
  125. data/lib/wx/doc/gen/gauge.rb +1 -1
  126. data/lib/wx/doc/gen/gb_sizer_item.rb +1 -1
  127. data/lib/wx/doc/gen/gcdc.rb +1 -1
  128. data/lib/wx/doc/gen/gdi_common.rb +3 -3
  129. data/lib/wx/doc/gen/gdi_object.rb +1 -1
  130. data/lib/wx/doc/gen/generic_dir_ctrl.rb +1 -1
  131. data/lib/wx/doc/gen/graphics_context.rb +1 -1
  132. data/lib/wx/doc/gen/graphics_object.rb +1 -1
  133. data/lib/wx/doc/gen/grid/grid_cell_activatable_editor.rb +28 -24
  134. data/lib/wx/doc/gen/grid/grid_cell_attr.rb +251 -247
  135. data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_editor.rb +25 -21
  136. data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_renderer.rb +27 -23
  137. data/lib/wx/doc/gen/grid/grid_cell_bool_editor.rb +38 -34
  138. data/lib/wx/doc/gen/grid/grid_cell_bool_renderer.rb +25 -21
  139. data/lib/wx/doc/gen/grid/grid_cell_choice_editor.rb +35 -31
  140. data/lib/wx/doc/gen/grid/grid_cell_date_editor.rb +28 -24
  141. data/lib/wx/doc/gen/grid/grid_cell_date_renderer.rb +34 -30
  142. data/lib/wx/doc/gen/grid/grid_cell_date_time_renderer.rb +30 -26
  143. data/lib/wx/doc/gen/grid/grid_cell_editor.rb +183 -179
  144. data/lib/wx/doc/gen/grid/grid_cell_enum_editor.rb +29 -25
  145. data/lib/wx/doc/gen/grid/grid_cell_enum_renderer.rb +33 -29
  146. data/lib/wx/doc/gen/grid/grid_cell_float_editor.rb +34 -30
  147. data/lib/wx/doc/gen/grid/grid_cell_float_renderer.rb +67 -63
  148. data/lib/wx/doc/gen/grid/grid_cell_number_editor.rb +34 -30
  149. data/lib/wx/doc/gen/grid/grid_cell_number_renderer.rb +25 -21
  150. data/lib/wx/doc/gen/grid/grid_cell_renderer.rb +93 -89
  151. data/lib/wx/doc/gen/grid/grid_cell_string_renderer.rb +25 -21
  152. data/lib/wx/doc/gen/grid/grid_cell_text_editor.rb +38 -34
  153. data/lib/wx/doc/gen/grid/grid_ctrl.rb +2722 -2718
  154. data/lib/wx/doc/gen/grid/grid_editor_created_event.rb +82 -78
  155. data/lib/wx/doc/gen/grid/grid_event.rb +106 -102
  156. data/lib/wx/doc/gen/grid/grid_range_select_event.rb +93 -89
  157. data/lib/wx/doc/gen/grid/grid_size_event.rb +70 -66
  158. data/lib/wx/doc/gen/grid/grid_string_table.rb +130 -126
  159. data/lib/wx/doc/gen/grid/grid_table_base.rb +303 -299
  160. data/lib/wx/doc/gen/grid/grid_table_message.rb +70 -66
  161. data/lib/wx/doc/gen/grid_bag_sizer.rb +1 -1
  162. data/lib/wx/doc/gen/grid_sizer.rb +1 -1
  163. data/lib/wx/doc/gen/gui_event_loop.rb +1 -1
  164. data/lib/wx/doc/gen/header_ctrl.rb +1 -1
  165. data/lib/wx/doc/gen/header_ctrl_event.rb +1 -1
  166. data/lib/wx/doc/gen/help_controller.rb +1 -1
  167. data/lib/wx/doc/gen/help_provider.rb +1 -1
  168. data/lib/wx/doc/gen/html/html_cell.rb +515 -511
  169. data/lib/wx/doc/gen/html/html_cell_event.rb +58 -54
  170. data/lib/wx/doc/gen/html/html_easy_printing.rb +171 -167
  171. data/lib/wx/doc/gen/html/html_help_controller.rb +292 -288
  172. data/lib/wx/doc/gen/html/html_help_data.rb +147 -143
  173. data/lib/wx/doc/gen/html/html_help_window.rb +232 -228
  174. data/lib/wx/doc/gen/html/html_link_event.rb +30 -26
  175. data/lib/wx/doc/gen/html/html_list_box.rb +301 -297
  176. data/lib/wx/doc/gen/html/html_printout.rb +94 -90
  177. data/lib/wx/doc/gen/html/html_window.rb +406 -402
  178. data/lib/wx/doc/gen/hyperlink_ctrl.rb +1 -1
  179. data/lib/wx/doc/gen/hyperlink_event.rb +1 -1
  180. data/lib/wx/doc/gen/icon.rb +1 -1
  181. data/lib/wx/doc/gen/icon_location.rb +1 -1
  182. data/lib/wx/doc/gen/image.rb +1 -1
  183. data/lib/wx/doc/gen/image_list.rb +1 -1
  184. data/lib/wx/doc/gen/info_bar.rb +1 -1
  185. data/lib/wx/doc/gen/keyboard_state.rb +1 -1
  186. data/lib/wx/doc/gen/list_box.rb +1 -1
  187. data/lib/wx/doc/gen/list_ctrl.rb +1 -1
  188. data/lib/wx/doc/gen/list_event.rb +1 -1
  189. data/lib/wx/doc/gen/listbook.rb +1 -1
  190. data/lib/wx/doc/gen/locale.rb +1 -1
  191. data/lib/wx/doc/gen/log.rb +1 -1
  192. data/lib/wx/doc/gen/mdi_client_window.rb +1 -1
  193. data/lib/wx/doc/gen/mdi_frame.rb +1 -1
  194. data/lib/wx/doc/gen/media_ctrl.rb +1 -1
  195. data/lib/wx/doc/gen/media_event.rb +1 -1
  196. data/lib/wx/doc/gen/memory_dc.rb +1 -1
  197. data/lib/wx/doc/gen/menu.rb +1 -1
  198. data/lib/wx/doc/gen/menu_bar.rb +1 -1
  199. data/lib/wx/doc/gen/menu_item.rb +1 -1
  200. data/lib/wx/doc/gen/message_dialog.rb +1 -1
  201. data/lib/wx/doc/gen/mini_frame.rb +1 -1
  202. data/lib/wx/doc/gen/mirror_dc.rb +1 -1
  203. data/lib/wx/doc/gen/mouse_state.rb +1 -1
  204. data/lib/wx/doc/gen/multi_choice_dialog.rb +1 -1
  205. data/lib/wx/doc/gen/non_owned_window.rb +1 -1
  206. data/lib/wx/doc/gen/notebook.rb +1 -1
  207. data/lib/wx/doc/gen/num_validator.rb +1 -1
  208. data/lib/wx/doc/gen/number_entry_dialog.rb +1 -1
  209. data/lib/wx/doc/gen/object.rb +1 -1
  210. data/lib/wx/doc/gen/owner_drawn_combo_box.rb +1 -1
  211. data/lib/wx/doc/gen/paint_dc.rb +1 -1
  212. data/lib/wx/doc/gen/palette.rb +1 -1
  213. data/lib/wx/doc/gen/panel.rb +1 -1
  214. data/lib/wx/doc/gen/pen.rb +1 -1
  215. data/lib/wx/doc/gen/persistence_manager.rb +1 -1
  216. data/lib/wx/doc/gen/persistent_object.rb +1 -1
  217. data/lib/wx/doc/gen/persistent_window.rb +1 -1
  218. data/lib/wx/doc/gen/pg/numeric_property_validator.rb +33 -29
  219. data/lib/wx/doc/gen/pg/pg_array_editor_dialog.rb +299 -295
  220. data/lib/wx/doc/gen/pg/pg_cell.rb +162 -158
  221. data/lib/wx/doc/gen/pg/pg_editor.rb +693 -689
  222. data/lib/wx/doc/gen/pg/pg_multi_button.rb +133 -129
  223. data/lib/wx/doc/gen/pg/pg_properties.rb +2662 -2658
  224. data/lib/wx/doc/gen/pg/pg_property.rb +1929 -1925
  225. data/lib/wx/doc/gen/pg/pg_validation_info.rb +275 -271
  226. data/lib/wx/doc/gen/pg/property_grid.rb +708 -704
  227. data/lib/wx/doc/gen/pg/property_grid_event.rb +168 -164
  228. data/lib/wx/doc/gen/pg/property_grid_interface.rb +1071 -1067
  229. data/lib/wx/doc/gen/pg/property_grid_manager.rb +386 -382
  230. data/lib/wx/doc/gen/pg/property_grid_page.rb +267 -263
  231. data/lib/wx/doc/gen/pg/property_grid_page_state.rb +147 -143
  232. data/lib/wx/doc/gen/picker_base.rb +1 -1
  233. data/lib/wx/doc/gen/platform_info.rb +1 -1
  234. data/lib/wx/doc/gen/popup_window.rb +1 -1
  235. data/lib/wx/doc/gen/progress_dialog.rb +1 -1
  236. data/lib/wx/doc/gen/property_sheet_dialog.rb +1 -1
  237. data/lib/wx/doc/gen/prt/page_setup_dialog.rb +32 -28
  238. data/lib/wx/doc/gen/prt/post_script_dc.rb +21 -17
  239. data/lib/wx/doc/gen/prt/preview_frame.rb +49 -45
  240. data/lib/wx/doc/gen/prt/print_abort_dialog.rb +126 -122
  241. data/lib/wx/doc/gen/prt/print_data.rb +637 -633
  242. data/lib/wx/doc/gen/prt/print_dialog.rb +43 -39
  243. data/lib/wx/doc/gen/prt/printer.rb +484 -480
  244. data/lib/wx/doc/gen/prt/printer_dc.rb +26 -22
  245. data/lib/wx/doc/gen/query_layout_info_event.rb +1 -1
  246. data/lib/wx/doc/gen/radio_box.rb +1 -1
  247. data/lib/wx/doc/gen/radio_button.rb +1 -1
  248. data/lib/wx/doc/gen/rbn/ribbon_art_provider.rb +1716 -1712
  249. data/lib/wx/doc/gen/rbn/ribbon_bar.rb +239 -235
  250. data/lib/wx/doc/gen/rbn/ribbon_bar_event.rb +34 -30
  251. data/lib/wx/doc/gen/rbn/ribbon_button_bar.rb +439 -435
  252. data/lib/wx/doc/gen/rbn/ribbon_button_bar_event.rb +52 -48
  253. data/lib/wx/doc/gen/rbn/ribbon_control.rb +116 -112
  254. data/lib/wx/doc/gen/rbn/ribbon_gallery.rb +205 -201
  255. data/lib/wx/doc/gen/rbn/ribbon_gallery_event.rb +44 -40
  256. data/lib/wx/doc/gen/rbn/ribbon_page.rb +129 -125
  257. data/lib/wx/doc/gen/rbn/ribbon_panel.rb +229 -225
  258. data/lib/wx/doc/gen/rbn/ribbon_panel_event.rb +34 -30
  259. data/lib/wx/doc/gen/rbn/ribbon_tool_bar.rb +329 -325
  260. data/lib/wx/doc/gen/rbn/ribbon_tool_bar_event.rb +31 -27
  261. data/lib/wx/doc/gen/rearrange_ctrl.rb +1 -1
  262. data/lib/wx/doc/gen/rearrange_list.rb +1 -1
  263. data/lib/wx/doc/gen/region.rb +1 -1
  264. data/lib/wx/doc/gen/region_iterator.rb +1 -1
  265. data/lib/wx/doc/gen/rtc/rich_text_box.rb +424 -420
  266. data/lib/wx/doc/gen/rtc/rich_text_buffer.rb +1148 -1144
  267. data/lib/wx/doc/gen/rtc/rich_text_buffer_data_object.rb +30 -26
  268. data/lib/wx/doc/gen/rtc/rich_text_composite_object.rb +516 -512
  269. data/lib/wx/doc/gen/rtc/rich_text_ctrl.rb +1991 -1987
  270. data/lib/wx/doc/gen/rtc/rich_text_event.rb +159 -155
  271. data/lib/wx/doc/gen/rtc/rich_text_file_handler.rb +167 -163
  272. data/lib/wx/doc/gen/rtc/rich_text_formatting_dialog.rb +271 -267
  273. data/lib/wx/doc/gen/rtc/rich_text_header_footer_data.rb +171 -167
  274. data/lib/wx/doc/gen/rtc/rich_text_html_handler.rb +88 -84
  275. data/lib/wx/doc/gen/rtc/rich_text_image.rb +323 -319
  276. data/lib/wx/doc/gen/rtc/rich_text_object.rb +2819 -2815
  277. data/lib/wx/doc/gen/rtc/rich_text_paragraph_layout_box.rb +1187 -1183
  278. data/lib/wx/doc/gen/rtc/rich_text_printing.rb +242 -238
  279. data/lib/wx/doc/gen/rtc/rich_text_style_list_box.rb +286 -282
  280. data/lib/wx/doc/gen/rtc/rich_text_style_organiser_dialog.rb +181 -177
  281. data/lib/wx/doc/gen/rtc/rich_text_xml_handler.rb +47 -43
  282. data/lib/wx/doc/gen/rtc/symbol_picker_dialog.rb +145 -141
  283. data/lib/wx/doc/gen/sash_event.rb +1 -1
  284. data/lib/wx/doc/gen/sash_layout_window.rb +1 -1
  285. data/lib/wx/doc/gen/sash_window.rb +1 -1
  286. data/lib/wx/doc/gen/scaled_dc.rb +1 -1
  287. data/lib/wx/doc/gen/screen_dc.rb +1 -1
  288. data/lib/wx/doc/gen/scroll_bar.rb +1 -1
  289. data/lib/wx/doc/gen/scrolled_canvas.rb +1 -1
  290. data/lib/wx/doc/gen/scrolled_control.rb +1 -1
  291. data/lib/wx/doc/gen/scrolled_window.rb +1 -1
  292. data/lib/wx/doc/gen/search_ctrl.rb +1 -1
  293. data/lib/wx/doc/gen/simplebook.rb +1 -1
  294. data/lib/wx/doc/gen/single_choice_dialog.rb +1 -1
  295. data/lib/wx/doc/gen/sizer.rb +1 -1
  296. data/lib/wx/doc/gen/sizer_item.rb +1 -1
  297. data/lib/wx/doc/gen/slider.rb +1 -1
  298. data/lib/wx/doc/gen/spin_button.rb +1 -1
  299. data/lib/wx/doc/gen/spin_ctrl.rb +1 -1
  300. data/lib/wx/doc/gen/spin_ctrl_double.rb +1 -1
  301. data/lib/wx/doc/gen/spin_double_event.rb +1 -1
  302. data/lib/wx/doc/gen/spin_event.rb +1 -1
  303. data/lib/wx/doc/gen/splash_screen.rb +1 -1
  304. data/lib/wx/doc/gen/splitter_event.rb +1 -1
  305. data/lib/wx/doc/gen/splitter_window.rb +1 -1
  306. data/lib/wx/doc/gen/static_bitmap.rb +1 -1
  307. data/lib/wx/doc/gen/static_box.rb +1 -1
  308. data/lib/wx/doc/gen/static_box_sizer.rb +1 -1
  309. data/lib/wx/doc/gen/static_line.rb +1 -1
  310. data/lib/wx/doc/gen/static_text.rb +1 -1
  311. data/lib/wx/doc/gen/status_bar.rb +1 -1
  312. data/lib/wx/doc/gen/stc/styled_text_ctrl.rb +4202 -4198
  313. data/lib/wx/doc/gen/stc/styled_text_event.rb +7511 -7507
  314. data/lib/wx/doc/gen/std_dialog_button_sizer.rb +1 -1
  315. data/lib/wx/doc/gen/svg_file_dc.rb +1 -1
  316. data/lib/wx/doc/gen/system_options.rb +1 -1
  317. data/lib/wx/doc/gen/system_settings.rb +1 -1
  318. data/lib/wx/doc/gen/task_bar_button.rb +1 -1
  319. data/lib/wx/doc/gen/task_bar_icon.rb +1 -1
  320. data/lib/wx/doc/gen/task_bar_icon_event.rb +1 -1
  321. data/lib/wx/doc/gen/text_attr.rb +1 -1
  322. data/lib/wx/doc/gen/text_ctrl.rb +1 -1
  323. data/lib/wx/doc/gen/text_entry.rb +1 -1
  324. data/lib/wx/doc/gen/text_entry_dialog.rb +1 -1
  325. data/lib/wx/doc/gen/text_validator.rb +1 -1
  326. data/lib/wx/doc/gen/time_picker_ctrl.rb +1 -1
  327. data/lib/wx/doc/gen/timer.rb +1 -1
  328. data/lib/wx/doc/gen/timer_event.rb +1 -1
  329. data/lib/wx/doc/gen/tip_provider.rb +1 -1
  330. data/lib/wx/doc/gen/toggle_button.rb +1 -1
  331. data/lib/wx/doc/gen/tool_bar.rb +1 -1
  332. data/lib/wx/doc/gen/tool_tip.rb +1 -1
  333. data/lib/wx/doc/gen/toolbook.rb +1 -1
  334. data/lib/wx/doc/gen/top_level_window.rb +1 -1
  335. data/lib/wx/doc/gen/tree_ctrl.rb +1 -1
  336. data/lib/wx/doc/gen/tree_event.rb +1 -1
  337. data/lib/wx/doc/gen/treebook.rb +1 -1
  338. data/lib/wx/doc/gen/ui_action_simulator.rb +1 -1
  339. data/lib/wx/doc/gen/utils.rb +1 -1
  340. data/lib/wx/doc/gen/v_list_box.rb +1 -1
  341. data/lib/wx/doc/gen/v_scrolled_window.rb +1 -1
  342. data/lib/wx/doc/gen/validator.rb +1 -1
  343. data/lib/wx/doc/gen/variant.rb +1 -1
  344. data/lib/wx/doc/gen/window.rb +1 -1
  345. data/lib/wx/doc/gen/window_dc.rb +1 -1
  346. data/lib/wx/doc/gen/window_disabler.rb +1 -1
  347. data/lib/wx/doc/gen/with_images.rb +1 -1
  348. data/lib/wx/doc/gen/wizard.rb +1 -1
  349. data/lib/wx/doc/gen/wizard_event.rb +1 -1
  350. data/lib/wx/doc/gen/wizard_page.rb +1 -1
  351. data/lib/wx/doc/gen/wizard_page_simple.rb +1 -1
  352. data/lib/wx/doc/gen/wrap_sizer.rb +1 -1
  353. data/lib/wx/doc/gen/xml_node.rb +1 -1
  354. data/lib/wx/doc/gen/xml_resource.rb +1 -1
  355. data/lib/wx/rtc/ext/rich_text_ctrl.rb +5 -5
  356. data/lib/wx/version.rb +1 -1
  357. data/lib/wx/wxruby/base.rb +6 -4
  358. data/lib/wx/wxruby/cmd/sampler.rb +39 -29
  359. data/lib/wx/wxruby/cmd/setup.rb +122 -0
  360. data/lib/wx/wxruby/cmd/test.rb +56 -6
  361. data/lib/wxruby_aui.so +0 -0
  362. data/lib/wxruby_core.so +0 -0
  363. data/lib/wxruby_grid.so +0 -0
  364. data/lib/wxruby_html.so +0 -0
  365. data/lib/wxruby_pg.so +0 -0
  366. data/lib/wxruby_prt.so +0 -0
  367. data/lib/wxruby_rbn.so +0 -0
  368. data/lib/wxruby_rtc.so +0 -0
  369. data/lib/wxruby_stc.so +0 -0
  370. data/rakelib/install.rb +2 -0
  371. data/rakelib/lib/config/linux.rb +24 -2
  372. data/rakelib/lib/config/macosx.rb +16 -0
  373. data/rakelib/lib/config/mingw.rb +133 -9
  374. data/rakelib/lib/config/pkgman/arch.rb +53 -0
  375. data/rakelib/lib/config/pkgman/base.rb +169 -0
  376. data/rakelib/lib/config/pkgman/debian.rb +66 -0
  377. data/rakelib/lib/config/pkgman/macosx.rb +183 -0
  378. data/rakelib/lib/config/pkgman/rhel.rb +54 -0
  379. data/rakelib/lib/config/pkgman/suse.rb +54 -0
  380. data/rakelib/lib/config/unixish.rb +36 -19
  381. data/rakelib/lib/config.rb +254 -61
  382. data/rakelib/prepost.rake +9 -4
  383. data/rakelib/yard/templates/default/fulldoc/html/css/wxruby3.css +14 -0
  384. data/rakelib/yard/templates/default/fulldoc/html/setup.rb +5 -5
  385. data/rakelib/yard/yard/relative_markdown_links.rb +7 -1
  386. metadata +23 -4
@@ -86,4 +86,4 @@ module Wx
86
86
  end # StdDialogButtonSizer
87
87
 
88
88
 
89
- end
89
+ end
@@ -157,4 +157,4 @@ module Wx
157
157
  end # SVGBitmapEmbedHandler
158
158
 
159
159
 
160
- end
160
+ end
@@ -124,4 +124,4 @@ module Wx
124
124
  end # SystemOptions
125
125
 
126
126
 
127
- end
127
+ end
@@ -484,4 +484,4 @@ module Wx
484
484
  end # SystemSettings
485
485
 
486
486
 
487
- end
487
+ end
@@ -321,4 +321,4 @@ module Wx
321
321
  end # ThumbBarButton
322
322
 
323
323
 
324
- end
324
+ end
@@ -116,4 +116,4 @@ module Wx
116
116
  end # TaskBarIcon
117
117
 
118
118
 
119
- end
119
+ end
@@ -85,4 +85,4 @@ module Wx
85
85
  end # TaskBarIconEvent
86
86
 
87
87
 
88
- end
88
+ end
@@ -690,4 +690,4 @@ module Wx
690
690
  end # TextAttr
691
691
 
692
692
 
693
- end
693
+ end
@@ -874,4 +874,4 @@ module Wx
874
874
  end # TextCtrl
875
875
 
876
876
 
877
- end
877
+ end
@@ -433,4 +433,4 @@ module Wx
433
433
  end # TextCompleterSimple
434
434
 
435
435
 
436
- end
436
+ end
@@ -179,4 +179,4 @@ module Wx
179
179
  end # PasswordEntryDialog
180
180
 
181
181
 
182
- end
182
+ end
@@ -242,4 +242,4 @@ module Wx
242
242
  end # TextValidator
243
243
 
244
244
 
245
- end
245
+ end
@@ -106,4 +106,4 @@ module Wx
106
106
  end # TimePickerCtrl
107
107
 
108
108
 
109
- end
109
+ end
@@ -116,4 +116,4 @@ module Wx
116
116
  end # Timer
117
117
 
118
118
 
119
- end
119
+ end
@@ -65,4 +65,4 @@ module Wx
65
65
  end # TimerEvent
66
66
 
67
67
 
68
- end
68
+ end
@@ -60,4 +60,4 @@ module Wx
60
60
  end # TipProvider
61
61
 
62
62
 
63
- end
63
+ end
@@ -149,4 +149,4 @@ module Wx
149
149
  end # BitmapToggleButton
150
150
 
151
151
 
152
- end
152
+ end
@@ -871,4 +871,4 @@ module Wx
871
871
  end # ToolBarToolBase
872
872
 
873
873
 
874
- end
874
+ end
@@ -98,4 +98,4 @@ module Wx
98
98
  end # ToolTip
99
99
 
100
100
 
101
- end
101
+ end
@@ -105,4 +105,4 @@ module Wx
105
105
  end # Toolbook
106
106
 
107
107
 
108
- end
108
+ end
@@ -479,4 +479,4 @@ module Wx
479
479
  end # TopLevelWindow
480
480
 
481
481
 
482
- end
482
+ end
@@ -975,4 +975,4 @@ module Wx
975
975
  end # TreeCtrl
976
976
 
977
977
 
978
- end
978
+ end
@@ -124,4 +124,4 @@ module Wx
124
124
  end # TreeEvent
125
125
 
126
126
 
127
- end
127
+ end
@@ -167,4 +167,4 @@ module Wx
167
167
  end # Treebook
168
168
 
169
169
 
170
- end
170
+ end
@@ -106,4 +106,4 @@ module Wx
106
106
  end # UIActionSimulator
107
107
 
108
108
 
109
- end
109
+ end
@@ -294,4 +294,4 @@ module Wx
294
294
  def self.shutdown(flags=Wx::SHUTDOWN_POWEROFF) end
295
295
 
296
296
 
297
- end
297
+ end
@@ -256,4 +256,4 @@ module Wx
256
256
  end # VListBox
257
257
 
258
258
 
259
- end
259
+ end
@@ -237,4 +237,4 @@ module Wx
237
237
  end # VScrolledWindow
238
238
 
239
239
 
240
- end
240
+ end
@@ -69,4 +69,4 @@ module Wx
69
69
  end # Validator
70
70
 
71
71
 
72
- end
72
+ end
@@ -291,4 +291,4 @@ module Wx
291
291
  end # Variant
292
292
 
293
293
 
294
- end
294
+ end
@@ -2875,4 +2875,4 @@ module Wx
2875
2875
  end # VisualAttributes
2876
2876
 
2877
2877
 
2878
- end
2878
+ end
@@ -35,4 +35,4 @@ module Wx
35
35
  end # WindowDC
36
36
 
37
37
 
38
- end
38
+ end
@@ -27,4 +27,4 @@ module Wx
27
27
  end # WindowDisabler
28
28
 
29
29
 
30
- end
30
+ end
@@ -81,4 +81,4 @@ module Wx
81
81
  end # WithImages
82
82
 
83
83
 
84
- end
84
+ end
@@ -224,4 +224,4 @@ module Wx
224
224
  end # Wizard
225
225
 
226
226
 
227
- end
227
+ end
@@ -110,4 +110,4 @@ module Wx
110
110
  end # WizardEvent
111
111
 
112
112
 
113
- end
113
+ end
@@ -62,4 +62,4 @@ module Wx
62
62
  end # WizardPage
63
63
 
64
64
 
65
- end
65
+ end
@@ -75,4 +75,4 @@ module Wx
75
75
  end # WizardPageSimple
76
76
 
77
77
 
78
- end
78
+ end
@@ -66,4 +66,4 @@ module Wx
66
66
  end # WrapSizer
67
67
 
68
68
 
69
- end
69
+ end
@@ -314,4 +314,4 @@ module Wx
314
314
  end # XmlNode
315
315
 
316
316
 
317
- end
317
+ end
@@ -342,4 +342,4 @@ module Wx
342
342
  end # XmlResource
343
343
 
344
344
 
345
- end
345
+ end
@@ -10,15 +10,15 @@ module Wx
10
10
 
11
11
  RICHTEXT_DEFAULT_IMAGE_SIZE = Wx::Size.new(80, 80)
12
12
 
13
- Wx.add_delayed_constant(self, :RICHTEXT_DEFAULT_UNFOCUSSED_BACKGROUND) { Wx::Colour.new(175, 175, 175) }
13
+ Wx.add_delayed_constant(self, :RICHTEXT_DEFAULT_UNFOCUSSED_BACKGROUND, 'Wx::Colour.new(175, 175, 175)') { Wx::Colour.new(175, 175, 175) }
14
14
 
15
- Wx.add_delayed_constant(self, :RICHTEXT_DEFAULT_FOCUSSED_BACKGROUND) { Wx::Colour.new(140, 140, 140) }
15
+ Wx.add_delayed_constant(self, :RICHTEXT_DEFAULT_FOCUSSED_BACKGROUND, 'Wx::Colour.new(140, 140, 140)') { Wx::Colour.new(140, 140, 140) }
16
16
 
17
- Wx.add_delayed_constant(self, :RICHTEXT_DEFAULT_UNSELECTED_BACKGROUND) { Wx::SystemSettings.get_colour(Wx::SYS_COLOUR_3DFACE) }
17
+ Wx.add_delayed_constant(self, :RICHTEXT_DEFAULT_UNSELECTED_BACKGROUND, 'Wx::SystemSettings.get_colour(Wx::SYS_COLOUR_3DFACE)') { Wx::SystemSettings.get_colour(Wx::SYS_COLOUR_3DFACE) }
18
18
 
19
- Wx.add_delayed_constant(self, :RICHTEXT_DEFAULT_TYPE_COLOUR) { Wx::Colour.new(0, 0, 200) }
19
+ Wx.add_delayed_constant(self, :RICHTEXT_DEFAULT_TYPE_COLOUR, 'Wx::Colour.new(0, 0, 200)') { Wx::Colour.new(0, 0, 200) }
20
20
 
21
- Wx.add_delayed_constant(self, :RICHTEXT_DEFAULT_FOCUS_RECT_COLOUR) { Wx::Colour.new(100, 80, 80) }
21
+ Wx.add_delayed_constant(self, :RICHTEXT_DEFAULT_FOCUS_RECT_COLOUR, 'Wx::Colour.new(100, 80, 80)') { Wx::Colour.new(100, 80, 80) }
22
22
 
23
23
  end
24
24
  end
data/lib/wx/version.rb CHANGED
@@ -3,5 +3,5 @@
3
3
  # This software is released under the MIT license.
4
4
 
5
5
  module Wx
6
- WXRUBY_VERSION = '0.9.5'
6
+ WXRUBY_VERSION = '0.9.7'
7
7
  end
@@ -25,12 +25,15 @@ module WxRuby
25
25
  end
26
26
  private :commands
27
27
 
28
+ def setup_done?
29
+ File.exist?(File.join(WxRuby::ROOT, 'ext', 'wxruby.setup.done'))
30
+ end
31
+
28
32
  def options
29
33
  @options ||= {
30
34
  :verbose => false
31
35
  }
32
36
  end
33
- private :options
34
37
 
35
38
  def register(cmdid, cmdhandler)
36
39
  commands[cmdid.to_s] = case
@@ -59,7 +62,7 @@ module WxRuby
59
62
  def parse_args(args)
60
63
  opts = OptionParser.new
61
64
  opts.banner = "Usage: wxruby [global options] COMMAND [arguments]\n\n" +
62
- " COMMAND\t\t\tSpecifies wxruby command to execute."
65
+ " COMMAND\t\t\t\tSpecifies wxruby command to execute."
63
66
  opts.separator ''
64
67
  opts.on('-v', '--verbose',
65
68
  'Show verbose output') { |v| ::WxRuby::Commands.options[:verbose] = true }
@@ -70,8 +73,7 @@ module WxRuby
70
73
  describe_all
71
74
  exit(0)
72
75
  end
73
- opts.raise_unknown = false
74
- opts.parse!(args)
76
+ opts.order!(args)
75
77
  end
76
78
  end
77
79
  end
@@ -10,44 +10,54 @@ require 'fileutils'
10
10
  module WxRuby
11
11
  module Commands
12
12
  class Sampler
13
- OPTIONS = {
14
- save_path: nil
15
- }
13
+
14
+ DESC = 'Run wxRuby3 Sampler application (or copy samples).'
16
15
 
17
16
  def self.description
18
- " sampler [help]|[copy DEST]\tRun wxRuby3 Sampler application (or copy samples)."
17
+ " sampler -h|[options]\t\t#{DESC}"
18
+ end
19
+
20
+ def self.options
21
+ Commands.options['sampler'] ||= { verbose: Commands.options[:verbose] }
22
+ end
23
+
24
+ def self.parse_args(args)
25
+ opts = OptionParser.new
26
+ opts.banner = "#{DESC}\n\nUsage: wxruby sampler -h|--help OR wxruby sampler [options]\n\n" +
27
+ "Runs the sampler application if no options specified.\n\n"
28
+ opts.separator ''
29
+ opts.on('--copy=DEST',
30
+ 'Copies the included wxRuby sample folders under the directory indicated by DEST (MUST exist)') {|v| Sampler.options[:copy] << v }
31
+ opts.on('-h', '--help',
32
+ 'Show this message.') do |v|
33
+ puts opts
34
+ puts
35
+ exit(0)
36
+ end
37
+ opts.parse!(args)
19
38
  end
20
39
 
21
40
  def self.run(argv)
22
- if argv == :describe
23
- description
24
- else
25
- if argv.empty?
26
- exec(RUBY, File.join(WxRuby::ROOT, 'samples', 'sampler.rb'))
27
- else
28
- arg = argv.shift
29
- if arg == 'help'
30
- puts 'Usage: wxruby [global options] sampler [help]|[copy DEST]'
31
- puts
32
- puts ' Starts the sampler application if called without arguments.'
33
- puts ' Otherwise shows this help for argument "help" or copies the included wxRuby'
34
- puts ' sample folders under the directory indicated by DEST for argument "copy DEST".'
35
- puts ' The directory indicated by DEST *must* already exist.'
36
- puts
37
- elsif arg == 'copy'
38
- unless File.directory?(dest = argv.shift)
39
- STDERR.puts "ERROR: Invalid destination folder #{dest}"
40
- exit(1)
41
- end
42
- Dir[File.join(WxRuby::ROOT, 'samples', '*')].each do |fp|
43
- FileUtils.cp_r(fp, dest, verbose: true)
44
- end
45
- end
41
+ return description if argv == :describe
42
+
43
+ parse_args(argv)
44
+
45
+ if options[:copy]
46
+ unless File.directory?(dest = options[:copy])
47
+ $stderr.puts "ERROR: Invalid destination folder #{dest}"
48
+ exit(1)
46
49
  end
50
+ Dir[File.join(WxRuby::ROOT, 'samples', '*')].each do |fp|
51
+ FileUtils.cp_r(fp, dest, verbose: true)
52
+ end
53
+ else
54
+ exec(RUBY, File.join(WxRuby::ROOT, 'samples', 'sampler.rb'))
47
55
  end
48
56
  end
49
57
  end
50
58
 
51
- self.register('sampler', Sampler)
59
+ if self.setup_done?
60
+ self.register('sampler', Sampler)
61
+ end
52
62
  end
53
63
  end
@@ -0,0 +1,122 @@
1
+ # Copyright (c) 2023 M.J.N. Corino, The Netherlands
2
+ #
3
+ # This software is released under the MIT license.
4
+
5
+ # wxruby setup command handler
6
+ #--------------------------------------------------------------------
7
+
8
+ require 'fileutils'
9
+
10
+ module WxRuby
11
+ module Commands
12
+ class Setup
13
+
14
+ DESC = 'Run wxRuby3 post-install setup.'
15
+
16
+ def self.description
17
+ " setup -h|[options]\t\t#{DESC}"
18
+ end
19
+
20
+ def self.options
21
+ Commands.options['setup'] ||= { verbose: Commands.options[:verbose] }
22
+ end
23
+
24
+ def self.parse_args(args)
25
+ opts = OptionParser.new
26
+ opts.banner = "#{DESC}\n\nUsage: wxruby setup -h|--help OR wxruby setup [options]\n\n"
27
+ opts.separator ''
28
+ opts.on('--wxwin=path',
29
+ "the installation root for the wxWidgets libraries and headers if not using the system default") {|v| Setup.options['wxwin'] = File.expand_path(v)}
30
+ opts.on('--wxxml=path',
31
+ "the path to the doxygen generated wxWidgets XML interface specs if not using bootstrap") {|v| Setup.options['wxxml'] = File.expand_path(v)}
32
+ opts.on('--with-wxwin',
33
+ "build a local copy of wxWidgets for use with wxRuby [false]") {|v| Setup.options['with-wxwin'] = true}
34
+ opts.on('--swig=path',
35
+ "the path to swig executable [swig]") {|v| Setup.options['swig'] = v}
36
+ opts.on('--doxygen=path',
37
+ "the path to doxygen executable [doxygen]") {|v| Setup.options['doxygen'] = v}
38
+ opts.on('--git=path',
39
+ "the path to git executable [git]") {|v| Setup.options['git'] = v}
40
+ opts.on('--[no-]autoinstall',
41
+ "do (not) attempt to automatically install any required packages") {|v| Setup.options['autoinstall'] = !!v }
42
+ opts.on('--log=PATH',
43
+ "write log to PATH/setup.log (PATH must exist) and do not remove when finished") {|v| Setup.options['log'] = v }
44
+ opts.on('-h', '--help',
45
+ 'Show this message.') do |v|
46
+ puts opts
47
+ puts
48
+ exit(0)
49
+ end
50
+ opts.parse!(args)
51
+ end
52
+
53
+ def self.run(argv)
54
+ return description if argv == :describe
55
+
56
+ parse_args(argv)
57
+
58
+ cfg_args = []
59
+ cfg_args << "--wxwin=#{Setup.options['wxwin']}" if Setup.options['wxwin']
60
+ cfg_args << "--wxxml=#{Setup.options['wxxml']}" if Setup.options['wxxml']
61
+ cfg_args << '--with-wxwin' if Setup.options['with-wxwin']
62
+ cfg_args << "--swig=#{Setup.options['swig']}" if Setup.options['swig']
63
+ cfg_args << "--doxygen=#{Setup.options['doxygen']}" if Setup.options['doxygen']
64
+ cfg_args << "--git=#{Setup.options['git']}" if Setup.options['git']
65
+ unless Setup.options['autoinstall'].nil?
66
+ cfg_args << (Setup.options['autoinstall'] ? '--autoinstall' : '--no-autoinstall')
67
+ end
68
+ cfg_cmd = 'rake configure'
69
+ cfg_cmd << "[#{cfg_args.join(',')}]" unless cfg_args.empty?
70
+
71
+ result = false
72
+ FileUtils.chdir(WxRuby::ROOT) do
73
+ steps = 0
74
+ actions_txt = if Setup.options['autoinstall'] != false
75
+ steps = 1
76
+ '(possibly) install required software'
77
+ else
78
+ ''
79
+ end
80
+ if Setup.options['with-wxwin'] || Setup.options['wxwin'].nil?
81
+ actions_txt << ', ' if steps>0
82
+ actions_txt << 'build the wxWidgets libraries (if needed), '
83
+ actions_txt << "\n" if steps>0
84
+ steps += 1
85
+ else
86
+ actions_txt << ',' if steps>0
87
+ end
88
+ actions_txt << 'build the native wxRuby3 extensions '
89
+ actions_txt << "\n" if steps==1
90
+ actions_txt << 'and generate the wxRuby3 reference documentation.'
91
+ $stdout.puts <<~__INFO_TXT
92
+
93
+ ---
94
+ Now running wxRuby3 post-install setup.
95
+ This will #{actions_txt}
96
+ Please be patient as this may take quite a while depending on your system.
97
+ ---
98
+
99
+ __INFO_TXT
100
+ log_file = File.join(WxRuby::ROOT, 'setup.log')
101
+ if Setup.options['log']
102
+ if File.directory?(Setup.options['log']) && File.writable?(Setup.options['log'])
103
+ log_file = File.join(Setup.options['log'], 'setup.log')
104
+ else
105
+ $stderr.puts "ERROR: cannot write log to #{Setup.options['log']}. Log path must exist and be writable."
106
+ exit(1)
107
+ end
108
+ end
109
+ run_env = {'WXRUBY_RUN_SILENT' => "#{log_file}"}
110
+ run_env['WXRUBY_VERBOSE'] = '1' if Setup.options[:verbose]
111
+ # can't rely on FileUtils#chdir returning the block result (bug in older Rubies) so assign result here
112
+ result = system(run_env, "#{cfg_cmd} && rake -m wxruby:gem:setup#{Setup.options['log'] ? '[:keep_log]' : ''} && gem rdoc wxruby3 --overwrite")
113
+ end
114
+ exit(result ? 0 : 1)
115
+ end
116
+ end
117
+
118
+ unless self.setup_done?
119
+ self.register('setup', Setup)
120
+ end
121
+ end
122
+ end
@@ -10,21 +10,71 @@ require 'fileutils'
10
10
  module WxRuby
11
11
  module Commands
12
12
  class Test
13
+
14
+ DESC = 'Run wxRuby3 regression tests.'
15
+
13
16
  def self.description
14
- " test\t\t\tRun wxRuby3 regression tests."
17
+ " test -h|[options] [TEST [...]]\t#{DESC}"
18
+ end
19
+
20
+ def self.options
21
+ Commands.options['test'] ||= { verbose: Commands.options[:verbose], excludes: [] }
22
+ end
23
+
24
+ def self.parse_args(args)
25
+ opts = OptionParser.new
26
+ opts.banner = "#{DESC}\n\nUsage: wxruby test -h|--help OR wxruby test [options] [TEST [...]]\n\n" +
27
+ "TEST == test name\n" +
28
+ "Runs all tests (except any specified to exclude) if no test specified.\n\n"
29
+ opts.separator ''
30
+ opts.on('--list',
31
+ "display the list of names of the installed tests") do |v|
32
+ tests = Dir[File.join(WxRuby::ROOT, 'tests', '*.rb')].collect { |t| File.basename(t, '.*') }
33
+ $stdout.puts <<~__INFO
34
+ Installed wxRuby tests:
35
+ #{tests.join(', ')}
36
+
37
+ __INFO
38
+ exit(0)
39
+ end
40
+ opts.on('--exclude=TEST',
41
+ "exclude the specified test from running") {|v| Test.options[:excludes] << v }
42
+ opts.on('-h', '--help',
43
+ 'Show this message.') do |v|
44
+ puts opts
45
+ puts
46
+ exit(0)
47
+ end
48
+ opts.parse!(args)
15
49
  end
16
50
 
17
51
  def self.run(argv)
18
- if argv == :describe
19
- description
20
- else
21
- Dir[File.join(WxRuby::ROOT, 'tests', '*.rb')].each do |test|
52
+ return description if argv == :describe
53
+
54
+ parse_args(argv)
55
+
56
+ tests = if argv.empty?
57
+ Dir[File.join(WxRuby::ROOT, 'tests', '*.rb')]
58
+ else
59
+ argv.collect do |a|
60
+ fn = File.join(WxRuby::ROOT, 'tests', a+'.rb')
61
+ unless File.file?(fn)
62
+ $stderr.puts "ERROR: Invalid test [#{a}] specified."
63
+ exit(1)
64
+ end
65
+ fn
66
+ end
67
+ end
68
+ tests.each do |test|
69
+ unless Test.options[:excludes].include?(File.basename(test, '.*'))
22
70
  exit(1) unless system(RUBY, test)
23
71
  end
24
72
  end
25
73
  end
26
74
  end
27
75
 
28
- self.register('test', Test)
76
+ if self.setup_done?
77
+ self.register('test', Test)
78
+ end
29
79
  end
30
80
  end
data/lib/wxruby_aui.so CHANGED
Binary file
data/lib/wxruby_core.so CHANGED
Binary file
data/lib/wxruby_grid.so CHANGED
Binary file
data/lib/wxruby_html.so CHANGED
Binary file
data/lib/wxruby_pg.so CHANGED
Binary file