wxruby3 1.6.1 → 1.8.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 +46 -6
- data/README.md +17 -17
- data/assets/repo-social-preview.odg +0 -0
- data/assets/repo-social-preview.xcf +0 -0
- data/ext/wxruby3/include/wxRubyApp.h +203 -91
- data/ext/wxruby3/include/wxruby-ComboPopup.h +25 -8
- data/ext/wxruby3/include/wxruby-GCTracking.h +262 -0
- data/ext/wxruby3/include/wxruby-MBConv.h +190 -0
- data/ext/wxruby3/include/wxruby-SharedEventHandler.h +183 -0
- data/ext/wxruby3/include/wxruby-SharedPtr.h +104 -0
- data/ext/wxruby3/include/wxruby-runtime.h +107 -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 +9 -19
- 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/custom/wx_ruby_shared_ptr.i +434 -0
- data/ext/wxruby3/swig/custom/wx_shared_ptr.i +431 -0
- data/ext/wxruby3/swig/mark_free_impl.i +83 -144
- data/ext/wxruby3/swig/memory_management.i +8 -43
- data/ext/wxruby3/swig/wx.i +88 -86
- 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/const.rb +0 -1
- data/lib/wx/core/context_help.rb +17 -0
- data/lib/wx/core/cursor.rb +1 -0
- 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/helpcontrollerhelpprovider.rb +10 -2
- data/lib/wx/core/mbconv.rb +11 -0
- data/lib/wx/core/media_ctrl.rb +31 -0
- data/lib/wx/core/tipwindow.rb +16 -0
- data/lib/wx/core/top_level_window.rb +7 -0
- data/lib/wx/core.rb +6 -0
- data/lib/wx/doc/art_provider.rb +17 -0
- data/lib/wx/doc/aui/auitabctrl.rb +35 -0
- data/lib/wx/doc/config.rb +2 -2
- data/lib/wx/doc/context_help.rb +42 -0
- data/lib/wx/doc/core.rb +0 -5
- data/lib/wx/doc/functions.rb +11 -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 +286 -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 +617 -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 +274 -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 +56 -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 +155 -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 +3037 -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 +238 -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 +382 -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/mb_conv.rb +10 -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 +1142 -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/rt/event_list.rb +17 -0
- data/lib/wx/doc/gen/rt/shared_evt_handler.rb +14 -0
- data/lib/wx/doc/gen/rt/thread_event.rb +71 -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 +516 -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/web/event_list.rb +95 -0
- data/lib/wx/doc/gen/web/web_view.rb +1136 -0
- data/lib/wx/doc/gen/web/web_view_event.rb +210 -0
- data/lib/wx/doc/gen/web/web_view_handler.rb +318 -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/html/html_help_controller.rb +23 -1
- data/lib/wx/doc/mbconv.rb +108 -0
- data/lib/wx/doc/rt/shared_event_handler.rb +49 -0
- data/lib/wx/doc/rt/thread_event.rb +28 -0
- data/lib/wx/doc/tip_window.rb +18 -6
- data/lib/wx/doc/webview.rb +40 -0
- data/lib/wx/grid/events/evt_list.rb +166 -0
- data/lib/wx/helpers.rb +1 -1
- data/lib/wx/html/events/evt_list.rb +27 -0
- data/lib/wx/html/htmlhelpcontroller.rb +10 -0
- data/lib/wx/html/simple_html_listbox.rb +46 -33
- data/lib/wx/keyword_defs.rb +20 -0
- data/lib/wx/pg/events/evt_list.rb +73 -0
- data/lib/wx/pg/pg_property.rb +26 -0
- data/lib/wx/pg/property_grid_interface.rb +2 -2
- data/lib/wx/rbn/events/evt_list.rb +102 -0
- data/lib/wx/rt/events/evt_list.rb +8 -0
- data/lib/wx/rt/require.rb +8 -0
- data/lib/wx/rt/thread_event.rb +14 -0
- data/lib/wx/rt.rb +16 -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/web/events/evt_list.rb +74 -0
- data/lib/wx/web/require.rb +8 -0
- data/lib/wx/web/webview.rb +106 -0
- data/lib/wx/web.rb +17 -0
- data/lib/wx/wxruby/cmd/setup.rb +21 -0
- data/lib/wx.rb +2 -0
- data/rakelib/configure.rb +33 -0
- data/rakelib/gem.rake +3 -2
- data/rakelib/gem.rb +3 -2
- data/rakelib/install.rb +54 -27
- data/rakelib/lib/config/linux.rb +1 -1
- data/rakelib/lib/config/macosx.rb +22 -6
- data/rakelib/lib/config/mingw.rb +66 -5
- data/rakelib/lib/config/pkgman/linux.rb +7 -2
- data/rakelib/lib/config/pkgman/mingw.rb +1 -1
- data/rakelib/lib/config/unixish.rb +7 -5
- data/rakelib/lib/config.rb +52 -7
- data/rakelib/lib/core/include/client_data.inc +38 -17
- data/rakelib/lib/core/include/funcall.inc +1 -1
- data/rakelib/lib/core/include/swigdirector.inc +6 -6
- data/rakelib/lib/core/include/swigrubyerrors.inc +4 -8
- data/rakelib/lib/core/include/swigrubyrun.inc +34 -30
- data/rakelib/lib/core/include/swigrun.inc +189 -0
- data/rakelib/lib/core/package.rb +3 -3
- data/rakelib/lib/director/accelerator.rb +1 -1
- data/rakelib/lib/director/animation.rb +1 -0
- data/rakelib/lib/director/app.rb +1 -8
- data/rakelib/lib/director/app_traits.rb +1 -1
- data/rakelib/lib/director/art_provider.rb +7 -3
- 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/calendar_ctrl.rb +72 -14
- data/rakelib/lib/director/clipboard.rb +2 -0
- data/rakelib/lib/director/comboctrl.rb +0 -7
- data/rakelib/lib/director/context_help_button.rb +35 -2
- 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 +59 -30
- data/rakelib/lib/director/fs_file.rb +15 -10
- data/rakelib/lib/director/functions.rb +17 -0
- data/rakelib/lib/director/geometry.rb +5 -0
- data/rakelib/lib/director/grid_cell_attr.rb +1 -3
- data/rakelib/lib/director/grid_cell_editor.rb +14 -12
- data/rakelib/lib/director/grid_cell_renderer.rb +11 -8
- data/rakelib/lib/director/grid_ctrl.rb +231 -117
- data/rakelib/lib/director/help_controller.rb +70 -2
- data/rakelib/lib/director/help_provider.rb +1 -1
- data/rakelib/lib/director/html_listbox.rb +16 -3
- data/rakelib/lib/director/hvscrolled.rb +7 -106
- data/rakelib/lib/director/image_list.rb +1 -0
- data/rakelib/lib/director/mb_conv.rb +30 -0
- data/rakelib/lib/director/mdi_frame.rb +4 -0
- data/rakelib/lib/director/menu.rb +113 -22
- data/rakelib/lib/director/menu_bar.rb +103 -2
- 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/persistence_manager.rb +3 -2
- data/rakelib/lib/director/popup_window.rb +2 -0
- data/rakelib/lib/director/preview_frame.rb +28 -5
- 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_buffer.rb +5 -2
- 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 +4 -1
- data/rakelib/lib/director/scrolled_t.rb +3 -0
- data/rakelib/lib/director/searchctrl.rb +1 -0
- data/rakelib/lib/director/shared_evt_handler.rb +30 -0
- data/rakelib/lib/director/sizer.rb +8 -17
- data/rakelib/lib/director/sizer_item.rb +3 -4
- data/rakelib/lib/director/task_bar_icon.rb +18 -12
- data/rakelib/lib/director/text_validator.rb +9 -0
- data/rakelib/lib/director/thread_event.rb +33 -0
- data/rakelib/lib/director/tip_window.rb +117 -6
- data/rakelib/lib/director/tool_bar.rb +6 -0
- data/rakelib/lib/director/validator.rb +15 -1
- data/rakelib/lib/director/variant.rb +48 -28
- data/rakelib/lib/director/vlistbox.rb +25 -22
- data/rakelib/lib/director/webview.rb +166 -0
- data/rakelib/lib/director/webview_event.rb +37 -0
- data/rakelib/lib/director/webview_handler.rb +63 -0
- data/rakelib/lib/director/window.rb +10 -1
- 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/thread_event.yaml +20 -0
- data/rakelib/lib/generate/doc/web_view.yaml +135 -0
- data/rakelib/lib/generate/doc/web_view_event.yaml +38 -0
- data/rakelib/lib/generate/doc/web_view_handler.yaml +58 -0
- data/rakelib/lib/generate/doc.rb +12 -7
- data/rakelib/lib/generate/interface.rb +16 -1
- data/rakelib/lib/specs/interfaces.rb +15 -1
- data/rakelib/lib/swig_runner.rb +10 -10
- data/rakelib/lib/typemap/aui_tabctrl.rb +46 -0
- data/rakelib/lib/typemap/common.rb +37 -4
- data/rakelib/lib/typemap/mb_conv.rb +58 -0
- data/rakelib/lib/typemap/print_page_range.rb +32 -8
- data/rakelib/prepost.rake +23 -31
- data/rakelib/prepost.rb +20 -0
- 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/event/threaded.rb +295 -42
- data/samples/event/tn_threaded.png +0 -0
- data/samples/help/doc/back.gif +0 -0
- data/samples/help/doc/contents.gif +0 -0
- data/samples/help/doc/cshelp.txt +9 -0
- data/samples/help/doc/doc.chm +0 -0
- data/samples/help/doc/doc.cnt +8 -0
- data/samples/help/doc/doc.h +7 -0
- data/samples/help/doc/doc.hhc +40 -0
- data/samples/help/doc/doc.hhk +31 -0
- data/samples/help/doc/doc.hhp +33 -0
- data/samples/help/doc/doc.hpj +21 -0
- data/samples/help/doc/doc.htm +27 -0
- data/samples/help/doc/doc1.htm +24 -0
- data/samples/help/doc/doc2.htm +12 -0
- data/samples/help/doc/doc3.htm +12 -0
- data/samples/help/doc/doc4.htm +12 -0
- data/samples/help/doc/doc5.htm +14 -0
- data/samples/help/doc/forward.gif +0 -0
- data/samples/help/doc/up.gif +0 -0
- data/samples/help/doc.chm +0 -0
- data/samples/help/doc.chw +0 -0
- data/samples/help/doc.zip +0 -0
- data/samples/help/help.rb +352 -0
- data/samples/help/tn_help.png +0 -0
- 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/samples/webview/handler_advanced.html +55 -0
- data/samples/webview/tn_webview.png +0 -0
- data/samples/webview/webview.rb +1264 -0
- data/tests/assets/handler_advanced.html +55 -0
- data/tests/assets/test.css +1 -0
- data/tests/assets/test.html +9 -0
- data/tests/assets/test.zip +0 -0
- 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/text_entry_tests.rb +2 -2
- data/tests/lib/wxapp_runner.rb +65 -35
- data/tests/lib/wxframe_runner.rb +40 -13
- 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 +14 -14
- 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 +9 -9
- data/tests/test_combo_ctrl.rb +2 -2
- data/tests/test_config.rb +17 -7
- 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 +10 -8
- data/tests/test_ext_controls.rb +13 -13
- data/tests/test_file_dialog.rb +6 -6
- data/tests/test_font.rb +8 -8
- data/tests/test_gdi_object.rb +1 -1
- data/tests/test_geometry.rb +2 -2
- data/tests/test_grid_ctrl.rb +133 -0
- data/tests/test_grid_sizer.rb +2 -2
- data/tests/test_help.rb +88 -0
- data/tests/test_intl.rb +2 -2
- 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 +15 -7
- data/tests/test_menu.rb +81 -2
- data/tests/test_persistence.rb +1 -1
- data/tests/test_proof_check.rb +6 -6
- data/tests/test_propgrid.rb +32 -32
- data/tests/test_richtext.rb +10 -24
- data/tests/test_secret_store.rb +1 -1
- data/tests/test_shared_event_handler.rb +141 -0
- data/tests/test_sizer.rb +1 -1
- data/tests/test_std_controls.rb +13 -13
- 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_webview.rb +492 -0
- data/tests/test_window.rb +14 -14
- data/tests/testapp.rb +2 -2
- data/tests/testapp_noframe.rb +2 -2
- metadata +476 -11
- data/lib/wx/aui/aui_tab_ctrl.rb +0 -18
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
// Copyright (c) 2023 M.J.N. Corino, The Netherlands
|
|
2
|
+
//
|
|
3
|
+
// This software is released under the MIT license.
|
|
4
|
+
|
|
5
|
+
#ifndef _WXRUBY_SHAREDPTR_H_
|
|
6
|
+
#define _WXRUBY_SHAREDPTR_H_
|
|
7
|
+
|
|
8
|
+
/*
|
|
9
|
+
A shared pointer class to wrap wxSharedPtr for derived classes and allowing implicit
|
|
10
|
+
conversion to wxSharedPtr without loosing reference counting and implicit down casting.
|
|
11
|
+
*/
|
|
12
|
+
#include <wx/sharedptr.h>
|
|
13
|
+
|
|
14
|
+
template <class T, class Base = T>
|
|
15
|
+
class WxRubySharedPtr
|
|
16
|
+
{
|
|
17
|
+
public:
|
|
18
|
+
typedef T* ptr_t;
|
|
19
|
+
typedef wxSharedPtr<Base> shared_ptr_t;
|
|
20
|
+
|
|
21
|
+
explicit WxRubySharedPtr( T* ptr = nullptr )
|
|
22
|
+
: shared_ptr_(ptr)
|
|
23
|
+
{
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
WxRubySharedPtr(const WxRubySharedPtr& other)
|
|
27
|
+
: shared_ptr_(other.get_shared())
|
|
28
|
+
{}
|
|
29
|
+
|
|
30
|
+
WxRubySharedPtr(WxRubySharedPtr&& other)
|
|
31
|
+
: shared_ptr_(std::move (other.get_shared()))
|
|
32
|
+
{}
|
|
33
|
+
|
|
34
|
+
#if !defined(SWIG)
|
|
35
|
+
template<typename _Tp1, typename = typename
|
|
36
|
+
std::enable_if<std::is_convertible<typename _Tp1::ptr_t, T*>::value>::type>
|
|
37
|
+
WxRubySharedPtr(const _Tp1& other)
|
|
38
|
+
: shared_ptr_(other.get_shared())
|
|
39
|
+
{}
|
|
40
|
+
|
|
41
|
+
template<typename _Tp1, typename = typename
|
|
42
|
+
std::enable_if<std::is_convertible<typename _Tp1::ptr_t, T*>::value>::type>
|
|
43
|
+
WxRubySharedPtr(_Tp1&& other)
|
|
44
|
+
: shared_ptr_(std::move(other.get_shared()))
|
|
45
|
+
{}
|
|
46
|
+
#endif
|
|
47
|
+
|
|
48
|
+
WxRubySharedPtr& operator=(const WxRubySharedPtr& other)
|
|
49
|
+
{
|
|
50
|
+
this->shared_ptr_ = other.get_shared();
|
|
51
|
+
return *this;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
WxRubySharedPtr& operator=( T* ptr )
|
|
55
|
+
{
|
|
56
|
+
this->shared_ptr_ = ptr;
|
|
57
|
+
return *this;
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
#if !defined(SWIG)
|
|
61
|
+
template<typename _Tp1, typename = typename
|
|
62
|
+
std::enable_if<std::is_convertible<typename _Tp1::ptr_t, T*>::value>::type>
|
|
63
|
+
WxRubySharedPtr& operator=(const _Tp1& other)
|
|
64
|
+
{
|
|
65
|
+
this->shared_ptr_ = other.get_shared();
|
|
66
|
+
return *this;
|
|
67
|
+
}
|
|
68
|
+
#endif
|
|
69
|
+
|
|
70
|
+
T* operator->()
|
|
71
|
+
{
|
|
72
|
+
return const_cast<T*> (this->_get());
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
const T* operator->() const
|
|
76
|
+
{
|
|
77
|
+
return this->_get();
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
const T* get() const
|
|
81
|
+
{
|
|
82
|
+
return this->_get();
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
void reset( T* ptr = nullptr )
|
|
86
|
+
{
|
|
87
|
+
this->shared_ptr_.reset(ptr);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
shared_ptr_t get_shared() const { return this->shared_ptr_; }
|
|
91
|
+
|
|
92
|
+
operator shared_ptr_t() const { return this->get_shared(); }
|
|
93
|
+
|
|
94
|
+
private:
|
|
95
|
+
|
|
96
|
+
const T* _get() const
|
|
97
|
+
{
|
|
98
|
+
return dynamic_cast<const T*> (this->shared_ptr_.get());
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
shared_ptr_t shared_ptr_;
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
#endif
|
|
@@ -39,8 +39,85 @@ private:
|
|
|
39
39
|
|
|
40
40
|
// Exported runtime helper methods
|
|
41
41
|
|
|
42
|
+
// Debug tracing support
|
|
42
43
|
#ifdef __WXRB_DEBUG__
|
|
43
|
-
|
|
44
|
+
#include <cstdlib>
|
|
45
|
+
#include <string>
|
|
46
|
+
#include <algorithm>
|
|
47
|
+
#include <ctype.h>
|
|
48
|
+
|
|
49
|
+
class WxRubyTraceGuard
|
|
50
|
+
{
|
|
51
|
+
public:
|
|
52
|
+
WxRubyTraceGuard(const std::string& trace_id)
|
|
53
|
+
{
|
|
54
|
+
std::string trace_env_id = to_uppercase(trace_id);
|
|
55
|
+
while (!trace_env_id.empty())
|
|
56
|
+
{
|
|
57
|
+
// see if we can find a trace setting which starts with 'WXRUBY_TRACE_'
|
|
58
|
+
// followed by the trace id
|
|
59
|
+
std::string trace_env_var = std::string("WXRUBY_TRACE_") + trace_env_id;
|
|
60
|
+
char* env_val = std::getenv(trace_env_var.c_str());
|
|
61
|
+
if (env_val)
|
|
62
|
+
{
|
|
63
|
+
// trace setting found
|
|
64
|
+
this->_trace_lvl = std::atoi(env_val);
|
|
65
|
+
break; // done
|
|
66
|
+
}
|
|
67
|
+
// see if there is a parent trace category we can check
|
|
68
|
+
std::string::size_type offs = trace_env_id.find_last_of('_');
|
|
69
|
+
if (offs != std::string::npos )
|
|
70
|
+
{
|
|
71
|
+
// reduce the id to possible parent category
|
|
72
|
+
trace_env_id = trace_env_id.substr(0, offs);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
if (offs == std::string::npos || trace_env_id.empty())
|
|
76
|
+
{
|
|
77
|
+
// check for global tracing
|
|
78
|
+
env_val = std::getenv("WXRUBY_TRACE");
|
|
79
|
+
if (env_val)
|
|
80
|
+
{
|
|
81
|
+
// trace setting found
|
|
82
|
+
this->_trace_lvl = std::atoi(env_val);
|
|
83
|
+
}
|
|
84
|
+
break; // done
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
int trace_level() { return this->_trace_lvl; }
|
|
90
|
+
|
|
91
|
+
private:
|
|
92
|
+
std::string to_uppercase(std::string s)
|
|
93
|
+
{
|
|
94
|
+
std::transform(s.begin(), s.end(), s.begin(), [](unsigned char c){ return std::toupper(c); });
|
|
95
|
+
return s;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
int _trace_lvl {};
|
|
99
|
+
};
|
|
100
|
+
|
|
101
|
+
#define WXRUBY_TRACE_GUARD(name, trace_id) static WxRubyTraceGuard name (trace_id);
|
|
102
|
+
|
|
103
|
+
#define WXRUBY_TRACE_IF(__trace_guard__, __level__) \
|
|
104
|
+
if (__trace_guard__.trace_level() >= __level__) {
|
|
105
|
+
|
|
106
|
+
#define WXRUBY_TRACE_WITH(__stmt__) __stmt__ ;
|
|
107
|
+
|
|
108
|
+
#define WXRUBY_TRACE(__stmt__) \
|
|
109
|
+
std::wcout << __stmt__ << std::endl;
|
|
110
|
+
|
|
111
|
+
#define WXRUBY_TRACE_END }
|
|
112
|
+
|
|
113
|
+
#else
|
|
114
|
+
|
|
115
|
+
#define WXRUBY_TRACE_GUARD(name, trace_id)
|
|
116
|
+
#define WXRUBY_TRACE_IF(__trace_guard__, __level__)
|
|
117
|
+
#define WXRUBY_TRACE_WITH(__stmt__)
|
|
118
|
+
#define WXRUBY_TRACE(__stmt__)
|
|
119
|
+
#define WXRUBY_TRACE_END
|
|
120
|
+
|
|
44
121
|
#endif
|
|
45
122
|
|
|
46
123
|
WXRUBY_EXPORT VALUE wxRuby_Funcall(VALUE rcvr, ID func, int argc, ...);
|
|
@@ -57,6 +134,35 @@ WXRUBY_EXPORT void wxRuby_AppendMarker(WXRBMarkFunction marker);
|
|
|
57
134
|
WXRUBY_EXPORT VALUE wxRuby_GetTopLevelWindowClass(); // used for wxWindow typemap in typemap.i
|
|
58
135
|
WXRUBY_EXPORT bool GC_IsWindowDeleted(void *ptr);
|
|
59
136
|
|
|
137
|
+
WXRUBY_EXPORT bool GC_IsObjectOwned(VALUE object);
|
|
138
|
+
|
|
139
|
+
#ifdef __cplusplus
|
|
140
|
+
extern "C" {
|
|
141
|
+
#endif
|
|
142
|
+
|
|
143
|
+
WXRUBY_EXPORT void wxRuby_InitializeTracking();
|
|
144
|
+
WXRUBY_EXPORT void wxRuby_AddTracking(void* ptr, VALUE object);
|
|
145
|
+
WXRUBY_EXPORT VALUE wxRuby_FindTracking(void* ptr);
|
|
146
|
+
WXRUBY_EXPORT void wxRuby_RemoveTracking(void* ptr);
|
|
147
|
+
WXRUBY_EXPORT void wxRuby_UnlinkObject(void* ptr);
|
|
148
|
+
|
|
149
|
+
#ifdef __cplusplus
|
|
150
|
+
}
|
|
151
|
+
#endif
|
|
152
|
+
|
|
153
|
+
#include <unordered_map>
|
|
154
|
+
|
|
155
|
+
typedef std::unordered_map<void*, VALUE> TGCTrackingValueMap;
|
|
156
|
+
typedef void (* TGCMarkerFunction)(const TGCTrackingValueMap&);
|
|
157
|
+
|
|
158
|
+
WXRUBY_EXPORT void wxRuby_RegisterTrackingCategory(std::string category, TGCMarkerFunction marker, bool has_data = false);
|
|
159
|
+
WXRUBY_EXPORT void wxRuby_RegisterCategoryValue(const std::string &category, void *ptr, VALUE object);
|
|
160
|
+
WXRUBY_EXPORT void wxRuby_UnregisterCategoryValue(const std::string &category, void *ptr);
|
|
161
|
+
WXRUBY_EXPORT VALUE wxRuby_FindCategoryValue(const std::string &category, void *ptr);
|
|
162
|
+
WXRUBY_EXPORT void wxRuby_UnlinkCategoryValue(const std::string &category, void* ptr);
|
|
163
|
+
|
|
164
|
+
WXRUBY_EXPORT void wxRuby_MarkTracked();
|
|
165
|
+
|
|
60
166
|
// Defined in wx.i; getting, setting and using swig_type <-> ruby class
|
|
61
167
|
// mappings
|
|
62
168
|
WXRUBY_EXPORT swig_type_info* wxRuby_GetSwigTypeForClass(VALUE cls);
|
data/ext/wxruby3/swig/common.i
CHANGED
|
@@ -134,8 +134,8 @@
|
|
|
134
134
|
#include <wx/variant.h>
|
|
135
135
|
#endif
|
|
136
136
|
|
|
137
|
-
#if ! wxCHECK_VERSION(3,
|
|
138
|
-
#error "This version of wxRuby requires WxWidgets 3.
|
|
137
|
+
#if ! wxCHECK_VERSION(3,2,0)
|
|
138
|
+
#error "This version of wxRuby requires WxWidgets 3.2.0 or greater"
|
|
139
139
|
#endif
|
|
140
140
|
|
|
141
141
|
#include "wxruby-runtime.h"
|
|
@@ -109,7 +109,7 @@ namespace Swig {
|
|
|
109
109
|
void setup_error(VALUE error);
|
|
110
110
|
|
|
111
111
|
public:
|
|
112
|
-
virtual ~DirectorException()
|
|
112
|
+
virtual ~DirectorException() SWIG_NOEXCEPT;
|
|
113
113
|
|
|
114
114
|
VALUE getType() const
|
|
115
115
|
{
|
|
@@ -127,7 +127,7 @@ namespace Swig {
|
|
|
127
127
|
return swig_msg;
|
|
128
128
|
}
|
|
129
129
|
|
|
130
|
-
const char *what() const
|
|
130
|
+
const char *what() const SWIG_NOEXCEPT
|
|
131
131
|
{
|
|
132
132
|
return swig_msg.c_str();
|
|
133
133
|
}
|
|
@@ -7,6 +7,8 @@
|
|
|
7
7
|
|
|
8
8
|
/* auxiliary ruby fail method */
|
|
9
9
|
|
|
10
|
+
// SWIG < 4.4.0
|
|
11
|
+
#if SWIG_VERSION < 0x040400
|
|
10
12
|
%fragment("SWIG_ruby_failed","header")
|
|
11
13
|
{
|
|
12
14
|
SWIGINTERN VALUE
|
|
@@ -15,18 +17,16 @@ SWIG_ruby_failed(void)
|
|
|
15
17
|
return Qnil;
|
|
16
18
|
}
|
|
17
19
|
}
|
|
18
|
-
|
|
19
|
-
%
|
|
20
|
-
SWIGINTERN VALUE SWIG_AUX_##Method##(VALUE *args)
|
|
20
|
+
#else
|
|
21
|
+
%fragment("SWIG_ruby_failed","header")
|
|
21
22
|
{
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
return obj;
|
|
23
|
+
SWIGINTERN VALUE
|
|
24
|
+
SWIG_ruby_failed(VALUE SWIGUNUSEDPARM(arg1), VALUE SWIGUNUSEDPARM(arg2))
|
|
25
|
+
{
|
|
26
|
+
return Qnil;
|
|
27
27
|
}
|
|
28
|
-
|
|
29
|
-
|
|
28
|
+
}
|
|
29
|
+
#endif
|
|
30
30
|
|
|
31
31
|
/* boolean */
|
|
32
32
|
|
|
@@ -68,7 +68,14 @@ SWIG_AsVal_dec(bool)(VALUE obj, bool *val)
|
|
|
68
68
|
}
|
|
69
69
|
|
|
70
70
|
%fragment(SWIG_AsVal_frag(long),"header",fragment="SWIG_ruby_failed") {
|
|
71
|
-
|
|
71
|
+
SWIGINTERN VALUE SWIG_AUX_NUM2LONG(VALUE* args)
|
|
72
|
+
{
|
|
73
|
+
VALUE obj = args[0];
|
|
74
|
+
VALUE type = TYPE(obj);
|
|
75
|
+
long *res = (long *)(args[1]);
|
|
76
|
+
*res = (type != T_BIGNUM) ? NUM2LONG(obj) : rb_big2long(obj);
|
|
77
|
+
return obj;
|
|
78
|
+
}
|
|
72
79
|
|
|
73
80
|
SWIGINTERN int
|
|
74
81
|
SWIG_AsVal_dec(long)(VALUE obj, long* val)
|
|
@@ -100,7 +107,14 @@ SWIG_From_dec(unsigned long)(unsigned long value)
|
|
|
100
107
|
}
|
|
101
108
|
|
|
102
109
|
%fragment(SWIG_AsVal_frag(unsigned long),"header",fragment="SWIG_ruby_failed") {
|
|
103
|
-
|
|
110
|
+
SWIGINTERN VALUE SWIG_AUX_NUM2ULONG(VALUE* args)
|
|
111
|
+
{
|
|
112
|
+
VALUE obj = args[0];
|
|
113
|
+
VALUE type = TYPE(obj);
|
|
114
|
+
unsigned long *res = (unsigned long *)(args[1]);
|
|
115
|
+
*res = (type != T_BIGNUM) ? NUM2ULONG(obj) : rb_big2ulong(obj);
|
|
116
|
+
return obj;
|
|
117
|
+
}
|
|
104
118
|
|
|
105
119
|
SWIGINTERN int
|
|
106
120
|
SWIG_AsVal_dec(unsigned long)(VALUE obj, unsigned long *val)
|
|
@@ -112,6 +126,10 @@ SWIG_AsVal_dec(unsigned long)(VALUE obj, unsigned long *val)
|
|
|
112
126
|
a[0] = obj;
|
|
113
127
|
a[1] = (VALUE)(&v);
|
|
114
128
|
if (rb_rescue(RUBY_METHOD_FUNC(SWIG_AUX_NUM2ULONG), (VALUE)a, RUBY_METHOD_FUNC(SWIG_ruby_failed), 0) != Qnil) {
|
|
129
|
+
#if SWIG_VERSION >= 0x040400
|
|
130
|
+
if (rb_funcall(obj, swig_lowerthan_id, 1, INT2FIX(0)) != Qfalse)
|
|
131
|
+
return SWIG_OverflowError;
|
|
132
|
+
#endif
|
|
115
133
|
if (val) *val = v;
|
|
116
134
|
return SWIG_OK;
|
|
117
135
|
}
|
|
@@ -138,7 +156,14 @@ SWIG_From_dec(long long)(long long value)
|
|
|
138
156
|
fragment="SWIG_ruby_failed",
|
|
139
157
|
fragment="SWIG_LongLongAvailable") {
|
|
140
158
|
%#ifdef SWIG_LONG_LONG_AVAILABLE
|
|
141
|
-
|
|
159
|
+
SWIGINTERN VALUE SWIG_AUX_NUM2LL(VALUE* args)
|
|
160
|
+
{
|
|
161
|
+
VALUE obj = args[0];
|
|
162
|
+
VALUE type = TYPE(obj);
|
|
163
|
+
long long *res = (long long *)(args[1]);
|
|
164
|
+
*res = (type != T_BIGNUM) ? NUM2LL(obj) : rb_big2ll(obj);
|
|
165
|
+
return obj;
|
|
166
|
+
}
|
|
142
167
|
|
|
143
168
|
SWIGINTERN int
|
|
144
169
|
SWIG_AsVal_dec(long long)(VALUE obj, long long *val)
|
|
@@ -176,7 +201,14 @@ SWIG_From_dec(unsigned long long)(unsigned long long value)
|
|
|
176
201
|
fragment="SWIG_ruby_failed",
|
|
177
202
|
fragment="SWIG_LongLongAvailable") {
|
|
178
203
|
%#ifdef SWIG_LONG_LONG_AVAILABLE
|
|
179
|
-
|
|
204
|
+
SWIGINTERN VALUE SWIG_AUX_NUM2ULL(VALUE* args)
|
|
205
|
+
{
|
|
206
|
+
VALUE obj = args[0];
|
|
207
|
+
VALUE type = TYPE(obj);
|
|
208
|
+
long long *res = (long long *)(args[1]);
|
|
209
|
+
*res = (type != T_BIGNUM) ? NUM2ULL(obj) : rb_big2ull(obj);
|
|
210
|
+
return obj;
|
|
211
|
+
}
|
|
180
212
|
|
|
181
213
|
SWIGINTERN int
|
|
182
214
|
SWIG_AsVal_dec(unsigned long long)(VALUE obj, unsigned long long *val)
|
|
@@ -188,6 +220,10 @@ SWIG_AsVal_dec(unsigned long long)(VALUE obj, unsigned long long *val)
|
|
|
188
220
|
a[0] = obj;
|
|
189
221
|
a[1] = (VALUE)(&v);
|
|
190
222
|
if (rb_rescue(RUBY_METHOD_FUNC(SWIG_AUX_NUM2ULL), (VALUE)a, RUBY_METHOD_FUNC(SWIG_ruby_failed), 0) != Qnil) {
|
|
223
|
+
#if SWIG_VERSION >= 0x040400
|
|
224
|
+
if (rb_funcall(obj, swig_lowerthan_id, 1, INT2FIX(0)) != Qfalse)
|
|
225
|
+
return SWIG_OverflowError;
|
|
226
|
+
#endif
|
|
191
227
|
if (val) *val = v;
|
|
192
228
|
return SWIG_OK;
|
|
193
229
|
}
|
|
@@ -204,7 +240,15 @@ SWIG_AsVal_dec(unsigned long long)(VALUE obj, unsigned long long *val)
|
|
|
204
240
|
}
|
|
205
241
|
|
|
206
242
|
%fragment(SWIG_AsVal_frag(double),"header",fragment="SWIG_ruby_failed") {
|
|
207
|
-
|
|
243
|
+
SWIGINTERN VALUE SWIG_AUX_NUM2DBL(VALUE* args)
|
|
244
|
+
{
|
|
245
|
+
//VALUE *args = (VALUE *)arg;
|
|
246
|
+
VALUE obj = args[0];
|
|
247
|
+
VALUE type = TYPE(obj);
|
|
248
|
+
double *res = (double *)(args[1]);
|
|
249
|
+
*res = NUM2DBL(obj); (void)type;
|
|
250
|
+
return obj;
|
|
251
|
+
}
|
|
208
252
|
|
|
209
253
|
SWIGINTERN int
|
|
210
254
|
SWIG_AsVal_dec(double)(VALUE obj, double *val)
|
|
@@ -77,6 +77,10 @@ typedef struct WXRUBY_EXPORT swig_class {
|
|
|
77
77
|
int trackObjects;
|
|
78
78
|
} swig_class;
|
|
79
79
|
|
|
80
|
+
#if SWIG_VERSION >= 0x040400
|
|
81
|
+
extern ID swig_lowerthan_id;
|
|
82
|
+
#endif
|
|
83
|
+
|
|
80
84
|
/*
|
|
81
85
|
If your swig extension is to be run within an embedded ruby and has
|
|
82
86
|
director callbacks, you should set -DRUBY_EMBEDDED during compilation.
|
|
@@ -15,43 +15,33 @@ extern "C" {
|
|
|
15
15
|
#endif
|
|
16
16
|
|
|
17
17
|
// Shared custom swig tracking functions
|
|
18
|
+
WXRUBY_EXPORT void wxRuby_InitializeTracking();
|
|
18
19
|
WXRUBY_EXPORT void wxRuby_AddTracking(void* ptr, VALUE object);
|
|
19
20
|
WXRUBY_EXPORT VALUE wxRuby_FindTracking(void* ptr);
|
|
20
21
|
WXRUBY_EXPORT void wxRuby_RemoveTracking(void* ptr);
|
|
21
|
-
WXRUBY_EXPORT void wxRuby_IterateTracking( void(*meth)(void* ptr, VALUE obj) );
|
|
22
22
|
|
|
23
|
-
/* Setup a Ruby hash table to store Trackings
|
|
24
|
-
|
|
25
|
-
// no-op
|
|
26
|
-
}
|
|
23
|
+
/* Setup a Ruby hash table to store Trackings */
|
|
24
|
+
#define SWIG_RubyInitializeTrackings()
|
|
27
25
|
|
|
28
26
|
/* Add a Tracking from a C/C++ struct to a Ruby object */
|
|
29
|
-
|
|
30
|
-
wxRuby_AddTracking(ptr, object);
|
|
31
|
-
}
|
|
27
|
+
#define SWIG_RubyAddTracking wxRuby_AddTracking
|
|
32
28
|
|
|
33
29
|
/* Get the Ruby object that owns the specified C/C++ struct */
|
|
34
|
-
|
|
35
|
-
return wxRuby_FindTracking(ptr);
|
|
36
|
-
}
|
|
30
|
+
#define SWIG_RubyInstanceFor wxRuby_FindTracking
|
|
37
31
|
|
|
38
32
|
/* Remove a Tracking from a C/C++ struct to a Ruby object. It
|
|
39
33
|
is very important to remove objects once they are destroyed
|
|
40
34
|
since the same memory address may be reused later to create
|
|
41
35
|
a new object. */
|
|
42
|
-
|
|
43
|
-
wxRuby_RemoveTracking(ptr);
|
|
44
|
-
}
|
|
36
|
+
#define SWIG_RubyRemoveTracking wxRuby_RemoveTracking
|
|
45
37
|
|
|
46
38
|
/* This is a helper method that unlinks a Ruby object from its
|
|
47
39
|
underlying C++ object. This is needed if the lifetime of the
|
|
48
40
|
Ruby object is longer than the C++ object */
|
|
49
|
-
|
|
50
|
-
VALUE object = SWIG_RubyInstanceFor(ptr);
|
|
41
|
+
#define SWIG_RubyUnlinkObjects wxRuby_UnlinkObject
|
|
51
42
|
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
}
|
|
43
|
+
SWIGRUNTIMEINLINE void SWIG_RubyIterateTrackings( void(*meth)(void* ptr, VALUE obj) ) {
|
|
44
|
+
// noop
|
|
55
45
|
}
|
|
56
46
|
|
|
57
47
|
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/* -----------------------------------------------------------------------------
|
|
2
|
+
* This section contains generic SWIG labels for method/variable
|
|
3
|
+
* declarations/attributes, and other compiler dependent labels.
|
|
4
|
+
* ----------------------------------------------------------------------------- */
|
|
5
|
+
|
|
6
|
+
/* template workaround for compilers that cannot correctly implement the C++ standard */
|
|
7
|
+
#ifndef SWIGTEMPLATEDISAMBIGUATOR
|
|
8
|
+
# if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
|
|
9
|
+
# define SWIGTEMPLATEDISAMBIGUATOR template
|
|
10
|
+
# elif defined(__HP_aCC)
|
|
11
|
+
/* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
|
|
12
|
+
/* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
|
|
13
|
+
# define SWIGTEMPLATEDISAMBIGUATOR template
|
|
14
|
+
# else
|
|
15
|
+
# define SWIGTEMPLATEDISAMBIGUATOR
|
|
16
|
+
# endif
|
|
17
|
+
#endif
|
|
18
|
+
|
|
19
|
+
/* inline attribute */
|
|
20
|
+
#ifndef SWIGINLINE
|
|
21
|
+
# if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
|
|
22
|
+
# define SWIGINLINE inline
|
|
23
|
+
# else
|
|
24
|
+
# define SWIGINLINE
|
|
25
|
+
# endif
|
|
26
|
+
#endif
|
|
27
|
+
|
|
28
|
+
/* attribute recognised by some compilers to avoid 'unused' warnings */
|
|
29
|
+
#ifndef SWIGUNUSED
|
|
30
|
+
# if defined(__GNUC__)
|
|
31
|
+
# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
|
|
32
|
+
# define SWIGUNUSED __attribute__ ((__unused__))
|
|
33
|
+
# else
|
|
34
|
+
# define SWIGUNUSED
|
|
35
|
+
# endif
|
|
36
|
+
# elif defined(__ICC)
|
|
37
|
+
# define SWIGUNUSED __attribute__ ((__unused__))
|
|
38
|
+
# else
|
|
39
|
+
# define SWIGUNUSED
|
|
40
|
+
# endif
|
|
41
|
+
#endif
|
|
42
|
+
|
|
43
|
+
#ifndef SWIG_MSC_UNSUPPRESS_4505
|
|
44
|
+
# if defined(_MSC_VER)
|
|
45
|
+
# pragma warning(disable : 4505) /* unreferenced local function has been removed */
|
|
46
|
+
# endif
|
|
47
|
+
#endif
|
|
48
|
+
|
|
49
|
+
#ifndef SWIGUNUSEDPARM
|
|
50
|
+
# ifdef __cplusplus
|
|
51
|
+
# define SWIGUNUSEDPARM(p)
|
|
52
|
+
# else
|
|
53
|
+
# define SWIGUNUSEDPARM(p) p SWIGUNUSED
|
|
54
|
+
# endif
|
|
55
|
+
#endif
|
|
56
|
+
|
|
57
|
+
/* internal SWIG method */
|
|
58
|
+
#ifndef SWIGINTERN
|
|
59
|
+
# define SWIGINTERN static SWIGUNUSED
|
|
60
|
+
#endif
|
|
61
|
+
|
|
62
|
+
/* internal inline SWIG method */
|
|
63
|
+
#ifndef SWIGINTERNINLINE
|
|
64
|
+
# define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
|
|
65
|
+
#endif
|
|
66
|
+
|
|
67
|
+
/* exporting methods */
|
|
68
|
+
#if defined(__GNUC__)
|
|
69
|
+
# if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
|
|
70
|
+
# ifndef GCC_HASCLASSVISIBILITY
|
|
71
|
+
# define GCC_HASCLASSVISIBILITY
|
|
72
|
+
# endif
|
|
73
|
+
# endif
|
|
74
|
+
#endif
|
|
75
|
+
|
|
76
|
+
#ifndef SWIGEXPORT
|
|
77
|
+
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
|
|
78
|
+
# if defined(STATIC_LINKED)
|
|
79
|
+
# define SWIGEXPORT
|
|
80
|
+
# else
|
|
81
|
+
# define SWIGEXPORT __declspec(dllexport)
|
|
82
|
+
# endif
|
|
83
|
+
# else
|
|
84
|
+
# if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
|
|
85
|
+
# define SWIGEXPORT __attribute__ ((visibility("default")))
|
|
86
|
+
# else
|
|
87
|
+
# define SWIGEXPORT
|
|
88
|
+
# endif
|
|
89
|
+
# endif
|
|
90
|
+
#endif
|
|
91
|
+
|
|
92
|
+
/* calling conventions for Windows */
|
|
93
|
+
#ifndef SWIGSTDCALL
|
|
94
|
+
# if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
|
|
95
|
+
# define SWIGSTDCALL __stdcall
|
|
96
|
+
# else
|
|
97
|
+
# define SWIGSTDCALL
|
|
98
|
+
# endif
|
|
99
|
+
#endif
|
|
100
|
+
|
|
101
|
+
/* Deal with Microsoft's attempt at deprecating C standard runtime functions */
|
|
102
|
+
#if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
|
|
103
|
+
# define _CRT_SECURE_NO_DEPRECATE
|
|
104
|
+
#endif
|
|
105
|
+
|
|
106
|
+
/* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
|
|
107
|
+
#if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
|
|
108
|
+
# define _SCL_SECURE_NO_DEPRECATE
|
|
109
|
+
#endif
|
|
110
|
+
|
|
111
|
+
/* Deal with Apple's deprecated 'AssertMacros.h' from Carbon-framework */
|
|
112
|
+
#if defined(__APPLE__) && !defined(__ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES)
|
|
113
|
+
# define __ASSERT_MACROS_DEFINE_VERSIONS_WITHOUT_UNDERSCORES 0
|
|
114
|
+
#endif
|
|
115
|
+
|
|
116
|
+
/* Intel's compiler complains if a variable which was never initialised is
|
|
117
|
+
* cast to void, which is a common idiom which we use to indicate that we
|
|
118
|
+
* are aware a variable isn't used. So we just silence that warning.
|
|
119
|
+
* See: https://github.com/swig/swig/issues/192 for more discussion.
|
|
120
|
+
*/
|
|
121
|
+
#ifdef __INTEL_COMPILER
|
|
122
|
+
# pragma warning disable 592
|
|
123
|
+
#endif
|
|
124
|
+
|
|
125
|
+
#if defined(__cplusplus) && __cplusplus >=201103L
|
|
126
|
+
# define SWIG_NOEXCEPT noexcept
|
|
127
|
+
#else
|
|
128
|
+
# define SWIG_NOEXCEPT throw()
|
|
129
|
+
#endif
|
|
@@ -12,7 +12,11 @@
|
|
|
12
12
|
|
|
13
13
|
/* This should only be incremented when either the layout of swig_type_info changes,
|
|
14
14
|
or for whatever reason, the runtime changes incompatibly */
|
|
15
|
+
#if SWIG_VERSION < 0x040400
|
|
15
16
|
#define SWIG_RUNTIME_VERSION "4"
|
|
17
|
+
#else
|
|
18
|
+
#define SWIG_RUNTIME_VERSION "5"
|
|
19
|
+
#endif
|
|
16
20
|
|
|
17
21
|
/* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */
|
|
18
22
|
#ifdef SWIG_TYPE_TABLE
|
|
@@ -213,7 +217,11 @@ typedef struct WXRUBY_EXPORT swig_cast_info
|
|
|
213
217
|
swig_type_info *type; /* pointer to type that is equivalent to this type */
|
|
214
218
|
swig_converter_func converter; /* function to cast the void pointers */
|
|
215
219
|
struct swig_cast_info *next; /* pointer to next cast in linked list */
|
|
220
|
+
#if SWIG_VERSION < 0x040400
|
|
216
221
|
struct swig_cast_info *prev; /* pointer to the previous cast */
|
|
222
|
+
#else
|
|
223
|
+
unsigned int value; /* index of the last valid element in the array | typename hash value */
|
|
224
|
+
#endif
|
|
217
225
|
} swig_cast_info;
|
|
218
226
|
|
|
219
227
|
/* Structure used to store module information
|
|
@@ -256,6 +264,13 @@ SWIG_TypeEquiv(const char *nb, const char *tb) {
|
|
|
256
264
|
return SWIG_TypeCmp(nb, tb) == 0 ? 1 : 0;
|
|
257
265
|
}
|
|
258
266
|
|
|
267
|
+
#if SWIG_VERSION >= 0x040400
|
|
268
|
+
/*
|
|
269
|
+
* Hash function for type name strings, based on maRushPrime1Hash (http://amsoftware.narod.ru/algo2.html)
|
|
270
|
+
*/
|
|
271
|
+
WXRUBY_EXPORT unsigned int SWIG_Hash(const char *str, unsigned int len);
|
|
272
|
+
#endif
|
|
273
|
+
|
|
259
274
|
/*
|
|
260
275
|
Check the typename
|
|
261
276
|
*/
|
|
@@ -126,6 +126,14 @@
|
|
|
126
126
|
#endif
|
|
127
127
|
#endif
|
|
128
128
|
|
|
129
|
+
#if SWIG_VERSION >= 0x040400
|
|
130
|
+
/*==== clear errors ====*/
|
|
131
|
+
|
|
132
|
+
#ifndef %error_clear
|
|
133
|
+
#define %error_clear
|
|
134
|
+
#endif
|
|
135
|
+
#endif
|
|
136
|
+
|
|
129
137
|
/*==== director output exception ====*/
|
|
130
138
|
|
|
131
139
|
/* wxRuby : make sure to pass the object and method that caused the failure */
|
|
@@ -143,15 +151,27 @@
|
|
|
143
151
|
#define %error_block(Block...) %block(Block)
|
|
144
152
|
#define %default_code(code) SWIG_ArgError(code)
|
|
145
153
|
#define %argument_fail(code, type, name, argn) SWIG_exception_fail(%default_code(code), %argfail_fmt(type, name, argn))
|
|
154
|
+
#if SWIG_VERSION < 0x040400
|
|
146
155
|
#define %argument_nullref(type, name, argn) SWIG_exception_fail(SWIG_ValueError, %argnullref_fmt(type, name, argn))
|
|
156
|
+
#else
|
|
157
|
+
#define %argument_nullref(type, name, argn) SWIG_exception_fail(SWIG_NullReferenceError, %argnullref_fmt(type, name, argn))
|
|
158
|
+
#endif
|
|
147
159
|
#define %variable_fail(code, type, name) SWIG_exception_fail(%default_code(code), %varfail_fmt(type, name))
|
|
160
|
+
#if SWIG_VERSION < 0x040400
|
|
148
161
|
#define %variable_nullref(type, name) SWIG_exception_fail(SWIG_ValueError, %varnullref_fmt(type, name))
|
|
162
|
+
#else
|
|
163
|
+
#define %variable_nullref(type, name) SWIG_exception_fail(SWIG_NullReferenceError, %varnullref_fmt(type, name))
|
|
164
|
+
#endif
|
|
149
165
|
#define %releasenotowned_fail(code, type, name, argn) SWIG_exception_fail(%default_code(code), %releasenotownedfail_fmt(type, name, argn))
|
|
150
166
|
|
|
151
167
|
/* wxRuby : make sure to pass the object and method that caused the failure */
|
|
152
168
|
#if defined(SWIG_DIRECTOR_TYPEMAPS)
|
|
153
169
|
#define %dirout_fail(code, type) SWIG_DirOutFail(swig_get_self(), "$symname", %default_code(code), %outfail_fmt(type))
|
|
170
|
+
#if SWIG_VERSION < 0x040400
|
|
154
171
|
#define %dirout_nullref(type) SWIG_DirOutFail(swig_get_self(), "$symname", SWIG_ValueError, %outnullref_fmt(type))
|
|
172
|
+
#else
|
|
173
|
+
#define %dirout_nullref(type) SWIG_DirOutFail(swig_get_self(), "$symname", SWIG_NullReferenceError, %outnullref_fmt(type))
|
|
174
|
+
#endif
|
|
155
175
|
#endif
|
|
156
176
|
|
|
157
177
|
/* -----------------------------------------------------------------------------
|