wxruby3 0.9.2-x64-mingw-ucrt → 0.9.3-x64-mingw-ucrt

Sign up to get free protection for your applications and to get access to all the features.
Files changed (646) hide show
  1. checksums.yaml +4 -4
  2. data/INSTALL.md +35 -29
  3. data/README.md +24 -15
  4. data/ext/wxbase32u_gcc_custom.dll +0 -0
  5. data/ext/wxbase32u_net_gcc_custom.dll +0 -0
  6. data/ext/wxbase32u_xml_gcc_custom.dll +0 -0
  7. data/ext/wxmsw32u_aui_gcc_custom.dll +0 -0
  8. data/ext/wxmsw32u_core_gcc_custom.dll +0 -0
  9. data/ext/wxmsw32u_gl_gcc_custom.dll +0 -0
  10. data/ext/wxmsw32u_html_gcc_custom.dll +0 -0
  11. data/ext/wxmsw32u_media_gcc_custom.dll +0 -0
  12. data/ext/wxmsw32u_propgrid_gcc_custom.dll +0 -0
  13. data/ext/wxmsw32u_qa_gcc_custom.dll +0 -0
  14. data/ext/wxmsw32u_ribbon_gcc_custom.dll +0 -0
  15. data/ext/wxmsw32u_richtext_gcc_custom.dll +0 -0
  16. data/ext/wxmsw32u_stc_gcc_custom.dll +0 -0
  17. data/ext/wxmsw32u_webview_gcc_custom.dll +0 -0
  18. data/ext/wxmsw32u_xrc_gcc_custom.dll +0 -0
  19. data/lib/wx/core/bitmap_combobox.rb +17 -21
  20. data/lib/wx/core/combobox.rb +13 -3
  21. data/lib/wx/core/controlwithitems.rb +40 -130
  22. data/lib/wx/core/enum.rb +17 -1
  23. data/lib/wx/core/event.rb +6 -1
  24. data/lib/wx/core/events/evt_list.rb +5 -4
  25. data/lib/wx/core/evthandler.rb +8 -2
  26. data/lib/wx/core/generic_validator.rb +312 -0
  27. data/lib/wx/core/listbox.rb +2 -2
  28. data/lib/wx/core/log.rb +1 -1
  29. data/lib/wx/core/owner_drawn_combobox.rb +45 -0
  30. data/lib/wx/core/size.rb +4 -0
  31. data/lib/wx/core/sizer.rb +1 -2
  32. data/lib/wx/core/standard_paths.rb +22 -0
  33. data/lib/wx/core/text_entry.rb +4 -1
  34. data/lib/wx/core/validator.rb +70 -5
  35. data/lib/wx/core/window.rb +3 -7
  36. data/lib/wx/doc/art_locator.rb +1 -0
  37. data/lib/wx/doc/comboctrl.rb +18 -0
  38. data/lib/wx/doc/controlwithitems.rb +16 -0
  39. data/lib/wx/doc/date_picker_ctrl.rb +23 -0
  40. data/lib/wx/doc/editable_listbox.rb +44 -0
  41. data/lib/wx/doc/enum.rb +15 -0
  42. data/lib/wx/doc/event.rb +12 -0
  43. data/lib/wx/doc/extra/12_client_data.md +89 -0
  44. data/lib/wx/doc/extra/13_validators.md +139 -0
  45. data/lib/wx/doc/gdi_common.rb +4 -0
  46. data/lib/wx/doc/gen/about_dialog_info.rb +25 -0
  47. data/lib/wx/doc/gen/accelerator.rb +7 -1
  48. data/lib/wx/doc/gen/accessible.rb +13 -0
  49. data/lib/wx/doc/gen/activity_indicator.rb +7 -0
  50. data/lib/wx/doc/gen/animation.rb +12 -0
  51. data/lib/wx/doc/gen/animation_ctrl.rb +10 -0
  52. data/lib/wx/doc/gen/any_button.rb +17 -1
  53. data/lib/wx/doc/gen/app.rb +35 -1
  54. data/lib/wx/doc/gen/app_traits.rb +38 -5
  55. data/lib/wx/doc/gen/art_provider.rb +14 -0
  56. data/lib/wx/doc/gen/aui/aui_dock_art.rb +12 -0
  57. data/lib/wx/doc/gen/aui/aui_floating_frame.rb +1 -0
  58. data/lib/wx/doc/gen/aui/aui_manager.rb +24 -1
  59. data/lib/wx/doc/gen/aui/aui_manager_event.rb +9 -1
  60. data/lib/wx/doc/gen/aui/aui_mdi_child_frame.rb +3 -0
  61. data/lib/wx/doc/gen/aui/aui_mdi_client_window.rb +2 -0
  62. data/lib/wx/doc/gen/aui/aui_mdi_parent_frame.rb +3 -1
  63. data/lib/wx/doc/gen/aui/aui_notebook.rb +20 -2
  64. data/lib/wx/doc/gen/aui/aui_notebook_event.rb +2 -1
  65. data/lib/wx/doc/gen/aui/aui_pane_info.rb +30 -1
  66. data/lib/wx/doc/gen/aui/aui_tab_art.rb +6 -0
  67. data/lib/wx/doc/gen/aui/aui_tab_ctrl.rb +1 -0
  68. data/lib/wx/doc/gen/aui/aui_tool_bar.rb +11 -0
  69. data/lib/wx/doc/gen/aui/aui_tool_bar_art.rb +2 -0
  70. data/lib/wx/doc/gen/aui/aui_tool_bar_event.rb +2 -1
  71. data/lib/wx/doc/gen/aui/aui_tool_bar_item.rb +4 -0
  72. data/lib/wx/doc/gen/banner_window.rb +7 -0
  73. data/lib/wx/doc/gen/bitmap.rb +64 -3
  74. data/lib/wx/doc/gen/bitmap_button.rb +6 -1
  75. data/lib/wx/doc/gen/bitmap_combo_box.rb +9 -3
  76. data/lib/wx/doc/gen/book_ctrl_base.rb +17 -2
  77. data/lib/wx/doc/gen/book_ctrl_event.rb +3 -1
  78. data/lib/wx/doc/gen/box_sizer.rb +5 -0
  79. data/lib/wx/doc/gen/brush.rb +16 -1
  80. data/lib/wx/doc/gen/busy_info.rb +8 -0
  81. data/lib/wx/doc/gen/button.rb +11 -3
  82. data/lib/wx/doc/gen/calculate_layout_event.rb +4 -0
  83. data/lib/wx/doc/gen/calendar_ctrl.rb +22 -0
  84. data/lib/wx/doc/gen/calendar_date_attr.rb +1 -0
  85. data/lib/wx/doc/gen/calendar_event.rb +3 -1
  86. data/lib/wx/doc/gen/caret.rb +3 -0
  87. data/lib/wx/doc/gen/check_box.rb +10 -0
  88. data/lib/wx/doc/gen/check_list_box.rb +3 -0
  89. data/lib/wx/doc/gen/choice.rb +14 -2
  90. data/lib/wx/doc/gen/choicebook.rb +1 -0
  91. data/lib/wx/doc/gen/client_dc.rb +1 -0
  92. data/lib/wx/doc/gen/clipboard.rb +9 -0
  93. data/lib/wx/doc/gen/collapsible_pane.rb +3 -0
  94. data/lib/wx/doc/gen/collapsible_pane_event.rb +1 -0
  95. data/lib/wx/doc/gen/colour.rb +20 -0
  96. data/lib/wx/doc/gen/colour_dialog.rb +10 -0
  97. data/lib/wx/doc/gen/colour_picker_ctrl.rb +4 -0
  98. data/lib/wx/doc/gen/colour_picker_event.rb +1 -0
  99. data/lib/wx/doc/gen/combo_box.rb +20 -1
  100. data/lib/wx/doc/gen/combo_ctrl.rb +54 -295
  101. data/lib/wx/doc/gen/command_link_button.rb +8 -0
  102. data/lib/wx/doc/gen/context_help_button.rb +7 -1
  103. data/lib/wx/doc/gen/control.rb +12 -0
  104. data/lib/wx/doc/gen/control_with_items.rb +45 -9
  105. data/lib/wx/doc/gen/core.rb +2 -2
  106. data/lib/wx/doc/gen/cursor.rb +4 -0
  107. data/lib/wx/doc/gen/data_format.rb +1 -0
  108. data/lib/wx/doc/gen/data_object.rb +27 -5
  109. data/lib/wx/doc/gen/date_event.rb +2 -1
  110. data/lib/wx/doc/gen/date_picker_ctrl.rb +7 -1
  111. data/lib/wx/doc/gen/dc.rb +87 -3
  112. data/lib/wx/doc/gen/dial_up_event.rb +2 -0
  113. data/lib/wx/doc/gen/dial_up_manager.rb +12 -0
  114. data/lib/wx/doc/gen/dialog.rb +42 -3
  115. data/lib/wx/doc/gen/dir_dialog.rb +6 -1
  116. data/lib/wx/doc/gen/dir_filter_list_ctrl.rb +1 -0
  117. data/lib/wx/doc/gen/dir_picker_ctrl.rb +5 -0
  118. data/lib/wx/doc/gen/drag_drop.rb +20 -0
  119. data/lib/wx/doc/gen/drag_image.rb +7 -0
  120. data/lib/wx/doc/gen/editable_list_box.rb +5 -3
  121. data/lib/wx/doc/gen/event.rb +26 -11
  122. data/lib/wx/doc/gen/event_blocker.rb +2 -1
  123. data/lib/wx/doc/gen/event_filter.rb +3 -0
  124. data/lib/wx/doc/gen/event_list.rb +4 -4
  125. data/lib/wx/doc/gen/events.rb +165 -26
  126. data/lib/wx/doc/gen/evt_handler.rb +40 -2
  127. data/lib/wx/doc/gen/ext_help_controller.rb +9 -0
  128. data/lib/wx/doc/gen/file_ctrl.rb +11 -2
  129. data/lib/wx/doc/gen/file_ctrl_event.rb +5 -1
  130. data/lib/wx/doc/gen/file_dialog.rb +13 -0
  131. data/lib/wx/doc/gen/file_dialog_custom_control.rb +12 -0
  132. data/lib/wx/doc/gen/file_dialog_customize_hook.rb +9 -0
  133. data/lib/wx/doc/gen/file_dir_picker_event.rb +2 -1
  134. data/lib/wx/doc/gen/file_picker_ctrl.rb +4 -0
  135. data/lib/wx/doc/gen/file_system.rb +17 -1
  136. data/lib/wx/doc/gen/find_dialog_event.rb +2 -1
  137. data/lib/wx/doc/gen/find_replace_data.rb +1 -0
  138. data/lib/wx/doc/gen/find_replace_dialog.rb +3 -0
  139. data/lib/wx/doc/gen/flex_grid_sizer.rb +13 -0
  140. data/lib/wx/doc/gen/font.rb +75 -3
  141. data/lib/wx/doc/gen/font_data.rb +14 -0
  142. data/lib/wx/doc/gen/font_dialog.rb +6 -0
  143. data/lib/wx/doc/gen/font_picker_ctrl.rb +8 -0
  144. data/lib/wx/doc/gen/font_picker_event.rb +1 -0
  145. data/lib/wx/doc/gen/frame.rb +24 -7
  146. data/lib/wx/doc/gen/fs_file.rb +22 -0
  147. data/lib/wx/doc/gen/gauge.rb +8 -0
  148. data/lib/wx/doc/gen/gb_sizer_item.rb +5 -0
  149. data/lib/wx/doc/gen/gcdc.rb +2 -0
  150. data/lib/wx/doc/gen/gdi_common.rb +50 -0
  151. data/lib/wx/doc/gen/gdi_object.rb +1 -0
  152. data/lib/wx/doc/gen/generic_dir_ctrl.rb +7 -0
  153. data/lib/wx/doc/gen/graphics_context.rb +36 -7
  154. data/lib/wx/doc/gen/graphics_object.rb +24 -0
  155. data/lib/wx/doc/gen/grid/grid_cell_activatable_editor.rb +2 -0
  156. data/lib/wx/doc/gen/grid/grid_cell_attr.rb +14 -2
  157. data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_editor.rb +1 -0
  158. data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_renderer.rb +1 -0
  159. data/lib/wx/doc/gen/grid/grid_cell_bool_editor.rb +2 -0
  160. data/lib/wx/doc/gen/grid/grid_cell_bool_renderer.rb +1 -0
  161. data/lib/wx/doc/gen/grid/grid_cell_choice_editor.rb +2 -0
  162. data/lib/wx/doc/gen/grid/grid_cell_date_editor.rb +1 -0
  163. data/lib/wx/doc/gen/grid/grid_cell_date_renderer.rb +1 -0
  164. data/lib/wx/doc/gen/grid/grid_cell_date_time_renderer.rb +1 -0
  165. data/lib/wx/doc/gen/grid/grid_cell_editor.rb +9 -0
  166. data/lib/wx/doc/gen/grid/grid_cell_enum_editor.rb +1 -0
  167. data/lib/wx/doc/gen/grid/grid_cell_enum_renderer.rb +1 -0
  168. data/lib/wx/doc/gen/grid/grid_cell_float_editor.rb +1 -0
  169. data/lib/wx/doc/gen/grid/grid_cell_float_renderer.rb +2 -0
  170. data/lib/wx/doc/gen/grid/grid_cell_number_editor.rb +2 -0
  171. data/lib/wx/doc/gen/grid/grid_cell_number_renderer.rb +1 -0
  172. data/lib/wx/doc/gen/grid/grid_cell_renderer.rb +6 -0
  173. data/lib/wx/doc/gen/grid/grid_cell_string_renderer.rb +1 -0
  174. data/lib/wx/doc/gen/grid/grid_cell_text_editor.rb +1 -0
  175. data/lib/wx/doc/gen/grid/grid_ctrl.rb +229 -7
  176. data/lib/wx/doc/gen/grid/grid_editor_created_event.rb +4 -1
  177. data/lib/wx/doc/gen/grid/grid_event.rb +4 -1
  178. data/lib/wx/doc/gen/grid/grid_range_select_event.rb +2 -1
  179. data/lib/wx/doc/gen/grid/grid_size_event.rb +2 -1
  180. data/lib/wx/doc/gen/grid/grid_string_table.rb +7 -0
  181. data/lib/wx/doc/gen/grid/grid_table_base.rb +27 -1
  182. data/lib/wx/doc/gen/grid/grid_table_message.rb +1 -0
  183. data/lib/wx/doc/gen/grid_bag_sizer.rb +24 -4
  184. data/lib/wx/doc/gen/grid_sizer.rb +11 -0
  185. data/lib/wx/doc/gen/gui_event_loop.rb +12 -0
  186. data/lib/wx/doc/gen/header_ctrl.rb +106 -0
  187. data/lib/wx/doc/gen/header_ctrl_event.rb +5 -1
  188. data/lib/wx/doc/gen/help_controller.rb +11 -0
  189. data/lib/wx/doc/gen/help_provider.rb +12 -3
  190. data/lib/wx/doc/gen/html/html_cell.rb +25 -0
  191. data/lib/wx/doc/gen/html/html_cell_event.rb +3 -1
  192. data/lib/wx/doc/gen/html/html_easy_printing.rb +13 -1
  193. data/lib/wx/doc/gen/html/html_help_controller.rb +18 -0
  194. data/lib/wx/doc/gen/html/html_help_data.rb +5 -0
  195. data/lib/wx/doc/gen/html/html_help_window.rb +8 -0
  196. data/lib/wx/doc/gen/html/html_link_event.rb +1 -0
  197. data/lib/wx/doc/gen/html/html_list_box.rb +49 -9
  198. data/lib/wx/doc/gen/html/html_printout.rb +7 -0
  199. data/lib/wx/doc/gen/html/html_window.rb +31 -0
  200. data/lib/wx/doc/gen/hyperlink_ctrl.rb +2 -1
  201. data/lib/wx/doc/gen/hyperlink_event.rb +1 -0
  202. data/lib/wx/doc/gen/icon.rb +19 -1
  203. data/lib/wx/doc/gen/icon_location.rb +1 -0
  204. data/lib/wx/doc/gen/image.rb +67 -10
  205. data/lib/wx/doc/gen/image_list.rb +12 -2
  206. data/lib/wx/doc/gen/info_bar.rb +12 -0
  207. data/lib/wx/doc/gen/keyboard_state.rb +11 -0
  208. data/lib/wx/doc/gen/list_box.rb +20 -3
  209. data/lib/wx/doc/gen/list_ctrl.rb +89 -0
  210. data/lib/wx/doc/gen/list_event.rb +11 -1
  211. data/lib/wx/doc/gen/listbook.rb +1 -0
  212. data/lib/wx/doc/gen/locale.rb +22 -0
  213. data/lib/wx/doc/gen/log.rb +42 -0
  214. data/lib/wx/doc/gen/mdi_client_window.rb +4 -1
  215. data/lib/wx/doc/gen/mdi_frame.rb +27 -4
  216. data/lib/wx/doc/gen/media_ctrl.rb +17 -0
  217. data/lib/wx/doc/gen/media_event.rb +2 -1
  218. data/lib/wx/doc/gen/memory_dc.rb +10 -0
  219. data/lib/wx/doc/gen/menu.rb +48 -7
  220. data/lib/wx/doc/gen/menu_bar.rb +32 -13
  221. data/lib/wx/doc/gen/menu_item.rb +26 -0
  222. data/lib/wx/doc/gen/message_dialog.rb +10 -0
  223. data/lib/wx/doc/gen/mini_frame.rb +5 -2
  224. data/lib/wx/doc/gen/mirror_dc.rb +1 -0
  225. data/lib/wx/doc/gen/mouse_state.rb +1 -0
  226. data/lib/wx/doc/gen/multi_choice_dialog.rb +3 -1
  227. data/lib/wx/doc/gen/non_owned_window.rb +3 -0
  228. data/lib/wx/doc/gen/notebook.rb +11 -1
  229. data/lib/wx/doc/gen/num_validator.rb +37 -0
  230. data/lib/wx/doc/gen/number_entry_dialog.rb +4 -0
  231. data/lib/wx/doc/gen/object.rb +3 -0
  232. data/lib/wx/doc/gen/owner_drawn_combo_box.rb +340 -0
  233. data/lib/wx/doc/gen/paint_dc.rb +1 -0
  234. data/lib/wx/doc/gen/palette.rb +5 -0
  235. data/lib/wx/doc/gen/panel.rb +10 -2
  236. data/lib/wx/doc/gen/pen.rb +30 -1
  237. data/lib/wx/doc/gen/pg/numeric_property_validator.rb +2 -1
  238. data/lib/wx/doc/gen/pg/pg_array_editor_dialog.rb +4 -1
  239. data/lib/wx/doc/gen/pg/pg_cell.rb +6 -1
  240. data/lib/wx/doc/gen/pg/pg_editor.rb +61 -15
  241. data/lib/wx/doc/gen/pg/pg_multi_button.rb +2 -0
  242. data/lib/wx/doc/gen/pg/pg_properties.rb +198 -81
  243. data/lib/wx/doc/gen/pg/pg_property.rb +129 -52
  244. data/lib/wx/doc/gen/pg/pg_validation_info.rb +2 -0
  245. data/lib/wx/doc/gen/pg/property_grid.rb +56 -14
  246. data/lib/wx/doc/gen/pg/property_grid_event.rb +16 -6
  247. data/lib/wx/doc/gen/pg/property_grid_interface.rb +98 -37
  248. data/lib/wx/doc/gen/pg/property_grid_manager.rb +29 -7
  249. data/lib/wx/doc/gen/pg/property_grid_page.rb +11 -4
  250. data/lib/wx/doc/gen/pg/property_grid_page_state.rb +7 -2
  251. data/lib/wx/doc/gen/picker_base.rb +11 -1
  252. data/lib/wx/doc/gen/platform_info.rb +31 -0
  253. data/lib/wx/doc/gen/popup_window.rb +5 -0
  254. data/lib/wx/doc/gen/progress_dialog.rb +4 -0
  255. data/lib/wx/doc/gen/property_sheet_dialog.rb +7 -1
  256. data/lib/wx/doc/gen/prt/page_setup_dialog.rb +2 -0
  257. data/lib/wx/doc/gen/prt/post_script_dc.rb +1 -0
  258. data/lib/wx/doc/gen/prt/preview_frame.rb +4 -0
  259. data/lib/wx/doc/gen/prt/print_abort_dialog.rb +1 -0
  260. data/lib/wx/doc/gen/prt/print_data.rb +27 -0
  261. data/lib/wx/doc/gen/prt/print_dialog.rb +4 -0
  262. data/lib/wx/doc/gen/prt/printer.rb +42 -5
  263. data/lib/wx/doc/gen/prt/printer_dc.rb +2 -0
  264. data/lib/wx/doc/gen/query_layout_info_event.rb +9 -0
  265. data/lib/wx/doc/gen/radio_box.rb +19 -0
  266. data/lib/wx/doc/gen/radio_button.rb +9 -0
  267. data/lib/wx/doc/gen/rbn/ribbon_art_provider.rb +63 -0
  268. data/lib/wx/doc/gen/rbn/ribbon_bar.rb +23 -0
  269. data/lib/wx/doc/gen/rbn/ribbon_bar_event.rb +2 -1
  270. data/lib/wx/doc/gen/rbn/ribbon_button_bar.rb +35 -9
  271. data/lib/wx/doc/gen/rbn/ribbon_button_bar_event.rb +2 -1
  272. data/lib/wx/doc/gen/rbn/ribbon_control.rb +10 -0
  273. data/lib/wx/doc/gen/rbn/ribbon_gallery.rb +17 -7
  274. data/lib/wx/doc/gen/rbn/ribbon_gallery_event.rb +2 -1
  275. data/lib/wx/doc/gen/rbn/ribbon_page.rb +12 -0
  276. data/lib/wx/doc/gen/rbn/ribbon_panel.rb +11 -0
  277. data/lib/wx/doc/gen/rbn/ribbon_panel_event.rb +2 -1
  278. data/lib/wx/doc/gen/rbn/ribbon_tool_bar.rb +25 -0
  279. data/lib/wx/doc/gen/rbn/ribbon_tool_bar_event.rb +2 -1
  280. data/lib/wx/doc/gen/rearrange_ctrl.rb +4 -0
  281. data/lib/wx/doc/gen/rearrange_list.rb +9 -0
  282. data/lib/wx/doc/gen/region.rb +42 -13
  283. data/lib/wx/doc/gen/region_iterator.rb +1 -0
  284. data/lib/wx/doc/gen/rtc/rich_text_box.rb +25 -8
  285. data/lib/wx/doc/gen/rtc/rich_text_buffer.rb +41 -4
  286. data/lib/wx/doc/gen/rtc/rich_text_buffer_data_object.rb +1 -0
  287. data/lib/wx/doc/gen/rtc/rich_text_composite_object.rb +23 -11
  288. data/lib/wx/doc/gen/rtc/rich_text_ctrl.rb +74 -0
  289. data/lib/wx/doc/gen/rtc/rich_text_event.rb +6 -1
  290. data/lib/wx/doc/gen/rtc/rich_text_file_handler.rb +8 -0
  291. data/lib/wx/doc/gen/rtc/rich_text_formatting_dialog.rb +6 -0
  292. data/lib/wx/doc/gen/rtc/rich_text_header_footer_data.rb +1 -0
  293. data/lib/wx/doc/gen/rtc/rich_text_html_handler.rb +4 -0
  294. data/lib/wx/doc/gen/rtc/rich_text_image.rb +7 -0
  295. data/lib/wx/doc/gen/rtc/rich_text_object.rb +64 -4
  296. data/lib/wx/doc/gen/rtc/rich_text_paragraph_layout_box.rb +51 -4
  297. data/lib/wx/doc/gen/rtc/rich_text_printing.rb +13 -0
  298. data/lib/wx/doc/gen/rtc/rich_text_style_list_box.rb +9 -4
  299. data/lib/wx/doc/gen/rtc/rich_text_style_organiser_dialog.rb +3 -0
  300. data/lib/wx/doc/gen/rtc/rich_text_xml_handler.rb +2 -0
  301. data/lib/wx/doc/gen/rtc/symbol_picker_dialog.rb +1 -0
  302. data/lib/wx/doc/gen/sash_event.rb +5 -1
  303. data/lib/wx/doc/gen/sash_layout_window.rb +10 -0
  304. data/lib/wx/doc/gen/sash_window.rb +3 -0
  305. data/lib/wx/doc/gen/screen_dc.rb +1 -0
  306. data/lib/wx/doc/gen/scroll_bar.rb +11 -2
  307. data/lib/wx/doc/gen/scrolled_canvas.rb +20 -4
  308. data/lib/wx/doc/gen/scrolled_control.rb +20 -4
  309. data/lib/wx/doc/gen/scrolled_window.rb +20 -4
  310. data/lib/wx/doc/gen/search_ctrl.rb +6 -0
  311. data/lib/wx/doc/gen/simplebook.rb +7 -0
  312. data/lib/wx/doc/gen/single_choice_dialog.rb +3 -1
  313. data/lib/wx/doc/gen/sizer.rb +79 -9
  314. data/lib/wx/doc/gen/sizer_item.rb +16 -2
  315. data/lib/wx/doc/gen/slider.rb +23 -0
  316. data/lib/wx/doc/gen/spin_button.rb +9 -0
  317. data/lib/wx/doc/gen/spin_ctrl.rb +11 -0
  318. data/lib/wx/doc/gen/spin_ctrl_double.rb +7 -0
  319. data/lib/wx/doc/gen/spin_double_event.rb +4 -1
  320. data/lib/wx/doc/gen/spin_event.rb +2 -1
  321. data/lib/wx/doc/gen/splash_screen.rb +2 -0
  322. data/lib/wx/doc/gen/splitter_event.rb +10 -1
  323. data/lib/wx/doc/gen/splitter_window.rb +38 -14
  324. data/lib/wx/doc/gen/static_bitmap.rb +99 -2
  325. data/lib/wx/doc/gen/static_box.rb +6 -0
  326. data/lib/wx/doc/gen/static_box_sizer.rb +3 -0
  327. data/lib/wx/doc/gen/static_line.rb +4 -0
  328. data/lib/wx/doc/gen/static_text.rb +5 -0
  329. data/lib/wx/doc/gen/status_bar.rb +17 -3
  330. data/lib/wx/doc/gen/stc/styled_text_ctrl.rb +174 -6
  331. data/lib/wx/doc/gen/stc/styled_text_event.rb +27 -1
  332. data/lib/wx/doc/gen/std_dialog_button_sizer.rb +7 -0
  333. data/lib/wx/doc/gen/svg_file_dc.rb +9 -0
  334. data/lib/wx/doc/gen/system_options.rb +8 -0
  335. data/lib/wx/doc/gen/system_settings.rb +7 -0
  336. data/lib/wx/doc/gen/task_bar_button.rb +12 -0
  337. data/lib/wx/doc/gen/task_bar_icon.rb +5 -0
  338. data/lib/wx/doc/gen/task_bar_icon_event.rb +2 -1
  339. data/lib/wx/doc/gen/text_attr.rb +27 -0
  340. data/lib/wx/doc/gen/text_ctrl.rb +27 -3
  341. data/lib/wx/doc/gen/text_entry.rb +43 -5
  342. data/lib/wx/doc/gen/text_entry_dialog.rb +12 -0
  343. data/lib/wx/doc/gen/text_validator.rb +16 -0
  344. data/lib/wx/doc/gen/time_picker_ctrl.rb +6 -0
  345. data/lib/wx/doc/gen/timer.rb +8 -0
  346. data/lib/wx/doc/gen/timer_event.rb +1 -0
  347. data/lib/wx/doc/gen/tip_provider.rb +5 -0
  348. data/lib/wx/doc/gen/toggle_button.rb +68 -0
  349. data/lib/wx/doc/gen/tool_bar.rb +57 -14
  350. data/lib/wx/doc/gen/tool_tip.rb +6 -0
  351. data/lib/wx/doc/gen/toolbook.rb +3 -0
  352. data/lib/wx/doc/gen/top_level_window.rb +34 -3
  353. data/lib/wx/doc/gen/tree_ctrl.rb +49 -0
  354. data/lib/wx/doc/gen/tree_event.rb +7 -1
  355. data/lib/wx/doc/gen/treebook.rb +9 -0
  356. data/lib/wx/doc/gen/ui_action_simulator.rb +4 -0
  357. data/lib/wx/doc/gen/utils.rb +55 -0
  358. data/lib/wx/doc/gen/v_list_box.rb +21 -0
  359. data/lib/wx/doc/gen/v_scrolled_window.rb +15 -0
  360. data/lib/wx/doc/gen/validator.rb +9 -13
  361. data/lib/wx/doc/gen/variant.rb +6 -0
  362. data/lib/wx/doc/gen/window.rb +260 -52
  363. data/lib/wx/doc/gen/window_dc.rb +2 -0
  364. data/lib/wx/doc/gen/window_disabler.rb +1 -0
  365. data/lib/wx/doc/gen/with_images.rb +7 -1
  366. data/lib/wx/doc/gen/wizard.rb +18 -0
  367. data/lib/wx/doc/gen/wizard_event.rb +3 -1
  368. data/lib/wx/doc/gen/wizard_page.rb +5 -0
  369. data/lib/wx/doc/gen/wizard_page_simple.rb +4 -0
  370. data/lib/wx/doc/gen/wrap_sizer.rb +5 -0
  371. data/lib/wx/doc/gen/xml_node.rb +14 -0
  372. data/lib/wx/doc/gen/xml_resource.rb +22 -0
  373. data/lib/wx/doc/generic_validator.rb +95 -0
  374. data/lib/wx/doc/html/simple_html_listbox.rb +22 -0
  375. data/lib/wx/doc/num_validator.rb +387 -0
  376. data/lib/wx/doc/owner_drawn_combobox.rb +96 -0
  377. data/lib/wx/doc/pg/numeric_property_validator.rb +33 -0
  378. data/lib/wx/doc/static_bitmap.rb +25 -0
  379. data/lib/wx/doc/text_validator.rb +10 -0
  380. data/lib/wx/doc/validator.rb +113 -0
  381. data/lib/wx/doc/window.rb +30 -0
  382. data/lib/wx/html/events/evt_list.rb +0 -10
  383. data/lib/wx/html/simple_html_listbox.rb +24 -91
  384. data/lib/wx/keyword_defs.rb +34 -2
  385. data/lib/wx/rbn/ribbon_gallery.rb +0 -21
  386. data/lib/wx/version.rb +1 -1
  387. data/lib/wxruby_aui.so +0 -0
  388. data/lib/wxruby_core.so +0 -0
  389. data/lib/wxruby_grid.so +0 -0
  390. data/lib/wxruby_html.so +0 -0
  391. data/lib/wxruby_pg.so +0 -0
  392. data/lib/wxruby_prt.so +0 -0
  393. data/lib/wxruby_rbn.so +0 -0
  394. data/lib/wxruby_rtc.so +0 -0
  395. data/lib/wxruby_stc.so +0 -0
  396. data/rakelib/lib/config/mingw.rb +12 -0
  397. data/samples/aui/aui.rb +1237 -1233
  398. data/samples/calendar/calendar.rb +293 -289
  399. data/samples/controls/get_item_sample.rb +83 -79
  400. data/samples/controls/htlbox.rb +331 -327
  401. data/samples/dialogs/dialogs.rb +682 -694
  402. data/samples/dialogs/wizard.rb +52 -55
  403. data/samples/dragdrop/dragdrop.rb +146 -142
  404. data/samples/drawing/bitmap.rb +29 -26
  405. data/samples/drawing/bitmap_image.rb +84 -80
  406. data/samples/drawing/graphics_drawing.rb +209 -205
  407. data/samples/drawing/image_prt.rb +344 -340
  408. data/samples/drawing/maths_images.rb +18 -1
  409. data/samples/drawing/rmagic_bitmap_image.rb +88 -84
  410. data/samples/etc/caret.rb +306 -0
  411. data/samples/etc/miniframe.rb +65 -60
  412. data/samples/etc/sash.rb +109 -105
  413. data/samples/etc/scrollwin.rb +86 -80
  414. data/samples/etc/system_settings.rb +216 -209
  415. data/samples/event/activation.rb +72 -67
  416. data/samples/event/event.rb +160 -153
  417. data/samples/event/threaded.rb +8 -1
  418. data/samples/event/update_ui_event.rb +67 -60
  419. data/samples/grid/grid.rb +188 -181
  420. data/samples/grid/gridtablebase.rb +136 -129
  421. data/samples/html/html.rb +208 -204
  422. data/samples/mdi/mdi.rb +59 -54
  423. data/samples/minimal/minimal.rb +54 -51
  424. data/samples/minimal/nothing.rb +1 -0
  425. data/samples/printing/printing.rb +367 -377
  426. data/samples/printing/printing2.rb +203 -198
  427. data/samples/propgrid/propgrid.rb +2312 -2308
  428. data/samples/propgrid/propgrid_minimal.rb +57 -50
  429. data/samples/ribbon/ribbon.rb +780 -774
  430. data/samples/sampler/ext.rb +0 -33
  431. data/samples/sampler/sample.rb +4 -9
  432. data/samples/sampler.rb +1 -1
  433. data/samples/splash/splash.rb +118 -116
  434. data/samples/text/rich_textctrl.rb +207 -201
  435. data/samples/text/richtext.rb +1409 -1405
  436. data/samples/text/scintilla.rb +137 -128
  437. data/samples/text/textctrl.rb +89 -83
  438. data/samples/text/unicode.rb +175 -168
  439. data/samples/treectrl/treectrl.rb +1430 -1426
  440. data/samples/widgets/activityindicator.rb +95 -0
  441. data/samples/widgets/art/widgets/activityindicator.xpm +278 -0
  442. data/samples/widgets/art/widgets/bmpbtn.xpm +37 -0
  443. data/samples/widgets/art/widgets/bmpcombobox.xpm +54 -0
  444. data/samples/widgets/art/widgets/button.xpm +54 -0
  445. data/samples/widgets/art/widgets/checkbox.xpm +54 -0
  446. data/samples/{bigdemo/icons → widgets/art/widgets}/choice.xpm +1 -1
  447. data/samples/widgets/art/widgets/choicebk.xpm +54 -0
  448. data/samples/widgets/art/widgets/clrpicker.xpm +193 -0
  449. data/samples/widgets/art/widgets/combobox.xpm +54 -0
  450. data/samples/widgets/art/widgets/datepick.xpm +200 -0
  451. data/samples/widgets/art/widgets/dirctrl.xpm +54 -0
  452. data/samples/widgets/art/widgets/dirpicker.xpm +213 -0
  453. data/samples/widgets/art/widgets/filepicker.xpm +214 -0
  454. data/samples/widgets/art/widgets/fontpicker.xpm +185 -0
  455. data/samples/widgets/art/widgets/gauge.xpm +54 -0
  456. data/samples/widgets/art/widgets/header.xpm +54 -0
  457. data/samples/widgets/art/widgets/hyperlnk.xpm +54 -0
  458. data/samples/widgets/art/widgets/listbook.xpm +54 -0
  459. data/samples/widgets/art/widgets/listbox.xpm +54 -0
  460. data/samples/widgets/art/widgets/native.xpm +81 -0
  461. data/samples/widgets/art/widgets/notebook.xpm +54 -0
  462. data/samples/widgets/art/widgets/odcombobox.xpm +54 -0
  463. data/samples/widgets/art/widgets/radiobox.xpm +54 -0
  464. data/samples/widgets/art/widgets/scrolbar.xpm +54 -0
  465. data/samples/widgets/art/widgets/slider.xpm +54 -0
  466. data/samples/widgets/art/widgets/spinbtn.xpm +40 -0
  467. data/samples/widgets/art/widgets/statbmp.xpm +40 -0
  468. data/samples/widgets/art/widgets/statbox.xpm +54 -0
  469. data/samples/widgets/art/widgets/stattext.xpm +54 -0
  470. data/samples/widgets/art/widgets/text.xpm +54 -0
  471. data/samples/widgets/art/widgets/timepick.xpm +207 -0
  472. data/samples/widgets/art/widgets/toggle.xpm +54 -0
  473. data/samples/widgets/art/widgets/toucan.png +0 -0
  474. data/samples/widgets/bmpcombobox.rb +651 -0
  475. data/samples/widgets/button.rb +462 -0
  476. data/samples/widgets/checkbox.rb +211 -0
  477. data/samples/widgets/choice.rb +287 -0
  478. data/samples/widgets/clrpicker.rb +156 -0
  479. data/samples/widgets/combobox.rb +516 -0
  480. data/samples/widgets/datepick.rb +215 -0
  481. data/samples/widgets/dirctrl.rb +265 -0
  482. data/samples/widgets/dirpicker.rb +158 -0
  483. data/samples/widgets/editlbox.rb +122 -0
  484. data/samples/widgets/filectrl.rb +216 -0
  485. data/samples/widgets/filepicker.rb +214 -0
  486. data/samples/widgets/fontpicker.rb +135 -0
  487. data/samples/widgets/gauge.rb +311 -0
  488. data/samples/widgets/headerctrl.rb +236 -0
  489. data/samples/widgets/hyperlink.rb +203 -0
  490. data/samples/widgets/itemcontainer.rb +185 -0
  491. data/samples/widgets/listbox.rb +473 -0
  492. data/samples/widgets/notebook.rb +488 -0
  493. data/samples/widgets/odcombobox.rb +608 -0
  494. data/samples/widgets/radiobox.rb +328 -0
  495. data/samples/widgets/searchctrl.rb +159 -0
  496. data/samples/widgets/slider.rb +594 -0
  497. data/samples/widgets/spinbtn.rb +443 -0
  498. data/samples/widgets/statbmp.rb +130 -0
  499. data/samples/widgets/static.rb +436 -0
  500. data/samples/widgets/textctrl.rb +700 -0
  501. data/samples/widgets/timepick.rb +148 -0
  502. data/samples/widgets/tn_widgets.png +0 -0
  503. data/samples/widgets/toggle.rb +385 -0
  504. data/samples/widgets/widgets.rb +1233 -0
  505. data/samples/xrc/custom_xrc_sample.rb +47 -41
  506. data/samples/xrc/xrc_sample.rb +53 -47
  507. data/tests/test_event_handling.rb +52 -34
  508. data/tests/test_events.rb +7 -0
  509. data/tests/test_item_data.rb +24 -0
  510. data/tests/test_sizer.rb +44 -1
  511. data/tests/test_validators.rb +805 -0
  512. metadata +87 -137
  513. data/lib/wx/core/choice.rb +0 -14
  514. data/lib/wx/core/combo_ctrl.rb +0 -110
  515. data/samples/bigdemo/About.rbw +0 -39
  516. data/samples/bigdemo/ColorPanel.rbw +0 -23
  517. data/samples/bigdemo/GridSimple.rbw +0 -78
  518. data/samples/bigdemo/MDIDemo.rbw +0 -57
  519. data/samples/bigdemo/PopupMenu.rbw +0 -146
  520. data/samples/bigdemo/ShapedWindow.rbw +0 -128
  521. data/samples/bigdemo/Sizers.rbw +0 -541
  522. data/samples/bigdemo/bigdemo.rb +0 -817
  523. data/samples/bigdemo/demoTemplate.rbw +0 -33
  524. data/samples/bigdemo/helpfile.htb +0 -0
  525. data/samples/bigdemo/icons/Test 015.jpg +0 -0
  526. data/samples/bigdemo/icons/Test 015.png +0 -0
  527. data/samples/bigdemo/icons/choice.bmp +0 -0
  528. data/samples/bigdemo/icons/combo.bmp +0 -0
  529. data/samples/bigdemo/icons/combo.xpm +0 -27
  530. data/samples/bigdemo/icons/copy.xpm +0 -25
  531. data/samples/bigdemo/icons/cut.xpm +0 -24
  532. data/samples/bigdemo/icons/gauge.bmp +0 -0
  533. data/samples/bigdemo/icons/gauge.xpm +0 -27
  534. data/samples/bigdemo/icons/help.xpm +0 -25
  535. data/samples/bigdemo/icons/list.bmp +0 -0
  536. data/samples/bigdemo/icons/list.xpm +0 -27
  537. data/samples/bigdemo/icons/mondrian.ico +0 -0
  538. data/samples/bigdemo/icons/mondrian.xpm +0 -44
  539. data/samples/bigdemo/icons/new.xpm +0 -24
  540. data/samples/bigdemo/icons/ogl.ico +0 -0
  541. data/samples/bigdemo/icons/ogl.xpm +0 -45
  542. data/samples/bigdemo/icons/open.xpm +0 -26
  543. data/samples/bigdemo/icons/paste.bmp +0 -0
  544. data/samples/bigdemo/icons/paste.xpm +0 -38
  545. data/samples/bigdemo/icons/pointy.png +0 -0
  546. data/samples/bigdemo/icons/preview.xpm +0 -26
  547. data/samples/bigdemo/icons/print.xpm +0 -26
  548. data/samples/bigdemo/icons/radio.bmp +0 -0
  549. data/samples/bigdemo/icons/radio.xpm +0 -27
  550. data/samples/bigdemo/icons/robert.xpm +0 -415
  551. data/samples/bigdemo/icons/sashtest.ico +0 -0
  552. data/samples/bigdemo/icons/save.xpm +0 -25
  553. data/samples/bigdemo/icons/smiles.bmp +0 -0
  554. data/samples/bigdemo/icons/smiles.xpm +0 -39
  555. data/samples/bigdemo/icons/smiley.ico +0 -0
  556. data/samples/bigdemo/icons/smiley.xpm +0 -42
  557. data/samples/bigdemo/icons/stattext.xpm +0 -24
  558. data/samples/bigdemo/icons/test2.bmp +0 -0
  559. data/samples/bigdemo/icons/test2.png +0 -0
  560. data/samples/bigdemo/icons/test2.xpm +0 -79
  561. data/samples/bigdemo/icons/text.bmp +0 -0
  562. data/samples/bigdemo/icons/text.xpm +0 -27
  563. data/samples/bigdemo/icons/tog1.bmp +0 -0
  564. data/samples/bigdemo/icons/tog1.xpm +0 -38
  565. data/samples/bigdemo/icons/tog2.bmp +0 -0
  566. data/samples/bigdemo/icons/tog2.xpm +0 -38
  567. data/samples/bigdemo/icons/wxruby-128x128.png +0 -0
  568. data/samples/bigdemo/icons/wxwin.ico +0 -0
  569. data/samples/bigdemo/icons/wxwin16x16.png +0 -0
  570. data/samples/bigdemo/icons/wxwin16x16.xpm +0 -25
  571. data/samples/bigdemo/icons/wxwin32x32.png +0 -0
  572. data/samples/bigdemo/icons/wxwin48x48.png +0 -0
  573. data/samples/bigdemo/run.rb +0 -98
  574. data/samples/bigdemo/tips.txt +0 -7
  575. data/samples/bigdemo/utils.rb +0 -20
  576. data/samples/bigdemo/wxArtProvider.rbw +0 -282
  577. data/samples/bigdemo/wxBitmapButton.rbw +0 -65
  578. data/samples/bigdemo/wxButton.rbw +0 -64
  579. data/samples/bigdemo/wxCalendarCtrl.rbw +0 -59
  580. data/samples/bigdemo/wxCheckBox.rbw +0 -50
  581. data/samples/bigdemo/wxCheckListBox.rbw +0 -65
  582. data/samples/bigdemo/wxChoice.rbw +0 -47
  583. data/samples/bigdemo/wxChoicebook.rbw +0 -78
  584. data/samples/bigdemo/wxColourDialog.rbw +0 -33
  585. data/samples/bigdemo/wxComboBox.rbw +0 -77
  586. data/samples/bigdemo/wxCursor.rbw +0 -136
  587. data/samples/bigdemo/wxDialog.rbw +0 -74
  588. data/samples/bigdemo/wxDirDialog.rbw +0 -29
  589. data/samples/bigdemo/wxDragImage.rbw +0 -70
  590. data/samples/bigdemo/wxFileDialog.rbw +0 -37
  591. data/samples/bigdemo/wxFileDialog_Save.rbw +0 -35
  592. data/samples/bigdemo/wxFindReplaceDialog.rbw +0 -82
  593. data/samples/bigdemo/wxFontDialog.rbw +0 -200
  594. data/samples/bigdemo/wxFrame.rbw +0 -53
  595. data/samples/bigdemo/wxGauge.rbw +0 -65
  596. data/samples/bigdemo/wxGenericDirCtrl.rbw +0 -74
  597. data/samples/bigdemo/wxGrid.rbw +0 -66
  598. data/samples/bigdemo/wxHtmlHelpController.rbw +0 -52
  599. data/samples/bigdemo/wxListBox.rbw +0 -140
  600. data/samples/bigdemo/wxListCtrl_virtual.rbw +0 -112
  601. data/samples/bigdemo/wxMDIWindows.rbw +0 -50
  602. data/samples/bigdemo/wxMenu.rbw +0 -247
  603. data/samples/bigdemo/wxMessageDialog.rbw +0 -27
  604. data/samples/bigdemo/wxMiniFrame.rbw +0 -70
  605. data/samples/bigdemo/wxMultipleChoiceDialog.rbw +0 -29
  606. data/samples/bigdemo/wxNotebook.rbw +0 -136
  607. data/samples/bigdemo/wxProgressDialog.rbw +0 -43
  608. data/samples/bigdemo/wxRadioBox.rbw +0 -72
  609. data/samples/bigdemo/wxRadioButton.rbw +0 -125
  610. data/samples/bigdemo/wxSashWindow.rbw +0 -141
  611. data/samples/bigdemo/wxScrolledMessageDialog.rbw +0 -57
  612. data/samples/bigdemo/wxScrolledWindow.rbw +0 -199
  613. data/samples/bigdemo/wxSingleChoiceDialog.rbw +0 -33
  614. data/samples/bigdemo/wxSlider.rbw +0 -42
  615. data/samples/bigdemo/wxSpinButton.rbw +0 -50
  616. data/samples/bigdemo/wxSpinCtrl.rbw +0 -51
  617. data/samples/bigdemo/wxSplitterWindow.rbw +0 -63
  618. data/samples/bigdemo/wxStaticBitmap.rbw +0 -47
  619. data/samples/bigdemo/wxStaticText.rbw +0 -55
  620. data/samples/bigdemo/wxStatusBar.rbw +0 -126
  621. data/samples/bigdemo/wxTextCtrl.rbw +0 -149
  622. data/samples/bigdemo/wxTextEntryDialog.rbw +0 -31
  623. data/samples/bigdemo/wxToggleButton.rbw +0 -49
  624. data/samples/bigdemo/wxToolBar.rbw +0 -131
  625. data/samples/bigdemo/wxTreeCtrl.rbw +0 -191
  626. data/samples/caret/caret.rb +0 -298
  627. data/samples/caret/mondrian.xpm +0 -44
  628. data/samples/controls/books.rb +0 -189
  629. data/samples/controls/choice.xpm +0 -27
  630. data/samples/controls/combo.xpm +0 -27
  631. data/samples/controls/controls.rb +0 -1099
  632. data/samples/controls/gauge.xpm +0 -27
  633. data/samples/controls/list.xpm +0 -27
  634. data/samples/controls/mondrian.ico +0 -0
  635. data/samples/controls/mondrian.xpm +0 -44
  636. data/samples/controls/radio.xpm +0 -27
  637. data/samples/controls/stattext.xpm +0 -24
  638. data/samples/controls/test2.bmp +0 -0
  639. data/samples/controls/text.xpm +0 -27
  640. data/samples/controls/tn_books.png +0 -0
  641. data/samples/controls/tn_controls.png +0 -0
  642. data/samples/etc/choice.rb +0 -87
  643. data/samples/etc/tn_choice.png +0 -0
  644. data/samples/text/mondrian.ico +0 -0
  645. data/samples/text/mondrian.xpm +0 -44
  646. /data/samples/{caret → etc}/tn_caret.png +0 -0
