wxruby3 0.9.0.pre.beta.8
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 +7 -0
- data/.yardopts +13 -0
- data/CREDITS.md +52 -0
- data/LICENSE +21 -0
- data/README.md +139 -0
- data/bin/wxruby +9 -0
- data/ext/mkrf_conf_srcgem.rb +64 -0
- data/ext/wxruby3/include/wxruby-runtime.h +104 -0
- data/ext/wxruby3/swig/RubyStockObjects.i +62 -0
- data/ext/wxruby3/swig/common.i +110 -0
- data/ext/wxruby3/swig/custom/rubyprimtypes.swg +225 -0
- data/ext/wxruby3/swig/custom/rubytracking.swg +60 -0
- data/ext/wxruby3/swig/custom/swig3/rubyrun.swg +456 -0
- data/ext/wxruby3/swig/custom/swig4/rubyrun.swg +459 -0
- data/ext/wxruby3/swig/mark_free_impl.i +377 -0
- data/ext/wxruby3/swig/memory_management.i +142 -0
- data/ext/wxruby3/swig/typedefs.i +27 -0
- data/ext/wxruby3/swig/wx.i +282 -0
- data/ext/wxruby3/swig/wx.rc +19 -0
- data/ext/wxruby3/wxruby.ico +0 -0
- data/lib/wx/accessors.rb +63 -0
- data/lib/wx/aui/auimanager.rb +17 -0
- data/lib/wx/aui/auinotebook.rb +9 -0
- data/lib/wx/aui/require.rb +9 -0
- data/lib/wx/aui.rb +14 -0
- data/lib/wx/core/acceleratortable.rb +28 -0
- data/lib/wx/core/animation.rb +18 -0
- data/lib/wx/core/app.rb +89 -0
- data/lib/wx/core/artprovider.rb +31 -0
- data/lib/wx/core/bitmap.rb +59 -0
- data/lib/wx/core/busycursor.rb +12 -0
- data/lib/wx/core/choice.rb +4 -0
- data/lib/wx/core/choicedlg.rb +54 -0
- data/lib/wx/core/clientdc.rb +13 -0
- data/lib/wx/core/clipboard.rb +56 -0
- data/lib/wx/core/collapsible_pane.rb +12 -0
- data/lib/wx/core/colour.rb +34 -0
- data/lib/wx/core/combobox.rb +4 -0
- data/lib/wx/core/controlwithitems.rb +10 -0
- data/lib/wx/core/data_object.rb +10 -0
- data/lib/wx/core/dataformat.rb +26 -0
- data/lib/wx/core/dc.rb +68 -0
- data/lib/wx/core/dialog.rb +50 -0
- data/lib/wx/core/enum.rb +28 -0
- data/lib/wx/core/event.rb +16 -0
- data/lib/wx/core/evthandler.rb +253 -0
- data/lib/wx/core/ext.rb +58 -0
- data/lib/wx/core/font.rb +22 -0
- data/lib/wx/core/functions.rb +44 -0
- data/lib/wx/core/gauge.rb +12 -0
- data/lib/wx/core/genericdirctrl.rb +36 -0
- data/lib/wx/core/hboxsizer.rb +6 -0
- data/lib/wx/core/helpcontroller.rb +5 -0
- data/lib/wx/core/helpcontrollerhelpprovider.rb +24 -0
- data/lib/wx/core/helpprovider.rb +15 -0
- data/lib/wx/core/icon.rb +40 -0
- data/lib/wx/core/image.rb +68 -0
- data/lib/wx/core/imagelist.rb +3 -0
- data/lib/wx/core/listbox.rb +4 -0
- data/lib/wx/core/listctrl.rb +33 -0
- data/lib/wx/core/locale.rb +73 -0
- data/lib/wx/core/log.rb +20 -0
- data/lib/wx/core/menu.rb +78 -0
- data/lib/wx/core/menu_bar.rb +20 -0
- data/lib/wx/core/menuitem.rb +7 -0
- data/lib/wx/core/notebook.rb +9 -0
- data/lib/wx/core/object.rb +14 -0
- data/lib/wx/core/pen_info.rb +11 -0
- data/lib/wx/core/platform_info.rb +13 -0
- data/lib/wx/core/point.rb +92 -0
- data/lib/wx/core/real_point.rb +92 -0
- data/lib/wx/core/rect.rb +57 -0
- data/lib/wx/core/simplehelpprovider.rb +38 -0
- data/lib/wx/core/size.rb +86 -0
- data/lib/wx/core/sizer.rb +43 -0
- data/lib/wx/core/splash_screen.rb +44 -0
- data/lib/wx/core/textctrl.rb +8 -0
- data/lib/wx/core/timer.rb +104 -0
- data/lib/wx/core/toolbar.rb +37 -0
- data/lib/wx/core/toolbartool.rb +4 -0
- data/lib/wx/core/treectrl.rb +46 -0
- data/lib/wx/core/validator.rb +8 -0
- data/lib/wx/core/variant.rb +62 -0
- data/lib/wx/core/vboxsizer.rb +6 -0
- data/lib/wx/core/window.rb +95 -0
- data/lib/wx/core/window_update_locker.rb +12 -0
- data/lib/wx/core/xmlresource.rb +56 -0
- data/lib/wx/core.rb +61 -0
- data/lib/wx/doc/aui/auimanager.rb +12 -0
- data/lib/wx/doc/aui/auinotebook.rb +9 -0
- data/lib/wx/doc/colour_dialog.rb +15 -0
- data/lib/wx/doc/core.rb +11 -0
- data/lib/wx/doc/dc.rb +49 -0
- data/lib/wx/doc/enum.rb +88 -0
- data/lib/wx/doc/evthandler.rb +87 -0
- data/lib/wx/doc/extra/00_starting.md +154 -0
- data/lib/wx/doc/extra/01_packages.md +179 -0
- data/lib/wx/doc/extra/02_lifecycles.md +116 -0
- data/lib/wx/doc/extra/03_dialogs.md +57 -0
- data/lib/wx/doc/extra/04_enums.md +143 -0
- data/lib/wx/doc/extra/05_event-handling.md +166 -0
- data/lib/wx/doc/extra/06_geometry.md +56 -0
- data/lib/wx/doc/extra/07_colour_and_font.md +52 -0
- data/lib/wx/doc/extra/08_extensions.md +144 -0
- data/lib/wx/doc/extra/09_exceptions.md +54 -0
- data/lib/wx/doc/functions.rb +221 -0
- data/lib/wx/doc/gdi_common.rb +181 -0
- data/lib/wx/doc/grid/grid.rb +20 -0
- data/lib/wx/doc/help_controller.rb +14 -0
- data/lib/wx/doc/html/html_help_controller.rb +8 -0
- data/lib/wx/doc/pg/events.rb +15 -0
- data/lib/wx/doc/pg/pg_property.rb +8 -0
- data/lib/wx/doc/pg/pgeditor.rb +21 -0
- data/lib/wx/doc/pg/property_grid.rb +48 -0
- data/lib/wx/doc/pg/property_grid_interface.rb +64 -0
- data/lib/wx/doc/prt/page_setup_dialog.rb +15 -0
- data/lib/wx/doc/prt/print_data.rb +9 -0
- data/lib/wx/doc/prt/print_dialog.rb +26 -0
- data/lib/wx/doc/prt/printer.rb +15 -0
- data/lib/wx/doc/rbn/ribbon_bar.rb +9 -0
- data/lib/wx/doc/rbn/ribbon_button_bar.rb +9 -0
- data/lib/wx/doc/rbn/ribbon_gallery.rb +9 -0
- data/lib/wx/doc/rbn/ribbon_tool_bar.rb +9 -0
- data/lib/wx/doc/rtc/richtext_printing.rb +14 -0
- data/lib/wx/doc/screen_dc.rb +10 -0
- data/lib/wx/doc/stock_objects.rb +98 -0
- data/lib/wx/doc/stream.rb +38 -0
- data/lib/wx/doc/system_settings.rb +29 -0
- data/lib/wx/doc/treebook.rb +9 -0
- data/lib/wx/doc/variant.rb +163 -0
- data/lib/wx/doc/xml_resource.rb +19 -0
- data/lib/wx/global_const.rb +84 -0
- data/lib/wx/grid/grid.rb +7 -0
- data/lib/wx/grid/keyword_defs.rb +10 -0
- data/lib/wx/grid/require.rb +9 -0
- data/lib/wx/grid.rb +14 -0
- data/lib/wx/helpers.rb +65 -0
- data/lib/wx/html/htmlhelpcontroller.rb +6 -0
- data/lib/wx/html/htmlwindow.rb +19 -0
- data/lib/wx/html/keyword_defs.rb +22 -0
- data/lib/wx/html/require.rb +10 -0
- data/lib/wx/html.rb +15 -0
- data/lib/wx/keyword_ctors.rb +226 -0
- data/lib/wx/keyword_defs.rb +487 -0
- data/lib/wx/pg/events.rb +14 -0
- data/lib/wx/pg/keyword_defs.rb +15 -0
- data/lib/wx/pg/pg_editor.rb +13 -0
- data/lib/wx/pg/pg_properties.rb +24 -0
- data/lib/wx/pg/pg_property.rb +27 -0
- data/lib/wx/pg/property_grid.rb +71 -0
- data/lib/wx/pg/property_grid_interface.rb +46 -0
- data/lib/wx/pg/require.rb +12 -0
- data/lib/wx/pg.rb +14 -0
- data/lib/wx/prt/keyword_defs.rb +8 -0
- data/lib/wx/prt/page_setup_dialog.rb +15 -0
- data/lib/wx/prt/previewframe.rb +13 -0
- data/lib/wx/prt/require.rb +8 -0
- data/lib/wx/prt.rb +14 -0
- data/lib/wx/rbn/events.rb +4 -0
- data/lib/wx/rbn/keyword_defs.rb +43 -0
- data/lib/wx/rbn/require.rb +12 -0
- data/lib/wx/rbn/ribbon_art_provider.rb +10 -0
- data/lib/wx/rbn/ribbon_bar.rb +12 -0
- data/lib/wx/rbn/ribbon_button_bar.rb +26 -0
- data/lib/wx/rbn/ribbon_control.rb +25 -0
- data/lib/wx/rbn/ribbon_gallery.rb +26 -0
- data/lib/wx/rbn/ribbon_page.rb +15 -0
- data/lib/wx/rbn/ribbon_panel.rb +15 -0
- data/lib/wx/rbn/ribbon_tool_bar.rb +26 -0
- data/lib/wx/rbn.rb +14 -0
- data/lib/wx/rtc/ext.rb +15 -0
- data/lib/wx/rtc/keyword_defs.rb +17 -0
- data/lib/wx/rtc/require.rb +8 -0
- data/lib/wx/rtc.rb +15 -0
- data/lib/wx/stc/keyword_defs.rb +8 -0
- data/lib/wx/stc/require.rb +7 -0
- data/lib/wx/stc.rb +14 -0
- data/lib/wx/version.rb +3 -0
- data/lib/wx/wxruby/base.rb +87 -0
- data/lib/wx/wxruby/cmd/sampler.rb +68 -0
- data/lib/wx/wxruby/cmd/test.rb +27 -0
- data/lib/wx.rb +14 -0
- data/rakelib/build.rake +62 -0
- data/rakelib/build.rb +141 -0
- data/rakelib/config.rake +48 -0
- data/rakelib/configure.rb +131 -0
- data/rakelib/doc.rake +21 -0
- data/rakelib/doc.rb +35 -0
- data/rakelib/install.rake +30 -0
- data/rakelib/install.rb +220 -0
- data/rakelib/lib/config/cygwin.rb +6 -0
- data/rakelib/lib/config/linux.rb +78 -0
- data/rakelib/lib/config/macosx.rb +6 -0
- data/rakelib/lib/config/mingw.rb +133 -0
- data/rakelib/lib/config/netbsd.rb +6 -0
- data/rakelib/lib/config/unixish.rb +187 -0
- data/rakelib/lib/config.rb +673 -0
- data/rakelib/lib/core/include/enum.inc +306 -0
- data/rakelib/lib/core/include/funcall.inc +277 -0
- data/rakelib/lib/core/include/init.inc +95 -0
- data/rakelib/lib/core/mapping.rb +1116 -0
- data/rakelib/lib/core/package.rb +634 -0
- data/rakelib/lib/core/parameter.rb +222 -0
- data/rakelib/lib/core/spec.rb +468 -0
- data/rakelib/lib/core/spec_helper.rb +405 -0
- data/rakelib/lib/director/about_dialog_info.rb +24 -0
- data/rakelib/lib/director/accelerator.rb +88 -0
- data/rakelib/lib/director/animation.rb +84 -0
- data/rakelib/lib/director/animation_ctrl.rb +24 -0
- data/rakelib/lib/director/any_button.rb +34 -0
- data/rakelib/lib/director/app.rb +420 -0
- data/rakelib/lib/director/art_provider.rb +124 -0
- data/rakelib/lib/director/aui_dock_art.rb +23 -0
- data/rakelib/lib/director/aui_floating_frame.rb +26 -0
- data/rakelib/lib/director/aui_manager.rb +114 -0
- data/rakelib/lib/director/aui_manager_event.rb +22 -0
- data/rakelib/lib/director/aui_mdi_child_frame.rb +50 -0
- data/rakelib/lib/director/aui_mdi_client_window.rb +23 -0
- data/rakelib/lib/director/aui_mdi_parent_frame.rb +26 -0
- data/rakelib/lib/director/aui_notebook.rb +77 -0
- data/rakelib/lib/director/aui_notebook_event.rb +23 -0
- data/rakelib/lib/director/aui_pane_info.rb +102 -0
- data/rakelib/lib/director/aui_tab_art.rb +47 -0
- data/rakelib/lib/director/aui_tab_ctrl.rb +121 -0
- data/rakelib/lib/director/aui_toolbar.rb +22 -0
- data/rakelib/lib/director/aui_toolbar_art.rb +24 -0
- data/rakelib/lib/director/aui_toolbar_event.rb +23 -0
- data/rakelib/lib/director/aui_toolbar_item.rb +21 -0
- data/rakelib/lib/director/bitmap.rb +87 -0
- data/rakelib/lib/director/book_ctrls.rb +104 -0
- data/rakelib/lib/director/brush.rb +28 -0
- data/rakelib/lib/director/busy_info.rb +71 -0
- data/rakelib/lib/director/button.rb +22 -0
- data/rakelib/lib/director/calendar_ctrl.rb +98 -0
- data/rakelib/lib/director/calendar_date_attr.rb +22 -0
- data/rakelib/lib/director/caret.rb +31 -0
- data/rakelib/lib/director/check_listbox.rb +33 -0
- data/rakelib/lib/director/choice.rb +32 -0
- data/rakelib/lib/director/clipboard.rb +37 -0
- data/rakelib/lib/director/collapsible_pane.rb +22 -0
- data/rakelib/lib/director/collapsible_pane_event.rb +22 -0
- data/rakelib/lib/director/colour.rb +64 -0
- data/rakelib/lib/director/colour_picker_ctrl.rb +22 -0
- data/rakelib/lib/director/combobox.rb +37 -0
- data/rakelib/lib/director/control.rb +22 -0
- data/rakelib/lib/director/ctrl_with_items.rb +68 -0
- data/rakelib/lib/director/cursor.rb +28 -0
- data/rakelib/lib/director/data_format.rb +31 -0
- data/rakelib/lib/director/data_object.rb +64 -0
- data/rakelib/lib/director/date_event.rb +141 -0
- data/rakelib/lib/director/date_picker_ctrl.rb +39 -0
- data/rakelib/lib/director/dc.rb +52 -0
- data/rakelib/lib/director/defs.rb +139 -0
- data/rakelib/lib/director/derived_dc.rb +64 -0
- data/rakelib/lib/director/dialog.rb +214 -0
- data/rakelib/lib/director/dir_filterlist_ctrl.rb +29 -0
- data/rakelib/lib/director/dir_picker_ctrl.rb +22 -0
- data/rakelib/lib/director/drag_image.rb +20 -0
- data/rakelib/lib/director/dragdrop.rb +61 -0
- data/rakelib/lib/director/editable_listbox.rb +21 -0
- data/rakelib/lib/director/event.rb +171 -0
- data/rakelib/lib/director/event_handler.rb +410 -0
- data/rakelib/lib/director/events.rb +39 -0
- data/rakelib/lib/director/file_picker_ctrl.rb +22 -0
- data/rakelib/lib/director/find_dialog_event.rb +22 -0
- data/rakelib/lib/director/find_replace_data.rb +20 -0
- data/rakelib/lib/director/font.rb +138 -0
- data/rakelib/lib/director/font_data.rb +22 -0
- data/rakelib/lib/director/font_picker_ctrl.rb +22 -0
- data/rakelib/lib/director/frame.rb +74 -0
- data/rakelib/lib/director/fs_file.rb +353 -0
- data/rakelib/lib/director/functions.rb +284 -0
- data/rakelib/lib/director/gdi_object.rb +21 -0
- data/rakelib/lib/director/gdicommon.rb +94 -0
- data/rakelib/lib/director/generic_dirctrl.rb +24 -0
- data/rakelib/lib/director/graphics_context.rb +143 -0
- data/rakelib/lib/director/graphics_object.rb +69 -0
- data/rakelib/lib/director/grid_cell_attr.rb +53 -0
- data/rakelib/lib/director/grid_cell_editor.rb +434 -0
- data/rakelib/lib/director/grid_cell_renderer.rb +132 -0
- data/rakelib/lib/director/grid_ctrl.rb +390 -0
- data/rakelib/lib/director/grid_range_select_event.rb +23 -0
- data/rakelib/lib/director/grid_table_base.rb +63 -0
- data/rakelib/lib/director/grid_table_message.rb +20 -0
- data/rakelib/lib/director/help_controller.rb +75 -0
- data/rakelib/lib/director/help_provider.rb +103 -0
- data/rakelib/lib/director/html_cell.rb +36 -0
- data/rakelib/lib/director/html_easy_printing.rb +45 -0
- data/rakelib/lib/director/html_event.rb +24 -0
- data/rakelib/lib/director/html_help_data.rb +43 -0
- data/rakelib/lib/director/html_help_frame.rb +25 -0
- data/rakelib/lib/director/html_listbox.rb +54 -0
- data/rakelib/lib/director/html_printout.rb +47 -0
- data/rakelib/lib/director/html_window.rb +114 -0
- data/rakelib/lib/director/icon.rb +33 -0
- data/rakelib/lib/director/image.rb +111 -0
- data/rakelib/lib/director/image_list.rb +21 -0
- data/rakelib/lib/director/list_ctrl.rb +197 -0
- data/rakelib/lib/director/listbox.rb +32 -0
- data/rakelib/lib/director/locale.rb +35 -0
- data/rakelib/lib/director/log.rb +32 -0
- data/rakelib/lib/director/mdi_frame.rb +36 -0
- data/rakelib/lib/director/media_ctrl.rb +22 -0
- data/rakelib/lib/director/menu.rb +92 -0
- data/rakelib/lib/director/menu_bar.rb +28 -0
- data/rakelib/lib/director/menu_item.rb +36 -0
- data/rakelib/lib/director/mouse_state.rb +21 -0
- data/rakelib/lib/director/numeric_property_validator.rb +38 -0
- data/rakelib/lib/director/object.rb +32 -0
- data/rakelib/lib/director/page_setup_dialog.rb +30 -0
- data/rakelib/lib/director/palette.rb +25 -0
- data/rakelib/lib/director/panel.rb +22 -0
- data/rakelib/lib/director/pen.rb +174 -0
- data/rakelib/lib/director/pgarray_editor_dialog.rb +64 -0
- data/rakelib/lib/director/pgcell.rb +68 -0
- data/rakelib/lib/director/pgeditor.rb +154 -0
- data/rakelib/lib/director/pgmulti_button.rb +22 -0
- data/rakelib/lib/director/pgproperties.rb +216 -0
- data/rakelib/lib/director/pgproperty.rb +207 -0
- data/rakelib/lib/director/pgvalidation_info.rb +24 -0
- data/rakelib/lib/director/pickerbase.rb +22 -0
- data/rakelib/lib/director/platform_info.rb +49 -0
- data/rakelib/lib/director/popup_window.rb +23 -0
- data/rakelib/lib/director/preview_frame.rb +39 -0
- data/rakelib/lib/director/print_data.rb +33 -0
- data/rakelib/lib/director/print_dialog.rb +36 -0
- data/rakelib/lib/director/printer.rb +61 -0
- data/rakelib/lib/director/property_grid.rb +174 -0
- data/rakelib/lib/director/property_grid_event.rb +23 -0
- data/rakelib/lib/director/property_grid_interface.rb +227 -0
- data/rakelib/lib/director/property_grid_manager.rb +90 -0
- data/rakelib/lib/director/property_grid_page.rb +76 -0
- data/rakelib/lib/director/property_grid_page_state.rb +32 -0
- data/rakelib/lib/director/radio_box.rb +39 -0
- data/rakelib/lib/director/region.rb +25 -0
- data/rakelib/lib/director/ribbon_art_provider.rb +154 -0
- data/rakelib/lib/director/ribbon_bar.rb +24 -0
- data/rakelib/lib/director/ribbon_bar_event.rb +22 -0
- data/rakelib/lib/director/ribbon_button_bar.rb +37 -0
- data/rakelib/lib/director/ribbon_button_bar_event.rb +40 -0
- data/rakelib/lib/director/ribbon_ctrl.rb +28 -0
- data/rakelib/lib/director/ribbon_gallery.rb +33 -0
- data/rakelib/lib/director/ribbon_gallery_event.rb +27 -0
- data/rakelib/lib/director/ribbon_page.rb +21 -0
- data/rakelib/lib/director/ribbon_panel.rb +22 -0
- data/rakelib/lib/director/ribbon_panel_event.rb +22 -0
- data/rakelib/lib/director/ribbon_tool_bar.rb +146 -0
- data/rakelib/lib/director/ribbon_tool_bar_event.rb +22 -0
- data/rakelib/lib/director/richtext_buffer.rb +46 -0
- data/rakelib/lib/director/richtext_ctrl.rb +63 -0
- data/rakelib/lib/director/richtext_event.rb +25 -0
- data/rakelib/lib/director/richtext_file_handler.rb +42 -0
- data/rakelib/lib/director/richtext_header_footer_data.rb +21 -0
- data/rakelib/lib/director/richtext_printing.rb +44 -0
- data/rakelib/lib/director/sash_layout_event.rb +22 -0
- data/rakelib/lib/director/sash_layout_window.rb +23 -0
- data/rakelib/lib/director/sash_window.rb +23 -0
- data/rakelib/lib/director/scrolled_t.rb +67 -0
- data/rakelib/lib/director/sizer.rb +67 -0
- data/rakelib/lib/director/sizer_item.rb +35 -0
- data/rakelib/lib/director/splash_screen.rb +24 -0
- data/rakelib/lib/director/splitter_event.rb +28 -0
- data/rakelib/lib/director/splitter_window.rb +25 -0
- data/rakelib/lib/director/static_bitmap.rb +24 -0
- data/rakelib/lib/director/static_box.rb +26 -0
- data/rakelib/lib/director/status_bar.rb +86 -0
- data/rakelib/lib/director/styled_text_ctrl.rb +82 -0
- data/rakelib/lib/director/styled_text_event.rb +25 -0
- data/rakelib/lib/director/system_options.rb +22 -0
- data/rakelib/lib/director/system_settings.rb +47 -0
- data/rakelib/lib/director/task_bar_icon.rb +77 -0
- data/rakelib/lib/director/text_attr.rb +22 -0
- data/rakelib/lib/director/text_entry.rb +26 -0
- data/rakelib/lib/director/text_validator.rb +47 -0
- data/rakelib/lib/director/textctrl.rb +80 -0
- data/rakelib/lib/director/time_picker_ctrl.rb +24 -0
- data/rakelib/lib/director/timer.rb +37 -0
- data/rakelib/lib/director/tip_provider.rb +44 -0
- data/rakelib/lib/director/toggle_button.rb +22 -0
- data/rakelib/lib/director/tool_bar.rb +62 -0
- data/rakelib/lib/director/tool_tip.rb +20 -0
- data/rakelib/lib/director/top_level_window.rb +105 -0
- data/rakelib/lib/director/tree_ctrl.rb +411 -0
- data/rakelib/lib/director/tree_event.rb +78 -0
- data/rakelib/lib/director/utils.rb +55 -0
- data/rakelib/lib/director/validator.rb +44 -0
- data/rakelib/lib/director/variant.rb +549 -0
- data/rakelib/lib/director/vlistbox.rb +46 -0
- data/rakelib/lib/director/vscrolled_window.rb +59 -0
- data/rakelib/lib/director/window.rb +296 -0
- data/rakelib/lib/director/window_disabler.rb +44 -0
- data/rakelib/lib/director/with_images.rb +65 -0
- data/rakelib/lib/director/wizard_page.rb +35 -0
- data/rakelib/lib/director/xml_node.rb +48 -0
- data/rakelib/lib/director/xml_resource.rb +141 -0
- data/rakelib/lib/director.rb +487 -0
- data/rakelib/lib/ext/enum_chain.rb +22 -0
- data/rakelib/lib/extractor/class.rb +384 -0
- data/rakelib/lib/extractor/enum.rb +94 -0
- data/rakelib/lib/extractor/function.rb +377 -0
- data/rakelib/lib/extractor/module.rb +140 -0
- data/rakelib/lib/extractor/variable.rb +145 -0
- data/rakelib/lib/extractor.rb +438 -0
- data/rakelib/lib/generate/analyzer.rb +593 -0
- data/rakelib/lib/generate/base.rb +37 -0
- data/rakelib/lib/generate/doc.rb +833 -0
- data/rakelib/lib/generate/interface.rb +742 -0
- data/rakelib/lib/generate/rakedep.rb +130 -0
- data/rakelib/lib/specs/interfaces.rb +324 -0
- data/rakelib/lib/streams.rb +206 -0
- data/rakelib/lib/swig_runner.rb +682 -0
- data/rakelib/lib/typemap/array_int_selections.rb +57 -0
- data/rakelib/lib/typemap/common.rb +613 -0
- data/rakelib/lib/typemap/data_format.rb +76 -0
- data/rakelib/lib/typemap/data_object_data.rb +99 -0
- data/rakelib/lib/typemap/datetime.rb +64 -0
- data/rakelib/lib/typemap/grid_client_data.rb +55 -0
- data/rakelib/lib/typemap/grid_coords.rb +65 -0
- data/rakelib/lib/typemap/html_cell.rb +57 -0
- data/rakelib/lib/typemap/io_streams.rb +162 -0
- data/rakelib/lib/typemap/pgcell.rb +35 -0
- data/rakelib/lib/typemap/pgeditor.rb +35 -0
- data/rakelib/lib/typemap/pgprop_arg.rb +74 -0
- data/rakelib/lib/typemap/pgproperty.rb +35 -0
- data/rakelib/lib/typemap/points_list.rb +124 -0
- data/rakelib/lib/typemap/richtext.rb +67 -0
- data/rakelib/lib/typemap/tree_itemid.rb +49 -0
- data/rakelib/lib/util/string.rb +141 -0
- data/rakelib/prepost.rake +91 -0
- data/rakelib/prepost.rb +26 -0
- data/rakelib/run.rake +49 -0
- data/rakelib/yard/templates/default/fulldoc/html/css/wxruby3.css +7 -0
- data/rakelib/yard/templates/default/layout/html/setup.rb +5 -0
- data/rakelib/yard/yard/relative_markdown_links/version.rb +8 -0
- data/rakelib/yard/yard/relative_markdown_links.rb +39 -0
- data/rakelib/yard/yard-custom-templates.rb +2 -0
- data/rakelib/yard/yard-relative_markdown_links.rb +4 -0
- data/samples/art/wxruby-128x128.png +0 -0
- data/samples/art/wxruby-256x256.png +0 -0
- data/samples/art/wxruby-64x64.png +0 -0
- data/samples/art/wxruby.ico +0 -0
- data/samples/art/wxruby.png +0 -0
- data/samples/aui/aui.rb +1321 -0
- data/samples/aui/tn_aui.png +0 -0
- data/samples/bigdemo/About.rbw +39 -0
- data/samples/bigdemo/ColorPanel.rbw +23 -0
- data/samples/bigdemo/GridSimple.rbw +78 -0
- data/samples/bigdemo/MDIDemo.rbw +57 -0
- data/samples/bigdemo/PopupMenu.rbw +146 -0
- data/samples/bigdemo/ShapedWindow.rbw +128 -0
- data/samples/bigdemo/Sizers.rbw +541 -0
- data/samples/bigdemo/bigdemo.rb +810 -0
- data/samples/bigdemo/demoTemplate.rbw +33 -0
- data/samples/bigdemo/helpfile.htb +0 -0
- data/samples/bigdemo/icons/Test 015.jpg +0 -0
- data/samples/bigdemo/icons/Test 015.png +0 -0
- data/samples/bigdemo/icons/choice.bmp +0 -0
- data/samples/bigdemo/icons/choice.xpm +27 -0
- data/samples/bigdemo/icons/combo.bmp +0 -0
- data/samples/bigdemo/icons/combo.xpm +27 -0
- data/samples/bigdemo/icons/copy.xpm +25 -0
- data/samples/bigdemo/icons/cut.xpm +24 -0
- data/samples/bigdemo/icons/gauge.bmp +0 -0
- data/samples/bigdemo/icons/gauge.xpm +27 -0
- data/samples/bigdemo/icons/help.xpm +25 -0
- data/samples/bigdemo/icons/list.bmp +0 -0
- data/samples/bigdemo/icons/list.xpm +27 -0
- data/samples/bigdemo/icons/mondrian.ico +0 -0
- data/samples/bigdemo/icons/mondrian.xpm +44 -0
- data/samples/bigdemo/icons/new.xpm +24 -0
- data/samples/bigdemo/icons/ogl.ico +0 -0
- data/samples/bigdemo/icons/ogl.xpm +45 -0
- data/samples/bigdemo/icons/open.xpm +26 -0
- data/samples/bigdemo/icons/paste.bmp +0 -0
- data/samples/bigdemo/icons/paste.xpm +38 -0
- data/samples/bigdemo/icons/pointy.png +0 -0
- data/samples/bigdemo/icons/preview.xpm +26 -0
- data/samples/bigdemo/icons/print.xpm +26 -0
- data/samples/bigdemo/icons/radio.bmp +0 -0
- data/samples/bigdemo/icons/radio.xpm +27 -0
- data/samples/bigdemo/icons/robert.xpm +415 -0
- data/samples/bigdemo/icons/sashtest.ico +0 -0
- data/samples/bigdemo/icons/save.xpm +25 -0
- data/samples/bigdemo/icons/smiles.bmp +0 -0
- data/samples/bigdemo/icons/smiles.xpm +39 -0
- data/samples/bigdemo/icons/smiley.ico +0 -0
- data/samples/bigdemo/icons/smiley.xpm +42 -0
- data/samples/bigdemo/icons/stattext.xpm +24 -0
- data/samples/bigdemo/icons/test2.bmp +0 -0
- data/samples/bigdemo/icons/test2.png +0 -0
- data/samples/bigdemo/icons/test2.xpm +79 -0
- data/samples/bigdemo/icons/text.bmp +0 -0
- data/samples/bigdemo/icons/text.xpm +27 -0
- data/samples/bigdemo/icons/tog1.bmp +0 -0
- data/samples/bigdemo/icons/tog1.xpm +38 -0
- data/samples/bigdemo/icons/tog2.bmp +0 -0
- data/samples/bigdemo/icons/tog2.xpm +38 -0
- data/samples/bigdemo/icons/wxruby-128x128.png +0 -0
- data/samples/bigdemo/icons/wxwin.ico +0 -0
- data/samples/bigdemo/icons/wxwin16x16.png +0 -0
- data/samples/bigdemo/icons/wxwin16x16.xpm +25 -0
- data/samples/bigdemo/icons/wxwin32x32.png +0 -0
- data/samples/bigdemo/icons/wxwin48x48.png +0 -0
- data/samples/bigdemo/run.rb +91 -0
- data/samples/bigdemo/tips.txt +7 -0
- data/samples/bigdemo/utils.rb +12 -0
- data/samples/bigdemo/wxArtProvider.rbw +281 -0
- data/samples/bigdemo/wxBitmapButton.rbw +65 -0
- data/samples/bigdemo/wxButton.rbw +64 -0
- data/samples/bigdemo/wxCalendarCtrl.rbw +59 -0
- data/samples/bigdemo/wxCheckBox.rbw +50 -0
- data/samples/bigdemo/wxCheckListBox.rbw +65 -0
- data/samples/bigdemo/wxChoice.rbw +47 -0
- data/samples/bigdemo/wxChoicebook.rbw +78 -0
- data/samples/bigdemo/wxColourDialog.rbw +33 -0
- data/samples/bigdemo/wxComboBox.rbw +77 -0
- data/samples/bigdemo/wxCursor.rbw +136 -0
- data/samples/bigdemo/wxDialog.rbw +74 -0
- data/samples/bigdemo/wxDirDialog.rbw +29 -0
- data/samples/bigdemo/wxDragImage.rbw +70 -0
- data/samples/bigdemo/wxFileDialog.rbw +37 -0
- data/samples/bigdemo/wxFileDialog_Save.rbw +35 -0
- data/samples/bigdemo/wxFindReplaceDialog.rbw +82 -0
- data/samples/bigdemo/wxFontDialog.rbw +200 -0
- data/samples/bigdemo/wxFrame.rbw +53 -0
- data/samples/bigdemo/wxGauge.rbw +65 -0
- data/samples/bigdemo/wxGenericDirCtrl.rbw +74 -0
- data/samples/bigdemo/wxGrid.rbw +66 -0
- data/samples/bigdemo/wxHtmlHelpController.rbw +52 -0
- data/samples/bigdemo/wxListBox.rbw +140 -0
- data/samples/bigdemo/wxListCtrl_virtual.rbw +112 -0
- data/samples/bigdemo/wxMDIWindows.rbw +50 -0
- data/samples/bigdemo/wxMenu.rbw +247 -0
- data/samples/bigdemo/wxMessageDialog.rbw +27 -0
- data/samples/bigdemo/wxMiniFrame.rbw +70 -0
- data/samples/bigdemo/wxMultipleChoiceDialog.rbw +29 -0
- data/samples/bigdemo/wxNotebook.rbw +136 -0
- data/samples/bigdemo/wxProgressDialog.rbw +43 -0
- data/samples/bigdemo/wxRadioBox.rbw +72 -0
- data/samples/bigdemo/wxRadioButton.rbw +125 -0
- data/samples/bigdemo/wxSashWindow.rbw +141 -0
- data/samples/bigdemo/wxScrolledMessageDialog.rbw +57 -0
- data/samples/bigdemo/wxScrolledWindow.rbw +199 -0
- data/samples/bigdemo/wxSingleChoiceDialog.rbw +33 -0
- data/samples/bigdemo/wxSlider.rbw +42 -0
- data/samples/bigdemo/wxSpinButton.rbw +50 -0
- data/samples/bigdemo/wxSpinCtrl.rbw +51 -0
- data/samples/bigdemo/wxSplitterWindow.rbw +63 -0
- data/samples/bigdemo/wxStaticBitmap.rbw +47 -0
- data/samples/bigdemo/wxStaticText.rbw +55 -0
- data/samples/bigdemo/wxStatusBar.rbw +126 -0
- data/samples/bigdemo/wxTextCtrl.rbw +149 -0
- data/samples/bigdemo/wxTextEntryDialog.rbw +31 -0
- data/samples/bigdemo/wxToggleButton.rbw +49 -0
- data/samples/bigdemo/wxToolBar.rbw +131 -0
- data/samples/bigdemo/wxTreeCtrl.rbw +191 -0
- data/samples/calendar/calendar.rb +363 -0
- data/samples/calendar/tn_calendar.png +0 -0
- data/samples/caret/caret.rb +293 -0
- data/samples/caret/mondrian.xpm +44 -0
- data/samples/caret/tn_caret.png +0 -0
- data/samples/controls/books.rb +183 -0
- data/samples/controls/choice.xpm +27 -0
- data/samples/controls/combo.xpm +27 -0
- data/samples/controls/controls.rb +1143 -0
- data/samples/controls/gauge.xpm +27 -0
- data/samples/controls/get_item_sample.rb +117 -0
- data/samples/controls/list.xpm +27 -0
- data/samples/controls/mondrian.ico +0 -0
- data/samples/controls/mondrian.xpm +44 -0
- data/samples/controls/radio.xpm +27 -0
- data/samples/controls/stattext.xpm +24 -0
- data/samples/controls/test2.bmp +0 -0
- data/samples/controls/text.xpm +27 -0
- data/samples/controls/tn_books.png +0 -0
- data/samples/controls/tn_controls.png +0 -0
- data/samples/controls/tn_get_item_sample.png +0 -0
- data/samples/dialogs/dialogs.rb +879 -0
- data/samples/dialogs/tips.txt +18 -0
- data/samples/dialogs/tn_dialogs.png +0 -0
- data/samples/dialogs/tn_wizard.png +0 -0
- data/samples/dialogs/wizard.rb +89 -0
- data/samples/dragdrop/dragdrop.rb +200 -0
- data/samples/dragdrop/tn_dragdrop.png +0 -0
- data/samples/drawing/SVGlogo24.xpm +310 -0
- data/samples/drawing/bitmap.rb +76 -0
- data/samples/drawing/bitmap_image.rb +131 -0
- data/samples/drawing/graphics_drawing.rb +257 -0
- data/samples/drawing/maths_images.rb +327 -0
- data/samples/drawing/rmagic_bitmap_image.rb +139 -0
- data/samples/drawing/ruby-logo.jpg +0 -0
- data/samples/drawing/svgtest.rb +373 -0
- data/samples/drawing/tn_bitmap.png +0 -0
- data/samples/drawing/tn_bitmap_image.png +0 -0
- data/samples/drawing/tn_graphics_drawing.png +0 -0
- data/samples/drawing/tn_maths_images.png +0 -0
- data/samples/drawing/tn_rmagic_bitmap_image.png +0 -0
- data/samples/drawing/tn_svgtest.png +0 -0
- data/samples/etc/choice.rb +82 -0
- data/samples/etc/miniframe.rb +92 -0
- data/samples/etc/sash.rb +140 -0
- data/samples/etc/scrollwin.rb +120 -0
- data/samples/etc/system_settings.rb +263 -0
- data/samples/etc/tn_choice.png +0 -0
- data/samples/etc/tn_miniframe.png +0 -0
- data/samples/etc/tn_sash.png +0 -0
- data/samples/etc/tn_scrollwin.png +0 -0
- data/samples/etc/tn_system_settings.png +0 -0
- data/samples/event/activation.rb +129 -0
- data/samples/event/event.rb +220 -0
- data/samples/event/threaded.rb +141 -0
- data/samples/event/tn_activation.png +0 -0
- data/samples/event/tn_event.png +0 -0
- data/samples/event/tn_threaded.png +0 -0
- data/samples/event/tn_update_ui_event.png +0 -0
- data/samples/event/update_ui_event.rb +91 -0
- data/samples/grid/grid.rb +224 -0
- data/samples/grid/gridtablebase.rb +178 -0
- data/samples/grid/tn_grid.png +0 -0
- data/samples/grid/tn_gridtablebase.png +0 -0
- data/samples/html/8859_2.htm +14 -0
- data/samples/html/cp1250.htm +19 -0
- data/samples/html/foo.png +0 -0
- data/samples/html/html.rb +278 -0
- data/samples/html/i18n.gif +0 -0
- data/samples/html/imagemap.htm +20 -0
- data/samples/html/imagemap.png +0 -0
- data/samples/html/listtest.htm +28 -0
- data/samples/html/pic.png +0 -0
- data/samples/html/pic2.bmp +0 -0
- data/samples/html/regres.htm +20 -0
- data/samples/html/subsup.html +42 -0
- data/samples/html/tables.htm +255 -0
- data/samples/html/test.htm +375 -0
- data/samples/html/tn_html.png +0 -0
- data/samples/mdi/mdi.rb +118 -0
- data/samples/mdi/tn_mdi.png +0 -0
- data/samples/minimal/minimal.rb +95 -0
- data/samples/minimal/mondrian.ico +0 -0
- data/samples/minimal/mondrian.png +0 -0
- data/samples/minimal/nothing.rb +38 -0
- data/samples/minimal/tn_minimal.png +0 -0
- data/samples/minimal/tn_nothing.png +0 -0
- data/samples/printing/mondrian.ico +0 -0
- data/samples/printing/mondrian.xpm +44 -0
- data/samples/printing/printing.rb +499 -0
- data/samples/printing/printing2.rb +251 -0
- data/samples/printing/sample-text.txt +213 -0
- data/samples/printing/tn_printing.png +0 -0
- data/samples/printing/tn_printing2.png +0 -0
- data/samples/propgrid/propgrid.rb +2711 -0
- data/samples/propgrid/propgrid_minimal.rb +107 -0
- data/samples/propgrid/sample_props.rb +434 -0
- data/samples/propgrid/tn_propgrid.png +0 -0
- data/samples/propgrid/tn_propgrid_minimal.png +0 -0
- data/samples/ribbon/align_center.xpm +21 -0
- data/samples/ribbon/align_left.xpm +21 -0
- data/samples/ribbon/align_right.xpm +21 -0
- data/samples/ribbon/aui_style.xpm +53 -0
- data/samples/ribbon/auto_crop_selection.xpm +55 -0
- data/samples/ribbon/auto_crop_selection_small.xpm +33 -0
- data/samples/ribbon/circle.xpm +38 -0
- data/samples/ribbon/circle_small.xpm +22 -0
- data/samples/ribbon/colours.xpm +25 -0
- data/samples/ribbon/cross.xpm +38 -0
- data/samples/ribbon/empty.xpm +23 -0
- data/samples/ribbon/expand_selection_h.xpm +46 -0
- data/samples/ribbon/expand_selection_v.xpm +46 -0
- data/samples/ribbon/eye.xpm +26 -0
- data/samples/ribbon/hexagon.xpm +38 -0
- data/samples/ribbon/msw_style.xpm +65 -0
- data/samples/ribbon/position_left.xpm +22 -0
- data/samples/ribbon/position_top.xpm +22 -0
- data/samples/ribbon/ribbon.rb +900 -0
- data/samples/ribbon/ribbon.xpm +54 -0
- data/samples/ribbon/selection_panel.xpm +23 -0
- data/samples/ribbon/square.xpm +38 -0
- data/samples/ribbon/tn_ribbon.png +0 -0
- data/samples/ribbon/triangle.xpm +38 -0
- data/samples/sample.xpm +475 -0
- data/samples/sampler/back.xpm +21 -0
- data/samples/sampler/copy.xpm +44 -0
- data/samples/sampler/cut.xpm +46 -0
- data/samples/sampler/editor.rb +560 -0
- data/samples/sampler/ext.rb +51 -0
- data/samples/sampler/filesave.xpm +42 -0
- data/samples/sampler/find.xpm +62 -0
- data/samples/sampler/findrepl.xpm +63 -0
- data/samples/sampler/forward.xpm +21 -0
- data/samples/sampler/paste.xpm +46 -0
- data/samples/sampler/play.xpm +24 -0
- data/samples/sampler/redo.xpm +58 -0
- data/samples/sampler/sample.rb +347 -0
- data/samples/sampler/stc_editor.rb +321 -0
- data/samples/sampler/txt_editor.rb +130 -0
- data/samples/sampler/undo.xpm +58 -0
- data/samples/sampler.rb +394 -0
- data/samples/splash/mobile.xpm +1835 -0
- data/samples/splash/splash.png +0 -0
- data/samples/splash/splash.rb +164 -0
- data/samples/splash/tn_splash.png +0 -0
- data/samples/text/document-open.png +0 -0
- data/samples/text/document-save.png +0 -0
- data/samples/text/edit-copy.png +0 -0
- data/samples/text/edit-cut.png +0 -0
- data/samples/text/edit-paste.png +0 -0
- data/samples/text/edit-redo.png +0 -0
- data/samples/text/edit-undo.png +0 -0
- data/samples/text/format-text-bold.png +0 -0
- data/samples/text/format-text-italic.png +0 -0
- data/samples/text/format-text-underline.png +0 -0
- data/samples/text/mondrian.ico +0 -0
- data/samples/text/mondrian.xpm +44 -0
- data/samples/text/preferences-desktop-font.png +0 -0
- data/samples/text/rich_textctrl.rb +326 -0
- data/samples/text/scintilla.rb +179 -0
- data/samples/text/textctrl.rb +124 -0
- data/samples/text/tn_rich_textctrl.png +0 -0
- data/samples/text/tn_scintilla.png +0 -0
- data/samples/text/tn_textctrl.png +0 -0
- data/samples/text/tn_unicode.png +0 -0
- data/samples/text/unicode.rb +238 -0
- data/samples/text/utf8.txt +15 -0
- data/samples/treectrl/checked.xpm +54 -0
- data/samples/treectrl/icon1.xpm +79 -0
- data/samples/treectrl/icon2.xpm +53 -0
- data/samples/treectrl/icon3.xpm +79 -0
- data/samples/treectrl/icon4.xpm +43 -0
- data/samples/treectrl/icon5.xpm +79 -0
- data/samples/treectrl/state1.xpm +145 -0
- data/samples/treectrl/state2.xpm +144 -0
- data/samples/treectrl/state3.xpm +142 -0
- data/samples/treectrl/state4.xpm +145 -0
- data/samples/treectrl/state5.xpm +85 -0
- data/samples/treectrl/tn_treectrl.png +0 -0
- data/samples/treectrl/treectrl.rb +1720 -0
- data/samples/treectrl/unchecked.xpm +30 -0
- data/samples/xrc/custom_dialog.xrc +46 -0
- data/samples/xrc/custom_xrc_sample.rb +84 -0
- data/samples/xrc/samples.xrc +46 -0
- data/samples/xrc/tn_xrc_sample.png +0 -0
- data/samples/xrc/xrc_sample.rb +86 -0
- data/tests/test_basic.rb +20 -0
- data/tests/test_clipboard.rb +241 -0
- data/tests/test_dialog.rb +28 -0
- data/tests/test_event_handling.rb +103 -0
- data/tests/test_events.rb +45 -0
- data/tests/test_geometry.rb +141 -0
- data/tests/test_intl.rb +107 -0
- data/tests/test_item_data.rb +120 -0
- data/tests/test_variant.rb +151 -0
- data/tests/testapp.rb +40 -0
- data/tests/testapp_noframe.rb +28 -0
- metadata +874 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
###
|
|
2
|
+
# wxRuby3 wxWidgets interface director
|
|
3
|
+
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
|
+
###
|
|
5
|
+
|
|
6
|
+
module WXRuby3
|
|
7
|
+
|
|
8
|
+
class Director
|
|
9
|
+
|
|
10
|
+
class Colour < Director
|
|
11
|
+
|
|
12
|
+
def setup
|
|
13
|
+
spec.require_app 'wxColour::wxColour(const wxColour&)'
|
|
14
|
+
spec.ignore(%w[
|
|
15
|
+
wxColour::GetPixel wxTransparentColour wxColour::operator!=
|
|
16
|
+
wxBLACK wxBLUE wxCYAN wxGREEN wxYELLOW wxLIGHT_GREY wxRED wxWHITE
|
|
17
|
+
])
|
|
18
|
+
# rename static method to prevent masking the instance method
|
|
19
|
+
spec.rename_for_ruby 'create_disabled' => 'wxColour::MakeDisabled(unsigned char *r, unsigned char *g, unsigned char *b, unsigned char brightness=255)',
|
|
20
|
+
# for consistency
|
|
21
|
+
'create_mono' => 'wxColour::MakeMono',
|
|
22
|
+
'create_grey' => 'wxColour::MakeGrey'
|
|
23
|
+
spec.add_wrapper_code <<~__HEREDOC
|
|
24
|
+
WXRUBY_EXPORT bool wxRuby_IsRubyColour(VALUE rbcol)
|
|
25
|
+
{
|
|
26
|
+
swig_class *sklass = (swig_class *) SWIGTYPE_p_wxColour->clientdata;
|
|
27
|
+
return (TYPE(rbcol) == T_STRING ||
|
|
28
|
+
TYPE(rbcol) == T_SYMBOL ||
|
|
29
|
+
(TYPE(rbcol) == T_DATA && rb_obj_is_kind_of(rbcol, sklass->klass)));
|
|
30
|
+
}
|
|
31
|
+
WXRUBY_EXPORT wxColour wxRuby_ColourFromRuby(VALUE rbcol)
|
|
32
|
+
{
|
|
33
|
+
if (TYPE(rbcol) == T_STRING || TYPE(rbcol) == T_SYMBOL)
|
|
34
|
+
{
|
|
35
|
+
wxString colstr;
|
|
36
|
+
if (TYPE(rbcol) == T_STRING)
|
|
37
|
+
{ colstr = RSTR_TO_WXSTR(rbcol); }
|
|
38
|
+
else
|
|
39
|
+
{ colstr = rb_id2name(SYM2ID(rbcol)); }
|
|
40
|
+
return wxColour(colstr);
|
|
41
|
+
}
|
|
42
|
+
else if (TYPE(rbcol) == T_DATA)
|
|
43
|
+
{
|
|
44
|
+
void *colp;
|
|
45
|
+
int res = SWIG_ConvertPtr(rbcol, &colp, SWIGTYPE_p_wxColour, 0);
|
|
46
|
+
if (SWIG_IsOK(res) && colp)
|
|
47
|
+
{
|
|
48
|
+
return *reinterpret_cast<wxColour *>(colp);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return wxColour();
|
|
52
|
+
}
|
|
53
|
+
WXRUBY_EXPORT VALUE wxRuby_ColourToRuby(const wxColour& col)
|
|
54
|
+
{
|
|
55
|
+
return SWIG_NewPointerObj(new wxColour(col), SWIGTYPE_p_wxColour, SWIG_POINTER_OWN);
|
|
56
|
+
}
|
|
57
|
+
__HEREDOC
|
|
58
|
+
super
|
|
59
|
+
end
|
|
60
|
+
end # class Colour
|
|
61
|
+
|
|
62
|
+
end # class Director
|
|
63
|
+
|
|
64
|
+
end # module WXRuby3
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
###
|
|
2
|
+
# wxRuby3 wxWidgets interface director
|
|
3
|
+
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
|
+
###
|
|
5
|
+
|
|
6
|
+
require_relative './window'
|
|
7
|
+
|
|
8
|
+
module WXRuby3
|
|
9
|
+
|
|
10
|
+
class Director
|
|
11
|
+
|
|
12
|
+
class ColourPickerCtrl < Window
|
|
13
|
+
|
|
14
|
+
def setup
|
|
15
|
+
super
|
|
16
|
+
spec.do_not_generate(:variables, :defines, :enums, :functions) # with ColourPickerEvent
|
|
17
|
+
end
|
|
18
|
+
end # class ColourPickerCtrl
|
|
19
|
+
|
|
20
|
+
end # class Director
|
|
21
|
+
|
|
22
|
+
end # module WXRuby3
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
###
|
|
2
|
+
# wxRuby3 wxWidgets interface director
|
|
3
|
+
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
|
+
###
|
|
5
|
+
|
|
6
|
+
require_relative './ctrl_with_items'
|
|
7
|
+
|
|
8
|
+
module WXRuby3
|
|
9
|
+
|
|
10
|
+
class Director
|
|
11
|
+
|
|
12
|
+
class ComboBox < ControlWithItems
|
|
13
|
+
|
|
14
|
+
def setup
|
|
15
|
+
super
|
|
16
|
+
setup_ctrl_with_items('wxComboBox')
|
|
17
|
+
# mixin TextEntry
|
|
18
|
+
spec.include_mixin 'wxComboBox', 'Wx::TextEntry'
|
|
19
|
+
spec.override_inheritance_chain('wxComboBox',
|
|
20
|
+
%w[wxControlWithItems
|
|
21
|
+
wxControl
|
|
22
|
+
wxWindow
|
|
23
|
+
wxEvtHandler
|
|
24
|
+
wxObject])
|
|
25
|
+
spec.ignore(%w[
|
|
26
|
+
wxComboBox::IsEmpty])
|
|
27
|
+
spec.rename_for_ruby(
|
|
28
|
+
'SetTextSelectionRange' => 'wxComboBox::SetSelection(long, long)',
|
|
29
|
+
'GetTextSelectionRange' => 'wxComboBox::GetSelection(long *, long *) const')
|
|
30
|
+
spec.map_apply 'long * OUTPUT' => [ 'long *from', 'long *to' ]
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
end # class ComboBox
|
|
34
|
+
|
|
35
|
+
end # class Director
|
|
36
|
+
|
|
37
|
+
end # module WXRuby3
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
###
|
|
2
|
+
# wxRuby3 wxWidgets interface director
|
|
3
|
+
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
|
+
###
|
|
5
|
+
|
|
6
|
+
require_relative './window'
|
|
7
|
+
|
|
8
|
+
module WXRuby3
|
|
9
|
+
|
|
10
|
+
class Director
|
|
11
|
+
|
|
12
|
+
class Control < Window
|
|
13
|
+
|
|
14
|
+
def setup
|
|
15
|
+
super
|
|
16
|
+
spec.ignore 'wxControl::GetLabelText(const wxString &)'
|
|
17
|
+
end
|
|
18
|
+
end # class Control
|
|
19
|
+
|
|
20
|
+
end # class Director
|
|
21
|
+
|
|
22
|
+
end # module WXRuby3
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
###
|
|
2
|
+
# wxRuby3 wxWidgets interface director
|
|
3
|
+
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
|
+
###
|
|
5
|
+
|
|
6
|
+
require_relative './window'
|
|
7
|
+
|
|
8
|
+
module WXRuby3
|
|
9
|
+
|
|
10
|
+
class Director
|
|
11
|
+
|
|
12
|
+
class ControlWithItems < Window
|
|
13
|
+
|
|
14
|
+
def setup
|
|
15
|
+
super
|
|
16
|
+
if spec.module_name == 'wxControlWithItems'
|
|
17
|
+
spec.items.replace %w[wxControlWithItems wxItemContainer wxItemContainerImmutable]
|
|
18
|
+
spec.fold_bases('wxControlWithItems' => %w[wxItemContainer wxItemContainerImmutable])
|
|
19
|
+
spec.override_inheritance_chain('wxControlWithItems',
|
|
20
|
+
%w[wxControl
|
|
21
|
+
wxWindow
|
|
22
|
+
wxEvtHandler
|
|
23
|
+
wxObject])
|
|
24
|
+
spec.ignore([
|
|
25
|
+
'wxItemContainer::Insert(const std::vector< wxString > &)',
|
|
26
|
+
'wxItemContainer::GetClientObject',
|
|
27
|
+
'wxItemContainer::SetClientObject'])
|
|
28
|
+
spec.ignore(%w[wxItemContainer::GetClientData wxItemContainer::SetClientData], ignore_doc: false) # keep docs
|
|
29
|
+
# Replace the old Wx definitions of these methods - which segfault
|
|
30
|
+
spec.add_extend_code('wxControlWithItems', <<~__HEREDOC
|
|
31
|
+
VALUE get_client_data(int n) {
|
|
32
|
+
// Avoid an assert failure if no data previously set
|
|
33
|
+
if ( ! self->HasClientUntypedData() )
|
|
34
|
+
return Qnil;
|
|
35
|
+
|
|
36
|
+
VALUE returnVal = (VALUE) self->GetClientData(n);
|
|
37
|
+
if ( ! returnVal )
|
|
38
|
+
return Qnil;
|
|
39
|
+
return returnVal;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
VALUE set_client_data(int n, VALUE item_data) {
|
|
43
|
+
self->SetClientData(n, (void *)item_data);
|
|
44
|
+
return item_data;
|
|
45
|
+
}
|
|
46
|
+
__HEREDOC
|
|
47
|
+
)
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
|
|
51
|
+
def setup_ctrl_with_items(clsnm)
|
|
52
|
+
# used in GC phase so DO NOT trigger Ruby redirection
|
|
53
|
+
spec.no_proxy "#{clsnm}::GetCount"
|
|
54
|
+
spec.add_swig_code <<~__HEREDOC
|
|
55
|
+
// adjust GC marker
|
|
56
|
+
%markfunc #{clsnm} "GC_mark_wxControlWithItems";
|
|
57
|
+
__HEREDOC
|
|
58
|
+
spec.add_header_code <<~__HEREDOC
|
|
59
|
+
extern swig_class cWxControlWithItems;
|
|
60
|
+
WXRUBY_EXPORT void GC_mark_wxControlWithItems(void* ptr);
|
|
61
|
+
__HEREDOC
|
|
62
|
+
spec.no_proxy "#{clsnm}::GetStringSelection"
|
|
63
|
+
end
|
|
64
|
+
end # class ControlWithItems
|
|
65
|
+
|
|
66
|
+
end # class Director
|
|
67
|
+
|
|
68
|
+
end # module WXRuby3
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
###
|
|
2
|
+
# wxRuby3 wxWidgets interface director
|
|
3
|
+
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
|
+
###
|
|
5
|
+
|
|
6
|
+
module WXRuby3
|
|
7
|
+
|
|
8
|
+
class Director
|
|
9
|
+
|
|
10
|
+
class Cursor < Director
|
|
11
|
+
|
|
12
|
+
def setup
|
|
13
|
+
# all but the default ctor require a running App
|
|
14
|
+
spec.require_app 'wxCursor::wxCursor(const wxString &, wxBitmapType, int, int)',
|
|
15
|
+
'wxCursor::wxCursor(wxStockCursor)',
|
|
16
|
+
'wxCursor::wxCursor(const wxImage &)',
|
|
17
|
+
'wxCursor::wxCursor(const char *const *)',
|
|
18
|
+
'wxCursor::wxCursor(const wxCursor &)'
|
|
19
|
+
spec.ignore 'wxCursor::wxCursor(const char[],int,int,int,int,const char[])'
|
|
20
|
+
# ignore stock object (see RubyStockObjects.i)
|
|
21
|
+
spec.ignore %w[wxSTANDARD_CURSOR wxHOURGLASS_CURSOR wxCROSS_CURSOR]
|
|
22
|
+
super
|
|
23
|
+
end
|
|
24
|
+
end # class Cursor
|
|
25
|
+
|
|
26
|
+
end # class Director
|
|
27
|
+
|
|
28
|
+
end # module WXRuby3
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
###
|
|
2
|
+
# wxRuby3 wxWidgets interface director
|
|
3
|
+
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
|
+
###
|
|
5
|
+
|
|
6
|
+
module WXRuby3
|
|
7
|
+
|
|
8
|
+
class Director
|
|
9
|
+
|
|
10
|
+
class DataFormat < Director
|
|
11
|
+
|
|
12
|
+
def setup
|
|
13
|
+
super
|
|
14
|
+
spec.gc_as_object
|
|
15
|
+
spec.ignore 'wxDataFormat::operator ==(wxDataFormatId)'
|
|
16
|
+
if Config.platform == :mingw
|
|
17
|
+
# The formal signature for these is NativeFormat; this is required on
|
|
18
|
+
# MSVC as otherwise an impermissible implicit cast is tried, and so
|
|
19
|
+
# doesn't compile
|
|
20
|
+
spec.ignore 'wxDataFormat::GetType'
|
|
21
|
+
spec.extend_interface 'wxDataFormat',
|
|
22
|
+
'typedef unsigned short NativeFormat',
|
|
23
|
+
'wxDataFormat::NativeFormat GetType() const'
|
|
24
|
+
end
|
|
25
|
+
spec.do_not_generate :variables
|
|
26
|
+
end
|
|
27
|
+
end # class DataFormat
|
|
28
|
+
|
|
29
|
+
end # class Director
|
|
30
|
+
|
|
31
|
+
end # module WXRuby3
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
###
|
|
2
|
+
# wxRuby3 wxWidgets interface director
|
|
3
|
+
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
|
+
###
|
|
5
|
+
|
|
6
|
+
module WXRuby3
|
|
7
|
+
|
|
8
|
+
class Director
|
|
9
|
+
|
|
10
|
+
class DataObject < Director
|
|
11
|
+
|
|
12
|
+
include Typemap::DataFormat
|
|
13
|
+
include Typemap::DataObjectData
|
|
14
|
+
|
|
15
|
+
def setup
|
|
16
|
+
super
|
|
17
|
+
spec.items.concat %w[wxDataObjectSimple wxDataObjectComposite wxBitmapDataObject wxFileDataObject wxTextDataObject wxCustomDataObject wxImageDataObject wxURLDataObject]
|
|
18
|
+
spec.gc_as_object
|
|
19
|
+
|
|
20
|
+
# we only allow Ruby derivatives from wxDataObject but not of any of the C++ implemented
|
|
21
|
+
# specializations
|
|
22
|
+
%w[wxDataObjectSimple wxDataObjectComposite wxBitmapDataObject wxFileDataObject wxTextDataObject wxCustomDataObject wxImageDataObject wxURLDataObject].each do |kls|
|
|
23
|
+
spec.no_proxy kls
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
# ignore the shortened 'convenience' forms
|
|
27
|
+
spec.ignore 'wxDataObjectSimple::GetDataHere(void *) const'
|
|
28
|
+
spec.ignore 'wxDataObjectSimple::SetData(size_t, const void *)'
|
|
29
|
+
spec.ignore 'wxDataObjectSimple::GetDataSize() const'
|
|
30
|
+
# ignore this as all derivatives have a fixed format
|
|
31
|
+
spec.ignore 'wxDataObjectSimple::SetFormat'
|
|
32
|
+
|
|
33
|
+
# ignore these as all fully implemented in derived and not useful in Ruby
|
|
34
|
+
spec.ignore 'wxCustomDataObject::Alloc'
|
|
35
|
+
spec.ignore 'wxCustomDataObject::Free'
|
|
36
|
+
spec.ignore 'wxCustomDataObject::GetData'
|
|
37
|
+
spec.ignore 'wxCustomDataObject::SetData'
|
|
38
|
+
spec.ignore 'wxCustomDataObject::GetSize'
|
|
39
|
+
spec.ignore 'wxCustomDataObject::TakeData'
|
|
40
|
+
|
|
41
|
+
# all available in bases
|
|
42
|
+
spec.ignore 'wxTextDataObject::GetFormatCount'
|
|
43
|
+
spec.ignore 'wxTextDataObject::GetFormat'
|
|
44
|
+
spec.ignore 'wxTextDataObject::GetAllFormats'
|
|
45
|
+
|
|
46
|
+
%w[wxDataObjectComposite wxBitmapDataObject wxFileDataObject wxTextDataObject wxImageDataObject wxURLDataObject].each do |kls|
|
|
47
|
+
spec.add_swig_code <<~__HEREDOC
|
|
48
|
+
// SWIG gets confused and doesn't realise that various virtual methods
|
|
49
|
+
// from wxDataObject are implemented fully in this subclass, and so,
|
|
50
|
+
// believing it to be abstract doesn't provide an allocator for this
|
|
51
|
+
// class. This undocumented feature overrides this.
|
|
52
|
+
%feature("notabstract") #{kls};
|
|
53
|
+
__HEREDOC
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
# Once a DataObject has been added, it belongs to the wxDataObjectComposite object,
|
|
57
|
+
# and will be freed by it on destruction.
|
|
58
|
+
spec.disown 'wxDataObjectSimple* dataObject'
|
|
59
|
+
end
|
|
60
|
+
end # class DataObject
|
|
61
|
+
|
|
62
|
+
end # class Director
|
|
63
|
+
|
|
64
|
+
end # module WXRuby3
|
|
@@ -0,0 +1,141 @@
|
|
|
1
|
+
###
|
|
2
|
+
# wxRuby3 wxWidgets interface director
|
|
3
|
+
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
|
+
###
|
|
5
|
+
|
|
6
|
+
require_relative './event'
|
|
7
|
+
|
|
8
|
+
module WXRuby3
|
|
9
|
+
|
|
10
|
+
class Director
|
|
11
|
+
|
|
12
|
+
class DateEvent < Event
|
|
13
|
+
|
|
14
|
+
include Typemap::DateTime
|
|
15
|
+
|
|
16
|
+
def setup
|
|
17
|
+
super
|
|
18
|
+
if spec.module_name == 'wxDateEvent'
|
|
19
|
+
# add DateTime conversion helpers
|
|
20
|
+
spec.add_header_code <<~__HEREDOC
|
|
21
|
+
#define __WXRB_DATETIME_HELPERS__
|
|
22
|
+
|
|
23
|
+
#include <wx/datetime.h>
|
|
24
|
+
|
|
25
|
+
static WxRuby_ID __wxrb_local("local");
|
|
26
|
+
static WxRuby_ID __wxrb_utc_offset("utc_offset");
|
|
27
|
+
static WxRuby_ID __wxrb_Rational("Rational");
|
|
28
|
+
static WxRuby_ID __wxrb_civil("civil");
|
|
29
|
+
static WxRuby_ID __wxrb_to_time("to_time");
|
|
30
|
+
static WxRuby_ID __wxrb_round("round");
|
|
31
|
+
|
|
32
|
+
static VALUE rescue(VALUE, VALUE)
|
|
33
|
+
{
|
|
34
|
+
return Qnil;
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
static VALUE __wxrb_cDateTime()
|
|
38
|
+
{
|
|
39
|
+
static VALUE __klass = Qnil;
|
|
40
|
+
if (__klass == Qnil) __klass = rb_eval_string("require 'date'; ::DateTime");
|
|
41
|
+
return __klass;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
static VALUE wxRuby_WXDT2RBT(VALUE rbdt)
|
|
45
|
+
{
|
|
46
|
+
wxDateTime* wxdt = 0;
|
|
47
|
+
Data_Get_Struct(rbdt, wxDateTime, wxdt);
|
|
48
|
+
int year = wxdt->GetYear();
|
|
49
|
+
VALUE y = INT2NUM(year);
|
|
50
|
+
VALUE mon = INT2NUM(wxdt->GetMonth() + 1);
|
|
51
|
+
VALUE d = INT2NUM(wxdt->GetDay());
|
|
52
|
+
VALUE h = INT2NUM(wxdt->GetHour());
|
|
53
|
+
VALUE min = INT2NUM(wxdt->GetMinute());
|
|
54
|
+
VALUE s = INT2NUM(wxdt->GetSecond());
|
|
55
|
+
VALUE us = INT2NUM(wxdt->GetMillisecond()*1000);
|
|
56
|
+
return rb_funcall(rb_cTime, __wxrb_local(), 7, y, mon, d, h, min, s, us);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
WXRB_EXPORT_FLAG VALUE wxRuby_wxDateTimeToRuby(const wxDateTime& dt)
|
|
60
|
+
{
|
|
61
|
+
VALUE ruby_value = Qnil;
|
|
62
|
+
if (dt.IsValid())
|
|
63
|
+
{
|
|
64
|
+
// depending on the timezone, the local January the first 1970 may be out of range.
|
|
65
|
+
// for 2038 not the entire year is available in the numerical representation.
|
|
66
|
+
void* ptr = const_cast<wxDateTime*> (&dt);
|
|
67
|
+
VALUE rbdt = Data_Wrap_Struct(rb_cObject, 0, 0, ptr);
|
|
68
|
+
ruby_value = rb_rescue2(VALUEFUNC(wxRuby_WXDT2RBT), rbdt, VALUEFUNC(rescue), Qnil, rb_eException, 0);
|
|
69
|
+
if (ruby_value == Qnil)
|
|
70
|
+
{
|
|
71
|
+
int year = dt.GetYear();
|
|
72
|
+
VALUE y = INT2NUM(year);
|
|
73
|
+
VALUE mon = INT2NUM(dt.GetMonth() + 1);
|
|
74
|
+
VALUE d = INT2NUM(dt.GetDay());
|
|
75
|
+
VALUE h = INT2NUM(dt.GetHour());
|
|
76
|
+
VALUE min = INT2NUM(dt.GetMinute());
|
|
77
|
+
VALUE s = INT2NUM(dt.GetSecond());
|
|
78
|
+
// DateTime has no constructor for local timezone, so we have to compute the current offset
|
|
79
|
+
// local_offset = Time.local(2007).utc_offset.to_r / 86400
|
|
80
|
+
VALUE non_leap_year_without_dst = rb_funcall(rb_cTime, __wxrb_local(), 1, INT2NUM(2007));
|
|
81
|
+
VALUE utc_offset = rb_funcall(non_leap_year_without_dst, __wxrb_utc_offset(), 0);
|
|
82
|
+
VALUE local_offset = rb_funcall(rb_cObject, __wxrb_Rational(), 2, utc_offset, INT2NUM(86400)); // 60*60*24
|
|
83
|
+
ruby_value = rb_funcall(__wxrb_cDateTime(), __wxrb_civil(), 7, y, mon, d, h, min, s, local_offset);
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
return ruby_value;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
static WxRuby_ID __wxrb_year("year");
|
|
90
|
+
static WxRuby_ID __wxrb_month("month");
|
|
91
|
+
static WxRuby_ID __wxrb_mday("mday");
|
|
92
|
+
static WxRuby_ID __wxrb_hour("hour");
|
|
93
|
+
static WxRuby_ID __wxrb_min("min");
|
|
94
|
+
static WxRuby_ID __wxrb_sec("sec");
|
|
95
|
+
static WxRuby_ID __wxrb_usec("usec");
|
|
96
|
+
|
|
97
|
+
WXRB_EXPORT_FLAG wxDateTime* wxRuby_wxDateTimeFromRuby(VALUE ruby_value)
|
|
98
|
+
{
|
|
99
|
+
if (ruby_value == Qnil)
|
|
100
|
+
{
|
|
101
|
+
return new wxDateTime();
|
|
102
|
+
}
|
|
103
|
+
else
|
|
104
|
+
{
|
|
105
|
+
if (!rb_obj_is_kind_of(ruby_value, rb_cTime))
|
|
106
|
+
{
|
|
107
|
+
ruby_value = rb_funcall(ruby_value, __wxrb_to_time(), 0);
|
|
108
|
+
}
|
|
109
|
+
ruby_value = rb_funcall(ruby_value, __wxrb_round(), 1, INT2NUM(3));
|
|
110
|
+
|
|
111
|
+
int y = NUM2INT(rb_funcall(ruby_value, __wxrb_year(), 0));
|
|
112
|
+
int rMonth = NUM2INT(rb_funcall(ruby_value, __wxrb_month(), 0));
|
|
113
|
+
int rDay = NUM2INT(rb_funcall(ruby_value, __wxrb_mday(), 0));
|
|
114
|
+
int rHour = NUM2INT(rb_funcall(ruby_value, __wxrb_hour(), 0));
|
|
115
|
+
int rMinute = NUM2INT(rb_funcall(ruby_value, __wxrb_min(), 0));
|
|
116
|
+
int rSecond = NUM2INT(rb_funcall(ruby_value, __wxrb_sec(), 0));
|
|
117
|
+
int rUSecond = NUM2INT(rb_funcall(ruby_value, __wxrb_usec(), 0));
|
|
118
|
+
int rMSecond = rUSecond / 1000;
|
|
119
|
+
|
|
120
|
+
wxDateTime::Month mon = (wxDateTime::Month)(rMonth-1);
|
|
121
|
+
wxDateTime::wxDateTime_t d = (wxDateTime::wxDateTime_t)rDay;
|
|
122
|
+
wxDateTime::wxDateTime_t h = (wxDateTime::wxDateTime_t)rHour;
|
|
123
|
+
wxDateTime::wxDateTime_t min = (wxDateTime::wxDateTime_t)rMinute;
|
|
124
|
+
wxDateTime::wxDateTime_t s = (wxDateTime::wxDateTime_t)rSecond;
|
|
125
|
+
wxDateTime::wxDateTime_t ms = (wxDateTime::wxDateTime_t)rMSecond;
|
|
126
|
+
|
|
127
|
+
return new wxDateTime(d, mon, y, h, min, s, ms);
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
__HEREDOC
|
|
131
|
+
elsif spec.module_name == 'wxCalendarEvent'
|
|
132
|
+
spec.override_inheritance_chain('wxCalendarEvent', 'wxDateEvent', {'wxCommandEvent' => 'wxEvent'}, 'wxEvent', 'wxObject', doc_override: false)
|
|
133
|
+
# inconsistent definitions
|
|
134
|
+
spec.add_swig_code %Q{%constant wxEventType wxEVT_CALENDAR = wxEVT_CALENDAR_DOUBLECLICKED;}
|
|
135
|
+
end
|
|
136
|
+
end
|
|
137
|
+
end # class DateEvent
|
|
138
|
+
|
|
139
|
+
end # class Director
|
|
140
|
+
|
|
141
|
+
end # module WXRuby3
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
###
|
|
2
|
+
# wxRuby3 wxWidgets interface director
|
|
3
|
+
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
|
+
###
|
|
5
|
+
|
|
6
|
+
require_relative './window'
|
|
7
|
+
|
|
8
|
+
module WXRuby3
|
|
9
|
+
|
|
10
|
+
class Director
|
|
11
|
+
|
|
12
|
+
class DatePickerCtrl < Window
|
|
13
|
+
|
|
14
|
+
include Typemap::DateTime
|
|
15
|
+
|
|
16
|
+
def setup
|
|
17
|
+
super
|
|
18
|
+
# Custom implementation for Ruby
|
|
19
|
+
spec.ignore 'wxDatePickerCtrl::GetRange'
|
|
20
|
+
|
|
21
|
+
spec.add_extend_code 'wxDatePickerCtrl', <<~__HEREDOC
|
|
22
|
+
VALUE get_range()
|
|
23
|
+
{
|
|
24
|
+
wxDateTime dt1, dt2;
|
|
25
|
+
$self->GetRange(&dt1, &dt2);
|
|
26
|
+
|
|
27
|
+
VALUE items = rb_ary_new();
|
|
28
|
+
rb_ary_push(items, wxRuby_wxDateTimeToRuby(dt1));
|
|
29
|
+
rb_ary_push(items, wxRuby_wxDateTimeToRuby(dt2));
|
|
30
|
+
|
|
31
|
+
return items;
|
|
32
|
+
}
|
|
33
|
+
__HEREDOC
|
|
34
|
+
end
|
|
35
|
+
end # class DatePickerCtrl
|
|
36
|
+
|
|
37
|
+
end # class Director
|
|
38
|
+
|
|
39
|
+
end # module WXRuby3
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
###
|
|
2
|
+
# wxRuby3 wxWidgets interface director
|
|
3
|
+
# Copyright (c) M.J.N. Corino, The Netherlands
|
|
4
|
+
###
|
|
5
|
+
|
|
6
|
+
module WXRuby3
|
|
7
|
+
|
|
8
|
+
class Director
|
|
9
|
+
|
|
10
|
+
class DC < Director
|
|
11
|
+
|
|
12
|
+
include Typemap::PointsList
|
|
13
|
+
|
|
14
|
+
def setup
|
|
15
|
+
super
|
|
16
|
+
spec.ignore [
|
|
17
|
+
'wxDC::StartPage',
|
|
18
|
+
'wxDC::GetPartialTextExtents',
|
|
19
|
+
'wxDC::DrawLines(const wxPointList *,wxCoord,wxCoord)',
|
|
20
|
+
'wxDC::DrawPolygon(const wxPointList *,wxCoord,wxCoord,wxPolygonFillMode)',
|
|
21
|
+
'wxDC::DrawSpline(const wxPointList *)',
|
|
22
|
+
'wxDC::GetLogicalOrigin(wxCoord *,wxCoord *) const',
|
|
23
|
+
'wxDC::GetHandle'
|
|
24
|
+
]
|
|
25
|
+
spec.disable_proxies
|
|
26
|
+
spec.rename_for_ruby({
|
|
27
|
+
'GetDimensions' => 'wxDC::GetSize(wxCoord *, wxCoord *) const',
|
|
28
|
+
'GetDimensionsMM' => 'wxDC::GetSizeMM(wxCoord *, wxCoord *) const',
|
|
29
|
+
'GetTextSize' => 'wxDC::GetTextExtent(const wxString &) const',
|
|
30
|
+
'GetMultiLineTextSize' => 'wxDC::GetMultiLineTextExtent(const wxString &) const'
|
|
31
|
+
})
|
|
32
|
+
spec.add_extend_code 'wxDC', <<~__HEREDOC
|
|
33
|
+
// Needs to return input parameter with list of lengths
|
|
34
|
+
VALUE get_partial_text_extents(VALUE text) {
|
|
35
|
+
wxString str = wxString(StringValuePtr(text), wxConvUTF8);
|
|
36
|
+
wxArrayInt result = wxArrayInt();
|
|
37
|
+
$self->GetPartialTextExtents(str, result);
|
|
38
|
+
VALUE rb_result = rb_ary_new();
|
|
39
|
+
for (size_t i = 0; i < result.GetCount(); i++)
|
|
40
|
+
{
|
|
41
|
+
rb_ary_push(rb_result, INT2NUM( result.Item(i) ) );
|
|
42
|
+
}
|
|
43
|
+
return rb_result;
|
|
44
|
+
}
|
|
45
|
+
__HEREDOC
|
|
46
|
+
spec.swig_import 'swig/classes/include/wxGDICommon.h'
|
|
47
|
+
end
|
|
48
|
+
end # class DC
|
|
49
|
+
|
|
50
|
+
end # class Director
|
|
51
|
+
|
|
52
|
+
end # module WXRuby3
|