wxruby3 1.6.0 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CREDITS.md +32 -25
- data/INSTALL.md +21 -6
- data/README.md +5 -5
- data/assets/repo-social-preview.odg +0 -0
- data/assets/repo-social-preview.xcf +0 -0
- data/ext/wxruby3/include/wxRubyApp.h +58 -45
- data/ext/wxruby3/include/wxruby-runtime.h +78 -1
- data/ext/wxruby3/swig/common.i +2 -2
- data/ext/wxruby3/swig/custom/director.swg +2 -2
- data/ext/wxruby3/swig/custom/rubyprimtypes.swg +59 -15
- data/ext/wxruby3/swig/custom/rubyrun.swg +4 -0
- data/ext/wxruby3/swig/custom/rubytracking.swg +4 -0
- data/ext/wxruby3/swig/custom/swiglabels.swg +129 -0
- data/ext/wxruby3/swig/custom/swigrun.swg +15 -0
- data/ext/wxruby3/swig/custom/typemaps/swigtypemaps.swg +20 -0
- data/ext/wxruby3/swig/mark_free_impl.i +154 -88
- data/ext/wxruby3/swig/memory_management.i +1 -0
- data/ext/wxruby3/swig/wx.i +73 -44
- data/lib/wx/aui/events/evt_list.rb +148 -0
- data/lib/wx/aui/require.rb +0 -1
- data/lib/wx/core/calendar_ctrl.rb +15 -0
- data/lib/wx/core/clipboard.rb +9 -13
- data/lib/wx/core/config.rb +1 -1
- data/lib/wx/core/events/evt_list.rb +1458 -0
- data/lib/wx/core/font/encoding.rb +113 -0
- data/lib/wx/core/generic_validator.rb +83 -31
- data/lib/wx/core/tipwindow.rb +16 -0
- data/lib/wx/core/variant.rb +6 -0
- data/lib/wx/doc/aui/auitabctrl.rb +35 -0
- data/lib/wx/doc/config.rb +2 -2
- data/lib/wx/doc/functions.rb +1 -1
- data/lib/wx/doc/gen/about_dialog_info.rb +330 -0
- data/lib/wx/doc/gen/accelerator.rb +178 -0
- data/lib/wx/doc/gen/activity_indicator.rb +83 -0
- data/lib/wx/doc/gen/affine_matrix2d.rb +284 -0
- data/lib/wx/doc/gen/animation.rb +275 -0
- data/lib/wx/doc/gen/animation_ctrl.rb +300 -0
- data/lib/wx/doc/gen/any_button.rb +191 -0
- data/lib/wx/doc/gen/app.rb +463 -0
- data/lib/wx/doc/gen/app_traits.rb +396 -0
- data/lib/wx/doc/gen/art_provider.rb +605 -0
- data/lib/wx/doc/gen/aui/aui_dock_art.rb +455 -0
- data/lib/wx/doc/gen/aui/aui_floating_frame.rb +54 -0
- data/lib/wx/doc/gen/aui/aui_manager.rb +847 -0
- data/lib/wx/doc/gen/aui/aui_manager_event.rb +131 -0
- data/lib/wx/doc/gen/aui/aui_mdi_child_frame.rb +180 -0
- data/lib/wx/doc/gen/aui/aui_mdi_client_window.rb +59 -0
- data/lib/wx/doc/gen/aui/aui_mdi_parent_frame.rb +130 -0
- data/lib/wx/doc/gen/aui/aui_notebook.rb +631 -0
- data/lib/wx/doc/gen/aui/aui_notebook_event.rb +233 -0
- data/lib/wx/doc/gen/aui/aui_pane_info.rb +769 -0
- data/lib/wx/doc/gen/aui/aui_tab_art.rb +352 -0
- data/lib/wx/doc/gen/aui/aui_tab_ctrl.rb +14 -0
- data/lib/wx/doc/gen/aui/aui_tool_bar.rb +510 -0
- data/lib/wx/doc/gen/aui/aui_tool_bar_art.rb +340 -0
- data/lib/wx/doc/gen/aui/aui_tool_bar_event.rb +244 -0
- data/lib/wx/doc/gen/aui/aui_tool_bar_item.rb +257 -0
- data/lib/wx/doc/gen/aui/event_list.rb +179 -0
- data/lib/wx/doc/gen/banner_window.rb +124 -0
- data/lib/wx/doc/gen/bitmap.rb +731 -0
- data/lib/wx/doc/gen/bitmap_button.rb +123 -0
- data/lib/wx/doc/gen/bitmap_combo_box.rb +221 -0
- data/lib/wx/doc/gen/book_ctrl_base.rb +273 -0
- data/lib/wx/doc/gen/book_ctrl_event.rb +66 -0
- data/lib/wx/doc/gen/box_sizer.rb +85 -0
- data/lib/wx/doc/gen/brush.rb +251 -0
- data/lib/wx/doc/gen/busy_info.rb +157 -0
- data/lib/wx/doc/gen/button.rb +182 -0
- data/lib/wx/doc/gen/calculate_layout_event.rb +62 -0
- data/lib/wx/doc/gen/calendar_ctrl.rb +505 -0
- data/lib/wx/doc/gen/calendar_date_attr.rb +138 -0
- data/lib/wx/doc/gen/calendar_event.rb +147 -0
- data/lib/wx/doc/gen/caret.rb +97 -0
- data/lib/wx/doc/gen/check_box.rb +175 -0
- data/lib/wx/doc/gen/check_list_box.rb +121 -0
- data/lib/wx/doc/gen/choice.rb +175 -0
- data/lib/wx/doc/gen/choicebook.rb +116 -0
- data/lib/wx/doc/gen/client_dc.rb +43 -0
- data/lib/wx/doc/gen/clipboard.rb +144 -0
- data/lib/wx/doc/gen/collapsible_pane.rb +138 -0
- data/lib/wx/doc/gen/collapsible_pane_event.rb +46 -0
- data/lib/wx/doc/gen/colour.rb +333 -0
- data/lib/wx/doc/gen/colour_dialog.rb +190 -0
- data/lib/wx/doc/gen/colour_picker_ctrl.rb +110 -0
- data/lib/wx/doc/gen/colour_picker_event.rb +77 -0
- data/lib/wx/doc/gen/combo_box.rb +292 -0
- data/lib/wx/doc/gen/combo_ctrl.rb +662 -0
- data/lib/wx/doc/gen/command_link_button.rb +134 -0
- data/lib/wx/doc/gen/config_base.rb +10 -0
- data/lib/wx/doc/gen/context_help_button.rb +109 -0
- data/lib/wx/doc/gen/control.rb +277 -0
- data/lib/wx/doc/gen/control_with_items.rb +253 -0
- data/lib/wx/doc/gen/core.rb +45 -0
- data/lib/wx/doc/gen/credential_entry_dialog.rb +137 -0
- data/lib/wx/doc/gen/cursor.rb +193 -0
- data/lib/wx/doc/gen/data_format.rb +85 -0
- data/lib/wx/doc/gen/data_object.rb +436 -0
- data/lib/wx/doc/gen/data_object_simple_base.rb +10 -0
- data/lib/wx/doc/gen/date_event.rb +49 -0
- data/lib/wx/doc/gen/date_picker_ctrl.rb +161 -0
- data/lib/wx/doc/gen/dc.rb +1631 -0
- data/lib/wx/doc/gen/dc_overlay.rb +102 -0
- data/lib/wx/doc/gen/defs.rb +2802 -0
- data/lib/wx/doc/gen/dial_up_event.rb +45 -0
- data/lib/wx/doc/gen/dial_up_manager.rb +149 -0
- data/lib/wx/doc/gen/dialog.rb +541 -0
- data/lib/wx/doc/gen/dir_dialog.rb +164 -0
- data/lib/wx/doc/gen/dir_filter_list_ctrl.rb +90 -0
- data/lib/wx/doc/gen/dir_picker_ctrl.rb +125 -0
- data/lib/wx/doc/gen/display.rb +238 -0
- data/lib/wx/doc/gen/drag_drop.rb +299 -0
- data/lib/wx/doc/gen/drag_image.rb +116 -0
- data/lib/wx/doc/gen/editable_list_box.rb +109 -0
- data/lib/wx/doc/gen/event.rb +990 -0
- data/lib/wx/doc/gen/event_blocker.rb +50 -0
- data/lib/wx/doc/gen/event_filter.rb +92 -0
- data/lib/wx/doc/gen/event_list.rb +1644 -0
- data/lib/wx/doc/gen/events.rb +2809 -0
- data/lib/wx/doc/gen/evt_handler.rb +229 -0
- data/lib/wx/doc/gen/ext_help_controller.rb +109 -0
- data/lib/wx/doc/gen/file_ctrl.rb +231 -0
- data/lib/wx/doc/gen/file_ctrl_event.rb +83 -0
- data/lib/wx/doc/gen/file_dialog.rb +353 -0
- data/lib/wx/doc/gen/file_dialog_custom_control.rb +165 -0
- data/lib/wx/doc/gen/file_dialog_customize_hook.rb +158 -0
- data/lib/wx/doc/gen/file_dir_picker_event.rb +100 -0
- data/lib/wx/doc/gen/file_picker_ctrl.rb +132 -0
- data/lib/wx/doc/gen/file_system.rb +232 -0
- data/lib/wx/doc/gen/find_dialog_event.rb +126 -0
- data/lib/wx/doc/gen/find_replace_data.rb +60 -0
- data/lib/wx/doc/gen/find_replace_dialog.rb +58 -0
- data/lib/wx/doc/gen/flex_grid_sizer.rb +199 -0
- data/lib/wx/doc/gen/font.rb +1379 -0
- data/lib/wx/doc/gen/font_data.rb +151 -0
- data/lib/wx/doc/gen/font_dialog.rb +88 -0
- data/lib/wx/doc/gen/font_picker_ctrl.rb +143 -0
- data/lib/wx/doc/gen/font_picker_event.rb +65 -0
- data/lib/wx/doc/gen/frame.rb +352 -0
- data/lib/wx/doc/gen/fs_file.rb +337 -0
- data/lib/wx/doc/gen/functions.rb +10 -0
- data/lib/wx/doc/gen/gauge.rb +157 -0
- data/lib/wx/doc/gen/gb_sizer_item.rb +68 -0
- data/lib/wx/doc/gen/gcdc.rb +46 -0
- data/lib/wx/doc/gen/gdi_common.rb +1271 -0
- data/lib/wx/doc/gen/gdi_object.rb +31 -0
- data/lib/wx/doc/gen/generic_about_dialog.rb +140 -0
- data/lib/wx/doc/gen/generic_dir_ctrl.rb +223 -0
- data/lib/wx/doc/gen/geometry.rb +661 -0
- data/lib/wx/doc/gen/graphics_context.rb +1184 -0
- data/lib/wx/doc/gen/graphics_object.rb +750 -0
- data/lib/wx/doc/gen/grid/event_list.rb +191 -0
- data/lib/wx/doc/gen/grid/grid_cell_activatable_editor.rb +40 -0
- data/lib/wx/doc/gen/grid/grid_cell_attr.rb +280 -0
- data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_editor.rb +35 -0
- data/lib/wx/doc/gen/grid/grid_cell_auto_wrap_string_renderer.rb +37 -0
- data/lib/wx/doc/gen/grid/grid_cell_bool_editor.rb +49 -0
- data/lib/wx/doc/gen/grid/grid_cell_bool_renderer.rb +35 -0
- data/lib/wx/doc/gen/grid/grid_cell_choice_editor.rb +46 -0
- data/lib/wx/doc/gen/grid/grid_cell_date_editor.rb +38 -0
- data/lib/wx/doc/gen/grid/grid_cell_date_renderer.rb +45 -0
- data/lib/wx/doc/gen/grid/grid_cell_date_time_renderer.rb +40 -0
- data/lib/wx/doc/gen/grid/grid_cell_editor.rb +197 -0
- data/lib/wx/doc/gen/grid/grid_cell_enum_editor.rb +39 -0
- data/lib/wx/doc/gen/grid/grid_cell_enum_renderer.rb +44 -0
- data/lib/wx/doc/gen/grid/grid_cell_float_editor.rb +45 -0
- data/lib/wx/doc/gen/grid/grid_cell_float_renderer.rb +79 -0
- data/lib/wx/doc/gen/grid/grid_cell_number_editor.rb +46 -0
- data/lib/wx/doc/gen/grid/grid_cell_number_renderer.rb +35 -0
- data/lib/wx/doc/gen/grid/grid_cell_renderer.rb +108 -0
- data/lib/wx/doc/gen/grid/grid_cell_string_renderer.rb +35 -0
- data/lib/wx/doc/gen/grid/grid_cell_text_editor.rb +49 -0
- data/lib/wx/doc/gen/grid/grid_ctrl.rb +3002 -0
- data/lib/wx/doc/gen/grid/grid_editor_created_event.rb +95 -0
- data/lib/wx/doc/gen/grid/grid_event.rb +129 -0
- data/lib/wx/doc/gen/grid/grid_range_select_event.rb +104 -0
- data/lib/wx/doc/gen/grid/grid_size_event.rb +85 -0
- data/lib/wx/doc/gen/grid/grid_string_table.rb +142 -0
- data/lib/wx/doc/gen/grid/grid_table_base.rb +317 -0
- data/lib/wx/doc/gen/grid/grid_table_message.rb +81 -0
- data/lib/wx/doc/gen/grid_bag_sizer.rb +323 -0
- data/lib/wx/doc/gen/grid_sizer.rb +195 -0
- data/lib/wx/doc/gen/gui_event_loop.rb +159 -0
- data/lib/wx/doc/gen/h_scrolled_window.rb +562 -0
- data/lib/wx/doc/gen/header_ctrl.rb +880 -0
- data/lib/wx/doc/gen/header_ctrl_event.rb +133 -0
- data/lib/wx/doc/gen/help_controller.rb +195 -0
- data/lib/wx/doc/gen/help_provider.rb +98 -0
- data/lib/wx/doc/gen/html/event_list.rb +38 -0
- data/lib/wx/doc/gen/html/html_cell.rb +536 -0
- data/lib/wx/doc/gen/html/html_cell_event.rb +69 -0
- data/lib/wx/doc/gen/html/html_data_object.rb +42 -0
- data/lib/wx/doc/gen/html/html_easy_printing.rb +203 -0
- data/lib/wx/doc/gen/html/html_help_controller.rb +340 -0
- data/lib/wx/doc/gen/html/html_help_data.rb +159 -0
- data/lib/wx/doc/gen/html/html_help_window.rb +258 -0
- data/lib/wx/doc/gen/html/html_link_event.rb +41 -0
- data/lib/wx/doc/gen/html/html_list_box.rb +346 -0
- data/lib/wx/doc/gen/html/html_printout.rb +109 -0
- data/lib/wx/doc/gen/html/html_window.rb +461 -0
- data/lib/wx/doc/gen/hyperlink_ctrl.rb +311 -0
- data/lib/wx/doc/gen/hyperlink_event.rb +44 -0
- data/lib/wx/doc/gen/icon.rb +267 -0
- data/lib/wx/doc/gen/icon_location.rb +40 -0
- data/lib/wx/doc/gen/image.rb +1371 -0
- data/lib/wx/doc/gen/image_list.rb +168 -0
- data/lib/wx/doc/gen/info_bar.rb +195 -0
- data/lib/wx/doc/gen/keyboard_state.rb +140 -0
- data/lib/wx/doc/gen/list_box.rb +304 -0
- data/lib/wx/doc/gen/list_ctrl.rb +1774 -0
- data/lib/wx/doc/gen/list_event.rb +208 -0
- data/lib/wx/doc/gen/listbook.rb +116 -0
- data/lib/wx/doc/gen/locale.rb +4293 -0
- data/lib/wx/doc/gen/log.rb +603 -0
- data/lib/wx/doc/gen/mdi_client_window.rb +47 -0
- data/lib/wx/doc/gen/mdi_frame.rb +324 -0
- data/lib/wx/doc/gen/media_ctrl.rb +269 -0
- data/lib/wx/doc/gen/media_event.rb +117 -0
- data/lib/wx/doc/gen/memory_dc.rb +174 -0
- data/lib/wx/doc/gen/menu.rb +509 -0
- data/lib/wx/doc/gen/menu_bar.rb +287 -0
- data/lib/wx/doc/gen/menu_item.rb +362 -0
- data/lib/wx/doc/gen/message_dialog.rb +238 -0
- data/lib/wx/doc/gen/mini_frame.rb +108 -0
- data/lib/wx/doc/gen/mirror_dc.rb +22 -0
- data/lib/wx/doc/gen/mouse_state.rb +150 -0
- data/lib/wx/doc/gen/multi_choice_dialog.rb +80 -0
- data/lib/wx/doc/gen/non_owned_window.rb +49 -0
- data/lib/wx/doc/gen/notebook.rb +278 -0
- data/lib/wx/doc/gen/num_validator.rb +37 -0
- data/lib/wx/doc/gen/number_entry_dialog.rb +93 -0
- data/lib/wx/doc/gen/object.rb +59 -0
- data/lib/wx/doc/gen/owner_drawn_combo_box.rb +395 -0
- data/lib/wx/doc/gen/paint_dc.rb +27 -0
- data/lib/wx/doc/gen/palette.rb +92 -0
- data/lib/wx/doc/gen/panel.rb +127 -0
- data/lib/wx/doc/gen/pen.rb +511 -0
- data/lib/wx/doc/gen/persistence_manager.rb +135 -0
- data/lib/wx/doc/gen/persistent_object.rb +52 -0
- data/lib/wx/doc/gen/persistent_window.rb +241 -0
- data/lib/wx/doc/gen/pg/event_list.rb +106 -0
- data/lib/wx/doc/gen/pg/numeric_property_validator.rb +54 -0
- data/lib/wx/doc/gen/pg/pg_array_editor_dialog.rb +292 -0
- data/lib/wx/doc/gen/pg/pg_cell.rb +177 -0
- data/lib/wx/doc/gen/pg/pg_editor.rb +721 -0
- data/lib/wx/doc/gen/pg/pg_multi_button.rb +152 -0
- data/lib/wx/doc/gen/pg/pg_properties.rb +2829 -0
- data/lib/wx/doc/gen/pg/pg_property.rb +2078 -0
- data/lib/wx/doc/gen/pg/pg_validation_info.rb +344 -0
- data/lib/wx/doc/gen/pg/property_grid.rb +740 -0
- data/lib/wx/doc/gen/pg/property_grid_event.rb +184 -0
- data/lib/wx/doc/gen/pg/property_grid_interface.rb +1098 -0
- data/lib/wx/doc/gen/pg/property_grid_manager.rb +415 -0
- data/lib/wx/doc/gen/pg/property_grid_page.rb +354 -0
- data/lib/wx/doc/gen/pg/property_grid_page_state.rb +165 -0
- data/lib/wx/doc/gen/picker_base.rb +152 -0
- data/lib/wx/doc/gen/platform_info.rb +622 -0
- data/lib/wx/doc/gen/popup_window.rb +107 -0
- data/lib/wx/doc/gen/progress_dialog.rb +100 -0
- data/lib/wx/doc/gen/property_sheet_dialog.rb +216 -0
- data/lib/wx/doc/gen/prt/event_list.rb +17 -0
- data/lib/wx/doc/gen/prt/page_setup_dialog.rb +44 -0
- data/lib/wx/doc/gen/prt/post_script_dc.rb +30 -0
- data/lib/wx/doc/gen/prt/preview_frame.rb +78 -0
- data/lib/wx/doc/gen/prt/print_abort_dialog.rb +151 -0
- data/lib/wx/doc/gen/prt/print_data.rb +804 -0
- data/lib/wx/doc/gen/prt/print_dialog.rb +55 -0
- data/lib/wx/doc/gen/prt/printer.rb +518 -0
- data/lib/wx/doc/gen/prt/printer_dc.rb +37 -0
- data/lib/wx/doc/gen/query_layout_info_event.rb +106 -0
- data/lib/wx/doc/gen/radio_box.rb +306 -0
- data/lib/wx/doc/gen/radio_button.rb +159 -0
- data/lib/wx/doc/gen/rbn/event_list.rb +136 -0
- data/lib/wx/doc/gen/rbn/ribbon_art_provider.rb +1132 -0
- data/lib/wx/doc/gen/rbn/ribbon_bar.rb +308 -0
- data/lib/wx/doc/gen/rbn/ribbon_bar_event.rb +45 -0
- data/lib/wx/doc/gen/rbn/ribbon_button_bar.rb +458 -0
- data/lib/wx/doc/gen/rbn/ribbon_button_bar_event.rb +63 -0
- data/lib/wx/doc/gen/rbn/ribbon_control.rb +143 -0
- data/lib/wx/doc/gen/rbn/ribbon_gallery.rb +229 -0
- data/lib/wx/doc/gen/rbn/ribbon_gallery_event.rb +55 -0
- data/lib/wx/doc/gen/rbn/ribbon_page.rb +174 -0
- data/lib/wx/doc/gen/rbn/ribbon_panel.rb +270 -0
- data/lib/wx/doc/gen/rbn/ribbon_panel_event.rb +45 -0
- data/lib/wx/doc/gen/rbn/ribbon_tool_bar.rb +360 -0
- data/lib/wx/doc/gen/rbn/ribbon_tool_bar_event.rb +42 -0
- data/lib/wx/doc/gen/rearrange_ctrl.rb +78 -0
- data/lib/wx/doc/gen/rearrange_list.rb +123 -0
- data/lib/wx/doc/gen/region.rb +380 -0
- data/lib/wx/doc/gen/region_iterator.rb +76 -0
- data/lib/wx/doc/gen/rich_tool_tip.rb +154 -0
- data/lib/wx/doc/gen/rtc/event_list.rb +125 -0
- data/lib/wx/doc/gen/rtc/rich_text_box.rb +445 -0
- data/lib/wx/doc/gen/rtc/rich_text_buffer.rb +1188 -0
- data/lib/wx/doc/gen/rtc/rich_text_buffer_data_object.rb +41 -0
- data/lib/wx/doc/gen/rtc/rich_text_composite_object.rb +538 -0
- data/lib/wx/doc/gen/rtc/rich_text_ctrl.rb +2103 -0
- data/lib/wx/doc/gen/rtc/rich_text_event.rb +173 -0
- data/lib/wx/doc/gen/rtc/rich_text_file_handler.rb +181 -0
- data/lib/wx/doc/gen/rtc/rich_text_formatting_dialog.rb +319 -0
- data/lib/wx/doc/gen/rtc/rich_text_header_footer_data.rb +193 -0
- data/lib/wx/doc/gen/rtc/rich_text_html_handler.rb +102 -0
- data/lib/wx/doc/gen/rtc/rich_text_image.rb +337 -0
- data/lib/wx/doc/gen/rtc/rich_text_object.rb +2922 -0
- data/lib/wx/doc/gen/rtc/rich_text_paragraph_layout_box.rb +1240 -0
- data/lib/wx/doc/gen/rtc/rich_text_printing.rb +258 -0
- data/lib/wx/doc/gen/rtc/rich_text_style_list_box.rb +344 -0
- data/lib/wx/doc/gen/rtc/rich_text_style_organiser_dialog.rb +227 -0
- data/lib/wx/doc/gen/rtc/rich_text_xml_handler.rb +59 -0
- data/lib/wx/doc/gen/rtc/symbol_picker_dialog.rb +169 -0
- data/lib/wx/doc/gen/sash_event.rb +147 -0
- data/lib/wx/doc/gen/sash_layout_window.rb +232 -0
- data/lib/wx/doc/gen/sash_window.rb +171 -0
- data/lib/wx/doc/gen/scaled_dc.rb +10 -0
- data/lib/wx/doc/gen/screen_dc.rb +30 -0
- data/lib/wx/doc/gen/scroll_bar.rb +204 -0
- data/lib/wx/doc/gen/scrolled_canvas.rb +410 -0
- data/lib/wx/doc/gen/scrolled_control.rb +410 -0
- data/lib/wx/doc/gen/scrolled_window.rb +430 -0
- data/lib/wx/doc/gen/search_ctrl.rb +159 -0
- data/lib/wx/doc/gen/secret_store.rb +116 -0
- data/lib/wx/doc/gen/simplebook.rb +110 -0
- data/lib/wx/doc/gen/single_choice_dialog.rb +89 -0
- data/lib/wx/doc/gen/sizer.rb +945 -0
- data/lib/wx/doc/gen/sizer_item.rb +244 -0
- data/lib/wx/doc/gen/slider.rb +342 -0
- data/lib/wx/doc/gen/spin_button.rb +157 -0
- data/lib/wx/doc/gen/spin_ctrl.rb +231 -0
- data/lib/wx/doc/gen/spin_ctrl_double.rb +192 -0
- data/lib/wx/doc/gen/spin_double_event.rb +55 -0
- data/lib/wx/doc/gen/spin_event.rb +51 -0
- data/lib/wx/doc/gen/splash_screen.rb +113 -0
- data/lib/wx/doc/gen/splitter_event.rb +99 -0
- data/lib/wx/doc/gen/splitter_window.rb +498 -0
- data/lib/wx/doc/gen/static_bitmap.rb +256 -0
- data/lib/wx/doc/gen/static_box.rb +180 -0
- data/lib/wx/doc/gen/static_box_sizer.rb +85 -0
- data/lib/wx/doc/gen/static_line.rb +83 -0
- data/lib/wx/doc/gen/static_text.rb +127 -0
- data/lib/wx/doc/gen/status_bar.rb +290 -0
- data/lib/wx/doc/gen/stc/event_list.rb +221 -0
- data/lib/wx/doc/gen/stc/styled_text_ctrl.rb +4474 -0
- data/lib/wx/doc/gen/stc/styled_text_event.rb +8762 -0
- data/lib/wx/doc/gen/std_dialog_button_sizer.rb +129 -0
- data/lib/wx/doc/gen/svg_file_dc.rb +164 -0
- data/lib/wx/doc/gen/system_options.rb +129 -0
- data/lib/wx/doc/gen/system_settings.rb +507 -0
- data/lib/wx/doc/gen/task_bar_icon.rb +127 -0
- data/lib/wx/doc/gen/task_bar_icon_event.rb +88 -0
- data/lib/wx/doc/gen/text_attr.rb +756 -0
- data/lib/wx/doc/gen/text_ctrl.rb +1033 -0
- data/lib/wx/doc/gen/text_entry.rb +441 -0
- data/lib/wx/doc/gen/text_entry_dialog.rb +220 -0
- data/lib/wx/doc/gen/text_validator.rb +245 -0
- data/lib/wx/doc/gen/time_picker_ctrl.rb +128 -0
- data/lib/wx/doc/gen/timer.rb +119 -0
- data/lib/wx/doc/gen/timer_event.rb +68 -0
- data/lib/wx/doc/gen/tip_provider.rb +63 -0
- data/lib/wx/doc/gen/tip_window.rb +51 -0
- data/lib/wx/doc/gen/toggle_button.rb +182 -0
- data/lib/wx/doc/gen/tool_bar.rb +890 -0
- data/lib/wx/doc/gen/tool_tip.rb +86 -0
- data/lib/wx/doc/gen/toolbook.rb +118 -0
- data/lib/wx/doc/gen/top_level_window.rb +497 -0
- data/lib/wx/doc/gen/tree_ctrl.rb +1052 -0
- data/lib/wx/doc/gen/tree_event.rb +127 -0
- data/lib/wx/doc/gen/treebook.rb +180 -0
- data/lib/wx/doc/gen/ui_action_simulator.rb +109 -0
- data/lib/wx/doc/gen/utils.rb +273 -0
- data/lib/wx/doc/gen/v_list_box.rb +272 -0
- data/lib/wx/doc/gen/v_scrolled_canvas.rb +195 -0
- data/lib/wx/doc/gen/v_scrolled_window.rb +191 -0
- data/lib/wx/doc/gen/validator.rb +68 -0
- data/lib/wx/doc/gen/variant.rb +294 -0
- data/lib/wx/doc/gen/window.rb +2917 -0
- data/lib/wx/doc/gen/window_dc.rb +38 -0
- data/lib/wx/doc/gen/window_disabler.rb +30 -0
- data/lib/wx/doc/gen/with_images.rb +84 -0
- data/lib/wx/doc/gen/wizard.rb +257 -0
- data/lib/wx/doc/gen/wizard_event.rb +113 -0
- data/lib/wx/doc/gen/wizard_page.rb +65 -0
- data/lib/wx/doc/gen/wizard_page_simple.rb +88 -0
- data/lib/wx/doc/gen/wrap_sizer.rb +79 -0
- data/lib/wx/doc/gen/xml_node.rb +316 -0
- data/lib/wx/doc/gen/xml_resource.rb +320 -0
- data/lib/wx/doc/generic_validator.rb +5 -0
- data/lib/wx/doc/pg/pg_property.rb +5 -0
- data/lib/wx/doc/tip_window.rb +18 -6
- data/lib/wx/doc/variant.rb +30 -0
- data/lib/wx/grid/events/evt_list.rb +166 -0
- data/lib/wx/html/events/evt_list.rb +27 -0
- data/lib/wx/html/simple_html_listbox.rb +46 -33
- data/lib/wx/keyword_defs.rb +9 -0
- data/lib/wx/pg/events/evt_list.rb +73 -0
- data/lib/wx/pg/pg_property.rb +85 -52
- data/lib/wx/pg/property_grid_interface.rb +12 -2
- data/lib/wx/rbn/events/evt_list.rb +102 -0
- data/lib/wx/rtc/events/evt_list.rb +98 -0
- data/lib/wx/rtc/ext/rich_text_ctrl.rb +24 -0
- data/lib/wx/stc/events/evt_list.rb +178 -0
- data/lib/wx/version.rb +1 -1
- data/lib/wx/wxruby/cmd/setup.rb +6 -0
- data/rakelib/configure.rb +9 -0
- data/rakelib/gem.rake +84 -66
- data/rakelib/gem.rb +4 -20
- data/rakelib/lib/config/linux.rb +1 -1
- data/rakelib/lib/config/macosx.rb +15 -1
- data/rakelib/lib/config/pkgman/linux.rb +7 -2
- data/rakelib/lib/config/unixish.rb +3 -3
- data/rakelib/lib/config.rb +19 -8
- data/rakelib/lib/core/include/swigdirector.inc +3 -3
- data/rakelib/lib/core/include/swigrubyerrors.inc +4 -8
- data/rakelib/lib/core/include/swigrubyrun.inc +20 -4
- data/rakelib/lib/core/include/swigrun.inc +189 -0
- data/rakelib/lib/core/package.rb +3 -1
- data/rakelib/lib/core/spec.rb +1 -1
- data/rakelib/lib/director/accelerator.rb +1 -1
- data/rakelib/lib/director/animation.rb +1 -0
- data/rakelib/lib/director/app_traits.rb +1 -1
- data/rakelib/lib/director/aui_manager.rb +21 -14
- data/rakelib/lib/director/aui_mdi_child_frame.rb +2 -0
- data/rakelib/lib/director/aui_mdi_parent_frame.rb +4 -0
- data/rakelib/lib/director/aui_notebook.rb +20 -3
- data/rakelib/lib/director/aui_tab_ctrl.rb +64 -106
- data/rakelib/lib/director/bitmap_combobox.rb +4 -2
- data/rakelib/lib/director/calendar_ctrl.rb +72 -14
- data/rakelib/lib/director/clipboard.rb +2 -0
- data/rakelib/lib/director/data_object.rb +15 -7
- data/rakelib/lib/director/date_picker_ctrl.rb +4 -1
- data/rakelib/lib/director/display.rb +81 -0
- data/rakelib/lib/director/event.rb +33 -16
- data/rakelib/lib/director/event_handler.rb +27 -2
- data/rakelib/lib/director/functions.rb +9 -0
- data/rakelib/lib/director/geometry.rb +5 -0
- data/rakelib/lib/director/grid_ctrl.rb +123 -28
- data/rakelib/lib/director/help_provider.rb +1 -1
- data/rakelib/lib/director/html_listbox.rb +30 -4
- data/rakelib/lib/director/hvscrolled.rb +154 -0
- data/rakelib/lib/director/image_list.rb +1 -0
- data/rakelib/lib/director/mdi_frame.rb +4 -0
- data/rakelib/lib/director/menu.rb +56 -15
- data/rakelib/lib/director/menu_bar.rb +62 -0
- data/rakelib/lib/director/menu_item.rb +7 -1
- data/rakelib/lib/director/num_validator.rb +27 -0
- data/rakelib/lib/director/numeric_property_validator.rb +9 -0
- data/rakelib/lib/director/persistent_window.rb +16 -0
- data/rakelib/lib/director/pgproperty.rb +3 -2
- data/rakelib/lib/director/popup_window.rb +2 -0
- data/rakelib/lib/director/preview_frame.rb +29 -6
- data/rakelib/lib/director/printer.rb +59 -5
- data/rakelib/lib/director/property_grid.rb +37 -18
- data/rakelib/lib/director/property_grid_interface.rb +10 -8
- data/rakelib/lib/director/property_grid_manager.rb +99 -39
- data/rakelib/lib/director/property_grid_page.rb +60 -0
- data/rakelib/lib/director/rich_tooltip.rb +22 -0
- data/rakelib/lib/director/richtext_ctrl.rb +5 -0
- data/rakelib/lib/director/richtext_object.rb +13 -4
- data/rakelib/lib/director/richtext_style_listbox.rb +11 -2
- data/rakelib/lib/director/scrolled_t.rb +3 -0
- data/rakelib/lib/director/searchctrl.rb +1 -0
- data/rakelib/lib/director/task_bar_icon.rb +14 -8
- data/rakelib/lib/director/text_validator.rb +9 -0
- data/rakelib/lib/director/tip_window.rb +117 -6
- data/rakelib/lib/director/tool_bar.rb +6 -0
- data/rakelib/lib/director/top_level_window.rb +0 -1
- data/rakelib/lib/director/utils.rb +3 -1
- data/rakelib/lib/director/validator.rb +12 -0
- data/rakelib/lib/director/variant.rb +64 -20
- data/rakelib/lib/director/vlistbox.rb +29 -22
- data/rakelib/lib/director/window.rb +12 -2
- data/rakelib/lib/director/xml_resource.rb +6 -0
- data/rakelib/lib/generate/doc/aui_manager.yaml +1 -1
- data/rakelib/lib/generate/doc/rich_tool_tip.yaml +26 -0
- data/rakelib/lib/generate/doc.rb +12 -7
- data/rakelib/lib/generate/interface.rb +16 -1
- data/rakelib/lib/specs/interfaces.rb +6 -2
- data/rakelib/lib/swig_runner.rb +12 -12
- data/rakelib/lib/typemap/aui_tabctrl.rb +46 -0
- data/rakelib/lib/typemap/common.rb +3 -3
- data/rakelib/lib/typemap/print_page_range.rb +32 -8
- data/samples/art/wxruby-512x512.png +0 -0
- data/samples/calendar/calendar.rb +64 -1
- data/samples/dialogs/dialogs.rb +172 -0
- data/samples/dialogs/tip.xpm +157 -0
- data/samples/drawing/maths_images.rb +1 -1
- data/samples/event/event.rb +1 -1
- data/samples/printing/printing2.rb +1 -1
- data/samples/sampler.rb +26 -8
- data/samples/text/textctrl.rb +2 -2
- data/samples/treectrl/treectrl.rb +2 -2
- data/tests/lib/leaked_process_event_exception_test.rb +1 -1
- data/tests/lib/leaked_queued_event_exception_test.rb +1 -1
- data/tests/lib/wxapp_runner.rb +31 -41
- data/tests/lib/wxframe_runner.rb +23 -11
- data/tests/lib/wxrb_test.rb +58 -0
- data/tests/test_app_event_filter.rb +1 -1
- data/tests/test_app_exit_exception.rb +3 -3
- data/tests/test_app_init_exception.rb +3 -3
- data/tests/test_app_traits.rb +24 -21
- data/tests/test_art.rb +7 -7
- data/tests/test_art_provider.rb +1 -1
- data/tests/test_basic.rb +2 -2
- data/tests/test_book_controls.rb +1 -1
- data/tests/test_box_sizer.rb +1 -1
- data/tests/test_clipboard.rb +5 -5
- data/tests/test_combo_ctrl.rb +2 -2
- data/tests/test_config.rb +11 -1
- data/tests/test_dc.rb +1 -1
- data/tests/test_dialog.rb +1 -1
- data/tests/test_event_handling.rb +1 -1
- data/tests/test_events.rb +1 -1
- data/tests/test_exceptions.rb +2 -2
- data/tests/test_ext_controls.rb +10 -10
- data/tests/test_file_dialog.rb +1 -1
- data/tests/test_font.rb +1 -1
- data/tests/test_gdi_object.rb +1 -1
- data/tests/test_geometry.rb +2 -2
- data/tests/test_grid_sizer.rb +2 -2
- data/tests/test_intl.rb +1 -1
- data/tests/test_item_data.rb +12 -12
- data/tests/test_list_ctrl.rb +1 -1
- data/tests/test_log.rb +2 -2
- data/tests/test_media_ctrl.rb +1 -1
- data/tests/test_menu.rb +114 -43
- data/tests/test_proof_check.rb +1 -1
- data/tests/test_propgrid.rb +857 -0
- data/tests/test_richtext.rb +10 -24
- data/tests/test_secret_store.rb +1 -1
- data/tests/test_sizer.rb +1 -1
- data/tests/test_std_controls.rb +8 -8
- data/tests/test_styled_text_ctrl.rb +1 -1
- data/tests/test_timer.rb +1 -1
- data/tests/test_tree_ctrl.rb +1 -1
- data/tests/test_validators.rb +79 -36
- data/tests/test_variant.rb +1 -1
- data/tests/test_window.rb +11 -11
- data/tests/testapp.rb +2 -2
- data/tests/testapp_noframe.rb +2 -2
- metadata +402 -12
- data/lib/wx/aui/aui_tab_ctrl.rb +0 -18
- data/rakelib/lib/director/hvscrolled_window.rb +0 -140
|
@@ -114,6 +114,16 @@ module WXRuby3
|
|
|
114
114
|
}
|
|
115
115
|
return wxVariant(arrs);
|
|
116
116
|
}
|
|
117
|
+
if ((RARRAY_LEN(rbval) > 0 && TYPE(rb_ary_entry(rbval, 0)) == T_FIXNUM))
|
|
118
|
+
{
|
|
119
|
+
wxArrayInt arri;
|
|
120
|
+
for (int i = 0; i < RARRAY_LEN(rbval); i++)
|
|
121
|
+
{
|
|
122
|
+
VALUE num = rb_ary_entry(rbval, i);
|
|
123
|
+
arri.Add(NUM2INT(num));
|
|
124
|
+
}
|
|
125
|
+
return WXVARIANT(arri);
|
|
126
|
+
}
|
|
117
127
|
if (RARRAY_LEN(rbval) == 0 ||
|
|
118
128
|
rb_obj_is_kind_of(rb_ary_entry(rbval, 0), rb_const_get(mWxCore, var_Variant_id())))
|
|
119
129
|
{
|
|
@@ -170,6 +180,12 @@ module WXRuby3
|
|
|
170
180
|
}
|
|
171
181
|
__HEREDOC
|
|
172
182
|
spec.add_extend_code 'wxVariant', <<~__HEREDOC
|
|
183
|
+
wxVariant(const wxArrayInt& val, const wxString &name=wxEmptyString)
|
|
184
|
+
{
|
|
185
|
+
wxVariant var(0L, name);
|
|
186
|
+
var << val;
|
|
187
|
+
return new wxVariant(var);
|
|
188
|
+
}
|
|
173
189
|
wxVariant(const wxFont& val, const wxString &name=wxEmptyString)
|
|
174
190
|
{
|
|
175
191
|
wxVariant var(0L, name);
|
|
@@ -188,6 +204,10 @@ module WXRuby3
|
|
|
188
204
|
var << val;
|
|
189
205
|
return new wxVariant(var);
|
|
190
206
|
}
|
|
207
|
+
wxArrayInt GetArrayInt()
|
|
208
|
+
{
|
|
209
|
+
wxArrayInt arri; arri << *self; return arri;
|
|
210
|
+
}
|
|
191
211
|
wxFont GetFont()
|
|
192
212
|
{
|
|
193
213
|
wxFont font; font << *self; return font;
|
|
@@ -292,6 +312,12 @@ module WXRuby3
|
|
|
292
312
|
$1 = (TYPE($input) == T_TRUE) || (TYPE($input) == T_FALSE);
|
|
293
313
|
__CODE
|
|
294
314
|
end
|
|
315
|
+
# override typecheck for wxArrayInt as we also have to consider
|
|
316
|
+
# wxVariantList and wxArrayString
|
|
317
|
+
spec.map 'const wxArrayInt&' do
|
|
318
|
+
map_typecheck precedence: 'INT32_ARRAY',
|
|
319
|
+
code: '$1 = ((TYPE($input) == T_ARRAY) && (RARRAY_LEN($input) > 0) && (TYPE(rb_ary_entry($input, 0)) == T_FIXNUM));'
|
|
320
|
+
end
|
|
295
321
|
# override typecheck for wxArrayString as we also have to consider
|
|
296
322
|
# wxVariantList
|
|
297
323
|
spec.map 'const wxArrayString&' do
|
|
@@ -358,48 +384,64 @@ module WXRuby3
|
|
|
358
384
|
# provide a custom wxVariantData implementation for Ruby VALUE
|
|
359
385
|
# and some interface extensions to use that from Ruby
|
|
360
386
|
spec.add_header_code <<~__HEREDOC
|
|
387
|
+
WXRUBY_TRACE_GUARD(WxRubyTraceGCMarkVariant, "GC_MARK_VARIANT")
|
|
388
|
+
WXRUBY_TRACE_GUARD(WxRubyTraceGCTrackVariant, "GC_TRACK_VARIANT")
|
|
389
|
+
|
|
361
390
|
class WXRBValueVariantData;
|
|
362
391
|
// Mapping of WXRBValueVariantData* to Ruby VALUE
|
|
363
392
|
WX_DECLARE_VOIDPTR_HASH_MAP(VALUE,
|
|
364
393
|
WXRBVariantDataToRbValueHash);
|
|
365
394
|
static WXRBVariantDataToRbValueHash Variant_Value_Map;
|
|
366
395
|
|
|
367
|
-
static void
|
|
396
|
+
static void GC_mark_RbValueVariants()
|
|
368
397
|
{
|
|
398
|
+
WXRUBY_TRACE_IF(WxRubyTraceGCMarkVariant, 2)
|
|
399
|
+
WXRUBY_TRACE("> GC_mark_RbValueVariants")
|
|
400
|
+
WXRUBY_TRACE_END
|
|
401
|
+
|
|
369
402
|
WXRBVariantDataToRbValueHash::iterator it;
|
|
370
403
|
for( it = Variant_Value_Map.begin(); it != Variant_Value_Map.end(); ++it )
|
|
371
404
|
{
|
|
372
405
|
VALUE obj = it->second;
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
#endif
|
|
406
|
+
|
|
407
|
+
WXRUBY_TRACE_IF(WxRubyTraceGCMarkVariant, 2)
|
|
408
|
+
WXRUBY_TRACE_WITH(void *c_ptr = (TYPE(obj) == T_DATA ? DATA_PTR(obj) : 0))
|
|
409
|
+
WXRUBY_TRACE("| GC_mark_RbValueVariants : " << it->first << "|" << (void*)c_ptr)
|
|
410
|
+
WXRUBY_TRACE_END
|
|
411
|
+
|
|
380
412
|
rb_gc_mark(obj);
|
|
381
413
|
}
|
|
414
|
+
|
|
415
|
+
WXRUBY_TRACE_IF(WxRubyTraceGCMarkVariant, 2)
|
|
416
|
+
WXRUBY_TRACE("< GC_mark_RbValueVariants")
|
|
417
|
+
WXRUBY_TRACE_END
|
|
382
418
|
}
|
|
383
419
|
|
|
384
420
|
static void wxRuby_RegisterValueVariantData(void* ptr, VALUE rbval)
|
|
385
421
|
{
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
}
|
|
392
|
-
#endif
|
|
422
|
+
WXRUBY_TRACE_IF(WxRubyTraceGCTrackVariant, 2)
|
|
423
|
+
WXRUBY_TRACE_WITH(void *c_ptr = (TYPE(rbval) == T_DATA ? DATA_PTR(rbval) : 0))
|
|
424
|
+
WXRUBY_TRACE("> wxRuby_RegisterValueVariantData : " << ptr << "|" << (void*)c_ptr)
|
|
425
|
+
WXRUBY_TRACE_END
|
|
426
|
+
|
|
393
427
|
Variant_Value_Map[ptr] = rbval;
|
|
428
|
+
|
|
429
|
+
WXRUBY_TRACE_IF(WxRubyTraceGCMarkVariant, 2)
|
|
430
|
+
WXRUBY_TRACE("< wxRuby_RegisterValueVariantData")
|
|
431
|
+
WXRUBY_TRACE_END
|
|
394
432
|
}
|
|
395
433
|
|
|
396
434
|
static void wxRuby_UnregisterValueVariantData(void* ptr)
|
|
397
435
|
{
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
436
|
+
WXRUBY_TRACE_IF(WxRubyTraceGCTrackVariant, 2)
|
|
437
|
+
WXRUBY_TRACE("> wxRuby_UnregisterValueVariantData : " << ptr)
|
|
438
|
+
WXRUBY_TRACE_END
|
|
439
|
+
|
|
402
440
|
Variant_Value_Map.erase(ptr);
|
|
441
|
+
|
|
442
|
+
WXRUBY_TRACE_IF(WxRubyTraceGCMarkVariant, 2)
|
|
443
|
+
WXRUBY_TRACE("< wxRuby_UnregisterValueVariantData")
|
|
444
|
+
WXRUBY_TRACE_END
|
|
403
445
|
}
|
|
404
446
|
|
|
405
447
|
class WXRUBY_EXPORT WXRBValueVariantData : public wxVariantData
|
|
@@ -460,7 +502,7 @@ module WXRuby3
|
|
|
460
502
|
return variant;
|
|
461
503
|
}
|
|
462
504
|
__HEREDOC
|
|
463
|
-
spec.add_init_code 'wxRuby_AppendMarker(
|
|
505
|
+
spec.add_init_code 'wxRuby_AppendMarker(GC_mark_RbValueVariants);'
|
|
464
506
|
# ignore GetType (not doc)
|
|
465
507
|
spec.ignore 'wxVariant::GetType', ignore_doc: false
|
|
466
508
|
# replace with custom implementation
|
|
@@ -506,6 +548,8 @@ module WXRuby3
|
|
|
506
548
|
{ (*self) = v; }
|
|
507
549
|
void assign(const wxArrayString& v)
|
|
508
550
|
{ (*self) = v; }
|
|
551
|
+
void assign(const wxArrayInt& v)
|
|
552
|
+
{ (*self) << v; }
|
|
509
553
|
|
|
510
554
|
VALUE to_i()
|
|
511
555
|
{
|
|
@@ -16,30 +16,37 @@ module WXRuby3
|
|
|
16
16
|
|
|
17
17
|
def setup
|
|
18
18
|
super
|
|
19
|
-
spec.
|
|
19
|
+
spec.gc_as_window
|
|
20
|
+
if Config.instance.wx_version_check('3.3.1') > 0
|
|
21
|
+
spec.override_inheritance_chain('wxVListBox', [{ 'wxVScrolledCanvas' => 'wxVScrolledCanvas' }, 'wxWindow', 'wxEvtHandler', 'wxObject'])
|
|
22
|
+
elsif Config.instance.wx_version_check('3.3.0') > 0
|
|
23
|
+
spec.override_inheritance_chain('wxVListBox', [{ 'wxVScrolledWindow' => 'wxVScrolledWindow' }, 'wxPanel', 'wxWindow', 'wxEvtHandler', 'wxObject'])
|
|
24
|
+
else
|
|
25
|
+
spec.override_inheritance_chain('wxVListBox', [{ 'wxVScrolledWindow' => 'wxHScrolledWindow' }, 'wxPanel', 'wxWindow', 'wxEvtHandler', 'wxObject'])
|
|
26
|
+
end
|
|
20
27
|
spec.make_abstract 'wxVListBox'
|
|
21
28
|
# provide base implementations for OnDrawItem and OnMeasureItem
|
|
22
|
-
spec.add_header_code <<~__HEREDOC
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
__HEREDOC
|
|
41
|
-
# make Ruby director and wrappers use custom implementation
|
|
42
|
-
spec.use_class_implementation('wxVListBox', 'wxRubyVListBox')
|
|
29
|
+
# spec.add_header_code <<~__HEREDOC
|
|
30
|
+
# // Custom subclass implementation.
|
|
31
|
+
# class wxRubyVListBox : public wxVListBox
|
|
32
|
+
# {
|
|
33
|
+
# public:
|
|
34
|
+
# wxRubyVListBox()
|
|
35
|
+
# : wxVListBox () {}
|
|
36
|
+
# wxRubyVListBox(wxWindow *parent, wxWindowID id=wxID_ANY, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=0, const wxString &name=wxVListBoxNameStr)
|
|
37
|
+
# : wxVListBox(parent, id, pos, size, style, name) {}
|
|
38
|
+
# protected:
|
|
39
|
+
# virtual void OnDrawItem(wxDC&, const wxRect&, size_t) const
|
|
40
|
+
# {
|
|
41
|
+
# }
|
|
42
|
+
# virtual wxCoord OnMeasureItem(size_t) const
|
|
43
|
+
# {
|
|
44
|
+
# return {};
|
|
45
|
+
# }
|
|
46
|
+
# };
|
|
47
|
+
# __HEREDOC
|
|
48
|
+
# # make Ruby director and wrappers use custom implementation
|
|
49
|
+
# spec.use_class_implementation('wxVListBox', 'wxRubyVListBox')
|
|
43
50
|
# make sure protected methods are included
|
|
44
51
|
spec.regard 'wxVListBox::OnDrawItem',
|
|
45
52
|
'wxVListBox::OnMeasureItem',
|
|
@@ -127,7 +127,7 @@ module WXRuby3
|
|
|
127
127
|
spec.ignore 'wxWindow::EnableTouchEvents'
|
|
128
128
|
end
|
|
129
129
|
if Config.instance.wx_version_check('3.3.0') >= 0
|
|
130
|
-
spec.ignore_unless('WXMSW', 'wxWindow::MSWDisableComposited')
|
|
130
|
+
spec.ignore_unless('WXMSW', 'wxWindow::MSWDisableComposited') if Config.instance.wx_version_check('3.3.1') <= 0
|
|
131
131
|
spec.ignore('wxWindow::GTKGetWin32Handle')
|
|
132
132
|
end
|
|
133
133
|
if Config.instance.features_set?('USE_ACCESSIBILITY')
|
|
@@ -236,6 +236,10 @@ module WXRuby3
|
|
|
236
236
|
spec.override_events 'wxWindow', 'EVT_ACTIVATE' => ['EVT_ACTIVATE', 0, 'wxActivateEvent']
|
|
237
237
|
when 'wxNonOwnedWindow'
|
|
238
238
|
spec.no_proxy('wxNonOwnedWindow')
|
|
239
|
+
if Config.instance.features_set?('WXOSX')
|
|
240
|
+
spec.extend_interface('wxNonOwnedWindow',
|
|
241
|
+
'virtual bool Destroy() override')
|
|
242
|
+
end
|
|
239
243
|
when 'wxControl'
|
|
240
244
|
# add these to the generated interface to be parsed by SWIG
|
|
241
245
|
# the wxWidgets docs are flawed in this respect that several reimplemented
|
|
@@ -288,6 +292,7 @@ module WXRuby3
|
|
|
288
292
|
"#{spec.class_name(citem)}::GetScrollRange",
|
|
289
293
|
"#{spec.class_name(citem)}::GetScrollThumb",
|
|
290
294
|
"#{spec.class_name(citem)}::GetTextExtent",
|
|
295
|
+
"#{spec.class_name(citem)}::GetDPI",
|
|
291
296
|
"#{spec.class_name(citem)}::HasCapture",
|
|
292
297
|
"#{spec.class_name(citem)}::HasMultiplePages",
|
|
293
298
|
"#{spec.class_name(citem)}::IsDoubleBuffered",
|
|
@@ -305,6 +310,9 @@ module WXRuby3
|
|
|
305
310
|
"#{spec.class_name(citem)}::SetBackgroundColour",
|
|
306
311
|
"#{spec.class_name(citem)}::SetBackgroundStyle",
|
|
307
312
|
"#{spec.class_name(citem)}::HasTransparentBackground",
|
|
313
|
+
"#{spec.class_name(citem)}::CanSetTransparent",
|
|
314
|
+
"#{spec.class_name(citem)}::SetTransparent",
|
|
315
|
+
"#{spec.class_name(citem)}::GetThemeEnabled",
|
|
308
316
|
"#{spec.class_name(citem)}::SetCursor",
|
|
309
317
|
"#{spec.class_name(citem)}::SetFocus",
|
|
310
318
|
"#{spec.class_name(citem)}::SetFocusFromKbd",
|
|
@@ -329,12 +337,14 @@ module WXRuby3
|
|
|
329
337
|
"#{spec.class_name(citem)}::GetDefaultAttributes",
|
|
330
338
|
"#{spec.class_name(citem)}::GetWindowStyleFlag",
|
|
331
339
|
"#{spec.class_name(citem)}::GetDropTarget",
|
|
340
|
+
"#{spec.class_name(citem)}::SetDropTarget",
|
|
332
341
|
"#{spec.class_name(citem)}::GetValidator",
|
|
333
342
|
"#{spec.class_name(citem)}::IsTopLevel",
|
|
334
343
|
"#{spec.class_name(citem)}::EnableTouchEvents",
|
|
335
344
|
"#{spec.class_name(citem)}::WarpPointer",
|
|
336
345
|
"#{spec.class_name(citem)}::AdjustForLayoutDirection",
|
|
337
|
-
"#{spec.class_name(citem)}::IsTransparentBackgroundSupported"
|
|
346
|
+
"#{spec.class_name(citem)}::IsTransparentBackgroundSupported",
|
|
347
|
+
"#{spec.class_name(citem)}::Reparent")
|
|
338
348
|
if Config.instance.features_set?('USE_ACCESSIBILITY')
|
|
339
349
|
if Config.instance.wx_version_check('3.2.4') > 0
|
|
340
350
|
spec.no_proxy "#{spec.class_name(citem)}::CreateAccessible"
|
|
@@ -18,6 +18,12 @@ module WXRuby3
|
|
|
18
18
|
spec.ignore %w[wxXmlResource::AddHandler wxXmlResource::ClearHandlers wxXmlResource::InsertHandler]
|
|
19
19
|
# not really added value; will add alternative allowing more flexibility (see below)
|
|
20
20
|
spec.ignore 'wxXmlResource::LoadDocument(wxXmlDocument *, const wxString &)'
|
|
21
|
+
# unwanted in Ruby
|
|
22
|
+
spec.ignore 'wxXmlResource::LoadObject',
|
|
23
|
+
'wxXmlResource::LoadObjectRecursively'
|
|
24
|
+
# unattached loaders return owned objects
|
|
25
|
+
spec.new_object 'wxXmlResource::LoadMenu(const wxString &)',
|
|
26
|
+
'wxXmlResource::LoadMenuBar(const wxString &)'
|
|
21
27
|
# For these three methods, there are two variants in wxWidgets. One loads an
|
|
22
28
|
# XRC from scratch and returns an instance of a core Wx class
|
|
23
29
|
# (Wx::Dialog, Wx::Frame, or Wx::Panel). The other loads a layout into
|
|
@@ -25,4 +25,4 @@
|
|
|
25
25
|
:para:
|
|
26
26
|
- :pattern: !ruby/regexp /The overridden version may return true but modify.*appending them./
|
|
27
27
|
:replace: |
|
|
28
|
-
The overridden version may return a 2-element array with an AuiTabCtrl and tab index instead to change where the page should be inserted, e.g. by returning a tab index of 0 to insert the new pages at the beginning instead of appending them.
|
|
28
|
+
The overridden version may return a 2-element array with an {Wx::AUI::AuiTabCtrl} and tab index instead to change where the page should be inserted, e.g. by returning a tab index of 0 to insert the new pages at the beginning instead of appending them.
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
---
|
|
2
|
+
:wxRichToolTip:
|
|
3
|
+
:detail:
|
|
4
|
+
:pre:
|
|
5
|
+
:para:
|
|
6
|
+
- :pattern: !ruby/regexp /The images below show some examples.*/
|
|
7
|
+
:replace: |
|
|
8
|
+
|
|
9
|
+
:programlisting:
|
|
10
|
+
- :pattern: !ruby/regexp /.*/
|
|
11
|
+
:replace: |
|
|
12
|
+
|
|
13
|
+
```ruby
|
|
14
|
+
password = Wx::TextCtrl.new(..., style: Wx::TE_PASSWORD)
|
|
15
|
+
# ...
|
|
16
|
+
tip = Wx::RichToolTip.new("Caps Lock is on",
|
|
17
|
+
"You might have made an error in your password\n" +
|
|
18
|
+
"entry because Caps Lock is turned on.\n" +
|
|
19
|
+
"\n" +
|
|
20
|
+
"Press Caps Lock key to turn it off.")
|
|
21
|
+
tip.set_icon(Wx::ICON_WARNING)
|
|
22
|
+
tip.show_for(password)
|
|
23
|
+
```
|
|
24
|
+
:post:
|
|
25
|
+
- :pattern: !ruby/regexp /<div class='appearance'>.*</table></div>/m
|
|
26
|
+
:subst: ''
|
data/rakelib/lib/generate/doc.rb
CHANGED
|
@@ -49,7 +49,7 @@ module WXRuby3
|
|
|
49
49
|
end
|
|
50
50
|
table = { 'Wx' => {}}
|
|
51
51
|
handle_module(Wx, table['Wx'])
|
|
52
|
-
|
|
52
|
+
File.open(ARGV[0], 'w+') { |f| f << JSON.dump(table) }
|
|
53
53
|
__SCRIPT
|
|
54
54
|
STDERR.puts "* executing constants collection script:\n#{script}" if Director.trace?
|
|
55
55
|
begin
|
|
@@ -57,22 +57,27 @@ module WXRuby3
|
|
|
57
57
|
ftmp_name = tmpfile.path.dup
|
|
58
58
|
tmpfile << script
|
|
59
59
|
tmpfile.close(false)
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
60
|
+
tmpconsts = Tempfile.new('constants')
|
|
61
|
+
fconsts_name = tmpconsts.path.dup
|
|
62
|
+
tmpconsts.close(false)
|
|
63
|
+
if Director.trace?
|
|
64
|
+
Config.instance.run(ftmp_name, fconsts_name, capture: :out, verbose: false)
|
|
65
|
+
else
|
|
66
|
+
Config.instance.run(ftmp_name, fconsts_name, capture: :no_err, verbose: false)
|
|
67
|
+
end
|
|
68
|
+
result = File.read(fconsts_name)
|
|
65
69
|
STDERR.puts "* got constants collection output:\n#{result}" if Director.trace?
|
|
66
70
|
begin
|
|
67
71
|
db = JSON.load(result)
|
|
68
72
|
rescue Exception
|
|
69
|
-
File.open('constants_raw.json', "w") { |f| f << result } if Director.verbose?
|
|
73
|
+
# File.open('constants_raw.json', "w") { |f| f << result } if Director.verbose?
|
|
70
74
|
::Kernel.raise RuntimeError, "Exception loading constants collection result: #{$!.message.slice(0, 512)}", cause: nil
|
|
71
75
|
end
|
|
72
76
|
File.open('constants.json', "w") { |f| f << JSON.pretty_generate(db) } if Director.verbose?
|
|
73
77
|
return db
|
|
74
78
|
ensure
|
|
75
79
|
File.unlink(ftmp_name)
|
|
80
|
+
File.unlink(fconsts_name)
|
|
76
81
|
end
|
|
77
82
|
end
|
|
78
83
|
|
|
@@ -262,6 +262,16 @@ module WXRuby3
|
|
|
262
262
|
fout.puts extension
|
|
263
263
|
fout.puts '};'
|
|
264
264
|
end
|
|
265
|
+
item.innerclasses.each do |inner|
|
|
266
|
+
if inner.protection == 'public' && !inner.ignored && !inner.deprecated
|
|
267
|
+
extension = extend_code("#{class_name(item)}::#{class_name(inner)}")
|
|
268
|
+
unless extension.empty?
|
|
269
|
+
fout.puts "\n%extend #{class_name(item)}::#{class_name(inner)} {"
|
|
270
|
+
fout.puts extension
|
|
271
|
+
fout.puts '};'
|
|
272
|
+
end
|
|
273
|
+
end
|
|
274
|
+
end
|
|
265
275
|
end
|
|
266
276
|
end
|
|
267
277
|
end
|
|
@@ -523,7 +533,12 @@ module WXRuby3
|
|
|
523
533
|
typedefs = def_items.select {|item| Extractor::TypedefDef === item && !item.ignored }
|
|
524
534
|
typedefs.each do |item|
|
|
525
535
|
fout.puts
|
|
526
|
-
|
|
536
|
+
# work around problems with older doxygen and wxw < 3.3
|
|
537
|
+
if item.definition.start_with?('typedef')
|
|
538
|
+
fout.puts "#{item.definition};"
|
|
539
|
+
else # with older doxygen 'definition' is often not complete statement so we form it here
|
|
540
|
+
fout.puts "typedef #{item.type} #{item.name};"
|
|
541
|
+
end
|
|
527
542
|
end
|
|
528
543
|
fout.puts '' unless typedefs.empty?
|
|
529
544
|
end
|
|
@@ -32,6 +32,7 @@ module WXRuby3
|
|
|
32
32
|
Director.Spec(pkg, 'wxApp')
|
|
33
33
|
Director.Spec(pkg, 'wxAppTraits')
|
|
34
34
|
Director.Spec(pkg, 'wxConfigBase')
|
|
35
|
+
Director.Spec(pkg, 'wxDisplay')
|
|
35
36
|
Director.Spec(pkg, 'wxDC')
|
|
36
37
|
Director.Spec(pkg, 'wxWindowDC', director: Director::DerivedDC)
|
|
37
38
|
Director.Spec(pkg, 'wxClientDC', director: Director::DerivedDC)
|
|
@@ -122,6 +123,7 @@ module WXRuby3
|
|
|
122
123
|
Director.Spec(pkg, 'wxCursor')
|
|
123
124
|
Director.Spec(pkg, 'wxRadioButton', director: Director::Window, requirements: %w[USE_RADIOBTN])
|
|
124
125
|
Director.Spec(pkg, 'wxToolTip', requirements: %w[USE_TOOLTIPS])
|
|
126
|
+
Director.Spec(pkg, 'wxRichToolTip', requirements: %w[USE_RICHTOOLTIP])
|
|
125
127
|
Director.Spec(pkg, 'wxLog', requirements: %w[USE_LOG])
|
|
126
128
|
Director.Spec(pkg, 'wxToolBar', requirements: %w[USE_TOOLBAR])
|
|
127
129
|
Director.Spec(pkg, 'wxImage', requirements: %w[USE_IMAGE])
|
|
@@ -139,7 +141,9 @@ module WXRuby3
|
|
|
139
141
|
Director.Spec(pkg, 'wxScrolledWindow', director: Director::ScrolledT)
|
|
140
142
|
Director.Spec(pkg, 'wxScrolledCanvas', director: Director::ScrolledT)
|
|
141
143
|
Director.Spec(pkg, 'wxScrolledControl', director: Director::ScrolledT)
|
|
142
|
-
Director.Spec(pkg, '
|
|
144
|
+
Director.Spec(pkg, 'wxHScrolledWindow', director: Director::HVScrolled)
|
|
145
|
+
Director.Spec(pkg, 'wxVScrolledWindow', director: Director::HVScrolled)
|
|
146
|
+
Director.Spec(pkg, 'wxVScrolledCanvas', director: Director::HVScrolled)
|
|
143
147
|
Director.Spec(pkg, 'wxVListBox')
|
|
144
148
|
Director.Spec(pkg, 'wxFindReplaceData', requirements: %w[USE_FINDREPLDLG])
|
|
145
149
|
Director.Spec(pkg, 'wxFindReplaceDialog', director: Director::Dialog, requirements: %w[USE_FINDREPLDLG])
|
|
@@ -209,7 +213,7 @@ module WXRuby3
|
|
|
209
213
|
Director.Spec(pkg, 'wxDragDrop', requirements: %w[USE_DRAG_AND_DROP])
|
|
210
214
|
Director.Spec(pkg, 'wxContextHelpButton', requirements: %w[USE_HELP])
|
|
211
215
|
Director.Spec(pkg, 'wxHelpProvider', requirements: %w[USE_HELP])
|
|
212
|
-
Director.Spec(pkg, 'wxTipWindow', requirements: %w[
|
|
216
|
+
Director.Spec(pkg, 'wxTipWindow', requirements: %w[USE_TIPWINDOW])
|
|
213
217
|
Director.Spec(pkg, 'wxHelpController', requirements: %w[USE_HELP])
|
|
214
218
|
Director.Spec(pkg, 'wxExtHelpController', director: Director::HelpController, requirements: %w[USE_HELP])
|
|
215
219
|
Director.Spec(pkg, 'wxTaskBarIconEvent', director: Director::Event, requirements: %w[USE_TASKBARICON])
|
data/rakelib/lib/swig_runner.rb
CHANGED
|
@@ -24,8 +24,12 @@ module WXRuby3
|
|
|
24
24
|
include Util::StringUtil
|
|
25
25
|
|
|
26
26
|
def swig_major
|
|
27
|
+
swig_version.first
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def swig_version
|
|
27
31
|
check_swig unless swig_state
|
|
28
|
-
|
|
32
|
+
@swig_version
|
|
29
33
|
end
|
|
30
34
|
|
|
31
35
|
private
|
|
@@ -38,32 +42,28 @@ module WXRuby3
|
|
|
38
42
|
!!@swig_state
|
|
39
43
|
end
|
|
40
44
|
|
|
41
|
-
def swig_version
|
|
42
|
-
check_swig unless swig_state
|
|
43
|
-
@swig_version
|
|
44
|
-
end
|
|
45
|
-
|
|
46
45
|
def check_swig
|
|
47
46
|
begin
|
|
48
|
-
|
|
47
|
+
swig_version_ = `#{WXRuby3::Config.get_config('swig')} -version`[/\d+\.\d+\.\d+/]
|
|
49
48
|
rescue Exception
|
|
50
49
|
$stderr.puts "ERROR: Could not run SWIG (#{WXRuby3::Config.get_config('swig')})"
|
|
51
50
|
exit(1)
|
|
52
51
|
end
|
|
53
52
|
|
|
54
53
|
# Very old versions put --version on $stderr, not $stdout
|
|
55
|
-
unless
|
|
54
|
+
unless swig_version_
|
|
56
55
|
$stderr.puts "Could not get version info from SWIG; " +
|
|
57
56
|
"is a very old version installed?.\n"
|
|
58
57
|
exit(1)
|
|
59
58
|
end
|
|
60
59
|
|
|
61
|
-
if
|
|
62
|
-
$stderr.puts "SWIG version #{
|
|
60
|
+
if swig_version_ < SWIG_MINIMUM_VERSION
|
|
61
|
+
$stderr.puts "SWIG version #{swig_version_} is installed, " +
|
|
63
62
|
"minimum version required is #{SWIG_MINIMUM_VERSION}.\n"
|
|
64
63
|
exit(1)
|
|
65
64
|
end
|
|
66
65
|
|
|
66
|
+
@swig_version = swig_version_.split('.').map(&:to_i)
|
|
67
67
|
@swig_state = true
|
|
68
68
|
end
|
|
69
69
|
|
|
@@ -418,14 +418,14 @@ module WXRuby3
|
|
|
418
418
|
# get the generated (class) items for which an alternate implementation has been registered
|
|
419
419
|
class_list = def_items.select { |itm| Extractor::ClassDef === itm && itm.name != class_implementation(itm.name) }
|
|
420
420
|
# create re match list for class names
|
|
421
|
-
cls_re_txt = class_list.collect { |clsdef| clsdef.name }.join('|')
|
|
421
|
+
cls_re_txt = class_list.collect { |clsdef| class_name(clsdef.name) }.join('|')
|
|
422
422
|
# updating any matching alloc functions in generated SWIG sourcecode
|
|
423
423
|
# create regexp for 'initialize' wrappers (due to overloads this could be more than one per class)
|
|
424
424
|
new_re = /_wrap_new_(#{cls_re_txt})\w*\(.*\)/
|
|
425
425
|
# check if any of the selected classes have a Director proxy enabled
|
|
426
426
|
if proxies_enabled = class_list.any? { |clsdef| has_proxy?(clsdef) }
|
|
427
427
|
# create re match list for classes with director proxy enabled
|
|
428
|
-
dir_cls_re_txt = class_list.select { |clsdef| has_proxy?(clsdef) }.collect { |cd| cd.name }.join('|')
|
|
428
|
+
dir_cls_re_txt = class_list.select { |clsdef| has_proxy?(clsdef) }.collect { |cd| class_name(cd.name) }.join('|')
|
|
429
429
|
# create regexp for Director constructors (may not exist if no proxies are enabled)
|
|
430
430
|
dir_ctor_re = /SwigDirector_\w+::SwigDirector_\w+\(.*\)\s*:\s*(#{dir_cls_re_txt})\(.*\)\s*,\s*Swig::Director.*{/
|
|
431
431
|
# create regexp for method wrappers other than 'initialize' wrappers
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# Copyright (c) 2023 M.J.N. Corino, The Netherlands
|
|
2
|
+
#
|
|
3
|
+
# This software is released under the MIT license.
|
|
4
|
+
|
|
5
|
+
###
|
|
6
|
+
# wxRuby3 Common typemap definitions
|
|
7
|
+
###
|
|
8
|
+
|
|
9
|
+
require_relative '../core/mapping'
|
|
10
|
+
|
|
11
|
+
module WXRuby3
|
|
12
|
+
|
|
13
|
+
module Typemap
|
|
14
|
+
|
|
15
|
+
# These typemaps are used by AUI classes to convert wxAuiTabCtrl pointers
|
|
16
|
+
# into lightweight wrapper objects
|
|
17
|
+
module AuiTabCtrl
|
|
18
|
+
|
|
19
|
+
include Typemap::Module
|
|
20
|
+
|
|
21
|
+
define do
|
|
22
|
+
|
|
23
|
+
map 'wxAuiTabCtrl*' => 'Wx::AUI::AuiTabCtrl' do
|
|
24
|
+
|
|
25
|
+
add_header_code <<~__CODE
|
|
26
|
+
// implemented in TreeEvent.cpp
|
|
27
|
+
extern VALUE _wxRuby_Wrap_wxAuiTabCtrl(wxAuiTabCtrl* wxATC);
|
|
28
|
+
extern wxAuiTabCtrl* _wxRuby_Unwrap_wxAuiTabCtrl(VALUE rbATC);
|
|
29
|
+
extern bool _wxRuby_Is_wxAuiTabCtrl(VALUE rbATC);
|
|
30
|
+
__CODE
|
|
31
|
+
|
|
32
|
+
map_in temp: 'wxAuiTabCtrl *tmpATC', code: <<~__CODE
|
|
33
|
+
if ($input != Qnil) tmpATC = _wxRuby_Unwrap_wxAuiTabCtrl($input);
|
|
34
|
+
$1 = tmpATC;
|
|
35
|
+
__CODE
|
|
36
|
+
|
|
37
|
+
map_out code: '$result = _wxRuby_Wrap_wxAuiTabCtrl($1);'
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
end # define
|
|
41
|
+
|
|
42
|
+
end # AuiTabCtrl
|
|
43
|
+
|
|
44
|
+
end # Typemap
|
|
45
|
+
|
|
46
|
+
end # WXRuby3
|
|
@@ -565,7 +565,7 @@ module WXRuby3
|
|
|
565
565
|
map 'wxUpdateUIEvent &' => 'Wx::UpdateUIEvent' do
|
|
566
566
|
map_directorin code: <<~__CODE
|
|
567
567
|
#ifdef __WXRB_DEBUG__
|
|
568
|
-
$input = wxRuby_WrapWxEventInRuby(this, static_cast<wxEvent*> (&$1));
|
|
568
|
+
$input = wxRuby_WrapWxEventInRuby(const_cast<void*>((const void*)this), static_cast<wxEvent*> (&$1));
|
|
569
569
|
#else
|
|
570
570
|
$input = wxRuby_WrapWxEventInRuby(static_cast<wxEvent*> (&$1));
|
|
571
571
|
#endif
|
|
@@ -577,7 +577,7 @@ module WXRuby3
|
|
|
577
577
|
map 'wxCommandEvent &' => 'Wx::CommandEvent' do
|
|
578
578
|
map_directorin code: <<~__CODE
|
|
579
579
|
#ifdef __WXRB_DEBUG__
|
|
580
|
-
$input = wxRuby_WrapWxEventInRuby(this, static_cast<wxEvent*> (&$1));
|
|
580
|
+
$input = wxRuby_WrapWxEventInRuby(const_cast<void*>((const void*)this), static_cast<wxEvent*> (&$1));
|
|
581
581
|
#else
|
|
582
582
|
$input = wxRuby_WrapWxEventInRuby(static_cast<wxEvent*> (&$1));
|
|
583
583
|
#endif
|
|
@@ -598,7 +598,7 @@ module WXRuby3
|
|
|
598
598
|
map 'wxKeyEvent &' => 'Wx::KeyEvent' do
|
|
599
599
|
map_directorin code: <<~__CODE
|
|
600
600
|
#ifdef __WXRB_DEBUG__
|
|
601
|
-
$input = wxRuby_WrapWxEventInRuby(this, static_cast<wxEvent*> (&$1));
|
|
601
|
+
$input = wxRuby_WrapWxEventInRuby(const_cast<void*>((const void*)this), static_cast<wxEvent*> (&$1));
|
|
602
602
|
#else
|
|
603
603
|
$input = wxRuby_WrapWxEventInRuby(static_cast<wxEvent*> (&$1));
|
|
604
604
|
#endif
|
|
@@ -54,17 +54,45 @@ module WXRuby3
|
|
|
54
54
|
|
|
55
55
|
map 'std::vector<wxPrintPageRange> &' => 'Array<Wx::PRT::PrintPageRange>' do
|
|
56
56
|
|
|
57
|
-
map_in temp: 'std::vector<wxPrintPageRange>
|
|
57
|
+
map_in temp: 'std::vector<wxPrintPageRange> tmp', code: <<~__CODE
|
|
58
|
+
if (TYPE($input) == T_ARRAY)
|
|
59
|
+
{
|
|
60
|
+
$1 = &tmp;
|
|
61
|
+
for (int i = 0; i < RARRAY_LEN($input); i++)
|
|
62
|
+
{
|
|
63
|
+
void *ptr;
|
|
64
|
+
VALUE r_range = rb_ary_entry($input, i);
|
|
65
|
+
int res = SWIG_ConvertPtr(r_range, &ptr, SWIGTYPE_p_wxPrintPageRange, 0);
|
|
66
|
+
if (!SWIG_IsOK(res) || !ptr) {
|
|
67
|
+
rb_raise(rb_eTypeError, "Expected Array of Wx::PRT::PrintPageRange for 1");
|
|
68
|
+
}
|
|
69
|
+
wxPrintPageRange *range = reinterpret_cast< wxPrintPageRange * >(ptr);
|
|
70
|
+
$1->push_back(*range);
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
else {
|
|
74
|
+
rb_raise(rb_eArgError, "Expected Array of Wx::PRT::PrintPageRange for 1");
|
|
75
|
+
}
|
|
76
|
+
__CODE
|
|
58
77
|
|
|
59
78
|
map_argout code: <<~__CODE
|
|
79
|
+
VALUE rb_ranges = rb_ary_new();
|
|
60
80
|
for (const wxPrintPageRange& range : *$1)
|
|
61
81
|
{
|
|
62
|
-
VALUE
|
|
63
|
-
rb_ary_push(
|
|
82
|
+
VALUE rb_range = SWIG_NewPointerObj(new wxPrintPageRange(range), SWIGTYPE_p_wxPrintPageRange, SWIG_POINTER_OWN);
|
|
83
|
+
rb_ary_push(rb_ranges, rb_range);
|
|
64
84
|
}
|
|
85
|
+
$result = SWIG_AppendOutput($result, rb_ranges);
|
|
65
86
|
__CODE
|
|
66
87
|
|
|
67
|
-
map_directorin code:
|
|
88
|
+
map_directorin code: <<~__CODE
|
|
89
|
+
$input = rb_ary_new();
|
|
90
|
+
for (const wxPrintPageRange& range : $1)
|
|
91
|
+
{
|
|
92
|
+
VALUE rb_range = SWIG_NewPointerObj(new wxPrintPageRange(range), SWIGTYPE_p_wxPrintPageRange, SWIG_POINTER_OWN);
|
|
93
|
+
rb_ary_push($input, rb_range);
|
|
94
|
+
}
|
|
95
|
+
__CODE
|
|
68
96
|
|
|
69
97
|
map_directorargout code: <<~__CODE
|
|
70
98
|
for (int i = 0; i < RARRAY_LEN($result); i++)
|
|
@@ -83,10 +111,6 @@ module WXRuby3
|
|
|
83
111
|
|
|
84
112
|
end
|
|
85
113
|
end
|
|
86
|
-
# Doc only mapping def
|
|
87
|
-
map 'std::vector<wxPrintPageRange> &' => 'Array<Wx::PRT::PrintPageRange>', swig: false do
|
|
88
|
-
map_in
|
|
89
|
-
end
|
|
90
114
|
|
|
91
115
|
end
|
|
92
116
|
|
|
Binary file
|