rwx 0.0.1.dev
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/.gitignore +49 -0
- data/COPYING +0 -0
- data/README.rdoc +0 -0
- data/Rakefile +100 -0
- data/VERSION +1 -0
- data/ext/extconf.rb +112 -0
- data/ext/main.cpp +432 -0
- data/ext/main.hpp +454 -0
- data/ext/rwx.cpp +472 -0
- data/ext/wxAboutDlg.cpp +213 -0
- data/ext/wxAboutDlg.hpp +19 -0
- data/ext/wxAnyButton.cpp +141 -0
- data/ext/wxAnyButton.hpp +17 -0
- data/ext/wxAnyChoiceDialog.cpp +93 -0
- data/ext/wxAnyChoiceDialog.hpp +19 -0
- data/ext/wxApp.cpp +205 -0
- data/ext/wxApp.hpp +48 -0
- data/ext/wxAui.hpp +19 -0
- data/ext/wxAuiBook.cpp +453 -0
- data/ext/wxAuiBook.hpp +21 -0
- data/ext/wxAuiManager.cpp +79 -0
- data/ext/wxAuiManager.hpp +18 -0
- data/ext/wxAuiPane.cpp +343 -0
- data/ext/wxAuiPane.hpp +29 -0
- data/ext/wxAuiToolBar.cpp +47 -0
- data/ext/wxAuiToolBar.hpp +17 -0
- data/ext/wxBitmap.cpp +368 -0
- data/ext/wxBitmap.hpp +60 -0
- data/ext/wxBitmapButton.cpp +82 -0
- data/ext/wxBitmapButton.hpp +17 -0
- data/ext/wxBitmapComboBox.cpp +284 -0
- data/ext/wxBitmapComboBox.hpp +22 -0
- data/ext/wxBitmapToggleButton.cpp +82 -0
- data/ext/wxBitmapToggleButton.hpp +17 -0
- data/ext/wxBookCtrl.cpp +633 -0
- data/ext/wxBookCtrl.hpp +22 -0
- data/ext/wxBoxSizer.cpp +60 -0
- data/ext/wxBoxSizer.hpp +17 -0
- data/ext/wxBrush.cpp +281 -0
- data/ext/wxBrush.hpp +28 -0
- data/ext/wxButton.cpp +85 -0
- data/ext/wxButton.hpp +17 -0
- data/ext/wxButtonToolBar.cpp +54 -0
- data/ext/wxButtonToolBar.hpp +21 -0
- data/ext/wxCalendarCtrl.cpp +91 -0
- data/ext/wxCalendarCtrl.hpp +17 -0
- data/ext/wxCalendarCtrlBase.cpp +55 -0
- data/ext/wxCalendarCtrlBase.hpp +26 -0
- data/ext/wxCalendarCtrlGeneric.cpp +102 -0
- data/ext/wxCalendarCtrlGeneric.hpp +21 -0
- data/ext/wxCheckBox.cpp +157 -0
- data/ext/wxCheckBox.hpp +17 -0
- data/ext/wxCheckListBox.cpp +191 -0
- data/ext/wxCheckListBox.hpp +20 -0
- data/ext/wxChoice.cpp +133 -0
- data/ext/wxChoice.hpp +30 -0
- data/ext/wxChoiceBook.cpp +90 -0
- data/ext/wxChoiceBook.hpp +23 -0
- data/ext/wxCollapsiblePane.cpp +110 -0
- data/ext/wxCollapsiblePane.hpp +21 -0
- data/ext/wxColor.cpp +435 -0
- data/ext/wxColor.hpp +38 -0
- data/ext/wxColorDialog.cpp +97 -0
- data/ext/wxColorDialog.hpp +19 -0
- data/ext/wxColorPicker.cpp +131 -0
- data/ext/wxColorPicker.hpp +20 -0
- data/ext/wxColorPickerWidget.cpp +105 -0
- data/ext/wxColorPickerWidget.hpp +20 -0
- data/ext/wxComboBox.cpp +214 -0
- data/ext/wxComboBox.hpp +22 -0
- data/ext/wxCommandEvent.cpp +45 -0
- data/ext/wxCommandEvent.hpp +16 -0
- data/ext/wxConfig.cpp +19 -0
- data/ext/wxConfig.hpp +17 -0
- data/ext/wxContextHelpButton.cpp +93 -0
- data/ext/wxContextHelpButton.hpp +21 -0
- data/ext/wxControl.cpp +90 -0
- data/ext/wxControl.hpp +15 -0
- data/ext/wxCursor.cpp +108 -0
- data/ext/wxCursor.hpp +25 -0
- data/ext/wxDC.cpp +252 -0
- data/ext/wxDC.hpp +18 -0
- data/ext/wxDataView.cpp +224 -0
- data/ext/wxDataView.hpp +45 -0
- data/ext/wxDataViewList.cpp +190 -0
- data/ext/wxDataViewList.hpp +17 -0
- data/ext/wxDatePicker.cpp +103 -0
- data/ext/wxDatePicker.hpp +22 -0
- data/ext/wxDialog.cpp +120 -0
- data/ext/wxDialog.hpp +17 -0
- data/ext/wxDirDialog.cpp +152 -0
- data/ext/wxDirDialog.hpp +20 -0
- data/ext/wxDirPicker.cpp +134 -0
- data/ext/wxDirPicker.hpp +28 -0
- data/ext/wxDirPickerWidget.cpp +127 -0
- data/ext/wxDirPickerWidget.hpp +20 -0
- data/ext/wxError.cpp +67 -0
- data/ext/wxError.hpp +17 -0
- data/ext/wxEvent.cpp +60 -0
- data/ext/wxEvent.hpp +17 -0
- data/ext/wxEvtHandler.cpp +291 -0
- data/ext/wxEvtHandler.hpp +85 -0
- data/ext/wxFileCtrl.cpp +98 -0
- data/ext/wxFileCtrl.hpp +17 -0
- data/ext/wxFileCtrlBase.cpp +219 -0
- data/ext/wxFileCtrlBase.hpp +33 -0
- data/ext/wxFileCtrlGeneric.cpp +106 -0
- data/ext/wxFileCtrlGeneric.hpp +19 -0
- data/ext/wxFileDialog.cpp +268 -0
- data/ext/wxFileDialog.hpp +19 -0
- data/ext/wxFileDirPicker.cpp +89 -0
- data/ext/wxFileDirPicker.hpp +29 -0
- data/ext/wxFileHistory.cpp +134 -0
- data/ext/wxFileHistory.hpp +20 -0
- data/ext/wxFilePicker.cpp +160 -0
- data/ext/wxFilePicker.hpp +28 -0
- data/ext/wxFilePickerWidget.cpp +139 -0
- data/ext/wxFilePickerWidget.hpp +20 -0
- data/ext/wxFont.cpp +542 -0
- data/ext/wxFont.hpp +37 -0
- data/ext/wxFontDialog.cpp +143 -0
- data/ext/wxFontDialog.hpp +21 -0
- data/ext/wxFontPicker.cpp +160 -0
- data/ext/wxFontPicker.hpp +21 -0
- data/ext/wxFontPickerWidget.cpp +128 -0
- data/ext/wxFontPickerWidget.hpp +20 -0
- data/ext/wxFrame.cpp +274 -0
- data/ext/wxFrame.hpp +17 -0
- data/ext/wxGauge.cpp +167 -0
- data/ext/wxGauge.hpp +17 -0
- data/ext/wxGrid.cpp +250 -0
- data/ext/wxGrid.hpp +43 -0
- data/ext/wxGridCellAttr.cpp +68 -0
- data/ext/wxGridCellAttr.hpp +26 -0
- data/ext/wxGridCellRenderer.cpp +120 -0
- data/ext/wxGridCellRenderer.hpp +30 -0
- data/ext/wxGridTable.cpp +111 -0
- data/ext/wxGridTable.hpp +47 -0
- data/ext/wxHyperLink.cpp +148 -0
- data/ext/wxHyperLink.hpp +20 -0
- data/ext/wxImage.cpp +884 -0
- data/ext/wxImage.hpp +24 -0
- data/ext/wxInfoBar.cpp +85 -0
- data/ext/wxInfoBar.hpp +21 -0
- data/ext/wxInfoBarBase.cpp +145 -0
- data/ext/wxInfoBarBase.hpp +21 -0
- data/ext/wxInfoBarGeneric.cpp +90 -0
- data/ext/wxInfoBarGeneric.hpp +21 -0
- data/ext/wxItemContainer.cpp +313 -0
- data/ext/wxItemContainer.hpp +17 -0
- data/ext/wxKeyEvent.cpp +35 -0
- data/ext/wxKeyEvent.hpp +16 -0
- data/ext/wxListBook.cpp +90 -0
- data/ext/wxListBook.hpp +21 -0
- data/ext/wxListBox.cpp +290 -0
- data/ext/wxListBox.hpp +29 -0
- data/ext/wxMenu.cpp +600 -0
- data/ext/wxMenu.hpp +17 -0
- data/ext/wxMenuBar.cpp +180 -0
- data/ext/wxMenuBar.hpp +17 -0
- data/ext/wxMenuItem.cpp +174 -0
- data/ext/wxMenuItem.hpp +17 -0
- data/ext/wxMessageDialog.cpp +91 -0
- data/ext/wxMessageDialog.hpp +19 -0
- data/ext/wxMessageDialogBase.cpp +152 -0
- data/ext/wxMessageDialogBase.hpp +18 -0
- data/ext/wxMessageDialogGeneric.cpp +91 -0
- data/ext/wxMessageDialogGeneric.hpp +19 -0
- data/ext/wxMouseEvent.cpp +60 -0
- data/ext/wxMouseEvent.hpp +16 -0
- data/ext/wxMultiChoiceDialog.cpp +143 -0
- data/ext/wxMultiChoiceDialog.hpp +19 -0
- data/ext/wxNoteBook.cpp +89 -0
- data/ext/wxNoteBook.hpp +21 -0
- data/ext/wxNotifyEvent.cpp +45 -0
- data/ext/wxNotifyEvent.hpp +16 -0
- data/ext/wxNumberEntryDialog.cpp +131 -0
- data/ext/wxNumberEntryDialog.hpp +20 -0
- data/ext/wxPalette.cpp +214 -0
- data/ext/wxPalette.hpp +24 -0
- data/ext/wxPanel.cpp +77 -0
- data/ext/wxPanel.hpp +19 -0
- data/ext/wxPasswordEntryDialog.cpp +141 -0
- data/ext/wxPasswordEntryDialog.hpp +20 -0
- data/ext/wxPen.cpp +323 -0
- data/ext/wxPen.hpp +37 -0
- data/ext/wxPickerBase.cpp +121 -0
- data/ext/wxPickerBase.hpp +28 -0
- data/ext/wxPoint.cpp +224 -0
- data/ext/wxPoint.hpp +40 -0
- data/ext/wxPreferences.cpp +149 -0
- data/ext/wxPreferences.hpp +18 -0
- data/ext/wxProgressDialog.cpp +171 -0
- data/ext/wxProgressDialog.hpp +20 -0
- data/ext/wxProperty.cpp +723 -0
- data/ext/wxProperty.hpp +16 -0
- data/ext/wxPropertyCell.cpp +99 -0
- data/ext/wxPropertyCell.hpp +16 -0
- data/ext/wxPropertyGrid.cpp +234 -0
- data/ext/wxPropertyGrid.hpp +20 -0
- data/ext/wxPropertyGridInterface.cpp +146 -0
- data/ext/wxPropertyGridInterface.hpp +33 -0
- data/ext/wxPropertyGridManager.cpp +257 -0
- data/ext/wxPropertyGridManager.hpp +20 -0
- data/ext/wxPropertyGridPage.cpp +65 -0
- data/ext/wxPropertyGridPage.hpp +20 -0
- data/ext/wxRadioBox.cpp +405 -0
- data/ext/wxRadioBox.hpp +20 -0
- data/ext/wxRadioButton.cpp +107 -0
- data/ext/wxRadioButton.hpp +16 -0
- data/ext/wxRearrangeCtrl.cpp +89 -0
- data/ext/wxRearrangeCtrl.hpp +20 -0
- data/ext/wxRearrangeDialog.cpp +122 -0
- data/ext/wxRearrangeDialog.hpp +20 -0
- data/ext/wxRearrangeList.cpp +94 -0
- data/ext/wxRearrangeList.hpp +20 -0
- data/ext/wxRect.cpp +281 -0
- data/ext/wxRect.hpp +29 -0
- data/ext/wxRichMessageDialog.cpp +91 -0
- data/ext/wxRichMessageDialog.hpp +21 -0
- data/ext/wxRichTextAttr.cpp +69 -0
- data/ext/wxRichTextAttr.hpp +28 -0
- data/ext/wxRichTextCtrl.cpp +484 -0
- data/ext/wxRichTextCtrl.hpp +21 -0
- data/ext/wxRichTextStyle.cpp +86 -0
- data/ext/wxRichTextStyle.hpp +25 -0
- data/ext/wxRichTextStyleSheet.cpp +497 -0
- data/ext/wxRichTextStyleSheet.hpp +21 -0
- data/ext/wxSTC.cpp +331 -0
- data/ext/wxSTC.hpp +21 -0
- data/ext/wxScrollEvent.cpp +43 -0
- data/ext/wxScrollEvent.hpp +16 -0
- data/ext/wxSearchCtrl.cpp +189 -0
- data/ext/wxSearchCtrl.hpp +21 -0
- data/ext/wxSimpleBook.cpp +89 -0
- data/ext/wxSimpleBook.hpp +21 -0
- data/ext/wxSingleChoiceDialog.cpp +147 -0
- data/ext/wxSingleChoiceDialog.hpp +19 -0
- data/ext/wxSize.cpp +206 -0
- data/ext/wxSize.hpp +32 -0
- data/ext/wxSizer.cpp +368 -0
- data/ext/wxSizer.hpp +23 -0
- data/ext/wxSizerItem.cpp +37 -0
- data/ext/wxSizerItem.hpp +18 -0
- data/ext/wxSlider.cpp +204 -0
- data/ext/wxSlider.hpp +21 -0
- data/ext/wxSpinButton.cpp +158 -0
- data/ext/wxSpinButton.hpp +20 -0
- data/ext/wxSpinCtrl.cpp +132 -0
- data/ext/wxSpinCtrl.hpp +21 -0
- data/ext/wxStartUpTip.cpp +44 -0
- data/ext/wxStartUpTip.hpp +16 -0
- data/ext/wxStaticBitmap.cpp +79 -0
- data/ext/wxStaticBitmap.hpp +17 -0
- data/ext/wxStaticBitmapBase.cpp +46 -0
- data/ext/wxStaticBitmapBase.hpp +22 -0
- data/ext/wxStaticBitmapGeneric.cpp +82 -0
- data/ext/wxStaticBitmapGeneric.hpp +17 -0
- data/ext/wxStaticBox.cpp +92 -0
- data/ext/wxStaticBox.hpp +22 -0
- data/ext/wxStaticLine.cpp +100 -0
- data/ext/wxStaticLine.hpp +22 -0
- data/ext/wxStaticText.cpp +82 -0
- data/ext/wxStaticText.hpp +21 -0
- data/ext/wxStatusBar.cpp +417 -0
- data/ext/wxStatusBar.hpp +17 -0
- data/ext/wxStream.cpp +41 -0
- data/ext/wxStream.hpp +46 -0
- data/ext/wxTaskBar.cpp +104 -0
- data/ext/wxTaskBar.hpp +41 -0
- data/ext/wxTextArea.cpp +141 -0
- data/ext/wxTextArea.hpp +21 -0
- data/ext/wxTextAttr.cpp +320 -0
- data/ext/wxTextAttr.hpp +28 -0
- data/ext/wxTextCtrl.cpp +177 -0
- data/ext/wxTextCtrl.hpp +30 -0
- data/ext/wxTextEntry.cpp +248 -0
- data/ext/wxTextEntry.hpp +19 -0
- data/ext/wxTextEntryDialog.cpp +133 -0
- data/ext/wxTextEntryDialog.hpp +20 -0
- data/ext/wxTimePicker.cpp +105 -0
- data/ext/wxTimePicker.hpp +22 -0
- data/ext/wxTimer.cpp +106 -0
- data/ext/wxTimer.hpp +16 -0
- data/ext/wxToggleButton.cpp +96 -0
- data/ext/wxToggleButton.hpp +21 -0
- data/ext/wxToolBar.cpp +85 -0
- data/ext/wxToolBar.hpp +17 -0
- data/ext/wxToolBarBase.cpp +615 -0
- data/ext/wxToolBarBase.hpp +17 -0
- data/ext/wxToolBarTool.cpp +179 -0
- data/ext/wxToolBarTool.hpp +16 -0
- data/ext/wxToolBook.cpp +96 -0
- data/ext/wxToolBook.hpp +23 -0
- data/ext/wxToplevel.cpp +125 -0
- data/ext/wxToplevel.hpp +25 -0
- data/ext/wxTreeBook.cpp +240 -0
- data/ext/wxTreeBook.hpp +21 -0
- data/ext/wxTreeCtrl.cpp +443 -0
- data/ext/wxTreeCtrl.hpp +66 -0
- data/ext/wxVariant.cpp +65 -0
- data/ext/wxVariant.hpp +17 -0
- data/ext/wxWindow.cpp +980 -0
- data/ext/wxWindow.hpp +35 -0
- data/ext/wxWizard.cpp +321 -0
- data/ext/wxWizard.hpp +19 -0
- data/ext/wxWizardPage.cpp +137 -0
- data/ext/wxWizardPage.hpp +38 -0
- data/ext/wxXRC.cpp +48 -0
- data/ext/wxXRC.hpp +21 -0
- data/old_tests/button.rb +56 -0
- data/old_tests/file.png +0 -0
- data/old_tests/green.xpm +25 -0
- data/old_tests/new16x16.png +0 -0
- data/old_tests/project.xml +10 -0
- data/old_tests/propertygrid.rb +51 -0
- data/old_tests/red.xpm +25 -0
- data/old_tests/ruby32x32.png +0 -0
- data/old_tests/status.rb +45 -0
- data/old_tests/test.rb +580 -0
- data/old_tests/wizard.xrc +40 -0
- data/old_tests/xrc.rb +38 -0
- data/rwx.gemspec +43 -0
- data/samples/controls/controls.rb +143 -0
- data/samples/controls/icons/choice.bmp +0 -0
- data/samples/controls/icons/choice.xpm +27 -0
- data/samples/controls/icons/combo.bmp +0 -0
- data/samples/controls/icons/combo.xpm +27 -0
- data/samples/controls/icons/gauge.bmp +0 -0
- data/samples/controls/icons/gauge.xpm +27 -0
- data/samples/controls/icons/list.bmp +0 -0
- data/samples/controls/icons/list.xpm +27 -0
- data/samples/controls/icons/radio.bmp +0 -0
- data/samples/controls/icons/radio.xpm +27 -0
- data/samples/controls/icons/stattext.xpm +24 -0
- data/samples/controls/icons/text.bmp +0 -0
- data/samples/controls/icons/text.xpm +27 -0
- data/samples/dialog/dialog_sample.rb +227 -0
- data/samples/sample.xpm +44 -0
- data/samples/widgets/icons/bmpbtn.xpm +37 -0
- data/samples/widgets/icons/bmpcombobox.xpm +54 -0
- data/samples/widgets/icons/button.xpm +54 -0
- data/samples/widgets/icons/checkbox.xpm +54 -0
- data/samples/widgets/icons/choice.xpm +27 -0
- data/samples/widgets/icons/choicebk.xpm +54 -0
- data/samples/widgets/icons/clrpicker.xpm +193 -0
- data/samples/widgets/icons/combobox.xpm +54 -0
- data/samples/widgets/icons/datepick.xpm +200 -0
- data/samples/widgets/icons/dirctrl.xpm +54 -0
- data/samples/widgets/icons/dirpicker.xpm +213 -0
- data/samples/widgets/icons/filepicker.xpm +214 -0
- data/samples/widgets/icons/fontpicker.xpm +185 -0
- data/samples/widgets/icons/gauge.xpm +54 -0
- data/samples/widgets/icons/hyperlnk.xpm +54 -0
- data/samples/widgets/icons/listbook.xpm +54 -0
- data/samples/widgets/icons/listbox.xpm +54 -0
- data/samples/widgets/icons/notebook.xpm +54 -0
- data/samples/widgets/icons/odcombobox.xpm +54 -0
- data/samples/widgets/icons/radiobox.xpm +54 -0
- data/samples/widgets/icons/scrolbar.xpm +54 -0
- data/samples/widgets/icons/slider.xpm +54 -0
- data/samples/widgets/icons/spinbtn.xpm +40 -0
- data/samples/widgets/icons/statbmp.xpm +40 -0
- data/samples/widgets/icons/statbox.xpm +54 -0
- data/samples/widgets/icons/stattext.xpm +54 -0
- data/samples/widgets/icons/text.xpm +54 -0
- data/samples/widgets/icons/timepick.xpm +207 -0
- data/samples/widgets/icons/toggle.xpm +54 -0
- data/samples/widgets/pages/colorpicker.rb +66 -0
- data/samples/widgets/pages/common.rb +17 -0
- data/samples/widgets/widgets.rb +29 -0
- data/samples/xrc/samples.xrc +46 -0
- data/samples/xrc/xrc_sample.rb +59 -0
- data/test/test_color.rb +64 -0
- metadata +470 -0
data/ext/wxBitmap.hpp
ADDED
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* wxBitmap.hpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 16.02.2012
|
|
5
|
+
* Author: hanmac
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef WXBITMAP_HPP_
|
|
9
|
+
#define WXBITMAP_HPP_
|
|
10
|
+
|
|
11
|
+
#include "wxImage.hpp"
|
|
12
|
+
#include <wx/imaglist.h>
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
extern VALUE rb_cWXBitmap;
|
|
16
|
+
void Init_WXBitmap(VALUE rb_mWX);
|
|
17
|
+
|
|
18
|
+
template <>
|
|
19
|
+
VALUE wrap< wxBitmap >(const wxBitmap& bitmap );
|
|
20
|
+
|
|
21
|
+
template <>
|
|
22
|
+
VALUE wrap< wxBitmap >(wxBitmap *bitmap );
|
|
23
|
+
|
|
24
|
+
template <>
|
|
25
|
+
wxBitmap* unwrap< wxBitmap* >(const VALUE &vbitmap);
|
|
26
|
+
|
|
27
|
+
template <>
|
|
28
|
+
wxBitmap unwrap< wxBitmap >(const VALUE &vbitmap);
|
|
29
|
+
|
|
30
|
+
template <>
|
|
31
|
+
wxBitmap& unwrap< wxBitmap& >(const VALUE &vbitmap);
|
|
32
|
+
|
|
33
|
+
enum wrapBitmapType
|
|
34
|
+
{
|
|
35
|
+
WRAP_BITMAP_NULL,
|
|
36
|
+
WRAP_BITMAP_ID,
|
|
37
|
+
WRAP_BITMAP_RAISE
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
wxBitmap wrapBitmap(const VALUE &vbitmap,wxWindowID id,wrapBitmapType type,const wxArtClient &client);
|
|
41
|
+
|
|
42
|
+
template <>
|
|
43
|
+
VALUE wrap< wxIcon >(wxIcon *icon );
|
|
44
|
+
|
|
45
|
+
template <>
|
|
46
|
+
VALUE wrap< wxIcon >(const wxIcon &icon );
|
|
47
|
+
|
|
48
|
+
template <>
|
|
49
|
+
wxIcon* unwrap< wxIcon* >(const VALUE &vbitmap);
|
|
50
|
+
|
|
51
|
+
template <>
|
|
52
|
+
wxIcon unwrap< wxIcon >(const VALUE &vbitmap);
|
|
53
|
+
|
|
54
|
+
template <>
|
|
55
|
+
VALUE wrap< wxImageList >(wxImageList *imagelist );
|
|
56
|
+
|
|
57
|
+
template <>
|
|
58
|
+
wxImageList* unwrap< wxImageList* >(const VALUE &imagelist);
|
|
59
|
+
|
|
60
|
+
#endif /* WXBITMAP_HPP_ */
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* wxBitmapButton.cpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 14.05.2012
|
|
5
|
+
* Author: hanmac
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#include "wxBitmapButton.hpp"
|
|
9
|
+
|
|
10
|
+
VALUE rb_cWXBitmapButton;
|
|
11
|
+
#if wxUSE_BMPBUTTON
|
|
12
|
+
#define _self unwrap<wxBitmapButton*>(self)
|
|
13
|
+
|
|
14
|
+
namespace RubyWX {
|
|
15
|
+
namespace BitmapButton {
|
|
16
|
+
|
|
17
|
+
APP_PROTECT(wxBitmapButton)
|
|
18
|
+
|
|
19
|
+
/*
|
|
20
|
+
* call-seq:
|
|
21
|
+
* BitmapButton.new(parent, name, [options])
|
|
22
|
+
* BitmapButton.new(parent, [options])
|
|
23
|
+
*
|
|
24
|
+
* creates a new BitmapButton widget.
|
|
25
|
+
* ===Arguments
|
|
26
|
+
* * parent of this window or nil
|
|
27
|
+
* * name is a String describing a resource in a loaded xrc
|
|
28
|
+
*
|
|
29
|
+
* *options: Hash with possible options to set:
|
|
30
|
+
* * bitmap WX::Bitmap
|
|
31
|
+
*/
|
|
32
|
+
DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
|
|
33
|
+
{
|
|
34
|
+
VALUE parent,name,hash;
|
|
35
|
+
rb_scan_args(argc, argv, "11:",&parent,&name,&hash);
|
|
36
|
+
if(!_created && !rb_obj_is_kind_of(name,rb_cString)) {
|
|
37
|
+
wxWindowID id(wxID_ANY);
|
|
38
|
+
wxBitmap bitmap(wxNullBitmap);
|
|
39
|
+
|
|
40
|
+
if(rb_obj_is_kind_of(hash,rb_cHash)) {
|
|
41
|
+
VALUE temp;
|
|
42
|
+
set_hash_option(hash,"id",id,unwrapID);
|
|
43
|
+
|
|
44
|
+
temp = rb_hash_aref(hash,ID2SYM(rb_intern("bitmap")));
|
|
45
|
+
bitmap = wrapBitmap(temp,id,WRAP_BITMAP_ID,wxART_BUTTON);
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
_self->Create(unwrap<wxWindow*>(parent),id,bitmap);
|
|
49
|
+
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
rb_call_super(argc,argv);
|
|
53
|
+
return self;
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
#endif
|
|
60
|
+
|
|
61
|
+
DLL_LOCAL void Init_WXBitmapButton(VALUE rb_mWX)
|
|
62
|
+
{
|
|
63
|
+
#if 0
|
|
64
|
+
rb_mWX = rb_define_module("WX");
|
|
65
|
+
rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
|
|
66
|
+
rb_cWXControl = rb_define_class_under(rb_mWX,"Control",rb_cWXWindow);
|
|
67
|
+
rb_cWXAnyButton = rb_define_class_under(rb_mWX,"AnyButton",rb_cWXControl);
|
|
68
|
+
|
|
69
|
+
rb_cWXButton = rb_define_class_under(rb_mWX,"Button",rb_cWXAnyButton);
|
|
70
|
+
#endif
|
|
71
|
+
|
|
72
|
+
#if wxUSE_BMPBUTTON
|
|
73
|
+
using namespace RubyWX::BitmapButton;
|
|
74
|
+
rb_cWXBitmapButton = rb_define_class_under(rb_mWX,"BitmapButton",rb_cWXButton);
|
|
75
|
+
rb_define_alloc_func(rb_cWXBitmapButton,_alloc);
|
|
76
|
+
|
|
77
|
+
rb_define_method(rb_cWXBitmapButton,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
|
|
78
|
+
|
|
79
|
+
registerInfo<wxBitmapButton>(rb_cWXBitmapButton);
|
|
80
|
+
#endif
|
|
81
|
+
}
|
|
82
|
+
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* wxBitmapButton.hpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 14.05.2012
|
|
5
|
+
* Author: hanmac
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef WXBITMAPBUTTON_HPP_
|
|
9
|
+
#define WXBITMAPBUTTON_HPP_
|
|
10
|
+
|
|
11
|
+
#include "wxButton.hpp"
|
|
12
|
+
|
|
13
|
+
extern VALUE rb_cWXBitmapButton;
|
|
14
|
+
|
|
15
|
+
void Init_WXBitmapButton(VALUE rb_mWX);
|
|
16
|
+
|
|
17
|
+
#endif /* WXBITMAPBUTTON_HPP_ */
|
|
@@ -0,0 +1,284 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* wxBitmapComboBox.cpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 21.06.2014
|
|
5
|
+
* Author: hanmac
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#include "wxEvtHandler.hpp"
|
|
9
|
+
#include "wxItemContainer.hpp"
|
|
10
|
+
#include "wxTextEntry.hpp"
|
|
11
|
+
#include "wxBitmapComboBox.hpp"
|
|
12
|
+
#include "wxChoice.hpp"
|
|
13
|
+
#include "wxTextCtrl.hpp"
|
|
14
|
+
|
|
15
|
+
VALUE rb_cWXBitmapComboBox;
|
|
16
|
+
|
|
17
|
+
#if wxUSE_BITMAPCOMBOBOX
|
|
18
|
+
#define _self unwrap<wxBitmapComboBox*>(self)
|
|
19
|
+
|
|
20
|
+
namespace RubyWX {
|
|
21
|
+
namespace BitmapComboBox {
|
|
22
|
+
|
|
23
|
+
APP_PROTECT(wxBitmapComboBox)
|
|
24
|
+
|
|
25
|
+
//need to define it again to prevent Shadowing
|
|
26
|
+
singlefunc(Clear)
|
|
27
|
+
|
|
28
|
+
singlefunc(Popup)
|
|
29
|
+
singlefunc(Dismiss)
|
|
30
|
+
|
|
31
|
+
singlereturn(IsListEmpty)
|
|
32
|
+
singlereturn(IsTextEmpty)
|
|
33
|
+
|
|
34
|
+
/*
|
|
35
|
+
* call-seq:
|
|
36
|
+
* BitmapComboBox.new(parent, name, [options])
|
|
37
|
+
* BitmapComboBox.new(parent, [options])
|
|
38
|
+
*
|
|
39
|
+
* creates a new BitmapComboBox widget.
|
|
40
|
+
* ===Arguments
|
|
41
|
+
* * parent of this window or nil
|
|
42
|
+
* * name is a String describing a resource in a loaded xrc
|
|
43
|
+
*
|
|
44
|
+
* *options: Hash with possible options to set:
|
|
45
|
+
* * items [String]
|
|
46
|
+
* * select Integer
|
|
47
|
+
* * value String
|
|
48
|
+
*/
|
|
49
|
+
DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
|
|
50
|
+
{
|
|
51
|
+
VALUE parent,name,hash;
|
|
52
|
+
rb_scan_args(argc, argv, "11:",&parent,&name,&hash);
|
|
53
|
+
|
|
54
|
+
if(!_created && !rb_obj_is_kind_of(name,rb_cString)) {
|
|
55
|
+
wxWindowID id(wxID_ANY);
|
|
56
|
+
wxString value;
|
|
57
|
+
wxArrayString choices;
|
|
58
|
+
int style(0);
|
|
59
|
+
int selection(-1);
|
|
60
|
+
|
|
61
|
+
bool selflag(false);
|
|
62
|
+
|
|
63
|
+
if(rb_obj_is_kind_of(hash,rb_cHash)) {
|
|
64
|
+
set_hash_option(hash,"id",id,unwrapID);
|
|
65
|
+
set_hash_option(hash,"value",value);
|
|
66
|
+
set_hash_option(hash,"items",choices);
|
|
67
|
+
set_hash_option(hash,"style",style);
|
|
68
|
+
selflag = set_hash_option(hash,"selection",selection);
|
|
69
|
+
|
|
70
|
+
Choice::set_style_flags(hash,style);
|
|
71
|
+
TextCtrl::set_style_flags(hash,style);
|
|
72
|
+
}
|
|
73
|
+
_self->Create(
|
|
74
|
+
unwrap<wxWindow*>(parent),id,value,
|
|
75
|
+
wxDefaultPosition,wxDefaultSize,
|
|
76
|
+
choices,style
|
|
77
|
+
);
|
|
78
|
+
|
|
79
|
+
if(selflag && check_index(selection,_self->GetCount()))
|
|
80
|
+
_self->SetSelection(selection);
|
|
81
|
+
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
rb_call_super(argc,argv);
|
|
85
|
+
|
|
86
|
+
if(rb_obj_is_kind_of(hash,rb_cHash)) {
|
|
87
|
+
VALUE temp;
|
|
88
|
+
set_option(items,,wxArrayString)
|
|
89
|
+
set_option(select,Selection,int)
|
|
90
|
+
set_option(value,Value,wxString)
|
|
91
|
+
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
return self;
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
singlereturn(GetCount)
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
/*
|
|
101
|
+
* call-seq:
|
|
102
|
+
* each_item_bitmap -> Enumerator
|
|
103
|
+
* each_item_bitmap { | text, bitmap| } -> self
|
|
104
|
+
*
|
|
105
|
+
* iterates the items of this control.
|
|
106
|
+
* ===Return value
|
|
107
|
+
* self
|
|
108
|
+
*
|
|
109
|
+
*/
|
|
110
|
+
DLL_LOCAL VALUE _each_bitmap(VALUE self)
|
|
111
|
+
{
|
|
112
|
+
RETURN_SIZED_ENUMERATOR(self,0,NULL,RUBY_METHOD_FUNC(_GetCount));
|
|
113
|
+
for(std::size_t i = 0; i < _self->GetCount(); ++i)
|
|
114
|
+
rb_yield_values(2,wrap(_self->GetString(i)),wrap(_self->GetItemBitmap(i)));
|
|
115
|
+
return self;
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
/*
|
|
119
|
+
* call-seq:
|
|
120
|
+
* get_item_bitmap(pos) -> WX::Bitmap
|
|
121
|
+
*
|
|
122
|
+
* returns the Bitmap of the item at the given position.
|
|
123
|
+
* ===Arguments
|
|
124
|
+
* * pos of the item. Integer
|
|
125
|
+
* ===Return value
|
|
126
|
+
* WX::Bitmap
|
|
127
|
+
* === Exceptions
|
|
128
|
+
* [IndexError]
|
|
129
|
+
* * pos is greater than the count of items
|
|
130
|
+
*
|
|
131
|
+
*/
|
|
132
|
+
DLL_LOCAL VALUE _getItemBitmap(VALUE self,VALUE idx)
|
|
133
|
+
{
|
|
134
|
+
int cidx = NUM2INT(idx);
|
|
135
|
+
if(check_index(cidx,_self->GetCount()))
|
|
136
|
+
return wrap(_self->GetItemBitmap(cidx));
|
|
137
|
+
return Qnil;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
/*
|
|
141
|
+
* call-seq:
|
|
142
|
+
* set_item_bitmap(pos,text) -> self
|
|
143
|
+
*
|
|
144
|
+
* sets the Bitmap of the item at the given position.
|
|
145
|
+
* ===Arguments
|
|
146
|
+
* * pos of the item. Integer
|
|
147
|
+
* * text of the item. String
|
|
148
|
+
* ===Return value
|
|
149
|
+
* self
|
|
150
|
+
* === Exceptions
|
|
151
|
+
* [IndexError]
|
|
152
|
+
* * pos is greater than the count of items
|
|
153
|
+
*
|
|
154
|
+
*/
|
|
155
|
+
DLL_LOCAL VALUE _setItemBitmap(VALUE self,VALUE idx,VALUE val)
|
|
156
|
+
{
|
|
157
|
+
rb_check_frozen(self);
|
|
158
|
+
|
|
159
|
+
int cidx = NUM2INT(idx);
|
|
160
|
+
if(check_index(cidx,_self->GetCount()))
|
|
161
|
+
_self->SetItemBitmap(cidx,unwrap<wxBitmap>(val));
|
|
162
|
+
|
|
163
|
+
return self;
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
#endif
|
|
170
|
+
|
|
171
|
+
/* Document-method: clear
|
|
172
|
+
* call-seq:
|
|
173
|
+
* clear -> self
|
|
174
|
+
*
|
|
175
|
+
* Removes all items from the control.
|
|
176
|
+
* ===Return value
|
|
177
|
+
* self
|
|
178
|
+
*/
|
|
179
|
+
/* Document-method: popup
|
|
180
|
+
* call-seq:
|
|
181
|
+
* popup -> self
|
|
182
|
+
*
|
|
183
|
+
* Shows the list box portion of the combo box.
|
|
184
|
+
* ===Return value
|
|
185
|
+
* self
|
|
186
|
+
*/
|
|
187
|
+
/* Document-method: dismiss
|
|
188
|
+
* call-seq:
|
|
189
|
+
* dismiss -> self
|
|
190
|
+
*
|
|
191
|
+
* Hides the list box portion of the combo box.
|
|
192
|
+
* ===Return value
|
|
193
|
+
* self
|
|
194
|
+
*/
|
|
195
|
+
/* Document-method: list_empty?
|
|
196
|
+
* call-seq:
|
|
197
|
+
* list_empty? -> true/false
|
|
198
|
+
*
|
|
199
|
+
* Returns true if the list of combobox choices is empty.
|
|
200
|
+
* ===Return value
|
|
201
|
+
* true/false
|
|
202
|
+
*/
|
|
203
|
+
/* Document-method: text_empty?
|
|
204
|
+
* call-seq:
|
|
205
|
+
* text_empty? -> true/false
|
|
206
|
+
*
|
|
207
|
+
* Returns true if the text of the combobox is empty.
|
|
208
|
+
* ===Return value
|
|
209
|
+
* true/false
|
|
210
|
+
*/
|
|
211
|
+
|
|
212
|
+
/* Document-const: SORT
|
|
213
|
+
* Sorts the entries alphabetically.
|
|
214
|
+
*/
|
|
215
|
+
/* Document-const: READONLY
|
|
216
|
+
* The text will not be user-editable.
|
|
217
|
+
*/
|
|
218
|
+
/* Document-const: DROPDOWN
|
|
219
|
+
* Creates a combobox with a drop-down list.
|
|
220
|
+
*/
|
|
221
|
+
|
|
222
|
+
/* Document-const: MULTILINE
|
|
223
|
+
* The text control allows multiple lines. If this style is not specified, line break characters should not be used in the controls value.
|
|
224
|
+
*/
|
|
225
|
+
/* Document-const: PROCESS_TAB
|
|
226
|
+
* The control will receive :char events for TAB pressed - normally, TAB is used for passing to the next control in a dialog instead. For the control created with this style, you can still use Ctrl-Enter to pass to the next control from the keyboard.
|
|
227
|
+
*/
|
|
228
|
+
/* Document-const: PROCESS_ENTER
|
|
229
|
+
* The control will generate the event :text_enter (otherwise pressing Enter key is either processed internally by the control or used for navigation between dialog controls).
|
|
230
|
+
*/
|
|
231
|
+
/* Document-const: PASSWORD
|
|
232
|
+
* The text will be echoed as asterisks.
|
|
233
|
+
*/
|
|
234
|
+
DLL_LOCAL void Init_WXBitmapComboBox(VALUE rb_mWX)
|
|
235
|
+
{
|
|
236
|
+
#if 0
|
|
237
|
+
rb_mWX = rb_define_module("WX");
|
|
238
|
+
rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
|
|
239
|
+
|
|
240
|
+
rb_cWXControl = rb_define_class_under(rb_mWX,"Control",rb_cWXWindow);
|
|
241
|
+
rb_mWXItemContainer = rb_define_module_under(rb_mWX,"ItemContainer");
|
|
242
|
+
rb_mWXTextEntry = rb_define_module_under(rb_mWX,"TextEntry");
|
|
243
|
+
#endif
|
|
244
|
+
#if wxUSE_COMBOBOX
|
|
245
|
+
using namespace RubyWX::BitmapComboBox;
|
|
246
|
+
rb_cWXBitmapComboBox = rb_define_class_under(rb_mWX,"BitmapComboBox",rb_cWXControl);
|
|
247
|
+
rb_define_alloc_func(rb_cWXBitmapComboBox,_alloc);
|
|
248
|
+
|
|
249
|
+
rb_define_method(rb_cWXBitmapComboBox,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
|
|
250
|
+
|
|
251
|
+
rb_define_method(rb_cWXBitmapComboBox,"clear",RUBY_METHOD_FUNC(_Clear),0);
|
|
252
|
+
rb_define_method(rb_cWXBitmapComboBox,"popup",RUBY_METHOD_FUNC(_Popup),0);
|
|
253
|
+
rb_define_method(rb_cWXBitmapComboBox,"dismiss",RUBY_METHOD_FUNC(_Dismiss),0);
|
|
254
|
+
|
|
255
|
+
rb_undef_method(rb_cWXBitmapComboBox,"empty?");
|
|
256
|
+
|
|
257
|
+
rb_define_method(rb_cWXBitmapComboBox,"list_empty?",RUBY_METHOD_FUNC(_IsListEmpty),0);
|
|
258
|
+
rb_define_method(rb_cWXBitmapComboBox,"text_empty?",RUBY_METHOD_FUNC(_IsTextEmpty),0);
|
|
259
|
+
|
|
260
|
+
rb_include_module(rb_cWXBitmapComboBox,rb_mWXItemContainer);
|
|
261
|
+
rb_include_module(rb_cWXBitmapComboBox,rb_mWXTextEntry);
|
|
262
|
+
|
|
263
|
+
rb_define_method(rb_cWXBitmapComboBox,"get_item_bitmap",RUBY_METHOD_FUNC(_getItemBitmap),1);
|
|
264
|
+
rb_define_method(rb_cWXBitmapComboBox,"set_item_bitmap",RUBY_METHOD_FUNC(_setItemBitmap),2);
|
|
265
|
+
rb_define_method(rb_cWXBitmapComboBox,"each_item_bitmap",RUBY_METHOD_FUNC(_each_bitmap),0);
|
|
266
|
+
|
|
267
|
+
|
|
268
|
+
//define Choice constants
|
|
269
|
+
rb_define_const(rb_cWXBitmapComboBox,"SORT",INT2NUM(wxCB_SORT));
|
|
270
|
+
rb_define_const(rb_cWXBitmapComboBox,"READONLY",INT2NUM(wxCB_READONLY));
|
|
271
|
+
rb_define_const(rb_cWXBitmapComboBox,"DROPDOWN",INT2NUM(wxCB_DROPDOWN));
|
|
272
|
+
|
|
273
|
+
//define TextCtrl constants
|
|
274
|
+
rb_define_const(rb_cWXBitmapComboBox,"MULTILINE",INT2NUM(wxTE_MULTILINE));
|
|
275
|
+
rb_define_const(rb_cWXBitmapComboBox,"PROCESS_TAB",INT2NUM(wxTE_PROCESS_TAB));
|
|
276
|
+
rb_define_const(rb_cWXBitmapComboBox,"PROCESS_ENTER",INT2NUM(wxTE_PROCESS_ENTER));
|
|
277
|
+
rb_define_const(rb_cWXBitmapComboBox,"PASSWORD",INT2NUM(wxTE_PASSWORD));
|
|
278
|
+
|
|
279
|
+
registerInfo<wxBitmapComboBox>(rb_cWXBitmapComboBox);
|
|
280
|
+
|
|
281
|
+
#endif
|
|
282
|
+
|
|
283
|
+
}
|
|
284
|
+
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* wxBitmapComboBox.hpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 21.06.2014
|
|
5
|
+
* Author: hanmac
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef WXBITMAPCOMBOBOX_HPP_
|
|
9
|
+
#define WXBITMAPCOMBOBOX_HPP_
|
|
10
|
+
|
|
11
|
+
#include "main.hpp"
|
|
12
|
+
|
|
13
|
+
extern VALUE rb_cWXBitmapComboBox;
|
|
14
|
+
|
|
15
|
+
void Init_WXBitmapComboBox(VALUE rb_mWX);
|
|
16
|
+
|
|
17
|
+
#if wxUSE_BITMAPCOMBOBOX
|
|
18
|
+
#include <wx/bmpcbox.h>
|
|
19
|
+
#endif
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
#endif /* WXBITMAPCOMBOBOX_HPP_ */
|