wxruby3 1.6.0 → 1.7.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 (541) hide show
  1. checksums.yaml +4 -4
  2. data/CREDITS.md +32 -25
  3. data/INSTALL.md +21 -6
  4. data/README.md +5 -5
  5. data/assets/repo-social-preview.odg +0 -0
  6. data/assets/repo-social-preview.xcf +0 -0
  7. data/ext/wxruby3/include/wxRubyApp.h +58 -45
  8. data/ext/wxruby3/include/wxruby-runtime.h +78 -1
  9. data/ext/wxruby3/swig/common.i +2 -2
  10. data/ext/wxruby3/swig/custom/director.swg +2 -2
  11. data/ext/wxruby3/swig/custom/rubyprimtypes.swg +59 -15
  12. data/ext/wxruby3/swig/custom/rubyrun.swg +4 -0
  13. data/ext/wxruby3/swig/custom/rubytracking.swg +4 -0
  14. data/ext/wxruby3/swig/custom/swiglabels.swg +129 -0
  15. data/ext/wxruby3/swig/custom/swigrun.swg +15 -0
  16. data/ext/wxruby3/swig/custom/typemaps/swigtypemaps.swg +20 -0
  17. data/ext/wxruby3/swig/mark_free_impl.i +154 -88
  18. data/ext/wxruby3/swig/memory_management.i +1 -0
  19. data/ext/wxruby3/swig/wx.i +73 -44
  20. data/lib/wx/aui/events/evt_list.rb +148 -0
  21. data/lib/wx/aui/require.rb +0 -1
  22. data/lib/wx/core/calendar_ctrl.rb +15 -0
  23. data/lib/wx/core/clipboard.rb +9 -13
  24. data/lib/wx/core/config.rb +1 -1
  25. data/lib/wx/core/events/evt_list.rb +1458 -0
  26. data/lib/wx/core/font/encoding.rb +113 -0
  27. data/lib/wx/core/generic_validator.rb +83 -31
  28. data/lib/wx/core/tipwindow.rb +16 -0
  29. data/lib/wx/core/variant.rb +6 -0
  30. data/lib/wx/doc/aui/auitabctrl.rb +35 -0
  31. data/lib/wx/doc/config.rb +2 -2
  32. data/lib/wx/doc/functions.rb +1 -1
  33. data/lib/wx/doc/gen/about_dialog_info.rb +330 -0
  34. data/lib/wx/doc/gen/accelerator.rb +178 -0
  35. data/lib/wx/doc/gen/activity_indicator.rb +83 -0
  36. data/lib/wx/doc/gen/affine_matrix2d.rb +284 -0
  37. data/lib/wx/doc/gen/animation.rb +275 -0
  38. data/lib/wx/doc/gen/animation_ctrl.rb +300 -0
  39. data/lib/wx/doc/gen/any_button.rb +191 -0
  40. data/lib/wx/doc/gen/app.rb +463 -0
  41. data/lib/wx/doc/gen/app_traits.rb +396 -0
  42. data/lib/wx/doc/gen/art_provider.rb +605 -0
  43. data/lib/wx/doc/gen/aui/aui_dock_art.rb +455 -0
  44. data/lib/wx/doc/gen/aui/aui_floating_frame.rb +54 -0
  45. data/lib/wx/doc/gen/aui/aui_manager.rb +847 -0
  46. data/lib/wx/doc/gen/aui/aui_manager_event.rb +131 -0
  47. data/lib/wx/doc/gen/aui/aui_mdi_child_frame.rb +180 -0
  48. data/lib/wx/doc/gen/aui/aui_mdi_client_window.rb +59 -0
  49. data/lib/wx/doc/gen/aui/aui_mdi_parent_frame.rb +130 -0
  50. data/lib/wx/doc/gen/aui/aui_notebook.rb +631 -0
  51. data/lib/wx/doc/gen/aui/aui_notebook_event.rb +233 -0
  52. data/lib/wx/doc/gen/aui/aui_pane_info.rb +769 -0
  53. data/lib/wx/doc/gen/aui/aui_tab_art.rb +352 -0
  54. data/lib/wx/doc/gen/aui/aui_tab_ctrl.rb +14 -0
  55. data/lib/wx/doc/gen/aui/aui_tool_bar.rb +510 -0
  56. data/lib/wx/doc/gen/aui/aui_tool_bar_art.rb +340 -0
  57. data/lib/wx/doc/gen/aui/aui_tool_bar_event.rb +244 -0
  58. data/lib/wx/doc/gen/aui/aui_tool_bar_item.rb +257 -0
  59. data/lib/wx/doc/gen/aui/event_list.rb +179 -0
  60. data/lib/wx/doc/gen/banner_window.rb +124 -0
  61. data/lib/wx/doc/gen/bitmap.rb +731 -0
  62. data/lib/wx/doc/gen/bitmap_button.rb +123 -0
  63. data/lib/wx/doc/gen/bitmap_combo_box.rb +221 -0
  64. data/lib/wx/doc/gen/book_ctrl_base.rb +273 -0
  65. data/lib/wx/doc/gen/book_ctrl_event.rb +66 -0
  66. data/lib/wx/doc/gen/box_sizer.rb +85 -0
  67. data/lib/wx/doc/gen/brush.rb +251 -0
  68. data/lib/wx/doc/gen/busy_info.rb +157 -0
  69. data/lib/wx/doc/gen/button.rb +182 -0
  70. data/lib/wx/doc/gen/calculate_layout_event.rb +62 -0
  71. data/lib/wx/doc/gen/calendar_ctrl.rb +505 -0
  72. data/lib/wx/doc/gen/calendar_date_attr.rb +138 -0
  73. data/lib/wx/doc/gen/calendar_event.rb +147 -0
  74. data/lib/wx/doc/gen/caret.rb +97 -0
  75. data/lib/wx/doc/gen/check_box.rb +175 -0
  76. data/lib/wx/doc/gen/check_list_box.rb +121 -0
  77. data/lib/wx/doc/gen/choice.rb +175 -0
  78. data/lib/wx/doc/gen/choicebook.rb +116 -0
  79. data/lib/wx/doc/gen/client_dc.rb +43 -0
  80. data/lib/wx/doc/gen/clipboard.rb +144 -0
  81. data/lib/wx/doc/gen/collapsible_pane.rb +138 -0
  82. data/lib/wx/doc/gen/collapsible_pane_event.rb +46 -0
  83. data/lib/wx/doc/gen/colour.rb +333 -0
  84. data/lib/wx/doc/gen/colour_dialog.rb +190 -0
  85. data/lib/wx/doc/gen/colour_picker_ctrl.rb +110 -0
  86. data/lib/wx/doc/gen/colour_picker_event.rb +77 -0
  87. data/lib/wx/doc/gen/combo_box.rb +292 -0
  88. data/lib/wx/doc/gen/combo_ctrl.rb +662 -0
  89. data/lib/wx/doc/gen/command_link_button.rb +134 -0
  90. data/lib/wx/doc/gen/config_base.rb +10 -0
  91. data/lib/wx/doc/gen/context_help_button.rb +109 -0
  92. data/lib/wx/doc/gen/control.rb +277 -0
  93. data/lib/wx/doc/gen/control_with_items.rb +253 -0
  94. data/lib/wx/doc/gen/core.rb +45 -0
  95. data/lib/wx/doc/gen/credential_entry_dialog.rb +137 -0
  96. data/lib/wx/doc/gen/cursor.rb +193 -0
  97. data/lib/wx/doc/gen/data_format.rb +85 -0
  98. data/lib/wx/doc/gen/data_object.rb +436 -0
  99. data/lib/wx/doc/gen/data_object_simple_base.rb +10 -0
  100. data/lib/wx/doc/gen/date_event.rb +49 -0
  101. data/lib/wx/doc/gen/date_picker_ctrl.rb +161 -0
  102. data/lib/wx/doc/gen/dc.rb +1631 -0
  103. data/lib/wx/doc/gen/dc_overlay.rb +102 -0
  104. data/lib/wx/doc/gen/defs.rb +2802 -0
  105. data/lib/wx/doc/gen/dial_up_event.rb +45 -0
  106. data/lib/wx/doc/gen/dial_up_manager.rb +149 -0
  107. data/lib/wx/doc/gen/dialog.rb +541 -0
  108. data/lib/wx/doc/gen/dir_dialog.rb +164 -0
  109. data/lib/wx/doc/gen/dir_filter_list_ctrl.rb +90 -0
  110. data/lib/wx/doc/gen/dir_picker_ctrl.rb +125 -0
  111. data/lib/wx/doc/gen/display.rb +238 -0
  112. data/lib/wx/doc/gen/drag_drop.rb +299 -0
  113. data/lib/wx/doc/gen/drag_image.rb +116 -0
  114. data/lib/wx/doc/gen/editable_list_box.rb +109 -0
  115. data/lib/wx/doc/gen/event.rb +990 -0
  116. data/lib/wx/doc/gen/event_blocker.rb +50 -0
  117. data/lib/wx/doc/gen/event_filter.rb +92 -0
  118. data/lib/wx/doc/gen/event_list.rb +1644 -0
  119. data/lib/wx/doc/gen/events.rb +2809 -0
  120. data/lib/wx/doc/gen/evt_handler.rb +229 -0
  121. data/lib/wx/doc/gen/ext_help_controller.rb +109 -0
  122. data/lib/wx/doc/gen/file_ctrl.rb +231 -0
  123. data/lib/wx/doc/gen/file_ctrl_event.rb +83 -0
  124. data/lib/wx/doc/gen/file_dialog.rb +353 -0
  125. data/lib/wx/doc/gen/file_dialog_custom_control.rb +165 -0
  126. data/lib/wx/doc/gen/file_dialog_customize_hook.rb +158 -0
  127. data/lib/wx/doc/gen/file_dir_picker_event.rb +100 -0
  128. data/lib/wx/doc/gen/file_picker_ctrl.rb +132 -0
  129. data/lib/wx/doc/gen/file_system.rb +232 -0
  130. data/lib/wx/doc/gen/find_dialog_event.rb +126 -0
  131. data/lib/wx/doc/gen/find_replace_data.rb +60 -0
  132. data/lib/wx/doc/gen/find_replace_dialog.rb +58 -0
  133. data/lib/wx/doc/gen/flex_grid_sizer.rb +199 -0
  134. data/lib/wx/doc/gen/font.rb +1379 -0
  135. data/lib/wx/doc/gen/font_data.rb +151 -0
  136. data/lib/wx/doc/gen/font_dialog.rb +88 -0
  137. data/lib/wx/doc/gen/font_picker_ctrl.rb +143 -0
  138. data/lib/wx/doc/gen/font_picker_event.rb +65 -0
  139. data/lib/wx/doc/gen/frame.rb +352 -0
  140. data/lib/wx/doc/gen/fs_file.rb +337 -0
  141. data/lib/wx/doc/gen/functions.rb +10 -0
  142. data/lib/wx/doc/gen/gauge.rb +157 -0
  143. data/lib/wx/doc/gen/gb_sizer_item.rb +68 -0
  144. data/lib/wx/doc/gen/gcdc.rb +46 -0
  145. data/lib/wx/doc/gen/gdi_common.rb +1271 -0
  146. data/lib/wx/doc/gen/gdi_object.rb +31 -0
  147. data/lib/wx/doc/gen/generic_about_dialog.rb +140 -0
  148. data/lib/wx/doc/gen/generic_dir_ctrl.rb +223 -0
  149. data/lib/wx/doc/gen/geometry.rb +661 -0
  150. data/lib/wx/doc/gen/graphics_context.rb +1184 -0
  151. data/lib/wx/doc/gen/graphics_object.rb +750 -0
  152. data/lib/wx/doc/gen/grid/event_list.rb +191 -0
  153. data/lib/wx/doc/gen/grid/grid_cell_activatable_editor.rb +40 -0
  154. data/lib/wx/doc/gen/grid/grid_cell_attr.rb +280 -0
  155. data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_editor.rb +35 -0
  156. data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_renderer.rb +37 -0
  157. data/lib/wx/doc/gen/grid/grid_cell_bool_editor.rb +49 -0
  158. data/lib/wx/doc/gen/grid/grid_cell_bool_renderer.rb +35 -0
  159. data/lib/wx/doc/gen/grid/grid_cell_choice_editor.rb +46 -0
  160. data/lib/wx/doc/gen/grid/grid_cell_date_editor.rb +38 -0
  161. data/lib/wx/doc/gen/grid/grid_cell_date_renderer.rb +45 -0
  162. data/lib/wx/doc/gen/grid/grid_cell_date_time_renderer.rb +40 -0
  163. data/lib/wx/doc/gen/grid/grid_cell_editor.rb +197 -0
  164. data/lib/wx/doc/gen/grid/grid_cell_enum_editor.rb +39 -0
  165. data/lib/wx/doc/gen/grid/grid_cell_enum_renderer.rb +44 -0
  166. data/lib/wx/doc/gen/grid/grid_cell_float_editor.rb +45 -0
  167. data/lib/wx/doc/gen/grid/grid_cell_float_renderer.rb +79 -0
  168. data/lib/wx/doc/gen/grid/grid_cell_number_editor.rb +46 -0
  169. data/lib/wx/doc/gen/grid/grid_cell_number_renderer.rb +35 -0
  170. data/lib/wx/doc/gen/grid/grid_cell_renderer.rb +108 -0
  171. data/lib/wx/doc/gen/grid/grid_cell_string_renderer.rb +35 -0
  172. data/lib/wx/doc/gen/grid/grid_cell_text_editor.rb +49 -0
  173. data/lib/wx/doc/gen/grid/grid_ctrl.rb +3002 -0
  174. data/lib/wx/doc/gen/grid/grid_editor_created_event.rb +95 -0
  175. data/lib/wx/doc/gen/grid/grid_event.rb +129 -0
  176. data/lib/wx/doc/gen/grid/grid_range_select_event.rb +104 -0
  177. data/lib/wx/doc/gen/grid/grid_size_event.rb +85 -0
  178. data/lib/wx/doc/gen/grid/grid_string_table.rb +142 -0
  179. data/lib/wx/doc/gen/grid/grid_table_base.rb +317 -0
  180. data/lib/wx/doc/gen/grid/grid_table_message.rb +81 -0
  181. data/lib/wx/doc/gen/grid_bag_sizer.rb +323 -0
  182. data/lib/wx/doc/gen/grid_sizer.rb +195 -0
  183. data/lib/wx/doc/gen/gui_event_loop.rb +159 -0
  184. data/lib/wx/doc/gen/h_scrolled_window.rb +562 -0
  185. data/lib/wx/doc/gen/header_ctrl.rb +880 -0
  186. data/lib/wx/doc/gen/header_ctrl_event.rb +133 -0
  187. data/lib/wx/doc/gen/help_controller.rb +195 -0
  188. data/lib/wx/doc/gen/help_provider.rb +98 -0
  189. data/lib/wx/doc/gen/html/event_list.rb +38 -0
  190. data/lib/wx/doc/gen/html/html_cell.rb +536 -0
  191. data/lib/wx/doc/gen/html/html_cell_event.rb +69 -0
  192. data/lib/wx/doc/gen/html/html_data_object.rb +42 -0
  193. data/lib/wx/doc/gen/html/html_easy_printing.rb +203 -0
  194. data/lib/wx/doc/gen/html/html_help_controller.rb +340 -0
  195. data/lib/wx/doc/gen/html/html_help_data.rb +159 -0
  196. data/lib/wx/doc/gen/html/html_help_window.rb +258 -0
  197. data/lib/wx/doc/gen/html/html_link_event.rb +41 -0
  198. data/lib/wx/doc/gen/html/html_list_box.rb +346 -0
  199. data/lib/wx/doc/gen/html/html_printout.rb +109 -0
  200. data/lib/wx/doc/gen/html/html_window.rb +461 -0
  201. data/lib/wx/doc/gen/hyperlink_ctrl.rb +311 -0
  202. data/lib/wx/doc/gen/hyperlink_event.rb +44 -0
  203. data/lib/wx/doc/gen/icon.rb +267 -0
  204. data/lib/wx/doc/gen/icon_location.rb +40 -0
  205. data/lib/wx/doc/gen/image.rb +1371 -0
  206. data/lib/wx/doc/gen/image_list.rb +168 -0
  207. data/lib/wx/doc/gen/info_bar.rb +195 -0
  208. data/lib/wx/doc/gen/keyboard_state.rb +140 -0
  209. data/lib/wx/doc/gen/list_box.rb +304 -0
  210. data/lib/wx/doc/gen/list_ctrl.rb +1774 -0
  211. data/lib/wx/doc/gen/list_event.rb +208 -0
  212. data/lib/wx/doc/gen/listbook.rb +116 -0
  213. data/lib/wx/doc/gen/locale.rb +4293 -0
  214. data/lib/wx/doc/gen/log.rb +603 -0
  215. data/lib/wx/doc/gen/mdi_client_window.rb +47 -0
  216. data/lib/wx/doc/gen/mdi_frame.rb +324 -0
  217. data/lib/wx/doc/gen/media_ctrl.rb +269 -0
  218. data/lib/wx/doc/gen/media_event.rb +117 -0
  219. data/lib/wx/doc/gen/memory_dc.rb +174 -0
  220. data/lib/wx/doc/gen/menu.rb +509 -0
  221. data/lib/wx/doc/gen/menu_bar.rb +287 -0
  222. data/lib/wx/doc/gen/menu_item.rb +362 -0
  223. data/lib/wx/doc/gen/message_dialog.rb +238 -0
  224. data/lib/wx/doc/gen/mini_frame.rb +108 -0
  225. data/lib/wx/doc/gen/mirror_dc.rb +22 -0
  226. data/lib/wx/doc/gen/mouse_state.rb +150 -0
  227. data/lib/wx/doc/gen/multi_choice_dialog.rb +80 -0
  228. data/lib/wx/doc/gen/non_owned_window.rb +49 -0
  229. data/lib/wx/doc/gen/notebook.rb +278 -0
  230. data/lib/wx/doc/gen/num_validator.rb +37 -0
  231. data/lib/wx/doc/gen/number_entry_dialog.rb +93 -0
  232. data/lib/wx/doc/gen/object.rb +59 -0
  233. data/lib/wx/doc/gen/owner_drawn_combo_box.rb +395 -0
  234. data/lib/wx/doc/gen/paint_dc.rb +27 -0
  235. data/lib/wx/doc/gen/palette.rb +92 -0
  236. data/lib/wx/doc/gen/panel.rb +127 -0
  237. data/lib/wx/doc/gen/pen.rb +511 -0
  238. data/lib/wx/doc/gen/persistence_manager.rb +135 -0
  239. data/lib/wx/doc/gen/persistent_object.rb +52 -0
  240. data/lib/wx/doc/gen/persistent_window.rb +241 -0
  241. data/lib/wx/doc/gen/pg/event_list.rb +106 -0
  242. data/lib/wx/doc/gen/pg/numeric_property_validator.rb +54 -0
  243. data/lib/wx/doc/gen/pg/pg_array_editor_dialog.rb +292 -0
  244. data/lib/wx/doc/gen/pg/pg_cell.rb +177 -0
  245. data/lib/wx/doc/gen/pg/pg_editor.rb +721 -0
  246. data/lib/wx/doc/gen/pg/pg_multi_button.rb +152 -0
  247. data/lib/wx/doc/gen/pg/pg_properties.rb +2829 -0
  248. data/lib/wx/doc/gen/pg/pg_property.rb +2078 -0
  249. data/lib/wx/doc/gen/pg/pg_validation_info.rb +344 -0
  250. data/lib/wx/doc/gen/pg/property_grid.rb +740 -0
  251. data/lib/wx/doc/gen/pg/property_grid_event.rb +184 -0
  252. data/lib/wx/doc/gen/pg/property_grid_interface.rb +1098 -0
  253. data/lib/wx/doc/gen/pg/property_grid_manager.rb +415 -0
  254. data/lib/wx/doc/gen/pg/property_grid_page.rb +354 -0
  255. data/lib/wx/doc/gen/pg/property_grid_page_state.rb +165 -0
  256. data/lib/wx/doc/gen/picker_base.rb +152 -0
  257. data/lib/wx/doc/gen/platform_info.rb +622 -0
  258. data/lib/wx/doc/gen/popup_window.rb +107 -0
  259. data/lib/wx/doc/gen/progress_dialog.rb +100 -0
  260. data/lib/wx/doc/gen/property_sheet_dialog.rb +216 -0
  261. data/lib/wx/doc/gen/prt/event_list.rb +17 -0
  262. data/lib/wx/doc/gen/prt/page_setup_dialog.rb +44 -0
  263. data/lib/wx/doc/gen/prt/post_script_dc.rb +30 -0
  264. data/lib/wx/doc/gen/prt/preview_frame.rb +78 -0
  265. data/lib/wx/doc/gen/prt/print_abort_dialog.rb +151 -0
  266. data/lib/wx/doc/gen/prt/print_data.rb +804 -0
  267. data/lib/wx/doc/gen/prt/print_dialog.rb +55 -0
  268. data/lib/wx/doc/gen/prt/printer.rb +518 -0
  269. data/lib/wx/doc/gen/prt/printer_dc.rb +37 -0
  270. data/lib/wx/doc/gen/query_layout_info_event.rb +106 -0
  271. data/lib/wx/doc/gen/radio_box.rb +306 -0
  272. data/lib/wx/doc/gen/radio_button.rb +159 -0
  273. data/lib/wx/doc/gen/rbn/event_list.rb +136 -0
  274. data/lib/wx/doc/gen/rbn/ribbon_art_provider.rb +1132 -0
  275. data/lib/wx/doc/gen/rbn/ribbon_bar.rb +308 -0
  276. data/lib/wx/doc/gen/rbn/ribbon_bar_event.rb +45 -0
  277. data/lib/wx/doc/gen/rbn/ribbon_button_bar.rb +458 -0
  278. data/lib/wx/doc/gen/rbn/ribbon_button_bar_event.rb +63 -0
  279. data/lib/wx/doc/gen/rbn/ribbon_control.rb +143 -0
  280. data/lib/wx/doc/gen/rbn/ribbon_gallery.rb +229 -0
  281. data/lib/wx/doc/gen/rbn/ribbon_gallery_event.rb +55 -0
  282. data/lib/wx/doc/gen/rbn/ribbon_page.rb +174 -0
  283. data/lib/wx/doc/gen/rbn/ribbon_panel.rb +270 -0
  284. data/lib/wx/doc/gen/rbn/ribbon_panel_event.rb +45 -0
  285. data/lib/wx/doc/gen/rbn/ribbon_tool_bar.rb +360 -0
  286. data/lib/wx/doc/gen/rbn/ribbon_tool_bar_event.rb +42 -0
  287. data/lib/wx/doc/gen/rearrange_ctrl.rb +78 -0
  288. data/lib/wx/doc/gen/rearrange_list.rb +123 -0
  289. data/lib/wx/doc/gen/region.rb +380 -0
  290. data/lib/wx/doc/gen/region_iterator.rb +76 -0
  291. data/lib/wx/doc/gen/rich_tool_tip.rb +154 -0
  292. data/lib/wx/doc/gen/rtc/event_list.rb +125 -0
  293. data/lib/wx/doc/gen/rtc/rich_text_box.rb +445 -0
  294. data/lib/wx/doc/gen/rtc/rich_text_buffer.rb +1188 -0
  295. data/lib/wx/doc/gen/rtc/rich_text_buffer_data_object.rb +41 -0
  296. data/lib/wx/doc/gen/rtc/rich_text_composite_object.rb +538 -0
  297. data/lib/wx/doc/gen/rtc/rich_text_ctrl.rb +2103 -0
  298. data/lib/wx/doc/gen/rtc/rich_text_event.rb +173 -0
  299. data/lib/wx/doc/gen/rtc/rich_text_file_handler.rb +181 -0
  300. data/lib/wx/doc/gen/rtc/rich_text_formatting_dialog.rb +319 -0
  301. data/lib/wx/doc/gen/rtc/rich_text_header_footer_data.rb +193 -0
  302. data/lib/wx/doc/gen/rtc/rich_text_html_handler.rb +102 -0
  303. data/lib/wx/doc/gen/rtc/rich_text_image.rb +337 -0
  304. data/lib/wx/doc/gen/rtc/rich_text_object.rb +2922 -0
  305. data/lib/wx/doc/gen/rtc/rich_text_paragraph_layout_box.rb +1240 -0
  306. data/lib/wx/doc/gen/rtc/rich_text_printing.rb +258 -0
  307. data/lib/wx/doc/gen/rtc/rich_text_style_list_box.rb +344 -0
  308. data/lib/wx/doc/gen/rtc/rich_text_style_organiser_dialog.rb +227 -0
  309. data/lib/wx/doc/gen/rtc/rich_text_xml_handler.rb +59 -0
  310. data/lib/wx/doc/gen/rtc/symbol_picker_dialog.rb +169 -0
  311. data/lib/wx/doc/gen/sash_event.rb +147 -0
  312. data/lib/wx/doc/gen/sash_layout_window.rb +232 -0
  313. data/lib/wx/doc/gen/sash_window.rb +171 -0
  314. data/lib/wx/doc/gen/scaled_dc.rb +10 -0
  315. data/lib/wx/doc/gen/screen_dc.rb +30 -0
  316. data/lib/wx/doc/gen/scroll_bar.rb +204 -0
  317. data/lib/wx/doc/gen/scrolled_canvas.rb +410 -0
  318. data/lib/wx/doc/gen/scrolled_control.rb +410 -0
  319. data/lib/wx/doc/gen/scrolled_window.rb +430 -0
  320. data/lib/wx/doc/gen/search_ctrl.rb +159 -0
  321. data/lib/wx/doc/gen/secret_store.rb +116 -0
  322. data/lib/wx/doc/gen/simplebook.rb +110 -0
  323. data/lib/wx/doc/gen/single_choice_dialog.rb +89 -0
  324. data/lib/wx/doc/gen/sizer.rb +945 -0
  325. data/lib/wx/doc/gen/sizer_item.rb +244 -0
  326. data/lib/wx/doc/gen/slider.rb +342 -0
  327. data/lib/wx/doc/gen/spin_button.rb +157 -0
  328. data/lib/wx/doc/gen/spin_ctrl.rb +231 -0
  329. data/lib/wx/doc/gen/spin_ctrl_double.rb +192 -0
  330. data/lib/wx/doc/gen/spin_double_event.rb +55 -0
  331. data/lib/wx/doc/gen/spin_event.rb +51 -0
  332. data/lib/wx/doc/gen/splash_screen.rb +113 -0
  333. data/lib/wx/doc/gen/splitter_event.rb +99 -0
  334. data/lib/wx/doc/gen/splitter_window.rb +498 -0
  335. data/lib/wx/doc/gen/static_bitmap.rb +256 -0
  336. data/lib/wx/doc/gen/static_box.rb +180 -0
  337. data/lib/wx/doc/gen/static_box_sizer.rb +85 -0
  338. data/lib/wx/doc/gen/static_line.rb +83 -0
  339. data/lib/wx/doc/gen/static_text.rb +127 -0
  340. data/lib/wx/doc/gen/status_bar.rb +290 -0
  341. data/lib/wx/doc/gen/stc/event_list.rb +221 -0
  342. data/lib/wx/doc/gen/stc/styled_text_ctrl.rb +4474 -0
  343. data/lib/wx/doc/gen/stc/styled_text_event.rb +8762 -0
  344. data/lib/wx/doc/gen/std_dialog_button_sizer.rb +129 -0
  345. data/lib/wx/doc/gen/svg_file_dc.rb +164 -0
  346. data/lib/wx/doc/gen/system_options.rb +129 -0
  347. data/lib/wx/doc/gen/system_settings.rb +507 -0
  348. data/lib/wx/doc/gen/task_bar_icon.rb +127 -0
  349. data/lib/wx/doc/gen/task_bar_icon_event.rb +88 -0
  350. data/lib/wx/doc/gen/text_attr.rb +756 -0
  351. data/lib/wx/doc/gen/text_ctrl.rb +1033 -0
  352. data/lib/wx/doc/gen/text_entry.rb +441 -0
  353. data/lib/wx/doc/gen/text_entry_dialog.rb +220 -0
  354. data/lib/wx/doc/gen/text_validator.rb +245 -0
  355. data/lib/wx/doc/gen/time_picker_ctrl.rb +128 -0
  356. data/lib/wx/doc/gen/timer.rb +119 -0
  357. data/lib/wx/doc/gen/timer_event.rb +68 -0
  358. data/lib/wx/doc/gen/tip_provider.rb +63 -0
  359. data/lib/wx/doc/gen/tip_window.rb +51 -0
  360. data/lib/wx/doc/gen/toggle_button.rb +182 -0
  361. data/lib/wx/doc/gen/tool_bar.rb +890 -0
  362. data/lib/wx/doc/gen/tool_tip.rb +86 -0
  363. data/lib/wx/doc/gen/toolbook.rb +118 -0
  364. data/lib/wx/doc/gen/top_level_window.rb +497 -0
  365. data/lib/wx/doc/gen/tree_ctrl.rb +1052 -0
  366. data/lib/wx/doc/gen/tree_event.rb +127 -0
  367. data/lib/wx/doc/gen/treebook.rb +180 -0
  368. data/lib/wx/doc/gen/ui_action_simulator.rb +109 -0
  369. data/lib/wx/doc/gen/utils.rb +273 -0
  370. data/lib/wx/doc/gen/v_list_box.rb +272 -0
  371. data/lib/wx/doc/gen/v_scrolled_canvas.rb +195 -0
  372. data/lib/wx/doc/gen/v_scrolled_window.rb +191 -0
  373. data/lib/wx/doc/gen/validator.rb +68 -0
  374. data/lib/wx/doc/gen/variant.rb +294 -0
  375. data/lib/wx/doc/gen/window.rb +2917 -0
  376. data/lib/wx/doc/gen/window_dc.rb +38 -0
  377. data/lib/wx/doc/gen/window_disabler.rb +30 -0
  378. data/lib/wx/doc/gen/with_images.rb +84 -0
  379. data/lib/wx/doc/gen/wizard.rb +257 -0
  380. data/lib/wx/doc/gen/wizard_event.rb +113 -0
  381. data/lib/wx/doc/gen/wizard_page.rb +65 -0
  382. data/lib/wx/doc/gen/wizard_page_simple.rb +88 -0
  383. data/lib/wx/doc/gen/wrap_sizer.rb +79 -0
  384. data/lib/wx/doc/gen/xml_node.rb +316 -0
  385. data/lib/wx/doc/gen/xml_resource.rb +320 -0
  386. data/lib/wx/doc/generic_validator.rb +5 -0
  387. data/lib/wx/doc/pg/pg_property.rb +5 -0
  388. data/lib/wx/doc/tip_window.rb +18 -6
  389. data/lib/wx/doc/variant.rb +30 -0
  390. data/lib/wx/grid/events/evt_list.rb +166 -0
  391. data/lib/wx/html/events/evt_list.rb +27 -0
  392. data/lib/wx/html/simple_html_listbox.rb +46 -33
  393. data/lib/wx/keyword_defs.rb +9 -0
  394. data/lib/wx/pg/events/evt_list.rb +73 -0
  395. data/lib/wx/pg/pg_property.rb +85 -52
  396. data/lib/wx/pg/property_grid_interface.rb +12 -2
  397. data/lib/wx/rbn/events/evt_list.rb +102 -0
  398. data/lib/wx/rtc/events/evt_list.rb +98 -0
  399. data/lib/wx/rtc/ext/rich_text_ctrl.rb +24 -0
  400. data/lib/wx/stc/events/evt_list.rb +178 -0
  401. data/lib/wx/version.rb +1 -1
  402. data/lib/wx/wxruby/cmd/setup.rb +6 -0
  403. data/rakelib/configure.rb +9 -0
  404. data/rakelib/gem.rake +84 -66
  405. data/rakelib/gem.rb +4 -20
  406. data/rakelib/lib/config/linux.rb +1 -1
  407. data/rakelib/lib/config/macosx.rb +15 -1
  408. data/rakelib/lib/config/pkgman/linux.rb +7 -2
  409. data/rakelib/lib/config/unixish.rb +3 -3
  410. data/rakelib/lib/config.rb +19 -8
  411. data/rakelib/lib/core/include/swigdirector.inc +3 -3
  412. data/rakelib/lib/core/include/swigrubyerrors.inc +4 -8
  413. data/rakelib/lib/core/include/swigrubyrun.inc +20 -4
  414. data/rakelib/lib/core/include/swigrun.inc +189 -0
  415. data/rakelib/lib/core/package.rb +3 -1
  416. data/rakelib/lib/core/spec.rb +1 -1
  417. data/rakelib/lib/director/accelerator.rb +1 -1
  418. data/rakelib/lib/director/animation.rb +1 -0
  419. data/rakelib/lib/director/app_traits.rb +1 -1
  420. data/rakelib/lib/director/aui_manager.rb +21 -14
  421. data/rakelib/lib/director/aui_mdi_child_frame.rb +2 -0
  422. data/rakelib/lib/director/aui_mdi_parent_frame.rb +4 -0
  423. data/rakelib/lib/director/aui_notebook.rb +20 -3
  424. data/rakelib/lib/director/aui_tab_ctrl.rb +64 -106
  425. data/rakelib/lib/director/bitmap_combobox.rb +4 -2
  426. data/rakelib/lib/director/calendar_ctrl.rb +72 -14
  427. data/rakelib/lib/director/clipboard.rb +2 -0
  428. data/rakelib/lib/director/data_object.rb +15 -7
  429. data/rakelib/lib/director/date_picker_ctrl.rb +4 -1
  430. data/rakelib/lib/director/display.rb +81 -0
  431. data/rakelib/lib/director/event.rb +33 -16
  432. data/rakelib/lib/director/event_handler.rb +27 -2
  433. data/rakelib/lib/director/functions.rb +9 -0
  434. data/rakelib/lib/director/geometry.rb +5 -0
  435. data/rakelib/lib/director/grid_ctrl.rb +123 -28
  436. data/rakelib/lib/director/help_provider.rb +1 -1
  437. data/rakelib/lib/director/html_listbox.rb +30 -4
  438. data/rakelib/lib/director/hvscrolled.rb +154 -0
  439. data/rakelib/lib/director/image_list.rb +1 -0
  440. data/rakelib/lib/director/mdi_frame.rb +4 -0
  441. data/rakelib/lib/director/menu.rb +56 -15
  442. data/rakelib/lib/director/menu_bar.rb +62 -0
  443. data/rakelib/lib/director/menu_item.rb +7 -1
  444. data/rakelib/lib/director/num_validator.rb +27 -0
  445. data/rakelib/lib/director/numeric_property_validator.rb +9 -0
  446. data/rakelib/lib/director/persistent_window.rb +16 -0
  447. data/rakelib/lib/director/pgproperty.rb +3 -2
  448. data/rakelib/lib/director/popup_window.rb +2 -0
  449. data/rakelib/lib/director/preview_frame.rb +29 -6
  450. data/rakelib/lib/director/printer.rb +59 -5
  451. data/rakelib/lib/director/property_grid.rb +37 -18
  452. data/rakelib/lib/director/property_grid_interface.rb +10 -8
  453. data/rakelib/lib/director/property_grid_manager.rb +99 -39
  454. data/rakelib/lib/director/property_grid_page.rb +60 -0
  455. data/rakelib/lib/director/rich_tooltip.rb +22 -0
  456. data/rakelib/lib/director/richtext_ctrl.rb +5 -0
  457. data/rakelib/lib/director/richtext_object.rb +13 -4
  458. data/rakelib/lib/director/richtext_style_listbox.rb +11 -2
  459. data/rakelib/lib/director/scrolled_t.rb +3 -0
  460. data/rakelib/lib/director/searchctrl.rb +1 -0
  461. data/rakelib/lib/director/task_bar_icon.rb +14 -8
  462. data/rakelib/lib/director/text_validator.rb +9 -0
  463. data/rakelib/lib/director/tip_window.rb +117 -6
  464. data/rakelib/lib/director/tool_bar.rb +6 -0
  465. data/rakelib/lib/director/top_level_window.rb +0 -1
  466. data/rakelib/lib/director/utils.rb +3 -1
  467. data/rakelib/lib/director/validator.rb +12 -0
  468. data/rakelib/lib/director/variant.rb +64 -20
  469. data/rakelib/lib/director/vlistbox.rb +29 -22
  470. data/rakelib/lib/director/window.rb +12 -2
  471. data/rakelib/lib/director/xml_resource.rb +6 -0
  472. data/rakelib/lib/generate/doc/aui_manager.yaml +1 -1
  473. data/rakelib/lib/generate/doc/rich_tool_tip.yaml +26 -0
  474. data/rakelib/lib/generate/doc.rb +12 -7
  475. data/rakelib/lib/generate/interface.rb +16 -1
  476. data/rakelib/lib/specs/interfaces.rb +6 -2
  477. data/rakelib/lib/swig_runner.rb +12 -12
  478. data/rakelib/lib/typemap/aui_tabctrl.rb +46 -0
  479. data/rakelib/lib/typemap/common.rb +3 -3
  480. data/rakelib/lib/typemap/print_page_range.rb +32 -8
  481. data/samples/art/wxruby-512x512.png +0 -0
  482. data/samples/calendar/calendar.rb +64 -1
  483. data/samples/dialogs/dialogs.rb +172 -0
  484. data/samples/dialogs/tip.xpm +157 -0
  485. data/samples/drawing/maths_images.rb +1 -1
  486. data/samples/event/event.rb +1 -1
  487. data/samples/printing/printing2.rb +1 -1
  488. data/samples/sampler.rb +26 -8
  489. data/samples/text/textctrl.rb +2 -2
  490. data/samples/treectrl/treectrl.rb +2 -2
  491. data/tests/lib/leaked_process_event_exception_test.rb +1 -1
  492. data/tests/lib/leaked_queued_event_exception_test.rb +1 -1
  493. data/tests/lib/wxapp_runner.rb +31 -41
  494. data/tests/lib/wxframe_runner.rb +23 -11
  495. data/tests/lib/wxrb_test.rb +58 -0
  496. data/tests/test_app_event_filter.rb +1 -1
  497. data/tests/test_app_exit_exception.rb +3 -3
  498. data/tests/test_app_init_exception.rb +3 -3
  499. data/tests/test_app_traits.rb +24 -21
  500. data/tests/test_art.rb +7 -7
  501. data/tests/test_art_provider.rb +1 -1
  502. data/tests/test_basic.rb +2 -2
  503. data/tests/test_book_controls.rb +1 -1
  504. data/tests/test_box_sizer.rb +1 -1
  505. data/tests/test_clipboard.rb +5 -5
  506. data/tests/test_combo_ctrl.rb +2 -2
  507. data/tests/test_config.rb +11 -1
  508. data/tests/test_dc.rb +1 -1
  509. data/tests/test_dialog.rb +1 -1
  510. data/tests/test_event_handling.rb +1 -1
  511. data/tests/test_events.rb +1 -1
  512. data/tests/test_exceptions.rb +2 -2
  513. data/tests/test_ext_controls.rb +10 -10
  514. data/tests/test_file_dialog.rb +1 -1
  515. data/tests/test_font.rb +1 -1
  516. data/tests/test_gdi_object.rb +1 -1
  517. data/tests/test_geometry.rb +2 -2
  518. data/tests/test_grid_sizer.rb +2 -2
  519. data/tests/test_intl.rb +1 -1
  520. data/tests/test_item_data.rb +12 -12
  521. data/tests/test_list_ctrl.rb +1 -1
  522. data/tests/test_log.rb +2 -2
  523. data/tests/test_media_ctrl.rb +1 -1
  524. data/tests/test_menu.rb +114 -43
  525. data/tests/test_proof_check.rb +1 -1
  526. data/tests/test_propgrid.rb +857 -0
  527. data/tests/test_richtext.rb +10 -24
  528. data/tests/test_secret_store.rb +1 -1
  529. data/tests/test_sizer.rb +1 -1
  530. data/tests/test_std_controls.rb +8 -8
  531. data/tests/test_styled_text_ctrl.rb +1 -1
  532. data/tests/test_timer.rb +1 -1
  533. data/tests/test_tree_ctrl.rb +1 -1
  534. data/tests/test_validators.rb +79 -36
  535. data/tests/test_variant.rb +1 -1
  536. data/tests/test_window.rb +11 -11
  537. data/tests/testapp.rb +2 -2
  538. data/tests/testapp_noframe.rb +2 -2
  539. metadata +402 -12
  540. data/lib/wx/aui/aui_tab_ctrl.rb +0 -18
  541. data/rakelib/lib/director/hvscrolled_window.rb +0 -140
