wxruby3 0.9.0.pre.rc.3 → 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/README.md +1 -1
- 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 +5 -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 +7 -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 +16 -4
- data/lib/wx/core/imagelist.rb +8 -1
- data/lib/wx/core/listbox.rb +7 -0
- data/lib/wx/core/listctrl.rb +9 -0
- data/lib/wx/core/locale.rb +8 -0
- data/lib/wx/core/log.rb +24 -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 +12 -4
- 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 +6 -0
- data/lib/wx/doc/events.rb +6 -0
- data/lib/wx/doc/evthandler.rb +8 -0
- data/lib/wx/doc/extra/01_packages.md +52 -51
- 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 +1 -1
- data/lib/wx/doc/extra/10_art.md +18 -12
- data/lib/wx/doc/extra/11_drawing_and_dc.md +4 -4
- data/lib/wx/doc/font.rb +6 -0
- data/lib/wx/doc/font_data.rb +16 -0
- data/lib/wx/doc/functions.rb +9 -1
- data/lib/wx/doc/gc_dc.rb +6 -0
- 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 +12 -4
- data/lib/wx/doc/list_ctrl.rb +6 -0
- data/lib/wx/doc/log.rb +17 -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 +6 -0
- 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 +6 -0
- 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 +6 -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 +26 -46
- data/rakelib/lib/core/package.rb +17 -3
- data/rakelib/lib/core/parameter.rb +4 -1
- data/rakelib/lib/core/spec.rb +14 -8
- data/rakelib/lib/core/spec_helper.rb +32 -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 +24 -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 +4 -1
- 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 +11 -5
- 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 +26 -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 +39 -7
- data/rakelib/lib/director/listbox.rb +4 -1
- data/rakelib/lib/director/locale.rb +7 -4
- data/rakelib/lib/director/log.rb +51 -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 +4 -1
- data/rakelib/lib/director/text_validator.rb +6 -1
- 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 +5 -2
- 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 +12 -4
- data/rakelib/lib/extractor/module.rb +4 -1
- data/rakelib/lib/extractor/variable.rb +4 -1
- 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/grid_cell_attr.yaml +21 -0
- data/rakelib/lib/generate/doc/grid_ctrl.yaml +25 -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/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/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/rich_text_html_handler.yaml +11 -0
- data/rakelib/lib/generate/doc/styled_text_ctrl.yaml +18 -0
- data/rakelib/lib/generate/doc/symbol_picker_dialog.yaml +40 -0
- data/rakelib/lib/generate/doc.rb +19 -3
- data/rakelib/lib/generate/interface.rb +79 -110
- data/rakelib/lib/generate/rakedep.rb +4 -1
- data/rakelib/lib/specs/interfaces.rb +45 -20
- data/rakelib/lib/streams.rb +5 -1
- data/rakelib/lib/swig_runner.rb +34 -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 +22 -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 +5 -2
- 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 +7 -4
- data/tests/test_intl.rb +3 -0
- data/tests/test_item_data.rb +3 -0
- data/tests/test_list_ctrl.rb +4 -1
- data/tests/test_log.rb +63 -0
- data/tests/test_proof_check.rb +52 -0
- data/tests/test_richtext.rb +204 -0
- data/tests/test_std_controls.rb +45 -35
- data/tests/test_timer.rb +3 -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 +89 -3
- data/rakelib/lib/director/html_help_frame.rb +0 -25
|
@@ -0,0 +1,44 @@
|
|
|
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 './dialog'
|
|
10
|
+
|
|
11
|
+
module WXRuby3
|
|
12
|
+
|
|
13
|
+
class Director
|
|
14
|
+
|
|
15
|
+
class RichTextFormattingDialog < Dialog
|
|
16
|
+
|
|
17
|
+
include Typemap::RichText
|
|
18
|
+
|
|
19
|
+
def setup
|
|
20
|
+
super
|
|
21
|
+
spec.items << 'wxRichTextFormattingDialogFactory'
|
|
22
|
+
spec.add_header_code 'extern VALUE wxRuby_RichTextStyleDefinition2Ruby(const wxRichTextStyleDefinition *wx_rtsd, int own);'
|
|
23
|
+
spec.no_proxy %w[
|
|
24
|
+
wxRichTextFormattingDialog::GetStyleDefinition
|
|
25
|
+
wxRichTextFormattingDialog::GetStyleSheet
|
|
26
|
+
wxRichTextFormattingDialog::GetStyle
|
|
27
|
+
wxRichTextFormattingDialog::SetStyle
|
|
28
|
+
wxRichTextFormattingDialog::SetStyleDefinition
|
|
29
|
+
]
|
|
30
|
+
# add undocumented methods
|
|
31
|
+
spec.extend_interface 'wxRichTextFormattingDialog',
|
|
32
|
+
'wxRichTextObject* GetObject() const',
|
|
33
|
+
'void SetObject(wxRichTextObject* obj)',
|
|
34
|
+
'virtual bool ApplyStyle(wxRichTextCtrl* ctrl, int flags = wxRICHTEXT_SETSTYLE_WITH_UNDO)'
|
|
35
|
+
spec.add_header_code 'extern VALUE wxRuby_RichTextObject2Ruby(const wxRichTextObject *wx_rto, int own);'
|
|
36
|
+
spec.disown 'wxRichTextFormattingDialogFactory *factory'
|
|
37
|
+
spec.suppress_warning(473, 'wxRichTextFormattingDialogFactory::CreatePage')
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
end
|
|
@@ -0,0 +1,56 @@
|
|
|
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 './richtext_object'
|
|
10
|
+
|
|
11
|
+
module WXRuby3
|
|
12
|
+
|
|
13
|
+
class Director
|
|
14
|
+
|
|
15
|
+
class RichTextImage < RichTextObject
|
|
16
|
+
|
|
17
|
+
include Typemap::RichText
|
|
18
|
+
include Typemap::IOStreams
|
|
19
|
+
|
|
20
|
+
def setup
|
|
21
|
+
super
|
|
22
|
+
spec.items << 'wxRichTextImageBlock'
|
|
23
|
+
spec.no_proxy 'wxRichTextImageBlock'
|
|
24
|
+
spec.ignore 'wxRichTextImageBlock::ReadBlock',
|
|
25
|
+
'wxRichTextImageBlock::WriteBlock'
|
|
26
|
+
# for SetData & GetData
|
|
27
|
+
spec.map 'unsigned char *' => 'String' do
|
|
28
|
+
|
|
29
|
+
map_in temp: 'std::unique_ptr<unsigned char[]> buf', code: <<~__CODE
|
|
30
|
+
if (TYPE($input) == T_STRING)
|
|
31
|
+
{
|
|
32
|
+
int data_len = RSTRING_LEN($input);
|
|
33
|
+
buf = std::make_unique<unsigned char[]> (data_len);
|
|
34
|
+
memcpy(buf.get(), StringValuePtr($input), data_len);
|
|
35
|
+
$1 = buf.release();
|
|
36
|
+
}
|
|
37
|
+
else
|
|
38
|
+
{
|
|
39
|
+
rb_raise(rb_eArgError, "Expected a String for %d", $argnum-1);
|
|
40
|
+
}
|
|
41
|
+
__CODE
|
|
42
|
+
|
|
43
|
+
map_out code: <<~__CODE
|
|
44
|
+
size_t data_len = arg1->GetDataSize();
|
|
45
|
+
$result = rb_str_new( (const char*)$1, data_len);
|
|
46
|
+
__CODE
|
|
47
|
+
end
|
|
48
|
+
spec.map_apply 'bool * OUTPUT' => 'bool & changed'
|
|
49
|
+
spec.do_not_generate(:typedefs, :variables, :enums, :defines, :functions)
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
end
|
|
@@ -0,0 +1,272 @@
|
|
|
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
|
+
module WXRuby3
|
|
10
|
+
|
|
11
|
+
class Director
|
|
12
|
+
|
|
13
|
+
class RichTextObject < Director
|
|
14
|
+
|
|
15
|
+
include Typemap::RichText
|
|
16
|
+
|
|
17
|
+
def setup
|
|
18
|
+
super
|
|
19
|
+
spec.swig_import 'swig/classes/include/wxTextAttr.h'
|
|
20
|
+
if spec.module_name == 'wxRichTextObject'
|
|
21
|
+
spec.items.concat %w[
|
|
22
|
+
wxRichTextPlainText
|
|
23
|
+
wxRichTextDrawingContext
|
|
24
|
+
wxRichTextAttr
|
|
25
|
+
wxTextBoxAttr
|
|
26
|
+
wxTextAttrDimension
|
|
27
|
+
wxTextAttrDimensions
|
|
28
|
+
wxTextAttrShadow
|
|
29
|
+
wxTextAttrBorder
|
|
30
|
+
wxTextAttrBorders
|
|
31
|
+
wxTextAttrSize
|
|
32
|
+
wxRichTextSelection
|
|
33
|
+
wxRichTextProperties
|
|
34
|
+
]
|
|
35
|
+
spec.disable_proxies
|
|
36
|
+
spec.gc_as_untracked 'wxRichTextObject',
|
|
37
|
+
'wxRichTextPlainText'
|
|
38
|
+
spec.add_swig_code '%feature("freefunc") wxRichTextObject "GC_RichTextObjectFreeFunc";'
|
|
39
|
+
spec.gc_as_untracked 'wxRichTextDrawingContext',
|
|
40
|
+
'wxRichTextAttr',
|
|
41
|
+
'wxTextBoxAttr',
|
|
42
|
+
'wxTextAttrDimension',
|
|
43
|
+
'wxTextAttrDimensions',
|
|
44
|
+
'wxTextAttrShadow',
|
|
45
|
+
'wxTextAttrBorder',
|
|
46
|
+
'wxTextAttrBorders',
|
|
47
|
+
'wxTextAttrSize',
|
|
48
|
+
'wxRichTextSelection',
|
|
49
|
+
'wxRichTextProperties'
|
|
50
|
+
spec.add_header_code <<~__HEREDOC
|
|
51
|
+
extern void GC_RichTextObjectFreeFunc(void* ptr)
|
|
52
|
+
{
|
|
53
|
+
SWIG_RubyRemoveTracking(ptr);
|
|
54
|
+
if (ptr)
|
|
55
|
+
{
|
|
56
|
+
#ifdef __WXRB_DEBUG__
|
|
57
|
+
if (wxRuby_TraceLevel()>1)
|
|
58
|
+
std::wcout << "GC_RichTextObjectFreeFunc(" << ptr << ")" << std::endl;
|
|
59
|
+
#endif
|
|
60
|
+
((wxRichTextObject*)ptr)->Dereference();
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
__HEREDOC
|
|
64
|
+
spec.make_abstract 'wxRichTextObject'
|
|
65
|
+
spec.add_header_code <<~__HEREDOC
|
|
66
|
+
extern VALUE wxRuby_RichTextObject2Ruby(const wxRichTextObject *wx_rto, int own)
|
|
67
|
+
{
|
|
68
|
+
// If no object was passed to be wrapped.
|
|
69
|
+
if ( ! wx_rto )
|
|
70
|
+
return Qnil;
|
|
71
|
+
|
|
72
|
+
// Get the wx class and the ruby class we are converting into
|
|
73
|
+
wxString class_name( wx_rto->GetClassInfo()->GetClassName() );
|
|
74
|
+
wxCharBuffer wx_classname = class_name.mb_str();
|
|
75
|
+
VALUE r_class_name = rb_intern(wx_classname.data () + 2);
|
|
76
|
+
VALUE r_class = Qnil;
|
|
77
|
+
|
|
78
|
+
if ( class_name.Len() > 2 )
|
|
79
|
+
{
|
|
80
|
+
// lookup the class in the RichText module
|
|
81
|
+
if (rb_const_defined(mWxRTC, r_class_name))
|
|
82
|
+
r_class = rb_const_get(mWxRTC, r_class_name);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
// Handle classes (currently) unknown in wxRuby.
|
|
86
|
+
if ( NIL_P(r_class) )
|
|
87
|
+
{
|
|
88
|
+
rb_warn("Error wrapping object; class '%s' is not (yet) supported in wxRuby",
|
|
89
|
+
(const char *)class_name.mb_str());
|
|
90
|
+
return Qnil;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
// Otherwise, retrieve the swig type info for this class and wrap it
|
|
94
|
+
// in Ruby. wxRuby_GetSwigTypeForClass is defined in wx.i
|
|
95
|
+
swig_type_info* swig_type = wxRuby_GetSwigTypeForClass(r_class);
|
|
96
|
+
VALUE rb_rto = SWIG_NewPointerObj(const_cast<wxRichTextObject*> (wx_rto), swig_type, own);
|
|
97
|
+
return rb_rto;
|
|
98
|
+
}
|
|
99
|
+
__HEREDOC
|
|
100
|
+
spec.ignore(%w[wxRICHTEXT_ALL wxRICHTEXT_NONE wxRICHTEXT_NO_SELECTION])
|
|
101
|
+
# special typemap for const wxChar wxRichTextLineBreakChar;
|
|
102
|
+
spec.add_swig_code <<~__HEREDOC
|
|
103
|
+
%typemap(constcode,noblock=1) const wxChar {
|
|
104
|
+
%set_constant("$symname", rb_str_new2((const char *)wxString($value).utf8_str()));
|
|
105
|
+
}
|
|
106
|
+
__HEREDOC
|
|
107
|
+
spec.new_object 'wxRichTextObject::DoSplit',
|
|
108
|
+
'wxRichTextObject::Clone'
|
|
109
|
+
# for wxRichTextObject::GetRangeSize
|
|
110
|
+
spec.map 'int & descent', as: 'Integer' do
|
|
111
|
+
|
|
112
|
+
map_in temp: 'int tmp', code: 'tmp = NUM2INT($input); $1 = &tmp;'
|
|
113
|
+
|
|
114
|
+
map_argout code: '$result = SWIG_Ruby_AppendOutput($result, INT2NUM(tmp$argnum));'
|
|
115
|
+
|
|
116
|
+
map_directorin code: '$input = INT2NUM($1);'
|
|
117
|
+
|
|
118
|
+
map_directorargout code: <<~__CODE
|
|
119
|
+
if(output != Qnil)
|
|
120
|
+
{
|
|
121
|
+
$1 = NUM2INT(output);
|
|
122
|
+
}
|
|
123
|
+
else
|
|
124
|
+
{
|
|
125
|
+
$1 = 0;
|
|
126
|
+
}
|
|
127
|
+
__CODE
|
|
128
|
+
|
|
129
|
+
end
|
|
130
|
+
spec.map_apply 'int * OUTPUT' => ['int * height',
|
|
131
|
+
'int &leftMargin', 'int &rightMargin', 'int &topMargin', 'int &bottomMargin']
|
|
132
|
+
spec.map 'wxTextOutputStream &' => 'IO,Wx::OutputStream' do
|
|
133
|
+
|
|
134
|
+
add_header_code <<~__CODE
|
|
135
|
+
WXRUBY_EXPORT bool wxRuby_IsOutputStream(VALUE);
|
|
136
|
+
WXRUBY_EXPORT bool wxRuby_IsCompatibleOutput(VALUE rbos);
|
|
137
|
+
WXRUBY_EXPORT wxOutputStream* wxRuby_RubyToOutputStream(VALUE);
|
|
138
|
+
WXRUBY_EXPORT VALUE wxRuby_RubyFromOutputStream(wxOutputStream&);
|
|
139
|
+
|
|
140
|
+
// Allows a ruby IO-like object to be used as a wxOutputStream
|
|
141
|
+
class WXRUBY_EXPORT wxRubyOutputStream : public wxOutputStream
|
|
142
|
+
{
|
|
143
|
+
public:
|
|
144
|
+
// Initialize with the writeable ruby IO-like object
|
|
145
|
+
wxRubyOutputStream(VALUE rb_io);
|
|
146
|
+
virtual ~wxRubyOutputStream();
|
|
147
|
+
|
|
148
|
+
wxFileOffset GetLength() const wxOVERRIDE;
|
|
149
|
+
|
|
150
|
+
void Sync() wxOVERRIDE;
|
|
151
|
+
bool Close() wxOVERRIDE;
|
|
152
|
+
bool Ok() const { return IsOk(); }
|
|
153
|
+
bool IsOk() const wxOVERRIDE;
|
|
154
|
+
bool IsSeekable() const wxOVERRIDE;
|
|
155
|
+
|
|
156
|
+
VALUE GetRubyIO () { return m_rbio; }
|
|
157
|
+
|
|
158
|
+
protected:
|
|
159
|
+
size_t OnSysWrite(const void *buffer, size_t size) wxOVERRIDE;
|
|
160
|
+
wxFileOffset OnSysSeek(wxFileOffset seek, wxSeekMode mode) wxOVERRIDE;
|
|
161
|
+
wxFileOffset OnSysTell() const wxOVERRIDE;
|
|
162
|
+
|
|
163
|
+
VALUE m_rbio; // Wrapped ruby object
|
|
164
|
+
bool m_isIO;
|
|
165
|
+
bool m_isSeekable;
|
|
166
|
+
};
|
|
167
|
+
__CODE
|
|
168
|
+
|
|
169
|
+
map_in temp: 'std::unique_ptr<wxRubyOutputStream> tmp_ros, std::unique_ptr<wxTextOutputStream> tmp_tos',
|
|
170
|
+
code: <<~__CODE
|
|
171
|
+
if (wxRuby_IsCompatibleOutput($input))
|
|
172
|
+
{
|
|
173
|
+
tmp_ros = std::make_unique<wxRubyOutputStream>($input);
|
|
174
|
+
tmp_tos = std::make_unique<wxTextOutputStream>(*tmp_ros.get());
|
|
175
|
+
$1 = tmp_tos.get();
|
|
176
|
+
}
|
|
177
|
+
else
|
|
178
|
+
{
|
|
179
|
+
wxOutputStream* wx_os = wxRuby_RubyToOutputStream($input);
|
|
180
|
+
if (!wx_os)
|
|
181
|
+
{
|
|
182
|
+
rb_raise(rb_eArgError, "Invalid value for %d expected IO(-like) or Wx::OutputStream", $argnum-1);
|
|
183
|
+
}
|
|
184
|
+
tmp_tos = std::make_unique<wxTextOutputStream>(*wx_os);
|
|
185
|
+
$1 = tmp_tos.get();
|
|
186
|
+
}
|
|
187
|
+
__CODE
|
|
188
|
+
end
|
|
189
|
+
spec.map 'wxRichTextAttrArray & attributes' => 'Array' do
|
|
190
|
+
|
|
191
|
+
map_in temp: 'wxRichTextAttrArray arr, VALUE rb_arr', code: <<~__CODE
|
|
192
|
+
if (TYPE($input) == T_ARRAY)
|
|
193
|
+
{
|
|
194
|
+
$1 = &arr;
|
|
195
|
+
rb_arr = $input;
|
|
196
|
+
}
|
|
197
|
+
else
|
|
198
|
+
{
|
|
199
|
+
rb_raise(rb_eArgError, "Expected an Array for %d", $argnum-1);
|
|
200
|
+
}
|
|
201
|
+
__CODE
|
|
202
|
+
|
|
203
|
+
map_argout by_ref: true, code: <<~__CODE
|
|
204
|
+
for (size_t i=0; i<arr$argnum.GetCount() ;++i)
|
|
205
|
+
{
|
|
206
|
+
wxRichTextAttr* wx_rta = new wxRichTextAttr(arr$argnum.Item(i));
|
|
207
|
+
rb_ary_push(rb_arr$argnum, SWIG_NewPointerObj(SWIG_as_voidptr(wx_rta), SWIGTYPE_p_wxRichTextAttr, SWIG_POINTER_OWN));
|
|
208
|
+
}
|
|
209
|
+
__CODE
|
|
210
|
+
|
|
211
|
+
end
|
|
212
|
+
spec.ignore 'wxRichTextSelection::operator[]'
|
|
213
|
+
spec.ignore 'wxRichTextProperties::SetProperty(const wxString &,const wxChar *)',
|
|
214
|
+
'wxRichTextProperties::operator[]'
|
|
215
|
+
spec.map 'const wxRichTextVariantArray &' => 'Array<Wx::Variant>' do
|
|
216
|
+
map_in temp: 'wxRichTextVariantArray tmp', code: <<~__CODE
|
|
217
|
+
if (($input == Qnil) || (TYPE($input) != T_ARRAY))
|
|
218
|
+
{
|
|
219
|
+
rb_raise(rb_eArgError, "Expected an Array of Wx::Variant for %d", $argnum-1);
|
|
220
|
+
}
|
|
221
|
+
else
|
|
222
|
+
{
|
|
223
|
+
for (int i = 0; i < RARRAY_LEN($input); ++i)
|
|
224
|
+
{
|
|
225
|
+
void *ptr;
|
|
226
|
+
VALUE var = rb_ary_entry($input, i);
|
|
227
|
+
int res = SWIG_ConvertPtr(var, &ptr, SWIGTYPE_p_wxVariant, 0 );
|
|
228
|
+
if (!SWIG_IsOK(res)) {
|
|
229
|
+
rb_raise(rb_eArgError, "Expected an Array of Wx::Variant for %d", $argnum-1);
|
|
230
|
+
}
|
|
231
|
+
tmp.Add(*static_cast<wxVariant*>(ptr));
|
|
232
|
+
}
|
|
233
|
+
$1 = &tmp;
|
|
234
|
+
}
|
|
235
|
+
__CODE
|
|
236
|
+
map_out code: <<~__CODE
|
|
237
|
+
$result = rb_ary_new();
|
|
238
|
+
for (size_t i = 0; i < $1->Count(); ++i)
|
|
239
|
+
{
|
|
240
|
+
wxVariant *var = &(*$1)[i];
|
|
241
|
+
rb_ary_push($result, SWIG_NewPointerObj(SWIG_as_voidptr(var), SWIGTYPE_p_wxVariant, 0));
|
|
242
|
+
}
|
|
243
|
+
__CODE
|
|
244
|
+
map_typecheck precedence: 'OBJECT_ARRAY', code: '$1 = TYPE($input) == T_ARRAY;'
|
|
245
|
+
end
|
|
246
|
+
spec.do_not_generate(:functions)
|
|
247
|
+
else
|
|
248
|
+
spec.add_header_code 'extern VALUE wxRuby_RichTextObject2Ruby(const wxRichTextObject *wx_rto, int own);'
|
|
249
|
+
end
|
|
250
|
+
end
|
|
251
|
+
|
|
252
|
+
def process(gendoc: false)
|
|
253
|
+
defmod = super
|
|
254
|
+
unless spec.module_name == 'wxRichTextObject'
|
|
255
|
+
spec.add_header_code 'extern void GC_RichTextObjectFreeFunc(void* ptr);'
|
|
256
|
+
spec.items.each do |citem|
|
|
257
|
+
def_item = defmod.find_item(citem)
|
|
258
|
+
if Extractor::ClassDef === def_item && def_item.is_derived_from?('wxRichTextObject')
|
|
259
|
+
spec.no_proxy def_item.name
|
|
260
|
+
spec.gc_as_untracked def_item.name
|
|
261
|
+
spec.add_swig_code %Q{%feature("freefunc") #{def_item.name} "GC_RichTextObjectFreeFunc";}
|
|
262
|
+
end
|
|
263
|
+
end
|
|
264
|
+
end
|
|
265
|
+
defmod
|
|
266
|
+
end
|
|
267
|
+
|
|
268
|
+
end
|
|
269
|
+
|
|
270
|
+
end
|
|
271
|
+
|
|
272
|
+
end
|
|
@@ -0,0 +1,178 @@
|
|
|
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 './richtext_composite_object'
|
|
10
|
+
|
|
11
|
+
module WXRuby3
|
|
12
|
+
|
|
13
|
+
class Director
|
|
14
|
+
|
|
15
|
+
class RichTextParagraphLayoutBox < RichTextCompositeObject
|
|
16
|
+
|
|
17
|
+
include Typemap::RichText
|
|
18
|
+
|
|
19
|
+
def setup
|
|
20
|
+
super
|
|
21
|
+
if spec.module_name == 'wxRichTextParagraphLayoutBox'
|
|
22
|
+
spec.items << 'wxRichTextField' <<
|
|
23
|
+
'wxRichTextStyleSheet' <<
|
|
24
|
+
'wxRichTextStyleDefinition' <<
|
|
25
|
+
'wxRichTextCharacterStyleDefinition' <<
|
|
26
|
+
'wxRichTextParagraphStyleDefinition' <<
|
|
27
|
+
'wxRichTextListStyleDefinition'
|
|
28
|
+
spec.no_proxy 'wxRichTextStyleSheet',
|
|
29
|
+
'wxRichTextStyleDefinition',
|
|
30
|
+
'wxRichTextCharacterStyleDefinition',
|
|
31
|
+
'wxRichTextParagraphStyleDefinition',
|
|
32
|
+
'wxRichTextListStyleDefinition'
|
|
33
|
+
spec.make_abstract 'wxRichTextStyleDefinition'
|
|
34
|
+
spec.make_concrete 'wxRichTextCharacterStyleDefinition'
|
|
35
|
+
spec.make_concrete 'wxRichTextParagraphStyleDefinition'
|
|
36
|
+
spec.make_concrete 'wxRichTextListStyleDefinition'
|
|
37
|
+
# documented declarations are incorrect
|
|
38
|
+
spec.ignore 'wxRichTextStyleDefinition::GetStyle'
|
|
39
|
+
spec.extend_interface 'wxRichTextStyleDefinition',
|
|
40
|
+
'const wxRichTextAttr& GetStyle() const'
|
|
41
|
+
# missing from docs
|
|
42
|
+
spec.extend_interface 'wxRichTextStyleDefinition',
|
|
43
|
+
'virtual wxRichTextStyleDefinition* Clone() const = 0'
|
|
44
|
+
spec.new_object 'wxRichTextStyleDefinition::Clone'
|
|
45
|
+
spec.add_header_code <<~__HEREDOC
|
|
46
|
+
static void wxRuby_MakeRichTextStyleDefinitionOwned(VALUE rb_rtsd)
|
|
47
|
+
{
|
|
48
|
+
swig_type_info* swig_type = wxRuby_GetSwigTypeForClass(CLASS_OF(rb_rtsd));
|
|
49
|
+
RDATA(rb_rtsd)->dfree = ((swig_class *) swig_type->clientdata)->destroy; // make sure Ruby owns
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
extern VALUE wxRuby_RichTextStyleDefinition2Ruby(const wxRichTextStyleDefinition *wx_rtsd, int own)
|
|
53
|
+
{
|
|
54
|
+
// If no object was passed to be wrapped.
|
|
55
|
+
if ( ! wx_rtsd )
|
|
56
|
+
return Qnil;
|
|
57
|
+
|
|
58
|
+
// Get the wx class and the ruby class we are converting into
|
|
59
|
+
wxString class_name( wx_rtsd->GetClassInfo()->GetClassName() );
|
|
60
|
+
wxCharBuffer wx_classname = class_name.mb_str();
|
|
61
|
+
VALUE r_class_name = rb_intern(wx_classname.data () + 2);
|
|
62
|
+
VALUE r_class = Qnil;
|
|
63
|
+
|
|
64
|
+
if ( class_name.Len() > 2 )
|
|
65
|
+
{
|
|
66
|
+
// lookup the class in the RichText module
|
|
67
|
+
if (rb_const_defined(mWxRTC, r_class_name))
|
|
68
|
+
r_class = rb_const_get(mWxRTC, r_class_name);
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
// Handle classes (currently) unknown in wxRuby.
|
|
72
|
+
if ( NIL_P(r_class) )
|
|
73
|
+
{
|
|
74
|
+
rb_warn("Error wrapping object; class '%s' is not (yet) supported in wxRuby",
|
|
75
|
+
(const char *)class_name.mb_str());
|
|
76
|
+
return Qnil;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
// Otherwise, retrieve the swig type info for this class and wrap it
|
|
80
|
+
// in Ruby. wxRuby_GetSwigTypeForClass is defined in wx.i
|
|
81
|
+
swig_type_info* swig_type = wxRuby_GetSwigTypeForClass(r_class);
|
|
82
|
+
VALUE rb_rtsd = SWIG_NewPointerObj(const_cast<wxRichTextStyleDefinition*> (wx_rtsd), swig_type, own);
|
|
83
|
+
return rb_rtsd;
|
|
84
|
+
}
|
|
85
|
+
__HEREDOC
|
|
86
|
+
# add undocumented convenience method
|
|
87
|
+
spec.extend_interface 'wxRichTextListStyleDefinition',
|
|
88
|
+
'void SetAttributes(int i, int leftIndent, int leftSubIndent, int bulletStyle, const wxString& bulletSymbol = wxEmptyString)'
|
|
89
|
+
# undocumented methods
|
|
90
|
+
spec.extend_interface 'wxRichTextStyleSheet',
|
|
91
|
+
'wxRichTextStyleSheet(const wxRichTextStyleSheet& sheet)',
|
|
92
|
+
'void Copy(const wxRichTextStyleSheet& sheet)'
|
|
93
|
+
# redefine these since we need to be able to selectively specify 'disown'
|
|
94
|
+
spec.ignore 'wxRichTextStyleSheet::AddCharacterStyle',
|
|
95
|
+
'wxRichTextStyleSheet::AddListStyle',
|
|
96
|
+
'wxRichTextStyleSheet::AddParagraphStyle',
|
|
97
|
+
'wxRichTextStyleSheet::AddStyle', ignore_doc: false
|
|
98
|
+
spec.extend_interface 'wxRichTextStyleSheet',
|
|
99
|
+
'bool AddCharacterStyle(wxRichTextCharacterStyleDefinition *def_disown)',
|
|
100
|
+
'bool AddListStyle(wxRichTextListStyleDefinition *def_disown)',
|
|
101
|
+
'bool AddParagraphStyle(wxRichTextParagraphStyleDefinition *def_disown)',
|
|
102
|
+
'bool AddStyle(wxRichTextStyleDefinition *def_disown)'
|
|
103
|
+
spec.disown 'wxRichTextCharacterStyleDefinition *def_disown',
|
|
104
|
+
'wxRichTextListStyleDefinition *def_disown',
|
|
105
|
+
'wxRichTextParagraphStyleDefinition *def_disown',
|
|
106
|
+
'wxRichTextStyleDefinition *def_disown'
|
|
107
|
+
# The RemoveXXX methods need custom wrapper as we need to re-own any style defs that
|
|
108
|
+
# are removed but NOT deleted
|
|
109
|
+
spec.ignore 'wxRichTextStyleSheet::RemoveCharacterStyle',
|
|
110
|
+
'wxRichTextStyleSheet::RemoveListStyle',
|
|
111
|
+
'wxRichTextStyleSheet::RemoveParagraphStyle',
|
|
112
|
+
'wxRichTextStyleSheet::RemoveStyle', ignore_doc: false
|
|
113
|
+
spec.add_extend_code 'wxRichTextStyleSheet', <<~__HEREDOC
|
|
114
|
+
bool remove_character_style(wxRichTextStyleDefinition *def, bool deleteStyle=false)
|
|
115
|
+
{
|
|
116
|
+
bool rc = $self->RemoveCharacterStyle(def, deleteStyle);
|
|
117
|
+
if (rc && !deleteStyle)
|
|
118
|
+
{
|
|
119
|
+
VALUE rb_rtsd = SWIG_RubyInstanceFor(const_cast<wxRichTextStyleDefinition*> (def));
|
|
120
|
+
if (rb_rtsd && !NIL_P(rb_rtsd)) // should always be true
|
|
121
|
+
{
|
|
122
|
+
wxRuby_MakeRichTextStyleDefinitionOwned(rb_rtsd);
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
return rc;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
bool remove_list_style(wxRichTextStyleDefinition *def, bool deleteStyle=false)
|
|
129
|
+
{
|
|
130
|
+
bool rc = $self->RemoveListStyle(def, deleteStyle);
|
|
131
|
+
if (rc && !deleteStyle)
|
|
132
|
+
{
|
|
133
|
+
VALUE rb_rtsd = SWIG_RubyInstanceFor(const_cast<wxRichTextStyleDefinition*> (def));
|
|
134
|
+
if (rb_rtsd && !NIL_P(rb_rtsd)) // should always be true
|
|
135
|
+
{
|
|
136
|
+
wxRuby_MakeRichTextStyleDefinitionOwned(rb_rtsd);
|
|
137
|
+
}
|
|
138
|
+
}
|
|
139
|
+
return rc;
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
bool remove_paragraph_style(wxRichTextStyleDefinition *def, bool deleteStyle=false)
|
|
143
|
+
{
|
|
144
|
+
bool rc = $self->RemoveParagraphStyle(def, deleteStyle);
|
|
145
|
+
if (rc && !deleteStyle)
|
|
146
|
+
{
|
|
147
|
+
VALUE rb_rtsd = SWIG_RubyInstanceFor(const_cast<wxRichTextStyleDefinition*> (def));
|
|
148
|
+
if (rb_rtsd && !NIL_P(rb_rtsd)) // should always be true
|
|
149
|
+
{
|
|
150
|
+
wxRuby_MakeRichTextStyleDefinitionOwned(rb_rtsd);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
return rc;
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
bool remove_style(wxRichTextStyleDefinition *def, bool deleteStyle=false)
|
|
157
|
+
{
|
|
158
|
+
bool rc = $self->RemoveStyle(def, deleteStyle);
|
|
159
|
+
if (rc && !deleteStyle)
|
|
160
|
+
{
|
|
161
|
+
VALUE rb_rtsd = SWIG_RubyInstanceFor(const_cast<wxRichTextStyleDefinition*> (def));
|
|
162
|
+
if (rb_rtsd && !NIL_P(rb_rtsd)) // should always be true
|
|
163
|
+
{
|
|
164
|
+
wxRuby_MakeRichTextStyleDefinitionOwned(rb_rtsd);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
return rc;
|
|
168
|
+
}
|
|
169
|
+
__HEREDOC
|
|
170
|
+
spec.do_not_generate(:typedefs, :variables, :enums, :defines, :functions)
|
|
171
|
+
end
|
|
172
|
+
end
|
|
173
|
+
|
|
174
|
+
end
|
|
175
|
+
|
|
176
|
+
end
|
|
177
|
+
|
|
178
|
+
end
|
|
@@ -0,0 +1,37 @@
|
|
|
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 RichTextStyleListBox < Window
|
|
16
|
+
|
|
17
|
+
include Typemap::RichText
|
|
18
|
+
|
|
19
|
+
def setup
|
|
20
|
+
super
|
|
21
|
+
spec.items << 'wxRichTextStyleListCtrl' << 'wxRichTextStyleComboCtrl'
|
|
22
|
+
spec.include 'wx/odcombo.h'
|
|
23
|
+
spec.add_header_code 'extern VALUE wxRuby_RichTextStyleDefinition2Ruby(const wxRichTextStyleDefinition *wx_rtsd, int own);'
|
|
24
|
+
spec.override_inheritance_chain('wxRichTextStyleListBox', %w[wxHtmlListBox wxVListBox wxVScrolledWindow wxPanel wxWindow wxEvtHandler wxObject])
|
|
25
|
+
spec.override_inheritance_chain('wxRichTextStyleComboCtrl',
|
|
26
|
+
%w[wxComboCtrl
|
|
27
|
+
wxControl
|
|
28
|
+
wxWindow
|
|
29
|
+
wxEvtHandler
|
|
30
|
+
wxObject])
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
end
|
|
@@ -0,0 +1,28 @@
|
|
|
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 './dialog'
|
|
10
|
+
|
|
11
|
+
module WXRuby3
|
|
12
|
+
|
|
13
|
+
class Director
|
|
14
|
+
|
|
15
|
+
class RichTextStyleOrganiserDialog < Dialog
|
|
16
|
+
|
|
17
|
+
include Typemap::RichText
|
|
18
|
+
|
|
19
|
+
def setup
|
|
20
|
+
super
|
|
21
|
+
spec.add_header_code 'extern VALUE wxRuby_RichTextStyleDefinition2Ruby(const wxRichTextStyleDefinition *wx_rtsd, int own);'
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
end
|