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/wxDataView.hpp
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* wxDataView.hpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 24.03.2012
|
|
5
|
+
* Author: hanmac
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef WXDATAVIEW_HPP_
|
|
9
|
+
#define WXDATAVIEW_HPP_
|
|
10
|
+
|
|
11
|
+
#include "wxControl.hpp"
|
|
12
|
+
|
|
13
|
+
extern VALUE rb_cWXDataView;
|
|
14
|
+
|
|
15
|
+
void Init_WXDataView(VALUE rb_mWX);
|
|
16
|
+
#if wxUSE_DATAVIEWCTRL
|
|
17
|
+
#include <wx/dataview.h>
|
|
18
|
+
|
|
19
|
+
class DataViewClientHolder
|
|
20
|
+
{
|
|
21
|
+
public:
|
|
22
|
+
wxClientData *getClientValue( const wxDataViewItem& item) const;
|
|
23
|
+
void setClientValue( const wxDataViewItem& item, wxClientData *data );
|
|
24
|
+
private:
|
|
25
|
+
std::map<wxDataViewItem,wxClientData*> m_clientvalues;
|
|
26
|
+
};
|
|
27
|
+
|
|
28
|
+
class RubyDataViewNotifier : public wxDataViewModelNotifier
|
|
29
|
+
{
|
|
30
|
+
public:
|
|
31
|
+
bool ItemAdded( const wxDataViewItem &parent, const wxDataViewItem &item );
|
|
32
|
+
bool ItemDeleted( const wxDataViewItem &parent, const wxDataViewItem &item );
|
|
33
|
+
bool ItemChanged( const wxDataViewItem &item );
|
|
34
|
+
|
|
35
|
+
bool ValueChanged( const wxDataViewItem &item, unsigned int col );
|
|
36
|
+
bool Cleared();
|
|
37
|
+
|
|
38
|
+
void Resort();
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
VALUE wrap(wxDataViewModel *model, const wxDataViewItem& item);
|
|
42
|
+
|
|
43
|
+
#endif
|
|
44
|
+
|
|
45
|
+
#endif /* WXDATAVIEW_HPP_ */
|
|
@@ -0,0 +1,190 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* wxDataViewList.cpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 24.03.2012
|
|
5
|
+
* Author: hanmac
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
#include "wxDataViewList.hpp"
|
|
10
|
+
#include "wxVariant.hpp"
|
|
11
|
+
|
|
12
|
+
VALUE rb_cWXDataViewList;
|
|
13
|
+
|
|
14
|
+
#if wxUSE_DATAVIEWCTRL
|
|
15
|
+
|
|
16
|
+
class RubyDataViewListStore : public wxDataViewListStore, public DataViewClientHolder
|
|
17
|
+
{
|
|
18
|
+
public:
|
|
19
|
+
RubyDataViewListStore() : wxDataViewListStore(), DataViewClientHolder()
|
|
20
|
+
{
|
|
21
|
+
AddNotifier(new RubyDataViewNotifier);
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
|
|
25
|
+
namespace RubyWX {
|
|
26
|
+
namespace DataViewList {
|
|
27
|
+
#define _self unwrap<wxDataViewListCtrl*>(self)
|
|
28
|
+
//macro_attr(Path,wxString)
|
|
29
|
+
|
|
30
|
+
APP_PROTECT(wxDataViewListCtrl)
|
|
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
|
+
|
|
39
|
+
if(rb_obj_is_kind_of(hash,rb_cHash)) {
|
|
40
|
+
set_hash_option(hash,"id",id,unwrapID);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
_self->Create(unwrap<wxWindow*>(parent),id);
|
|
44
|
+
_self->AssociateModel(new RubyDataViewListStore);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
rb_call_super(argc,argv);
|
|
48
|
+
|
|
49
|
+
return self;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
singlefunc(DeleteAllItems);
|
|
53
|
+
|
|
54
|
+
DLL_LOCAL VALUE _AppendTextColumn(int argc,VALUE *argv,VALUE self)
|
|
55
|
+
{
|
|
56
|
+
VALUE label,hash;
|
|
57
|
+
rb_scan_args(argc, argv, "10",&label,&hash);
|
|
58
|
+
|
|
59
|
+
_self->AppendTextColumn(unwrap<wxString>(label));
|
|
60
|
+
return self;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
DLL_LOCAL VALUE _AppendToggleColumn(int argc,VALUE *argv,VALUE self)
|
|
64
|
+
{
|
|
65
|
+
VALUE label,hash;
|
|
66
|
+
rb_scan_args(argc, argv, "11",&label,&hash);
|
|
67
|
+
|
|
68
|
+
_self->AppendToggleColumn(unwrap<wxString>(label));
|
|
69
|
+
return self;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
DLL_LOCAL VALUE _AppendIconTextColumn(int argc,VALUE *argv,VALUE self)
|
|
73
|
+
{
|
|
74
|
+
VALUE label,hash;
|
|
75
|
+
rb_scan_args(argc, argv, "11",&label,&hash);
|
|
76
|
+
|
|
77
|
+
_self->AppendIconTextColumn(unwrap<wxString>(label));
|
|
78
|
+
return self;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
DLL_LOCAL VALUE _AppendProgressColumn(int argc,VALUE *argv,VALUE self)
|
|
82
|
+
{
|
|
83
|
+
VALUE label,hash;
|
|
84
|
+
rb_scan_args(argc, argv, "11",&label,&hash);
|
|
85
|
+
|
|
86
|
+
_self->AppendProgressColumn(unwrap<wxString>(label));
|
|
87
|
+
return self;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
|
|
91
|
+
DLL_LOCAL VALUE _AppendItem(int argc,VALUE *argv,VALUE self)
|
|
92
|
+
{
|
|
93
|
+
VALUE arg;
|
|
94
|
+
rb_scan_args(argc, argv, "*",&arg);
|
|
95
|
+
|
|
96
|
+
std::size_t count = _self->GetColumnCount();
|
|
97
|
+
if(count > (unsigned int)argc)
|
|
98
|
+
rb_raise(rb_eArgError,"to few arguments need more then %d.",(int)count);
|
|
99
|
+
|
|
100
|
+
wxVector<wxVariant> vecvar;
|
|
101
|
+
|
|
102
|
+
for(std::size_t i = 0; i < count;++i)
|
|
103
|
+
vecvar.push_back(unwrapVariant(RARRAY_AREF(arg,i),_self->GetColumn(i)->GetRenderer()->GetVariantType()));
|
|
104
|
+
_self->AppendItem(vecvar,0);
|
|
105
|
+
return wrap(_self->GetModel(),_self->GetStore()->GetItem(_self->GetStore()->GetCount() - 1));
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
DLL_LOCAL VALUE _PrependItem(int argc,VALUE *argv,VALUE self)
|
|
109
|
+
{
|
|
110
|
+
VALUE arg;
|
|
111
|
+
rb_scan_args(argc, argv, "*",&arg);
|
|
112
|
+
|
|
113
|
+
std::size_t count = _self->GetColumnCount();
|
|
114
|
+
if(count > (unsigned int)argc)
|
|
115
|
+
rb_raise(rb_eArgError,"to few arguments need more then %d.",(int)count);
|
|
116
|
+
|
|
117
|
+
wxVector<wxVariant> vecvar;
|
|
118
|
+
|
|
119
|
+
for(std::size_t i = 0; i < count;++i){
|
|
120
|
+
vecvar.push_back(unwrapVariant(RARRAY_AREF(arg,i),_self->GetColumn(i)->GetRenderer()->GetVariantType()));
|
|
121
|
+
}
|
|
122
|
+
_self->PrependItem(vecvar,0);
|
|
123
|
+
return wrap(_self->GetModel(),_self->GetStore()->GetItem(0));
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
DLL_LOCAL VALUE _InsertItem(int argc,VALUE *argv,VALUE self)
|
|
127
|
+
{
|
|
128
|
+
VALUE index,arg;
|
|
129
|
+
rb_scan_args(argc, argv, "1*",&index,&arg);
|
|
130
|
+
|
|
131
|
+
std::size_t count = _self->GetColumnCount() ;
|
|
132
|
+
if((count + 1) > (unsigned int)argc)
|
|
133
|
+
rb_raise(rb_eArgError,"to few arguments need more then %d.",(int)count + 1);
|
|
134
|
+
|
|
135
|
+
wxVector<wxVariant> vecvar;
|
|
136
|
+
|
|
137
|
+
for(std::size_t i = 0; i < count;++i)
|
|
138
|
+
vecvar.push_back(unwrapVariant(RARRAY_AREF(arg,i),_self->GetModel()->GetColumnType(i)));
|
|
139
|
+
_self->InsertItem(NUM2INT(index),vecvar,0);
|
|
140
|
+
return wrap(_self->GetModel(),_self->GetStore()->GetItem(index));
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
#endif
|
|
151
|
+
DLL_LOCAL void Init_WXDataViewList(VALUE rb_mWX)
|
|
152
|
+
{
|
|
153
|
+
#if 0
|
|
154
|
+
rb_mWX = rb_define_module("WX");
|
|
155
|
+
rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
|
|
156
|
+
|
|
157
|
+
rb_cWXControl = rb_define_class_under(rb_mWX,"Control",rb_cWXWindow);
|
|
158
|
+
rb_cWXDataView = rb_define_class_under(rb_mWX,"DataView",rb_cWXControl);
|
|
159
|
+
|
|
160
|
+
#endif
|
|
161
|
+
#if wxUSE_DATAVIEWCTRL
|
|
162
|
+
using namespace RubyWX::DataViewList;
|
|
163
|
+
rb_cWXDataViewList = rb_define_class_under(rb_mWX,"DataViewList",rb_cWXDataView);
|
|
164
|
+
rb_define_alloc_func(rb_cWXDataViewList,_alloc);
|
|
165
|
+
|
|
166
|
+
rb_define_method(rb_cWXDataViewList,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
|
|
167
|
+
|
|
168
|
+
// rb_define_method(rb_cWXDataViewList,"append_text_column",RUBY_METHOD_FUNC(_AppendTextColumn),-1);
|
|
169
|
+
// rb_define_method(rb_cWXDataViewList,"append_toggle_column",RUBY_METHOD_FUNC(_AppendToggleColumn),-1);
|
|
170
|
+
// rb_define_method(rb_cWXDataViewList,"append_icontext_column",RUBY_METHOD_FUNC(_AppendIconTextColumn),-1);
|
|
171
|
+
// rb_define_method(rb_cWXDataViewList,"append_progress_column",RUBY_METHOD_FUNC(_AppendProgressColumn),-1);
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
rb_define_method(rb_cWXDataViewList,"append_item",RUBY_METHOD_FUNC(_AppendItem),-1);
|
|
175
|
+
rb_define_method(rb_cWXDataViewList,"prepend_item",RUBY_METHOD_FUNC(_PrependItem),-1);
|
|
176
|
+
rb_define_method(rb_cWXDataViewList,"insert_item",RUBY_METHOD_FUNC(_InsertItem),-1);
|
|
177
|
+
|
|
178
|
+
rb_define_method(rb_cWXDataViewList,"delete_items",RUBY_METHOD_FUNC(_DeleteAllItems),0);
|
|
179
|
+
|
|
180
|
+
|
|
181
|
+
// rb_define_attr_method(rb_cWXDataView,"path",_getPath,_setPath);
|
|
182
|
+
|
|
183
|
+
registerInfo< wxDataViewListCtrl >(rb_cWXDataViewList);
|
|
184
|
+
|
|
185
|
+
#endif
|
|
186
|
+
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
|
|
190
|
+
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* wxDataViewList.hpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 24.03.2012
|
|
5
|
+
* Author: hanmac
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef WXDATAVIEWLIST_HPP_
|
|
9
|
+
#define WXDATAVIEWLIST_HPP_
|
|
10
|
+
|
|
11
|
+
#include "wxDataView.hpp"
|
|
12
|
+
|
|
13
|
+
extern VALUE rb_cWXDataViewList;
|
|
14
|
+
|
|
15
|
+
void Init_WXDataViewList(VALUE rb_mWX);
|
|
16
|
+
|
|
17
|
+
#endif /* WXDATAVIEWLIST_HPP_ */
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* wxDatePickerCtrl.cpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 02.03.2012
|
|
5
|
+
* Author: hanmac
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
#include "wxDatePicker.hpp"
|
|
10
|
+
|
|
11
|
+
VALUE rb_cWXDatePicker;
|
|
12
|
+
|
|
13
|
+
#if wxUSE_DATEPICKCTRL
|
|
14
|
+
#define _self unwrap<wxDatePickerCtrl*>(self)
|
|
15
|
+
|
|
16
|
+
namespace RubyWX {
|
|
17
|
+
namespace DatePicker {
|
|
18
|
+
macro_attr(Value,wxDateTime)
|
|
19
|
+
|
|
20
|
+
APP_PROTECT(wxDatePickerCtrl)
|
|
21
|
+
|
|
22
|
+
/*
|
|
23
|
+
* call-seq:
|
|
24
|
+
* DatePicker.new(parent, name, [options])
|
|
25
|
+
* DatePicker.new(parent, [options])
|
|
26
|
+
*
|
|
27
|
+
* creates a new DatePicker widget.
|
|
28
|
+
* ===Arguments
|
|
29
|
+
* * parent of this window or nil
|
|
30
|
+
* * name is a String describing a resource in a loaded xrc
|
|
31
|
+
*
|
|
32
|
+
* *options: Hash with possible options to set
|
|
33
|
+
*
|
|
34
|
+
*/
|
|
35
|
+
DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
|
|
36
|
+
{
|
|
37
|
+
VALUE parent,name,hash;
|
|
38
|
+
rb_scan_args(argc, argv, "11:",&parent,&name,&hash);
|
|
39
|
+
if(!_created && !rb_obj_is_kind_of(name,rb_cString)) {
|
|
40
|
+
wxWindowID id(wxID_ANY);
|
|
41
|
+
wxDateTime date(wxDefaultDateTime);
|
|
42
|
+
int style(wxDP_DEFAULT | wxDP_SHOWCENTURY);
|
|
43
|
+
|
|
44
|
+
if(rb_obj_is_kind_of(hash,rb_cHash)) {
|
|
45
|
+
set_hash_option(hash,"id",id,unwrapID);
|
|
46
|
+
set_hash_option(hash,"date",date);
|
|
47
|
+
set_hash_option(hash,"style",style);
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
_self->Create(
|
|
51
|
+
unwrap<wxWindow*>(parent),id,date,
|
|
52
|
+
wxDefaultPosition,wxDefaultSize,
|
|
53
|
+
style
|
|
54
|
+
);
|
|
55
|
+
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
rb_call_super(argc,argv);
|
|
59
|
+
|
|
60
|
+
if(rb_obj_is_kind_of(name,rb_cString) &&
|
|
61
|
+
rb_obj_is_kind_of(hash,rb_cHash))
|
|
62
|
+
{
|
|
63
|
+
VALUE temp;
|
|
64
|
+
set_option(date,Value,wxDateTime)
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
rb_call_super(argc,argv);
|
|
68
|
+
return self;
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
#endif
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
/* Document-attr: value
|
|
77
|
+
* the value of the DatePicker. Time
|
|
78
|
+
*/
|
|
79
|
+
DLL_LOCAL void Init_WXDatePicker(VALUE rb_mWX)
|
|
80
|
+
{
|
|
81
|
+
#if 0
|
|
82
|
+
rb_mWX = rb_define_module("WX");
|
|
83
|
+
rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
|
|
84
|
+
|
|
85
|
+
rb_cWXControl = rb_define_class_under(rb_mWX,"Control",rb_cWXWindow);
|
|
86
|
+
rb_define_attr(rb_cWXDatePicker,"value",1,1);
|
|
87
|
+
#endif
|
|
88
|
+
|
|
89
|
+
#if wxUSE_DATEPICKCTRL
|
|
90
|
+
using namespace RubyWX::DatePicker;
|
|
91
|
+
rb_cWXDatePicker = rb_define_class_under(rb_mWX,"DatePicker",rb_cWXControl);
|
|
92
|
+
rb_define_alloc_func(rb_cWXDatePicker,_alloc);
|
|
93
|
+
|
|
94
|
+
rb_define_method(rb_cWXDatePicker,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
|
|
95
|
+
|
|
96
|
+
rb_define_attr_method(rb_cWXDatePicker,"value",_getValue,_setValue);
|
|
97
|
+
|
|
98
|
+
registerInfo<wxDatePickerCtrl>(rb_cWXDatePicker);
|
|
99
|
+
#endif
|
|
100
|
+
|
|
101
|
+
}
|
|
102
|
+
|
|
103
|
+
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* wxDatePickerCtrl.hpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 15.12.2013
|
|
5
|
+
* Author: hanmac
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#ifndef WXDATEPICKER_HPP_
|
|
9
|
+
#define WXDATEPICKER_HPP_
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
#include "wxPickerBase.hpp"
|
|
13
|
+
|
|
14
|
+
extern VALUE rb_cWXDatePicker;
|
|
15
|
+
|
|
16
|
+
void Init_WXDatePicker(VALUE rb_mWX);
|
|
17
|
+
|
|
18
|
+
#if wxUSE_DATEPICKCTRL
|
|
19
|
+
#include <wx/datectrl.h>
|
|
20
|
+
#endif
|
|
21
|
+
|
|
22
|
+
#endif /* WXDATEPICKER_HPP_ */
|
data/ext/wxDialog.cpp
ADDED
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* wxDialog.cpp
|
|
3
|
+
*
|
|
4
|
+
* Created on: 12.02.2012
|
|
5
|
+
* Author: hanmac
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
#include "wxEvtHandler.hpp"
|
|
9
|
+
#include "wxSizer.hpp"
|
|
10
|
+
|
|
11
|
+
VALUE rb_cWXDialog;
|
|
12
|
+
|
|
13
|
+
#define _self unwrap<wxDialog*>(self)
|
|
14
|
+
|
|
15
|
+
namespace RubyWX {
|
|
16
|
+
namespace Dialog {
|
|
17
|
+
|
|
18
|
+
APP_PROTECT(wxDialog)
|
|
19
|
+
|
|
20
|
+
macro_attr_with_func(EscapeId,wrapID,unwrapID)
|
|
21
|
+
macro_attr_with_func(ReturnCode,wrapID,unwrapID)
|
|
22
|
+
macro_attr_with_func(AffirmativeId,wrapID,unwrapID)
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
/*
|
|
26
|
+
* call-seq:
|
|
27
|
+
* Dialog.new(parent, name, [options])
|
|
28
|
+
* Dialog.new(parent, [options])
|
|
29
|
+
*
|
|
30
|
+
* creates a new Dialog widget.
|
|
31
|
+
* ===Arguments
|
|
32
|
+
* * parent of this window or nil
|
|
33
|
+
* * name is a String describing a resource in a loaded xrc
|
|
34
|
+
*
|
|
35
|
+
* *options: Hash with possible options to set
|
|
36
|
+
*
|
|
37
|
+
*/
|
|
38
|
+
DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
|
|
39
|
+
{
|
|
40
|
+
VALUE parent,name,hash;
|
|
41
|
+
rb_scan_args(argc, argv, "11:",&parent,&name,&hash);
|
|
42
|
+
if(!_created && !rb_obj_is_kind_of(name,rb_cString)){
|
|
43
|
+
wxWindowID id(wxID_ANY);
|
|
44
|
+
wxString title(wxEmptyString);
|
|
45
|
+
int style(wxDEFAULT_DIALOG_STYLE);
|
|
46
|
+
|
|
47
|
+
if(rb_obj_is_kind_of(name,rb_cHash))
|
|
48
|
+
{
|
|
49
|
+
set_hash_option(name,"id",id,unwrapID);
|
|
50
|
+
set_hash_option(name,"title",title);
|
|
51
|
+
set_hash_option(name,"style",style);
|
|
52
|
+
|
|
53
|
+
TopLevel::set_style_flags(hash,style);
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
_self->Create(unwrap<wxWindow*>(parent),id,title,wxDefaultPosition,wxDefaultSize,style);
|
|
57
|
+
|
|
58
|
+
}
|
|
59
|
+
rb_call_super(argc,argv);
|
|
60
|
+
return self;
|
|
61
|
+
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
DLL_LOCAL VALUE _ShowModal(VALUE self)
|
|
65
|
+
{
|
|
66
|
+
return wrapID(_self->ShowModal());
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
DLL_LOCAL VALUE _EndModal(VALUE self,VALUE id)
|
|
70
|
+
{
|
|
71
|
+
_self->EndModal(unwrapID(id));
|
|
72
|
+
return self;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
DLL_LOCAL VALUE _CreateButtonSizer(VALUE self,VALUE flags)
|
|
77
|
+
{
|
|
78
|
+
return wrap(_self->CreateButtonSizer(unwrap_buttonflag(flags)));
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
#if wxUSE_STATTEXT
|
|
82
|
+
|
|
83
|
+
DLL_LOCAL VALUE _CreateTextSizer(VALUE self,VALUE text)
|
|
84
|
+
{
|
|
85
|
+
return wrap(_self->CreateTextSizer(unwrap<wxString>(text)));
|
|
86
|
+
}
|
|
87
|
+
#endif
|
|
88
|
+
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
DLL_LOCAL void Init_WXDialog(VALUE rb_mWX)
|
|
93
|
+
{
|
|
94
|
+
#if 0
|
|
95
|
+
rb_mWX = rb_define_module("WX");
|
|
96
|
+
rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
|
|
97
|
+
|
|
98
|
+
rb_cWXTopLevel = rb_define_class_under(rb_mWX,"TopLevel",rb_cWXWindow);
|
|
99
|
+
#endif
|
|
100
|
+
|
|
101
|
+
using namespace RubyWX::Dialog;
|
|
102
|
+
rb_cWXDialog = rb_define_class_under(rb_mWX,"Dialog",rb_cWXTopLevel);
|
|
103
|
+
rb_define_alloc_func(rb_cWXDialog,_alloc);
|
|
104
|
+
|
|
105
|
+
rb_define_method(rb_cWXDialog,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
|
|
106
|
+
|
|
107
|
+
rb_define_attr_method(rb_cWXDialog, "return_code",_getReturnCode,_setReturnCode);
|
|
108
|
+
|
|
109
|
+
rb_define_method(rb_cWXDialog,"show_modal",RUBY_METHOD_FUNC(_ShowModal),0);
|
|
110
|
+
rb_define_method(rb_cWXDialog,"end_modal",RUBY_METHOD_FUNC(_EndModal),1);
|
|
111
|
+
|
|
112
|
+
rb_define_method(rb_cWXDialog,"create_button_sizer",RUBY_METHOD_FUNC(_CreateButtonSizer),-2);
|
|
113
|
+
#if wxUSE_STATTEXT
|
|
114
|
+
rb_define_method(rb_cWXDialog,"create_text_sizer",RUBY_METHOD_FUNC(_CreateTextSizer),1);
|
|
115
|
+
#endif
|
|
116
|
+
rb_define_const(rb_cWXDialog,"DEFAULT_STYLE",INT2NUM(wxDEFAULT_DIALOG_STYLE));
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
registerInfo<wxDialog>(rb_cWXDialog);
|
|
120
|
+
}
|