wxruby3 0.9.5-x64-mingw-ucrt → 0.9.7-x64-mingw-ucrt

Sign up to get free protection for your applications and to get access to all the features.
Files changed (386) hide show
  1. checksums.yaml +4 -4
  2. data/.wxconfig +9 -8
  3. data/INSTALL.md +315 -78
  4. data/README.md +31 -20
  5. data/ext/wxbase32u_gcc_custom.dll +0 -0
  6. data/ext/wxbase32u_net_gcc_custom.dll +0 -0
  7. data/ext/wxbase32u_xml_gcc_custom.dll +0 -0
  8. data/ext/wxmsw32u_aui_gcc_custom.dll +0 -0
  9. data/ext/wxmsw32u_core_gcc_custom.dll +0 -0
  10. data/ext/wxmsw32u_gl_gcc_custom.dll +0 -0
  11. data/ext/wxmsw32u_html_gcc_custom.dll +0 -0
  12. data/ext/wxmsw32u_media_gcc_custom.dll +0 -0
  13. data/ext/wxmsw32u_propgrid_gcc_custom.dll +0 -0
  14. data/ext/wxmsw32u_qa_gcc_custom.dll +0 -0
  15. data/ext/wxmsw32u_ribbon_gcc_custom.dll +0 -0
  16. data/ext/wxmsw32u_richtext_gcc_custom.dll +0 -0
  17. data/ext/wxmsw32u_stc_gcc_custom.dll +0 -0
  18. data/ext/wxmsw32u_webview_gcc_custom.dll +0 -0
  19. data/ext/wxmsw32u_xrc_gcc_custom.dll +0 -0
  20. data/lib/wx/core/ext.rb +22 -3
  21. data/lib/wx/doc/gen/about_dialog_info.rb +1 -1
  22. data/lib/wx/doc/gen/accelerator.rb +1 -1
  23. data/lib/wx/doc/gen/accessible.rb +1 -1
  24. data/lib/wx/doc/gen/activity_indicator.rb +1 -1
  25. data/lib/wx/doc/gen/animation.rb +1 -1
  26. data/lib/wx/doc/gen/animation_ctrl.rb +1 -1
  27. data/lib/wx/doc/gen/any_button.rb +1 -1
  28. data/lib/wx/doc/gen/app.rb +1 -1
  29. data/lib/wx/doc/gen/app_traits.rb +1 -1
  30. data/lib/wx/doc/gen/art_provider.rb +1 -1
  31. data/lib/wx/doc/gen/aui/aui_dock_art.rb +430 -426
  32. data/lib/wx/doc/gen/aui/aui_floating_frame.rb +34 -30
  33. data/lib/wx/doc/gen/aui/aui_manager.rb +352 -348
  34. data/lib/wx/doc/gen/aui/aui_manager_event.rb +107 -103
  35. data/lib/wx/doc/gen/aui/aui_mdi_child_frame.rb +157 -153
  36. data/lib/wx/doc/gen/aui/aui_mdi_client_window.rb +42 -38
  37. data/lib/wx/doc/gen/aui/aui_mdi_parent_frame.rb +109 -105
  38. data/lib/wx/doc/gen/aui/aui_notebook.rb +438 -434
  39. data/lib/wx/doc/gen/aui/aui_notebook_event.rb +145 -141
  40. data/lib/wx/doc/gen/aui/aui_pane_info.rb +689 -685
  41. data/lib/wx/doc/gen/aui/aui_tab_art.rb +369 -365
  42. data/lib/wx/doc/gen/aui/aui_tab_ctrl.rb +100 -96
  43. data/lib/wx/doc/gen/aui/aui_tool_bar.rb +445 -441
  44. data/lib/wx/doc/gen/aui/aui_tool_bar_art.rb +268 -264
  45. data/lib/wx/doc/gen/aui/aui_tool_bar_event.rb +179 -175
  46. data/lib/wx/doc/gen/aui/aui_tool_bar_item.rb +219 -215
  47. data/lib/wx/doc/gen/banner_window.rb +1 -1
  48. data/lib/wx/doc/gen/bitmap.rb +1 -1
  49. data/lib/wx/doc/gen/bitmap_button.rb +1 -1
  50. data/lib/wx/doc/gen/bitmap_combo_box.rb +1 -1
  51. data/lib/wx/doc/gen/book_ctrl_base.rb +1 -1
  52. data/lib/wx/doc/gen/book_ctrl_event.rb +1 -1
  53. data/lib/wx/doc/gen/box_sizer.rb +1 -1
  54. data/lib/wx/doc/gen/brush.rb +1 -1
  55. data/lib/wx/doc/gen/busy_info.rb +1 -1
  56. data/lib/wx/doc/gen/button.rb +1 -1
  57. data/lib/wx/doc/gen/calculate_layout_event.rb +1 -1
  58. data/lib/wx/doc/gen/calendar_ctrl.rb +1 -1
  59. data/lib/wx/doc/gen/calendar_date_attr.rb +1 -1
  60. data/lib/wx/doc/gen/calendar_event.rb +1 -1
  61. data/lib/wx/doc/gen/caret.rb +1 -1
  62. data/lib/wx/doc/gen/check_box.rb +1 -1
  63. data/lib/wx/doc/gen/check_list_box.rb +1 -1
  64. data/lib/wx/doc/gen/choice.rb +1 -1
  65. data/lib/wx/doc/gen/choicebook.rb +1 -1
  66. data/lib/wx/doc/gen/client_dc.rb +1 -1
  67. data/lib/wx/doc/gen/clipboard.rb +1 -1
  68. data/lib/wx/doc/gen/collapsible_pane.rb +1 -1
  69. data/lib/wx/doc/gen/collapsible_pane_event.rb +1 -1
  70. data/lib/wx/doc/gen/colour.rb +1 -1
  71. data/lib/wx/doc/gen/colour_dialog.rb +1 -1
  72. data/lib/wx/doc/gen/colour_picker_ctrl.rb +1 -1
  73. data/lib/wx/doc/gen/colour_picker_event.rb +1 -1
  74. data/lib/wx/doc/gen/combo_box.rb +1 -1
  75. data/lib/wx/doc/gen/combo_ctrl.rb +1 -1
  76. data/lib/wx/doc/gen/command_link_button.rb +1 -1
  77. data/lib/wx/doc/gen/config_base.rb +1 -1
  78. data/lib/wx/doc/gen/context_help_button.rb +1 -1
  79. data/lib/wx/doc/gen/control.rb +1 -1
  80. data/lib/wx/doc/gen/control_with_items.rb +1 -1
  81. data/lib/wx/doc/gen/core.rb +5 -5
  82. data/lib/wx/doc/gen/cursor.rb +1 -1
  83. data/lib/wx/doc/gen/data_format.rb +1 -1
  84. data/lib/wx/doc/gen/data_object.rb +1 -1
  85. data/lib/wx/doc/gen/data_object_simple_base.rb +1 -1
  86. data/lib/wx/doc/gen/date_event.rb +1 -1
  87. data/lib/wx/doc/gen/date_picker_ctrl.rb +1 -1
  88. data/lib/wx/doc/gen/dc.rb +1 -1
  89. data/lib/wx/doc/gen/defs.rb +1 -1
  90. data/lib/wx/doc/gen/dial_up_event.rb +1 -1
  91. data/lib/wx/doc/gen/dial_up_manager.rb +1 -1
  92. data/lib/wx/doc/gen/dialog.rb +1 -1
  93. data/lib/wx/doc/gen/dir_dialog.rb +1 -1
  94. data/lib/wx/doc/gen/dir_filter_list_ctrl.rb +1 -1
  95. data/lib/wx/doc/gen/dir_picker_ctrl.rb +1 -1
  96. data/lib/wx/doc/gen/drag_drop.rb +1 -1
  97. data/lib/wx/doc/gen/drag_image.rb +1 -1
  98. data/lib/wx/doc/gen/editable_list_box.rb +1 -1
  99. data/lib/wx/doc/gen/event.rb +1 -1
  100. data/lib/wx/doc/gen/event_blocker.rb +1 -1
  101. data/lib/wx/doc/gen/event_filter.rb +1 -1
  102. data/lib/wx/doc/gen/events.rb +1 -1
  103. data/lib/wx/doc/gen/evt_handler.rb +1 -1
  104. data/lib/wx/doc/gen/ext_help_controller.rb +1 -1
  105. data/lib/wx/doc/gen/file_ctrl.rb +1 -1
  106. data/lib/wx/doc/gen/file_ctrl_event.rb +1 -1
  107. data/lib/wx/doc/gen/file_dialog.rb +1 -1
  108. data/lib/wx/doc/gen/file_dialog_custom_control.rb +1 -1
  109. data/lib/wx/doc/gen/file_dialog_customize_hook.rb +1 -1
  110. data/lib/wx/doc/gen/file_dir_picker_event.rb +1 -1
  111. data/lib/wx/doc/gen/file_picker_ctrl.rb +1 -1
  112. data/lib/wx/doc/gen/file_system.rb +1 -1
  113. data/lib/wx/doc/gen/find_dialog_event.rb +1 -1
  114. data/lib/wx/doc/gen/find_replace_data.rb +1 -1
  115. data/lib/wx/doc/gen/find_replace_dialog.rb +1 -1
  116. data/lib/wx/doc/gen/flex_grid_sizer.rb +1 -1
  117. data/lib/wx/doc/gen/font.rb +1 -1
  118. data/lib/wx/doc/gen/font_data.rb +1 -1
  119. data/lib/wx/doc/gen/font_dialog.rb +1 -1
  120. data/lib/wx/doc/gen/font_picker_ctrl.rb +1 -1
  121. data/lib/wx/doc/gen/font_picker_event.rb +1 -1
  122. data/lib/wx/doc/gen/frame.rb +1 -1
  123. data/lib/wx/doc/gen/fs_file.rb +1 -1
  124. data/lib/wx/doc/gen/functions.rb +1 -1
  125. data/lib/wx/doc/gen/gauge.rb +1 -1
  126. data/lib/wx/doc/gen/gb_sizer_item.rb +1 -1
  127. data/lib/wx/doc/gen/gcdc.rb +1 -1
  128. data/lib/wx/doc/gen/gdi_common.rb +3 -3
  129. data/lib/wx/doc/gen/gdi_object.rb +1 -1
  130. data/lib/wx/doc/gen/generic_dir_ctrl.rb +1 -1
  131. data/lib/wx/doc/gen/graphics_context.rb +1 -1
  132. data/lib/wx/doc/gen/graphics_object.rb +1 -1
  133. data/lib/wx/doc/gen/grid/grid_cell_activatable_editor.rb +28 -24
  134. data/lib/wx/doc/gen/grid/grid_cell_attr.rb +251 -247
  135. data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_editor.rb +25 -21
  136. data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_renderer.rb +27 -23
  137. data/lib/wx/doc/gen/grid/grid_cell_bool_editor.rb +38 -34
  138. data/lib/wx/doc/gen/grid/grid_cell_bool_renderer.rb +25 -21
  139. data/lib/wx/doc/gen/grid/grid_cell_choice_editor.rb +35 -31
  140. data/lib/wx/doc/gen/grid/grid_cell_date_editor.rb +28 -24
  141. data/lib/wx/doc/gen/grid/grid_cell_date_renderer.rb +34 -30
  142. data/lib/wx/doc/gen/grid/grid_cell_date_time_renderer.rb +30 -26
  143. data/lib/wx/doc/gen/grid/grid_cell_editor.rb +183 -179
  144. data/lib/wx/doc/gen/grid/grid_cell_enum_editor.rb +29 -25
  145. data/lib/wx/doc/gen/grid/grid_cell_enum_renderer.rb +33 -29
  146. data/lib/wx/doc/gen/grid/grid_cell_float_editor.rb +34 -30
  147. data/lib/wx/doc/gen/grid/grid_cell_float_renderer.rb +67 -63
  148. data/lib/wx/doc/gen/grid/grid_cell_number_editor.rb +34 -30
  149. data/lib/wx/doc/gen/grid/grid_cell_number_renderer.rb +25 -21
  150. data/lib/wx/doc/gen/grid/grid_cell_renderer.rb +93 -89
  151. data/lib/wx/doc/gen/grid/grid_cell_string_renderer.rb +25 -21
  152. data/lib/wx/doc/gen/grid/grid_cell_text_editor.rb +38 -34
  153. data/lib/wx/doc/gen/grid/grid_ctrl.rb +2722 -2718
  154. data/lib/wx/doc/gen/grid/grid_editor_created_event.rb +82 -78
  155. data/lib/wx/doc/gen/grid/grid_event.rb +106 -102
  156. data/lib/wx/doc/gen/grid/grid_range_select_event.rb +93 -89
  157. data/lib/wx/doc/gen/grid/grid_size_event.rb +70 -66
  158. data/lib/wx/doc/gen/grid/grid_string_table.rb +130 -126
  159. data/lib/wx/doc/gen/grid/grid_table_base.rb +303 -299
  160. data/lib/wx/doc/gen/grid/grid_table_message.rb +70 -66
  161. data/lib/wx/doc/gen/grid_bag_sizer.rb +1 -1
  162. data/lib/wx/doc/gen/grid_sizer.rb +1 -1
  163. data/lib/wx/doc/gen/gui_event_loop.rb +1 -1
  164. data/lib/wx/doc/gen/header_ctrl.rb +1 -1
  165. data/lib/wx/doc/gen/header_ctrl_event.rb +1 -1
  166. data/lib/wx/doc/gen/help_controller.rb +1 -1
  167. data/lib/wx/doc/gen/help_provider.rb +1 -1
  168. data/lib/wx/doc/gen/html/html_cell.rb +515 -511
  169. data/lib/wx/doc/gen/html/html_cell_event.rb +58 -54
  170. data/lib/wx/doc/gen/html/html_easy_printing.rb +171 -167
  171. data/lib/wx/doc/gen/html/html_help_controller.rb +292 -288
  172. data/lib/wx/doc/gen/html/html_help_data.rb +147 -143
  173. data/lib/wx/doc/gen/html/html_help_window.rb +232 -228
  174. data/lib/wx/doc/gen/html/html_link_event.rb +30 -26
  175. data/lib/wx/doc/gen/html/html_list_box.rb +301 -297
  176. data/lib/wx/doc/gen/html/html_printout.rb +94 -90
  177. data/lib/wx/doc/gen/html/html_window.rb +406 -402
  178. data/lib/wx/doc/gen/hyperlink_ctrl.rb +1 -1
  179. data/lib/wx/doc/gen/hyperlink_event.rb +1 -1
  180. data/lib/wx/doc/gen/icon.rb +1 -1
  181. data/lib/wx/doc/gen/icon_location.rb +1 -1
  182. data/lib/wx/doc/gen/image.rb +1 -1
  183. data/lib/wx/doc/gen/image_list.rb +1 -1
  184. data/lib/wx/doc/gen/info_bar.rb +1 -1
  185. data/lib/wx/doc/gen/keyboard_state.rb +1 -1
  186. data/lib/wx/doc/gen/list_box.rb +1 -1
  187. data/lib/wx/doc/gen/list_ctrl.rb +1 -1
  188. data/lib/wx/doc/gen/list_event.rb +1 -1
  189. data/lib/wx/doc/gen/listbook.rb +1 -1
  190. data/lib/wx/doc/gen/locale.rb +1 -1
  191. data/lib/wx/doc/gen/log.rb +1 -1
  192. data/lib/wx/doc/gen/mdi_client_window.rb +1 -1
  193. data/lib/wx/doc/gen/mdi_frame.rb +1 -1
  194. data/lib/wx/doc/gen/media_ctrl.rb +1 -1
  195. data/lib/wx/doc/gen/media_event.rb +1 -1
  196. data/lib/wx/doc/gen/memory_dc.rb +1 -1
  197. data/lib/wx/doc/gen/menu.rb +1 -1
  198. data/lib/wx/doc/gen/menu_bar.rb +1 -1
  199. data/lib/wx/doc/gen/menu_item.rb +1 -1
  200. data/lib/wx/doc/gen/message_dialog.rb +1 -1
  201. data/lib/wx/doc/gen/mini_frame.rb +1 -1
  202. data/lib/wx/doc/gen/mirror_dc.rb +1 -1
  203. data/lib/wx/doc/gen/mouse_state.rb +1 -1
  204. data/lib/wx/doc/gen/multi_choice_dialog.rb +1 -1
  205. data/lib/wx/doc/gen/non_owned_window.rb +1 -1
  206. data/lib/wx/doc/gen/notebook.rb +1 -1
  207. data/lib/wx/doc/gen/num_validator.rb +1 -1
  208. data/lib/wx/doc/gen/number_entry_dialog.rb +1 -1
  209. data/lib/wx/doc/gen/object.rb +1 -1
  210. data/lib/wx/doc/gen/owner_drawn_combo_box.rb +1 -1
  211. data/lib/wx/doc/gen/paint_dc.rb +1 -1
  212. data/lib/wx/doc/gen/palette.rb +1 -1
  213. data/lib/wx/doc/gen/panel.rb +1 -1
  214. data/lib/wx/doc/gen/pen.rb +1 -1
  215. data/lib/wx/doc/gen/persistence_manager.rb +1 -1
  216. data/lib/wx/doc/gen/persistent_object.rb +1 -1
  217. data/lib/wx/doc/gen/persistent_window.rb +1 -1
  218. data/lib/wx/doc/gen/pg/numeric_property_validator.rb +33 -29
  219. data/lib/wx/doc/gen/pg/pg_array_editor_dialog.rb +299 -295
  220. data/lib/wx/doc/gen/pg/pg_cell.rb +162 -158
  221. data/lib/wx/doc/gen/pg/pg_editor.rb +693 -689
  222. data/lib/wx/doc/gen/pg/pg_multi_button.rb +133 -129
  223. data/lib/wx/doc/gen/pg/pg_properties.rb +2662 -2658
  224. data/lib/wx/doc/gen/pg/pg_property.rb +1929 -1925
  225. data/lib/wx/doc/gen/pg/pg_validation_info.rb +275 -271
  226. data/lib/wx/doc/gen/pg/property_grid.rb +708 -704
  227. data/lib/wx/doc/gen/pg/property_grid_event.rb +168 -164
  228. data/lib/wx/doc/gen/pg/property_grid_interface.rb +1071 -1067
  229. data/lib/wx/doc/gen/pg/property_grid_manager.rb +386 -382
  230. data/lib/wx/doc/gen/pg/property_grid_page.rb +267 -263
  231. data/lib/wx/doc/gen/pg/property_grid_page_state.rb +147 -143
  232. data/lib/wx/doc/gen/picker_base.rb +1 -1
  233. data/lib/wx/doc/gen/platform_info.rb +1 -1
  234. data/lib/wx/doc/gen/popup_window.rb +1 -1
  235. data/lib/wx/doc/gen/progress_dialog.rb +1 -1
  236. data/lib/wx/doc/gen/property_sheet_dialog.rb +1 -1
  237. data/lib/wx/doc/gen/prt/page_setup_dialog.rb +32 -28
  238. data/lib/wx/doc/gen/prt/post_script_dc.rb +21 -17
  239. data/lib/wx/doc/gen/prt/preview_frame.rb +49 -45
  240. data/lib/wx/doc/gen/prt/print_abort_dialog.rb +126 -122
  241. data/lib/wx/doc/gen/prt/print_data.rb +637 -633
  242. data/lib/wx/doc/gen/prt/print_dialog.rb +43 -39
  243. data/lib/wx/doc/gen/prt/printer.rb +484 -480
  244. data/lib/wx/doc/gen/prt/printer_dc.rb +26 -22
  245. data/lib/wx/doc/gen/query_layout_info_event.rb +1 -1
  246. data/lib/wx/doc/gen/radio_box.rb +1 -1
  247. data/lib/wx/doc/gen/radio_button.rb +1 -1
  248. data/lib/wx/doc/gen/rbn/ribbon_art_provider.rb +1716 -1712
  249. data/lib/wx/doc/gen/rbn/ribbon_bar.rb +239 -235
  250. data/lib/wx/doc/gen/rbn/ribbon_bar_event.rb +34 -30
  251. data/lib/wx/doc/gen/rbn/ribbon_button_bar.rb +439 -435
  252. data/lib/wx/doc/gen/rbn/ribbon_button_bar_event.rb +52 -48
  253. data/lib/wx/doc/gen/rbn/ribbon_control.rb +116 -112
  254. data/lib/wx/doc/gen/rbn/ribbon_gallery.rb +205 -201
  255. data/lib/wx/doc/gen/rbn/ribbon_gallery_event.rb +44 -40
  256. data/lib/wx/doc/gen/rbn/ribbon_page.rb +129 -125
  257. data/lib/wx/doc/gen/rbn/ribbon_panel.rb +229 -225
  258. data/lib/wx/doc/gen/rbn/ribbon_panel_event.rb +34 -30
  259. data/lib/wx/doc/gen/rbn/ribbon_tool_bar.rb +329 -325
  260. data/lib/wx/doc/gen/rbn/ribbon_tool_bar_event.rb +31 -27
  261. data/lib/wx/doc/gen/rearrange_ctrl.rb +1 -1
  262. data/lib/wx/doc/gen/rearrange_list.rb +1 -1
  263. data/lib/wx/doc/gen/region.rb +1 -1
  264. data/lib/wx/doc/gen/region_iterator.rb +1 -1
  265. data/lib/wx/doc/gen/rtc/rich_text_box.rb +424 -420
  266. data/lib/wx/doc/gen/rtc/rich_text_buffer.rb +1148 -1144
  267. data/lib/wx/doc/gen/rtc/rich_text_buffer_data_object.rb +30 -26
  268. data/lib/wx/doc/gen/rtc/rich_text_composite_object.rb +516 -512
  269. data/lib/wx/doc/gen/rtc/rich_text_ctrl.rb +1991 -1987
  270. data/lib/wx/doc/gen/rtc/rich_text_event.rb +159 -155
  271. data/lib/wx/doc/gen/rtc/rich_text_file_handler.rb +167 -163
  272. data/lib/wx/doc/gen/rtc/rich_text_formatting_dialog.rb +271 -267
  273. data/lib/wx/doc/gen/rtc/rich_text_header_footer_data.rb +171 -167
  274. data/lib/wx/doc/gen/rtc/rich_text_html_handler.rb +88 -84
  275. data/lib/wx/doc/gen/rtc/rich_text_image.rb +323 -319
  276. data/lib/wx/doc/gen/rtc/rich_text_object.rb +2819 -2815
  277. data/lib/wx/doc/gen/rtc/rich_text_paragraph_layout_box.rb +1187 -1183
  278. data/lib/wx/doc/gen/rtc/rich_text_printing.rb +242 -238
  279. data/lib/wx/doc/gen/rtc/rich_text_style_list_box.rb +286 -282
  280. data/lib/wx/doc/gen/rtc/rich_text_style_organiser_dialog.rb +181 -177
  281. data/lib/wx/doc/gen/rtc/rich_text_xml_handler.rb +47 -43
  282. data/lib/wx/doc/gen/rtc/symbol_picker_dialog.rb +145 -141
  283. data/lib/wx/doc/gen/sash_event.rb +1 -1
  284. data/lib/wx/doc/gen/sash_layout_window.rb +1 -1
  285. data/lib/wx/doc/gen/sash_window.rb +1 -1
  286. data/lib/wx/doc/gen/scaled_dc.rb +1 -1
  287. data/lib/wx/doc/gen/screen_dc.rb +1 -1
  288. data/lib/wx/doc/gen/scroll_bar.rb +1 -1
  289. data/lib/wx/doc/gen/scrolled_canvas.rb +1 -1
  290. data/lib/wx/doc/gen/scrolled_control.rb +1 -1
  291. data/lib/wx/doc/gen/scrolled_window.rb +1 -1
  292. data/lib/wx/doc/gen/search_ctrl.rb +1 -1
  293. data/lib/wx/doc/gen/simplebook.rb +1 -1
  294. data/lib/wx/doc/gen/single_choice_dialog.rb +1 -1
  295. data/lib/wx/doc/gen/sizer.rb +1 -1
  296. data/lib/wx/doc/gen/sizer_item.rb +1 -1
  297. data/lib/wx/doc/gen/slider.rb +1 -1
  298. data/lib/wx/doc/gen/spin_button.rb +1 -1
  299. data/lib/wx/doc/gen/spin_ctrl.rb +1 -1
  300. data/lib/wx/doc/gen/spin_ctrl_double.rb +1 -1
  301. data/lib/wx/doc/gen/spin_double_event.rb +1 -1
  302. data/lib/wx/doc/gen/spin_event.rb +1 -1
  303. data/lib/wx/doc/gen/splash_screen.rb +1 -1
  304. data/lib/wx/doc/gen/splitter_event.rb +1 -1
  305. data/lib/wx/doc/gen/splitter_window.rb +1 -1
  306. data/lib/wx/doc/gen/static_bitmap.rb +1 -1
  307. data/lib/wx/doc/gen/static_box.rb +1 -1
  308. data/lib/wx/doc/gen/static_box_sizer.rb +1 -1
  309. data/lib/wx/doc/gen/static_line.rb +1 -1
  310. data/lib/wx/doc/gen/static_text.rb +1 -1
  311. data/lib/wx/doc/gen/status_bar.rb +1 -1
  312. data/lib/wx/doc/gen/stc/styled_text_ctrl.rb +4202 -4198
  313. data/lib/wx/doc/gen/stc/styled_text_event.rb +7511 -7507
  314. data/lib/wx/doc/gen/std_dialog_button_sizer.rb +1 -1
  315. data/lib/wx/doc/gen/svg_file_dc.rb +1 -1
  316. data/lib/wx/doc/gen/system_options.rb +1 -1
  317. data/lib/wx/doc/gen/system_settings.rb +1 -1
  318. data/lib/wx/doc/gen/task_bar_button.rb +1 -1
  319. data/lib/wx/doc/gen/task_bar_icon.rb +1 -1
  320. data/lib/wx/doc/gen/task_bar_icon_event.rb +1 -1
  321. data/lib/wx/doc/gen/text_attr.rb +1 -1
  322. data/lib/wx/doc/gen/text_ctrl.rb +1 -1
  323. data/lib/wx/doc/gen/text_entry.rb +1 -1
  324. data/lib/wx/doc/gen/text_entry_dialog.rb +1 -1
  325. data/lib/wx/doc/gen/text_validator.rb +1 -1
  326. data/lib/wx/doc/gen/time_picker_ctrl.rb +1 -1
  327. data/lib/wx/doc/gen/timer.rb +1 -1
  328. data/lib/wx/doc/gen/timer_event.rb +1 -1
  329. data/lib/wx/doc/gen/tip_provider.rb +1 -1
  330. data/lib/wx/doc/gen/toggle_button.rb +1 -1
  331. data/lib/wx/doc/gen/tool_bar.rb +1 -1
  332. data/lib/wx/doc/gen/tool_tip.rb +1 -1
  333. data/lib/wx/doc/gen/toolbook.rb +1 -1
  334. data/lib/wx/doc/gen/top_level_window.rb +1 -1
  335. data/lib/wx/doc/gen/tree_ctrl.rb +1 -1
  336. data/lib/wx/doc/gen/tree_event.rb +1 -1
  337. data/lib/wx/doc/gen/treebook.rb +1 -1
  338. data/lib/wx/doc/gen/ui_action_simulator.rb +1 -1
  339. data/lib/wx/doc/gen/utils.rb +1 -1
  340. data/lib/wx/doc/gen/v_list_box.rb +1 -1
  341. data/lib/wx/doc/gen/v_scrolled_window.rb +1 -1
  342. data/lib/wx/doc/gen/validator.rb +1 -1
  343. data/lib/wx/doc/gen/variant.rb +1 -1
  344. data/lib/wx/doc/gen/window.rb +1 -1
  345. data/lib/wx/doc/gen/window_dc.rb +1 -1
  346. data/lib/wx/doc/gen/window_disabler.rb +1 -1
  347. data/lib/wx/doc/gen/with_images.rb +1 -1
  348. data/lib/wx/doc/gen/wizard.rb +1 -1
  349. data/lib/wx/doc/gen/wizard_event.rb +1 -1
  350. data/lib/wx/doc/gen/wizard_page.rb +1 -1
  351. data/lib/wx/doc/gen/wizard_page_simple.rb +1 -1
  352. data/lib/wx/doc/gen/wrap_sizer.rb +1 -1
  353. data/lib/wx/doc/gen/xml_node.rb +1 -1
  354. data/lib/wx/doc/gen/xml_resource.rb +1 -1
  355. data/lib/wx/rtc/ext/rich_text_ctrl.rb +5 -5
  356. data/lib/wx/version.rb +1 -1
  357. data/lib/wx/wxruby/base.rb +6 -4
  358. data/lib/wx/wxruby/cmd/sampler.rb +39 -29
  359. data/lib/wx/wxruby/cmd/setup.rb +122 -0
  360. data/lib/wx/wxruby/cmd/test.rb +56 -6
  361. data/lib/wxruby_aui.so +0 -0
  362. data/lib/wxruby_core.so +0 -0
  363. data/lib/wxruby_grid.so +0 -0
  364. data/lib/wxruby_html.so +0 -0
  365. data/lib/wxruby_pg.so +0 -0
  366. data/lib/wxruby_prt.so +0 -0
  367. data/lib/wxruby_rbn.so +0 -0
  368. data/lib/wxruby_rtc.so +0 -0
  369. data/lib/wxruby_stc.so +0 -0
  370. data/rakelib/install.rb +2 -0
  371. data/rakelib/lib/config/linux.rb +24 -2
  372. data/rakelib/lib/config/macosx.rb +16 -0
  373. data/rakelib/lib/config/mingw.rb +133 -9
  374. data/rakelib/lib/config/pkgman/arch.rb +53 -0
  375. data/rakelib/lib/config/pkgman/base.rb +169 -0
  376. data/rakelib/lib/config/pkgman/debian.rb +66 -0
  377. data/rakelib/lib/config/pkgman/macosx.rb +183 -0
  378. data/rakelib/lib/config/pkgman/rhel.rb +54 -0
  379. data/rakelib/lib/config/pkgman/suse.rb +54 -0
  380. data/rakelib/lib/config/unixish.rb +36 -19
  381. data/rakelib/lib/config.rb +254 -61
  382. data/rakelib/prepost.rake +9 -4
  383. data/rakelib/yard/templates/default/fulldoc/html/css/wxruby3.css +14 -0
  384. data/rakelib/yard/templates/default/fulldoc/html/setup.rb +5 -5
  385. data/rakelib/yard/yard/relative_markdown_links.rb +7 -1
  386. metadata +23 -4
