wxruby3 0.9.0.pre.beta.2-x64-mingw-ucrt-3.2-3.2.2

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 (837) 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/event.rb +16 -0
  50. data/lib/wx/core/events/evt_list.rb +1378 -0
  51. data/lib/wx/core/evthandler.rb +240 -0
  52. data/lib/wx/core/ext.rb +58 -0
  53. data/lib/wx/core/font/encoding.rb +113 -0
  54. data/lib/wx/core/font.rb +22 -0
  55. data/lib/wx/core/functions.rb +44 -0
  56. data/lib/wx/core/gauge.rb +12 -0
  57. data/lib/wx/core/genericdirctrl.rb +36 -0
  58. data/lib/wx/core/hboxsizer.rb +6 -0
  59. data/lib/wx/core/helpcontroller.rb +5 -0
  60. data/lib/wx/core/helpcontrollerhelpprovider.rb +24 -0
  61. data/lib/wx/core/helpprovider.rb +15 -0
  62. data/lib/wx/core/icon.rb +40 -0
  63. data/lib/wx/core/image.rb +68 -0
  64. data/lib/wx/core/imagelist.rb +3 -0
  65. data/lib/wx/core/listbox.rb +4 -0
  66. data/lib/wx/core/listctrl.rb +33 -0
  67. data/lib/wx/core/locale.rb +73 -0
  68. data/lib/wx/core/log.rb +20 -0
  69. data/lib/wx/core/menu.rb +78 -0
  70. data/lib/wx/core/menu_bar.rb +20 -0
  71. data/lib/wx/core/menuitem.rb +7 -0
  72. data/lib/wx/core/notebook.rb +9 -0
  73. data/lib/wx/core/object.rb +14 -0
  74. data/lib/wx/core/pen_info.rb +11 -0
  75. data/lib/wx/core/platform_info.rb +13 -0
  76. data/lib/wx/core/point.rb +92 -0
  77. data/lib/wx/core/real_point.rb +92 -0
  78. data/lib/wx/core/rect.rb +57 -0
  79. data/lib/wx/core/simplehelpprovider.rb +38 -0
  80. data/lib/wx/core/size.rb +86 -0
  81. data/lib/wx/core/sizer.rb +43 -0
  82. data/lib/wx/core/splash_screen.rb +44 -0
  83. data/lib/wx/core/textctrl.rb +8 -0
  84. data/lib/wx/core/timer.rb +105 -0
  85. data/lib/wx/core/toolbar.rb +37 -0
  86. data/lib/wx/core/toolbartool.rb +4 -0
  87. data/lib/wx/core/treectrl.rb +46 -0
  88. data/lib/wx/core/validator.rb +8 -0
  89. data/lib/wx/core/variant.rb +62 -0
  90. data/lib/wx/core/vboxsizer.rb +6 -0
  91. data/lib/wx/core/window.rb +95 -0
  92. data/lib/wx/core/window_update_locker.rb +12 -0
  93. data/lib/wx/core/xmlresource.rb +56 -0
  94. data/lib/wx/core.rb +61 -0
  95. data/lib/wx/doc/aui/auimanager.rb +12 -0
  96. data/lib/wx/doc/aui/auinotebook.rb +9 -0
  97. data/lib/wx/doc/colour_dialog.rb +15 -0
  98. data/lib/wx/doc/dc.rb +49 -0
  99. data/lib/wx/doc/enum.rb +66 -0
  100. data/lib/wx/doc/evthandler.rb +84 -0
  101. data/lib/wx/doc/extra/00_starting.md +154 -0
  102. data/lib/wx/doc/extra/01_packages.md +179 -0
  103. data/lib/wx/doc/extra/02_lifecycles.md +116 -0
  104. data/lib/wx/doc/extra/03_dialogs.md +57 -0
  105. data/lib/wx/doc/extra/04_enums.md +143 -0
  106. data/lib/wx/doc/extra/05_event-handling.md +166 -0
  107. data/lib/wx/doc/extra/06_geometry.md +56 -0
  108. data/lib/wx/doc/extra/07_colour_and_font.md +52 -0
  109. data/lib/wx/doc/extra/08_extensions.md +144 -0
  110. data/lib/wx/doc/extra/09_exceptions.md +54 -0
  111. data/lib/wx/doc/functions.rb +221 -0
  112. data/lib/wx/doc/gdi_common.rb +181 -0
  113. data/lib/wx/doc/gen/about_dialog_info.rb +315 -0
  114. data/lib/wx/doc/gen/accelerator.rb +172 -0
  115. data/lib/wx/doc/gen/accessible.rb +817 -0
  116. data/lib/wx/doc/gen/animation.rb +253 -0
  117. data/lib/wx/doc/gen/animation_ctrl.rb +129 -0
  118. data/lib/wx/doc/gen/any_button.rb +170 -0
  119. data/lib/wx/doc/gen/app.rb +363 -0
  120. data/lib/wx/doc/gen/art_provider.rb +497 -0
  121. data/lib/wx/doc/gen/aui/aui_dock_art.rb +421 -0
  122. data/lib/wx/doc/gen/aui/aui_floating_frame.rb +39 -0
  123. data/lib/wx/doc/gen/aui/aui_manager.rb +323 -0
  124. data/lib/wx/doc/gen/aui/aui_manager_event.rb +112 -0
  125. data/lib/wx/doc/gen/aui/aui_mdi_child_frame.rb +163 -0
  126. data/lib/wx/doc/gen/aui/aui_mdi_client_window.rb +46 -0
  127. data/lib/wx/doc/gen/aui/aui_mdi_parent_frame.rb +109 -0
  128. data/lib/wx/doc/gen/aui/aui_notebook.rb +329 -0
  129. data/lib/wx/doc/gen/aui/aui_notebook_event.rb +179 -0
  130. data/lib/wx/doc/gen/aui/aui_pane_info.rb +665 -0
  131. data/lib/wx/doc/gen/aui/aui_tab_art.rb +372 -0
  132. data/lib/wx/doc/gen/aui/aui_tab_ctrl.rb +147 -0
  133. data/lib/wx/doc/gen/aui/aui_tool_bar.rb +437 -0
  134. data/lib/wx/doc/gen/aui/aui_tool_bar_art.rb +272 -0
  135. data/lib/wx/doc/gen/aui/aui_tool_bar_event.rb +195 -0
  136. data/lib/wx/doc/gen/aui/aui_tool_bar_item.rb +224 -0
  137. data/lib/wx/doc/gen/aui/event_list.rb +162 -0
  138. data/lib/wx/doc/gen/auto_buffered_paint_dc.rb +47 -0
  139. data/lib/wx/doc/gen/bitmap.rb +638 -0
  140. data/lib/wx/doc/gen/bitmap_button.rb +91 -0
  141. data/lib/wx/doc/gen/book_ctrl_base.rb +240 -0
  142. data/lib/wx/doc/gen/book_ctrl_event.rb +60 -0
  143. data/lib/wx/doc/gen/box_sizer.rb +66 -0
  144. data/lib/wx/doc/gen/brush.rb +219 -0
  145. data/lib/wx/doc/gen/buffered_dc.rb +95 -0
  146. data/lib/wx/doc/gen/buffered_paint_dc.rb +55 -0
  147. data/lib/wx/doc/gen/busy_info.rb +141 -0
  148. data/lib/wx/doc/gen/button.rb +133 -0
  149. data/lib/wx/doc/gen/calculate_layout_event.rb +59 -0
  150. data/lib/wx/doc/gen/calendar_ctrl.rb +236 -0
  151. data/lib/wx/doc/gen/calendar_date_attr.rb +137 -0
  152. data/lib/wx/doc/gen/calendar_event.rb +150 -0
  153. data/lib/wx/doc/gen/caret.rb +99 -0
  154. data/lib/wx/doc/gen/check_box.rb +145 -0
  155. data/lib/wx/doc/gen/check_list_box.rb +96 -0
  156. data/lib/wx/doc/gen/choice.rb +143 -0
  157. data/lib/wx/doc/gen/choicebook.rb +100 -0
  158. data/lib/wx/doc/gen/client_dc.rb +49 -0
  159. data/lib/wx/doc/gen/clipboard.rb +128 -0
  160. data/lib/wx/doc/gen/collapsible_pane.rb +120 -0
  161. data/lib/wx/doc/gen/collapsible_pane_event.rb +45 -0
  162. data/lib/wx/doc/gen/colour.rb +289 -0
  163. data/lib/wx/doc/gen/colour_data.rb +96 -0
  164. data/lib/wx/doc/gen/colour_dialog.rb +84 -0
  165. data/lib/wx/doc/gen/colour_picker_ctrl.rb +89 -0
  166. data/lib/wx/doc/gen/colour_picker_event.rb +74 -0
  167. data/lib/wx/doc/gen/combo_box.rb +228 -0
  168. data/lib/wx/doc/gen/context_help_button.rb +34 -0
  169. data/lib/wx/doc/gen/control.rb +245 -0
  170. data/lib/wx/doc/gen/control_with_items.rb +339 -0
  171. data/lib/wx/doc/gen/core.rb +42 -0
  172. data/lib/wx/doc/gen/cursor.rb +127 -0
  173. data/lib/wx/doc/gen/data_format.rb +94 -0
  174. data/lib/wx/doc/gen/data_object.rb +439 -0
  175. data/lib/wx/doc/gen/date_event.rb +48 -0
  176. data/lib/wx/doc/gen/date_picker_ctrl.rb +127 -0
  177. data/lib/wx/doc/gen/dc.rb +1278 -0
  178. data/lib/wx/doc/gen/defs.rb +2832 -0
  179. data/lib/wx/doc/gen/dialog.rb +426 -0
  180. data/lib/wx/doc/gen/dir_dialog.rb +134 -0
  181. data/lib/wx/doc/gen/dir_filter_list_ctrl.rb +80 -0
  182. data/lib/wx/doc/gen/dir_picker_ctrl.rb +103 -0
  183. data/lib/wx/doc/gen/drag_drop.rb +292 -0
  184. data/lib/wx/doc/gen/drag_image.rb +123 -0
  185. data/lib/wx/doc/gen/editable_list_box.rb +89 -0
  186. data/lib/wx/doc/gen/event.rb +911 -0
  187. data/lib/wx/doc/gen/event_list.rb +1512 -0
  188. data/lib/wx/doc/gen/events.rb +2499 -0
  189. data/lib/wx/doc/gen/evt_handler.rb +224 -0
  190. data/lib/wx/doc/gen/ext_help_controller.rb +100 -0
  191. data/lib/wx/doc/gen/file_dialog.rb +294 -0
  192. data/lib/wx/doc/gen/file_dir_picker_event.rb +98 -0
  193. data/lib/wx/doc/gen/file_picker_ctrl.rb +107 -0
  194. data/lib/wx/doc/gen/find_dialog_event.rb +119 -0
  195. data/lib/wx/doc/gen/find_replace_data.rb +59 -0
  196. data/lib/wx/doc/gen/find_replace_dialog.rb +44 -0
  197. data/lib/wx/doc/gen/flex_grid_sizer.rb +145 -0
  198. data/lib/wx/doc/gen/font.rb +1282 -0
  199. data/lib/wx/doc/gen/font_data.rb +132 -0
  200. data/lib/wx/doc/gen/font_dialog.rb +71 -0
  201. data/lib/wx/doc/gen/font_picker_ctrl.rb +120 -0
  202. data/lib/wx/doc/gen/font_picker_event.rb +64 -0
  203. data/lib/wx/doc/gen/frame.rb +276 -0
  204. data/lib/wx/doc/gen/fs_file.rb +269 -0
  205. data/lib/wx/doc/gen/functions.rb +10 -0
  206. data/lib/wx/doc/gen/gauge.rb +127 -0
  207. data/lib/wx/doc/gen/gb_sizer_item.rb +78 -0
  208. data/lib/wx/doc/gen/gcdc.rb +61 -0
  209. data/lib/wx/doc/gen/gdi_common.rb +1108 -0
  210. data/lib/wx/doc/gen/gdi_object.rb +29 -0
  211. data/lib/wx/doc/gen/generic_dir_ctrl.rb +198 -0
  212. data/lib/wx/doc/gen/graphics_context.rb +764 -0
  213. data/lib/wx/doc/gen/graphics_object.rb +494 -0
  214. data/lib/wx/doc/gen/grid/event_list.rb +173 -0
  215. data/lib/wx/doc/gen/grid/grid_cell_activatable_editor.rb +33 -0
  216. data/lib/wx/doc/gen/grid/grid_cell_attr.rb +279 -0
  217. data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_editor.rb +31 -0
  218. data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_renderer.rb +32 -0
  219. data/lib/wx/doc/gen/grid/grid_cell_bool_editor.rb +44 -0
  220. data/lib/wx/doc/gen/grid/grid_cell_bool_renderer.rb +31 -0
  221. data/lib/wx/doc/gen/grid/grid_cell_choice_editor.rb +48 -0
  222. data/lib/wx/doc/gen/grid/grid_cell_date_editor.rb +33 -0
  223. data/lib/wx/doc/gen/grid/grid_cell_date_renderer.rb +40 -0
  224. data/lib/wx/doc/gen/grid/grid_cell_date_time_renderer.rb +35 -0
  225. data/lib/wx/doc/gen/grid/grid_cell_editor.rb +181 -0
  226. data/lib/wx/doc/gen/grid/grid_cell_enum_editor.rb +34 -0
  227. data/lib/wx/doc/gen/grid/grid_cell_enum_renderer.rb +39 -0
  228. data/lib/wx/doc/gen/grid/grid_cell_float_editor.rb +41 -0
  229. data/lib/wx/doc/gen/grid/grid_cell_float_renderer.rb +74 -0
  230. data/lib/wx/doc/gen/grid/grid_cell_number_editor.rb +41 -0
  231. data/lib/wx/doc/gen/grid/grid_cell_number_renderer.rb +31 -0
  232. data/lib/wx/doc/gen/grid/grid_cell_renderer.rb +98 -0
  233. data/lib/wx/doc/gen/grid/grid_cell_string_renderer.rb +31 -0
  234. data/lib/wx/doc/gen/grid/grid_cell_text_editor.rb +45 -0
  235. data/lib/wx/doc/gen/grid/grid_ctrl.rb +2381 -0
  236. data/lib/wx/doc/gen/grid/grid_editor_created_event.rb +87 -0
  237. data/lib/wx/doc/gen/grid/grid_event.rb +96 -0
  238. data/lib/wx/doc/gen/grid/grid_range_select_event.rb +96 -0
  239. data/lib/wx/doc/gen/grid/grid_size_event.rb +71 -0
  240. data/lib/wx/doc/gen/grid/grid_string_table.rb +130 -0
  241. data/lib/wx/doc/gen/grid/grid_table_base.rb +288 -0
  242. data/lib/wx/doc/gen/grid/grid_table_message.rb +73 -0
  243. data/lib/wx/doc/gen/grid_bag_sizer.rb +298 -0
  244. data/lib/wx/doc/gen/grid_sizer.rb +135 -0
  245. data/lib/wx/doc/gen/help_controller.rb +136 -0
  246. data/lib/wx/doc/gen/help_provider.rb +80 -0
  247. data/lib/wx/doc/gen/html/event_list.rb +46 -0
  248. data/lib/wx/doc/gen/html/html_cell.rb +441 -0
  249. data/lib/wx/doc/gen/html/html_cell_event.rb +62 -0
  250. data/lib/wx/doc/gen/html/html_easy_printing.rb +169 -0
  251. data/lib/wx/doc/gen/html/html_help_controller.rb +256 -0
  252. data/lib/wx/doc/gen/html/html_help_data.rb +144 -0
  253. data/lib/wx/doc/gen/html/html_help_frame.rb +112 -0
  254. data/lib/wx/doc/gen/html/html_help_window.rb +230 -0
  255. data/lib/wx/doc/gen/html/html_link_event.rb +36 -0
  256. data/lib/wx/doc/gen/html/html_list_box.rb +150 -0
  257. data/lib/wx/doc/gen/html/html_printout.rb +87 -0
  258. data/lib/wx/doc/gen/html/html_window.rb +386 -0
  259. data/lib/wx/doc/gen/icon.rb +267 -0
  260. data/lib/wx/doc/gen/icon_location.rb +38 -0
  261. data/lib/wx/doc/gen/image.rb +1144 -0
  262. data/lib/wx/doc/gen/image_list.rb +181 -0
  263. data/lib/wx/doc/gen/keyboard_state.rb +124 -0
  264. data/lib/wx/doc/gen/list_box.rb +260 -0
  265. data/lib/wx/doc/gen/list_ctrl.rb +1542 -0
  266. data/lib/wx/doc/gen/list_event.rb +177 -0
  267. data/lib/wx/doc/gen/listbook.rb +100 -0
  268. data/lib/wx/doc/gen/locale.rb +4143 -0
  269. data/lib/wx/doc/gen/log.rb +505 -0
  270. data/lib/wx/doc/gen/mdi_client_window.rb +38 -0
  271. data/lib/wx/doc/gen/mdi_frame.rb +235 -0
  272. data/lib/wx/doc/gen/media_ctrl.rb +225 -0
  273. data/lib/wx/doc/gen/media_event.rb +109 -0
  274. data/lib/wx/doc/gen/memory_dc.rb +95 -0
  275. data/lib/wx/doc/gen/menu.rb +493 -0
  276. data/lib/wx/doc/gen/menu_bar.rb +247 -0
  277. data/lib/wx/doc/gen/menu_item.rb +333 -0
  278. data/lib/wx/doc/gen/message_dialog.rb +195 -0
  279. data/lib/wx/doc/gen/mini_frame.rb +72 -0
  280. data/lib/wx/doc/gen/mirror_dc.rb +29 -0
  281. data/lib/wx/doc/gen/mouse_state.rb +108 -0
  282. data/lib/wx/doc/gen/multi_choice_dialog.rb +58 -0
  283. data/lib/wx/doc/gen/non_owned_window.rb +46 -0
  284. data/lib/wx/doc/gen/notebook.rb +220 -0
  285. data/lib/wx/doc/gen/number_entry_dialog.rb +75 -0
  286. data/lib/wx/doc/gen/object.rb +69 -0
  287. data/lib/wx/doc/gen/paint_dc.rb +34 -0
  288. data/lib/wx/doc/gen/palette.rb +90 -0
  289. data/lib/wx/doc/gen/panel.rb +96 -0
  290. data/lib/wx/doc/gen/pen.rb +484 -0
  291. data/lib/wx/doc/gen/pg/event_list.rb +102 -0
  292. data/lib/wx/doc/gen/pg/numeric_property_validator.rb +47 -0
  293. data/lib/wx/doc/gen/pg/pg_array_editor_dialog.rb +295 -0
  294. data/lib/wx/doc/gen/pg/pg_cell.rb +166 -0
  295. data/lib/wx/doc/gen/pg/pg_editor.rb +569 -0
  296. data/lib/wx/doc/gen/pg/pg_multi_button.rb +161 -0
  297. data/lib/wx/doc/gen/pg/pg_properties.rb +2193 -0
  298. data/lib/wx/doc/gen/pg/pg_property.rb +1852 -0
  299. data/lib/wx/doc/gen/pg/pg_validation_info.rb +327 -0
  300. data/lib/wx/doc/gen/pg/property_grid.rb +619 -0
  301. data/lib/wx/doc/gen/pg/property_grid_event.rb +135 -0
  302. data/lib/wx/doc/gen/pg/property_grid_interface.rb +847 -0
  303. data/lib/wx/doc/gen/pg/property_grid_manager.rb +349 -0
  304. data/lib/wx/doc/gen/pg/property_grid_page.rb +265 -0
  305. data/lib/wx/doc/gen/pg/property_grid_page_state.rb +155 -0
  306. data/lib/wx/doc/gen/picker_base.rb +143 -0
  307. data/lib/wx/doc/gen/platform_info.rb +379 -0
  308. data/lib/wx/doc/gen/popup_window.rb +93 -0
  309. data/lib/wx/doc/gen/progress_dialog.rb +106 -0
  310. data/lib/wx/doc/gen/property_sheet_dialog.rb +185 -0
  311. data/lib/wx/doc/gen/prt/event_list.rb +13 -0
  312. data/lib/wx/doc/gen/prt/page_setup_dialog.rb +38 -0
  313. data/lib/wx/doc/gen/prt/post_script_dc.rb +32 -0
  314. data/lib/wx/doc/gen/prt/preview_frame.rb +39 -0
  315. data/lib/wx/doc/gen/prt/print_abort_dialog.rb +127 -0
  316. data/lib/wx/doc/gen/prt/print_data.rb +598 -0
  317. data/lib/wx/doc/gen/prt/print_dialog.rb +47 -0
  318. data/lib/wx/doc/gen/prt/printer.rb +428 -0
  319. data/lib/wx/doc/gen/prt/printer_dc.rb +35 -0
  320. data/lib/wx/doc/gen/query_layout_info_event.rb +98 -0
  321. data/lib/wx/doc/gen/radio_box.rb +258 -0
  322. data/lib/wx/doc/gen/radio_button.rb +128 -0
  323. data/lib/wx/doc/gen/rbn/event_list.rb +132 -0
  324. data/lib/wx/doc/gen/rbn/ribbon_art_provider.rb +1652 -0
  325. data/lib/wx/doc/gen/rbn/ribbon_bar.rb +227 -0
  326. data/lib/wx/doc/gen/rbn/ribbon_bar_event.rb +40 -0
  327. data/lib/wx/doc/gen/rbn/ribbon_button_bar.rb +400 -0
  328. data/lib/wx/doc/gen/rbn/ribbon_button_bar_event.rb +58 -0
  329. data/lib/wx/doc/gen/rbn/ribbon_control.rb +116 -0
  330. data/lib/wx/doc/gen/rbn/ribbon_gallery.rb +208 -0
  331. data/lib/wx/doc/gen/rbn/ribbon_gallery_event.rb +51 -0
  332. data/lib/wx/doc/gen/rbn/ribbon_page.rb +129 -0
  333. data/lib/wx/doc/gen/rbn/ribbon_panel.rb +232 -0
  334. data/lib/wx/doc/gen/rbn/ribbon_panel_event.rb +41 -0
  335. data/lib/wx/doc/gen/rbn/ribbon_tool_bar.rb +321 -0
  336. data/lib/wx/doc/gen/rbn/ribbon_tool_bar_event.rb +36 -0
  337. data/lib/wx/doc/gen/region.rb +299 -0
  338. data/lib/wx/doc/gen/rtc/event_list.rb +121 -0
  339. data/lib/wx/doc/gen/rtc/rich_text_buffer.rb +2052 -0
  340. data/lib/wx/doc/gen/rtc/rich_text_ctrl.rb +2031 -0
  341. data/lib/wx/doc/gen/rtc/rich_text_event.rb +146 -0
  342. data/lib/wx/doc/gen/rtc/rich_text_file_handler.rb +171 -0
  343. data/lib/wx/doc/gen/rtc/rich_text_header_footer_data.rb +180 -0
  344. data/lib/wx/doc/gen/rtc/rich_text_html_handler.rb +104 -0
  345. data/lib/wx/doc/gen/rtc/rich_text_printing.rb +241 -0
  346. data/lib/wx/doc/gen/rtc/rich_text_xml_handler.rb +55 -0
  347. data/lib/wx/doc/gen/rtc/symbol_picker_dialog.rb +153 -0
  348. data/lib/wx/doc/gen/sash_event.rb +133 -0
  349. data/lib/wx/doc/gen/sash_layout_window.rb +203 -0
  350. data/lib/wx/doc/gen/sash_window.rb +154 -0
  351. data/lib/wx/doc/gen/screen_dc.rb +27 -0
  352. data/lib/wx/doc/gen/scrolled_canvas.rb +317 -0
  353. data/lib/wx/doc/gen/scrolled_control.rb +317 -0
  354. data/lib/wx/doc/gen/scrolled_window.rb +337 -0
  355. data/lib/wx/doc/gen/simplebook.rb +93 -0
  356. data/lib/wx/doc/gen/single_choice_dialog.rb +74 -0
  357. data/lib/wx/doc/gen/sizer.rb +847 -0
  358. data/lib/wx/doc/gen/sizer_item.rb +227 -0
  359. data/lib/wx/doc/gen/slider.rb +316 -0
  360. data/lib/wx/doc/gen/spin_button.rb +124 -0
  361. data/lib/wx/doc/gen/spin_ctrl.rb +170 -0
  362. data/lib/wx/doc/gen/spin_event.rb +47 -0
  363. data/lib/wx/doc/gen/splash_screen.rb +83 -0
  364. data/lib/wx/doc/gen/splitter_event.rb +87 -0
  365. data/lib/wx/doc/gen/splitter_window.rb +357 -0
  366. data/lib/wx/doc/gen/static_bitmap.rb +126 -0
  367. data/lib/wx/doc/gen/static_box.rb +123 -0
  368. data/lib/wx/doc/gen/static_box_sizer.rb +67 -0
  369. data/lib/wx/doc/gen/static_line.rb +66 -0
  370. data/lib/wx/doc/gen/static_text.rb +98 -0
  371. data/lib/wx/doc/gen/status_bar.rb +203 -0
  372. data/lib/wx/doc/gen/stc/event_list.rb +217 -0
  373. data/lib/wx/doc/gen/stc/styled_text_ctrl.rb +4000 -0
  374. data/lib/wx/doc/gen/stc/styled_text_event.rb +7319 -0
  375. data/lib/wx/doc/gen/std_dialog_button_sizer.rb +74 -0
  376. data/lib/wx/doc/gen/svg_file_dc.rb +153 -0
  377. data/lib/wx/doc/gen/system_options.rb +109 -0
  378. data/lib/wx/doc/gen/system_settings.rb +481 -0
  379. data/lib/wx/doc/gen/task_bar_icon.rb +94 -0
  380. data/lib/wx/doc/gen/task_bar_icon_event.rb +86 -0
  381. data/lib/wx/doc/gen/text_attr.rb +645 -0
  382. data/lib/wx/doc/gen/text_ctrl.rb +841 -0
  383. data/lib/wx/doc/gen/text_entry.rb +389 -0
  384. data/lib/wx/doc/gen/text_entry_dialog.rb +170 -0
  385. data/lib/wx/doc/gen/text_validator.rb +212 -0
  386. data/lib/wx/doc/gen/time_picker_ctrl.rb +103 -0
  387. data/lib/wx/doc/gen/timer.rb +103 -0
  388. data/lib/wx/doc/gen/timer_event.rb +73 -0
  389. data/lib/wx/doc/gen/tip_provider.rb +60 -0
  390. data/lib/wx/doc/gen/toggle_button.rb +84 -0
  391. data/lib/wx/doc/gen/tool_bar.rb +744 -0
  392. data/lib/wx/doc/gen/tool_tip.rb +73 -0
  393. data/lib/wx/doc/gen/toolbook.rb +103 -0
  394. data/lib/wx/doc/gen/top_level_window.rb +462 -0
  395. data/lib/wx/doc/gen/tree_ctrl.rb +863 -0
  396. data/lib/wx/doc/gen/tree_event.rb +101 -0
  397. data/lib/wx/doc/gen/treebook.rb +154 -0
  398. data/lib/wx/doc/gen/utils.rb +257 -0
  399. data/lib/wx/doc/gen/v_list_box.rb +224 -0
  400. data/lib/wx/doc/gen/v_scrolled_window.rb +224 -0
  401. data/lib/wx/doc/gen/validator.rb +73 -0
  402. data/lib/wx/doc/gen/variant.rb +340 -0
  403. data/lib/wx/doc/gen/window.rb +2414 -0
  404. data/lib/wx/doc/gen/window_dc.rb +35 -0
  405. data/lib/wx/doc/gen/window_disabler.rb +24 -0
  406. data/lib/wx/doc/gen/with_images.rb +73 -0
  407. data/lib/wx/doc/gen/wizard.rb +197 -0
  408. data/lib/wx/doc/gen/wizard_event.rb +105 -0
  409. data/lib/wx/doc/gen/wizard_page.rb +61 -0
  410. data/lib/wx/doc/gen/wizard_page_simple.rb +72 -0
  411. data/lib/wx/doc/gen/xml_node.rb +282 -0
  412. data/lib/wx/doc/gen/xml_resource.rb +304 -0
  413. data/lib/wx/doc/grid/grid.rb +20 -0
  414. data/lib/wx/doc/help_controller.rb +14 -0
  415. data/lib/wx/doc/html/html_help_controller.rb +8 -0
  416. data/lib/wx/doc/pg/events.rb +15 -0
  417. data/lib/wx/doc/pg/pg_property.rb +8 -0
  418. data/lib/wx/doc/pg/pgeditor.rb +21 -0
  419. data/lib/wx/doc/pg/property_grid.rb +48 -0
  420. data/lib/wx/doc/pg/property_grid_interface.rb +64 -0
  421. data/lib/wx/doc/prt/page_setup_dialog.rb +15 -0
  422. data/lib/wx/doc/prt/print_data.rb +9 -0
  423. data/lib/wx/doc/prt/print_dialog.rb +26 -0
  424. data/lib/wx/doc/prt/printer.rb +15 -0
  425. data/lib/wx/doc/rbn/ribbon_bar.rb +9 -0
  426. data/lib/wx/doc/rbn/ribbon_button_bar.rb +9 -0
  427. data/lib/wx/doc/rbn/ribbon_gallery.rb +9 -0
  428. data/lib/wx/doc/rbn/ribbon_tool_bar.rb +9 -0
  429. data/lib/wx/doc/rtc/richtext_printing.rb +14 -0
  430. data/lib/wx/doc/screen_dc.rb +10 -0
  431. data/lib/wx/doc/stock_objects.rb +98 -0
  432. data/lib/wx/doc/stream.rb +38 -0
  433. data/lib/wx/doc/system_settings.rb +29 -0
  434. data/lib/wx/doc/treebook.rb +9 -0
  435. data/lib/wx/doc/variant.rb +163 -0
  436. data/lib/wx/doc/xml_resource.rb +19 -0
  437. data/lib/wx/global_const.rb +84 -0
  438. data/lib/wx/grid/events/evt_list.rb +156 -0
  439. data/lib/wx/grid/grid.rb +7 -0
  440. data/lib/wx/grid/keyword_defs.rb +10 -0
  441. data/lib/wx/grid/require.rb +9 -0
  442. data/lib/wx/grid.rb +14 -0
  443. data/lib/wx/helpers.rb +65 -0
  444. data/lib/wx/html/events/evt_list.rb +37 -0
  445. data/lib/wx/html/htmlhelpcontroller.rb +6 -0
  446. data/lib/wx/html/htmlwindow.rb +19 -0
  447. data/lib/wx/html/keyword_defs.rb +22 -0
  448. data/lib/wx/html/require.rb +10 -0
  449. data/lib/wx/html.rb +15 -0
  450. data/lib/wx/keyword_ctors.rb +226 -0
  451. data/lib/wx/keyword_defs.rb +487 -0
  452. data/lib/wx/pg/events/evt_list.rb +73 -0
  453. data/lib/wx/pg/events.rb +14 -0
  454. data/lib/wx/pg/keyword_defs.rb +15 -0
  455. data/lib/wx/pg/pg_editor.rb +13 -0
  456. data/lib/wx/pg/pg_properties.rb +24 -0
  457. data/lib/wx/pg/pg_property.rb +26 -0
  458. data/lib/wx/pg/property_grid.rb +56 -0
  459. data/lib/wx/pg/property_grid_interface.rb +33 -0
  460. data/lib/wx/pg/require.rb +12 -0
  461. data/lib/wx/pg.rb +14 -0
  462. data/lib/wx/prt/keyword_defs.rb +8 -0
  463. data/lib/wx/prt/page_setup_dialog.rb +15 -0
  464. data/lib/wx/prt/previewframe.rb +13 -0
  465. data/lib/wx/prt/require.rb +8 -0
  466. data/lib/wx/prt.rb +14 -0
  467. data/lib/wx/rbn/events/evt_list.rb +102 -0
  468. data/lib/wx/rbn/events.rb +4 -0
  469. data/lib/wx/rbn/keyword_defs.rb +43 -0
  470. data/lib/wx/rbn/require.rb +12 -0
  471. data/lib/wx/rbn/ribbon_art_provider.rb +10 -0
  472. data/lib/wx/rbn/ribbon_bar.rb +12 -0
  473. data/lib/wx/rbn/ribbon_button_bar.rb +26 -0
  474. data/lib/wx/rbn/ribbon_control.rb +25 -0
  475. data/lib/wx/rbn/ribbon_gallery.rb +26 -0
  476. data/lib/wx/rbn/ribbon_page.rb +15 -0
  477. data/lib/wx/rbn/ribbon_panel.rb +15 -0
  478. data/lib/wx/rbn/ribbon_tool_bar.rb +26 -0
  479. data/lib/wx/rbn.rb +14 -0
  480. data/lib/wx/rtc/events/evt_list.rb +98 -0
  481. data/lib/wx/rtc/ext/rich_text_ctrl.rb +24 -0
  482. data/lib/wx/rtc/ext.rb +15 -0
  483. data/lib/wx/rtc/keyword_defs.rb +17 -0
  484. data/lib/wx/rtc/require.rb +8 -0
  485. data/lib/wx/rtc.rb +15 -0
  486. data/lib/wx/stc/events/evt_list.rb +178 -0
  487. data/lib/wx/stc/keyword_defs.rb +8 -0
  488. data/lib/wx/stc/require.rb +7 -0
  489. data/lib/wx/stc.rb +14 -0
  490. data/lib/wx/version.rb +3 -0
  491. data/lib/wx/wxruby/base.rb +87 -0
  492. data/lib/wx/wxruby/cmd/sampler.rb +68 -0
  493. data/lib/wx/wxruby/cmd/test.rb +27 -0
  494. data/lib/wx.rb +14 -0
  495. data/lib/wxruby_aui.so +0 -0
  496. data/lib/wxruby_core.so +0 -0
  497. data/lib/wxruby_grid.so +0 -0
  498. data/lib/wxruby_html.so +0 -0
  499. data/lib/wxruby_pg.so +0 -0
  500. data/lib/wxruby_prt.so +0 -0
  501. data/lib/wxruby_rbn.so +0 -0
  502. data/lib/wxruby_rtc.so +0 -0
  503. data/lib/wxruby_stc.so +0 -0
  504. data/rakelib/install.rb +220 -0
  505. data/rakelib/lib/config/cygwin.rb +6 -0
  506. data/rakelib/lib/config/linux.rb +78 -0
  507. data/rakelib/lib/config/macosx.rb +6 -0
  508. data/rakelib/lib/config/mingw.rb +133 -0
  509. data/rakelib/lib/config/netbsd.rb +6 -0
  510. data/rakelib/lib/config/unixish.rb +187 -0
  511. data/rakelib/lib/config.rb +673 -0
  512. data/rakelib/lib/ext/enum_chain.rb +22 -0
  513. data/rakelib/prepost.rake +91 -0
  514. data/rakelib/prepost.rb +26 -0
  515. data/rakelib/yard/templates/default/fulldoc/html/css/wxruby3.css +7 -0
  516. data/rakelib/yard/templates/default/layout/html/setup.rb +5 -0
  517. data/rakelib/yard/yard/relative_markdown_links/version.rb +8 -0
  518. data/rakelib/yard/yard/relative_markdown_links.rb +39 -0
  519. data/rakelib/yard/yard-custom-templates.rb +2 -0
  520. data/rakelib/yard/yard-relative_markdown_links.rb +4 -0
  521. data/samples/art/wxruby-128x128.png +0 -0
  522. data/samples/art/wxruby-256x256.png +0 -0
  523. data/samples/art/wxruby-64x64.png +0 -0
  524. data/samples/art/wxruby.ico +0 -0
  525. data/samples/art/wxruby.png +0 -0
  526. data/samples/aui/aui.rb +1321 -0
  527. data/samples/aui/tn_aui.png +0 -0
  528. data/samples/bigdemo/About.rbw +39 -0
  529. data/samples/bigdemo/ColorPanel.rbw +23 -0
  530. data/samples/bigdemo/GridSimple.rbw +78 -0
  531. data/samples/bigdemo/MDIDemo.rbw +57 -0
  532. data/samples/bigdemo/PopupMenu.rbw +146 -0
  533. data/samples/bigdemo/ShapedWindow.rbw +128 -0
  534. data/samples/bigdemo/Sizers.rbw +541 -0
  535. data/samples/bigdemo/bigdemo.rb +810 -0
  536. data/samples/bigdemo/demoTemplate.rbw +33 -0
  537. data/samples/bigdemo/helpfile.htb +0 -0
  538. data/samples/bigdemo/icons/Test 015.jpg +0 -0
  539. data/samples/bigdemo/icons/Test 015.png +0 -0
  540. data/samples/bigdemo/icons/choice.bmp +0 -0
  541. data/samples/bigdemo/icons/choice.xpm +27 -0
  542. data/samples/bigdemo/icons/combo.bmp +0 -0
  543. data/samples/bigdemo/icons/combo.xpm +27 -0
  544. data/samples/bigdemo/icons/copy.xpm +25 -0
  545. data/samples/bigdemo/icons/cut.xpm +24 -0
  546. data/samples/bigdemo/icons/gauge.bmp +0 -0
  547. data/samples/bigdemo/icons/gauge.xpm +27 -0
  548. data/samples/bigdemo/icons/help.xpm +25 -0
  549. data/samples/bigdemo/icons/list.bmp +0 -0
  550. data/samples/bigdemo/icons/list.xpm +27 -0
  551. data/samples/bigdemo/icons/mondrian.ico +0 -0
  552. data/samples/bigdemo/icons/mondrian.xpm +44 -0
  553. data/samples/bigdemo/icons/new.xpm +24 -0
  554. data/samples/bigdemo/icons/ogl.ico +0 -0
  555. data/samples/bigdemo/icons/ogl.xpm +45 -0
  556. data/samples/bigdemo/icons/open.xpm +26 -0
  557. data/samples/bigdemo/icons/paste.bmp +0 -0
  558. data/samples/bigdemo/icons/paste.xpm +38 -0
  559. data/samples/bigdemo/icons/pointy.png +0 -0
  560. data/samples/bigdemo/icons/preview.xpm +26 -0
  561. data/samples/bigdemo/icons/print.xpm +26 -0
  562. data/samples/bigdemo/icons/radio.bmp +0 -0
  563. data/samples/bigdemo/icons/radio.xpm +27 -0
  564. data/samples/bigdemo/icons/robert.xpm +415 -0
  565. data/samples/bigdemo/icons/sashtest.ico +0 -0
  566. data/samples/bigdemo/icons/save.xpm +25 -0
  567. data/samples/bigdemo/icons/smiles.bmp +0 -0
  568. data/samples/bigdemo/icons/smiles.xpm +39 -0
  569. data/samples/bigdemo/icons/smiley.ico +0 -0
  570. data/samples/bigdemo/icons/smiley.xpm +42 -0
  571. data/samples/bigdemo/icons/stattext.xpm +24 -0
  572. data/samples/bigdemo/icons/test2.bmp +0 -0
  573. data/samples/bigdemo/icons/test2.png +0 -0
  574. data/samples/bigdemo/icons/test2.xpm +79 -0
  575. data/samples/bigdemo/icons/text.bmp +0 -0
  576. data/samples/bigdemo/icons/text.xpm +27 -0
  577. data/samples/bigdemo/icons/tog1.bmp +0 -0
  578. data/samples/bigdemo/icons/tog1.xpm +38 -0
  579. data/samples/bigdemo/icons/tog2.bmp +0 -0
  580. data/samples/bigdemo/icons/tog2.xpm +38 -0
  581. data/samples/bigdemo/icons/wxruby-128x128.png +0 -0
  582. data/samples/bigdemo/icons/wxwin.ico +0 -0
  583. data/samples/bigdemo/icons/wxwin16x16.png +0 -0
  584. data/samples/bigdemo/icons/wxwin16x16.xpm +25 -0
  585. data/samples/bigdemo/icons/wxwin32x32.png +0 -0
  586. data/samples/bigdemo/icons/wxwin48x48.png +0 -0
  587. data/samples/bigdemo/run.rb +91 -0
  588. data/samples/bigdemo/tips.txt +7 -0
  589. data/samples/bigdemo/utils.rb +12 -0
  590. data/samples/bigdemo/wxArtProvider.rbw +281 -0
  591. data/samples/bigdemo/wxBitmapButton.rbw +65 -0
  592. data/samples/bigdemo/wxButton.rbw +64 -0
  593. data/samples/bigdemo/wxCalendarCtrl.rbw +59 -0
  594. data/samples/bigdemo/wxCheckBox.rbw +50 -0
  595. data/samples/bigdemo/wxCheckListBox.rbw +65 -0
  596. data/samples/bigdemo/wxChoice.rbw +47 -0
  597. data/samples/bigdemo/wxChoicebook.rbw +78 -0
  598. data/samples/bigdemo/wxColourDialog.rbw +33 -0
  599. data/samples/bigdemo/wxComboBox.rbw +77 -0
  600. data/samples/bigdemo/wxCursor.rbw +136 -0
  601. data/samples/bigdemo/wxDialog.rbw +74 -0
  602. data/samples/bigdemo/wxDirDialog.rbw +29 -0
  603. data/samples/bigdemo/wxDragImage.rbw +70 -0
  604. data/samples/bigdemo/wxFileDialog.rbw +37 -0
  605. data/samples/bigdemo/wxFileDialog_Save.rbw +35 -0
  606. data/samples/bigdemo/wxFindReplaceDialog.rbw +82 -0
  607. data/samples/bigdemo/wxFontDialog.rbw +200 -0
  608. data/samples/bigdemo/wxFrame.rbw +53 -0
  609. data/samples/bigdemo/wxGauge.rbw +65 -0
  610. data/samples/bigdemo/wxGenericDirCtrl.rbw +74 -0
  611. data/samples/bigdemo/wxGrid.rbw +66 -0
  612. data/samples/bigdemo/wxHtmlHelpController.rbw +52 -0
  613. data/samples/bigdemo/wxListBox.rbw +140 -0
  614. data/samples/bigdemo/wxListCtrl_virtual.rbw +112 -0
  615. data/samples/bigdemo/wxMDIWindows.rbw +50 -0
  616. data/samples/bigdemo/wxMenu.rbw +247 -0
  617. data/samples/bigdemo/wxMessageDialog.rbw +27 -0
  618. data/samples/bigdemo/wxMiniFrame.rbw +70 -0
  619. data/samples/bigdemo/wxMultipleChoiceDialog.rbw +29 -0
  620. data/samples/bigdemo/wxNotebook.rbw +136 -0
  621. data/samples/bigdemo/wxProgressDialog.rbw +43 -0
  622. data/samples/bigdemo/wxRadioBox.rbw +72 -0
  623. data/samples/bigdemo/wxRadioButton.rbw +125 -0
  624. data/samples/bigdemo/wxSashWindow.rbw +141 -0
  625. data/samples/bigdemo/wxScrolledMessageDialog.rbw +57 -0
  626. data/samples/bigdemo/wxScrolledWindow.rbw +199 -0
  627. data/samples/bigdemo/wxSingleChoiceDialog.rbw +33 -0
  628. data/samples/bigdemo/wxSlider.rbw +42 -0
  629. data/samples/bigdemo/wxSpinButton.rbw +50 -0
  630. data/samples/bigdemo/wxSpinCtrl.rbw +51 -0
  631. data/samples/bigdemo/wxSplitterWindow.rbw +63 -0
  632. data/samples/bigdemo/wxStaticBitmap.rbw +47 -0
  633. data/samples/bigdemo/wxStaticText.rbw +55 -0
  634. data/samples/bigdemo/wxStatusBar.rbw +126 -0
  635. data/samples/bigdemo/wxTextCtrl.rbw +149 -0
  636. data/samples/bigdemo/wxTextEntryDialog.rbw +31 -0
  637. data/samples/bigdemo/wxToggleButton.rbw +49 -0
  638. data/samples/bigdemo/wxToolBar.rbw +131 -0
  639. data/samples/bigdemo/wxTreeCtrl.rbw +191 -0
  640. data/samples/calendar/calendar.rb +363 -0
  641. data/samples/calendar/tn_calendar.png +0 -0
  642. data/samples/caret/caret.rb +293 -0
  643. data/samples/caret/mondrian.xpm +44 -0
  644. data/samples/caret/tn_caret.png +0 -0
  645. data/samples/controls/books.rb +183 -0
  646. data/samples/controls/controls.rb +1143 -0
  647. data/samples/controls/get_item_sample.rb +117 -0
  648. data/samples/controls/icons/choice.xpm +27 -0
  649. data/samples/controls/icons/combo.xpm +27 -0
  650. data/samples/controls/icons/gauge.xpm +27 -0
  651. data/samples/controls/icons/list.xpm +27 -0
  652. data/samples/controls/icons/radio.xpm +27 -0
  653. data/samples/controls/icons/stattext.xpm +24 -0
  654. data/samples/controls/icons/text.xpm +27 -0
  655. data/samples/controls/mondrian.ico +0 -0
  656. data/samples/controls/mondrian.xpm +44 -0
  657. data/samples/controls/test2.bmp +0 -0
  658. data/samples/controls/tn_books.png +0 -0
  659. data/samples/controls/tn_controls.png +0 -0
  660. data/samples/controls/tn_get_item_sample.png +0 -0
  661. data/samples/dialogs/dialogs.rb +879 -0
  662. data/samples/dialogs/tips.txt +18 -0
  663. data/samples/dialogs/tn_dialogs.png +0 -0
  664. data/samples/dialogs/tn_wizard.png +0 -0
  665. data/samples/dialogs/wizard.rb +89 -0
  666. data/samples/dragdrop/dragdrop.rb +200 -0
  667. data/samples/dragdrop/tn_dragdrop.png +0 -0
  668. data/samples/drawing/SVGlogo24.xpm +310 -0
  669. data/samples/drawing/bitmap.rb +76 -0
  670. data/samples/drawing/bitmap_image.rb +131 -0
  671. data/samples/drawing/graphics_drawing.rb +257 -0
  672. data/samples/drawing/maths_images.rb +327 -0
  673. data/samples/drawing/rmagic_bitmap_image.rb +139 -0
  674. data/samples/drawing/ruby-logo.jpg +0 -0
  675. data/samples/drawing/svgtest.rb +373 -0
  676. data/samples/drawing/tn_bitmap.png +0 -0
  677. data/samples/drawing/tn_bitmap_image.png +0 -0
  678. data/samples/drawing/tn_graphics_drawing.png +0 -0
  679. data/samples/drawing/tn_maths_images.png +0 -0
  680. data/samples/drawing/tn_rmagic_bitmap_image.png +0 -0
  681. data/samples/drawing/tn_svgtest.png +0 -0
  682. data/samples/etc/choice.rb +82 -0
  683. data/samples/etc/miniframe.rb +92 -0
  684. data/samples/etc/sash.rb +140 -0
  685. data/samples/etc/scrollwin.rb +120 -0
  686. data/samples/etc/system_settings.rb +263 -0
  687. data/samples/etc/tn_choice.png +0 -0
  688. data/samples/etc/tn_miniframe.png +0 -0
  689. data/samples/etc/tn_sash.png +0 -0
  690. data/samples/etc/tn_scrollwin.png +0 -0
  691. data/samples/etc/tn_system_settings.png +0 -0
  692. data/samples/event/activation.rb +129 -0
  693. data/samples/event/event.rb +220 -0
  694. data/samples/event/threaded.rb +141 -0
  695. data/samples/event/tn_activation.png +0 -0
  696. data/samples/event/tn_event.png +0 -0
  697. data/samples/event/tn_threaded.png +0 -0
  698. data/samples/event/tn_update_ui_event.png +0 -0
  699. data/samples/event/update_ui_event.rb +91 -0
  700. data/samples/grid/grid.rb +224 -0
  701. data/samples/grid/gridtablebase.rb +178 -0
  702. data/samples/grid/tn_grid.png +0 -0
  703. data/samples/grid/tn_gridtablebase.png +0 -0
  704. data/samples/html/8859_2.htm +14 -0
  705. data/samples/html/cp1250.htm +19 -0
  706. data/samples/html/foo.png +0 -0
  707. data/samples/html/html.rb +278 -0
  708. data/samples/html/i18n.gif +0 -0
  709. data/samples/html/imagemap.htm +20 -0
  710. data/samples/html/imagemap.png +0 -0
  711. data/samples/html/listtest.htm +28 -0
  712. data/samples/html/pic.png +0 -0
  713. data/samples/html/pic2.bmp +0 -0
  714. data/samples/html/regres.htm +20 -0
  715. data/samples/html/subsup.html +42 -0
  716. data/samples/html/tables.htm +255 -0
  717. data/samples/html/test.htm +375 -0
  718. data/samples/html/tn_html.png +0 -0
  719. data/samples/mdi/mdi.rb +118 -0
  720. data/samples/mdi/tn_mdi.png +0 -0
  721. data/samples/minimal/minimal.rb +95 -0
  722. data/samples/minimal/mondrian.ico +0 -0
  723. data/samples/minimal/mondrian.png +0 -0
  724. data/samples/minimal/nothing.rb +38 -0
  725. data/samples/minimal/tn_minimal.png +0 -0
  726. data/samples/minimal/tn_nothing.png +0 -0
  727. data/samples/printing/mondrian.ico +0 -0
  728. data/samples/printing/mondrian.xpm +44 -0
  729. data/samples/printing/printing.rb +499 -0
  730. data/samples/printing/printing2.rb +251 -0
  731. data/samples/printing/sample-text.txt +213 -0
  732. data/samples/printing/tn_printing.png +0 -0
  733. data/samples/printing/tn_printing2.png +0 -0
  734. data/samples/propgrid/propgrid.rb +2707 -0
  735. data/samples/propgrid/propgrid_minimal.rb +106 -0
  736. data/samples/propgrid/sample_props.rb +434 -0
  737. data/samples/propgrid/tn_propgrid.png +0 -0
  738. data/samples/propgrid/tn_propgrid_minimal.png +0 -0
  739. data/samples/ribbon/align_center.xpm +21 -0
  740. data/samples/ribbon/align_left.xpm +21 -0
  741. data/samples/ribbon/align_right.xpm +21 -0
  742. data/samples/ribbon/aui_style.xpm +53 -0
  743. data/samples/ribbon/auto_crop_selection.xpm +55 -0
  744. data/samples/ribbon/auto_crop_selection_small.xpm +33 -0
  745. data/samples/ribbon/circle.xpm +38 -0
  746. data/samples/ribbon/circle_small.xpm +22 -0
  747. data/samples/ribbon/colours.xpm +25 -0
  748. data/samples/ribbon/cross.xpm +38 -0
  749. data/samples/ribbon/empty.xpm +23 -0
  750. data/samples/ribbon/expand_selection_h.xpm +46 -0
  751. data/samples/ribbon/expand_selection_v.xpm +46 -0
  752. data/samples/ribbon/eye.xpm +26 -0
  753. data/samples/ribbon/hexagon.xpm +38 -0
  754. data/samples/ribbon/msw_style.xpm +65 -0
  755. data/samples/ribbon/position_left.xpm +22 -0
  756. data/samples/ribbon/position_top.xpm +22 -0
  757. data/samples/ribbon/ribbon.rb +900 -0
  758. data/samples/ribbon/ribbon.xpm +54 -0
  759. data/samples/ribbon/selection_panel.xpm +23 -0
  760. data/samples/ribbon/square.xpm +38 -0
  761. data/samples/ribbon/tn_ribbon.png +0 -0
  762. data/samples/ribbon/triangle.xpm +38 -0
  763. data/samples/sample.xpm +475 -0
  764. data/samples/sampler/back.xpm +21 -0
  765. data/samples/sampler/copy.xpm +44 -0
  766. data/samples/sampler/cut.xpm +46 -0
  767. data/samples/sampler/editor.rb +534 -0
  768. data/samples/sampler/ext.rb +51 -0
  769. data/samples/sampler/filesave.xpm +42 -0
  770. data/samples/sampler/find.xpm +62 -0
  771. data/samples/sampler/findrepl.xpm +63 -0
  772. data/samples/sampler/forward.xpm +21 -0
  773. data/samples/sampler/paste.xpm +46 -0
  774. data/samples/sampler/play.xpm +24 -0
  775. data/samples/sampler/redo.xpm +58 -0
  776. data/samples/sampler/sample.rb +337 -0
  777. data/samples/sampler/stc_editor.rb +326 -0
  778. data/samples/sampler/txt_editor.rb +135 -0
  779. data/samples/sampler/undo.xpm +58 -0
  780. data/samples/sampler.rb +401 -0
  781. data/samples/splash/mobile.xpm +1835 -0
  782. data/samples/splash/splash.png +0 -0
  783. data/samples/splash/splash.rb +164 -0
  784. data/samples/splash/tn_splash.png +0 -0
  785. data/samples/text/document-open.png +0 -0
  786. data/samples/text/document-save.png +0 -0
  787. data/samples/text/edit-copy.png +0 -0
  788. data/samples/text/edit-cut.png +0 -0
  789. data/samples/text/edit-paste.png +0 -0
  790. data/samples/text/edit-redo.png +0 -0
  791. data/samples/text/edit-undo.png +0 -0
  792. data/samples/text/format-text-bold.png +0 -0
  793. data/samples/text/format-text-italic.png +0 -0
  794. data/samples/text/format-text-underline.png +0 -0
  795. data/samples/text/mondrian.ico +0 -0
  796. data/samples/text/mondrian.xpm +44 -0
  797. data/samples/text/preferences-desktop-font.png +0 -0
  798. data/samples/text/rich_textctrl.rb +326 -0
  799. data/samples/text/scintilla.rb +179 -0
  800. data/samples/text/textctrl.rb +124 -0
  801. data/samples/text/tn_rich_textctrl.png +0 -0
  802. data/samples/text/tn_scintilla.png +0 -0
  803. data/samples/text/tn_textctrl.png +0 -0
  804. data/samples/text/tn_unicode.png +0 -0
  805. data/samples/text/unicode.rb +238 -0
  806. data/samples/text/utf8.txt +15 -0
  807. data/samples/treectrl/checked.xpm +54 -0
  808. data/samples/treectrl/icon1.xpm +79 -0
  809. data/samples/treectrl/icon2.xpm +53 -0
  810. data/samples/treectrl/icon3.xpm +79 -0
  811. data/samples/treectrl/icon4.xpm +43 -0
  812. data/samples/treectrl/icon5.xpm +79 -0
  813. data/samples/treectrl/state1.xpm +145 -0
  814. data/samples/treectrl/state2.xpm +144 -0
  815. data/samples/treectrl/state3.xpm +142 -0
  816. data/samples/treectrl/state4.xpm +145 -0
  817. data/samples/treectrl/state5.xpm +85 -0
  818. data/samples/treectrl/tn_treectrl.png +0 -0
  819. data/samples/treectrl/treectrl.rb +1720 -0
  820. data/samples/treectrl/unchecked.xpm +30 -0
  821. data/samples/xrc/custom_dialog.xrc +46 -0
  822. data/samples/xrc/custom_xrc_sample.rb +84 -0
  823. data/samples/xrc/samples.xrc +46 -0
  824. data/samples/xrc/tn_xrc_sample.png +0 -0
  825. data/samples/xrc/xrc_sample.rb +86 -0
  826. data/tests/test_basic.rb +20 -0
  827. data/tests/test_clipboard.rb +241 -0
  828. data/tests/test_dialog.rb +28 -0
  829. data/tests/test_event_handling.rb +103 -0
  830. data/tests/test_events.rb +45 -0
  831. data/tests/test_geometry.rb +141 -0
  832. data/tests/test_intl.rb +107 -0
  833. data/tests/test_item_data.rb +120 -0
  834. data/tests/test_variant.rb +151 -0
  835. data/tests/testapp.rb +40 -0
  836. data/tests/testapp_noframe.rb +28 -0
  837. metadata +928 -0