@@ -136,18 +136,21 @@ module Wx
136
136
  def self.get_active_window; end
137
137
 
138
138
  # Returns the first top level parent of the given window, or in other words, the frame or dialog containing it, or NULL.
139
+ #
139
140
  # Notice that if window is itself already a TLW, it is returned directly.
140
141
  # @param window [Wx::Window]
141
142
  # @return [Wx::Window]
142
143
  def self.get_top_level_parent(window) end
143
144
 
144
145
  # Return a string with human-readable platform-specific description of the window useful for diagnostic purposes.
146
+ #
145
147
  # The string returned from this function doesn't have any fixed form and can vary between different wxWidgets ports and versions, but contains some useful description of the window and uniquely identifies it. This can be useful to include in debug or tracing messages.
146
148
  # @param window [Wx::Window] Window pointer which is allowed to be NULL.
147
149
  # @return [String]
148
150
  def self.dump_window(window) end
149
151
 
150
152
  # {Wx::Window} is the base class for all windows and represents any visible object on screen.
153
+ #
151
154
  # All controls, top level windows and so on are windows. Sizers and device contexts are not, however, as they don't appear on screen themselves.
152
155
  # Please note that all children of the window will be deleted automatically by the destructor before the window itself is deleted which means that you don't have to worry about deleting them manually. Please see the window deletion overview for more information.