@@ -0,0 +1,178 @@
1
+ #-------------------------------------------------------------------------
2
+ # This file is automatically generated by the WXRuby3 interface generator.
3
+ # Do not alter this file.
4
+ #-------------------------------------------------------------------------
5
+
6
+ class Wx::EvtHandler
7
+ # from wxStyledTextEvent
8
+ self.register_event_type EventType[
9
+ 'evt_stc_autocomp_cancelled', 1,
10
+ Wx::STC::EVT_STC_AUTOCOMP_CANCELLED,
11
+ Wx::STC::StyledTextEvent
12
+ ]
13
+ self.register_event_type EventType[
14
+ 'evt_stc_autocomp_char_deleted', 1,
15
+ Wx::STC::EVT_STC_AUTOCOMP_CHAR_DELETED,
16
+ Wx::STC::StyledTextEvent
17
+ ]
18
+ self.register_event_type EventType[
19
+ 'evt_stc_autocomp_completed', 1,
20
+ Wx::STC::EVT_STC_AUTOCOMP_COMPLETED,
21
+ Wx::STC::StyledTextEvent
22
+ ]
23
+ self.register_event_type EventType[
24
+ 'evt_stc_autocomp_selection', 1,
25
+ Wx::STC::EVT_STC_AUTOCOMP_SELECTION,
26
+ Wx::STC::StyledTextEvent
27
+ ]
28
+ self.register_event_type EventType[
29
+ 'evt_stc_autocomp_selection_change', 1,
30
+ Wx::STC::EVT_STC_AUTOCOMP_SELECTION_CHANGE,
31
+ Wx::STC::StyledTextEvent
32
+ ]
33
+ self.register_event_type EventType[
34
+ 'evt_stc_calltip_click', 1,
35
+ Wx::STC::EVT_STC_CALLTIP_CLICK,
36
+ Wx::STC::StyledTextEvent
37
+ ]
38
+ self.register_event_type EventType[
39
+ 'evt_stc_change', 1,
40
+ Wx::STC::EVT_STC_CHANGE,
41
+ Wx::STC::StyledTextEvent
42
+ ]
43
+ self.register_event_type EventType[
44
+ 'evt_stc_charadded', 1,
45
+ Wx::STC::EVT_STC_CHARADDED,
46
+ Wx::STC::StyledTextEvent
47
+ ]
48
+ self.register_event_type EventType[
49
+ 'evt_stc_clipboard_copy', 1,
50
+ Wx::STC::EVT_STC_CLIPBOARD_COPY,
51
+ Wx::STC::StyledTextEvent
52
+ ]
53
+ self.register_event_type EventType[
54
+ 'evt_stc_clipboard_paste', 1,
55
+ Wx::STC::EVT_STC_CLIPBOARD_PASTE,
56
+ Wx::STC::StyledTextEvent
57
+ ]
58
+ self.register_event_type EventType[
59
+ 'evt_stc_do_drop', 1,
60
+ Wx::STC::EVT_STC_DO_DROP,
61
+ Wx::STC::StyledTextEvent
62
+ ]
63
+ self.register_event_type EventType[
64
+ 'evt_stc_doubleclick', 1,
65
+ Wx::STC::EVT_STC_DOUBLECLICK,
66
+ Wx::STC::StyledTextEvent
67
+ ]
68
+ self.register_event_type EventType[
69
+ 'evt_stc_drag_over', 1,
70
+ Wx::STC::EVT_STC_DRAG_OVER,
71
+ Wx::STC::StyledTextEvent
72
+ ]
73
+ self.register_event_type EventType[
74
+ 'evt_stc_dwellend', 1,
75
+ Wx::STC::EVT_STC_DWELLEND,
76
+ Wx::STC::StyledTextEvent
77
+ ]
78
+ self.register_event_type EventType[
79
+ 'evt_stc_dwellstart', 1,
80
+ Wx::STC::EVT_STC_DWELLSTART,
81
+ Wx::STC::StyledTextEvent
82
+ ]
83
+ self.register_event_type EventType[
84
+ 'evt_stc_hotspot_click', 1,
85
+ Wx::STC::EVT_STC_HOTSPOT_CLICK,
86
+ Wx::STC::StyledTextEvent
87
+ ]
88
+ self.register_event_type EventType[
89
+ 'evt_stc_hotspot_dclick', 1,
90
+ Wx::STC::EVT_STC_HOTSPOT_DCLICK,
91
+ Wx::STC::StyledTextEvent
92
+ ]
93
+ self.register_event_type EventType[
94
+ 'evt_stc_hotspot_release_click', 1,
95
+ Wx::STC::EVT_STC_HOTSPOT_RELEASE_CLICK,
96
+ Wx::STC::StyledTextEvent
97
+ ]
98
+ self.register_event_type EventType[
99
+ 'evt_stc_indicator_click', 1,
100
+ Wx::STC::EVT_STC_INDICATOR_CLICK,
101
+ Wx::STC::StyledTextEvent
102
+ ]
103
+ self.register_event_type EventType[
104
+ 'evt_stc_indicator_release', 1,
105
+ Wx::STC::EVT_STC_INDICATOR_RELEASE,
106
+ Wx::STC::StyledTextEvent
107
+ ]
108
+ self.register_event_type EventType[
109
+ 'evt_stc_macrorecord', 1,
110
+ Wx::STC::EVT_STC_MACRORECORD,
111
+ Wx::STC::StyledTextEvent
112
+ ]
113
+ self.register_event_type EventType[
114
+ 'evt_stc_margin_right_click', 1,
115
+ Wx::STC::EVT_STC_MARGIN_RIGHT_CLICK,
116
+ Wx::STC::StyledTextEvent
117
+ ]
118
+ self.register_event_type EventType[
119
+ 'evt_stc_marginclick', 1,
120
+ Wx::STC::EVT_STC_MARGINCLICK,
121
+ Wx::STC::StyledTextEvent
122
+ ]
123
+ self.register_event_type EventType[
124
+ 'evt_stc_modified', 1,
125
+ Wx::STC::EVT_STC_MODIFIED,
126
+ Wx::STC::StyledTextEvent
127
+ ]
128
+ self.register_event_type EventType[
129
+ 'evt_stc_needshown', 1,
130
+ Wx::STC::EVT_STC_NEEDSHOWN,
131
+ Wx::STC::StyledTextEvent
132
+ ]
133
+ self.register_event_type EventType[
134
+ 'evt_stc_painted', 1,
135
+ Wx::STC::EVT_STC_PAINTED,
136
+ Wx::STC::StyledTextEvent
137
+ ]
138
+ self.register_event_type EventType[
139
+ 'evt_stc_romodifyattempt', 1,
140
+ Wx::STC::EVT_STC_ROMODIFYATTEMPT,
141
+ Wx::STC::StyledTextEvent
142
+ ]
143
+ self.register_event_type EventType[
144
+ 'evt_stc_savepointleft', 1,
145
+ Wx::STC::EVT_STC_SAVEPOINTLEFT,
146
+ Wx::STC::StyledTextEvent
147
+ ]
148
+ self.register_event_type EventType[
149
+ 'evt_stc_savepointreached', 1,
150
+ Wx::STC::EVT_STC_SAVEPOINTREACHED,
151
+ Wx::STC::StyledTextEvent
152
+ ]
153
+ self.register_event_type EventType[
154
+ 'evt_stc_start_drag', 1,
155
+ Wx::STC::EVT_STC_START_DRAG,
156
+ Wx::STC::StyledTextEvent
157
+ ]
158
+ self.register_event_type EventType[
159
+ 'evt_stc_styleneeded', 1,
160
+ Wx::STC::EVT_STC_STYLENEEDED,
161
+ Wx::STC::StyledTextEvent
162
+ ]
163
+ self.register_event_type EventType[
164
+ 'evt_stc_updateui', 1,
165
+ Wx::STC::EVT_STC_UPDATEUI,
166
+ Wx::STC::StyledTextEvent
167
+ ]
168
+ self.register_event_type EventType[
169
+ 'evt_stc_userlistselection', 1,
170
+ Wx::STC::EVT_STC_USERLISTSELECTION,
171
+ Wx::STC::StyledTextEvent
172
+ ]
173
+ self.register_event_type EventType[
174
+ 'evt_stc_zoom', 1,
175
+ Wx::STC::EVT_STC_ZOOM,
176
+ Wx::STC::StyledTextEvent
177
+ ]
178
+ 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 = '1.6.0'
6
+ WXRUBY_VERSION = '1.7.0'
7
7
  end
