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.
Files changed (376) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +49 -0
  3. data/COPYING +0 -0
  4. data/README.rdoc +0 -0
  5. data/Rakefile +100 -0
  6. data/VERSION +1 -0
  7. data/ext/extconf.rb +112 -0
  8. data/ext/main.cpp +432 -0
  9. data/ext/main.hpp +454 -0
  10. data/ext/rwx.cpp +472 -0
  11. data/ext/wxAboutDlg.cpp +213 -0
  12. data/ext/wxAboutDlg.hpp +19 -0
  13. data/ext/wxAnyButton.cpp +141 -0
  14. data/ext/wxAnyButton.hpp +17 -0
  15. data/ext/wxAnyChoiceDialog.cpp +93 -0
  16. data/ext/wxAnyChoiceDialog.hpp +19 -0
  17. data/ext/wxApp.cpp +205 -0
  18. data/ext/wxApp.hpp +48 -0
  19. data/ext/wxAui.hpp +19 -0
  20. data/ext/wxAuiBook.cpp +453 -0
  21. data/ext/wxAuiBook.hpp +21 -0
  22. data/ext/wxAuiManager.cpp +79 -0
  23. data/ext/wxAuiManager.hpp +18 -0
  24. data/ext/wxAuiPane.cpp +343 -0
  25. data/ext/wxAuiPane.hpp +29 -0
  26. data/ext/wxAuiToolBar.cpp +47 -0
  27. data/ext/wxAuiToolBar.hpp +17 -0
  28. data/ext/wxBitmap.cpp +368 -0
  29. data/ext/wxBitmap.hpp +60 -0
  30. data/ext/wxBitmapButton.cpp +82 -0
  31. data/ext/wxBitmapButton.hpp +17 -0
  32. data/ext/wxBitmapComboBox.cpp +284 -0
  33. data/ext/wxBitmapComboBox.hpp +22 -0
  34. data/ext/wxBitmapToggleButton.cpp +82 -0
  35. data/ext/wxBitmapToggleButton.hpp +17 -0
  36. data/ext/wxBookCtrl.cpp +633 -0
  37. data/ext/wxBookCtrl.hpp +22 -0
  38. data/ext/wxBoxSizer.cpp +60 -0
  39. data/ext/wxBoxSizer.hpp +17 -0
  40. data/ext/wxBrush.cpp +281 -0
  41. data/ext/wxBrush.hpp +28 -0
  42. data/ext/wxButton.cpp +85 -0
  43. data/ext/wxButton.hpp +17 -0
  44. data/ext/wxButtonToolBar.cpp +54 -0
  45. data/ext/wxButtonToolBar.hpp +21 -0
  46. data/ext/wxCalendarCtrl.cpp +91 -0
  47. data/ext/wxCalendarCtrl.hpp +17 -0
  48. data/ext/wxCalendarCtrlBase.cpp +55 -0
  49. data/ext/wxCalendarCtrlBase.hpp +26 -0
  50. data/ext/wxCalendarCtrlGeneric.cpp +102 -0
  51. data/ext/wxCalendarCtrlGeneric.hpp +21 -0
  52. data/ext/wxCheckBox.cpp +157 -0
  53. data/ext/wxCheckBox.hpp +17 -0
  54. data/ext/wxCheckListBox.cpp +191 -0
  55. data/ext/wxCheckListBox.hpp +20 -0
  56. data/ext/wxChoice.cpp +133 -0
  57. data/ext/wxChoice.hpp +30 -0
  58. data/ext/wxChoiceBook.cpp +90 -0
  59. data/ext/wxChoiceBook.hpp +23 -0
  60. data/ext/wxCollapsiblePane.cpp +110 -0
  61. data/ext/wxCollapsiblePane.hpp +21 -0
  62. data/ext/wxColor.cpp +435 -0
  63. data/ext/wxColor.hpp +38 -0
  64. data/ext/wxColorDialog.cpp +97 -0
  65. data/ext/wxColorDialog.hpp +19 -0
  66. data/ext/wxColorPicker.cpp +131 -0
  67. data/ext/wxColorPicker.hpp +20 -0
  68. data/ext/wxColorPickerWidget.cpp +105 -0
  69. data/ext/wxColorPickerWidget.hpp +20 -0
  70. data/ext/wxComboBox.cpp +214 -0
  71. data/ext/wxComboBox.hpp +22 -0
  72. data/ext/wxCommandEvent.cpp +45 -0
  73. data/ext/wxCommandEvent.hpp +16 -0
  74. data/ext/wxConfig.cpp +19 -0
  75. data/ext/wxConfig.hpp +17 -0
  76. data/ext/wxContextHelpButton.cpp +93 -0
  77. data/ext/wxContextHelpButton.hpp +21 -0
  78. data/ext/wxControl.cpp +90 -0
  79. data/ext/wxControl.hpp +15 -0
  80. data/ext/wxCursor.cpp +108 -0
  81. data/ext/wxCursor.hpp +25 -0
  82. data/ext/wxDC.cpp +252 -0
  83. data/ext/wxDC.hpp +18 -0
  84. data/ext/wxDataView.cpp +224 -0
  85. data/ext/wxDataView.hpp +45 -0
  86. data/ext/wxDataViewList.cpp +190 -0
  87. data/ext/wxDataViewList.hpp +17 -0
  88. data/ext/wxDatePicker.cpp +103 -0
  89. data/ext/wxDatePicker.hpp +22 -0
  90. data/ext/wxDialog.cpp +120 -0
  91. data/ext/wxDialog.hpp +17 -0
  92. data/ext/wxDirDialog.cpp +152 -0
  93. data/ext/wxDirDialog.hpp +20 -0
  94. data/ext/wxDirPicker.cpp +134 -0
  95. data/ext/wxDirPicker.hpp +28 -0
  96. data/ext/wxDirPickerWidget.cpp +127 -0
  97. data/ext/wxDirPickerWidget.hpp +20 -0
  98. data/ext/wxError.cpp +67 -0
  99. data/ext/wxError.hpp +17 -0
  100. data/ext/wxEvent.cpp +60 -0
  101. data/ext/wxEvent.hpp +17 -0
  102. data/ext/wxEvtHandler.cpp +291 -0
  103. data/ext/wxEvtHandler.hpp +85 -0
  104. data/ext/wxFileCtrl.cpp +98 -0
  105. data/ext/wxFileCtrl.hpp +17 -0
  106. data/ext/wxFileCtrlBase.cpp +219 -0
  107. data/ext/wxFileCtrlBase.hpp +33 -0
  108. data/ext/wxFileCtrlGeneric.cpp +106 -0
  109. data/ext/wxFileCtrlGeneric.hpp +19 -0
  110. data/ext/wxFileDialog.cpp +268 -0
  111. data/ext/wxFileDialog.hpp +19 -0
  112. data/ext/wxFileDirPicker.cpp +89 -0
  113. data/ext/wxFileDirPicker.hpp +29 -0
  114. data/ext/wxFileHistory.cpp +134 -0
  115. data/ext/wxFileHistory.hpp +20 -0
  116. data/ext/wxFilePicker.cpp +160 -0
  117. data/ext/wxFilePicker.hpp +28 -0
  118. data/ext/wxFilePickerWidget.cpp +139 -0
  119. data/ext/wxFilePickerWidget.hpp +20 -0
  120. data/ext/wxFont.cpp +542 -0
  121. data/ext/wxFont.hpp +37 -0
  122. data/ext/wxFontDialog.cpp +143 -0
  123. data/ext/wxFontDialog.hpp +21 -0
  124. data/ext/wxFontPicker.cpp +160 -0
  125. data/ext/wxFontPicker.hpp +21 -0
  126. data/ext/wxFontPickerWidget.cpp +128 -0
  127. data/ext/wxFontPickerWidget.hpp +20 -0
  128. data/ext/wxFrame.cpp +274 -0
  129. data/ext/wxFrame.hpp +17 -0
  130. data/ext/wxGauge.cpp +167 -0
  131. data/ext/wxGauge.hpp +17 -0
  132. data/ext/wxGrid.cpp +250 -0
  133. data/ext/wxGrid.hpp +43 -0
  134. data/ext/wxGridCellAttr.cpp +68 -0
  135. data/ext/wxGridCellAttr.hpp +26 -0
  136. data/ext/wxGridCellRenderer.cpp +120 -0
  137. data/ext/wxGridCellRenderer.hpp +30 -0
  138. data/ext/wxGridTable.cpp +111 -0
  139. data/ext/wxGridTable.hpp +47 -0
  140. data/ext/wxHyperLink.cpp +148 -0
  141. data/ext/wxHyperLink.hpp +20 -0
  142. data/ext/wxImage.cpp +884 -0
  143. data/ext/wxImage.hpp +24 -0
  144. data/ext/wxInfoBar.cpp +85 -0
  145. data/ext/wxInfoBar.hpp +21 -0
  146. data/ext/wxInfoBarBase.cpp +145 -0
  147. data/ext/wxInfoBarBase.hpp +21 -0
  148. data/ext/wxInfoBarGeneric.cpp +90 -0
  149. data/ext/wxInfoBarGeneric.hpp +21 -0
  150. data/ext/wxItemContainer.cpp +313 -0
  151. data/ext/wxItemContainer.hpp +17 -0
  152. data/ext/wxKeyEvent.cpp +35 -0
  153. data/ext/wxKeyEvent.hpp +16 -0
  154. data/ext/wxListBook.cpp +90 -0
  155. data/ext/wxListBook.hpp +21 -0
  156. data/ext/wxListBox.cpp +290 -0
  157. data/ext/wxListBox.hpp +29 -0
  158. data/ext/wxMenu.cpp +600 -0
  159. data/ext/wxMenu.hpp +17 -0
  160. data/ext/wxMenuBar.cpp +180 -0
  161. data/ext/wxMenuBar.hpp +17 -0
  162. data/ext/wxMenuItem.cpp +174 -0
  163. data/ext/wxMenuItem.hpp +17 -0
  164. data/ext/wxMessageDialog.cpp +91 -0
  165. data/ext/wxMessageDialog.hpp +19 -0
  166. data/ext/wxMessageDialogBase.cpp +152 -0
  167. data/ext/wxMessageDialogBase.hpp +18 -0
  168. data/ext/wxMessageDialogGeneric.cpp +91 -0
  169. data/ext/wxMessageDialogGeneric.hpp +19 -0
  170. data/ext/wxMouseEvent.cpp +60 -0
  171. data/ext/wxMouseEvent.hpp +16 -0
  172. data/ext/wxMultiChoiceDialog.cpp +143 -0
  173. data/ext/wxMultiChoiceDialog.hpp +19 -0
  174. data/ext/wxNoteBook.cpp +89 -0
  175. data/ext/wxNoteBook.hpp +21 -0
  176. data/ext/wxNotifyEvent.cpp +45 -0
  177. data/ext/wxNotifyEvent.hpp +16 -0
  178. data/ext/wxNumberEntryDialog.cpp +131 -0
  179. data/ext/wxNumberEntryDialog.hpp +20 -0
  180. data/ext/wxPalette.cpp +214 -0
  181. data/ext/wxPalette.hpp +24 -0
  182. data/ext/wxPanel.cpp +77 -0
  183. data/ext/wxPanel.hpp +19 -0
  184. data/ext/wxPasswordEntryDialog.cpp +141 -0
  185. data/ext/wxPasswordEntryDialog.hpp +20 -0
  186. data/ext/wxPen.cpp +323 -0
  187. data/ext/wxPen.hpp +37 -0
  188. data/ext/wxPickerBase.cpp +121 -0
  189. data/ext/wxPickerBase.hpp +28 -0
  190. data/ext/wxPoint.cpp +224 -0
  191. data/ext/wxPoint.hpp +40 -0
  192. data/ext/wxPreferences.cpp +149 -0
  193. data/ext/wxPreferences.hpp +18 -0
  194. data/ext/wxProgressDialog.cpp +171 -0
  195. data/ext/wxProgressDialog.hpp +20 -0
  196. data/ext/wxProperty.cpp +723 -0
  197. data/ext/wxProperty.hpp +16 -0
  198. data/ext/wxPropertyCell.cpp +99 -0
  199. data/ext/wxPropertyCell.hpp +16 -0
  200. data/ext/wxPropertyGrid.cpp +234 -0
  201. data/ext/wxPropertyGrid.hpp +20 -0
  202. data/ext/wxPropertyGridInterface.cpp +146 -0
  203. data/ext/wxPropertyGridInterface.hpp +33 -0
  204. data/ext/wxPropertyGridManager.cpp +257 -0
  205. data/ext/wxPropertyGridManager.hpp +20 -0
  206. data/ext/wxPropertyGridPage.cpp +65 -0
  207. data/ext/wxPropertyGridPage.hpp +20 -0
  208. data/ext/wxRadioBox.cpp +405 -0
  209. data/ext/wxRadioBox.hpp +20 -0
  210. data/ext/wxRadioButton.cpp +107 -0
  211. data/ext/wxRadioButton.hpp +16 -0
  212. data/ext/wxRearrangeCtrl.cpp +89 -0
  213. data/ext/wxRearrangeCtrl.hpp +20 -0
  214. data/ext/wxRearrangeDialog.cpp +122 -0
  215. data/ext/wxRearrangeDialog.hpp +20 -0
  216. data/ext/wxRearrangeList.cpp +94 -0
  217. data/ext/wxRearrangeList.hpp +20 -0
  218. data/ext/wxRect.cpp +281 -0
  219. data/ext/wxRect.hpp +29 -0
  220. data/ext/wxRichMessageDialog.cpp +91 -0
  221. data/ext/wxRichMessageDialog.hpp +21 -0
  222. data/ext/wxRichTextAttr.cpp +69 -0
  223. data/ext/wxRichTextAttr.hpp +28 -0
  224. data/ext/wxRichTextCtrl.cpp +484 -0
  225. data/ext/wxRichTextCtrl.hpp +21 -0
  226. data/ext/wxRichTextStyle.cpp +86 -0
  227. data/ext/wxRichTextStyle.hpp +25 -0
  228. data/ext/wxRichTextStyleSheet.cpp +497 -0
  229. data/ext/wxRichTextStyleSheet.hpp +21 -0
  230. data/ext/wxSTC.cpp +331 -0
  231. data/ext/wxSTC.hpp +21 -0
  232. data/ext/wxScrollEvent.cpp +43 -0
  233. data/ext/wxScrollEvent.hpp +16 -0
  234. data/ext/wxSearchCtrl.cpp +189 -0
  235. data/ext/wxSearchCtrl.hpp +21 -0
  236. data/ext/wxSimpleBook.cpp +89 -0
  237. data/ext/wxSimpleBook.hpp +21 -0
  238. data/ext/wxSingleChoiceDialog.cpp +147 -0
  239. data/ext/wxSingleChoiceDialog.hpp +19 -0
  240. data/ext/wxSize.cpp +206 -0
  241. data/ext/wxSize.hpp +32 -0
  242. data/ext/wxSizer.cpp +368 -0
  243. data/ext/wxSizer.hpp +23 -0
  244. data/ext/wxSizerItem.cpp +37 -0
  245. data/ext/wxSizerItem.hpp +18 -0
  246. data/ext/wxSlider.cpp +204 -0
  247. data/ext/wxSlider.hpp +21 -0
  248. data/ext/wxSpinButton.cpp +158 -0
  249. data/ext/wxSpinButton.hpp +20 -0
  250. data/ext/wxSpinCtrl.cpp +132 -0
  251. data/ext/wxSpinCtrl.hpp +21 -0
  252. data/ext/wxStartUpTip.cpp +44 -0
  253. data/ext/wxStartUpTip.hpp +16 -0
  254. data/ext/wxStaticBitmap.cpp +79 -0
  255. data/ext/wxStaticBitmap.hpp +17 -0
  256. data/ext/wxStaticBitmapBase.cpp +46 -0
  257. data/ext/wxStaticBitmapBase.hpp +22 -0
  258. data/ext/wxStaticBitmapGeneric.cpp +82 -0
  259. data/ext/wxStaticBitmapGeneric.hpp +17 -0
  260. data/ext/wxStaticBox.cpp +92 -0
  261. data/ext/wxStaticBox.hpp +22 -0
  262. data/ext/wxStaticLine.cpp +100 -0
  263. data/ext/wxStaticLine.hpp +22 -0
  264. data/ext/wxStaticText.cpp +82 -0
  265. data/ext/wxStaticText.hpp +21 -0
  266. data/ext/wxStatusBar.cpp +417 -0
  267. data/ext/wxStatusBar.hpp +17 -0
  268. data/ext/wxStream.cpp +41 -0
  269. data/ext/wxStream.hpp +46 -0
  270. data/ext/wxTaskBar.cpp +104 -0
  271. data/ext/wxTaskBar.hpp +41 -0
  272. data/ext/wxTextArea.cpp +141 -0
  273. data/ext/wxTextArea.hpp +21 -0
  274. data/ext/wxTextAttr.cpp +320 -0
  275. data/ext/wxTextAttr.hpp +28 -0
  276. data/ext/wxTextCtrl.cpp +177 -0
  277. data/ext/wxTextCtrl.hpp +30 -0
  278. data/ext/wxTextEntry.cpp +248 -0
  279. data/ext/wxTextEntry.hpp +19 -0
  280. data/ext/wxTextEntryDialog.cpp +133 -0
  281. data/ext/wxTextEntryDialog.hpp +20 -0
  282. data/ext/wxTimePicker.cpp +105 -0
  283. data/ext/wxTimePicker.hpp +22 -0
  284. data/ext/wxTimer.cpp +106 -0
  285. data/ext/wxTimer.hpp +16 -0
  286. data/ext/wxToggleButton.cpp +96 -0
  287. data/ext/wxToggleButton.hpp +21 -0
  288. data/ext/wxToolBar.cpp +85 -0
  289. data/ext/wxToolBar.hpp +17 -0
  290. data/ext/wxToolBarBase.cpp +615 -0
  291. data/ext/wxToolBarBase.hpp +17 -0
  292. data/ext/wxToolBarTool.cpp +179 -0
  293. data/ext/wxToolBarTool.hpp +16 -0
  294. data/ext/wxToolBook.cpp +96 -0
  295. data/ext/wxToolBook.hpp +23 -0
  296. data/ext/wxToplevel.cpp +125 -0
  297. data/ext/wxToplevel.hpp +25 -0
  298. data/ext/wxTreeBook.cpp +240 -0
  299. data/ext/wxTreeBook.hpp +21 -0
  300. data/ext/wxTreeCtrl.cpp +443 -0
  301. data/ext/wxTreeCtrl.hpp +66 -0
  302. data/ext/wxVariant.cpp +65 -0
  303. data/ext/wxVariant.hpp +17 -0
  304. data/ext/wxWindow.cpp +980 -0
  305. data/ext/wxWindow.hpp +35 -0
  306. data/ext/wxWizard.cpp +321 -0
  307. data/ext/wxWizard.hpp +19 -0
  308. data/ext/wxWizardPage.cpp +137 -0
  309. data/ext/wxWizardPage.hpp +38 -0
  310. data/ext/wxXRC.cpp +48 -0
  311. data/ext/wxXRC.hpp +21 -0
  312. data/old_tests/button.rb +56 -0
  313. data/old_tests/file.png +0 -0
  314. data/old_tests/green.xpm +25 -0
  315. data/old_tests/new16x16.png +0 -0
  316. data/old_tests/project.xml +10 -0
  317. data/old_tests/propertygrid.rb +51 -0
  318. data/old_tests/red.xpm +25 -0
  319. data/old_tests/ruby32x32.png +0 -0
  320. data/old_tests/status.rb +45 -0
  321. data/old_tests/test.rb +580 -0
  322. data/old_tests/wizard.xrc +40 -0
  323. data/old_tests/xrc.rb +38 -0
  324. data/rwx.gemspec +43 -0
  325. data/samples/controls/controls.rb +143 -0
  326. data/samples/controls/icons/choice.bmp +0 -0
  327. data/samples/controls/icons/choice.xpm +27 -0
  328. data/samples/controls/icons/combo.bmp +0 -0
  329. data/samples/controls/icons/combo.xpm +27 -0
  330. data/samples/controls/icons/gauge.bmp +0 -0
  331. data/samples/controls/icons/gauge.xpm +27 -0
  332. data/samples/controls/icons/list.bmp +0 -0
  333. data/samples/controls/icons/list.xpm +27 -0
  334. data/samples/controls/icons/radio.bmp +0 -0
  335. data/samples/controls/icons/radio.xpm +27 -0
  336. data/samples/controls/icons/stattext.xpm +24 -0
  337. data/samples/controls/icons/text.bmp +0 -0
  338. data/samples/controls/icons/text.xpm +27 -0
  339. data/samples/dialog/dialog_sample.rb +227 -0
  340. data/samples/sample.xpm +44 -0
  341. data/samples/widgets/icons/bmpbtn.xpm +37 -0
  342. data/samples/widgets/icons/bmpcombobox.xpm +54 -0
  343. data/samples/widgets/icons/button.xpm +54 -0
  344. data/samples/widgets/icons/checkbox.xpm +54 -0
  345. data/samples/widgets/icons/choice.xpm +27 -0
  346. data/samples/widgets/icons/choicebk.xpm +54 -0
  347. data/samples/widgets/icons/clrpicker.xpm +193 -0
  348. data/samples/widgets/icons/combobox.xpm +54 -0
  349. data/samples/widgets/icons/datepick.xpm +200 -0
  350. data/samples/widgets/icons/dirctrl.xpm +54 -0
  351. data/samples/widgets/icons/dirpicker.xpm +213 -0
  352. data/samples/widgets/icons/filepicker.xpm +214 -0
  353. data/samples/widgets/icons/fontpicker.xpm +185 -0
  354. data/samples/widgets/icons/gauge.xpm +54 -0
  355. data/samples/widgets/icons/hyperlnk.xpm +54 -0
  356. data/samples/widgets/icons/listbook.xpm +54 -0
  357. data/samples/widgets/icons/listbox.xpm +54 -0
  358. data/samples/widgets/icons/notebook.xpm +54 -0
  359. data/samples/widgets/icons/odcombobox.xpm +54 -0
  360. data/samples/widgets/icons/radiobox.xpm +54 -0
  361. data/samples/widgets/icons/scrolbar.xpm +54 -0
  362. data/samples/widgets/icons/slider.xpm +54 -0
  363. data/samples/widgets/icons/spinbtn.xpm +40 -0
  364. data/samples/widgets/icons/statbmp.xpm +40 -0
  365. data/samples/widgets/icons/statbox.xpm +54 -0
  366. data/samples/widgets/icons/stattext.xpm +54 -0
  367. data/samples/widgets/icons/text.xpm +54 -0
  368. data/samples/widgets/icons/timepick.xpm +207 -0
  369. data/samples/widgets/icons/toggle.xpm +54 -0
  370. data/samples/widgets/pages/colorpicker.rb +66 -0
  371. data/samples/widgets/pages/common.rb +17 -0
  372. data/samples/widgets/widgets.rb +29 -0
  373. data/samples/xrc/samples.xrc +46 -0
  374. data/samples/xrc/xrc_sample.rb +59 -0
  375. data/test/test_color.rb +64 -0
  376. metadata +470 -0