153
156
  # Also note that in this, and many others, wxWidgets classes some <code>GetXXX()</code> methods may be overloaded (as, for example, {Wx::Window#get_size} or {Wx::Window#get_client_size}). In this case, the overloads are non-virtual because having multiple virtual functions with the same name results in a virtual function name hiding at the derived class level (in English, this means that the derived class has to override all overloaded variants if it overrides any of them). To allow overriding them in the derived class, wxWidgets uses a unique protected virtual <code>DoGetXXX()</code> method and all <code>GetXXX()</code> ones are forwarded to it, so overriding the former changes the behaviour of the latter.
@@ -264,6 +267,7 @@ module Wx
264
267
 
265
268
  # This method may be overridden in the derived classes to return false to indicate that this control doesn't accept input at all (i.e. behaves like e.g. {Wx::StaticText}) and so doesn't need focus.
266
269
  #
270
+ #
267
271
  # @see Wx::Window#accepts_focus_from_keyboard
268
272
  # @return [Boolean]
269
273
  def accepts_focus; end
@@ -273,11 +277,13 @@ module Wx
273
277
  def accepts_focus_from_keyboard; end
274
278
 
275
279
  # Overridden to indicate whether this window or one of its children accepts focus.
280
+ #
276
281
  # Usually it's the same as {Wx::Window#accepts_focus} but is overridden for container windows.
277
282
  # @return [Boolean]
278
283
  def accepts_focus_recursively; end
279
284
 
280
285
  # Disable giving focus to this window using the keyboard navigation keys.
286
+ #
281
287
  # Pressing TAB key will skip this window if this function was called on it, but it will still be possible to focus it by clicking on it with a pointing device.
282
288
  # @return [void]
283
289
  def disable_focus_from_keyboard; end
@@ -288,6 +294,7 @@ module Wx
288
294
  alias_method :focusable?, :is_focusable
289
295
 
290
296
  # Can this window have focus right now?
297
+ #
291
298
  # If this method returns true, it means that calling {Wx::Window#set_focus} will put focus either to this window or one of its children, if you need to know whether this window accepts focus itself, use {Wx::Window#is_focusable}
292
299
  # @return [Boolean]
293
300
  def can_accept_focus; end
@@ -300,12 +307,14 @@ module Wx
300
307
 
301
308
  # Returns true if the window (or in case of composite controls, its main child window) has focus.
302
309
  #
310
+ #
303
311
  # @see Wx::Window.find_focus
304
312
  # @return [Boolean]
305
313
  def has_focus; end
306
314
  alias_method :has_focus?, :has_focus
307
315
 
308
316
  # This method is only implemented by ports which have support for native TAB traversal (such as GTK+ 2.0).
317
+ #
309
318
  # It is called by wxWidgets' container control code to give the native system a hint when doing TAB traversal. A call to this does not disable or change the effect of programmatically calling {Wx::Window#set_focus}.
310
319
  # @see Wx::FocusEvent
311
320
  # @see Wx::Panel#set_focus
@@ -316,6 +325,7 @@ module Wx
316
325
  alias_method :can_focus=, :set_can_focus
317
326
 
318
327
  # Enables or disables visible indication of keyboard focus.
328
+ #
319
329
  # By default, controls behave in platform-appropriate way and show focus in the same way native applications do. In some very rare circumstances it may be desirable to change the default (notably multiline text controls don't normally have a focus indicator on Mac), which this method allows. It should only be used if you have a good understanding of the native platform's guidelines and user expectations.
320
330
  # This method is only implemented on Mac.
321
331
  # @param enable [Boolean]
@@ -324,6 +334,7 @@ module Wx
324
334
 
325
335
  # This sets the window to receive keyboard input.
326
336
  #
337
+ #
327
338
  # @see Wx::Window#has_focus
328
339
  # @see Wx::FocusEvent
329
340
  # @see Wx::Panel#set_focus
@@ -332,28 +343,33 @@ module Wx
332
343
  def set_focus; end
333
344
 
334
345
  # This function is called by wxWidgets keyboard navigation code when the user gives the focus to this window from keyboard (e.g. using TAB key).
346
+ #
335
347
  # By default this method simply calls {Wx::Window#set_focus} but can be overridden to do something in addition to this in the derived classes.
336
348
  # @return [void]
337
349
  def set_focus_from_kbd; end
338
350
 
339
351
  # Adds a child window.
352
+ #
340
353
  # This is called automatically by window creation functions so should not be required by the application programmer. Notice that this function is mostly internal to wxWidgets and shouldn't be called by the user code.
341
354
  # @param child [Wx::Window] Child window to add.
342
355
  # @return [void]
343
356
  def add_child(child) end
344
357
 
345
358
  # Destroys all children of a window.
359
+ #
346
360
  # Called automatically by the destructor.
347
361
  # @return [Boolean]
348
362
  def destroy_children; end
349
363
 
350
364
  # Returns a const reference to the list of the window's children.
365
+ #
351
366
  # {Wx::WindowList} is a type-safe {Wx::List}-like class whose elements are of type <code>wxWindow*</code>.
352
367
  # @return [Wx::WindowList]
353
368
  def get_children; end
354
369
  alias_method :children, :get_children
355
370
 
356
371
  # Removes a child window.
372
+ #
357
373
  # This is called automatically by window deletion functions so should not be required by the application programmer. Notice that this function is mostly internal to wxWidgets and shouldn't be called by the user code.
358
374
  # @param child [Wx::Window] Child window to remove.
359
375
  # @return [void]
@@ -366,6 +382,7 @@ module Wx
366
382
 
367
383
  # Returns the next window after this one among the parent's children or NULL if this window is the last child.
368
384
  #
385
+ #
369
386
  # @see Wx::Window#get_prev_sibling
370
387
  # @return [Wx::Window]
371
388
  def get_next_sibling; end
@@ -378,12 +395,14 @@ module Wx
378
395
 
379
396
  # Returns the previous window before this one among the parent's children or <code></code> NULL if this window is the first child.
380
397
  #
398
+ #
381
399
  # @see Wx::Window#get_next_sibling
382
400
  # @return [Wx::Window]
383
401
  def get_prev_sibling; end
384
402
  alias_method :prev_sibling, :get_prev_sibling
385
403
 
386
404
  # Check if the specified window is a descendant of this one.
405
+ #
387
406
  # Returns true if the window is a descendant (i.e. a child or grand-child or grand-grand-child or ...) of this one.
388
407
  # Notice that a window can never be a descendant of another one if they are in different top level windows, i.e. a child of a {Wx::Dialog} is not considered to be a descendant of dialogs parent {Wx::Frame}.
389
408
  # @param win [Wx::Window] Any window, possible NULL (false is always returned then).
@@ -392,6 +411,7 @@ module Wx
392
411
  alias_method :descendant?, :is_descendant
393
412
 
394
413
  # Reparents the window, i.e. the window will be removed from its current parent window (e.g.
414
+ #
395
415
  # a non-standard toolbar in a {Wx::Frame}) and then re-inserted into another.
396
416
  # Notice that currently you need to explicitly call {Wx::Notebook#remove_page} before reparenting a notebook page.
397
417
  # @param newParent [Wx::Window] New parent.
@@ -399,11 +419,12 @@ module Wx
399
419
  def reparent(newParent) end
400
420
 
401
421
  # Call this function to force one or both scrollbars to be always shown, even if the window is big enough to show its entire contents without scrolling.
422
+ #
402
423
  # <div class="wxrb-remark">
403
424
  # <b>Remark:</b>
404
425
  # <p>This function is currently not implemented.
405
426
  # </p>
406
- # </div>>
427
+ # </div>
407
428
  # @param hflag [Boolean] Whether the horizontal scroll bar should always be visible.
408
429
  # @param vflag [Boolean] Whether the vertical scroll bar should always be visible.
409
430
  # @return [void]
@@ -411,6 +432,7 @@ module Wx
411
432
 
412
433
  # Returns the built-in scrollbar position.
413
434
  #
435
+ #
414
436
  # @see Wx::Window#set_scrollbar
415
437
  # @param orientation [Integer]
416
438
  # @return [Integer]
@@ -419,6 +441,7 @@ module Wx
419
441
 
420
442
  # Returns the built-in scrollbar range.
421
443
  #
444
+ #
422
445
  # @see Wx::Window#set_scrollbar
423
446
  # @param orientation [Integer]
424
447
  # @return [Integer]
@@ -427,6 +450,7 @@ module Wx
427
450
 
428
451
  # Returns the built-in scrollbar thumb size.
429
452
  #
453
+ #
430
454
  # @see Wx::Window#set_scrollbar
431
455
  # @param orientation [Integer]
432
456
  # @return [Integer]
@@ -440,6 +464,7 @@ module Wx
440
464
  alias_method :can_scroll?, :can_scroll
441
465
 
442
466
  # Returns true if this window currently has a scroll bar for this orientation.
467
+ #
443
468
  # This method may return false even when {Wx::Window#can_scroll} for the same orientation returns true, but if {Wx::Window#can_scroll} returns false, i.e. scrolling in this direction is not enabled at all, {Wx::Window#has_scrollbar} always returns false as well.
444
469
  # @param orient [Integer] Orientation to check, either {Wx::Orientation::HORIZONTAL} or {Wx::Orientation::VERTICAL}.
445
470
  # @return [Boolean]
@@ -448,6 +473,7 @@ module Wx
448
473
 
449
474
  # Return whether a scrollbar is always shown.
450
475
  #
476
+ #
451
477
  # @see Wx::Window#always_show_scrollbars
452
478
  # @param orient [Integer] Orientation to check, either {Wx::Orientation::HORIZONTAL} or {Wx::Orientation::VERTICAL}.
453
479
  # @return [Boolean]
@@ -455,37 +481,40 @@ module Wx
455
481
  alias_method :scrollbar_always_shown?, :is_scrollbar_always_shown
456
482
 
457
483
  # Scrolls the window by the given number of lines down (if lines is positive) or up.
484
+ #
458
485
  # Returns true if the window was scrolled, false if it was already on top/bottom and nothing was done.
459
486
  #
460
487
  # <div class="wxrb-remark">
461
488
  # <b>Remark:</b>
462
489
  # <p>This function is currently only implemented under MSW and {Wx::TextCtrl} under WXGTK (it also works for {Wx::Scrolled} classes under all platforms).
463
490
  # </p>
464
- # </div>>
491
+ # </div>
465
492
  # @see Wx::Window#scroll_pages
466
493
  # @param lines [Integer]
467
494
  # @return [Boolean]
468
495
  def scroll_lines(lines) end
469
496
 
470
497
  # Scrolls the window by the given number of pages down (if pages is positive) or up.
498
+ #
471
499
  # Returns true if the window was scrolled, false if it was already on top/bottom and nothing was done.
472
500
  #
473
501
  # <div class="wxrb-remark">
474
502
  # <b>Remark:</b>
475
503
  # <p>This function is currently only implemented under MSW and WXGTK.
476
504
  # </p>
477
- # </div>>
505
+ # </div>
478
506
  # @see Wx::Window#scroll_lines
479
507
  # @param pages [Integer]
480
508
  # @return [Boolean]
481
509
  def scroll_pages(pages) end
482
510
 
483
511
  # Physically scrolls the pixels in the window and move child windows accordingly.
512
+ #
484
513
  # <div class="wxrb-remark">
485
514
  # <b>Remark:</b>
486
515
  # <p>Note that you can often use {Wx::Scrolled} instead of using this function directly.
487
516
  # </p>
488
- # </div>>
517
+ # </div>
489
518
  # @param dx [Integer] Amount to scroll horizontally.
490
519
  # @param dy [Integer] Amount to scroll vertically.
491
520
  # @param rect [Wx::Rect] Rectangle to scroll, if it is NULL, the whole window is scrolled (this is always the case under WXGTK which doesn't support this parameter)
@@ -509,11 +538,12 @@ module Wx
509
538
  def page_down; end
510
539
 
511
540
  # Sets the position of one of the built-in scrollbars.
541
+ #
512
542
  # <div class="wxrb-remark">
