rwx 0.0.1.dev → 0.0.1.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.
Files changed (128) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +3 -0
  3. data/.rspec +2 -0
  4. data/Rakefile +8 -0
  5. data/VERSION +1 -1
  6. data/ext/extconf.rb +5 -1
  7. data/ext/main.cpp +3 -3
  8. data/ext/main.hpp +34 -1
  9. data/ext/rwx.cpp +17 -0
  10. data/ext/wxAnyButton.cpp +7 -6
  11. data/ext/wxApp.cpp +1 -1
  12. data/ext/wxApp.hpp +1 -1
  13. data/ext/wxAuiBook.cpp +5 -1
  14. data/ext/wxAuiPane.cpp +7 -6
  15. data/ext/wxBitmap.cpp +42 -6
  16. data/ext/wxBitmapButton.cpp +3 -2
  17. data/ext/wxBitmapComboBox.cpp +25 -11
  18. data/ext/wxBitmapToggleButton.cpp +4 -2
  19. data/ext/wxBookCtrl.cpp +13 -13
  20. data/ext/wxBrush.cpp +69 -12
  21. data/ext/wxBrush.hpp +6 -0
  22. data/ext/wxButton.cpp +3 -2
  23. data/ext/wxCalendarCtrl.cpp +7 -6
  24. data/ext/wxCalendarCtrlBase.cpp +4 -2
  25. data/ext/wxCalendarCtrlGeneric.cpp +10 -9
  26. data/ext/wxCheckBox.cpp +10 -5
  27. data/ext/wxCheckListBox.cpp +10 -9
  28. data/ext/wxChoice.cpp +10 -9
  29. data/ext/wxChoiceBook.cpp +5 -1
  30. data/ext/wxCollapsiblePane.cpp +8 -5
  31. data/ext/wxColor.cpp +69 -25
  32. data/ext/wxColor.hpp +3 -0
  33. data/ext/wxColorPicker.cpp +11 -5
  34. data/ext/wxColorPickerWidget.cpp +10 -8
  35. data/ext/wxComboBox.cpp +3 -3
  36. data/ext/wxComboCtrl.cpp +220 -0
  37. data/ext/wxComboCtrl.hpp +22 -0
  38. data/ext/wxControl.cpp +2 -2
  39. data/ext/wxDC.cpp +5 -4
  40. data/ext/wxDatePicker.cpp +10 -7
  41. data/ext/wxDirCtrl.cpp +161 -0
  42. data/ext/wxDirCtrl.hpp +21 -0
  43. data/ext/wxDirPicker.cpp +5 -5
  44. data/ext/wxDirPickerWidget.cpp +10 -8
  45. data/ext/wxFileCtrl.cpp +5 -2
  46. data/ext/wxFileCtrlBase.cpp +31 -7
  47. data/ext/wxFileCtrlGeneric.cpp +5 -2
  48. data/ext/wxFileDialog.cpp +20 -25
  49. data/ext/wxFileDirPicker.cpp +6 -6
  50. data/ext/wxFilePicker.cpp +6 -6
  51. data/ext/wxFilePickerWidget.cpp +10 -9
  52. data/ext/wxFont.cpp +6 -5
  53. data/ext/wxFontDialog.cpp +11 -22
  54. data/ext/wxFontPicker.cpp +17 -5
  55. data/ext/wxFontPickerWidget.cpp +10 -9
  56. data/ext/wxFrame.cpp +6 -4
  57. data/ext/wxGauge.cpp +9 -5
  58. data/ext/wxGrid.cpp +7 -5
  59. data/ext/wxGridCellAttr.cpp +6 -6
  60. data/ext/wxHyperLink.cpp +12 -11
  61. data/ext/wxImage.cpp +15 -10
  62. data/ext/wxInfoBar.cpp +2 -1
  63. data/ext/wxInfoBarGeneric.cpp +2 -1
  64. data/ext/wxItemContainer.cpp +5 -0
  65. data/ext/wxListBook.cpp +5 -2
  66. data/ext/wxListBox.cpp +10 -8
  67. data/ext/wxMenu.cpp +5 -4
  68. data/ext/wxMenuItem.cpp +9 -7
  69. data/ext/wxMultiChoiceDialog.cpp +5 -3
  70. data/ext/wxNoteBook.cpp +4 -2
  71. data/ext/wxOwnerDrawnComboBox.cpp +223 -0
  72. data/ext/wxOwnerDrawnComboBox.hpp +22 -0
  73. data/ext/wxPalette.cpp +1 -1
  74. data/ext/wxPanel.cpp +4 -3
  75. data/ext/wxPasswordEntryDialog.cpp +1 -1
  76. data/ext/wxPen.cpp +49 -10
  77. data/ext/wxPoint.cpp +6 -6
  78. data/ext/wxPreferences.cpp +21 -6
  79. data/ext/wxProperty.cpp +5 -7
  80. data/ext/wxPropertyCell.cpp +5 -4
  81. data/ext/wxPropertyGrid.cpp +26 -27
  82. data/ext/wxPropertyGridManager.cpp +13 -5
  83. data/ext/wxRadioBox.cpp +14 -11
  84. data/ext/wxRadioButton.cpp +9 -3
  85. data/ext/wxRearrangeCtrl.cpp +5 -1
  86. data/ext/wxRearrangeList.cpp +5 -2
  87. data/ext/wxRect.cpp +8 -7
  88. data/ext/wxRichTextCtrl.cpp +12 -6
  89. data/ext/wxRichTextStyle.cpp +5 -5
  90. data/ext/wxRichTextStyleSheet.cpp +7 -5
  91. data/ext/wxSTC.cpp +5 -1
  92. data/ext/wxSearchCtrl.cpp +12 -10
  93. data/ext/wxSimpleBook.cpp +5 -1
  94. data/ext/wxSingleChoiceDialog.cpp +4 -2
  95. data/ext/wxSize.cpp +8 -7
  96. data/ext/wxSlider.cpp +12 -7
  97. data/ext/wxSpinButton.cpp +14 -11
  98. data/ext/wxSpinButton.hpp +1 -1
  99. data/ext/wxSpinCtrl.cpp +18 -11
  100. data/ext/wxSpinCtrlDouble.cpp +161 -0
  101. data/ext/wxSpinCtrlDouble.hpp +21 -0
  102. data/ext/wxStaticBitmap.cpp +3 -1
  103. data/ext/wxStaticBitmapBase.cpp +4 -2
  104. data/ext/wxStaticBitmapGeneric.cpp +3 -1
  105. data/ext/wxStaticBox.cpp +7 -6
  106. data/ext/wxStaticLine.cpp +5 -1
  107. data/ext/wxStaticText.cpp +5 -1
  108. data/ext/wxStatusBar.cpp +12 -10
  109. data/ext/wxTaskBar.cpp +6 -4
  110. data/ext/wxTextCtrl.cpp +9 -3
  111. data/ext/wxTextEntry.cpp +8 -3
  112. data/ext/wxTimePicker.cpp +11 -8
  113. data/ext/wxTimer.cpp +4 -2
  114. data/ext/wxToggleButton.cpp +3 -1
  115. data/ext/wxToolBar.cpp +5 -1
  116. data/ext/wxToolBarTool.cpp +9 -8
  117. data/ext/wxToolBook.cpp +5 -2
  118. data/ext/wxTreeBook.cpp +5 -1
  119. data/ext/wxTreeCtrl.cpp +8 -7
  120. data/ext/wxWindow.cpp +3 -1
  121. data/ext/wxWizard.cpp +10 -10
  122. data/ext/wxWizardPage.cpp +11 -9
  123. data/rwx.gemspec +4 -2
  124. data/samples/controls/controls.rb +0 -5
  125. data/samples/dialog/dialog_sample.rb +0 -3
  126. data/spec/color_spec.rb +55 -0
  127. data/spec/spec_helper.rb +12 -0
  128. metadata +28 -3
