wxruby3 0.9.0.pre.beta.8-x64-mingw-ucrt

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (839) hide show
  1. checksums.yaml +7 -0
  2. data/.wxconfig +17 -0
  3. data/.yardopts +13 -0
  4. data/CREDITS.md +52 -0
  5. data/LICENSE +21 -0
  6. data/README.md +139 -0
  7. data/bin/wxruby +9 -0
  8. data/bin/wxruby.bat +20 -0
  9. data/ext/mkrf_conf_bingem.rb +18 -0
  10. data/ext/wxbase32u_gcc_custom.dll +0 -0
  11. data/ext/wxbase32u_net_gcc_custom.dll +0 -0
  12. data/ext/wxbase32u_xml_gcc_custom.dll +0 -0
  13. data/ext/wxmsw32u_aui_gcc_custom.dll +0 -0
  14. data/ext/wxmsw32u_core_gcc_custom.dll +0 -0
  15. data/ext/wxmsw32u_gl_gcc_custom.dll +0 -0
  16. data/ext/wxmsw32u_html_gcc_custom.dll +0 -0
  17. data/ext/wxmsw32u_media_gcc_custom.dll +0 -0
  18. data/ext/wxmsw32u_propgrid_gcc_custom.dll +0 -0
  19. data/ext/wxmsw32u_qa_gcc_custom.dll +0 -0
  20. data/ext/wxmsw32u_ribbon_gcc_custom.dll +0 -0
  21. data/ext/wxmsw32u_richtext_gcc_custom.dll +0 -0
  22. data/ext/wxmsw32u_stc_gcc_custom.dll +0 -0
  23. data/ext/wxmsw32u_webview_gcc_custom.dll +0 -0
  24. data/ext/wxmsw32u_xrc_gcc_custom.dll +0 -0
  25. data/lib/wx/accessors.rb +63 -0
  26. data/lib/wx/aui/auimanager.rb +17 -0
  27. data/lib/wx/aui/auinotebook.rb +9 -0
  28. data/lib/wx/aui/events/evt_list.rb +143 -0
  29. data/lib/wx/aui/require.rb +9 -0
  30. data/lib/wx/aui.rb +14 -0
  31. data/lib/wx/core/acceleratortable.rb +28 -0
  32. data/lib/wx/core/animation.rb +18 -0
  33. data/lib/wx/core/app.rb +89 -0
  34. data/lib/wx/core/artprovider.rb +31 -0
  35. data/lib/wx/core/bitmap.rb +59 -0
  36. data/lib/wx/core/busycursor.rb +12 -0
  37. data/lib/wx/core/choice.rb +4 -0
  38. data/lib/wx/core/choicedlg.rb +54 -0
  39. data/lib/wx/core/clientdc.rb +13 -0
  40. data/lib/wx/core/clipboard.rb +56 -0
  41. data/lib/wx/core/collapsible_pane.rb +12 -0
  42. data/lib/wx/core/colour.rb +34 -0
  43. data/lib/wx/core/combobox.rb +4 -0
  44. data/lib/wx/core/controlwithitems.rb +10 -0
  45. data/lib/wx/core/data_object.rb +10 -0
  46. data/lib/wx/core/dataformat.rb +26 -0
  47. data/lib/wx/core/dc.rb +68 -0
  48. data/lib/wx/core/dialog.rb +50 -0
  49. data/lib/wx/core/enum.rb +28 -0
  50. data/lib/wx/core/event.rb +16 -0
  51. data/lib/wx/core/events/evt_list.rb +1378 -0
  52. data/lib/wx/core/evthandler.rb +253 -0
  53. data/lib/wx/core/ext.rb +58 -0
  54. data/lib/wx/core/font/encoding.rb +113 -0
  55. data/lib/wx/core/font.rb +22 -0
  56. data/lib/wx/core/functions.rb +44 -0
  57. data/lib/wx/core/gauge.rb +12 -0
  58. data/lib/wx/core/genericdirctrl.rb +36 -0
  59. data/lib/wx/core/hboxsizer.rb +6 -0
  60. data/lib/wx/core/helpcontroller.rb +5 -0
  61. data/lib/wx/core/helpcontrollerhelpprovider.rb +24 -0
  62. data/lib/wx/core/helpprovider.rb +15 -0
  63. data/lib/wx/core/icon.rb +40 -0
  64. data/lib/wx/core/image.rb +68 -0
  65. data/lib/wx/core/imagelist.rb +3 -0
  66. data/lib/wx/core/listbox.rb +4 -0
  67. data/lib/wx/core/listctrl.rb +33 -0
  68. data/lib/wx/core/locale.rb +73 -0
  69. data/lib/wx/core/log.rb +20 -0
  70. data/lib/wx/core/menu.rb +78 -0
  71. data/lib/wx/core/menu_bar.rb +20 -0
  72. data/lib/wx/core/menuitem.rb +7 -0
  73. data/lib/wx/core/notebook.rb +9 -0
  74. data/lib/wx/core/object.rb +14 -0
  75. data/lib/wx/core/pen_info.rb +11 -0
  76. data/lib/wx/core/platform_info.rb +13 -0
  77. data/lib/wx/core/point.rb +92 -0
  78. data/lib/wx/core/real_point.rb +92 -0
  79. data/lib/wx/core/rect.rb +57 -0
  80. data/lib/wx/core/simplehelpprovider.rb +38 -0
  81. data/lib/wx/core/size.rb +86 -0
  82. data/lib/wx/core/sizer.rb +43 -0
  83. data/lib/wx/core/splash_screen.rb +44 -0
  84. data/lib/wx/core/textctrl.rb +8 -0
  85. data/lib/wx/core/timer.rb +104 -0
  86. data/lib/wx/core/toolbar.rb +37 -0
  87. data/lib/wx/core/toolbartool.rb +4 -0
  88. data/lib/wx/core/treectrl.rb +46 -0
  89. data/lib/wx/core/validator.rb +8 -0
  90. data/lib/wx/core/variant.rb +62 -0
  91. data/lib/wx/core/vboxsizer.rb +6 -0
  92. data/lib/wx/core/window.rb +95 -0
  93. data/lib/wx/core/window_update_locker.rb +12 -0
  94. data/lib/wx/core/xmlresource.rb +56 -0
  95. data/lib/wx/core.rb +61 -0
  96. data/lib/wx/doc/aui/auimanager.rb +12 -0
  97. data/lib/wx/doc/aui/auinotebook.rb +9 -0
  98. data/lib/wx/doc/colour_dialog.rb +15 -0
  99. data/lib/wx/doc/core.rb +11 -0
  100. data/lib/wx/doc/dc.rb +49 -0
  101. data/lib/wx/doc/enum.rb +88 -0
  102. data/lib/wx/doc/evthandler.rb +87 -0
  103. data/lib/wx/doc/extra/00_starting.md +154 -0
  104. data/lib/wx/doc/extra/01_packages.md +179 -0
  105. data/lib/wx/doc/extra/02_lifecycles.md +116 -0
  106. data/lib/wx/doc/extra/03_dialogs.md +57 -0
  107. data/lib/wx/doc/extra/04_enums.md +143 -0
  108. data/lib/wx/doc/extra/05_event-handling.md +166 -0
  109. data/lib/wx/doc/extra/06_geometry.md +56 -0
  110. data/lib/wx/doc/extra/07_colour_and_font.md +52 -0
  111. data/lib/wx/doc/extra/08_extensions.md +144 -0
  112. data/lib/wx/doc/extra/09_exceptions.md +54 -0
  113. data/lib/wx/doc/functions.rb +221 -0
  114. data/lib/wx/doc/gdi_common.rb +181 -0
  115. data/lib/wx/doc/gen/about_dialog_info.rb +315 -0
  116. data/lib/wx/doc/gen/accelerator.rb +172 -0
  117. data/lib/wx/doc/gen/accessible.rb +817 -0
  118. data/lib/wx/doc/gen/animation.rb +253 -0
  119. data/lib/wx/doc/gen/animation_ctrl.rb +129 -0
  120. data/lib/wx/doc/gen/any_button.rb +170 -0
  121. data/lib/wx/doc/gen/app.rb +363 -0
  122. data/lib/wx/doc/gen/art_provider.rb +497 -0
  123. data/lib/wx/doc/gen/aui/aui_dock_art.rb +421 -0
  124. data/lib/wx/doc/gen/aui/aui_floating_frame.rb +39 -0
  125. data/lib/wx/doc/gen/aui/aui_manager.rb +323 -0
  126. data/lib/wx/doc/gen/aui/aui_manager_event.rb +112 -0
  127. data/lib/wx/doc/gen/aui/aui_mdi_child_frame.rb +163 -0
  128. data/lib/wx/doc/gen/aui/aui_mdi_client_window.rb +46 -0
  129. data/lib/wx/doc/gen/aui/aui_mdi_parent_frame.rb +109 -0
  130. data/lib/wx/doc/gen/aui/aui_notebook.rb +329 -0
  131. data/lib/wx/doc/gen/aui/aui_notebook_event.rb +179 -0
  132. data/lib/wx/doc/gen/aui/aui_pane_info.rb +665 -0
  133. data/lib/wx/doc/gen/aui/aui_tab_art.rb +372 -0
  134. data/lib/wx/doc/gen/aui/aui_tab_ctrl.rb +147 -0
  135. data/lib/wx/doc/gen/aui/aui_tool_bar.rb +437 -0
  136. data/lib/wx/doc/gen/aui/aui_tool_bar_art.rb +272 -0
  137. data/lib/wx/doc/gen/aui/aui_tool_bar_event.rb +195 -0
  138. data/lib/wx/doc/gen/aui/aui_tool_bar_item.rb +224 -0
  139. data/lib/wx/doc/gen/aui/event_list.rb +162 -0
  140. data/lib/wx/doc/gen/auto_buffered_paint_dc.rb +47 -0
  141. data/lib/wx/doc/gen/bitmap.rb +638 -0
  142. data/lib/wx/doc/gen/bitmap_button.rb +91 -0
  143. data/lib/wx/doc/gen/book_ctrl_base.rb +240 -0
  144. data/lib/wx/doc/gen/book_ctrl_event.rb +60 -0
  145. data/lib/wx/doc/gen/box_sizer.rb +66 -0
  146. data/lib/wx/doc/gen/brush.rb +219 -0
  147. data/lib/wx/doc/gen/buffered_dc.rb +95 -0
  148. data/lib/wx/doc/gen/buffered_paint_dc.rb +55 -0
  149. data/lib/wx/doc/gen/busy_info.rb +141 -0
  150. data/lib/wx/doc/gen/button.rb +133 -0
  151. data/lib/wx/doc/gen/calculate_layout_event.rb +59 -0
  152. data/lib/wx/doc/gen/calendar_ctrl.rb +236 -0
  153. data/lib/wx/doc/gen/calendar_date_attr.rb +137 -0
  154. data/lib/wx/doc/gen/calendar_event.rb +150 -0
  155. data/lib/wx/doc/gen/caret.rb +99 -0
  156. data/lib/wx/doc/gen/check_box.rb +145 -0
  157. data/lib/wx/doc/gen/check_list_box.rb +96 -0
  158. data/lib/wx/doc/gen/choice.rb +143 -0
  159. data/lib/wx/doc/gen/choicebook.rb +100 -0
  160. data/lib/wx/doc/gen/client_dc.rb +49 -0
  161. data/lib/wx/doc/gen/clipboard.rb +128 -0
  162. data/lib/wx/doc/gen/collapsible_pane.rb +120 -0
  163. data/lib/wx/doc/gen/collapsible_pane_event.rb +45 -0
  164. data/lib/wx/doc/gen/colour.rb +289 -0
  165. data/lib/wx/doc/gen/colour_data.rb +96 -0
  166. data/lib/wx/doc/gen/colour_dialog.rb +84 -0
  167. data/lib/wx/doc/gen/colour_picker_ctrl.rb +89 -0
  168. data/lib/wx/doc/gen/colour_picker_event.rb +74 -0
  169. data/lib/wx/doc/gen/combo_box.rb +228 -0
  170. data/lib/wx/doc/gen/context_help_button.rb +34 -0
  171. data/lib/wx/doc/gen/control.rb +245 -0
  172. data/lib/wx/doc/gen/control_with_items.rb +339 -0
  173. data/lib/wx/doc/gen/core.rb +42 -0
  174. data/lib/wx/doc/gen/cursor.rb +127 -0
  175. data/lib/wx/doc/gen/data_format.rb +94 -0
  176. data/lib/wx/doc/gen/data_object.rb +439 -0
  177. data/lib/wx/doc/gen/date_event.rb +48 -0
  178. data/lib/wx/doc/gen/date_picker_ctrl.rb +127 -0
  179. data/lib/wx/doc/gen/dc.rb +1278 -0
  180. data/lib/wx/doc/gen/defs.rb +2832 -0
  181. data/lib/wx/doc/gen/dialog.rb +426 -0
  182. data/lib/wx/doc/gen/dir_dialog.rb +134 -0
  183. data/lib/wx/doc/gen/dir_filter_list_ctrl.rb +80 -0
  184. data/lib/wx/doc/gen/dir_picker_ctrl.rb +103 -0
  185. data/lib/wx/doc/gen/drag_drop.rb +292 -0
  186. data/lib/wx/doc/gen/drag_image.rb +123 -0
  187. data/lib/wx/doc/gen/editable_list_box.rb +89 -0
  188. data/lib/wx/doc/gen/event.rb +911 -0
  189. data/lib/wx/doc/gen/event_list.rb +1512 -0
  190. data/lib/wx/doc/gen/events.rb +2499 -0
  191. data/lib/wx/doc/gen/evt_handler.rb +224 -0
  192. data/lib/wx/doc/gen/ext_help_controller.rb +100 -0
  193. data/lib/wx/doc/gen/file_dialog.rb +294 -0
  194. data/lib/wx/doc/gen/file_dir_picker_event.rb +98 -0
  195. data/lib/wx/doc/gen/file_picker_ctrl.rb +107 -0
  196. data/lib/wx/doc/gen/find_dialog_event.rb +119 -0
  197. data/lib/wx/doc/gen/find_replace_data.rb +59 -0
  198. data/lib/wx/doc/gen/find_replace_dialog.rb +44 -0
  199. data/lib/wx/doc/gen/flex_grid_sizer.rb +145 -0
  200. data/lib/wx/doc/gen/font.rb +1282 -0
  201. data/lib/wx/doc/gen/font_data.rb +132 -0
  202. data/lib/wx/doc/gen/font_dialog.rb +71 -0
  203. data/lib/wx/doc/gen/font_picker_ctrl.rb +120 -0
  204. data/lib/wx/doc/gen/font_picker_event.rb +64 -0
  205. data/lib/wx/doc/gen/frame.rb +276 -0
  206. data/lib/wx/doc/gen/fs_file.rb +269 -0
  207. data/lib/wx/doc/gen/functions.rb +10 -0
  208. data/lib/wx/doc/gen/gauge.rb +127 -0
  209. data/lib/wx/doc/gen/gb_sizer_item.rb +78 -0
  210. data/lib/wx/doc/gen/gcdc.rb +61 -0
  211. data/lib/wx/doc/gen/gdi_common.rb +1108 -0
  212. data/lib/wx/doc/gen/gdi_object.rb +29 -0
  213. data/lib/wx/doc/gen/generic_dir_ctrl.rb +198 -0
  214. data/lib/wx/doc/gen/graphics_context.rb +764 -0
  215. data/lib/wx/doc/gen/graphics_object.rb +494 -0
  216. data/lib/wx/doc/gen/grid/event_list.rb +173 -0
  217. data/lib/wx/doc/gen/grid/grid_cell_activatable_editor.rb +33 -0
  218. data/lib/wx/doc/gen/grid/grid_cell_attr.rb +279 -0
  219. data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_editor.rb +31 -0
  220. data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_renderer.rb +32 -0
  221. data/lib/wx/doc/gen/grid/grid_cell_bool_editor.rb +44 -0
  222. data/lib/wx/doc/gen/grid/grid_cell_bool_renderer.rb +31 -0
  223. data/lib/wx/doc/gen/grid/grid_cell_choice_editor.rb +48 -0
  224. data/lib/wx/doc/gen/grid/grid_cell_date_editor.rb +33 -0
  225. data/lib/wx/doc/gen/grid/grid_cell_date_renderer.rb +40 -0
  226. data/lib/wx/doc/gen/grid/grid_cell_date_time_renderer.rb +35 -0
  227. data/lib/wx/doc/gen/grid/grid_cell_editor.rb +181 -0
  228. data/lib/wx/doc/gen/grid/grid_cell_enum_editor.rb +34 -0
  229. data/lib/wx/doc/gen/grid/grid_cell_enum_renderer.rb +39 -0
  230. data/lib/wx/doc/gen/grid/grid_cell_float_editor.rb +41 -0
  231. data/lib/wx/doc/gen/grid/grid_cell_float_renderer.rb +74 -0
  232. data/lib/wx/doc/gen/grid/grid_cell_number_editor.rb +41 -0
  233. data/lib/wx/doc/gen/grid/grid_cell_number_renderer.rb +31 -0
  234. data/lib/wx/doc/gen/grid/grid_cell_renderer.rb +98 -0
  235. data/lib/wx/doc/gen/grid/grid_cell_string_renderer.rb +31 -0
  236. data/lib/wx/doc/gen/grid/grid_cell_text_editor.rb +45 -0
  237. data/lib/wx/doc/gen/grid/grid_ctrl.rb +2381 -0
  238. data/lib/wx/doc/gen/grid/grid_editor_created_event.rb +87 -0
  239. data/lib/wx/doc/gen/grid/grid_event.rb +96 -0
  240. data/lib/wx/doc/gen/grid/grid_range_select_event.rb +96 -0
  241. data/lib/wx/doc/gen/grid/grid_size_event.rb +71 -0
  242. data/lib/wx/doc/gen/grid/grid_string_table.rb +130 -0
  243. data/lib/wx/doc/gen/grid/grid_table_base.rb +288 -0
  244. data/lib/wx/doc/gen/grid/grid_table_message.rb +73 -0
  245. data/lib/wx/doc/gen/grid_bag_sizer.rb +298 -0
  246. data/lib/wx/doc/gen/grid_sizer.rb +135 -0
  247. data/lib/wx/doc/gen/help_controller.rb +136 -0
  248. data/lib/wx/doc/gen/help_provider.rb +80 -0
  249. data/lib/wx/doc/gen/html/event_list.rb +46 -0
  250. data/lib/wx/doc/gen/html/html_cell.rb +441 -0
  251. data/lib/wx/doc/gen/html/html_cell_event.rb +62 -0
  252. data/lib/wx/doc/gen/html/html_easy_printing.rb +169 -0
  253. data/lib/wx/doc/gen/html/html_help_controller.rb +256 -0
  254. data/lib/wx/doc/gen/html/html_help_data.rb +144 -0
  255. data/lib/wx/doc/gen/html/html_help_frame.rb +112 -0
  256. data/lib/wx/doc/gen/html/html_help_window.rb +230 -0
  257. data/lib/wx/doc/gen/html/html_link_event.rb +36 -0
  258. data/lib/wx/doc/gen/html/html_list_box.rb +150 -0
  259. data/lib/wx/doc/gen/html/html_printout.rb +87 -0
  260. data/lib/wx/doc/gen/html/html_window.rb +386 -0
  261. data/lib/wx/doc/gen/icon.rb +267 -0
  262. data/lib/wx/doc/gen/icon_location.rb +38 -0
  263. data/lib/wx/doc/gen/image.rb +1144 -0
  264. data/lib/wx/doc/gen/image_list.rb +181 -0
  265. data/lib/wx/doc/gen/keyboard_state.rb +124 -0
  266. data/lib/wx/doc/gen/list_box.rb +260 -0
  267. data/lib/wx/doc/gen/list_ctrl.rb +1542 -0
  268. data/lib/wx/doc/gen/list_event.rb +177 -0
  269. data/lib/wx/doc/gen/listbook.rb +100 -0
  270. data/lib/wx/doc/gen/locale.rb +4143 -0
  271. data/lib/wx/doc/gen/log.rb +505 -0
  272. data/lib/wx/doc/gen/mdi_client_window.rb +38 -0
  273. data/lib/wx/doc/gen/mdi_frame.rb +235 -0
  274. data/lib/wx/doc/gen/media_ctrl.rb +225 -0
  275. data/lib/wx/doc/gen/media_event.rb +109 -0
  276. data/lib/wx/doc/gen/memory_dc.rb +95 -0
  277. data/lib/wx/doc/gen/menu.rb +493 -0
  278. data/lib/wx/doc/gen/menu_bar.rb +247 -0
  279. data/lib/wx/doc/gen/menu_item.rb +333 -0
  280. data/lib/wx/doc/gen/message_dialog.rb +195 -0
  281. data/lib/wx/doc/gen/mini_frame.rb +72 -0
  282. data/lib/wx/doc/gen/mirror_dc.rb +29 -0
  283. data/lib/wx/doc/gen/mouse_state.rb +108 -0
  284. data/lib/wx/doc/gen/multi_choice_dialog.rb +58 -0
  285. data/lib/wx/doc/gen/non_owned_window.rb +46 -0
  286. data/lib/wx/doc/gen/notebook.rb +220 -0
  287. data/lib/wx/doc/gen/number_entry_dialog.rb +75 -0
  288. data/lib/wx/doc/gen/object.rb +69 -0
  289. data/lib/wx/doc/gen/paint_dc.rb +34 -0
  290. data/lib/wx/doc/gen/palette.rb +90 -0
  291. data/lib/wx/doc/gen/panel.rb +96 -0
  292. data/lib/wx/doc/gen/pen.rb +484 -0
  293. data/lib/wx/doc/gen/pg/event_list.rb +102 -0
  294. data/lib/wx/doc/gen/pg/numeric_property_validator.rb +47 -0
  295. data/lib/wx/doc/gen/pg/pg_array_editor_dialog.rb +295 -0
  296. data/lib/wx/doc/gen/pg/pg_cell.rb +166 -0
  297. data/lib/wx/doc/gen/pg/pg_editor.rb +569 -0
  298. data/lib/wx/doc/gen/pg/pg_multi_button.rb +161 -0
  299. data/lib/wx/doc/gen/pg/pg_properties.rb +2193 -0
  300. data/lib/wx/doc/gen/pg/pg_property.rb +1852 -0
  301. data/lib/wx/doc/gen/pg/pg_validation_info.rb +327 -0
  302. data/lib/wx/doc/gen/pg/property_grid.rb +619 -0
  303. data/lib/wx/doc/gen/pg/property_grid_event.rb +135 -0
  304. data/lib/wx/doc/gen/pg/property_grid_interface.rb +847 -0
  305. data/lib/wx/doc/gen/pg/property_grid_manager.rb +349 -0
  306. data/lib/wx/doc/gen/pg/property_grid_page.rb +265 -0
  307. data/lib/wx/doc/gen/pg/property_grid_page_state.rb +155 -0
  308. data/lib/wx/doc/gen/picker_base.rb +143 -0
  309. data/lib/wx/doc/gen/platform_info.rb +379 -0
  310. data/lib/wx/doc/gen/popup_window.rb +93 -0
  311. data/lib/wx/doc/gen/progress_dialog.rb +106 -0
  312. data/lib/wx/doc/gen/property_sheet_dialog.rb +185 -0
  313. data/lib/wx/doc/gen/prt/event_list.rb +13 -0
  314. data/lib/wx/doc/gen/prt/page_setup_dialog.rb +38 -0
  315. data/lib/wx/doc/gen/prt/post_script_dc.rb +32 -0
  316. data/lib/wx/doc/gen/prt/preview_frame.rb +39 -0
  317. data/lib/wx/doc/gen/prt/print_abort_dialog.rb +127 -0
  318. data/lib/wx/doc/gen/prt/print_data.rb +598 -0
  319. data/lib/wx/doc/gen/prt/print_dialog.rb +47 -0
  320. data/lib/wx/doc/gen/prt/printer.rb +428 -0
  321. data/lib/wx/doc/gen/prt/printer_dc.rb +35 -0
  322. data/lib/wx/doc/gen/query_layout_info_event.rb +98 -0
  323. data/lib/wx/doc/gen/radio_box.rb +258 -0
  324. data/lib/wx/doc/gen/radio_button.rb +128 -0
  325. data/lib/wx/doc/gen/rbn/event_list.rb +132 -0
  326. data/lib/wx/doc/gen/rbn/ribbon_art_provider.rb +1652 -0
  327. data/lib/wx/doc/gen/rbn/ribbon_bar.rb +227 -0
  328. data/lib/wx/doc/gen/rbn/ribbon_bar_event.rb +40 -0
  329. data/lib/wx/doc/gen/rbn/ribbon_button_bar.rb +400 -0
  330. data/lib/wx/doc/gen/rbn/ribbon_button_bar_event.rb +58 -0
  331. data/lib/wx/doc/gen/rbn/ribbon_control.rb +116 -0
  332. data/lib/wx/doc/gen/rbn/ribbon_gallery.rb +208 -0
  333. data/lib/wx/doc/gen/rbn/ribbon_gallery_event.rb +51 -0
  334. data/lib/wx/doc/gen/rbn/ribbon_page.rb +129 -0
  335. data/lib/wx/doc/gen/rbn/ribbon_panel.rb +232 -0
  336. data/lib/wx/doc/gen/rbn/ribbon_panel_event.rb +41 -0
  337. data/lib/wx/doc/gen/rbn/ribbon_tool_bar.rb +321 -0
  338. data/lib/wx/doc/gen/rbn/ribbon_tool_bar_event.rb +36 -0
  339. data/lib/wx/doc/gen/region.rb +299 -0
  340. data/lib/wx/doc/gen/rtc/event_list.rb +121 -0
  341. data/lib/wx/doc/gen/rtc/rich_text_buffer.rb +2052 -0
  342. data/lib/wx/doc/gen/rtc/rich_text_ctrl.rb +2031 -0
  343. data/lib/wx/doc/gen/rtc/rich_text_event.rb +146 -0
  344. data/lib/wx/doc/gen/rtc/rich_text_file_handler.rb +171 -0
  345. data/lib/wx/doc/gen/rtc/rich_text_header_footer_data.rb +180 -0
  346. data/lib/wx/doc/gen/rtc/rich_text_html_handler.rb +104 -0
  347. data/lib/wx/doc/gen/rtc/rich_text_printing.rb +241 -0
  348. data/lib/wx/doc/gen/rtc/rich_text_xml_handler.rb +55 -0
  349. data/lib/wx/doc/gen/rtc/symbol_picker_dialog.rb +153 -0
  350. data/lib/wx/doc/gen/sash_event.rb +133 -0
  351. data/lib/wx/doc/gen/sash_layout_window.rb +203 -0
  352. data/lib/wx/doc/gen/sash_window.rb +154 -0
  353. data/lib/wx/doc/gen/screen_dc.rb +27 -0
  354. data/lib/wx/doc/gen/scrolled_canvas.rb +317 -0
  355. data/lib/wx/doc/gen/scrolled_control.rb +317 -0
  356. data/lib/wx/doc/gen/scrolled_window.rb +337 -0
  357. data/lib/wx/doc/gen/simplebook.rb +93 -0
  358. data/lib/wx/doc/gen/single_choice_dialog.rb +74 -0
  359. data/lib/wx/doc/gen/sizer.rb +847 -0
  360. data/lib/wx/doc/gen/sizer_item.rb +227 -0
  361. data/lib/wx/doc/gen/slider.rb +316 -0
  362. data/lib/wx/doc/gen/spin_button.rb +124 -0
  363. data/lib/wx/doc/gen/spin_ctrl.rb +170 -0
  364. data/lib/wx/doc/gen/spin_event.rb +47 -0
  365. data/lib/wx/doc/gen/splash_screen.rb +83 -0
  366. data/lib/wx/doc/gen/splitter_event.rb +87 -0
  367. data/lib/wx/doc/gen/splitter_window.rb +357 -0
  368. data/lib/wx/doc/gen/static_bitmap.rb +126 -0
  369. data/lib/wx/doc/gen/static_box.rb +123 -0
  370. data/lib/wx/doc/gen/static_box_sizer.rb +67 -0
  371. data/lib/wx/doc/gen/static_line.rb +66 -0
  372. data/lib/wx/doc/gen/static_text.rb +98 -0
  373. data/lib/wx/doc/gen/status_bar.rb +203 -0
  374. data/lib/wx/doc/gen/stc/event_list.rb +217 -0
  375. data/lib/wx/doc/gen/stc/styled_text_ctrl.rb +4000 -0
  376. data/lib/wx/doc/gen/stc/styled_text_event.rb +7319 -0
  377. data/lib/wx/doc/gen/std_dialog_button_sizer.rb +74 -0
  378. data/lib/wx/doc/gen/svg_file_dc.rb +153 -0
  379. data/lib/wx/doc/gen/system_options.rb +109 -0
  380. data/lib/wx/doc/gen/system_settings.rb +481 -0
  381. data/lib/wx/doc/gen/task_bar_icon.rb +94 -0
  382. data/lib/wx/doc/gen/task_bar_icon_event.rb +86 -0
  383. data/lib/wx/doc/gen/text_attr.rb +645 -0
  384. data/lib/wx/doc/gen/text_ctrl.rb +841 -0
  385. data/lib/wx/doc/gen/text_entry.rb +389 -0
  386. data/lib/wx/doc/gen/text_entry_dialog.rb +170 -0
  387. data/lib/wx/doc/gen/text_validator.rb +212 -0
  388. data/lib/wx/doc/gen/time_picker_ctrl.rb +103 -0
  389. data/lib/wx/doc/gen/timer.rb +103 -0
  390. data/lib/wx/doc/gen/timer_event.rb +73 -0
  391. data/lib/wx/doc/gen/tip_provider.rb +60 -0
  392. data/lib/wx/doc/gen/toggle_button.rb +84 -0
  393. data/lib/wx/doc/gen/tool_bar.rb +744 -0
  394. data/lib/wx/doc/gen/tool_tip.rb +73 -0
  395. data/lib/wx/doc/gen/toolbook.rb +103 -0
  396. data/lib/wx/doc/gen/top_level_window.rb +462 -0
  397. data/lib/wx/doc/gen/tree_ctrl.rb +863 -0
  398. data/lib/wx/doc/gen/tree_event.rb +101 -0
  399. data/lib/wx/doc/gen/treebook.rb +154 -0
  400. data/lib/wx/doc/gen/utils.rb +257 -0
  401. data/lib/wx/doc/gen/v_list_box.rb +224 -0
  402. data/lib/wx/doc/gen/v_scrolled_window.rb +224 -0
  403. data/lib/wx/doc/gen/validator.rb +73 -0
  404. data/lib/wx/doc/gen/variant.rb +340 -0
  405. data/lib/wx/doc/gen/window.rb +2414 -0
  406. data/lib/wx/doc/gen/window_dc.rb +35 -0
  407. data/lib/wx/doc/gen/window_disabler.rb +24 -0
  408. data/lib/wx/doc/gen/with_images.rb +73 -0
  409. data/lib/wx/doc/gen/wizard.rb +197 -0
  410. data/lib/wx/doc/gen/wizard_event.rb +105 -0
  411. data/lib/wx/doc/gen/wizard_page.rb +61 -0
  412. data/lib/wx/doc/gen/wizard_page_simple.rb +72 -0
  413. data/lib/wx/doc/gen/xml_node.rb +282 -0
  414. data/lib/wx/doc/gen/xml_resource.rb +304 -0
  415. data/lib/wx/doc/grid/grid.rb +20 -0
  416. data/lib/wx/doc/help_controller.rb +14 -0
  417. data/lib/wx/doc/html/html_help_controller.rb +8 -0
  418. data/lib/wx/doc/pg/events.rb +15 -0
  419. data/lib/wx/doc/pg/pg_property.rb +8 -0
  420. data/lib/wx/doc/pg/pgeditor.rb +21 -0
  421. data/lib/wx/doc/pg/property_grid.rb +48 -0
  422. data/lib/wx/doc/pg/property_grid_interface.rb +64 -0
  423. data/lib/wx/doc/prt/page_setup_dialog.rb +15 -0
  424. data/lib/wx/doc/prt/print_data.rb +9 -0
  425. data/lib/wx/doc/prt/print_dialog.rb +26 -0
  426. data/lib/wx/doc/prt/printer.rb +15 -0
  427. data/lib/wx/doc/rbn/ribbon_bar.rb +9 -0
  428. data/lib/wx/doc/rbn/ribbon_button_bar.rb +9 -0
  429. data/lib/wx/doc/rbn/ribbon_gallery.rb +9 -0
  430. data/lib/wx/doc/rbn/ribbon_tool_bar.rb +9 -0
  431. data/lib/wx/doc/rtc/richtext_printing.rb +14 -0
  432. data/lib/wx/doc/screen_dc.rb +10 -0
  433. data/lib/wx/doc/stock_objects.rb +98 -0
  434. data/lib/wx/doc/stream.rb +38 -0
  435. data/lib/wx/doc/system_settings.rb +29 -0
  436. data/lib/wx/doc/treebook.rb +9 -0
  437. data/lib/wx/doc/variant.rb +163 -0
  438. data/lib/wx/doc/xml_resource.rb +19 -0
  439. data/lib/wx/global_const.rb +84 -0
  440. data/lib/wx/grid/events/evt_list.rb +156 -0
  441. data/lib/wx/grid/grid.rb +7 -0
  442. data/lib/wx/grid/keyword_defs.rb +10 -0
  443. data/lib/wx/grid/require.rb +9 -0
  444. data/lib/wx/grid.rb +14 -0
  445. data/lib/wx/helpers.rb +65 -0
  446. data/lib/wx/html/events/evt_list.rb +37 -0
  447. data/lib/wx/html/htmlhelpcontroller.rb +6 -0
  448. data/lib/wx/html/htmlwindow.rb +19 -0
  449. data/lib/wx/html/keyword_defs.rb +22 -0
  450. data/lib/wx/html/require.rb +10 -0
  451. data/lib/wx/html.rb +15 -0
  452. data/lib/wx/keyword_ctors.rb +226 -0
  453. data/lib/wx/keyword_defs.rb +487 -0
  454. data/lib/wx/pg/events/evt_list.rb +73 -0
  455. data/lib/wx/pg/events.rb +14 -0
  456. data/lib/wx/pg/keyword_defs.rb +15 -0
  457. data/lib/wx/pg/pg_editor.rb +13 -0
  458. data/lib/wx/pg/pg_properties.rb +24 -0
  459. data/lib/wx/pg/pg_property.rb +27 -0
  460. data/lib/wx/pg/property_grid.rb +71 -0
  461. data/lib/wx/pg/property_grid_interface.rb +46 -0
  462. data/lib/wx/pg/require.rb +12 -0
  463. data/lib/wx/pg.rb +14 -0
  464. data/lib/wx/prt/keyword_defs.rb +8 -0
  465. data/lib/wx/prt/page_setup_dialog.rb +15 -0
  466. data/lib/wx/prt/previewframe.rb +13 -0
  467. data/lib/wx/prt/require.rb +8 -0
  468. data/lib/wx/prt.rb +14 -0
  469. data/lib/wx/rbn/events/evt_list.rb +102 -0
  470. data/lib/wx/rbn/events.rb +4 -0
  471. data/lib/wx/rbn/keyword_defs.rb +43 -0
  472. data/lib/wx/rbn/require.rb +12 -0
  473. data/lib/wx/rbn/ribbon_art_provider.rb +10 -0
  474. data/lib/wx/rbn/ribbon_bar.rb +12 -0
  475. data/lib/wx/rbn/ribbon_button_bar.rb +26 -0
  476. data/lib/wx/rbn/ribbon_control.rb +25 -0
  477. data/lib/wx/rbn/ribbon_gallery.rb +26 -0
  478. data/lib/wx/rbn/ribbon_page.rb +15 -0
  479. data/lib/wx/rbn/ribbon_panel.rb +15 -0
  480. data/lib/wx/rbn/ribbon_tool_bar.rb +26 -0
  481. data/lib/wx/rbn.rb +14 -0
  482. data/lib/wx/rtc/events/evt_list.rb +98 -0
  483. data/lib/wx/rtc/ext/rich_text_ctrl.rb +24 -0
  484. data/lib/wx/rtc/ext.rb +15 -0
  485. data/lib/wx/rtc/keyword_defs.rb +17 -0
  486. data/lib/wx/rtc/require.rb +8 -0
  487. data/lib/wx/rtc.rb +15 -0
  488. data/lib/wx/stc/events/evt_list.rb +178 -0
  489. data/lib/wx/stc/keyword_defs.rb +8 -0
  490. data/lib/wx/stc/require.rb +7 -0
  491. data/lib/wx/stc.rb +14 -0
  492. data/lib/wx/version.rb +3 -0
  493. data/lib/wx/wxruby/base.rb +87 -0
  494. data/lib/wx/wxruby/cmd/sampler.rb +68 -0
  495. data/lib/wx/wxruby/cmd/test.rb +27 -0
  496. data/lib/wx.rb +14 -0
  497. data/lib/wxruby_aui.so +0 -0
  498. data/lib/wxruby_core.so +0 -0
  499. data/lib/wxruby_grid.so +0 -0
  500. data/lib/wxruby_html.so +0 -0
  501. data/lib/wxruby_pg.so +0 -0
  502. data/lib/wxruby_prt.so +0 -0
  503. data/lib/wxruby_rbn.so +0 -0
  504. data/lib/wxruby_rtc.so +0 -0
  505. data/lib/wxruby_stc.so +0 -0
  506. data/rakelib/install.rb +220 -0
  507. data/rakelib/lib/config/cygwin.rb +6 -0
  508. data/rakelib/lib/config/linux.rb +78 -0
  509. data/rakelib/lib/config/macosx.rb +6 -0
  510. data/rakelib/lib/config/mingw.rb +133 -0
  511. data/rakelib/lib/config/netbsd.rb +6 -0
  512. data/rakelib/lib/config/unixish.rb +187 -0
  513. data/rakelib/lib/config.rb +673 -0
  514. data/rakelib/lib/ext/enum_chain.rb +22 -0
  515. data/rakelib/prepost.rake +91 -0
  516. data/rakelib/prepost.rb +26 -0
  517. data/rakelib/yard/templates/default/fulldoc/html/css/wxruby3.css +7 -0
  518. data/rakelib/yard/templates/default/layout/html/setup.rb +5 -0
  519. data/rakelib/yard/yard/relative_markdown_links/version.rb +8 -0
  520. data/rakelib/yard/yard/relative_markdown_links.rb +39 -0
  521. data/rakelib/yard/yard-custom-templates.rb +2 -0
  522. data/rakelib/yard/yard-relative_markdown_links.rb +4 -0
  523. data/samples/art/wxruby-128x128.png +0 -0
  524. data/samples/art/wxruby-256x256.png +0 -0
  525. data/samples/art/wxruby-64x64.png +0 -0
  526. data/samples/art/wxruby.ico +0 -0
  527. data/samples/art/wxruby.png +0 -0
  528. data/samples/aui/aui.rb +1321 -0
  529. data/samples/aui/tn_aui.png +0 -0
  530. data/samples/bigdemo/About.rbw +39 -0
  531. data/samples/bigdemo/ColorPanel.rbw +23 -0
  532. data/samples/bigdemo/GridSimple.rbw +78 -0
  533. data/samples/bigdemo/MDIDemo.rbw +57 -0
  534. data/samples/bigdemo/PopupMenu.rbw +146 -0
  535. data/samples/bigdemo/ShapedWindow.rbw +128 -0
  536. data/samples/bigdemo/Sizers.rbw +541 -0
  537. data/samples/bigdemo/bigdemo.rb +810 -0
  538. data/samples/bigdemo/demoTemplate.rbw +33 -0
  539. data/samples/bigdemo/helpfile.htb +0 -0
  540. data/samples/bigdemo/icons/Test 015.jpg +0 -0
  541. data/samples/bigdemo/icons/Test 015.png +0 -0
  542. data/samples/bigdemo/icons/choice.bmp +0 -0
  543. data/samples/bigdemo/icons/choice.xpm +27 -0
  544. data/samples/bigdemo/icons/combo.bmp +0 -0
  545. data/samples/bigdemo/icons/combo.xpm +27 -0
  546. data/samples/bigdemo/icons/copy.xpm +25 -0
  547. data/samples/bigdemo/icons/cut.xpm +24 -0
  548. data/samples/bigdemo/icons/gauge.bmp +0 -0
  549. data/samples/bigdemo/icons/gauge.xpm +27 -0
  550. data/samples/bigdemo/icons/help.xpm +25 -0
  551. data/samples/bigdemo/icons/list.bmp +0 -0
  552. data/samples/bigdemo/icons/list.xpm +27 -0
  553. data/samples/bigdemo/icons/mondrian.ico +0 -0
  554. data/samples/bigdemo/icons/mondrian.xpm +44 -0
  555. data/samples/bigdemo/icons/new.xpm +24 -0
  556. data/samples/bigdemo/icons/ogl.ico +0 -0
  557. data/samples/bigdemo/icons/ogl.xpm +45 -0
  558. data/samples/bigdemo/icons/open.xpm +26 -0
  559. data/samples/bigdemo/icons/paste.bmp +0 -0
  560. data/samples/bigdemo/icons/paste.xpm +38 -0
  561. data/samples/bigdemo/icons/pointy.png +0 -0
  562. data/samples/bigdemo/icons/preview.xpm +26 -0
  563. data/samples/bigdemo/icons/print.xpm +26 -0
  564. data/samples/bigdemo/icons/radio.bmp +0 -0
  565. data/samples/bigdemo/icons/radio.xpm +27 -0
  566. data/samples/bigdemo/icons/robert.xpm +415 -0
  567. data/samples/bigdemo/icons/sashtest.ico +0 -0
  568. data/samples/bigdemo/icons/save.xpm +25 -0
  569. data/samples/bigdemo/icons/smiles.bmp +0 -0
  570. data/samples/bigdemo/icons/smiles.xpm +39 -0
  571. data/samples/bigdemo/icons/smiley.ico +0 -0
  572. data/samples/bigdemo/icons/smiley.xpm +42 -0
  573. data/samples/bigdemo/icons/stattext.xpm +24 -0
  574. data/samples/bigdemo/icons/test2.bmp +0 -0
  575. data/samples/bigdemo/icons/test2.png +0 -0
  576. data/samples/bigdemo/icons/test2.xpm +79 -0
  577. data/samples/bigdemo/icons/text.bmp +0 -0
  578. data/samples/bigdemo/icons/text.xpm +27 -0
  579. data/samples/bigdemo/icons/tog1.bmp +0 -0
  580. data/samples/bigdemo/icons/tog1.xpm +38 -0
  581. data/samples/bigdemo/icons/tog2.bmp +0 -0
  582. data/samples/bigdemo/icons/tog2.xpm +38 -0
  583. data/samples/bigdemo/icons/wxruby-128x128.png +0 -0
  584. data/samples/bigdemo/icons/wxwin.ico +0 -0
  585. data/samples/bigdemo/icons/wxwin16x16.png +0 -0
  586. data/samples/bigdemo/icons/wxwin16x16.xpm +25 -0
  587. data/samples/bigdemo/icons/wxwin32x32.png +0 -0
  588. data/samples/bigdemo/icons/wxwin48x48.png +0 -0
  589. data/samples/bigdemo/run.rb +91 -0
  590. data/samples/bigdemo/tips.txt +7 -0
  591. data/samples/bigdemo/utils.rb +12 -0
  592. data/samples/bigdemo/wxArtProvider.rbw +281 -0
  593. data/samples/bigdemo/wxBitmapButton.rbw +65 -0
  594. data/samples/bigdemo/wxButton.rbw +64 -0
  595. data/samples/bigdemo/wxCalendarCtrl.rbw +59 -0
  596. data/samples/bigdemo/wxCheckBox.rbw +50 -0
  597. data/samples/bigdemo/wxCheckListBox.rbw +65 -0
  598. data/samples/bigdemo/wxChoice.rbw +47 -0
  599. data/samples/bigdemo/wxChoicebook.rbw +78 -0
  600. data/samples/bigdemo/wxColourDialog.rbw +33 -0
  601. data/samples/bigdemo/wxComboBox.rbw +77 -0
  602. data/samples/bigdemo/wxCursor.rbw +136 -0
  603. data/samples/bigdemo/wxDialog.rbw +74 -0
  604. data/samples/bigdemo/wxDirDialog.rbw +29 -0
  605. data/samples/bigdemo/wxDragImage.rbw +70 -0
  606. data/samples/bigdemo/wxFileDialog.rbw +37 -0
  607. data/samples/bigdemo/wxFileDialog_Save.rbw +35 -0
  608. data/samples/bigdemo/wxFindReplaceDialog.rbw +82 -0
  609. data/samples/bigdemo/wxFontDialog.rbw +200 -0
  610. data/samples/bigdemo/wxFrame.rbw +53 -0
  611. data/samples/bigdemo/wxGauge.rbw +65 -0
  612. data/samples/bigdemo/wxGenericDirCtrl.rbw +74 -0
  613. data/samples/bigdemo/wxGrid.rbw +66 -0
  614. data/samples/bigdemo/wxHtmlHelpController.rbw +52 -0
  615. data/samples/bigdemo/wxListBox.rbw +140 -0
  616. data/samples/bigdemo/wxListCtrl_virtual.rbw +112 -0
  617. data/samples/bigdemo/wxMDIWindows.rbw +50 -0
  618. data/samples/bigdemo/wxMenu.rbw +247 -0
  619. data/samples/bigdemo/wxMessageDialog.rbw +27 -0
  620. data/samples/bigdemo/wxMiniFrame.rbw +70 -0
  621. data/samples/bigdemo/wxMultipleChoiceDialog.rbw +29 -0
  622. data/samples/bigdemo/wxNotebook.rbw +136 -0
  623. data/samples/bigdemo/wxProgressDialog.rbw +43 -0
  624. data/samples/bigdemo/wxRadioBox.rbw +72 -0
  625. data/samples/bigdemo/wxRadioButton.rbw +125 -0
  626. data/samples/bigdemo/wxSashWindow.rbw +141 -0
  627. data/samples/bigdemo/wxScrolledMessageDialog.rbw +57 -0
  628. data/samples/bigdemo/wxScrolledWindow.rbw +199 -0
  629. data/samples/bigdemo/wxSingleChoiceDialog.rbw +33 -0
  630. data/samples/bigdemo/wxSlider.rbw +42 -0
  631. data/samples/bigdemo/wxSpinButton.rbw +50 -0
  632. data/samples/bigdemo/wxSpinCtrl.rbw +51 -0
  633. data/samples/bigdemo/wxSplitterWindow.rbw +63 -0
  634. data/samples/bigdemo/wxStaticBitmap.rbw +47 -0
  635. data/samples/bigdemo/wxStaticText.rbw +55 -0
  636. data/samples/bigdemo/wxStatusBar.rbw +126 -0
  637. data/samples/bigdemo/wxTextCtrl.rbw +149 -0
  638. data/samples/bigdemo/wxTextEntryDialog.rbw +31 -0
  639. data/samples/bigdemo/wxToggleButton.rbw +49 -0
  640. data/samples/bigdemo/wxToolBar.rbw +131 -0
  641. data/samples/bigdemo/wxTreeCtrl.rbw +191 -0
  642. data/samples/calendar/calendar.rb +363 -0
  643. data/samples/calendar/tn_calendar.png +0 -0
  644. data/samples/caret/caret.rb +293 -0
  645. data/samples/caret/mondrian.xpm +44 -0
  646. data/samples/caret/tn_caret.png +0 -0
  647. data/samples/controls/books.rb +183 -0
  648. data/samples/controls/choice.xpm +27 -0
  649. data/samples/controls/combo.xpm +27 -0
  650. data/samples/controls/controls.rb +1143 -0
  651. data/samples/controls/gauge.xpm +27 -0
  652. data/samples/controls/get_item_sample.rb +117 -0
  653. data/samples/controls/list.xpm +27 -0
  654. data/samples/controls/mondrian.ico +0 -0
  655. data/samples/controls/mondrian.xpm +44 -0
  656. data/samples/controls/radio.xpm +27 -0
  657. data/samples/controls/stattext.xpm +24 -0
  658. data/samples/controls/test2.bmp +0 -0
  659. data/samples/controls/text.xpm +27 -0
  660. data/samples/controls/tn_books.png +0 -0
  661. data/samples/controls/tn_controls.png +0 -0
  662. data/samples/controls/tn_get_item_sample.png +0 -0
  663. data/samples/dialogs/dialogs.rb +879 -0
  664. data/samples/dialogs/tips.txt +18 -0
  665. data/samples/dialogs/tn_dialogs.png +0 -0
  666. data/samples/dialogs/tn_wizard.png +0 -0
  667. data/samples/dialogs/wizard.rb +89 -0
  668. data/samples/dragdrop/dragdrop.rb +200 -0
  669. data/samples/dragdrop/tn_dragdrop.png +0 -0
  670. data/samples/drawing/SVGlogo24.xpm +310 -0
  671. data/samples/drawing/bitmap.rb +76 -0
  672. data/samples/drawing/bitmap_image.rb +131 -0
  673. data/samples/drawing/graphics_drawing.rb +257 -0
  674. data/samples/drawing/maths_images.rb +327 -0
  675. data/samples/drawing/rmagic_bitmap_image.rb +139 -0
  676. data/samples/drawing/ruby-logo.jpg +0 -0
  677. data/samples/drawing/svgtest.rb +373 -0
  678. data/samples/drawing/tn_bitmap.png +0 -0
  679. data/samples/drawing/tn_bitmap_image.png +0 -0
  680. data/samples/drawing/tn_graphics_drawing.png +0 -0
  681. data/samples/drawing/tn_maths_images.png +0 -0
  682. data/samples/drawing/tn_rmagic_bitmap_image.png +0 -0
  683. data/samples/drawing/tn_svgtest.png +0 -0
  684. data/samples/etc/choice.rb +82 -0
  685. data/samples/etc/miniframe.rb +92 -0
  686. data/samples/etc/sash.rb +140 -0
  687. data/samples/etc/scrollwin.rb +120 -0
  688. data/samples/etc/system_settings.rb +263 -0
  689. data/samples/etc/tn_choice.png +0 -0
  690. data/samples/etc/tn_miniframe.png +0 -0
  691. data/samples/etc/tn_sash.png +0 -0
  692. data/samples/etc/tn_scrollwin.png +0 -0
  693. data/samples/etc/tn_system_settings.png +0 -0
  694. data/samples/event/activation.rb +129 -0
  695. data/samples/event/event.rb +220 -0
  696. data/samples/event/threaded.rb +141 -0
  697. data/samples/event/tn_activation.png +0 -0
  698. data/samples/event/tn_event.png +0 -0
  699. data/samples/event/tn_threaded.png +0 -0
  700. data/samples/event/tn_update_ui_event.png +0 -0
  701. data/samples/event/update_ui_event.rb +91 -0
  702. data/samples/grid/grid.rb +224 -0
  703. data/samples/grid/gridtablebase.rb +178 -0
  704. data/samples/grid/tn_grid.png +0 -0
  705. data/samples/grid/tn_gridtablebase.png +0 -0
  706. data/samples/html/8859_2.htm +14 -0
  707. data/samples/html/cp1250.htm +19 -0
  708. data/samples/html/foo.png +0 -0
  709. data/samples/html/html.rb +278 -0
  710. data/samples/html/i18n.gif +0 -0
  711. data/samples/html/imagemap.htm +20 -0
  712. data/samples/html/imagemap.png +0 -0
  713. data/samples/html/listtest.htm +28 -0
  714. data/samples/html/pic.png +0 -0
  715. data/samples/html/pic2.bmp +0 -0
  716. data/samples/html/regres.htm +20 -0
  717. data/samples/html/subsup.html +42 -0
  718. data/samples/html/tables.htm +255 -0
  719. data/samples/html/test.htm +375 -0
  720. data/samples/html/tn_html.png +0 -0
  721. data/samples/mdi/mdi.rb +118 -0
  722. data/samples/mdi/tn_mdi.png +0 -0
  723. data/samples/minimal/minimal.rb +95 -0
  724. data/samples/minimal/mondrian.ico +0 -0
  725. data/samples/minimal/mondrian.png +0 -0
  726. data/samples/minimal/nothing.rb +38 -0
  727. data/samples/minimal/tn_minimal.png +0 -0
  728. data/samples/minimal/tn_nothing.png +0 -0
  729. data/samples/printing/mondrian.ico +0 -0
  730. data/samples/printing/mondrian.xpm +44 -0
  731. data/samples/printing/printing.rb +499 -0
  732. data/samples/printing/printing2.rb +251 -0
  733. data/samples/printing/sample-text.txt +213 -0
  734. data/samples/printing/tn_printing.png +0 -0
  735. data/samples/printing/tn_printing2.png +0 -0
  736. data/samples/propgrid/propgrid.rb +2711 -0
  737. data/samples/propgrid/propgrid_minimal.rb +107 -0
  738. data/samples/propgrid/sample_props.rb +434 -0
  739. data/samples/propgrid/tn_propgrid.png +0 -0
  740. data/samples/propgrid/tn_propgrid_minimal.png +0 -0
  741. data/samples/ribbon/align_center.xpm +21 -0
  742. data/samples/ribbon/align_left.xpm +21 -0
  743. data/samples/ribbon/align_right.xpm +21 -0
  744. data/samples/ribbon/aui_style.xpm +53 -0
  745. data/samples/ribbon/auto_crop_selection.xpm +55 -0
  746. data/samples/ribbon/auto_crop_selection_small.xpm +33 -0
  747. data/samples/ribbon/circle.xpm +38 -0
  748. data/samples/ribbon/circle_small.xpm +22 -0
  749. data/samples/ribbon/colours.xpm +25 -0
  750. data/samples/ribbon/cross.xpm +38 -0
  751. data/samples/ribbon/empty.xpm +23 -0
  752. data/samples/ribbon/expand_selection_h.xpm +46 -0
  753. data/samples/ribbon/expand_selection_v.xpm +46 -0
  754. data/samples/ribbon/eye.xpm +26 -0
  755. data/samples/ribbon/hexagon.xpm +38 -0
  756. data/samples/ribbon/msw_style.xpm +65 -0
  757. data/samples/ribbon/position_left.xpm +22 -0
  758. data/samples/ribbon/position_top.xpm +22 -0
  759. data/samples/ribbon/ribbon.rb +900 -0
  760. data/samples/ribbon/ribbon.xpm +54 -0
  761. data/samples/ribbon/selection_panel.xpm +23 -0
  762. data/samples/ribbon/square.xpm +38 -0
  763. data/samples/ribbon/tn_ribbon.png +0 -0
  764. data/samples/ribbon/triangle.xpm +38 -0
  765. data/samples/sample.xpm +475 -0
  766. data/samples/sampler/back.xpm +21 -0
  767. data/samples/sampler/copy.xpm +44 -0
  768. data/samples/sampler/cut.xpm +46 -0
  769. data/samples/sampler/editor.rb +560 -0
  770. data/samples/sampler/ext.rb +51 -0
  771. data/samples/sampler/filesave.xpm +42 -0
  772. data/samples/sampler/find.xpm +62 -0
  773. data/samples/sampler/findrepl.xpm +63 -0
  774. data/samples/sampler/forward.xpm +21 -0
  775. data/samples/sampler/paste.xpm +46 -0
  776. data/samples/sampler/play.xpm +24 -0
  777. data/samples/sampler/redo.xpm +58 -0
  778. data/samples/sampler/sample.rb +347 -0
  779. data/samples/sampler/stc_editor.rb +321 -0
  780. data/samples/sampler/txt_editor.rb +130 -0
  781. data/samples/sampler/undo.xpm +58 -0
  782. data/samples/sampler.rb +394 -0
  783. data/samples/splash/mobile.xpm +1835 -0
  784. data/samples/splash/splash.png +0 -0
  785. data/samples/splash/splash.rb +164 -0
  786. data/samples/splash/tn_splash.png +0 -0
  787. data/samples/text/document-open.png +0 -0
  788. data/samples/text/document-save.png +0 -0
  789. data/samples/text/edit-copy.png +0 -0
  790. data/samples/text/edit-cut.png +0 -0
  791. data/samples/text/edit-paste.png +0 -0
  792. data/samples/text/edit-redo.png +0 -0
  793. data/samples/text/edit-undo.png +0 -0
  794. data/samples/text/format-text-bold.png +0 -0
  795. data/samples/text/format-text-italic.png +0 -0
  796. data/samples/text/format-text-underline.png +0 -0
  797. data/samples/text/mondrian.ico +0 -0
  798. data/samples/text/mondrian.xpm +44 -0
  799. data/samples/text/preferences-desktop-font.png +0 -0
  800. data/samples/text/rich_textctrl.rb +326 -0
  801. data/samples/text/scintilla.rb +179 -0
  802. data/samples/text/textctrl.rb +124 -0
  803. data/samples/text/tn_rich_textctrl.png +0 -0
  804. data/samples/text/tn_scintilla.png +0 -0
  805. data/samples/text/tn_textctrl.png +0 -0
  806. data/samples/text/tn_unicode.png +0 -0
  807. data/samples/text/unicode.rb +238 -0
  808. data/samples/text/utf8.txt +15 -0
  809. data/samples/treectrl/checked.xpm +54 -0
  810. data/samples/treectrl/icon1.xpm +79 -0
  811. data/samples/treectrl/icon2.xpm +53 -0
  812. data/samples/treectrl/icon3.xpm +79 -0
  813. data/samples/treectrl/icon4.xpm +43 -0
  814. data/samples/treectrl/icon5.xpm +79 -0
  815. data/samples/treectrl/state1.xpm +145 -0
  816. data/samples/treectrl/state2.xpm +144 -0
  817. data/samples/treectrl/state3.xpm +142 -0
  818. data/samples/treectrl/state4.xpm +145 -0
  819. data/samples/treectrl/state5.xpm +85 -0
  820. data/samples/treectrl/tn_treectrl.png +0 -0
  821. data/samples/treectrl/treectrl.rb +1720 -0
  822. data/samples/treectrl/unchecked.xpm +30 -0
  823. data/samples/xrc/custom_dialog.xrc +46 -0
  824. data/samples/xrc/custom_xrc_sample.rb +84 -0
  825. data/samples/xrc/samples.xrc +46 -0
  826. data/samples/xrc/tn_xrc_sample.png +0 -0
  827. data/samples/xrc/xrc_sample.rb +86 -0
  828. data/tests/test_basic.rb +20 -0
  829. data/tests/test_clipboard.rb +241 -0
  830. data/tests/test_dialog.rb +28 -0
  831. data/tests/test_event_handling.rb +103 -0
  832. data/tests/test_events.rb +45 -0
  833. data/tests/test_geometry.rb +141 -0
  834. data/tests/test_intl.rb +107 -0
  835. data/tests/test_item_data.rb +120 -0
  836. data/tests/test_variant.rb +151 -0
  837. data/tests/testapp.rb +40 -0
  838. data/tests/testapp_noframe.rb +28 -0
  839. metadata +930 -0