@@ -0,0 +1,33 @@
1
+ /*
2
+ * wxPropertyGridInterface.hpp
3
+ *
4
+ * Created on: 09.05.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXPROPERTYGRIDINTERFACE_HPP_
9
+ #define WXPROPERTYGRIDINTERFACE_HPP_
10
+
11
+ #include "main.hpp"
12
+
13
+ extern VALUE rb_mWXPropertyGridInterface;
14
+
15
+ DLL_LOCAL void Init_WXPropertyGridInterface(VALUE rb_mWX);
16
+
17
+ #if wxUSE_PROPGRID
18
+ #include <wx/propgrid/manager.h>
19
+
20
+ template <>
21
+ wxPGPropArgCls unwrap< wxPGPropArgCls >(const VALUE &obj);
22
+
23
+ namespace RubyWX {
24
+ namespace PropertyGridInterface {
25
+
26
+ DLL_LOCAL void _set_extra_style(wxWindow *wnd,VALUE hash);
27
+
28
+ }
29
+ }
30
+
31
+ #endif
32
+
33
+ #endif /* WXPROPERTYGRIDINTERFACE_HPP_ */
@@ -0,0 +1,257 @@
1
+ /*
2
+ * wxPropertyGridManager.cpp
3
+ *
4
+ * Created on: 09.05.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+
9
+ #include "wxPropertyGridManager.hpp"
10
+ #include "wxPropertyGridInterface.hpp"
11
+ #include "wxPropertyGridPage.hpp"
12
+
13
+ VALUE rb_cWXPropertyGridManager;
14
+
15
+ #if wxUSE_PROPGRID
16
+ #define _self unwrap<wxPropertyGridManager*>(self)
17
+
18
+ namespace RubyWX {
19
+ namespace PropertyGridManager {
20
+
21
+ APP_PROTECT(wxPropertyGridManager)
22
+
23
+ singlereturn(GetCurrentPage)
24
+ singlereturn(GetGrid)
25
+ singlereturn(GetToolBar)
26
+
27
+ /*
28
+ * call-seq:
29
+ * PropertyGridManager.new(parent, name, [options])
30
+ * PropertyGridManager.new(parent, [options])
31
+ *
32
+ * creates a new PropertyGridManager widget.
33
+ * ===Arguments
34
+ * * parent of this window or nil
35
+ * * name is a String describing a resource in a loaded xrc
36
+ *
37
+ * *options: Hash with possible options to set:
38
+ * * toolbar true/false Show toolbar for mode and page selection.
39
+ * * description true/false Show adjustable text box showing description
40
+ *
41
+ */
42
+ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
43
+ {
44
+ VALUE parent,name,hash;
45
+
46
+ rb_scan_args(argc, argv, "11:",&parent,&name,&hash);
47
+ if(!_created && !rb_obj_is_kind_of(name,rb_cString))
48
+ {
49
+ wxWindowID id(wxID_ANY);
50
+ int style(wxPGMAN_DEFAULT_STYLE);
51
+
52
+ if(rb_obj_is_kind_of(hash,rb_cHash))
53
+ {
54
+ set_hash_option(hash,"id",id,unwrapID);
55
+ set_hash_option(hash,"style",style);
56
+
57
+ set_hash_flag_option(hash,"toolbar",wxPG_TOOLBAR,style);
58
+ set_hash_flag_option(hash,"description",wxPG_DESCRIPTION,style);
59
+
60
+ }
61
+
62
+ _self->Create(unwrap<wxWindow*>(parent),id,wxDefaultPosition,wxDefaultSize,style);
63
+
64
+ }
65
+
66
+ rb_call_super(argc,argv);
67
+
68
+
69
+ if(rb_obj_is_kind_of(hash,rb_cHash))
70
+ {
71
+ PropertyGridInterface::_set_extra_style(_self,hash);
72
+ }
73
+ return self;
74
+ }
75
+
76
+ wxPropertyGridPage* create_page(VALUE self,VALUE page,VALUE hash)
77
+ {
78
+ if(NIL_P(page))
79
+ return NULL;
80
+
81
+ if(rb_obj_is_kind_of(page,rb_cClass) && rb_class_inherited(page,rb_cWXPropertyGridPage)) {
82
+ VALUE argv2[] = {self, hash };
83
+ page = rb_class_new_instance(2,argv2,page);
84
+ }
85
+
86
+ return unwrap<wxPropertyGridPage*>(page);
87
+ }
88
+
89
+
90
+ /*
91
+ * call-seq:
92
+ * add_page(label, [bitmap], [page]) -> WX::PropertyGridPage
93
+ * add_page(label, [bitmap], page, **options) [{|page| ... }] -> WX::PropertyGridPage
94
+ *
95
+ * adds a new page to the PropertyGridManager widget.
96
+ *
97
+ * ===Arguments
98
+ * * label is the Label of the page. String
99
+ * * bitmap is a WX::Bitmap
100
+ * * page is a WX::PropertyGridPage, or a Class inherited from WX::PropertyGridPage
101
+ * ===Return value
102
+ * WX::PropertyGridPage
103
+ *
104
+ */
105
+ DLL_LOCAL VALUE _add_page(int argc,VALUE *argv,VALUE self)
106
+ {
107
+ VALUE label,bitmap,page,hash;
108
+
109
+ rb_scan_args(argc, argv, "13",&label,&bitmap,&page,&hash);
110
+
111
+ rb_check_frozen(self);
112
+
113
+ wxPropertyGridPage* cpage = create_page(self,page,hash);
114
+
115
+ return wrap(_self->AddPage(unwrap<wxString>(label),unwrap<wxBitmap>(bitmap),cpage));
116
+ }
117
+
118
+ /*
119
+ * call-seq:
120
+ * insert_page(pos, label, [bitmap], [page]) -> WX::PropertyGridPage
121
+ * insert_page(pos, label, [bitmap], page, **options) [{|page| ... }] -> WX::PropertyGridPage
122
+ *
123
+ * inserts a new page to the PropertyGridManager widget.
124
+ *
125
+ * ===Arguments
126
+ * * pos is a Integer
127
+ * * label is the Label of the page. String
128
+ * * bitmap is a WX::Bitmap
129
+ * * page is a WX::PropertyGridPage, or a Class inherited from WX::PropertyGridPage
130
+ * ===Return value
131
+ * WX::PropertyGridPage
132
+ * === Exceptions
133
+ * [IndexError]
134
+ * * pos is greater than the count of pages
135
+ *
136
+ */
137
+ DLL_LOCAL VALUE _insert_page(int argc,VALUE *argv,VALUE self)
138
+ {
139
+ VALUE idx,label,bitmap,page,hash;
140
+
141
+ rb_scan_args(argc, argv, "23",&idx,&label,&bitmap,&page,&hash);
142
+
143
+ rb_check_frozen(self);
144
+
145
+ int cidx = NUM2INT(idx);
146
+ if(check_index(cidx,_self->GetPageCount()))
147
+ {
148
+ wxPropertyGridPage* cpage = create_page(self,page,hash);
149
+
150
+ return wrap(_self->InsertPage(cidx,unwrap<wxString>(label),unwrap<wxBitmap>(bitmap),cpage));
151
+ }
152
+ return Qnil;
153
+ }
154
+
155
+
156
+ /*
157
+ * call-seq:
158
+ * prepend_page(label, [bitmap], [page]) -> WX::PropertyGridPage
159
+ * prepend_page(label, [bitmap], page, **options) [{|page| ... }] -> WX::PropertyGridPage
160
+ *
161
+ * prepends a new page to the PropertyGridManager widget.
162
+ *
163
+ * ===Arguments
164
+ * * label is the Label of the page. String
165
+ * * bitmap is a WX::Bitmap
166
+ * * page is a WX::PropertyGridPage, or a Class inherited from WX::PropertyGridPage
167
+ * ===Return value
168
+ * WX::PropertyGridPage
169
+ *
170
+ */
171
+ DLL_LOCAL VALUE _prepend_page(int argc,VALUE *argv,VALUE self)
172
+ {
173
+ VALUE label,bitmap,page,hash;
174
+
175
+ rb_scan_args(argc, argv, "13",&label,&bitmap,&page,&hash);
176
+
177
+ rb_check_frozen(self);
178
+
179
+ wxPropertyGridPage* cpage = create_page(self,page,hash);
180
+
181
+ return wrap(_self->InsertPage(0,unwrap<wxString>(label),unwrap<wxBitmap>(bitmap),cpage));
182
+ }
183
+
184
+
185
+ DLL_LOCAL VALUE _each_size(VALUE self)
186
+ {
187
+ return UINT2NUM(_self->GetPageCount());
188
+ }
189
+
190
+ DLL_LOCAL VALUE _each(VALUE self)
191
+ {
192
+ RETURN_SIZED_ENUMERATOR(self,0,NULL,RUBY_METHOD_FUNC(_each_size));
193
+ std::size_t count = _self->GetPageCount();
194
+ for(std::size_t i = 0; i < count; ++i)
195
+ {
196
+ rb_yield(wrap(_self->GetPage(i)));
197
+ }
198
+ return self;
199
+ }
200
+
201
+
202
+ }
203
+ }
204
+ #endif
205
+
206
+
207
+ /* Document-method: tool_bar
208
+ * call-seq:
209
+ * tool_bar -> WX::ToolBar
210
+ *
211
+ * returns the tool bar of this WX::PropertyGridManager when available.
212
+ * ===Return value
213
+ * WX::ToolBar
214
+ */
215
+
216
+ /* Document-method: grid
217
+ * call-seq:
218
+ * grid -> WX::PropertyGrid
219
+ *
220
+ * returns the grid of this WX::PropertyGridManager.
221
+ * ===Return value
222
+ * WX::PropertyGrid
223
+ */
224
+ DLL_LOCAL void Init_WXPropertyGridManager(VALUE rb_mWX)
225
+ {
226
+ #if 0
227
+ rb_cWXPanel = rb_define_class_under(rb_mWX,"Panel",rb_cWXWindow);
228
+ rb_mWXPropertyGridInterface = rb_define_module_under(rb_mWX,"PropertyGridInterface");
229
+
230
+ #endif
231
+
232
+ #if wxUSE_PROPGRID
233
+ using namespace RubyWX::PropertyGridManager;
234
+ rb_cWXPropertyGridManager = rb_define_class_under(rb_mWX,"PropertyGridManager",rb_cWXPanel);
235
+ rb_define_alloc_func(rb_cWXPropertyGridManager,_alloc);
236
+
237
+ rb_include_module(rb_cWXPropertyGridManager,rb_mWXPropertyGridInterface);
238
+
239
+ rb_define_method(rb_cWXPropertyGridManager,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
240
+
241
+ rb_define_method(rb_cWXPropertyGridManager,"tool_bar",RUBY_METHOD_FUNC(_GetToolBar),0);
242
+ rb_define_method(rb_cWXPropertyGridManager,"grid",RUBY_METHOD_FUNC(_GetGrid),0);
243
+
244
+ rb_define_method(rb_cWXPropertyGridManager,"current_page",RUBY_METHOD_FUNC(_GetCurrentPage),0);
245
+
246
+ rb_define_method(rb_cWXPropertyGridManager,"add_page",RUBY_METHOD_FUNC(_add_page),-1);
247
+ rb_define_method(rb_cWXPropertyGridManager,"insert_page",RUBY_METHOD_FUNC(_insert_page),-1);
248
+ rb_define_method(rb_cWXPropertyGridManager,"each_page",RUBY_METHOD_FUNC(_each),0);
249
+
250
+ rb_define_const(rb_cWXPropertyGridManager,"DEFAULT_STYLE",INT2NUM(wxPGMAN_DEFAULT_STYLE));
251
+ rb_define_const(rb_cWXPropertyGridManager,"TOOLBAR",INT2NUM(wxPG_TOOLBAR));
252
+ rb_define_const(rb_cWXPropertyGridManager,"DESCRIPTION",INT2NUM(wxPG_DESCRIPTION));
253
+
254
+ registerInfo<wxPropertyGridManager>(rb_cWXPropertyGridManager);
255
+ #endif
256
+
257
+ }
@@ -0,0 +1,20 @@
1
+ /*
2
+ * wxPropertyGridManager.hpp
3
+ *
4
+ * Created on: 09.05.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXPROPERTYGRIDMANAGER_HPP_
9
+ #define WXPROPERTYGRIDMANAGER_HPP_
10
+
11
+ #include "wxPanel.hpp"
12
+
13
+ extern VALUE rb_cWXPropertyGridManager;
14
+ DLL_LOCAL void Init_WXPropertyGridManager(VALUE rb_mWX);
15
+
16
+ #if wxUSE_PROPGRID
17
+ #include <wx/propgrid/manager.h>
18
+ #endif
19
+
20
+ #endif /* WXPROPERTYGRIDMANAGER_HPP_ */
@@ -0,0 +1,65 @@
1
+ /*
2
+ * wxPropertyGrid.cpp
3
+ *
4
+ * Created on: 09.05.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #include "wxPropertyGridPage.hpp"
9
+ #include "wxPropertyGridInterface.hpp"
10
+ #include "wxEvtHandler.hpp"
11
+
12
+ VALUE rb_cWXPropertyGridPage;
13
+
14
+ #if wxUSE_PROPGRID
15
+ #define _self unwrap<wxPropertyGridPage*>(self)
16
+
17
+ namespace RubyWX {
18
+ namespace PropertyGridPage {
19
+
20
+ APP_PROTECT(wxPropertyGridPage)
21
+
22
+ singlereturn(GetRoot)
23
+
24
+ }
25
+ }
26
+ #endif
27
+
28
+
29
+ /* Document-method: root
30
+ * call-seq:
31
+ * root -> WX::Property
32
+ *
33
+ * returns the root property of this WX::PropertyGridPage
34
+ * ===Return value
35
+ * WX::Property
36
+ */
37
+
38
+
39
+ DLL_LOCAL void Init_WXPropertyGridPage(VALUE rb_mWX)
40
+ {
41
+ #if 0
42
+ rb_mWXPropertyGridInterface = rb_define_module_under(rb_mWX,"PropertyGridInterface");
43
+
44
+ rb_mWXEvtHandler = rb_define_module_under(rb_mWX,"EvtHandler");
45
+ #endif
46
+ #if wxUSE_PROPGRID
47
+ using namespace RubyWX::PropertyGridPage;
48
+ rb_cWXPropertyGridPage = rb_define_class_under(rb_mWX,"PropertyGridPage",rb_cObject);
49
+ rb_define_alloc_func(rb_cWXPropertyGridPage,_alloc);
50
+
51
+ rb_undef_method(rb_cWXPropertyGridPage,"initialize_copy");
52
+ rb_undef_method(rb_cWXPropertyGridPage,"_load");
53
+ rb_undef_method(rb_cWXPropertyGridPage,"_dump");
54
+
55
+ rb_include_module(rb_cWXPropertyGridPage,rb_mWXPropertyGridInterface);
56
+ rb_include_module(rb_cWXPropertyGridPage,rb_mWXEvtHandler);
57
+
58
+ rb_define_method(rb_cWXPropertyGridPage,"root",RUBY_METHOD_FUNC(_GetRoot),0);
59
+
60
+ registerInfo<wxPropertyGridPage>(rb_cWXPropertyGridPage);
61
+ #endif
62
+
63
+ }
64
+
65
+
@@ -0,0 +1,20 @@
1
+ /*
2
+ * wxPropertyGridPAge.hpp
3
+ *
4
+ * Created on: 05.12.2013
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXPROPERTYGRIDPAGE_HPP_
9
+ #define WXPROPERTYGRIDPAGE_HPP_
10
+
11
+ #include "wxControl.hpp"
12
+
13
+ extern VALUE rb_cWXPropertyGridPage;
14
+ DLL_LOCAL void Init_WXPropertyGridPage(VALUE rb_mWX);
15
+
16
+ #if wxUSE_PROPGRID
17
+ #include <wx/propgrid/propgrid.h>
18
+ #endif
19
+
20
+ #endif /* WXPROPERTYGRIDPAGE_HPP_ */
@@ -0,0 +1,405 @@
1
+ /*
2
+ * wxRadioBox.cpp
3
+ *
4
+ * Created on: 14.03.2013
5
+ * Author: hanmac
6
+ */
7
+
8
+ #include "wxRadioBox.hpp"
9
+
10
+ VALUE rb_cWXRadioBox;
11
+
12
+ #if wxUSE_RADIOBOX
13
+
14
+ namespace RubyWX {
15
+ namespace RadioBox {
16
+ #define _self unwrap<wxRadioBox*>(self)
17
+
18
+ APP_PROTECT(wxRadioBox)
19
+
20
+ macro_attr_selection(Selection,GetCount)
21
+
22
+ macro_attr(StringSelection,wxString)
23
+
24
+ /*
25
+ * call-seq:
26
+ * RadioBox.new(parent, name, [options])
27
+ * RadioBox.new(parent, [options])
28
+ *
29
+ * creates a new RadioBox widget.
30
+ * ===Arguments
31
+ * * parent of this window or nil
32
+ *
33
+ * *options: Hash with possible options to set
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
+ wxString label;
42
+ wxArrayString choices;
43
+ int style(wxRA_SPECIFY_COLS);
44
+ int selection(-1);
45
+ bool selset(false);
46
+
47
+ if(rb_obj_is_kind_of(hash,rb_cHash)) {
48
+ set_hash_option(hash,"id",id,unwrapID);
49
+ set_hash_option(hash,"label",label);
50
+ set_hash_option(hash,"choices",choices);
51
+ set_hash_option(hash,"style",style);
52
+ selset = set_hash_option(hash,"selection",selection);
53
+ }
54
+ _self->Create(
55
+ unwrap<wxWindow*>(parent),id,label,
56
+ wxDefaultPosition,wxDefaultSize,
57
+ choices,0,style
58
+ );
59
+ if(selset && check_index(selection,_self->GetCount()))
60
+ _self->SetSelection(selection);
61
+
62
+ }
63
+ rb_call_super(argc,argv);
64
+ return self;
65
+ }
66
+
67
+ singlereturn(GetCount)
68
+
69
+ /*
70
+ * call-seq:
71
+ * each_item -> Enumerator
72
+ * each_item { | text| } -> self
73
+ *
74
+ * iterates the items of this control.
75
+ * ===Return value
76
+ * self
77
+ *
78
+ */
79
+ DLL_LOCAL VALUE _each(VALUE self)
80
+ {
81
+ RETURN_SIZED_ENUMERATOR(self,0,NULL,RUBY_METHOD_FUNC(_GetCount));
82
+ std::size_t count = _self->GetCount();
83
+ for(std::size_t i = 0; i < count; ++i)
84
+ rb_yield(wrap(_self->GetString(i)));
85
+ return self;
86
+ }
87
+
88
+ /*
89
+ * call-seq:
90
+ * get_item_string(pos) -> String
91
+ *
92
+ * returns the String of the item at the given position.
93
+ * ===Arguments
94
+ * * pos of the item. Integer
95
+ * ===Return value
96
+ * String
97
+ * === Exceptions
98
+ * [IndexError]
99
+ * * pos is greater than the count of items
100
+ *
101
+ */
102
+ DLL_LOCAL VALUE _getItemString(VALUE self,VALUE idx)
103
+ {
104
+ int cidx = NUM2INT(idx);
105
+ if(check_index(cidx,_self->GetCount()))
106
+ return wrap(_self->GetString(cidx));
107
+ return Qnil;
108
+ }
109
+
110
+
111
+ /*
112
+ * call-seq:
113
+ * set_item_string(pos,text) -> self
114
+ *
115
+ * sets the String of the item at the given position.
116
+ * ===Arguments
117
+ * * pos of the item. Integer
118
+ * * text of the item. String
119
+ * ===Return value
120
+ * self
121
+ * === Exceptions
122
+ * [IndexError]
123
+ * * pos is greater than the count of items
124
+ *
125
+ */
126
+ DLL_LOCAL VALUE _setItemString(VALUE self,VALUE idx,VALUE val)
127
+ {
128
+ rb_check_frozen(self);
129
+
130
+ int cidx = NUM2INT(idx);
131
+ if(check_index(cidx,_self->GetCount()))
132
+ _self->SetString(cidx,unwrap<wxString>(val));
133
+
134
+ return self;
135
+ }
136
+
137
+ /*
138
+ * call-seq:
139
+ * get_item_shown(pos) -> true/false
140
+ *
141
+ * returns if the item at the given position is shown.
142
+ * ===Arguments
143
+ * * pos of the item. Integer
144
+ * ===Return value
145
+ * true/false
146
+ * === Exceptions
147
+ * [IndexError]
148
+ * * pos is greater than the count of items
149
+ *
150
+ */
151
+ DLL_LOCAL VALUE _getItemShown(VALUE self,VALUE idx)
152
+ {
153
+ int cidx = NUM2INT(idx);
154
+ if(check_index(cidx,_self->GetCount()))
155
+ return wrap(_self->IsItemShown(cidx));
156
+ return Qnil;
157
+ }
158
+
159
+
160
+ /*
161
+ * call-seq:
162
+ * set_item_shown(pos, val) -> self
163
+ *
164
+ * sets if the item at the given position is shown.
165
+ * ===Arguments
166
+ * * pos of the item. Integer
167
+ * * val if item should be shown true/false
168
+ * ===Return value
169
+ * self
170
+ * === Exceptions
171
+ * [IndexError]
172
+ * * pos is greater than the count of items
173
+ *
174
+ */
175
+ DLL_LOCAL VALUE _setItemShown(VALUE self,VALUE idx,VALUE val)
176
+ {
177
+ rb_check_frozen(self);
178
+
179
+ int cidx = NUM2INT(idx);
180
+ if(check_index(cidx,_self->GetCount()))
181
+ _self->Show(cidx,RTEST(val));
182
+
183
+ return self;
184
+ }
185
+
186
+
187
+ /*
188
+ * call-seq:
189
+ * get_item_enabled(pos) -> true/false
190
+ *
191
+ * returns if the item at the given position is enabled.
192
+ * ===Arguments
193
+ * * pos of the item. Integer
194
+ * ===Return value
195
+ * true/false
196
+ * === Exceptions
197
+ * [IndexError]
198
+ * * pos is greater than the count of items
199
+ *
200
+ */
201
+ DLL_LOCAL VALUE _getItemEnabled(VALUE self,VALUE idx)
202
+ {
203
+ int cidx = NUM2INT(idx);
204
+ if(check_index(cidx,_self->GetCount()))
205
+ return wrap(_self->IsItemEnabled(cidx));
206
+ return Qnil;
207
+ }
208
+
209
+ /*
210
+ * call-seq:
211
+ * set_item_enabled(pos, val) -> self
212
+ *
213
+ * sets if the item at the given position is enabled.
214
+ * ===Arguments
215
+ * * pos of the item. Integer
216
+ * * val if item should be shown true/false
217
+ * ===Return value
218
+ * self
219
+ * === Exceptions
220
+ * [IndexError]
221
+ * * pos is greater than the count of items
222
+ *
223
+ */
224
+ DLL_LOCAL VALUE _setItemEnabled(VALUE self,VALUE idx,VALUE val)
225
+ {
226
+ rb_check_frozen(self);
227
+
228
+ int cidx = NUM2INT(idx);
229
+ if(check_index(cidx,_self->GetCount()))
230
+ _self->Enable(cidx,RTEST(val));
231
+
232
+ return self;
233
+ }
234
+
235
+ #if wxUSE_TOOLTIPS
236
+ /*
237
+ * call-seq:
238
+ * get_item_tooltip(pos) -> String/nil
239
+ *
240
+ * returns the tool tip of the item or nil if none is set.
241
+ * ===Arguments
242
+ * * pos of the item. Integer
243
+ * ===Return value
244
+ * String/nil
245
+ * === Exceptions
246
+ * [IndexError]
247
+ * * pos is greater than the count of items
248
+ *
249
+ */
250
+ DLL_LOCAL VALUE _getItemToolTip(VALUE self,VALUE idx)
251
+ {
252
+ int cidx = NUM2INT(idx);
253
+ if(check_index(cidx,_self->GetCount()))
254
+ return wrap(_self->GetItemToolTip(cidx));
255
+ return Qnil;
256
+ }
257
+
258
+ /*
259
+ * call-seq:
260
+ * set_item_tooltip(pos, val) -> self
261
+ *
262
+ * sets the tool tip of the item at the given position.
263
+ * ===Arguments
264
+ * * pos of the item. Integer
265
+ * * val is the tool tip of the item. String
266
+ * ===Return value
267
+ * self
268
+ * === Exceptions
269
+ * [IndexError]
270
+ * * pos is greater than the count of items
271
+ *
272
+ */
273
+ DLL_LOCAL VALUE _setItemToolTip(VALUE self,VALUE idx,VALUE val)
274
+ {
275
+ rb_check_frozen(self);
276
+
277
+ int cidx = NUM2INT(idx);
278
+ if(check_index(cidx,_self->GetCount()))
279
+ _self->SetItemToolTip(cidx,unwrap<wxString>(val));
280
+
281
+ return self;
282
+ }
283
+ #endif
284
+
285
+ #if wxUSE_HELP
286
+ /*
287
+ * call-seq:
288
+ * get_item_helptext(pos) -> String
289
+ *
290
+ * returns the help text of the item.
291
+ * ===Arguments
292
+ * * pos of the item. Integer
293
+ * ===Return value
294
+ * String
295
+ * === Exceptions
296
+ * [IndexError]
297
+ * * pos is greater than the count of items
298
+ *
299
+ */
300
+ DLL_LOCAL VALUE _getItemHelpText(VALUE self,VALUE idx)
301
+ {
302
+ int cidx = NUM2INT(idx);
303
+ if(check_index(cidx,_self->GetCount()))
304
+ return wrap(_self->GetItemHelpText(cidx));
305
+ return Qnil;
306
+ }
307
+
308
+
309
+ /*
310
+ * call-seq:
311
+ * set_item_helptext(pos, val) -> self
312
+ *
313
+ * sets the help text of the item at the given position.
314
+ * ===Arguments
315
+ * * pos of the item. Integer
316
+ * * val is the help text of the item. String
317
+ * ===Return value
318
+ * self
319
+ * === Exceptions
320
+ * [IndexError]
321
+ * * pos is greater than the count of items
322
+ *
323
+ */
324
+ DLL_LOCAL VALUE _setItemHelpText(VALUE self,VALUE idx,VALUE val)
325
+ {
326
+ rb_check_frozen(self);
327
+
328
+ int cidx = NUM2INT(idx);
329
+ if(check_index(cidx,_self->GetCount()))
330
+ _self->SetItemHelpText(cidx,unwrap<wxString>(val));
331
+
332
+ return self;
333
+ }
334
+ #endif
335
+
336
+
337
+ }
338
+ }
339
+
340
+ #endif
341
+
342
+
343
+ /* Document-attr: selection
344
+ * Integer/nil returns the index of the current selected item, or nil if none is selected.
345
+ */
346
+ /* Document-attr: string_selection
347
+ * String returns the string of the current selected item.
348
+ */
349
+
350
+
351
+ DLL_LOCAL void Init_WXRadioBox(VALUE rb_mWX)
352
+ {
353
+ #if 0
354
+ rb_mWX = rb_define_module("WX");
355
+ rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
356
+
357
+ rb_cWXControl = rb_define_class_under(rb_mWX,"Control",rb_cWXWindow);
358
+
359
+ rb_define_attr(rb_cWXRadioBox,"selection",1,1);
360
+ rb_define_attr(rb_cWXRadioBox,"string_selection",1,1);
361
+
362
+ #endif
363
+ #if wxUSE_RADIOBOX
364
+ using namespace RubyWX::RadioBox;
365
+ rb_cWXRadioBox = rb_define_class_under(rb_mWX,"RadioBox",rb_cWXControl);
366
+ rb_define_alloc_func(rb_cWXRadioBox,_alloc);
367
+
368
+ rb_define_method(rb_cWXRadioBox,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
369
+
370
+ rb_define_method(rb_cWXRadioBox,"each_item",RUBY_METHOD_FUNC(_each),0);
371
+
372
+ rb_define_method(rb_cWXRadioBox,"get_item_string",RUBY_METHOD_FUNC(_getItemString),1);
373
+ rb_define_method(rb_cWXRadioBox,"set_item_string",RUBY_METHOD_FUNC(_setItemString),2);
374
+
375
+ rb_define_method(rb_cWXRadioBox,"get_item_shown",RUBY_METHOD_FUNC(_getItemShown),1);
376
+ rb_define_method(rb_cWXRadioBox,"set_item_shown",RUBY_METHOD_FUNC(_setItemShown),2);
377
+
378
+ rb_define_alias(rb_cWXRadioBox,"item_shown?","get_item_shown");
379
+
380
+ rb_define_method(rb_cWXRadioBox,"get_item_enabled",RUBY_METHOD_FUNC(_getItemEnabled),1);
381
+ rb_define_method(rb_cWXRadioBox,"set_item_enabled",RUBY_METHOD_FUNC(_setItemEnabled),2);
382
+
383
+ rb_define_alias(rb_cWXRadioBox,"item_enabled?","get_item_enabled");
384
+
385
+ #if wxUSE_TOOLTIPS
386
+ rb_define_method(rb_cWXRadioBox,"get_item_tooltip",RUBY_METHOD_FUNC(_getItemToolTip),1);
387
+ rb_define_method(rb_cWXRadioBox,"set_item_tooltip",RUBY_METHOD_FUNC(_setItemToolTip),2);
388
+ #endif
389
+
390
+ #if wxUSE_HELP
391
+ rb_define_method(rb_cWXRadioBox,"get_item_helptext",RUBY_METHOD_FUNC(_getItemHelpText),1);
392
+ rb_define_method(rb_cWXRadioBox,"set_item_helptext",RUBY_METHOD_FUNC(_setItemHelpText),2);
393
+ #endif
394
+
395
+ rb_define_attr_method(rb_cWXRadioBox,"selection",_getSelection,_setSelection);
396
+ rb_define_attr_method(rb_cWXRadioBox,"string_selection",_getStringSelection,_setStringSelection);
397
+
398
+ registerEventType("radiobox", wxEVT_RADIOBOX,rb_cWXCommandEvent);
399
+
400
+ registerInfo<wxRadioBox>(rb_cWXRadioBox);
401
+ #endif
402
+
403
+ }
404
+
405
+