@@ -6,2117 +6,2121 @@
6
6
 
7
7
  module Wx::PG
8
8
 
9
- #
10
- PG_LABEL_STRING = "@!"
11
-
12
- #
13
- PG_INVALID_VALUE = 2147483647
14
-
15
- #
16
- PG_BASE_OCT = 8
17
-
18
- #
19
- PG_BASE_DEC = 10
20
-
21
- #
22
- PG_BASE_HEX = 16
23
-
24
- #
25
- PG_BASE_HEXL = 32
26
-
27
- #
28
- PG_PREFIX_NONE = 0
29
-
30
- #
31
- PG_PREFIX_DOLLAR_SIGN = 2
32
-
33
- #
34
- #
35
- #
36
- #
37
- # @wxrb_require USE_PROPGRID
38
- class PG_GETPROPERTYVALUES_FLAGS < Wx::Enum
39
-
40
- # Flag for {Wx::PG::PropertyGridInterface::SetProperty}* functions, {Wx::PG::PropertyGridInterface#hide_property}, etc.
41
- #
42
- PG_DONT_RECURSE = Wx::PG::PG_GETPROPERTYVALUES_FLAGS.new(0)
43
-
44
- # Flag for {Wx::PG::PropertyGridInterface#get_property_values}.
45
- #
46
- PG_KEEP_STRUCTURE = Wx::PG::PG_GETPROPERTYVALUES_FLAGS.new(16)
47
-
48
- # Flag for {Wx::PG::PropertyGridInterface::SetProperty}* functions, {Wx::PG::PropertyGridInterface#hide_property}, etc.
9
+ module Wx::PG
10
+
49
11
  #
50
- PG_RECURSE = Wx::PG::PG_GETPROPERTYVALUES_FLAGS.new(32)
12
+ PG_LABEL_STRING = "@!"
51
13
 
52
- # Flag for {Wx::PG::PropertyGridInterface#get_property_values}.
53
14
  #
54
- PG_INC_ATTRIBUTES = Wx::PG::PG_GETPROPERTYVALUES_FLAGS.new(64)
15
+ PG_INVALID_VALUE = 2147483647
55
16
 
56
- # Used when first starting recursion.
57
17
  #
58
- PG_RECURSE_STARTS = Wx::PG::PG_GETPROPERTYVALUES_FLAGS.new(128)
18
+ PG_BASE_OCT = 8
59
19
 
60
- # Force value change.
61
20
  #
62
- PG_FORCE = Wx::PG::PG_GETPROPERTYVALUES_FLAGS.new(256)
21
+ PG_BASE_DEC = 10
63
22
 
64
- # Only sort categories and their immediate children.
65
23
  #
66
- PG_SORT_TOP_LEVEL_ONLY = Wx::PG::PG_GETPROPERTYVALUES_FLAGS.new(512)
67
-
68
- end # PG_GETPROPERTYVALUES_FLAGS
69
-
70
- # Misc argument flags.
71
- #
72
- #
73
- #
74
- # @wxrb_require USE_PROPGRID
75
- class PG_MISC_ARG_FLAGS < Wx::Enum
76
-
77
- # Get/Store full value instead of displayed value.
78
- #
79
- PG_FULL_VALUE = Wx::PG::PG_MISC_ARG_FLAGS.new(1)
24
+ PG_BASE_HEX = 16
80
25
 
81
- # Perform special action in case of unsuccessful conversion.
82
26
  #
83
- PG_REPORT_ERROR = Wx::PG::PG_MISC_ARG_FLAGS.new(2)
27
+ PG_BASE_HEXL = 32
84
28
 
85
29
  #
86
- #
87
- PG_PROPERTY_SPECIFIC = Wx::PG::PG_MISC_ARG_FLAGS.new(4)
30
+ PG_PREFIX_NONE = 0
88
31
 
89
- # Get/Store editable value instead of displayed one (should only be different in the case of common values).
90
32
  #
91
- PG_EDITABLE_VALUE = Wx::PG::PG_MISC_ARG_FLAGS.new(8)
33
+ PG_PREFIX_DOLLAR_SIGN = 2
92
34
 
93
- # Used when dealing with fragments of composite string value.
94
35
  #
95
- PG_COMPOSITE_FRAGMENT = Wx::PG::PG_MISC_ARG_FLAGS.new(16)
96
-
97
- # Means property for which final string value is for cannot really be edited.
98
36
  #
99
- PG_UNEDITABLE_COMPOSITE_FRAGMENT = Wx::PG::PG_MISC_ARG_FLAGS.new(32)
100
-
101
- # {Wx::PG::PGProperty#value_to_string} called from {Wx::PG::PGProperty#get_value_as_string} (guarantees that input {Wx::Variant} value is current own value)
102
37
  #
103
- PG_VALUE_IS_CURRENT = Wx::PG::PG_MISC_ARG_FLAGS.new(64)
104
-
105
- # Value is being set programmatically (i.e.
106
38
  #
107
- PG_PROGRAMMATIC_VALUE = Wx::PG::PG_MISC_ARG_FLAGS.new(128)
39
+ # @wxrb_require USE_PROPGRID
40
+ class PG_GETPROPERTYVALUES_FLAGS < Wx::Enum
108
41
 
109
- end # PG_MISC_ARG_FLAGS
110
-
111
- # {Wx::PG::PGProperty#set_value} flags
112
- #
113
- #
114
- #
115
- # @wxrb_require USE_PROPGRID
116
- class PG_SETVALUE_FLAGS < Wx::Enum
117
-
118
- #
119
- #
120
- PG_SETVAL_REFRESH_EDITOR = Wx::PG::PG_SETVALUE_FLAGS.new(1)
42
+ # Flag for {Wx::PG::PropertyGridInterface::SetProperty}* functions, {Wx::PG::PropertyGridInterface#hide_property}, etc.
43
+ #
44
+ PG_DONT_RECURSE = Wx::PG::PG_GETPROPERTYVALUES_FLAGS.new(0)
45
+
46
+ # Flag for {Wx::PG::PropertyGridInterface#get_property_values}.
47
+ #
48
+ PG_KEEP_STRUCTURE = Wx::PG::PG_GETPROPERTYVALUES_FLAGS.new(16)
49
+
50
+ # Flag for {Wx::PG::PropertyGridInterface::SetProperty}* functions, {Wx::PG::PropertyGridInterface#hide_property}, etc.
51
+ #
52
+ PG_RECURSE = Wx::PG::PG_GETPROPERTYVALUES_FLAGS.new(32)
53
+
54
+ # Flag for {Wx::PG::PropertyGridInterface#get_property_values}.
55
+ #
56
+ PG_INC_ATTRIBUTES = Wx::PG::PG_GETPROPERTYVALUES_FLAGS.new(64)
57
+
58
+ # Used when first starting recursion.
59
+ #
60
+ PG_RECURSE_STARTS = Wx::PG::PG_GETPROPERTYVALUES_FLAGS.new(128)
61
+
62
+ # Force value change.
63
+ #
64
+ PG_FORCE = Wx::PG::PG_GETPROPERTYVALUES_FLAGS.new(256)
65
+
66
+ # Only sort categories and their immediate children.
67
+ #
68
+ PG_SORT_TOP_LEVEL_ONLY = Wx::PG::PG_GETPROPERTYVALUES_FLAGS.new(512)
69
+
70
+ end # PG_GETPROPERTYVALUES_FLAGS
121
71
 
72
+ # Misc argument flags.
122
73
  #
123
74
  #
124
- PG_SETVAL_AGGREGATED = Wx::PG::PG_SETVALUE_FLAGS.new(2)
75
+ #
76
+ # @wxrb_require USE_PROPGRID
77
+ class PG_MISC_ARG_FLAGS < Wx::Enum
78
+
79
+ # Get/Store full value instead of displayed value.
80
+ #
81
+ PG_FULL_VALUE = Wx::PG::PG_MISC_ARG_FLAGS.new(1)
82
+
83
+ # Perform special action in case of unsuccessful conversion.
84
+ #
85
+ PG_REPORT_ERROR = Wx::PG::PG_MISC_ARG_FLAGS.new(2)
86
+
87
+ #
88
+ #
89
+ PG_PROPERTY_SPECIFIC = Wx::PG::PG_MISC_ARG_FLAGS.new(4)
90
+
91
+ # Get/Store editable value instead of displayed one (should only be different in the case of common values).
92
+ #
93
+ PG_EDITABLE_VALUE = Wx::PG::PG_MISC_ARG_FLAGS.new(8)
94
+
95
+ # Used when dealing with fragments of composite string value.
96
+ #
97
+ PG_COMPOSITE_FRAGMENT = Wx::PG::PG_MISC_ARG_FLAGS.new(16)
98
+
99
+ # Means property for which final string value is for cannot really be edited.
100
+ #
101
+ PG_UNEDITABLE_COMPOSITE_FRAGMENT = Wx::PG::PG_MISC_ARG_FLAGS.new(32)
102
+
103
+ # {Wx::PG::PGProperty#value_to_string} called from {Wx::PG::PGProperty#get_value_as_string} (guarantees that input {Wx::Variant} value is current own value)
104
+ #
105
+ PG_VALUE_IS_CURRENT = Wx::PG::PG_MISC_ARG_FLAGS.new(64)
106
+
107
+ # Value is being set programmatically (i.e.
108
+ #
109
+ PG_PROGRAMMATIC_VALUE = Wx::PG::PG_MISC_ARG_FLAGS.new(128)
110
+
111
+ end # PG_MISC_ARG_FLAGS
125
112
 
113
+ # {Wx::PG::PGProperty#set_value} flags
126
114
  #
127
115
  #
128
- PG_SETVAL_FROM_PARENT = Wx::PG::PG_SETVALUE_FLAGS.new(4)
129
-
130
- # Set if value changed by user.
131
116
  #
132
- PG_SETVAL_BY_USER = Wx::PG::PG_SETVALUE_FLAGS.new(8)
117
+ # @wxrb_require USE_PROPGRID
118
+ class PG_SETVALUE_FLAGS < Wx::Enum
133
119
 
134
- end # PG_SETVALUE_FLAGS
135
-
136
- #
137
- PG_ATTR_DEFAULT_VALUE = "DefaultValue"
138
-
139
- #
140
- PG_ATTR_MIN = "Min"
141
-
142
- #
143
- PG_ATTR_MAX = "Max"
144
-
145
- #
146
- PG_ATTR_UNITS = "Units"
147
-
148
- #
149
- PG_ATTR_HINT = "Hint"
150
-
151
- #
152
- PG_ATTR_AUTOCOMPLETE = "AutoComplete"
153
-
154
- #
155
- PG_BOOL_USE_CHECKBOX = "UseCheckbox"
156
-
157
- #
158
- PG_BOOL_USE_DOUBLE_CLICK_CYCLING = "UseDClickCycling"
159
-
160
- #
161
- PG_FLOAT_PRECISION = "Precision"
162
-
163
- #
164
- PG_STRING_PASSWORD = "Password"
165
-
166
- #
167
- PG_UINT_BASE = "Base"
168
-
169
- #
170
- PG_UINT_PREFIX = "Prefix"
171
-
172
- #
173
- PG_DIALOG_TITLE = "DialogTitle"
174
-
175
- #
176
- PG_FILE_WILDCARD = "Wildcard"
177
-
178
- #
179
- PG_FILE_SHOW_FULL_PATH = "ShowFullPath"
180
-
181
- #
182
- PG_FILE_SHOW_RELATIVE_PATH = "ShowRelativePath"
183
-
184
- #
185
- PG_FILE_INITIAL_PATH = "InitialPath"
186
-
187
- #
188
- PG_FILE_DIALOG_STYLE = "DialogStyle"
189
-
190
- #
191
- PG_ARRAY_DELIMITER = "Delimiter"
192
-
193
- #
194
- PG_DATE_FORMAT = "DateFormat"
195
-
196
- #
197
- PG_DATE_PICKER_STYLE = "PickerStyle"
198
-
199
- #
200
- PG_ATTR_SPINCTRL_STEP = "Step"
201
-
202
- #
203
- PG_ATTR_SPINCTRL_WRAP = "Wrap"
204
-
205
- #
206
- PG_ATTR_SPINCTRL_MOTION = "MotionSpin"
207
-
208
- #
209
- PG_ATTR_MULTICHOICE_USERSTRINGMODE = "UserStringMode"
210
-
211
- #
212
- PG_COLOUR_ALLOW_CUSTOM = "AllowCustom"
213
-
214
- #
215
- PG_COLOUR_HAS_ALPHA = "HasAlpha"
216
-
217
- #
218
- PG_PROP_MAX = 262144
219
-
220
- #
221
- PG_PROP_PARENTAL_FLAGS = 25600
222
-
223
- #
224
- PG_STRING_STORED_FLAGS = 54
225
-
226
- #
227
- #
228
- # ## wxPGProperty Flags
229
- #
230
- # @wxrb_require USE_PROPGRID
231
- class PGPropertyFlags < Wx::Enum
232
-
233
- # Indicates bold font.
234
- #
235
- PG_PROP_MODIFIED = Wx::PG::PGPropertyFlags.new(1)
120
+ #
121
+ #
122
+ PG_SETVAL_REFRESH_EDITOR = Wx::PG::PG_SETVALUE_FLAGS.new(1)
123
+
124
+ #
125
+ #
126
+ PG_SETVAL_AGGREGATED = Wx::PG::PG_SETVALUE_FLAGS.new(2)
127
+
128
+ #
129
+ #
130
+ PG_SETVAL_FROM_PARENT = Wx::PG::PG_SETVALUE_FLAGS.new(4)
131
+
132
+ # Set if value changed by user.
133
+ #
134
+ PG_SETVAL_BY_USER = Wx::PG::PG_SETVALUE_FLAGS.new(8)
135
+
136
+ end # PG_SETVALUE_FLAGS
236
137
 
237
- # Disables ('greyed' text and editor does not activate) property.
238
138
  #
239
- PG_PROP_DISABLED = Wx::PG::PGPropertyFlags.new(2)
139
+ PG_ATTR_DEFAULT_VALUE = "DefaultValue"
240
140
 
241
- # Hider button will hide this property.
242
141
  #
243
- PG_PROP_HIDDEN = Wx::PG::PGPropertyFlags.new(4)
142
+ PG_ATTR_MIN = "Min"
244
143
 
245
- # This property has custom paint image just in front of its value.
246
144
  #
247
- PG_PROP_CUSTOMIMAGE = Wx::PG::PGPropertyFlags.new(8)
145
+ PG_ATTR_MAX = "Max"
248
146
 
249
- # Do not create text based editor for this property (but button-triggered dialog and choice are ok).
250
147
  #
251
- PG_PROP_NOEDITOR = Wx::PG::PGPropertyFlags.new(16)
148
+ PG_ATTR_UNITS = "Units"
252
149
 
253
- # Property is collapsed, ie.
254
150
  #
255
- PG_PROP_COLLAPSED = Wx::PG::PGPropertyFlags.new(32)
151
+ PG_ATTR_HINT = "Hint"
256
152
 
257
- # If property is selected, then indicates that validation failed for pending value.
258
153
  #
259
- PG_PROP_INVALID_VALUE = Wx::PG::PGPropertyFlags.new(64)
154
+ PG_ATTR_AUTOCOMPLETE = "AutoComplete"
260
155
 
261
- # Switched via SetWasModified().
262
156
  #
263
- PG_PROP_WAS_MODIFIED = Wx::PG::PGPropertyFlags.new(512)
157
+ PG_BOOL_USE_CHECKBOX = "UseCheckbox"
264
158
 
265
- # If set, then child properties (if any) are private, and should be "invisible" to the application.
266
159
  #
267
- PG_PROP_AGGREGATE = Wx::PG::PGPropertyFlags.new(1024)
160
+ PG_BOOL_USE_DOUBLE_CLICK_CYCLING = "UseDClickCycling"
268
161
 
269
- # If set, then child properties (if any) are copies and should not be deleted in dtor.
270
162
  #
271
- PG_PROP_CHILDREN_ARE_COPIES = Wx::PG::PGPropertyFlags.new(2048)
163
+ PG_FLOAT_PRECISION = "Precision"
272
164
 
273
- # Classifies this item as a non-category.
274
165
  #
275
- PG_PROP_PROPERTY = Wx::PG::PGPropertyFlags.new(4096)
166
+ PG_STRING_PASSWORD = "Password"
276
167
 
277
- # Classifies this item as a category.
278
168
  #
279
- PG_PROP_CATEGORY = Wx::PG::PGPropertyFlags.new(8192)
169
+ PG_UINT_BASE = "Base"
280
170
 
281
- # Classifies this item as a property that has children, but is not aggregate (i.e.
282
171
  #
283
- PG_PROP_MISC_PARENT = Wx::PG::PGPropertyFlags.new(16384)
172
+ PG_UINT_PREFIX = "Prefix"
284
173
 
285
- # Property is read-only.
286
174
  #
287
- PG_PROP_READONLY = Wx::PG::PGPropertyFlags.new(32768)
175
+ PG_DIALOG_TITLE = "DialogTitle"
288
176
 
289
- # Property's value is composed from values of child properties.
290
177
  #
291
- PG_PROP_COMPOSED_VALUE = Wx::PG::PGPropertyFlags.new(65536)
178
+ PG_FILE_WILDCARD = "Wildcard"
292
179
 
293
- # Common value of property is selectable in editor.
294
180
  #
295
- PG_PROP_USES_COMMON_VALUE = Wx::PG::PGPropertyFlags.new(131072)
181
+ PG_FILE_SHOW_FULL_PATH = "ShowFullPath"
296
182
 
297
- # Property can be set to unspecified value via editor.
298
183
  #
299
- PG_PROP_AUTO_UNSPECIFIED = Wx::PG::PGPropertyFlags.new(262144)
184
+ PG_FILE_SHOW_RELATIVE_PATH = "ShowRelativePath"
300
185
 
301
- # Indicates the bit usable by derived properties.
302
186
  #
303
- PG_PROP_CLASS_SPECIFIC_1 = Wx::PG::PGPropertyFlags.new(524288)
187
+ PG_FILE_INITIAL_PATH = "InitialPath"
304
188
 
305
- # Indicates the bit usable by derived properties.
306
189
  #
307
- PG_PROP_CLASS_SPECIFIC_2 = Wx::PG::PGPropertyFlags.new(1048576)
190
+ PG_FILE_DIALOG_STYLE = "DialogStyle"
308
191
 
309
- # Indicates that the property is being deleted and should be ignored.
310
192
  #
311
- PG_PROP_BEING_DELETED = Wx::PG::PGPropertyFlags.new(2097152)
193
+ PG_ARRAY_DELIMITER = "Delimiter"
312
194
 
