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,37 @@
1
+ /*
2
+ * wxPen.hpp
3
+ *
4
+ * Created on: 16.03.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXPEN_HPP_
9
+ #define WXPEN_HPP_
10
+
11
+ #include "main.hpp"
12
+
13
+ extern VALUE rb_cWXPen;
14
+ void Init_WXPen(VALUE rb_mWX);
15
+
16
+ template <>
17
+ VALUE wrap< wxPen >(wxPen *bitmap );
18
+
19
+ template <>
20
+ VALUE wrap< wxPen >(const wxPen &bitmap );
21
+
22
+ template <>
23
+ wxPen* unwrap< wxPen* >(const VALUE &vbitmap);
24
+
25
+ template <>
26
+ wxPen unwrap< wxPen >(const VALUE &vbitmap);
27
+
28
+
29
+ namespace RubyWX {
30
+ namespace Pen {
31
+
32
+ void define_const();
33
+
34
+ }
35
+ }
36
+
37
+ #endif /* WXPEN_HPP_ */
@@ -0,0 +1,121 @@
1
+ /*
2
+ * wxPickerBase.cpp
3
+ *
4
+ * Created on: 04.03.2012
5
+ * Author: hanmac
6
+ */
7
+ #include "wxPickerBase.hpp"
8
+ #include "wxTextCtrl.hpp"
9
+
10
+ VALUE rb_cWXPickerBase;
11
+
12
+ #if wxUSE_CONTROLS
13
+
14
+ template <>
15
+ wxPickerBase* unwrap<wxPickerBase*>(const VALUE &arg)
16
+ {
17
+ return unwrapTypedPtr<wxPickerBase>(arg,rb_cWXPickerBase);
18
+ }
19
+
20
+ #define _self unwrap<wxPickerBase*>(self)
21
+
22
+ namespace RubyWX {
23
+ namespace PickerBase {
24
+
25
+ macro_attr_con(InternalMargin,int,_self->HasTextCtrl())
26
+ macro_attr_con(TextCtrlProportion,int,_self->HasTextCtrl())
27
+ macro_attr(PickerCtrlProportion,int)
28
+ macro_attr_bool_con(TextCtrlGrowable,HasTextCtrl)
29
+ macro_attr_bool(PickerCtrlGrowable)
30
+
31
+ macro_attr(TextCtrl,wxTextCtrl*)
32
+ macro_attr(PickerCtrl,wxControl*)
33
+
34
+
35
+ void set_style_flags(VALUE hash,int& flags)
36
+ {
37
+
38
+ set_hash_flag_option(hash,"use_textctrl",wxPB_USE_TEXTCTRL,flags);
39
+ set_hash_flag_option(hash,"small",wxPB_SMALL,flags);
40
+
41
+ }
42
+
43
+
44
+ }
45
+ }
46
+
47
+ #endif
48
+
49
+
50
+ /* Document-attr: text_ctrl_growable
51
+ * true if the text control is growable. true/false
52
+ */
53
+ /* Document-attr: picker_ctrl_growable
54
+ * true if the picker control is growable. true/false
55
+ */
56
+ /* Document-attr: text_ctrl_proportion
57
+ * the proportion value of the text control. Integer
58
+ */
59
+ /* Document-attr: picker_ctrl_proportion
60
+ * the proportion value of the picker. Integer
61
+ */
62
+ /* Document-attr: text_ctrl
63
+ * the text control. WX::TextCtrl / nil
64
+ */
65
+ /* Document-attr: picker_ctrl
66
+ * the picker control. WX::Control / nil
67
+ */
68
+ /* Document-attr: internal_margin
69
+ * the margin (in pixel) between the picker and the text control. Integer
70
+ */
71
+
72
+ /* Document-const: USE_TEXTCTRL
73
+ * Creates a text control to the left of the picker which is completely managed by this WX::PickerBase class.
74
+ */
75
+ /* Document-const: SMALL
76
+ * Use smaller version of the control with a small "..." button
77
+ */
78
+ DLL_LOCAL void Init_WXPickerBase(VALUE rb_mWX)
79
+ {
80
+ #if 0
81
+ rb_mWX = rb_define_module("WX");
82
+ rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
83
+
84
+ rb_cWXControl = rb_define_class_under(rb_mWX,"Control",rb_cWXWindow);
85
+
86
+ rb_define_attr(rb_cWXPickerBase,"internal_margin",1,1);
87
+
88
+ rb_define_attr(rb_cWXPickerBase,"text_ctrl",1,1);
89
+ rb_define_attr(rb_cWXPickerBase,"picker_ctrl",1,1);
90
+
91
+ rb_define_attr(rb_cWXPickerBase,"text_ctrl_proportion",1,1);
92
+ rb_define_attr(rb_cWXPickerBase,"picker_ctrl_proportion",1,1);
93
+
94
+ rb_define_attr(rb_cWXPickerBase,"text_ctrl_growable",1,1);
95
+ rb_define_attr(rb_cWXPickerBase,"picker_ctrl_growable",1,1);
96
+
97
+ #endif
98
+
99
+ #if wxUSE_CONTROLS
100
+ using namespace RubyWX::PickerBase;
101
+ rb_cWXPickerBase = rb_define_class_under(rb_mWX,"PickerBase",rb_cWXControl);
102
+ rb_undef_alloc_func(rb_cWXPickerBase);
103
+
104
+ rb_define_attr_method(rb_cWXPickerBase,"internal_margin",_getInternalMargin,_setInternalMargin);
105
+
106
+ rb_define_attr_method(rb_cWXPickerBase,"text_ctrl",_getTextCtrl,_setTextCtrl);
107
+ rb_define_attr_method(rb_cWXPickerBase,"picker_ctrl",_getPickerCtrl,_setPickerCtrl);
108
+
109
+ rb_define_attr_method(rb_cWXPickerBase,"text_ctrl_proportion",_getTextCtrlProportion,_setTextCtrlProportion);
110
+ rb_define_attr_method(rb_cWXPickerBase,"picker_ctrl_proportion",_getPickerCtrlProportion,_setPickerCtrlProportion);
111
+
112
+ rb_define_attr_method(rb_cWXPickerBase,"text_ctrl_growable",_getTextCtrlGrowable,_setTextCtrlGrowable);
113
+ rb_define_attr_method(rb_cWXPickerBase,"picker_ctrl_growable",_getPickerCtrlGrowable,_setPickerCtrlGrowable);
114
+
115
+ rb_define_const(rb_cWXPickerBase,"USE_TEXTCTRL",INT2NUM(wxPB_USE_TEXTCTRL));
116
+ rb_define_const(rb_cWXPickerBase,"SMALL",INT2NUM(wxPB_SMALL));
117
+ #endif
118
+
119
+ }
120
+
121
+
@@ -0,0 +1,28 @@
1
+ /*
2
+ * wxPickerBase.hpp
3
+ *
4
+ * Created on: 04.03.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXPICKERBASE_HPP_
9
+ #define WXPICKERBASE_HPP_
10
+
11
+ #include "wxControl.hpp"
12
+ #include <wx/pickerbase.h>
13
+
14
+ extern VALUE rb_cWXPickerBase;
15
+
16
+ void Init_WXPickerBase(VALUE rb_mWX);
17
+
18
+
19
+ namespace RubyWX {
20
+ namespace PickerBase {
21
+
22
+ void set_style_flags(VALUE hash,int& flags);
23
+
24
+ }
25
+ }
26
+
27
+
28
+ #endif /* WXPICKERBASE_HPP_ */
@@ -0,0 +1,224 @@
1
+ /*
2
+ * wxRealPoint.cpp
3
+ *
4
+ * Created on: 21.04.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #include "wxPoint.hpp"
9
+ VALUE rb_cwxPoint;
10
+
11
+ ID rwxID_x,rwxID_y;
12
+
13
+ #define _self unwrap<wxRealPoint*>(self)
14
+
15
+
16
+ template <>
17
+ VALUE wrap< wxRealPoint >(wxRealPoint *point )
18
+ {
19
+ return wrapTypedPtr(point, rb_cwxPoint);
20
+ }
21
+
22
+ template <>
23
+ VALUE wrap< wxPoint >(const wxPoint &point )
24
+ {
25
+ return wrap(new wxRealPoint(point));
26
+ }
27
+
28
+ template <>
29
+ bool is_wrapable< wxRealPoint >(const VALUE &vpoint)
30
+ {
31
+ if (rb_obj_is_kind_of(vpoint, rb_cwxPoint)){
32
+ return true;
33
+ }else if(rb_respond_to(vpoint,rwxID_x) &&
34
+ rb_respond_to(vpoint,rwxID_y)){
35
+ return true;
36
+ }else
37
+ return false;
38
+ }
39
+ template <>
40
+ bool is_wrapable< wxPoint >(const VALUE &vpoint)
41
+ {
42
+ return is_wrapable< wxRealPoint >(vpoint);
43
+ }
44
+
45
+ template <>
46
+ wxRealPoint unwrap< wxRealPoint >(const VALUE &vpoint)
47
+ {
48
+ if(rb_obj_is_kind_of(vpoint, rb_cArray)){
49
+ wxRealPoint point;
50
+ point.x = NUM2DBL(RARRAY_AREF(vpoint,0));
51
+ point.y = NUM2DBL(RARRAY_AREF(vpoint,1));
52
+ return point;
53
+ }else if(!rb_obj_is_kind_of(vpoint, rb_cwxPoint) &&
54
+ rb_respond_to(vpoint,rwxID_x) &&
55
+ rb_respond_to(vpoint,rwxID_y)){
56
+ wxRealPoint point;
57
+ point.x = NUM2DBL(rb_funcall(vpoint,rwxID_x,0));
58
+ point.y = NUM2DBL(rb_funcall(vpoint,rwxID_y,0));
59
+ return point;
60
+ }else{
61
+ return *unwrap<wxRealPoint*>(vpoint);
62
+ }
63
+
64
+ }
65
+
66
+
67
+ template <>
68
+ wxPoint unwrap< wxPoint >(const VALUE &vpoint)
69
+ {
70
+ if(rb_obj_is_kind_of(vpoint, rb_cArray)){
71
+ wxPoint point;
72
+ point.x = NUM2INT(RARRAY_AREF(vpoint,0));
73
+ point.y = NUM2INT(RARRAY_AREF(vpoint,1));
74
+ return point;
75
+ }else if(!rb_obj_is_kind_of(vpoint, rb_cwxPoint) &&
76
+ rb_respond_to(vpoint,rwxID_x) &&
77
+ rb_respond_to(vpoint,rwxID_y)){
78
+ wxPoint point;
79
+ point.x = NUM2INT(rb_funcall(vpoint,rwxID_x,0));
80
+ point.y = NUM2INT(rb_funcall(vpoint,rwxID_y,0));
81
+ return point;
82
+ }else{
83
+ return *unwrap<wxRealPoint*>(vpoint);
84
+ }
85
+
86
+ }
87
+
88
+ template <>
89
+ wxPointList* unwrap< wxPointList* >(const VALUE &val)
90
+ {
91
+ wxPointList *result = new wxPointList;
92
+ VALUE dp(rb_Array(val));
93
+ std::size_t length = RARRAY_LEN(dp);
94
+ for(std::size_t i = 0; i < length; ++i)
95
+ result->Append(new wxPoint(unwrap<wxPoint>(RARRAY_AREF(dp,i))));
96
+ return result;
97
+ }
98
+
99
+ namespace RubyWX {
100
+ namespace Point {
101
+
102
+ macro_attr_prop(x,double)
103
+ macro_attr_prop(y,double)
104
+
105
+ DLL_LOCAL VALUE _alloc(VALUE self)
106
+ {
107
+ return wrap(new wxRealPoint());
108
+ }
109
+
110
+ DLL_LOCAL VALUE _initialize(VALUE self,VALUE x,VALUE y)
111
+ {
112
+ _set_x(self,x);
113
+ _set_y(self,y);
114
+ return self;
115
+ }
116
+
117
+ /*
118
+ */
119
+ DLL_LOCAL VALUE _initialize_copy(VALUE self, VALUE other)
120
+ {
121
+ VALUE result = rb_call_super(1,&other);
122
+ _set_x(self,_get_x(other));
123
+ _set_y(self,_get_y(other));
124
+ return result;
125
+ }
126
+
127
+ /* Document-method: inspect
128
+ * call-seq:
129
+ * inspect -> String
130
+ *
131
+ * Human-readable description.
132
+ * ===Return value
133
+ * String
134
+ */
135
+ DLL_LOCAL VALUE _inspect(VALUE self)
136
+ {
137
+ return rb_sprintf( "%s(%f, %f)",
138
+ rb_obj_classname( self ),
139
+ NUM2DBL(_get_x(self)),
140
+ NUM2DBL(_get_y(self)));
141
+ }
142
+
143
+ /* Document-method: marshal_dump
144
+ * call-seq:
145
+ * marshal_dump -> Array
146
+ *
147
+ * Provides marshalling support for use by the Marshal library.
148
+ * ===Return value
149
+ * Array
150
+ */
151
+ DLL_LOCAL VALUE _marshal_dump(VALUE self)
152
+ {
153
+ VALUE ptr[2];
154
+ ptr[0] = _get_x(self);
155
+ ptr[1] = _get_y(self);
156
+ return rb_ary_new4(2, ptr);
157
+ }
158
+
159
+ /* Document-method: marshal_load
160
+ * call-seq:
161
+ * marshal_load(array) -> nil
162
+ *
163
+ * Provides marshalling support for use by the Marshal library.
164
+ *
165
+ *
166
+ */
167
+ DLL_LOCAL VALUE _marshal_load(VALUE self, VALUE data)
168
+ {
169
+ _set_x(self, RARRAY_AREF(data,0));
170
+ _set_y(self, RARRAY_AREF(data,1));
171
+ return Qnil;
172
+ }
173
+
174
+
175
+ }
176
+ }
177
+
178
+
179
+
180
+ /* Document-class: WX::Point
181
+ *
182
+ * This class represents an Point.
183
+ */
184
+
185
+ /* Document-attr: x
186
+ * returns the x value of Point.
187
+ */
188
+ /* Document-attr: y
189
+ * returns the y value of Point.
190
+ */
191
+
192
+ /**/
193
+ DLL_LOCAL void Init_WXPoint(VALUE rb_mWX)
194
+ {
195
+
196
+ #if 0
197
+ rb_define_attr(rb_cwxPoint,"x",1,1);
198
+ rb_define_attr(rb_cwxPoint,"y",1,1);
199
+ #endif
200
+
201
+ using namespace RubyWX::Point;
202
+ rb_cwxPoint = rb_define_class_under(rb_mWX,"Point",rb_cObject);
203
+
204
+ rb_define_alloc_func(rb_cwxPoint,_alloc);
205
+
206
+ rb_define_method(rb_cwxPoint,"initialize",RUBY_METHOD_FUNC(_initialize),2);
207
+ rb_define_private_method(rb_cwxPoint,"initialize_copy",RUBY_METHOD_FUNC(_initialize_copy),1);
208
+
209
+ rb_define_attr_method(rb_cwxPoint,"x",_get_x,_set_x);
210
+ rb_define_attr_method(rb_cwxPoint,"y",_get_y,_set_y);
211
+
212
+ rb_define_method(rb_cwxPoint,"inspect",RUBY_METHOD_FUNC(_inspect),0);
213
+
214
+ rb_define_method(rb_cwxPoint,"marshal_dump",RUBY_METHOD_FUNC(_marshal_dump),0);
215
+ rb_define_method(rb_cwxPoint,"marshal_load",RUBY_METHOD_FUNC(_marshal_load),1);
216
+
217
+ registerType<wxRealPoint>(rb_cwxPoint, true);
218
+
219
+ rwxID_x = rb_intern("x");
220
+ rwxID_y = rb_intern("y");
221
+ }
222
+
223
+
224
+
@@ -0,0 +1,40 @@
1
+ /*
2
+ * wxPoint.hpp
3
+ *
4
+ * Created on: 21.04.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXPOINT_HPP_
9
+ #define WXPOINT_HPP_
10
+
11
+ #include "main.hpp"
12
+
13
+ extern VALUE rb_cWXPoint;
14
+ DLL_LOCAL void Init_WXPoint(VALUE rb_mWX);
15
+
16
+ extern ID rwxID_x,rwxID_y;
17
+
18
+ template <>
19
+ VALUE wrap< wxRealPoint >(wxRealPoint *point );
20
+
21
+ template <>
22
+ bool is_wrapable< wxRealPoint >(const VALUE &vpoint);
23
+
24
+ template <>
25
+ wxRealPoint unwrap< wxRealPoint >(const VALUE &vpoint);
26
+
27
+ template <>
28
+ VALUE wrap< wxPoint >(const wxPoint &point );
29
+
30
+ template <>
31
+ bool is_wrapable< wxPoint >(const VALUE &vpoint);
32
+
33
+ template <>
34
+ wxPoint unwrap< wxPoint >(const VALUE &vpoint);
35
+
36
+ template <>
37
+ wxPointList* unwrap< wxPointList* >(const VALUE &vpoint);
38
+
39
+
40
+ #endif /* WXPOINT_HPP_ */