@@ -102,6 +102,8 @@ macro_attr(Message,wxString)
102
102
  macro_attr(Path,wxString)
103
103
 
104
104
  singlereturn(GetFilterIndex)
105
+ singlereturn_array(GetFilenames, wxArrayString)
106
+ singlereturn_array(GetPaths, wxArrayString)
105
107
 
106
108
 
107
109
  VALUE _setFilterIndex(VALUE self,VALUE other)
@@ -115,22 +117,6 @@ VALUE _setFilterIndex(VALUE self,VALUE other)
115
117
  return other;
116
118
  }
117
119
 
118
-
119
- DLL_LOCAL VALUE _getFilenames(VALUE self)
120
- {
121
- wxArrayString result;
122
- _self->GetFilenames(result);
123
- return wrap(result);
124
- }
125
-
126
- DLL_LOCAL VALUE _getPaths(VALUE self)
127
- {
128
- wxArrayString result;
129
- _self->GetPaths(result);
130
- return wrap(result);
131
- }
132
-
133
-
134
120
  DLL_LOCAL VALUE _saveFileSelector(int argc,VALUE *argv,VALUE self)
135
121
  {
136
122
  VALUE what,extension,default_name,parent;
@@ -176,6 +162,12 @@ DLL_LOCAL VALUE _loadFileSelector(int argc,VALUE *argv,VALUE self)
176
162
  /* Document-attr: path
177
163
  * the path of the FileDialog. String
178
164
  */
165
+ /* Document-attr: filenames
166
+ * the filenamex of the FileDialog. Array<String>
167
+ */
168
+ /* Document-attr: paths
169
+ * the paths of the FileDialog. Array<String>
170
+ */
179
171
 
180
172
 
181
173
  /* Document-const: OPEN
@@ -218,22 +210,25 @@ DLL_LOCAL void Init_WXFileDialog(VALUE rb_mWX)
218
210
 
219
211
  rb_cWXTopLevel = rb_define_class_under(rb_mWX,"TopLevel",rb_cWXWindow);
220
212
  rb_cWXDialog = rb_define_class_under(rb_mWX,"Dialog",rb_cWXTopLevel);
213
+ #endif
221
214
 
215
+ #if wxUSE_FILEDLG
216
+ using namespace RubyWX::FileDialog;
217
+ rb_cWXFileDialog = rb_define_class_under(rb_mWX,"FileDialog",rb_cWXDialog);
218
+ rb_define_alloc_func(rb_cWXFileDialog,_alloc);
219
+ rb_define_method(rb_cWXFileDialog,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
220
+
221
+ #if 0
222
222
  rb_define_attr(rb_cWXFileDialog,"directory",1,1);
223
223
  rb_define_attr(rb_cWXFileDialog,"filename",1,1);
224
224
  rb_define_attr(rb_cWXFileDialog,"filter_index",1,1);
225
225
  rb_define_attr(rb_cWXFileDialog,"wildcard",1,1);
226
226
  rb_define_attr(rb_cWXFileDialog,"message",1,1);
227
227
  rb_define_attr(rb_cWXFileDialog,"path",1,1);
228
-
228
+ rb_define_attr(rb_cWXFileDialog,"filenames",1,0);
229
+ rb_define_attr(rb_cWXFileDialog,"paths",1,0);
229
230
  #endif
230
231
 
231
- #if wxUSE_FILEDLG
232
- using namespace RubyWX::FileDialog;
233
- rb_cWXFileDialog = rb_define_class_under(rb_mWX,"FileDialog",rb_cWXDialog);
234
- rb_define_alloc_func(rb_cWXFileDialog,_alloc);
235
- rb_define_method(rb_cWXFileDialog,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
236
-
237
232
  rb_define_attr_method(rb_cWXFileDialog,"directory",_getDirectory,_setDirectory);
238
233
  rb_define_attr_method(rb_cWXFileDialog,"filename",_getFilename,_setFilename);
239
234
  rb_define_attr_method(rb_cWXFileDialog,"wildcard",_getWildcard,_setWildcard);
@@ -241,8 +236,8 @@ DLL_LOCAL void Init_WXFileDialog(VALUE rb_mWX)
241
236
  rb_define_attr_method(rb_cWXFileDialog,"message",_getMessage,_setMessage);
242
237
  rb_define_attr_method(rb_cWXFileDialog,"path",_getPath,_setPath);
243
238
 
244
- rb_define_method(rb_cWXFileDialog,"filenames",RUBY_METHOD_FUNC(_getFilenames),0);
245
- rb_define_method(rb_cWXFileDialog,"paths",RUBY_METHOD_FUNC(_getPaths),0);
239
+ rb_define_attr_method(rb_cWXFileDialog,"filenames",_GetFilenames,NULL);
240
+ rb_define_attr_method(rb_cWXFileDialog,"paths",_GetPaths,NULL);
246
241
 
247
242
  rb_define_module_function(rb_mWX,"load_dialog",RUBY_METHOD_FUNC(_loadFileSelector),-1);
248
243
  rb_define_module_function(rb_mWX,"save_dialog",RUBY_METHOD_FUNC(_saveFileSelector),-1);
@@ -63,20 +63,20 @@ DLL_LOCAL void Init_WXFileDirPicker(VALUE rb_mWX)
63
63
  rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
64
64
  rb_cWXControl = rb_define_class_under(rb_mWX,"Control",rb_cWXWindow);
65
65
  rb_cWXPickerBase = rb_define_class_under(rb_mWX,"PickerBase",rb_cWXControl);
66
-
67
-
68
- rb_define_attr(rb_cWXFileDirPicker,"path",1,1);
69
- rb_define_attr(rb_cWXFileDirPickerEvent,"path",1,1);
70
66
  #endif
71
67
 
72
68
  #if wxUSE_FILEPICKERCTRL || wxUSE_DIRPICKERCTRL
73
69
  using namespace RubyWX::FileDirPicker;
74
70
  rb_cWXFileDirPicker = rb_define_class_under(rb_mWX,"FileDirPicker",rb_cWXPickerBase);
75
71
  rb_undef_alloc_func(rb_cWXFileDirPicker);
72
+ rb_cWXFileDirPickerEvent = rb_define_class_under(rb_cWXEvent,"FileDirPicker",rb_cWXEvent);
76
73
 
77
- rb_define_attr_method(rb_cWXFileDirPicker,"path",_getPath,_setPath);
74
+ #if 0
75
+ rb_define_attr(rb_cWXFileDirPicker,"path",1,1);
76
+ rb_define_attr(rb_cWXFileDirPickerEvent,"path",1,1);
77
+ #endif
78
78
 
79
- rb_cWXFileDirPickerEvent = rb_define_class_under(rb_cWXEvent,"FileDirPicker",rb_cWXEvent);
79
+ rb_define_attr_method(rb_cWXFileDirPicker,"path",_getPath,_setPath);
80
80
 
81
81
  rb_define_attr_method(rb_cWXFileDirPickerEvent,"path",
82
82
  Event::_getPath,Event::_setPath);
@@ -83,12 +83,12 @@ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
83
83
  }
84
84
 
85
85
  FileDirPicker::check_style_flags(style);
86
-
87
- _self->Create(
88
- unwrap<wxWindow*>(parent),id,path,
89
- message,wildCard,
90
- wxDefaultPosition,wxDefaultSize,style
91
- );
86
+ if(nil_check(parent))
87
+ _self->Create(
88
+ unwrap<wxWindow*>(parent),id,path,
89
+ message,wildCard,
90
+ wxDefaultPosition,wxDefaultSize,style
91
+ );
92
92
 
93
93
  }
94
94
  rb_call_super(argc,argv);
@@ -61,12 +61,12 @@ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
61
61
  }
62
62
 
63
63
  FileDirPicker::check_style_flags(style);
64
-
65
- _self->Create(
66
- unwrap<wxWindow*>(parent),id,label,path,
67
- message,wildCard,
68
- wxDefaultPosition,wxDefaultSize,style
69
- );
64
+ if(nil_check(parent))
65
+ _self->Create(
66
+ unwrap<wxWindow*>(parent),id,label,path,
67
+ message,wildCard,
68
+ wxDefaultPosition,wxDefaultSize,style
69
+ );
70
70
 
71
71
  }
72
72
 
@@ -112,9 +112,6 @@ DLL_LOCAL void Init_WXFilePickerWidget(VALUE rb_mWX)
112
112
  rb_cWXAnyButton = rb_define_class_under(rb_mWX,"AnyButton",rb_cWXControl);
113
113
 
114
114
  rb_cWXButton = rb_define_class_under(rb_mWX,"Button",rb_cWXAnyButton);
115
-
116
- rb_define_attr(rb_cWXFilePickerWidget,"path",1,1);
117
-
118
115
  #endif
119
116
 
120
117
  #if wxUSE_FILEPICKERCTRL
@@ -122,6 +119,10 @@ DLL_LOCAL void Init_WXFilePickerWidget(VALUE rb_mWX)
122
119
  rb_cWXFilePickerWidget = rb_define_class_under(rb_mWX,"FilePickerWidget",rb_cWXButton);
123
120
  rb_define_alloc_func(rb_cWXFilePickerWidget,_alloc);
124
121
 
122
+ #if 0
123
+ rb_define_attr(rb_cWXFilePickerWidget,"path",1,1);
124
+ #endif
125
+
125
126
  rb_define_method(rb_cWXFilePickerWidget,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
126
127
 
127
128
  rb_define_attr_method(rb_cWXFilePickerWidget,"path",_getPath,_setPath);
@@ -414,6 +414,11 @@ DLL_LOCAL VALUE _class_get(int argc,VALUE *argv,VALUE self)
414
414
 
415
415
  DLL_LOCAL void Init_WXFont(VALUE rb_mWX)
416
416
  {
417
+
418
+ using namespace RubyWX::Font;
419
+ rb_cWXFont = rb_define_class_under(rb_mWX,"Font",rb_cObject);
420
+ rb_define_alloc_func(rb_cWXFont,_alloc);
421
+
417
422
  #if 0
418
423
  rb_define_attr(rb_cWXFont,"point_size",1,1);
419
424
  rb_define_attr(rb_cWXFont,"pixel_size",1,1);
@@ -431,10 +436,6 @@ DLL_LOCAL void Init_WXFont(VALUE rb_mWX)
431
436
  rb_define_const(rb_cWXFont,"SWISS",wrap(wxSWISS_FONT));
432
437
  #endif
433
438
 
434
- using namespace RubyWX::Font;
435
- rb_cWXFont = rb_define_class_under(rb_mWX,"Font",rb_cObject);
436
- rb_define_alloc_func(rb_cWXFont,_alloc);
437
-
438
439
  rb_define_method(rb_cWXFont,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
439
440
 
440
441
  rb_define_method(rb_cWXFont,"smaller",RUBY_METHOD_FUNC(_Smaller),0);
@@ -469,7 +470,7 @@ DLL_LOCAL void Init_WXFont(VALUE rb_mWX)
469
470
  rb_define_attr_method(rb_cWXFont,"encoding",_getEncoding,_setEncoding);
470
471
  #endif
471
472
  rb_define_method(rb_cWXFont,"marshal_dump",RUBY_METHOD_FUNC(_marshal_dump),0);
472
- rb_define_method(rb_cWXFont,"marshal_load",RUBY_METHOD_FUNC(_marshal_load),1);
473
+ rb_define_method(rb_cWXFont,"marshal_load",RUBY_METHOD_FUNC(_marshal_load),-2);
473
474
 
474
475
  rb_define_singleton_method(rb_cWXFont,"[]",RUBY_METHOD_FUNC(_class_get),-1);
475
476
 
@@ -47,23 +47,11 @@ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
47
47
 
48
48
  if(rb_obj_is_kind_of(hash,rb_cHash))
49
49
  {
50
- wxColour color(wxNullColour);
51
- wxFont font(wxNullFont);
52
- bool symbols(false);
53
- bool show_help(false);
54
50
 
55
- set_hash_option(hash,"color",color);
56
- set_hash_option(hash,"font",font);
57
- set_hash_option(hash,"symbols",symbols);
58
- set_hash_option(hash,"show_help",show_help);
59
-
60
- if(color.IsOk())
61
- data.SetColour(color);
62
- if(font.IsOk())
63
- data.SetInitialFont(font);
64
-
65
- data.SetAllowSymbols(symbols);
66
- data.SetShowHelp(show_help);
51
+ set_hash_option(hash,"color",&wxFontData::SetColour, data);
52
+ set_hash_option(hash,"font",&wxFontData::SetInitialFont, data);
53
+ set_hash_option(hash,"symbols",&wxFontData::SetAllowSymbols, data);
54
+ set_hash_option(hash,"show_help",&wxFontData::SetShowHelp, data);
67
55
 
68
56
  }
69
57
  _self->Create(unwrap<wxWindow*>(parent),data);
@@ -111,7 +99,14 @@ DLL_LOCAL void Init_WXFontDialog(VALUE rb_mWX)
111
99
  rb_cWXTopLevel = rb_define_class_under(rb_mWX,"TopLevel",rb_cWXWindow);
112
100
 
113
101
  rb_cWXDialog = rb_define_class_under(rb_mWX,"Dialog",rb_cWXTopLevel);
102
+ #endif
103
+ #if wxUSE_FONTDLG
104
+ using namespace RubyWX::FontDialog;
105
+ rb_cWXFontDialog = rb_define_class_under(rb_mWX,"FontDialog",rb_cWXDialog);
106
+ rb_define_alloc_func(rb_cWXFontDialog,_alloc);
107
+ rb_define_method(rb_cWXFontDialog,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
114
108
 
109
+ #if 0
115
110
  rb_define_attr(rb_cWXFontDialog,"initial_font",1,1);
116
111
  rb_define_attr(rb_cWXFontDialog,"chosen_font",1,1);
117
112
 
@@ -121,12 +116,6 @@ DLL_LOCAL void Init_WXFontDialog(VALUE rb_mWX)
121
116
  rb_define_attr(rb_cWXFontDialog,"show_help",1,1);
122
117
  #endif
123
118
 
124
- #if wxUSE_FONTDLG
125
- using namespace RubyWX::FontDialog;
126
- rb_cWXFontDialog = rb_define_class_under(rb_mWX,"FontDialog",rb_cWXDialog);
127
- rb_define_alloc_func(rb_cWXFontDialog,_alloc);
128
- rb_define_method(rb_cWXFontDialog,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
129
-
130
119
  rb_define_attr_method(rb_cWXFontDialog,"initial_font",_getInitialFont,_setInitialFont);
131
120
  rb_define_attr_method(rb_cWXFontDialog,"chosen_font",_getChosenFont,_setChosenFont);
132
121
 
@@ -63,8 +63,10 @@ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
63
63
  set_hash_flag_option(hash,"fontdesc_as_label",wxFNTP_FONTDESC_AS_LABEL,style);
64
64
  set_hash_flag_option(hash,"font_for_label",wxFNTP_USEFONT_FOR_LABEL,style);
65
65
  }
66
-
67
- _self->Create(unwrap<wxWindow*>(parent),id,font,wxDefaultPosition,wxDefaultSize,style);
66
+ if(nil_check(parent))
67
+ _self->Create(unwrap<wxWindow*>(parent),id,
68
+ font,wxDefaultPosition,wxDefaultSize,style
69
+ );
68
70
  }
69
71
 
70
72
  rb_call_super(argc,argv);
@@ -74,7 +76,9 @@ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
74
76
  VALUE temp;
75
77
 
76
78
  set_option(selected_font,SelectedFont,wxFont)
79
+ #ifdef HAVE_WXFONTPICKERCTRL_GETSELECTEDCOLOUR
77
80
  set_option(selected_color,SelectedColour,wxColor)
81
+ #endif
78
82
  }
79
83
  return self;
80
84
  }
@@ -124,14 +128,17 @@ DLL_LOCAL void Init_WXFontPicker(VALUE rb_mWX)
124
128
 
125
129
  rb_cWXEvent = rb_define_class_under(rb_mWX,"Event",rb_cObject);
126
130
 
127
- rb_define_attr(rb_cWXFontPicker,"selected_font",1,1);
128
- rb_define_attr(rb_cWXFontPicker,"selected_color",1,1);
129
- rb_define_attr(rb_cWXFontPickerEvent,"font",1,1);
130
131
  #endif
131
132
 
132
133
  #if wxUSE_FONTPICKERCTRL
133
134
  using namespace RubyWX::FontPicker;
134
135
  rb_cWXFontPicker = rb_define_class_under(rb_mWX,"FontPicker",rb_cWXPickerBase);
136
+
137
+ #if 0
138
+ rb_define_attr(rb_cWXFontPicker,"selected_font",1,1);
139
+ rb_define_attr(rb_cWXFontPicker,"selected_color",1,1);
140
+ #endif
141
+
135
142
  rb_define_alloc_func(rb_cWXFontPicker,_alloc);
136
143
 
137
144
  rb_define_method(rb_cWXFontPicker,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
@@ -143,6 +150,11 @@ DLL_LOCAL void Init_WXFontPicker(VALUE rb_mWX)
143
150
  #endif
144
151
 
145
152
  rb_cWXFontPickerEvent = rb_define_class_under(rb_cWXEvent,"FontPicker",rb_cWXEvent);
153
+
154
+ #if 0
155
+ rb_define_attr(rb_cWXFontPickerEvent,"font",1,1);
156
+ #endif
157
+
146
158
  registerEventType("fontpicker_changed",wxEVT_FONTPICKER_CHANGED,rb_cWXFontPickerEvent);
147
159
  rb_define_attr_method(rb_cWXFontPickerEvent,"font",Event::_getFont,Event::_setFont);
148
160
 
@@ -58,11 +58,11 @@ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
58
58
  set_hash_flag_option(hash,"font_for_label",wxFNTP_USEFONT_FOR_LABEL,style);
59
59
 
60
60
  }
61
-
62
- _self->Create(
63
- unwrap<wxWindow*>(parent),id,font,
64
- wxDefaultPosition,wxDefaultSize,style
65
- );
61
+ if(nil_check(parent))
62
+ _self->Create(
63
+ unwrap<wxWindow*>(parent),id,font,
64
+ wxDefaultPosition,wxDefaultSize,style
65
+ );
66
66
 
67
67
  }
68
68
 
@@ -101,10 +101,6 @@ DLL_LOCAL void Init_WXFontPickerWidget(VALUE rb_mWX)
101
101
  rb_cWXAnyButton = rb_define_class_under(rb_mWX,"AnyButton",rb_cWXControl);
102
102
 
103
103
  rb_cWXButton = rb_define_class_under(rb_mWX,"Button",rb_cWXAnyButton);
104
-
105
- rb_define_attr(rb_cWXFontPickerWidget,"font",1,1);
106
- rb_define_attr(rb_cWXFontPickerWidget,"selected_color",1,1);
107
-
108
104
  #endif
109
105
 
110
106
  #if wxUSE_FONTPICKERCTRL
@@ -112,6 +108,11 @@ DLL_LOCAL void Init_WXFontPickerWidget(VALUE rb_mWX)
112
108
  rb_cWXFontPickerWidget = rb_define_class_under(rb_mWX,"FontPickerWidget",rb_cWXButton);
113
109
  rb_define_alloc_func(rb_cWXFontPickerWidget,_alloc);
114
110
 
111
+ #if 0
112
+ rb_define_attr(rb_cWXFontPickerWidget,"font",1,1);
113
+ rb_define_attr(rb_cWXFontPickerWidget,"selected_color",1,1);
114
+ #endif
115
+
115
116
  rb_define_method(rb_cWXFontPickerWidget,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
116
117
 
117
118
  rb_define_attr_method(rb_cWXFontPickerWidget,"font",_getFont,_setFont);
@@ -239,17 +239,19 @@ DLL_LOCAL void Init_WXFrame(VALUE rb_mWX)
239
239
  rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
240
240
 
241
241
  rb_cWXTopLevel = rb_define_class_under(rb_mWX,"TopLevel",rb_cWXWindow);
242
+ #endif
243
+
244
+ using namespace RubyWX::Frame;
245
+ rb_cWXFrame = rb_define_class_under(rb_mWX,"Frame",rb_cWXTopLevel);
246
+ rb_define_alloc_func(rb_cWXFrame,_alloc);
242
247
 
248
+ #if 0
243
249
  rb_define_attr(rb_cWXFrame,"menubar",1,1);
244
250
  rb_define_attr(rb_cWXFrame,"statusbar",1,1);
245
251
  rb_define_attr(rb_cWXFrame,"statusbar_pane",1,1);
246
252
  rb_define_attr(rb_cWXFrame,"toolbar",1,1);
247
253
  #endif
248
254
 
249
- using namespace RubyWX::Frame;
250
- rb_cWXFrame = rb_define_class_under(rb_mWX,"Frame",rb_cWXTopLevel);
251
- rb_define_alloc_func(rb_cWXFrame,_alloc);
252
-
253
255
  rb_define_method(rb_cWXFrame,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
254
256
 
255
257
  #if wxUSE_MENUS
@@ -71,8 +71,10 @@ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
71
71
  set_hash_flag_option(hash,"vertical",wxGA_VERTICAL,style);
72
72
  set_hash_flag_option(hash,"smooth",wxGA_SMOOTH,style);
73
73
  }
74
-
75
- _self->Create(unwrap<wxWindow*>(parent),id,range,wxDefaultPosition,wxDefaultSize,style);
74
+ if(nil_check(parent))
75
+ _self->Create(unwrap<wxWindow*>(parent),id,
76
+ range,wxDefaultPosition,wxDefaultSize,style
77
+ );
76
78
 
77
79
  }
78
80
 
@@ -137,9 +139,6 @@ DLL_LOCAL void Init_WXGauge(VALUE rb_mWX)
137
139
  rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
138
140
 
139
141
  rb_cWXControl = rb_define_class_under(rb_mWX,"Control",rb_cWXWindow);
140
-
141
- rb_define_attr(rb_cWXGauge,"range",1,1);
142
- rb_define_attr(rb_cWXGauge,"value",1,1);
143
142
  #endif
144
143
 
145
144
  #if wxUSE_GAUGE
@@ -147,6 +146,11 @@ DLL_LOCAL void Init_WXGauge(VALUE rb_mWX)
147
146
  rb_cWXGauge = rb_define_class_under(rb_mWX,"Gauge",rb_cWXControl);
148
147
  rb_define_alloc_func(rb_cWXGauge,_alloc);
149
148
 
149
+ #if 0
150
+ rb_define_attr(rb_cWXGauge,"range",1,1);
151
+ rb_define_attr(rb_cWXGauge,"value",1,1);
152
+ #endif
153
+
150
154
  rb_define_method(rb_cWXGauge,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
151
155
 
152
156
  rb_define_attr_method(rb_cWXGauge,"range",_getRange,_setRange);
@@ -139,7 +139,14 @@ DLL_LOCAL void Init_WXGrid(VALUE rb_mWX)
139
139
  rb_cWXControl = rb_define_class_under(rb_mWX,"Control",rb_cWXWindow);
140
140
 
141
141
  rb_cWXPanel = rb_define_class_under(rb_mWX,"Panel",rb_cWXControl);
142
+ #endif
143
+
144
+ #if wxUSE_GRID
145
+ using namespace RubyWX::Grid;
146
+ rb_cWXGrid = rb_define_class_under(rb_mWX,"Grid",rb_cWXPanel);
147
+ rb_define_alloc_func(rb_cWXGrid,_alloc);
142
148
 
149
+ #if 0
143
150
  rb_define_attr(rb_cWXGrid,"table",1,1);
144
151
  rb_define_attr(rb_cWXGrid,"line_color",1,1);
145
152
  rb_define_attr(rb_cWXGrid,"label_background_color",1,1);
@@ -166,11 +173,6 @@ DLL_LOCAL void Init_WXGrid(VALUE rb_mWX)
166
173
 
167
174
  #endif
168
175
 
169
- #if wxUSE_GRID
170
- using namespace RubyWX::Grid;
171
- rb_cWXGrid = rb_define_class_under(rb_mWX,"Grid",rb_cWXPanel);
172
- rb_define_alloc_func(rb_cWXGrid,_alloc);
173
-
174
176
  rb_define_method(rb_cWXGrid,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
175
177
 
176
178
  rb_define_attr_method(rb_cWXGrid,"table",_getTable,_setTable);
@@ -42,18 +42,18 @@ APP_PROTECT(wxGridCellAttr)
42
42
 
43
43
  DLL_LOCAL void Init_WXGridCellAttr(VALUE rb_mWX)
44
44
  {
45
- #if 0
46
- rb_define_attr(rb_cWXGridCellAttr,"text_color",1,1);
47
- rb_define_attr(rb_cWXGridCellAttr,"background_color",1,1);
48
- rb_define_attr(rb_cWXGridCellAttr,"font",1,1);
49
-
50
- #endif
51
45
 
52
46
  #if wxUSE_GRID
53
47
  using namespace RubyWX::GridCellAttr;
54
48
  rb_cWXGridCellAttr = rb_define_class_under(rb_mWX,"GridCellAttr",rb_cObject);
55
49
  rb_define_alloc_func(rb_cWXGridCellAttr,_alloc);
56
50
 
51
+ #if 0
52
+ rb_define_attr(rb_cWXGridCellAttr,"text_color",1,1);
53
+ rb_define_attr(rb_cWXGridCellAttr,"background_color",1,1);
54
+ rb_define_attr(rb_cWXGridCellAttr,"font",1,1);
55
+ #endif
56
+
57
57
  //TODO make GridCellAttr copyable
58
58
  rb_undef_method(rb_cWXGridCellAttr,"initialize_copy");
59
59
  rb_undef_method(rb_cWXGridCellAttr,"_load");