313
- end # PGPropertyFlags
314
-
315
- # {Wx::PG::PGProperty} is base class for all {Wx::PG::PropertyGrid} properties and as such it is not intended to be instantiated directly.
316
- #
317
- # In sections below we cover few related topics.
318
- #
319
- # - Supplied Ready-to-use Property Classes
320
- #
321
- # - Creating Custom Properties
322
- #
323
- # ## Supplied Ready-to-use Property Classes
324
- # Here is a list and short description of supplied fully-functional property classes. They are located in either {Wx::props.h} or {Wx::advprops.h}.
325
- #
326
- # - {Wx::PG::ArrayStringProperty}
327
- #
328
- # - {Wx::PG::BoolProperty}
329
- #
330
- # - {Wx::PG::ColourProperty}
331
- #
332
- # - {Wx::PG::CursorProperty}
333
- #
334
- # - {Wx::PG::DateProperty}
335
- #
336
- # - {Wx::PG::DirProperty}
337
- #
338
- # - {Wx::PG::EditEnumProperty}
339
- #
340
- # - {Wx::PG::EnumProperty}
341
- #
342
- # - {Wx::PG::FileProperty}
343
- #
344
- # - {Wx::PG::FlagsProperty}
345
- #
346
- # - {Wx::PG::FloatProperty}
347
- #
348
- # - {Wx::PG::FontProperty}
349
- #
350
- # - {Wx::PG::ImageFileProperty}
351
- #
352
- # - {Wx::PG::IntProperty}
353
- #
354
- # - {Wx::PG::LongStringProperty}
355
- #
356
- # - {Wx::PG::MultiChoiceProperty}
357
- #
358
- # - {Wx::PG::PropertyCategory}
359
- #
360
- # - {Wx::PG::StringProperty}
361
- #
362
- # - {Wx::PG::SystemColourProperty}
363
- #
364
- # - {Wx::PG::UIntProperty}
365
- #
366
- # ## wxPropertyCategory
367
- # Not an actual property per se, but a header for a group of properties. Regardless inherits from {Wx::PG::PGProperty}, and supports displaying 'labels' for columns other than the first one. Easiest way to set category's label for second column is to call {Wx::PG::PGProperty#set_value} with string argument.
368
- #
369
- # ## wxStringProperty
370
- # Simple string property.
371
- # Supported special attributes:
372
- #
373
- # - {Wx::PG::PG_STRING_PASSWORD}: Set to true in order to echo value as asterisks and to use {Wx::TE_PASSWORD} on the editor ({Wx::TextCtrl}).
374
- # - {Wx::PG::PG_ATTR_AUTOCOMPLETE}: Set to true to enable auto-completion (use a {Wx::ArrayString} value), and is also supported by any property that happens to use a {Wx::TextCtrl}-based editor.
375
- #
376
- # <div class="wxrb-remark">
377
- # <b>Remark:</b>
378
- # <p>{Wx::PG::StringProperty} has a special trait: if it has value of "<composed>", and also has child properties, then its displayed value becomes composition of child property values, similar as with {Wx::PG::FontProperty}, for instance.
379
- # </p>
380
- # </div>
381
- #
382
- # ## wxIntProperty
383
- # It derives from {Wx::PG::NumericProperty} and displays value as a signed long integer. {Wx::PG::IntProperty} seamlessly supports 64-bit integers (i.e. {Wx::LongLong}) on overflow. To safely convert variant to integer, use code like this:
384
- #
385
- # ```
386
- # wxLongLong ll;
387
- # ll << property->GetValue();
388
- #
389
- # // or
390
- # wxLongLong ll = propertyGrid->GetPropertyValueAsLong(property);
391
- # ```
392
- #
393
- # Getting 64-bit value:
394
- # ```
395
- # wxLongLong_t value = pg->GetPropertyValueAsLongLong();
396
- #
397
- # // or
398
- #
399
- # wxLongLong value;
400
- # wxVariant variant = property->GetValue();
401
- # if ( variant.IsType(wxPG_VARIANT_TYPE_LONGLONG) )
402
- # value = variant.GetLongLong();
403
- # else
404
- # value = variant.GetLong();
405
- # ```
406
- #
407
- # Setting 64-bit value:
408
- # ```
409
- # pg->SetPropertyValue(longLongVal);
410
- #
411
- # // or
412
- #
413
- # property->SetValue(WXVARIANT(longLongVal));
414
- # ```
415
- #
416
- # Supported special attributes:
417
- #
418
- # - {Wx::PG::PG_ATTR_MIN}, {Wx::PG::PG_ATTR_MAX} to specify acceptable value range.
419
- # - {Wx::PG::PG_ATTR_SPINCTRL_STEP}, {Wx::PG::PG_ATTR_SPINCTRL_WRAP}, {Wx::PG::PG_ATTR_SPINCTRL_MOTION}: Sets SpinCtrl editor parameters.
420
- #
421
- # ## wxUIntProperty
422
- # Like {Wx::PG::IntProperty}, but displays value as unsigned int. To set the prefix used globally, manipulate {Wx::PG::PG_UINT_PREFIX} string attribute. To set the globally used base, manipulate {Wx::PG::PG_UINT_BASE} int attribute. Regardless of current prefix, understands (hex) values starting with both "0x" and "$" (apart from edit mode). Like {Wx::PG::IntProperty}, {Wx::PG::UIntProperty} seamlessly supports 64-bit unsigned integers (i.e. {Wx::ULongLong}). Same {Wx::Variant} safety rules apply.
423
- # Supported special attributes:
424
- #
425
- # - {Wx::PG::PG_ATTR_MIN}, {Wx::PG::PG_ATTR_MAX}: Specifies acceptable value range.
426
- # - {Wx::PG::PG_UINT_BASE}: Defines base. Valid constants are {Wx::PG::PG_BASE_OCT}, {Wx::PG::PG_BASE_DEC}, {Wx::PG::PG_BASE_HEX} and {Wx::PG::PG_BASE_HEXL} (lowercase characters). Arbitrary bases are <b>not</b> supported.
427
- # - {Wx::PG::PG_UINT_PREFIX}: Defines displayed prefix. Possible values are {Wx::PG::PG_PREFIX_NONE}, {Wx::PG::PG_PREFIX_0x} and {Wx::PG::PG_PREFIX_DOLLAR_SIGN}. Only {Wx::PG::PG_PREFIX_NONE} works with decimal and octal numbers.
428
- # - {Wx::PG::PG_ATTR_SPINCTRL_STEP}, {Wx::PG::PG_ATTR_SPINCTRL_WRAP}, {Wx::PG::PG_ATTR_SPINCTRL_MOTION}: Sets SpinCtrl editor parameters.
429
- #
430
- # <div class="wxrb-remark">
431
- # <b>Remark:</b>
432
- # <p>For example how to use seamless 64-bit integer support, see {Wx::PG::IntProperty} documentation (just use {Wx::ULongLong} instead of {Wx::LongLong}).
433
- # </p>
434
- # </div>
435
- #
436
- # ## wxFloatProperty
437
- # Like {Wx::PG::StringProperty}, but converts text to a double-precision floating point. Default float-to-text precision is 6 decimals, but this can be changed by modifying {Wx::PG::PG_FLOAT_PRECISION} attribute.
438
- # Note that when displaying the value, sign is omitted if the resulting textual representation is effectively zero (for example, -0.0001 with precision of 3 will become 0.0 instead of -0.0). This behaviour is unlike what C standard library does, but should result in better end-user experience in almost all cases.
439
- # Supported special attributes:
440
- #
441
- # - {Wx::PG::PG_ATTR_MIN}, {Wx::PG::PG_ATTR_MAX}: Specifies acceptable value range.
442
- # - {Wx::PG::PG_FLOAT_PRECISION}: Sets the (max) precision used when floating point value is rendered as text. The default -1 means shortest floating-point 6-digit representation.
443
- # - {Wx::PG::PG_ATTR_SPINCTRL_STEP}, {Wx::PG::PG_ATTR_SPINCTRL_WRAP}, {Wx::PG::PG_ATTR_SPINCTRL_MOTION}: Sets SpinCtrl editor parameters.
444
- #
445
- # ## wxBoolProperty
446
- # Represents a boolean value. {Wx::Choice} is used as editor control, by the default. {Wx::PG::PG_BOOL_USE_CHECKBOX} attribute can be set to true in order to use check box instead.
447
- # Supported special attributes:
448
- #
449
- # - {Wx::PG::PG_BOOL_USE_CHECKBOX}: If set to true uses check box editor instead of combo box.
450
- # - {Wx::PG::PG_BOOL_USE_DOUBLE_CLICK_CYCLING}: If set to true cycles combo box instead showing the list.
451
- #
452
- # ## wxLongStringProperty
453
- # Like {Wx::PG::StringProperty}, but has a button that triggers a small text editor dialog. Note that in long string values, some control characters are escaped: tab is represented by "\t", line break by "\n", carriage return by "\r" and backslash character by "\\". If another character is preceded
454
- # by backslash, the backslash is skipped.
455
- # Note also that depending on the system (port), some sequences of special
456
- # characters, like e.g. "\r
457
- #
458
- # ", can be interpreted and presented in
459
- # a different way in the editor and therefore such sequences may not be
460
- # the same before and after the edition.
461
- #
462
- # To display a custom dialog on button press, you can subclass
463
- # {Wx::PG::LongStringProperty} and override DisplayEditorDialog, like this:
464
- #
465
- # bool DisplayEditorDialog( {Wx::PG::PropertyGrid}* propGrid, {Wx::Variant}& value ) {Wx::OVERRIDE}
466
- # {
467
- # {Wx::Size} dialogSize(...size of your dialog...);
468
- #
469
- # {Wx::Point} dlgPos = propGrid->GetGoodEditorDialogPosition(this,
470
- # dialogSize)
471
- #
472
- # // Create dialog dlg at dlgPos. Use value as initial string
473
- # // value.
474
- # ...
475
- #
476
- # if ( dlg.ShowModal() == {Wx::StandardID::ID_OK} )
477
- # {
478
- # value = dlg.GetStringValue);
479
- # return true;
480
- # }
481
- # return false;
482
- # }
483
- #
484
- # Also, if you wish not to have line breaks and tabs translated to
485
- # escape sequences, then do following in constructor of your subclass:
486
- #
487
- # m_flags |= {Wx::PG_PROP_NO_ESCAPE};
488
- #
489
- # Supported special attributes:
490
- # - ::{Wx::PG::PG_DIALOG_TITLE}: Sets a specific title for the text editor dialog.
491
- #
492
- # ## {Wx::PG::DirProperty}
493
- #
494
- # Like {Wx::PG::LongStringProperty}, but the button triggers dir selector instead.
495
- #
496
- # Supported special attributes:
497
- # - ::{Wx::PG::PG_DIALOG_TITLE}: Sets specific title for the dir selector.
498
- #
499
- # ## {Wx::PG::FileProperty}
500
- #
501
- # Like {Wx::PG::LongStringProperty}, but the button triggers file selector instead.
502
- # Default wildcard is "All files..." but this can be changed by setting
503
- # ::{Wx::PG::PG_FILE_WILDCARD} attribute.
504
- #
505
- # Supported special attributes:
506
- # - ::{Wx::PG::PG_DIALOG_TITLE}: Sets a specific title for the file dialog.
507
- # - ::{Wx::PG::PG_FILE_DIALOG_STYLE}: Sets a specific {Wx::FileDialog} style for the file dialog.
508
- # - ::{Wx::PG::PG_FILE_WILDCARD}: Sets wildcard (see {Wx::FileDialog} for format details), "All files..." is default.
509
- # - ::{Wx::PG::PG_FILE_SHOW_FULL_PATH}: Default <span class='literal'>true</span>. When <span class='literal'>false</span>, only the file name is shown
510
- # (i.e. drive and directory are hidden).
511
- # - ::{Wx::PG::PG_FILE_SHOW_RELATIVE_PATH}: If set, then the filename is shown relative to the
512
- # given path string.
513
- # - ::{Wx::PG::PG_FILE_INITIAL_PATH}: Sets the initial path of where to look for files.
514
- #
515
- # ## {Wx::PG::EnumProperty}
516
- #
517
- # Represents a single selection from a list of choices -
518
- # {Wx::OwnerDrawnComboBox} is used to edit the value.
519
- #
520
- # ## {Wx::PG::FlagsProperty}
521
- #
522
- # Represents a bit set that fits in a long integer. {Wx::PG::BoolProperty} sub-
523
- # properties are created for editing individual bits. Textctrl is created to
524
- # manually edit the flags as a text; a continuous sequence of spaces, commas
525
- # and semicolons are considered as a flag id separator.
526
- #
527
- # <b>Note:</b> When changing "choices" (i.e. flag labels) of {Wx::PG::FlagsProperty},
528
- # you will need to use {Wx::PG::PGProperty#set_choices} - otherwise they will not
529
- # get updated properly.
530
- #
531
- # {Wx::PG::FlagsProperty} supports the same attributes as {Wx::PG::BoolProperty}.
532
- #
533
- # ## {Wx::PG::ArrayStringProperty}
534
- #
535
- # Property that manages a list of strings. Allows editing of a list
536
- # of strings in {Wx::TextCtrl} and in a separate dialog.
537
- #
538
- # Supported special attributes:
539
- # - ::{Wx::PG::PG_ARRAY_DELIMITER}: Sets string delimiter character.
540
- # - ::{Wx::PG::PG_DIALOG_TITLE}: Sets a specific title for the editor dialog.
541
- # Default is comma (',').
542
- #
543
- # ## {Wx::PG::DateProperty}
544
- #
545
- # Property representing {Wx::DateTime}. Default editor is DatePickerCtrl,
546
- # although TextCtrl should work as well.
547
- #
548
- # Supported special attributes:
549
- # - ::{Wx::PG::PG_DATE_FORMAT}: Determines displayed date format (with Wx::DateTime::Format).
550
- # Default is recommended as it is locale-dependent.
551
- # - ::{Wx::PG::PG_DATE_PICKER_STYLE}: Determines window style used with {Wx::DatePickerCtrl}.
552
- # Default is ::{Wx::DP_DEFAULT} | ::{Wx::DP_SHOWCENTURY}. Using ::{Wx::DP_ALLOWNONE}
553
- # enables additional support for unspecified property value.
554
- #
555
- # ## {Wx::PG::EditEnumProperty}
556
- #
557
- # Represents a string that can be freely edited or selected from list of choices -
558
- # custom combobox control is used to edit the value.
559
- #
560
- # Uses int value, similar to {Wx::PG::EnumProperty}, unless text entered by user is
561
- # is not in choices (in which case string value is used).
562
- #
563
- # ## {Wx::PG::MultiChoiceProperty}
564
- #
565
- # Allows editing a multiple selection from a list of strings. This is
566
- # property is pretty much built around concept of {Wx::MultiChoiceDialog}.
567
- # It uses {Wx::ArrayString} value.
568
- #
569
- # Supported special attributes:
570
- # - ::{Wx::PG::PG_ATTR_MULTICHOICE_USERSTRINGMODE}: If > 0, allows user to manually
571
- # enter strings that are not in the list of choices. If this value is 1,
572
- # user strings are preferably placed in front of valid choices. If value
573
- # is 2, then those strings will placed behind valid choices.
574
- # - ::{Wx::PG::PG_DIALOG_TITLE}: Sets a specific title for the editor dialog.
575
- #
576
- # ## {Wx::PG::ImageFileProperty}
577
- #
578
- # Property representing image file(name). Like {Wx::PG::FileProperty},
579
- # but has thumbnail of the image in front of the filename
580
- # and autogenerates wildcard from available image handlers.
581
- #
582
- # Supported special attributes:
583
- # - ::{Wx::PG::PG_DIALOG_TITLE}: Sets a specific title for the file dialog.
584
- # - ::{Wx::PG::PG_FILE_DIALOG_STYLE}: Sets a specific {Wx::FileDialog} style for the file dialog.
585
- # - ::{Wx::PG::PG_FILE_WILDCARD}: Sets wildcard (see {Wx::FileDialog} for format details), "All files..." is default.
586
- #
587
- # - {Wx::PG::PG_FILE_SHOW_FULL_PATH}: Default true. When false, only the file name is shown (i.e. drive and directory are hidden).
588
- # - {Wx::PG::PG_FILE_SHOW_RELATIVE_PATH}: If set, then the filename is shown relative to the given path string.
589
- # - {Wx::PG::PG_FILE_INITIAL_PATH}: Sets the initial path of where to look for files.
590
- #
591
- # ## wxColourProperty
592
- # <b>Useful alternate editor:</b> Choice.
593
- # Represents {Wx::Colour}. {Wx::Button} is used to trigger a colour picker dialog. There are various sub-classing opportunities with this class. See below in {Wx::PG::SystemColourProperty} section for details.
594
- # Supported special attributes:
595
- #
596
- # - {Wx::PG::PG_COLOUR_HAS_ALPHA}: If set to true allows user to edit the alpha colour component.
597
- #
598
- # ## wxFontProperty
599
- # Represents {Wx::Font}. Various sub-properties are used to edit individual subvalues.
600
- # Supported special attributes:
601
- #
602
- # - {Wx::PG::PG_DIALOG_TITLE}: Sets a specific title for the font dialog.
603
- #
604
- # ## wxSystemColourProperty
605
- # Represents {Wx::Colour} and a system colour index. {Wx::Choice} is used to edit the value. Drop-down list has color images. Note that value type is {Wx::PG::ColourPropertyValue} instead of {Wx::Colour} (which {Wx::PG::ColourProperty} uses).
606
- #
607
- # In {Wx::PG::SystemColourProperty}, and its derived class {Wx::PG::ColourProperty}, there are various sub-classing features. To set a basic list of colour names, call {Wx::PG::PGProperty#set_choices}.
608
- #
609
- # ```ruby
610
- # # Override in derived class to customize how colours are translated
611
- # # to strings.
612
- # def colour_to_string(col, index) end
613
- #
614
- # # Returns index of entry that triggers colour picker dialog
615
- # # (default is last).
616
- # def get_custom_colour_index; end
617
- #
618
- # # Helper function to show the colour dialog
619
- # def query_colour_from_user(variant) end
620
- #
621
- # # Returns colour for given choice.
622
- # # Default function returns Wx::SystemSettings.get_colour(index).
623
- # def get_colour(index) end
624
- # ```
625
- #
626
- # ## wxCursorProperty
627
- # Represents a {Wx::Cursor}. {Wx::Choice} is used to edit the value. Drop-down list has cursor images under some (WXMSW) platforms.
628
- #
629
- # ## Creating Custom Properties
630
- # New properties can be created by subclassing {Wx::PG::PGProperty} or one of the provided property classes, and (re)implementing necessary member functions. Below, each virtual member function has ample documentation about its purpose and any odd details which to keep in mind.
631
- # Here is a very simple 'template' code:
632
- #
633
- # ``` ruby
634
- # class MyProperty < Wx::PG::PGProperty
635
- #
636
- # # All arguments of this ctor must have a default value -
637
- # # use Wx::PG::PG_LABEL for label and name
638
- # def initialize(label = Wx::PG::PG_LABEL, name = Wx::PG::PG_LABEL, value = '')
639
- # super(label, name)
640
- # # self.value is Wx::Variant
641
- # self.value = value
642
- # end
643
- #
644
- # def do_get_editor_class
645
- # # Determines editor used by property.
646
- # # You can replace 'TEXT_CTRL' below with any of these
647
- # # builtin-in property editor identifiers: CHOICE, COMBO_BOX,
648
- # # TEXT_CTRL_AND_BUTTON, CHOICE_AND_BUTTON, CHECK_BOX, SPIN_CTRL,
649
- # # DATE_PICKER_CTRL.
650
- # return Wx::PG::PG_EDITOR_TEXT_CTRL
651
- # end
652
- #
653
- # def value_to_string(value, argFlags)
654
- # # TODO: Convert given property value to a string
655
- # end
656
- #
657
- # def string_to_value(variant, text, argFlags)
658
- # # TODO: Adapt string to property value.
659
- # end
660
- #
661
- # protected
662
- # # ...
663
- # end
664
- # ```
665
- #
666
- # Category: {Wx::PG::PropertyGrid}
667
- # @see wxPropertyGrid Property Attribute Identifiers
668
- #
669
- # @see wxPropertyGrid Property Attribute Identifiers
670
- #
671
- # @see wxPropertyGrid Property Attribute Identifiers
672
- #
673
- # @see wxPropertyGrid Property Attribute Identifiers
674
- #
675
- # @see wxPropertyGrid Property Attribute Identifiers
676
- #
677
- # @see wxPropertyGrid Property Attribute Identifiers
678
- #
679
- # @see wxPropertyGrid Property Attribute Identifiers
680
- #
681
- #
682
- # @wxrb_require USE_PROPGRID
683
- class PGProperty < Object
684
-
685
- # This virtual function is called after m_value has been set.
686
195
  #
687
- # <div class="wxrb-remark">
688
- # <b>Remark:</b>
689
- # <p>
690
- #
691
- # - If m_value was set to Null variant (i.e. unspecified value), {Wx::PG::PGProperty#on_set_value} will not be called.
692
- # - m_value may be of any variant type. Typically properties internally support only one variant type, and as such {Wx::PG::PGProperty#on_set_value} provides a good opportunity to convert supported values into internal type.
693
- # - Default implementation does nothing.
694
- #
695
- # </p>
696
- # </div>
697
- # @return [void]
698
- def on_set_value; end
196
+ PG_DATE_FORMAT = "DateFormat"
699
197
 
700
- # Override this to return something else than m_value as the value.
701
- # @return [Wx::Variant]
702
- def do_get_value; end
703
-
704
- # Implement this function in derived class to check the value.
705
- #
706
- # Return true if it is ok. Returning false prevents property change events from occurring.
707
- #
708
- # <div class="wxrb-remark">
709
- # <b>Remark:</b>
710
- # <p>
711
- #
712
- # - Default implementation always returns true.
713
198
  #
714
- # </p>
715
- # </div>
716
- # @param value [Wx::Variant]
717
- # @param validationInfo [Wx::PG::PGValidationInfo]
718
- # @return [Boolean]
719
- def validate_value(value, validationInfo) end
199
+ PG_DATE_PICKER_STYLE = "PickerStyle"
720
200
 
721
- # Converts text into {Wx::Variant} value appropriate for this property.
722
- #
723
- # Returns true if resulting {Wx::Variant} value was different.
724
- #
725
- # <div class="wxrb-remark">
726
- # <b>Remark:</b>
727
- # <p>Default implementation converts semicolon delimited tokens into child values. Only works for properties with children.
728
- # </p>
729
- # </div>
730
201
  #
731
- # You might want to take into account that m_value is Null variant if property value is unspecified (which is usually only case if you explicitly enabled that sort behaviour).
732
- # @param variant [Wx::Variant] On function entry this is the old value (should not be {Wx::NullVariant} in normal cases). Translated value must be assigned back to it.
733
- # @param text [String] Text to be translated into variant.
734
- # @param argFlags [Integer] If {Wx::PG::PG_MISC_ARG_FLAGS::PG_FULL_VALUE} is set, returns complete, storable value instead of displayable one (they may be different). If {Wx::PG::PG_MISC_ARG_FLAGS::PG_COMPOSITE_FRAGMENT} is set, text is interpreted as a part of composite property string value (as generated by {Wx::PG::PGProperty#value_to_string} called with this same flag).
735
- # @return [Boolean]
736
- def string_to_value(variant, text, argFlags=0) end
202
+ PG_ATTR_SPINCTRL_STEP = "Step"
737
203
 
738
- # Converts integer (possibly a choice selection) into {Wx::Variant} value appropriate for this property.
739
- #
740
- # Returns true if resulting {Wx::Variant} value was different.
741
- #
742
- # <div class="wxrb-remark">
743
- # <b>Remark:</b>
744
- # <p>
745
204
  #
746
- # - If property is not supposed to use choice or spinctrl or other editor with int-based value, it is not necessary to implement this method.
747
- # - Default implementation simply assign given int to m_value.
748
- # - If property uses choice control, and displays a dialog on some choice items, then it is preferred to display that dialog in IntToValue instead of OnEvent.
749
- # - You might want to take into account that m_value is Mull variant if property value is unspecified (which is usually only case if you explicitly enabled that sort behaviour).
750
- #
751
- # </p>
752
- # </div>
753
- # @param variant [Wx::Variant] On function entry this is the old value (should not be {Wx::NullVariant} in normal cases). Translated value must be assigned back to it.
754
- # @param number [Integer] Integer to be translated into variant.
755
- # @param argFlags [Integer] If {Wx::PG::PG_MISC_ARG_FLAGS::PG_FULL_VALUE} is set, returns complete, storable value instead of displayable one.
756
- # @return [Boolean]
757
- def int_to_value(variant, number, argFlags=0) end
205
+ PG_ATTR_SPINCTRL_WRAP = "Wrap"
758
206
 
759
- # Converts property value into a text representation.
760
207
  #
761
- # <div class="wxrb-remark">
762
- # <b>Remark:</b>
763
- # <p>Default implementation calls {Wx::PG::PGProperty#generate_composed_value}.
764
- # </p>
765
- # </div>
766
- # @param value [Wx::Variant] Value to be converted.
767
- # @param argFlags [Integer] If 0 (default value), then displayed string is returned. If {Wx::PG::PG_MISC_ARG_FLAGS::PG_FULL_VALUE} is set, returns complete, storable string value instead of displayable. If {Wx::PG::PG_MISC_ARG_FLAGS::PG_EDITABLE_VALUE} is set, returns string value that must be editable in textctrl. If {Wx::PG::PG_MISC_ARG_FLAGS::PG_COMPOSITE_FRAGMENT} is set, returns text that is appropriate to display as a part of string property's composite text representation.
768
- # @return [String]
769
- def value_to_string(value, argFlags=0) end
208
+ PG_ATTR_SPINCTRL_MOTION = "MotionSpin"
770
209
 
771
- # Converts string to a value, and if successful, calls {Wx::PG::PGProperty#set_value} on it.
772
- #
773
- # Default behaviour is to do nothing.
774
210
  #
775
- # true if value was changed.
776
- # @param text [String] String to get the value from.
777
- # @param flags [Integer] If {Wx::PG::PG_MISC_ARG_FLAGS::PG_FULL_VALUE} is set, the function sets complete, storable value instead of displayable one (they may be different). {Wx::PG::PG_MISC_ARG_FLAGS::PG_PROGRAMMATIC_VALUE} flag is used to indicate that value is being set programmatically (i.e. operation is not caused by user input). If {Wx::PG::PG_MISC_ARG_FLAGS::PG_REPORT_ERROR} is set, a special action should be performed if string couldn't have been successfully converted to the valid value (e.g. a special value can be set in this case).
778
- # @return [Boolean]
779
- def set_value_from_string(text, flags=Wx::PG::PG_MISC_ARG_FLAGS::PG_PROGRAMMATIC_VALUE) end
780
- alias_method :value_from_string=, :set_value_from_string
211
+ PG_ATTR_MULTICHOICE_USERSTRINGMODE = "UserStringMode"
781
212
 
782
- # Converts integer to a value, and if successful, calls {Wx::PG::PGProperty#set_value} on it.
783
- #
784
- # Default behaviour is to do nothing.
785
213
  #
786
- # true if value was changed.
787
- # @param value [Integer] Int to get the value from.
788
- # @param flags [Integer] If has {Wx::PG::PG_MISC_ARG_FLAGS::PG_FULL_VALUE}, then the value given is an actual value and not an index.
789
- # @return [Boolean]
790
- def set_value_from_int(value, flags=0) end
791
- alias_method :value_from_int=, :set_value_from_int
214
+ PG_COLOUR_ALLOW_CUSTOM = "AllowCustom"
792
215
 
793
- # Returns size of the custom painted image in front of property.
794
216
  #
795
- # This method must be overridden to return non-default value if OnCustomPaint is to be called.
796
- #
797
- # <div class="wxrb-remark">
798
- # <b>Remark:</b>
799
- # <p>
800
- #
801
- # - Default behaviour is to return {size(0,0)}, which means no image.
802
- # - Default image width or height is indicated with dimension -1.
803
- # - You can also return {Wx::PG::PG_DEFAULT_IMAGE_SIZE} which equals {Wx::DEFAULT_SIZE}.
804
- #
805
- # </p>
806
- # </div>
807
- # @param item [Integer] Normally -1, but can be an index to the property's list of items.
808
- # @return [Wx::Size]
809
- def on_measure_image(item=-1) end
217
+ PG_COLOUR_HAS_ALPHA = "HasAlpha"
810
218
 
811
- # Events received by editor widgets are processed here.
812
- #
813
- # Note that editor class usually processes most events. Some, such as button press events of TextCtrlAndButton class, can be handled here. Also, if custom handling for regular events is desired, then that can also be done (for example, {Wx::PG::SystemColourProperty} custom handles {Wx::EVT_CHOICE} to display colour picker dialog when 'custom' selection is made).
814
- # If the event causes value to be changed, {Wx::PG::PGProperty#set_value_in_event} should be called to set the new value.
815
- # The parameter event is the associated {Wx::Event}.
816
- #
817
- # Should
818
- #
819
- # return true if any changes in value should be reported.
820
- #
821
- # <div class="wxrb-remark">
822
- # <b>Remark:</b>
823
- # <p>
824
- #
825
- # - If property uses choice control, and displays a dialog on some choice items, then it is preferred to display that dialog in IntToValue instead of OnEvent.
826
219
  #
827
- # </p>
828
- # </div>
829
- # @param propgrid [Wx::PG::PropertyGrid]
830
- # @param wnd_primary [Wx::Window]
831
- # @param event [Wx::Event]
832
- # @return [Boolean]
833
- def on_event(propgrid, wnd_primary, event) end
220
+ PG_PROP_MAX = 262144
834
221
 
835
- # Called after value of a child property has been altered.
836
- #
837
- # Must return new value of the whole property (after any alterations warranted by child's new value).
838
- # Note that this function is usually called at the time that value of this property, or given child property, is still pending for change, and as such, result of {Wx::PG::PGProperty#get_value} or m_value should not be relied on.
839
- # Sample pseudo-code implementation:
840
- #
841
- # ```ruby
842
- # class MyProperty < Wx::PG::FlagsProperty
843
- #
844
- # def child_changed(thisValue, childIndex, childValue)
845
- # # Acquire reference to actual type of data stored in variant
846
- # flags = thisValue.object;
847
- # case childIndex
848
- # when 0
849
- # flags.sub_prop1 = childValue.to_i
850
- # when 1
851
- # flags.sub_prop2 = childValue.to_s
852
- # # ...
853
- # end
854
- # # return altered data
855
- # Wx::Variant.new(flags)
856
- # end
857
222
  #
858
- # end
859
- # ```
860
- #
861
- # Modified value of the whole property.
862
- # @param thisValue [Wx::Variant] Value of this property. Changed value should be returned (in previous versions of {Wx::PG::PropertyGrid} it was only necessary to write value back to this argument).
863
- # @param childIndex [Integer] Index of child changed (you can use Item(childIndex) to get child property).
864
- # @param childValue [Wx::Variant] (Pending) value of the child property.
865
- # @return [Wx::Variant]
866
- def child_changed(thisValue, childIndex, childValue) end
223
+ PG_PROP_PARENTAL_FLAGS = 25600
867
224
 
868
- # Returns pointer to an instance of used editor.
869
- # @return [Wx::PG::PGEditor]
870
- def do_get_editor_class; end
871
-
872
- # Returns pointer to the {Wx::Validator} that should be used with the editor of this property (NULL for no validator).
873
- #
874
- # Setting validator explicitly via \#set_property_validator will override this.
875
- # In most situations, code like this should work well:
876
225
  #
877
- # ```ruby
878
- # class MyPropertyClass < Wx::PG::IntProperty
879
- #
880
- # class << self
881
- # def validator
882
- # @validator ||= MyValidator.new(...)
883
- # end
884
- # end
885
- #
886
- # # ...
887
- #
888
- # def do_get_validator
889
- # MyPropertyClass.validator
890
- # end
891
- #
892
- # # ...
893
- #
894
- # end
895
- # ```
896
- #
897
- # <div class="wxrb-remark">
898
- # <b>Remark:</b>
899
- # <p>You can get common filename validator by returning {Wx::PG::FileProperty.get_class_validator}. {Wx::PG::DirProperty}, for example, uses it.
900
- # </p>
901
- # </div>
902
- # @return [Wx::Validator]
903
- def do_get_validator; end
226
+ PG_STRING_STORED_FLAGS = 54
904
227
 
905
- # Override to paint an image in front of the property value text or drop-down list item (but only if {Wx::PG::PGProperty#on_measure_image} is overridden as well).
906
- #
907
- # If property's {Wx::PG::PGProperty#on_measure_image} returns size that has height != 0 but less than row height ( < 0 has special meanings), {Wx::PG::PropertyGrid} calls this method to draw a custom image in a limited area in front of the editor control or value text/graphics, and if control has drop-down list, then the image is drawn there as well (even in the case {Wx::PG::PGProperty#on_measure_image} returned higher height than row height).
908
- # NOTE: Following applies when {Wx::PG::PGProperty#on_measure_image} returns a "flexible" height ( using <code>wxPG_FLEXIBLE_SIZE(W,H)</code> macro), which implies variable height items: If (rect.x+rect.width) is < 0, then this is a measure item call, which means that dc is invalid and only thing that should be done is to set paintdata.m_drawnHeight to the height of the image of item at index paintdata.m_choiceItem. This call may be done even as often as once every drop-down popup show.
909
228
  #
910
- # <div class="wxrb-remark">
911
- # <b>Remark:</b>
912
- # <p>
913
229
  #
914
- # - You can actually exceed rect width, but if you do so then paintdata.m_drawnWidth must be set to the full width drawn in pixels.
915
- # - Due to technical reasons, rect's height will be default even if custom height was reported during measure call.
916
- # - Brush is guaranteed to be default background colour. It has been already used to clear the background of area being painted. It can be modified.
917
- # - Pen is guaranteed to be 1-wide 'black' (or whatever is the proper colour) pen for drawing framing rectangle. It can be changed as well.
230
+ # ## wxPGProperty Flags
918
231
  #
919
- # </p>
920
- # </div>
921
- # @see Wx::PG::PGProperty#value_to_string
922
- # @param dc [Wx::DC] {Wx::DC} to paint on.
923
- # @param rect [Wx::Rect] Box reserved for custom graphics. Includes surrounding rectangle, if any. If x+width is < 0, then this is a measure item call (see above).
924
- # @param paintdata [Wx::PG::PGPaintData] {Wx::PG::PGPaintData} structure with much useful data about painted item.
925
- # @return [void]
926
- def on_custom_paint(dc, rect, paintdata) end
232
+ # @wxrb_require USE_PROPGRID
233
+ class PGPropertyFlags < Wx::Enum
927
234
 
