wxruby3 0.9.1-x64-mingw-ucrt → 0.9.3-x64-mingw-ucrt

Sign up to get free protection for your applications and to get access to all the features.
Files changed (740) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +1 -0
  3. data/INSTALL.md +35 -29
  4. data/README.md +24 -15
  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/aui/aui_tab_ctrl.rb +18 -0
  21. data/lib/wx/aui/auinotebook.rb +6 -2
  22. data/lib/wx/aui/require.rb +1 -0
  23. data/lib/wx/core/app.rb +2 -2
  24. data/lib/wx/core/bitmap_combobox.rb +17 -21
  25. data/lib/wx/core/collapsible_pane.rb +1 -1
  26. data/lib/wx/core/combobox.rb +13 -3
  27. data/lib/wx/core/controlwithitems.rb +40 -128
  28. data/lib/wx/core/enum.rb +17 -1
  29. data/lib/wx/core/event.rb +6 -1
  30. data/lib/wx/core/events/evt_list.rb +5 -4
  31. data/lib/wx/core/evthandler.rb +8 -2
  32. data/lib/wx/core/generic_validator.rb +312 -0
  33. data/lib/wx/core/listbox.rb +2 -2
  34. data/lib/wx/core/log.rb +1 -1
  35. data/lib/wx/core/menu.rb +10 -0
  36. data/lib/wx/core/notebook.rb +6 -2
  37. data/lib/wx/core/owner_drawn_combobox.rb +45 -0
  38. data/lib/wx/core/size.rb +4 -0
  39. data/lib/wx/core/sizer.rb +12 -2
  40. data/lib/wx/core/standard_paths.rb +22 -0
  41. data/lib/wx/core/task_bar_button.rb +19 -0
  42. data/lib/wx/core/text_entry.rb +4 -1
  43. data/lib/wx/core/textctrl.rb +11 -1
  44. data/lib/wx/core/{treectrl.rb → tree_ctrl.rb} +31 -12
  45. data/lib/wx/core/validator.rb +70 -5
  46. data/lib/wx/core/window.rb +13 -7
  47. data/lib/wx/doc/app.rb +48 -38
  48. data/lib/wx/doc/art_locator.rb +48 -43
  49. data/lib/wx/doc/aui/auimanager.rb +16 -8
  50. data/lib/wx/doc/aui/auinotebook.rb +20 -5
  51. data/lib/wx/doc/clipboard.rb +11 -7
  52. data/lib/wx/doc/colour_dialog.rb +14 -10
  53. data/lib/wx/doc/comboctrl.rb +18 -0
  54. data/lib/wx/doc/controlwithitems.rb +34 -8
  55. data/lib/wx/doc/data_object.rb +2 -2
  56. data/lib/wx/doc/date_picker_ctrl.rb +23 -0
  57. data/lib/wx/doc/editable_listbox.rb +44 -0
  58. data/lib/wx/doc/enum.rb +15 -0
  59. data/lib/wx/doc/event.rb +12 -0
  60. data/lib/wx/doc/evthandler.rb +113 -108
  61. data/lib/wx/doc/extra/12_client_data.md +89 -0
  62. data/lib/wx/doc/extra/13_validators.md +139 -0
  63. data/lib/wx/doc/font.rb +1 -0
  64. data/lib/wx/doc/gc_dc.rb +6 -1
  65. data/lib/wx/doc/gdi_common.rb +4 -0
  66. data/lib/wx/doc/gen/about_dialog_info.rb +26 -2
  67. data/lib/wx/doc/gen/accelerator.rb +19 -4
  68. data/lib/wx/doc/gen/accessible.rb +48 -47
  69. data/lib/wx/doc/gen/activity_indicator.rb +10 -4
  70. data/lib/wx/doc/gen/animation.rb +19 -3
  71. data/lib/wx/doc/gen/animation_ctrl.rb +16 -7
  72. data/lib/wx/doc/gen/any_button.rb +22 -1
  73. data/lib/wx/doc/gen/app.rb +41 -5
  74. data/lib/wx/doc/gen/app_traits.rb +65 -15
  75. data/lib/wx/doc/gen/art_provider.rb +33 -7
  76. data/lib/wx/doc/gen/aui/aui_dock_art.rb +18 -3
  77. data/lib/wx/doc/gen/aui/aui_floating_frame.rb +2 -0
  78. data/lib/wx/doc/gen/aui/aui_manager.rb +35 -8
  79. data/lib/wx/doc/gen/aui/aui_manager_event.rb +11 -4
  80. data/lib/wx/doc/gen/aui/aui_mdi_child_frame.rb +4 -0
  81. data/lib/wx/doc/gen/aui/aui_mdi_client_window.rb +3 -0
  82. data/lib/wx/doc/gen/aui/aui_mdi_parent_frame.rb +8 -1
  83. data/lib/wx/doc/gen/aui/aui_notebook.rb +31 -7
  84. data/lib/wx/doc/gen/aui/aui_notebook_event.rb +5 -4
  85. data/lib/wx/doc/gen/aui/aui_pane_info.rb +38 -2
  86. data/lib/wx/doc/gen/aui/aui_tab_art.rb +9 -3
  87. data/lib/wx/doc/gen/aui/aui_tab_ctrl.rb +2 -1
  88. data/lib/wx/doc/gen/aui/aui_tool_bar.rb +20 -6
  89. data/lib/wx/doc/gen/aui/aui_tool_bar_art.rb +4 -2
  90. data/lib/wx/doc/gen/aui/aui_tool_bar_event.rb +5 -7
  91. data/lib/wx/doc/gen/aui/aui_tool_bar_item.rb +5 -1
  92. data/lib/wx/doc/gen/aui/event_list.rb +164 -160
  93. data/lib/wx/doc/gen/banner_window.rb +8 -1
  94. data/lib/wx/doc/gen/bitmap.rb +94 -16
  95. data/lib/wx/doc/gen/bitmap_button.rb +16 -8
  96. data/lib/wx/doc/gen/bitmap_combo_box.rb +20 -10
  97. data/lib/wx/doc/gen/book_ctrl_base.rb +31 -4
  98. data/lib/wx/doc/gen/book_ctrl_event.rb +9 -3
  99. data/lib/wx/doc/gen/box_sizer.rb +5 -1
  100. data/lib/wx/doc/gen/brush.rb +20 -2
  101. data/lib/wx/doc/gen/busy_info.rb +10 -2
  102. data/lib/wx/doc/gen/button.rb +31 -11
  103. data/lib/wx/doc/gen/calculate_layout_event.rb +5 -3
  104. data/lib/wx/doc/gen/calendar_ctrl.rb +38 -13
  105. data/lib/wx/doc/gen/calendar_date_attr.rb +2 -1
  106. data/lib/wx/doc/gen/calendar_event.rb +5 -2
  107. data/lib/wx/doc/gen/caret.rb +3 -1
  108. data/lib/wx/doc/gen/check_box.rb +17 -7
  109. data/lib/wx/doc/gen/check_list_box.rb +8 -6
  110. data/lib/wx/doc/gen/choice.rb +28 -9
  111. data/lib/wx/doc/gen/choicebook.rb +7 -7
  112. data/lib/wx/doc/gen/client_dc.rb +6 -2
  113. data/lib/wx/doc/gen/clipboard.rb +16 -3
  114. data/lib/wx/doc/gen/collapsible_pane.rb +9 -7
  115. data/lib/wx/doc/gen/collapsible_pane_event.rb +3 -3
  116. data/lib/wx/doc/gen/colour.rb +28 -4
  117. data/lib/wx/doc/gen/colour_dialog.rb +15 -7
  118. data/lib/wx/doc/gen/colour_picker_ctrl.rb +13 -10
  119. data/lib/wx/doc/gen/colour_picker_event.rb +5 -5
  120. data/lib/wx/doc/gen/combo_box.rb +36 -14
  121. data/lib/wx/doc/gen/combo_ctrl.rb +117 -295
  122. data/lib/wx/doc/gen/command_link_button.rb +12 -5
  123. data/lib/wx/doc/gen/context_help_button.rb +13 -3
  124. data/lib/wx/doc/gen/control.rb +22 -8
  125. data/lib/wx/doc/gen/control_with_items.rb +45 -10
  126. data/lib/wx/doc/gen/core.rb +4 -4
  127. data/lib/wx/doc/gen/cursor.rb +10 -8
  128. data/lib/wx/doc/gen/data_format.rb +7 -1
  129. data/lib/wx/doc/gen/data_object.rb +42 -18
  130. data/lib/wx/doc/gen/date_event.rb +3 -2
  131. data/lib/wx/doc/gen/date_picker_ctrl.rb +18 -8
  132. data/lib/wx/doc/gen/dc.rb +238 -36
  133. data/lib/wx/doc/gen/defs.rb +51 -51
  134. data/lib/wx/doc/gen/dial_up_event.rb +2 -1
  135. data/lib/wx/doc/gen/dial_up_manager.rb +25 -5
  136. data/lib/wx/doc/gen/dialog.rb +72 -13
  137. data/lib/wx/doc/gen/dir_dialog.rb +22 -5
  138. data/lib/wx/doc/gen/dir_filter_list_ctrl.rb +2 -0
  139. data/lib/wx/doc/gen/dir_picker_ctrl.rb +14 -10
  140. data/lib/wx/doc/gen/drag_drop.rb +28 -7
  141. data/lib/wx/doc/gen/drag_image.rb +13 -2
  142. data/lib/wx/doc/gen/editable_list_box.rb +7 -5
  143. data/lib/wx/doc/gen/event.rb +57 -26
  144. data/lib/wx/doc/gen/event_blocker.rb +2 -3
  145. data/lib/wx/doc/gen/event_filter.rb +3 -0
  146. data/lib/wx/doc/gen/event_list.rb +1656 -1652
  147. data/lib/wx/doc/gen/events.rb +305 -173
  148. data/lib/wx/doc/gen/evt_handler.rb +49 -3
  149. data/lib/wx/doc/gen/ext_help_controller.rb +10 -1
  150. data/lib/wx/doc/gen/file_ctrl.rb +28 -10
  151. data/lib/wx/doc/gen/file_ctrl_event.rb +7 -4
  152. data/lib/wx/doc/gen/file_dialog.rb +44 -14
  153. data/lib/wx/doc/gen/file_dialog_custom_control.rb +19 -0
  154. data/lib/wx/doc/gen/file_dialog_customize_hook.rb +11 -3
  155. data/lib/wx/doc/gen/file_dir_picker_event.rb +4 -4
  156. data/lib/wx/doc/gen/file_picker_ctrl.rb +12 -9
  157. data/lib/wx/doc/gen/file_system.rb +54 -15
  158. data/lib/wx/doc/gen/find_dialog_event.rb +6 -4
  159. data/lib/wx/doc/gen/find_replace_data.rb +2 -1
  160. data/lib/wx/doc/gen/find_replace_dialog.rb +4 -1
  161. data/lib/wx/doc/gen/flex_grid_sizer.rb +13 -1
  162. data/lib/wx/doc/gen/font.rb +103 -20
  163. data/lib/wx/doc/gen/font_data.rb +16 -3
  164. data/lib/wx/doc/gen/font_dialog.rb +6 -1
  165. data/lib/wx/doc/gen/font_picker_ctrl.rb +14 -7
  166. data/lib/wx/doc/gen/font_picker_event.rb +3 -3
  167. data/lib/wx/doc/gen/frame.rb +73 -15
  168. data/lib/wx/doc/gen/fs_file.rb +39 -10
  169. data/lib/wx/doc/gen/gauge.rb +19 -8
  170. data/lib/wx/doc/gen/gb_sizer_item.rb +5 -1
  171. data/lib/wx/doc/gen/gcdc.rb +3 -2
  172. data/lib/wx/doc/gen/gdi_common.rb +80 -11
  173. data/lib/wx/doc/gen/gdi_object.rb +1 -1
  174. data/lib/wx/doc/gen/generic_dir_ctrl.rb +13 -7
  175. data/lib/wx/doc/gen/graphics_context.rb +86 -10
  176. data/lib/wx/doc/gen/graphics_object.rb +35 -6
  177. data/lib/wx/doc/gen/grid/event_list.rb +168 -164
  178. data/lib/wx/doc/gen/grid/grid_cell_activatable_editor.rb +3 -0
  179. data/lib/wx/doc/gen/grid/grid_cell_attr.rb +16 -3
  180. data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_editor.rb +1 -1
  181. data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_renderer.rb +2 -1
  182. data/lib/wx/doc/gen/grid/grid_cell_bool_editor.rb +2 -1
  183. data/lib/wx/doc/gen/grid/grid_cell_bool_renderer.rb +1 -1
  184. data/lib/wx/doc/gen/grid/grid_cell_choice_editor.rb +2 -1
  185. data/lib/wx/doc/gen/grid/grid_cell_date_editor.rb +2 -1
  186. data/lib/wx/doc/gen/grid/grid_cell_date_renderer.rb +2 -1
  187. data/lib/wx/doc/gen/grid/grid_cell_date_time_renderer.rb +2 -1
  188. data/lib/wx/doc/gen/grid/grid_cell_editor.rb +10 -1
  189. data/lib/wx/doc/gen/grid/grid_cell_enum_editor.rb +2 -1
  190. data/lib/wx/doc/gen/grid/grid_cell_enum_renderer.rb +2 -1
  191. data/lib/wx/doc/gen/grid/grid_cell_float_editor.rb +1 -1
  192. data/lib/wx/doc/gen/grid/grid_cell_float_renderer.rb +2 -1
  193. data/lib/wx/doc/gen/grid/grid_cell_number_editor.rb +2 -1
  194. data/lib/wx/doc/gen/grid/grid_cell_number_renderer.rb +1 -1
  195. data/lib/wx/doc/gen/grid/grid_cell_renderer.rb +7 -1
  196. data/lib/wx/doc/gen/grid/grid_cell_string_renderer.rb +1 -1
  197. data/lib/wx/doc/gen/grid/grid_cell_text_editor.rb +1 -1
  198. data/lib/wx/doc/gen/grid/grid_ctrl.rb +256 -12
  199. data/lib/wx/doc/gen/grid/grid_editor_created_event.rb +6 -4
  200. data/lib/wx/doc/gen/grid/grid_event.rb +6 -4
  201. data/lib/wx/doc/gen/grid/grid_range_select_event.rb +4 -4
  202. data/lib/wx/doc/gen/grid/grid_size_event.rb +4 -4
  203. data/lib/wx/doc/gen/grid/grid_string_table.rb +8 -0
  204. data/lib/wx/doc/gen/grid/grid_table_base.rb +28 -3
  205. data/lib/wx/doc/gen/grid/grid_table_message.rb +2 -0
  206. data/lib/wx/doc/gen/grid_bag_sizer.rb +21 -7
  207. data/lib/wx/doc/gen/grid_sizer.rb +11 -1
  208. data/lib/wx/doc/gen/gui_event_loop.rb +13 -3
  209. data/lib/wx/doc/gen/header_ctrl.rb +110 -11
  210. data/lib/wx/doc/gen/header_ctrl_event.rb +4 -2
  211. data/lib/wx/doc/gen/help_controller.rb +14 -3
  212. data/lib/wx/doc/gen/help_provider.rb +22 -4
  213. data/lib/wx/doc/gen/html/event_list.rb +41 -37
  214. data/lib/wx/doc/gen/html/html_cell.rb +48 -6
  215. data/lib/wx/doc/gen/html/html_cell_event.rb +5 -4
  216. data/lib/wx/doc/gen/html/html_easy_printing.rb +20 -3
  217. data/lib/wx/doc/gen/html/html_help_controller.rb +26 -2
  218. data/lib/wx/doc/gen/html/html_help_data.rb +8 -1
  219. data/lib/wx/doc/gen/html/html_help_window.rb +9 -1
  220. data/lib/wx/doc/gen/html/html_link_event.rb +3 -3
  221. data/lib/wx/doc/gen/html/html_list_box.rb +54 -16
  222. data/lib/wx/doc/gen/html/html_printout.rb +7 -1
  223. data/lib/wx/doc/gen/html/html_window.rb +43 -6
  224. data/lib/wx/doc/gen/hyperlink_ctrl.rb +9 -8
  225. data/lib/wx/doc/gen/hyperlink_event.rb +3 -3
  226. data/lib/wx/doc/gen/icon.rb +23 -29
  227. data/lib/wx/doc/gen/icon_location.rb +1 -1
  228. data/lib/wx/doc/gen/image.rb +143 -20
  229. data/lib/wx/doc/gen/image_list.rb +25 -6
  230. data/lib/wx/doc/gen/info_bar.rb +14 -2
  231. data/lib/wx/doc/gen/keyboard_state.rb +11 -1
  232. data/lib/wx/doc/gen/list_box.rb +46 -17
  233. data/lib/wx/doc/gen/list_ctrl.rb +165 -29
  234. data/lib/wx/doc/gen/list_event.rb +13 -4
  235. data/lib/wx/doc/gen/listbook.rb +7 -7
  236. data/lib/wx/doc/gen/locale.rb +68 -4
  237. data/lib/wx/doc/gen/log.rb +58 -12
  238. data/lib/wx/doc/gen/mdi_client_window.rb +11 -2
  239. data/lib/wx/doc/gen/mdi_frame.rb +51 -7
  240. data/lib/wx/doc/gen/media_ctrl.rb +43 -18
  241. data/lib/wx/doc/gen/media_event.rb +6 -4
  242. data/lib/wx/doc/gen/memory_dc.rb +16 -6
  243. data/lib/wx/doc/gen/menu.rb +81 -26
  244. data/lib/wx/doc/gen/menu_bar.rb +74 -15
  245. data/lib/wx/doc/gen/menu_item.rb +67 -19
  246. data/lib/wx/doc/gen/message_dialog.rb +17 -8
  247. data/lib/wx/doc/gen/mini_frame.rb +14 -5
  248. data/lib/wx/doc/gen/mirror_dc.rb +1 -2
  249. data/lib/wx/doc/gen/mouse_state.rb +1 -1
  250. data/lib/wx/doc/gen/multi_choice_dialog.rb +9 -4
  251. data/lib/wx/doc/gen/non_owned_window.rb +4 -1
  252. data/lib/wx/doc/gen/notebook.rb +27 -9
  253. data/lib/wx/doc/gen/num_validator.rb +37 -0
  254. data/lib/wx/doc/gen/number_entry_dialog.rb +5 -1
  255. data/lib/wx/doc/gen/object.rb +3 -1
  256. data/lib/wx/doc/gen/owner_drawn_combo_box.rb +340 -0
  257. data/lib/wx/doc/gen/paint_dc.rb +1 -1
  258. data/lib/wx/doc/gen/palette.rb +5 -1
  259. data/lib/wx/doc/gen/panel.rb +25 -8
  260. data/lib/wx/doc/gen/pen.rb +46 -8
  261. data/lib/wx/doc/gen/pg/event_list.rb +97 -93
  262. data/lib/wx/doc/gen/pg/numeric_property_validator.rb +4 -1
  263. data/lib/wx/doc/gen/pg/pg_array_editor_dialog.rb +12 -1
  264. data/lib/wx/doc/gen/pg/pg_cell.rb +11 -3
  265. data/lib/wx/doc/gen/pg/pg_editor.rb +161 -16
  266. data/lib/wx/doc/gen/pg/pg_multi_button.rb +3 -2
  267. data/lib/wx/doc/gen/pg/pg_properties.rb +632 -83
  268. data/lib/wx/doc/gen/pg/pg_property.rb +381 -77
  269. data/lib/wx/doc/gen/pg/pg_validation_info.rb +11 -4
  270. data/lib/wx/doc/gen/pg/property_grid.rb +123 -20
  271. data/lib/wx/doc/gen/pg/property_grid_event.rb +41 -9
  272. data/lib/wx/doc/gen/pg/property_grid_interface.rb +273 -34
  273. data/lib/wx/doc/gen/pg/property_grid_manager.rb +62 -10
  274. data/lib/wx/doc/gen/pg/property_grid_page.rb +33 -8
  275. data/lib/wx/doc/gen/pg/property_grid_page_state.rb +18 -4
  276. data/lib/wx/doc/gen/picker_base.rb +22 -5
  277. data/lib/wx/doc/gen/platform_info.rb +35 -9
  278. data/lib/wx/doc/gen/popup_window.rb +7 -5
  279. data/lib/wx/doc/gen/progress_dialog.rb +5 -0
  280. data/lib/wx/doc/gen/property_sheet_dialog.rb +20 -4
  281. data/lib/wx/doc/gen/prt/event_list.rb +8 -4
  282. data/lib/wx/doc/gen/prt/page_setup_dialog.rb +3 -1
  283. data/lib/wx/doc/gen/prt/post_script_dc.rb +3 -2
  284. data/lib/wx/doc/gen/prt/preview_frame.rb +5 -1
  285. data/lib/wx/doc/gen/prt/print_abort_dialog.rb +4 -0
  286. data/lib/wx/doc/gen/prt/print_data.rb +31 -3
  287. data/lib/wx/doc/gen/prt/print_dialog.rb +5 -1
  288. data/lib/wx/doc/gen/prt/printer.rb +87 -11
  289. data/lib/wx/doc/gen/prt/printer_dc.rb +3 -1
  290. data/lib/wx/doc/gen/query_layout_info_event.rb +10 -3
  291. data/lib/wx/doc/gen/radio_box.rb +28 -10
  292. data/lib/wx/doc/gen/radio_button.rb +22 -9
  293. data/lib/wx/doc/gen/rbn/event_list.rb +127 -123
  294. data/lib/wx/doc/gen/rbn/ribbon_art_provider.rb +82 -3
  295. data/lib/wx/doc/gen/rbn/ribbon_bar.rb +26 -4
  296. data/lib/wx/doc/gen/rbn/ribbon_bar_event.rb +3 -2
  297. data/lib/wx/doc/gen/rbn/ribbon_button_bar.rb +50 -12
  298. data/lib/wx/doc/gen/rbn/ribbon_button_bar_event.rb +3 -2
  299. data/lib/wx/doc/gen/rbn/ribbon_control.rb +11 -1
  300. data/lib/wx/doc/gen/rbn/ribbon_gallery.rb +21 -11
  301. data/lib/wx/doc/gen/rbn/ribbon_gallery_event.rb +2 -2
  302. data/lib/wx/doc/gen/rbn/ribbon_page.rb +12 -1
  303. data/lib/wx/doc/gen/rbn/ribbon_panel.rb +16 -4
  304. data/lib/wx/doc/gen/rbn/ribbon_panel_event.rb +3 -3
  305. data/lib/wx/doc/gen/rbn/ribbon_tool_bar.rb +27 -3
  306. data/lib/wx/doc/gen/rbn/ribbon_tool_bar_event.rb +3 -1
  307. data/lib/wx/doc/gen/rearrange_ctrl.rb +5 -2
  308. data/lib/wx/doc/gen/rearrange_list.rb +12 -4
  309. data/lib/wx/doc/gen/region.rb +104 -17
  310. data/lib/wx/doc/gen/region_iterator.rb +1 -1
  311. data/lib/wx/doc/gen/rtc/event_list.rb +116 -112
  312. data/lib/wx/doc/gen/rtc/rich_text_box.rb +27 -9
  313. data/lib/wx/doc/gen/rtc/rich_text_buffer.rb +45 -11
  314. data/lib/wx/doc/gen/rtc/rich_text_buffer_data_object.rb +1 -1
  315. data/lib/wx/doc/gen/rtc/rich_text_composite_object.rb +23 -14
  316. data/lib/wx/doc/gen/rtc/rich_text_ctrl.rb +84 -7
  317. data/lib/wx/doc/gen/rtc/rich_text_event.rb +8 -4
  318. data/lib/wx/doc/gen/rtc/rich_text_file_handler.rb +8 -2
  319. data/lib/wx/doc/gen/rtc/rich_text_formatting_dialog.rb +8 -3
  320. data/lib/wx/doc/gen/rtc/rich_text_header_footer_data.rb +4 -2
  321. data/lib/wx/doc/gen/rtc/rich_text_html_handler.rb +6 -3
  322. data/lib/wx/doc/gen/rtc/rich_text_image.rb +7 -2
  323. data/lib/wx/doc/gen/rtc/rich_text_object.rb +82 -17
  324. data/lib/wx/doc/gen/rtc/rich_text_paragraph_layout_box.rb +54 -11
  325. data/lib/wx/doc/gen/rtc/rich_text_printing.rb +15 -2
  326. data/lib/wx/doc/gen/rtc/rich_text_style_list_box.rb +14 -9
  327. data/lib/wx/doc/gen/rtc/rich_text_style_organiser_dialog.rb +4 -1
  328. data/lib/wx/doc/gen/rtc/rich_text_xml_handler.rb +4 -3
  329. data/lib/wx/doc/gen/rtc/symbol_picker_dialog.rb +2 -2
  330. data/lib/wx/doc/gen/sash_event.rb +13 -4
  331. data/lib/wx/doc/gen/sash_layout_window.rb +21 -4
  332. data/lib/wx/doc/gen/sash_window.rb +6 -4
  333. data/lib/wx/doc/gen/screen_dc.rb +1 -1
  334. data/lib/wx/doc/gen/scroll_bar.rb +28 -10
  335. data/lib/wx/doc/gen/scrolled_canvas.rb +48 -10
  336. data/lib/wx/doc/gen/scrolled_control.rb +48 -10
  337. data/lib/wx/doc/gen/scrolled_window.rb +48 -10
  338. data/lib/wx/doc/gen/search_ctrl.rb +14 -9
  339. data/lib/wx/doc/gen/simplebook.rb +8 -1
  340. data/lib/wx/doc/gen/single_choice_dialog.rb +9 -4
  341. data/lib/wx/doc/gen/sizer.rb +91 -16
  342. data/lib/wx/doc/gen/sizer_item.rb +21 -4
  343. data/lib/wx/doc/gen/slider.rb +50 -17
  344. data/lib/wx/doc/gen/spin_button.rb +24 -10
  345. data/lib/wx/doc/gen/spin_ctrl.rb +35 -9
  346. data/lib/wx/doc/gen/spin_ctrl_double.rb +13 -7
  347. data/lib/wx/doc/gen/spin_double_event.rb +6 -4
  348. data/lib/wx/doc/gen/spin_event.rb +4 -3
  349. data/lib/wx/doc/gen/splash_screen.rb +3 -2
  350. data/lib/wx/doc/gen/splitter_event.rb +12 -4
  351. data/lib/wx/doc/gen/splitter_window.rb +100 -18
  352. data/lib/wx/doc/gen/static_bitmap.rb +109 -7
  353. data/lib/wx/doc/gen/static_box.rb +15 -7
  354. data/lib/wx/doc/gen/static_box_sizer.rb +3 -2
  355. data/lib/wx/doc/gen/static_line.rb +7 -4
  356. data/lib/wx/doc/gen/static_text.rb +10 -6
  357. data/lib/wx/doc/gen/status_bar.rb +32 -8
  358. data/lib/wx/doc/gen/stc/event_list.rb +212 -208
  359. data/lib/wx/doc/gen/stc/styled_text_ctrl.rb +207 -13
  360. data/lib/wx/doc/gen/stc/styled_text_event.rb +31 -6
  361. data/lib/wx/doc/gen/std_dialog_button_sizer.rb +7 -1
  362. data/lib/wx/doc/gen/svg_file_dc.rb +15 -7
  363. data/lib/wx/doc/gen/system_options.rb +14 -6
  364. data/lib/wx/doc/gen/system_settings.rb +9 -3
  365. data/lib/wx/doc/gen/task_bar_button.rb +324 -0
  366. data/lib/wx/doc/gen/task_bar_icon.rb +26 -8
  367. data/lib/wx/doc/gen/task_bar_icon_event.rb +5 -3
  368. data/lib/wx/doc/gen/text_attr.rb +47 -5
  369. data/lib/wx/doc/gen/text_ctrl.rb +114 -25
  370. data/lib/wx/doc/gen/text_entry.rb +69 -11
  371. data/lib/wx/doc/gen/text_entry_dialog.rb +14 -2
  372. data/lib/wx/doc/gen/text_validator.rb +58 -9
  373. data/lib/wx/doc/gen/time_picker_ctrl.rb +11 -6
  374. data/lib/wx/doc/gen/timer.rb +14 -2
  375. data/lib/wx/doc/gen/timer_event.rb +2 -2
  376. data/lib/wx/doc/gen/tip_provider.rb +6 -1
  377. data/lib/wx/doc/gen/toggle_button.rb +73 -6
  378. data/lib/wx/doc/gen/tool_bar.rb +141 -25
  379. data/lib/wx/doc/gen/tool_tip.rb +41 -5
  380. data/lib/wx/doc/gen/toolbook.rb +6 -4
  381. data/lib/wx/doc/gen/top_level_window.rb +100 -23
  382. data/lib/wx/doc/gen/tree_ctrl.rb +89 -16
  383. data/lib/wx/doc/gen/tree_event.rb +9 -4
  384. data/lib/wx/doc/gen/treebook.rb +16 -4
  385. data/lib/wx/doc/gen/ui_action_simulator.rb +10 -2
  386. data/lib/wx/doc/gen/utils.rb +94 -7
  387. data/lib/wx/doc/gen/v_list_box.rb +27 -2
  388. data/lib/wx/doc/gen/v_scrolled_window.rb +21 -4
  389. data/lib/wx/doc/gen/validator.rb +10 -14
  390. data/lib/wx/doc/gen/variant.rb +7 -0
  391. data/lib/wx/doc/gen/window.rb +415 -57
  392. data/lib/wx/doc/gen/window_dc.rb +2 -1
  393. data/lib/wx/doc/gen/window_disabler.rb +6 -2
  394. data/lib/wx/doc/gen/with_images.rb +13 -2
  395. data/lib/wx/doc/gen/wizard.rb +22 -4
  396. data/lib/wx/doc/gen/wizard_event.rb +5 -4
  397. data/lib/wx/doc/gen/wizard_page.rb +7 -2
  398. data/lib/wx/doc/gen/wizard_page_simple.rb +5 -1
  399. data/lib/wx/doc/gen/wrap_sizer.rb +5 -1
  400. data/lib/wx/doc/gen/xml_node.rb +33 -4
  401. data/lib/wx/doc/gen/xml_resource.rb +40 -5
  402. data/lib/wx/doc/generic_validator.rb +95 -0
  403. data/lib/wx/doc/graphics_context.rb +1 -0
  404. data/lib/wx/doc/grid/grid.rb +22 -1
  405. data/lib/wx/doc/help_controller.rb +11 -7
  406. data/lib/wx/doc/html/html_help_controller.rb +12 -4
  407. data/lib/wx/doc/html/simple_html_listbox.rb +22 -0
  408. data/lib/wx/doc/list_ctrl.rb +33 -29
  409. data/lib/wx/doc/menu.rb +20 -0
  410. data/lib/wx/doc/notebook.rb +21 -0
  411. data/lib/wx/doc/num_validator.rb +387 -0
  412. data/lib/wx/doc/owner_drawn_combobox.rb +96 -0
  413. data/lib/wx/doc/pg/events.rb +13 -9
  414. data/lib/wx/doc/pg/numeric_property_validator.rb +33 -0
  415. data/lib/wx/doc/pg/pg_property.rb +18 -0
  416. data/lib/wx/doc/progress_dialog.rb +36 -32
  417. data/lib/wx/doc/prt/page_setup_dialog.rb +20 -12
  418. data/lib/wx/doc/prt/print_data.rb +13 -5
  419. data/lib/wx/doc/prt/print_dialog.rb +31 -23
  420. data/lib/wx/doc/prt/printer.rb +20 -12
  421. data/lib/wx/doc/radio_box.rb +19 -15
  422. data/lib/wx/doc/rbn/ribbon_bar.rb +13 -5
  423. data/lib/wx/doc/rbn/ribbon_button_bar.rb +13 -5
  424. data/lib/wx/doc/rbn/ribbon_gallery.rb +13 -5
  425. data/lib/wx/doc/rbn/ribbon_tool_bar.rb +13 -5
  426. data/lib/wx/doc/region_iterator.rb +32 -28
  427. data/lib/wx/doc/rtc/rich_text_composite_object.rb +24 -0
  428. data/lib/wx/doc/rtc/rich_text_ctrl.rb +24 -0
  429. data/lib/wx/doc/rtc/rich_text_paragraph.rb +24 -0
  430. data/lib/wx/doc/rtc/richtext_buffer.rb +27 -19
  431. data/lib/wx/doc/rtc/richtext_printing.rb +17 -9
  432. data/lib/wx/doc/rtc/richtext_style_sheet.rb +17 -9
  433. data/lib/wx/doc/sizer.rb +20 -0
  434. data/lib/wx/doc/static_bitmap.rb +25 -0
  435. data/lib/wx/doc/stc/styled_text_ctrl.rb +24 -0
  436. data/lib/wx/doc/stream.rb +39 -35
  437. data/lib/wx/doc/system_settings.rb +30 -26
  438. data/lib/wx/doc/text_validator.rb +23 -9
  439. data/lib/wx/doc/textctrl.rb +16 -0
  440. data/lib/wx/doc/tree_ctrl.rb +95 -0
  441. data/lib/wx/doc/treebook.rb +9 -5
  442. data/lib/wx/doc/v_list_box.rb +9 -5
  443. data/lib/wx/doc/validator.rb +113 -0
  444. data/lib/wx/doc/variant.rb +164 -160
  445. data/lib/wx/doc/window.rb +87 -47
  446. data/lib/wx/doc/window_disabler.rb +10 -6
  447. data/lib/wx/grid/grid.rb +27 -4
  448. data/lib/wx/html/events/evt_list.rb +0 -10
  449. data/lib/wx/html/simple_html_listbox.rb +24 -91
  450. data/lib/wx/keyword_defs.rb +34 -2
  451. data/lib/wx/pg/pg_property.rb +22 -0
  452. data/lib/wx/rbn/ribbon_gallery.rb +0 -21
  453. data/lib/wx/rtc/require.rb +3 -0
  454. data/lib/wx/rtc/rich_text_composite_object.rb +25 -0
  455. data/lib/wx/rtc/rich_text_ctrl.rb +25 -0
  456. data/lib/wx/rtc/rich_text_paragraph.rb +25 -0
  457. data/lib/wx/stc/require.rb +1 -0
  458. data/lib/wx/stc/styled_text_ctrl.rb +25 -0
  459. data/lib/wx/version.rb +1 -1
  460. data/lib/wxruby_aui.so +0 -0
  461. data/lib/wxruby_core.so +0 -0
  462. data/lib/wxruby_grid.so +0 -0
  463. data/lib/wxruby_html.so +0 -0
  464. data/lib/wxruby_pg.so +0 -0
  465. data/lib/wxruby_prt.so +0 -0
  466. data/lib/wxruby_rbn.so +0 -0
  467. data/lib/wxruby_rtc.so +0 -0
  468. data/lib/wxruby_stc.so +0 -0
  469. data/rakelib/lib/config/linux.rb +0 -3
  470. data/rakelib/lib/config/macosx.rb +2 -2
  471. data/rakelib/lib/config/mingw.rb +13 -1
  472. data/rakelib/lib/config/unixish.rb +1 -1
  473. data/rakelib/lib/config.rb +14 -4
  474. data/rakelib/yard/templates/default/fulldoc/html/css/wxruby3.css +74 -2
  475. data/rakelib/yard/templates/default/fulldoc/html/full_list.erb +38 -0
  476. data/rakelib/yard/templates/default/fulldoc/html/setup.rb +39 -0
  477. data/rakelib/yard/templates/default/tags/html/wxrb_require.erb +10 -0
  478. data/rakelib/yard/templates/default/tags/setup.rb +16 -0
  479. data/rakelib/yard/yard-custom-templates.rb +3 -0
  480. data/samples/aui/aui.rb +1237 -1233
  481. data/samples/calendar/calendar.rb +293 -289
  482. data/samples/controls/get_item_sample.rb +83 -79
  483. data/samples/controls/htlbox.rb +331 -327
  484. data/samples/dialogs/dialogs.rb +682 -694
  485. data/samples/dialogs/wizard.rb +52 -55
  486. data/samples/dragdrop/dragdrop.rb +146 -142
  487. data/samples/drawing/bitmap.rb +29 -26
  488. data/samples/drawing/bitmap_image.rb +84 -80
  489. data/samples/drawing/graphics_drawing.rb +209 -205
  490. data/samples/drawing/image_prt.rb +344 -340
  491. data/samples/drawing/maths_images.rb +18 -1
  492. data/samples/drawing/rmagic_bitmap_image.rb +88 -84
  493. data/samples/etc/caret.rb +306 -0
  494. data/samples/etc/miniframe.rb +65 -60
  495. data/samples/etc/sash.rb +109 -105
  496. data/samples/etc/scrollwin.rb +86 -80
  497. data/samples/etc/system_settings.rb +216 -209
  498. data/samples/event/activation.rb +72 -67
  499. data/samples/event/event.rb +160 -153
  500. data/samples/event/threaded.rb +8 -1
  501. data/samples/event/update_ui_event.rb +67 -60
  502. data/samples/grid/grid.rb +188 -181
  503. data/samples/grid/gridtablebase.rb +136 -129
  504. data/samples/html/html.rb +208 -204
  505. data/samples/mdi/mdi.rb +59 -54
  506. data/samples/minimal/minimal.rb +54 -51
  507. data/samples/minimal/nothing.rb +1 -0
  508. data/samples/printing/printing.rb +367 -377
  509. data/samples/printing/printing2.rb +203 -198
  510. data/samples/propgrid/propgrid.rb +2312 -2308
  511. data/samples/propgrid/propgrid_minimal.rb +57 -50
  512. data/samples/ribbon/ribbon.rb +780 -774
  513. data/samples/sampler/ext.rb +0 -33
  514. data/samples/sampler/sample.rb +4 -9
  515. data/samples/sampler.rb +1 -1
  516. data/samples/splash/splash.rb +118 -116
  517. data/samples/text/rich_textctrl.rb +207 -201
  518. data/samples/text/richtext.rb +1409 -1405
  519. data/samples/text/scintilla.rb +137 -128
  520. data/samples/text/textctrl.rb +89 -83
  521. data/samples/text/unicode.rb +175 -168
  522. data/samples/treectrl/treectrl.rb +1430 -1426
  523. data/samples/widgets/activityindicator.rb +95 -0
  524. data/samples/widgets/art/widgets/activityindicator.xpm +278 -0
  525. data/samples/widgets/art/widgets/bmpbtn.xpm +37 -0
  526. data/samples/widgets/art/widgets/bmpcombobox.xpm +54 -0
  527. data/samples/widgets/art/widgets/button.xpm +54 -0
  528. data/samples/widgets/art/widgets/checkbox.xpm +54 -0
  529. data/samples/{bigdemo/icons → widgets/art/widgets}/choice.xpm +1 -1
  530. data/samples/widgets/art/widgets/choicebk.xpm +54 -0
  531. data/samples/widgets/art/widgets/clrpicker.xpm +193 -0
  532. data/samples/widgets/art/widgets/combobox.xpm +54 -0
  533. data/samples/widgets/art/widgets/datepick.xpm +200 -0
  534. data/samples/widgets/art/widgets/dirctrl.xpm +54 -0
  535. data/samples/widgets/art/widgets/dirpicker.xpm +213 -0
  536. data/samples/widgets/art/widgets/filepicker.xpm +214 -0
  537. data/samples/widgets/art/widgets/fontpicker.xpm +185 -0
  538. data/samples/widgets/art/widgets/gauge.xpm +54 -0
  539. data/samples/widgets/art/widgets/header.xpm +54 -0
  540. data/samples/widgets/art/widgets/hyperlnk.xpm +54 -0
  541. data/samples/widgets/art/widgets/listbook.xpm +54 -0
  542. data/samples/widgets/art/widgets/listbox.xpm +54 -0
  543. data/samples/widgets/art/widgets/native.xpm +81 -0
  544. data/samples/widgets/art/widgets/notebook.xpm +54 -0
  545. data/samples/widgets/art/widgets/odcombobox.xpm +54 -0
  546. data/samples/widgets/art/widgets/radiobox.xpm +54 -0
  547. data/samples/widgets/art/widgets/scrolbar.xpm +54 -0
  548. data/samples/widgets/art/widgets/slider.xpm +54 -0
  549. data/samples/widgets/art/widgets/spinbtn.xpm +40 -0
  550. data/samples/widgets/art/widgets/statbmp.xpm +40 -0
  551. data/samples/widgets/art/widgets/statbox.xpm +54 -0
  552. data/samples/widgets/art/widgets/stattext.xpm +54 -0
  553. data/samples/widgets/art/widgets/text.xpm +54 -0
  554. data/samples/widgets/art/widgets/timepick.xpm +207 -0
  555. data/samples/widgets/art/widgets/toggle.xpm +54 -0
  556. data/samples/widgets/art/widgets/toucan.png +0 -0
  557. data/samples/widgets/bmpcombobox.rb +651 -0
  558. data/samples/widgets/button.rb +462 -0
  559. data/samples/widgets/checkbox.rb +211 -0
  560. data/samples/widgets/choice.rb +287 -0
  561. data/samples/widgets/clrpicker.rb +156 -0
  562. data/samples/widgets/combobox.rb +516 -0
  563. data/samples/widgets/datepick.rb +215 -0
  564. data/samples/widgets/dirctrl.rb +265 -0
  565. data/samples/widgets/dirpicker.rb +158 -0
  566. data/samples/widgets/editlbox.rb +122 -0
  567. data/samples/widgets/filectrl.rb +216 -0
  568. data/samples/widgets/filepicker.rb +214 -0
  569. data/samples/widgets/fontpicker.rb +135 -0
  570. data/samples/widgets/gauge.rb +311 -0
  571. data/samples/widgets/headerctrl.rb +236 -0
  572. data/samples/widgets/hyperlink.rb +203 -0
  573. data/samples/widgets/itemcontainer.rb +185 -0
  574. data/samples/widgets/listbox.rb +473 -0
  575. data/samples/widgets/notebook.rb +488 -0
  576. data/samples/widgets/odcombobox.rb +608 -0
  577. data/samples/widgets/radiobox.rb +328 -0
  578. data/samples/widgets/searchctrl.rb +159 -0
  579. data/samples/widgets/slider.rb +594 -0
  580. data/samples/widgets/spinbtn.rb +443 -0
  581. data/samples/widgets/statbmp.rb +130 -0
  582. data/samples/widgets/static.rb +436 -0
  583. data/samples/widgets/textctrl.rb +700 -0
  584. data/samples/widgets/timepick.rb +148 -0
  585. data/samples/widgets/tn_widgets.png +0 -0
  586. data/samples/widgets/toggle.rb +385 -0
  587. data/samples/widgets/widgets.rb +1233 -0
  588. data/samples/xrc/custom_xrc_sample.rb +47 -41
  589. data/samples/xrc/xrc_sample.rb +53 -47
  590. data/tests/media/beep_lo.wav +0 -0
  591. data/tests/test_event_handling.rb +52 -34
  592. data/tests/test_events.rb +7 -0
  593. data/tests/test_item_data.rb +24 -0
  594. data/tests/test_list_ctrl.rb +1 -1
  595. data/tests/test_media_ctrl.rb +38 -0
  596. data/tests/test_menu.rb +69 -0
  597. data/tests/test_pg.rb +27 -0
  598. data/tests/test_richtext.rb +45 -0
  599. data/tests/test_sizer.rb +59 -0
  600. data/tests/test_std_controls.rb +42 -1
  601. data/tests/test_styled_text_ctrl.rb +46 -0
  602. data/tests/test_tree_ctrl.rb +138 -0
  603. data/tests/test_validators.rb +805 -0
  604. data/tests/test_window.rb +12 -0
  605. data/tests/testapp_noframe.rb +1 -1
  606. metadata +113 -138
  607. data/lib/wx/core/choice.rb +0 -14
  608. data/lib/wx/core/combo_ctrl.rb +0 -110
  609. data/samples/bigdemo/About.rbw +0 -39
  610. data/samples/bigdemo/ColorPanel.rbw +0 -23
  611. data/samples/bigdemo/GridSimple.rbw +0 -78
  612. data/samples/bigdemo/MDIDemo.rbw +0 -57
  613. data/samples/bigdemo/PopupMenu.rbw +0 -146
  614. data/samples/bigdemo/ShapedWindow.rbw +0 -128
  615. data/samples/bigdemo/Sizers.rbw +0 -541
  616. data/samples/bigdemo/bigdemo.rb +0 -817
  617. data/samples/bigdemo/demoTemplate.rbw +0 -33
  618. data/samples/bigdemo/helpfile.htb +0 -0
  619. data/samples/bigdemo/icons/Test 015.jpg +0 -0
  620. data/samples/bigdemo/icons/Test 015.png +0 -0
  621. data/samples/bigdemo/icons/choice.bmp +0 -0
  622. data/samples/bigdemo/icons/combo.bmp +0 -0
  623. data/samples/bigdemo/icons/combo.xpm +0 -27
  624. data/samples/bigdemo/icons/copy.xpm +0 -25
  625. data/samples/bigdemo/icons/cut.xpm +0 -24
  626. data/samples/bigdemo/icons/gauge.bmp +0 -0
  627. data/samples/bigdemo/icons/gauge.xpm +0 -27
  628. data/samples/bigdemo/icons/help.xpm +0 -25
  629. data/samples/bigdemo/icons/list.bmp +0 -0
  630. data/samples/bigdemo/icons/list.xpm +0 -27
  631. data/samples/bigdemo/icons/mondrian.ico +0 -0
  632. data/samples/bigdemo/icons/mondrian.xpm +0 -44
  633. data/samples/bigdemo/icons/new.xpm +0 -24
  634. data/samples/bigdemo/icons/ogl.ico +0 -0
  635. data/samples/bigdemo/icons/ogl.xpm +0 -45
  636. data/samples/bigdemo/icons/open.xpm +0 -26
  637. data/samples/bigdemo/icons/paste.bmp +0 -0
  638. data/samples/bigdemo/icons/paste.xpm +0 -38
  639. data/samples/bigdemo/icons/pointy.png +0 -0
  640. data/samples/bigdemo/icons/preview.xpm +0 -26
  641. data/samples/bigdemo/icons/print.xpm +0 -26
  642. data/samples/bigdemo/icons/radio.bmp +0 -0
  643. data/samples/bigdemo/icons/radio.xpm +0 -27
  644. data/samples/bigdemo/icons/robert.xpm +0 -415
  645. data/samples/bigdemo/icons/sashtest.ico +0 -0
  646. data/samples/bigdemo/icons/save.xpm +0 -25
  647. data/samples/bigdemo/icons/smiles.bmp +0 -0
  648. data/samples/bigdemo/icons/smiles.xpm +0 -39
  649. data/samples/bigdemo/icons/smiley.ico +0 -0
  650. data/samples/bigdemo/icons/smiley.xpm +0 -42
  651. data/samples/bigdemo/icons/stattext.xpm +0 -24
  652. data/samples/bigdemo/icons/test2.bmp +0 -0
  653. data/samples/bigdemo/icons/test2.png +0 -0
  654. data/samples/bigdemo/icons/test2.xpm +0 -79
  655. data/samples/bigdemo/icons/text.bmp +0 -0
  656. data/samples/bigdemo/icons/text.xpm +0 -27
  657. data/samples/bigdemo/icons/tog1.bmp +0 -0
  658. data/samples/bigdemo/icons/tog1.xpm +0 -38
  659. data/samples/bigdemo/icons/tog2.bmp +0 -0
  660. data/samples/bigdemo/icons/tog2.xpm +0 -38
  661. data/samples/bigdemo/icons/wxruby-128x128.png +0 -0
  662. data/samples/bigdemo/icons/wxwin.ico +0 -0
  663. data/samples/bigdemo/icons/wxwin16x16.png +0 -0
  664. data/samples/bigdemo/icons/wxwin16x16.xpm +0 -25
  665. data/samples/bigdemo/icons/wxwin32x32.png +0 -0
  666. data/samples/bigdemo/icons/wxwin48x48.png +0 -0
  667. data/samples/bigdemo/run.rb +0 -98
  668. data/samples/bigdemo/tips.txt +0 -7
  669. data/samples/bigdemo/utils.rb +0 -20
  670. data/samples/bigdemo/wxArtProvider.rbw +0 -282
  671. data/samples/bigdemo/wxBitmapButton.rbw +0 -65
  672. data/samples/bigdemo/wxButton.rbw +0 -64
  673. data/samples/bigdemo/wxCalendarCtrl.rbw +0 -59
  674. data/samples/bigdemo/wxCheckBox.rbw +0 -50
  675. data/samples/bigdemo/wxCheckListBox.rbw +0 -65
  676. data/samples/bigdemo/wxChoice.rbw +0 -47
  677. data/samples/bigdemo/wxChoicebook.rbw +0 -78
  678. data/samples/bigdemo/wxColourDialog.rbw +0 -33
  679. data/samples/bigdemo/wxComboBox.rbw +0 -77
  680. data/samples/bigdemo/wxCursor.rbw +0 -136
  681. data/samples/bigdemo/wxDialog.rbw +0 -74
  682. data/samples/bigdemo/wxDirDialog.rbw +0 -29
  683. data/samples/bigdemo/wxDragImage.rbw +0 -70
  684. data/samples/bigdemo/wxFileDialog.rbw +0 -37
  685. data/samples/bigdemo/wxFileDialog_Save.rbw +0 -35
  686. data/samples/bigdemo/wxFindReplaceDialog.rbw +0 -82
  687. data/samples/bigdemo/wxFontDialog.rbw +0 -200
  688. data/samples/bigdemo/wxFrame.rbw +0 -53
  689. data/samples/bigdemo/wxGauge.rbw +0 -65
  690. data/samples/bigdemo/wxGenericDirCtrl.rbw +0 -74
  691. data/samples/bigdemo/wxGrid.rbw +0 -66
  692. data/samples/bigdemo/wxHtmlHelpController.rbw +0 -52
  693. data/samples/bigdemo/wxListBox.rbw +0 -140
  694. data/samples/bigdemo/wxListCtrl_virtual.rbw +0 -112
  695. data/samples/bigdemo/wxMDIWindows.rbw +0 -50
  696. data/samples/bigdemo/wxMenu.rbw +0 -247
  697. data/samples/bigdemo/wxMessageDialog.rbw +0 -27
  698. data/samples/bigdemo/wxMiniFrame.rbw +0 -70
  699. data/samples/bigdemo/wxMultipleChoiceDialog.rbw +0 -29
  700. data/samples/bigdemo/wxNotebook.rbw +0 -136
  701. data/samples/bigdemo/wxProgressDialog.rbw +0 -43
  702. data/samples/bigdemo/wxRadioBox.rbw +0 -72
  703. data/samples/bigdemo/wxRadioButton.rbw +0 -125
  704. data/samples/bigdemo/wxSashWindow.rbw +0 -141
  705. data/samples/bigdemo/wxScrolledMessageDialog.rbw +0 -57
  706. data/samples/bigdemo/wxScrolledWindow.rbw +0 -199
  707. data/samples/bigdemo/wxSingleChoiceDialog.rbw +0 -33
  708. data/samples/bigdemo/wxSlider.rbw +0 -42
  709. data/samples/bigdemo/wxSpinButton.rbw +0 -50
  710. data/samples/bigdemo/wxSpinCtrl.rbw +0 -51
  711. data/samples/bigdemo/wxSplitterWindow.rbw +0 -63
  712. data/samples/bigdemo/wxStaticBitmap.rbw +0 -47
  713. data/samples/bigdemo/wxStaticText.rbw +0 -55
  714. data/samples/bigdemo/wxStatusBar.rbw +0 -126
  715. data/samples/bigdemo/wxTextCtrl.rbw +0 -149
  716. data/samples/bigdemo/wxTextEntryDialog.rbw +0 -31
  717. data/samples/bigdemo/wxToggleButton.rbw +0 -49
  718. data/samples/bigdemo/wxToolBar.rbw +0 -131
  719. data/samples/bigdemo/wxTreeCtrl.rbw +0 -191
  720. data/samples/caret/caret.rb +0 -298
  721. data/samples/caret/mondrian.xpm +0 -44
  722. data/samples/controls/books.rb +0 -189
  723. data/samples/controls/choice.xpm +0 -27
  724. data/samples/controls/combo.xpm +0 -27
  725. data/samples/controls/controls.rb +0 -1099
  726. data/samples/controls/gauge.xpm +0 -27
  727. data/samples/controls/list.xpm +0 -27
  728. data/samples/controls/mondrian.ico +0 -0
  729. data/samples/controls/mondrian.xpm +0 -44
  730. data/samples/controls/radio.xpm +0 -27
  731. data/samples/controls/stattext.xpm +0 -24
  732. data/samples/controls/test2.bmp +0 -0
  733. data/samples/controls/text.xpm +0 -27
  734. data/samples/controls/tn_books.png +0 -0
  735. data/samples/controls/tn_controls.png +0 -0
  736. data/samples/etc/choice.rb +0 -87
  737. data/samples/etc/tn_choice.png +0 -0
  738. data/samples/text/mondrian.ico +0 -0
  739. data/samples/text/mondrian.xpm +0 -44
  740. /data/samples/{caret → etc}/tn_caret.png +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9a4db88ebfa0f602dcb72a0b4714af32fc2d947d11e9415f6d479198b6b8414d