@@ -0,0 +1,220 @@
1
+ #!/usr/bin/env ruby
2
+ # wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
3
+ # Adapted for wxRuby3
4
+ # Copyright (c) M.J.N. Corino, The Netherlands
5
+ ###
6
+
7
+ require 'wx'
8
+
9
+ # This sample demonstrates how to dynamically connect and disconnect
10
+ # event handlers, and how to create custom event types and listeners
11
+ # associated with user-defined control classes.
12
+
13
+ # A custom type of event associated with a target control. Note that for
14
+ # user-defined controls, the associated event should inherit from
15
+ # Wx::CommandEvent rather than Wx::Event.
16
+ class TargetHitEvent < Wx::CommandEvent
17
+ # Create a new unique constant identifier, associate this class
18
+ # with events of that identifier, and create a shortcut 'evt_target'
19
+ # method for setting up this handler.
20
+ EVT_HIT_TARGET = Wx::EvtHandler.register_class(self, nil, 'evt_target', 1)
21
+
22
+ def initialize(target, score, distance)
23
+ # The constant id is the arg to super
24
+ super(EVT_HIT_TARGET)
25
+ # client_data should be used to store any information associated
26
+ # with the event.
27
+ self.client_data = { :score => score, :distance => distance }
28
+ self.id = target.get_id
29
+ end
30
+
31
+ # Returns the points score associated with this event
32
+ def score
33
+ client_data[:score]
34
+ end
35
+
36
+ # Returns the distance (in pixels) from the centre of the target
37
+ def distance
38
+ client_data[:distance]
39
+ end
40
+ end
41
+
42
+ class CountEvent < Wx::CommandEvent
43
+ EVT_COUNTER = Wx::EvtHandler.register_class(self, nil, 'evt_counter', 1)
44
+
45
+ def initialize(id)
46
+ super(EVT_COUNTER, id)
47
+ end
48
+ end
49
+
50
+ # An example of a simple user-written control, which displays a
51
+ # "bulls-eye" like target, and sends events with a score and distance
52
+ class TargetControl < Wx::Window
53
+ TargetCircle = Struct.new(:radius, :score, :brush)
54
+
55
+ def initialize(parent, *args)
56
+ super(parent, *args)
57
+
58
+ # Set up the scores and sizes of the rings
59
+ @radii = [
60
+ TargetCircle[ 0.1, 20, Wx::RED_BRUSH ],
61
+ TargetCircle[ 0.25, 10, Wx::BLUE_BRUSH ],
62
+ TargetCircle[ 0.4, 5, Wx::GREEN_BRUSH ] ]
63
+ evt_paint { | e | on_paint(e) }
64
+ evt_left_down { | e | on_left_down(e) }
65
+ end
66
+
67
+ # What point is at the centre (assuming this control is always square)
68
+ def centre_point
69
+ size.width / 2
70
+ end
71
+
72
+ # Called whenever the target is repainted, draws a series of
73
+ # concentric circles
74
+ def on_paint(evt)
75
+ paint do | dc |
76
+ dc.clear
77
+ @radii.reverse_each do | circ |
78
+ dc.brush = circ.brush
79
+ dc.draw_circle(centre_point, centre_point,
80
+ ( size.width * circ.radius).to_i )
81
+ end
82
+ end
83
+ end
84
+
85
+ # Test if the target was hit, and generate a TargetHitEvent if so
86
+ def on_left_down(evt)
87
+ # quick bit of pythagoras...
88
+ distance = Math.sqrt( ( evt.x - centre_point ) ** 2 +
89
+ ( evt.y - centre_point ) ** 2 )
90
+ # See which target ring, if any, was hit by the event
91
+ @radii.each do | circ |
92
+ if distance < ( size.width * circ.radius)
93
+ # Create an instance of the event
94
+ evt = TargetHitEvent.new(self, circ.score, distance)
95
+ # This sends the event for processing by listeners
96
+ event_handler.process_event(evt)
97
+ break
98
+ end
99
+ end
100
+ end
101
+
102
+ def try_before(event)
103
+ event_handler.queue_event(CountEvent.new(self.id)) if TargetHitEvent === event
104
+ super
105
+ end
106
+ end
107
+
108
+ # Container frame for the target control
109
+ class TargetFrame < Wx::Frame
110
+ def initialize(title)
111
+ super(nil, :title => title, :size => [300, 300])
112
+ @tgt = TargetControl.new(self)
113
+ # This user-defined event handling method was set up by
114
+ # EvtHandler.register_class, above
115
+ evt_target(@tgt.get_id) { | e | on_target(e) }
116
+ @counter = 0
117
+ evt_counter(@tgt.get_id) { | e | on_counter(e) }
118
+ @listening = true
119
+ evt_size { | e | on_size(e) }
120
+ setup_menus
121
+ create_status_bar(2)
122
+ end
123
+
124
+ # What's done when the target is hit
125
+ def on_target(evt)
126
+ msg = "Target hit for score %i, %.2f pixels from centre" %
127
+ [ evt.score, evt.distance ]
128
+ set_status_text(msg, 0)
129
+ end
130
+
131
+ def on_counter(evt)
132
+ @counter += 1
133
+ set_status_text(@counter.to_s, 1)
134
+ end
135
+
136
+ # Keep the target centred and square
137
+ def on_size(evt)
138
+ smaller = [ evt.size.width, evt.size.height ].min
139
+ @tgt.centre
140
+ @tgt.size = Wx::Size.new(smaller, smaller)
141
+ @tgt.refresh
142
+ end
143
+
144
+ # Toggle whether or not we are listening for events from the bulls-eye
145
+ # target
146
+ def on_toggle_connect
147
+ if @listening
148
+ # Remove :evt_target event handler for the @tgt
149
+ disconnect(@tgt.get_id, Wx::ID_ANY, :evt_target)
150
+ menu_bar.check(TOGGLE_LISTEN, false)
151
+ self.status_text = "Ignoring target events"
152
+ @listening = false
153
+ else
154
+ # Restore evt_target event handler for the @tgt
155
+ evt_target(@tgt.get_id) { | e | on_target(e) }
156
+ menu_bar.check(TOGGLE_LISTEN, true)
157
+ self.status_text = ''
158
+ @listening = true
159
+ end
160
+ end
161
+
162
+ def on_about
163
+ msg = sprintf("This is the About dialog of the event handling sample.\n" \
164
+ "Welcome to wxRuby, version %s", Wx::WXRUBY_VERSION)
165
+
166
+ Wx::MessageDialog(self, msg, 'About Event Handling',
167
+ Wx::OK | Wx::ICON_INFORMATION) do |about_dlg|
168
+ about_dlg.ok_label = Wx::ButtonLabel.new('Close')
169
+ about_dlg.show_modal
170
+ end
171
+ end
172
+
173
+ TOGGLE_LISTEN = 1001
174
+ def setup_menus
175
+ menu_file = Wx::Menu.new
176
+ menu_help = Wx::Menu.new
177
+ menu_help.append(Wx::ID_ABOUT, "&About...\tF1", "Show about dialog")
178
+ evt_menu(Wx::ID_ABOUT) { on_about }
179
+ menu_file.append(Wx::ID_EXIT, "E&xit\tAlt-X", "Quit this program")
180
+ evt_menu(Wx::ID_EXIT) { self.close }
181
+ menu_file.append_check_item(TOGGLE_LISTEN, "L&isten for events",
182
+ "Toggle listening for target events")
183
+ evt_menu(TOGGLE_LISTEN) { on_toggle_connect }
184
+
185
+ menu_bar = Wx::MenuBar.new
186
+ menu_bar.append(menu_file, "&File")
187
+ menu_bar.append(menu_help, "&Help")
188
+
189
+ self.menu_bar = menu_bar
190
+ menu_bar.check(TOGGLE_LISTEN, true)
191
+ end
192
+ end
193
+
194
+ module EventSample
195
+
196
+ include WxRuby::Sample if defined? WxRuby::Sample
197
+
198
+ def self.describe
199
+ { file: __FILE__,
200
+ summary: 'wxRuby event handling example.',
201
+ description: <<~__TXT
202
+ wxRuby example demonstrating event handling.
203
+ This sample demonstrates how to dynamically connect and disconnect
204
+ event handlers, and how to create custom event types and listeners
205
+ associated with user-defined control classes.
206
+ __TXT
207
+ }
208
+ end
209
+
210
+ def self.activate
211
+ frame = TargetFrame.new("Event Handling Sample")
212
+ frame.show
213
+ frame
214
+ end
215
+
216
+ if $0 == __FILE__
217
+ Wx::App.run { EventSample.activate }
218
+ end
219
+
220
+ end
@@ -0,0 +1,141 @@
1
+ #!/usr/bin/env ruby
2
+ # wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
3
+ # Adapted for wxRuby3
4
+ # Copyright (c) M.J.N. Corino, The Netherlands
5
+ ###
6
+
7
+ require 'wx'
8
+
9
+ # This simple sample demonstrates how to use Ruby (green) threads
10
+ # to execute non-GUI code in parallel with a wxRuby
11
+ # GUI. This strategy is useful in a number of situations:
12
+ #
13
+ # * To keep the GUI responsive whilst computationally intensive
14
+ # operations are carried out in the background
15
+ # * To keep the GUI responsive while waiting for networking operations
16
+ # to complete
17
+ #
18
+ # The basic problem is that, as with other Ruby GUI toolkits, non-GUI
19
+ # threads will not, by default, get allocated time to run while Ruby is
20
+ # busy in Wx code - the main wxRuby event loop. Strategies to deal with
21
+ # this include using non-blocking IO, and, more generically, using
22
+ # wxRuby's Timer class to explicitly allocate time for non-GUI threads
23
+ # to run. The latter technique is shown here.
24
+
25
+ # A custom type of event associated with a target control. Note that for
26
+ # user-defined controls, the associated event should inherit from
27
+ # Wx::CommandEvent rather than Wx::Event.
28
+ class ProgressUpdateEvent < Wx::CommandEvent
29
+ # Create a new unique constant identifier, associate this class
30
+ # with events of that identifier, and create a shortcut 'evt_update_progress'
31
+ # method for setting up this handler.
32
+ EVT_UPDATE_PROGRESS = Wx::EvtHandler.register_class(self, nil, 'evt_update_progress', 0)
33
+
34
+ def initialize(value, gauge)
35
+ # The constant id is the arg to super
36
+ super(EVT_UPDATE_PROGRESS)
37
+ # simply use instance variables to store custom event associated data
38
+ @value = value
39
+ @gauge = gauge
40
+ end
41
+
42
+ attr_reader :value, :gauge
43
+ end
44
+
45
+ # This frame shows a set of progress bars which monitor progress of
46
+ # long-running tasks. In this example, this long-running task is
47
+ # emulated by simply sleep-ing for random periods, but could equally be
48
+ # downloading from a socket or parsing a file.
49
+ class ProgressFrame < Wx::Frame
50
+ STEPS = 20
51
+ def initialize
52
+ super(nil, :title => 'Threading demo')
53
+ @gauges = []
54
+ panel = Wx::Panel.new(self)
55
+ sizer = Wx::BoxSizer.new(Wx::VERTICAL)
56
+ # progress update handler
57
+ evt_update_progress(:on_progress_update)
58
+ frame = self
59
+ # show ten gauges
60
+ 10.times do |gauge_ix|
61
+ gauge = Wx::Gauge.new(panel, :range => STEPS)
62
+ # For each gauge, start a new thread in which the task runs
63
+ Thread.new do
64
+ # The long-running task
65
+ STEPS.times do | i |
66
+ sleep rand(100) / 50.0
67
+ # Update the main GUI asynchronously (more ways than 1)
68
+ if (gauge_ix % 2) == 0
69
+ frame.event_handler.queue_event(ProgressUpdateEvent.new(i+1, gauge_ix))
70
+ else
71
+ frame.call_after(:update_gauge, gauge_ix, i+1)
72
+ end
73
+ end
74
+ end
75
+ @gauges << gauge
76
+ sizer.add(gauge, 0, Wx::GROW|Wx::ALL, 2)
77
+ end
78
+ panel.sizer = sizer
79
+ sizer.fit(panel)
80
+ end
81
+
82
+ def update_gauge(gauge_ix, value)
83
+ @gauges[gauge_ix].value = value
84
+ end
85
+
86
+ def on_progress_update(evt)
87
+ update_gauge(evt.gauge, evt.value)
88
+ end
89
+ end
90
+
91
+ # This app class creates a frame, and, importantly, a timer to allow
92
+ # the threads some computing time
93
+ class GaugeApp < Wx::App
94
+ def on_init
95
+ # Create a global application timer that passes control to other
96
+ # ruby threads. The timer will run every 1/40 second (25ms). Higher
97
+ # values will make the other threads run more often, but will
98
+ # eventually degrade the responsiveness of the GUI.
99
+ Wx::Timer.every(25) { Thread.pass }
100
+ prog = ProgressFrame.new
101
+ prog.show
102
+ end
103
+ end
104
+
105
+ module ThreadSample
106
+
107
+ include WxRuby::Sample if defined? WxRuby::Sample
108
+
109
+ def self.describe
110
+ { file: __FILE__,
111
+ summary: 'wxRuby threading example.',
112
+ description: <<~__TXT
113
+ wxRuby example demonstrating how to use ruby threads in wxRuby.
114
+ This simple sample demonstrates how to use Ruby (green) threads
115
+ to execute non-GUI code in parallel with a wxRuby
116
+ GUI. This strategy is useful in a number of situations:
117
+
118
+ * To keep the GUI responsive whilst computationally intensive
119
+ operations are carried out in the background
120
+ * To keep the GUI responsive while waiting for networking operations
121
+ to complete
122
+
123
+ The basic problem is that, as with other Ruby GUI toolkits, non-GUI
124
+ threads will not, by default, get allocated time to run while Ruby is
125
+ busy in Wx code - the main wxRuby event loop. Strategies to deal with
126
+ this include using non-blocking IO, and, more generically, using
127
+ wxRuby's Timer class to explicitly allocate time for non-GUI threads
128
+ to run. The latter technique is shown here.
129
+ __TXT
130
+ }
131
+ end
132
+
133
+ def self.run
134
+ execute(__FILE__)
135
+ end
136
+
137
+ if $0 == __FILE__
138
+ GaugeApp.run
139
+ end
140
+
141
+ end
Binary file
Binary file
Binary file
@@ -0,0 +1,91 @@
1
+ #!/usr/bin/env ruby
2
+ # wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
3
+ # Adapted for wxRuby3
4
+ # Copyright (c) M.J.N. Corino, The Netherlands
5
+ ###
6
+
7
+ require 'wx'
8
+
9
+ # Demonstrating the use of evt_update_ui to keep menu items and controls
10
+ # in sync in being enabled/disabled, checked/unchecked.
11
+ #
12
+ # evt_update_ui is called repeatedly whenever the item is (or is about
13
+ # to become) visible; by calling methods on the passed event object, the
14
+ # state of the control is updated. For complex applications, this can be
15
+ # a lot simpler (less code, more reliable) than having to remember to
16
+ # update all the relevant controls and items whenever the state changes.
17
+ #
18
+ # In the example below, the application is globally in edit mode. This
19
+ # mode can be changed either from a menu item, or via a
20
+ # checkbox. Whichever is used to change, the state of the other should
21
+ # be kept in sync
22
+ class UpdateUIFrame < Wx::Frame
23
+ def initialize
24
+ super(nil, :title => 'Update UI example', :size => [ 400, 300 ])
25
+ @edit_mode = false
26
+
27
+ # First, set up the menus
28
+ self.menu_bar = Wx::MenuBar.new
29
+ menu_edit = Wx::Menu.new
30
+
31
+ # Toggle case-change menu item
32
+ menu_edit.append_check_item(Wx::ID_EDIT, 'Allow case change')
33
+ # When the item is called, toggle edit mode
34
+ evt_menu(Wx::ID_EDIT) { @edit_mode = ! @edit_mode }
35
+ # Give the menu item a check or not, depending on mode
36
+ evt_update_ui(Wx::ID_EDIT) { | evt | evt.check(@edit_mode) }
37
+
38
+ # Upcase menu item
39
+ up_case = menu_edit.append('Upper case')
40
+ evt_menu(up_case) { @txt.value = @txt.value.upcase }
41
+ evt_update_ui(up_case) { | evt | evt.enable(@edit_mode) }
42
+
43
+ # Lowercase menu item
44
+ up_case = menu_edit.append('Lower case')
45
+ evt_menu(up_case) { @txt.value = @txt.value.downcase }
46
+ evt_update_ui(up_case) { | evt | evt.enable(@edit_mode) }
47
+
48
+ menu_bar.append(menu_edit, "&Edit")
49
+
50
+ # Second, the frame contents
51
+ self.sizer = Wx::BoxSizer.new(Wx::VERTICAL)
52
+
53
+ # A text control
54
+ @txt = Wx::TextCtrl.new( self,
55
+ :value => 'Welcome to wxRuby',
56
+ :style => Wx::TE_MULTILINE )
57
+ sizer.add(@txt, 1, Wx::GROW|Wx::ALL, 5)
58
+
59
+ # A checkbox, use the Wx::ID_EDIT id to share evt code with the
60
+ # corresponding menu item
61
+ @cbx = Wx::CheckBox.new( self,
62
+ :id => Wx::ID_EDIT,
63
+ :label => 'Allow case change')
64
+ evt_checkbox(@cbx) { @edit_mode = ! @edit_mode }
65
+
66
+ sizer.add(@cbx, 0, Wx::RIGHT|Wx::ALL, 5)
67
+ sizer.layout
68
+ end
69
+ end
70
+
71
+ module UpdateUISample
72
+
73
+ include WxRuby::Sample if defined? WxRuby::Sample
74
+
75
+ def self.describe
76
+ { file: __FILE__,
77
+ summary: 'Simple wxRuby UpdateUIEvent example.',
78
+ description: 'Simple wxRuby example demonstrating UpdateUIEvent handling.' }
79
+ end
80
+
81
+ def self.activate
82
+ frame = UpdateUIFrame.new
83
+ frame.show
84
+ frame
85
+ end
86
+
87
+ if $0 == __FILE__
88
+ Wx::App.run { UpdateUISample.activate }
89
+ end
90
+
91
+ end
@@ -0,0 +1,224 @@
1
+ #!/usr/bin/env ruby
2
+ # wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
3
+ # Adapted for wxRuby3
4
+ # Copyright (c) M.J.N. Corino, The Netherlands
5
+ ###
6
+
7
+ require 'wx'
8
+
9
+ class MyTextCellEditor < Wx::GRID::GridCellTextEditor
10
+ def apply_edit(row, col, grid)
11
+ grid.set_cell_value(row, col, "'#{get_value}'" )
12
+ end
13
+ end
14
+
15
+ class GridFrame < Wx::Frame
16
+
17
+ def initialize(parent, id = -1, title = "MyFrame",
18
+ pos = Wx::DEFAULT_POSITION,
19
+ size = Wx::DEFAULT_SIZE,
20
+ style = Wx::DEFAULT_FRAME_STYLE)
21
+
22
+ super(parent, id, title, pos, size, style)
23
+ sizer = Wx::BoxSizer.new(Wx::VERTICAL)
24
+ create_status_bar
25
+ set_status_text(Wx::WXRUBY_VERSION)
26
+
27
+ # panel = Wx::Panel.new(self)
28
+ sel_menu = Wx::Menu.new
29
+ sel_menu.append(1002, 'Select all', 'Select all')
30
+ evt_menu(1002) { @grid.select_all }
31
+ sel_menu.append(1003, 'Select row 2', 'Select row 2')
32
+ evt_menu(1003) { @grid.select_row(1) }
33
+ sel_menu.append(1004, 'Select column 4', 'Select col 4')
34
+ evt_menu(1004) { @grid.select_col(3) }
35
+ sel_menu.append(1005, 'Select block', 'Select block')
36
+ evt_menu(1005) { @grid.select_block(1, 1, 6, 3) }
37
+ menu_bar = Wx::MenuBar.new
38
+ menu_bar.append(sel_menu, 'Select')
39
+ set_menu_bar(menu_bar)
40
+
41
+ make_grid(self)
42
+ sizer.add(@grid, 1, Wx::ALL|Wx::GROW, 4)
43
+ set_sizer(sizer)
44
+
45
+ evt_grid_cell_left_click do |evt|
46
+ set_status_text("#{evt.get_row} x #{evt.get_col} is clicked")
47
+ evt.skip
48
+ end
49
+
50
+ evt_grid_cell_right_click do |evt|
51
+ set_status_text("#{evt.get_row} x #{evt.get_col} is right clicked")
52
+ evt.skip
53
+ end
54
+
55
+ evt_grid_cell_left_dclick do |evt|
56
+ set_status_text("#{evt.get_row} x #{evt.get_col} is double clicked")
57
+ evt.skip
58
+ end
59
+
60
+ evt_grid_cell_right_dclick do |evt|
61
+ set_status_text("#{evt.get_row} x #{evt.get_col} is right double clicked")
62
+ evt.skip
63
+ end
64
+
65
+ evt_grid_label_left_click do |evt|
66
+ set_status_text("#{evt.get_row} x #{evt.get_col} label is clicked")
67
+ evt.skip
68
+ end
69
+
70
+ evt_grid_label_right_click do |evt|
71
+ set_status_text("#{evt.get_row} x #{evt.get_col} label is right clicked")
72
+ evt.skip
73
+ end
74
+
75
+ evt_grid_label_left_dclick do |evt|
76
+ set_status_text("#{evt.get_row} x #{evt.get_col} labelis double clicked")
77
+ evt.skip
78
+ end
79
+
80
+ evt_grid_label_right_dclick do |evt|
81
+ set_status_text("#{evt.get_row} x #{evt.get_col} label is right double clicked")
82
+ evt.skip
83
+ end
84
+
85
+ evt_grid_select_cell do |evt|
86
+ set_status_text("#{evt.get_row} x #{evt.get_col} cell is selected")
87
+ evt.skip
88
+ end
89
+
90
+ evt_grid_row_size do |evt|
91
+ set_status_text("Row #{evt.get_row_or_col} size changed")
92
+ evt.skip
93
+ end
94
+
95
+ evt_grid_col_size do |evt|
96
+ set_status_text("Column #{evt.get_row_or_col} size changed")
97
+ evt.skip
98
+ end
99
+
100
+ evt_grid_editor_shown do |evt|
101
+ set_status_text("Begin editing")
102
+ evt.skip
103
+ end
104
+
105
+ evt_grid_editor_hidden do |evt|
106
+ set_status_text("End editing")
107
+ evt.skip
108
+ end
109
+
110
+ evt_grid_range_selected do |evt|
111
+ top = evt.get_top_left_coords
112
+ bottom = evt.get_bottom_right_coords
113
+ set_status_text("[ #{top[0].to_s} x #{top[1].to_s} ] to [ #{bottom[0].to_s} x #{bottom[1].to_s} ] is selected")
114
+ end
115
+
116
+ evt_grid_editor_created do |evt|
117
+ set_status_text("Control #{evt.get_control} created")
118
+ evt.skip
119
+ end
120
+
121
+ evt_grid_cell_changed do |evt|
122
+ set_status_text("Cell #{evt.get_row} x #{evt.get_col} has changed")
123
+ end
124
+ end
125
+
126
+ # Create a wxGrid object
127
+ def make_grid(panel)
128
+ @grid = Wx::GRID::Grid.new(panel, -1)
129
+
130
+ # Then we call CreateGrid to set the dimensions of the grid
131
+ # (11 rows and 12 columns in this example)
132
+ @grid.create_grid( 20, 12 )
133
+ @grid.set_default_cell_background_colour(Wx::WHITE)
134
+ # We can set the sizes of individual rows and columns
135
+ # in pixels, and the label value string
136
+ @grid.set_row_size( 0, 60 )
137
+ @grid.set_row_label_value( 0, "Row1" )
138
+ @grid.set_row_label_alignment(Wx::ALIGN_CENTRE, Wx::ALIGN_CENTRE)
139
+
140
+ @grid.set_col_size( 0, 120 )
141
+ @grid.set_col_label_value( 0, "Col1" )
142
+ @grid.set_col_label_alignment(Wx::ALIGN_CENTRE, Wx::ALIGN_CENTRE)
143
+
144
+ # And set grid cell contents as strings
145
+ @grid.set_cell_value( 0, 0, "wxGrid is good" )
146
+
147
+ # We can specify that some cells are read-only
148
+ @grid.set_cell_value( 0, 2, "Read-only" )
149
+ @grid.set_read_only( 0, 2 )
150
+
151
+ cell_attr = Wx::GRID::GridCellAttr.new
152
+ cell_attr.editor = MyTextCellEditor.new
153
+ @grid.set_row_attr(1, cell_attr)
154
+ cell_attr2 = Wx::GRID::GridCellAttr.new
155
+ cell_attr2.editor = cell_attr.editor(@grid, 1, 1)
156
+ @grid.set_row_attr(2, cell_attr2)
157
+
158
+ # Colours can be specified for grid cell contents
159
+ @grid.set_cell_value(1, 1, "white on red")
160
+ @grid.set_cell_text_colour(1, 1, Wx::WHITE)
161
+ @grid.set_cell_background_colour(1, 1, Wx::RED)
162
+
163
+ # We can specify the some cells will store numeric
164
+ # values rather than strings. Here we set grid column 6
165
+ # to hold floating point values displayed with width
166
+ # of 2 and precision of 2. The column is highlighted in light grey
167
+ cell_attr = Wx::GRID::GridCellAttr.new
168
+ cell_attr.set_background_colour( Wx::LIGHT_GREY )
169
+ cell_attr.set_renderer( Wx::GRID::GridCellFloatRenderer.new(2, 2) )
170
+
171
+ @grid.set_col_attr(5, cell_attr)
172
+ @grid.set_cell_value(0, 5, "3.1415")
173
+ @grid.set_cell_value(0, 6,
174
+ "The whole column to the left uses float format")
175
+
176
+ # Custom Editors Can be used
177
+ editor = Wx::GRID::GridCellNumberEditor.new(5, 20)
178
+ @grid.set_cell_value(3, 1, 'Number editor below')
179
+ @grid.set_cell_editor(4, 1, editor)
180
+
181
+ editor = Wx::GRID::GridCellFloatEditor.new(4, 2)
182
+ @grid.set_cell_value(3, 2, 'Float editor below')
183
+ @grid.set_cell_editor(4, 2, editor)
184
+
185
+ editor = Wx::GRID::GridCellChoiceEditor.new(['foo', 'bar', 'baz'])
186
+ @grid.set_cell_value(3, 3, 'Choice editor below')
187
+ @grid.set_cell_editor(4, 3, editor)
188
+
189
+ @grid.auto_size_row(3, true)
190
+
191
+ # Display of cells can be customised
192
+ @grid.set_cell_editor(6, 0, Wx::GRID::GridCellBoolEditor.new)
193
+ @grid.set_cell_renderer(6, 0, Wx::GRID::GridCellBoolRenderer.new)
194
+ @grid.set_cell_value(6, 1, 'Cell to the left displayed as boolean')
195
+ end
196
+
197
+ end
198
+
199
+ module GridSample
200
+
201
+ include WxRuby::Sample if defined? WxRuby::Sample
202
+
203
+ def self.describe
204
+ { file: __FILE__,
205
+ summary: 'wxRuby Grid example.',
206
+ description: 'wxRuby example showcasing Grid control features.' }
207
+ end
208
+
209
+ def self.activate
210
+ frame = GridFrame.new(nil, -1, "Grid Sample",
211
+ Wx::Point.new(10, 100),
212
+ Wx::Size.new(630,400))
213
+ frame.show
214
+ frame
215
+ end
216
+
217
+ if $0 == __FILE__
218
+ Wx::App.run do
219
+ gc_stress
220
+ GridSample.activate
221
+ end
222
+ end
223
+
224
+ end