928
- # Returns which choice is currently selected.
929
- #
930
- # Only applies to properties which have choices.
931
- # Needs to reimplemented in derived class if property value does not map directly to a choice. Integer as index, bool, and string usually do.
932
- # @return [Integer]
933
- def get_choice_selection; end
934
- alias_method :choice_selection, :get_choice_selection
235
+ # Indicates bold font.
236
+ #
237
+ PG_PROP_MODIFIED = Wx::PG::PGPropertyFlags.new(1)
238
+
239
+ # Disables ('greyed' text and editor does not activate) property.
240
+ #
241
+ PG_PROP_DISABLED = Wx::PG::PGPropertyFlags.new(2)
242
+
243
+ # Hider button will hide this property.
244
+ #
245
+ PG_PROP_HIDDEN = Wx::PG::PGPropertyFlags.new(4)
246
+
247
+ # This property has custom paint image just in front of its value.
248
+ #
249
+ PG_PROP_CUSTOMIMAGE = Wx::PG::PGPropertyFlags.new(8)
250
+
251
+ # Do not create text based editor for this property (but button-triggered dialog and choice are ok).
252
+ #
253
+ PG_PROP_NOEDITOR = Wx::PG::PGPropertyFlags.new(16)
254
+
255
+ # Property is collapsed, ie.
256
+ #
257
+ PG_PROP_COLLAPSED = Wx::PG::PGPropertyFlags.new(32)
258
+
259
+ # If property is selected, then indicates that validation failed for pending value.
260
+ #
261
+ PG_PROP_INVALID_VALUE = Wx::PG::PGPropertyFlags.new(64)
262
+
263
+ # Switched via SetWasModified().
264
+ #
265
+ PG_PROP_WAS_MODIFIED = Wx::PG::PGPropertyFlags.new(512)
266
+
267
+ # If set, then child properties (if any) are private, and should be "invisible" to the application.
268
+ #
269
+ PG_PROP_AGGREGATE = Wx::PG::PGPropertyFlags.new(1024)
270
+
271
+ # If set, then child properties (if any) are copies and should not be deleted in dtor.
272
+ #
273
+ PG_PROP_CHILDREN_ARE_COPIES = Wx::PG::PGPropertyFlags.new(2048)
274
+
275
+ # Classifies this item as a non-category.
276
+ #
277
+ PG_PROP_PROPERTY = Wx::PG::PGPropertyFlags.new(4096)
278
+
279
+ # Classifies this item as a category.
280
+ #
281
+ PG_PROP_CATEGORY = Wx::PG::PGPropertyFlags.new(8192)
282
+
283
+ # Classifies this item as a property that has children, but is not aggregate (i.e.
284
+ #
285
+ PG_PROP_MISC_PARENT = Wx::PG::PGPropertyFlags.new(16384)
286
+
287
+ # Property is read-only.
288
+ #
289
+ PG_PROP_READONLY = Wx::PG::PGPropertyFlags.new(32768)
290
+
291
+ # Property's value is composed from values of child properties.
292
+ #
293
+ PG_PROP_COMPOSED_VALUE = Wx::PG::PGPropertyFlags.new(65536)
294
+
295
+ # Common value of property is selectable in editor.
296
+ #
297
+ PG_PROP_USES_COMMON_VALUE = Wx::PG::PGPropertyFlags.new(131072)
298
+
299
+ # Property can be set to unspecified value via editor.
300
+ #
301
+ PG_PROP_AUTO_UNSPECIFIED = Wx::PG::PGPropertyFlags.new(262144)
302
+
303
+ # Indicates the bit usable by derived properties.
304
+ #
305
+ PG_PROP_CLASS_SPECIFIC_1 = Wx::PG::PGPropertyFlags.new(524288)
306
+
307
+ # Indicates the bit usable by derived properties.
308
+ #
309
+ PG_PROP_CLASS_SPECIFIC_2 = Wx::PG::PGPropertyFlags.new(1048576)
310
+
311
+ # Indicates that the property is being deleted and should be ignored.
312
+ #
313
+ PG_PROP_BEING_DELETED = Wx::PG::PGPropertyFlags.new(2097152)
314
+
315
+ end # PGPropertyFlags
935
316
 
936
- # Refresh values of child properties.
317
+ # {Wx::PG::PGProperty} is base class for all {Wx::PG::PropertyGrid} properties and as such it is not intended to be instantiated directly.
937
318
  #
938
- # Automatically called after value is set.
939
- # @return [void]
940
- def refresh_children; end
941
-
942
- # Reimplement this member function to add special handling for attributes of this property.
319
+ # In sections below we cover few related topics.
320
+ #
321
+ # - Supplied Ready-to-use Property Classes
322
+ #
323
+ # - Creating Custom Properties
324
+ #
325
+ # ## Supplied Ready-to-use Property Classes
326
+ # Here is a list and short description of supplied fully-functional property classes. They are located in either {Wx::props.h} or {Wx::advprops.h}.
327
+ #
328
+ # - {Wx::PG::ArrayStringProperty}
329
+ #
330
+ # - {Wx::PG::BoolProperty}
331
+ #
332
+ # - {Wx::PG::ColourProperty}
333
+ #
334
+ # - {Wx::PG::CursorProperty}
335
+ #
336
+ # - {Wx::PG::DateProperty}
337
+ #
338
+ # - {Wx::PG::DirProperty}
339
+ #
340
+ # - {Wx::PG::EditEnumProperty}
341
+ #
342
+ # - {Wx::PG::EnumProperty}
343
+ #
344
+ # - {Wx::PG::FileProperty}
345
+ #
346
+ # - {Wx::PG::FlagsProperty}
347
+ #
348
+ # - {Wx::PG::FloatProperty}
349
+ #
350
+ # - {Wx::PG::FontProperty}
351
+ #
352
+ # - {Wx::PG::ImageFileProperty}
353
+ #
354
+ # - {Wx::PG::IntProperty}
355
+ #
356
+ # - {Wx::PG::LongStringProperty}
357
+ #
358
+ # - {Wx::PG::MultiChoiceProperty}
943
359
  #
944
- # Return false to have the attribute automatically stored in m_attributes. Default implementation simply does that and nothing else.
945
- #
946
- # <div class="wxrb-remark">
947
- # <b>Remark:</b>
948
- # <p>To actually set property attribute values from the application, use {Wx::PG::PGProperty#set_attribute} instead.
949
- # </p>
950
- # </div>
951
- # @param name [String]
952
- # @param value [Wx::Variant]
953
- # @return [Boolean]
954
- def do_set_attribute(name, value) end
955
-
956
- # Returns value of an attribute.
360
+ # - {Wx::PG::PropertyCategory}
957
361
  #
958
- # Override if custom handling of attributes is needed.
959
- # Default implementation simply return NULL variant.
960
- # @param name [String]
961
- # @return [Wx::Variant]
962
- def do_get_attribute(name) end
963
-
964
- # Returns instance of a new {Wx::PG::PGEditorDialogAdapter} instance, which is used when user presses the (optional) button next to the editor control;.
362
+ # - {Wx::PG::StringProperty}
965
363
  #
966
- # Default implementation returns NULL (i.e. no action is generated when button is pressed).
967
- # @return [Wx::PG::PGEditorDialogAdapter]
968
- def get_editor_dialog; end
969
- alias_method :editor_dialog, :get_editor_dialog
970
-
971
- # Called whenever validation has failed with given pending value.
364
+ # - {Wx::PG::SystemColourProperty}
972
365
  #
973
- # <div class="wxrb-remark">
974
- # <b>Remark:</b>
975
- # <p>If you implement this in your custom property class, please remember to call the base implementation as well, since they may use it to revert property into pre-change state.
976
- # </p>
977
- # </div>
978
- # @param pendingValue [Wx::Variant]
979
- # @return [void]
980
- def on_validation_failure(pendingValue) end
981
-
982
- # Append a new choice to property's list of choices.
366
+ # - {Wx::PG::UIntProperty}
983
367
  #
984
- # Index to added choice.
985
- # @param label [String] Label for added choice.
986
- # @param value [Integer] Value for new choice. Do not specify if you wish this to equal choice index.
987
- # @return [Integer]
988
- def add_choice(label, value=Wx::PG::PG_INVALID_VALUE) end
989
-
990
- # Adds a private child property.
368
+ # ## wxPropertyCategory
369
+ # Not an actual property per se, but a header for a group of properties. Regardless inherits from {Wx::PG::PGProperty}, and supports displaying 'labels' for columns other than the first one. Easiest way to set category's label for second column is to call {Wx::PG::PGProperty#set_value} with string argument.
991
370
  #
992
- # If you use this instead of {Wx::PG::PropertyGridInterface#insert} or {Wx::PG::PropertyGridInterface#append_in}, then property's parental type will automatically be set up to {Wx::PG::PGPropertyFlags::PG_PROP_AGGREGATE}. In other words, all properties of this property will become private.
993
- # @param prop [Wx::PG::PGProperty]
994
- # @return [void]
995
- def add_private_child(prop) end
996
-
997
- # Adapts list variant into proper value using consecutive {Wx::PG::PGProperty#child_changed} calls.
998
- # @param list [Wx::Variant]
999
- # @param value [Wx::Variant]
1000
- # @return [void]
1001
- def adapt_list_to_value(list, value) end
1002
-
1003
- # Use this member function to add independent (i.e.
371
+ # ## wxStringProperty
372
+ # Simple string property.
373
+ # Supported special attributes:
1004
374
  #
1005
- # regular) children to a property.
1006
- # Appended childProperty.
375
+ # - {Wx::PG::PG_STRING_PASSWORD}: Set to true in order to echo value as asterisks and to use {Wx::TE_PASSWORD} on the editor ({Wx::TextCtrl}).
376
+ # - {Wx::PG::PG_ATTR_AUTOCOMPLETE}: Set to true to enable auto-completion (use a {Wx::ArrayString} value), and is also supported by any property that happens to use a {Wx::TextCtrl}-based editor.
1007
377
  #
1008
378
  # <div class="wxrb-remark">
1009
379
  # <b>Remark:</b>
1010
- # <p>{Wx::PG::PropertyGrid} is not automatically refreshed by this function.
380
+ # <p>{Wx::PG::StringProperty} has a special trait: if it has value of "<composed>", and also has child properties, then its displayed value becomes composition of child property values, similar as with {Wx::PG::FontProperty}, for instance.
1011
381
  # </p>
1012
382
  # </div>
1013
- # @see Wx::PG::PGProperty#insert_child
1014
- # @see Wx::PG::PGProperty#add_private_child
1015
- # @param childProperty [Wx::PG::PGProperty]
1016
- # @return [Wx::PG::PGProperty]
1017
- def append_child(childProperty) end
1018
-
1019
- # Determines, recursively, if all children are not unspecified.
1020
- # @param pendingList [Wx::Variant] Assumes members in this {Wx::Variant} list as pending replacement values.
1021
- # @return [Boolean]
1022
- def are_all_children_specified(pendingList=nil) end
1023
-
1024
- # Returns true if children of this property are component values (for instance, points size, face name, and is_underlined are component values of a font).
1025
- # @return [Boolean]
1026
- def are_children_components; end
1027
-
1028
- # Sets or clears given property flag.
1029
383
  #
1030
- # Mainly for internal use.
384
+ # ## wxIntProperty
385
+ # It derives from {Wx::PG::NumericProperty} and displays value as a signed long integer. {Wx::PG::IntProperty} seamlessly supports 64-bit integers (i.e. {Wx::LongLong}) on overflow. To safely convert variant to integer, use code like this:
1031
386
  #
1032
- # <div class="wxrb-remark">
1033
- # <b>Remark:</b>
1034
- # <p>Setting a property flag never has any side-effect, and is intended almost exclusively for internal use. So, for example, if you want to disable a property, call
1035
- # ```ruby
1036
- # enable(false)
1037
387
  # ```
1038
- # instead of setting {Wx::PG::PGPropertyFlags::PG_PROP_DISABLED} flag.
1039
- # </p>
1040
- # </div>
1041
- # @see Wx::PG::PGProperty#has_flag
1042
- # @see GetFlags()
1043
- # @param flag [Wx::PGPropertyFlags]
1044
- # @param set [Boolean]
1045
- # @return [void]
1046
- def change_flag(flag, set) end
1047
-
1048
- # Deletes children of the property.
1049
- # @return [void]
1050
- def delete_children; end
1051
-
1052
- # Removes entry from property's {Wx::PG::PGChoices} and editor control (if it is active).
1053
- #
1054
- # If selected item is deleted, then the value is set to unspecified.
1055
- # @param index [Integer]
1056
- # @return [void]
1057
- def delete_choice(index) end
1058
-
1059
- # Enables or disables the property.
1060
- #
1061
- # Disabled property usually appears as having grey text.
1062
- # @see Wx::PG::PropertyGridInterface#enable_property
1063
- # @param enable [Boolean] If false, property is disabled instead.
1064
- # @return [void]
1065
- def enable(enable=true) end
1066
-
1067
- # Call to enable or disable usage of common value (integer value that can be selected for properties instead of their normal values) for this property.
388
+ # wxLongLong ll;
389
+ # ll << property->GetValue();
390
+ #
391
+ # // or
392
+ # wxLongLong ll = propertyGrid->GetPropertyValueAsLong(property);
393
+ # ```
1068
394
  #
1069
- # Common values are disabled by the default for all properties.
1070
- # @param enable [Boolean]
1071
- # @return [void]
1072
- def enable_common_value(enable=true) end
1073
-
1074
- # Composes text from values of child properties.
1075
- # @return [String]
1076
- def generate_composed_value; end
1077
-
1078
- # Returns property's label.
1079
- # @return [Wx::String]
1080
- def get_label; end
1081
- alias_method :label, :get_label
1082
-
1083
- # @overload get_attribute(name)
1084
- # Returns property attribute value, null variant if not found.
395
+ # Getting 64-bit value:
396
+ # ```
397
+ # wxLongLong_t value = pg->GetPropertyValueAsLongLong();
1085
398
  #
1086
- # <div class="wxrb-remark">
1087
- # <b>Remark:</b>
1088
- # <p>For built-in attribute returns null variant if extra style {Wx::PG::PG_EX_WINDOW_STYLES::PG_EX_WRITEONLY_BUILTIN_ATTRIBUTES} is set.
1089
- # </p>
1090
- # </div>
1091
- # @param name [String]
1092
- # @return [Wx::Variant]
1093
- # @overload get_attribute(name, defVal)
1094
- # Returns named attribute, as string, if found.
399
+ # // or
1095
400
  #
1096
- # Otherwise defVal is returned.
401
+ # wxLongLong value;
402
+ # wxVariant variant = property->GetValue();
403
+ # if ( variant.IsType(wxPG_VARIANT_TYPE_LONGLONG) )
404
+ # value = variant.GetLongLong();
405
+ # else
406
+ # value = variant.GetLong();
407
+ # ```
408
+ #
409
+ # Setting 64-bit value:
410
+ # ```
411
+ # pg->SetPropertyValue(longLongVal);
1097
412
  #
1098
- # <div class="wxrb-remark">
1099
- # <b>Remark:</b>
1100
- # <p>For built-in attribute returns defVal if extra style {Wx::PG::PG_EX_WINDOW_STYLES::PG_EX_WRITEONLY_BUILTIN_ATTRIBUTES} is set.
1101
- # </p>
1102
- # </div>
1103
- # @param name [String]
1104
- # @param defVal [String]
1105
- # @return [String]
1106
- def get_attribute(*args) end
1107
- alias_method :attribute, :get_attribute
1108
-
1109
- # Returns named attribute, as long, if found.
413
+ # // or
414
+ #
415
+ # property->SetValue(WXVARIANT(longLongVal));
416
+ # ```
1110
417
  #
1111
- # Otherwise defVal is returned.
418
+ # Supported special attributes:
1112
419
  #
1113
- # <div class="wxrb-remark">
1114
- # <b>Remark:</b>
1115
- # <p>For built-in attribute returns defVal if extra style {Wx::PG::PG_EX_WINDOW_STYLES::PG_EX_WRITEONLY_BUILTIN_ATTRIBUTES} is set.
1116
- # </p>
1117
- # </div>
1118
- # @param name [String]
1119
- # @param defVal [Integer]
1120
- # @return [Integer]
1121
- def get_attribute_as_long(name, defVal) end
1122
- alias_method :attribute_as_long, :get_attribute_as_long
1123
-
1124
- # Returns named attribute, as double, if found.
420
+ # - {Wx::PG::PG_ATTR_MIN}, {Wx::PG::PG_ATTR_MAX} to specify acceptable value range.
421
+ # - {Wx::PG::PG_ATTR_SPINCTRL_STEP}, {Wx::PG::PG_ATTR_SPINCTRL_WRAP}, {Wx::PG::PG_ATTR_SPINCTRL_MOTION}: Sets SpinCtrl editor parameters.
1125
422
  #
1126
- # Otherwise defVal is returned.
423
+ # ## wxUIntProperty
424
+ # Like {Wx::PG::IntProperty}, but displays value as unsigned int. To set the prefix used globally, manipulate {Wx::PG::PG_UINT_PREFIX} string attribute. To set the globally used base, manipulate {Wx::PG::PG_UINT_BASE} int attribute. Regardless of current prefix, understands (hex) values starting with both "0x" and "$" (apart from edit mode). Like {Wx::PG::IntProperty}, {Wx::PG::UIntProperty} seamlessly supports 64-bit unsigned integers (i.e. {Wx::ULongLong}). Same {Wx::Variant} safety rules apply.
425
+ # Supported special attributes:
1127
426
  #
1128
- # <div class="wxrb-remark">
1129
- # <b>Remark:</b>
1130
- # <p>For built-in attribute returns defVal if extra style {Wx::PG::PG_EX_WINDOW_STYLES::PG_EX_WRITEONLY_BUILTIN_ATTRIBUTES} is set.
1131
- # </p>
1132
- # </div>
1133
- # @param name [String]
1134
- # @param defVal [Float]
1135
- # @return [Float]
1136
- def get_attribute_as_double(name, defVal) end
1137
- alias_method :attribute_as_double, :get_attribute_as_double
1138
-
1139
- # Returns map-like storage of property's attributes.
427
+ # - {Wx::PG::PG_ATTR_MIN}, {Wx::PG::PG_ATTR_MAX}: Specifies acceptable value range.
428
+ # - {Wx::PG::PG_UINT_BASE}: Defines base. Valid constants are {Wx::PG::PG_BASE_OCT}, {Wx::PG::PG_BASE_DEC}, {Wx::PG::PG_BASE_HEX} and {Wx::PG::PG_BASE_HEXL} (lowercase characters). Arbitrary bases are <b>not</b> supported.
429
+ # - {Wx::PG::PG_UINT_PREFIX}: Defines displayed prefix. Possible values are {Wx::PG::PG_PREFIX_NONE}, {Wx::PG::PG_PREFIX_0x} and {Wx::PG::PG_PREFIX_DOLLAR_SIGN}. Only {Wx::PG::PG_PREFIX_NONE} works with decimal and octal numbers.
430
+ # - {Wx::PG::PG_ATTR_SPINCTRL_STEP}, {Wx::PG::PG_ATTR_SPINCTRL_WRAP}, {Wx::PG::PG_ATTR_SPINCTRL_MOTION}: Sets SpinCtrl editor parameters.
1140
431
  #
1141
432
  # <div class="wxrb-remark">
1142
433
  # <b>Remark:</b>
1143
- # <p>If extra style {Wx::PG::PG_EX_WINDOW_STYLES::PG_EX_WRITEONLY_BUILTIN_ATTRIBUTES} is set, then builtin-attributes are not included in the storage.
434
+ # <p>For example how to use seamless 64-bit integer support, see {Wx::PG::IntProperty} documentation (just use {Wx::ULongLong} instead of {Wx::LongLong}).
1144
435
  # </p>
1145
436
  # </div>
1146
- # @return [Wx::PGAttributeStorage]
1147
- def get_attributes; end
1148
- alias_method :attributes, :get_attributes
1149
-
1150
- # Returns attributes as list {Wx::Variant}.
1151
437
  #
1152
- # <div class="wxrb-remark">
1153
- # <b>Remark:</b>
1154
- # <p>If extra style {Wx::PG::PG_EX_WINDOW_STYLES::PG_EX_WRITEONLY_BUILTIN_ATTRIBUTES} is set, then builtin-attributes are not included in the list.
1155
- # </p>
1156
- # </div>
1157
- # @return [Wx::Variant]
1158
- def get_attributes_as_list; end
1159
- alias_method :attributes_as_list, :get_attributes_as_list
1160
-
1161
- # Returns editor used for given column.
438
+ # ## wxFloatProperty
439
+ # Like {Wx::PG::StringProperty}, but converts text to a double-precision floating point. Default float-to-text precision is 6 decimals, but this can be changed by modifying {Wx::PG::PG_FLOAT_PRECISION} attribute.
440
+ # Note that when displaying the value, sign is omitted if the resulting textual representation is effectively zero (for example, -0.0001 with precision of 3 will become 0.0 instead of -0.0). This behaviour is unlike what C standard library does, but should result in better end-user experience in almost all cases.
441
+ # Supported special attributes:
1162
442
  #
1163
- # NULL for no editor.
1164
- # @param column [Integer]
1165
- # @return [Wx::PG::PGEditor]
1166
- def get_column_editor(column) end
1167
- alias_method :column_editor, :get_column_editor
1168
-
1169
- # Returns property's base name (i.e.
443
+ # - {Wx::PG::PG_ATTR_MIN}, {Wx::PG::PG_ATTR_MAX}: Specifies acceptable value range.
444
+ # - {Wx::PG::PG_FLOAT_PRECISION}: Sets the (max) precision used when floating point value is rendered as text. The default -1 means shortest floating-point 6-digit representation.
445
+ # - {Wx::PG::PG_ATTR_SPINCTRL_STEP}, {Wx::PG::PG_ATTR_SPINCTRL_WRAP}, {Wx::PG::PG_ATTR_SPINCTRL_MOTION}: Sets SpinCtrl editor parameters.
1170
446
  #
1171
- # parent's name is not added in any case).
1172
- # @return [Wx::String]
1173
- def get_base_name; end
1174
- alias_method :base_name, :get_base_name
1175
-
1176
- # Returns {Wx::PG::PGCell} of given column.
447
+ # ## wxBoolProperty
448
+ # Represents a boolean value. {Wx::Choice} is used as editor control, by the default. {Wx::PG::PG_BOOL_USE_CHECKBOX} attribute can be set to true in order to use check box instead.
449
+ # Supported special attributes:
1177
450
  #
1178
- # <div class="wxrb-remark">
1179
- # <b>Remark:</b>
1180
- # <p>const version of this member function returns 'default' {Wx::PG::PGCell} object if the property itself didn't hold cell data.
1181
- # </p>
1182
- # </div>
1183
- # @param column [Integer]
1184
- # @return [Wx::PG::PGCell]
1185
- def get_cell_or_default(column) end
1186
- alias_method :cell_or_default, :get_cell_or_default
1187
-
1188
- # Returns {Wx::PG::PGCell} of given column, creating one if necessary.
1189
- # @param column [Integer]
1190
- # @return [Wx::PG::PGCell]
1191
- def get_cell(column) end
1192
- alias_method :cell, :get_cell
1193
-
1194
- # Returns number of child properties.
1195
- # @return [Integer]
1196
- def get_child_count; end
1197
- alias_method :child_count, :get_child_count
1198
-
1199
- # Returns height of children, recursively, and by taking expanded/collapsed status into account.
1200
- # @param lh [Integer] Line height. Pass result of {Wx::PG::PGProperty#get_grid}->GetRowHeight() here.
1201
- # @param iMax [Integer] Only used (internally) when finding property y-positions.
1202
- # @return [Integer]
1203
- def get_children_height(lh, iMax=-1) end
1204
- alias_method :children_height, :get_children_height
1205
-
1206
- # Returns read-only reference to property's list of choices.
1207
- # @return [Wx::PG::PGChoices]
1208
- def get_choices; end
1209
- alias_method :choices, :get_choices
1210
-
1211
- # Gets managed client object of a property.
1212
- # @return [Object]
1213
- def get_client_object; end
1214
- alias_method :client_object, :get_client_object
1215
-
1216
- # Returns property's default value.
451
+ # - {Wx::PG::PG_BOOL_USE_CHECKBOX}: If set to true uses check box editor instead of combo box.
452
+ # - {Wx::PG::PG_BOOL_USE_DOUBLE_CLICK_CYCLING}: If set to true cycles combo box instead showing the list.
1217
453
  #
1218
- # If property's value type is not a built-in one, and "DefaultValue" attribute is not defined, then this function usually returns Null variant.
1219
- # @return [Wx::Variant]
1220
- def get_default_value; end
1221
- alias_method :default_value, :get_default_value
1222
-
1223
- # Returns common value selected for this property.
454
+ # ## wxLongStringProperty
455
+ # Like {Wx::PG::StringProperty}, but has a button that triggers a small text editor dialog. Note that in long string values, some control characters are escaped: tab is represented by "\t", line break by "\n", carriage return by "\r" and backslash character by "\\". If another character is preceded
456
+ # by backslash, the backslash is skipped.
457
+ # Note also that depending on the system (port), some sequences of special
458
+ # characters, like e.g. "\r
1224
459
  #
1225
- # -1 for none.
1226
- # @return [Integer]
1227
- def get_common_value; end
1228
- alias_method :common_value, :get_common_value
1229
-
1230
- # @return [Integer]
1231
- def get_depth; end
1232
- alias_method :depth, :get_depth
1233
-
1234
- # Return number of displayed common values for this property.
1235
- # @return [Integer]
1236
- def get_displayed_common_value_count; end
1237
- alias_method :displayed_common_value_count, :get_displayed_common_value_count
1238
-
1239
- # Returns property's displayed text.
1240
- # @return [String]
1241
- def get_displayed_string; end
1242
- alias_method :displayed_string, :get_displayed_string
1243
-
1244
- # Returns {Wx::PG::PGEditor} that will be used and created when property becomes selected.
460
+ # ", can be interpreted and presented in
461
+ # a different way in the editor and therefore such sequences may not be
462
+ # the same before and after the edition.
1245
463
  #
1246
- # Returns more accurate value than {Wx::PG::PGProperty#do_get_editor_class}.
1247
- # @return [Wx::PG::PGEditor]
1248
- def get_editor_class; end
1249
- alias_method :editor_class, :get_editor_class
1250
-
1251
- # Returns property's hint text (shown in empty value cell).
1252
- # @return [String]
1253
- def get_hint_text; end
1254
- alias_method :hint_text, :get_hint_text
1255
-
1256
- # Returns property grid where property lies.
1257
- # @return [Wx::PG::PropertyGrid]
1258
- def get_grid; end
1259
- alias_method :grid, :get_grid
1260
-
1261
- # Returns owner {Wx::PG::PropertyGrid}, but only if one is currently on a page displaying this property.
1262
- # @return [Wx::PG::PropertyGrid]
1263
- def get_grid_if_displayed; end
1264
- alias_method :grid_if_displayed, :get_grid_if_displayed
1265
-
1266
- # Returns property's help or description text.
464
+ # To display a custom dialog on button press, you can subclass
465
+ # {Wx::PG::LongStringProperty} and override DisplayEditorDialog, like this:
1267
466
  #
467
+ # bool DisplayEditorDialog( {Wx::PG::PropertyGrid}* propGrid, {Wx::Variant}& value ) {Wx::OVERRIDE}
468
+ # {
469
+ # {Wx::Size} dialogSize(...size of your dialog...);
1268
470
  #
1269
- # @see Wx::PG::PGProperty#set_help_string
1270
- # @return [Wx::String]
1271
- def get_help_string; end
1272
- alias_method :help_string, :get_help_string
1273
-
1274
- # Gets flags as a'|' delimited string.
471
+ # {Wx::Point} dlgPos = propGrid->GetGoodEditorDialogPosition(this,
472
+ # dialogSize)
1275
473
  #
1276
- # Note that flag names are not prepended with '{Wx::PG_PROP_}'.
1277
- # @param flagsMask [Integer] String will only be made to include flags combined by this parameter.
1278
- # @return [String]
1279
- def get_flags_as_string(flagsMask) end
1280
- alias_method :flags_as_string, :get_flags_as_string
1281
-
1282
- # Returns position in parent's array.
1283
- # @return [Integer]
1284
- def get_index_in_parent; end
1285
- alias_method :index_in_parent, :get_index_in_parent
1286
-
1287
- # Returns last visible child property, recursively.
1288
- # @return [Wx::PG::PGProperty]
1289
- def get_last_visible_sub_item; end
1290
- alias_method :last_visible_sub_item, :get_last_visible_sub_item
1291
-
1292
- # Returns highest level non-category, non-root parent.
474
+ # // Create dialog dlg at dlgPos. Use value as initial string
475
+ # // value.
476
+ # ...
1293
477
  #
1294
- # Useful when you have nested properties with children.
478
+ # if ( dlg.ShowModal() == {Wx::StandardID::ID_OK} )
479
+ # {
480
+ # value = dlg.GetStringValue);
481
+ # return true;
482
+ # }
483
+ # return false;
484
+ # }
1295
485
  #