513
543
  # <b>Remark:</b>
514
544
  # <p>This function does not directly affect the contents of the window: it is up to the application to take note of scrollbar attributes and redraw contents accordingly.
515
545
  # </p>
516
- # </div>>
546
+ # </div>
517
547
  # @see Wx::Window#set_scrollbar
518
548
  # @see Wx::Window#get_scroll_pos
519
549
  # @see Wx::Window#get_scroll_thumb
@@ -526,6 +556,7 @@ module Wx
526
556
  def set_scroll_pos(orientation, pos, refresh=true) end
527
557
 
528
558
  # Sets the scrollbar properties of a built-in scrollbar.
559
+ #
529
560
  # <div class="wxrb-remark">
530
561
  # <b>Remark:</b>
531
562
  # <p>Let's say you wish to display 50 lines of text, using the same font. The window is sized so that you can only see 16 lines at a time. You would use:
@@ -534,7 +565,7 @@ module Wx
534
565
  # ```
535
566
  # Note that with the window at this size, the thumb position can never go above 50 minus 16, or 34. You can determine how many lines are currently visible by dividing the current view size by the character height in pixels. When defining your own scrollbar behaviour, you will always need to recalculate the scrollbar settings when the window size changes. You could therefore put your scrollbar calculations and SetScrollbar call into a function named AdjustScrollbars, which can be called initially and also from your {Wx::SizeEvent} handler function.
536
567
  # </p>
537
- # </div>>
568
+ # </div>
538
569
  # @see Scrolled Windows
539
570
  # @see Wx::ScrollBar
540
571
  # @see Wx::Scrolled
@@ -548,24 +579,28 @@ module Wx
548
579
  def set_scrollbar(orientation, position, thumbSize, range, refresh=true) end
549
580
 
550
581
  # Prepare for changing positions of multiple child windows.
582
+ #
551
583
  # This method should be called before changing positions of multiple child windows to reduce flicker and, in MSW case, even avoid display corruption in some cases. It is used internally by wxWidgets and called automatically when the window size changes but it can also be useful to call it from outside of the library if a repositioning involving multiple children is done without changing the window size.
552
584
  # If this method returns true, then {Wx::Window#end_repositioning_children} must be called after setting all children positions. Use {Wx::ChildrenRepositioningGuard} class to ensure that this requirement is satisfied.
553
585
  # @return [Boolean]
554
586
  def begin_repositioning_children; end
555
587
 
556
588
  # Fix child window positions after setting all of them at once.
589
+ #
557
590
  # This method must be called if and only if the previous call to {Wx::Window#begin_repositioning_children} returned true.
558
591
  # @return [void]
559
592
  def end_repositioning_children; end
560
593
 
561
594
  # Sets the cached best size value.
562
595
  #
596
+ #
563
597
  # @see Wx::Window#get_best_size
564
598
  # @param size [Array(Integer, Integer), Wx::Size]
565
599
  # @return [void]
566
600
  def cache_best_size(size) end
567
601
 
568
602
  # Converts client area size size to corresponding window size.
603
+ #
569
604
  # In other words, the returned value is what would {Wx::Window#get_size} return if this window had client area of given size. Components with {Wx::DEFAULT_COORD} value are left unchanged. Note that the conversion is not always exact, it assumes that non-client area doesn't change and so doesn't take into account things like menu bar (un)wrapping or (dis)appearance of the scrollbars.
570
605
  # @see Wx::Window#window_to_client_size
571
606
  # @param size [Array(Integer, Integer), Wx::Size]
@@ -573,6 +608,7 @@ module Wx
573
608
  def client_to_window_size(size) end
574
609
 
575
610
  # Converts window size size to corresponding client area size In other words, the returned value is what would {Wx::Window#get_client_size} return if this window had given window size.
611
+ #
576
612
  # Components with {Wx::DEFAULT_COORD} value are left unchanged.
577
613
  # Note that the conversion is not always exact, it assumes that non-client area doesn't change and so doesn't take into account things like menu bar (un)wrapping or (dis)appearance of the scrollbars.
578
614
  # @see Wx::Window#client_to_window_size
@@ -581,6 +617,7 @@ module Wx
581
617
  def window_to_client_size(size) end
582
618
 
583
619
  # Sizes the window to fit its best size.
620
+ #
584
621
  # Using this function is equivalent to setting window size to the return value of {Wx::Window#get_best_size}.
585
622
  # Note that, unlike {Wx::Window#set_sizer_and_fit}, this function only changes the current window size and doesn't change its minimal size.
586
623
  # @see Window Sizing Overview
@@ -588,12 +625,14 @@ module Wx
588
625
  def fit; end
589
626
 
590
627
  # Similar to {Wx::Window#fit}, but sizes the interior (virtual) size of a window.
628
+ #
591
629
  # Mainly useful with scrolled windows to reset scrollbars after sizing changes that do not trigger a size event, and/or scrolled windows without an interior sizer. This function similarly won't do anything if there are no subwindows.
592
630
  # @return [void]
593
631
  def fit_inside; end
594
632
 
595
633
  # @overload from_dip(sz)
596
634
  # Convert DPI-independent pixel values to the value in pixels appropriate for the current toolkit.
635
+ #
597
636
  # A DPI-independent pixel is just a pixel at the standard 96 DPI resolution. To keep the same physical size at higher resolution, the physical pixel value must be scaled by {Wx::Window#get_dpi_scale_factor} but this scaling may be already done by the underlying toolkit (GTK+, Cocoa, ...) automatically. This method performs the conversion only if it is not already done by the lower level toolkit and so by using it with pixel values you can guarantee that the physical size of the corresponding elements will remain the same in all resolutions under all platforms. For example, instead of creating a bitmap of the hard coded size of 32 pixels you should use
598
637
  # ```ruby
599
638
  # bmp = Wx::Bitmap.new(from_dip(Wx::Size.new(32, 32)))
@@ -609,6 +648,7 @@ module Wx
609
648
  # @return [Wx::Point]
610
649
  # @overload from_dip(d)
611
650
  # Convert DPI-independent distance in pixels to the value in pixels appropriate for the current toolkit.
651
+ #
612
652
  # This is the same as FromDIP(const {Wx::Size}& sz) overload, but assumes that the resolution is the same in horizontal and vertical directions.
613
653
  # If d has the special value of -1, it is returned unchanged independently of the current DPI.
614
654
  # @param d [Integer]
@@ -617,6 +657,7 @@ module Wx
617
657
 
618
658
  # @overload self.from_dip(sz, w)
619
659
  # Non window-specific DPI-independent pixels conversion functions.
660
+ #
620
661
  # The display resolution depends on the window in general as different windows can appear on different monitors using different resolutions, however sometimes no window is available for converting the resolution independent pixels to the physical values and in this case these static overloads can be used with NULL value for w argument.
621
662
  # Using these methods is discouraged as passing NULL will prevent your application from correctly supporting monitors with different resolutions even in the future wxWidgets versions which will add support for them, and passing non-NULL window is just a less convenient way of calling the non-static {Wx::Window#from_dip} method.
622
663
  # @param sz [Array(Integer, Integer), Wx::Size]
@@ -636,6 +677,7 @@ module Wx
636
677
 
637
678
  # @overload to_dip(sz)
638
679
  # Convert pixel values of the current toolkit to DPI-independent pixel values.
680
+ #
639
681
  # A DPI-independent pixel is just a pixel at the standard 96 DPI resolution. To keep the same physical size at higher resolution, the physical pixel value must be scaled by {Wx::Window#get_dpi_scale_factor} but this scaling may be already done by the underlying toolkit (GTK+, Cocoa, ...) automatically. This method performs the conversion only if it is not already done by the lower level toolkit, For example, you may want to use this to store window sizes and positions so that they can be re-used regardless of the display DPI:
640
682
  # ```ruby
641
683
  # pt = Wx::Point.new(to_dip(get_position))
@@ -651,6 +693,7 @@ module Wx
651
693
  # @return [Wx::Point]
652
694
  # @overload to_dip(d)
653
695
  # Convert pixel values of the current toolkit to DPI-independent pixel values.
696
+ #
654
697
  # This is the same as ToDIP(const {Wx::Size}& sz) overload, but assumes that the resolution is the same in horizontal and vertical directions.
655
698
  # If d has the special value of -1, it is returned unchanged independently of the current DPI.
656
699
  # @param d [Integer]
@@ -659,6 +702,7 @@ module Wx
659
702
 
660
703
  # @overload self.to_dip(sz, w)
661
704
  # Non window-specific pixel to DPI-independent pixels conversion functions.
705
+ #
662
706
  # The display resolution depends on the window in general as different windows can appear on different monitors using different resolutions, however sometimes no window is available for converting the resolution independent pixels to the physical values and in this case these static overloads can be used with NULL value for w argument.
663
707
  # Using these methods is discouraged as passing NULL will prevent your application from correctly supporting monitors with different resolutions even in the future wxWidgets versions which will add support for them, and passing non-NULL window is just a less convenient way of calling the non-static {Wx::Window#to_dip} method.
664
708
  # @param sz [Array(Integer, Integer), Wx::Size]
@@ -678,6 +722,7 @@ module Wx
678
722
 
679
723
  # @overload from_phys(sz)
680
724
  # Convert from physical pixels to logical pixels.
725
+ #
681
726
  # All window coordinates in wxWidgets API are always expressed in logical pixels, but the meaning of logical pixels depends on the platform. Physical pixels always mean the same thing and refer to the actual display pixels or, also, sizes of the bitmaps. Under some platforms logical pixels are actually the same as physical ones (this is the case for MSW), but under other platforms (e.g. GTK or macOS) this is not the case and {Wx::Window#get_content_scale_factor} defines the ratio between one logical and one physical pixel.
682
727
  # This function can be used to convert a value in physical pixels to logical pixels independently of the platform used. It simply does nothing under MSW, but divides the input value by the content scale factor under the other platforms.
683
728
  # Note that dividing an integer value by scale factor doesn't always yield an integer value. This function rounds the resulting value to the closest integer, e.g. 15 physical pixels are translated to 8, not 7, logical pixels in 200% DPI scaling. This ensures that a physical bitmap of size 15 is not truncated if the result of this function is used to create a window to show it, but it does mean that there will be one extra pixel, not covered by this bitmap, left.
@@ -697,6 +742,7 @@ module Wx
697
742
 
698
743
  # @overload self.from_phys(sz, w)
699
744
  # Convert from physical pixels to logical pixels for any window.
745
+ #
700
746
  # This function can be used without any window pointer, i.e. w can be NULL. In this case, it uses the content scale factor of the main screen if supported or just does nothing (i.e. uses scale factor of 1) otherwise.
701
747
  # Using member overloads is always preferable, if possible, as they always use the actually appropriate content scale factor.
702
748
  # @param sz [Array(Integer, Integer), Wx::Size]
@@ -716,6 +762,7 @@ module Wx
716
762
 
717
763
  # @overload to_phys(sz)
718
764
  # Convert from logical pixels to physical pixels.
765
+ #
719
766
  # This function performs the transformation in the converse direction compared to {Wx::Window#from_phys}.
720
767
  # @param sz [Array(Integer, Integer), Wx::Size]
721
768
  # @return [Wx::Size]
@@ -731,6 +778,7 @@ module Wx
731
778
 
732
779
  # @overload self.to_phys(sz, w)
733
780
  # Convert from logical pixels to physical pixels for any window.
781
+ #
734
782
  # This function can be used without any window pointer, i.e. w can be NULL. In this case, it uses the content scale factor of the main screen if supported or just does nothing (i.e. uses scale factor of 1) otherwise.
735
783
  # Using member overloads is always preferable, if possible, as they always use the actually appropriate content scale factor.
736
784
  # @param sz [Array(Integer, Integer), Wx::Size]
@@ -749,6 +797,7 @@ module Wx
749
797
  def self.to_phys(*args) end
750
798
 
751
799
  # This functions returns the best acceptable minimal size for the window.
800
+ #
752
801
  # For example, for a static control, it will be the minimal size such that the control label is not truncated. For windows containing subwindows (typically {Wx::Panel}), the size returned by this function will be the same as the size the window would have had after calling {Wx::Window#fit}.
753
802
  # Override virtual {Wx::Window#do_get_best_size} or, better, because it's usually more convenient, {Wx::Window#do_get_best_client_size} when writing your own custom window class to change the value returned by this public non-virtual method.
754
803
  # Notice that the best size respects the minimal and maximal size explicitly set for the window, if any. So even if some window believes that it needs 200 pixels horizontally, calling {Wx::Window#set_max_size} with a width of 100 would ensure that {Wx::Window#get_best_size} returns the width of at most 100 pixels.
@@ -760,6 +809,7 @@ module Wx
760
809
 
761
810
  # Returns the best height needed by this window if it had the given width.
762
811
  #
812
+ #
763
813
  # @see Wx::Window#do_get_best_client_height
764
814
  # @param width [Integer]
765
815
  # @return [Integer]
@@ -768,6 +818,7 @@ module Wx
768
818
 
769
819
  # Returns the best width needed by this window if it had the given height.
770
820
  #
821
+ #
771
822
  # @see Wx::Window#do_get_best_client_width
772
823
  # @param height [Integer]
773
824
  # @return [Integer]
@@ -780,6 +831,7 @@ module Wx
780
831
  alias_method :client_size, :get_client_size
781
832
 
782
833
  # Merges the window's best size into the min size and returns the result.
834
+ #
783
835
  # This is the value used by sizers to determine the appropriate amount of space to allocate for the widget.
784
836
  # This is the method called by a {Wx::Sizer} when it queries the size of a window or control.
785
837
  # @see Wx::Window#get_best_size
@@ -790,6 +842,7 @@ module Wx
790
842
  alias_method :effective_min_size, :get_effective_min_size
791
843
 
792
844
  # Returns the maximum size of window's client area.
845
+ #
793
846
  # This is an indication to the sizer layout mechanism that this is the maximum possible size as well as the upper bound on window's size settable using {Wx::Window#set_client_size}.
794
847
  # @see Wx::Window#get_max_size
795
848
  # @see Window Sizing Overview
@@ -798,6 +851,7 @@ module Wx
798
851
  alias_method :max_client_size, :get_max_client_size
799
852
 
800
853
  # Returns the maximum size of the window.
854
+ #
801
855
  # This is an indication to the sizer layout mechanism that this is the maximum possible size as well as the upper bound on window's size settable using {Wx::Window#set_size}.
802
856
  # @see Wx::Window#get_max_client_size
803
857
  # @see Window Sizing Overview
@@ -806,6 +860,7 @@ module Wx
806
860
  alias_method :max_size, :get_max_size
807
861
 
808
862
  # Returns the minimum size of window's client area, an indication to the sizer layout mechanism that this is the minimum required size of its client area.
863
+ #
809
864
  # It normally just returns the value set by {Wx::Window#set_min_client_size}, but it can be overridden to do the calculation on demand.
810
865
  # @see Wx::Window#get_min_size
811
866
  # @see Window Sizing Overview
@@ -814,6 +869,7 @@ module Wx
814
869
  alias_method :min_client_size, :get_min_client_size
815
870
 
816
871
  # Returns the minimum size of the window, an indication to the sizer layout mechanism that this is the minimum required size.
872
+ #
817
873
  # This method normally just returns the value set by {Wx::Window#set_min_size}, but it can be overridden to do the calculation on demand.
818
874
  # @see Wx::Window#get_min_client_size
819
875
  # @see Window Sizing Overview
@@ -822,6 +878,7 @@ module Wx
822
878
  alias_method :min_size, :get_min_size
823
879
 
824
880
  # Returns the horizontal component of window minimal size.
881
+ #
825
882
  # The returned value is {Wx::DEFAULT_COORD} if the minimal width was not set.
826
883
  # @see Wx::Window#get_min_size
827
884
  # @return [Integer]
@@ -829,6 +886,7 @@ module Wx
829
886
  alias_method :min_width, :get_min_width
830
887
 
831
888
  # Returns the vertical component of window minimal size.
889
+ #
832
890
  # The returned value is {Wx::DEFAULT_COORD} if the minimal height was not set.
833
891
  # @see Wx::Window#get_min_size
834
892
  # @return [Integer]
@@ -836,6 +894,7 @@ module Wx
836
894
  alias_method :min_height, :get_min_height
837
895
 
838
896
  # Returns the horizontal component of window maximal size.
897
+ #
839
898
  # The returned value is {Wx::DEFAULT_COORD} if the maximal width was not set.
840
899
  # @see Wx::Window#get_max_size
841
900
  # @return [Integer]
@@ -843,6 +902,7 @@ module Wx
843
902
  alias_method :max_width, :get_max_width
844
903
 
845
904
  # Returns the vertical component of window maximal size.
905
+ #
846
906
  # The returned value is {Wx::DEFAULT_COORD} if the maximal width was not set.
847
907
  # @see Wx::Window#get_max_size
848
908
  # @return [Integer]
@@ -855,6 +915,7 @@ module Wx
855
915
  alias_method :size, :get_size
856
916
 
857
917
  # This gets the virtual size of the window in pixels.
918
+ #
858
919
  # By default it returns the client size of the window, but after a call to {Wx::Window#set_virtual_size} it will return the size set with that method.
859
920
  # @see Window Sizing Overview
860
921
  # @return [Wx::Size]
@@ -867,6 +928,7 @@ module Wx
867
928
  alias_method :best_virtual_size, :get_best_virtual_size
868
929
 
869
930
  # Returns the factor mapping logical pixels of this window to physical pixels.
931
+ #
870
932
  # This function can be used to portably determine the number of physical pixels in a window of the given size, by multiplying the window size by the value returned from it. I.e. it returns the factor converting window coordinates to "content view" coordinates, where the view can be just a simple window displaying a {Wx::Bitmap} or {Wx::GLCanvas} or any other kind of window rendering arbitrary "content" on screen.
871
933
  # For the platforms not doing any pixel mapping, i.e. where logical and physical pixels are one and the same, this function always returns 1.0 and so using it is, in principle, unnecessary and could be avoided by using preprocessor check for {Wx::HAS_DPI_INDEPENDENT_PIXELS} not being defined, however using this function unconditionally under all platforms is usually simpler and so preferable.
872
934
  #
@@ -880,6 +942,7 @@ module Wx
880
942
  alias_method :content_scale_factor, :get_content_scale_factor
881
943
 
882
944
  # Returns the ratio of the DPI used by this window to the standard DPI.
945
+ #
883
946
  # The returned value is 1 for standard DPI screens or 2 for "200%
884
947
  # scaling" and, unlike for {Wx::Window#get_content_scale_factor}, is the same under all platforms.
885
948
  # This factor should be used to increase the size of icons and similar windows whose best size is not based on text metrics when using DPI scaling.
@@ -895,6 +958,7 @@ module Wx
895
958
  alias_method :window_border_size, :get_window_border_size
896
959
 
897
960
  # {Wx::Sizer} and friends use this to give a chance to a component to recalc its min size once one of the final size components is known.
961
+ #
898
962
  # Override this function when that is useful (such as for {Wx::StaticText} which can stretch over several lines). Parameter availableOtherDir tells the item how much more space there is available in the opposite direction (-1 if unknown).
899
963
  # @param direction [Integer]
900
964
  # @param size [Integer]
@@ -904,21 +968,25 @@ module Wx
904
968
 
905
969
  # Resets the cached best size value so it will be recalculated the next time it is needed.
906
970
  #
971
+ #
907
972
  # @see Wx::Window#cache_best_size
908
973
  # @return [void]
909
974
  def invalidate_best_size; end
910
975
 
911
976
  # Posts a size event to the window.
977
+ #
912
978
  # This is the same as {Wx::Window#send_size_event} with {Wx::SEND_EVENT_POST} argument.
913
979
  # @return [void]
914
980
  def post_size_event; end
915
981
 
916
982
  # Posts a size event to the parent of this window.
983
+ #
917
984
  # This is the same as {Wx::Window#send_size_event_to_parent} with {Wx::SEND_EVENT_POST} argument.
918
985
  # @return [void]
919
986
  def post_size_event_to_parent; end
920
987
 
921
988
  # This function sends a dummy size event to the window allowing it to re-layout its children positions.
989
+ #
922
990
  # It is sometimes useful to call this function after adding or deleting a children after the frame creation or if a child size changes. Note that if the frame is using either sizers or constraints for the children layout, it is enough to call {Wx::Window#layout} directly and this function should not be used in this case.
923
991
  # If flags includes {Wx::SEND_EVENT_POST} value, this function posts the event, i.e. schedules it for later processing, instead of dispatching it directly. You can also use {Wx::Window#post_size_event} as a more readable equivalent of calling this function with this flag.
