wxruby3 0.9.0.pre.rc.2 → 0.9.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/INSTALL.md +30 -8
- data/README.md +3 -3
- data/ext/mkrf_conf_srcgem.rb +4 -1
- data/ext/wxruby3/include/wxruby-Config.h +953 -0
- data/ext/wxruby3/include/wxruby-ScaledDC.h +4 -1
- data/ext/wxruby3/include/wxruby-runtime.h +10 -1
- data/ext/wxruby3/swig/RubyStockObjects.i +5 -3
- data/ext/wxruby3/swig/common.i +8 -3
- data/ext/wxruby3/swig/mark_free_impl.i +6 -4
- data/ext/wxruby3/swig/memory_management.i +5 -3
- data/ext/wxruby3/swig/typedefs.i +5 -3
- data/ext/wxruby3/swig/wx.i +7 -0
- data/ext/wxruby3/swig/wx.rc +4 -2
- data/lib/wx/accessors.rb +10 -2
- data/lib/wx/aui/auifloatframe.rb +20 -0
- data/lib/wx/aui/auimanager.rb +3 -0
- data/lib/wx/aui/auinotebook.rb +17 -0
- data/lib/wx/aui/require.rb +5 -1
- data/lib/wx/aui.rb +4 -1
- data/lib/wx/core/acceleratortable.rb +8 -0
- data/lib/wx/core/animation.rb +8 -0
- data/lib/wx/core/app.rb +8 -0
- data/lib/wx/core/array_ext.rb +7 -0
- data/lib/wx/core/art_locator.rb +7 -0
- data/lib/wx/core/artprovider.rb +9 -0
- data/lib/wx/core/bitmap.rb +16 -4
- data/lib/wx/core/bitmap_combobox.rb +7 -0
- data/lib/wx/core/brush.rb +7 -0
- data/lib/wx/core/busycursor.rb +9 -0
- data/lib/wx/core/choice.rb +7 -0
- data/lib/wx/core/choicedlg.rb +7 -0
- data/lib/wx/core/clientdc.rb +9 -0
- data/lib/wx/core/clipboard.rb +8 -0
- data/lib/wx/core/collapsible_pane.rb +8 -1
- data/lib/wx/core/colour.rb +8 -0
- data/lib/wx/core/combo_ctrl.rb +110 -0
- data/lib/wx/core/combobox.rb +7 -0
- data/lib/wx/core/config.rb +303 -0
- data/lib/wx/core/controlwithitems.rb +12 -1
- data/lib/wx/core/cursor.rb +14 -4
- data/lib/wx/core/data_object.rb +7 -0
- data/lib/wx/core/dataformat.rb +9 -0
- data/lib/wx/core/datetime.rb +14 -0
- data/lib/wx/core/dc.rb +7 -0
- data/lib/wx/core/dialog.rb +18 -1
- data/lib/wx/core/enum.rb +7 -0
- data/lib/wx/core/event.rb +7 -0
- data/lib/wx/core/event_blocker.rb +7 -0
- data/lib/wx/core/event_loop.rb +14 -0
- data/lib/wx/core/evthandler.rb +8 -0
- data/lib/wx/core/ext.rb +7 -0
- data/lib/wx/core/file_dialog.rb +23 -0
- data/lib/wx/core/find_replace_dialog.rb +7 -0
- data/lib/wx/core/functions.rb +8 -0
- data/lib/wx/core/gauge.rb +10 -1
- data/lib/wx/core/genericdirctrl.rb +9 -0
- data/lib/wx/core/hboxsizer.rb +16 -0
- data/lib/wx/core/helpcontroller.rb +8 -0
- data/lib/wx/core/helpcontrollerhelpprovider.rb +9 -0
- data/lib/wx/core/helpprovider.rb +10 -1
- data/lib/wx/core/icon.rb +17 -6
- data/lib/wx/core/id_helper.rb +7 -0
- data/lib/wx/core/image.rb +49 -4
- data/lib/wx/core/imagelist.rb +8 -1
- data/lib/wx/core/listbox.rb +7 -0
- data/lib/wx/core/listctrl.rb +26 -13
- data/lib/wx/core/locale.rb +8 -0
- data/lib/wx/core/log.rb +114 -0
- data/lib/wx/core/menu.rb +9 -0
- data/lib/wx/core/menu_bar.rb +7 -0
- data/lib/wx/core/menuitem.rb +9 -0
- data/lib/wx/core/notebook.rb +9 -0
- data/lib/wx/core/object.rb +9 -0
- data/lib/wx/core/paintdc.rb +7 -0
- data/lib/wx/core/pen.rb +7 -0
- data/lib/wx/core/pen_info.rb +7 -0
- data/lib/wx/core/platform_info.rb +7 -0
- data/lib/wx/core/point.rb +8 -0
- data/lib/wx/core/real_point.rb +8 -0
- data/lib/wx/core/rect.rb +9 -0
- data/lib/wx/core/region_iterator.rb +7 -0
- data/lib/wx/core/simplehelpprovider.rb +9 -0
- data/lib/wx/core/size.rb +8 -0
- data/lib/wx/core/sizer.rb +9 -0
- data/lib/wx/core/splash_screen.rb +22 -2
- data/lib/wx/core/text_entry.rb +7 -0
- data/lib/wx/core/textctrl.rb +86 -5
- data/lib/wx/core/timer.rb +9 -0
- data/lib/wx/core/toolbar.rb +9 -0
- data/lib/wx/core/toolbartool.rb +8 -0
- data/lib/wx/core/treectrl.rb +9 -0
- data/lib/wx/core/v_list_box.rb +7 -0
- data/lib/wx/core/validator.rb +7 -0
- data/lib/wx/core/variant.rb +7 -0
- data/lib/wx/core/vboxsizer.rb +16 -0
- data/lib/wx/core/window.rb +8 -0
- data/lib/wx/core/window_update_locker.rb +9 -0
- data/lib/wx/core/xmlresource.rb +8 -0
- data/lib/wx/core.rb +4 -1
- data/lib/wx/doc/app.rb +7 -1
- data/lib/wx/doc/array_ext.rb +6 -0
- data/lib/wx/doc/art_locator.rb +7 -0
- data/lib/wx/doc/aui/auimanager.rb +6 -0
- data/lib/wx/doc/aui/auinotebook.rb +6 -0
- data/lib/wx/doc/bitmap.rb +19 -15
- data/lib/wx/doc/brush.rb +6 -0
- data/lib/wx/doc/busy_info.rb +6 -0
- data/lib/wx/doc/client_dc.rb +6 -0
- data/lib/wx/doc/clipboard.rb +6 -0
- data/lib/wx/doc/colour_dialog.rb +6 -0
- data/lib/wx/doc/config.rb +190 -0
- data/lib/wx/doc/const.rb +7 -0
- data/lib/wx/doc/controlwithitems.rb +6 -0
- data/lib/wx/doc/core.rb +6 -0
- data/lib/wx/doc/cursor.rb +13 -5
- data/lib/wx/doc/data_object.rb +6 -0
- data/lib/wx/doc/datetime.rb +16 -0
- data/lib/wx/doc/dc.rb +6 -0
- data/lib/wx/doc/enum.rb +8 -1
- data/lib/wx/doc/event.rb +12 -0
- data/lib/wx/doc/event_blocker.rb +6 -0
- data/lib/wx/doc/event_loop.rb +13 -0
- data/lib/wx/doc/events.rb +6 -0
- data/lib/wx/doc/evthandler.rb +8 -0
- data/lib/wx/doc/extra/00_starting.md +6 -6
- data/lib/wx/doc/extra/01_packages.md +52 -51
- data/lib/wx/doc/extra/02_lifecycles.md +9 -8
- data/lib/wx/doc/extra/05_event-handling.md +37 -12
- data/lib/wx/doc/extra/06_geometry.md +5 -5
- data/lib/wx/doc/extra/07_colour_and_font.md +2 -2
- data/lib/wx/doc/extra/09_exceptions.md +2 -2
- data/lib/wx/doc/extra/10_art.md +18 -12
- data/lib/wx/doc/extra/11_drawing_and_dc.md +8 -8
- data/lib/wx/doc/font.rb +7 -1
- data/lib/wx/doc/font_data.rb +16 -0
- data/lib/wx/doc/functions.rb +60 -24
- data/lib/wx/doc/gc_dc.rb +7 -1
- data/lib/wx/doc/gdi_common.rb +8 -1
- data/lib/wx/doc/graphics_context.rb +59 -39
- data/lib/wx/doc/grid/grid.rb +16 -1
- data/lib/wx/doc/hboxsizer.rb +33 -0
- data/lib/wx/doc/help_controller.rb +6 -0
- data/lib/wx/doc/html/html_help_controller.rb +6 -0
- data/lib/wx/doc/icon.rb +13 -5
- data/lib/wx/doc/id_helper.rb +6 -0
- data/lib/wx/doc/image.rb +50 -12
- data/lib/wx/doc/list_ctrl.rb +38 -0
- data/lib/wx/doc/log.rb +45 -0
- data/lib/wx/doc/memory_dc.rb +6 -0
- data/lib/wx/doc/mirror_dc.rb +6 -0
- data/lib/wx/doc/pen.rb +6 -0
- data/lib/wx/doc/pg/events.rb +6 -0
- data/lib/wx/doc/pg/pg_property.rb +17 -0
- data/lib/wx/doc/pg/pgeditor.rb +6 -0
- data/lib/wx/doc/pg/property_grid.rb +6 -0
- data/lib/wx/doc/pg/property_grid_interface.rb +6 -0
- data/lib/wx/doc/progress_dialog.rb +6 -0
- data/lib/wx/doc/prt/page_setup_dialog.rb +6 -0
- data/lib/wx/doc/prt/print_data.rb +6 -0
- data/lib/wx/doc/prt/print_dialog.rb +6 -0
- data/lib/wx/doc/prt/printer.rb +6 -0
- data/lib/wx/doc/prt/printer_dc.rb +8 -2
- data/lib/wx/doc/radio_box.rb +6 -0
- data/lib/wx/doc/rbn/ribbon_bar.rb +6 -0
- data/lib/wx/doc/rbn/ribbon_button_bar.rb +6 -0
- data/lib/wx/doc/rbn/ribbon_gallery.rb +6 -0
- data/lib/wx/doc/rbn/ribbon_tool_bar.rb +6 -0
- data/lib/wx/doc/region_iterator.rb +6 -0
- data/lib/wx/doc/rtc/richtext_buffer.rb +28 -0
- data/lib/wx/doc/rtc/richtext_formatting_dialog.rb +68 -0
- data/lib/wx/doc/rtc/richtext_printing.rb +6 -0
- data/lib/wx/doc/rtc/richtext_style_sheet.rb +20 -0
- data/lib/wx/doc/scaled_dc.rb +7 -1
- data/lib/wx/doc/screen_dc.rb +6 -0
- data/lib/wx/doc/stock_objects.rb +6 -0
- data/lib/wx/doc/stream.rb +6 -0
- data/lib/wx/doc/svg_file_dc.rb +6 -0
- data/lib/wx/doc/system_settings.rb +6 -0
- data/lib/wx/doc/text_validator.rb +18 -0
- data/lib/wx/doc/textctrl.rb +89 -0
- data/lib/wx/doc/tree_event.rb +20 -0
- data/lib/wx/doc/treebook.rb +6 -0
- data/lib/wx/doc/v_list_box.rb +6 -0
- data/lib/wx/doc/variant.rb +6 -0
- data/lib/wx/doc/vboxsizer.rb +33 -0
- data/lib/wx/doc/window.rb +6 -0
- data/lib/wx/doc/window_disabler.rb +6 -0
- data/lib/wx/doc/xml_resource.rb +8 -0
- data/lib/wx/global_const.rb +4 -1
- data/lib/wx/grid/grid.rb +23 -3
- data/lib/wx/grid/keyword_defs.rb +8 -1
- data/lib/wx/grid/require.rb +4 -1
- data/lib/wx/grid.rb +4 -1
- data/lib/wx/helpers.rb +8 -1
- data/lib/wx/html/htmlhelpcontroller.rb +29 -3
- data/lib/wx/html/htmlwindow.rb +23 -12
- data/lib/wx/html/keyword_defs.rb +8 -1
- data/lib/wx/html/require.rb +4 -1
- data/lib/wx/html/simple_html_listbox.rb +3 -0
- data/lib/wx/html.rb +4 -1
- data/lib/wx/keyword_ctors.rb +22 -3
- data/lib/wx/keyword_defs.rb +55 -3
- data/lib/wx/pg/events.rb +4 -1
- data/lib/wx/pg/keyword_defs.rb +8 -1
- data/lib/wx/pg/pg_editor.rb +3 -0
- data/lib/wx/pg/pg_properties.rb +4 -1
- data/lib/wx/pg/pg_property.rb +18 -5
- data/lib/wx/pg/property_grid.rb +4 -1
- data/lib/wx/pg/property_grid_interface.rb +3 -0
- data/lib/wx/pg/require.rb +4 -1
- data/lib/wx/pg.rb +4 -1
- data/lib/wx/prt/keyword_defs.rb +8 -1
- data/lib/wx/prt/page_setup_dialog.rb +3 -0
- data/lib/wx/prt/previewframe.rb +5 -0
- data/lib/wx/prt/require.rb +4 -1
- data/lib/wx/prt.rb +4 -1
- data/lib/wx/rbn/events.rb +4 -1
- data/lib/wx/rbn/keyword_defs.rb +8 -1
- data/lib/wx/rbn/require.rb +5 -1
- data/lib/wx/rbn/ribbon_art_provider.rb +3 -1
- data/lib/wx/rbn/ribbon_bar.rb +3 -0
- data/lib/wx/rbn/ribbon_button_bar.rb +3 -0
- data/lib/wx/rbn/ribbon_control.rb +3 -0
- data/lib/wx/rbn/ribbon_gallery.rb +10 -0
- data/lib/wx/rbn/ribbon_page.rb +3 -0
- data/lib/wx/rbn/ribbon_panel.rb +3 -0
- data/lib/wx/rbn/ribbon_tool_bar.rb +3 -0
- data/lib/wx/rbn.rb +4 -1
- data/lib/wx/rtc/ext.rb +4 -1
- data/lib/wx/rtc/keyword_defs.rb +18 -7
- data/lib/wx/rtc/require.rb +8 -1
- data/lib/wx/rtc/richtext_buffer.rb +36 -0
- data/lib/wx/rtc/richtext_formatting_dialog.rb +88 -0
- data/lib/wx/rtc/richtext_style_organiser_dialog.rb +46 -0
- data/lib/wx/rtc/symbol_picker_dialog.rb +47 -0
- data/lib/wx/rtc.rb +5 -1
- data/lib/wx/stc/keyword_defs.rb +8 -1
- data/lib/wx/stc/require.rb +4 -1
- data/lib/wx/stc.rb +4 -1
- data/lib/wx/version.rb +5 -1
- data/lib/wx/wxruby/base.rb +4 -1
- data/lib/wx/wxruby/cmd/sampler.rb +4 -1
- data/lib/wx/wxruby/cmd/test.rb +4 -1
- data/lib/wx.rb +4 -1
- data/rakelib/build.rake +4 -1
- data/rakelib/build.rb +4 -1
- data/rakelib/config.rake +4 -1
- data/rakelib/configure.rb +4 -1
- data/rakelib/doc.rake +4 -1
- data/rakelib/doc.rb +5 -1
- data/rakelib/install.rake +4 -1
- data/rakelib/install.rb +4 -1
- data/rakelib/lib/config/cygwin.rb +4 -1
- data/rakelib/lib/config/linux.rb +4 -1
- data/rakelib/lib/config/macosx.rb +5 -2
- data/rakelib/lib/config/mingw.rb +4 -1
- data/rakelib/lib/config/netbsd.rb +4 -1
- data/rakelib/lib/config/unixish.rb +10 -7
- data/rakelib/lib/config.rb +7 -2
- data/rakelib/lib/core/include/enum.inc +4 -1
- data/rakelib/lib/core/include/funcall.inc +10 -64
- data/rakelib/lib/core/include/init.inc +3 -0
- data/rakelib/lib/core/mapping.rb +40 -55
- data/rakelib/lib/core/package.rb +20 -3
- data/rakelib/lib/core/parameter.rb +4 -1
- data/rakelib/lib/core/spec.rb +35 -18
- data/rakelib/lib/core/spec_helper.rb +38 -9
- data/rakelib/lib/director/about_dialog_info.rb +4 -1
- data/rakelib/lib/director/accelerator.rb +7 -2
- data/rakelib/lib/director/animation.rb +4 -1
- data/rakelib/lib/director/animation_ctrl.rb +4 -1
- data/rakelib/lib/director/any_button.rb +5 -2
- data/rakelib/lib/director/app.rb +16 -2
- data/rakelib/lib/director/app_traits.rb +71 -0
- data/rakelib/lib/director/art_provider.rb +4 -1
- data/rakelib/lib/director/aui_dock_art.rb +4 -1
- data/rakelib/lib/director/aui_floating_frame.rb +4 -1
- data/rakelib/lib/director/aui_manager.rb +12 -5
- data/rakelib/lib/director/aui_manager_event.rb +4 -1
- data/rakelib/lib/director/aui_mdi_child_frame.rb +25 -1
- data/rakelib/lib/director/aui_mdi_client_window.rb +4 -1
- data/rakelib/lib/director/aui_mdi_parent_frame.rb +4 -1
- data/rakelib/lib/director/aui_notebook.rb +12 -1
- data/rakelib/lib/director/aui_notebook_event.rb +4 -1
- data/rakelib/lib/director/aui_pane_info.rb +4 -1
- data/rakelib/lib/director/aui_tab_art.rb +52 -1
- data/rakelib/lib/director/aui_tab_ctrl.rb +14 -1
- data/rakelib/lib/director/aui_toolbar.rb +6 -3
- data/rakelib/lib/director/aui_toolbar_art.rb +52 -1
- data/rakelib/lib/director/aui_toolbar_event.rb +4 -1
- data/rakelib/lib/director/aui_toolbar_item.rb +4 -1
- data/rakelib/lib/director/banner_window.rb +26 -0
- data/rakelib/lib/director/bitmap.rb +11 -2
- data/rakelib/lib/director/bitmap_combobox.rb +5 -1
- data/rakelib/lib/director/book_ctrls.rb +13 -3
- data/rakelib/lib/director/brush.rb +4 -1
- data/rakelib/lib/director/busy_info.rb +4 -1
- data/rakelib/lib/director/button.rb +4 -1
- data/rakelib/lib/director/calendar_ctrl.rb +4 -1
- data/rakelib/lib/director/calendar_date_attr.rb +4 -1
- data/rakelib/lib/director/caret.rb +4 -1
- data/rakelib/lib/director/check_listbox.rb +4 -1
- data/rakelib/lib/director/choice.rb +4 -1
- data/rakelib/lib/director/clipboard.rb +4 -1
- data/rakelib/lib/director/collapsible_pane.rb +4 -1
- data/rakelib/lib/director/collapsible_pane_event.rb +4 -1
- data/rakelib/lib/director/colour.rb +9 -1
- data/rakelib/lib/director/colour_picker_ctrl.rb +4 -1
- data/rakelib/lib/director/combobox.rb +4 -1
- data/rakelib/lib/director/comboctrl.rb +94 -0
- data/rakelib/lib/director/config_base.rb +135 -0
- data/rakelib/lib/director/context_help_button.rb +4 -1
- data/rakelib/lib/director/control.rb +4 -1
- data/rakelib/lib/director/ctrl_with_items.rb +5 -1
- data/rakelib/lib/director/cursor.rb +6 -2
- data/rakelib/lib/director/data_format.rb +4 -1
- data/rakelib/lib/director/data_object.rb +4 -1
- data/rakelib/lib/director/data_object_simple_base.rb +4 -1
- data/rakelib/lib/director/date_event.rb +9 -2
- data/rakelib/lib/director/date_picker_ctrl.rb +4 -1
- data/rakelib/lib/director/dc.rb +19 -1
- data/rakelib/lib/director/defs.rb +4 -1
- data/rakelib/lib/director/derived_dc.rb +27 -20
- data/rakelib/lib/director/dialog.rb +49 -3
- data/rakelib/lib/director/dir_filterlist_ctrl.rb +4 -1
- data/rakelib/lib/director/dir_picker_ctrl.rb +4 -1
- data/rakelib/lib/director/drag_image.rb +9 -2
- data/rakelib/lib/director/dragdrop.rb +4 -1
- data/rakelib/lib/director/editable_listbox.rb +4 -1
- data/rakelib/lib/director/event.rb +11 -3
- data/rakelib/lib/director/event_blocker.rb +4 -1
- data/rakelib/lib/director/event_filter.rb +4 -1
- data/rakelib/lib/director/event_handler.rb +28 -11
- data/rakelib/lib/director/event_loop.rb +29 -0
- data/rakelib/lib/director/events.rb +5 -2
- data/rakelib/lib/director/file_dialog_custom_control.rb +28 -0
- data/rakelib/lib/director/file_dialog_customize_hook.rb +28 -0
- data/rakelib/lib/director/file_picker_ctrl.rb +4 -1
- data/rakelib/lib/director/file_system.rb +45 -0
- data/rakelib/lib/director/find_dialog_event.rb +4 -1
- data/rakelib/lib/director/find_replace_data.rb +4 -1
- data/rakelib/lib/director/font.rb +7 -3
- data/rakelib/lib/director/font_data.rb +9 -1
- data/rakelib/lib/director/font_picker_ctrl.rb +4 -1
- data/rakelib/lib/director/frame.rb +45 -33
- data/rakelib/lib/director/fs_file.rb +52 -1
- data/rakelib/lib/director/functions.rb +51 -49
- data/rakelib/lib/director/gdi_object.rb +4 -1
- data/rakelib/lib/director/gdicommon.rb +14 -9
- data/rakelib/lib/director/generic_dirctrl.rb +4 -1
- data/rakelib/lib/director/graphics_context.rb +113 -18
- data/rakelib/lib/director/graphics_object.rb +13 -2
- data/rakelib/lib/director/grid_cell_attr.rb +28 -4
- data/rakelib/lib/director/grid_cell_editor.rb +22 -5
- data/rakelib/lib/director/grid_cell_renderer.rb +16 -3
- data/rakelib/lib/director/grid_ctrl.rb +146 -5
- data/rakelib/lib/director/grid_range_select_event.rb +4 -1
- data/rakelib/lib/director/grid_table_base.rb +6 -1
- data/rakelib/lib/director/grid_table_message.rb +4 -1
- data/rakelib/lib/director/header_ctrl.rb +37 -0
- data/rakelib/lib/director/help_controller.rb +13 -6
- data/rakelib/lib/director/help_provider.rb +4 -1
- data/rakelib/lib/director/html_cell.rb +10 -3
- data/rakelib/lib/director/html_data_object.rb +4 -1
- data/rakelib/lib/director/html_easy_printing.rb +4 -1
- data/rakelib/lib/director/html_event.rb +4 -1
- data/rakelib/lib/director/html_help_data.rb +4 -1
- data/rakelib/lib/director/html_help_window.rb +30 -0
- data/rakelib/lib/director/html_listbox.rb +4 -1
- data/rakelib/lib/director/html_printout.rb +6 -1
- data/rakelib/lib/director/html_window.rb +10 -8
- data/rakelib/lib/director/hyperlink_ctrl.rb +32 -0
- data/rakelib/lib/director/hyperlink_event.rb +4 -1
- data/rakelib/lib/director/icon.rb +4 -1
- data/rakelib/lib/director/image.rb +58 -3
- data/rakelib/lib/director/image_list.rb +5 -1
- data/rakelib/lib/director/info_bar.rb +26 -0
- data/rakelib/lib/director/list_ctrl.rb +42 -9
- data/rakelib/lib/director/listbox.rb +4 -1
- data/rakelib/lib/director/locale.rb +7 -4
- data/rakelib/lib/director/log.rb +111 -6
- data/rakelib/lib/director/mdi_frame.rb +4 -1
- data/rakelib/lib/director/media_ctrl.rb +4 -1
- data/rakelib/lib/director/menu.rb +16 -3
- data/rakelib/lib/director/menu_bar.rb +13 -2
- data/rakelib/lib/director/menu_item.rb +6 -6
- data/rakelib/lib/director/mouse_state.rb +5 -2
- data/rakelib/lib/director/numeric_property_validator.rb +4 -1
- data/rakelib/lib/director/object.rb +5 -2
- data/rakelib/lib/director/page_setup_dialog.rb +4 -1
- data/rakelib/lib/director/palette.rb +54 -2
- data/rakelib/lib/director/panel.rb +4 -1
- data/rakelib/lib/director/pen.rb +5 -2
- data/rakelib/lib/director/pgarray_editor_dialog.rb +4 -1
- data/rakelib/lib/director/pgcell.rb +4 -1
- data/rakelib/lib/director/pgeditor.rb +4 -1
- data/rakelib/lib/director/pgmulti_button.rb +4 -1
- data/rakelib/lib/director/pgproperties.rb +4 -1
- data/rakelib/lib/director/pgproperty.rb +42 -3
- data/rakelib/lib/director/pgvalidation_info.rb +9 -1
- data/rakelib/lib/director/pickerbase.rb +4 -1
- data/rakelib/lib/director/platform_info.rb +9 -1
- data/rakelib/lib/director/popup_window.rb +14 -1
- data/rakelib/lib/director/preview_frame.rb +5 -2
- data/rakelib/lib/director/print_data.rb +4 -1
- data/rakelib/lib/director/print_dialog.rb +4 -1
- data/rakelib/lib/director/printer.rb +14 -6
- data/rakelib/lib/director/property_grid.rb +30 -1
- data/rakelib/lib/director/property_grid_event.rb +11 -1
- data/rakelib/lib/director/property_grid_interface.rb +20 -6
- data/rakelib/lib/director/property_grid_manager.rb +4 -1
- data/rakelib/lib/director/property_grid_page.rb +4 -1
- data/rakelib/lib/director/property_grid_page_state.rb +4 -1
- data/rakelib/lib/director/radio_box.rb +4 -1
- data/rakelib/lib/director/rearrange_list.rb +36 -0
- data/rakelib/lib/director/region.rb +5 -1
- data/rakelib/lib/director/region_iterator.rb +4 -1
- data/rakelib/lib/director/ribbon_art_provider.rb +9 -1
- data/rakelib/lib/director/ribbon_bar.rb +4 -1
- data/rakelib/lib/director/ribbon_bar_event.rb +4 -1
- data/rakelib/lib/director/ribbon_button_bar.rb +4 -1
- data/rakelib/lib/director/ribbon_button_bar_event.rb +4 -1
- data/rakelib/lib/director/ribbon_ctrl.rb +4 -1
- data/rakelib/lib/director/ribbon_gallery.rb +8 -3
- data/rakelib/lib/director/ribbon_gallery_event.rb +4 -1
- data/rakelib/lib/director/ribbon_page.rb +4 -1
- data/rakelib/lib/director/ribbon_panel.rb +4 -1
- data/rakelib/lib/director/ribbon_panel_event.rb +4 -1
- data/rakelib/lib/director/ribbon_tool_bar.rb +4 -1
- data/rakelib/lib/director/ribbon_tool_bar_event.rb +4 -1
- data/rakelib/lib/director/richtext_box.rb +61 -0
- data/rakelib/lib/director/richtext_buffer.rb +219 -22
- data/rakelib/lib/director/richtext_buffer_data_object.rb +4 -1
- data/rakelib/lib/director/richtext_composite_object.rb +174 -0
- data/rakelib/lib/director/richtext_ctrl.rb +157 -4
- data/rakelib/lib/director/richtext_event.rb +4 -1
- data/rakelib/lib/director/richtext_file_handler.rb +13 -1
- data/rakelib/lib/director/richtext_formatting_dialog.rb +44 -0
- data/rakelib/lib/director/richtext_header_footer_data.rb +4 -1
- data/rakelib/lib/director/richtext_image.rb +56 -0
- data/rakelib/lib/director/richtext_object.rb +272 -0
- data/rakelib/lib/director/richtext_paragraph_layout_box.rb +178 -0
- data/rakelib/lib/director/richtext_printing.rb +4 -1
- data/rakelib/lib/director/richtext_style_listbox.rb +37 -0
- data/rakelib/lib/director/richtext_style_organiser_dialog.rb +28 -0
- data/rakelib/lib/director/sash_layout_event.rb +4 -1
- data/rakelib/lib/director/sash_layout_window.rb +4 -1
- data/rakelib/lib/director/sash_window.rb +4 -1
- data/rakelib/lib/director/scroll_bar.rb +4 -1
- data/rakelib/lib/director/scrolled_t.rb +7 -4
- data/rakelib/lib/director/searchctrl.rb +4 -1
- data/rakelib/lib/director/sizer.rb +4 -1
- data/rakelib/lib/director/sizer_item.rb +9 -3
- data/rakelib/lib/director/slider.rb +4 -1
- data/rakelib/lib/director/splash_screen.rb +4 -1
- data/rakelib/lib/director/splitter_event.rb +4 -1
- data/rakelib/lib/director/splitter_window.rb +4 -1
- data/rakelib/lib/director/static_bitmap.rb +4 -1
- data/rakelib/lib/director/static_box.rb +5 -2
- data/rakelib/lib/director/status_bar.rb +5 -1
- data/rakelib/lib/director/styled_text_ctrl.rb +14 -2
- data/rakelib/lib/director/styled_text_event.rb +4 -1
- data/rakelib/lib/director/system_options.rb +4 -1
- data/rakelib/lib/director/system_settings.rb +4 -1
- data/rakelib/lib/director/task_bar_icon.rb +4 -1
- data/rakelib/lib/director/text_attr.rb +5 -2
- data/rakelib/lib/director/text_entry.rb +29 -1
- data/rakelib/lib/director/text_validator.rb +14 -3
- data/rakelib/lib/director/textctrl.rb +32 -3
- data/rakelib/lib/director/time_picker_ctrl.rb +4 -1
- data/rakelib/lib/director/timer.rb +4 -1
- data/rakelib/lib/director/tip_provider.rb +4 -1
- data/rakelib/lib/director/toggle_button.rb +4 -1
- data/rakelib/lib/director/tool_bar.rb +20 -1
- data/rakelib/lib/director/tool_tip.rb +5 -2
- data/rakelib/lib/director/top_level_window.rb +58 -51
- data/rakelib/lib/director/tree_ctrl.rb +5 -2
- data/rakelib/lib/director/tree_event.rb +28 -10
- data/rakelib/lib/director/uiaction_simulator.rb +4 -1
- data/rakelib/lib/director/utils.rb +9 -1
- data/rakelib/lib/director/validator.rb +4 -1
- data/rakelib/lib/director/variant.rb +22 -6
- data/rakelib/lib/director/vlistbox.rb +4 -1
- data/rakelib/lib/director/vscrolled_window.rb +4 -1
- data/rakelib/lib/director/window.rb +81 -82
- data/rakelib/lib/director/window_disabler.rb +4 -1
- data/rakelib/lib/director/with_images.rb +5 -2
- data/rakelib/lib/director/wizard_page.rb +4 -1
- data/rakelib/lib/director/xml_node.rb +4 -1
- data/rakelib/lib/director/xml_resource.rb +4 -1
- data/rakelib/lib/director.rb +27 -28
- data/rakelib/lib/ext/enum_chain.rb +4 -1
- data/rakelib/lib/extractor/class.rb +8 -6
- data/rakelib/lib/extractor/enum.rb +15 -2
- data/rakelib/lib/extractor/function.rb +17 -9
- data/rakelib/lib/extractor/module.rb +4 -1
- data/rakelib/lib/extractor/variable.rb +10 -7
- data/rakelib/lib/extractor.rb +7 -2
- data/rakelib/lib/generate/analyzer.rb +31 -21
- data/rakelib/lib/generate/base.rb +4 -1
- data/rakelib/lib/generate/doc/aui_manager.yaml +21 -0
- data/rakelib/lib/generate/doc/font.yaml +29 -0
- data/rakelib/lib/generate/doc/frame.yaml +23 -0
- data/rakelib/lib/generate/doc/fs_file.yaml +11 -0
- data/rakelib/lib/generate/doc/gdi_common.yaml +36 -0
- data/rakelib/lib/generate/doc/graphics_context.yaml +34 -0
- data/rakelib/lib/generate/doc/grid_cell_attr.yaml +21 -0
- data/rakelib/lib/generate/doc/grid_ctrl.yaml +25 -0
- data/rakelib/lib/generate/doc/gui_event_loop.yaml +12 -0
- data/rakelib/lib/generate/doc/help_controller.yaml +24 -0
- data/rakelib/lib/generate/doc/html_cell.yaml +11 -0
- data/rakelib/lib/generate/doc/html_help_controller.yaml +23 -0
- data/rakelib/lib/generate/doc/html_help_window.yaml +21 -0
- data/rakelib/lib/generate/doc/html_window.yaml +47 -0
- data/rakelib/lib/generate/doc/icon.yaml +11 -0
- data/rakelib/lib/generate/doc/image.yaml +87 -0
- data/rakelib/lib/generate/doc/keyboard_state.yaml +19 -0
- data/rakelib/lib/generate/doc/list_ctrl.yaml +77 -0
- data/rakelib/lib/generate/doc/locale.yaml +12 -0
- data/rakelib/lib/generate/doc/log.yaml +86 -0
- data/rakelib/lib/generate/doc/mdi_frame.yaml +12 -0
- data/rakelib/lib/generate/doc/memory_dc.yaml +42 -0
- data/rakelib/lib/generate/doc/menu.yaml +17 -0
- data/rakelib/lib/generate/doc/menu_item.yaml +43 -0
- data/rakelib/lib/generate/doc/message_dialog.yaml +36 -0
- data/rakelib/lib/generate/doc/non_owned_window.yaml +14 -0
- data/rakelib/lib/generate/doc/notebook.yaml +18 -0
- data/rakelib/lib/generate/doc/pen.yaml +11 -0
- data/rakelib/lib/generate/doc/pg_editor.yaml +11 -0
- data/rakelib/lib/generate/doc/pg_multi_button.yaml +78 -0
- data/rakelib/lib/generate/doc/pg_properties.yaml +244 -0
- data/rakelib/lib/generate/doc/pg_property.yaml +188 -0
- data/rakelib/lib/generate/doc/picker_base.yaml +19 -0
- data/rakelib/lib/generate/doc/platform_info.yaml +15 -0
- data/rakelib/lib/generate/doc/property_grid.yaml +23 -0
- data/rakelib/lib/generate/doc/property_grid_interface.yaml +30 -0
- data/rakelib/lib/generate/doc/property_grid_manager.yaml +40 -0
- data/rakelib/lib/generate/doc/property_sheet_dialog.yaml +26 -0
- data/rakelib/lib/generate/doc/rich_text_html_handler.yaml +11 -0
- data/rakelib/lib/generate/doc/scroll_bar.yaml +11 -0
- data/rakelib/lib/generate/doc/scrolled_canvas.yaml +37 -0
- data/rakelib/lib/generate/doc/scrolled_control.yaml +37 -0
- data/rakelib/lib/generate/doc/scrolled_window.yaml +37 -0
- data/rakelib/lib/generate/doc/sizer.yaml +69 -0
- data/rakelib/lib/generate/doc/splash_screen.yaml +18 -0
- data/rakelib/lib/generate/doc/static_box.yaml +52 -0
- data/rakelib/lib/generate/doc/static_box_sizer.yaml +22 -0
- data/rakelib/lib/generate/doc/styled_text_ctrl.yaml +18 -0
- data/rakelib/lib/generate/doc/svg_file_dc.yaml +11 -0
- data/rakelib/lib/generate/doc/symbol_picker_dialog.yaml +40 -0
- data/rakelib/lib/generate/doc/text_ctrl.yaml +19 -0
- data/rakelib/lib/generate/doc/text_entry.yaml +42 -0
- data/rakelib/lib/generate/doc/text_entry_dialog.yaml +17 -0
- data/rakelib/lib/generate/doc/timer_event.yaml +28 -0
- data/rakelib/lib/generate/doc/tool_bar.yaml +35 -0
- data/rakelib/lib/generate/doc/top_level_window.yaml +23 -0
- data/rakelib/lib/generate/doc/validator.yaml +12 -0
- data/rakelib/lib/generate/doc/variant.yaml +29 -0
- data/rakelib/lib/generate/doc/window.yaml +249 -0
- data/rakelib/lib/generate/doc/wizard_page_simple.yaml +14 -0
- data/rakelib/lib/generate/doc/xml_node.yaml +7 -0
- data/rakelib/lib/generate/doc/xml_resource.yaml +27 -0
- data/rakelib/lib/generate/doc.rb +54 -4
- data/rakelib/lib/generate/interface.rb +79 -110
- data/rakelib/lib/generate/rakedep.rb +4 -1
- data/rakelib/lib/specs/interfaces.rb +46 -20
- data/rakelib/lib/streams.rb +5 -1
- data/rakelib/lib/swig_runner.rb +71 -22
- data/rakelib/lib/typemap/array_int_selections.rb +4 -1
- data/rakelib/lib/typemap/common.rb +57 -2
- data/rakelib/lib/typemap/config.rb +55 -0
- data/rakelib/lib/typemap/data_format.rb +4 -1
- data/rakelib/lib/typemap/data_object_data.rb +4 -1
- data/rakelib/lib/typemap/datetime.rb +8 -1
- data/rakelib/lib/typemap/grid_client_data.rb +4 -1
- data/rakelib/lib/typemap/grid_coords.rb +37 -7
- data/rakelib/lib/typemap/html_cell.rb +4 -1
- data/rakelib/lib/typemap/io_streams.rb +4 -1
- data/rakelib/lib/typemap/pgcell.rb +4 -1
- data/rakelib/lib/typemap/pgeditor.rb +4 -1
- data/rakelib/lib/typemap/pgprop_arg.rb +4 -1
- data/rakelib/lib/typemap/pgproperty.rb +4 -1
- data/rakelib/lib/typemap/points_list.rb +4 -1
- data/rakelib/lib/typemap/richtext.rb +185 -11
- data/rakelib/lib/typemap/tree_itemid.rb +26 -1
- data/rakelib/lib/util/string.rb +4 -1
- data/rakelib/prepost.rake +4 -1
- data/rakelib/prepost.rb +4 -1
- data/rakelib/run.rake +4 -1
- data/samples/aui/aui.rb +8 -3
- data/samples/bigdemo/bigdemo.rb +9 -2
- data/samples/bigdemo/run.rb +9 -2
- data/samples/bigdemo/utils.rb +9 -1
- data/samples/calendar/calendar.rb +9 -4
- data/samples/caret/caret.rb +8 -3
- data/samples/controls/books.rb +8 -2
- data/samples/controls/controls.rb +33 -77
- data/samples/controls/get_item_sample.rb +8 -2
- data/samples/controls/htlbox.rb +10 -3
- data/samples/dialogs/dialogs.rb +9 -4
- data/samples/dialogs/wizard.rb +8 -3
- data/samples/dragdrop/dragdrop.rb +8 -3
- data/samples/drawing/bitmap.rb +8 -3
- data/samples/drawing/bitmap_image.rb +8 -3
- data/samples/drawing/graphics_drawing.rb +44 -33
- data/samples/drawing/image_prt.rb +8 -2
- data/samples/drawing/maths_images.rb +8 -3
- data/samples/drawing/rmagic_bitmap_image.rb +8 -3
- data/samples/etc/choice.rb +8 -3
- data/samples/etc/miniframe.rb +8 -3
- data/samples/etc/sash.rb +8 -3
- data/samples/etc/scrollwin.rb +8 -3
- data/samples/etc/system_settings.rb +8 -3
- data/samples/event/activation.rb +8 -3
- data/samples/event/event.rb +8 -3
- data/samples/event/threaded.rb +8 -3
- data/samples/event/update_ui_event.rb +8 -3
- data/samples/grid/grid.rb +9 -3
- data/samples/grid/gridtablebase.rb +8 -3
- data/samples/html/html.rb +8 -3
- data/samples/mdi/mdi.rb +8 -3
- data/samples/minimal/minimal.rb +8 -3
- data/samples/minimal/nothing.rb +8 -3
- data/samples/printing/printing.rb +8 -3
- data/samples/printing/printing2.rb +8 -2
- data/samples/propgrid/propgrid.rb +4 -1
- data/samples/propgrid/propgrid_minimal.rb +4 -2
- data/samples/propgrid/sample_props.rb +4 -1
- data/samples/ribbon/ribbon.rb +4 -1
- data/samples/sampler/editor.rb +4 -1
- data/samples/sampler/ext.rb +4 -1
- data/samples/sampler/sample.rb +13 -4
- data/samples/sampler/stc_editor.rb +4 -1
- data/samples/sampler/txt_editor.rb +4 -1
- data/samples/sampler.rb +11 -3
- data/samples/splash/splash.rb +4 -2
- data/samples/text/art/richtext/alignleft.xpm +24 -0
- data/samples/text/art/richtext/alignright.xpm +24 -0
- data/samples/text/art/richtext/bold.xpm +24 -0
- data/samples/text/art/richtext/centre.xpm +24 -0
- data/samples/text/art/richtext/copy.xpm +45 -0
- data/samples/text/art/richtext/cut.xpm +47 -0
- data/samples/text/art/richtext/font.xpm +25 -0
- data/samples/text/art/richtext/idea.xpm +47 -0
- data/samples/text/art/richtext/indentless.xpm +25 -0
- data/samples/text/art/richtext/indentmore.xpm +25 -0
- data/samples/text/art/richtext/italic.xpm +25 -0
- data/samples/text/art/richtext/open.xpm +58 -0
- data/samples/text/art/richtext/paste.xpm +47 -0
- data/samples/text/art/richtext/redo.xpm +59 -0
- data/samples/text/art/richtext/save.xpm +43 -0
- data/samples/text/art/richtext/smiley.xpm +42 -0
- data/samples/text/art/richtext/underline.xpm +25 -0
- data/samples/text/art/richtext/undo.xpm +59 -0
- data/samples/text/art/richtext/zebra.xpm +409 -0
- data/samples/text/rich_textctrl.rb +8 -3
- data/samples/text/richtext.rb +1824 -0
- data/samples/text/scintilla.rb +8 -3
- data/samples/text/textctrl.rb +21 -4
- data/samples/text/tn_richtext.png +0 -0
- data/samples/text/unicode.rb +9 -4
- data/samples/treectrl/treectrl.rb +10 -5
- data/samples/xrc/custom_xrc_sample.rb +8 -3
- data/samples/xrc/xrc_sample.rb +8 -3
- data/tests/art/test_art/bitmap/wxruby-128x128.png +0 -0
- data/tests/art/test_art/bitmap/wxruby-256x256.png +0 -0
- data/tests/art/test_art/bitmap/wxruby-64x64.png +0 -0
- data/tests/lib/item_container_tests.rb +3 -0
- data/tests/lib/text_entry_tests.rb +3 -0
- data/tests/lib/wxapp_runner.rb +3 -0
- data/tests/lib/wxframe_runner.rb +81 -3
- data/tests/test_app_event_filter.rb +3 -0
- data/tests/test_app_traits.rb +33 -0
- data/tests/test_art.rb +31 -0
- data/tests/test_art_provider.rb +3 -0
- data/tests/test_aui.rb +65 -0
- data/tests/test_basic.rb +5 -1
- data/tests/test_box_sizer.rb +164 -0
- data/tests/test_clipboard.rb +3 -0
- data/tests/test_config.rb +150 -0
- data/tests/test_dc.rb +3 -0
- data/tests/test_dialog.rb +3 -0
- data/tests/test_event_handling.rb +3 -0
- data/tests/test_events.rb +3 -0
- data/tests/test_ext_controls.rb +286 -3
- data/tests/test_file_dialog.rb +55 -0
- data/tests/test_font.rb +8 -5
- data/tests/test_gdi_object.rb +3 -0
- data/tests/test_geometry.rb +4 -0
- data/tests/test_grid_sizer.rb +151 -0
- data/tests/test_intl.rb +3 -0
- data/tests/test_item_data.rb +3 -0
- data/tests/test_list_ctrl.rb +56 -0
- data/tests/test_log.rb +226 -0
- data/tests/test_proof_check.rb +52 -0
- data/tests/test_richtext.rb +204 -0
- data/tests/test_std_controls.rb +99 -31
- data/tests/test_timer.rb +98 -0
- data/tests/test_variant.rb +3 -0
- data/tests/test_window.rb +10 -8
- data/tests/testapp.rb +4 -0
- data/tests/testapp_noframe.rb +4 -0
- metadata +146 -3
- data/rakelib/lib/director/html_help_frame.rb +0 -25
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Copyright (c) 2023 M.J.N. Corino, The Netherlands
|
|
2
|
+
#
|
|
3
|
+
# This software is released under the MIT license.
|
|
4
|
+
|
|
5
|
+
###
|
|
6
|
+
# wxRuby3 wxWidgets interface director
|
|
7
|
+
###
|
|
8
|
+
|
|
9
|
+
require_relative './window'
|
|
10
|
+
|
|
11
|
+
module WXRuby3
|
|
12
|
+
|
|
13
|
+
class Director
|
|
14
|
+
|
|
15
|
+
class HyperlinkCtrl < Window
|
|
16
|
+
|
|
17
|
+
def setup
|
|
18
|
+
super
|
|
19
|
+
if Config.instance.wx_version <= '3.3.0'
|
|
20
|
+
# XML docs (< 3.3) incorrectly declare these pure virtual
|
|
21
|
+
spec.ignore 'wxHyperlinkCtrl::GetVisited', 'wxHyperlinkCtrl::SetVisited', ignore_doc: false
|
|
22
|
+
# replace by correct declarations
|
|
23
|
+
spec.extend_interface 'wxHyperlinkCtrl',
|
|
24
|
+
'virtual bool wxHyperlinkCtrl::GetVisited() const',
|
|
25
|
+
'virtual void wxHyperlinkCtrl::SetVisited(bool visited = true)'
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end # class HyperlinkCtrl
|
|
29
|
+
|
|
30
|
+
end # class Director
|
|
31
|
+
|
|
32
|
+
end # module WXRuby3
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
# Copyright (c) 2023 M.J.N. Corino, The Netherlands
|
|
2
|
+
#
|
|
3
|
+
# This software is released under the MIT license.
|
|
4
|
+
|
|
1
5
|
###
|
|
2
6
|
# wxRuby3 wxWidgets interface director
|
|
3
|
-
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
7
|
###
|
|
5
8
|
|
|
6
9
|
module WXRuby3
|
|
@@ -17,8 +20,13 @@ module WXRuby3
|
|
|
17
20
|
spec.ignore [
|
|
18
21
|
'wxImage::wxImage(wxInputStream &,wxBitmapType,int)',
|
|
19
22
|
'wxImage::wxImage(wxInputStream &,const wxString &,int)',
|
|
23
|
+
'wxImage::wxImage(const char *const *)',
|
|
20
24
|
'wxImage::GetImageCount(wxInputStream &,wxBitmapType)'
|
|
21
25
|
]
|
|
26
|
+
# ignore original signature
|
|
27
|
+
spec.ignore 'wxImage::SetAlpha(unsigned char *,bool)', ignore_doc: false
|
|
28
|
+
# add custom signature to aid type mapping
|
|
29
|
+
spec.extend_interface 'wxImage', 'void SetAlpha(unsigned char *alpha_or_null=NULL, bool static_data=false)'
|
|
22
30
|
spec.rename_for_ruby(
|
|
23
31
|
'LoadStream' => ['wxImage::LoadFile(wxInputStream &, wxBitmapType, int)', 'wxImage::LoadFile(wxInputStream &,const wxString &, int)'],
|
|
24
32
|
'Write' => ['wxImage::SaveFile(wxOutputStream &, wxBitmapType) const', 'wxImage::SaveFile(wxOutputStream &,const wxString &) const'],
|
|
@@ -77,6 +85,19 @@ module WXRuby3
|
|
|
77
85
|
return ext_ary;
|
|
78
86
|
}
|
|
79
87
|
|
|
88
|
+
static VALUE mime_types()
|
|
89
|
+
{
|
|
90
|
+
VALUE ext_ary = rb_ary_new();
|
|
91
|
+
wxList& hnd_lst = wxImage::GetHandlers();
|
|
92
|
+
for (wxList::compatibility_iterator node = hnd_lst.GetFirst();
|
|
93
|
+
node; node = node->GetNext())
|
|
94
|
+
{
|
|
95
|
+
wxImageHandler *handler = (wxImageHandler *) node->GetData();
|
|
96
|
+
rb_ary_push(ext_ary, WXSTR_TO_RSTR(handler->GetMimeType()));
|
|
97
|
+
}
|
|
98
|
+
return ext_ary;
|
|
99
|
+
}
|
|
100
|
+
|
|
80
101
|
static VALUE handler_extensions()
|
|
81
102
|
{
|
|
82
103
|
VALUE ext_hash = rb_hash_new();
|
|
@@ -101,7 +122,7 @@ module WXRuby3
|
|
|
101
122
|
# The GetRgbData and GetAlphaData methods require special handling using %extend;
|
|
102
123
|
spec.ignore %w[wxImage::GetData wxImage::GetAlpha]
|
|
103
124
|
# The SetRgbData and SetAlphaData are dealt with by typemaps (see below).
|
|
104
|
-
# For Image#set_rgb_data, Image#set_alpha_data and Image.new with raw data arg:
|
|
125
|
+
# For Image#set_rgb_data, Image#set_alpha_data and Image.new/create with raw data arg:
|
|
105
126
|
# copy raw string data from a Ruby string to a memory block that will be
|
|
106
127
|
# managed by wxWidgets (see static_data typemap below)
|
|
107
128
|
spec.map 'unsigned char* data', 'unsigned char* alpha', as: 'String' do
|
|
@@ -112,12 +133,27 @@ module WXRuby3
|
|
|
112
133
|
$1 = (unsigned char*)malloc(data_len);
|
|
113
134
|
memcpy($1, StringValuePtr($input), data_len);
|
|
114
135
|
}
|
|
115
|
-
else
|
|
136
|
+
else
|
|
137
|
+
SWIG_exception_fail(SWIG_ERROR,
|
|
138
|
+
"String required as raw Image data argument");
|
|
139
|
+
__CODE
|
|
140
|
+
map_typecheck precedence: 'POINTER', code: '$1 = (TYPE($input) == T_STRING);'
|
|
141
|
+
end
|
|
142
|
+
spec.map 'unsigned char* alpha_or_null', as: 'String' do
|
|
143
|
+
map_in code: <<~__CODE
|
|
144
|
+
if ( TYPE($input) == T_STRING )
|
|
145
|
+
{
|
|
146
|
+
int data_len = RSTRING_LEN($input);
|
|
147
|
+
$1 = (unsigned char*)malloc(data_len);
|
|
148
|
+
memcpy($1, StringValuePtr($input), data_len);
|
|
149
|
+
}
|
|
150
|
+
else if ( $input == Qnil ) // Needed for SetAlpha
|
|
116
151
|
$1 = NULL;
|
|
117
152
|
else
|
|
118
153
|
SWIG_exception_fail(SWIG_ERROR,
|
|
119
154
|
"String required as raw Image data argument");
|
|
120
155
|
__CODE
|
|
156
|
+
map_typecheck precedence: 'POINTER', code: '$1 = NIL_P($input) || (TYPE($input) == T_STRING);'
|
|
121
157
|
end
|
|
122
158
|
# Image.new(data...) and Image#set_alpha_data both accept a static_data
|
|
123
159
|
# argument to specify whether wxWidgets should delete the data
|
|
@@ -157,6 +193,25 @@ module WXRuby3
|
|
|
157
193
|
return rb_str_new( (const char*)rgb_data, length);
|
|
158
194
|
}
|
|
159
195
|
__HEREDOC
|
|
196
|
+
# ignore this so we do not have to wrap wxImageHistogram
|
|
197
|
+
spec.ignore 'wxImage::ComputeHistogram'
|
|
198
|
+
# add custom method simply returning Hash; finish off in pure Ruby
|
|
199
|
+
spec.add_extend_code 'wxImage', <<~__HEREDOC
|
|
200
|
+
VALUE compute_histogram()
|
|
201
|
+
{
|
|
202
|
+
VALUE rb_img_hist = rb_hash_new();
|
|
203
|
+
wxImageHistogram img_hist;
|
|
204
|
+
$self->ComputeHistogram(img_hist);
|
|
205
|
+
for (auto pair : img_hist)
|
|
206
|
+
{
|
|
207
|
+
VALUE rb_hist_entry = rb_ary_new();
|
|
208
|
+
rb_ary_push(rb_hist_entry, ULL2NUM(pair.second.index));
|
|
209
|
+
rb_ary_push(rb_hist_entry, ULL2NUM(pair.second.value));
|
|
210
|
+
rb_hash_aset(rb_img_hist, ULL2NUM(pair.first), rb_hist_entry);
|
|
211
|
+
}
|
|
212
|
+
return rb_img_hist;
|
|
213
|
+
}
|
|
214
|
+
__HEREDOC
|
|
160
215
|
spec.do_not_generate(:functions)
|
|
161
216
|
end
|
|
162
217
|
end # class Image
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
# Copyright (c) 2023 M.J.N. Corino, The Netherlands
|
|
2
|
+
#
|
|
3
|
+
# This software is released under the MIT license.
|
|
4
|
+
|
|
1
5
|
###
|
|
2
6
|
# wxRuby3 wxWidgets interface director
|
|
3
|
-
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
7
|
###
|
|
5
8
|
|
|
6
9
|
module WXRuby3
|
|
@@ -14,6 +17,7 @@ module WXRuby3
|
|
|
14
17
|
if Config.instance.windows? || Config.instance.macosx?
|
|
15
18
|
spec.ignore('wxImageList::Add(const wxIcon &)', ignore_doc: false)
|
|
16
19
|
end
|
|
20
|
+
spec.ignore 'wxImageList::GetSize(int , int &, int &) const'
|
|
17
21
|
super
|
|
18
22
|
end
|
|
19
23
|
end # class ImageList
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Copyright (c) 2023 M.J.N. Corino, The Netherlands
|
|
2
|
+
#
|
|
3
|
+
# This software is released under the MIT license.
|
|
4
|
+
|
|
5
|
+
###
|
|
6
|
+
# wxRuby3 wxWidgets interface director
|
|
7
|
+
###
|
|
8
|
+
|
|
9
|
+
require_relative './window'
|
|
10
|
+
|
|
11
|
+
module WXRuby3
|
|
12
|
+
|
|
13
|
+
class Director
|
|
14
|
+
|
|
15
|
+
class InfoBar < Window
|
|
16
|
+
|
|
17
|
+
def setup
|
|
18
|
+
super
|
|
19
|
+
# no need to wrap this here as we do not proxy this
|
|
20
|
+
spec.ignore 'wxInfoBar::SetFont'
|
|
21
|
+
end
|
|
22
|
+
end # class InfoBar
|
|
23
|
+
|
|
24
|
+
end # class Director
|
|
25
|
+
|
|
26
|
+
end # module WXRuby3
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
# Copyright (c) 2023 M.J.N. Corino, The Netherlands
|
|
2
|
+
#
|
|
3
|
+
# This software is released under the MIT license.
|
|
4
|
+
|
|
1
5
|
###
|
|
2
6
|
# wxRuby3 wxWidgets interface director
|
|
3
|
-
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
7
|
###
|
|
5
8
|
|
|
6
9
|
require_relative './window'
|
|
@@ -52,12 +55,13 @@ module WXRuby3
|
|
|
52
55
|
(void)self->EditLabel(item);
|
|
53
56
|
}
|
|
54
57
|
__HEREDOC
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
58
|
+
unless Config.instance.features_set?('wxHAS_LISTCTRL_COLUMN_ORDER')
|
|
59
|
+
spec.ignore %w[wxListCtrl::GetColumnIndexFromOrder
|
|
60
|
+
wxListCtrl::GetColumnOrder
|
|
61
|
+
wxListCtrl::GetColumnsOrder
|
|
62
|
+
wxListCtrl::SetColumnsOrder]
|
|
63
|
+
end
|
|
64
|
+
# these are protected so ignored by default but we want them here
|
|
61
65
|
spec.regard %w[
|
|
62
66
|
wxListCtrl::OnGetItemAttr
|
|
63
67
|
wxListCtrl::OnGetItemColumnAttr
|
|
@@ -79,6 +83,34 @@ module WXRuby3
|
|
|
79
83
|
'wxListCtrl::SetItemData',
|
|
80
84
|
'wxListCtrl::SetItemPtrData',
|
|
81
85
|
'wxListCtrl::SortItems'
|
|
86
|
+
spec.map 'const wxVector<wxBitmapBundle>& images' => 'Array<Wx::ImageBundle>' do
|
|
87
|
+
map_in temp: 'wxVector<wxBitmapBundle> tmp', code: <<~__CODE
|
|
88
|
+
if ($input != Qnil)
|
|
89
|
+
{
|
|
90
|
+
if (TYPE($input) == T_ARRAY)
|
|
91
|
+
{
|
|
92
|
+
for (int i=0; i<RARRAY_LEN($input) ;++i)
|
|
93
|
+
{
|
|
94
|
+
void* ptr;
|
|
95
|
+
VALUE rb_image = rb_ary_entry($input, i);
|
|
96
|
+
int res = SWIG_ConvertPtr(rb_image, &ptr, wxRuby_GetSwigTypeForClassName("BitmapBundle"), 0);
|
|
97
|
+
if (!SWIG_IsOK(res))
|
|
98
|
+
{
|
|
99
|
+
VALUE msg = rb_inspect(rb_image);
|
|
100
|
+
rb_raise(rb_eTypeError, "Expected Wx::ImageBundle at index %d but got %s", i, StringValuePtr(msg));
|
|
101
|
+
}
|
|
102
|
+
tmp.push_back(*static_cast<wxBitmapBundle*>(ptr));
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
else
|
|
106
|
+
{
|
|
107
|
+
VALUE msg = rb_inspect($input);
|
|
108
|
+
rb_raise(rb_eArgError, "Expected Array of Wx::ImageBundle for $argnum but got %s", StringValuePtr(msg));
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
$1 = &tmp;
|
|
112
|
+
__CODE
|
|
113
|
+
end
|
|
82
114
|
# required for GetItemRect and GetSubItemRect
|
|
83
115
|
spec.map 'wxRect &rect' => 'Wx::Rect' do
|
|
84
116
|
map_in ignore: true, code: '$1 = new wxRect();'
|
|
@@ -100,6 +132,7 @@ module WXRuby3
|
|
|
100
132
|
VALUE items = rb_ary_new();
|
|
101
133
|
rb_ary_push(items, (VALUE)item1);
|
|
102
134
|
rb_ary_push(items, (VALUE)item2);
|
|
135
|
+
rb_ary_push(items, (VALUE)data);
|
|
103
136
|
VALUE the_order = rb_yield(items);
|
|
104
137
|
return NUM2INT(the_order);
|
|
105
138
|
}
|
|
@@ -183,9 +216,9 @@ module WXRuby3
|
|
|
183
216
|
return Qnil;
|
|
184
217
|
}
|
|
185
218
|
|
|
186
|
-
void sort_items()
|
|
219
|
+
void sort_items(VALUE data = Qnil)
|
|
187
220
|
{
|
|
188
|
-
self->SortItems(wxListCtrl_SortByYielding,
|
|
221
|
+
$self->SortItems(wxListCtrl_SortByYielding, static_cast<wxIntPtr> (data));
|
|
189
222
|
}
|
|
190
223
|
__HEREDOC
|
|
191
224
|
super
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
# Copyright (c) 2023 M.J.N. Corino, The Netherlands
|
|
2
|
+
#
|
|
3
|
+
# This software is released under the MIT license.
|
|
4
|
+
|
|
1
5
|
###
|
|
2
6
|
# wxRuby3 wxWidgets interface director
|
|
3
|
-
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
7
|
###
|
|
5
8
|
|
|
6
9
|
module WXRuby3
|
|
@@ -24,10 +27,10 @@ module WXRuby3
|
|
|
24
27
|
wxLanguageInfo::Description
|
|
25
28
|
wxLanguageInfo::DescriptionNative
|
|
26
29
|
wxLanguageInfo::LayoutDirection
|
|
27
|
-
wxLanguageInfo::WinLang
|
|
28
|
-
wxLanguageInfo::WinSublang
|
|
29
30
|
]
|
|
30
|
-
|
|
31
|
+
if Config.instance.features_set?('__WXMSW__')
|
|
32
|
+
spec.regard('wxLanguageInfo::WinLang', 'wxLanguageInfo::WinSublang')
|
|
33
|
+
end
|
|
31
34
|
end
|
|
32
35
|
end # class Locale
|
|
33
36
|
|
data/rakelib/lib/director/log.rb
CHANGED
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
# Copyright (c) 2023 M.J.N. Corino, The Netherlands
|
|
2
|
+
#
|
|
3
|
+
# This software is released under the MIT license.
|
|
4
|
+
|
|
1
5
|
###
|
|
2
6
|
# wxRuby3 wxWidgets interface director
|
|
3
|
-
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
7
|
###
|
|
5
8
|
|
|
6
9
|
module WXRuby3
|
|
@@ -10,19 +13,121 @@ module WXRuby3
|
|
|
10
13
|
class Log < Director
|
|
11
14
|
|
|
12
15
|
def setup
|
|
13
|
-
spec.gc_as_object
|
|
14
|
-
spec.items.concat(%w[wxLogBuffer wxLogChain wxLogGui wxLogStderr wxLogStream wxLogTextCtrl wxLogInterposer
|
|
15
|
-
spec.no_proxy(%w[wxLogBuffer
|
|
16
|
+
spec.gc_as_object %w[wxLog wxLogChain wxLogInterposer wxLogWindow]
|
|
17
|
+
spec.items.concat(%w[wxLogBuffer wxLogChain wxLogGui wxLogStderr wxLogStream wxLogTextCtrl wxLogInterposer wxLogWindow wxLogNull wxLogRecordInfo])
|
|
18
|
+
spec.no_proxy(%w[wxLogBuffer wxLogGui wxLogStderr wxLogTextCtrl wxLogWindow])
|
|
19
|
+
spec.force_proxy(%w[wxLogInterposer])
|
|
20
|
+
spec.ignore 'wxLog::SetFormatter'
|
|
21
|
+
spec.regard %w[wxLog::DoLogRecord wxLog::DoLogTextAtLevel wxLog::DoLogText]
|
|
16
22
|
spec.ignore 'wxLogBuffer::Flush'
|
|
17
23
|
spec.ignore 'wxLogGui::Flush'
|
|
18
|
-
if Config.instance.features_set?(
|
|
24
|
+
if Config.instance.features_set?('wxUSE_STD_IOSTREAM')
|
|
19
25
|
spec.ignore 'wxLogStream'
|
|
20
26
|
end
|
|
27
|
+
# wxLogStderr
|
|
28
|
+
spec.ignore 'wxLogStderr::wxLogStderr'
|
|
29
|
+
spec.add_extend_code 'wxLogStderr', <<~__HEREDOC
|
|
30
|
+
wxLogStderr(int fh=2)
|
|
31
|
+
{
|
|
32
|
+
if (fh == 2)
|
|
33
|
+
{ return new wxLogStderr(); }
|
|
34
|
+
else if (fh == 1)
|
|
35
|
+
{ return new wxLogStderr(stdout); }
|
|
36
|
+
rb_raise(rb_eArgError, "Expected 1 (for stdout) or 2 (for stderr).");
|
|
37
|
+
}
|
|
38
|
+
__HEREDOC
|
|
39
|
+
|
|
40
|
+
# for wxLogChain
|
|
41
|
+
|
|
42
|
+
# In C++ wxLogChain releases it's redirection chain when destructed.
|
|
43
|
+
# In wxRuby this does not work as expected as GC collection cannot be exactly predicted.
|
|
44
|
+
# Therefor extend the class here with an explicit 'release' method.
|
|
45
|
+
spec.add_extend_code 'wxLogChain', <<~__CODE
|
|
46
|
+
void release()
|
|
47
|
+
{
|
|
48
|
+
wxLog::SetActiveTarget($self->GetOldLog());
|
|
49
|
+
$self->DetachOldLog();
|
|
50
|
+
// Make Ruby own the object again so it will be deleted when GC collected
|
|
51
|
+
VALUE rb_self = SWIG_RubyInstanceFor($self);
|
|
52
|
+
if (!NIL_P(rb_self))
|
|
53
|
+
{
|
|
54
|
+
swig_type_info* swig_type = wxRuby_GetSwigTypeForClass(CLASS_OF(rb_self));
|
|
55
|
+
RDATA(rb_self)->dfree = ((swig_class *)swig_type->clientdata)->destroy;
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
__CODE
|
|
59
|
+
# In this case we have a mix of C++ marking and Ruby caching to manage GC collection.
|
|
60
|
+
# The 'Old Log' reference is managed from C++ as it is captured and accessible there.
|
|
61
|
+
# The 'New Log' reference is cached in Ruby as the LogChain class does not provide
|
|
62
|
+
# access to this after setting (private member).
|
|
63
|
+
spec.add_header_code <<~__HEREDOC
|
|
64
|
+
static void GC_mark_wxLogChain(void* ptr)
|
|
65
|
+
{
|
|
66
|
+
if (ptr )
|
|
67
|
+
{
|
|
68
|
+
wxLogChain* logChain = reinterpret_cast<wxLogChain*> (ptr);
|
|
69
|
+
wxLog* oldLog = logChain->GetOldLog();
|
|
70
|
+
VALUE rb_old_log = SWIG_RubyInstanceFor(oldLog);
|
|
71
|
+
if (!NIL_P(rb_old_log))
|
|
72
|
+
{
|
|
73
|
+
rb_gc_mark(rb_old_log);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
__HEREDOC
|
|
78
|
+
spec.add_swig_code '%markfunc wxLogChain "GC_mark_wxLogChain";',
|
|
79
|
+
'%markfunc wxLogInterposer "GC_mark_wxLogChain";',
|
|
80
|
+
'%markfunc wxLogWindow "GC_mark_wxLogChain";'
|
|
81
|
+
spec.disown 'wxLog *logger'
|
|
82
|
+
spec.ignore 'wxLogChain::DetachOldLog' # too much potential trouble
|
|
83
|
+
# add override decl missing from xml specs
|
|
84
|
+
spec.extend_interface 'wxLogChain',
|
|
85
|
+
'virtual void DoLogRecord(wxLogLevel level, const wxString& msg, const wxLogRecordInfo& info) override',
|
|
86
|
+
visibility: 'protected'
|
|
87
|
+
# wxLogChain and derivatives need to be allocated disowned because new instances of these classes
|
|
88
|
+
# are installed as ActiveTarget on construction and so wxWidgets has ownership
|
|
89
|
+
spec.allocate_disowned 'wxLogChain'
|
|
90
|
+
spec.allocate_disowned 'wxLogInterposer'
|
|
91
|
+
spec.allocate_disowned 'wxLogWindow'
|
|
92
|
+
|
|
93
|
+
# for ActiveTarget methods
|
|
21
94
|
spec.ignore 'wxLog::SetThreadActiveTarget'
|
|
22
95
|
spec.disown 'wxLog *logtarget'
|
|
96
|
+
spec.new_object 'wxLog::SetActiveTarget'
|
|
23
97
|
spec.do_not_generate(:functions)
|
|
24
98
|
spec.make_concrete('wxLog')
|
|
25
|
-
spec.extend_interface('wxLog', '
|
|
99
|
+
spec.extend_interface('wxLog', 'virtual ~wxLog ()')
|
|
100
|
+
spec.gc_as_untracked 'wxLogRecordInfo'
|
|
101
|
+
spec.add_extend_code 'wxLogRecordInfo', <<~__HEREDOC
|
|
102
|
+
VALUE filename()
|
|
103
|
+
{
|
|
104
|
+
return $self->filename ? WXSTR_TO_RSTR(wxString($self->filename)) : Qnil;
|
|
105
|
+
}
|
|
106
|
+
VALUE line()
|
|
107
|
+
{
|
|
108
|
+
return INT2NUM($self->line);
|
|
109
|
+
}
|
|
110
|
+
VALUE func()
|
|
111
|
+
{
|
|
112
|
+
return $self->func ? WXSTR_TO_RSTR(wxString($self->func)) : Qnil;
|
|
113
|
+
}
|
|
114
|
+
VALUE component()
|
|
115
|
+
{
|
|
116
|
+
return $self->component ? WXSTR_TO_RSTR(wxString($self->component)) : Qnil;
|
|
117
|
+
}
|
|
118
|
+
__HEREDOC
|
|
119
|
+
spec.make_abstract 'wxLogNull'
|
|
120
|
+
spec.ignore 'wxLogNull::wxLogNull'
|
|
121
|
+
spec.add_extend_code 'wxLogNull', <<~__HEREDOC__
|
|
122
|
+
static void no_log()
|
|
123
|
+
{
|
|
124
|
+
if (rb_block_given_p ())
|
|
125
|
+
{
|
|
126
|
+
wxLogNull noLog;
|
|
127
|
+
rb_yield(Qnil);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
__HEREDOC__
|
|
26
131
|
super
|
|
27
132
|
end
|
|
28
133
|
end # class Log
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
# Copyright (c) 2023 M.J.N. Corino, The Netherlands
|
|
2
|
+
#
|
|
3
|
+
# This software is released under the MIT license.
|
|
4
|
+
|
|
1
5
|
###
|
|
2
6
|
# wxRuby3 wxWidgets interface director
|
|
3
|
-
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
7
|
###
|
|
5
8
|
|
|
6
9
|
module WXRuby3
|
|
@@ -44,8 +47,18 @@ module WXRuby3
|
|
|
44
47
|
SWIGTYPE_p_wxMenuItem, 0);
|
|
45
48
|
rb_ary_push($result, rb_menu_item);
|
|
46
49
|
}
|
|
50
|
+
__CODE
|
|
51
|
+
end
|
|
52
|
+
# for FindItem
|
|
53
|
+
spec.map 'wxMenu **' => 'Wx::Menu' do
|
|
54
|
+
map_in ignore: true, temp: 'wxMenu *tmp', code: '$1 = &tmp;'
|
|
55
|
+
map_argout code: <<~__CODE
|
|
56
|
+
void *ptr = tmp$argnum;
|
|
57
|
+
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(ptr, SWIGTYPE_p_wxMenu, 0));
|
|
47
58
|
__CODE
|
|
48
59
|
end
|
|
60
|
+
# for FindChildItem
|
|
61
|
+
spec.map_apply 'size_t * OUTPUT' => 'size_t * pos'
|
|
49
62
|
spec.add_header_code <<~__HEREDOC
|
|
50
63
|
// Mark Function
|
|
51
64
|
// Need to protect MenuItems which are included in the Menu, including
|
|
@@ -71,7 +84,7 @@ module WXRuby3
|
|
|
71
84
|
__HEREDOC
|
|
72
85
|
spec.add_swig_code <<~__HEREDOC
|
|
73
86
|
%markfunc wxMenu "mark_wxMenu";
|
|
74
|
-
|
|
87
|
+
__HEREDOC
|
|
75
88
|
# fix SWIG's problems with const& return value
|
|
76
89
|
spec.ignore('wxMenu::GetTitle', ignore_doc: false) # keep doc
|
|
77
90
|
spec.add_extend_code 'wxMenu', <<~__HEREDOC
|
|
@@ -79,7 +92,7 @@ module WXRuby3
|
|
|
79
92
|
wxString const& title = $self->GetTitle();
|
|
80
93
|
return &const_cast<wxString&> (title);
|
|
81
94
|
}
|
|
82
|
-
|
|
95
|
+
__HEREDOC
|
|
83
96
|
super
|
|
84
97
|
end
|
|
85
98
|
end # class Menu
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
# Copyright (c) 2023 M.J.N. Corino, The Netherlands
|
|
2
|
+
#
|
|
3
|
+
# This software is released under the MIT license.
|
|
4
|
+
|
|
1
5
|
###
|
|
2
6
|
# wxRuby3 wxWidgets interface director
|
|
3
|
-
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
7
|
###
|
|
5
8
|
|
|
6
9
|
require_relative './window'
|
|
@@ -12,6 +15,7 @@ module WXRuby3
|
|
|
12
15
|
class MenuBar < Window
|
|
13
16
|
|
|
14
17
|
def setup
|
|
18
|
+
super
|
|
15
19
|
spec.no_proxy('wxMenuBar::FindItem',
|
|
16
20
|
'wxMenuBar::Remove',
|
|
17
21
|
'wxMenuBar::Replace')
|
|
@@ -22,7 +26,14 @@ module WXRuby3
|
|
|
22
26
|
unless Config.instance.wx_version >= '3.3' || Config.instance.wx_abi_version > '3.0.0'
|
|
23
27
|
spec.ignore 'wxMenuBar::OSXGetAppleMenu'
|
|
24
28
|
end
|
|
25
|
-
|
|
29
|
+
# for FindItem
|
|
30
|
+
spec.map 'wxMenu **' => 'Wx::Menu' do
|
|
31
|
+
map_in ignore: true, temp: 'wxMenu *tmp', code: '$1 = &tmp;'
|
|
32
|
+
map_argout code: <<~__CODE
|
|
33
|
+
void *ptr = tmp$argnum;
|
|
34
|
+
$result = SWIG_Ruby_AppendOutput($result, SWIG_NewPointerObj(ptr, SWIGTYPE_p_wxMenu, 0));
|
|
35
|
+
__CODE
|
|
36
|
+
end
|
|
26
37
|
end
|
|
27
38
|
end # class MenuBar
|
|
28
39
|
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
# Copyright (c) 2023 M.J.N. Corino, The Netherlands
|
|
2
|
+
#
|
|
3
|
+
# This software is released under the MIT license.
|
|
4
|
+
|
|
1
5
|
###
|
|
2
6
|
# wxRuby3 wxWidgets interface director
|
|
3
|
-
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
7
|
###
|
|
5
8
|
|
|
6
9
|
module WXRuby3
|
|
@@ -18,14 +21,11 @@ module WXRuby3
|
|
|
18
21
|
spec.ignore(%w[wxMenuItem::GetLabel wxMenuItem::GetName wxMenuItem::GetText wxMenuItem::SetText wxMenuItem::GetLabelFromText])
|
|
19
22
|
# ignore this as there is no implementation anymore
|
|
20
23
|
spec.ignore 'wxMenuItem::GetAccelFromString'
|
|
21
|
-
spec.
|
|
24
|
+
spec.ignore('wxMenuItem::GetAccel') unless Config.instance.features_set?('wxUSE_ACCEL')
|
|
22
25
|
spec.no_proxy 'wxMenuItem::GetAccel'
|
|
23
26
|
spec.ignore 'wxMenuItem::GetBitmap(bool)' # not portable
|
|
24
27
|
if Config.instance.wx_version >= '3.3.0'
|
|
25
|
-
spec.
|
|
26
|
-
'wxMenuItem::SetBackgroundColour',
|
|
27
|
-
'wxMenuItem::SetFont',
|
|
28
|
-
'wxMenuItem::SetTextColour'
|
|
28
|
+
spec.ignore('wxMenuItem::SetBackgroundColour','wxMenuItem::SetFont','wxMenuItem::SetTextColour') unless Config.instance.features_set?('__WXMSW__')
|
|
29
29
|
end
|
|
30
30
|
super
|
|
31
31
|
end
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
# Copyright (c) 2023 M.J.N. Corino, The Netherlands
|
|
2
|
+
#
|
|
3
|
+
# This software is released under the MIT license.
|
|
4
|
+
|
|
1
5
|
###
|
|
2
6
|
# wxRuby3 wxWidgets interface director
|
|
3
|
-
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
7
|
###
|
|
5
8
|
|
|
6
9
|
module WXRuby3
|
|
@@ -12,7 +15,7 @@ module WXRuby3
|
|
|
12
15
|
def setup
|
|
13
16
|
super
|
|
14
17
|
spec.ignore 'wxMouseState::GetPosition(int*,int*)'
|
|
15
|
-
spec.do_not_generate(:variables, :
|
|
18
|
+
spec.do_not_generate(:variables, :defines, :functions)
|
|
16
19
|
end
|
|
17
20
|
end # class MouseState
|
|
18
21
|
|
|
@@ -1,6 +1,9 @@
|
|
|
1
|
+
# Copyright (c) 2023 M.J.N. Corino, The Netherlands
|
|
2
|
+
#
|
|
3
|
+
# This software is released under the MIT license.
|
|
4
|
+
|
|
1
5
|
###
|
|
2
6
|
# wxRuby3 wxWidgets interface director
|
|
3
|
-
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
7
|
###
|
|
5
8
|
|
|
6
9
|
module WXRuby3
|
|
@@ -11,7 +14,7 @@ module WXRuby3
|
|
|
11
14
|
|
|
12
15
|
def setup
|
|
13
16
|
spec.make_abstract('wxObject')
|
|
14
|
-
spec.ignore %w[wxObject::Ref wxObject::UnRef wxObject::GetRefData wxObject::IsKindOf wxObject::GetClassInfo]
|
|
17
|
+
spec.ignore %w[wxObject::Ref wxObject::UnRef wxObject::GetRefData wxObject::IsKindOf wxObject::GetClassInfo wxObject::SetRefData]
|
|
15
18
|
spec.no_proxy 'wxObject'
|
|
16
19
|
spec.add_extend_code 'wxObject', <<~__HEREDOC
|
|
17
20
|
// Returns the string name of the C++ wx class which this object is wrapping.
|