@@ -37,6 +37,11 @@ module WxRuby
37
37
  "build a local copy of wxWidgets for use with wxRuby [false]") {|v| Setup.options['with-wxwin'] = true}
38
38
  opts.on('--with-wxhead',
39
39
  "build with the head (master) version of wxWidgets [false]", "(implies '--with-wxwin')") {|v| Setup.options['with-wxhead'] = true}
40
+ opts.on('--wxversion=version',
41
+ 'specify wxWidgets release version (xx.xx.xx) to build with (only valid with --with-wxwin)') do |v|
42
+ raise "Invalid version #{v} specified. Version should be '<major>.<minor>.<release>'." unless v =~ /^\d+\.\d+\.\d+$/
43
+ Setup.options['wxversion'] = v
44
+ end
40
45
  opts.on('--swig=path',
41
46
  "the path to swig executable [swig]") {|v| Setup.options['swig'] = v}
42
47
  opts.on('--doxygen=path',
@@ -76,6 +81,7 @@ module WxRuby
76
81
  cfg_args << "--wxxml=#{Setup.options['wxxml']}" if Setup.options['wxxml']
77
82
  cfg_args << '--with-wxwin' if Setup.options['with-wxwin']
78
83
  cfg_args << '--with-wxhead' if Setup.options['with-wxhead']
84
+ cfg_args << "--wxversion=#{Setup.options['wxversion']}" if Setup.options['wxversion']
79
85
  cfg_args << "--swig=#{Setup.options['swig']}" if Setup.options['swig']
80
86
  cfg_args << "--doxygen=#{Setup.options['doxygen']}" if Setup.options['doxygen']
81
87
  cfg_args << "--git=#{Setup.options['git']}" if Setup.options['git']
data/rakelib/configure.rb CHANGED
@@ -82,8 +82,15 @@ module WXRuby3
82
82
  "build with the head (master) version of wxWidgets; implies '--with-wxwin'") { |v|
83
83
  CONFIG['with-wxhead'] = true
84
84
  CONFIG['with-wxwin'] = true
85
+ CONFIG['wxversion'] = nil
85
86
  CONFIG[WXW_SYS_KEY] = false
86
87
  }