924
992
  # @param flags [Integer] May include {Wx::SEND_EVENT_POST}. Default value is 0.
@@ -926,6 +994,7 @@ module Wx
926
994
  def send_size_event(flags=0) end
927
995
 
928
996
  # Safe wrapper for {Wx::Window#get_parent}->{Wx::Window#send_size_event}.
997
+ #
929
998
  # This function simply checks that the window has a valid parent which is not in process of being deleted and calls {Wx::Window#send_size_event} on it. It is used internally by windows such as toolbars changes to whose state should result in parent re-layout (e.g. when a toolbar is added to the top of the window, all the other windows must be shifted down).
930
999
  # @see Wx::Window#post_size_event_to_parent
931
1000
  # @param flags [Integer] See description of this parameter in {Wx::Window#send_size_event} documentation.
@@ -934,6 +1003,7 @@ module Wx
934
1003
 
935
1004
  # @overload set_client_size(width, height)
936
1005
  # This sets the size of the window client area in pixels.
1006
+ #
937
1007
  # Using this function to size a window tends to be more device-independent than {Wx::Window#set_size}, since the application need not worry about what dimensions the border or title bar have when trying to fit the window around panel items, for example.
938
1008
  # Note that special value of -1 which can be used in some other functions to preserve the existing size is not supported for width and height here, i.e. they both must be valid, positive integers.
939
1009
  # @see Window Sizing Overview
@@ -952,6 +1022,7 @@ module Wx
952
1022
  alias_method :client_size=, :set_client_size
953
1023
 
954
1024
  # Used by {Wx::Sizer} internally to notify the window about being managed by the given sizer.
1025
+ #
955
1026
  # This method should not be called from outside the library, unless you're implementing a custom sizer class and in the latter case you must call this method with the pointer to the sizer itself whenever a window is added to it and with NULL argument when the window is removed from it.
956
1027
  # @param sizer [Wx::Sizer]
957
1028
  # @return [void]
@@ -959,6 +1030,7 @@ module Wx
959
1030
  alias_method :containing_sizer=, :set_containing_sizer
960
1031
 
961
1032
  # A smart SetSize that will fill in default size components with the window's best size values.
1033
+ #
962
1034
  # Also sets the window's minsize to the value passed in for use with sizers. This means that if a full or partial size is passed to this function then the sizers will use that size instead of the results of {Wx::Window#get_best_size} to determine the minimum needs of the window for layout.
963
1035
  # Most controls will use this to set their initial size, and their min size to the passed in value (if any.)
964
1036
  # @see Wx::Window#set_size
@@ -971,6 +1043,7 @@ module Wx
971
1043
  alias_method :initial_size=, :set_initial_size
972
1044
 
973
1045
  # Sets the maximum client size of the window, to indicate to the sizer layout mechanism that this is the maximum possible size of its client area.
1046
+ #
974
1047
  # Note that this method is just a shortcut for:
975
1048
  # ```ruby
976
1049
  # set_max_size(client_to_window_size(size))
@@ -984,6 +1057,7 @@ module Wx
984
1057
 
985
1058
  # Sets the maximum size of the window, to indicate to the sizer layout mechanism that this is the maximum possible size.
986
1059
  #
1060
+ #
987
1061
  # @see Wx::Window#set_max_client_size
988
1062
  # @see Window Sizing Overview
989
1063
  # @param size [Array(Integer, Integer), Wx::Size]
@@ -992,6 +1066,7 @@ module Wx
992
1066
  alias_method :max_size=, :set_max_size
993
1067
 
994
1068
  # Sets the minimum client size of the window, to indicate to the sizer layout mechanism that this is the minimum required size of window's client area.
1069
+ #
995
1070
  # You may need to call this if you change the window size after construction and before adding to its parent sizer.
996
1071
  # Note, that just as with {Wx::Window#set_min_size}, calling this method doesn't prevent the program from explicitly making the window smaller than the specified size.
997
1072
  # Note that this method is just a shortcut for:
@@ -1006,6 +1081,7 @@ module Wx
1006
1081
  alias_method :min_client_size=, :set_min_client_size
1007
1082
 
1008
1083
  # Sets the minimum size of the window, to indicate to the sizer layout mechanism that this is the minimum required size.
1084
+ #
1009
1085
  # You may need to call this if you change the window size after construction and before adding to its parent sizer.
1010
1086
  # Notice that calling this method doesn't prevent the program from making the window explicitly smaller than the specified size by calling {Wx::Window#set_size}, it just ensures that it won't become smaller than this size during the automatic layout.
1011
1087
  # @see Wx::Window#set_min_client_size
@@ -1017,11 +1093,12 @@ module Wx
1017
1093
 
1018
1094
  # @overload set_size(x, y, width, height, sizeFlags=Wx::SIZE_AUTO)
1019
1095
  # Sets the size of the window in pixels.
1096
+ #
1020
1097
  # <div class="wxrb-remark">
1021
1098
  # <b>Remark:</b>
1022
1099
  # <p>This overload sets the position and optionally size, of the window. Parameters may be {Wx::DEFAULT_COORD} to indicate either that a default should be supplied by wxWidgets, or that the current value of the dimension should be used.
1023
1100
  # </p>
1024
- # </div>>
1101
+ # </div>
1025
1102
  # @see Wx::Window#move
1026
1103
  # @see Window Sizing Overview
1027
1104
  # @param x [Integer] Required x position in pixels, or {Wx::DEFAULT_COORD} to indicate that the existing value should be used.
@@ -1039,13 +1116,14 @@ module Wx
1039
1116
  # @return [void]
1040
1117
  # @overload set_size(rect)
1041
1118
  # Sets the size of the window in pixels.
1119
+ #
1042
1120
  # The size is specified using a {Wx::Rect}, {Wx::Size} or by a couple of int objects.
1043
1121
  #
1044
1122
  # <div class="wxrb-remark">
1045
1123
  # <b>Remark:</b>
1046
1124
  # <p>This form must be used with non-default width and height values.
1047
1125
  # </p>
1048
- # </div>>
1126
+ # </div>
1049
1127
  # @see Wx::Window#move
1050
1128
  # @see Window Sizing Overview
1051
1129
  # @param rect [Wx::Rect]
@@ -1059,6 +1137,7 @@ module Wx
1059
1137
 
1060
1138
  # @overload set_size_hints(minSize, maxSize=Wx::DEFAULT_SIZE, incSize=Wx::DEFAULT_SIZE)
1061
1139
  # Use of this function for windows which are not toplevel windows (such as {Wx::Dialog} or {Wx::Frame}) is discouraged.
1140
+ #
1062
1141
  # Please use {Wx::Window#set_min_size} and {Wx::Window#set_max_size} instead.
1063
1142
  # @see Wx::TopLevelWindow#set_size_hints
1064
1143
  # @see Window Sizing Overview
@@ -1081,6 +1160,7 @@ module Wx
1081
1160
  # @overload set_virtual_size(width, height)
1082
1161
  # Sets the virtual size of the window in pixels.
1083
1162
  #
1163
+ #
1084
1164
  # @see Window Sizing Overview
1085
1165
  # @param width [Integer]
1086
1166
  # @param height [Integer]
@@ -1103,24 +1183,26 @@ module Wx
1103
1183
  def center_on_parent(dir=Wx::Orientation::BOTH) end
1104
1184
 
1105
1185
  # Centres the window.
1186
+ #
1106
1187
  # <div class="wxrb-remark">
1107
1188
  # <b>Remark:</b>
1108
1189
  # <p>If the window is a top level one (i.e. doesn't have a parent), it will be centred relative to the screen anyhow.
1109
1190
  # </p>
1110
- # </div>>
1191
+ # </div>
1111
1192
  # @see Wx::Window#center
1112
1193
  # @param direction [Integer] Specifies the direction for the centring. May be {Wx::Orientation::HORIZONTAL}, {Wx::Orientation::VERTICAL} or {Wx::Orientation::BOTH}. It may also include the {Wx::CENTRE_ON_SCREEN} flag if you want to centre the window on the entire screen and not on its parent window.
1113
1194
  # @return [void]
1114
1195
  def centre(direction=Wx::Orientation::BOTH) end
1115
1196
 
1116
1197
  # Centres the window on its parent.
1198
+ #
1117
1199
  # This is a more readable synonym for {Wx::Window#centre}.
1118
1200
  #
1119
1201
  # <div class="wxrb-remark">
1120
1202
  # <b>Remark:</b>
1121
1203
  # <p>This methods provides for a way to centre top level windows over their parents instead of the entire screen. If there is no parent or if the window is not a top level window, then behaviour is the same as {Wx::Window#centre}.
1122
1204
  # </p>
1123
- # </div>>
1205
+ # </div>
1124
1206
  # @see Wx::TopLevelWindow#centre_on_screen
1125
1207
  # @param direction [Integer] Specifies the direction for the centring. May be {Wx::Orientation::HORIZONTAL}, {Wx::Orientation::VERTICAL} or {Wx::Orientation::BOTH}.
1126
1208
  # @return [void]
@@ -1128,6 +1210,7 @@ module Wx
1128
1210
 
1129
1211
  # This gets the position of the window in pixels, relative to the parent window for the child windows or relative to the display origin for the top level windows.
1130
1212
  #
1213
+ #
1131
1214
  # @see Wx::Window#get_screen_position
1132
1215
  # @return [Wx::Point]
1133
1216
  def get_position; end
@@ -1135,6 +1218,7 @@ module Wx
1135
1218
 
1136
1219
  # Returns the position and size of the window as a {Wx::Rect} object.
1137
1220
  #
1221
+ #
1138
1222
  # @see Wx::Window#get_screen_rect
1139
1223
  # @return [Wx::Rect]
1140
1224
  def get_rect; end
@@ -1142,6 +1226,7 @@ module Wx
1142
1226
 
1143
1227
  # Returns the window position in screen coordinates, whether the window is a child window or a top level one.
1144
1228
  #
1229
+ #
1145
1230
  # @see Wx::Window#get_position
1146
1231
  # @return [Wx::Point]
1147
1232
  def get_screen_position; end
@@ -1149,6 +1234,7 @@ module Wx
1149
1234
 
1150
1235
  # Returns the position and size of the window on the screen as a {Wx::Rect} object.
1151
1236
  #
1237
+ #
1152
1238
  # @see Wx::Window#get_rect
1153
1239
  # @return [Wx::Rect]
1154
1240
  def get_screen_rect; end
@@ -1166,6 +1252,7 @@ module Wx
1166
1252
 
1167
1253
  # @overload move(x, y, flags=Wx::SIZE_USE_EXISTING)
1168
1254
  # Moves the window to the given position.
1255
+ #
1169
1256
  # <div class="wxrb-remark">
1170
1257
  # <b>Remark:</b>
1171
1258
  # <p>Implementations of SetSize can also implicitly implement the {Wx::Window#move} function, which is defined in the base {Wx::Window} class as the call:
@@ -1174,7 +1261,7 @@ module Wx
1174
1261
  # ```
1175
1262
  #
1176
1263
  # </p>
1177
- # </div>>
1264
+ # </div>
1178
1265
  # @see Wx::Window#set_size
1179
1266
  # @param x [Integer] Required x position.
1180
1267
  # @param y [Integer] Required y position.
@@ -1182,6 +1269,7 @@ module Wx
1182
1269
  # @return [void]
1183
1270
  # @overload move(pt, flags=Wx::SIZE_USE_EXISTING)
1184
1271
  # Moves the window to the given position.
1272
+ #
1185
1273
  # <div class="wxrb-remark">
1186
1274
  # <b>Remark:</b>
1187
1275
  # <p>Implementations of {Wx::Window#set_size} can also implicitly implement the {Wx::Window#move} function, which is defined in the base {Wx::Window} class as the call:
@@ -1190,7 +1278,7 @@ module Wx
1190
1278
  # ```
1191
1279
  #
1192
1280
  # </p>
1193
- # </div>>
1281
+ # </div>
1194
1282
  # @see Wx::Window#set_size
1195
1283
  # @param pt [Array(Integer, Integer), Wx::Point] {Wx::Point} object representing the position.
1196
1284
  # @param flags [Integer] See {Wx::Window#set_size} for more info about this parameter.
@@ -1198,6 +1286,7 @@ module Wx
1198
1286
  def move(*args) end
1199
1287
 
1200
1288
  # Moves the window to the specified position.
1289
+ #
1201
1290
  # This is exactly the same as calling {Wx::Window#move} with the default arguments.
1202
1291
  # @param pt [Array(Integer, Integer), Wx::Point]
1203
1292
  # @return [void]
@@ -1211,13 +1300,14 @@ module Wx
1211
1300
 
1212
1301
  # @overload convert_dialog_to_pixels(pt)
1213
1302
  # Converts a point or size from dialog units to pixels.
1303
+ #
1214
1304
  # For the x dimension, the dialog units are multiplied by the average character width and then divided by 4. For the y dimension, the dialog units are multiplied by the average character height and then divided by 8.
1215
1305
  #
1216
1306
  # <div class="wxrb-remark">
1217
1307
  # <b>Remark:</b>
1218
1308
  # <p>Dialog units are used for maintaining a dialog's proportions even if the font changes. You can also use these functions programmatically.
1219
1309
  # </p>
1220
- # </div>>
1310
+ # </div>
1221
1311
  # @see Wx::Window#convert_pixels_to_dialog
1222
1312
  # @param pt [Array(Integer, Integer), Wx::Point]
1223
1313
  # @return [Wx::Point]
@@ -1229,13 +1319,14 @@ module Wx
1229
1319
 
1230
1320
  # @overload convert_pixels_to_dialog(pt)
1231
1321
  # Converts a point or size from pixels to dialog units.
1322
+ #
1232
1323
  # For the x dimension, the pixels are multiplied by 4 and then divided by the average character width. For the y dimension, the pixels are multiplied by 8 and then divided by the average character height.
1233
1324
  #
1234
1325
  # <div class="wxrb-remark">
1235
1326
  # <b>Remark:</b>
1236
1327
  # <p>Dialog units are used for maintaining a dialog's proportions even if the font changes.
1237
1328
  # </p>
1238
- # </div>>
1329
+ # </div>
1239
1330
  # @see Wx::Window#convert_dialog_to_pixels
1240
1331
  # @param pt [Array(Integer, Integer), Wx::Point]
1241
1332
  # @return [Wx::Point]
@@ -1251,12 +1342,14 @@ module Wx
1251
1342
  def screen_to_client(pt) end
1252
1343
 
1253
1344
  # Clears the window by filling it with the current background colour.
1345
+ #
1254
1346
  # Does not cause an erase background event to be generated.
1255
1347
  # Notice that this uses {Wx::ClientDC} to draw on the window and the results of doing it while also drawing on {Wx::PaintDC} for this window are undefined. Hence this method shouldn't be used from EVT_PAINT handlers, just use {Wx::DC#clear} on the {Wx::PaintDC} you already use there instead.
1256
1348
  # @return [void]
1257
1349
  def clear_background; end
1258
1350
 
1259
1351
  # Freezes the window or, in other words, prevents any updates from taking place on screen, the window is not redrawn at all.
1352
+ #
1260
1353
  # {Wx::Window#thaw} must be called to re-enable window redrawing. Calls to these two functions may be nested but to ensure that the window is properly repainted again, you must thaw it exactly as many times as you froze it.
1261
1354
  # If the window has any children, they are recursively frozen too.
1262
1355
  # This method is useful for visual appearance optimization (for example, it is a good idea to use it before doing many large text insertions in a row into a {Wx::TextCtrl} under WXGTK) but is not implemented on all platforms nor for all controls so it is mostly just a hint to wxWidgets and not a mandatory directive.
@@ -1267,6 +1360,7 @@ module Wx
1267
1360
  def freeze; end
1268
1361
 
1269
1362
  # Re-enables window updating after a previous call to {Wx::Window#freeze}.
1363
+ #
1270
1364
  # To really thaw the control, it must be called exactly the same number of times as {Wx::Window#freeze}.
1271
1365
  # If the window has any children, they are recursively thawed too.
1272
1366
  # @see Wx::WindowUpdateLocker
@@ -1277,6 +1371,7 @@ module Wx
1277
1371
 
1278
1372
  # Returns true if the window is currently frozen by a call to {Wx::Window#freeze}.
1279
1373
  #
1374
+ #
1280
1375
  # @see Wx::Window#freeze
1281
1376
  # @see Wx::Window#thaw
1282
1377
  # @return [Boolean]
@@ -1285,6 +1380,7 @@ module Wx
1285
1380
 
1286
1381
  # Returns the background colour of the window.
1287
1382
  #
1383
+ #
1288
1384
  # @see Wx::Window#set_background_colour
1289
1385
  # @see Wx::Window#set_foreground_colour
1290
1386
  # @see Wx::Window#get_foreground_colour
@@ -1294,6 +1390,7 @@ module Wx
1294
1390
 
1295
1391
  # Returns the background style of the window.
1296
1392
  #
1393
+ #
1297
1394
  # @see Wx::Window#set_background_colour
1298
1395
  # @see Wx::Window#get_foreground_colour
1299
1396
  # @see Wx::Window#set_background_style
@@ -1313,6 +1410,7 @@ module Wx
1313
1410
  alias_method :char_width, :get_char_width
1314
1411
 
1315
1412
  # Currently this is the same as calling {Wx::Window.get_class_default_attributes(wx_window}.
1413
+ #
1316
1414
  # One advantage of using this function compared to the static version is that the call is automatically dispatched to the correct class (as usual with virtual functions) and you don't have to specify the class name explicitly.
1317
1415
  # The other one is that in the future this function could return different results, for example it might return a different font for an "Ok" button than for a generic button if the users GUI is configured to show such buttons in bold font. Of course, the down side is that it is impossible to call this function without actually having an object to apply it to whereas the static version can be used without having to create an object first.
1318
1416
  # @return [Wx::VisualAttributes]
@@ -1320,6 +1418,7 @@ module Wx
1320
1418
  alias_method :default_attributes, :get_default_attributes
1321
1419
 
1322
1420
  # Return the DPI of the display used by this window.
1421
+ #
1323
1422
  # The returned value can be different for different windows on systems with support for per-monitor DPI values, such as Microsoft Windows 10.
1324
1423
  # If the DPI is not available, returns <code>size(0,0)</code> object.
1325
1424
  # @see Wx::Display#get_ppi
@@ -1330,17 +1429,19 @@ module Wx
1330
1429
 
1331
1430
  # Returns the font for this window.
1332
1431
  #
1432
+ #
1333
1433
  # @see Wx::Window#set_font
1334
1434
  # @return [Wx::Font]
1335
1435
  def get_font; end
1336
1436
  alias_method :font, :get_font
1337
1437
 
1338
1438
  # Returns the foreground colour of the window.
1439
+ #
1339
1440
  # <div class="wxrb-remark">
1340
1441
  # <b>Remark:</b>
1341
1442
  # <p>The meaning of foreground colour varies according to the window class; it may be the text colour or other colour, or it may not be used at all.
1342
1443
  # </p>
1343
- # </div>>
1444
+ # </div>
1344
1445
  # @see Wx::Window#set_foreground_colour
1345
1446
  # @see Wx::Window#set_background_colour
1346
1447
  # @see Wx::Window#get_background_colour
@@ -1355,6 +1456,7 @@ module Wx
1355
1456
  alias_method :text_extent, :get_text_extent
1356
1457
 
1357
1458
  # Returns the region specifying which parts of the window have been damaged.
1459
+ #
1358
1460
  # Should only be called within a {Wx::PaintEvent} handler.
1359
1461
  # @see Wx::Region
1360
1462
  # @see Wx::RegionIterator
@@ -1368,12 +1470,14 @@ module Wx
1368
1470
  alias_method :update_client_rect, :get_update_client_rect
1369
1471
 
1370
1472
  # Returns true if this window background is transparent (as, for example, for {Wx::StaticText}) and should show the parent window background.
1473
+ #
1371
1474
  # This method is mostly used internally by the library itself and you normally shouldn't have to call it. You may, however, have to override it in your {Wx::Window}-derived class to ensure that background is painted correctly.
1372
1475
  # @return [Boolean]
1373
1476
  def has_transparent_background; end
1374
1477
  alias_method :has_transparent_background?, :has_transparent_background
1375
1478
 
1376
1479
  # Causes this window, and all of its children recursively, to be repainted.
1480
+ #
1377
1481
  # Note that repainting doesn't happen immediately but only during the next event loop iteration, if you need to update the window immediately you should use {Wx::Window#update} instead.
