wxruby3 0.9.0.pre.rc.2-x64-mingw-ucrt → 0.9.0-x64-mingw-ucrt

Sign up to get free protection for your applications and to get access to all the features.
Files changed (703) hide show
  1. checksums.yaml +4 -4
  2. data/INSTALL.md +30 -8
  3. data/README.md +3 -3
  4. data/ext/mkrf_conf_bingem.rb +4 -1
  5. data/ext/wxbase32u_gcc_custom.dll +0 -0
  6. data/ext/wxbase32u_net_gcc_custom.dll +0 -0
  7. data/ext/wxbase32u_xml_gcc_custom.dll +0 -0
  8. data/ext/wxmsw32u_aui_gcc_custom.dll +0 -0
  9. data/ext/wxmsw32u_core_gcc_custom.dll +0 -0
  10. data/ext/wxmsw32u_gl_gcc_custom.dll +0 -0
  11. data/ext/wxmsw32u_html_gcc_custom.dll +0 -0
  12. data/ext/wxmsw32u_media_gcc_custom.dll +0 -0
  13. data/ext/wxmsw32u_propgrid_gcc_custom.dll +0 -0
  14. data/ext/wxmsw32u_qa_gcc_custom.dll +0 -0
  15. data/ext/wxmsw32u_ribbon_gcc_custom.dll +0 -0
  16. data/ext/wxmsw32u_richtext_gcc_custom.dll +0 -0
  17. data/ext/wxmsw32u_stc_gcc_custom.dll +0 -0
  18. data/ext/wxmsw32u_webview_gcc_custom.dll +0 -0
  19. data/ext/wxmsw32u_xrc_gcc_custom.dll +0 -0
  20. data/lib/wx/accessors.rb +10 -2
  21. data/lib/wx/aui/auifloatframe.rb +20 -0
  22. data/lib/wx/aui/auimanager.rb +3 -0
  23. data/lib/wx/aui/auinotebook.rb +17 -0
  24. data/lib/wx/aui/events/evt_list.rb +7 -7
  25. data/lib/wx/aui/require.rb +5 -1
  26. data/lib/wx/aui.rb +4 -1
  27. data/lib/wx/core/acceleratortable.rb +8 -0
  28. data/lib/wx/core/animation.rb +8 -0
  29. data/lib/wx/core/app.rb +8 -0
  30. data/lib/wx/core/array_ext.rb +7 -0
  31. data/lib/wx/core/art_locator.rb +7 -0
  32. data/lib/wx/core/artprovider.rb +9 -0
  33. data/lib/wx/core/bitmap.rb +16 -4
  34. data/lib/wx/core/bitmap_combobox.rb +7 -0
  35. data/lib/wx/core/brush.rb +7 -0
  36. data/lib/wx/core/busycursor.rb +9 -0
  37. data/lib/wx/core/choice.rb +7 -0
  38. data/lib/wx/core/choicedlg.rb +7 -0
  39. data/lib/wx/core/clientdc.rb +9 -0
  40. data/lib/wx/core/clipboard.rb +8 -0
  41. data/lib/wx/core/collapsible_pane.rb +8 -1
  42. data/lib/wx/core/colour.rb +8 -0
  43. data/lib/wx/core/combo_ctrl.rb +110 -0
  44. data/lib/wx/core/combobox.rb +7 -0
  45. data/lib/wx/core/config.rb +303 -0
  46. data/lib/wx/core/controlwithitems.rb +12 -1
  47. data/lib/wx/core/cursor.rb +14 -4
  48. data/lib/wx/core/data_object.rb +7 -0
  49. data/lib/wx/core/dataformat.rb +9 -0
  50. data/lib/wx/core/datetime.rb +14 -0
  51. data/lib/wx/core/dc.rb +7 -0
  52. data/lib/wx/core/dialog.rb +18 -1
  53. data/lib/wx/core/enum.rb +7 -0
  54. data/lib/wx/core/event.rb +7 -0
  55. data/lib/wx/core/event_blocker.rb +7 -0
  56. data/lib/wx/core/event_loop.rb +14 -0
  57. data/lib/wx/core/events/evt_list.rb +76 -0
  58. data/lib/wx/core/evthandler.rb +8 -0
  59. data/lib/wx/core/ext.rb +7 -0
  60. data/lib/wx/core/file_dialog.rb +23 -0
  61. data/lib/wx/core/find_replace_dialog.rb +7 -0
  62. data/lib/wx/core/functions.rb +8 -0
  63. data/lib/wx/core/gauge.rb +10 -1
  64. data/lib/wx/core/genericdirctrl.rb +9 -0
  65. data/lib/wx/core/hboxsizer.rb +16 -0
  66. data/lib/wx/core/helpcontroller.rb +8 -0
  67. data/lib/wx/core/helpcontrollerhelpprovider.rb +9 -0
  68. data/lib/wx/core/helpprovider.rb +10 -1
  69. data/lib/wx/core/icon.rb +17 -6
  70. data/lib/wx/core/id_helper.rb +7 -0
  71. data/lib/wx/core/image.rb +49 -4
  72. data/lib/wx/core/imagelist.rb +8 -1
  73. data/lib/wx/core/listbox.rb +7 -0
  74. data/lib/wx/core/listctrl.rb +26 -13
  75. data/lib/wx/core/locale.rb +8 -0
  76. data/lib/wx/core/log.rb +114 -0
  77. data/lib/wx/core/menu.rb +9 -0
  78. data/lib/wx/core/menu_bar.rb +7 -0
  79. data/lib/wx/core/menuitem.rb +9 -0
  80. data/lib/wx/core/notebook.rb +9 -0
  81. data/lib/wx/core/object.rb +9 -0
  82. data/lib/wx/core/paintdc.rb +7 -0
  83. data/lib/wx/core/pen.rb +7 -0
  84. data/lib/wx/core/pen_info.rb +7 -0
  85. data/lib/wx/core/platform_info.rb +7 -0
  86. data/lib/wx/core/point.rb +8 -0
  87. data/lib/wx/core/real_point.rb +8 -0
  88. data/lib/wx/core/rect.rb +9 -0
  89. data/lib/wx/core/region_iterator.rb +7 -0
  90. data/lib/wx/core/simplehelpprovider.rb +9 -0
  91. data/lib/wx/core/size.rb +8 -0
  92. data/lib/wx/core/sizer.rb +9 -0
  93. data/lib/wx/core/splash_screen.rb +22 -2
  94. data/lib/wx/core/text_entry.rb +7 -0
  95. data/lib/wx/core/textctrl.rb +86 -5
  96. data/lib/wx/core/timer.rb +9 -0
  97. data/lib/wx/core/toolbar.rb +9 -0
  98. data/lib/wx/core/toolbartool.rb +8 -0
  99. data/lib/wx/core/treectrl.rb +9 -0
  100. data/lib/wx/core/v_list_box.rb +7 -0
  101. data/lib/wx/core/validator.rb +7 -0
  102. data/lib/wx/core/variant.rb +7 -0
  103. data/lib/wx/core/vboxsizer.rb +16 -0
  104. data/lib/wx/core/window.rb +8 -0
  105. data/lib/wx/core/window_update_locker.rb +9 -0
  106. data/lib/wx/core/xmlresource.rb +8 -0
  107. data/lib/wx/core.rb +4 -1
  108. data/lib/wx/doc/app.rb +7 -1
  109. data/lib/wx/doc/array_ext.rb +6 -0
  110. data/lib/wx/doc/art_locator.rb +7 -0
  111. data/lib/wx/doc/aui/auimanager.rb +6 -0
  112. data/lib/wx/doc/aui/auinotebook.rb +6 -0
  113. data/lib/wx/doc/bitmap.rb +19 -15
  114. data/lib/wx/doc/brush.rb +6 -0
  115. data/lib/wx/doc/busy_info.rb +6 -0
  116. data/lib/wx/doc/client_dc.rb +6 -0
  117. data/lib/wx/doc/clipboard.rb +6 -0
  118. data/lib/wx/doc/colour_dialog.rb +6 -0
  119. data/lib/wx/doc/config.rb +190 -0
  120. data/lib/wx/doc/const.rb +7 -0
  121. data/lib/wx/doc/controlwithitems.rb +6 -0
  122. data/lib/wx/doc/core.rb +6 -0
  123. data/lib/wx/doc/cursor.rb +13 -5
  124. data/lib/wx/doc/data_object.rb +6 -0
  125. data/lib/wx/doc/datetime.rb +16 -0
  126. data/lib/wx/doc/dc.rb +6 -0
  127. data/lib/wx/doc/enum.rb +8 -1
  128. data/lib/wx/doc/event.rb +12 -0
  129. data/lib/wx/doc/event_blocker.rb +6 -0
  130. data/lib/wx/doc/event_loop.rb +13 -0
  131. data/lib/wx/doc/events.rb +6 -0
  132. data/lib/wx/doc/evthandler.rb +8 -0
  133. data/lib/wx/doc/extra/00_starting.md +6 -6
  134. data/lib/wx/doc/extra/01_packages.md +52 -51
  135. data/lib/wx/doc/extra/02_lifecycles.md +9 -8
  136. data/lib/wx/doc/extra/05_event-handling.md +37 -12
  137. data/lib/wx/doc/extra/06_geometry.md +5 -5
  138. data/lib/wx/doc/extra/07_colour_and_font.md +2 -2
  139. data/lib/wx/doc/extra/09_exceptions.md +2 -2
  140. data/lib/wx/doc/extra/10_art.md +18 -12
  141. data/lib/wx/doc/extra/11_drawing_and_dc.md +8 -8
  142. data/lib/wx/doc/font.rb +7 -1
  143. data/lib/wx/doc/font_data.rb +16 -0
  144. data/lib/wx/doc/functions.rb +60 -24
  145. data/lib/wx/doc/gc_dc.rb +7 -1
  146. data/lib/wx/doc/gdi_common.rb +8 -1
  147. data/lib/wx/doc/gen/about_dialog_info.rb +10 -10
  148. data/lib/wx/doc/gen/accelerator.rb +8 -13
  149. data/lib/wx/doc/gen/accessible.rb +27 -23
  150. data/lib/wx/doc/gen/activity_indicator.rb +7 -7
  151. data/lib/wx/doc/gen/animation.rb +20 -20
  152. data/lib/wx/doc/gen/animation_ctrl.rb +14 -13
  153. data/lib/wx/doc/gen/any_button.rb +3 -3
  154. data/lib/wx/doc/gen/app.rb +25 -88
  155. data/lib/wx/doc/gen/app_traits.rb +381 -0
  156. data/lib/wx/doc/gen/art_provider.rb +64 -4
  157. data/lib/wx/doc/gen/aui/aui_dock_art.rb +12 -12
  158. data/lib/wx/doc/gen/aui/aui_floating_frame.rb +6 -6
  159. data/lib/wx/doc/gen/aui/aui_manager.rb +57 -41
  160. data/lib/wx/doc/gen/aui/aui_manager_event.rb +16 -10
  161. data/lib/wx/doc/gen/aui/aui_mdi_child_frame.rb +19 -20
  162. data/lib/wx/doc/gen/aui/aui_mdi_client_window.rb +7 -7
  163. data/lib/wx/doc/gen/aui/aui_mdi_parent_frame.rb +12 -12
  164. data/lib/wx/doc/gen/aui/aui_notebook.rb +136 -26
  165. data/lib/wx/doc/gen/aui/aui_notebook_event.rb +17 -2
  166. data/lib/wx/doc/gen/aui/aui_pane_info.rb +95 -95
  167. data/lib/wx/doc/gen/aui/aui_tab_art.rb +17 -17
  168. data/lib/wx/doc/gen/aui/aui_tool_bar.rb +61 -46
  169. data/lib/wx/doc/gen/aui/aui_tool_bar_art.rb +18 -18
  170. data/lib/wx/doc/gen/aui/aui_tool_bar_event.rb +6 -6
  171. data/lib/wx/doc/gen/aui/aui_tool_bar_item.rb +11 -11
  172. data/lib/wx/doc/gen/aui/event_list.rb +7 -0
  173. data/lib/wx/doc/gen/banner_window.rb +98 -0
  174. data/lib/wx/doc/gen/bitmap.rb +56 -81
  175. data/lib/wx/doc/gen/bitmap_button.rb +13 -9
  176. data/lib/wx/doc/gen/bitmap_combo_box.rb +14 -9
  177. data/lib/wx/doc/gen/book_ctrl_base.rb +20 -16
  178. data/lib/wx/doc/gen/book_ctrl_event.rb +2 -2
  179. data/lib/wx/doc/gen/box_sizer.rb +1 -1
  180. data/lib/wx/doc/gen/brush.rb +24 -12
  181. data/lib/wx/doc/gen/busy_info.rb +1 -1
  182. data/lib/wx/doc/gen/button.rb +23 -11
  183. data/lib/wx/doc/gen/calculate_layout_event.rb +2 -1
  184. data/lib/wx/doc/gen/calendar_ctrl.rb +34 -22
  185. data/lib/wx/doc/gen/calendar_date_attr.rb +13 -13
  186. data/lib/wx/doc/gen/calendar_event.rb +4 -10
  187. data/lib/wx/doc/gen/caret.rb +6 -6
  188. data/lib/wx/doc/gen/check_box.rb +19 -15
  189. data/lib/wx/doc/gen/check_list_box.rb +10 -9
  190. data/lib/wx/doc/gen/choice.rb +10 -9
  191. data/lib/wx/doc/gen/choicebook.rb +13 -7
  192. data/lib/wx/doc/gen/client_dc.rb +1 -1
  193. data/lib/wx/doc/gen/clipboard.rb +10 -10
  194. data/lib/wx/doc/gen/collapsible_pane.rb +13 -10
  195. data/lib/wx/doc/gen/collapsible_pane_event.rb +5 -4
  196. data/lib/wx/doc/gen/colour.rb +42 -32
  197. data/lib/wx/doc/gen/colour_dialog.rb +12 -12
  198. data/lib/wx/doc/gen/colour_picker_ctrl.rb +16 -10
  199. data/lib/wx/doc/gen/colour_picker_event.rb +7 -4
  200. data/lib/wx/doc/gen/combo_box.rb +29 -20
  201. data/lib/wx/doc/gen/combo_ctrl.rb +960 -0
  202. data/lib/wx/doc/gen/command_link_button.rb +110 -0
  203. data/lib/wx/doc/gen/config_base.rb +10 -0
  204. data/lib/wx/doc/gen/context_help_button.rb +7 -6
  205. data/lib/wx/doc/gen/control.rb +12 -9
  206. data/lib/wx/doc/gen/control_with_items.rb +5 -5
  207. data/lib/wx/doc/gen/core.rb +8 -5
  208. data/lib/wx/doc/gen/cursor.rb +18 -18
  209. data/lib/wx/doc/gen/data_format.rb +5 -5
  210. data/lib/wx/doc/gen/data_object.rb +32 -25
  211. data/lib/wx/doc/gen/date_event.rb +3 -3
  212. data/lib/wx/doc/gen/date_picker_ctrl.rb +16 -11
  213. data/lib/wx/doc/gen/dc.rb +162 -74
  214. data/lib/wx/doc/gen/defs.rb +16 -16
  215. data/lib/wx/doc/gen/dialog.rb +65 -22
  216. data/lib/wx/doc/gen/dir_dialog.rb +6 -2
  217. data/lib/wx/doc/gen/dir_filter_list_ctrl.rb +3 -3
  218. data/lib/wx/doc/gen/dir_picker_ctrl.rb +17 -12
  219. data/lib/wx/doc/gen/drag_drop.rb +26 -52
  220. data/lib/wx/doc/gen/drag_image.rb +13 -38
  221. data/lib/wx/doc/gen/editable_list_box.rb +9 -5
  222. data/lib/wx/doc/gen/event.rb +55 -32
  223. data/lib/wx/doc/gen/event_blocker.rb +1 -1
  224. data/lib/wx/doc/gen/event_filter.rb +5 -2
  225. data/lib/wx/doc/gen/event_list.rb +117 -19
  226. data/lib/wx/doc/gen/events.rb +351 -215
  227. data/lib/wx/doc/gen/evt_handler.rb +8 -8
  228. data/lib/wx/doc/gen/ext_help_controller.rb +9 -9
  229. data/lib/wx/doc/gen/file_dialog.rb +20 -9
  230. data/lib/wx/doc/gen/file_dialog_custom_control.rb +146 -0
  231. data/lib/wx/doc/gen/file_dialog_customize_hook.rb +159 -0
  232. data/lib/wx/doc/gen/file_dir_picker_event.rb +5 -3
  233. data/lib/wx/doc/gen/file_picker_ctrl.rb +19 -11
  234. data/lib/wx/doc/gen/file_system.rb +250 -0
  235. data/lib/wx/doc/gen/find_dialog_event.rb +7 -2
  236. data/lib/wx/doc/gen/find_replace_data.rb +1 -1
  237. data/lib/wx/doc/gen/find_replace_dialog.rb +2 -2
  238. data/lib/wx/doc/gen/flex_grid_sizer.rb +16 -10
  239. data/lib/wx/doc/gen/font.rb +90 -94
  240. data/lib/wx/doc/gen/font_data.rb +15 -11
  241. data/lib/wx/doc/gen/font_dialog.rb +5 -5
  242. data/lib/wx/doc/gen/font_picker_ctrl.rb +11 -7
  243. data/lib/wx/doc/gen/font_picker_event.rb +2 -1
  244. data/lib/wx/doc/gen/frame.rb +36 -27
  245. data/lib/wx/doc/gen/fs_file.rb +65 -38
  246. data/lib/wx/doc/gen/gauge.rb +14 -10
  247. data/lib/wx/doc/gen/gb_sizer_item.rb +12 -26
  248. data/lib/wx/doc/gen/gcdc.rb +5 -1
  249. data/lib/wx/doc/gen/gdi_common.rb +43 -41
  250. data/lib/wx/doc/gen/gdi_object.rb +1 -1
  251. data/lib/wx/doc/gen/generic_dir_ctrl.rb +19 -13
  252. data/lib/wx/doc/gen/graphics_context.rb +320 -88
  253. data/lib/wx/doc/gen/graphics_object.rb +48 -102
  254. data/lib/wx/doc/gen/grid/grid_cell_activatable_editor.rb +4 -2
  255. data/lib/wx/doc/gen/grid/grid_cell_attr.rb +41 -56
  256. data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_editor.rb +3 -1
  257. data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_renderer.rb +3 -1
  258. data/lib/wx/doc/gen/grid/grid_cell_bool_editor.rb +4 -2
  259. data/lib/wx/doc/gen/grid/grid_cell_bool_renderer.rb +3 -1
  260. data/lib/wx/doc/gen/grid/grid_cell_choice_editor.rb +7 -12
  261. data/lib/wx/doc/gen/grid/grid_cell_date_editor.rb +3 -1
  262. data/lib/wx/doc/gen/grid/grid_cell_date_renderer.rb +3 -1
  263. data/lib/wx/doc/gen/grid/grid_cell_date_time_renderer.rb +3 -1
  264. data/lib/wx/doc/gen/grid/grid_cell_editor.rb +19 -14
  265. data/lib/wx/doc/gen/grid/grid_cell_enum_editor.rb +3 -1
  266. data/lib/wx/doc/gen/grid/grid_cell_enum_renderer.rb +3 -1
  267. data/lib/wx/doc/gen/grid/grid_cell_float_editor.rb +3 -1
  268. data/lib/wx/doc/gen/grid/grid_cell_float_renderer.rb +3 -1
  269. data/lib/wx/doc/gen/grid/grid_cell_number_editor.rb +3 -1
  270. data/lib/wx/doc/gen/grid/grid_cell_number_renderer.rb +3 -1
  271. data/lib/wx/doc/gen/grid/grid_cell_renderer.rb +15 -13
  272. data/lib/wx/doc/gen/grid/grid_cell_string_renderer.rb +3 -1
  273. data/lib/wx/doc/gen/grid/grid_cell_text_editor.rb +3 -1
  274. data/lib/wx/doc/gen/grid/grid_ctrl.rb +446 -189
  275. data/lib/wx/doc/gen/grid/grid_editor_created_event.rb +5 -3
  276. data/lib/wx/doc/gen/grid/grid_event.rb +26 -9
  277. data/lib/wx/doc/gen/grid/grid_range_select_event.rb +15 -11
  278. data/lib/wx/doc/gen/grid/grid_size_event.rb +13 -7
  279. data/lib/wx/doc/gen/grid/grid_string_table.rb +8 -8
  280. data/lib/wx/doc/gen/grid/grid_table_base.rb +21 -21
  281. data/lib/wx/doc/gen/grid/grid_table_message.rb +5 -5
  282. data/lib/wx/doc/gen/grid_bag_sizer.rb +15 -15
  283. data/lib/wx/doc/gen/grid_sizer.rb +4 -4
  284. data/lib/wx/doc/gen/gui_event_loop.rb +132 -0
  285. data/lib/wx/doc/gen/header_ctrl.rb +755 -0
  286. data/lib/wx/doc/gen/header_ctrl_event.rb +131 -0
  287. data/lib/wx/doc/gen/help_controller.rb +25 -19
  288. data/lib/wx/doc/gen/help_provider.rb +3 -3
  289. data/lib/wx/doc/gen/html/html_cell.rb +100 -59
  290. data/lib/wx/doc/gen/html/html_cell_event.rb +7 -5
  291. data/lib/wx/doc/gen/html/html_easy_printing.rb +14 -9
  292. data/lib/wx/doc/gen/html/html_help_controller.rb +60 -46
  293. data/lib/wx/doc/gen/html/html_help_data.rb +5 -5
  294. data/lib/wx/doc/gen/html/html_help_window.rb +33 -35
  295. data/lib/wx/doc/gen/html/html_link_event.rb +4 -3
  296. data/lib/wx/doc/gen/html/html_list_box.rb +21 -13
  297. data/lib/wx/doc/gen/html/html_printout.rb +16 -6
  298. data/lib/wx/doc/gen/html/html_window.rb +54 -39
  299. data/lib/wx/doc/gen/hyperlink_ctrl.rb +15 -10
  300. data/lib/wx/doc/gen/hyperlink_event.rb +2 -1
  301. data/lib/wx/doc/gen/icon.rb +24 -24
  302. data/lib/wx/doc/gen/icon_location.rb +1 -1
  303. data/lib/wx/doc/gen/image.rb +164 -114
  304. data/lib/wx/doc/gen/image_list.rb +24 -30
  305. data/lib/wx/doc/gen/info_bar.rb +152 -0
  306. data/lib/wx/doc/gen/keyboard_state.rb +24 -24
  307. data/lib/wx/doc/gen/list_box.rb +40 -31
  308. data/lib/wx/doc/gen/list_ctrl.rb +223 -167
  309. data/lib/wx/doc/gen/list_event.rb +25 -3
  310. data/lib/wx/doc/gen/listbook.rb +13 -7
  311. data/lib/wx/doc/gen/locale.rb +22 -71
  312. data/lib/wx/doc/gen/log.rb +133 -106
  313. data/lib/wx/doc/gen/mdi_client_window.rb +3 -3
  314. data/lib/wx/doc/gen/mdi_frame.rb +23 -17
  315. data/lib/wx/doc/gen/media_ctrl.rb +22 -19
  316. data/lib/wx/doc/gen/media_event.rb +8 -2
  317. data/lib/wx/doc/gen/memory_dc.rb +26 -33
  318. data/lib/wx/doc/gen/menu.rb +24 -25
  319. data/lib/wx/doc/gen/menu_bar.rb +11 -28
  320. data/lib/wx/doc/gen/menu_item.rb +127 -46
  321. data/lib/wx/doc/gen/message_dialog.rb +54 -36
  322. data/lib/wx/doc/gen/mini_frame.rb +14 -5
  323. data/lib/wx/doc/gen/mouse_state.rb +51 -11
  324. data/lib/wx/doc/gen/multi_choice_dialog.rb +4 -2
  325. data/lib/wx/doc/gen/non_owned_window.rb +8 -9
  326. data/lib/wx/doc/gen/notebook.rb +27 -22
  327. data/lib/wx/doc/gen/number_entry_dialog.rb +3 -3
  328. data/lib/wx/doc/gen/object.rb +3 -14
  329. data/lib/wx/doc/gen/palette.rb +15 -17
  330. data/lib/wx/doc/gen/panel.rb +8 -7
  331. data/lib/wx/doc/gen/pen.rb +50 -37
  332. data/lib/wx/doc/gen/pg/numeric_property_validator.rb +3 -3
  333. data/lib/wx/doc/gen/pg/pg_array_editor_dialog.rb +17 -17
  334. data/lib/wx/doc/gen/pg/pg_cell.rb +13 -16
  335. data/lib/wx/doc/gen/pg/pg_editor.rb +95 -93
  336. data/lib/wx/doc/gen/pg/pg_multi_button.rb +64 -89
  337. data/lib/wx/doc/gen/pg/pg_properties.rb +379 -349
  338. data/lib/wx/doc/gen/pg/pg_property.rb +260 -307
  339. data/lib/wx/doc/gen/pg/pg_validation_info.rb +3 -3
  340. data/lib/wx/doc/gen/pg/property_grid.rb +49 -49
  341. data/lib/wx/doc/gen/pg/property_grid_event.rb +24 -11
  342. data/lib/wx/doc/gen/pg/property_grid_interface.rb +75 -69
  343. data/lib/wx/doc/gen/pg/property_grid_manager.rb +51 -54
  344. data/lib/wx/doc/gen/pg/property_grid_page.rb +22 -30
  345. data/lib/wx/doc/gen/pg/property_grid_page_state.rb +17 -26
  346. data/lib/wx/doc/gen/picker_base.rb +17 -16
  347. data/lib/wx/doc/gen/platform_info.rb +180 -20
  348. data/lib/wx/doc/gen/popup_window.rb +8 -8
  349. data/lib/wx/doc/gen/progress_dialog.rb +3 -3
  350. data/lib/wx/doc/gen/property_sheet_dialog.rb +20 -18
  351. data/lib/wx/doc/gen/prt/page_setup_dialog.rb +2 -2
  352. data/lib/wx/doc/gen/prt/preview_frame.rb +18 -2
  353. data/lib/wx/doc/gen/prt/print_abort_dialog.rb +1 -1
  354. data/lib/wx/doc/gen/prt/print_data.rb +68 -62
  355. data/lib/wx/doc/gen/prt/print_dialog.rb +4 -4
  356. data/lib/wx/doc/gen/prt/printer.rb +44 -49
  357. data/lib/wx/doc/gen/query_layout_info_event.rb +6 -5
  358. data/lib/wx/doc/gen/radio_box.rb +21 -19
  359. data/lib/wx/doc/gen/radio_button.rb +13 -11
  360. data/lib/wx/doc/gen/rbn/ribbon_art_provider.rb +67 -67
  361. data/lib/wx/doc/gen/rbn/ribbon_bar.rb +38 -20
  362. data/lib/wx/doc/gen/rbn/ribbon_bar_event.rb +5 -5
  363. data/lib/wx/doc/gen/rbn/ribbon_button_bar.rb +22 -15
  364. data/lib/wx/doc/gen/rbn/ribbon_button_bar_event.rb +6 -6
  365. data/lib/wx/doc/gen/rbn/ribbon_control.rb +11 -11
  366. data/lib/wx/doc/gen/rbn/ribbon_gallery.rb +14 -16
  367. data/lib/wx/doc/gen/rbn/ribbon_gallery_event.rb +5 -5
  368. data/lib/wx/doc/gen/rbn/ribbon_page.rb +12 -12
  369. data/lib/wx/doc/gen/rbn/ribbon_panel.rb +24 -22
  370. data/lib/wx/doc/gen/rbn/ribbon_panel_event.rb +5 -5
  371. data/lib/wx/doc/gen/rbn/ribbon_tool_bar.rb +17 -15
  372. data/lib/wx/doc/gen/rbn/ribbon_tool_bar_event.rb +6 -6
  373. data/lib/wx/doc/gen/rearrange_ctrl.rb +60 -0
  374. data/lib/wx/doc/gen/rearrange_list.rb +99 -0
  375. data/lib/wx/doc/gen/region.rb +35 -43
  376. data/lib/wx/doc/gen/region_iterator.rb +3 -3
  377. data/lib/wx/doc/gen/rtc/rich_text_box.rb +423 -0
  378. data/lib/wx/doc/gen/rtc/rich_text_buffer.rb +626 -1538
  379. data/lib/wx/doc/gen/rtc/rich_text_buffer_data_object.rb +37 -0
  380. data/lib/wx/doc/gen/rtc/rich_text_composite_object.rb +525 -0
  381. data/lib/wx/doc/gen/rtc/rich_text_ctrl.rb +488 -503
  382. data/lib/wx/doc/gen/rtc/rich_text_event.rb +31 -12
  383. data/lib/wx/doc/gen/rtc/rich_text_file_handler.rb +18 -18
  384. data/lib/wx/doc/gen/rtc/rich_text_formatting_dialog.rb +282 -0
  385. data/lib/wx/doc/gen/rtc/rich_text_header_footer_data.rb +23 -19
  386. data/lib/wx/doc/gen/rtc/rich_text_html_handler.rb +9 -18
  387. data/lib/wx/doc/gen/rtc/rich_text_image.rb +328 -0
  388. data/lib/wx/doc/gen/rtc/rich_text_object.rb +2849 -0
  389. data/lib/wx/doc/gen/rtc/rich_text_paragraph_layout_box.rb +1174 -0
  390. data/lib/wx/doc/gen/rtc/rich_text_printing.rb +29 -29
  391. data/lib/wx/doc/gen/rtc/rich_text_style_list_box.rb +305 -0
  392. data/lib/wx/doc/gen/rtc/rich_text_style_organiser_dialog.rb +183 -0
  393. data/lib/wx/doc/gen/rtc/rich_text_xml_handler.rb +3 -3
  394. data/lib/wx/doc/gen/rtc/symbol_picker_dialog.rb +34 -37
  395. data/lib/wx/doc/gen/sash_event.rb +8 -6
  396. data/lib/wx/doc/gen/sash_layout_window.rb +13 -11
  397. data/lib/wx/doc/gen/sash_window.rb +14 -9
  398. data/lib/wx/doc/gen/scroll_bar.rb +33 -12
  399. data/lib/wx/doc/gen/scrolled_canvas.rb +49 -37
  400. data/lib/wx/doc/gen/scrolled_control.rb +49 -37
  401. data/lib/wx/doc/gen/scrolled_window.rb +49 -37
  402. data/lib/wx/doc/gen/search_ctrl.rb +20 -13
  403. data/lib/wx/doc/gen/simplebook.rb +7 -7
  404. data/lib/wx/doc/gen/single_choice_dialog.rb +5 -4
  405. data/lib/wx/doc/gen/sizer.rb +69 -73
  406. data/lib/wx/doc/gen/sizer_item.rb +5 -5
  407. data/lib/wx/doc/gen/slider.rb +51 -18
  408. data/lib/wx/doc/gen/spin_button.rb +17 -11
  409. data/lib/wx/doc/gen/spin_ctrl.rb +15 -9
  410. data/lib/wx/doc/gen/spin_ctrl_double.rb +146 -0
  411. data/lib/wx/doc/gen/spin_double_event.rb +53 -0
  412. data/lib/wx/doc/gen/spin_event.rb +5 -2
  413. data/lib/wx/doc/gen/splash_screen.rb +16 -12
  414. data/lib/wx/doc/gen/splitter_event.rb +6 -2
  415. data/lib/wx/doc/gen/splitter_window.rb +36 -16
  416. data/lib/wx/doc/gen/static_bitmap.rb +9 -9
  417. data/lib/wx/doc/gen/static_box.rb +41 -37
  418. data/lib/wx/doc/gen/static_box_sizer.rb +13 -10
  419. data/lib/wx/doc/gen/static_line.rb +8 -7
  420. data/lib/wx/doc/gen/static_text.rb +15 -9
  421. data/lib/wx/doc/gen/status_bar.rb +53 -10
  422. data/lib/wx/doc/gen/stc/styled_text_ctrl.rb +200 -184
  423. data/lib/wx/doc/gen/stc/styled_text_event.rb +229 -54
  424. data/lib/wx/doc/gen/std_dialog_button_sizer.rb +11 -2
  425. data/lib/wx/doc/gen/svg_file_dc.rb +8 -8
  426. data/lib/wx/doc/gen/system_options.rb +13 -3
  427. data/lib/wx/doc/gen/system_settings.rb +9 -9
  428. data/lib/wx/doc/gen/task_bar_icon.rb +17 -9
  429. data/lib/wx/doc/gen/task_bar_icon_event.rb +3 -3
  430. data/lib/wx/doc/gen/text_attr.rb +67 -61
  431. data/lib/wx/doc/gen/text_ctrl.rb +58 -113
  432. data/lib/wx/doc/gen/text_entry.rb +44 -56
  433. data/lib/wx/doc/gen/text_entry_dialog.rb +23 -23
  434. data/lib/wx/doc/gen/text_validator.rb +3 -19
  435. data/lib/wx/doc/gen/time_picker_ctrl.rb +11 -10
  436. data/lib/wx/doc/gen/timer.rb +13 -9
  437. data/lib/wx/doc/gen/timer_event.rb +19 -26
  438. data/lib/wx/doc/gen/tip_provider.rb +3 -3
  439. data/lib/wx/doc/gen/toggle_button.rb +10 -9
  440. data/lib/wx/doc/gen/tool_bar.rb +71 -61
  441. data/lib/wx/doc/gen/tool_tip.rb +2 -10
  442. data/lib/wx/doc/gen/toolbook.rb +12 -9
  443. data/lib/wx/doc/gen/top_level_window.rb +53 -113
  444. data/lib/wx/doc/gen/tree_ctrl.rb +83 -33
  445. data/lib/wx/doc/gen/tree_event.rb +24 -3
  446. data/lib/wx/doc/gen/treebook.rb +20 -16
  447. data/lib/wx/doc/gen/ui_action_simulator.rb +20 -19
  448. data/lib/wx/doc/gen/utils.rb +20 -14
  449. data/lib/wx/doc/gen/v_list_box.rb +11 -11
  450. data/lib/wx/doc/gen/v_scrolled_window.rb +9 -9
  451. data/lib/wx/doc/gen/validator.rb +10 -8
  452. data/lib/wx/doc/gen/variant.rb +56 -119
  453. data/lib/wx/doc/gen/window.rb +314 -224
  454. data/lib/wx/doc/gen/window_dc.rb +1 -1
  455. data/lib/wx/doc/gen/with_images.rb +2 -2
  456. data/lib/wx/doc/gen/wizard.rb +21 -8
  457. data/lib/wx/doc/gen/wizard_event.rb +11 -4
  458. data/lib/wx/doc/gen/wizard_page.rb +3 -3
  459. data/lib/wx/doc/gen/wizard_page_simple.rb +8 -8
  460. data/lib/wx/doc/gen/wrap_sizer.rb +65 -0
  461. data/lib/wx/doc/gen/xml_node.rb +13 -13
  462. data/lib/wx/doc/gen/xml_resource.rb +24 -21
  463. data/lib/wx/doc/graphics_context.rb +59 -39
  464. data/lib/wx/doc/grid/grid.rb +16 -1
  465. data/lib/wx/doc/hboxsizer.rb +33 -0
  466. data/lib/wx/doc/help_controller.rb +6 -0
  467. data/lib/wx/doc/html/html_help_controller.rb +6 -0
  468. data/lib/wx/doc/icon.rb +13 -5
  469. data/lib/wx/doc/id_helper.rb +6 -0
  470. data/lib/wx/doc/image.rb +50 -12
  471. data/lib/wx/doc/list_ctrl.rb +38 -0
  472. data/lib/wx/doc/log.rb +45 -0
  473. data/lib/wx/doc/memory_dc.rb +6 -0
  474. data/lib/wx/doc/mirror_dc.rb +6 -0
  475. data/lib/wx/doc/pen.rb +6 -0
  476. data/lib/wx/doc/pg/events.rb +6 -0
  477. data/lib/wx/doc/pg/pg_property.rb +17 -0
  478. data/lib/wx/doc/pg/pgeditor.rb +6 -0
  479. data/lib/wx/doc/pg/property_grid.rb +6 -0
  480. data/lib/wx/doc/pg/property_grid_interface.rb +6 -0
  481. data/lib/wx/doc/progress_dialog.rb +6 -0
  482. data/lib/wx/doc/prt/page_setup_dialog.rb +6 -0
  483. data/lib/wx/doc/prt/print_data.rb +6 -0
  484. data/lib/wx/doc/prt/print_dialog.rb +6 -0
  485. data/lib/wx/doc/prt/printer.rb +6 -0
  486. data/lib/wx/doc/prt/printer_dc.rb +8 -2
  487. data/lib/wx/doc/radio_box.rb +6 -0
  488. data/lib/wx/doc/rbn/ribbon_bar.rb +6 -0
  489. data/lib/wx/doc/rbn/ribbon_button_bar.rb +6 -0
  490. data/lib/wx/doc/rbn/ribbon_gallery.rb +6 -0
  491. data/lib/wx/doc/rbn/ribbon_tool_bar.rb +6 -0
  492. data/lib/wx/doc/region_iterator.rb +6 -0
  493. data/lib/wx/doc/rtc/richtext_buffer.rb +28 -0
  494. data/lib/wx/doc/rtc/richtext_formatting_dialog.rb +68 -0
  495. data/lib/wx/doc/rtc/richtext_printing.rb +6 -0
  496. data/lib/wx/doc/rtc/richtext_style_sheet.rb +20 -0
  497. data/lib/wx/doc/scaled_dc.rb +7 -1
  498. data/lib/wx/doc/screen_dc.rb +6 -0
  499. data/lib/wx/doc/stock_objects.rb +6 -0
  500. data/lib/wx/doc/stream.rb +6 -0
  501. data/lib/wx/doc/svg_file_dc.rb +6 -0
  502. data/lib/wx/doc/system_settings.rb +6 -0
  503. data/lib/wx/doc/text_validator.rb +18 -0
  504. data/lib/wx/doc/textctrl.rb +89 -0
  505. data/lib/wx/doc/tree_event.rb +20 -0
  506. data/lib/wx/doc/treebook.rb +6 -0
  507. data/lib/wx/doc/v_list_box.rb +6 -0
  508. data/lib/wx/doc/variant.rb +6 -0
  509. data/lib/wx/doc/vboxsizer.rb +33 -0
  510. data/lib/wx/doc/window.rb +6 -0
  511. data/lib/wx/doc/window_disabler.rb +6 -0
  512. data/lib/wx/doc/xml_resource.rb +8 -0
  513. data/lib/wx/global_const.rb +4 -1
  514. data/lib/wx/grid/grid.rb +23 -3
  515. data/lib/wx/grid/keyword_defs.rb +8 -1
  516. data/lib/wx/grid/require.rb +4 -1
  517. data/lib/wx/grid.rb +4 -1
  518. data/lib/wx/helpers.rb +8 -1
  519. data/lib/wx/html/htmlhelpcontroller.rb +29 -3
  520. data/lib/wx/html/htmlwindow.rb +23 -12
  521. data/lib/wx/html/keyword_defs.rb +8 -1
  522. data/lib/wx/html/require.rb +4 -1
  523. data/lib/wx/html/simple_html_listbox.rb +3 -0
  524. data/lib/wx/html.rb +4 -1
  525. data/lib/wx/keyword_ctors.rb +22 -3
  526. data/lib/wx/keyword_defs.rb +55 -3
  527. data/lib/wx/pg/events.rb +4 -1
  528. data/lib/wx/pg/keyword_defs.rb +8 -1
  529. data/lib/wx/pg/pg_editor.rb +3 -0
  530. data/lib/wx/pg/pg_properties.rb +4 -1
  531. data/lib/wx/pg/pg_property.rb +18 -5
  532. data/lib/wx/pg/property_grid.rb +4 -1
  533. data/lib/wx/pg/property_grid_interface.rb +3 -0
  534. data/lib/wx/pg/require.rb +4 -1
  535. data/lib/wx/pg.rb +4 -1
  536. data/lib/wx/prt/keyword_defs.rb +8 -1
  537. data/lib/wx/prt/page_setup_dialog.rb +3 -0
  538. data/lib/wx/prt/previewframe.rb +5 -0
  539. data/lib/wx/prt/require.rb +4 -1
  540. data/lib/wx/prt.rb +4 -1
  541. data/lib/wx/rbn/events.rb +4 -1
  542. data/lib/wx/rbn/keyword_defs.rb +8 -1
  543. data/lib/wx/rbn/require.rb +5 -1
  544. data/lib/wx/rbn/ribbon_art_provider.rb +3 -1
  545. data/lib/wx/rbn/ribbon_bar.rb +3 -0
  546. data/lib/wx/rbn/ribbon_button_bar.rb +3 -0
  547. data/lib/wx/rbn/ribbon_control.rb +3 -0
  548. data/lib/wx/rbn/ribbon_gallery.rb +10 -0
  549. data/lib/wx/rbn/ribbon_page.rb +3 -0
  550. data/lib/wx/rbn/ribbon_panel.rb +3 -0
  551. data/lib/wx/rbn/ribbon_tool_bar.rb +3 -0
  552. data/lib/wx/rbn.rb +4 -1
  553. data/lib/wx/rtc/ext.rb +4 -1
  554. data/lib/wx/rtc/keyword_defs.rb +18 -7
  555. data/lib/wx/rtc/require.rb +8 -1
  556. data/lib/wx/rtc/richtext_buffer.rb +36 -0
  557. data/lib/wx/rtc/richtext_formatting_dialog.rb +88 -0
  558. data/lib/wx/rtc/richtext_style_organiser_dialog.rb +46 -0
  559. data/lib/wx/rtc/symbol_picker_dialog.rb +47 -0
  560. data/lib/wx/rtc.rb +5 -1
  561. data/lib/wx/stc/keyword_defs.rb +8 -1
  562. data/lib/wx/stc/require.rb +4 -1
  563. data/lib/wx/stc.rb +4 -1
  564. data/lib/wx/version.rb +5 -1
  565. data/lib/wx/wxruby/base.rb +4 -1
  566. data/lib/wx/wxruby/cmd/sampler.rb +4 -1
  567. data/lib/wx/wxruby/cmd/test.rb +4 -1
  568. data/lib/wx.rb +4 -1
  569. data/lib/wxruby_aui.so +0 -0
  570. data/lib/wxruby_core.so +0 -0
  571. data/lib/wxruby_grid.so +0 -0
  572. data/lib/wxruby_html.so +0 -0
  573. data/lib/wxruby_pg.so +0 -0
  574. data/lib/wxruby_prt.so +0 -0
  575. data/lib/wxruby_rbn.so +0 -0
  576. data/lib/wxruby_rtc.so +0 -0
  577. data/lib/wxruby_stc.so +0 -0
  578. data/rakelib/install.rb +4 -1
  579. data/rakelib/lib/config/cygwin.rb +4 -1
  580. data/rakelib/lib/config/linux.rb +4 -1
  581. data/rakelib/lib/config/macosx.rb +5 -2
  582. data/rakelib/lib/config/mingw.rb +4 -1
  583. data/rakelib/lib/config/netbsd.rb +4 -1
  584. data/rakelib/lib/config/unixish.rb +10 -7
  585. data/rakelib/lib/config.rb +7 -2
  586. data/rakelib/lib/ext/enum_chain.rb +4 -1
  587. data/rakelib/prepost.rake +4 -1
  588. data/rakelib/prepost.rb +4 -1
  589. data/samples/aui/aui.rb +8 -3
  590. data/samples/bigdemo/bigdemo.rb +9 -2
  591. data/samples/bigdemo/run.rb +9 -2
  592. data/samples/bigdemo/utils.rb +9 -1
  593. data/samples/calendar/calendar.rb +9 -4
  594. data/samples/caret/caret.rb +8 -3
  595. data/samples/controls/books.rb +8 -2
  596. data/samples/controls/controls.rb +33 -77
  597. data/samples/controls/get_item_sample.rb +8 -2
  598. data/samples/controls/htlbox.rb +10 -3
  599. data/samples/dialogs/dialogs.rb +9 -4
  600. data/samples/dialogs/wizard.rb +8 -3
  601. data/samples/dragdrop/dragdrop.rb +8 -3
  602. data/samples/drawing/bitmap.rb +8 -3
  603. data/samples/drawing/bitmap_image.rb +8 -3
  604. data/samples/drawing/graphics_drawing.rb +44 -33
  605. data/samples/drawing/image_prt.rb +8 -2
  606. data/samples/drawing/maths_images.rb +8 -3
  607. data/samples/drawing/rmagic_bitmap_image.rb +8 -3
  608. data/samples/etc/choice.rb +8 -3
  609. data/samples/etc/miniframe.rb +8 -3
  610. data/samples/etc/sash.rb +8 -3
  611. data/samples/etc/scrollwin.rb +8 -3
  612. data/samples/etc/system_settings.rb +8 -3
  613. data/samples/event/activation.rb +8 -3
  614. data/samples/event/event.rb +8 -3
  615. data/samples/event/threaded.rb +8 -3
  616. data/samples/event/update_ui_event.rb +8 -3
  617. data/samples/grid/grid.rb +9 -3
  618. data/samples/grid/gridtablebase.rb +8 -3
  619. data/samples/html/html.rb +8 -3
  620. data/samples/mdi/mdi.rb +8 -3
  621. data/samples/minimal/minimal.rb +8 -3
  622. data/samples/minimal/nothing.rb +8 -3
  623. data/samples/printing/printing.rb +8 -3
  624. data/samples/printing/printing2.rb +8 -2
  625. data/samples/propgrid/propgrid.rb +4 -1
  626. data/samples/propgrid/propgrid_minimal.rb +4 -2
  627. data/samples/propgrid/sample_props.rb +4 -1
  628. data/samples/ribbon/ribbon.rb +4 -1
  629. data/samples/sampler/editor.rb +4 -1
  630. data/samples/sampler/ext.rb +4 -1
  631. data/samples/sampler/sample.rb +13 -4
  632. data/samples/sampler/stc_editor.rb +4 -1
  633. data/samples/sampler/txt_editor.rb +4 -1
  634. data/samples/sampler.rb +11 -3
  635. data/samples/splash/splash.rb +4 -2
  636. data/samples/text/art/richtext/alignleft.xpm +24 -0
  637. data/samples/text/art/richtext/alignright.xpm +24 -0
  638. data/samples/text/art/richtext/bold.xpm +24 -0
  639. data/samples/text/art/richtext/centre.xpm +24 -0
  640. data/samples/text/art/richtext/copy.xpm +45 -0
  641. data/samples/text/art/richtext/cut.xpm +47 -0
  642. data/samples/text/art/richtext/font.xpm +25 -0
  643. data/samples/text/art/richtext/idea.xpm +47 -0
  644. data/samples/text/art/richtext/indentless.xpm +25 -0
  645. data/samples/text/art/richtext/indentmore.xpm +25 -0
  646. data/samples/text/art/richtext/italic.xpm +25 -0
  647. data/samples/text/art/richtext/open.xpm +58 -0
  648. data/samples/text/art/richtext/paste.xpm +47 -0
  649. data/samples/text/art/richtext/redo.xpm +59 -0
  650. data/samples/text/art/richtext/save.xpm +43 -0
  651. data/samples/text/art/richtext/smiley.xpm +42 -0
  652. data/samples/text/art/richtext/underline.xpm +25 -0
  653. data/samples/text/art/richtext/undo.xpm +59 -0
  654. data/samples/text/art/richtext/zebra.xpm +409 -0
  655. data/samples/text/rich_textctrl.rb +8 -3
  656. data/samples/text/richtext.rb +1824 -0
  657. data/samples/text/scintilla.rb +8 -3
  658. data/samples/text/textctrl.rb +21 -4
  659. data/samples/text/tn_richtext.png +0 -0
  660. data/samples/text/unicode.rb +9 -4
  661. data/samples/treectrl/treectrl.rb +10 -5
  662. data/samples/xrc/custom_xrc_sample.rb +8 -3
  663. data/samples/xrc/xrc_sample.rb +8 -3
  664. data/tests/art/test_art/bitmap/wxruby-128x128.png +0 -0
  665. data/tests/art/test_art/bitmap/wxruby-256x256.png +0 -0
  666. data/tests/art/test_art/bitmap/wxruby-64x64.png +0 -0
  667. data/tests/lib/item_container_tests.rb +3 -0
  668. data/tests/lib/text_entry_tests.rb +3 -0
  669. data/tests/lib/wxapp_runner.rb +3 -0
  670. data/tests/lib/wxframe_runner.rb +81 -3
  671. data/tests/test_app_event_filter.rb +3 -0
  672. data/tests/test_app_traits.rb +33 -0
  673. data/tests/test_art.rb +31 -0
  674. data/tests/test_art_provider.rb +3 -0
  675. data/tests/test_aui.rb +65 -0
  676. data/tests/test_basic.rb +5 -1
  677. data/tests/test_box_sizer.rb +164 -0
  678. data/tests/test_clipboard.rb +3 -0
  679. data/tests/test_config.rb +150 -0
  680. data/tests/test_dc.rb +3 -0
  681. data/tests/test_dialog.rb +3 -0
  682. data/tests/test_event_handling.rb +3 -0
  683. data/tests/test_events.rb +3 -0
  684. data/tests/test_ext_controls.rb +286 -3
  685. data/tests/test_file_dialog.rb +55 -0
  686. data/tests/test_font.rb +8 -5
  687. data/tests/test_gdi_object.rb +3 -0
  688. data/tests/test_geometry.rb +4 -0
  689. data/tests/test_grid_sizer.rb +151 -0
  690. data/tests/test_intl.rb +3 -0
  691. data/tests/test_item_data.rb +3 -0
  692. data/tests/test_list_ctrl.rb +56 -0
  693. data/tests/test_log.rb +226 -0
  694. data/tests/test_proof_check.rb +52 -0
  695. data/tests/test_richtext.rb +204 -0
  696. data/tests/test_std_controls.rb +99 -31
  697. data/tests/test_timer.rb +98 -0
  698. data/tests/test_variant.rb +3 -0
  699. data/tests/test_window.rb +10 -8
  700. data/tests/testapp.rb +4 -0
  701. data/tests/testapp_noframe.rb +4 -0
  702. metadata +87 -3
  703. data/lib/wx/doc/gen/html/html_help_frame.rb +0 -112