1296
- # <div class="wxrb-remark">
1297
- # <b>Remark:</b>
1298
- # <p>If immediate parent is root or category, this will return the property itself.
1299
- # </p>
1300
- # </div>
1301
- # @return [Wx::PG::PGProperty]
1302
- def get_main_parent; end
1303
- alias_method :main_parent, :get_main_parent
1304
-
1305
- # Returns maximum allowed length of the text the user can enter in the property text editor.
486
+ # Also, if you wish not to have line breaks and tabs translated to
487
+ # escape sequences, then do following in constructor of your subclass:
1306
488
  #
1307
- # <div class="wxrb-remark">
1308
- # <b>Remark:</b>
1309
- # <p>0 is returned if length is not explicitly limited and the text can be as long as it is supported by the underlying native text control widget.
1310
- # </p>
1311
- # </div>
1312
- # @return [Integer]
1313
- def get_max_length; end
1314
- alias_method :max_length, :get_max_length
1315
-
1316
- # Returns property's name with all (non-category, non-root) parents.
1317
- # @return [String]
1318
- def get_name; end
1319
- alias_method :name, :get_name
1320
-
1321
- # Return parent of property.
1322
- # @return [Wx::PG::PGProperty]
1323
- def get_parent; end
1324
- alias_method :parent, :get_parent
1325
-
1326
- # Returns (direct) child property with given name (or NULL if not found).
1327
- # @param name [String] Name of the child property to look for.
1328
- # @return [Wx::PG::PGProperty]
1329
- def get_property_by_name(name) end
1330
- alias_method :property_by_name, :get_property_by_name
1331
-
1332
- # Gets assignable version of property's validator.
1333
- # @return [Wx::Validator]
1334
- def get_validator; end
1335
- alias_method :validator, :get_validator
1336
-
1337
- # Returns property's value.
1338
- # @return [Wx::Variant]
1339
- def get_value; end
1340
- alias_method :value, :get_value
1341
-
1342
- # Returns bitmap that appears next to value text.
489
+ # m_flags |= {Wx::PG_PROP_NO_ESCAPE};
1343
490
  #
1344
- # Only returns non-NULL bitmap if one was set with {Wx::PG::PGProperty#set_value_image}.
1345
- # @return [Wx::Bitmap]
1346
- def get_value_image; end
1347
- alias_method :value_image, :get_value_image
1348
-
1349
- # Returns text representation of property's value.
491
+ # Supported special attributes:
492
+ # - ::{Wx::PG::PG_DIALOG_TITLE}: Sets a specific title for the text editor dialog.
1350
493
  #
1351
- # <div class="wxrb-remark">
1352
- # <b>Remark:</b>
1353
- # <p>In older versions, this function used to be overridden to convert property's value into a string representation. This function is now handled by {Wx::PG::PGProperty#value_to_string}, and overriding this function now will result in run-time assertion failure.
1354
- # </p>
1355
- # </div>
1356
- # @param argFlags [Integer] If 0 (default value), then displayed string is returned. If {Wx::PG::PG_MISC_ARG_FLAGS::PG_FULL_VALUE} is set, returns complete, storable string value instead of displayable. If {Wx::PG::PG_MISC_ARG_FLAGS::PG_EDITABLE_VALUE} is set, returns string value that must be editable in textctrl. If {Wx::PG::PG_MISC_ARG_FLAGS::PG_COMPOSITE_FRAGMENT} is set, returns text that is appropriate to display as a part of string property's composite text representation.
1357
- # @return [String]
1358
- def get_value_as_string(argFlags=0) end
1359
- alias_method :value_as_string, :get_value_as_string
1360
-
1361
- # Returns value type used by this property.
1362
- # @return [String]
1363
- def get_value_type; end
1364
- alias_method :value_type, :get_value_type
1365
-
1366
- # Returns coordinate to the top y of the property.
494
+ # ## {Wx::PG::DirProperty}
1367
495
  #
1368
- # Note that the position of scrollbars is not taken into account.
1369
- # @return [Integer]
1370
- def get_y; end
1371
- alias_method :y, :get_y
1372
-
1373
- # Converts image width into full image offset, with margins.
1374
- # @param imageWidth [Integer]
1375
- # @return [Integer]
1376
- def get_image_offset(imageWidth) end
1377
- alias_method :image_offset, :get_image_offset
1378
-
1379
- # Returns property at given virtual y coordinate.
1380
- # @param y [Integer]
1381
- # @return [Wx::PG::PGProperty]
1382
- def get_item_at_y(y) end
1383
- alias_method :item_at_y, :get_item_at_y
1384
-
1385
- # @overload has_flag(flag)
1386
- # Returns true if property has given flag set.
1387
- #
1388
- #
1389
- # @see propgrid_propflags
1390
- # @param flag [Wx::PGPropertyFlags]
1391
- # @return [Boolean]
1392
- # @overload has_flag(flag)
1393
- # Returns true if property has given flag set.
1394
- # @param flag [Integer]
1395
- # @return [Boolean]
1396
- def has_flag(*args) end
1397
- alias_method :has_flag?, :has_flag
1398
-
1399
- # Returns true if property has all given flags set.
1400
- # @param flags [Integer]
1401
- # @return [Boolean]
1402
- def has_flags_exact(flags) end
1403
- alias_method :has_flags_exact?, :has_flags_exact
1404
-
1405
- # Returns true if property has even one visible child.
1406
- # @return [Boolean]
1407
- def has_visible_children; end
1408
- alias_method :has_visible_children?, :has_visible_children
1409
-
1410
- # Hides or reveals the property.
1411
- # @param hide [Boolean] true for hide, false for reveal.
1412
- # @param flags [Integer] By default changes are applied recursively. Set this parameter to {Wx::PG::PG_GETPROPERTYVALUES_FLAGS::PG_DONT_RECURSE} to prevent this.
1413
- # @return [Boolean]
1414
- def hide(hide, flags=Wx::PG::PG_GETPROPERTYVALUES_FLAGS::PG_RECURSE) end
1415
-
1416
- # Returns index of given child property.
496
+ # Like {Wx::PG::LongStringProperty}, but the button triggers dir selector instead.
1417
497
  #
1418
- # {Wx::NOT_FOUND} if given property is not child of this.
1419
- # @param p [Wx::PG::PGProperty]
1420
- # @return [Integer]
1421
- def index(p) end
1422
-
1423
- # Use this member function to add independent (i.e.
498
+ # Supported special attributes:
499
+ # - ::{Wx::PG::PG_DIALOG_TITLE}: Sets specific title for the dir selector.
1424
500
  #
1425
- # regular) children to a property.
1426
- # Inserted childProperty.
501
+ # ## {Wx::PG::FileProperty}
1427
502
  #
1428
- # <div class="wxrb-remark">
1429
- # <b>Remark:</b>
1430
- # <p>{Wx::PG::PropertyGrid} is not automatically refreshed by this function.
1431
- # </p>
1432
- # </div>
1433
- # @see Wx::PG::PGProperty#append_child
1434
- # @see Wx::PG::PGProperty#add_private_child
1435
- # @param index [Integer]
1436
- # @param childProperty [Wx::PG::PGProperty]
1437
- # @return [Wx::PG::PGProperty]
1438
- def insert_child(index, childProperty) end
1439
-
1440
- # Inserts a new choice to property's list of choices.
1441
- # @param label [String] Text for new choice
1442
- # @param index [Integer] Insertion position. Use {Wx::NOT_FOUND} to append.
1443
- # @param value [Integer] Value for new choice. Do not specify if you wish this to equal choice index.
1444
- # @return [Integer]
1445
- def insert_choice(label, index, value=Wx::PG::PG_INVALID_VALUE) end
1446
-
1447
- # Returns true if this property is actually a {Wx::PG::PropertyCategory}.
1448
- # @return [Boolean]
1449
- def is_category; end
1450
- alias_method :category?, :is_category
1451
-
1452
- # Returns true if property is enabled.
1453
- # @return [Boolean]
1454
- def is_enabled; end
1455
- alias_method :enabled?, :is_enabled
1456
-
1457
- # Returns true if property has visible children.
1458
- # @return [Boolean]
1459
- def is_expanded; end
1460
- alias_method :expanded?, :is_expanded
1461
-
1462
- # Returns true if this property is actually a {Wx::RootProperty}.
1463
- # @return [Boolean]
1464
- def is_root; end
1465
- alias_method :root?, :is_root
1466
-
1467
- # Returns true if this is a sub-property.
1468
- # @return [Boolean]
1469
- def is_sub_property; end
1470
- alias_method :sub_property?, :is_sub_property
1471
-
1472
- # Returns true if candidateParent is some parent of this property.
503
+ # Like {Wx::PG::LongStringProperty}, but the button triggers file selector instead.
504
+ # Default wildcard is "All files..." but this can be changed by setting
505
+ # ::{Wx::PG::PG_FILE_WILDCARD} attribute.
1473
506
  #
1474
- # Use, for example, to detect if item is inside collapsed section.
1475
- # @param candidateParent [Wx::PG::PGProperty]
1476
- # @return [Boolean]
1477
- def is_some_parent(candidateParent) end
1478
- alias_method :some_parent?, :is_some_parent
1479
-
1480
- # Returns true if property has editable {Wx::TextCtrl} when selected.
507
+ # Supported special attributes:
508
+ # - ::{Wx::PG::PG_DIALOG_TITLE}: Sets a specific title for the file dialog.
509
+ # - ::{Wx::PG::PG_FILE_DIALOG_STYLE}: Sets a specific {Wx::FileDialog} style for the file dialog.
510
+ # - ::{Wx::PG::PG_FILE_WILDCARD}: Sets wildcard (see {Wx::FileDialog} for format details), "All files..." is default.
511
+ # - ::{Wx::PG::PG_FILE_SHOW_FULL_PATH}: Default <span class='literal'>true</span>. When <span class='literal'>false</span>, only the file name is shown
512
+ # (i.e. drive and directory are hidden).
513
+ # - ::{Wx::PG::PG_FILE_SHOW_RELATIVE_PATH}: If set, then the filename is shown relative to the
514
+ # given path string.
515
+ # - ::{Wx::PG::PG_FILE_INITIAL_PATH}: Sets the initial path of where to look for files.
1481
516
  #
1482
- # <div class="wxrb-remark">
1483
- # <b>Remark:</b>
1484
- # <p>Although disabled properties do not displayed editor, they still return true here as being disabled is considered a temporary condition (unlike being read-only or having limited editing enabled).
1485
- # </p>
1486
- # </div>
1487
- # @return [Boolean]
1488
- def is_text_editable; end
1489
- alias_method :text_editable?, :is_text_editable
1490
-
1491
- # Returns true if property's value is considered unspecified.
517
+ # ## {Wx::PG::EnumProperty}
1492
518
  #
1493
- # This usually means that value is Null variant.
1494
- # @return [Boolean]
1495
- def is_value_unspecified; end
1496
- alias_method :value_unspecified?, :is_value_unspecified
1497
-
1498
- # Returns true if all parents expanded.
1499
- # @return [Boolean]
1500
- def is_visible; end
1501
- alias_method :visible?, :is_visible
1502
-
1503
- # Returns child property at index i.
1504
- # @param i [Integer]
1505
- # @return [Wx::PG::PGProperty]
1506
- def item(i) end
1507
-
1508
- # Returns last sub-property.
1509
- # @return [Wx::PG::PGProperty]
1510
- def last; end
1511
-
1512
- # If property's editor is created this forces its recreation.
519
+ # Represents a single selection from a list of choices -
520
+ # {Wx::OwnerDrawnComboBox} is used to edit the value.
1513
521
  #
1514
- # Useful in SetAttribute etc. Returns true if actually did anything.
1515
- # @return [Boolean]
1516
- def recreate_editor; end
1517
-
1518
- # If property's editor is active, then update it's value.
1519
- # @return [void]
1520
- def refresh_editor; end
1521
-
1522
- # Sets an attribute for this property.
522
+ # ## {Wx::PG::FlagsProperty}
1523
523
  #
1524
- # <div class="wxrb-remark">
1525
- # <b>Remark:</b>
1526
- # <p>Setting attribute's value to Null variant will simply remove it from property's set of attributes.
1527
- # </p>
1528
- # </div>
1529
- # @param name [String] Text identifier of attribute. See wxPropertyGrid Property Attribute Identifiers.
1530
- # @param value [nil,String,Integer,Float,Time,Wx::Font,Wx::Colour,Wx::Variant,Array<WxVariant>,Array<String>,ObjectWx::PG::ColourPropertyValue] Value of attribute.
1531
- # @return [void]
1532
- def set_attribute(name, value) end
1533
-
1534
- # @param attributes [Wx::PGAttributeStorage]
1535
- # @return [void]
1536
- def set_attributes(attributes) end
1537
-
1538
- # Set if user can change the property's value to unspecified by modifying the value of the editor control (usually by clearing it).
524
+ # Represents a bit set that fits in a long integer. {Wx::PG::BoolProperty} sub-
525
+ # properties are created for editing individual bits. Textctrl is created to
526
+ # manually edit the flags as a text; a continuous sequence of spaces, commas
527
+ # and semicolons are considered as a flag id separator.
1539
528
  #
1540
- # Currently, this can work with following properties: {Wx::PG::IntProperty}, {Wx::PG::UIntProperty}, {Wx::PG::FloatProperty}, {Wx::PG::EditEnumProperty}.
1541
- # @param enable [Boolean] Whether to enable or disable this behaviour (it is disabled by default).
1542
- # @return [void]
1543
- def set_auto_unspecified(enable=true) end
1544
- alias_method :auto_unspecified=, :set_auto_unspecified
1545
-
1546
- # Sets property's background colour.
529
+ # <b>Note:</b> When changing "choices" (i.e. flag labels) of {Wx::PG::FlagsProperty},
530
+ # you will need to use {Wx::PG::PGProperty#set_choices} - otherwise they will not
531
+ # get updated properly.
1547
532
  #
1548
- # <div class="wxrb-remark">
1549
- # <b>Remark:</b>
1550
- # <p>Unlike {Wx::PG::PropertyGridInterface#set_property_background_colour}, this does not automatically update the display.
1551
- # </p>
1552
- # </div>
1553
- # @param colour [Wx::Colour,String,Symbol] Background colour to use.
1554
- # @param flags [Integer] Default is {Wx::PG::PG_GETPROPERTYVALUES_FLAGS::PG_RECURSE} which causes colour to be set recursively. Omit this flag to only set colour for the property in question and not any of its children.
1555
- # @return [void]
1556
- def set_background_colour(colour, flags=Wx::PG::PG_GETPROPERTYVALUES_FLAGS::PG_RECURSE) end
1557
- alias_method :background_colour=, :set_background_colour
1558
-
1559
- # @overload set_editor(editor)
1560
- # Sets editor for a property.
1561
- #
1562
- # For custom editors, use pointer you received from {Wx::PG::PropertyGrid.register_editor_class}.
1563
- # @param editor [Wx::PG::PGEditor] For builtin editors, use {Wx::PGEditor_X}, where X is builtin editor's name (TextCtrl, Choice, etc. see {Wx::PG::PGEditor} documentation for full list).
1564
- # @return [void]
1565
- # @overload set_editor(editorName)
1566
- # Sets editor for a property, by editor name.
1567
- # @param editorName [String]
1568
- # @return [void]
1569
- def set_editor(*args) end
1570
- alias_method :editor=, :set_editor
1571
-
1572
- # Sets cell information for given column.
1573
- # @param column [Integer]
1574
- # @param cell [Wx::PG::PGCell]
1575
- # @return [void]
1576
- def set_cell(column, cell) end
1577
-
1578
- # Sets common value selected for this property.
533
+ # {Wx::PG::FlagsProperty} supports the same attributes as {Wx::PG::BoolProperty}.
1579
534
  #
1580
- # -1 for none.
1581
- # @param commonValue [Integer]
1582
- # @return [void]
1583
- def set_common_value(commonValue) end
1584
- alias_method :common_value=, :set_common_value
1585
-
1586
- # Sets new set of choices for the property.
535
+ # ## {Wx::PG::ArrayStringProperty}
1587
536
  #
1588
- # <div class="wxrb-remark">
1589
- # <b>Remark:</b>
1590
- # <p>This operation deselects the property and clears its value.
1591
- # </p>
1592
- # </div>
1593
- # @param choices [Wx::PG::PGChoices]
1594
- # @return [Boolean]
1595
- def set_choices(choices) end
1596
- alias_method :choices=, :set_choices
1597
-
1598
- # Sets client object of a property.
1599
- # @param clientObject [Object]
1600
- # @return [void]
1601
- def set_client_object(clientObject) end
1602
- alias_method :client_object=, :set_client_object
1603
-
1604
- # Sets selected choice and changes property value.
537
+ # Property that manages a list of strings. Allows editing of a list
538
+ # of strings in {Wx::TextCtrl} and in a separate dialog.
1605
539
  #
1606
- # Tries to retain value type, although currently if it is not string, then it is forced to integer.
1607
- # @param newValue [Integer]
1608
- # @return [void]
1609
- def set_choice_selection(newValue) end
1610
- alias_method :choice_selection=, :set_choice_selection
1611
-
1612
- # Set default value of a property.
540
+ # Supported special attributes:
541
+ # - ::{Wx::PG::PG_ARRAY_DELIMITER}: Sets string delimiter character.
542
+ # - ::{Wx::PG::PG_DIALOG_TITLE}: Sets a specific title for the editor dialog.
543
+ # Default is comma (',').
1613
544
  #
1614
- # Synonymous to
545
+ # ## {Wx::PG::DateProperty}
1615
546
  #
1616
- # ```ruby
1617
- # set_attribute('DefaultValue', value)
1618
- # ```
1619
- # @param value [Wx::Variant]
1620
- # @return [void]
1621
- def set_default_value(value) end
1622
- alias_method :default_value=, :set_default_value
1623
-
1624
- # @param expanded [Boolean]
1625
- # @return [void]
1626
- def set_expanded(expanded) end
1627
- alias_method :expanded=, :set_expanded
1628
-
1629
- # Sets flags from a '|' delimited string.
547
+ # Property representing {Wx::DateTime}. Default editor is DatePickerCtrl,
548
+ # although TextCtrl should work as well.
1630
549
  #
1631
- # Note that flag names are not prepended with '{Wx::PG_PROP_}'.
1632
- # @param str [String]
1633
- # @return [void]
1634
- def set_flags_from_string(str) end
1635
- alias_method :flags_from_string=, :set_flags_from_string
1636
-
1637
- # Sets or clears given property flag, recursively.
1638
- #
1639
- # This function is primarily intended for internal use.
1640
- # @see Wx::PG::PGProperty#change_flag
1641
- # @param flag [Wx::PGPropertyFlags]
1642
- # @param set [Boolean]
1643
- # @return [void]
1644
- def set_flag_recursively(flag, set) end
1645
-
1646
- # Sets property's help string, which is shown, for example, in {Wx::PG::PropertyGridManager}'s description text box.
1647
- # @param helpString [String]
1648
- # @return [void]
1649
- def set_help_string(helpString) end
1650
- alias_method :help_string=, :set_help_string
1651
-
1652
- # Sets property's label.
550
+ # Supported special attributes:
551
+ # - ::{Wx::PG::PG_DATE_FORMAT}: Determines displayed date format (with Wx::DateTime::Format).
552
+ # Default is recommended as it is locale-dependent.
553
+ # - ::{Wx::PG::PG_DATE_PICKER_STYLE}: Determines window style used with {Wx::DatePickerCtrl}.
554
+ # Default is ::{Wx::DP_DEFAULT} | ::{Wx::DP_SHOWCENTURY}. Using ::{Wx::DP_ALLOWNONE}
555
+ # enables additional support for unspecified property value.
1653
556
  #
1654
- # <div class="wxrb-remark">
1655
- # <b>Remark:</b>
1656
- # <p>
557
+ # ## {Wx::PG::EditEnumProperty}
1657
558
  #
1658
- # - Properties under same parent may have same labels. However, property names must still remain unique.
1659
- # - Unlike {Wx::PG::PropertyGridInterface#set_property_label}, this does not automatically update the display.
559
+ # Represents a string that can be freely edited or selected from list of choices -
560
+ # custom combobox control is used to edit the value.
1660
561
  #
1661
- # </p>
1662
- # </div>
1663
- # @param label [String]
1664
- # @return [void]
1665
- def set_label(label) end
1666
- alias_method :label=, :set_label
1667
-
1668
- # Set maximum length of the text the user can enter in the text editor.
1669
- #
1670
- # If it is 0, the length is not limited and the text can be as long as it is supported by the underlying native text control widget.
1671
- # Returns true if maximum length was set.
1672
- # @param maxLen [Integer]
1673
- # @return [Boolean]
1674
- def set_max_length(maxLen) end
1675
- alias_method :max_length=, :set_max_length
1676
-
1677
- # Sets property's "is it modified?" flag.
562
+ # Uses int value, similar to {Wx::PG::EnumProperty}, unless text entered by user is
563
+ # is not in choices (in which case string value is used).
1678
564
  #
1679
- # Affects children recursively.
1680
- # @param modified [Boolean]
1681
- # @return [void]
1682
- def set_modified_status(modified) end
1683
- alias_method :modified_status=, :set_modified_status
1684
-
1685
- # Sets new (base) name for property.
1686
- # @param newName [String]
1687
- # @return [void]
1688
- def set_name(newName) end
1689
- alias_method :name=, :set_name
1690
-
1691
- # Changes what sort of parent this property is for its children.
565
+ # ## {Wx::PG::MultiChoiceProperty}
1692
566
  #
1693
- # <div class="wxrb-remark">
1694
- # <b>Remark:</b>
1695
- # <p>You generally do not need to call this function.
1696
- # </p>
1697
- # </div>
1698
- # @param flag [Integer] Use one of the following values: {Wx::PG::PGPropertyFlags::PG_PROP_MISC_PARENT} (for generic parents), {Wx::PG::PGPropertyFlags::PG_PROP_CATEGORY} (for categories), or {Wx::PG::PGPropertyFlags::PG_PROP_AGGREGATE} (for derived property classes with private children).
1699
- # @return [void]
1700
- def set_parental_type(flag) end
1701
- alias_method :parental_type=, :set_parental_type
1702
-
1703
- # Sets property's text colour.
567
+ # Allows editing a multiple selection from a list of strings. This is
568
+ # property is pretty much built around concept of {Wx::MultiChoiceDialog}.
569
+ # It uses {Wx::ArrayString} value.
1704
570
  #
1705
- # <div class="wxrb-remark">
1706
- # <b>Remark:</b>
1707
- # <p>Unlike {Wx::PG::PropertyGridInterface#set_property_text_colour}, this does not automatically update the display.
1708
- # </p>
1709
- # </div>
1710
- # @param colour [Wx::Colour,String,Symbol] Text colour to use.
1711
- # @param flags [Integer] Default is {Wx::PG::PG_GETPROPERTYVALUES_FLAGS::PG_RECURSE} which causes colour to be set recursively. Omit this flag to only set colour for the property in question and not any of its children.
1712
- # @return [void]
1713
- def set_text_colour(colour, flags=Wx::PG::PG_GETPROPERTYVALUES_FLAGS::PG_RECURSE) end
1714
- alias_method :text_colour=, :set_text_colour
1715
-
1716
- # Sets property's default text and background colours.
571
+ # Supported special attributes:
572
+ # - ::{Wx::PG::PG_ATTR_MULTICHOICE_USERSTRINGMODE}: If > 0, allows user to manually
573
+ # enter strings that are not in the list of choices. If this value is 1,
574
+ # user strings are preferably placed in front of valid choices. If value
575
+ # is 2, then those strings will placed behind valid choices.
576
+ # - ::{Wx::PG::PG_DIALOG_TITLE}: Sets a specific title for the editor dialog.
1717
577
  #
1718
- # <div class="wxrb-remark">
1719
- # <b>Remark:</b>
1720
- # <p>Unlike {Wx::PG::PropertyGridInterface#set_property_colours_to_default}, this does not automatically update the display.
1721
- # </p>
1722
- # </div>
1723
- # @param flags [Integer] Default is {Wx::PG::PG_GETPROPERTYVALUES_FLAGS::PG_RECURSE} which causes colours to be set recursively. Omit this flag to only set colours for the property in question and not any of its children.
1724
- # @return [void]
1725
- def set_default_colours(flags=Wx::PG::PG_GETPROPERTYVALUES_FLAGS::PG_RECURSE) end
1726
- alias_method :default_colours=, :set_default_colours
1727
-
1728
- # Sets {Wx::Validator} for a property.
1729
- # @param validator [Wx::Validator]
1730
- # @return [void]
1731
- def set_validator(validator) end
1732
- alias_method :validator=, :set_validator
1733
-
1734
- # Call this to set value of the property.
578
+ # ## {Wx::PG::ImageFileProperty}
1735
579
  #
1736
- # Unlike methods in {Wx::PG::PropertyGrid}, this does not automatically update the display.
580
+ # Property representing image file(name). Like {Wx::PG::FileProperty},
581
+ # but has thumbnail of the image in front of the filename
582
+ # and autogenerates wildcard from available image handlers.
1737
583
  #
1738
- # <div class="wxrb-remark">
1739
- # <b>Remark:</b>
1740
- # <p>Use {Wx::PG::PropertyGrid#change_property_value} instead if you need to run through validation process and send property change event.
1741
- # </p>
1742
- # </div>
584
+ # Supported special attributes:
585
+ # - ::{Wx::PG::PG_DIALOG_TITLE}: Sets a specific title for the file dialog.
586
+ # - ::{Wx::PG::PG_FILE_DIALOG_STYLE}: Sets a specific {Wx::FileDialog} style for the file dialog.
587
+ # - ::{Wx::PG::PG_FILE_WILDCARD}: Sets wildcard (see {Wx::FileDialog} for format details), "All files..." is default.
1743
588
  #
1744
- # If you need to change property value in event, based on user input, use {Wx::PG::PGProperty#set_value_in_event} instead.
1745
- # @param value [nil,String,Integer,Float,Time,Wx::Font,Wx::Colour,Wx::Variant,Array<WxVariant>,Array<String>,ObjectWx::PG::ColourPropertyValue] The value to set.
1746
- # @param pList [Wx::Variant] Pointer to list variant that contains child values. Used to indicate which children should be marked as modified. Usually you just use NULL.
1747
- # @param flags [Integer] {Wx::PG::PG_SETVALUE_FLAGS::PG_SETVAL_REFRESH_EDITOR} is set by default, to refresh editor and redraw properties.
1748
- # @return [void]
1749
- def set_value(value, pList=nil, flags=Wx::PG::PG_SETVALUE_FLAGS::PG_SETVAL_REFRESH_EDITOR) end
1750
- alias_method :value=, :set_value
1751
-
1752
- # Set {Wx::Bitmap} taken from {Wx::BitmapBundle} in front of the value.
589
+ # - {Wx::PG::PG_FILE_SHOW_FULL_PATH}: Default true. When false, only the file name is shown (i.e. drive and directory are hidden).
590
+ # - {Wx::PG::PG_FILE_SHOW_RELATIVE_PATH}: If set, then the filename is shown relative to the given path string.
591
+ # - {Wx::PG::PG_FILE_INITIAL_PATH}: Sets the initial path of where to look for files.
1753
592
  #
1754
- # This bitmap may be ignored by custom cell renderers.
1755
- # @param bmp [Wx::BitmapBundle]
1756
- # @return [void]
1757
- def set_value_image(bmp) end
1758
- alias_method :value_image=, :set_value_image
1759
-
1760
- # Call this function in {Wx::PG::PGProperty#on_event}, OnButtonClick() etc.
593
+ # ## wxColourProperty
594
+ # <b>Useful alternate editor:</b> Choice.
595
+ # Represents {Wx::Colour}. {Wx::Button} is used to trigger a colour picker dialog. There are various sub-classing opportunities with this class. See below in {Wx::PG::SystemColourProperty} section for details.
596
+ # Supported special attributes:
1761
597
  #
1762
- # to change the property value based on user input.
598
+ # - {Wx::PG::PG_COLOUR_HAS_ALPHA}: If set to true allows user to edit the alpha colour component.
1763
599
  #
1764
- # <div class="wxrb-remark">
1765
- # <b>Remark:</b>
1766
- # <p>This method is const since it doesn't actually modify value, but posts given variant as pending value, stored in {Wx::PG::PropertyGrid}.
1767
- # </p>
1768
- # </div>
1769
- # @param value [nil,String,Integer,Float,Time,Wx::Font,Wx::Colour,Wx::Variant,Array<WxVariant>,Array<String>,ObjectWx::PG::ColourPropertyValue]
1770
- # @return [void]
1771
- def set_value_in_event(value) end
1772
- alias_method :value_in_event=, :set_value_in_event
1773
-
1774
- # Sets property's value to unspecified (i.e.
600
+ # ## wxFontProperty
601
+ # Represents {Wx::Font}. Various sub-properties are used to edit individual subvalues.
602
+ # Supported special attributes:
1775
603
  #
