wxruby3 0.9.0.pre.beta.8

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 (754) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +13 -0
  3. data/CREDITS.md +52 -0
  4. data/LICENSE +21 -0
  5. data/README.md +139 -0
  6. data/bin/wxruby +9 -0
  7. data/ext/mkrf_conf_srcgem.rb +64 -0
  8. data/ext/wxruby3/include/wxruby-runtime.h +104 -0
  9. data/ext/wxruby3/swig/RubyStockObjects.i +62 -0
  10. data/ext/wxruby3/swig/common.i +110 -0
  11. data/ext/wxruby3/swig/custom/rubyprimtypes.swg +225 -0
  12. data/ext/wxruby3/swig/custom/rubytracking.swg +60 -0
  13. data/ext/wxruby3/swig/custom/swig3/rubyrun.swg +456 -0
  14. data/ext/wxruby3/swig/custom/swig4/rubyrun.swg +459 -0
  15. data/ext/wxruby3/swig/mark_free_impl.i +377 -0
  16. data/ext/wxruby3/swig/memory_management.i +142 -0
  17. data/ext/wxruby3/swig/typedefs.i +27 -0
  18. data/ext/wxruby3/swig/wx.i +282 -0
  19. data/ext/wxruby3/swig/wx.rc +19 -0
  20. data/ext/wxruby3/wxruby.ico +0 -0
  21. data/lib/wx/accessors.rb +63 -0
  22. data/lib/wx/aui/auimanager.rb +17 -0
  23. data/lib/wx/aui/auinotebook.rb +9 -0
  24. data/lib/wx/aui/require.rb +9 -0
  25. data/lib/wx/aui.rb +14 -0
  26. data/lib/wx/core/acceleratortable.rb +28 -0
  27. data/lib/wx/core/animation.rb +18 -0
  28. data/lib/wx/core/app.rb +89 -0
  29. data/lib/wx/core/artprovider.rb +31 -0
  30. data/lib/wx/core/bitmap.rb +59 -0
  31. data/lib/wx/core/busycursor.rb +12 -0
  32. data/lib/wx/core/choice.rb +4 -0
  33. data/lib/wx/core/choicedlg.rb +54 -0
  34. data/lib/wx/core/clientdc.rb +13 -0
  35. data/lib/wx/core/clipboard.rb +56 -0
  36. data/lib/wx/core/collapsible_pane.rb +12 -0
  37. data/lib/wx/core/colour.rb +34 -0
  38. data/lib/wx/core/combobox.rb +4 -0
  39. data/lib/wx/core/controlwithitems.rb +10 -0
  40. data/lib/wx/core/data_object.rb +10 -0
  41. data/lib/wx/core/dataformat.rb +26 -0
  42. data/lib/wx/core/dc.rb +68 -0
  43. data/lib/wx/core/dialog.rb +50 -0
  44. data/lib/wx/core/enum.rb +28 -0
  45. data/lib/wx/core/event.rb +16 -0
  46. data/lib/wx/core/evthandler.rb +253 -0
  47. data/lib/wx/core/ext.rb +58 -0
  48. data/lib/wx/core/font.rb +22 -0
  49. data/lib/wx/core/functions.rb +44 -0
  50. data/lib/wx/core/gauge.rb +12 -0
  51. data/lib/wx/core/genericdirctrl.rb +36 -0
  52. data/lib/wx/core/hboxsizer.rb +6 -0
  53. data/lib/wx/core/helpcontroller.rb +5 -0
  54. data/lib/wx/core/helpcontrollerhelpprovider.rb +24 -0
  55. data/lib/wx/core/helpprovider.rb +15 -0
  56. data/lib/wx/core/icon.rb +40 -0
  57. data/lib/wx/core/image.rb +68 -0
  58. data/lib/wx/core/imagelist.rb +3 -0
  59. data/lib/wx/core/listbox.rb +4 -0
  60. data/lib/wx/core/listctrl.rb +33 -0
  61. data/lib/wx/core/locale.rb +73 -0
  62. data/lib/wx/core/log.rb +20 -0
  63. data/lib/wx/core/menu.rb +78 -0
  64. data/lib/wx/core/menu_bar.rb +20 -0
  65. data/lib/wx/core/menuitem.rb +7 -0
  66. data/lib/wx/core/notebook.rb +9 -0
  67. data/lib/wx/core/object.rb +14 -0
  68. data/lib/wx/core/pen_info.rb +11 -0
  69. data/lib/wx/core/platform_info.rb +13 -0
  70. data/lib/wx/core/point.rb +92 -0
  71. data/lib/wx/core/real_point.rb +92 -0
  72. data/lib/wx/core/rect.rb +57 -0
  73. data/lib/wx/core/simplehelpprovider.rb +38 -0
  74. data/lib/wx/core/size.rb +86 -0
  75. data/lib/wx/core/sizer.rb +43 -0
  76. data/lib/wx/core/splash_screen.rb +44 -0
  77. data/lib/wx/core/textctrl.rb +8 -0
  78. data/lib/wx/core/timer.rb +104 -0
  79. data/lib/wx/core/toolbar.rb +37 -0
  80. data/lib/wx/core/toolbartool.rb +4 -0
  81. data/lib/wx/core/treectrl.rb +46 -0
  82. data/lib/wx/core/validator.rb +8 -0
  83. data/lib/wx/core/variant.rb +62 -0
  84. data/lib/wx/core/vboxsizer.rb +6 -0
  85. data/lib/wx/core/window.rb +95 -0
  86. data/lib/wx/core/window_update_locker.rb +12 -0
  87. data/lib/wx/core/xmlresource.rb +56 -0
  88. data/lib/wx/core.rb +61 -0
  89. data/lib/wx/doc/aui/auimanager.rb +12 -0
  90. data/lib/wx/doc/aui/auinotebook.rb +9 -0
  91. data/lib/wx/doc/colour_dialog.rb +15 -0
  92. data/lib/wx/doc/core.rb +11 -0
  93. data/lib/wx/doc/dc.rb +49 -0
  94. data/lib/wx/doc/enum.rb +88 -0
  95. data/lib/wx/doc/evthandler.rb +87 -0
  96. data/lib/wx/doc/extra/00_starting.md +154 -0
  97. data/lib/wx/doc/extra/01_packages.md +179 -0
  98. data/lib/wx/doc/extra/02_lifecycles.md +116 -0
  99. data/lib/wx/doc/extra/03_dialogs.md +57 -0
  100. data/lib/wx/doc/extra/04_enums.md +143 -0
  101. data/lib/wx/doc/extra/05_event-handling.md +166 -0
  102. data/lib/wx/doc/extra/06_geometry.md +56 -0
  103. data/lib/wx/doc/extra/07_colour_and_font.md +52 -0
  104. data/lib/wx/doc/extra/08_extensions.md +144 -0
  105. data/lib/wx/doc/extra/09_exceptions.md +54 -0
  106. data/lib/wx/doc/functions.rb +221 -0
  107. data/lib/wx/doc/gdi_common.rb +181 -0
  108. data/lib/wx/doc/grid/grid.rb +20 -0
  109. data/lib/wx/doc/help_controller.rb +14 -0
  110. data/lib/wx/doc/html/html_help_controller.rb +8 -0
  111. data/lib/wx/doc/pg/events.rb +15 -0
  112. data/lib/wx/doc/pg/pg_property.rb +8 -0
  113. data/lib/wx/doc/pg/pgeditor.rb +21 -0
  114. data/lib/wx/doc/pg/property_grid.rb +48 -0
  115. data/lib/wx/doc/pg/property_grid_interface.rb +64 -0
  116. data/lib/wx/doc/prt/page_setup_dialog.rb +15 -0
  117. data/lib/wx/doc/prt/print_data.rb +9 -0
  118. data/lib/wx/doc/prt/print_dialog.rb +26 -0
  119. data/lib/wx/doc/prt/printer.rb +15 -0
  120. data/lib/wx/doc/rbn/ribbon_bar.rb +9 -0
  121. data/lib/wx/doc/rbn/ribbon_button_bar.rb +9 -0
  122. data/lib/wx/doc/rbn/ribbon_gallery.rb +9 -0
  123. data/lib/wx/doc/rbn/ribbon_tool_bar.rb +9 -0
  124. data/lib/wx/doc/rtc/richtext_printing.rb +14 -0
  125. data/lib/wx/doc/screen_dc.rb +10 -0
  126. data/lib/wx/doc/stock_objects.rb +98 -0
  127. data/lib/wx/doc/stream.rb +38 -0
  128. data/lib/wx/doc/system_settings.rb +29 -0
  129. data/lib/wx/doc/treebook.rb +9 -0
  130. data/lib/wx/doc/variant.rb +163 -0
  131. data/lib/wx/doc/xml_resource.rb +19 -0
  132. data/lib/wx/global_const.rb +84 -0
  133. data/lib/wx/grid/grid.rb +7 -0
  134. data/lib/wx/grid/keyword_defs.rb +10 -0
  135. data/lib/wx/grid/require.rb +9 -0
  136. data/lib/wx/grid.rb +14 -0
  137. data/lib/wx/helpers.rb +65 -0
  138. data/lib/wx/html/htmlhelpcontroller.rb +6 -0
  139. data/lib/wx/html/htmlwindow.rb +19 -0
  140. data/lib/wx/html/keyword_defs.rb +22 -0
  141. data/lib/wx/html/require.rb +10 -0
  142. data/lib/wx/html.rb +15 -0
  143. data/lib/wx/keyword_ctors.rb +226 -0
  144. data/lib/wx/keyword_defs.rb +487 -0
  145. data/lib/wx/pg/events.rb +14 -0
  146. data/lib/wx/pg/keyword_defs.rb +15 -0
  147. data/lib/wx/pg/pg_editor.rb +13 -0
  148. data/lib/wx/pg/pg_properties.rb +24 -0
  149. data/lib/wx/pg/pg_property.rb +27 -0
  150. data/lib/wx/pg/property_grid.rb +71 -0
  151. data/lib/wx/pg/property_grid_interface.rb +46 -0
  152. data/lib/wx/pg/require.rb +12 -0
  153. data/lib/wx/pg.rb +14 -0
  154. data/lib/wx/prt/keyword_defs.rb +8 -0
  155. data/lib/wx/prt/page_setup_dialog.rb +15 -0
  156. data/lib/wx/prt/previewframe.rb +13 -0
  157. data/lib/wx/prt/require.rb +8 -0
  158. data/lib/wx/prt.rb +14 -0
  159. data/lib/wx/rbn/events.rb +4 -0
  160. data/lib/wx/rbn/keyword_defs.rb +43 -0
  161. data/lib/wx/rbn/require.rb +12 -0
  162. data/lib/wx/rbn/ribbon_art_provider.rb +10 -0
  163. data/lib/wx/rbn/ribbon_bar.rb +12 -0
  164. data/lib/wx/rbn/ribbon_button_bar.rb +26 -0
  165. data/lib/wx/rbn/ribbon_control.rb +25 -0
  166. data/lib/wx/rbn/ribbon_gallery.rb +26 -0
  167. data/lib/wx/rbn/ribbon_page.rb +15 -0
  168. data/lib/wx/rbn/ribbon_panel.rb +15 -0
  169. data/lib/wx/rbn/ribbon_tool_bar.rb +26 -0
  170. data/lib/wx/rbn.rb +14 -0
  171. data/lib/wx/rtc/ext.rb +15 -0
  172. data/lib/wx/rtc/keyword_defs.rb +17 -0
  173. data/lib/wx/rtc/require.rb +8 -0
  174. data/lib/wx/rtc.rb +15 -0
  175. data/lib/wx/stc/keyword_defs.rb +8 -0
  176. data/lib/wx/stc/require.rb +7 -0
  177. data/lib/wx/stc.rb +14 -0
  178. data/lib/wx/version.rb +3 -0
  179. data/lib/wx/wxruby/base.rb +87 -0
  180. data/lib/wx/wxruby/cmd/sampler.rb +68 -0
  181. data/lib/wx/wxruby/cmd/test.rb +27 -0
  182. data/lib/wx.rb +14 -0
  183. data/rakelib/build.rake +62 -0
  184. data/rakelib/build.rb +141 -0
  185. data/rakelib/config.rake +48 -0
  186. data/rakelib/configure.rb +131 -0
  187. data/rakelib/doc.rake +21 -0
  188. data/rakelib/doc.rb +35 -0
  189. data/rakelib/install.rake +30 -0
  190. data/rakelib/install.rb +220 -0
  191. data/rakelib/lib/config/cygwin.rb +6 -0
  192. data/rakelib/lib/config/linux.rb +78 -0
  193. data/rakelib/lib/config/macosx.rb +6 -0
  194. data/rakelib/lib/config/mingw.rb +133 -0
  195. data/rakelib/lib/config/netbsd.rb +6 -0
  196. data/rakelib/lib/config/unixish.rb +187 -0
  197. data/rakelib/lib/config.rb +673 -0
  198. data/rakelib/lib/core/include/enum.inc +306 -0
  199. data/rakelib/lib/core/include/funcall.inc +277 -0
  200. data/rakelib/lib/core/include/init.inc +95 -0
  201. data/rakelib/lib/core/mapping.rb +1116 -0
  202. data/rakelib/lib/core/package.rb +634 -0
  203. data/rakelib/lib/core/parameter.rb +222 -0
  204. data/rakelib/lib/core/spec.rb +468 -0
  205. data/rakelib/lib/core/spec_helper.rb +405 -0
  206. data/rakelib/lib/director/about_dialog_info.rb +24 -0
  207. data/rakelib/lib/director/accelerator.rb +88 -0
  208. data/rakelib/lib/director/animation.rb +84 -0
  209. data/rakelib/lib/director/animation_ctrl.rb +24 -0
  210. data/rakelib/lib/director/any_button.rb +34 -0
  211. data/rakelib/lib/director/app.rb +420 -0
  212. data/rakelib/lib/director/art_provider.rb +124 -0
  213. data/rakelib/lib/director/aui_dock_art.rb +23 -0
  214. data/rakelib/lib/director/aui_floating_frame.rb +26 -0
  215. data/rakelib/lib/director/aui_manager.rb +114 -0
  216. data/rakelib/lib/director/aui_manager_event.rb +22 -0
  217. data/rakelib/lib/director/aui_mdi_child_frame.rb +50 -0
  218. data/rakelib/lib/director/aui_mdi_client_window.rb +23 -0
  219. data/rakelib/lib/director/aui_mdi_parent_frame.rb +26 -0
  220. data/rakelib/lib/director/aui_notebook.rb +77 -0
  221. data/rakelib/lib/director/aui_notebook_event.rb +23 -0
  222. data/rakelib/lib/director/aui_pane_info.rb +102 -0
  223. data/rakelib/lib/director/aui_tab_art.rb +47 -0
  224. data/rakelib/lib/director/aui_tab_ctrl.rb +121 -0
  225. data/rakelib/lib/director/aui_toolbar.rb +22 -0
  226. data/rakelib/lib/director/aui_toolbar_art.rb +24 -0
  227. data/rakelib/lib/director/aui_toolbar_event.rb +23 -0
  228. data/rakelib/lib/director/aui_toolbar_item.rb +21 -0
  229. data/rakelib/lib/director/bitmap.rb +87 -0
  230. data/rakelib/lib/director/book_ctrls.rb +104 -0
  231. data/rakelib/lib/director/brush.rb +28 -0
  232. data/rakelib/lib/director/busy_info.rb +71 -0
  233. data/rakelib/lib/director/button.rb +22 -0
  234. data/rakelib/lib/director/calendar_ctrl.rb +98 -0
  235. data/rakelib/lib/director/calendar_date_attr.rb +22 -0
  236. data/rakelib/lib/director/caret.rb +31 -0
  237. data/rakelib/lib/director/check_listbox.rb +33 -0
  238. data/rakelib/lib/director/choice.rb +32 -0
  239. data/rakelib/lib/director/clipboard.rb +37 -0
  240. data/rakelib/lib/director/collapsible_pane.rb +22 -0
  241. data/rakelib/lib/director/collapsible_pane_event.rb +22 -0
  242. data/rakelib/lib/director/colour.rb +64 -0
  243. data/rakelib/lib/director/colour_picker_ctrl.rb +22 -0
  244. data/rakelib/lib/director/combobox.rb +37 -0
  245. data/rakelib/lib/director/control.rb +22 -0
  246. data/rakelib/lib/director/ctrl_with_items.rb +68 -0
  247. data/rakelib/lib/director/cursor.rb +28 -0
  248. data/rakelib/lib/director/data_format.rb +31 -0
  249. data/rakelib/lib/director/data_object.rb +64 -0
  250. data/rakelib/lib/director/date_event.rb +141 -0
  251. data/rakelib/lib/director/date_picker_ctrl.rb +39 -0
  252. data/rakelib/lib/director/dc.rb +52 -0
  253. data/rakelib/lib/director/defs.rb +139 -0
  254. data/rakelib/lib/director/derived_dc.rb +64 -0
  255. data/rakelib/lib/director/dialog.rb +214 -0
  256. data/rakelib/lib/director/dir_filterlist_ctrl.rb +29 -0
  257. data/rakelib/lib/director/dir_picker_ctrl.rb +22 -0
  258. data/rakelib/lib/director/drag_image.rb +20 -0
  259. data/rakelib/lib/director/dragdrop.rb +61 -0
  260. data/rakelib/lib/director/editable_listbox.rb +21 -0
  261. data/rakelib/lib/director/event.rb +171 -0
  262. data/rakelib/lib/director/event_handler.rb +410 -0
  263. data/rakelib/lib/director/events.rb +39 -0
  264. data/rakelib/lib/director/file_picker_ctrl.rb +22 -0
  265. data/rakelib/lib/director/find_dialog_event.rb +22 -0
  266. data/rakelib/lib/director/find_replace_data.rb +20 -0
  267. data/rakelib/lib/director/font.rb +138 -0
  268. data/rakelib/lib/director/font_data.rb +22 -0
  269. data/rakelib/lib/director/font_picker_ctrl.rb +22 -0
  270. data/rakelib/lib/director/frame.rb +74 -0
  271. data/rakelib/lib/director/fs_file.rb +353 -0
  272. data/rakelib/lib/director/functions.rb +284 -0
  273. data/rakelib/lib/director/gdi_object.rb +21 -0
  274. data/rakelib/lib/director/gdicommon.rb +94 -0
  275. data/rakelib/lib/director/generic_dirctrl.rb +24 -0
  276. data/rakelib/lib/director/graphics_context.rb +143 -0
  277. data/rakelib/lib/director/graphics_object.rb +69 -0
  278. data/rakelib/lib/director/grid_cell_attr.rb +53 -0
  279. data/rakelib/lib/director/grid_cell_editor.rb +434 -0
  280. data/rakelib/lib/director/grid_cell_renderer.rb +132 -0
  281. data/rakelib/lib/director/grid_ctrl.rb +390 -0
  282. data/rakelib/lib/director/grid_range_select_event.rb +23 -0
  283. data/rakelib/lib/director/grid_table_base.rb +63 -0
  284. data/rakelib/lib/director/grid_table_message.rb +20 -0
  285. data/rakelib/lib/director/help_controller.rb +75 -0
  286. data/rakelib/lib/director/help_provider.rb +103 -0
  287. data/rakelib/lib/director/html_cell.rb +36 -0
  288. data/rakelib/lib/director/html_easy_printing.rb +45 -0
  289. data/rakelib/lib/director/html_event.rb +24 -0
  290. data/rakelib/lib/director/html_help_data.rb +43 -0
  291. data/rakelib/lib/director/html_help_frame.rb +25 -0
  292. data/rakelib/lib/director/html_listbox.rb +54 -0
  293. data/rakelib/lib/director/html_printout.rb +47 -0
  294. data/rakelib/lib/director/html_window.rb +114 -0
  295. data/rakelib/lib/director/icon.rb +33 -0
  296. data/rakelib/lib/director/image.rb +111 -0
  297. data/rakelib/lib/director/image_list.rb +21 -0
  298. data/rakelib/lib/director/list_ctrl.rb +197 -0
  299. data/rakelib/lib/director/listbox.rb +32 -0
  300. data/rakelib/lib/director/locale.rb +35 -0
  301. data/rakelib/lib/director/log.rb +32 -0
  302. data/rakelib/lib/director/mdi_frame.rb +36 -0
  303. data/rakelib/lib/director/media_ctrl.rb +22 -0
  304. data/rakelib/lib/director/menu.rb +92 -0
  305. data/rakelib/lib/director/menu_bar.rb +28 -0
  306. data/rakelib/lib/director/menu_item.rb +36 -0
  307. data/rakelib/lib/director/mouse_state.rb +21 -0
  308. data/rakelib/lib/director/numeric_property_validator.rb +38 -0
  309. data/rakelib/lib/director/object.rb +32 -0
  310. data/rakelib/lib/director/page_setup_dialog.rb +30 -0
  311. data/rakelib/lib/director/palette.rb +25 -0
  312. data/rakelib/lib/director/panel.rb +22 -0
  313. data/rakelib/lib/director/pen.rb +174 -0
  314. data/rakelib/lib/director/pgarray_editor_dialog.rb +64 -0
  315. data/rakelib/lib/director/pgcell.rb +68 -0
  316. data/rakelib/lib/director/pgeditor.rb +154 -0
  317. data/rakelib/lib/director/pgmulti_button.rb +22 -0
  318. data/rakelib/lib/director/pgproperties.rb +216 -0
  319. data/rakelib/lib/director/pgproperty.rb +207 -0
  320. data/rakelib/lib/director/pgvalidation_info.rb +24 -0
  321. data/rakelib/lib/director/pickerbase.rb +22 -0
  322. data/rakelib/lib/director/platform_info.rb +49 -0
  323. data/rakelib/lib/director/popup_window.rb +23 -0
  324. data/rakelib/lib/director/preview_frame.rb +39 -0
  325. data/rakelib/lib/director/print_data.rb +33 -0
  326. data/rakelib/lib/director/print_dialog.rb +36 -0
  327. data/rakelib/lib/director/printer.rb +61 -0
  328. data/rakelib/lib/director/property_grid.rb +174 -0
  329. data/rakelib/lib/director/property_grid_event.rb +23 -0
  330. data/rakelib/lib/director/property_grid_interface.rb +227 -0
  331. data/rakelib/lib/director/property_grid_manager.rb +90 -0
  332. data/rakelib/lib/director/property_grid_page.rb +76 -0
  333. data/rakelib/lib/director/property_grid_page_state.rb +32 -0
  334. data/rakelib/lib/director/radio_box.rb +39 -0
  335. data/rakelib/lib/director/region.rb +25 -0
  336. data/rakelib/lib/director/ribbon_art_provider.rb +154 -0
  337. data/rakelib/lib/director/ribbon_bar.rb +24 -0
  338. data/rakelib/lib/director/ribbon_bar_event.rb +22 -0
  339. data/rakelib/lib/director/ribbon_button_bar.rb +37 -0
  340. data/rakelib/lib/director/ribbon_button_bar_event.rb +40 -0
  341. data/rakelib/lib/director/ribbon_ctrl.rb +28 -0
  342. data/rakelib/lib/director/ribbon_gallery.rb +33 -0
  343. data/rakelib/lib/director/ribbon_gallery_event.rb +27 -0
  344. data/rakelib/lib/director/ribbon_page.rb +21 -0
  345. data/rakelib/lib/director/ribbon_panel.rb +22 -0
  346. data/rakelib/lib/director/ribbon_panel_event.rb +22 -0
  347. data/rakelib/lib/director/ribbon_tool_bar.rb +146 -0
  348. data/rakelib/lib/director/ribbon_tool_bar_event.rb +22 -0
  349. data/rakelib/lib/director/richtext_buffer.rb +46 -0
  350. data/rakelib/lib/director/richtext_ctrl.rb +63 -0
  351. data/rakelib/lib/director/richtext_event.rb +25 -0
  352. data/rakelib/lib/director/richtext_file_handler.rb +42 -0
  353. data/rakelib/lib/director/richtext_header_footer_data.rb +21 -0
  354. data/rakelib/lib/director/richtext_printing.rb +44 -0
  355. data/rakelib/lib/director/sash_layout_event.rb +22 -0
  356. data/rakelib/lib/director/sash_layout_window.rb +23 -0
  357. data/rakelib/lib/director/sash_window.rb +23 -0
  358. data/rakelib/lib/director/scrolled_t.rb +67 -0
  359. data/rakelib/lib/director/sizer.rb +67 -0
  360. data/rakelib/lib/director/sizer_item.rb +35 -0
  361. data/rakelib/lib/director/splash_screen.rb +24 -0
  362. data/rakelib/lib/director/splitter_event.rb +28 -0
  363. data/rakelib/lib/director/splitter_window.rb +25 -0
  364. data/rakelib/lib/director/static_bitmap.rb +24 -0
  365. data/rakelib/lib/director/static_box.rb +26 -0
  366. data/rakelib/lib/director/status_bar.rb +86 -0
  367. data/rakelib/lib/director/styled_text_ctrl.rb +82 -0
  368. data/rakelib/lib/director/styled_text_event.rb +25 -0
  369. data/rakelib/lib/director/system_options.rb +22 -0
  370. data/rakelib/lib/director/system_settings.rb +47 -0
  371. data/rakelib/lib/director/task_bar_icon.rb +77 -0
  372. data/rakelib/lib/director/text_attr.rb +22 -0
  373. data/rakelib/lib/director/text_entry.rb +26 -0
  374. data/rakelib/lib/director/text_validator.rb +47 -0
  375. data/rakelib/lib/director/textctrl.rb +80 -0
  376. data/rakelib/lib/director/time_picker_ctrl.rb +24 -0
  377. data/rakelib/lib/director/timer.rb +37 -0
  378. data/rakelib/lib/director/tip_provider.rb +44 -0
  379. data/rakelib/lib/director/toggle_button.rb +22 -0
  380. data/rakelib/lib/director/tool_bar.rb +62 -0
  381. data/rakelib/lib/director/tool_tip.rb +20 -0
  382. data/rakelib/lib/director/top_level_window.rb +105 -0
  383. data/rakelib/lib/director/tree_ctrl.rb +411 -0
  384. data/rakelib/lib/director/tree_event.rb +78 -0
  385. data/rakelib/lib/director/utils.rb +55 -0
  386. data/rakelib/lib/director/validator.rb +44 -0
  387. data/rakelib/lib/director/variant.rb +549 -0
  388. data/rakelib/lib/director/vlistbox.rb +46 -0
  389. data/rakelib/lib/director/vscrolled_window.rb +59 -0
  390. data/rakelib/lib/director/window.rb +296 -0
  391. data/rakelib/lib/director/window_disabler.rb +44 -0
  392. data/rakelib/lib/director/with_images.rb +65 -0
  393. data/rakelib/lib/director/wizard_page.rb +35 -0
  394. data/rakelib/lib/director/xml_node.rb +48 -0
  395. data/rakelib/lib/director/xml_resource.rb +141 -0
  396. data/rakelib/lib/director.rb +487 -0
  397. data/rakelib/lib/ext/enum_chain.rb +22 -0
  398. data/rakelib/lib/extractor/class.rb +384 -0
  399. data/rakelib/lib/extractor/enum.rb +94 -0
  400. data/rakelib/lib/extractor/function.rb +377 -0
  401. data/rakelib/lib/extractor/module.rb +140 -0
  402. data/rakelib/lib/extractor/variable.rb +145 -0
  403. data/rakelib/lib/extractor.rb +438 -0
  404. data/rakelib/lib/generate/analyzer.rb +593 -0
  405. data/rakelib/lib/generate/base.rb +37 -0
  406. data/rakelib/lib/generate/doc.rb +833 -0
  407. data/rakelib/lib/generate/interface.rb +742 -0
  408. data/rakelib/lib/generate/rakedep.rb +130 -0
  409. data/rakelib/lib/specs/interfaces.rb +324 -0
  410. data/rakelib/lib/streams.rb +206 -0
  411. data/rakelib/lib/swig_runner.rb +682 -0
  412. data/rakelib/lib/typemap/array_int_selections.rb +57 -0
  413. data/rakelib/lib/typemap/common.rb +613 -0
  414. data/rakelib/lib/typemap/data_format.rb +76 -0
  415. data/rakelib/lib/typemap/data_object_data.rb +99 -0
  416. data/rakelib/lib/typemap/datetime.rb +64 -0
  417. data/rakelib/lib/typemap/grid_client_data.rb +55 -0
  418. data/rakelib/lib/typemap/grid_coords.rb +65 -0
  419. data/rakelib/lib/typemap/html_cell.rb +57 -0
  420. data/rakelib/lib/typemap/io_streams.rb +162 -0
  421. data/rakelib/lib/typemap/pgcell.rb +35 -0
  422. data/rakelib/lib/typemap/pgeditor.rb +35 -0
  423. data/rakelib/lib/typemap/pgprop_arg.rb +74 -0
  424. data/rakelib/lib/typemap/pgproperty.rb +35 -0
  425. data/rakelib/lib/typemap/points_list.rb +124 -0
  426. data/rakelib/lib/typemap/richtext.rb +67 -0
  427. data/rakelib/lib/typemap/tree_itemid.rb +49 -0
  428. data/rakelib/lib/util/string.rb +141 -0
  429. data/rakelib/prepost.rake +91 -0
  430. data/rakelib/prepost.rb +26 -0
  431. data/rakelib/run.rake +49 -0
  432. data/rakelib/yard/templates/default/fulldoc/html/css/wxruby3.css +7 -0
  433. data/rakelib/yard/templates/default/layout/html/setup.rb +5 -0
  434. data/rakelib/yard/yard/relative_markdown_links/version.rb +8 -0
  435. data/rakelib/yard/yard/relative_markdown_links.rb +39 -0
  436. data/rakelib/yard/yard-custom-templates.rb +2 -0
  437. data/rakelib/yard/yard-relative_markdown_links.rb +4 -0
  438. data/samples/art/wxruby-128x128.png +0 -0
  439. data/samples/art/wxruby-256x256.png +0 -0
  440. data/samples/art/wxruby-64x64.png +0 -0
  441. data/samples/art/wxruby.ico +0 -0
  442. data/samples/art/wxruby.png +0 -0
  443. data/samples/aui/aui.rb +1321 -0
  444. data/samples/aui/tn_aui.png +0 -0
  445. data/samples/bigdemo/About.rbw +39 -0
  446. data/samples/bigdemo/ColorPanel.rbw +23 -0
  447. data/samples/bigdemo/GridSimple.rbw +78 -0
  448. data/samples/bigdemo/MDIDemo.rbw +57 -0
  449. data/samples/bigdemo/PopupMenu.rbw +146 -0
  450. data/samples/bigdemo/ShapedWindow.rbw +128 -0
  451. data/samples/bigdemo/Sizers.rbw +541 -0
  452. data/samples/bigdemo/bigdemo.rb +810 -0
  453. data/samples/bigdemo/demoTemplate.rbw +33 -0
  454. data/samples/bigdemo/helpfile.htb +0 -0
  455. data/samples/bigdemo/icons/Test 015.jpg +0 -0
  456. data/samples/bigdemo/icons/Test 015.png +0 -0
  457. data/samples/bigdemo/icons/choice.bmp +0 -0
  458. data/samples/bigdemo/icons/choice.xpm +27 -0
  459. data/samples/bigdemo/icons/combo.bmp +0 -0
  460. data/samples/bigdemo/icons/combo.xpm +27 -0
  461. data/samples/bigdemo/icons/copy.xpm +25 -0
  462. data/samples/bigdemo/icons/cut.xpm +24 -0
  463. data/samples/bigdemo/icons/gauge.bmp +0 -0
  464. data/samples/bigdemo/icons/gauge.xpm +27 -0
  465. data/samples/bigdemo/icons/help.xpm +25 -0
  466. data/samples/bigdemo/icons/list.bmp +0 -0
  467. data/samples/bigdemo/icons/list.xpm +27 -0
  468. data/samples/bigdemo/icons/mondrian.ico +0 -0
  469. data/samples/bigdemo/icons/mondrian.xpm +44 -0
  470. data/samples/bigdemo/icons/new.xpm +24 -0
  471. data/samples/bigdemo/icons/ogl.ico +0 -0
  472. data/samples/bigdemo/icons/ogl.xpm +45 -0
  473. data/samples/bigdemo/icons/open.xpm +26 -0
  474. data/samples/bigdemo/icons/paste.bmp +0 -0
  475. data/samples/bigdemo/icons/paste.xpm +38 -0
  476. data/samples/bigdemo/icons/pointy.png +0 -0
  477. data/samples/bigdemo/icons/preview.xpm +26 -0
  478. data/samples/bigdemo/icons/print.xpm +26 -0
  479. data/samples/bigdemo/icons/radio.bmp +0 -0
  480. data/samples/bigdemo/icons/radio.xpm +27 -0
  481. data/samples/bigdemo/icons/robert.xpm +415 -0
  482. data/samples/bigdemo/icons/sashtest.ico +0 -0
  483. data/samples/bigdemo/icons/save.xpm +25 -0
  484. data/samples/bigdemo/icons/smiles.bmp +0 -0
  485. data/samples/bigdemo/icons/smiles.xpm +39 -0
  486. data/samples/bigdemo/icons/smiley.ico +0 -0
  487. data/samples/bigdemo/icons/smiley.xpm +42 -0
  488. data/samples/bigdemo/icons/stattext.xpm +24 -0
  489. data/samples/bigdemo/icons/test2.bmp +0 -0
  490. data/samples/bigdemo/icons/test2.png +0 -0
  491. data/samples/bigdemo/icons/test2.xpm +79 -0
  492. data/samples/bigdemo/icons/text.bmp +0 -0
  493. data/samples/bigdemo/icons/text.xpm +27 -0
  494. data/samples/bigdemo/icons/tog1.bmp +0 -0
  495. data/samples/bigdemo/icons/tog1.xpm +38 -0
  496. data/samples/bigdemo/icons/tog2.bmp +0 -0
  497. data/samples/bigdemo/icons/tog2.xpm +38 -0
  498. data/samples/bigdemo/icons/wxruby-128x128.png +0 -0
  499. data/samples/bigdemo/icons/wxwin.ico +0 -0
  500. data/samples/bigdemo/icons/wxwin16x16.png +0 -0
  501. data/samples/bigdemo/icons/wxwin16x16.xpm +25 -0
  502. data/samples/bigdemo/icons/wxwin32x32.png +0 -0
  503. data/samples/bigdemo/icons/wxwin48x48.png +0 -0
  504. data/samples/bigdemo/run.rb +91 -0
  505. data/samples/bigdemo/tips.txt +7 -0
  506. data/samples/bigdemo/utils.rb +12 -0
  507. data/samples/bigdemo/wxArtProvider.rbw +281 -0
  508. data/samples/bigdemo/wxBitmapButton.rbw +65 -0
  509. data/samples/bigdemo/wxButton.rbw +64 -0
  510. data/samples/bigdemo/wxCalendarCtrl.rbw +59 -0
  511. data/samples/bigdemo/wxCheckBox.rbw +50 -0
  512. data/samples/bigdemo/wxCheckListBox.rbw +65 -0
  513. data/samples/bigdemo/wxChoice.rbw +47 -0
  514. data/samples/bigdemo/wxChoicebook.rbw +78 -0
  515. data/samples/bigdemo/wxColourDialog.rbw +33 -0
  516. data/samples/bigdemo/wxComboBox.rbw +77 -0
  517. data/samples/bigdemo/wxCursor.rbw +136 -0
  518. data/samples/bigdemo/wxDialog.rbw +74 -0
  519. data/samples/bigdemo/wxDirDialog.rbw +29 -0
  520. data/samples/bigdemo/wxDragImage.rbw +70 -0
  521. data/samples/bigdemo/wxFileDialog.rbw +37 -0
  522. data/samples/bigdemo/wxFileDialog_Save.rbw +35 -0
  523. data/samples/bigdemo/wxFindReplaceDialog.rbw +82 -0
  524. data/samples/bigdemo/wxFontDialog.rbw +200 -0
  525. data/samples/bigdemo/wxFrame.rbw +53 -0
  526. data/samples/bigdemo/wxGauge.rbw +65 -0
  527. data/samples/bigdemo/wxGenericDirCtrl.rbw +74 -0
  528. data/samples/bigdemo/wxGrid.rbw +66 -0
  529. data/samples/bigdemo/wxHtmlHelpController.rbw +52 -0
  530. data/samples/bigdemo/wxListBox.rbw +140 -0
  531. data/samples/bigdemo/wxListCtrl_virtual.rbw +112 -0
  532. data/samples/bigdemo/wxMDIWindows.rbw +50 -0
  533. data/samples/bigdemo/wxMenu.rbw +247 -0
  534. data/samples/bigdemo/wxMessageDialog.rbw +27 -0
  535. data/samples/bigdemo/wxMiniFrame.rbw +70 -0
  536. data/samples/bigdemo/wxMultipleChoiceDialog.rbw +29 -0
  537. data/samples/bigdemo/wxNotebook.rbw +136 -0
  538. data/samples/bigdemo/wxProgressDialog.rbw +43 -0
  539. data/samples/bigdemo/wxRadioBox.rbw +72 -0
  540. data/samples/bigdemo/wxRadioButton.rbw +125 -0
  541. data/samples/bigdemo/wxSashWindow.rbw +141 -0
  542. data/samples/bigdemo/wxScrolledMessageDialog.rbw +57 -0
  543. data/samples/bigdemo/wxScrolledWindow.rbw +199 -0
  544. data/samples/bigdemo/wxSingleChoiceDialog.rbw +33 -0
  545. data/samples/bigdemo/wxSlider.rbw +42 -0
  546. data/samples/bigdemo/wxSpinButton.rbw +50 -0
  547. data/samples/bigdemo/wxSpinCtrl.rbw +51 -0
  548. data/samples/bigdemo/wxSplitterWindow.rbw +63 -0
  549. data/samples/bigdemo/wxStaticBitmap.rbw +47 -0
  550. data/samples/bigdemo/wxStaticText.rbw +55 -0
  551. data/samples/bigdemo/wxStatusBar.rbw +126 -0
  552. data/samples/bigdemo/wxTextCtrl.rbw +149 -0
  553. data/samples/bigdemo/wxTextEntryDialog.rbw +31 -0
  554. data/samples/bigdemo/wxToggleButton.rbw +49 -0
  555. data/samples/bigdemo/wxToolBar.rbw +131 -0
  556. data/samples/bigdemo/wxTreeCtrl.rbw +191 -0
  557. data/samples/calendar/calendar.rb +363 -0
  558. data/samples/calendar/tn_calendar.png +0 -0
  559. data/samples/caret/caret.rb +293 -0
  560. data/samples/caret/mondrian.xpm +44 -0
  561. data/samples/caret/tn_caret.png +0 -0
  562. data/samples/controls/books.rb +183 -0
  563. data/samples/controls/choice.xpm +27 -0
  564. data/samples/controls/combo.xpm +27 -0
  565. data/samples/controls/controls.rb +1143 -0
  566. data/samples/controls/gauge.xpm +27 -0
  567. data/samples/controls/get_item_sample.rb +117 -0
  568. data/samples/controls/list.xpm +27 -0
  569. data/samples/controls/mondrian.ico +0 -0
  570. data/samples/controls/mondrian.xpm +44 -0
  571. data/samples/controls/radio.xpm +27 -0
  572. data/samples/controls/stattext.xpm +24 -0
  573. data/samples/controls/test2.bmp +0 -0
  574. data/samples/controls/text.xpm +27 -0
  575. data/samples/controls/tn_books.png +0 -0
  576. data/samples/controls/tn_controls.png +0 -0
  577. data/samples/controls/tn_get_item_sample.png +0 -0
  578. data/samples/dialogs/dialogs.rb +879 -0
  579. data/samples/dialogs/tips.txt +18 -0
  580. data/samples/dialogs/tn_dialogs.png +0 -0
  581. data/samples/dialogs/tn_wizard.png +0 -0
  582. data/samples/dialogs/wizard.rb +89 -0
  583. data/samples/dragdrop/dragdrop.rb +200 -0
  584. data/samples/dragdrop/tn_dragdrop.png +0 -0
  585. data/samples/drawing/SVGlogo24.xpm +310 -0
  586. data/samples/drawing/bitmap.rb +76 -0
  587. data/samples/drawing/bitmap_image.rb +131 -0
  588. data/samples/drawing/graphics_drawing.rb +257 -0
  589. data/samples/drawing/maths_images.rb +327 -0
  590. data/samples/drawing/rmagic_bitmap_image.rb +139 -0
  591. data/samples/drawing/ruby-logo.jpg +0 -0
  592. data/samples/drawing/svgtest.rb +373 -0
  593. data/samples/drawing/tn_bitmap.png +0 -0
  594. data/samples/drawing/tn_bitmap_image.png +0 -0
  595. data/samples/drawing/tn_graphics_drawing.png +0 -0
  596. data/samples/drawing/tn_maths_images.png +0 -0
  597. data/samples/drawing/tn_rmagic_bitmap_image.png +0 -0
  598. data/samples/drawing/tn_svgtest.png +0 -0
  599. data/samples/etc/choice.rb +82 -0
  600. data/samples/etc/miniframe.rb +92 -0
  601. data/samples/etc/sash.rb +140 -0
  602. data/samples/etc/scrollwin.rb +120 -0
  603. data/samples/etc/system_settings.rb +263 -0
  604. data/samples/etc/tn_choice.png +0 -0
  605. data/samples/etc/tn_miniframe.png +0 -0
  606. data/samples/etc/tn_sash.png +0 -0
  607. data/samples/etc/tn_scrollwin.png +0 -0
  608. data/samples/etc/tn_system_settings.png +0 -0
  609. data/samples/event/activation.rb +129 -0
  610. data/samples/event/event.rb +220 -0
  611. data/samples/event/threaded.rb +141 -0
  612. data/samples/event/tn_activation.png +0 -0
  613. data/samples/event/tn_event.png +0 -0
  614. data/samples/event/tn_threaded.png +0 -0
  615. data/samples/event/tn_update_ui_event.png +0 -0
  616. data/samples/event/update_ui_event.rb +91 -0
  617. data/samples/grid/grid.rb +224 -0
  618. data/samples/grid/gridtablebase.rb +178 -0
  619. data/samples/grid/tn_grid.png +0 -0
  620. data/samples/grid/tn_gridtablebase.png +0 -0
  621. data/samples/html/8859_2.htm +14 -0
  622. data/samples/html/cp1250.htm +19 -0
  623. data/samples/html/foo.png +0 -0
  624. data/samples/html/html.rb +278 -0
  625. data/samples/html/i18n.gif +0 -0
  626. data/samples/html/imagemap.htm +20 -0
  627. data/samples/html/imagemap.png +0 -0
  628. data/samples/html/listtest.htm +28 -0
  629. data/samples/html/pic.png +0 -0
  630. data/samples/html/pic2.bmp +0 -0
  631. data/samples/html/regres.htm +20 -0
  632. data/samples/html/subsup.html +42 -0
  633. data/samples/html/tables.htm +255 -0
  634. data/samples/html/test.htm +375 -0
  635. data/samples/html/tn_html.png +0 -0
  636. data/samples/mdi/mdi.rb +118 -0
  637. data/samples/mdi/tn_mdi.png +0 -0
  638. data/samples/minimal/minimal.rb +95 -0
  639. data/samples/minimal/mondrian.ico +0 -0
  640. data/samples/minimal/mondrian.png +0 -0
  641. data/samples/minimal/nothing.rb +38 -0
  642. data/samples/minimal/tn_minimal.png +0 -0
  643. data/samples/minimal/tn_nothing.png +0 -0
  644. data/samples/printing/mondrian.ico +0 -0
  645. data/samples/printing/mondrian.xpm +44 -0
  646. data/samples/printing/printing.rb +499 -0
  647. data/samples/printing/printing2.rb +251 -0
  648. data/samples/printing/sample-text.txt +213 -0
  649. data/samples/printing/tn_printing.png +0 -0
  650. data/samples/printing/tn_printing2.png +0 -0
  651. data/samples/propgrid/propgrid.rb +2711 -0
  652. data/samples/propgrid/propgrid_minimal.rb +107 -0
  653. data/samples/propgrid/sample_props.rb +434 -0
  654. data/samples/propgrid/tn_propgrid.png +0 -0
  655. data/samples/propgrid/tn_propgrid_minimal.png +0 -0
  656. data/samples/ribbon/align_center.xpm +21 -0
  657. data/samples/ribbon/align_left.xpm +21 -0
  658. data/samples/ribbon/align_right.xpm +21 -0
  659. data/samples/ribbon/aui_style.xpm +53 -0
  660. data/samples/ribbon/auto_crop_selection.xpm +55 -0
  661. data/samples/ribbon/auto_crop_selection_small.xpm +33 -0
  662. data/samples/ribbon/circle.xpm +38 -0
  663. data/samples/ribbon/circle_small.xpm +22 -0
  664. data/samples/ribbon/colours.xpm +25 -0
  665. data/samples/ribbon/cross.xpm +38 -0
  666. data/samples/ribbon/empty.xpm +23 -0
  667. data/samples/ribbon/expand_selection_h.xpm +46 -0
  668. data/samples/ribbon/expand_selection_v.xpm +46 -0
  669. data/samples/ribbon/eye.xpm +26 -0
  670. data/samples/ribbon/hexagon.xpm +38 -0
  671. data/samples/ribbon/msw_style.xpm +65 -0
  672. data/samples/ribbon/position_left.xpm +22 -0
  673. data/samples/ribbon/position_top.xpm +22 -0
  674. data/samples/ribbon/ribbon.rb +900 -0
  675. data/samples/ribbon/ribbon.xpm +54 -0
  676. data/samples/ribbon/selection_panel.xpm +23 -0
  677. data/samples/ribbon/square.xpm +38 -0
  678. data/samples/ribbon/tn_ribbon.png +0 -0
  679. data/samples/ribbon/triangle.xpm +38 -0
  680. data/samples/sample.xpm +475 -0
  681. data/samples/sampler/back.xpm +21 -0
  682. data/samples/sampler/copy.xpm +44 -0
  683. data/samples/sampler/cut.xpm +46 -0
  684. data/samples/sampler/editor.rb +560 -0
  685. data/samples/sampler/ext.rb +51 -0
  686. data/samples/sampler/filesave.xpm +42 -0
  687. data/samples/sampler/find.xpm +62 -0
  688. data/samples/sampler/findrepl.xpm +63 -0
  689. data/samples/sampler/forward.xpm +21 -0
  690. data/samples/sampler/paste.xpm +46 -0
  691. data/samples/sampler/play.xpm +24 -0
  692. data/samples/sampler/redo.xpm +58 -0
  693. data/samples/sampler/sample.rb +347 -0
  694. data/samples/sampler/stc_editor.rb +321 -0
  695. data/samples/sampler/txt_editor.rb +130 -0
  696. data/samples/sampler/undo.xpm +58 -0
  697. data/samples/sampler.rb +394 -0
  698. data/samples/splash/mobile.xpm +1835 -0
  699. data/samples/splash/splash.png +0 -0
  700. data/samples/splash/splash.rb +164 -0
  701. data/samples/splash/tn_splash.png +0 -0
  702. data/samples/text/document-open.png +0 -0
  703. data/samples/text/document-save.png +0 -0
  704. data/samples/text/edit-copy.png +0 -0
  705. data/samples/text/edit-cut.png +0 -0
  706. data/samples/text/edit-paste.png +0 -0
  707. data/samples/text/edit-redo.png +0 -0
  708. data/samples/text/edit-undo.png +0 -0
  709. data/samples/text/format-text-bold.png +0 -0
  710. data/samples/text/format-text-italic.png +0 -0
  711. data/samples/text/format-text-underline.png +0 -0
  712. data/samples/text/mondrian.ico +0 -0
  713. data/samples/text/mondrian.xpm +44 -0
  714. data/samples/text/preferences-desktop-font.png +0 -0
  715. data/samples/text/rich_textctrl.rb +326 -0
  716. data/samples/text/scintilla.rb +179 -0
  717. data/samples/text/textctrl.rb +124 -0
  718. data/samples/text/tn_rich_textctrl.png +0 -0
  719. data/samples/text/tn_scintilla.png +0 -0
  720. data/samples/text/tn_textctrl.png +0 -0
  721. data/samples/text/tn_unicode.png +0 -0
  722. data/samples/text/unicode.rb +238 -0
  723. data/samples/text/utf8.txt +15 -0
  724. data/samples/treectrl/checked.xpm +54 -0
  725. data/samples/treectrl/icon1.xpm +79 -0
  726. data/samples/treectrl/icon2.xpm +53 -0
  727. data/samples/treectrl/icon3.xpm +79 -0
  728. data/samples/treectrl/icon4.xpm +43 -0
  729. data/samples/treectrl/icon5.xpm +79 -0
  730. data/samples/treectrl/state1.xpm +145 -0
  731. data/samples/treectrl/state2.xpm +144 -0
  732. data/samples/treectrl/state3.xpm +142 -0
  733. data/samples/treectrl/state4.xpm +145 -0
  734. data/samples/treectrl/state5.xpm +85 -0
  735. data/samples/treectrl/tn_treectrl.png +0 -0
  736. data/samples/treectrl/treectrl.rb +1720 -0
  737. data/samples/treectrl/unchecked.xpm +30 -0
  738. data/samples/xrc/custom_dialog.xrc +46 -0
  739. data/samples/xrc/custom_xrc_sample.rb +84 -0
  740. data/samples/xrc/samples.xrc +46 -0
  741. data/samples/xrc/tn_xrc_sample.png +0 -0
  742. data/samples/xrc/xrc_sample.rb +86 -0
  743. data/tests/test_basic.rb +20 -0
  744. data/tests/test_clipboard.rb +241 -0
  745. data/tests/test_dialog.rb +28 -0
  746. data/tests/test_event_handling.rb +103 -0
  747. data/tests/test_events.rb +45 -0
  748. data/tests/test_geometry.rb +141 -0
  749. data/tests/test_intl.rb +107 -0
  750. data/tests/test_item_data.rb +120 -0
  751. data/tests/test_variant.rb +151 -0
  752. data/tests/testapp.rb +40 -0
  753. data/tests/testapp_noframe.rb +28 -0
  754. metadata +874 -0