1378
1482
  # @see Wx::Window#refresh_rect
1379
1483
  # @param eraseBackground [Boolean] If true, the background will be erased too. Note that in non-MSW ports background is always erased.
@@ -1382,6 +1486,7 @@ module Wx
1382
1486
  def refresh(eraseBackground=true, rect=nil) end
1383
1487
 
1384
1488
  # Redraws the contents of the given rectangle: only the area inside it will be repainted.
1489
+ #
1385
1490
  # This is the same as {Wx::Window#refresh} but has a nicer syntax as it can be called with a temporary {Wx::Rect} object as argument like this <code>RefreshRect(wxRect(x, y, w, h))</code>.
1386
1491
  # @param rect [Wx::Rect]
1387
1492
  # @param eraseBackground [Boolean]
@@ -1389,11 +1494,13 @@ module Wx
1389
1494
  def refresh_rect(rect, eraseBackground=true) end
1390
1495
 
1391
1496
  # Calling this method immediately repaints the invalidated area of the window and all of its children recursively (this normally only happens when the flow of control returns to the event loop).
1497
+ #
1392
1498
  # Notice that this function doesn't invalidate any area of the window so nothing happens if nothing has been invalidated (i.e. marked as requiring a redraw). Use {Wx::Window#refresh} first if you want to immediately redraw the window unconditionally.
1393
1499
  # @return [void]
1394
1500
  def update; end
1395
1501
 
1396
1502
  # Sets the background colour of the window.
1503
+ #
1397
1504
  # Notice that as with {Wx::Window#set_foreground_colour}, setting the background colour of a native control may not affect the entire control and could be not supported at all depending on the control and platform.
1398
1505
  # Please see {Wx::Window#inherit_attributes} for explanation of the difference between this method and {Wx::Window#set_own_background_colour}.
1399
1506
  #
@@ -1401,7 +1508,7 @@ module Wx
1401
1508
  # <b>Remark:</b>
1402
1509
  # <p>The background colour is usually painted by the default {Wx::EraseEvent} event handler function under Windows and automatically under GTK. Note that setting the background colour does not cause an immediate refresh, so you may wish to call {Wx::Window#clear_background} or {Wx::Window#refresh} after calling this function. Using this function will disable attempts to use themes for this window, if the system supports them. Use with care since usually the themes represent the appearance chosen by the user to be used for all applications on the system.
1403
1510
  # </p>
1404
- # </div>>
1511
+ # </div>
1405
1512
  #
1406
1513
  # true if the colour was really changed, false if it was already set to this colour and nothing was done.
1407
1514
  # @see Wx::Window#get_background_colour
@@ -1417,6 +1524,7 @@ module Wx
1417
1524
  alias_method :background_colour=, :set_background_colour
1418
1525
 
1419
1526
  # Sets the background style of the window.
1527
+ #
1420
1528
  # The default background style is {Wx::BackgroundStyle::BG_STYLE_ERASE} which indicates that the window background may be erased in EVT_ERASE_BACKGROUND handler. This is a safe, compatibility default; however you may want to change it to {Wx::BackgroundStyle::BG_STYLE_SYSTEM} if you don't define any erase background event handlers at all, to avoid unnecessary generation of erase background events and always let system erase the background. And you should change the background style to {Wx::BackgroundStyle::BG_STYLE_PAINT} if you define an EVT_PAINT handler which completely overwrites the window background as in this case erasing it previously, either in EVT_ERASE_BACKGROUND handler or in the system default handler, would result in flicker as the background pixels will be repainted twice every time the window is redrawn. Do ensure that the background is entirely erased by your EVT_PAINT handler in this case however as otherwise garbage may be left on screen.
1421
1529
  # Notice that in previous versions of wxWidgets a common way to work around the above mentioned flickering problem was to define an empty EVT_ERASE_BACKGROUND handler. Setting background style to {Wx::BackgroundStyle::BG_STYLE_PAINT} is a simpler and more efficient solution to the same problem.
1422
1530
  # Under WXGTK and WXOSX, you can use {Wx::BackgroundStyle::BG_STYLE_TRANSPARENT} to obtain full transparency of the window background. Note that WXGTK supports this only since GTK 2.12 with a compositing manager enabled, call {Wx::Window#is_transparent_background_supported} to check whether this is the case, see the example of doing it in the shapedsample".
@@ -1443,6 +1551,7 @@ module Wx
1443
1551
  alias_method :background_style=, :set_background_style
1444
1552
 
1445
1553
  # Checks whether using transparent background might work.
1554
+ #
1446
1555
  # If this function returns false, calling {Wx::Window#set_background_style} with {Wx::BackgroundStyle::BG_STYLE_TRANSPARENT} is not going to work. If it returns true, setting transparent style should normally succeed.
1447
1556
  # Notice that this function would typically be called on the parent of a window you want to set transparent background style for as the window for which this method is called must be fully created.
1448
1557
  #
@@ -1453,6 +1562,7 @@ module Wx
1453
1562
  alias_method :transparent_background_supported?, :is_transparent_background_supported
1454
1563
 
1455
1564
  # Sets the font for this window.
1565
+ #
1456
1566
  # This function should not be called for the parent window if you don't want its font to be inherited by its children, use {Wx::Window#set_own_font} instead in this case and see {Wx::Window#inherit_attributes} for more explanations.
1457
1567
  # Please notice that the given font is not automatically used for {Wx::PaintDC} objects associated with this window, you need to call {Wx::DC#set_font} too. However this font is used by any standard controls for drawing their text as well as by {Wx::Window#get_text_extent}.
1458
1568
  #
@@ -1465,6 +1575,7 @@ module Wx
1465
1575
  alias_method :font=, :set_font
1466
1576
 
1467
1577
  # Sets the foreground colour of the window.
1578
+ #
1468
1579
  # The meaning of foreground colour varies according to the window class; it may be the text colour or other colour, or it may not be used at all. Additionally, not all native controls support changing their foreground colour so this method may change their colour only partially or even not at all.
1469
1580
  # Please see {Wx::Window#inherit_attributes} for explanation of the difference between this method and {Wx::Window#set_own_foreground_colour}.
1470
1581
  #
@@ -1480,6 +1591,7 @@ module Wx
1480
1591
 
1481
1592
  # Sets the background colour of the window but prevents it from being inherited by the children of this window.
1482
1593
  #
1594
+ #
1483
1595
  # @see Wx::Window#set_background_colour
1484
1596
  # @see Wx::Window#inherit_attributes
1485
1597
  # @param colour [Wx::Colour,String,Symbol]
@@ -1489,6 +1601,7 @@ module Wx
1489
1601
 
1490
1602
  # Return true if this window inherits the background colour from its parent.
1491
1603
  #
1604
+ #
1492
1605
  # @see Wx::Window#set_own_background_colour
1493
1606
  # @see Wx::Window#inherit_attributes
1494
1607
  # @return [Boolean]
@@ -1499,12 +1612,14 @@ module Wx
1499
1612
  def use_bg_col; end
1500
1613
 
1501
1614
  # Return true if a background colour has been set for this window.
1615
+ #
1502
1616
  # Same as {Wx::Window#use_bg_col}
1503
1617
  # @return [Boolean]
1504
1618
  def use_background_colour; end
1505
1619
 
1506
1620
  # Sets the font of the window but prevents it from being inherited by the children of this window.
1507
1621
  #
1622
+ #
1508
1623
  # @see Wx::Window#set_font
1509
1624
  # @see Wx::Window#inherit_attributes
1510
1625
  # @param font [Wx::Font,Wx::FontInfo]
@@ -1514,6 +1629,7 @@ module Wx
1514
1629
 
1515
1630
  # Sets the foreground colour of the window but prevents it from being inherited by the children of this window.
1516
1631
  #
1632
+ #
1517
1633
  # @see Wx::Window#set_foreground_colour
1518
1634
  # @see Wx::Window#inherit_attributes
1519
1635
  # @param colour [Wx::Colour,String,Symbol]
@@ -1527,18 +1643,21 @@ module Wx
1527
1643
 
1528
1644
  # Return true if this window inherits the foreground colour from its parent.
1529
1645
  #
1646
+ #
1530
1647
  # @see Wx::Window#set_own_foreground_colour
1531
1648
  # @see Wx::Window#inherit_attributes
1532
1649
  # @return [Boolean]
1533
1650
  def inherits_foreground_colour; end
1534
1651
 
1535
1652
  # Return true from here to allow the colours of this window to be changed by {Wx::Window#inherit_attributes}.
1653
+ #
1536
1654
  # Returning false forbids inheriting them from the parent window.
1537
1655
  # The base class version returns false, but this method is overridden in {Wx::Control} where it returns true.
1538
1656
  # @return [Boolean]
1539
1657
  def should_inherit_colours; end
1540
1658
 
1541
1659
  # This function tells a window if it should use the system's "theme" code to draw the windows' background instead of its own background drawing code.
1660
+ #
1542
1661
  # This does not always have any effect since the underlying platform obviously needs to support the notion of themes in user defined windows. One such platform is GTK+ where windows can have (very colourful) backgrounds defined by a user's selected theme.
1543
1662
  # Dialogs, notebook pages and the status bar have this flag set to true by default so that the default look and feel is simulated best.
1544
1663
  # @see Wx::Window#get_theme_enabled
@@ -1549,18 +1668,21 @@ module Wx
1549
1668
 
1550
1669
  # Returns true if the window uses the system theme for drawing its background.
1551
1670
  #
1671
+ #
1552
1672
  # @see Wx::Window#set_theme_enabled
1553
1673
  # @return [Boolean]
1554
1674
  def get_theme_enabled; end
1555
1675
  alias_method :theme_enabled, :get_theme_enabled
1556
1676
 
1557
1677
  # Returns true if the system supports transparent windows and calling {Wx::Window#set_transparent} may succeed.
1678
+ #
1558
1679
  # If this function returns false, transparent windows are definitely not supported by the current system.
1559
1680
  # @return [Boolean]
1560
1681
  def can_set_transparent; end
1561
1682
  alias_method :can_set_transparent?, :can_set_transparent
1562
1683
 
1563
1684
  # Set the transparency of the window.
1685
+ #
1564
1686
  # If the system supports transparent windows, returns true, otherwise returns false and the window remains fully opaque. See also {Wx::Window#can_set_transparent}.
1565
1687
  # The parameter alpha is in the range 0..255 where 0 corresponds to a fully transparent window and 255 to the fully opaque one. The constants {Wx::IMAGE_ALPHA_TRANSPARENT} and {Wx::IMAGE_ALPHA_OPAQUE} can be used.
1566
1688
  # @param alpha [Integer]
@@ -1569,6 +1691,7 @@ module Wx
1569
1691
  alias_method :transparent=, :set_transparent
1570
1692
 
1571
1693
  # Returns the event handler for this window.
1694
+ #
1572
1695
  # By default, the window is its own event handler.
1573
1696
  # @see Wx::Window#set_event_handler
1574
1697
  # @see Wx::Window#push_event_handler
@@ -1580,6 +1703,7 @@ module Wx
1580
1703
  alias_method :event_handler, :get_event_handler
1581
1704
 
1582
1705
  # This function will generate the appropriate call to {Wx::Window#navigate} if the key event is one normally used for keyboard navigation and return true in this case.
1706
+ #
1583
1707
  # Returns true if the key pressed was for navigation and was handled, false otherwise.
1584
1708
  # @see Wx::Window#navigate
1585
1709
  # @param event [Wx::KeyEvent]
@@ -1587,6 +1711,7 @@ module Wx
1587
1711
  def handle_as_navigation_key(event) end
1588
1712
 
1589
1713
  # Shorthand for:
1714
+ #
1590
1715
  # ```ruby
1591
1716
  # get_event_handler.safely_process_event(event)
1592
1717
  # ```
@@ -1596,6 +1721,7 @@ module Wx
1596
1721
  def handle_window_event(event) end
1597
1722
 
1598
1723
  # Convenient wrapper for {Wx::Window#process_event}.
1724
+ #
1599
1725
  # This is the same as writing
1600
1726
  # ```ruby
1601
1727
  # get_event_handler.process_event(event)
@@ -1606,12 +1732,14 @@ module Wx
1606
1732
  def process_window_event(event) end
1607
1733
 
1608
1734
  # Wrapper for {Wx::EvtHandler#process_event_locally}.
1735
+ #
1609
1736
  # This method is similar to {Wx::Window#process_window_event} but can be used to search for the event handler only in this window and any event handlers pushed on top of it. Unlike {Wx::Window#process_window_event} it won't propagate the event upwards. But it will use the validator and event handlers associated with this window, if any.
1610
1737
  # @param event [Wx::Event]
1611
1738
  # @return [Boolean]
1612
1739
  def process_window_event_locally(event) end
1613
1740
 
1614
1741
  # Pushes this event handler onto the event stack for the window.
1742
+ #
1615
1743
  # An event handler is an object that is capable of processing the events sent to a window. By default, the window is its own event handler, but an application may wish to substitute another, for example to allow central implementation of event-handling for a variety of different window classes.
1616
1744
  # {Wx::Window#push_event_handler} allows an application to set up a stack of event handlers, where an event not handled by one event handler is handed to the next one in the chain.
1617
1745
  # E.g. if you have two event handlers A and B and a {Wx::Window} instance W and you call:
@@ -1628,6 +1756,7 @@ module Wx
1628
1756
  def push_event_handler(handler) end
1629
1757
 
1630
1758
  # Find the given handler in the windows event handler stack and removes (but does not delete) it from the stack.
1759
+ #
1631
1760
  # See {Wx::EvtHandler#unlink} for more info.
1632
1761
  #
1633
1762
  # Returns true if it was found and false otherwise (this also results in an assert failure so this function should only be called when the handler is supposed to be there).
@@ -1638,6 +1767,7 @@ module Wx
1638
1767
  def remove_event_handler(handler) end
1639
1768
 
1640
1769
  # Sets the event handler for this window.
1770
+ #
1641
1771
  # Note that if you use this function you may want to use as the "next" handler of handler the window itself; in this way when handler doesn't process an event, the window itself will have a chance to do it.
1642
1772
  # @see How Events are Processed
1643
1773
  # @param handler [Wx::EvtHandler] Specifies the handler to be set. Cannot be NULL.
@@ -1646,6 +1776,7 @@ module Wx
1646
1776
  alias_method :event_handler=, :set_event_handler
1647
1777
 
1648
1778
  # {Wx::WINDOWS} cannot be used to form event handler chains; this function thus will assert when called.
1779
+ #
1649
1780
  # Note that instead you can use {Wx::Window#push_event_handler} or {Wx::Window#set_event_handler} to implement a stack of event handlers to override {Wx::Window}'s own event handling mechanism.
1650
1781
  # @param handler [Wx::EvtHandler]
1651
1782
  # @return [void]
@@ -1653,6 +1784,7 @@ module Wx
1653
1784
  alias_method :next_handler=, :set_next_handler
1654
1785
 
1655
1786
  # {Wx::WINDOWS} cannot be used to form event handler chains; this function thus will assert when called.
1787
+ #
1656
1788
  # Note that instead you can use {Wx::Window#push_event_handler} or {Wx::Window#set_event_handler} to implement a stack of event handlers to override {Wx::Window}'s own event handling mechanism.
1657
1789
  # @param handler [Wx::EvtHandler]
1658
1790
  # @return [void]
@@ -1665,6 +1797,7 @@ module Wx
1665
1797
  alias_method :extra_style, :get_extra_style
1666
1798
 
1667
1799
  # Gets the window style that was passed to the constructor or {Wx::Window#create} method.
1800
+ #
1668
1801
  # {Wx::Window#get_window_style} is another name for the same function.
1669
1802
  # @return [Integer]
1670
1803
  def get_window_style_flag; end
@@ -1677,6 +1810,7 @@ module Wx
1677
1810
 
1678
1811
  # Returns true if the window has the given exFlag bit set in its extra styles.
1679
1812
  #
1813
+ #
1680
1814
  # @see Wx::Window#set_extra_style
1681
1815
  # @param exFlag [Integer]
1682
1816
  # @return [Boolean]
@@ -1690,6 +1824,7 @@ module Wx
1690
1824
  alias_method :has_flag?, :has_flag
1691
1825
 
1692
1826
  # Sets the extra style bits for the window.
1827
+ #
1693
1828
  # The currently defined extra style bits are reported in the class description.
1694
1829
  # @param exStyle [Integer]
1695
1830
  # @return [void]
@@ -1697,6 +1832,7 @@ module Wx
1697
1832
  alias_method :extra_style=, :set_extra_style
1698
1833
 
1699
1834
  # Sets the style of the window.
1835
+ #
1700
1836
  # Please note that some styles cannot be changed after the window creation and that {Wx::Window#refresh} might need to be called after changing the others for the change to take place immediately.
1701
1837
  # See Window styles for more information about flags.
1702
1838
  # @see Wx::Window#get_window_style_flag
@@ -1712,6 +1848,7 @@ module Wx
1712
1848
  alias_method :window_style=, :set_window_style
1713
1849
 
1714
1850
  # Turns the given flag on if it's currently turned off and vice versa.
1851
+ #
1715
1852
  # This function cannot be used if the value of the flag is 0 (which is often the case for default flags).
1716
1853
  # Also, please notice that not all styles can be changed after the control creation.
1717
1854
  # Returns true if the style was turned on by this function, false if it was switched off.
@@ -1722,6 +1859,7 @@ module Wx
1722
1859
  def toggle_window_style(flag) end
1723
1860
 
1724
1861
  # Moves this window in the tab navigation order after the specified win.
1862
+ #
1725
1863
  # This means that when the user presses TAB key on that other window, the focus switches to this window.
1726
1864
  # Default tab order is the same as creation order, this function and {Wx::Window#move_before_in_tab_order} allow to change it after creating all the windows.
1727
1865
  # @param win [Wx::Window] A sibling of this window which should precede it in tab order, must not be NULL
@@ -1734,6 +1872,7 @@ module Wx
1734
1872
  def move_before_in_tab_order(win) end
1735
1873
 
1736
1874
  # Performs a keyboard navigation action starting from this window.
1875
+ #
1737
1876
  # This method is equivalent to calling {Wx::Window#navigate_in} method on the parent window.
1738
1877
  #
1739
1878
  # Returns true if the focus was moved to another window or false if nothing changed.
@@ -1742,44 +1881,24 @@ module Wx
1742
1881
  # <b>Remark:</b>
1743
1882
  # <p>You may wish to call this from a text control custom keypress handler to do the default navigation behaviour for the tab key, since the standard default behaviour for a multiline text control with the {Wx::TE_PROCESS_TAB} style is to insert a tab and not navigate to the next control. See also {Wx::NavigationKeyEvent} and HandleAsNavigationKey.
1744
1883
  # </p>
1745
- # </div>>
1884
+ # </div>
1746
1885
  # @param flags [Integer] A combination of {Wx::NavigationKeyEvent::NavigationKeyEventFlags::IsForward} and {Wx::NavigationKeyEvent::NavigationKeyEventFlags::WinChange}.
1747
1886
  # @return [Boolean]
1748
1887
  def navigate(flags=NavigationKeyEvent::IsForward) end
1749
1888
 
1750
1889
  # Performs a keyboard navigation action inside this window.
1890
+ #
1751
1891
  # See {Wx::Window#navigate} for more information.
1752
1892
  # @param flags [Integer]
1753
1893
  # @return [Boolean]
1754
1894
  def navigate_in(flags=NavigationKeyEvent::IsForward) end
1755
1895
 
1756
- # Lowers the window to the bottom of the window hierarchy (Z-order).
1757
- # <div class="wxrb-remark">
1758
- # <b>Remark:</b>
1759
- # <p>This function only works for {Wx::TopLevelWindow}-derived classes.
1760
- # </p>
1761
- # </div>>
1762
- # @see Wx::Window#raise
1763
- # @return [void]
1764
- def lower; end
1765
-
1766
- # Raises the window to the top of the window hierarchy (Z-order).
1767
- # Notice that this function only requests the window manager to raise this window to the top of Z-order. Depending on its configuration, the window manager may raise the window, not do it at all or indicate that a window requested to be raised in some other way, e.g. by flashing its icon if it is minimized.
1768
- #
1769
- # <div class="wxrb-remark">
1770
- # <b>Remark:</b>
1771
- # <p>This function only works for {Wx::TopLevelWindow}-derived classes.
1772
- # </p>
1773
- # </div>>
1774
- # @see Wx::Window#lower
1775
- # @return [void]
1776
- def raise; end
1777
-
1778
1896
  # Equivalent to calling {Wx::Window#show}(false).