1776
- # Null variant).
1777
- # @return [void]
1778
- def set_value_to_unspecified; end
1779
-
1780
- # Call with false in {Wx::PG::PGProperty#on_set_value} to cancel value changes after all (i.e.
604
+ # - {Wx::PG::PG_DIALOG_TITLE}: Sets a specific title for the font dialog.
1781
605
  #
1782
- # cancel true returned by {Wx::PG::PGProperty#string_to_value} or {Wx::PG::PGProperty#int_to_value}).
1783
- # @param set [Boolean]
1784
- # @return [void]
1785
- def set_was_modified(set=true) end
1786
- alias_method :was_modified=, :set_was_modified
1787
-
1788
- # Updates composed values of parent non-category properties, recursively.
606
+ # ## wxSystemColourProperty
607
+ # Represents {Wx::Colour} and a system colour index. {Wx::Choice} is used to edit the value. Drop-down list has color images. Note that value type is {Wx::PG::ColourPropertyValue} instead of {Wx::Colour} (which {Wx::PG::ColourProperty} uses).
1789
608
  #
1790
- # Returns topmost property updated.
609
+ # In {Wx::PG::SystemColourProperty}, and its derived class {Wx::PG::ColourProperty}, there are various sub-classing features. To set a basic list of colour names, call {Wx::PG::PGProperty#set_choices}.
1791
610
  #
1792
- # <div class="wxrb-remark">
1793
- # <b>Remark:</b>
1794
- # <p>Must not call {Wx::PG::PGProperty#set_value} (as can be called in it).
1795
- # </p>
1796
- # </div>
1797
- # @return [Wx::PG::PGProperty]
1798
- def update_parent_values; end
1799
-
1800
- # Returns true if containing grid uses {Wx::PG::PG_EX_WINDOW_STYLES::PG_EX_AUTO_UNSPECIFIED_VALUES}.
1801
- # @return [Boolean]
1802
- def uses_auto_unspecified; end
1803
-
1804
- # Clear cells associated with property.
1805
- # @param ignoreWithFlags [Integer] Cells will not be cleared for properties having these flags set.
1806
- # @param recursively [Boolean] If true, apply this operation recursively in child properties.
1807
- # @return [void]
1808
- def clear_cells(ignoreWithFlags, recursively) end
1809
-
1810
- # Makes sure m_cells has size of column+1 (or more).
1811
- # @param column [Integer]
1812
- # @return [void]
1813
- def ensure_cells(column) end
1814
-
1815
- # Returns (direct) child property with given name (or NULL if not found), with hint index.
611
+ # ```ruby
612
+ # # Override in derived class to customize how colours are translated
613
+ # # to strings.
614
+ # def colour_to_string(col, index) end
1816
615
  #
1817
- # <div class="wxrb-remark">
1818
- # <b>Remark:</b>
1819
- # <p>Does not support scope (i.e. Parent.Child notation).
1820
- # </p>
1821
- # </div>
1822
- # @param name [String] Name of the child property to look for.
1823
- # @param hintIndex [Integer] Start looking for the child at this index.
1824
- # @return [Wx::PG::PGProperty]
1825
- def get_property_by_name_wh(name, hintIndex) end
1826
- alias_method :property_by_name_wh, :get_property_by_name_wh
1827
-
1828
- # Deletes all child properties.
1829
- # @return [void]
1830
- def empty; end
1831
-
1832
- # Returns true if child property is selected.
1833
- # @param recursive [Boolean]
1834
- # @return [Boolean]
1835
- def is_child_selected(recursive=false) end
1836
- alias_method :child_selected?, :is_child_selected
1837
-
616
+ # # Returns index of entry that triggers colour picker dialog
617
+ # # (default is last).
618
+ # def get_custom_colour_index; end
1838
619
  #
1839
- # @return [Wx::Variant]
1840
- def value_; end
620
+ # # Helper function to show the colour dialog
621
+ # def query_colour_from_user(variant) end
1841
622
  #
1842
- # @param val [nil,String,Integer,Float,Time,Wx::Font,Wx::Colour,Wx::Variant,Array<WxVariant>,Array<String>,ObjectWx::PG::ColourPropertyValue]
1843
- # @return [void]
1844
- def value_=(val); end
1845
-
1846
-
1847
- protected
1848
-
1849
- # @overload initialize()
1850
- # Default constructor.
1851
- #
1852
- # It is protected because {Wx::PG::PGProperty} is only a base class for other property classes.
1853
- # @return [Wx::PG::PGProperty]
1854
- # @overload initialize(label, name)
1855
- # Constructor.
1856
- #
1857
- # It is protected because {Wx::PG::PGProperty} is only a base class for other property classes. Non-abstract property classes should have constructor of this style:
1858
- #
1859
- # ```ruby
1860
- # class WxPointProperty < Wx::PG::PGProperty
623
+ # # Returns colour for given choice.
624
+ # # Default function returns Wx::SystemSettings.get_colour(index).
625
+ # def get_colour(index) end
626
+ # ```
627
+ #
628
+ # ## wxCursorProperty
629
+ # Represents a {Wx::Cursor}. {Wx::Choice} is used to edit the value. Drop-down list has cursor images under some (WXMSW) platforms.
630
+ #
631
+ # ## Creating Custom Properties
632
+ # New properties can be created by subclassing {Wx::PG::PGProperty} or one of the provided property classes, and (re)implementing necessary member functions. Below, each virtual member function has ample documentation about its purpose and any odd details which to keep in mind.
633
+ # Here is a very simple 'template' code:
634
+ #
635
+ # ``` ruby
636
+ # class MyProperty < Wx::PG::PGProperty
1861
637
  #
1862
- # def initialize(label = Wx::PG::PG_LABEL, name = Wx::PG::PG_LABEL, value = Wx::Point.new)
638
+ # # All arguments of this ctor must have a default value -
639
+ # # use Wx::PG::PG_LABEL for label and name
640
+ # def initialize(label = Wx::PG::PG_LABEL, name = Wx::PG::PG_LABEL, value = '')
1863
641
  # super(label, name)
1864
- #
1865
- # # should work in pretty much 100% of cases
642
+ # # self.value is Wx::Variant
1866
643
  # self.value = value
644
+ # end
1867
645
  #
1868
- # # add private child properties
1869
- # add_private_child( Wx::PG::IntProperty.new("X", Wx::PG::PG_LABEL,value.x))
1870
- # add_private_child( Wx::PG::IntProperty.new("Y", Wx::PG::PG_LABEL,value.y))
646
+ # def do_get_editor_class
647
+ # # Determines editor used by property.
648
+ # # You can replace 'TEXT_CTRL' below with any of these
649
+ # # builtin-in property editor identifiers: CHOICE, COMBO_BOX,
650
+ # # TEXT_CTRL_AND_BUTTON, CHOICE_AND_BUTTON, CHECK_BOX, SPIN_CTRL,
651
+ # # DATE_PICKER_CTRL.
652
+ # return Wx::PG::PG_EDITOR_TEXT_CTRL
1871
653
  # end
1872
654
  #
1873
- # # ...
655
+ # def value_to_string(value, argFlags)
656
+ # # TODO: Convert given property value to a string
657
+ # end
1874
658
  #
1875
- # end
1876
- # ```
1877
- # @param label [String]
1878
- # @param name [String]
1879
- # @return [Wx::PG::PGProperty]
1880
- def initialize(*args) end
1881
-
1882
- end # PGProperty
1883
-
1884
- # Helper class for managing choices of {Wx::PG::PropertyGrid} properties.
1885
- #
1886
- # Each entry can have label, value, bitmap, text colour, and background colour.
1887
- # {Wx::PG::PGChoices} uses reference counting, similar to other wxWidgets classes. This means that assignment operator and copy constructor only copy the reference and not the actual data. Use {Wx::PG::PGChoices#copy} member function to create a real copy.
1888
- #
1889
- # <div class="wxrb-remark">
1890
- # <b>Remark:</b>
1891
- # <p>If you do not specify value for entry, index is used.
1892
- # </p>
1893
- # </div>
1894
- #
1895
- # Category: {Wx::PG::PropertyGrid}
1896
- #
1897
- #
1898
- # @note This class is <b>untracked</b> and should not be derived from nor instances extended!
1899
- # @wxrb_require USE_PROPGRID
1900
- class PGChoices < ::Object
1901
-
1902
- # @overload initialize()
1903
- # Default constructor.
1904
- # @return [Wx::PG::PGChoices]
1905
- # @overload initialize(a)
1906
- # Copy constructor, uses reference counting.
659
+ # def string_to_value(variant, text, argFlags)
660
+ # # TODO: Adapt string to property value.
661
+ # end
1907
662
  #
1908
- # To create a real copy, use {Wx::PG::PGChoices#copy} member function instead.
1909
- # @param a [Wx::PG::PGChoices]
1910
- # @return [Wx::PG::PGChoices]
1911
- # @overload initialize(labels, values=(Wx::ArrayInt.new()))
1912
- # Constructor.
1913
- # @param labels [Array<String>] Labels for choices.
1914
- # @param values [Array<Integer>] Values for choices. If empty, indexes are used. Otherwise must have at least the same size as labels.
1915
- # @return [Wx::PG::PGChoices]
1916
- def initialize(*args) end
1917
-
1918
- # @overload add(arr, arrint)
1919
- # This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
1920
- # @param arr [Array<String>]
1921
- # @param arrint [Array<Integer>]
1922
- # @return [void]
1923
- # @overload add(label, value=Wx::PG::PG_INVALID_VALUE)
1924
- # Adds a single choice item.
1925
- # @param label [String] Label for added choice.
1926
- # @param value [Integer] Value for added choice. If unspecified, index is used.
1927
- # @return [Wx::PG::PGChoiceEntry]
1928
- # @overload add(label, bitmap, value=Wx::PG::PG_INVALID_VALUE)
1929
- # Adds a single item, with bitmap.
1930
- # @param label [String]
1931
- # @param bitmap [Wx::Bitmap]
1932
- # @param value [Integer]
1933
- # @return [Wx::PG::PGChoiceEntry]
1934
- # @overload add(entry)
1935
- # Adds a single item with full entry information.
1936
- # @param entry [Wx::PG::PGChoiceEntry]
1937
- # @return [Wx::PG::PGChoiceEntry]
1938
- def add(*args) end
1939
-
1940
- # Adds a single item, sorted.
1941
- # @param label [String]
1942
- # @param value [Integer]
1943
- # @return [Wx::PG::PGChoiceEntry]
1944
- def add_as_sorted(label, value=Wx::PG::PG_INVALID_VALUE) end
1945
-
1946
- # Assigns choices data, using reference counting.
1947
- #
1948
- # To create a real copy, use {Wx::PG::PGChoices#copy} member function instead.
1949
- # @param a [Wx::PG::PGChoices]
1950
- # @return [void]
1951
- def assign(a) end
1952
-
1953
- # Deletes all items.
1954
- # @return [void]
1955
- def clear; end
1956
-
1957
- # Returns a real copy of the choices.
1958
- # @return [Wx::PG::PGChoices]
1959
- def copy; end
1960
-
1961
- # @return [void]
1962
- def ensure_data; end
1963
-
1964
- # Returns label of item.
1965
- # @param ind [Integer]
1966
- # @return [Wx::String]
1967
- def get_label(ind) end
1968
- alias_method :label, :get_label
1969
-
1970
- # Returns number of items.
1971
- # @return [Integer]
1972
- def get_count; end
1973
- alias_method :count, :get_count
1974
-
1975
- # Returns value of item.
1976
- # @param ind [Integer]
1977
- # @return [Integer]
1978
- def get_value(ind) end
1979
- alias_method :value, :get_value
1980
-
1981
- # Returns array of values matching the given strings.
1982
- #
1983
- # Unmatching strings result in {Wx::PG::PG_INVALID_VALUE} entry in array.
1984
- # @param strings [Array<String>]
1985
- # @return [Array<Integer>]
1986
- def get_values_for_strings(strings) end
1987
- alias_method :values_for_strings, :get_values_for_strings
1988
-
1989
- # Returns array of indices matching given strings.
1990
- #
1991
- # Unmatching strings are added to 'unmatched', if not NULL.
1992
- # @param strings [Array<String>]
1993
- # @param unmatched [Array,nil]
1994
- # @return [Array<Integer>]
1995
- def get_indices_for_strings(strings, unmatched=nil) end
1996
- alias_method :indices_for_strings, :get_indices_for_strings
1997
-
1998
- # @overload index(label)
1999
- # Returns index of item with given label.
2000
- # @param label [String]
2001
- # @return [Integer]
2002
- # @overload index(val)
2003
- # Returns index of item with given value.
2004
- # @param val [Integer]
2005
- # @return [Integer]
2006
- def index(*args) end
2007
-
2008
- # @overload insert(label, index, value=Wx::PG::PG_INVALID_VALUE)
2009
- # Inserts a single item.
2010
- # @param label [String]
2011
- # @param index [Integer]
2012
- # @param value [Integer]
2013
- # @return [Wx::PG::PGChoiceEntry]
2014
- # @overload insert(entry, index)
2015
- # Inserts a single item with full entry information.
2016
- # @param entry [Wx::PG::PGChoiceEntry]
2017
- # @param index [Integer]
2018
- # @return [Wx::PG::PGChoiceEntry]
2019
- def insert(*args) end
2020
-
2021
- # Returns false if this is a constant empty set of choices, which should not be modified.
2022
- # @return [Boolean]
2023
- def is_ok; end
2024
- alias_method :ok?, :is_ok
2025
-
2026
- # Returns item at given index.
2027
- # @param i [Integer]
2028
- # @return [Wx::PG::PGChoiceEntry]
2029
- def item(i) end
2030
-
2031
- # Removes count items starting at position nIndex.
2032
- # @param nIndex [Integer]
2033
- # @param count [Integer]
2034
- # @return [void]
2035
- def remove_at(nIndex, count=1) end
2036
-
2037
- # This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
2038
- # @param labels [Array<String>]
2039
- # @param values [Array<Integer>]
2040
- # @return [void]
2041
- def set(labels, values=(Wx::ArrayInt.new())) end
2042
-
2043
- # Creates exclusive copy of current choices.
2044
- # @return [void]
2045
- def alloc_exclusive; end
2046
-
2047
- # Returns array of choice labels.
2048
- # @return [Array<String>]
2049
- def get_labels; end
2050
- alias_method :labels, :get_labels
2051
-
2052
- # @overload [](i)
2053
- # @param i [Integer]
2054
- # @return [Wx::PG::PGChoiceEntry]
2055
- # @overload [](i)
2056
- # @param i [Integer]
2057
- # @return [Wx::PG::PGChoiceEntry]
2058
- def [](*args) end
2059
-
2060
- end # PGChoices
2061
-
2062
- # Contains information related to property's OnCustomPaint.
2063
- #
2064
- #
2065
- #
2066
- #
2067
- # @note This class is <b>untracked</b> and should not be derived from nor instances extended!
2068
- # @wxrb_require USE_PROPGRID
2069
- class PGPaintData < ::Object
2070
-
2071
- # {Wx::PG::PropertyGrid}
2072
- #
2073
- #
2074
- # @return [Wx::PG::PropertyGrid]
2075
- def parent; end
2076
- # {Wx::PG::PropertyGrid}
2077
- #
2078
- #
2079
- # @param val [Wx::PG::PropertyGrid]
2080
- # @return [void]
2081
- def parent=(val); end
2082
-
2083
- # Normally -1, otherwise index to drop-down list item that has to be drawn.
2084
- #
2085
- #
2086
- # @return [Integer]
2087
- def choice_item; end
2088
- # Normally -1, otherwise index to drop-down list item that has to be drawn.
2089
- #
2090
- #
2091
- # @param val [Integer]
2092
- # @return [void]
2093
- def choice_item=(val); end
2094
-
2095
- # Set to drawn width in OnCustomPaint (optional).
2096
- #
2097
- #
2098
- # @return [Integer]
2099
- def drawn_width; end
2100
- # Set to drawn width in OnCustomPaint (optional).
2101
- #
2102
- #
2103
- # @param val [Integer]
2104
- # @return [void]
2105
- def drawn_width=(val); end
2106
-
2107
- # In a measure item call, set this to the height of item at m_choiceItem index.
2108
- #
663
+ # protected
664
+ # # ...
665
+ # end
666
+ # ```
2109
667
  #