@@ -0,0 +1,216 @@
1
+ ###
2
+ # wxRuby3 wxWidgets interface director
3
+ # Copyright (c) M.J.N. Corino, The Netherlands
4
+ ###
5
+
6
+ require_relative './pgproperty'
7
+
8
+ module WXRuby3
9
+
10
+ class Director
11
+
12
+ class PGProperties < PGProperty
13
+
14
+ include Typemap::DateTime
15
+
16
+ def setup
17
+ spec.items.replace %w[
18
+ wxBoolProperty wxDateProperty wxFlagsProperty wxStringProperty wxPropertyCategory
19
+ wxEditorDialogProperty wxArrayStringProperty wxDirProperty wxFileProperty
20
+ wxImageFileProperty wxFontProperty wxLongStringProperty wxMultiChoiceProperty
21
+ wxNumericProperty wxIntProperty wxFloatProperty wxUIntProperty
22
+ wxEnumProperty wxCursorProperty wxEditEnumProperty wxSystemColourProperty wxColourProperty wxColourPropertyValue
23
+ ]
24
+ super
25
+ spec.ignore 'wxEnumProperty::wxEnumProperty(const wxString &, const wxString &, const wxChar *const *, const long *, int)',
26
+ 'wxEnumProperty::wxEnumProperty(const wxString &, const wxString &, const wxChar *const *, const long *, wxPGChoices *, int)'
27
+ spec.ignore 'wxEditEnumProperty::wxEditEnumProperty(const wxString &, const wxString &, const wxChar *const *, const long *, const wxString&)',
28
+ 'wxEditEnumProperty::wxEditEnumProperty(const wxString &, const wxString &, const wxChar *const *, const long *, wxPGChoices *, const wxString&)'
29
+ spec.gc_as_temporary 'wxColourPropertyValue'
30
+ spec.regard 'wxColourPropertyValue::m_type',
31
+ 'wxColourPropertyValue::m_colour'
32
+ spec.regard 'wxSystemColourProperty::Init',
33
+ 'wxSystemColourProperty::DoTranslateVal',
34
+ 'wxSystemColourProperty::ColToInd',
35
+ 'wxColourProperty::DoTranslateVal'
36
+ spec.rename_for_ruby 'type_'=> 'wxColourPropertyValue::m_type',
37
+ 'colour_' => 'wxColourPropertyValue::m_colour'
38
+ spec.regard 'wxNumericProperty::wxNumericProperty'
39
+ spec.regard 'wxMultiChoiceProperty::GenerateValueAsString',
40
+ 'wxMultiChoiceProperty::GetValueAsIndices'
41
+ spec.regard 'wxNumericProperty::m_minVal',
42
+ 'wxNumericProperty::m_maxVal',
43
+ 'wxNumericProperty::m_spinMotion',
44
+ 'wxNumericProperty::m_spinStep',
45
+ 'wxNumericProperty::m_spinWrap',
46
+ 'wxEditorDialogProperty::m_dlgTitle',
47
+ 'wxEditorDialogProperty::m_dlgStyle',
48
+ 'wxEnumProperty::GetIndex',
49
+ 'wxEnumProperty::SetIndex',
50
+ 'wxFileProperty::m_wildcard',
51
+ 'wxFileProperty::m_basePath',
52
+ 'wxFileProperty::m_initialPath',
53
+ 'wxFileProperty::m_indFilter',
54
+ 'wxArrayStringProperty::m_display',
55
+ 'wxArrayStringProperty::m_delimiter',
56
+ 'wxArrayStringProperty::m_customBtnText',
57
+ 'wxMultiChoiceProperty::m_display',
58
+ 'wxMultiChoiceProperty::m_userStringMode',
59
+ 'wxFloatProperty::m_precision',
60
+ 'wxUIntProperty::m_base',
61
+ 'wxUIntProperty::m_realBase',
62
+ 'wxUIntProperty::m_prefix',
63
+ 'wxDateProperty::m_format',
64
+ 'wxDateProperty::m_dpStyle'
65
+ if Config.instance.wx_version >= '3.3.0'
66
+ # currently missing from interface docs
67
+ spec.extend_interface 'wxEnumProperty',
68
+ 'bool ValueFromString_(wxVariant& value, int* pIndex, const wxString& text,int argFlags) const',
69
+ 'bool ValueFromInt_(wxVariant& value, int* pIndex, int intVal, int argFlags) const',
70
+ visibility: 'protected'
71
+ else
72
+ spec.regard 'wxEnumProperty::ValueFromString_',
73
+ 'wxEnumProperty::ValueFromInt_'
74
+ end
75
+ spec.rename_for_ruby 'min_val_' => 'wxNumericProperty::m_minVal',
76
+ 'max_val_' => 'wxNumericProperty::m_maxVal',
77
+ 'spin_motion_' => 'wxNumericProperty::m_spinMotion',
78
+ 'spin_step_' => 'wxNumericProperty::m_spinStep',
79
+ 'spin_wrap_' => 'wxNumericProperty::m_spinWrap',
80
+ 'dlg_title_' => 'wxEditorDialogProperty::m_dlgTitle',
81
+ 'dlg_style_' => 'wxEditorDialogProperty::m_dlgStyle',
82
+ 'display_' => %w[wxArrayStringProperty::m_display wxMultiChoiceProperty::m_display],
83
+ 'delimiter_' => 'wxArrayStringProperty::m_delimiter',
84
+ 'custom_btn_text_' => 'wxArrayStringProperty::m_customBtnText',
85
+ 'user_string_mode_' => 'wxMultiChoiceProperty::m_userStringMode',
86
+ 'precision_' => 'wxFloatProperty::m_precision',
87
+ 'base_' => 'wxUIntProperty::m_base',
88
+ 'real_base_' => 'wxUIntProperty::m_realBase',
89
+ 'prefix_' => 'wxUIntProperty::m_prefix',
90
+ 'format_' => 'wxDateProperty::m_format',
91
+ 'dp_style_' => 'wxDateProperty::m_dpStyle'
92
+ # solve masking overload
93
+ spec.rename_for_ruby 'get_item_label' => 'wxFlagsProperty::GetLabel(size_t) const'
94
+ # make sure the derived Numeric property classes provide the protected accessors too
95
+ %w[wxIntProperty wxFloatProperty wxUIntProperty].each do |kls|
96
+ spec.extend_interface kls,
97
+ 'wxVariant m_minVal',
98
+ 'wxVariant m_maxVal',
99
+ 'bool m_spinMotion',
100
+ 'wxVariant m_spinStep',
101
+ 'bool m_spinWrap',
102
+ visibility: 'protected'
103
+ spec.rename_for_ruby 'min_val_' => "#{kls}::m_minVal",
104
+ 'max_val_' => "#{kls}::m_maxVal",
105
+ 'spin_motion_' => "#{kls}::m_spinMotion",
106
+ 'spin_step_' => "#{kls}::m_spinStep",
107
+ 'spin_wrap_' => "#{kls}::m_spinWrap"
108
+ end
109
+ # make sure the derived Enum property classes provide the protected accessors too
110
+ %w[wxCursorProperty wxEditEnumProperty wxSystemColourProperty wxColourProperty].each do |kls|
111
+ if Config.instance.wx_version >= '3.3.0'
112
+ # currently missing from interface docs
113
+ spec.extend_interface kls,
114
+ 'int GetIndex() const',
115
+ 'void SetIndex(int index)',
116
+ 'bool ValueFromString_(wxVariant& value, int* pIndex, const wxString& text,int argFlags) const',
117
+ 'bool ValueFromInt_(wxVariant& value, int* pIndex, int intVal, int argFlags) const',
118
+ visibility: 'protected'
119
+ else
120
+ spec.extend_interface kls,
121
+ 'int GetIndex() const',
122
+ 'void SetIndex(int index)',
123
+ 'bool ValueFromString_ (wxVariant &value, const wxString &text, int argFlags) const',
124
+ 'bool ValueFromInt_ (wxVariant &value, int intVal, int argFlags) const',
125
+ visibility: 'protected'
126
+ end
127
+ end
128
+ spec.regard 'wxEditorDialogProperty::wxEditorDialogProperty',
129
+ 'wxEditorDialogProperty::DisplayEditorDialog',
130
+ 'wxArrayStringProperty::DisplayEditorDialog',
131
+ 'wxDirProperty::DisplayEditorDialog',
132
+ 'wxFileProperty::DisplayEditorDialog',
133
+ 'wxLongStringProperty::DisplayEditorDialog',
134
+ 'wxMultiChoiceProperty::DisplayEditorDialog',
135
+ 'wxFontProperty::DisplayEditorDialog'
136
+ if Config.instance.wx_version >= '3.3.0'
137
+ # for wxEnumProperty and derivatives ValueFromString_/ValueFromInt_
138
+ spec.map_apply 'int * OUTPUT' => 'int* pIndex'
139
+ end
140
+ # for UIntProperty and IntProperty
141
+ if Config.instance.features_set?('wxUSE_LONGLONG')
142
+ # wxLongLong mapping to be considered before considering 'long' (see typecheck precedence)
143
+ spec.map 'const wxLongLong&' => 'Integer' do
144
+ map_in temp: 'wxLongLong tmp', code: <<~__CODE
145
+ tmp = (wxLongLong_t)rb_big2ll($input);
146
+ $1 = &tmp;
147
+ __CODE
148
+ # only map to wxLongLong if size of long is less than 64bit and a bignum given otherwise leave it to long mapping
149
+ map_typecheck precedence: 10, code: '$1 = (sizeof(long) < 8) && (TYPE($input) == T_BIGNUM) && (rb_big_sign($input) == 0);'
150
+ end
151
+ # wxULongLong mapping to be considered after considering wxLongLong and 'long' (see typecheck precedence)
152
+ spec.map 'const wxULongLong&' => 'Integer' do
153
+ map_in temp: 'wxULongLong tmp', code: <<~__CODE
154
+ tmp = (wxULongLong_t)(TYPE($input) == T_FIXNUM ? NUM2ULL($input) : rb_big2ull($input));
155
+ $1 = &tmp;
156
+ __CODE
157
+ # only map to wxULongLong if integer specified
158
+ map_typecheck precedence: 69, code: '$1 = (TYPE($input) == T_FIXNUM || TYPE($input) == T_BIGNUM);'
159
+ end
160
+ else
161
+ spec.ignore 'wxUIntProperty::wxUIntProperty(const wxString &, const wxString &, const wxULongLong &)',
162
+ 'wxIntProperty::wxUIntProperty(const wxString &, const wxString &, const wxLongLong &)'
163
+ end
164
+ spec.new_object 'wxArrayStringProperty::CreateEditorDialog'
165
+ spec.suppress_warning(473, 'wxArrayStringProperty::CreateEditorDialog')
166
+ # for wxArrayStringProperty::OnCustomStringEdit
167
+ spec.map 'wxWindow *parent, wxString &value' do
168
+ map_in from: {type: 'Wx::Window', index: 0},
169
+ temp: 'wxString tmp',
170
+ code: <<~__CODE
171
+ void* argp$argnum = NULL;
172
+ if ( TYPE($input) == T_DATA )
173
+ {
174
+ if (SWIG_IsOK(SWIG_ConvertPtr($input, &argp$argnum, $1_descriptor, $argnum-1)) && argp$argnum)
175
+ {
176
+ $1 = reinterpret_cast< $1_basetype * >(argp$argnum);
177
+ }
178
+ else
179
+ {
180
+ rb_raise(rb_eTypeError, "Expected Wx::Window instance.");
181
+ }
182
+ }
183
+ $2 = &tmp;
184
+ __CODE
185
+ # ignore C defined return value entirely (also affects directorout)
186
+ map_out ignore: 'bool'
187
+ map_argout as: {type: 'String', index: 1}, code: '$result = WXSTR_TO_RSTR(tmp$argnum);'
188
+ # convert the window and ignore the string ref for now
189
+ map_directorin code: '$input = SWIG_NewPointerObj(SWIG_as_voidptr($1), SWIGTYPE_p_wxWindow, 0);'
190
+ map_directorargout code: <<~__CODE
191
+ if (RTEST($result))
192
+ {
193
+ if (TYPE($result) == T_STRING)
194
+ {
195
+ value = RSTR_TO_WXSTR($result);
196
+ c_result = true;
197
+ }
198
+ else
199
+ {
200
+ Swig::DirectorTypeMismatchException::raise(rb_eTypeError,
201
+ "on_custom_string_edit should return a string, or nil");
202
+ }
203
+ }
204
+ else
205
+ c_result = false;
206
+ __CODE
207
+ end
208
+ # not needed in wxRuby
209
+ spec.ignore 'wxFlagsProperty::wxFlagsProperty(const wxString &, const wxString &, const wxChar *const *, const long *, long)'
210
+ spec.do_not_generate :variables, :defines, :enums, :functions
211
+ end
212
+ end # class PGProperties
213
+
214
+ end # class Director
215
+
216
+ end # module WXRuby3
@@ -0,0 +1,207 @@
1
+ ###
2
+ # wxRuby3 wxWidgets interface director
3
+ # Copyright (c) M.J.N. Corino, The Netherlands
4
+ ###
5
+
6
+ module WXRuby3
7
+
8
+ class Director
9
+
10
+ class PGProperty < Director
11
+
12
+ include Typemap::PGEditor
13
+
14
+ include Typemap::PGProperty
15
+
16
+ include Typemap::PGCell
17
+
18
+ def setup
19
+ super
20
+ if spec.module_name == 'wxPGProperty'
21
+ spec.items << 'wxPGChoices' << 'wxPGPaintData' << 'propgriddefs.h'
22
+ spec.regard 'wxPGPaintData::m_parent',
23
+ 'wxPGPaintData::m_choiceItem',
24
+ 'wxPGPaintData::m_drawnWidth',
25
+ 'wxPGPaintData::m_drawnHeight'
26
+ spec.rename_for_ruby 'parent' => 'wxPGPaintData::m_parent',
27
+ 'choice_item' => 'wxPGPaintData::m_choiceItem',
28
+ 'drawn_width' => 'wxPGPaintData::m_drawnWidth',
29
+ 'drawn_height' => 'wxPGPaintData::m_drawnHeight'
30
+ # wxPGChoices are always returned by value and never transfer ownership
31
+ # so we do not need tracking or special free function
32
+ spec.gc_as_temporary 'wxPGChoices'
33
+ # prevent exposure of wxPGChoicesData; not of any real use in wxRuby
34
+ spec.ignore 'wxPGChoices::wxPGChoices(wxPGChoicesData*)',
35
+ 'wxPGChoices::AssignData',
36
+ 'wxPGChoices::GetData',
37
+ 'wxPGChoices::GetDataPtr',
38
+ 'wxPGChoices::ExtractData',
39
+ # no use in wxRuby
40
+ 'wxPGChoices::Add(size_t, const wxString *, const long *)',
41
+ 'wxPGChoices::Add(const wxChar **, const long *)',
42
+ 'wxPGChoices::Set(size_t, const wxString *, const long *)',
43
+ 'wxPGChoices::Set(const wxChar **, const long *)',
44
+ 'wxPGChoices::wxPGChoices(size_t, const wxString *, const long *)',
45
+ 'wxPGChoices::wxPGChoices(const wxChar **, const long *)'
46
+ # replace by extension
47
+ spec.ignore 'wxPGChoices::operator[]', ignore_doc: false
48
+ spec.add_extend_code 'wxPGChoices', <<~__HEREDOC
49
+ wxPGChoiceEntry& __getitem__(unsigned int idx)
50
+ {
51
+ return (*self)[idx];
52
+ }
53
+ __HEREDOC
54
+ spec.disown 'wxPGProperty *prop', 'wxPGProperty *childProperty'
55
+ # do not think this useful for wxRuby (Also; caused GC problems)
56
+ spec.ignore 'wxPGProperty::GetCellRenderer'
57
+ # obsolete
58
+ spec.ignore %w[wxPGProperty::AddChild wxPGProperty::GetValueString]
59
+ # not of use in Ruby
60
+ spec.ignore(%w[wxPGProperty::GetClientObject wxPGProperty::SetClientObject])
61
+ # only keep the const version
62
+ spec.ignore 'wxPGProperty::GetCell'
63
+ spec.regard 'wxPGProperty::GetCell(unsigned int) const'
64
+ spec.rename_for_ruby 'GetCellOrDefault' => 'wxPGProperty::GetCell(unsigned int) const'
65
+ spec.rename_for_ruby 'get_cell' => 'wxPGProperty::GetOrCreateCell'
66
+ # don't expose wxPGAttributeStorage; add a more Ruby-like extension
67
+ spec.ignore 'wxPGProperty::GetAttributes'
68
+ spec.add_extend_code 'wxPGProperty', <<~__HEREDOC
69
+ VALUE each_attribute()
70
+ {
71
+ const wxPGAttributeStorage& att_store = self->GetAttributes();
72
+ wxPGAttributeStorage::const_iterator it = att_store.StartIteration();
73
+ wxVariant att_var;
74
+ VALUE rc = Qnil;
75
+ while (att_store.GetNext(it, att_var))
76
+ {
77
+ VALUE rb_att_var = SWIG_NewPointerObj(new wxVariant(att_var), SWIGTYPE_p_wxVariant, SWIG_POINTER_OWN);
78
+ rc = rb_yield(rb_att_var);
79
+ }
80
+ return rc;
81
+ }
82
+ __HEREDOC
83
+ # this creates an object that needs to be managed by the receiver
84
+ spec.new_object 'wxPGProperty::GetEditorDialog'
85
+ spec.suppress_warning(473, 'wxPGProperty::GetEditorDialog')
86
+ # these return objects that will be owned (and need to be lifecycle managed) by any
87
+ # overrrides
88
+ spec.suppress_warning(473,
89
+ 'wxPGProperty::DoGetEditorClass',
90
+ 'wxPGProperty::DoGetValidator')
91
+ spec.add_header_code <<~__HEREDOC
92
+ extern void GC_mark_wxPGProperty(void* ptr)
93
+ {
94
+ #ifdef __WXRB_DEBUG__
95
+ if (wxRuby_TraceLevel()>1)
96
+ {
97
+ std::wcout << "> GC_mark_wxPGProperty : " << ptr;
98
+ if (ptr) std::wcout << " (" << ((wxPGProperty*)ptr)->GetName() << ')';
99
+ std::wcout << std::endl;
100
+ }
101
+ #endif
102
+ if (ptr)
103
+ {
104
+ VALUE object = (VALUE)((wxPGProperty*)ptr)->GetClientData();
105
+ if (object && !NIL_P(object))
106
+ {
107
+ #ifdef __WXRB_DEBUG__
108
+ if (wxRuby_TraceLevel()>2)
109
+ std::wcout << "*** marking property data " << ptr << std::endl;
110
+ #endif
111
+ rb_gc_mark(object);
112
+ }
113
+ }
114
+ }
115
+ __HEREDOC
116
+ spec.add_swig_code '%markfunc wxPGProperty "GC_mark_wxPGProperty";'
117
+ spec.ignore 'wxPGProperty::m_clientData' # not wanted for wxRuby
118
+ # take protected members into account
119
+ spec.regard 'wxPGProperty::wxPGProperty',
120
+ 'wxPGProperty::ClearCells',
121
+ 'wxPGProperty::EnsureCells',
122
+ 'wxPGProperty::GetPropertyByNameWH',
123
+ 'wxPGProperty::Empty',
124
+ 'wxPGProperty::IsChildSelected'
125
+ # add protected member var missing from XML docs
126
+ # needed to have any use of overriding methods like #on_set_value
127
+ spec.extend_interface 'wxPGProperty',
128
+ 'wxVariant m_value',
129
+ visibility: 'protected'
130
+ spec.rename_for_ruby 'value_' => 'wxPGProperty::m_value'
131
+ spec.ignore %w[wxPG_LABEL wxPG_DEFAULT_IMAGE_SIZE]
132
+ spec.ignore %w[wxPG_NULL_BITMAP wxPG_COLOUR_BLACK] unless Config.instance.wx_version >= '3.3.0'
133
+ # define in Ruby
134
+ spec.ignore %w[wxNullProperty wxPGChoicesEmptyData], ignore_doc: false
135
+ # add method for correctly wrapping PGProperty output references
136
+ spec.add_header_code <<~__CODE
137
+ extern VALUE mWxPG; // declare external module reference
138
+ extern VALUE wxRuby_WrapWxPGPropertyInRuby(const wxPGProperty *wx_pp)
139
+ {
140
+ // If no object was passed to be wrapped.
141
+ if ( ! wx_pp )
142
+ return Qnil;
143
+
144
+ // check if this instance is already tracked; return tracked value if so
145
+ VALUE r_pp = SWIG_RubyInstanceFor(const_cast<wxPGProperty*> (wx_pp));
146
+ if (r_pp && !NIL_P(r_pp)) return r_pp;
147
+
148
+ // Get the wx class and the ruby class we are converting into
149
+ wxString class_name( wx_pp->GetClassInfo()->GetClassName() );
150
+ VALUE r_class = Qnil;
151
+ if ( class_name.Len() > 2 )
152
+ {
153
+ if (class_name == wxS("wxPGRootProperty"))
154
+ {
155
+ r_class = ((swig_class*)SWIGTYPE_p_wxPGProperty->clientdata)->klass;
156
+ }
157
+ else
158
+ {
159
+ wxCharBuffer wx_classname = class_name.mb_str();
160
+ VALUE r_class_name = rb_intern(wx_classname.data () + 2); // wxRuby class name (minus 'wx')
161
+ if (rb_const_defined(mWxPG, r_class_name))
162
+ r_class = rb_const_get(mWxPG, r_class_name);
163
+ }
164
+ }
165
+
166
+ // If we cannot find the class output a warning and return nil
167
+ if ( r_class == Qnil )
168
+ {
169
+ rb_warn("Error wrapping object; class `%s' is not (yet) supported in wxRuby",
170
+ (const char *)class_name.mb_str() );
171
+ return Qnil;
172
+ }
173
+
174
+
175
+ // Otherwise, retrieve the swig type info for this class and wrap it
176
+ // in Ruby. wxRuby_GetSwigTypeForClass is defined in wx.i
177
+ swig_type_info* swig_type = wxRuby_GetSwigTypeForClass(r_class);
178
+ return SWIG_NewPointerObj(const_cast<wxPGProperty*> (wx_pp), swig_type, 0);
179
+ }
180
+ __CODE
181
+ else
182
+ spec.add_header_code 'extern void GC_mark_wxPGProperty(void* ptr);'
183
+ spec.items.each do |itm|
184
+ unless itm == 'wxColourPropertyValue'
185
+ # add protected member methods and var to complement base class
186
+ spec.extend_interface itm,
187
+ 'void ClearCells(FlagType ignoreWithFlags, bool recursively)',
188
+ 'void EnsureCells(unsigned int column)',
189
+ 'wxPGProperty * GetPropertyByNameWH(const wxString &name, unsigned int hintIndex) const',
190
+ 'void Empty()',
191
+ 'bool IsChildSelected(bool recursive=false) const',
192
+ 'wxVariant m_value',
193
+ visibility: 'protected'
194
+ spec.rename_for_ruby 'value_' => "#{itm}::m_value"
195
+ spec.add_swig_code %Q{%markfunc #{itm} "GC_mark_wxPGProperty";}
196
+ spec.new_object %Q{#{itm}::GetEditorDialog}
197
+ spec.suppress_warning(473, "#{itm}::GetEditorDialog")
198
+ end
199
+ end
200
+ end
201
+ spec.add_header_code 'typedef wxPGProperty::FlagType FlagType;'
202
+ end
203
+ end # class PGProperty
204
+
205
+ end # class Director
206
+
207
+ end # module WXRuby3
@@ -0,0 +1,24 @@
1
+ ###
2
+ # wxRuby3 wxWidgets interface director
3
+ # Copyright (c) M.J.N. Corino, The Netherlands
4
+ ###
5
+
6
+ module WXRuby3
7
+
8
+ class Director
9
+
10
+ class PGValidationInfo < Director
11
+
12
+ def setup
13
+ super
14
+ spec.items << 'propgrid/propgrid.h'
15
+ spec.gc_as_temporary 'wxPGValidationInfo'
16
+ if Config.instance.wx_version < '3.3.0'
17
+ spec.ignore 'wxPGVFBFlags' # not a constant but a rather a clumsy typedef
18
+ end
19
+ end
20
+ end # class PGValidationInfo
21
+
22
+ end # class Director
23
+
24
+ end # module WXRuby3
@@ -0,0 +1,22 @@
1
+ ###
2
+ # wxRuby3 wxWidgets interface director
3
+ # Copyright (c) M.J.N. Corino, The Netherlands
4
+ ###
5
+
6
+ require_relative './window'
7
+
8
+ module WXRuby3
9
+
10
+ class Director
11
+
12
+ class PickerBase < Window
13
+
14
+ def setup
15
+ super
16
+ spec.ignore 'wxPickerBase::CreateBase'
17
+ end
18
+ end # class PickerBase
19
+
20
+ end # class Director
21
+
22
+ end # module WXRuby3
@@ -0,0 +1,49 @@
1
+ ###
2
+ # wxRuby3 wxWidgets interface director
3
+ # Copyright (c) M.J.N. Corino, The Netherlands
4
+ ###
5
+
6
+ module WXRuby3
7
+
8
+ class Director
9
+
10
+ class PlatformInfo < Director
11
+
12
+ def setup
13
+ super
14
+ spec.gc_as_temporary
15
+ spec.make_abstract('wxPlatformInfo')
16
+ spec.ignore 'wxPlatformInfo::wxPlatformInfo',
17
+ 'wxPlatformInfo::operator==',
18
+ 'wxPlatformInfo::GetArchitecture',
19
+ 'wxPlatformInfo::GetArchName',
20
+ 'wxPlatformInfo::SetArchitecture',
21
+ 'wxPlatformInfo::SetBitness',
22
+ 'wxPlatformInfo::SetEndianness',
23
+ 'wxPlatformInfo::SetOSVersion',
24
+ 'wxPlatformInfo::SetOperatingSystemId',
25
+ 'wxPlatformInfo::SetPortId',
26
+ 'wxPlatformInfo::SetToolkitVersion',
27
+ 'wxPlatformInfo::SetOperatingSystemDescription',
28
+ 'wxPlatformInfo::SetDesktopEnvironment',
29
+ 'wxPlatformInfo::SetLinuxDistributionInfo',
30
+ 'wxPlatformInfo::GetBitness(const wxString &)',
31
+ 'wxPlatformInfo::GetArch(const wxString &)',
32
+ 'wxPlatformInfo::GetEndianness(const wxString &)',
33
+ 'wxPlatformInfo::GetOperatingSystemId(const wxString &)',
34
+ 'wxPlatformInfo::GetPortId(const wxString &)',
35
+ 'wxPlatformInfo::GetArchName(wxArchitecture)',
36
+ 'wxPlatformInfo::GetBitnessName(wxBitness)',
37
+ 'wxPlatformInfo::GetEndiannessName(wxEndianness)',
38
+ 'wxPlatformInfo::GetOperatingSystemFamilyName(wxOperatingSystemId)',
39
+ 'wxPlatformInfo::GetPortIdName(wxPortId, bool)',
40
+ 'wxPlatformInfo::GetPortIdShortName(wxPortId, bool)',
41
+ 'wxPlatformInfo::GetOperatingSystemIdName(wxOperatingSystemId)',
42
+ 'wxArchitecture'
43
+ spec.rename_for_ruby 'instance' => 'wxPlatformInfo::Get'
44
+ end
45
+ end # class PlatformInfo
46
+
47
+ end # class Director
48
+
49
+ end # module WXRuby3
@@ -0,0 +1,23 @@
1
+ ###
2
+ # wxRuby3 wxWidgets interface director
3
+ # Copyright (c) M.J.N. Corino, The Netherlands
4
+ ###
5
+
6
+ require_relative './window'
7
+
8
+ module WXRuby3
9
+
10
+ class Director
11
+
12
+ class PopupWindow < Window
13
+
14
+ def setup
15
+ spec.items << 'wxPopupTransientWindow'
16
+ super
17
+ end
18
+
19
+ end # class PopupWindow
20
+
21
+ end # class Director
22
+
23
+ end # module WXRuby3
@@ -0,0 +1,39 @@
1
+ ###
2
+ # wxRuby3 wxWidgets interface director
3
+ # Copyright (c) M.J.N. Corino, The Netherlands
4
+ ###
5
+
6
+ require_relative './frame'
7
+
8
+ module WXRuby3
9
+
10
+ class Director
11
+
12
+ class PreviewFrame < Frame
13
+
14
+ def setup
15
+ super
16
+ spec.rename_for_ruby('init' => 'wxPreviewFrame::Initialize')
17
+ # We do not wrap the (undocumented) wxPrintPreviewBase so map this to wxPrintPreview what
18
+ # in all cases will be the actual base being used.
19
+ spec.ignore 'wxPreviewFrame::wxPreviewFrame(wxPrintPreviewBase *, wxWindow *,const wxString &,const wxPoint &,const wxSize &,long,const wxString &)'
20
+ spec.extend_interface('wxPreviewFrame',
21
+ 'wxPreviewFrame(wxPrintPreview *preview, wxWindow *parent, const wxString &title="Print Preview", const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=wxDEFAULT_FRAME_STYLE, const wxString &name=wxFrameNameStr)')
22
+ # non-functional map for doc gen
23
+ spec.map 'wxPrintPreviewBase *' => 'Wx::PrintPreview', swig: false do
24
+ map_in
25
+ end
26
+ spec.disown 'wxPrintPreview *preview' # leave ownership to PreviewFrame
27
+ # Not really useful in Ruby as there no accessors to set a custom
28
+ # canvas or control bar.
29
+ # In case one would need a customized preview pane one would probably be
30
+ # better of creating from scratch in Ruby.
31
+ spec.ignore %w[wxPreviewFrame::CreateCanvas wxPreviewFrame::CreateControlBar]
32
+ spec.ignore 'wxPreviewFrame::OnCloseWindow' # not useful for public use
33
+ spec.do_not_generate(:variables, :defines, :enums, :functions) # with PrintAbortDialog
34
+ end
35
+ end # class PreviewFrame
36
+
37
+ end # class Director
38
+
39
+ end # module WXRuby3
@@ -0,0 +1,33 @@
1
+ ###
2
+ # wxRuby3 wxWidgets interface director
3
+ # Copyright (c) M.J.N. Corino, The Netherlands
4
+ ###
5
+
6
+ module WXRuby3
7
+
8
+ class Director
9
+
10
+ class PrintData < Director
11
+
12
+ def setup
13
+ super
14
+ spec.gc_as_temporary
15
+ spec.disable_proxies # fixed and final data structures
16
+ spec.items << 'wxPrintDialogData' << 'wxPageSetupDialogData'
17
+ spec.ignore 'wxPrintDialogData::SetSetupDialog' # deprecated since 2.5.4
18
+ # make wxPrintDialogData GC-safe
19
+ spec.ignore 'wxPrintDialogData::GetPrintData'
20
+ spec.add_extend_code 'wxPrintDialogData', <<~__HEREDOC
21
+ wxPrintData* GetPrintData()
22
+ { return new wxPrintData(self->GetPrintData()); }
23
+ __HEREDOC
24
+ spec.new_object 'wxPrintDialogData::GetPrintData'
25
+ spec.ignore 'wxPageSetupDialogData::GetPrintData'
26
+ spec.regard 'wxPageSetupDialogData::GetPrintData() const'
27
+ spec.swig_import 'swig/classes/include/wxDefs.h'
28
+ end
29
+ end # class PrintData
30
+
31
+ end # class Director
32
+
33
+ end # module WXRuby3
@@ -0,0 +1,36 @@
1
+ ###
2
+ # wxRuby3 wxWidgets interface director
3
+ # Copyright (c) M.J.N. Corino, The Netherlands
4
+ ###
5
+
6
+ module WXRuby3
7
+
8
+ class Director
9
+
10
+ class PrintDialog < Director
11
+
12
+ def setup
13
+ super
14
+ spec.no_proxy 'wxPrintDialog::GetPrintDC' # do not think this is really useful
15
+ spec.new_object 'wxPrintDialog::GetPrintDC'
16
+ # make PrintDialog GC-safe
17
+ spec.ignore 'wxPrintDialog::GetPrintData',
18
+ 'wxPrintDialog::GetPrintDialogData'
19
+ spec.add_extend_code 'wxPrintDialog', <<~__HEREDOC
20
+ wxPrintData* GetPrintData()
21
+ { return new wxPrintData(self->GetPrintData()); }
22
+ void SetPrintData(const wxPrintData& pd)
23
+ { self->GetPrintData() = pd; }
24
+ wxPrintDialogData* GetPrintDialogData()
25
+ { return new wxPrintDialogData(self->GetPrintDialogData()); }
26
+ void SetPrintDialogData(const wxPrintDialogData& pd)
27
+ { self->GetPrintDialogData() = pd; }
28
+ __HEREDOC
29
+ spec.new_object 'wxPrintDialog::GetPrintData',
30
+ 'wxPrintDialog::GetPrintDialogData'
31
+ end
32
+ end # class PrintDialog
33
+
34
+ end # class Director
35
+
36
+ end # module WXRuby3