1779
1897
  # @return [Boolean]
1780
1898
  def hide; end
1781
1899
 
1782
1900
  # This function hides a window, like {Wx::Window#hide}, but using a special visual effect if possible.
1901
+ #
1783
1902
  # The parameters of this function are the same as for {Wx::Window#show_with_effect}, please see their description there.
1784
1903
  # @param effect [Wx::ShowEffect]
1785
1904
  # @param timeout [Integer]
@@ -1787,6 +1906,7 @@ module Wx
1787
1906
  def hide_with_effect(effect, timeout=0) end
1788
1907
 
1789
1908
  # Returns true if the window is enabled, i.e. if it accepts user input, false otherwise.
1909
+ #
1790
1910
  # Notice that this method can return false even if this window itself hadn't been explicitly disabled when one of its parent windows is disabled. To get the intrinsic status of this window, use {Wx::Window#is_this_enabled}
1791
1911
  # @see Wx::Window#enable
1792
1912
  # @return [Boolean]
@@ -1795,6 +1915,7 @@ module Wx
1795
1915
 
1796
1916
  # @overload is_exposed(x, y)
1797
1917
  # Returns true if the given point or rectangle area has been exposed since the last repaint.
1918
+ #
1798
1919
  # Call this in a paint event handler to optimize redrawing by only redrawing those areas, which have been exposed.
1799
1920
  # @param x [Integer]
1800
1921
  # @param y [Integer]
@@ -1819,6 +1940,7 @@ module Wx
1819
1940
 
1820
1941
  # Returns true if the window is shown, false if it has been hidden.
1821
1942
  #
1943
+ #
1822
1944
  # @see Wx::Window#is_shown_on_screen
1823
1945
  # @return [Boolean]
1824
1946
  def is_shown; end
@@ -1826,18 +1948,21 @@ module Wx
1826
1948
 
1827
1949
  # Returns true if the window is physically visible on the screen, i.e. it is shown and all its parents up to the toplevel window are shown as well.
1828
1950
  #
1951
+ #
1829
1952
  # @see Wx::Window#is_shown
1830
1953
  # @return [Boolean]
1831
1954
  def is_shown_on_screen; end
1832
1955
  alias_method :shown_on_screen?, :is_shown_on_screen
1833
1956
 
1834
1957
  # Disables the window.
1958
+ #
1835
1959
  # Same as {Wx::Window#enable} Enable(false).
1836
1960
  # Returns true if the window has been disabled, false if it had been already disabled before the call to this function.
1837
1961
  # @return [Boolean]
1838
1962
  def disable; end
1839
1963
 
1840
1964
  # Enable or disable the window for user input.
1965
+ #
1841
1966
  # Note that when a parent window is disabled, all of its children are disabled as well and they are re-enabled again when the parent is.
1842
1967
  # A window can be created initially disabled by calling this method on it before calling {Wx::Window#create} to create the actual underlying window, e.g.
1843
1968
  # ```ruby
@@ -1855,6 +1980,7 @@ module Wx
1855
1980
  def enable(enable=true) end
1856
1981
 
1857
1982
  # Shows or hides the window.
1983
+ #
1858
1984
  # You may need to call {Wx::Window#raise} for a top level window if you want to bring it to top, although this is not needed if {Wx::Window#show} is called immediately after the frame creation.
1859
1985
  # Notice that the default state of newly created top level windows is hidden (to allow you to create their contents without flicker) unlike for all the other, not derived from {Wx::TopLevelWindow}, windows that are by default created in the shown state.
1860
1986
  #
@@ -1868,6 +1994,7 @@ module Wx
1868
1994
  def show(show=true) end
1869
1995
 
1870
1996
  # This function shows a window, like {Wx::Window#show}, but using a special visual effect if possible.
1997
+ #
1871
1998
  # <div class="wxrb-note">
1872
1999
  # <b>Note:</b>
1873
2000
  # <p>Currently this function is only implemented in WXMSW and WXOSX and does the same thing as {Wx::Window#show} in the other ports.
@@ -1880,6 +2007,7 @@ module Wx
1880
2007
  def show_with_effect(effect, timeout=0) end
1881
2008
 
1882
2009
  # Gets the help text to be used as context-sensitive help for this window.
2010
+ #
1883
2011
  # Note that the text is actually stored by the current {Wx::HelpProvider} implementation, and not in the window object itself.
1884
2012
  # @see Wx::Window#set_help_text
1885
2013
  # @see Wx::Window#get_help_text_at_point
@@ -1889,6 +2017,7 @@ module Wx
1889
2017
  alias_method :help_text, :get_help_text
1890
2018
 
1891
2019
  # Sets the help text to be used as context-sensitive help for this window.
2020
+ #
1892
2021
  # Note that the text is actually stored by the current {Wx::HelpProvider} implementation, and not in the window object itself.
1893
2022
  # @see Wx::Window#get_help_text
1894
2023
  # @see Wx::HelpProvider#add_help
@@ -1898,9 +2027,10 @@ module Wx
1898
2027
  alias_method :help_text=, :set_help_text
1899
2028
 
1900
2029
  # Gets the help text to be used as context-sensitive help for this window.
2030
+ #
1901
2031
  # This method should be overridden if the help message depends on the position inside the window, otherwise {Wx::Window#get_help_text} can be used.
1902
2032
  # @param point [Array(Integer, Integer), Wx::Point] Coordinates of the mouse at the moment of help event emission.
1903
- # @param origin [Wx::wxHelpEvent::Origin] Help event origin, see also {Wx::HelpEvent#get_origin}.
2033
+ # @param origin [Wx::HelpEvent::Origin] Help event origin, see also {Wx::HelpEvent#get_origin}.
1904
2034
  # @return [String]
1905
2035
  def get_help_text_at_point(point, origin) end
1906
2036
  alias_method :help_text_at_point, :get_help_text_at_point
@@ -1917,6 +2047,7 @@ module Wx
1917
2047
 
1918
2048
  # @overload set_tool_tip(tipString)
1919
2049
  # Attach a tooltip to the window.
2050
+ #
1920
2051
  # {Wx::ToolTip} pointer can be NULL in the overload taking the pointer, meaning to unset any existing tooltips; however {Wx::Window#unset_tool_tip} provides a more readable alternative to this operation.
1921
2052
  # Notice that these methods are always available, even if wxWidgets was compiled with {Wx::Setup::USE_TOOLTIPS} set to 0, but don't do anything in this case.
1922
2053
  # @see Wx::Window#get_tool_tip
@@ -1932,12 +2063,14 @@ module Wx
1932
2063
 
1933
2064
  # Unset any existing tooltip.
1934
2065
  #
2066
+ #
1935
2067
  # @see Wx::Window#set_tool_tip
1936
2068
  # @return [void]
1937
2069
  def unset_tool_tip; end
1938
2070
 
1939
2071
  # @overload get_popup_menu_selection_from_user(menu, pos=Wx::DEFAULT_POSITION)
1940
2072
  # This function shows a popup menu at the given position in this window and returns the selected id.
2073
+ #
1941
2074
  # It can be more convenient than the general purpose {Wx::Window#popup_menu} function for simple menus proposing a choice in a list of strings to the user.
1942
2075
  # Notice that to avoid unexpected conflicts between the (usually consecutive range of) ids used by the menu passed to this function and the existing EVT_UPDATE_UI() handlers, this function temporarily disables UI updates for the window, so you need to manually disable (or toggle or ...) any items which should be disabled in the menu before showing it.
1943
2076
  # The parameter menu is the menu to show. The parameter pos (or the parameters x and y) is the position at which to show the menu in client coordinates. It is recommended to not explicitly specify coordinates when calling this method in response to mouse click, because some of the ports (namely, WXGTK) can do a better job of positioning the menu in that case.
@@ -1956,6 +2089,7 @@ module Wx
1956
2089
 
1957
2090
  # @overload popup_menu(menu, pos=Wx::DEFAULT_POSITION)
1958
2091
  # Pops up the given menu at the specified coordinates, relative to this window, and returns control when the user has dismissed the menu.
2092
+ #
1959
2093
  # If a menu item is selected, the corresponding menu event is generated and will be processed as usual. If coordinates are not specified, the current mouse cursor position is used.
1960
2094
  # menu is the menu to pop up.
1961
2095
  # The position where the menu will appear can be specified either as a {Wx::Point} pos or by two integers (x and y).
@@ -1965,7 +2099,7 @@ module Wx
1965
2099
  # <b>Remark:</b>
1966
2100
  # <p>Just before the menu is popped up, {Wx::Menu::UpdateUI} is called to ensure that the menu items are in the correct state. The menu does not get deleted by the window. It is recommended to not explicitly specify coordinates when calling PopupMenu in response to mouse click, because some of the ports (namely, WXGTK) can do a better job of positioning the menu in that case.
1967
2101
  # </p>
1968
- # </div>>
2102
+ # </div>
1969
2103
  # @see Wx::Menu
1970
2104
  # @param menu [Wx::Menu]
1971
2105
  # @param pos [Array(Integer, Integer), Wx::Point]
@@ -1979,6 +2113,7 @@ module Wx
1979
2113
  def popup_menu(*args) end
1980
2114
 
1981
2115
  # Validator functions.
2116
+ #
1982
2117
  # Returns a pointer to the current validator for the window, or NULL if there is none.
1983
2118
  # @return [Wx::Validator]
1984
2119
  def get_validator; end
@@ -1990,7 +2125,28 @@ module Wx
1990
2125
  def set_validator(validator) end
1991
2126
  alias_method :validator=, :set_validator
1992
2127
 
2128
+ # Transfers values from child controls to data areas specified by their validators.
2129
+ #
2130
+ # Returns false if a transfer failed.
2131
+ # Notice that this also calls {Wx::Window#transfer_data_from_window} for all children recursively.
2132
+ # @see Wx::Window#transfer_data_to_window
2133
+ # @see Wx::Validator
2134
+ # @see Wx::Window#validate
2135
+ # @return [Boolean]
2136
+ def transfer_data_from_window; end
2137
+
2138
+ # Transfers values to child controls from data areas specified by their validators.
2139
+ #
2140
+ # Notice that this also calls {Wx::Window#transfer_data_to_window} for all children recursively.
2141
+ # Returns false if a transfer failed.
2142
+ # @see Wx::Window#transfer_data_from_window
2143
+ # @see Wx::Validator
2144
+ # @see Wx::Window#validate
2145
+ # @return [Boolean]
2146
+ def transfer_data_to_window; end
2147
+
1993
2148
  # Validates the current values of the child controls using their validators.
2149
+ #
1994
2150
  # Notice that this also calls {Wx::Window#validate} for all children recursively.
1995
2151
  # Returns false if any of the validations failed.
1996
2152
  # @see Wx::Window#transfer_data_from_window
@@ -2000,11 +2156,12 @@ module Wx
2000
2156
  def validate; end
2001
2157
 
2002
2158
  # Returns the identifier of the window.
2159
+ #
2003
2160
  # <div class="wxrb-remark">
2004
2161
  # <b>Remark:</b>
2005
2162
  # <p>Each window has an integer identifier. If the application has not provided one (or the default {Wx::StandardID::ID_ANY}) a unique identifier with a negative value will be generated.
2006
2163
  # </p>
2007
- # </div>>
2164
+ # </div>
2008
2165
  # @see Wx::Window#set_id
2009
2166
  # @see Window IDs
2010
2167
  # @return [Integer]
@@ -2012,11 +2169,12 @@ module Wx
2012
2169
  alias_method :id, :get_id
2013
2170
 
2014
2171
  # Generic way of getting a label from any window, for identification purposes.
2172
+ #
2015
2173
  # <div class="wxrb-remark">
2016
2174
  # <b>Remark:</b>
2017
2175
  # <p>The interpretation of this function differs from class to class. For frames and dialogs, the value returned is the title. For buttons or static text controls, it is the button text. This function can be useful for meta-programs (such as testing tools or special-needs access programs) which need to identify windows by name.
2018
2176
  # </p>
2019
- # </div>>
2177
+ # </div>
2020
2178
  # @return [String]
2021
2179
  def get_label; end
2022
2180
  alias_method :label, :get_label
@@ -2034,11 +2192,12 @@ module Wx
2034
2192
  def adjust_for_layout_direction(x, width, widthTotal) end
2035
2193
 
2036
2194
  # Returns the window's name.
2195
+ #
2037
2196
  # <div class="wxrb-remark">
2038
2197
  # <b>Remark:</b>
2039
2198
  # <p>This name is not guaranteed to be unique; it is up to the programmer to supply an appropriate name in the window constructor or via {Wx::Window#set_name}.
2040
2199
  # </p>
2041
- # </div>>
2200
+ # </div>
2042
2201
  # @see Wx::Window#set_name
2043
2202
  # @return [String]
2044
2203
  def get_name; end
@@ -2050,11 +2209,12 @@ module Wx
2050
2209
  alias_method :window_variant, :get_window_variant
2051
2210
 
2052
2211
  # Sets the identifier of the window.
2212
+ #
2053
2213
  # <div class="wxrb-remark">
2054
2214
  # <b>Remark:</b>
2055
2215
  # <p>Each window has an integer identifier. If the application has not provided one, an identifier will be generated. Normally, the identifier should be provided on creation and should not be modified subsequently.
2056
2216
  # </p>
2057
- # </div>>
2217
+ # </div>
2058
2218
  # @see Wx::Window#get_id
2059
2219
  # @see Window IDs
2060
2220
  # @param winid [Integer]
@@ -2064,6 +2224,7 @@ module Wx
2064
2224
 
2065
2225
  # Sets the window's label.
2066
2226
  #
2227
+ #
2067
2228
  # @see Wx::Window#get_label
2068
2229
  # @param label [String] The window label.
2069
2230
  # @return [void]
@@ -2071,6 +2232,7 @@ module Wx
2071
2232
  alias_method :label=, :set_label
2072
2233
 
2073
2234
  # Sets the layout direction for this window.
2235
+ #
2074
2236
  # This function is only supported under MSW and GTK platforms, but not under Mac currently.
2075
2237
  # @param dir [Wx::LayoutDirection]
2076
2238
  # @return [void]
@@ -2079,6 +2241,7 @@ module Wx
2079
2241
 
2080
2242
  # Sets the window's name.
2081
2243
  #
2244
+ #
2082
2245
  # @see Wx::Window#get_name
2083
2246
  # @param name [String] A name to set for the window.
2084
2247
  # @return [void]
@@ -2086,6 +2249,7 @@ module Wx
2086
2249
  alias_method :name=, :set_name
2087
2250
 
2088
2251
  # Chooses a different variant of the window display to use.
2252
+ #
2089
2253
  # Window variants currently just differ in size, as can be seen from {Wx::WindowVariant} documentation. Under all platforms but macOS, this function does nothing more than change the font used by the window. However under macOS it is implemented natively and selects the appropriate variant of the native widget, which has better appearance than just scaled down or up version of the normal variant, so it should be preferred to directly tweaking the font size.
2090
2254
  # By default the controls naturally use the normal variant.
2091
2255
  # @param variant [Wx::WindowVariant]
@@ -2094,18 +2258,21 @@ module Wx
2094
2258
  alias_method :window_variant=, :set_window_variant
2095
2259
 
2096
2260
  # Gets the accelerator table for this window.
2261
+ #
2097
2262
  # See {Wx::AcceleratorTable}.
2098
2263
  # @return [Wx::AcceleratorTable]
2099
2264
  def get_accelerator_table; end
2100
2265
  alias_method :accelerator_table, :get_accelerator_table
2101
2266
 
2102
2267
  # Returns the accessible object for this window, if any.
2268
+ #
2103
2269
  # See also {Wx::Accessible}.
2104
2270
  # @return [Wx::Accessible]
2105
2271
  def get_accessible; end
2106
2272
  alias_method :accessible, :get_accessible
2107
2273
 
2108
2274
  # Sets the accelerator table for this window.
2275
+ #
2109
2276
  # See {Wx::AcceleratorTable}.
2110
2277
  # @param accel [Wx::AcceleratorTable]
2111
2278
  # @return [void]
@@ -2113,6 +2280,7 @@ module Wx
2113
2280
  alias_method :accelerator_table=, :set_accelerator_table
2114
2281
 
2115
2282
  # Sets the accessible for this window.
2283
+ #
2116
2284
  # Any existing accessible for this window will be deleted first, if not identical to accessible. See also {Wx::Accessible}.
2117
2285
  # @param accessible [Wx::Accessible]
2118
2286
  # @return [void]
@@ -2120,6 +2288,7 @@ module Wx
2120
2288
  alias_method :accessible=, :set_accessible
2121
2289
 
2122
2290
  # This function simply generates a {Wx::CloseEvent} whose handler usually tries to close the window.
2291
+ #
2123
2292
  # It doesn't close the window itself, however.
2124
2293
  #
2125
2294
  # true if the event was handled and not vetoed, false otherwise.
@@ -2128,7 +2297,7 @@ module Wx
2128
2297
  # <b>Remark:</b>
2129
2298
  # <p>Close calls the close handler for the window, providing an opportunity for the window to choose whether to destroy the window. Usually it is only used with the top level windows ({Wx::Frame} and {Wx::Dialog} classes) as the others are not supposed to have any special OnClose() logic. The close handler should check whether the window is being deleted forcibly, using {Wx::CloseEvent#can_veto}, in which case it should destroy the window using {Wx::Window#destroy}. Note that calling Close does not guarantee that the window will be destroyed; but it provides a way to simulate a manual close of a window, which may or may not be implemented by destroying the window. The default implementation of {Wx::Dialog::OnCloseWindow} does not necessarily delete the dialog, since it will simply simulate a {Wx::StandardID::ID_CANCEL} event which is handled by the appropriate button event handler and may do anything at all. To guarantee that the window will be destroyed, call {Wx::Window#destroy} instead
2130
2299
  # </p>
2131
- # </div>>
2300
+ # </div>
2132
2301
  # @see Window Deletion Overview
2133
2302
  # @see Wx::Window#destroy
2134
2303
  # @see Wx::CloseEvent
@@ -2137,12 +2306,14 @@ module Wx
2137
2306
  def close(force=false) end
2138
2307
 
2139
2308
  # Destroys the window safely.
2309
+ #
2140
2310
  # Use this function instead of the delete operator, since different window classes can be destroyed differently. Frames and dialogs are not destroyed immediately when this function is called they are added to a list of windows to be deleted on idle time, when all the window's events have been processed. This prevents problems with events being sent to non-existent windows.
2141
2311
  # true if the window has either been successfully deleted, or it has been added to the list of windows pending real deletion.
2142
2312
  # @return [Boolean]
2143
2313
  def destroy; end
2144
2314
 
2145
2315
  # Returns true if this window is in process of being destroyed.
2316
+ #
2146
2317
  # Top level windows are not deleted immediately but are rather scheduled for later destruction to give them time to process any pending messages; see {Wx::Window#destroy} description.
2147
2318
  # This function returns true if this window, or one of its parent windows, is scheduled for destruction and can be useful to avoid manipulating it as it's usually useless to do something with a window which is at the point of disappearing anyhow.
2148
2319
  # @return [Boolean]
@@ -2151,6 +2322,7 @@ module Wx
2151
2322
 
2152
2323
  # Returns the associated drop target, which may be NULL.
2153
2324
  #
2325
+ #
2154
2326
  # @see Wx::Window#set_drop_target
2155
2327
  # @see Drag and Drop Overview
2156
2328
  # @return [Wx::DropTarget]
@@ -2158,6 +2330,7 @@ module Wx
2158
2330
  alias_method :drop_target, :get_drop_target
2159
2331
 
2160
2332
  # Associates a drop target with this window.
2333
+ #
2161
2334
  # If the window already has a drop target, it is deleted.
2162
2335
  # @see Wx::Window#get_drop_target
2163
2336
  # @see Drag and Drop Overview
@@ -2167,11 +2340,12 @@ module Wx
2167
2340
  alias_method :drop_target=, :set_drop_target
2168
2341
 
2169
2342
  # Enables or disables eligibility for drop file events (OnDropFiles).
2343
+ #
2170
2344
  # <div class="wxrb-remark">
2171
2345
  # <b>Remark:</b>
2172
2346
  # <p>Windows only until version 2.8.9, available on all platforms since 2.8.10. Cannot be used together with {Wx::Window#set_drop_target} on non-Windows platforms.
2173
2347
  # </p>