88
+ opts.on('--wxversion=version',
89
+ 'specify wxWidgets release version (xx.xx.xx) to build with (only valid with --with-wxwin)') { |v|
90
+ raise "Invalid version #{v} specified. Version should be '<major>.<minor>.<release>'." unless v =~ /^\d+\.\d+\.\d+$/
91
+ CONFIG['wxversion'] = v
92
+ CONFIG['with-wxhead'] = false
93
+ }
87
94
  opts.on('--with-debug',
88
95
  "build with debugger support [#{instance.get_config('with-debug')}]") {|v| CONFIG['with-debug'] = true}
89
96
  opts.on('--swig=path',
@@ -107,6 +114,8 @@ module WXRuby3
107
114
  # should we try to use a system or user defined wxWidgets installation?
108
115
  if !get_config('with-wxwin')
109
116
 
117
+ clear_config('wxversion')
118
+
110
119
  # check if a user defined wxWidgets location is specified or should be using a system standard install
111
120
  if get_cfg_string('wxwin').empty?
112
121
  # assume/force system standard install; will be checked below
data/rakelib/gem.rake CHANGED
@@ -12,6 +12,8 @@ namespace :wxruby do
12
12
 
13
13
  namespace :gem do
14
14
 
15
+ task :srcgemspec => ['bin:build', WXRuby3::Gem.gemspec_file]
16
+
15
17
  task :srcgem => ['bin:build', WXRuby3::Gem.gem_file]
16
18
 
17
19
  # this task only exists for installed (source) gems (where run tasks have been removed)
@@ -60,72 +62,88 @@ namespace :wxruby do
60
62
 
61
63
  end
62
64
 
65
+ file WXRuby3::Gem.gemspec_file => WXRuby3::Gem.manifest do |t|
66
+ code = <<~__GEMSPEC
67
+ Gem::Specification.new('wxruby3', '#{WXRuby3::WXRUBY_VERSION}') do |gem|
68
+ gem.summary = %Q{wxWidgets extension for Ruby}
69
+ gem.description = %Q{wxRuby3 is a Ruby library providing an extension for the wxWidgets C++ UI framework}
70
+ gem.email = 'mcorino@m2c-software.nl'
71
+ gem.homepage = "https://github.com/mcorino/wxRuby3"
72
+ gem.authors = ['Martin Corino']
73
+ gem.extensions = ['ext/mkrf_conf_ext.rb']
74
+ gem.files = [#{WXRuby3::Gem.manifest.collect {|f| "'#{f}'" }.join(',')}]
75
+ gem.require_paths = %w{lib}
76
+ gem.bindir = 'bin'
77
+ gem.executables = [#{WXRuby3::Bin.binaries.collect { |b| "'#{b}'" }.join(',')}]
78
+ gem.required_ruby_version = '>= 2.5'
79
+ gem.licenses = ['MIT']
80
+ gem.add_dependency 'nokogiri', '~> 1.12'
81
+ gem.add_dependency 'rake'
82
+ gem.add_dependency 'power_assert', '~> 3.0'
83
+ gem.add_dependency 'minitest', '>= 5.15'
84
+ gem.add_dependency 'plat4m', '~> 1.1'
85
+ gem.add_dependency 'openssl', '~> 4.0'
86
+ gem.rdoc_options <<
87
+ '--exclude=\\.dll' <<
88
+ '--exclude=\\.so' <<
89
+ '--exclude=lib/wx.rb' <<
90
+ '--exclude=lib/wx/*.rb' <<
91
+ "'--exclude=lib/wx/(aui|core|grid|html|pg|prt|rbn|rtc|stc|wxruby)/.*'"
92
+ gem.metadata = {
93
+ "bug_tracker_uri" => "https://github.com/mcorino/wxRuby3/issues",
94
+ "homepage_uri" => "https://github.com/mcorino/wxRuby3/wiki",
95
+ "source_code_uri" => "https://github.com/mcorino/wxRuby3",
96
+ "documentation_uri" => "https://mcorino.github.io/wxRuby3",
97
+ "github_repo" => "https://github.com/mcorino/wxRuby3"
98
+ }
99
+ gem.post_install_message = <<~__MSG
100
+
101
+ The wxRuby3 Gem has been successfully installed including the 'wxruby' utility.
102
+
103
+ In case no suitable binary release package was available for your platform you
104
+ will need to run the post-install setup process by executing:
105
+
106
+ $ wxruby setup
107
+
108
+ To check whether wxRuby3 is ready to run or not you can at any time execute the
109
+ following command:
110
+
111
+ $ wxruby check
112
+
113
+ Run 'wxruby check -h' for more information.
114
+
115
+ When the wxRuby3 setup has been fully completed you can start using wxRuby3.
116
+
117
+ You can run the regression tests to verify the installation by executing:
118
+
119
+ $ wxruby test
120
+
121
+ The wxRuby3 sample explorer can be run by executing:
122
+
123
+ $ wxruby sampler
124
+
125
+ Have fun using wxRuby3.
126
+
127
+ Run 'wxruby -h' to see information on the available commands.
128
+
129
+ __MSG
130
+ gem.required_rubygems_version = '>= 0' if gem.respond_to? :required_rubygems_version=
131
+ end
132
+ __GEMSPEC
133
+ File.open(t.name, 'w') { |f| f.puts code }
134
+ end
135
+
136
+
137
+ CLOBBER.include WXRuby3::Gem.gemspec_file
138
+
139
+ desc 'Build wxRuby 3 gemspec'
140
+ task :gemspec => 'wxruby:gem:srcgemspec'
141
+
142
+ directory 'pkg'
143
+
63
144
  # source gem file
64
- file WXRuby3::Gem.gem_file => WXRuby3::Gem.manifest do
65
- gemspec = WXRuby3::Gem.define_spec do |gem|
66
- gem.summary = %Q{wxWidgets extension for Ruby}
67
- gem.description = %Q{wxRuby3 is a Ruby library providing an extension for the wxWidgets C++ UI framework}
68
- gem.email = 'mcorino@m2c-software.nl'
69
- gem.homepage = "https://github.com/mcorino/wxRuby3"
70
- gem.authors = ['Martin Corino']
71
- gem.extensions = ['ext/mkrf_conf_ext.rb']
72
- gem.files = WXRuby3::Gem.manifest
73
- gem.require_paths = %w{lib}
74
- gem.bindir = 'bin'
75
- gem.executables = WXRuby3::Bin.binaries
76
- gem.required_ruby_version = '>= 2.5'
77
- gem.licenses = ['MIT']
78
- gem.add_dependency 'nokogiri', '~> 1.12'
79
- gem.add_dependency 'rake'
80
- gem.add_dependency 'minitest', '~> 5.15'
81
- gem.add_dependency 'test-unit', '~> 3.5'
82
- gem.add_dependency 'plat4m', '~> 1.1'
83
- gem.rdoc_options <<
84
- '--exclude=\\.dll' <<
85
- '--exclude=\\.so' <<
86
- '--exclude=lib/wx.rb' <<
87
- '--exclude=lib/wx/*.rb' <<
88
- "'--exclude=lib/wx/(aui|core|grid|html|pg|prt|rbn|rtc|stc|wxruby)/.*'"
89
- gem.metadata = {
90
- "bug_tracker_uri" => "https://github.com/mcorino/wxRuby3/issues",
91
- "homepage_uri" => "https://github.com/mcorino/wxRuby3/wiki",
92
- "source_code_uri" => "https://github.com/mcorino/wxRuby3",
93
- "documentation_uri" => "https://mcorino.github.io/wxRuby3",
94
- "github_repo" => "https://github.com/mcorino/wxRuby3"
95
- }
96
- gem.post_install_message = <<~__MSG
97
-
98
- The wxRuby3 Gem has been successfully installed including the 'wxruby' utility.
99
-
100
- In case no suitable binary release package was available for your platform you
101
- will need to run the post-install setup process by executing:
102
-
103
- $ wxruby setup
104
-
105
- To check whether wxRuby3 is ready to run or not you can at any time execute the
106
- following command:
107
-
108
- $ wxruby check
109
-
110
- Run 'wxruby check -h' for more information.
111
-
112
- When the wxRuby3 setup has been fully completed you can start using wxRuby3.
113
-
114
- You can run the regression tests to verify the installation by executing:
115
-
116
- $ wxruby test
117
-
118
- The wxRuby3 sample explorer can be run by executing:
119
-
120
- $ wxruby sampler
121
-
122
- Have fun using wxRuby3.
123
-
124
- Run 'wxruby -h' to see information on the available commands.
125
-
126
- __MSG
127
- end
128
- WXRuby3::Gem.build_gem(gemspec)
145
+ file WXRuby3::Gem.gem_file => ['wxruby:gem:srcgemspec', 'pkg'] do
146
+ WXRuby3.config.sh "gem build #{WXRuby3::Gem.gemspec_file} -o #{WXRuby3::Gem.gem_file}"
129
147
  end
130
148
 
131
149
  desc 'Build wxRuby 3 gem'
@@ -145,7 +163,7 @@ if File.file?(File.join(__dir__, 'run.rake'))
145
163
  end
146
164
 
147
165
  # binary package file
148
- file WXRuby3::Gem.bin_pkg_file => WXRuby3::Gem.bin_pkg_manifest do |t|
166
+ file WXRuby3::Gem.bin_pkg_file => [*WXRuby3::Gem.bin_pkg_manifest, 'pkg'] do |t|
149
167
  WXRuby3::Install.install_wxwin_shlibs
150
168
  begin
151
169
  # create bin package
data/rakelib/gem.rb CHANGED
@@ -8,11 +8,6 @@
8
8
 
9
9
  require 'set'
10
10
  require 'rubygems'
11
- require 'rubygems/package'
12
- begin
13
- require 'rubygems/builder'
14
- rescue LoadError
15
- end
16
11
  require 'zlib'
17
12
  require 'tempfile'
18
13
  require 'json'
@@ -62,20 +57,12 @@ module WXRuby3
62
57
  end
63
58
  private :gem_name
64
59
 
65
- def gem_file
66
- File.join('pkg', "#{gem_name}.gem")
60
+ def gemspec_file
61
+ "#{gem_name}.gemspec"
67
62
  end
68
63
 
69
- def build_gem(gemspec)
70
- if defined?(::Gem::Package) && ::Gem::Package.respond_to?(:build)
71
- gem_file_name = ::Gem::Package.build(gemspec)
72
- else
73
- gem_file_name = ::Gem::Builder.new(gemspec).build
74
- end
75
-
76
- FileUtils.mkdir_p('pkg')
77
-
78
- FileUtils.mv(gem_file_name, 'pkg')
64
+ def gem_file
65
+ File.join('pkg', "#{gem_name}.gem")
79
66
  end
80
67
 
81
68
  # Binary package helpers
@@ -122,9 +109,6 @@ module WXRuby3
122
109
  end
123
110
 
124
111
  def build_bin_pkg
125
- # make sure pkg directory exists
126
- FileUtils.mkdir_p('pkg')
127
-
128
112
  fname = bin_pkg_file
129
113
 
130
114
  # package registry and essential config
@@ -61,7 +61,7 @@ module WXRuby3
61
61
  if get_config('with-wxwin') && get_cfg_string('wxwin').empty?
62
62
  pkg_deps << 'patchelf' unless system('command -v patchelf>/dev/null')
63
63
  pkg_deps << 'make' unless system('command -v make>/dev/null')
64
- pkg_deps << 'git' unless system('command -v git>/dev/null')
64
+ pkg_deps << 'git' unless system("command -v #{get_cfg_string('git')}>/dev/null")
65
65
  end
66
66
  pkg_deps
67
67
  end
@@ -87,7 +87,21 @@ module WXRuby3
87
87
  # add deployment lookup paths for wxwidgets shared libraries
88
88
  def update_shlib_wxwin_libpaths(shlib, deplibs)
89
89
  if super
90
- changes = deplibs.collect { |dl| "-change '#{dl}' '@rpath/#{File.basename(dl)}'"}
90
+ # reduce deplibs to only base names
91
+ deplibs.collect! { |dl| File.basename(dl) }
92
+ # get all full load paths of the library dependencies of `shlib`
93
+ shlib_deps = expand("otool -L #{shlib}").chomp.split("\n")
94
+ # loose the first line
95
+ shlib_deps.shift
96
+ # extract only the loadpath
97
+ shlib_deps.collect! { |dl| dl.strip.split(' ').first }
98
+ # collect required loadpath changes for wxw libs
99
+ changes = shlib_deps.inject([]) do |list, dl|
100
+ if deplibs.include?(File.basename(dl))
101
+ list << "-change '#{dl}' '@rpath/#{File.basename(dl)}'"
102
+ end
103
+ list
104
+ end
91
105
  sh("install_name_tool #{changes.join(' ')} #{shlib} 2>/dev/null", verbose: false) { |_,_| }
92
106
  true
93
107
  else
@@ -44,11 +44,16 @@ module WXRuby3
44
44
 
45
45
  PLATFORM_DEPS = {
46
46
  debian: PlatformDependencies.new(%w[libgtk-3-dev libwebkit2gtk-4.0-dev libgspell-1-dev libunwind-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libcurl4-openssl-dev libsecret-1-dev libnotify-dev])
47
+ .add('debian', %w[libgtk-3-dev libwebkit2gtk-4.1-dev libgspell-1-dev libunwind-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libcurl4-openssl-dev libsecret-1-dev libnotify-dev], release: '13')
47
48
  .add('ubuntu', %w[libgtk-3-dev libwebkit2gtk-4.1-dev libgspell-1-dev libunwind-dev libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev libcurl4-openssl-dev libsecret-1-dev libnotify-dev], release: '24.04')
48
- .alias('ubuntu', '24.04', 'linuxmint', '22').alias('ubuntu', '24.04', 'linuxmint', '22.1'),
49
+ .alias('ubuntu', '24.04', 'linuxmint', '22')
50
+ .alias('ubuntu', '24.04', 'linuxmint', '22.1')
51
+ .alias('ubuntu', '24.04', 'linuxmint', '22.2')
52
+ .alias('ubuntu', '24.04', 'linuxmint', '22.3'),
49
53
  rhel: PlatformDependencies.new(%w[expat-devel findutils gspell-devel gstreamer1-plugins-base-devel gtk3-devel libcurl-devel libjpeg-devel libnotify-devel libpng-devel libSM-devel libsecret-devel libtiff-devel SDL-devel webkit2gtk4.1-devel zlib-devel]),
50
54
  suse: PlatformDependencies.new(%w[gtk3-devel webkit2gtk3-devel gspell-devel gstreamer-devel gstreamer-plugins-base-devel libcurl-devel libsecret-devel libnotify-devel libSDL-devel zlib-devel libjpeg-devel libpng-devel]),
51
- arch: PlatformDependencies.new(%w[pkg-config gtk3 webkit2gtk gspell libunwind gstreamer curl libsecret libnotify libpng12])
55
+ arch: PlatformDependencies.new(%w[pkg-config gtk3 webkit2gtk-4.1 gspell libunwind gstreamer curl libsecret libnotify libpng])
56
+ .add('manjaro', %w[pkgconf gtk3 webkit2gtk-4.1 gspell libunwind gstreamer curl libsecret libnotify libpng])
52
57
  }
53
58
  PLATFORM_ALTS = {
54
59
  suse: { 'g++' => 'gcc-c++' },
@@ -58,8 +58,8 @@ module WXRuby3
58
58
 
59
59
  def check_tool_pkgs
60
60
  pkg_deps = super
61
- pkg_deps << 'doxygen' unless system('command -v doxygen>/dev/null')
62
- pkg_deps << 'swig' unless system('command -v swig>/dev/null')
61
+ pkg_deps << 'doxygen' unless system("command -v #{get_cfg_string('doxygen')}>/dev/null")
62
+ pkg_deps << 'swig' unless system("command -v #{get_cfg_string('swig')}>/dev/null")
63
63
  pkg_deps
64
64
  end
65
65
 
@@ -211,7 +211,7 @@ module WXRuby3
211
211
  # remove all warning flags provided by Ruby config
212
212
  @ruby_cppflags = @ruby_cppflags.collect { |flags| flags.split(' ') }.flatten.
213
213
  select { |o| !o.start_with?('-W') || o.start_with?('-Wl,') }
214
- @ruby_cppflags.concat %w[-Wall -Wextra -Wno-unused-parameter] # only keep these
214
+ @ruby_cppflags.concat %w[-Wall -Wextra -Wno-unused-parameter -Wno-cpp] # only keep these
215
215
  # add include flags
216
216
  @ruby_cppflags.concat ['-I.', *@ruby_includes.collect { |inc| "-I#{inc}" }]
217
217
  @ruby_ldflags << "-Wl,-rpath,'#{get_rpath_origin}/../lib'" # add default rpath
@@ -74,19 +74,20 @@ module WXRuby3
74
74
  'wxwin' => ENV['WXWIN'] || '',
75
75
  'wxxml' => ENV['WXXML'] || '',
76
76
  'wxwininstdir' => '',
77
- 'with-wxwin' => !!ENV['WITH_WXWIN'],
77
+ 'with-wxwin' => ((ENV['WXRUBY_WITH_WXWIN'] || '') == '1'),
78
78
  'with-debug' => ((ENV['WXRUBY_DEBUG'] || '') == '1'),
79
79
  'swig' => ENV['WXRUBY_SWIG'] || 'swig',
80
80
  'doxygen' => ENV['WXRUBY_DOXYGEN'] || 'doxygen',
81
81
  'git' => ENV['WXRUBY_GIT'] || 'git'
82
82
  })
83
83
  CONFIG['autoinstall'] = (ENV['WXRUBY_AUTOINSTALL'] != '0') if ENV['WXRUBY_AUTOINSTALL']
84
+ CONFIG['wxversion'] = ENV['WXRUBY_WXVERSION'] if ENV['WXRUBY_WXVERSION']
84
85
  BUILD_CFG = '.wxconfig'
85
86
 
86
- # Ruby 2.5 is the minimum version for wxRuby3
87
+ # Ruby 2.7 is the minimum version for wxRuby3
87
88
  __rb_ver = RUBY_VERSION.split('.').collect {|v| v.to_i}
88
- if (__rb_major = __rb_ver.shift) < 2 || (__rb_major == 2 && __rb_ver.shift < 5)
89
- $stderr.puts 'ERROR: wxRuby3 requires Ruby >= 2.5.0!'
89
+ if (__rb_major = __rb_ver.shift) < 2 || (__rb_major == 2 && __rb_ver.shift < 7)
90
+ $stderr.puts 'ERROR: wxRuby3 requires Ruby >= 2.7.0!'
90
91
  exit(1)
91
92
  end
92
93
 
@@ -351,7 +352,7 @@ module WXRuby3
351
352
  alias :bash :sh
352
353
 
353
354
  def test(*tests, **options)
354
- errors = 0
355
+ errors = []
355
356
  excludes = (ENV['WXRUBY_TEST_EXCLUDE'] || '').split(':')
356
357
  tests = Dir.glob(File.join(Config.instance.test_dir, '*.rb')) if tests.empty?
357
358
  tests.each do |test|
@@ -360,10 +361,10 @@ module WXRuby3
360
361
  test = File.join(Config.instance.test_dir, test)
361
362
  test = Dir.glob(test+'.rb').shift || test unless File.exist?(test)
362
363
  end
363
- Rake.sh(Config.instance.exec_env.merge({'RUBYLIB'=>rb_lib_path}), FileUtils::RUBY, test) { |ok,status| errors += 1 unless ok }
364
+ Rake.sh(Config.instance.exec_env.merge({'RUBYLIB'=>rb_lib_path}), FileUtils::RUBY, test) { |ok,status| errors << File.basename(test, '.rb') unless ok }
364
365
  end
365
366
  end
366
- fail "ERRORS: ##{errors} test scripts failed." if errors>0
367
+ fail "ERRORS: ##{errors.size} test scripts failed.\n\t#{errors.join("\n\t")}" unless errors.empty?
367
368
  end
368
369
 
369
370
  def irb(**options)
@@ -439,6 +440,10 @@ module WXRuby3
439
440
  Config.set_config(key, val)
440
441
  end
441
442
 
443
+ def clear_config(key)
444
+ Config.clear_config(key)
445
+ end
446
+
442
447
  def dll_mask
443
448
  "#{dll_ext}*"
444
449
  end
@@ -581,7 +586,7 @@ module WXRuby3
581
586
  :extra_libs, :cpp_out_flag, :link_output_flag, :obj_ext, :dll_ext,
582
587
  :cxxflags, :libs, :cpp, :ld, :verbose_flag
583
588
  attr_reader :wx_port, :wx_path, :wx_cppflags, :wx_libs, :wx_setup_h, :wx_xml_path
584
- attr_reader :swig_major, :swig_dir, :swig_path, :src_dir, :src_path, :src_gen_dir, :src_gen_path, :obj_dir, :obj_path,
589
+ attr_reader :swig_dir, :swig_path, :src_dir, :src_path, :src_gen_dir, :src_gen_path, :obj_dir, :obj_path,
585
590
  :rake_deps_dir, :rake_deps_path, :dest_dir, :test_dir, :classes_dir, :classes_path,
586
591
  :common_dir, :common_path, :interface_dir, :interface_path,
587
592
  :ext_dir, :ext_path, :wxruby_dir, :wxruby_path, :exec_env
@@ -771,6 +776,8 @@ module WXRuby3
771
776
  "v#{@wx_version}"
772
777
  elsif get_config('with-wxhead')
773
778
  'master'
779
+ elsif get_config('wxversion')
780
+ "v#{get_config('wxversion')}"
774
781
  else
775
782
  nil
776
783
  end
@@ -898,6 +905,10 @@ module WXRuby3
898
905
  WXRuby3::CONFIG[key.to_s] = val
899
906
  end
900
907
 
908
+ def clear_config(key)
909
+ WXRuby3::CONFIG.delete(key.to_s)
910
+ end
911
+
901
912
  def is_configured?
902
913
  instance.is_configured?
903
914
  end
@@ -122,7 +122,7 @@ namespace Swig
122
122
  void setup_error(VALUE error);
123
123
 
124
124
  public:
125
- virtual ~DirectorException() throw();
125
+ virtual ~DirectorException() SWIG_NOEXCEPT;
126
126
 
127
127
  VALUE getType() const
128
128
  {
@@ -140,7 +140,7 @@ namespace Swig
140
140
  return swig_msg;
141
141
  }
142
142
 
143
- const char *what() const throw()
143
+ const char *what() const SWIG_NOEXCEPT
144
144
  {
145
145
  return swig_msg.c_str();
146
146
  }
@@ -157,7 +157,7 @@ namespace Swig
157
157
  this->setup_error(error);
158
158
  }
159
159
 
160
- DirectorException::~DirectorException() throw()
160
+ DirectorException::~DirectorException() SWIG_NOEXCEPT
161
161
  {}
162
162
 
163
163
 
@@ -15,11 +15,9 @@
15
15
  WXRB_EXPORT_FLAG VALUE
16
16
  getNullReferenceError(void)
17
17
  {
18
- static int init = 0;
19
- static VALUE rb_eNullReferenceError ;
20
- if (!init)
18
+ static VALUE rb_eNullReferenceError = Qnil;
19
+ if (rb_eNullReferenceError == Qnil)
21
20
  {
22
- init = 1;
23
21
  rb_eNullReferenceError = rb_define_class("NullReferenceError", rb_eRuntimeError);
24
22
  }
25
23
  return rb_eNullReferenceError;
@@ -28,11 +26,9 @@ getNullReferenceError(void)
28
26
  WXRB_EXPORT_FLAG VALUE
29
27
  getObjectPreviouslyDeletedError(void)
30
28
  {
31
- static int init = 0;
32
- static VALUE rb_eObjectPreviouslyDeleted ;
33
- if (!init)
29
+ static VALUE rb_eObjectPreviouslyDeleted = Qnil;
30
+ if (rb_eObjectPreviouslyDeleted == Qnil)
34
31
  {
35
- init = 1;
36
32
  rb_eObjectPreviouslyDeleted = rb_define_class("ObjectPreviouslyDeleted", rb_eRuntimeError);
37
33
  }
38
34
  return rb_eObjectPreviouslyDeleted;