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

Sign up to get free protection for your applications and to get access to all the features.
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,810 @@
1
+ #!/usr/bin/env ruby
2
+ # wxRuby2 Sample Code. Copyright (c) 2004-2008 wxRuby development team
3
+ # Freely reusable code: see SAMPLES-LICENSE.TXT for details
4
+ begin
5
+ require 'rubygems'
6
+ rescue LoadError
7
+ end
8
+ require 'wx'
9
+
10
+ # Demo created by Robert Carlin, based on the wxPython demo by Robin Dunn
11
+ # Modified by Kevin Smith, Roy Sutton, Alex Fenton
12
+
13
+ # TODO:
14
+ # Finish Scintilla integration
15
+ # Fix 'Find Next'
16
+ # Refactor editor pane
17
+ # More samples
18
+ # Finish 'rubification' of source
19
+ # Fix non-scintilla code viewer
20
+
21
+ OVR_TEXT = "This is the WxRuby Demo. It was ported from the wxPython Demo, created by Robin Dunn. Many thanks to him for all his hard work - this demo is what it is because of him. Click on any of the items in the tree control to start the demo. Don't forget to check out the Demo Code tab - you can see the source code for each demo!\nHope you like it!"
22
+
23
+ $tree_list = [
24
+ #new stuff
25
+ #['Recent Additions', [
26
+ # 'wxMaskedNumCtrl',
27
+ # 'FloatCanvas',
28
+ # ]],
29
+
30
+ # managed windows == things with a [optional] caption you can close
31
+ ['Base Frames and Dialogs', %w[wxDialog wxFrame wxMDIWindows wxMiniFrame]],
32
+
33
+ # the common dialogs
34
+ ['Common Dialogs', [
35
+ 'wxColourDialog',
36
+ 'wxDirDialog',
37
+ 'wxFileDialog',
38
+ 'wxFileDialog_Save',
39
+ 'wxFindReplaceDialog',
40
+ 'wxFontDialog',
41
+ 'wxMessageDialog',
42
+ #'wxPageSetupDialog',
43
+ #'wxPrintDialog',
44
+ 'wxProgressDialog',
45
+ 'wxSingleChoiceDialog',
46
+ 'wxTextEntryDialog',
47
+ ]],
48
+
49
+ # dialogs from libraries
50
+ ['More Dialogs', [
51
+ # 'ErrorDialogs',
52
+ # 'ImageBrowser',
53
+ 'wxMultipleChoiceDialog',
54
+ 'wxScrolledMessageDialog'
55
+ ]],
56
+
57
+ # core controls
58
+ ['Core Windows/Controls', [
59
+ 'PopupMenu',
60
+ 'wxBitmapButton',
61
+ 'wxButton',
62
+ 'wxCheckBox',
63
+ 'wxCheckListBox',
64
+ 'wxChoice',
65
+ 'wxChoicebook',
66
+ 'wxComboBox',
67
+ 'wxGauge',
68
+ 'wxGenericDirCtrl',
69
+ 'wxGrid',
70
+ #'wxGrid_MegaExample',
71
+ 'wxListBox',
72
+ #'wxListCtrl',
73
+ 'wxListCtrl_virtual',
74
+ 'wxMenu',
75
+ 'wxNotebook',
76
+ #'wxPopupWindow',
77
+ 'wxRadioBox',
78
+ 'wxRadioButton',
79
+ 'wxSashWindow',
80
+ 'wxScrolledWindow',
81
+ 'wxSlider',
82
+ 'wxSpinButton',
83
+ 'wxSpinCtrl',
84
+ 'wxSplitterWindow',
85
+ 'wxStaticBitmap',
86
+ 'wxStaticText',
87
+ 'wxStatusBar',
88
+ 'wxTextCtrl',
89
+ 'wxToggleButton',
90
+ 'wxToolBar',
91
+ 'wxTreeCtrl',
92
+ #'wxValidator',
93
+ ]],
94
+
95
+ # controls coming from other libraries
96
+ ['More Windows/Controls', [
97
+ #'wxFloatBar', deprecated
98
+ #'wxMVCTree', deprecated
99
+ #'wxRightTextCtrl', deprecated as we have wxTE_RIGHT now.
100
+ #'AnalogClockWindow',
101
+ #'ColourSelect',
102
+ #'ContextHelp',
103
+ #'FancyText',
104
+ #'FloatCanvas',
105
+ #'FileBrowseButton',
106
+ #'GenericButtons',
107
+ #'MaskedEditControls',
108
+ #'SplitTree',
109
+ #'TablePrint',
110
+ #'Throbber',
111
+ #'wxCalendar',
112
+ 'wxCalendarCtrl',
113
+ #'wxDynamicSashWindow',
114
+ #'wxEditableListBox',
115
+ #'wxEditor',
116
+ #'wxHtmlWindow',
117
+ #'wxIEHtmlWin',
118
+ #'wxIntCtrl',
119
+ #'wxLEDNumberCtrl',
120
+ #'wxMimeTypesManager',
121
+ #'wxMaskedNumCtrl',
122
+ #'wxMultiSash',
123
+ #'wxPopupControl',
124
+ #'wxStyledTextCtrl_1',
125
+ #'wxStyledTextCtrl_2',
126
+ #'wxTimeCtrl',
127
+ #'wxTreeListCtrl',
128
+ ]],
129
+
130
+ # How to lay out the controls in a frame/dialog
131
+ ['Window Layout', [
132
+ # 'LayoutAnchors',
133
+ # 'Layoutf',
134
+ # 'RowColSizer',
135
+ 'Sizers',
136
+ # 'wxScrolledPanel',
137
+ # 'wxXmlResource',
138
+ # 'wxXmlResourceHandler',
139
+ ]],
140
+
141
+ # ditto
142
+ #['Process and Events', [
143
+ # 'EventManager',
144
+ # 'infoframe',
145
+ # 'OOR',
146
+ # 'PythonEvents',
147
+ # 'Threads',
148
+ # 'wxKeyEvents',
149
+ # 'wxProcess',
150
+ # 'wxTimer',
151
+ # ]],
152
+
153
+ #~ # Clipboard and DnD
154
+ #~ ['Clipboard and DnD', [
155
+ #~ #'CustomDragAndDrop',
156
+ #~ 'DragAndDrop',
157
+ #~ 'URLDragAndDrop',
158
+ #~ ]],
159
+
160
+ # Images
161
+ ['Using Images', [
162
+ # 'Throbber',
163
+ 'wxArtProvider',
164
+ 'wxCursor',
165
+ 'wxDragImage',
166
+ # 'wxImage',
167
+ # 'wxImageFromStream',
168
+ # 'wxMask',
169
+ ]],
170
+
171
+ # Other stuff
172
+ ['Miscellaneous', [
173
+ # 'ColourDB',
174
+ # 'DialogUnits',
175
+ # 'DrawXXXList',
176
+ # 'FontEnumerator',
177
+ # 'PrintFramework',
178
+ 'ShapedWindow',
179
+ # 'Throbber',
180
+ # 'Unicode',
181
+ # 'wxFileHistory',
182
+ # 'wxJoystick',
183
+ # 'wxOGL',
184
+ # 'wxWave',
185
+ ]],
186
+
187
+ # need libs not coming with the demo
188
+ #['Objects using an external library', [
189
+ # 'ActiveXWrapper_Acrobat',
190
+ # 'ActiveXWrapper_IE',
191
+ # 'wxGLCanvas',
192
+ # 'wxPlotCanvas',
193
+ # ]],
194
+
195
+ ['Check out the samples dir too', [
196
+ ]],
197
+
198
+ ]
199
+
200
+ class DemoCodeViewer < Wx::TextCtrl
201
+ def initialize(parent)
202
+ super(parent, value: OVR_TEXT,
203
+ style: Wx::TE_MULTILINE | Wx::TE_READONLY | Wx::HSCROLL |
204
+ Wx::TE_RICH | Wx::TE_RICH2 | Wx::TE_NOHIDESEL)
205
+ set_max_length(0) unless Wx::PLATFORM == 'WXGTK'
206
+ end
207
+
208
+ def clear_all
209
+ clear
210
+ end
211
+ end
212
+
213
+ class WxRubyDemo < Wx::Frame
214
+ attr_accessor :otherWin
215
+
216
+ def initialize(title, pos, size, style = Wx::DEFAULT_FRAME_STYLE)
217
+ super(nil, -1, title, pos, size, style)
218
+ @demoID = Wx::ID_HIGHEST
219
+ @otherWin = nil
220
+
221
+ icon_file = File.join(File.dirname(__FILE__), 'icons', 'mondrian.xpm')
222
+ icon = Wx::Icon.new(icon_file, Wx::BITMAP_TYPE_XPM)
223
+ set_icon(icon)
224
+
225
+ @tbicon = DemoTaskBarIcon.new(self)
226
+
227
+ evt_idle { |event| on_idle(event) }
228
+ evt_close { |event| on_close(event) }
229
+ evt_iconize { |event| on_iconize(event) }
230
+ evt_maximize { |event| on_maximize(event) }
231
+
232
+ centre(Wx::BOTH)
233
+ create_status_bar(1, Wx::STB_SIZEGRIP)
234
+ set_status_text("Welcome to the WxRuby Demo!")
235
+
236
+ splitter = Wx::SplitterWindow.new(self, -1)
237
+ splitter2 = Wx::SplitterWindow.new(splitter, -1)
238
+
239
+ # Make a File menu
240
+
241
+ @mainmenu = Wx::MenuBar.new
242
+ menu = Wx::Menu.new
243
+ menu.append(Wx::ID_EXIT, "E&xit\tALT-X", "Get the heck outta here!")
244
+ evt_menu(Wx::ID_EXIT) { exit }
245
+ @mainmenu.append(menu, "&File")
246
+
247
+ # Make a Demo menu - thanks to Kevin Smith for figuring the submenus out!
248
+ menu = Wx::Menu.new
249
+ $tree_list.each do |item|
250
+ @submenu = Wx::Menu.new
251
+ item[1].each do |childItem|
252
+ mID = @demoID += 1
253
+ @submenu.append(mID, childItem)
254
+ evt_menu(mID) { |event| on_demo_menu(childItem) }
255
+ end
256
+ @demoID += 1
257
+ menuItem = Wx::MenuItem.new(menu, @demoID, item[0], "", Wx::ITEM_NORMAL, @submenu)
258
+ menu.append_item(menuItem)
259
+ end
260
+ @mainmenu.append(menu, "&Demo")
261
+
262
+ # Make a Help menu
263
+ helpID = Wx::ID_ABOUT
264
+ findID = @demoID += 1
265
+ findnextID = @demoID += 1
266
+ clearID = @demoID += 1
267
+ menu = Wx::Menu.new
268
+ menu.append(findID, "&Find\tCtrl-F", "Find in the Demo Code")
269
+ menu.append(findnextID, "Find &Next\tF3", "Find Next")
270
+ menu.append_separator
271
+ menu.append(helpID, "&About\tCtrl-H", "wxRuby RULES!!!")
272
+ evt_menu(helpID) { |event| on_help_about(event) }
273
+ evt_menu(findID) { |event| on_help_find(event) }
274
+ evt_menu(findnextID) { |event| on_find_next(event) }
275
+ evt_find(-1) { |event| on_find(event) }
276
+ evt_find_next(-1) { |event| on_find(event) }
277
+ evt_find_close(-1) { |event| on_find_close(event) }
278
+ @mainmenu.append(menu, "&Help")
279
+ set_menu_bar(@mainmenu)
280
+
281
+ @finddata = Wx::FindReplaceData.new
282
+
283
+ @treeMap = {}
284
+ @tree = Wx::TreeCtrl.new(splitter)
285
+ root = @tree.add_root("wxRuby Overview")
286
+ firstChild = nil
287
+
288
+ $tree_list.each do |item|
289
+ child = @tree.append_item(root, item[0])
290
+ if not firstChild then
291
+ firstChild = child
292
+ end
293
+ item[1].each do |childItem|
294
+ theDemo = @tree.append_item(child, childItem)
295
+ @treeMap[childItem] = theDemo
296
+ end
297
+ end
298
+ @tree.expand(root)
299
+ @tree.expand(firstChild)
300
+
301
+ evt_tree_item_expanded @tree, :on_item_expanded
302
+ evt_tree_item_collapsed @tree, :on_item_collapsed
303
+ evt_tree_sel_changed @tree, :on_tree_sel_changed
304
+ evt_tree_item_activated @tree, :on_tree_sel_changed
305
+ @tree.evt_left_down method(:on_tree_left_down)
306
+
307
+ # Create a Notebook
308
+ @nb = Wx::Notebook.new(splitter2, :style => Wx::CLIP_CHILDREN)
309
+
310
+ @ovr = Wx::TextCtrl.new(@nb, :value => OVR_TEXT, :style =>
311
+ Wx::TE_MULTILINE | Wx::TE_READONLY |
312
+ Wx::TE_RICH | Wx::TE_NOHIDESEL)
313
+ @nb.add_page(@ovr, "Overview")
314
+
315
+ if Wx.const_defined?(:STC)
316
+ panel, @txt = setup_editor(@nb)
317
+ @nb.add_page(panel, "Demo Code")
318
+ else
319
+ @txt = DemoCodeViewer.new(@nb)
320
+ @nb.add_page(@txt, "Demo Code")
321
+ end
322
+
323
+ get_demo_file(__FILE__)
324
+
325
+ @log = Wx::TextCtrl.new(splitter2, -1, "", Wx::DEFAULT_POSITION,
326
+ Wx::DEFAULT_SIZE,
327
+ Wx::TE_MULTILINE | Wx::TE_READONLY | Wx::HSCROLL)
328
+ # For some reason when the number of characters entered is
329
+ # greater than about 10,700, the text control freezes. I know
330
+ # someone mentioned this on the list a while ago...calling
331
+ # set_max_length(0) with zero as the argument tells the text
332
+ # control to default limit that the underlying native text
333
+ # control can handle.
334
+ @log.set_max_length(0) unless Wx::PLATFORM == 'WXGTK'
335
+ Wx::Log::set_active_target(Wx::LogTextCtrl.new(@log))
336
+
337
+ splitter.split_vertically(@tree, splitter2, 220)
338
+ splitter2.split_horizontally(@nb, @log, 300)
339
+
340
+ splitter.set_minimum_pane_size(20)
341
+ splitter2.set_minimum_pane_size(100)
342
+
343
+ @nb.set_selection(0)
344
+ @tree.select_item(root)
345
+
346
+ show_tip
347
+ end
348
+
349
+ def write_text(text)
350
+ Wx::log_message(text)
351
+ end
352
+
353
+ def on_idle(event)
354
+ if @otherWin != nil
355
+ @otherWin.raise
356
+ @window = @otherWin
357
+ @otherWin = nil
358
+ end
359
+ end
360
+
361
+ def on_close(event)
362
+ @tbicon.remove_icon
363
+ destroy
364
+ exit
365
+ end
366
+
367
+ def on_item_expanded(event)
368
+ item = event.get_item
369
+ Wx::log_message("on_item_expanded: %s" % @tree.get_item_text(item))
370
+ end
371
+
372
+ def on_item_collapsed(event)
373
+ item = event.get_item
374
+ Wx::log_message("on_item_collapsed: %s" % @tree.get_item_text(item))
375
+ end
376
+
377
+ def on_tree_sel_changed(event)
378
+
379
+ item = event.get_item
380
+
381
+ if item.ok?
382
+ itemText = @tree.get_item_text(item)
383
+ run_demo(itemText)
384
+ end
385
+ end
386
+
387
+ def on_tree_left_down(event)
388
+ pt = Wx::Point.new(event.get_x, event.get_y)
389
+ item = @tree.hit_test(pt)
390
+ if item == @tree.get_selection
391
+ set_overview(@tree.get_item_text(item) + " Overview", @curOverview)
392
+ Wx::log_message(@tree.get_item_text(item) + " Overview")
393
+
394
+ end
395
+
396
+ event.skip
397
+ end
398
+
399
+ def run_demo(itemText)
400
+ if @nb.get_page_count == 3
401
+ if @nb.get_selection == 2
402
+ @nb.set_selection(0)
403
+ end
404
+ unless @window.nil?
405
+ @window = nil
406
+ end
407
+ @nb.delete_page(2)
408
+ end
409
+
410
+ if itemText == "wxRuby Overview"
411
+ get_demo_file(__FILE__)
412
+ set_overview("wxRuby Overview", OVR_TEXT)
413
+ @nb.refresh
414
+ @window = nil
415
+ else
416
+ demo_file = File.join(File.dirname(__FILE__), itemText + '.rbw')
417
+ if File.exist?(demo_file)
418
+ Wx::log_message("Running Demo: " + itemText + ".rbw")
419
+ get_demo_file(demo_file)
420
+ # I use load here because it allows the user to modify
421
+ # the underlying file for each sample, so that each time
422
+ # They run it any changes made will be reflected without
423
+ # having to restart the demo.
424
+ begin
425
+ load demo_file
426
+ set_overview(itemText + " Overview", Demo::overview)
427
+ @tree.refresh
428
+ @nb.refresh
429
+ @window = Demo.run(self, @nb, self)
430
+ if Wx::Window === @window
431
+ # Check to see if the demo returned a Wx::Window, Wx::Panel or a new class inheriting from them
432
+ # if so, create a new tab in the notebook for them
433
+ @nb.add_page(@window, "Demo")
434
+ @nb.set_selection(2)
435
+ @nb.refresh
436
+ end
437
+ rescue Exception => problem
438
+ Wx.MessageDialog(self, "A problem occurred with the %s demo:\n%s\n%s" % [itemText, problem, problem.backtrace.join("\n").to_s()],
439
+ "Error!!!", Wx::OK | Wx::ICON_ERROR) do |dlg|
440
+ dlg.show_modal
441
+ end
442
+ end
443
+ else
444
+ @ovr.set_value("")
445
+ @txt.clear_all
446
+ @window = nil
447
+ end
448
+ end
449
+ @tree.set_focus()
450
+ end
451
+
452
+ def get_demo_file(fileName)
453
+ @filename = fileName
454
+ @txt.clear()
455
+ @txt.load_file(fileName)
456
+ if @txt.is_a?(Wx::TextCtrl)
457
+ @txt.set_insertion_point(0)
458
+ @txt.show_position(0)
459
+ end
460
+ end
461
+
462
+ def set_overview(name, text)
463
+ text ||= ''
464
+ @curOverview = text
465
+ @ovr.set_value(text)
466
+ @ovr.set_style(0, text.length, Wx::TextAttr.new(Wx::BLUE, Wx::Colour.new("White"), Wx::Font.new(12, Wx::FONTFAMILY_SWISS, Wx::FONTSTYLE_NORMAL, Wx::FONTWEIGHT_BOLD)))
467
+ @nb.set_page_text(0, name)
468
+ end
469
+
470
+ # Menu Methods
471
+
472
+ def on_file_exit(event)
473
+ close()
474
+ end
475
+
476
+ def on_help_about(event)
477
+ load File.join(File.dirname(__FILE__), "About.rbw")
478
+ about = About::MyAboutBox.new(self)
479
+ about.show_modal()
480
+ about.destroy()
481
+ end
482
+
483
+ def on_help_find(event)
484
+ @nb.set_selection(1)
485
+ @finddlg ||= Wx::FindReplaceDialog.new(self, @finddata, "Find", Wx::FR_NOUPDOWN | Wx::FR_NOMATCHCASE | Wx::FR_NOWHOLEWORD)
486
+ @finddlg.show
487
+ end
488
+
489
+ def on_find(event)
490
+ # FIXME: These problems are probably resolved now
491
+ # Problems
492
+ # 1) For some reason, the control is not properly counting EOL characters - it almost seems to be skipping them
493
+ # causing the control to incorrectly set the initial insertion point for the the "found" text
494
+ # 2) This also is causing problems with the amount of text that is highlighted - the length of the highlighted string
495
+ # is less than it should be
496
+ # 3) After doing an initial "find" operation, using the "find next" operation causes the program to crash - again, I
497
+ # don't know why this is :(
498
+ # Example - When I try to find "menu", the text that gets highlighted is the newline on the second line and the "ME" of
499
+ # MENU_EXIT - a total of only 3 characters, when it should highlight all of "menu". I don't fully understand
500
+ # this problem, but it doesn't appear until after you attempt to find text beyond the first line :(
501
+ if @txt.is_a?(Wx::TextCtrl)
502
+ @nb.set_selection(1)
503
+ myEnd = @txt.get_last_position()
504
+ write_text("Last position = %d" % myEnd)
505
+ textstring = @txt.get_range(0, myEnd).downcase()
506
+ if Wx::PLATFORM == "WXMSW"
507
+ textstring.sub!(/\n/, "\r\n")
508
+ end
509
+ #write_text("textstring - %s" % textstring)
510
+ start = @txt.get_insertion_point()
511
+ write_text("insertion point = " + start.to_s())
512
+ findstring = @finddata.get_find_string().downcase()
513
+ write_text("finddata = " + findstring)
514
+ loc = textstring.index(findstring, start)
515
+ write_text("location = " + loc.to_s())
516
+ write_text("findstring.length() = " + findstring.length().to_s())
517
+ if loc == nil and start != 0
518
+ # string not found, start at beginning
519
+ start = 0
520
+ loc = textstring.index(findstring, start)
521
+ end
522
+
523
+ if loc == nil
524
+ Wx.MessageDialog(self, 'Find String Not Found', 'Find String Not Found in Demo File',
525
+ Wx::OK | Wx::ICON_INFORMATION) do |dlg|
526
+ dlg.show_modal
527
+ end
528
+ end
529
+
530
+ if @finddlg
531
+ if loc == nil
532
+ @finddlg.set_focus
533
+ return
534
+ else
535
+ @finddlg.hide
536
+ end
537
+ end
538
+ @txt.show_position(loc)
539
+ @txt.set_selection(loc, loc + findstring.length())
540
+ else
541
+ # Scintilla
542
+ # FIXME: Take into account search direction
543
+ @txt.set_target_start(@txt.get_target_end)
544
+ @txt.set_target_end(@txt.get_length - 1)
545
+ # FIXME: get flags from find dialog
546
+ @txt.set_search_flags(0)
547
+ loc = @txt.search_in_target(event.get_find_string)
548
+ if loc == -1
549
+ Wx.MessageDialog(self, 'Find String Not Found', 'Find String Not Found in Demo File',
550
+ Wx::OK | Wx::ICON_INFORMATION) do |dlg|
551
+ dlg.show_modal
552
+ end
553
+ end
554
+
555
+ if @finddlg
556
+ if loc == -1
557
+ @finddlg.set_focus()
558
+ return
559
+ end
560
+ end
561
+ @txt.ensure_caret_visible
562
+ @txt.set_selection(loc, loc + event.get_find_string.length)
563
+ end
564
+ end
565
+
566
+ def on_find_next(event)
567
+ # FIXME: Saving an event is probably a bad idea
568
+ if @finddata.get_find_string() != ""
569
+ on_find(event)
570
+ else
571
+ on_help_find(event)
572
+ end
573
+ end
574
+
575
+ def on_find_close(event)
576
+ event.get_dialog().destroy()
577
+ end
578
+
579
+ def show_tip()
580
+ tips_file = File.join(File.dirname(__FILE__), 'tips.txt')
581
+ tp = Wx::create_file_tip_provider(tips_file, rand(6))
582
+ Wx::show_tip(self, tp)
583
+ end
584
+
585
+ def on_demo_menu(childItem)
586
+ # Also, for some reason I haven't figured out yet either, the demo executes two times
587
+ selectedDemo = @treeMap[childItem]
588
+ if selectedDemo
589
+ @tree.select_item(selectedDemo)
590
+ @tree.ensure_visible(selectedDemo)
591
+ end
592
+ end
593
+
594
+ def on_iconize(event)
595
+ Wx::log_message("on_iconize")
596
+ hide
597
+ event.skip
598
+ end
599
+
600
+ def on_maximize(event)
601
+ Wx::log_message("on_maximize")
602
+ event.skip
603
+ end
604
+
605
+ # FIXME: Refactor into a class
606
+ def setup_editor(parent)
607
+ panel = Wx::Panel.new(parent)
608
+ sci = setup_scintilla(panel)
609
+ @save_button = Wx::Button.new(panel, -1, 'Save Changes')
610
+ @delete_button = Wx::Button.new(panel, -1, 'Delete Modified')
611
+ @save_button.enable(false);
612
+ panel.evt_button(@save_button.get_id) { on_save }
613
+ panel.evt_button(@delete_button.get_id) { on_delete }
614
+ panel.evt_stc_modified(sci) { on_modified }
615
+
616
+ radio_buttons = { :original => Wx::RadioButton.new(panel, -1, "Original", Wx::DEFAULT_POSITION, Wx::DEFAULT_SIZE, Wx::RB_GROUP),
617
+ :modified => Wx::RadioButton.new(panel, -1, "Modified") }
618
+
619
+ @control_box = Wx::BoxSizer.new(Wx::HORIZONTAL)
620
+ @control_box.add(Wx::StaticText.new(panel, -1, 'Active Version:'), 0, Wx::RIGHT | Wx::LEFT | Wx::ALIGN_CENTER_VERTICAL, 5)
621
+ radio_buttons.each_pair { |id, button|
622
+ @control_box.add(button, 0, Wx::EXPAND | Wx::RIGHT, 5)
623
+ evt_radiobutton(button.get_id) { |event| on_radio_button(event) }
624
+ }
625
+ @control_box.add(@save_button, 0, Wx::RIGHT, 5)
626
+ @control_box.add(@delete_button, 0)
627
+
628
+ @box = Wx::BoxSizer.new(Wx::VERTICAL)
629
+ @box.add(@control_box, 0, Wx::EXPAND)
630
+ @box.add(Wx::StaticLine.new(panel), 0, Wx::EXPAND)
631
+
632
+ @box.add(sci, 1, Wx::EXPAND)
633
+ @box.fit(panel)
634
+ panel.set_sizer(@box)
635
+ [panel, sci]
636
+ end
637
+
638
+ def setup_scintilla(parent)
639
+ sci = Wx::STC::StyledTextCtrl.new(parent)
640
+ font = Wx::Font.new(10, Wx::FONTFAMILY_TELETYPE, Wx::FONTSTYLE_NORMAL, Wx::FONTWEIGHT_NORMAL)
641
+ sci.style_set_font(Wx::STC::STC_STYLE_DEFAULT, font);
642
+ sci.set_edge_mode(Wx::STC::STC_EDGE_LINE)
643
+ line_num_margin = sci.text_width(Wx::STC::STC_STYLE_LINENUMBER, "_99999")
644
+ sci.set_margin_width(0, line_num_margin)
645
+
646
+ sci.style_set_foreground(Wx::STC::STC_STYLE_DEFAULT, Wx::BLACK);
647
+ sci.style_set_background(Wx::STC::STC_STYLE_DEFAULT, Wx::WHITE);
648
+ sci.style_set_foreground(Wx::STC::STC_STYLE_LINENUMBER, Wx::LIGHT_GREY);
649
+ sci.style_set_background(Wx::STC::STC_STYLE_LINENUMBER, Wx::WHITE);
650
+ sci.style_set_foreground(Wx::STC::STC_STYLE_INDENTGUIDE, Wx::LIGHT_GREY);
651
+
652
+ sci.set_tab_width(2)
653
+ sci.set_use_tabs(false)
654
+ sci.set_tab_indents(true)
655
+ sci.set_back_space_un_indents(true)
656
+ sci.set_indent(2)
657
+ sci.set_edge_column(80)
658
+
659
+ sci.set_lexer(Wx::STC::STC_LEX_RUBY)
660
+ sci.style_clear_all
661
+ sci.style_set_foreground(2, Wx::RED)
662
+ sci.style_set_foreground(3, Wx::GREEN)
663
+ sci.style_set_foreground(5, Wx::BLUE)
664
+ sci.style_set_foreground(6, Wx::BLUE)
665
+ sci.style_set_foreground(7, Wx::BLUE)
666
+ sci.set_key_words(0, "begin break elsif module retry unless end case next return until class ensure nil self when def false not super while alias defined? for or then yield and do if redo true else in rescue undef")
667
+
668
+ sci.set_property("fold", "1")
669
+ sci.set_property("fold.compact", "0")
670
+ sci.set_property("fold.comment", "1")
671
+ sci.set_property("fold.preprocessor", "1")
672
+
673
+ sci.set_margin_width(1, 0)
674
+ sci.set_margin_type(1, Wx::STC::STC_MARGIN_SYMBOL)
675
+ sci.set_margin_mask(1, Wx::STC::STC_MASK_FOLDERS)
676
+ sci.set_margin_width(1, 20)
677
+
678
+ sci.marker_define(Wx::STC::STC_MARKNUM_FOLDER, Wx::STC::STC_MARK_PLUS)
679
+ sci.marker_define(Wx::STC::STC_MARKNUM_FOLDEROPEN, Wx::STC::STC_MARK_MINUS)
680
+ sci.marker_define(Wx::STC::STC_MARKNUM_FOLDEREND, Wx::STC::STC_MARK_EMPTY)
681
+ sci.marker_define(Wx::STC::STC_MARKNUM_FOLDERMIDTAIL, Wx::STC::STC_MARK_EMPTY)
682
+ sci.marker_define(Wx::STC::STC_MARKNUM_FOLDEROPENMID, Wx::STC::STC_MARK_EMPTY)
683
+ sci.marker_define(Wx::STC::STC_MARKNUM_FOLDERSUB, Wx::STC::STC_MARK_EMPTY)
684
+ sci.marker_define(Wx::STC::STC_MARKNUM_FOLDERTAIL, Wx::STC::STC_MARK_EMPTY)
685
+ sci.set_fold_flags(16)
686
+
687
+ sci.set_margin_sensitive(1, 1)
688
+ sci
689
+ end
690
+
691
+ def on_save
692
+ if not FileTest.directory?(File.dirname(modified_filename))
693
+ if not Dir.mkdir(File.dirname(modified_filename))
694
+ Wx::log_message("Unable to create directory 'modified'")
695
+ return
696
+ end
697
+ end
698
+ File.open(modified_filename, "w") { |file|
699
+ file.write(@txt.get_text)
700
+ }
701
+ # FIXME: Reload module we just saved
702
+ end
703
+
704
+ def on_delete
705
+ if File.exists?(modified_filename)
706
+ File.unlink(modified_filename)
707
+ end
708
+ # FIXME: Update state
709
+ end
710
+
711
+ def on_modified
712
+ @save_button.enable(@txt.get_modify)
713
+ end
714
+
715
+ def on_radio_button(event)
716
+ # FIXME: Can't do anything here yet
717
+ end
718
+
719
+ def modified_filename
720
+ File.join(File.dirname(@filename), "modified", File.basename(@filename))
721
+ end
722
+ end
723
+
724
+ class DemoTaskBarIcon < Wx::TaskBarIcon
725
+ # TODO: Need a new_id function like wxPython has
726
+ TBMENU_RESTORE = Wx::ID_HIGHEST + 6000
727
+ TBMENU_CLOSE = Wx::ID_HIGHEST + 6001
728
+ TBMENU_CHANGE = Wx::ID_HIGHEST + 6002
729
+ TBMENU_REMOVE = Wx::ID_HIGHEST + 6003
730
+
731
+ def initialize(frame)
732
+ super()
733
+
734
+ @frame = frame
735
+
736
+ # starting image
737
+ icon = make_icon('wxruby-128x128.png')
738
+ set_icon(icon, 'wxRuby Demo')
739
+ @image_index = 1
740
+
741
+ # events
742
+ evt_taskbar_left_dclick { |evt| on_taskbar_activate(evt) }
743
+
744
+ evt_menu(TBMENU_RESTORE) { |evt| on_taskbar_activate(evt) }
745
+ evt_menu(TBMENU_CLOSE) { @frame.close }
746
+ evt_menu(TBMENU_CHANGE) { |evt| on_taskbar_change(evt) }
747
+ evt_menu(TBMENU_REMOVE) { remove_icon }
748
+ end
749
+
750
+ def create_popup_menu
751
+ # Called by the base class when it needs to popup the menu
752
+ # (the default evt_right_down event). Create and return
753
+ # the menu to display.
754
+ menu = Wx::Menu.new
755
+ menu.append(TBMENU_RESTORE, "Restore wxRuby Demo")
756
+ menu.append(TBMENU_CLOSE, "Close wxRuby Demo")
757
+ menu.append_separator
758
+ menu.append(TBMENU_CHANGE, "Change the TB Icon")
759
+ menu.append(TBMENU_REMOVE, "Remove the TB Icon")
760
+ return menu
761
+ end
762
+
763
+ def make_icon(imgname)
764
+ # Different platforms have different requirements for the
765
+ # taskbar icon size
766
+ filename = File.join(File.dirname(__FILE__), 'icons', imgname)
767
+ img = Wx::Image.new(filename)
768
+ if Wx::PLATFORM == "WXMSW"
769
+ img = img.scale(16, 16)
770
+ elsif Wx::PLATFORM == "WXGTK"
771
+ img = img.scale(22, 22)
772
+ end
773
+ # WXMAC can be any size up to 128x128, so don't scale
774
+ icon = Wx::Icon.new
775
+ icon.copy_from_bitmap(Wx::Bitmap.new(img))
776
+ return icon
777
+ end
778
+
779
+ def on_taskbar_activate(evt)
780
+ @frame.iconize(false)
781
+ @frame.show(true)
782
+ @frame.raise
783
+ end
784
+
785
+ def on_taskbar_change(evt)
786
+ names = ["wxruby-128x128.png", "wxwin16x16.xpm", "smiles.xpm", "mondrian.xpm"]
787
+ name = names[@image_index]
788
+ @image_index += 1
789
+ if @image_index >= names.length
790
+ @image_index = 0
791
+ end
792
+
793
+ icon = make_icon(name)
794
+ set_icon(icon, 'This is a new icon: ' + name)
795
+ end
796
+
797
+ end
798
+
799
+ class DemoApp < Wx::App
800
+ def on_init
801
+ frame = WxRubyDemo.new("WxRuby BIG combined demo",
802
+ Wx::DEFAULT_POSITION,
803
+ Wx::Size.new(750, 550))
804
+
805
+ frame.show(true)
806
+ end
807
+ end
808
+
809
+ demo = DemoApp.new
810
+ demo.run