2174
- # </div>>
2348
+ # </div>
2175
2349
  # @see Wx::Window#set_drop_target
2176
2350
  # @param accept [Boolean] If true, the window is eligible for drop file events. If false, the window will not accept drop file events.
2177
2351
  # @return [void]
@@ -2188,6 +2362,7 @@ module Wx
2188
2362
  alias_method :sizer, :get_sizer
2189
2363
 
2190
2364
  # Sets the window to have the given layout sizer.
2365
+ #
2191
2366
  # The window will then own the object, and will take care of its deletion. If an existing layout constraints object is already owned by the window, it will be deleted if the deleteOld parameter is true.
2192
2367
  # Note that this function will also call {Wx::Window#set_auto_layout} implicitly with true parameter if the sizer is non-NULL and false otherwise so that the sizer will be effectively used to layout the window children whenever it is resized.
2193
2368
  #
@@ -2195,13 +2370,14 @@ module Wx
2195
2370
  # <b>Remark:</b>
2196
2371
  # <p>SetSizer enables and disables Layout automatically.
2197
2372
  # </p>
2198
- # </div>>
2373
+ # </div>
2199
2374
  # @param sizer [Wx::Sizer] The sizer to set. Pass NULL to disassociate and conditionally delete the window's sizer. See below.
2200
2375
  # @return [void]
2201
2376
  def set_sizer(sizer) end
2202
2377
  alias_method :sizer=, :set_sizer
2203
2378
 
2204
2379
  # Associate the sizer with the window and set the window size and minimal size accordingly.
2380
+ #
2205
2381
  # This method calls {Wx::Window#set_sizer} and then {Wx::Sizer#set_size_hints} which sets the initial window size to the size needed to accommodate all sizer elements and sets the minimal size to the same size, this preventing the user from resizing this window to be less than this minimal size (if it's a top-level window which can be directly resized by the user).
2206
2382
  # @param sizer [Wx::Sizer]
2207
2383
  # @return [void]
@@ -2209,6 +2385,7 @@ module Wx
2209
2385
  alias_method :sizer_and_fit=, :set_sizer_and_fit
2210
2386
 
2211
2387
  # Lays out the children of this window using the associated sizer.
2388
+ #
2212
2389
  # If a sizer hadn't been associated with this window (see {Wx::Window#set_sizer}), this function doesn't do anything, unless this is a top level window (see {Wx::TopLevelWindow#layout}).
2213
2390
  # Note that this method is called automatically when the window size changes if it has the associated sizer (or if {Wx::Window#set_auto_layout} with true argument had been explicitly called), ensuring that it is always laid out correctly.
2214
2391
  #
@@ -2218,6 +2395,7 @@ module Wx
2218
2395
  def layout; end
2219
2396
 
2220
2397
  # Determines whether the {Wx::Window#layout} function will be called automatically when the window is resized.
2398
+ #
2221
2399
  # This method is called implicitly by {Wx::Window#set_sizer} but if you use {Wx::Window#set_constraints} you should call it manually or otherwise the window layout won't be correctly updated when its size changes.
2222
2400
  # @see Wx::Window#set_sizer
2223
2401
  # @see Wx::Window#set_constraints
@@ -2227,12 +2405,14 @@ module Wx
2227
2405
  alias_method :auto_layout=, :set_auto_layout
2228
2406
 
2229
2407
  # Returns true if {Wx::Window#layout} is called automatically when the window is resized.
2408
+ #
2230
2409
  # This function is mostly useful for wxWidgets itself and is rarely needed in the application code.
2231
2410
  # @return [Boolean]
2232
2411
  def get_auto_layout; end
2233
2412
  alias_method :auto_layout, :get_auto_layout
2234
2413
 
2235
2414
  # Directs all mouse input to this window.
2415
+ #
2236
2416
  # Call {Wx::Window#release_mouse} to release the capture.
2237
2417
  # Note that wxWidgets maintains the stack of windows having captured the mouse and when the mouse is released the capture returns to the window which had had captured it previously and it is only really released if there were no previous window. In particular, this means that you must release the mouse as many times as you capture it, unless the window receives the {Wx::MouseCaptureLostEvent} event.
2238
2418
  # Any application which captures the mouse in the beginning of some operation must handle {Wx::MouseCaptureLostEvent} and cancel this operation when it receives the event. The event handler must not recapture mouse.
@@ -2248,6 +2428,7 @@ module Wx
2248
2428
 
2249
2429
  # Return the cursor associated with this window.
2250
2430
  #
2431
+ #
2251
2432
  # @see Wx::Window#set_cursor
2252
2433
  # @return [Wx::Cursor]
2253
2434
  def get_cursor; end
@@ -2255,6 +2436,7 @@ module Wx
2255
2436
 
2256
2437
  # Returns true if this window has the current mouse capture.
2257
2438
  #
2439
+ #
2258
2440
  # @see Wx::Window#capture_mouse
2259
2441
  # @see Wx::Window#release_mouse
2260
2442
  # @see Wx::MouseCaptureLostEvent
@@ -2265,6 +2447,7 @@ module Wx
2265
2447
 
2266
2448
  # Releases mouse input captured with {Wx::Window#capture_mouse}.
2267
2449
  #
2450
+ #
2268
2451
  # @see Wx::Window#capture_mouse
2269
2452
  # @see Wx::Window#has_capture
2270
2453
  # @see Wx::Window#release_mouse
@@ -2280,6 +2463,7 @@ module Wx
2280
2463
  alias_method :caret=, :set_caret
2281
2464
 
2282
2465
  # Sets the window's cursor.
2466
+ #
2283
2467
  # Notice that the window cursor also sets it for the children of the window implicitly.
2284
2468
  # The cursor may be {Wx::NULL_CURSOR} in which case the window cursor will be reset back to default.
2285
2469
  # @see Wx::SetCursor
@@ -2290,6 +2474,7 @@ module Wx
2290
2474
  alias_method :cursor=, :set_cursor
2291
2475
 
2292
2476
  # Moves the pointer to the given position on the window.
2477
+ #
2293
2478
  # <div class="wxrb-note">
2294
2479
  # <b>Note:</b>
2295
2480
  # <p>Apple Human Interface Guidelines forbid moving the mouse cursor programmatically so you should avoid using this function in Mac applications (and probably avoid using it under the other platforms without good reason as well).
@@ -2301,6 +2486,7 @@ module Wx
2301
2486
  def warp_pointer(x, y) end
2302
2487
 
2303
2488
  # Request generation of touch events for this window.
2489
+ #
2304
2490
  # Each call to this function supersedes the previous ones, i.e. if you want to receive events for both zoom and rotate gestures, you need to call
2305
2491
  # ```ruby
2306
2492
  # enable_touch_events(Wx::TOUCH_ZOOM_GESTURE | Wx::TOUCH_ROTATE_GESTURE)
@@ -2314,6 +2500,7 @@ module Wx
2314
2500
 
2315
2501
  # @overload hit_test(x, y)
2316
2502
  # Return where the given point lies, exactly.
2503
+ #
2317
2504
  # This method is used to test whether the point lies inside the client window area or on one of its scrollbars.
2318
2505
  # The point coordinates are specified in client window coordinates.
2319
2506
  # @param x [Integer]
@@ -2336,6 +2523,7 @@ module Wx
2336
2523
  alias_method :border, :get_border
2337
2524
 
2338
2525
  # Does the window-specific updating after processing the update event.
2526
+ #
2339
2527
  # This function is called by {Wx::Window#update_window_ui} in order to check return values in the {Wx::UpdateUIEvent} and act appropriately. For example, to allow frame and dialog title updating, wxWidgets implements this function as follows:
2340
2528
  #
2341
2529
  # ```ruby
@@ -2357,12 +2545,14 @@ module Wx
2357
2545
  def do_update_window_ui(event) end
2358
2546
 
2359
2547
  # This method should be overridden to return true if this window has multiple pages.
2548
+ #
2360
2549
  # All standard class with multiple pages such as {Wx::Notebook}, {Wx::Listbook} and {Wx::Treebook} already override it to return true and user-defined classes with similar behaviour should also do so, to allow the library to handle such windows appropriately.
2361
2550
  # @return [Boolean]
2362
2551
  def has_multiple_pages; end
2363
2552
  alias_method :has_multiple_pages?, :has_multiple_pages
2364
2553
 
2365
2554
  # This function is (or should be, in case of custom controls) called during window creation to intelligently set up the window visual attributes, that is the font and the foreground and background colours.
2555
+ #
2366
2556
  # By "intelligently" the following is meant: by default, all windows use their own {Wx::Window.get_class_default_attributes} default attributes. However if some of the parents attributes are explicitly (that is, using {Wx::Window#set_font} and not {Wx::Window#set_own_font}) changed and if the corresponding attribute hadn't been explicitly set for this window itself, then this window takes the same value as used by the parent. In addition, if the window overrides {Wx::Window#should_inherit_colours} to return false, the colours will not be changed no matter what and only the font might.
2367
2557
  # This rather complicated logic is necessary in order to accommodate the different usage scenarios. The most common one is when all default attributes are used and in this case, nothing should be inherited as in modern GUIs different controls use different fonts (and colours) than their siblings so they can't inherit the same value from the parent. However it was also deemed desirable to allow to simply change the attributes of all children at once by just changing the font or colour of their common parent, hence in this case we do inherit the parents attributes.
2368
2558
  # @return [void]
@@ -2374,6 +2564,7 @@ module Wx
2374
2564
 
2375
2565
  # Returns true if the window contents is double-buffered by the system, i.e. if any drawing done on the window is really done on a temporary backing surface and transferred to the screen all at once later.
2376
2566
  #
2567
+ #
2377
2568
  # @see Wx::BufferedDC
2378
2569
  # @return [Boolean]
2379
2570
  def is_double_buffered; end
@@ -2386,33 +2577,38 @@ module Wx
2386
2577
  alias_method :double_buffered=, :set_double_buffered
2387
2578
 
2388
2579
  # Returns true if the window is retained, false otherwise.
2580
+ #
2389
2581
  # <div class="wxrb-remark">
2390
2582
  # <b>Remark:</b>
2391
2583
  # <p>Retained windows are only available on X platforms.
2392
2584
  # </p>
2393
- # </div>>
2585
+ # </div>
2394
2586
  # @return [Boolean]
2395
2587
  def is_retained; end
2396
2588
  alias_method :retained?, :is_retained
2397
2589
 
2398
2590
  # Returns true if this window is intrinsically enabled, false otherwise, i.e. if {Wx::Window#enable} Enable(false) had been called.
2591
+ #
2399
2592
  # This method is mostly used for wxWidgets itself, user code should normally use {Wx::Window#is_enabled} instead.
2400
2593
  # @return [Boolean]
2401
2594
  def is_this_enabled; end
2402
2595
  alias_method :this_enabled?, :is_this_enabled
2403
2596
 
2404
2597
  # Returns true if the given window is a top-level one.
2598
+ #
2405
2599
  # Currently all frames and dialogs are considered to be top-level windows (even if they have a parent window).
2406
2600
  # @return [Boolean]
2407
2601
  def is_top_level; end
2408
2602
  alias_method :top_level?, :is_top_level
2409
2603
 
2410
2604
  # This virtual function is normally only used internally, but sometimes an application may need it to implement functionality that should not be disabled by an application defining an OnIdle handler in a derived class.
2605
+ #
2411
2606
  # This function may be used to do delayed painting, for example, and most implementations call {Wx::Window#update_window_ui} in order to send update events to the window in idle time.
2412
2607
  # @return [void]
2413
2608
  def on_internal_idle; end
2414
2609
 
2415
2610
  # Registers a system wide hotkey.
2611
+ #
2416
2612
  # Every time the user presses the hotkey registered here, this window will receive a hotkey event.
2417
2613
  # It will receive the event even if the application is in the background and does not have the input focus because the user is working with some other application.
2418
2614
  #
@@ -2422,7 +2618,7 @@ module Wx
2422
2618
  # <b>Remark:</b>
2423
2619
  # <p>Use EVT_HOTKEY(hotkeyId, fnc) in the event table to capture the event. This function is currently only implemented under MSW and macOS and always returns false in the other ports.
2424
2620
  # </p>
2425
- # </div>>
2621
+ # </div>
2426
2622
  # @see Wx::Window#unregister_hot_key
2427
2623
  # @param hotkeyId [Integer] Numeric identifier of the hotkey. For applications this must be between 0 and 0xBFFF. If this function is called from a shared DLL, it must be a system wide unique identifier between 0xC000 and 0xFFFF. This is a MSW specific detail.
2428
2624
  # @param modifiers [Integer] A bitwise combination of {Wx::KeyModifier::MOD_SHIFT}, {Wx::KeyModifier::MOD_CONTROL}, {Wx::KeyModifier::MOD_ALT} or {Wx::KeyModifier::MOD_WIN} specifying the modifier keys that have to be pressed along with the key.
@@ -2432,13 +2628,14 @@ module Wx
2432
2628
  def register_hot_key(hotkeyId, modifiers, virtualKeyCode) end
2433
2629
 
2434
2630
  # Unregisters a system wide hotkey.
2631
+ #
2435
2632
  # true if the hotkey was unregistered successfully, false if the id was invalid.
2436
2633
  #
2437
2634
  # <div class="wxrb-remark">
2438
2635
  # <b>Remark:</b>
2439
2636
  # <p>This function is currently only implemented under MSW.
2440
2637
  # </p>
2441
- # </div>>
2638
+ # </div>
2442
2639
  # @see Wx::Window#register_hot_key
2443
2640
  # @param hotkeyId [Integer] Numeric identifier of the hotkey. Must be the same id that was passed to {Wx::Window#register_hot_key}.
2444
2641
  # @return [Boolean]
@@ -2446,6 +2643,7 @@ module Wx
2446
2643
  def unregister_hot_key(hotkeyId) end
2447
2644
 
2448
2645
  # This function sends one or more {Wx::UpdateUIEvent} to the window.
2646
+ #
2449
2647
  # The particular implementation depends on the window; for example a {Wx::ToolBar} will send an update UI event for each toolbar button, and a {Wx::Frame} will send an update UI event for each menubar menu item.
2450
2648
  # You can call this function from your application to ensure that your UI is up-to-date at this point (as far as your {Wx::UpdateUIEvent} handlers are concerned). This may be necessary if you have called {Wx::UpdateUIEvent.set_mode} or {Wx::UpdateUIEvent.set_update_interval} to limit the overhead that wxWidgets incurs by sending update UI events in idle time. flags should be a bitlist of one or more of the {Wx::UpdateUI} enumeration.
2451
2649
  # If you are calling this function from an OnInternalIdle or OnIdle function, make sure you pass the {Wx::UpdateUI::UPDATE_UI_FROMIDLE} flag, since this tells the window to only update the UI elements that need to be updated in idle time. Some windows update their elements only when necessary, for example when a menu is about to be shown. The following is an example of how to call UpdateWindowUI from an idle function.
@@ -2467,6 +2665,7 @@ module Wx
2467
2665
  def update_window_ui(flags=Wx::UpdateUI::UPDATE_UI_NONE) end
2468
2666
 
2469
2667
  # Returns the default font and colours which are used by the control.
2668
+ #
2470
2669
  # This is useful if you want to use the same font or colour in your own control as in a standard control which is a much better idea than hard coding specific colours or fonts which might look completely out of place on the users system, especially if it uses themes.
2471
2670
  # The variant parameter is only relevant under Mac currently and is ignore under other platforms. Under Mac, it will change the size of the returned font. See {Wx::Window#set_window_variant} for more about this.
2472
2671
  # This static method is "overridden" in many derived classes and so calling, for example, {Wx::Button#get_class_default_attributes} will typically return the values appropriate for a button which will be normally different from those returned by, say, {Wx::ListCtrl#get_class_default_attributes}.
@@ -2477,17 +2676,19 @@ module Wx
2477
2676
  def self.get_class_default_attributes(variant=Wx::WindowVariant::WINDOW_VARIANT_NORMAL) end
2478
2677
 
2479
2678
  # Finds the window or control which currently has the keyboard focus.
2679
+ #
2480
2680
  # <div class="wxrb-remark">
2481
2681
  # <b>Remark:</b>
2482
2682
  # <p>Note that this is a static function, so it can be called without needing a {Wx::Window} pointer.
2483
2683
  # </p>
2484
- # </div>>
2684
+ # </div>
2485
2685
  # @see Wx::Window#set_focus
2486
2686
  # @see Wx::Window#has_focus
2487
2687
  # @return [Wx::Window]
2488
2688
  def self.find_focus; end
2489
2689
 
2490
2690
  # Find the first window with the given id.
2691
+ #
2491
2692
  # If parent is NULL, the search will start from all top-level frames and dialog boxes; if non-NULL, the search will be limited to the given window hierarchy. The search is recursive in both cases.
2492
2693
  #
2493
2694
  # Window with the given id or NULL if not found.
@@ -2498,6 +2699,7 @@ module Wx
2498
2699
  def self.find_window_by_id(id, parent=0) end
2499
2700
 
2500
2701
  # Find a window by its label.
2702
+ #
2501
2703
  # Depending on the type of window, the label may be a window title or panel item label. If parent is NULL, the search will start from all top-level frames and dialog boxes; if non-NULL, the search will be limited to the given window hierarchy.
2502
2704
  # The search is recursive in both cases and, unlike with {Wx::Window#find_window}, recurses into top level child windows too.
2503
2705
  #
@@ -2509,6 +2711,7 @@ module Wx
2509
2711
  def self.find_window_by_label(label, parent=0) end
2510
2712
 
2511
2713
  # Find a window by its name (as given in a window constructor or {Wx::Window#create} function call).
2714
+ #
2512
2715
  # If parent is NULL, the search will start from all top-level frames and dialog boxes; if non-NULL, the search will be limited to the given window hierarchy.
2513
2716
  # The search is recursive in both cases and, unlike {Wx::Window#find_window}, recurses into top level child windows too.
2514
2717
  # If no window with such name is found, {Wx::Window.find_window_by_label} is called, i.e. the name is interpreted as (internal) name first but if this fails, it's internal as (user-visible) label. As this behaviour may be confusing, it is usually better to use either the {Wx::Window#find_window} overload taking the name or {Wx::Window.find_window_by_label} directly.
@@ -2520,6 +2723,7 @@ module Wx
2520
2723
 
2521
2724
  # Returns the currently captured window.
2522
2725
  #
2726
+ #
2523
2727
  # @see Wx::Window#has_capture
2524
2728
  # @see Wx::Window#capture_mouse
2525
2729
  # @see Wx::Window#release_mouse
@@ -2529,6 +2733,7 @@ module Wx
2529
2733
  def self.get_capture; end
2530
2734
 
2531
2735
  # Create a new ID or range of IDs that are not currently in use.
2736
+ #
2532
2737
  # The IDs will be reserved until assigned to a {Wx::Window} ID or unreserved with {Wx::Window.unreserve_control_id}.
2533
2738
  # See Window IDs for more information.
2534
2739
  #
@@ -2541,6 +2746,7 @@ module Wx
2541
2746
  def self.new_control_id(count=1) end
2542
2747
 
2543
2748
  # Unreserve an ID or range of IDs that was reserved by {Wx::Window.new_control_id}.
2749
+ #
2544
2750
  # See Window IDs for more information.
2545
2751
  # @see Wx::Window.new_control_id
2546
2752
  # @see Wx::IdManager
@@ -2565,6 +2771,7 @@ module Wx
2565
2771
  def initialize(*args) end
2566
2772
 
2567
2773
  # Construct the actual window object after creating the C++ object.
2774
+ #
2568
2775
  # The non-default constructor of {Wx::Window} class does two things: it initializes the C++ object and it also creates the window object in the underlying graphical toolkit. The {Wx::Window#create} method can be used to perform the second part later, while the default constructor can be used to perform the first part only.
2569
2776
  # Please note that the underlying window must be created exactly once, i.e. if you use the default constructor, which doesn't do this, you must call {Wx::Window#create} before using the window and if you use the non-default constructor, you can not call {Wx::Window#create}, as the underlying window is already created.
2570
2777
  # Note that it is possible and, in fact, useful, to call some methods on the object between creating the C++ object itself and calling {Wx::Window#create} on it, e.g. a common pattern to avoid showing the contents of a window before it is fully initialized is:
@@ -2625,6 +2832,7 @@ module Wx
2625
2832
  #
2626
2833
  #
2627
2834
  #
2835
+ #
2628
2836
  # @note This class is <b>untracked</b> and should not be derived from nor instances extended!
2629
2837
  class VisualAttributes < ::Object
2630
2838