4
- data.tar.gz: '09aeab893862584a6f822aaba7ae2a37832b2eb5baac0ccbe4d0f336d3626fa6'
3
+ metadata.gz: a2a8e8e3953aef31ac0b70927370fcd6cfdbc04787dbd5e33371a3dddfe2f0dc
4
+ data.tar.gz: c35adef75eb90234d21087533e2d376130172689ce6d4a1aa4cd8c1d549a45b6
5
5
  SHA512:
6
- metadata.gz: aa06e40a69ff260a1c5b32373e140ec8411f0d56ec9952ddf7cf492cddd0ec0565f2c92d71b215ca37b373d774772a93297f266b077063a4587d3911bb84de33
7
- data.tar.gz: 1d293258cd5369ea3b3ddde527d70eca39da48c23a87514d78673efe49e10d9fb985d5cc77ba4170d5fa3aa5ff00a24ee84a31d1d00591702e6a485154aea5b9
6
+ metadata.gz: a2a3ee55cda0961559da5af1b818b148d3f7bebb4ae0bf0096b2e07cdff552e0907ad4bfab5678e7cb2fb8eea3aa1e8c74d54d7817d32f0d6b4b03e9d9f726ac
7
+ data.tar.gz: 7c0f4533356c17073dfaf2a347ff48aeadd85ff223fca12bf8ed85d3d67ef1b4480a9bc4c87cd01826ce81d928121c993d76a3fefbbfec14e4749210cf7a2abc
data/.yardopts CHANGED
@@ -3,6 +3,7 @@
3
3
  --charset UTF-8