@@ -0,0 +1,86 @@
1
+ class Wx::Size
2
+ # More informative output for inspect etc
3
+ def to_s
4
+ "#<Wx::Size: #{width}x#{height}>"
5
+ end
6
+
7
+ def inspect
8
+ to_s
9
+ end
10
+
11
+ # make Size usable for parallel assignments like `w, h = sz`
12
+ def to_ary
13
+ [width, height]
14
+ end
15
+
16
+ # Compare with another size value
17
+ def ==(other)
18
+ if Wx::Size === other
19
+ width == other.width and height == other.height
20
+ elsif Array === other and other.size == 2
21
+ to_ary == other
22
+ else
23
+ Kernel.raise TypeError, "Cannot compare Size to #{other}"
24
+ end
25
+ end
26
+
27
+ def eql?(other)
28
+ if Wx::Size === other
29
+ width == other.width and height == other.height
30
+ else
31
+ false
32
+ end
33
+ end
34
+
35
+ # Return a new Wx::Size with the width and height values both divided
36
+ # by parameter +num+, which should be a Numeric
37
+ def /(num)
38
+ self.class.new((width / num).to_i, (height / num).to_i)
39
+ end
40
+
41
+ # Return a new Wx::Size with the width and height values both
42
+ # multiplied by parameter +num+, which should be a Numeric
43
+ def *(num)
44
+ self.class.new((width * num).to_i, (height * num).to_i)
45
+ end
46
+
47
+ # Return a new Wx::Size with the width and height parameters both
48
+ # reduced by parameter +arg+. If +arg+ is another Wx::Size (or 2-element array), reduce
49
+ # width by the other's width and height by the other's height; if
50
+ # +arg+ is a numeric value, reduce both width and height by that
51
+ # value.
52
+ def -(arg)
53
+ case arg
54
+ when self.class
55
+ self.class.new(width - arg.width, height - arg.height)
56
+ when Numeric
57
+ self.class.new((width - arg).to_i, (height - arg).to_i)
58
+ else
59
+ if Array === arg && arg.size == 2
60
+ self.class.new(width - arg[0].to_i, height - arg[1].to_i)
61
+ else
62
+ Kernel.raise TypeError, "Cannot add #{arg} to #{self.inspect}"
63
+ end
64
+ end
65
+ end
66
+
67
+ # Return a new Wx::Size with the width and height parameters both
68
+ # increased by parameter +arg+. If +arg+ is another Wx::Size (or 2-element array), increase
69
+ # width by the other's width and height by the other's height; if
70
+ # +arg+ is a numeric value, increase both width and height by that
71
+ # value.
72
+ def +(arg)
73
+ case arg
74
+ when self.class
75
+ self.class.new( width + arg.width, height + arg.height )
76
+ when Numeric
77
+ self.class.new( (width + arg).to_i, (height + arg).to_i )
78
+ else
79
+ if Array === arg && arg.size == 2
80
+ self.class.new(width + arg[0].to_i, height + arg[1].to_i)
81
+ else
82
+ Kernel.raise TypeError, "Cannot add #{arg} to #{self.inspect}"
83
+ end
84
+ end
85
+ end
86
+ end
@@ -0,0 +1,43 @@
1
+ # Class for automatically managing layouts
2
+ class Wx::Sizer
3
+ # Generic method to add items, supporting positional and named
4
+ # arguments
5
+ ADD_ITEM_PARAMS = [ Wx::Parameter[ :index, -1 ],
6
+ Wx::Parameter[ :proportion, 0 ],
7
+ Wx::Parameter[ :flag, 0 ],
8
+ Wx::Parameter[ :border, 0 ],
9
+ Wx::Parameter[ :user_data, nil ] ]
10
+
11
+ def add_item(item, *mixed_args)
12
+
13
+ begin
14
+ args = Wx::args_as_list(ADD_ITEM_PARAMS, *mixed_args)
15
+ rescue => err
16
+ err.set_backtrace(caller)
17
+ Kernel.raise err
18
+ end
19
+
20
+ full_args = []
21
+
22
+ # extract the width and the height in the case of a spacer
23
+ # defined as an array
24
+ if item.kind_of?(Array)
25
+ Kernel.raise ArgumentError,
26
+ "Invalid Sizer specification : [width, height] expected" if item.size != 2
27
+ full_args << item[0] << item[1]
28
+ else
29
+ full_args << item
30
+ end
31
+
32
+ # update the full arguments list with the optional arguments (except index)
33
+ idx = args.shift
34
+ full_args.concat(args)
35
+
36
+ # Call add to append if default position
37
+ if idx == -1
38
+ add(*full_args)
39
+ else
40
+ insert(idx, *full_args)
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,44 @@
1
+
2
+ class Wx::SplashScreen
3
+
4
+ # special handling for keyword ctor extension here
5
+ # as this class deviates from 'normal' window ctors
6
+ Wx::define_keyword_ctors(Wx::SplashScreen) do
7
+ wx_ctor_params :id, :pos, :size, :style => Wx::SIMPLE_BORDER|Wx::FRAME_NO_TASKBAR|Wx::STAY_ON_TOP
8
+ end
9
+
10
+ # now redefine the overridden ctor to account for deviating arglist
11
+ def initialize(bitmap, splashstyle, milliseconds, parent = nil, *mixed_args, &block)
12
+ # no zero-args ctor for use with XRC!
13
+
14
+ begin
15
+ real_args = [ bitmap, splashstyle, milliseconds, parent ] + self.class.args_as_list(*mixed_args)
16
+ pre_wx_kwctor_init(*real_args)
17
+ rescue => err
18
+ msg = "Error initializing #{self.inspect}\n"+
19
+ " : #{err.message} \n" +
20
+ "Provided are #{real_args} \n" +
21
+ "Correct parameters for #{self.class.name}.new are:\n" +
22
+ self.class.describe_constructor(
23
+ ":bitmap => Wx::Bitmap\n:splashstyle => Integer\n:milliseconds => Integer\n:parent => Wx::Window\n")
24
+
25
+ new_err = err.class.new(msg)
26
+ new_err.set_backtrace(caller)
27
+ Kernel.raise new_err
28
+ end
29
+
30
+ # If a block was given, pass the newly created Window instance
31
+ # into it; use block
32
+ if block
33
+ if block.arity == -1 or block.arity == 0
34
+ self.instance_eval(&block)
35
+ elsif block.arity == 1
36
+ block.call(self)
37
+ else
38
+ Kernel.raise ArgumentError,
39
+ "Block to initialize accepts zero or one arg"
40
+ end
41
+ end
42
+ end
43
+
44
+ end
@@ -0,0 +1,8 @@
1
+
2
+ class Wx::TextCtrl
3
+ wx_op_append = instance_method :<<
4
+ define_method :<< do |o|
5
+ wx_op_append.bind(self).call(o)
6
+ self
7
+ end
8
+ end
@@ -0,0 +1,104 @@
1
+ # Class allowing periodic or timed events to be fired
2
+ class Wx::Timer
3
+ # Convenience method to trigger a one-off action after +interval+
4
+ # milliseconds have passed. The action is specified by the passed
5
+ # block. The Timer is owned by the global App object, and is returned
6
+ # by the method.
7
+ def self.after(interval, &block)
8
+ timer = new(Wx::THE_APP, Wx::ID_ANY)
9
+ Wx::THE_APP.evt_timer(timer.get_id, block)
10
+ timer.start(interval, true)
11
+ timer
12
+ end
13
+
14
+ # Convenience method to trigger a repeating action every +interval+
15
+ # milliseconds. The action is specified by the passed block. The Timer
16
+ # is owned by the global App object, and is returned by the method.
17
+ def self.every(interval, &block)
18
+ timer = new(Wx::THE_APP, Wx::ID_ANY)
19
+ Wx::THE_APP.evt_timer(timer.get_id, block)
20
+ timer.start(interval)
21
+ timer
22
+ end
23
+
24
+ # In common with other classes, make the id method refer to the
25
+ # wxWidgets id, not ruby's deprecated name for object_id
26
+ alias :id :get_id
27
+ # In case a more explicit option is preferred.
28
+ alias :wx_id :get_id
29
+
30
+ # This class can be linked to an owner - an instance of a class
31
+ # derived from EvtHandler which will receive Timer events. However,
32
+ # event if a Wx::Timer is attached to a Wx::Window, it is (unlike most
33
+ # classes) NOT automatically deleted when the window is destroyed. If
34
+ # the Timer continues ticking, it will send events to the
35
+ # now-destroyed window, causing segfaults. So the little acrobatics
36
+ # below set up a hook when a Timer's owner is set, and then ensure the
37
+ # timer is stopped when the window is destroyed.
38
+
39
+ # Redefine initialize
40
+ wx_init = self.instance_method(:initialize)
41
+ define_method(:initialize) do | *args |
42
+ setup_owner_destruction_hook(args[0])
43
+ wx_init.bind(self).call(*args)
44
+ end
45
+
46
+ # Redefine set_owner
47
+ wx_set_owner = self.instance_method(:set_owner)
48
+ define_method(:set_owner) do | *args |
49
+ setup_owner_destruction_hook(args[0])
50
+ wx_set_owner.bind(self).call(*args)
51
+ end
52
+
53
+ private
54
+ # This method notes in Ruby the ownership of the timer, from both
55
+ # sides, and sets up an event hook if needed for the window's
56
+ # destruction.
57
+ def setup_owner_destruction_hook(new_owner)
58
+ this_timer = self
59
+
60
+ # Class-wide list of global (unowned) timers
61
+ @@__unowned_timers__ ||= []
62
+
63
+ # remove from list of previous owner
64
+ if defined?(@__owner__) and @__owner__
65
+ @__owner__.instance_eval { @__owned_timers__.delete(this_timer) }
66
+ end
67
+
68
+ # If becoming global unowned timer, add to list of those timers
69
+ if not new_owner
70
+ @__owner__ = nil
71
+ @@__unowned_timers__ << self
72
+ return
73
+ end
74
+
75
+ # Otherwise, if previously unowned, remove from global owned
76
+ @@__unowned_timers__.delete(self)
77
+ @__owner__ = new_owner
78
+
79
+ # Then add to list of new owner, setting destructor hook if required
80
+ new_owner.instance_eval do
81
+ if not defined?(@__owned_timers__)
82
+ @__owned_timers__ = []
83
+ unless self.kind_of?(Wx::App) # Don't set up hook on App
84
+ evt_window_destroy do | evt |
85
+ # If it's the owning window being destroyed...
86
+ if evt.get_event_object == self
87
+ @__owned_timers__.each { | timer | timer.stop }
88
+ end
89
+ end
90
+ end
91
+ end
92
+ @__owned_timers__ << this_timer
93
+ end
94
+ end
95
+ end
96
+
97
+ class Wx::EvtHandler
98
+ # missing from XML docs so we add this here manually
99
+ self.register_event_type EventType[
100
+ 'evt_timer', 1,
101
+ Wx::EVT_TIMER,
102
+ Wx::TimerEvent
103
+ ] if Wx.const_defined?(:EVT_TIMER)
104
+ end
@@ -0,0 +1,37 @@
1
+ # A set of buttons and controls attached to one edge of a Wx::Frame
2
+ class Wx::ToolBar
3
+ # Generic method to add items, supporting positional and named
4
+ # arguments
5
+ ADD_ITEM_PARAMS = [
6
+ Wx::Parameter[ :bitmap2, Wx::NULL_BITMAP ],
7
+ Wx::Parameter[ :position, -1 ],
8
+ Wx::Parameter[ :id, -1 ],
9
+ Wx::Parameter[ :label, "" ],
10
+ Wx::Parameter[ :kind, Wx::ItemKind::ITEM_NORMAL ],
11
+ Wx::Parameter[ :short_help, "" ],
12
+ Wx::Parameter[ :long_help, "" ],
13
+ Wx::Parameter[ :client_data, nil ] ]
14
+
15
+ def add_item(bitmap1, *mixed_args)
16
+
17
+ begin
18
+ args = Wx::args_as_list(ADD_ITEM_PARAMS, *mixed_args)
19
+ rescue => err
20
+ err.set_backtrace(caller)
21
+ Kernel.raise err
22
+ end
23
+
24
+ bitmap2 = args.shift
25
+
26
+ pos = args.shift
27
+ args.insert(2, bitmap1)
28
+ args.insert(3, bitmap2)
29
+
30
+ # Call add_tool to append if default position
31
+ if pos == -1
32
+ add_tool(*args)
33
+ else
34
+ insert_tool(pos, *args)
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,4 @@
1
+ class Wx::ToolBarTool
2
+ alias :id :get_id
3
+ alias :wx_id :get_id
4
+ end
@@ -0,0 +1,46 @@
1
+ # Hierarchical control with items
2
+ class Wx::TreeCtrl
3
+ # Make these ruby enumerables so find, find_all, map etc are available
4
+ include Enumerable
5
+ # Iterate over all items
6
+ alias :each :traverse
7
+
8
+ # Return the children of +parent+ as an array of TreeItemIDs.
9
+ def get_children(parent)
10
+ kids = []
11
+ kid, _ = get_first_child(parent)
12
+ return [] unless kid.ok?
13
+ kids << kid
14
+
15
+ while kid = get_next_sibling(kids.last) and kid.ok?
16
+ kids << kid
17
+ end
18
+ kids
19
+ end
20
+
21
+ # Returns a Wx::Rect corresponding to the edges of an individual tree
22
+ # item, including the button, identified by id. The standard wxWidgets
23
+ # API for getting the pixel location of an item is unrubyish, using an
24
+ # input/output parameter. But since the underlying get_bounding_rect
25
+ # method works, it's easier to fix the API in Ruby than adding more to
26
+ # the already-toxic swig interface TreeCtrl.i file.
27
+ def get_item_rect(tree_item_id)
28
+ rect = Wx::Rect.new
29
+ if get_bounding_rect(tree_item_id, rect, false)
30
+ return rect
31
+ else
32
+ return nil
33
+ end
34
+ end
35
+
36
+ # Returns a Wx::Rect corresponding to the edges of an individual tree
37
+ # item's text label. See above.
38
+ def get_label_rect(tree_item_id)
39
+ rect = Wx::Rect.new
40
+ if get_bounding_rect(tree_item_id, rect, true)
41
+ return rect
42
+ else
43
+ nil
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,8 @@
1
+
2
+ class Wx::Validator
3
+ # Default implementation of clone, may need to be over-ridden if
4
+ # custom subclasses should state variables that need to be copied
5
+ def clone
6
+ self.class.new
7
+ end
8
+ end
@@ -0,0 +1,62 @@
1
+
2
+ require 'date'
3
+
4
+ class Wx::Variant
5
+ include ::Enumerable
6
+
7
+ # add a proper enumerator method
8
+ def each
9
+ if block_given?
10
+ get_count.times { |i| yield self[i] }
11
+ else
12
+ ::Enumerator.new { |y| get_count.times { |i| y << self[i] } }
13
+ end
14
+ end
15
+
16
+ # make assign return self and add it's handy alias
17
+ wx_assign = instance_method :assign
18
+ define_method :assign do |v|
19
+ wx_assign.bind(self).call(v)
20
+ self
21
+ end
22
+ alias :<< :assign
23
+
24
+ # extend to_s to arraylist and list (easier in pure Ruby)
25
+
26
+ wx_to_s = instance_method :to_s
27
+ define_method :to_s do
28
+ unless null?
29
+ case type
30
+ when 'list'
31
+ return "[#{each.collect { |v| v.string? ? %Q{"#{v.to_s}"} : v.to_s }.join(', ')}]"
32
+ when 'arrstring'
33
+ return array_string.to_s
34
+ when 'wxFont'
35
+ return font.to_s
36
+ when 'wxColour'
37
+ return colour.to_s
38
+ when 'wxColourPropertyValue'
39
+ return colour_property_value.to_s
40
+ end
41
+ end
42
+ wx_to_s.bind(self).call
43
+ end
44
+
45
+ # extend with more Ruby-like type checking
46
+
47
+ def string?; !null? && is_type('string'); end
48
+ def bool?; !null? && is_type('bool'); end
49
+ def long?; !null? && is_type('long'); end
50
+ def long_long?; !null? && is_type('longlong'); end
51
+ def u_long_long?; !null? && is_type('ulonglong'); end
52
+ def integer?; !null? && (long? || long_long? || u_long_long?); end
53
+ def date_time?; !null? && is_type('datetime'); end
54
+ def double?; !null? && is_type('double'); end
55
+ def numeric?; !null? && (integer? || double?); end
56
+ def list?; !null? && is_type('list'); end
57
+ def array_string?; !null? && is_type('arrstring'); end
58
+ def font?; !null? && is_type('wxFont'); end
59
+ def colour?; !null? && is_type('wxColour'); end
60
+ def colour_property_value?; !null? && is_type('wxColourPropertyValue'); end
61
+ def object?(klass=Object) !null? && is_type('WXRB_VALUE') && klass === object; end
62
+ end
@@ -0,0 +1,6 @@
1
+ # Just a shortcut version for creating a vertical box sizer
2
+ class Wx::VBoxSizer < Wx::BoxSizer
3
+ def initialize
4
+ super(Wx::VERTICAL)
5
+ end
6
+ end
@@ -0,0 +1,95 @@
1
+ # Copyright 2004-2007 by Kevin Smith
2
+ # released under the MIT-style wxruby2 license
3
+
4
+ # The base class for all things displayed on screen
5
+ class Wx::Window
6
+
7
+ # Add the deprecated/removed GetSize method
8
+ def get_size
9
+ rect.size
10
+ end
11
+ alias :size :get_size
12
+
13
+ # Ruby's Object#id is deprecated and will be removed in 1.9; therefore
14
+ # for classes inheriting from Wx::Window, the id method returns the
15
+ # wxRuby Window id
16
+ alias :id :get_id
17
+ # In case a more explicit option is preferred.
18
+ alias :wx_id :get_id
19
+
20
+ # The name of Wx::Window#raise conflicts with Ruby's core Kernel#raise
21
+ # method. This can cause unexpected errors when undecorated #raise is
22
+ # used inside a Window method. For wxRuby 2.0 it's too late to remove
23
+ # Window#raise completely, but for now, offer alternatives to
24
+ # raise/lower that could replace them in future versions.
25
+ alias :bring_to_front :raise
26
+ alias :send_to_back :lower
27
+
28
+ # Recursively searches all windows below +self+ and returns the first
29
+ # window which has the id +an_id+. This corresponds to the find_window
30
+ # method method in WxWidgets when called with an integer.
31
+ def find_window_by_id(an_id)
32
+ Wx::Window.find_window_by_id(an_id, self)
33
+ end
34
+
35
+ # Searches all windows below +self+ and returns the first window which
36
+ # has the name +a_name+ This corresponds to the find_window method method
37
+ # in WxWidgets when called with an string.
38
+ def find_window_by_name(a_name)
39
+ Wx::Window.find_window_by_name(a_name, self)
40
+ end
41
+
42
+ # Searches all windows below +self+ and returns the first window which
43
+ # has the label +a_label+.
44
+ def find_window_by_label(a_label)
45
+ Wx::Window.find_window_by_label(a_label, self)
46
+ end
47
+
48
+ alias :__old_evt_paint :evt_paint
49
+ # This modified version of evt_paint sets a variable indicating that a
50
+ # paint event is being handled just before running the event
51
+ # handler. This ensures that any call to Window#paint within the
52
+ # handler will supply a Wx::PaintDC (see swig/Window.i).
53
+ def evt_paint(meth = nil, &block)
54
+ paint_proc = acquire_handler(meth, block)
55
+ wrapped_block = proc do | event |
56
+ instance_variable_set("@__painting__", true)
57
+ paint_proc.call(event)
58
+ remove_instance_variable("@__painting__")
59
+ end
60
+ __old_evt_paint(&wrapped_block)
61
+ end
62
+
63
+ # Provides bufferd drawing facility to reduce flicker for complex
64
+ # drawing commands. Works similar to BufferedDC and BufferedPaintDC in
65
+ # the wxWidgets API, by doing drawing on an in-memory Bitmap, then
66
+ # copying the result in bulk to the screen.
67
+ #
68
+ # The method may be passed an existing Wx::Bitmap as the +buffer+,
69
+ # otherwise one will be created.
70
+ #
71
+ # Works like wxAutoBufferedDC in that additional buffering will only
72
+ # be done on platforms that do not already natively support buffering
73
+ # for the standard PaintDC / ClientDC - Windows, in particular.
74
+ def paint_buffered(buffer = nil)
75
+ # OS X and GTK do double-buffering natively
76
+ if self.double_buffered?
77
+ paint { | dc | yield dc }
78
+ else
79
+ # client_size is the window area available for drawing upon
80
+ c_size = client_size
81
+ # Create an in-memory buffer if none supplied
82
+ buffer ||= Wx::Bitmap.new(c_size.width, c_size.height)
83
+ buffer.draw do | mem_dc |
84
+ mem_dc.background = Wx::TRANSPARENT_BRUSH
85
+ mem_dc.clear
86
+ # Yield the bitmap for the user code to draw upon
87
+ yield mem_dc
88
+ paint do | dc |
89
+ # Copy the buffer to the window
90
+ dc.blit(0, 0, c_size.width, c_size.height, mem_dc, 0, 0)
91
+ end
92
+ end
93
+ end
94
+ end
95
+ end
@@ -0,0 +1,12 @@
1
+ # Emulates the wxWidgets WindowUpdateLocker class, by providing a scope within
2
+ # which window can be updated without refreshing
3
+ class Wx::WindowUpdateLocker
4
+ # Only one class method accepting a window that will be
5
+ # frozen while the block is executed
6
+ def self.update(win)
7
+ win.freeze
8
+ yield
9
+ ensure
10
+ win.thaw
11
+ end
12
+ end
@@ -0,0 +1,56 @@
1
+ class Wx::XmlResource
2
+ class << self
3
+ wx_get = self.instance_method(:get)
4
+ define_method(:get) do
5
+ result = wx_get.bind(self).call
6
+ result.init_all_handlers
7
+ result
8
+ end
9
+
10
+ wx_add_subclass_factory = self.instance_method(:add_subclass_factory)
11
+ define_method(:add_subclass_factory) do |factory|
12
+ @factories ||= []
13
+ @factories << factory # keep Ruby factories alive through GC
14
+ wx_add_subclass_factory.bind(self).call(factory)
15
+ end
16
+ end
17
+
18
+ # Again, if created via new, switch subclassing off and init_all_handlers
19
+ wx_init = self.instance_method(:initialize)
20
+ define_method(:initialize) do | *args |
21
+ result = wx_init.bind(self).call(*args)
22
+ result.init_all_handlers
23
+ end
24
+
25
+ # The standard .load method returns a boolean indicating success or
26
+ # failure. Failure might result from bad XML, or a non-existent
27
+ # file. In ruby, in these circumstances, it's more natural to raise an
28
+ # Exception than expect the user to test the return value.
29
+ wx_load = self.instance_method(:load)
30
+ define_method(:load) do | fname |
31
+ result = wx_load.bind(self).call(fname)
32
+ if not result
33
+ Kernel.raise( RuntimeError,
34
+ "Failed to load XRC from '#{fname}'; " +
35
+ "check the file exists and is valid XML")
36
+ end
37
+ fname
38
+ end
39
+
40
+ # Returns a Wx::Wizard object from the element named +name+ in the
41
+ # loaded XRC file. The Wizard will have the parent +parent+.
42
+ #
43
+ # This method is not available in wxWidgets, but is here for
44
+ # completeness and also to document how to use load_object (see
45
+ # below).
46
+ def load_wizard(parent, name)
47
+ wiz = Wx::Wizard.new()
48
+ load_wizard_subclass(wiz, parent, name)
49
+ wiz
50
+ end
51
+
52
+ # Completes the loading of an incomplete instance of Wx::Wizard.
53
+ def load_wizard_subclass(wizard, parent, name)
54
+ load_object(wizard, parent, name, "wxWizard")
55
+ end
56
+ end
data/lib/wx/core.rb ADDED
@@ -0,0 +1,61 @@
1
+ # Wx core package loader for wxRuby3
2
+ # Copyright (c) M.J.N. Corino, The Netherlands
3
+
4
+ require_relative './startup' if File.exist?(File.join(__dir__, 'startup.rb'))
5
+
6
+ require 'wxruby_core'
7
+
8
+ # Load the version information (should be bundled with all released versions)
9
+ begin
10
+ require 'wx/version'
11
+ rescue LoadError
12
+ Wx::WXRUBY_VERSION = '0.0.0'
13
+ end
14
+
15
+ # decompose wxRuby version
16
+ Wx::WXRUBY_RELEASE_TYPE = (/\d+\.\d+\.\d+-?(.+)/ =~ Wx::WXRUBY_VERSION ? $1 : '')
17
+ Wx::WXRUBY_MAJOR,
18
+ Wx::WXRUBY_MINOR,
19
+ Wx::WXRUBY_RELEASE = Wx::WXRUBY_VERSION.split('.').collect { |v| v.to_i }
20
+
21
+ # Convenience string for WxWidgets version info
22
+ Wx::WXWIDGETS_VERSION = '%i.%i.%i' % [ Wx::WXWIDGETS_MAJOR_VERSION,
23
+ Wx::WXWIDGETS_MINOR_VERSION,
24
+ Wx::WXWIDGETS_RELEASE_NUMBER ]
25
+
26
+ # Helper functions
27
+ require 'wx/helpers'
28
+
29
+ # Accessor automagic
30
+ require 'wx/accessors'
31
+
32
+ # Global constant compatibility helper
33
+ require 'wx/global_const'
34
+
35
+ # ctor syntax sweeteners support
36
+ require 'wx/keyword_ctors'
37
+
38
+ # Load in all the class extension methods written in ruby
39
+ # evthandler must be required first b/c it sets up methods modified elsewhere
40
+ require 'wx/core/evthandler.rb'
41
+ class_files = File.join( File.dirname(__FILE__), 'core', '*.rb')
42
+ Dir.glob(class_files) do | class_file |
43
+ require 'wx/core/' + File.basename(class_file)
44
+ end
45
+
46
+ ::Wx.include(WxRubyStyleAccessors)
47
+
48
+ ::Wx.include((defined?(::WX_GLOBAL_CONSTANTS) && ::WX_GLOBAL_CONSTANTS) ? WxGlobalConstants : WxEnumConstants)
49
+
50
+ # Load in syntax sweeteners
51
+ require 'wx/keyword_defs'
52
+
53
+ # If a program is ended by ruby's exit, it can bypass doing the proper
54
+ # Wx clean-up routines called by Wx::App#on_exit. This can under some
55
+ # circumstances cause crashes as the application ends.
56
+ Kernel::at_exit do
57
+ # These are set at App startup and wxRuby shut down respectively - see App.i
58
+ if Wx::const_defined?(:THE_APP) and Wx::THE_APP.is_running
59
+ Wx::THE_APP.wx_ruby_cleanup
60
+ end
61
+ end