@@ -0,0 +1,960 @@
1
+ # :stopdoc:
2
+ # This file is automatically generated by the WXRuby3 documentation
3
+ # generator. Do not alter this file.
4
+ # :startdoc:
5
+
6
+
7
+ module Wx
8
+
9
+ #
10
+ #
11
+ CC_SPECIAL_DCLICK = 256
12
+
13
+ #
14
+ #
15
+ CC_STD_BUTTON = 512
16
+
17
+ #
18
+ #
19
+ #
20
+ #
21
+ class OwnerDrawnComboBoxPaintingFlags < Wx::Enum
22
+
23
+ # Combo control is being painted, instead of a list item.
24
+ #
25
+ ODCB_PAINTING_CONTROL = Wx::OwnerDrawnComboBoxPaintingFlags.new(1)
26
+
27
+ # An item with selection background is being painted.
28
+ #
29
+ ODCB_PAINTING_SELECTED = Wx::OwnerDrawnComboBoxPaintingFlags.new(2)
30
+
31
+ end # OwnerDrawnComboBoxPaintingFlags
32
+
33
+ # Double-clicking cycles item if {Wx::CB_READONLY} is also used.
34
+ #
35
+ ODCB_DCLICK_CYCLES = 256
36
+
37
+ # If used, control itself is not custom paint using callback.
38
+ #
39
+ ODCB_STD_CONTROL_PAINT = 4096
40
+
41
+ # A combo control is a generic combobox that allows totally custom popup.
42
+ # In addition it has other customization features. For instance, position and size of the dropdown button can be changed.
43
+ #
44
+ # == Setting Custom Popup for wxComboCtrl
45
+ #
46
+ # {Wx::ComboCtrl} needs to be told somehow which control to use and this is done by {Wx::ComboCtrl#set_popup_control}. However, we need something more than just a {Wx::Control} in this method as, for example, we need to call SetStringValue("initial text value") and {Wx::Control} doesn't have such method. So we also need a {Wx::ComboPopup} which is an interface which must be implemented by a control to be usable as a popup.
47
+ # We couldn't derive {Wx::ComboPopup} from {Wx::Control} as this would make it impossible to have a class deriving from a wxWidgets control and from it, so instead it is just a mix-in.
48
+ # Here's a minimal sample of {Wx::ListView} popup:
49
+ #
50
+ # ```
51
+ # #include <wx/combo.h>
52
+ # #include <wx/listctrl.h>
53
+ #
54
+ # class wxListViewComboPopup : public wxListView, public wxComboPopup
55
+ # {
56
+ # public:
57
+ # // Initialize member variables
58
+ # virtual void Init()
59
+ # {
60
+ # m_value = -1;
61
+ # }
62
+ #
63
+ # // Create popup control
64
+ # virtual bool Create(wxWindow* parent)
65
+ # {
66
+ # return wxListView::Create(parent,1,wxPoint(0,0),wxDefaultSize);
67
+ # }
68
+ #
69
+ # // Return pointer to the created control
70
+ # virtual wxWindow *GetControl() { return this; }
71
+ #
72
+ # // Translate string into a list selection
73
+ # virtual void SetStringValue(const wxString& s)
74
+ # {
75
+ # int n = wxListView::FindItem(-1,s);
76
+ # if ( n >= 0 && n < wxListView::GetItemCount() )
77
+ # wxListView::Select(n);
78
+ # }
79
+ #
80
+ # // Get list selection as a string
81
+ # virtual wxString GetStringValue() const
82
+ # {
83
+ # if ( m_value >= 0 )
84
+ # return wxListView::GetItemText(m_value);
85
+ # return wxEmptyString;
86
+ # }
87
+ #
88
+ # // Do mouse hot-tracking (which is typical in list popups)
89
+ # void OnMouseMove(wxMouseEvent& event)
90
+ # {
91
+ # // TODO: Move selection to cursor
92
+ # }
93
+ #
94
+ # // On mouse left up, set the value and close the popup
95
+ # void OnMouseClick(wxMouseEvent& WXUNUSED(event))
96
+ # {
97
+ # m_value = wxListView::GetFirstSelected();
98
+ #
99
+ # // TODO: Send event as well
100
+ #
101
+ # Dismiss();
102
+ # }
103
+ #
104
+ # protected:
105
+ #
106
+ # int m_value; // current item index
107
+ #
108
+ # private:
109
+ # wxDECLARE_EVENT_TABLE();
110
+ # };
111
+ #
112
+ # wxBEGIN_EVENT_TABLE(wxListViewComboPopup, wxListView)
113
+ # EVT_MOTION(wxListViewComboPopup::OnMouseMove)
114
+ # EVT_LEFT_UP(wxListViewComboPopup::OnMouseClick)
115
+ # wxEND_EVENT_TABLE()
116
+ # ```
117
+ #
118
+ # Here's how you would create and populate it in a dialog constructor:
119
+ #
120
+ # ```
121
+ # wxComboCtrl* comboCtrl = new wxComboCtrl(this, wxID_ANY, wxEmptyString);
122
+ #
123
+ # wxListViewComboPopup* popupCtrl = new wxListViewComboPopup();
124
+ #
125
+ # // It is important to call SetPopupControl() as soon as possible
126
+ # comboCtrl->SetPopupControl(popupCtrl);
127
+ #
128
+ # // Populate using wxListView methods
129
+ # popupCtrl->InsertItem(popupCtrl->GetItemCount(), "First Item");
130
+ # popupCtrl->InsertItem(popupCtrl->GetItemCount(), "Second Item");
131
+ # popupCtrl->InsertItem(popupCtrl->GetItemCount(), "Third Item");
132
+ # ```
133
+ #
134
+ # === Styles
135
+ #
136
+ # This class supports the following styles:
137
+ #
138
+ # - {Wx::CB_READONLY}: Text will not be editable.
139
+ #
140
+ # - {Wx::CB_SORT}: Sorts the entries in the list alphabetically.
141
+ #
142
+ # - {Wx::TE_PROCESS_ENTER}: The control will generate the event {Wx::EVT_TEXT_ENTER} (otherwise pressing Enter key is either processed internally by the control or used for navigation between dialog controls). Windows only.
143
+ #
144
+ # - {Wx::CC_SPECIAL_DCLICK}: Double-clicking triggers a call to popup's OnComboDoubleClick. Actual behaviour is defined by a derived class. For instance, {Wx::OwnerDrawnComboBox} will cycle an item. This style only applies if {Wx::CB_READONLY} is used as well.
145
+ #
146
+ # - {Wx::CC_STD_BUTTON}: Drop button will behave more like a standard push button.
147
+ #
148
+ # === Events emitted by this class
149
+ #
150
+ # The following event-handler methods redirect the events to member method or handler blocks for {Wx::CommandEvent} events.
151
+ # Event handler methods for events emitted by this class:
152
+ #
153
+ # - {Wx::EvtHandler#evt_text}(id, meth = nil, &block): Process a {Wx::EVT_TEXT} event, when the text changes.
154
+ #
155
+ # - {Wx::EvtHandler#evt_text_enter}(id, meth = nil, &block): Process a {Wx::EVT_TEXT_ENTER} event, when RETURN is pressed in the combo control.
156
+ #
157
+ # - {Wx::EvtHandler#evt_combobox_dropdown}(id, meth = nil, &block): Process a {Wx::EVT_COMBOBOX_DROPDOWN} event, which is generated when the popup window is shown (drops down).
158
+ #
159
+ # - {Wx::EvtHandler#evt_combobox_closeup}(id, meth = nil, &block): Process a {Wx::EVT_COMBOBOX_CLOSEUP} event, which is generated when the popup window of the combo control disappears (closes up). You should avoid adding or deleting items in this event.
160
+ #
161
+ # ===
162
+ #
163
+ # Category: {Wx::Controls} <div class='appearance'><span class='appearance'>Appearance:</span><table><tr><td> wxMSW Appearance
164
+ # </td><td> wxGTK Appearance
165
+ # </td><td> wxOSX Appearance
166
+ # </td></tr></table></div>
167
+ # @see Wx::ComboBox
168
+ # @see Wx::Choice
169
+ # @see Wx::OwnerDrawnComboBox
170
+ # @see Wx::ComboPopup
171
+ # @see Wx::CommandEvent
172
+ #
173
+ #
174
+ class ComboCtrl < Control
175
+
176
+ include Wx::TextEntry
177
+
178
+ # @overload set_margins(pt)
179
+ # Attempts to set the control margins.
180
+ # When margins are given as {Wx::Point}, x indicates the left and y the top margin. Use -1 to indicate that an existing value should be used.
181
+ # true if setting of all requested margins was successful.
182
+ # @param pt [Array(Integer, Integer), Wx::Point]
183
+ # @return [Boolean]
184
+ # @overload set_margins(left, top=-1)
185
+ # Attempts to set the control margins.
186
+ # When margins are given as {Wx::Point}, x indicates the left and y the top margin. Use -1 to indicate that an existing value should be used.
187
+ # true if setting of all requested margins was successful.
188
+ # @param left [Integer]
189
+ # @param top [Integer]
190
+ # @return [Boolean]
191
+ def set_margins(*args) end
192
+ alias_method :margins=, :set_margins
193
+
194
+ # @overload initialize()
195
+ # Default constructor.
196
+ # @return [Wx::ComboCtrl]
197
+ # @overload initialize(parent, id=Wx::StandardID::ID_ANY, value=(''), pos=Wx::DEFAULT_POSITION, size=Wx::DEFAULT_SIZE, style=0, validator=Wx::DEFAULT_VALIDATOR, name=Wx::ComboBoxNameStr)
198
+ # Constructor, creating and showing a combo control.
199
+ #
200
+ # @see Wx::ComboCtrl#create
201
+ # @see Wx::Validator
202
+ # @param parent [Wx::Window] Parent window. Must not be NULL.
203
+ # @param id [Integer] Window identifier. The value {Wx::StandardID::ID_ANY} indicates a default value.
204
+ # @param value [String] Initial selection string. An empty string indicates no selection.
205
+ # @param pos [Array(Integer, Integer), Wx::Point] Window position. If {Wx::DEFAULT_POSITION} is specified then a default position is chosen.
206
+ # @param size [Array(Integer, Integer), Wx::Size] Window size. If {Wx::DEFAULT_SIZE} is specified then the window is sized appropriately.
207
+ # @param style [Integer] Window style. See {Wx::ComboCtrl}.
208
+ # @param validator [Wx::Validator] Window validator.
209
+ # @param name [String] Window name.
210
+ # @return [Wx::ComboCtrl]
211
+ def initialize(*args) end
212
+
213
+ # Copies the selected text to the clipboard.
214
+ # @return [void]
215
+ def copy; end
216
+
217
+ # Creates the combo control for two-step construction.
218
+ # Derived classes should call or replace this function. See {Wx::ComboCtrl#initialize} for further details.
219
+ # @param parent [Wx::Window]
220
+ # @param id [Integer]
221
+ # @param value [String]
222
+ # @param pos [Array(Integer, Integer), Wx::Point]
223
+ # @param size [Array(Integer, Integer), Wx::Size]
224
+ # @param style [Integer]
225
+ # @param validator [Wx::Validator]
226
+ # @param name [String]
227
+ # @return [Boolean]
228
+ def create(parent, id=Wx::StandardID::ID_ANY, value=(''), pos=Wx::DEFAULT_POSITION, size=Wx::DEFAULT_SIZE, style=0, validator=Wx::DEFAULT_VALIDATOR, name=Wx::ComboBoxNameStr) end
229
+
230
+ # Copies the selected text to the clipboard and removes the selection.
231
+ # @return [void]
232
+ def cut; end
233
+
234
+ # Dismisses the popup window.
235
+ # Notice that calling this function will generate a {Wx::EVT_COMBOBOX_CLOSEUP} event.
236
+ # @return [void]
237
+ def dismiss; end
238
+
239
+ # Enables or disables popup animation, if any, depending on the value of the argument.
240
+ # @param enable [Boolean]
241
+ # @return [void]
242
+ def enable_popup_animation(enable=true) end
243
+
244
+ # Returns true if given key combination should toggle the popup.
245
+ # @param event [Wx::KeyEvent]
246
+ # @return [Boolean]
247
+ def is_key_popup_toggle(event) end
248
+ alias_method :key_popup_toggle?, :is_key_popup_toggle
249
+
250
+ # Prepare background of combo control or an item in a dropdown list in a way typical on platform.
251
+ # This includes painting the focus/disabled background and setting the clipping region.
252
+ # Unless you plan to paint your own focus indicator, you should always call this in your {Wx::ComboPopup#paint_combo_control} implementation. In addition, it sets pen and text colour to what looks good and proper against the background.
253
+ # flags: {Wx::RendererNative} flags: {Wx::CONTROL_ISSUBMENU}: is drawing a list item instead of combo control {Wx::CONTROL_SELECTED}: list item is selected {Wx::CONTROL_DISABLED}: control/item is disabled
254
+ # @param dc [Wx::DC]
255
+ # @param rect [Wx::Rect]
256
+ # @param flags [Integer]
257
+ # @return [void]
258
+ def prepare_background(dc, rect, flags) end
259
+
260
+ # Returns true if focus indicator should be drawn in the control.
261
+ # @return [Boolean]
262
+ def should_draw_focus; end
263
+
264
+ # Returns disabled button bitmap that has been set with {Wx::ComboCtrl#set_button_bitmaps}.
265
+ # The disabled state bitmap.
266
+ # @return [Wx::Bitmap]
267
+ def get_bitmap_disabled; end
268
+ alias_method :bitmap_disabled, :get_bitmap_disabled
269
+
270
+ # Returns button mouse hover bitmap that has been set with {Wx::ComboCtrl#set_button_bitmaps}.
271
+ # The mouse hover state bitmap.
272
+ # @return [Wx::Bitmap]
273
+ def get_bitmap_hover; end
274
+ alias_method :bitmap_hover, :get_bitmap_hover
275
+
276
+ # Returns default button bitmap that has been set with {Wx::ComboCtrl#set_button_bitmaps}.
277
+ # The normal state bitmap.
278
+ # @return [Wx::Bitmap]
279
+ def get_bitmap_normal; end
280
+ alias_method :bitmap_normal, :get_bitmap_normal
281
+
282
+ # Returns depressed button bitmap that has been set with {Wx::ComboCtrl#set_button_bitmaps}.
283
+ # The depressed state bitmap.
284
+ # @return [Wx::Bitmap]
285
+ def get_bitmap_pressed; end
286
+ alias_method :bitmap_pressed, :get_bitmap_pressed
287
+
288
+ # Returns current size of the dropdown button.
289
+ # @return [Wx::Size]
290
+ def get_button_size; end
291
+ alias_method :button_size, :get_button_size
292
+
293
+ # Returns custom painted area in control.
294
+ #
295
+ # @see Wx::ComboCtrl#set_custom_paint_width.
296
+ # @return [Integer]
297
+ def get_custom_paint_width; end
298
+ alias_method :custom_paint_width, :get_custom_paint_width
299
+
300
+ # Returns the current hint string.
301
+ # See {Wx::ComboCtrl#set_hint} for more information about hints.
302
+ # @return [String]
303
+ def get_hint; end
304
+ alias_method :hint, :get_hint
305
+
306
+ # Returns the insertion point for the combo control's text field.
307
+ # Under Windows, this function always returns 0 if the combo control doesn't have the focus.
308
+ # @return [Integer]
309
+ def get_insertion_point; end
310
+ alias_method :insertion_point, :get_insertion_point
311
+
312
+ # Returns the last position in the combo control text field.
313
+ # @return [Integer]
314
+ def get_last_position; end
315
+ alias_method :last_position, :get_last_position
316
+
317
+ # Returns the margins used by the control.
318
+ # The x field of the returned point is the horizontal margin and the y field is the vertical one.
319
+ # If given margin cannot be accurately determined, its value will be set to -1.
320
+ # @see Wx::ComboCtrl#set_margins
321
+ # @return [Wx::Point]
322
+ def get_margins; end
323
+ alias_method :margins, :get_margins
324
+
325
+ # Returns current popup interface that has been set with {Wx::ComboCtrl#set_popup_control}.
326
+ # @return [Wx::ComboPopup]
327
+ def get_popup_control; end
328
+ alias_method :popup_control, :get_popup_control
329
+
330
+ # Returns popup window containing the popup control.
331
+ # @return [Wx::Window]
332
+ def get_popup_window; end
333
+ alias_method :popup_window, :get_popup_window
334
+
335
+ # Get the text control which is part of the combo control.
336
+ # @return [Wx::TextCtrl]
337
+ def get_text_ctrl; end
338
+ alias_method :text_ctrl, :get_text_ctrl
339
+
340
+ # Returns area covered by the text field (includes everything except borders and the dropdown button).
341
+ # @return [Wx::Rect]
342
+ def get_text_rect; end
343
+ alias_method :text_rect, :get_text_rect
344
+
345
+ # Returns text representation of the current value.
346
+ # For writable combo control it always returns the value in the text field.
347
+ # @return [String]
348
+ def get_value; end
349
+ alias_method :value, :get_value
350
+
351
+ # Returns true if the popup is currently shown.
352
+ # @return [Boolean]
353
+ def is_popup_shown; end
354
+ alias_method :popup_shown?, :is_popup_shown
355
+
356
+ # Returns true if the popup window is in the given state.
357
+ # Possible values are:
358
+ #
359
+ # {Wx::ComboCtrl::Hidden}
360
+ # Popup window is hidden.
361
+ #
362
+ # {Wx::ComboCtrl::Animating}
363
+ # Popup window is being shown, but the popup animation has not yet finished.
364
+ #
365
+ # {Wx::ComboCtrl::Visible}
366
+ # Popup window is fully visible.
367
+ # @param state [Integer]
368
+ # @return [Boolean]
369
+ def is_popup_window_state(state) end
370
+ alias_method :popup_window_state?, :is_popup_window_state
371
+
372
+ # Implement in a derived class to define what happens on dropdown button click.
373
+ # Default action is to show the popup.
374
+ # If you implement this to do something else than show the popup, you must then also implement {Wx::ComboCtrl#do_set_popup_control} to always return NULL.
375
+ # @return [void]
376
+ def on_button_click; end
377
+
378
+ # Pastes text from the clipboard to the text field.
379
+ # @return [void]
380
+ def paste; end
381
+
382
+ # Shows the popup portion of the combo control.
383
+ # Notice that calling this function will generate a {Wx::EVT_COMBOBOX_DROPDOWN} event.
384
+ # @return [void]
385
+ def popup; end
386
+
387
+ # Removes the text between the two positions in the combo control text field.
388
+ # @param from [Integer] The first position.
389
+ # @param to [Integer] The last position.
390
+ # @return [void]
391
+ def remove(from, to) end
392
+
393
+ # Replaces the text between two positions with the given text, in the combo control text field.
394
+ # @param from [Integer] The first position.
395
+ # @param to [Integer] The second position.
396
+ # @param text [String] The text to insert.
397
+ # @return [void]
398
+ def replace(from, to, text) end
399
+
400
+ # Sets custom dropdown button graphics.
401
+ # @param bmpNormal [Wx::BitmapBundle,Wx::Bitmap,Wx::Icon,Wx::Image] Default button image.
402
+ # @param pushButtonBg [Boolean] If true, blank push button background is painted below the image.
403
+ # @param bmpPressed [Wx::BitmapBundle,Wx::Bitmap,Wx::Icon,Wx::Image] Depressed button image.
404
+ # @param bmpHover [Wx::BitmapBundle,Wx::Bitmap,Wx::Icon,Wx::Image] Button image when mouse hovers above it. This should be ignored on platforms and themes that do not generally draw different kind of button on mouse hover.
405
+ # @param bmpDisabled [Wx::BitmapBundle,Wx::Bitmap,Wx::Icon,Wx::Image] Disabled button image.
406
+ # @return [void]
407
+ def set_button_bitmaps(bmpNormal, pushButtonBg=false, bmpPressed=(Wx::BitmapBundle.new()), bmpHover=(Wx::BitmapBundle.new()), bmpDisabled=(Wx::BitmapBundle.new())) end
408
+ alias_method :button_bitmaps=, :set_button_bitmaps
409
+
410
+ # Sets size and position of dropdown button.
411
+ # @param width [Integer] Button width. Value = 0 specifies default.
412
+ # @param height [Integer] Button height. Value = 0 specifies default.
413
+ # @param side [Integer] Indicates which side the button will be placed. Value can be {Wx::Direction::LEFT} or {Wx::Direction::RIGHT}.
414
+ # @param spacingX [Integer] Horizontal spacing around the button. Default is 0.
415
+ # @return [void]
416
+ def set_button_position(width=-1, height=-1, side=Wx::Direction::RIGHT, spacingX=0) end
417
+ alias_method :button_position=, :set_button_position
418
+
419
+ # Set width, in pixels, of custom painted area in control without {Wx::CB_READONLY} style.
420
+ # In read-only {Wx::OwnerDrawnComboBox}, this is used to indicate area that is not covered by the focus rectangle.
421
+ # @param width [Integer]
422
+ # @return [void]
423
+ def set_custom_paint_width(width) end
424
+ alias_method :custom_paint_width=, :set_custom_paint_width
425
+
426
+ # Sets a hint shown in an empty unfocused combo control.
427
+ # Notice that hints are known as cue banners under MSW or placeholder strings under macOS.
428
+ # @see Wx::TextEntry#set_hint
429
+ # @param hint [String]
430
+ # @return [Boolean]
431
+ def set_hint(hint) end
432
+ alias_method :hint=, :set_hint
433
+
434
+ # Sets the insertion point in the text field.
435
+ # @param pos [Integer] The new insertion point.
436
+ # @return [void]
437
+ def set_insertion_point(pos) end
438
+ alias_method :insertion_point=, :set_insertion_point
439
+
440
+ # Sets the insertion point at the end of the combo control text field.
441
+ # @return [void]
442
+ def set_insertion_point_end; end
443
+
444
+ # Uses the given window instead of the default text control as the main window of the combo control.
445
+ # By default, combo controls without {Wx::CB_READONLY} style create a {Wx::TextCtrl} which shows the current value and allows to edit it. This method allows to use some other window instead of this {Wx::TextCtrl}.
446
+ # This method can be called after creating the combo fully, however in this case a {Wx::TextCtrl} is unnecessarily created just to be immediately destroyed when it's replaced by a custom window. If you wish to avoid this, you can use the following approach, also shown in the combo sample:
447
+ #
448
+ # ```
449
+ # // Create the combo control using its default ctor.
450
+ # wxComboCtrl* combo = new wxComboCtrl();
451
+ #
452
+ # // Create the custom main control using its default ctor too.
453
+ # SomeWindow* main = new SomeWindow();
454
+ #
455
+ # // Set the custom main control before creating the combo.
456
+ # combo->SetMainControl(main);
457
+ #
458
+ # // And only create it now: wxTextCtrl won't be unnecessarily
459
+ # // created because the combo already has a main window.
460
+ # combo->Create(panel, wxID_ANY, wxEmptyString);
461
+ #
462
+ # // Finally create the main window itself, now that its parent was
463
+ # // created.
464
+ # main->Create(combo, ...);
465
+ # ```
466
+ #
467
+ # Note that when a custom main window is used, none of the methods of this class inherited from {Wx::TextEntry}, such as {Wx::ComboCtrl#set_value}, {Wx::ComboCtrl#replace}, {Wx::ComboCtrl#set_insertion_point} etc do anything and simply return.
468
+ # @param win [Wx::Window]
469
+ # @return [void]
470
+ def set_main_control(win) end
471
+ alias_method :main_control=, :set_main_control
472
+
473
+ # Set side of the control to which the popup will align itself.
474
+ # Valid values are {Wx::Direction::LEFT}, {Wx::Direction::RIGHT} and 0. The default value 0 means that the most appropriate side is used (which, currently, is always {Wx::Direction::LEFT}).
475
+ # @param anchorSide [Integer]
476
+ # @return [void]
477
+ def set_popup_anchor(anchorSide) end
478
+ alias_method :popup_anchor=, :set_popup_anchor
479
+
480
+ # Set popup interface class derived from {Wx::ComboPopup}.
481
+ # This method should be called as soon as possible after the control has been created, unless {Wx::ComboCtrl#on_button_click} has been overridden.
482
+ # @param popup [Wx::ComboPopup]
483
+ # @return [void]
484
+ def set_popup_control(popup) end
485
+ alias_method :popup_control=, :set_popup_control
486
+
487
+ # Extends popup size horizontally, relative to the edges of the combo control.
488
+ # Popup minimum width may override arguments. It is up to the popup to fully take this into account.
489
+ # @param extLeft [Integer] How many pixel to extend beyond the left edge of the control. Default is 0.
490
+ # @param extRight [Integer] How many pixel to extend beyond the right edge of the control. Default is 0.
491
+ # @return [void]
492
+ def set_popup_extents(extLeft, extRight) end
493
+
494
+ # Sets preferred maximum height of the popup.
495
+ # Value -1 indicates the default.
496
+ # @param height [Integer]
497
+ # @return [void]
498
+ def set_popup_max_height(height) end
499
+ alias_method :popup_max_height=, :set_popup_max_height
500
+
501
+ # Sets minimum width of the popup.
502
+ # If wider than combo control, it will extend to the left.
503
+ # Value -1 indicates the default. Also, popup implementation may choose to ignore this.
504
+ # @param width [Integer]
505
+ # @return [void]
506
+ def set_popup_min_width(width) end
507
+ alias_method :popup_min_width=, :set_popup_min_width
508
+
509
+ # Selects the text between the two positions, in the combo control text field.
510
+ # @param from [Integer] The first position.
511
+ # @param to [Integer] The second position.
512
+ # @return [void]
513
+ def set_selection(from, to) end
514
+
515
+ # Sets the text for the text field without affecting the popup.
516
+ # Thus, unlike {Wx::ComboCtrl#set_value}, it works equally well with combo control using {Wx::CB_READONLY} style.
517
+ # @param value [String]
518
+ # @return [void]
519
+ def set_text(value) end
520
+ alias_method :text=, :set_text
521
+
522
+ # Set a custom window style for the embedded {Wx::TextCtrl}.
523
+ # Usually you will need to use this during two-step creation, just before {Wx::ComboCtrl#create}. For example:
524
+ #
525
+ # ```
526
+ # wxComboCtrl* comboCtrl = new wxComboCtrl();
527
+ #
528
+ # // Let's make the text right-aligned
529
+ # comboCtrl->SetTextCtrlStyle(wxTE_RIGHT);
530
+ #
531
+ # comboCtrl->Create(parent, wxID_ANY, wxEmptyString);
532
+ # ```
533
+ # @param style [Integer]
534
+ # @return [void]
535
+ def set_text_ctrl_style(style) end
536
+ alias_method :text_ctrl_style=, :set_text_ctrl_style
537
+
538
+ # Sets the text for the combo control text field.
539
+ # For a combo control with {Wx::CB_READONLY} style the string must be accepted by the popup (for instance, exist in the dropdown list), otherwise the call to {Wx::ComboCtrl#set_value} is ignored.
540
+ # @param value [String]
541
+ # @return [void]
542
+ def set_value(value) end
543
+ alias_method :value=, :set_value
544
+
545
+ # Changes value of the control as if user had done it by selecting an item from a combo box drop-down list.
546
+ # @param value [String]
547
+ # @return [void]
548
+ def set_value_by_user(value) end
549
+ alias_method :value_by_user=, :set_value_by_user
550
+
551
+ # Undoes the last edit in the text field.
552
+ # Windows only.
553
+ # @return [void]
554
+ def undo; end
555
+
556
+ # Enable or disable usage of an alternative popup window, which guarantees ability to focus the popup control, and allows common native controls to function normally.
557
+ # This alternative popup window is usually a {Wx::Dialog}, and as such, when it is shown, its parent top-level window will appear as if the focus has been lost from it.
558
+ # @param enable [Boolean]
559
+ # @return [void]
560
+ def use_alt_popup_window(enable=true) end
561
+
562
+ # Returns features supported by {Wx::ComboCtrl}.
563
+ # If needed feature is missing, you need to instead use {Wx::GenericComboCtrl}, which however may lack a native look and feel (but otherwise sports identical API).
564
+ # Value returned is a combination of the flags defined in {Wx::ComboCtrlFeatures}.
565
+ # @return [Integer]
566
+ def self.get_features; end
567
+
568
+
569
+ protected
570
+
571
+ # This member function is not normally called in application code.
572
+ # Instead, it can be implemented in a derived class to create a custom popup animation.
573
+ # The parameters are the same as those for {Wx::ComboCtrl#do_show_popup}.
574
+ # true if animation finishes before the function returns, false otherwise. In the latter case you need to manually call {Wx::ComboCtrl#do_show_popup} after the animation ends.
575
+ # @param rect [Wx::Rect]
576
+ # @param flags [Integer]
577
+ # @return [Boolean]
578
+ def animate_show(rect, flags) end
579
+
580
+ # This member function is not normally called in application code.
581
+ # Instead, it can be implemented in a derived class to return default {Wx::ComboPopup}, in case popup is NULL.
582
+ # If you have implemented {Wx::ComboCtrl#on_button_click} to do something else than show the popup, then {Wx::ComboCtrl#do_set_popup_control} must always set popup to NULL.
583
+ # @param popup [Wx::ComboPopup]
584
+ # @return [void]
585
+ def do_set_popup_control(popup) end
586
+
587
+ # This member function is not normally called in application code.
588
+ # Instead, it must be called in a derived class to make sure popup is properly shown after a popup animation has finished (but only if {Wx::ComboCtrl#animate_show} did not finish the animation within its function scope).
589
+ # @param rect [Wx::Rect] Position to show the popup window at, in screen coordinates.
590
+ # @param flags [Integer] Combination of any of the following: {Wx::ComboCtrl::ShowAbove}, and {Wx::ComboCtrl::CanDeferShow}.
591
+ # @return [void]
592
+ def do_show_popup(rect, flags) end
593
+
594
+ end # ComboCtrl
595
+
596
+ # In order to use a custom popup with {Wx::ComboCtrl}, an interface class must be derived from {Wx::ComboPopup}.
597
+ # For more information on how to use it, see Setting Custom Popup for wxComboCtrl.
598
+ # ===
599
+ #
600
+ # Category: {Wx::Controls}
601
+ # @see Wx::ComboCtrl
602
+ #
603
+ #
604
+ #
605
+ # @note In wxRuby this is a mixin module instead of a (base) class.
606
+ module ComboPopup
607
+
608
+ # Default constructor.
609
+ # It is recommended that internal variables are prepared in {Wx::ComboPopup#init} instead (because m_combo is not valid in constructor).
610
+ # @return [Wx::ComboPopup]
611
+ def initialize; end
612
+
613
+ # The derived class must implement this to create the popup control.
614
+ # true if the call succeeded, false otherwise.
615
+ # @param parent [Wx::Window]
616
+ # @return [Boolean]
617
+ def create(parent) end
618
+
619
+ # You only need to implement this member function if you create your popup class in non-standard way.
620
+ # The default implementation can handle both multiple-inherited popup control (as seen in {Wx::ComboCtrl} samples) and one allocated separately in heap.
621
+ # If you do completely re-implement this function, make sure it calls Destroy() for the popup control and also deletes this object (usually as the last thing).
622
+ # @return [void]
623
+ def destroy_popup; end
624
+
625
+ # Utility function that hides the popup.
626
+ # @return [void]
627
+ def dismiss; end
628
+
629
+ # Implement to customize matching of value string to an item container entry.
630
+ # Default implementation always return true and does not alter trueItem.
631
+ # @param item [String] String entered, usually by user or from SetValue() call.
632
+ # @param trueItem [String] When item matches an entry, but the entry's string representation is not exactly the same (case mismatch, for example), then the true item string should be written back to here, if it is not a NULL pointer.
633
+ # @return [Boolean]
634
+ def find_item(item, trueItem=nil) end
635
+
636
+ # The derived class may implement this to return adjusted size for the popup control, according to the variables given.
637
+ # This function is called each time popup is about to be shown.
638
+ # @param minWidth [Integer] Preferred minimum width.
639
+ # @param prefHeight [Integer] Preferred height. May be -1 to indicate no preference.
640
+ # @param maxHeight [Integer] Max height for window, as limited by screen size.
641
+ # @return [Wx::Size]
642
+ def get_adjusted_size(minWidth, prefHeight, maxHeight) end
643
+ alias_method :adjusted_size, :get_adjusted_size
644
+
645
+ # Returns pointer to the associated parent {Wx::ComboCtrl}.
646
+ # @return [Wx::ComboCtrl]
647
+ def get_combo_ctrl; end
648
+ alias_method :combo_ctrl, :get_combo_ctrl
649
+
650
+ # The derived class must implement this to return pointer to the associated control created in {Wx::ComboPopup#create}.
651
+ # @return [Wx::Window]
652
+ def get_control; end
653
+ alias_method :control, :get_control
654
+
655
+ # The derived class must implement this to return string representation of the value.
656
+ # @return [String]
657
+ def get_string_value; end
658
+ alias_method :string_value, :get_string_value
659
+
660
+ # The derived class must implement this to initialize its internal variables.
661
+ # This method is called immediately after construction finishes. m_combo member variable has been initialized before the call.
662
+ # @return [void]
663
+ def init; end
664
+
665
+ # Utility method that returns true if Create has been called.
666
+ # Useful in conjunction with {Wx::ComboPopup#lazy_create}.
667
+ # @return [Boolean]
668
+ def is_created; end
669
+ alias_method :created?, :is_created
670
+
671
+ # The derived class may implement this to return true if it wants to delay call to {Wx::ComboPopup#create} until the popup is shown for the first time.
672
+ # It is more efficient, but on the other hand it is often more convenient to have the control created immediately.
673
+ # Base implementation returns false.
674
+ # @return [Boolean]
675
+ def lazy_create; end
676
+
677
+ # The derived class may implement this to do something when the parent {Wx::ComboCtrl} gets double-clicked.
678
+ # @return [void]
679
+ def on_combo_double_click; end
680
+
681
+ # The derived class may implement this to receive key events from the parent {Wx::ComboCtrl}.
682
+ # Events not handled should be skipped, as usual.
683
+ # @param event [Wx::KeyEvent]
684
+ # @return [void]
685
+ def on_combo_key_event(event) end
686
+
687
+ # The derived class may implement this to do special processing when popup is hidden.
688
+ # @return [void]
689
+ def on_dismiss; end
690
+
691
+ # The derived class may implement this to do special processing when popup is shown.
692
+ # @return [void]
693
+ def on_popup; end
694
+
695
+ # The derived class may implement this to paint the parent {Wx::ComboCtrl}.
696
+ # Default implementation draws value as string.
697
+ # @param dc [Wx::DC]
698
+ # @param rect [Wx::Rect]
699
+ # @return [void]
700
+ def paint_combo_control(dc, rect) end
701
+
702
+ # The derived class must implement this to receive string value changes from {Wx::ComboCtrl}.
703
+ # @param value [String]
704
+ # @return [void]
705
+ def set_string_value(value) end
706
+ alias_method :string_value=, :set_string_value
707
+
708
+ end # ComboPopup
709
+
710
+ # {Wx::OwnerDrawnComboBox} is a combobox with owner-drawn list items.
711
+ # In essence, it is a {Wx::ComboCtrl} with {Wx::VListBox} popup and {Wx::ControlWithItems} interface.
712
+ # Implementing item drawing and measuring is similar to {Wx::VListBox}. Application needs to subclass {Wx::OwnerDrawnComboBox} and implement {Wx::OwnerDrawnComboBox#on_draw_item}, {Wx::OwnerDrawnComboBox#on_measure_item} and {Wx::OwnerDrawnComboBox#on_measure_item_width}.
713
+ # === Styles
714
+ #
715
+ # This class supports the following styles:
716
+ #
717
+ # - {Wx::ODCB_DCLICK_CYCLES}: Double-clicking cycles item if {Wx::CB_READONLY} is also used. Synonymous with {Wx::CC_SPECIAL_DCLICK}.
718
+ #
719
+ # - {Wx::ODCB_STD_CONTROL_PAINT}: Control itself is not custom painted using OnDrawItem. Even if this style is not used, writable {Wx::OwnerDrawnComboBox} is never custom painted unless {Wx::OwnerDrawnComboBox#set_custom_paint_width} is called.
720
+ #
721
+ # === Events emitted by this class
722
+ #
723
+ # The following event-handler methods redirect the events to member method or handler blocks for {Wx::CommandEvent} events.
724
+ # Event handler methods for events emitted by this class:
725
+ #
726
+ # - {Wx::EvtHandler#evt_combobox}(id, meth = nil, &block): Process a {Wx::EVT_COMBOBOX} event, when an item on the list is selected. Note that calling {Wx::OwnerDrawnComboBox#get_value} returns the new value of selection.
727
+ #
728
+ # ===
729
+ #
730
+ # Category: {Wx::Controls} <div class='appearance'><span class='appearance'>Appearance:</span><table><tr><td> wxMSW Appearance
731
+ # </td><td> wxGTK Appearance
732
+ # </td><td> wxOSX Appearance
733
+ # </td></tr></table></div>
734
+ # @see Wx::ComboCtrl window styles and Window Styles.
735
+ #
736
+ # @see Events emitted by Wx::ComboCtrl.
737
+ #
738
+ # @see Wx::ComboCtrl
739
+ # @see Wx::ComboBox
740
+ # @see Wx::VListBox
741
+ # @see Wx::CommandEvent
742
+ #
743
+ #
744
+ class OwnerDrawnComboBox < ComboCtrl
745
+
746
+ # @overload create(parent, id, value=(''), pos=Wx::DEFAULT_POSITION, size=Wx::DEFAULT_SIZE, style=0, validator=Wx::DEFAULT_VALIDATOR, name=Wx::ComboBoxNameStr)
747
+ # Creates the combobox for two-step construction.
748
+ # See {Wx::OwnerDrawnComboBox#initialize} for further details.
749
+ # Derived classes should call or replace this function.
750
+ # @param parent [Wx::Window]
751
+ # @param id [Integer]
752
+ # @param value [String]
753
+ # @param pos [Array(Integer, Integer), Wx::Point]
754
+ # @param size [Array(Integer, Integer), Wx::Size]
755
+ # @param style [Integer]
756
+ # @param validator [Wx::Validator]
757
+ # @param name [String]
758
+ # @return [Boolean]
759
+ # @overload create(parent, id, value, pos, size, choices, style=0, validator=Wx::DEFAULT_VALIDATOR, name=Wx::ComboBoxNameStr)
760
+ # Creates the combobox for two-step construction.
761
+ # See {Wx::OwnerDrawnComboBox#initialize} for further details.
762
+ # Derived classes should call or replace this function.
763
+ # @param parent [Wx::Window]
764
+ # @param id [Integer]
765
+ # @param value [String]
766
+ # @param pos [Array(Integer, Integer), Wx::Point]
767
+ # @param size [Array(Integer, Integer), Wx::Size]
768
+ # @param choices [Array<String>]
769
+ # @param style [Integer]
770
+ # @param validator [Wx::Validator]
771
+ # @param name [String]
772
+ # @return [Boolean]
773
+ def create(*args) end
774
+
775
+ # @overload initialize()
776
+ # Default constructor.
777
+ # @return [Wx::OwnerDrawnComboBox]
778
+ # @overload initialize(parent, id, value, pos, size, choices, style=0, validator=Wx::DEFAULT_VALIDATOR, name=("comboBox"))
779
+ # Constructor, creating and showing a owner-drawn combobox.
780
+ #
781
+ # @see Wx::OwnerDrawnComboBox#create
782
+ # @see Wx::Validator
783
+ # @param parent [Wx::Window] Parent window. Must not be NULL.
784
+ # @param id [Integer] Window identifier. The value {Wx::StandardID::ID_ANY} indicates a default value.
785
+ # @param value [String] Initial selection string. An empty string indicates no selection.
786
+ # @param pos [Array(Integer, Integer), Wx::Point] Window position.
787
+ # @param size [Array(Integer, Integer), Wx::Size] Window size. If {Wx::DEFAULT_SIZE} is specified then the window is sized appropriately.
788
+ # @param choices [Array<String>] An array of strings with which to initialise the control.
789
+ # @param style [Integer] Window style. See {Wx::OwnerDrawnComboBox}.
790
+ # @param validator [Wx::Validator] Window validator.
791
+ # @param name [String] Window name.
792
+ # @return [Wx::OwnerDrawnComboBox]
793
+ def initialize(*args) end
794
+
795
+ # {Wx::OwnerDrawnComboBox#is_empty} is not available in this class.
796
+ # This method is documented here only to notice that it can't be used with this class because of the ambiguity between the methods with the same name inherited from {Wx::ItemContainer} and {Wx::TextEntry} base classes.
797
+ # Because of this, any attempt to call it results in a compilation error and you should use either {Wx::OwnerDrawnComboBox#is_list_empty} or {Wx::OwnerDrawnComboBox#is_text_empty} depending on what exactly do you want to test.
798
+ # @return [Boolean]
799
+ def is_empty; end
800
+ alias_method :empty?, :is_empty
801
+
802
+ # Returns true if the list of combobox choices is empty.
803
+ # Use this method instead of (not available in this class) {Wx::OwnerDrawnComboBox#is_empty} to test if the list of items is empty.
804
+ # @return [Boolean]
805
+ def is_list_empty; end
806
+ alias_method :list_empty?, :is_list_empty
807
+
808
+ # Returns true if the text of the combobox is empty.
809
+ # Use this method instead of (not available in this class) {Wx::OwnerDrawnComboBox#is_empty} to test if the text currently entered into the combobox is empty.
810
+ # @return [Boolean]
811
+ def is_text_empty; end
812
+ alias_method :text_empty?, :is_text_empty
813
+
814
+ # Returns index to the widest item in the list.
815
+ # @return [Integer]
816
+ def get_widest_item; end
817
+ alias_method :widest_item, :get_widest_item
818
+
819
+ # Returns width of the widest item in the list.
820
+ # @return [Integer]
821
+ def get_widest_item_width; end
822
+ alias_method :widest_item_width, :get_widest_item_width
823
+
824
+ # @overload append(item)
825
+ # Appends item into the control.
826
+ # The return value is the index of the newly inserted item. Note that this may be different from the last one if the control is sorted (e.g. has {Wx::LB_SORT} or {Wx::CB_SORT} style).
827
+ # @param item [String] String to add.
828
+ # @return [Integer]
829
+ # @overload append(item, clientData)
830
+ # Appends item into the control.
831
+ # The return value is the index of the newly inserted item. Note that this may be different from the last one if the control is sorted (e.g. has {Wx::LB_SORT} or {Wx::CB_SORT} style).
832
+ # @param item [String] String to add.
833
+ # @param clientData [Object] Pointer to client data to associate with the new item.
834
+ # @return [Integer]
835
+ # @overload append(items)
836
+ # Appends several items at once into the control.
837
+ # Notice that calling this method is usually much faster than appending them one by one if you need to add a lot of items.
838
+ # @param items [Array<String>] Array of strings to insert.
839
+ # @return [Integer]
840
+ # @overload append(items, clientData)
841
+ # Appends several items at once into the control.
842
+ # Notice that calling this method is usually much faster than appending them one by one if you need to add a lot of items.
843
+ # @param items [Array<String>] Array of strings to insert.
844
+ # @param clientData [Array] Array of client data pointers of the same size as items to associate with the new items.
845
+ # @return [Integer]
846
+ def append(*args) end
847
+
848
+ # Returns a pointer to the client data associated with the given item (if any).
849
+ # It is an error to call this function for a control which doesn't have untyped client data at all although it is OK to call it even if the given item doesn't have any client data associated with it (but other items do).
850
+ #
851
+ # A pointer to the client data, or NULL if not present.
852
+ # @param n [Integer] The zero-based position of the item.
853
+ # @return [Object]
854
+ def get_client_data(n) end
855
+ alias_method :client_data, :get_client_data
856
+
857
+ # Associates the given untyped client data pointer with the given item.
858
+ # Note that it is an error to call this function if any typed client data pointers had been associated with the control items before.
859
+ # @param n [Integer] The zero-based item index.
860
+ # @param data [Object] The client data to associate with the item.
861
+ # @return [void]
862
+ def set_client_data(n, data) end
863
+
864
+ # @overload insert(item, pos)
865
+ # Inserts item into the control.
866
+ # The return value is the index of the newly inserted item. If the insertion failed for some reason, -1 is returned.
867
+ # @param item [String] String to add.
868
+ # @param pos [Integer] Position to insert item before, zero based.
869
+ # @return [Integer]
870
+ # @overload insert(item, pos, clientData)
871
+ # Inserts item into the control.
872
+ # The return value is the index of the newly inserted item. If the insertion failed for some reason, -1 is returned.
873
+ # @param item [String] String to add.
874
+ # @param pos [Integer] Position to insert item before, zero based.
875
+ # @param clientData [Object] Pointer to client data to associate with the new item.
876
+ # @return [Integer]
877
+ # @overload insert(items, pos)
878
+ # Inserts several items at once into the control.
879
+ # Notice that calling this method is usually much faster than inserting them one by one if you need to insert a lot of items.
880
+ #
881
+ # The return value is the index of the last inserted item. If the insertion failed for some reason, -1 is returned.
882
+ # @param items [Array<String>] Array of strings to insert.
883
+ # @param pos [Integer] Position to insert the items before, zero based.
884
+ # @return [Integer]
885
+ # @overload insert(items, pos, clientData)
886
+ # Inserts several items at once into the control.
887
+ # Notice that calling this method is usually much faster than inserting them one by one if you need to insert a lot of items.
888
+ #
889
+ # The return value is the index of the last inserted item. If the insertion failed for some reason, -1 is returned.
890
+ # @param items [Array<String>] Array of strings to insert.
891
+ # @param pos [Integer] Position to insert the items before, zero based.
892
+ # @param clientData [Array] Array of client data pointers of the same size as items to associate with the new items.
893
+ # @return [Integer]
894
+ def insert(*args) end
895
+
896
+ # @overload set(items)
897
+ # Replaces the current control contents with the given items.
898
+ # Notice that calling this method is usually much faster than appending them one by one if you need to add a lot of items.
899
+ # @param items [Array<String>] Array of strings to insert.
900
+ # @return [void]
901
+ # @overload set(items, clientData)
902
+ # Replaces the current control contents with the given items.
903
+ # Notice that calling this method is usually much faster than appending them one by one if you need to add a lot of items.
904
+ # @param items [Array<String>] Array of strings to insert.
905
+ # @param clientData [Array] Array of client data pointers of the same size as items to associate with the new items.
906
+ # @return [void]
907
+ def set(*args) end
908
+
909
+ # Deletes an item from the control.
910
+ # The client data associated with the item will be also deleted if it is owned by the control. Note that it is an error (signalled by an assert failure in debug builds) to remove an item with the index negative or greater or equal than the number of items in the control.
911
+ # If there is a currently selected item below the item being deleted, i.e. if {Wx::OwnerDrawnComboBox#get_selection} returns a valid index greater than or equal to n, the selection is invalidated when this function is called. However if the selected item appears before the item being deleted, the selection is preserved unchanged.
912
+ # @see Wx::OwnerDrawnComboBox#clear
913
+ # @param n [Integer] The zero-based item index.
914
+ # @return [void]
915
+ def delete(n) end
916
+
917
+ # Returns true, if either untyped data (<code>void*</code>) or object data ({Wx::ClientData}*) is associated with the items of the control.
918
+ # @return [Boolean]
919
+ def has_client_data; end
920
+ alias_method :has_client_data?, :has_client_data
921
+
922
+
923
+ protected
924
+
925
+ # This method is used to draw the items background and, maybe, a border around it.
926
+ # The base class version implements a reasonable default behaviour which consists in drawing the selected item with the standard background colour and drawing a border around the item if it is either selected or current.
927
+ # flags has the same meaning as with {Wx::OwnerDrawnComboBox#on_draw_item}.
928
+ # @param dc [Wx::DC]
929
+ # @param rect [Wx::Rect]
930
+ # @param item [Integer]
931
+ # @param flags [Integer]
932
+ # @return [void]
933
+ def on_draw_background(dc, rect, item, flags) end
934
+
935
+ # The derived class may implement this function to actually draw the item with the given index on the provided DC.
936
+ # If function is not implemented, the item text is simply drawn, as if the control was a normal combobox.
937
+ # @param dc [Wx::DC] The device context to use for drawing
938
+ # @param rect [Wx::Rect] The bounding rectangle for the item being drawn (DC clipping region is set to this rectangle before calling this function)
939
+ # @param item [Integer] The index of the item to be drawn
940
+ # @param flags [Integer] A combination of the {Wx::OwnerDrawnComboBoxPaintingFlags} enumeration values.
941
+ # @return [void]
942
+ def on_draw_item(dc, rect, item, flags) end
943
+
944
+ # The derived class may implement this method to return the height of the specified item (in pixels).
945
+ # The default implementation returns text height, as if this control was a normal combobox.
946
+ # @param item [Integer]
947
+ # @return [Integer]
948
+ def on_measure_item(item) end
949
+
950
+ # The derived class may implement this method to return the width of the specified item (in pixels).
951
+ # If -1 is returned, then the item text width is used.
952
+ # The default implementation returns -1.
953
+ # @param item [Integer]
954
+ # @return [Integer]
955
+ def on_measure_item_width(item) end
956
+
957
+ end # OwnerDrawnComboBox
958
+
959
+
960
+ end