4
4
  --markup markdown
5
5
  --readme README.md
6
+ --asset assets
6
7
  --title "wxRuby3 API Documentation"
7
8
  --output-dir rdoc
8
9
  --protected
data/INSTALL.md CHANGED
@@ -10,14 +10,14 @@ Below are installation instructions for Linux, Windows, and Mac (both AMD64 and
10
10
 
11
11
  The minimal requirements for installing any source based setup (gem, source package or Github clone) of wxRuby3 are:
12
12
 
13
- | Sofware | Notes |
14
- |-----------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
15
- | Ruby | A supported version of the Ruby interpreter needs to be installed. |
16
- | C++ compiler<br>(incl. dev tools like `make`) | On linux a recent version of the GNU C++ compiler (with c++-14 support) needs to be installed<br>On Windows the RubyInstaller MSYS2-Devkit needs to be installed<br>On MacOS XCode with commandline tools needs to be installed via `sudo xcode-select --install` |
17
- | Git version control toolkit | |
18
- | SWIG >= 3.0.12 | On MacOS install [Homebrew](https://brew.sh/) and than `brew install swig` |
19
- | Doxygen (>= 1.9.1, <= 1.9.6) | Doxygen > 1.9.6 has changes that cause problems with the wxWidgets doxygen files.<br>On MacOS: `brew tap mcorino/wxruby3` and than `brew install doxygen@1.9.6` (default brew recipe installs 1.9.7) |
20
- | wxWidgets (>= 3.2) | See [wxWidgets installation](#wxwidgets-installation) |
13
+ | Sofware | Notes |
14
+ |-----------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
15
+ | Ruby | A supported version of the Ruby interpreter needs to be installed. |
16
+ | C++ compiler<br>(incl. dev tools like `make`) | On linux a recent version of the GNU C++ compiler (with c++-14 support) needs to be installed<br>On Windows the RubyInstaller MSYS2-Devkit needs to be installed<br>On MacOS XCode with commandline tools needs to be installed via <code>sudo xcode-select --install</code> |
17
+ | Git version control toolkit | |
18
+ | SWIG >= 3.0.12 | On MacOS install Homebrew (https://brew.sh) and than <code>brew install swig</code> |
19
+ | Doxygen (>= 1.9.1, <= 1.9.6) | Doxygen > 1.9.6 has changes that cause problems with the wxWidgets doxygen files.<br>On MacOS: <code>brew tap mcorino/wxruby3</code> and than `brew install doxygen@1.9.6` (default brew recipe installs 1.9.7) |
20
+ | wxWidgets (>= 3.2) | See the <b>wxWidgets installation</b> section below. |
21
21
 
22
22
  The wxRuby3 build process requires `git` to clone a copy of the wxWidgets Github repository to extract the interface
23
23
  specifications from.<br>
@@ -57,46 +57,41 @@ gem install wxruby3 -- WITH_WXWIN=1
57
57
 
58
58
  Also a wxWidgets installation (version 3.2 or later) is required for which there are multiple options.
59
59
 
60
- 1. System installed wxWidgets version (including development package)<br>
61
- <br>
60
+ 1. System installed wxWidgets version (including development package)<br/>
61
+ <br/>
62
62
  This is the default method used when installing the source gem without any options.<br>
63
63
  The wxRuby build procedure will determine the availability and version of wxWidgets by locating and calling
64
64
  the `wx-config` utility script. In case no (compatible) wxWidgets version is found installation ends with an error.<br>
65
65
  Please note that even with this method a copy of the wxWidgets project will be checked out from GitHUb as the wxRuby3
66
66
  build procedure requires access to the wxWidgets interface specification sources which are not normally part of any of
67
- the standard distribution packages.
68
-
69
- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;On MacOS, you can install wxWidgets via [Homebrew](https://brew.sh/):
70
-
71
- ```shell
67
+ the standard distribution packages.<br/>
68
+ <br/>
69
+ On MacOS, you can install wxWidgets via [Homebrew](https://brew.sh/):
70
+ ```shell
72
71
  brew install wxwidgets
73
- ```
74
-
75
- &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Afterwards, you can install the Ruby gem and it will detect wxWidgets in the system automatically:
76
-
77
- ```shell
72
+ ```
73
+ Afterwards, you can install the Ruby gem and it will detect wxWidgets in the system automatically:
74
+ ```shell
78
75
  gem install wxruby3
79
- ```
76
+ ```
80
77
 
81
78
  2. User installed wxWidgets version<br>
82
79
  <br>
83
80
  In case the system being installed on does not provide (a compatible) wxWidgets version or a specific (possibly updated)
84
81
  wxWidgets version is required the source gem can be installed using a user installed version like this (where the
85
82
  `WXWIN` path should provide the location where the wxWidgets binaries are installed under `<wxwin path>/bin`):<br>
86
-
87
- ```shell
83
+ ```shell
88
84
  gem install wxruby3 -- WXWIN=/path/to/wx/install
89
- ```
85
+ ```
90
86
 
91
87
  3. Automatic installed, embedded, wxWidgets version<br>
92
88
  <br>
93
89
  This is the easiest method when the system being installed on does not provide (a compatible) wxWidgets version (and
94
90
  no specific user defined version is required) and can be used by installing the source gem like this (which will
95
91
  cause automatic checkout and building of the latest stable wxWidgets release (>= 3.2) from GitHub:
96
-
97
- ```shell
92
+ ```shell
98
93
  gem install wxruby3 -- WITH_WXWIN=1
99
- ```
94
+ ```
100
95
 
101
96
  In case of option **2** it is also possible to do the doxygen XML generation as part of the wxWidgets user installation
102
97
  and use that for the gem installation. In that case the user is required to generate the XML interface specs using the
@@ -104,16 +99,27 @@ and use that for the gem installation. In that case the user is required to gene
104
99
  provided to the gem installation as follows:
105
100
 
106
101
  ```shell
107
- gem install wxruby3 -- WXWIN=/path/to/wx/install WXXML=/path/to/wx/doxygen/xml
102
+ gem install wxruby3 -- WXWIN=/path/to/wx/install WXXML=/path/to/wx/doxygen/xml
108
103
  ```
109
104
 
110
- Please also not that in case of option two the user is responsible to make sure the wxWidgets shared libraries can be
105
+ Please also not that in case of option **2** the user is responsible to make sure the wxWidgets shared libraries can be
111
106
  found by the system's dynamic loader at runtime.
112
107
 
113
108
  > **NOTE:** Be patient when installing the source gem. Building wxRuby3 takes a while and when wxWidgets is included event more.
114
109
 
115
110
  > **NOTE:** Be aware that for prerelease versions of the gem you should add the `--pre` argument to the `gem install` command.
116
111
 
112
+ ### Bundled CLI
113
+
114
+ Installing the wxRuby3 gem will also install the bundled `wxruby` CLI binary.
115
+
116
+ Currently this binary can be used to run the bundled regression tests and access (run or copy) the bundled examples.
117
+ Run the following command to see the options:
118
+
119
+ ```shell
120
+ wxruby --help
121
+ ```
122
+
117
123
  ## Building from source
118
124
 
119
125
  Checkout the wxRuby3 sources from [GitHub](https://github.com/mcorino/wxRuby3) or download and unpack a release package.
data/README.md CHANGED
@@ -96,11 +96,11 @@ of these products.
96
96
 
97
97
  Currently the following are fully supported:
98
98
 
99
- | Platform | Ruby version(s) | wxWidgets version(s) |
100
- |----------------------------------------------------------------------------|-----------------| --- |
101
- | Windows 10 (tested)<br>(most likely also Windows 11) | Ruby >= 2.5<br>(RubyInstaller MSYS2-DevKit) | wxWidgets >= 3.2 |
102
- | Linux (tested; any AMD-64 distribution)<br>(most likely also i686 and ARM) | Ruby >= 2.5 | wxWidgets >= 3.2 |
103
- | MacOS >= 10.10 using Cocoa (tested on AMD-64 and ARM64 M2 Chip) | Ruby >= 2.5 | wxWidgets >= 3.2 |
99
+ | Platform | Ruby version(s) | wxWidgets version(s) |
100
+ |----------------------------------------------------------------------------|---------------------------------------------|----------------------|
101
+ | Windows 10 (tested)<br>(most likely also Windows 11) | Ruby >= 2.5<br>(RubyInstaller MSYS2-DevKit) | wxWidgets >= 3.2 |
102
+ | Linux (tested; any AMD-64 distribution)<br>(most likely also i686 and ARM) | Ruby >= 2.5 | wxWidgets >= 3.2 |
103
+ | MacOS >= 10.10 using Cocoa (tested on AMD-64 and ARM64 M2 Chip) | Ruby >= 2.5 | wxWidgets >= 3.2 |
104
104
 
105
105
  Support for other platforms is not being actively developed at present,
106
106
  but patches are welcome. It is likely to be much simpler to get wxRuby
@@ -118,14 +118,16 @@ Installing the binary gem version on Windows requires no additional software to
118
118
  version of the Ruby interpreter.<br>
119
119
  To install the source-only gem the following software is required:
120
120
 
121
- | Sofware | Notes |
122
- |-----------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
123
- | Ruby | A supported version of the Ruby interpreter needs to be installed. |
124
- | C++ compiler<br>(incl. dev tools like `make`) | On linux a recent version of the GNU C++ compiler (with c++-14 support) needs to be installed<br>On Windows the RubyInstaller MSYS2-Devkit needs to be installed<br>On MacOS XCode with commandline tools needs to be installed |
125
- | Git version control toolkit | |
126
- | SWIG >= 3.0.12 | On MacOS install [Homebrew](https://brew.sh/) and than `brew install swig` |
127
- | Doxygen (>= 1.9.1, <= 1.9.6) | Doxygen > 1.9.6 has changes that cause problems with the wxWidgets doxygen files.<br>On MacOS: `brew tap mcorino/wxruby3` and than `brew install doxygen@1.9.6` (default brew recipe installs 1.9.7) |
128
- | wxWidgets >= 3.2 (*OPTIONAL*) | On Linux most distributions provide system installable (development) packages for wxWidgets providing a supported version. Alternatively you can fairly easily install your own preferred version manually (see the [wxWidgets](https://wxwidgets.org) project for details).<br>On Windows and MacOS the process is less straightforward (also here see the [wxWidgets](https://wxwidgets.org) project for details).<br>The wxRuby3 source-only gem can also be installed using a private local wxWidgets installation or an embedded installation (most likely preferred on Windows and MacOS). See [INSTALL](INSTALL.md) for more details. |
121
+ | Sofware | Notes |
122
+ |-----------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
123
+ | Ruby | A supported version of the Ruby interpreter needs to be installed. |
124
+ | C++ compiler<br>(incl. dev tools like `make`) | On linux a recent version of the GNU C++ compiler (with c++-14 support) needs to be installed<br>On Windows the RubyInstaller MSYS2-Devkit needs to be installed<br>On MacOS XCode with commandline tools needs to be installed |
125
+ | Git version control toolkit | |
126
+ | SWIG >= 3.0.12 | On MacOS install with Homebrew |
127
+ | Doxygen (>= 1.9.1, <= 1.9.6) | Doxygen > 1.9.6 has changes that cause problems with the wxWidgets doxygen files. |
128
+ | wxWidgets >= 3.2 (*OPTIONAL*) | On Linux most distributions provide system installable (development) packages for wxWidgets providing a supported version.<br>Alternatively you can fairly easily install your own preferred version manually. |
129
+
130
+ See the [INSTALL](INSTALL.md) document for more details.
129
131
 
130
132
  In case the prerequisites above are met the (source-only or binary) gem can be installed executing the following command:
131
133
 
@@ -154,7 +156,9 @@ distribution comes with numerous samples which illustrate how to use
154
156
  many specific parts of the API. A good one to start with is the
155
157
  'minimal' sample, which provides an application skeleton. All the
156
158
  bundled samples are expected to work with current wxRuby3, although
157
- some use a more modern coding style than others.
159
+ some use a more modern coding style than others. Use the bundled `wxruby`
160
+ CLI to access the samples (see the section **Bundled CLI** in
161
+ the [INSTALL](INSTALL.md) document for more details).
158
162
 
159
163
  Complete (more or less) wxRuby API documentation should be part of any
160
164
  complete wxRuby3 build. This tends to focus on providing a reference
@@ -213,4 +217,9 @@ this doesn't help, please post your question using GitHub Issues.
213
217
 
214
218
  ### Is there another, more declarative way, for writing wxRuby3 desktop GUI applications?
215
219
 
216
- Yes. [Glimmer DSL for WX](https://github.com/AndyObtiva/glimmer-dsl-wx) enables software engineers to build GUI using wxruby3 following the Ruby way with the least amount of code possible. That is by offering a minimalistic declarative high-level DSL that maps visually to the way software engineers think about the GUI hierarchy in addition to adopting Rails' strategy of Convention over Configuration via smart defaults and automation of wxruby3 low-level details. You can check out the [Glimmer DSL for WX README "Coming From wxruby3" section](https://github.com/AndyObtiva/glimmer-dsl-wx#coming-from-wxruby3) for more information on how to translate wxruby3 apps to [Glimmer DSL for WX](https://github.com/AndyObtiva/glimmer-dsl-wx) syntax.
220
+ Yes. [Glimmer DSL for WX](https://github.com/AndyObtiva/glimmer-dsl-wx) enables software engineers to build GUI
221
+ using wxruby3 following the Ruby way with the least amount of code possible. That is by offering a minimalistic
222
+ declarative high-level DSL that maps visually to the way software engineers think about the GUI hierarchy in addition
223
+ to adopting Rails' strategy of Convention over Configuration via smart defaults and automation of wxruby3 low-level
224
+ details. You can check out the [Glimmer DSL for WX README "Coming From wxruby3" section](https://github.com/AndyObtiva/glimmer-dsl-wx#coming-from-wxruby3) for more information on
225
+ how to translate wxruby3 apps to [Glimmer DSL for WX](https://github.com/AndyObtiva/glimmer-dsl-wx) syntax.
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
Binary file
@@ -0,0 +1,18 @@
1
+ # Copyright (c) 2023 M.J.N. Corino, The Netherlands
2
+ #
3
+ # This software is released under the MIT license.
4
+
5
+ class Wx::AUI::AuiTabCtrl
6
+
7
+ # Convenience method for iterating pages
8
+ def each_page
9
+ if block_given?
10
+ 0.upto(get_page_count - 1) do | i |
11
+ yield get_page(i)
12
+ end
13
+ else
14
+ ::Enumerator.new { |y| each_page { |pg| y << pg } }
15
+ end
16
+ end
17
+
18
+ end
@@ -19,8 +19,12 @@ class Wx::AUI::AuiNotebook
19
19
 
20
20
  # Convenience method for iterating pages
21
21
  def each_page
22
- 0.upto(get_page_count - 1) do | i |
23
- yield get_page(i)
22
+ if block_given?
23
+ 0.upto(get_page_count - 1) do | i |
24
+ yield get_page(i)
25
+ end
26
+ else
27
+ ::Enumerator.new { |y| each_page { |pg| y << pg } }
24
28
  end
25
29
  end
26
30
  end
@@ -9,5 +9,6 @@ require_relative './events/evt_list'
9
9
  require_relative './auimanager'
10
10
  require_relative './auinotebook'
11
11
  require_relative './auifloatframe'
12
+ require_relative './aui_tab_ctrl'
12
13
 
13
14
  Wx::Dialog.setup_dialog_functors(Wx::AUI)
data/lib/wx/core/app.rb CHANGED
@@ -79,8 +79,8 @@ class Wx::App
79
79
  # WxRuby. Such messages usually indicate that the API is being used
80
80
  # incorrectly; the file/line reference points to the place in the
81
81
  # WxWidgets source code where the assertion was made.
82
- define_method(:on_assert_failure) do | file, line, func, condition, message |
83
- warn "Wx WARNING: #{message} (#{func}@#{file}:#{line})"
82
+ def on_assert_failure(file, line, func, condition, message)
83
+ warn %Q{Wx WARNING: ASSERT #{condition} fired with "#{message}" at (#{func}@#{file}:#{line})}
84
84
  end
85
85
 
86
86
  # For use in development only, of no practical use in production code.
@@ -8,32 +8,28 @@
8
8
 
9
9
  module Wx
10
10
 
11
- class BitmapCombobox < Wx::ComboBox
12
-
13
- # We need to cache client data in Ruby variables as we cannot access items
14
- # during the GC mark phase as for some platforms (WXMSW at least) that would
15
- # involve calling methods that would break in that phase.
11
+ class BitmapComboBox < Wx::ComboBox
16
12
 
17
13
  wx_append = instance_method :append
18
- define_method :append do |item, bitmap=Wx::NULL_BITMAP, data=nil|
19
- itm_pos = if data
20
- wx_append.bind(self).call(item, bitmap, data)
21
- else
22
- wx_append.bind(self).call(item, bitmap)
23
- end
24
- client_data_store.insert(itm_pos, data)
25
- itm_pos
14
+ define_method :append do |item, *rest| #bitmap=Wx::NULL_BITMAP, data=nil|
15
+ if ::Array === item
16
+ super(item, *rest)
17
+ elsif rest.empty? || Wx::Bitmap === rest.first
18
+ wx_append.bind(self).call(item, *rest)
19
+ else
20
+ super(item, *rest)
21
+ end
26
22
  end
27
23
 
28
24
  wx_insert = instance_method :insert
29
- define_method :insert do |item, bitmap, pos, data=nil|
30
- itm_pos = if data
31
- wx_insert.bind(self).call(item, bitmap, pos, data)
32
- else
33
- wx_insert.bind(self).call(item, bitmap, pos)
34
- end
35
- client_data_store.insert(itm_pos, data)
36
- itm_pos
25
+ define_method :insert do |item, *rest| # bitmap, pos, data=nil|
26
+ if ::Array === item
27
+ super(item, *rest)
28
+ elsif rest.empty? || Wx::Bitmap === rest.first
29
+ wx_insert.bind(self).call(item, *rest)
30
+ else
31
+ super(item, *rest)
32
+ end
37
33
  end
38
34
 
39
35
  end
@@ -10,7 +10,7 @@
10
10
 
11
11
  module Wx
12
12
 
13
- if Wx.has_feature?(:USE_COLLPANE) && (!Wx.has_feature?(:WXGTK20) || Wx.has_feature?(:WXUNIVERSAL))
13
+ if Wx.has_feature?(:USE_COLLPANE)
14
14
 
15
15
  GenericCollapsiblePane = CollapsiblePane
16
16
 
@@ -8,7 +8,17 @@
8
8
 
9
9
  require_relative './controlwithitems'
10
10
 
11
- class Wx::ComboBox
12
- alias :get_item_data :get_client_data
13
- alias :set_item_data :set_client_data
11
+ module Wx
12
+
13
+ class ComboBox
14
+
15
+ # redefine #clear method to take care of client data and to call the proper #clear_items method
16
+ # (not the #clear method inherited from the TextEntry mixin)
17
+ wx_clear = instance_method :clear_items
18
+ define_method :clear do
19
+ wx_clear.bind(self).call
20
+ end
21
+
22
+ end
23
+
14
24
  end
@@ -9,147 +9,59 @@
9
9
  # Superclass of a variety of controls that display lists of items (eg
10
10
  # Choice, ListBox, CheckListBox)
11
11
 
12
- class Wx::ControlWithItems
12
+ module Wx
13
13
 
14
- # Make these Ruby enumerables so find, find_all, map etc are available
15
- include Enumerable
14
+ class ControlWithItems
16
15
 
17
- # Passes each valid item index into the passed block
18
- def each
19
- get_count.times { | i | yield i }
20
- end
21
-
22
- # We need to cache client data in Ruby variables as we cannot access items
23
- # during the GC mark phase as for some platforms (WXMSW at least) that would
24
- # involve calling methods that would break in that phase.
25
-
26
- def client_data_store
27
- @client_data ||= []
28
- end
29
- private :client_data_store
30
-
31
- wx_set_client_data = instance_method :set_client_data
32
- define_method :set_client_data do |item, data|
33
- item = item.to_i
34
- wx_set_client_data.bind(self).call(item, data)
35
- client_data_store[item] = data
36
- end
37
-
38
- def get_client_data(item)
39
- client_data_store[item.to_i]
40
- end
41
-
42
- wx_append = instance_method :append
43
- define_method :append do |item, data=nil|
44
- itm_pos = -1
45
- if data
46
- if ::Array === item
47
- if !(::Array === data)
48
- ::Kernel.raise ::TypeError.new("Expected Array for argument 3")
49
- elsif data.size != item.size
50
- ::Kernel.raise ::ArgumentError.new("item and data array must be equal size")
51
- end
52
- if sorted?
53
- item.each_with_index do |itm, ix|
54
- itm_pos = wx_append.bind(self).call(itm, data[ix])
55
- client_data_store.insert(itm_pos, data[ix])
56
- end
57
- else
58
- offs = get_count
59
- itm_pos = wx_append.bind(self).call(item)
60
- item.size.times { |ix| set_client_data(offs+ix, data[ix]) }
61
- end
16
+ # make sure to honor the inherited common overloads
17
+ wx_get_client_object = instance_method :get_client_object
18
+ define_method :get_client_object do |*args|
19
+ if args.empty?
20
+ super()
62
21
  else
63
- itm_pos = wx_append.bind(self).call(item, data)
64
- client_data_store.insert(itm_pos, data)
22
+ wx_get_client_object.bind(self).call(*args)
65
23
  end
66
- else
67
- if ::Array === item
68
- if sorted?
69
- item.each_with_index do |itm, ix|
70
- itm_pos = wx_append.bind(self).call(itm, data[ix])
71
- client_data_store.insert(itm_pos, nil)
72
- end
73
- else
74
- itm_pos = wx_append.bind(self).call(item)
75
- client_data_store.concat(::Array.new(item.size))
76
- end
24
+ end
25
+ wx_set_client_object = instance_method :set_client_object
26
+ define_method :set_client_object do |*args|
27
+ if args.size < 2
28
+ super(*args)
77
29
  else
78
- itm_pos = wx_append.bind(self).call(item)
79
- client_data_store.insert(itm_pos, nil)
30
+ wx_set_client_object.bind(self).call(*args)
80
31
  end
81
32
  end
82
- itm_pos
83
- end
33
+ # redefine aliases
34
+ alias :client_object :get_client_object
35
+ alias :client_object= :set_client_object
84
36
 
85
- wx_insert = instance_method :insert
86
- define_method :insert do |item, pos, data=nil|
87
- itm_pos = -1
88
- if data
89
- if ::Array === item
90
- if !(::Array === data)
91
- ::Kernel.raise ::TypeError.new("Expected Array for argument 3")
92
- elsif data.size != item.size
93
- ::Kernel.raise ::ArgumentError.new("item and data array must be equal size")
94
- end
95
- if sorted?
96
- item.each_with_index do |itm, ix|
97
- itm_pos = wx_insert.bind(self).call(itm, data[ix])
98
- client_data_store.insert(itm_pos, data[ix])
99
- end
100
- else
101
- itm_pos = wx_insert.bind(self).call(item, pos)
102
- client_data_store.insert(pos, *::Array.new(item.size))
103
- item.size.times { |ix| set_client_data(pos+ix, data[ix]) }
104
- end
105
- else
106
- itm_pos = wx_insert.bind(self).call(item, pos, data)
107
- client_data_store.insert(itm_pos, data)
108
- end
109
- else
110
- if ::Array === item
111
- if sorted?
112
- item.each_with_index do |itm, ix|
113
- itm_pos = wx_insert.bind(self).call(itm)
114
- client_data_store.insert(itm_pos, nil)
115
- end
116
- else
117
- itm_pos = wx_insert.bind(self).call(item, pos)
118
- client_data_store.insert(pos, *::Array.new(item.size))
119
- end
37
+ alias :get_client_data :get_client_object
38
+ alias :set_client_data :set_client_object
39
+
40
+ alias :has_client_data :has_client_object_data
41
+ alias :has_client_data? :has_client_object_data
42
+
43
+ alias :get_item_data :get_client_object
44
+ alias :set_item_data :set_client_object
45
+
46
+ # Overload to provide Enumerator without block
47
+ wx_each_string = instance_method :each_string
48
+ define_method :each_string do |&block|
49
+ if block
50
+ wx_each_string.bind(self).call(&block)
120
51
  else
121
- itm_pos = wx_insert.bind(self).call(item, pos)
122
- client_data_store.insert(pos, nil)
52
+ ::Enumerator.new { |y| wx_each_string.bind(self).call { |ln| y << ln } }
123
53
  end
124
54
  end
125
- itm_pos
126
- end
127
55
 
128
- wx_set = instance_method :set
129
- define_method :set do |items, data=nil|
130
- if data
131
- if !(::Array === data)
132
- ::Kernel.raise ::TypeError.new("Expected Array for argument 2")
133
- elsif data.size != items.size
134
- ::Kernel.raise ::ArgumentError.new("items and data array must be equal size")
135
- end
136
- end
137
- wx_set.bind(self).call(items)
138
- client_data_store.clear
139
- if data
140
- items.each_with_index { |item, ix| set_client_data(item, data[ix]) }
141
- end
142
- end
56
+ # define these aliases so controls like ComboBox and OwnerDrawnComboBox and the like all end up with
57
+ # similar methods
143
58
 
144
- wx_clear = instance_method :clear
145
- define_method :clear do
146
- wx_clear.bind(self).call
147
- client_data_store.clear
148
- end
59
+ alias :get_list_selection :get_selection
60
+ alias :set_list_selection :set_selection
61
+
62
+ alias :get_list_string_selection :get_string_selection
63
+ alias :set_list_string_selection :set_string_selection
149
64
 
150
- wx_delete = instance_method :delete
151
- define_method :delete do |item|
152
- wx_delete.bind(self).call(item.to_i)
153
- client_data_store.slice!(item.to_i)
154
65
  end
66
+
155
67
  end
data/lib/wx/core/enum.rb CHANGED
@@ -29,11 +29,27 @@ class Wx::Enum
29
29
  end
30
30
 
31
31
  def !
32
- self.to_i == 0
32
+ to_i == 0
33
+ end
34
+
35
+ def allbits?(mask)
36
+ to_i.allbits?(mask)
37
+ end
38
+
39
+ def anybits?(mask)
40
+ to_i.anybits?(mask)
41
+ end
42
+
43
+ def nobits?(mask)
44
+ to_i.nobits?(mask)
33
45
  end
34
46
 
35
47
  def hash
36
48
  @value.hash
37
49
  end
38
50
 
51
+ def to_s
52
+ to_i.to_s
53
+ end
54
+
39
55
  end
data/lib/wx/core/event.rb CHANGED
@@ -29,7 +29,7 @@ module Wx
29
29
  alias :id :get_id
30
30
  end
31
31
 
32
- class Wx::CommandEvent
32
+ class CommandEvent
33
33
 
34
34
  # overload the #initialize method to add a check on a
35
35
  # correct match between EventType and event class
@@ -43,6 +43,11 @@ module Wx
43
43
  end
44
44
  end
45
45
 
46
+ alias :set_client_data :set_client_object
47
+ alias :client_data= :set_client_object
48
+ alias :get_client_data :get_client_object
49
+ alias :client_data :get_client_object
50
+
46
51
  end
47
52
 
48
53
  # reduce mapping warnings for this unpublished event class