2110
- # @return [Integer]
2111
- def drawn_height; end
2112
- # In a measure item call, set this to the height of item at m_choiceItem index.
668
+ # Category: {Wx::PG::PropertyGrid}
669
+ # @see wxPropertyGrid Property Attribute Identifiers
670
+ #
671
+ # @see wxPropertyGrid Property Attribute Identifiers
672
+ #
673
+ # @see wxPropertyGrid Property Attribute Identifiers
674
+ #
675
+ # @see wxPropertyGrid Property Attribute Identifiers
676
+ #
677
+ # @see wxPropertyGrid Property Attribute Identifiers
678
+ #
679
+ # @see wxPropertyGrid Property Attribute Identifiers
680
+ #
681
+ # @see wxPropertyGrid Property Attribute Identifiers
682
+ #
683
+ #
684
+ # @wxrb_require USE_PROPGRID
685
+ class PGProperty < Object
686
+
687
+ # This virtual function is called after m_value has been set.
688
+ #
689
+ # <div class="wxrb-remark">
690
+ # <b>Remark:</b>
691
+ # <p>
692
+ #
693
+ # - If m_value was set to Null variant (i.e. unspecified value), {Wx::PG::PGProperty#on_set_value} will not be called.
694
+ # - m_value may be of any variant type. Typically properties internally support only one variant type, and as such {Wx::PG::PGProperty#on_set_value} provides a good opportunity to convert supported values into internal type.
695
+ # - Default implementation does nothing.
696
+ #
697
+ # </p>
698
+ # </div>
699
+ # @return [void]
700
+ def on_set_value; end
701
+
702
+ # Override this to return something else than m_value as the value.
703
+ # @return [Wx::Variant]
704
+ def do_get_value; end
705
+
706
+ # Implement this function in derived class to check the value.
707
+ #
708
+ # Return true if it is ok. Returning false prevents property change events from occurring.
709
+ #
710
+ # <div class="wxrb-remark">
711
+ # <b>Remark:</b>
712
+ # <p>
713
+ #
714
+ # - Default implementation always returns true.
715
+ #
716
+ # </p>
717
+ # </div>
718
+ # @param value [Wx::Variant]
719
+ # @param validationInfo [Wx::PG::PGValidationInfo]
720
+ # @return [Boolean]
721
+ def validate_value(value, validationInfo) end
722
+
723
+ # Converts text into {Wx::Variant} value appropriate for this property.
724
+ #
725
+ # Returns true if resulting {Wx::Variant} value was different.
726
+ #
727
+ # <div class="wxrb-remark">
728
+ # <b>Remark:</b>
729
+ # <p>Default implementation converts semicolon delimited tokens into child values. Only works for properties with children.
730
+ # </p>
731
+ # </div>
732
+ #
733
+ # You might want to take into account that m_value is Null variant if property value is unspecified (which is usually only case if you explicitly enabled that sort behaviour).
734
+ # @param variant [Wx::Variant] On function entry this is the old value (should not be {Wx::NullVariant} in normal cases). Translated value must be assigned back to it.
735
+ # @param text [String] Text to be translated into variant.
736
+ # @param argFlags [Integer] If {Wx::PG::PG_MISC_ARG_FLAGS::PG_FULL_VALUE} is set, returns complete, storable value instead of displayable one (they may be different). If {Wx::PG::PG_MISC_ARG_FLAGS::PG_COMPOSITE_FRAGMENT} is set, text is interpreted as a part of composite property string value (as generated by {Wx::PG::PGProperty#value_to_string} called with this same flag).
737
+ # @return [Boolean]
738
+ def string_to_value(variant, text, argFlags=0) end
739
+
740
+ # Converts integer (possibly a choice selection) into {Wx::Variant} value appropriate for this property.
741
+ #
742
+ # Returns true if resulting {Wx::Variant} value was different.
743
+ #
744
+ # <div class="wxrb-remark">
745
+ # <b>Remark:</b>
746
+ # <p>
747
+ #
748
+ # - If property is not supposed to use choice or spinctrl or other editor with int-based value, it is not necessary to implement this method.
749
+ # - Default implementation simply assign given int to m_value.
750
+ # - If property uses choice control, and displays a dialog on some choice items, then it is preferred to display that dialog in IntToValue instead of OnEvent.
751
+ # - You might want to take into account that m_value is Mull variant if property value is unspecified (which is usually only case if you explicitly enabled that sort behaviour).
752
+ #
753
+ # </p>
754
+ # </div>
755
+ # @param variant [Wx::Variant] On function entry this is the old value (should not be {Wx::NullVariant} in normal cases). Translated value must be assigned back to it.
756
+ # @param number [Integer] Integer to be translated into variant.
757
+ # @param argFlags [Integer] If {Wx::PG::PG_MISC_ARG_FLAGS::PG_FULL_VALUE} is set, returns complete, storable value instead of displayable one.
758
+ # @return [Boolean]
759
+ def int_to_value(variant, number, argFlags=0) end
760
+
761
+ # Converts property value into a text representation.
762
+ #
763
+ # <div class="wxrb-remark">
764
+ # <b>Remark:</b>
765
+ # <p>Default implementation calls {Wx::PG::PGProperty#generate_composed_value}.
766
+ # </p>
767
+ # </div>
768
+ # @param value [Wx::Variant] Value to be converted.
769
+ # @param argFlags [Integer] If 0 (default value), then displayed string is returned. If {Wx::PG::PG_MISC_ARG_FLAGS::PG_FULL_VALUE} is set, returns complete, storable string value instead of displayable. If {Wx::PG::PG_MISC_ARG_FLAGS::PG_EDITABLE_VALUE} is set, returns string value that must be editable in textctrl. If {Wx::PG::PG_MISC_ARG_FLAGS::PG_COMPOSITE_FRAGMENT} is set, returns text that is appropriate to display as a part of string property's composite text representation.
770
+ # @return [String]
771
+ def value_to_string(value, argFlags=0) end
772
+
773
+ # Converts string to a value, and if successful, calls {Wx::PG::PGProperty#set_value} on it.
774
+ #
775
+ # Default behaviour is to do nothing.
776
+ #
777
+ # true if value was changed.
778
+ # @param text [String] String to get the value from.
779
+ # @param flags [Integer] If {Wx::PG::PG_MISC_ARG_FLAGS::PG_FULL_VALUE} is set, the function sets complete, storable value instead of displayable one (they may be different). {Wx::PG::PG_MISC_ARG_FLAGS::PG_PROGRAMMATIC_VALUE} flag is used to indicate that value is being set programmatically (i.e. operation is not caused by user input). If {Wx::PG::PG_MISC_ARG_FLAGS::PG_REPORT_ERROR} is set, a special action should be performed if string couldn't have been successfully converted to the valid value (e.g. a special value can be set in this case).
780
+ # @return [Boolean]
781
+ def set_value_from_string(text, flags=Wx::PG::PG_MISC_ARG_FLAGS::PG_PROGRAMMATIC_VALUE) end
782
+ alias_method :value_from_string=, :set_value_from_string
783
+
784
+ # Converts integer to a value, and if successful, calls {Wx::PG::PGProperty#set_value} on it.
785
+ #
786
+ # Default behaviour is to do nothing.
787
+ #
788
+ # true if value was changed.
789
+ # @param value [Integer] Int to get the value from.
790
+ # @param flags [Integer] If has {Wx::PG::PG_MISC_ARG_FLAGS::PG_FULL_VALUE}, then the value given is an actual value and not an index.
791
+ # @return [Boolean]
792
+ def set_value_from_int(value, flags=0) end
793
+ alias_method :value_from_int=, :set_value_from_int
794
+
795
+ # Returns size of the custom painted image in front of property.
796
+ #
797
+ # This method must be overridden to return non-default value if OnCustomPaint is to be called.
798
+ #
799
+ # <div class="wxrb-remark">
800
+ # <b>Remark:</b>
801
+ # <p>
802
+ #
803
+ # - Default behaviour is to return {size(0,0)}, which means no image.
804
+ # - Default image width or height is indicated with dimension -1.
805
+ # - You can also return {Wx::PG::PG_DEFAULT_IMAGE_SIZE} which equals {Wx::DEFAULT_SIZE}.
806
+ #
807
+ # </p>
808
+ # </div>
809
+ # @param item [Integer] Normally -1, but can be an index to the property's list of items.
810
+ # @return [Wx::Size]
811
+ def on_measure_image(item=-1) end
812
+
813
+ # Events received by editor widgets are processed here.
814
+ #
815
+ # Note that editor class usually processes most events. Some, such as button press events of TextCtrlAndButton class, can be handled here. Also, if custom handling for regular events is desired, then that can also be done (for example, {Wx::PG::SystemColourProperty} custom handles {Wx::EVT_CHOICE} to display colour picker dialog when 'custom' selection is made).
816
+ # If the event causes value to be changed, {Wx::PG::PGProperty#set_value_in_event} should be called to set the new value.
817
+ # The parameter event is the associated {Wx::Event}.
818
+ #
819
+ # Should
820
+ #
821
+ # return true if any changes in value should be reported.
822
+ #
823
+ # <div class="wxrb-remark">
824
+ # <b>Remark:</b>
825
+ # <p>
826
+ #
827
+ # - If property uses choice control, and displays a dialog on some choice items, then it is preferred to display that dialog in IntToValue instead of OnEvent.
828
+ #
829
+ # </p>
830
+ # </div>
831
+ # @param propgrid [Wx::PG::PropertyGrid]
832
+ # @param wnd_primary [Wx::Window]
833
+ # @param event [Wx::Event]
834
+ # @return [Boolean]
835
+ def on_event(propgrid, wnd_primary, event) end
836
+
837
+ # Called after value of a child property has been altered.
838
+ #
839
+ # Must return new value of the whole property (after any alterations warranted by child's new value).
840
+ # Note that this function is usually called at the time that value of this property, or given child property, is still pending for change, and as such, result of {Wx::PG::PGProperty#get_value} or m_value should not be relied on.
841
+ # Sample pseudo-code implementation:
842
+ #
843
+ # ```ruby
844
+ # class MyProperty < Wx::PG::FlagsProperty
845
+ #
846
+ # def child_changed(thisValue, childIndex, childValue)
847
+ # # Acquire reference to actual type of data stored in variant
848
+ # flags = thisValue.object;
849
+ # case childIndex
850
+ # when 0
851
+ # flags.sub_prop1 = childValue.to_i
852
+ # when 1
853
+ # flags.sub_prop2 = childValue.to_s
854
+ # # ...
855
+ # end
856
+ # # return altered data
857
+ # Wx::Variant.new(flags)
858
+ # end
859
+ #
860
+ # end
861
+ # ```
862
+ #
863
+ # Modified value of the whole property.
864
+ # @param thisValue [Wx::Variant] Value of this property. Changed value should be returned (in previous versions of {Wx::PG::PropertyGrid} it was only necessary to write value back to this argument).
865
+ # @param childIndex [Integer] Index of child changed (you can use Item(childIndex) to get child property).
866
+ # @param childValue [Wx::Variant] (Pending) value of the child property.
867
+ # @return [Wx::Variant]
868
+ def child_changed(thisValue, childIndex, childValue) end
869
+
870
+ # Returns pointer to an instance of used editor.
871
+ # @return [Wx::PG::PGEditor]
872
+ def do_get_editor_class; end
873
+
874
+ # Returns pointer to the {Wx::Validator} that should be used with the editor of this property (NULL for no validator).
875
+ #
876
+ # Setting validator explicitly via \#set_property_validator will override this.
877
+ # In most situations, code like this should work well:
878
+ #
879
+ # ```ruby
880
+ # class MyPropertyClass < Wx::PG::IntProperty
881
+ #
882
+ # class << self
883
+ # def validator
884
+ # @validator ||= MyValidator.new(...)
885
+ # end
886
+ # end
887
+ #
888
+ # # ...
889
+ #
890
+ # def do_get_validator
891
+ # MyPropertyClass.validator
892
+ # end
893
+ #
894
+ # # ...
895
+ #
896
+ # end
897
+ # ```
898
+ #
899
+ # <div class="wxrb-remark">
900
+ # <b>Remark:</b>
901
+ # <p>You can get common filename validator by returning {Wx::PG::FileProperty.get_class_validator}. {Wx::PG::DirProperty}, for example, uses it.
902
+ # </p>
903
+ # </div>
904
+ # @return [Wx::Validator]
905
+ def do_get_validator; end
906
+
907
+ # Override to paint an image in front of the property value text or drop-down list item (but only if {Wx::PG::PGProperty#on_measure_image} is overridden as well).
908
+ #
909
+ # If property's {Wx::PG::PGProperty#on_measure_image} returns size that has height != 0 but less than row height ( < 0 has special meanings), {Wx::PG::PropertyGrid} calls this method to draw a custom image in a limited area in front of the editor control or value text/graphics, and if control has drop-down list, then the image is drawn there as well (even in the case {Wx::PG::PGProperty#on_measure_image} returned higher height than row height).
910
+ # NOTE: Following applies when {Wx::PG::PGProperty#on_measure_image} returns a "flexible" height ( using <code>wxPG_FLEXIBLE_SIZE(W,H)</code> macro), which implies variable height items: If (rect.x+rect.width) is < 0, then this is a measure item call, which means that dc is invalid and only thing that should be done is to set paintdata.m_drawnHeight to the height of the image of item at index paintdata.m_choiceItem. This call may be done even as often as once every drop-down popup show.
911
+ #
912
+ # <div class="wxrb-remark">
913
+ # <b>Remark:</b>
914
+ # <p>
915
+ #
916
+ # - You can actually exceed rect width, but if you do so then paintdata.m_drawnWidth must be set to the full width drawn in pixels.
917
+ # - Due to technical reasons, rect's height will be default even if custom height was reported during measure call.
918
+ # - Brush is guaranteed to be default background colour. It has been already used to clear the background of area being painted. It can be modified.
919
+ # - Pen is guaranteed to be 1-wide 'black' (or whatever is the proper colour) pen for drawing framing rectangle. It can be changed as well.
920
+ #
921
+ # </p>
922
+ # </div>
923
+ # @see Wx::PG::PGProperty#value_to_string
924
+ # @param dc [Wx::DC] {Wx::DC} to paint on.
925
+ # @param rect [Wx::Rect] Box reserved for custom graphics. Includes surrounding rectangle, if any. If x+width is < 0, then this is a measure item call (see above).
926
+ # @param paintdata [Wx::PG::PGPaintData] {Wx::PG::PGPaintData} structure with much useful data about painted item.
927
+ # @return [void]
928
+ def on_custom_paint(dc, rect, paintdata) end
929
+
930
+ # Returns which choice is currently selected.
931
+ #
932
+ # Only applies to properties which have choices.
933
+ # Needs to reimplemented in derived class if property value does not map directly to a choice. Integer as index, bool, and string usually do.
934
+ # @return [Integer]
935
+ def get_choice_selection; end
936
+ alias_method :choice_selection, :get_choice_selection
937
+
938
+ # Refresh values of child properties.
939
+ #
940
+ # Automatically called after value is set.
941
+ # @return [void]
942
+ def refresh_children; end
943
+
944
+ # Reimplement this member function to add special handling for attributes of this property.
945
+ #
946
+ # Return false to have the attribute automatically stored in m_attributes. Default implementation simply does that and nothing else.
947
+ #
948
+ # <div class="wxrb-remark">
949
+ # <b>Remark:</b>
950
+ # <p>To actually set property attribute values from the application, use {Wx::PG::PGProperty#set_attribute} instead.
951
+ # </p>
952
+ # </div>
953
+ # @param name [String]
954
+ # @param value [Wx::Variant]
955
+ # @return [Boolean]
956
+ def do_set_attribute(name, value) end
957
+
958
+ # Returns value of an attribute.
959
+ #
960
+ # Override if custom handling of attributes is needed.
961
+ # Default implementation simply return NULL variant.
962
+ # @param name [String]
963
+ # @return [Wx::Variant]
964
+ def do_get_attribute(name) end
965
+
966
+ # Returns instance of a new {Wx::PG::PGEditorDialogAdapter} instance, which is used when user presses the (optional) button next to the editor control;.
967
+ #
968
+ # Default implementation returns NULL (i.e. no action is generated when button is pressed).
969
+ # @return [Wx::PG::PGEditorDialogAdapter]
970
+ def get_editor_dialog; end
971
+ alias_method :editor_dialog, :get_editor_dialog
972
+
973
+ # Called whenever validation has failed with given pending value.
974
+ #
975
+ # <div class="wxrb-remark">
976
+ # <b>Remark:</b>
977
+ # <p>If you implement this in your custom property class, please remember to call the base implementation as well, since they may use it to revert property into pre-change state.
978
+ # </p>
979
+ # </div>
980
+ # @param pendingValue [Wx::Variant]
981
+ # @return [void]
982
+ def on_validation_failure(pendingValue) end
983
+
984
+ # Append a new choice to property's list of choices.
985
+ #
986
+ # Index to added choice.
987
+ # @param label [String] Label for added choice.
988
+ # @param value [Integer] Value for new choice. Do not specify if you wish this to equal choice index.
989
+ # @return [Integer]
990
+ def add_choice(label, value=Wx::PG::PG_INVALID_VALUE) end
991
+
992
+ # Adds a private child property.
993
+ #
994
+ # If you use this instead of {Wx::PG::PropertyGridInterface#insert} or {Wx::PG::PropertyGridInterface#append_in}, then property's parental type will automatically be set up to {Wx::PG::PGPropertyFlags::PG_PROP_AGGREGATE}. In other words, all properties of this property will become private.
995
+ # @param prop [Wx::PG::PGProperty]
996
+ # @return [void]
997
+ def add_private_child(prop) end
998
+
999
+ # Adapts list variant into proper value using consecutive {Wx::PG::PGProperty#child_changed} calls.
1000
+ # @param list [Wx::Variant]
1001
+ # @param value [Wx::Variant]
1002
+ # @return [void]
1003
+ def adapt_list_to_value(list, value) end
1004
+
1005
+ # Use this member function to add independent (i.e.
1006
+ #
1007
+ # regular) children to a property.
1008
+ # Appended childProperty.
1009
+ #
1010
+ # <div class="wxrb-remark">
1011
+ # <b>Remark:</b>
1012
+ # <p>{Wx::PG::PropertyGrid} is not automatically refreshed by this function.
1013
+ # </p>
1014
+ # </div>
1015
+ # @see Wx::PG::PGProperty#insert_child
1016
+ # @see Wx::PG::PGProperty#add_private_child
1017
+ # @param childProperty [Wx::PG::PGProperty]
1018
+ # @return [Wx::PG::PGProperty]
1019
+ def append_child(childProperty) end
1020
+
1021
+ # Determines, recursively, if all children are not unspecified.
1022
+ # @param pendingList [Wx::Variant] Assumes members in this {Wx::Variant} list as pending replacement values.
1023
+ # @return [Boolean]
1024
+ def are_all_children_specified(pendingList=nil) end
1025
+
1026
+ # Returns true if children of this property are component values (for instance, points size, face name, and is_underlined are component values of a font).
1027
+ # @return [Boolean]
1028
+ def are_children_components; end
1029
+
1030
+ # Sets or clears given property flag.
1031
+ #
1032
+ # Mainly for internal use.
1033
+ #
1034
+ # <div class="wxrb-remark">
1035
+ # <b>Remark:</b>
1036
+ # <p>Setting a property flag never has any side-effect, and is intended almost exclusively for internal use. So, for example, if you want to disable a property, call
1037
+ # ```ruby
1038
+ # enable(false)
1039
+ # ```
1040
+ # instead of setting {Wx::PG::PGPropertyFlags::PG_PROP_DISABLED} flag.
1041
+ # </p>
1042
+ # </div>
1043
+ # @see Wx::PG::PGProperty#has_flag
1044
+ # @see GetFlags()
1045
+ # @param flag [Wx::PGPropertyFlags]
1046
+ # @param set [Boolean]
1047
+ # @return [void]
1048
+ def change_flag(flag, set) end
1049
+
1050
+ # Deletes children of the property.
1051
+ # @return [void]
1052
+ def delete_children; end
1053
+
1054
+ # Removes entry from property's {Wx::PG::PGChoices} and editor control (if it is active).
1055
+ #
1056
+ # If selected item is deleted, then the value is set to unspecified.
1057
+ # @param index [Integer]
1058
+ # @return [void]
1059
+ def delete_choice(index) end
1060
+
1061
+ # Enables or disables the property.
1062
+ #
1063
+ # Disabled property usually appears as having grey text.
1064
+ # @see Wx::PG::PropertyGridInterface#enable_property
1065
+ # @param enable [Boolean] If false, property is disabled instead.
1066
+ # @return [void]
1067
+ def enable(enable=true) end
1068
+
1069
+ # Call to enable or disable usage of common value (integer value that can be selected for properties instead of their normal values) for this property.
1070
+ #
1071
+ # Common values are disabled by the default for all properties.
1072
+ # @param enable [Boolean]
1073
+ # @return [void]
1074
+ def enable_common_value(enable=true) end
1075
+
1076
+ # Composes text from values of child properties.
1077
+ # @return [String]
1078
+ def generate_composed_value; end
1079
+
1080
+ # Returns property's label.
1081
+ # @return [Wx::String]
1082
+ def get_label; end
1083
+ alias_method :label, :get_label
1084
+
1085
+ # @overload get_attribute(name)
1086
+ # Returns property attribute value, null variant if not found.
1087
+ #
1088
+ # <div class="wxrb-remark">
1089
+ # <b>Remark:</b>
1090
+ # <p>For built-in attribute returns null variant if extra style {Wx::PG::PG_EX_WINDOW_STYLES::PG_EX_WRITEONLY_BUILTIN_ATTRIBUTES} is set.
1091
+ # </p>
1092
+ # </div>
1093
+ # @param name [String]
1094
+ # @return [Wx::Variant]
1095
+ # @overload get_attribute(name, defVal)
1096
+ # Returns named attribute, as string, if found.
1097
+ #
1098
+ # Otherwise defVal is returned.
1099
+ #
1100
+ # <div class="wxrb-remark">
1101
+ # <b>Remark:</b>
1102
+ # <p>For built-in attribute returns defVal if extra style {Wx::PG::PG_EX_WINDOW_STYLES::PG_EX_WRITEONLY_BUILTIN_ATTRIBUTES} is set.
1103
+ # </p>
1104
+ # </div>
1105
+ # @param name [String]
1106
+ # @param defVal [String]
1107
+ # @return [String]
1108
+ def get_attribute(*args) end
1109
+ alias_method :attribute, :get_attribute
1110
+
1111
+ # Returns named attribute, as long, if found.
1112
+ #
1113
+ # Otherwise defVal is returned.
1114
+ #
1115
+ # <div class="wxrb-remark">
1116
+ # <b>Remark:</b>
1117
+ # <p>For built-in attribute returns defVal if extra style {Wx::PG::PG_EX_WINDOW_STYLES::PG_EX_WRITEONLY_BUILTIN_ATTRIBUTES} is set.
1118
+ # </p>
1119
+ # </div>
1120
+ # @param name [String]
1121
+ # @param defVal [Integer]
1122
+ # @return [Integer]
1123
+ def get_attribute_as_long(name, defVal) end
1124
+ alias_method :attribute_as_long, :get_attribute_as_long
1125
+
1126
+ # Returns named attribute, as double, if found.
1127
+ #
1128
+ # Otherwise defVal is returned.
1129
+ #
1130
+ # <div class="wxrb-remark">
1131
+ # <b>Remark:</b>
1132
+ # <p>For built-in attribute returns defVal if extra style {Wx::PG::PG_EX_WINDOW_STYLES::PG_EX_WRITEONLY_BUILTIN_ATTRIBUTES} is set.
1133
+ # </p>
1134
+ # </div>
1135
+ # @param name [String]
1136
+ # @param defVal [Float]
1137
+ # @return [Float]
1138
+ def get_attribute_as_double(name, defVal) end
1139
+ alias_method :attribute_as_double, :get_attribute_as_double
1140
+
1141
+ # Returns map-like storage of property's attributes.
1142
+ #
1143
+ # <div class="wxrb-remark">
1144
+ # <b>Remark:</b>
1145
+ # <p>If extra style {Wx::PG::PG_EX_WINDOW_STYLES::PG_EX_WRITEONLY_BUILTIN_ATTRIBUTES} is set, then builtin-attributes are not included in the storage.
1146
+ # </p>
1147
+ # </div>
1148
+ # @return [Wx::PGAttributeStorage]
1149
+ def get_attributes; end
1150
+ alias_method :attributes, :get_attributes
1151
+
1152
+ # Returns attributes as list {Wx::Variant}.
1153
+ #
1154
+ # <div class="wxrb-remark">
1155
+ # <b>Remark:</b>
1156
+ # <p>If extra style {Wx::PG::PG_EX_WINDOW_STYLES::PG_EX_WRITEONLY_BUILTIN_ATTRIBUTES} is set, then builtin-attributes are not included in the list.
1157
+ # </p>
1158
+ # </div>
1159
+ # @return [Wx::Variant]
1160
+ def get_attributes_as_list; end
1161
+ alias_method :attributes_as_list, :get_attributes_as_list
1162
+
1163
+ # Returns editor used for given column.
1164
+ #
1165
+ # NULL for no editor.
1166
+ # @param column [Integer]
1167
+ # @return [Wx::PG::PGEditor]
1168
+ def get_column_editor(column) end
1169
+ alias_method :column_editor, :get_column_editor
1170
+
1171
+ # Returns property's base name (i.e.
1172
+ #
1173
+ # parent's name is not added in any case).
1174
+ # @return [Wx::String]
1175
+ def get_base_name; end
1176
+ alias_method :base_name, :get_base_name
1177
+
1178
+ # Returns {Wx::PG::PGCell} of given column.
1179
+ #
1180
+ # <div class="wxrb-remark">
1181
+ # <b>Remark:</b>
1182
+ # <p>const version of this member function returns 'default' {Wx::PG::PGCell} object if the property itself didn't hold cell data.
1183
+ # </p>
1184
+ # </div>
1185
+ # @param column [Integer]
1186
+ # @return [Wx::PG::PGCell]
1187
+ def get_cell_or_default(column) end
1188
+ alias_method :cell_or_default, :get_cell_or_default
1189
+
1190
+ # Returns {Wx::PG::PGCell} of given column, creating one if necessary.
1191
+ # @param column [Integer]
1192
+ # @return [Wx::PG::PGCell]
1193
+ def get_cell(column) end
1194
+ alias_method :cell, :get_cell
1195
+
1196
+ # Returns number of child properties.
1197
+ # @return [Integer]
1198
+ def get_child_count; end
1199
+ alias_method :child_count, :get_child_count
1200
+
1201
+ # Returns height of children, recursively, and by taking expanded/collapsed status into account.
1202
+ # @param lh [Integer] Line height. Pass result of {Wx::PG::PGProperty#get_grid}->GetRowHeight() here.
1203
+ # @param iMax [Integer] Only used (internally) when finding property y-positions.
1204
+ # @return [Integer]
1205
+ def get_children_height(lh, iMax=-1) end
1206
+ alias_method :children_height, :get_children_height
1207
+
1208
+ # Returns read-only reference to property's list of choices.
1209
+ # @return [Wx::PG::PGChoices]
1210
+ def get_choices; end
1211
+ alias_method :choices, :get_choices
1212
+
1213
+ # Gets managed client object of a property.
1214
+ # @return [Object]
1215
+ def get_client_object; end
1216
+ alias_method :client_object, :get_client_object
1217
+
1218
+ # Returns property's default value.
1219
+ #
1220
+ # If property's value type is not a built-in one, and "DefaultValue" attribute is not defined, then this function usually returns Null variant.
1221
+ # @return [Wx::Variant]
1222
+ def get_default_value; end
1223
+ alias_method :default_value, :get_default_value
1224
+
1225
+ # Returns common value selected for this property.
1226
+ #
1227
+ # -1 for none.
1228
+ # @return [Integer]
1229
+ def get_common_value; end
1230
+ alias_method :common_value, :get_common_value
1231
+
1232
+ # @return [Integer]
1233
+ def get_depth; end
1234
+ alias_method :depth, :get_depth
1235
+
1236
+ # Return number of displayed common values for this property.
1237
+ # @return [Integer]
1238
+ def get_displayed_common_value_count; end
1239
+ alias_method :displayed_common_value_count, :get_displayed_common_value_count
1240
+
1241
+ # Returns property's displayed text.
1242
+ # @return [String]
1243
+ def get_displayed_string; end
1244
+ alias_method :displayed_string, :get_displayed_string
1245
+
1246
+ # Returns {Wx::PG::PGEditor} that will be used and created when property becomes selected.
1247
+ #
1248
+ # Returns more accurate value than {Wx::PG::PGProperty#do_get_editor_class}.
1249
+ # @return [Wx::PG::PGEditor]
1250
+ def get_editor_class; end
1251
+ alias_method :editor_class, :get_editor_class
1252
+
1253
+ # Returns property's hint text (shown in empty value cell).
1254
+ # @return [String]
1255
+ def get_hint_text; end
1256
+ alias_method :hint_text, :get_hint_text
1257
+
1258
+ # Returns property grid where property lies.
1259
+ # @return [Wx::PG::PropertyGrid]
1260
+ def get_grid; end
1261
+ alias_method :grid, :get_grid
1262
+
1263
+ # Returns owner {Wx::PG::PropertyGrid}, but only if one is currently on a page displaying this property.
1264
+ # @return [Wx::PG::PropertyGrid]
1265
+ def get_grid_if_displayed; end
1266
+ alias_method :grid_if_displayed, :get_grid_if_displayed
1267
+
1268
+ # Returns property's help or description text.
1269
+ #
1270
+ #
1271
+ # @see Wx::PG::PGProperty#set_help_string
1272
+ # @return [Wx::String]
1273
+ def get_help_string; end
1274
+ alias_method :help_string, :get_help_string
1275
+
1276
+ # Gets flags as a'|' delimited string.
1277
+ #
1278
+ # Note that flag names are not prepended with '{Wx::PG_PROP_}'.
1279
+ # @param flagsMask [Integer] String will only be made to include flags combined by this parameter.
1280
+ # @return [String]
1281
+ def get_flags_as_string(flagsMask) end
1282
+ alias_method :flags_as_string, :get_flags_as_string
1283
+
1284
+ # Returns position in parent's array.
1285
+ # @return [Integer]
1286
+ def get_index_in_parent; end
1287
+ alias_method :index_in_parent, :get_index_in_parent
1288
+
1289
+ # Returns last visible child property, recursively.
1290
+ # @return [Wx::PG::PGProperty]
1291
+ def get_last_visible_sub_item; end
1292
+ alias_method :last_visible_sub_item, :get_last_visible_sub_item
1293
+
1294
+ # Returns highest level non-category, non-root parent.
1295
+ #
1296
+ # Useful when you have nested properties with children.
1297
+ #
1298
+ # <div class="wxrb-remark">
1299
+ # <b>Remark:</b>
1300
+ # <p>If immediate parent is root or category, this will return the property itself.
1301
+ # </p>
1302
+ # </div>
1303
+ # @return [Wx::PG::PGProperty]
1304
+ def get_main_parent; end
1305
+ alias_method :main_parent, :get_main_parent
1306
+
1307
+ # Returns maximum allowed length of the text the user can enter in the property text editor.
1308
+ #
1309
+ # <div class="wxrb-remark">
1310
+ # <b>Remark:</b>
1311
+ # <p>0 is returned if length is not explicitly limited and the text can be as long as it is supported by the underlying native text control widget.
1312
+ # </p>
1313
+ # </div>
1314
+ # @return [Integer]
1315
+ def get_max_length; end
1316
+ alias_method :max_length, :get_max_length
1317
+
1318
+ # Returns property's name with all (non-category, non-root) parents.
1319
+ # @return [String]
1320
+ def get_name; end
1321
+ alias_method :name, :get_name
1322
+
1323
+ # Return parent of property.
1324
+ # @return [Wx::PG::PGProperty]
1325
+ def get_parent; end
1326
+ alias_method :parent, :get_parent
1327
+
1328
+ # Returns (direct) child property with given name (or NULL if not found).
1329
+ # @param name [String] Name of the child property to look for.
1330
+ # @return [Wx::PG::PGProperty]
1331
+ def get_property_by_name(name) end
1332
+ alias_method :property_by_name, :get_property_by_name
1333
+
1334
+ # Gets assignable version of property's validator.
1335
+ # @return [Wx::Validator]
1336
+ def get_validator; end
1337
+ alias_method :validator, :get_validator
1338
+
1339
+ # Returns property's value.
1340
+ # @return [Wx::Variant]
1341
+ def get_value; end
1342
+ alias_method :value, :get_value
1343
+
1344
+ # Returns bitmap that appears next to value text.
1345
+ #
1346
+ # Only returns non-NULL bitmap if one was set with {Wx::PG::PGProperty#set_value_image}.
1347
+ # @return [Wx::Bitmap]
1348
+ def get_value_image; end
1349
+ alias_method :value_image, :get_value_image
1350
+
1351
+ # Returns text representation of property's value.
1352
+ #
1353
+ # <div class="wxrb-remark">
1354
+ # <b>Remark:</b>
1355
+ # <p>In older versions, this function used to be overridden to convert property's value into a string representation. This function is now handled by {Wx::PG::PGProperty#value_to_string}, and overriding this function now will result in run-time assertion failure.
1356
+ # </p>
1357
+ # </div>
1358
+ # @param argFlags [Integer] If 0 (default value), then displayed string is returned. If {Wx::PG::PG_MISC_ARG_FLAGS::PG_FULL_VALUE} is set, returns complete, storable string value instead of displayable. If {Wx::PG::PG_MISC_ARG_FLAGS::PG_EDITABLE_VALUE} is set, returns string value that must be editable in textctrl. If {Wx::PG::PG_MISC_ARG_FLAGS::PG_COMPOSITE_FRAGMENT} is set, returns text that is appropriate to display as a part of string property's composite text representation.
1359
+ # @return [String]
1360
+ def get_value_as_string(argFlags=0) end
1361
+ alias_method :value_as_string, :get_value_as_string
1362
+
1363
+ # Returns value type used by this property.
1364
+ # @return [String]
1365
+ def get_value_type; end
1366
+ alias_method :value_type, :get_value_type
1367
+
1368
+ # Returns coordinate to the top y of the property.
1369
+ #
1370
+ # Note that the position of scrollbars is not taken into account.
1371
+ # @return [Integer]
1372
+ def get_y; end
1373
+ alias_method :y, :get_y
1374
+
1375
+ # Converts image width into full image offset, with margins.
1376
+ # @param imageWidth [Integer]
1377
+ # @return [Integer]
1378
+ def get_image_offset(imageWidth) end
1379
+ alias_method :image_offset, :get_image_offset
1380
+
1381
+ # Returns property at given virtual y coordinate.
1382
+ # @param y [Integer]
1383
+ # @return [Wx::PG::PGProperty]
1384
+ def get_item_at_y(y) end
1385
+ alias_method :item_at_y, :get_item_at_y
1386
+
1387
+ # @overload has_flag(flag)
1388
+ # Returns true if property has given flag set.
1389
+ #
1390
+ #
1391
+ # @see propgrid_propflags
1392
+ # @param flag [Wx::PGPropertyFlags]
1393
+ # @return [Boolean]
1394
+ # @overload has_flag(flag)
1395
+ # Returns true if property has given flag set.
1396
+ # @param flag [Integer]
1397
+ # @return [Boolean]
1398
+ def has_flag(*args) end
1399
+ alias_method :has_flag?, :has_flag
1400
+
1401
+ # Returns true if property has all given flags set.
1402
+ # @param flags [Integer]
1403
+ # @return [Boolean]
1404
+ def has_flags_exact(flags) end
1405
+ alias_method :has_flags_exact?, :has_flags_exact
1406
+
1407
+ # Returns true if property has even one visible child.
1408
+ # @return [Boolean]
1409
+ def has_visible_children; end
1410
+ alias_method :has_visible_children?, :has_visible_children
1411
+
1412
+ # Hides or reveals the property.
1413
+ # @param hide [Boolean] true for hide, false for reveal.
1414
+ # @param flags [Integer] By default changes are applied recursively. Set this parameter to {Wx::PG::PG_GETPROPERTYVALUES_FLAGS::PG_DONT_RECURSE} to prevent this.
1415
+ # @return [Boolean]
1416
+ def hide(hide, flags=Wx::PG::PG_GETPROPERTYVALUES_FLAGS::PG_RECURSE) end
1417
+
1418
+ # Returns index of given child property.
1419
+ #
1420
+ # {Wx::NOT_FOUND} if given property is not child of this.
1421
+ # @param p [Wx::PG::PGProperty]
1422
+ # @return [Integer]
1423
+ def index(p) end
1424
+
1425
+ # Use this member function to add independent (i.e.
1426
+ #
1427
+ # regular) children to a property.
1428
+ # Inserted childProperty.
1429
+ #
1430
+ # <div class="wxrb-remark">
1431
+ # <b>Remark:</b>
1432
+ # <p>{Wx::PG::PropertyGrid} is not automatically refreshed by this function.
1433
+ # </p>
1434
+ # </div>
1435
+ # @see Wx::PG::PGProperty#append_child
1436
+ # @see Wx::PG::PGProperty#add_private_child
1437
+ # @param index [Integer]
1438
+ # @param childProperty [Wx::PG::PGProperty]
1439
+ # @return [Wx::PG::PGProperty]
1440
+ def insert_child(index, childProperty) end
1441
+
1442
+ # Inserts a new choice to property's list of choices.
1443
+ # @param label [String] Text for new choice
1444
+ # @param index [Integer] Insertion position. Use {Wx::NOT_FOUND} to append.
1445
+ # @param value [Integer] Value for new choice. Do not specify if you wish this to equal choice index.
1446
+ # @return [Integer]
1447
+ def insert_choice(label, index, value=Wx::PG::PG_INVALID_VALUE) end
1448
+
1449
+ # Returns true if this property is actually a {Wx::PG::PropertyCategory}.
1450
+ # @return [Boolean]
1451
+ def is_category; end
1452
+ alias_method :category?, :is_category
1453
+
1454
+ # Returns true if property is enabled.
1455
+ # @return [Boolean]
1456
+ def is_enabled; end
1457
+ alias_method :enabled?, :is_enabled
1458
+
1459
+ # Returns true if property has visible children.
1460
+ # @return [Boolean]
1461
+ def is_expanded; end
1462
+ alias_method :expanded?, :is_expanded
1463
+
1464
+ # Returns true if this property is actually a {Wx::RootProperty}.
1465
+ # @return [Boolean]
1466
+ def is_root; end
1467
+ alias_method :root?, :is_root
1468
+
1469
+ # Returns true if this is a sub-property.
1470
+ # @return [Boolean]
1471
+ def is_sub_property; end
1472
+ alias_method :sub_property?, :is_sub_property
1473
+
1474
+ # Returns true if candidateParent is some parent of this property.
1475
+ #
1476
+ # Use, for example, to detect if item is inside collapsed section.
1477
+ # @param candidateParent [Wx::PG::PGProperty]
1478
+ # @return [Boolean]
1479
+ def is_some_parent(candidateParent) end
1480
+ alias_method :some_parent?, :is_some_parent
1481
+
1482
+ # Returns true if property has editable {Wx::TextCtrl} when selected.
1483
+ #
1484
+ # <div class="wxrb-remark">
1485
+ # <b>Remark:</b>
1486
+ # <p>Although disabled properties do not displayed editor, they still return true here as being disabled is considered a temporary condition (unlike being read-only or having limited editing enabled).
1487
+ # </p>
1488
+ # </div>
1489
+ # @return [Boolean]
1490
+ def is_text_editable; end
1491
+ alias_method :text_editable?, :is_text_editable
1492
+
1493
+ # Returns true if property's value is considered unspecified.
1494
+ #
1495
+ # This usually means that value is Null variant.
1496
+ # @return [Boolean]
1497
+ def is_value_unspecified; end
1498
+ alias_method :value_unspecified?, :is_value_unspecified
1499
+
1500
+ # Returns true if all parents expanded.
1501
+ # @return [Boolean]
1502
+ def is_visible; end
1503
+ alias_method :visible?, :is_visible
1504
+
1505
+ # Returns child property at index i.
1506
+ # @param i [Integer]
1507
+ # @return [Wx::PG::PGProperty]
1508
+ def item(i) end
1509
+
1510
+ # Returns last sub-property.
1511
+ # @return [Wx::PG::PGProperty]
1512
+ def last; end
1513
+
1514
+ # If property's editor is created this forces its recreation.
1515
+ #
1516
+ # Useful in SetAttribute etc. Returns true if actually did anything.
1517
+ # @return [Boolean]
1518
+ def recreate_editor; end
1519
+
1520
+ # If property's editor is active, then update it's value.
1521
+ # @return [void]
1522
+ def refresh_editor; end
1523
+
1524
+ # Sets an attribute for this property.
1525
+ #
1526
+ # <div class="wxrb-remark">
1527
+ # <b>Remark:</b>
1528
+ # <p>Setting attribute's value to Null variant will simply remove it from property's set of attributes.
1529
+ # </p>
1530
+ # </div>
1531
+ # @param name [String] Text identifier of attribute. See wxPropertyGrid Property Attribute Identifiers.
1532
+ # @param value [nil,String,Integer,Float,Time,Wx::Font,Wx::Colour,Wx::Variant,Array<WxVariant>,Array<String>,ObjectWx::PG::ColourPropertyValue] Value of attribute.
1533
+ # @return [void]
1534
+ def set_attribute(name, value) end
1535
+
1536
+ # @param attributes [Wx::PGAttributeStorage]
1537
+ # @return [void]
1538
+ def set_attributes(attributes) end
1539
+
1540
+ # Set if user can change the property's value to unspecified by modifying the value of the editor control (usually by clearing it).
1541
+ #
1542
+ # Currently, this can work with following properties: {Wx::PG::IntProperty}, {Wx::PG::UIntProperty}, {Wx::PG::FloatProperty}, {Wx::PG::EditEnumProperty}.
1543
+ # @param enable [Boolean] Whether to enable or disable this behaviour (it is disabled by default).
1544
+ # @return [void]
1545
+ def set_auto_unspecified(enable=true) end
1546
+ alias_method :auto_unspecified=, :set_auto_unspecified
1547
+
1548
+ # Sets property's background colour.
1549
+ #
1550
+ # <div class="wxrb-remark">
1551
+ # <b>Remark:</b>
1552
+ # <p>Unlike {Wx::PG::PropertyGridInterface#set_property_background_colour}, this does not automatically update the display.
1553
+ # </p>
1554
+ # </div>
1555
+ # @param colour [Wx::Colour,String,Symbol] Background colour to use.
1556
+ # @param flags [Integer] Default is {Wx::PG::PG_GETPROPERTYVALUES_FLAGS::PG_RECURSE} which causes colour to be set recursively. Omit this flag to only set colour for the property in question and not any of its children.
1557
+ # @return [void]
1558
+ def set_background_colour(colour, flags=Wx::PG::PG_GETPROPERTYVALUES_FLAGS::PG_RECURSE) end
1559
+ alias_method :background_colour=, :set_background_colour
1560
+
1561
+ # @overload set_editor(editor)
1562
+ # Sets editor for a property.
1563
+ #
1564
+ # For custom editors, use pointer you received from {Wx::PG::PropertyGrid.register_editor_class}.
1565
+ # @param editor [Wx::PG::PGEditor] For builtin editors, use {Wx::PGEditor_X}, where X is builtin editor's name (TextCtrl, Choice, etc. see {Wx::PG::PGEditor} documentation for full list).
1566
+ # @return [void]
1567
+ # @overload set_editor(editorName)
1568
+ # Sets editor for a property, by editor name.
1569
+ # @param editorName [String]
1570
+ # @return [void]
1571
+ def set_editor(*args) end
1572
+ alias_method :editor=, :set_editor
1573
+
1574
+ # Sets cell information for given column.
1575
+ # @param column [Integer]
1576
+ # @param cell [Wx::PG::PGCell]
1577
+ # @return [void]
1578
+ def set_cell(column, cell) end
1579
+
1580
+ # Sets common value selected for this property.
1581
+ #
1582
+ # -1 for none.
1583
+ # @param commonValue [Integer]
1584
+ # @return [void]
1585
+ def set_common_value(commonValue) end
1586
+ alias_method :common_value=, :set_common_value
1587
+
1588
+ # Sets new set of choices for the property.
1589
+ #
1590
+ # <div class="wxrb-remark">
1591
+ # <b>Remark:</b>
1592
+ # <p>This operation deselects the property and clears its value.
1593
+ # </p>
1594
+ # </div>
1595
+ # @param choices [Wx::PG::PGChoices]
1596
+ # @return [Boolean]
1597
+ def set_choices(choices) end
1598
+ alias_method :choices=, :set_choices
1599
+
1600
+ # Sets client object of a property.
1601
+ # @param clientObject [Object]
1602
+ # @return [void]
1603
+ def set_client_object(clientObject) end
1604
+ alias_method :client_object=, :set_client_object
1605
+
1606
+ # Sets selected choice and changes property value.
1607
+ #
1608
+ # Tries to retain value type, although currently if it is not string, then it is forced to integer.
1609
+ # @param newValue [Integer]
1610
+ # @return [void]
1611
+ def set_choice_selection(newValue) end
1612
+ alias_method :choice_selection=, :set_choice_selection
1613
+
1614
+ # Set default value of a property.
1615
+ #
1616
+ # Synonymous to
1617
+ #
1618
+ # ```ruby
1619
+ # set_attribute('DefaultValue', value)
1620
+ # ```
1621
+ # @param value [Wx::Variant]
1622
+ # @return [void]
1623
+ def set_default_value(value) end
1624
+ alias_method :default_value=, :set_default_value
1625
+
1626
+ # @param expanded [Boolean]
1627
+ # @return [void]
1628
+ def set_expanded(expanded) end
1629
+ alias_method :expanded=, :set_expanded
1630
+
1631
+ # Sets flags from a '|' delimited string.
1632
+ #
1633
+ # Note that flag names are not prepended with '{Wx::PG_PROP_}'.
1634
+ # @param str [String]
1635
+ # @return [void]
1636
+ def set_flags_from_string(str) end
1637
+ alias_method :flags_from_string=, :set_flags_from_string
1638
+
1639
+ # Sets or clears given property flag, recursively.
1640
+ #
1641
+ # This function is primarily intended for internal use.
1642
+ # @see Wx::PG::PGProperty#change_flag
1643
+ # @param flag [Wx::PGPropertyFlags]
1644
+ # @param set [Boolean]
1645
+ # @return [void]
1646
+ def set_flag_recursively(flag, set) end
1647
+
1648
+ # Sets property's help string, which is shown, for example, in {Wx::PG::PropertyGridManager}'s description text box.
1649
+ # @param helpString [String]
1650
+ # @return [void]
1651
+ def set_help_string(helpString) end
1652
+ alias_method :help_string=, :set_help_string
1653
+
1654
+ # Sets property's label.
1655
+ #
1656
+ # <div class="wxrb-remark">
1657
+ # <b>Remark:</b>
1658
+ # <p>
1659
+ #
1660
+ # - Properties under same parent may have same labels. However, property names must still remain unique.
1661
+ # - Unlike {Wx::PG::PropertyGridInterface#set_property_label}, this does not automatically update the display.
1662
+ #
1663
+ # </p>
1664
+ # </div>
1665
+ # @param label [String]
1666
+ # @return [void]
1667
+ def set_label(label) end
1668
+ alias_method :label=, :set_label
1669
+
1670
+ # Set maximum length of the text the user can enter in the text editor.
1671
+ #
1672
+ # If it is 0, the length is not limited and the text can be as long as it is supported by the underlying native text control widget.
1673
+ # Returns true if maximum length was set.
1674
+ # @param maxLen [Integer]
1675
+ # @return [Boolean]
1676
+ def set_max_length(maxLen) end
1677
+ alias_method :max_length=, :set_max_length
1678
+
1679
+ # Sets property's "is it modified?" flag.
1680
+ #
1681
+ # Affects children recursively.
1682
+ # @param modified [Boolean]
1683
+ # @return [void]
1684
+ def set_modified_status(modified) end
1685
+ alias_method :modified_status=, :set_modified_status
1686
+
1687
+ # Sets new (base) name for property.
1688
+ # @param newName [String]
1689
+ # @return [void]
1690
+ def set_name(newName) end
1691
+ alias_method :name=, :set_name
1692
+
1693
+ # Changes what sort of parent this property is for its children.
1694
+ #
1695
+ # <div class="wxrb-remark">
1696
+ # <b>Remark:</b>
1697
+ # <p>You generally do not need to call this function.
1698
+ # </p>
1699
+ # </div>
1700
+ # @param flag [Integer] Use one of the following values: {Wx::PG::PGPropertyFlags::PG_PROP_MISC_PARENT} (for generic parents), {Wx::PG::PGPropertyFlags::PG_PROP_CATEGORY} (for categories), or {Wx::PG::PGPropertyFlags::PG_PROP_AGGREGATE} (for derived property classes with private children).
1701
+ # @return [void]
1702
+ def set_parental_type(flag) end
1703
+ alias_method :parental_type=, :set_parental_type
1704
+
1705
+ # Sets property's text colour.
1706
+ #
1707
+ # <div class="wxrb-remark">
1708
+ # <b>Remark:</b>
1709
+ # <p>Unlike {Wx::PG::PropertyGridInterface#set_property_text_colour}, this does not automatically update the display.
1710
+ # </p>
1711
+ # </div>
1712
+ # @param colour [Wx::Colour,String,Symbol] Text colour to use.
1713
+ # @param flags [Integer] Default is {Wx::PG::PG_GETPROPERTYVALUES_FLAGS::PG_RECURSE} which causes colour to be set recursively. Omit this flag to only set colour for the property in question and not any of its children.
1714
+ # @return [void]
1715
+ def set_text_colour(colour, flags=Wx::PG::PG_GETPROPERTYVALUES_FLAGS::PG_RECURSE) end
1716
+ alias_method :text_colour=, :set_text_colour
1717
+
1718
+ # Sets property's default text and background colours.
1719
+ #
1720
+ # <div class="wxrb-remark">
1721
+ # <b>Remark:</b>
1722
+ # <p>Unlike {Wx::PG::PropertyGridInterface#set_property_colours_to_default}, this does not automatically update the display.
1723
+ # </p>
1724
+ # </div>
1725
+ # @param flags [Integer] Default is {Wx::PG::PG_GETPROPERTYVALUES_FLAGS::PG_RECURSE} which causes colours to be set recursively. Omit this flag to only set colours for the property in question and not any of its children.
1726
+ # @return [void]
1727
+ def set_default_colours(flags=Wx::PG::PG_GETPROPERTYVALUES_FLAGS::PG_RECURSE) end
1728
+ alias_method :default_colours=, :set_default_colours
1729
+
1730
+ # Sets {Wx::Validator} for a property.
1731
+ # @param validator [Wx::Validator]
1732
+ # @return [void]
1733
+ def set_validator(validator) end
1734
+ alias_method :validator=, :set_validator
1735
+
1736
+ # Call this to set value of the property.
1737
+ #
1738
+ # Unlike methods in {Wx::PG::PropertyGrid}, this does not automatically update the display.
1739
+ #
1740
+ # <div class="wxrb-remark">
1741
+ # <b>Remark:</b>
1742
+ # <p>Use {Wx::PG::PropertyGrid#change_property_value} instead if you need to run through validation process and send property change event.
1743
+ # </p>
1744
+ # </div>
1745
+ #
1746
+ # If you need to change property value in event, based on user input, use {Wx::PG::PGProperty#set_value_in_event} instead.
1747
+ # @param value [nil,String,Integer,Float,Time,Wx::Font,Wx::Colour,Wx::Variant,Array<WxVariant>,Array<String>,ObjectWx::PG::ColourPropertyValue] The value to set.
1748
+ # @param pList [Wx::Variant] Pointer to list variant that contains child values. Used to indicate which children should be marked as modified. Usually you just use NULL.
1749
+ # @param flags [Integer] {Wx::PG::PG_SETVALUE_FLAGS::PG_SETVAL_REFRESH_EDITOR} is set by default, to refresh editor and redraw properties.
1750
+ # @return [void]
1751
+ def set_value(value, pList=nil, flags=Wx::PG::PG_SETVALUE_FLAGS::PG_SETVAL_REFRESH_EDITOR) end
1752
+ alias_method :value=, :set_value
1753
+
1754
+ # Set {Wx::Bitmap} taken from {Wx::BitmapBundle} in front of the value.
1755
+ #
1756
+ # This bitmap may be ignored by custom cell renderers.
1757
+ # @param bmp [Wx::BitmapBundle]
1758
+ # @return [void]
1759
+ def set_value_image(bmp) end
1760
+ alias_method :value_image=, :set_value_image
1761
+
1762
+ # Call this function in {Wx::PG::PGProperty#on_event}, OnButtonClick() etc.
1763
+ #
1764
+ # to change the property value based on user input.
1765
+ #
1766
+ # <div class="wxrb-remark">
1767
+ # <b>Remark:</b>
1768
+ # <p>This method is const since it doesn't actually modify value, but posts given variant as pending value, stored in {Wx::PG::PropertyGrid}.
1769
+ # </p>
1770
+ # </div>
1771
+ # @param value [nil,String,Integer,Float,Time,Wx::Font,Wx::Colour,Wx::Variant,Array<WxVariant>,Array<String>,ObjectWx::PG::ColourPropertyValue]
1772
+ # @return [void]
1773
+ def set_value_in_event(value) end
1774
+ alias_method :value_in_event=, :set_value_in_event
1775
+
1776
+ # Sets property's value to unspecified (i.e.
1777
+ #
1778
+ # Null variant).
1779
+ # @return [void]
1780
+ def set_value_to_unspecified; end
1781
+
1782
+ # Call with false in {Wx::PG::PGProperty#on_set_value} to cancel value changes after all (i.e.
1783
+ #
1784
+ # cancel true returned by {Wx::PG::PGProperty#string_to_value} or {Wx::PG::PGProperty#int_to_value}).
1785
+ # @param set [Boolean]
1786
+ # @return [void]
1787
+ def set_was_modified(set=true) end
1788
+ alias_method :was_modified=, :set_was_modified
1789
+
1790
+ # Updates composed values of parent non-category properties, recursively.
1791
+ #
1792
+ # Returns topmost property updated.
1793
+ #
1794
+ # <div class="wxrb-remark">
1795
+ # <b>Remark:</b>
1796
+ # <p>Must not call {Wx::PG::PGProperty#set_value} (as can be called in it).
1797
+ # </p>
1798
+ # </div>
1799
+ # @return [Wx::PG::PGProperty]
1800
+ def update_parent_values; end
1801
+
1802
+ # Returns true if containing grid uses {Wx::PG::PG_EX_WINDOW_STYLES::PG_EX_AUTO_UNSPECIFIED_VALUES}.
1803
+ # @return [Boolean]
1804
+ def uses_auto_unspecified; end
1805
+
1806
+ # Clear cells associated with property.
1807
+ # @param ignoreWithFlags [Integer] Cells will not be cleared for properties having these flags set.
1808
+ # @param recursively [Boolean] If true, apply this operation recursively in child properties.
1809
+ # @return [void]
1810
+ def clear_cells(ignoreWithFlags, recursively) end
1811
+
1812
+ # Makes sure m_cells has size of column+1 (or more).
1813
+ # @param column [Integer]
1814
+ # @return [void]
1815
+ def ensure_cells(column) end
1816
+
1817
+ # Returns (direct) child property with given name (or NULL if not found), with hint index.
1818
+ #
1819
+ # <div class="wxrb-remark">
1820
+ # <b>Remark:</b>
1821
+ # <p>Does not support scope (i.e. Parent.Child notation).
1822
+ # </p>
1823
+ # </div>
1824
+ # @param name [String] Name of the child property to look for.
1825
+ # @param hintIndex [Integer] Start looking for the child at this index.
1826
+ # @return [Wx::PG::PGProperty]
1827
+ def get_property_by_name_wh(name, hintIndex) end
1828
+ alias_method :property_by_name_wh, :get_property_by_name_wh
1829
+
1830
+ # Deletes all child properties.
1831
+ # @return [void]
1832
+ def empty; end
1833
+
1834
+ # Returns true if child property is selected.
1835
+ # @param recursive [Boolean]
1836
+ # @return [Boolean]
1837
+ def is_child_selected(recursive=false) end
1838
+ alias_method :child_selected?, :is_child_selected
1839
+
1840
+ #
1841
+ # @return [Wx::Variant]
1842
+ def value_; end
1843
+ #
1844
+ # @param val [nil,String,Integer,Float,Time,Wx::Font,Wx::Colour,Wx::Variant,Array<WxVariant>,Array<String>,ObjectWx::PG::ColourPropertyValue]
1845
+ # @return [void]
1846
+ def value_=(val); end
1847
+
1848
+
1849
+ protected
1850
+
1851
+ # @overload initialize()
1852
+ # Default constructor.
1853
+ #
1854
+ # It is protected because {Wx::PG::PGProperty} is only a base class for other property classes.
1855
+ # @return [Wx::PG::PGProperty]
1856
+ # @overload initialize(label, name)
1857
+ # Constructor.
1858
+ #
1859
+ # It is protected because {Wx::PG::PGProperty} is only a base class for other property classes. Non-abstract property classes should have constructor of this style:
1860
+ #
1861
+ # ```ruby
1862
+ # class WxPointProperty < Wx::PG::PGProperty
1863
+ #
1864
+ # def initialize(label = Wx::PG::PG_LABEL, name = Wx::PG::PG_LABEL, value = Wx::Point.new)
1865
+ # super(label, name)
1866
+ #
1867
+ # # should work in pretty much 100% of cases
1868
+ # self.value = value
1869
+ #
1870
+ # # add private child properties
1871
+ # add_private_child( Wx::PG::IntProperty.new("X", Wx::PG::PG_LABEL,value.x))
1872
+ # add_private_child( Wx::PG::IntProperty.new("Y", Wx::PG::PG_LABEL,value.y))
1873
+ # end
1874
+ #
1875
+ # # ...
1876
+ #
1877
+ # end
1878
+ # ```
1879
+ # @param label [String]
1880
+ # @param name [String]
1881
+ # @return [Wx::PG::PGProperty]
1882
+ def initialize(*args) end
1883
+
1884
+ end # PGProperty
1885
+
1886
+ # Helper class for managing choices of {Wx::PG::PropertyGrid} properties.
1887
+ #
1888
+ # Each entry can have label, value, bitmap, text colour, and background colour.
1889
+ # {Wx::PG::PGChoices} uses reference counting, similar to other wxWidgets classes. This means that assignment operator and copy constructor only copy the reference and not the actual data. Use {Wx::PG::PGChoices#copy} member function to create a real copy.
2113
1890
  #
1891
+ # <div class="wxrb-remark">
1892
+ # <b>Remark:</b>
1893
+ # <p>If you do not specify value for entry, index is used.
1894
+ # </p>
1895
+ # </div>
2114
1896
  #
2115
- # @param val [Integer]
2116
- # @return [void]
2117
- def drawn_height=(val); end
1897
+ # Category: {Wx::PG::PropertyGrid}
1898
+ #
1899
+ #
1900
+ # @note This class is <b>untracked</b> and should not be derived from nor instances extended!
1901
+ # @wxrb_require USE_PROPGRID
1902
+ class PGChoices < ::Object
1903
+
1904
+ # @overload initialize()
1905
+ # Default constructor.
1906
+ # @return [Wx::PG::PGChoices]
1907
+ # @overload initialize(a)
1908
+ # Copy constructor, uses reference counting.
1909
+ #
1910
+ # To create a real copy, use {Wx::PG::PGChoices#copy} member function instead.
1911
+ # @param a [Wx::PG::PGChoices]
1912
+ # @return [Wx::PG::PGChoices]
1913
+ # @overload initialize(labels, values=(Wx::ArrayInt.new()))
1914
+ # Constructor.
1915
+ # @param labels [Array<String>] Labels for choices.
1916
+ # @param values [Array<Integer>] Values for choices. If empty, indexes are used. Otherwise must have at least the same size as labels.
1917
+ # @return [Wx::PG::PGChoices]
1918
+ def initialize(*args) end
1919
+
1920
+ # @overload add(arr, arrint)
1921
+ # This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
1922
+ # @param arr [Array<String>]
1923
+ # @param arrint [Array<Integer>]
1924
+ # @return [void]
1925
+ # @overload add(label, value=Wx::PG::PG_INVALID_VALUE)
1926
+ # Adds a single choice item.
1927
+ # @param label [String] Label for added choice.
1928
+ # @param value [Integer] Value for added choice. If unspecified, index is used.
1929
+ # @return [Wx::PG::PGChoiceEntry]
1930
+ # @overload add(label, bitmap, value=Wx::PG::PG_INVALID_VALUE)
1931
+ # Adds a single item, with bitmap.
1932
+ # @param label [String]
1933
+ # @param bitmap [Wx::Bitmap]
1934
+ # @param value [Integer]
1935
+ # @return [Wx::PG::PGChoiceEntry]
1936
+ # @overload add(entry)
1937
+ # Adds a single item with full entry information.
1938
+ # @param entry [Wx::PG::PGChoiceEntry]
1939
+ # @return [Wx::PG::PGChoiceEntry]
1940
+ def add(*args) end
1941
+
1942
+ # Adds a single item, sorted.
1943
+ # @param label [String]
1944
+ # @param value [Integer]
1945
+ # @return [Wx::PG::PGChoiceEntry]
1946
+ def add_as_sorted(label, value=Wx::PG::PG_INVALID_VALUE) end
1947
+
1948
+ # Assigns choices data, using reference counting.
1949
+ #
1950
+ # To create a real copy, use {Wx::PG::PGChoices#copy} member function instead.
1951
+ # @param a [Wx::PG::PGChoices]
1952
+ # @return [void]
1953
+ def assign(a) end
1954
+
1955
+ # Deletes all items.
1956
+ # @return [void]
1957
+ def clear; end
1958
+
1959
+ # Returns a real copy of the choices.
1960
+ # @return [Wx::PG::PGChoices]
1961
+ def copy; end
1962
+
1963
+ # @return [void]
1964
+ def ensure_data; end
1965
+
1966
+ # Returns label of item.
1967
+ # @param ind [Integer]
1968
+ # @return [Wx::String]
1969
+ def get_label(ind) end
1970
+ alias_method :label, :get_label
1971
+
1972
+ # Returns number of items.
1973
+ # @return [Integer]
1974
+ def get_count; end
1975
+ alias_method :count, :get_count
1976
+
1977
+ # Returns value of item.
1978
+ # @param ind [Integer]
1979
+ # @return [Integer]
1980
+ def get_value(ind) end
1981
+ alias_method :value, :get_value
1982
+
1983
+ # Returns array of values matching the given strings.
1984
+ #
1985
+ # Unmatching strings result in {Wx::PG::PG_INVALID_VALUE} entry in array.
1986
+ # @param strings [Array<String>]
1987
+ # @return [Array<Integer>]
1988
+ def get_values_for_strings(strings) end
1989
+ alias_method :values_for_strings, :get_values_for_strings
1990
+
1991
+ # Returns array of indices matching given strings.
1992
+ #
1993
+ # Unmatching strings are added to 'unmatched', if not NULL.
1994
+ # @param strings [Array<String>]
1995
+ # @param unmatched [Array,nil]
1996
+ # @return [Array<Integer>]
1997
+ def get_indices_for_strings(strings, unmatched=nil) end
1998
+ alias_method :indices_for_strings, :get_indices_for_strings
1999
+
2000
+ # @overload index(label)
2001
+ # Returns index of item with given label.
2002
+ # @param label [String]
2003
+ # @return [Integer]
2004
+ # @overload index(val)
2005
+ # Returns index of item with given value.
2006
+ # @param val [Integer]
2007
+ # @return [Integer]
2008
+ def index(*args) end
2009
+
2010
+ # @overload insert(label, index, value=Wx::PG::PG_INVALID_VALUE)
2011
+ # Inserts a single item.
2012
+ # @param label [String]
2013
+ # @param index [Integer]
2014
+ # @param value [Integer]
2015
+ # @return [Wx::PG::PGChoiceEntry]
2016
+ # @overload insert(entry, index)
2017
+ # Inserts a single item with full entry information.
2018
+ # @param entry [Wx::PG::PGChoiceEntry]
2019
+ # @param index [Integer]
2020
+ # @return [Wx::PG::PGChoiceEntry]
2021
+ def insert(*args) end
2022
+
2023
+ # Returns false if this is a constant empty set of choices, which should not be modified.
2024
+ # @return [Boolean]
2025
+ def is_ok; end
2026
+ alias_method :ok?, :is_ok
2027
+
2028
+ # Returns item at given index.
2029
+ # @param i [Integer]
2030
+ # @return [Wx::PG::PGChoiceEntry]
2031
+ def item(i) end
2032
+
2033
+ # Removes count items starting at position nIndex.
2034
+ # @param nIndex [Integer]
2035
+ # @param count [Integer]
2036
+ # @return [void]
2037
+ def remove_at(nIndex, count=1) end
2038
+
2039
+ # This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
2040
+ # @param labels [Array<String>]
2041
+ # @param values [Array<Integer>]
2042
+ # @return [void]
2043
+ def set(labels, values=(Wx::ArrayInt.new())) end
2044
+
2045
+ # Creates exclusive copy of current choices.
2046
+ # @return [void]
2047
+ def alloc_exclusive; end
2048
+
2049
+ # Returns array of choice labels.
2050
+ # @return [Array<String>]
2051
+ def get_labels; end
2052
+ alias_method :labels, :get_labels
2053
+
2054
+ # @overload [](i)
2055
+ # @param i [Integer]
2056
+ # @return [Wx::PG::PGChoiceEntry]
2057
+ # @overload [](i)
2058
+ # @param i [Integer]
2059
+ # @return [Wx::PG::PGChoiceEntry]
2060
+ def [](*args) end
2061
+
2062
+ end # PGChoices
2063
+
2064
+ # Contains information related to property's OnCustomPaint.
2065
+ #
2066
+ #
2067
+ #
2068
+ #
2069
+ # @note This class is <b>untracked</b> and should not be derived from nor instances extended!
2070
+ # @wxrb_require USE_PROPGRID
2071
+ class PGPaintData < ::Object
2072
+
2073
+ # {Wx::PG::PropertyGrid}
2074
+ #
2075
+ #
2076
+ # @return [Wx::PG::PropertyGrid]
2077
+ def parent; end
2078
+ # {Wx::PG::PropertyGrid}
2079
+ #
2080
+ #
2081
+ # @param val [Wx::PG::PropertyGrid]
2082
+ # @return [void]
2083
+ def parent=(val); end
2084
+
2085
+ # Normally -1, otherwise index to drop-down list item that has to be drawn.
2086
+ #
2087
+ #
2088
+ # @return [Integer]
2089
+ def choice_item; end
2090
+ # Normally -1, otherwise index to drop-down list item that has to be drawn.
2091
+ #
2092
+ #
2093
+ # @param val [Integer]
2094
+ # @return [void]
2095
+ def choice_item=(val); end
2096
+
2097
+ # Set to drawn width in OnCustomPaint (optional).
2098
+ #
2099
+ #
2100
+ # @return [Integer]
2101
+ def drawn_width; end
2102
+ # Set to drawn width in OnCustomPaint (optional).
2103
+ #
2104
+ #
2105
+ # @param val [Integer]
2106
+ # @return [void]
2107
+ def drawn_width=(val); end
2108
+
2109
+ # In a measure item call, set this to the height of item at m_choiceItem index.
2110
+ #
2111
+ #
2112
+ # @return [Integer]
2113
+ def drawn_height; end
2114
+ # In a measure item call, set this to the height of item at m_choiceItem index.
2115
+ #
2116
+ #
2117
+ # @param val [Integer]
2118
+ # @return [void]
2119
+ def drawn_height=(val); end
2120
+
2121
+ end # PGPaintData
2118
2122
 
2119
- end # PGPaintData
2120
-
2121
2123
 
2122
- end
2124
+ end
2125
+
2126
+ end