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,22 @@
1
+ /*
2
+ * wxBookCtrl.hpp
3
+ *
4
+ * Created on: 27.03.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXBOOKCTRL_HPP_
9
+ #define WXBOOKCTRL_HPP_
10
+
11
+ #include "wxEvtHandler.hpp"
12
+
13
+ extern VALUE rb_cWXBookCtrlBase,rb_cWXBookCtrlEvent;
14
+
15
+ void Init_WXBookCtrl(VALUE rb_mWX);
16
+
17
+ #if wxUSE_BOOKCTRL
18
+ template <>
19
+ wxBookCtrlBase* unwrap<wxBookCtrlBase*>(const VALUE &arg);
20
+ #endif
21
+
22
+ #endif /* WXBOOKCTRL_HPP_ */
@@ -0,0 +1,60 @@
1
+ /*
2
+ * wxBoxSizer.cpp
3
+ *
4
+ * Created on: 27.03.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #include "wxSizer.hpp"
9
+
10
+ #define _self unwrap<wxBoxSizer*>(self)
11
+
12
+ VALUE rb_cWXBoxSizer;
13
+
14
+ namespace RubyWX {
15
+ namespace BoxSizer {
16
+
17
+ macro_attr_enum(Orientation,wxOrientation)
18
+
19
+ singlereturn(IsVertical)
20
+
21
+ DLL_LOCAL VALUE _alloc(VALUE self)
22
+ {
23
+ return wrapTypedPtr(new wxBoxSizer(wxHORIZONTAL),self);
24
+ }
25
+
26
+
27
+ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
28
+ {
29
+ VALUE orient;
30
+ rb_scan_args(argc, argv, "01",&orient);
31
+ if(!NIL_P(orient))
32
+ _setOrientation(self,orient);
33
+ return self;
34
+ }
35
+
36
+
37
+ }
38
+ }
39
+
40
+
41
+
42
+ DLL_LOCAL void Init_WXBoxSizer(VALUE rb_mWX)
43
+ {
44
+ using namespace RubyWX::BoxSizer;
45
+ rb_cWXBoxSizer = rb_define_class_under(rb_mWX,"BoxSizer",rb_cWXSizer);
46
+ rb_define_alloc_func(rb_cWXBoxSizer,_alloc);
47
+
48
+ rb_define_attr_method(rb_cWXBoxSizer,"orientation",_getOrientation,_setOrientation);
49
+
50
+ rb_define_method(rb_cWXBoxSizer,"vertical?",RUBY_METHOD_FUNC(_IsVertical),0);
51
+
52
+ registerInfo<wxBoxSizer>(rb_cWXBoxSizer);
53
+
54
+ registerEnum<wxOrientation>("wxOrientation")
55
+ ->add(wxHORIZONTAL, "horizontal")
56
+ ->add(wxVERTICAL, "vertical")
57
+ ->add(wxBOTH, "both");
58
+
59
+
60
+ }
@@ -0,0 +1,17 @@
1
+ /*
2
+ * wxBoxSizer.hpp
3
+ *
4
+ * Created on: 27.03.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXBOXSIZER_HPP_
9
+ #define WXBOXSIZER_HPP_
10
+
11
+ #include "main.hpp"
12
+
13
+ extern VALUE rb_cWXBoxSizer;
14
+
15
+ void Init_WXBoxSizer(VALUE rb_mWX);
16
+
17
+ #endif /* WXBOXSIZER_HPP_ */
@@ -0,0 +1,281 @@
1
+ /*
2
+ * wxBrush.cpp
3
+ *
4
+ * Created on: 21.04.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #include "wxBrush.hpp"
9
+ #include "wxColor.hpp"
10
+ #include "wxBitmap.hpp"
11
+
12
+ #define _self unwrap<wxBrush*>(self)
13
+
14
+ VALUE rb_cWXBrush;
15
+
16
+ typedef std::map<wxBrush*,VALUE> brushlisttype;
17
+ brushlisttype brushlistholder;
18
+
19
+ template <>
20
+ wxBrush unwrap< wxBrush >(const VALUE &vbrush)
21
+ {
22
+ return NIL_P(vbrush) ? wxNullBrush : *unwrap< wxBrush* >(vbrush);
23
+ }
24
+
25
+ namespace RubyWX {
26
+ namespace Brush {
27
+ DLL_LOCAL VALUE _alloc(VALUE self) {
28
+ return wrap(new wxBrush(*wxBLACK));
29
+ }
30
+
31
+ macro_attr(Colour,wxColour)
32
+ macro_attr_enum(Style,wxBrushStyle)
33
+ macro_attr(Stipple,wxBitmap)
34
+
35
+ singlereturn(IsHatch)
36
+
37
+
38
+ void define_const()
39
+ {
40
+ if(rb_const_defined(rb_cWXBrush,rb_intern("BLACK")))
41
+ return;
42
+
43
+ rb_define_const(rb_cWXBrush,"BLACK",wrap(wxBLACK_BRUSH));
44
+ rb_define_const(rb_cWXBrush,"BLUE",wrap(wxBLUE_BRUSH));
45
+ rb_define_const(rb_cWXBrush,"CYAN",wrap(wxCYAN_BRUSH));
46
+ rb_define_const(rb_cWXBrush,"GREEN",wrap(wxGREEN_BRUSH));
47
+ rb_define_const(rb_cWXBrush,"YELLOW",wrap(wxYELLOW_BRUSH));
48
+ rb_define_const(rb_cWXBrush,"GREY",wrap(wxGREY_BRUSH));
49
+ rb_define_const(rb_cWXBrush,"LIGHT_GREY",wrap(wxLIGHT_GREY_BRUSH));
50
+ rb_define_const(rb_cWXBrush,"MEDIUM_GREY",wrap(wxMEDIUM_GREY_BRUSH));
51
+ rb_define_const(rb_cWXBrush,"RED",wrap(wxRED_BRUSH));
52
+ rb_define_const(rb_cWXBrush,"TRANSPARENT",wrap(wxTRANSPARENT_BRUSH));
53
+ rb_define_const(rb_cWXBrush,"WHITE",wrap(wxWHITE_BRUSH));
54
+ }
55
+
56
+ /*
57
+ * call-seq:
58
+ * Brush.new(color[,style])
59
+ *
60
+ * creates a new Brush Object.
61
+ */
62
+ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
63
+ {
64
+ VALUE color,style;
65
+ rb_scan_args(argc, argv, "11",&color,&style);
66
+ _setColour(self,color);
67
+ if(!NIL_P(style))
68
+ _setStyle(self,style);
69
+ return self;
70
+ }
71
+
72
+ /*
73
+ */
74
+ DLL_LOCAL VALUE _initialize_copy(VALUE self, VALUE other)
75
+ {
76
+ VALUE result = rb_call_super(1,&other);
77
+ _setColour(self,_getColour(other));
78
+ _setStyle(self,_getStyle(other));
79
+ _setStipple(self,_getStipple(other));
80
+ return result;
81
+ }
82
+
83
+
84
+ /*
85
+ * call-seq:
86
+ * marshal_dump -> Array
87
+ *
88
+ * Provides marshalling support for use by the Marshal library.
89
+ * ===Return value
90
+ * Array
91
+ */
92
+ DLL_LOCAL VALUE _marshal_dump(VALUE self)
93
+ {
94
+ VALUE ptr[3];
95
+ ptr[0] = _getColour(self);
96
+ ptr[1] = _getStyle(self);
97
+ ptr[2] = _getStipple(self);
98
+ return rb_ary_new4(3, ptr);
99
+ }
100
+
101
+ /*
102
+ * call-seq:
103
+ * marshal_load(array) -> nil
104
+ *
105
+ * Provides marshalling support for use by the Marshal library.
106
+ *
107
+ *
108
+ */
109
+ DLL_LOCAL VALUE _marshal_load(VALUE self, VALUE data)
110
+ {
111
+ _setColour(self, RARRAY_AREF(data,0));
112
+ _setStyle(self, RARRAY_AREF(data,1));
113
+ _setStipple(self, RARRAY_AREF(data,2));
114
+ return Qnil;
115
+ }
116
+
117
+
118
+ /*
119
+ * call-seq:
120
+ * == brush -> bool
121
+ *
122
+ * compares two brush.
123
+ *
124
+ *
125
+ */
126
+ DLL_LOCAL VALUE _equal(VALUE self, VALUE other)
127
+ {
128
+ return wrap((*_self) == unwrap<wxBrush>(other));
129
+ }
130
+
131
+
132
+ DLL_LOCAL VALUE _class_get(int argc,VALUE *argv,VALUE self)
133
+ {
134
+
135
+ VALUE color,style;
136
+ rb_scan_args(argc, argv, "11",&color,&style);
137
+ //TODO add refcounting
138
+ wxBrush *brush = wxTheBrushList->FindOrCreateBrush(
139
+ unwrap<wxColor>(color),
140
+ NIL_P(style) ? wxBRUSHSTYLE_SOLID : unwrapenum<wxBrushStyle>(style)
141
+ );
142
+
143
+ if(!brush || !brush->IsOk())
144
+ return Qnil;
145
+
146
+ //look in the PenList holder is brush was already wrapped
147
+ brushlisttype::iterator it = brushlistholder.find(brush);
148
+ if(it != brushlistholder.end()) {
149
+ return it->second;
150
+ } else {
151
+ //wrap wxBrush pointer to ruby object
152
+ VALUE result = wrap(brush);
153
+
154
+ //BrushList objects should not be changed
155
+ rb_obj_freeze(result);
156
+ //Prevent BrushList objects from been deleted
157
+ rwx_refobject(result);
158
+ //add wrapped brush to the BrushList holder to find it again
159
+ brushlistholder[brush] = result;
160
+ return result;
161
+ }
162
+ }
163
+
164
+ }
165
+ }
166
+
167
+ /*
168
+ * Document-class: WX::Brush
169
+ *
170
+ * This class represents an Brush.
171
+ */
172
+
173
+
174
+ /* Document-attr: color
175
+ * returns the color of the Brush. WX::Color
176
+ */
177
+ /* Document-attr: style
178
+ * returns the style of the Brush. Symbol
179
+ */
180
+ /* Document-attr: stipple
181
+ * returns the stipple of the Brush. WX::Bitmap
182
+ */
183
+
184
+ /* Document-const: BLACK
185
+ * predefined Brush constant.
186
+ */
187
+ /* Document-const: BLUE
188
+ * predefined Brush constant.
189
+ */
190
+ /* Document-const: CYAN
191
+ * predefined Brush constant.
192
+ */
193
+ /* Document-const: GREEN
194
+ * predefined Brush constant.
195
+ */
196
+ /* Document-const: YELLOW
197
+ * predefined Brush constant.
198
+ */
199
+ /* Document-const: GREY
200
+ * predefined Brush constant.
201
+ */
202
+ /* Document-const: LIGHT_GREY
203
+ * predefined Brush constant.
204
+ */
205
+ /* Document-const: MEDIUM_GREY
206
+ * predefined Brush constant.
207
+ */
208
+ /* Document-const: RED
209
+ * predefined Brush constant.
210
+ */
211
+ /* Document-const: TRANSPARENT
212
+ * predefined Brush constant.
213
+ */
214
+ /* Document-const: WHITE
215
+ * predefined Brush constant.
216
+ */
217
+
218
+ DLL_LOCAL void Init_WXBrush(VALUE rb_mWX)
219
+ {
220
+ #if 0
221
+
222
+ rb_define_attr(rb_cWXBrush,"color",1,1);
223
+ rb_define_attr(rb_cWXBrush,"style",1,1);
224
+ rb_define_attr(rb_cWXBrush,"stipple",1,1);
225
+
226
+ //need to
227
+ rb_define_const(rb_cWXBrush,"BLACK",wrap(wxBLACK_BRUSH));
228
+ rb_define_const(rb_cWXBrush,"BLUE",wrap(wxBLUE_BRUSH));
229
+ rb_define_const(rb_cWXBrush,"CYAN",wrap(wxCYAN_BRUSH));
230
+ rb_define_const(rb_cWXBrush,"GREEN",wrap(wxGREEN_BRUSH));
231
+ rb_define_const(rb_cWXBrush,"YELLOW",wrap(wxYELLOW_BRUSH));
232
+ rb_define_const(rb_cWXBrush,"GREY",wrap(wxGREY_BRUSH));
233
+ rb_define_const(rb_cWXBrush,"LIGHT_GREY",wrap(wxLIGHT_GREY_BRUSH));
234
+ rb_define_const(rb_cWXBrush,"MEDIUM_GREY",wrap(wxMEDIUM_GREY_BRUSH));
235
+ rb_define_const(rb_cWXBrush,"RED",wrap(wxRED_BRUSH));
236
+ rb_define_const(rb_cWXBrush,"TRANSPARENT",wrap(wxTRANSPARENT_BRUSH));
237
+ rb_define_const(rb_cWXBrush,"WHITE",wrap(wxWHITE_BRUSH));
238
+ #endif
239
+
240
+ using namespace RubyWX::Brush;
241
+ rb_cWXBrush = rb_define_class_under(rb_mWX,"Brush",rb_cObject);
242
+ rb_define_alloc_func(rb_cWXBrush,_alloc);
243
+
244
+ rb_define_method(rb_cWXBrush,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
245
+ rb_define_private_method(rb_cWXBrush,"initialize_copy",RUBY_METHOD_FUNC(_initialize_copy),1);
246
+
247
+ rb_define_attr_method(rb_cWXBrush,"color",_getColour,_setColour);
248
+ rb_define_attr_method(rb_cWXBrush,"style",_getStyle,_setStyle);
249
+ rb_define_attr_method(rb_cWXBrush,"stipple",_getStipple,_setStipple);
250
+
251
+ rb_define_method(rb_cWXBrush,"hatch?",RUBY_METHOD_FUNC(_IsHatch),0);
252
+
253
+ rb_define_method(rb_cWXBrush,"marshal_dump",RUBY_METHOD_FUNC(_marshal_dump),0);
254
+ rb_define_method(rb_cWXBrush,"marshal_load",RUBY_METHOD_FUNC(_marshal_load),1);
255
+
256
+ rb_define_method(rb_cWXBrush,"==",RUBY_METHOD_FUNC(_equal),1);
257
+
258
+ //
259
+ // rb_define_method(rb_cWXBrush,"to_s",RUBY_METHOD_FUNC(_tos),0);
260
+ // rb_define_method(rb_cWXBrush,"inspect",RUBY_METHOD_FUNC(_inspect),0);
261
+
262
+ registerInfo<wxBrush>(rb_cWXBrush);
263
+
264
+ registerEnum<wxBrushStyle>("WX::BrushStyle",wxBRUSHSTYLE_TRANSPARENT)
265
+ ->add(wxBRUSHSTYLE_SOLID,"solid")
266
+ ->add(wxBRUSHSTYLE_TRANSPARENT,"transparent")
267
+ ->add(wxBRUSHSTYLE_STIPPLE_MASK_OPAQUE,"stipple_mask_opaque")
268
+ ->add(wxBRUSHSTYLE_STIPPLE_MASK,"stipple_mask")
269
+ ->add(wxBRUSHSTYLE_STIPPLE,"stipple")
270
+ ->add(wxBRUSHSTYLE_BDIAGONAL_HATCH,"bdiagonal_hatch")
271
+ ->add(wxBRUSHSTYLE_CROSSDIAG_HATCH,"crossdiag_hatch")
272
+ ->add(wxBRUSHSTYLE_FDIAGONAL_HATCH,"fdiagonal_hatch")
273
+ ->add(wxBRUSHSTYLE_CROSS_HATCH,"cross_hatch")
274
+ ->add(wxBRUSHSTYLE_HORIZONTAL_HATCH,"horizontal_hatch")
275
+ ->add(wxBRUSHSTYLE_VERTICAL_HATCH,"vertical_hatch");
276
+
277
+ }
278
+
279
+
280
+
281
+
@@ -0,0 +1,28 @@
1
+ /*
2
+ * wxBrush.hpp
3
+ *
4
+ * Created on: 21.04.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXBRUSH_HPP_
9
+ #define WXBRUSH_HPP_
10
+
11
+
12
+ #include "main.hpp"
13
+
14
+ extern VALUE rb_cWXBrush;
15
+ void Init_WXBrush(VALUE rb_mWX);
16
+
17
+ template <>
18
+ wxBrush unwrap< wxBrush >(const VALUE &vbrush);
19
+
20
+ namespace RubyWX {
21
+ namespace Brush {
22
+
23
+ void define_const();
24
+
25
+ }
26
+ }
27
+
28
+ #endif /* WXBRUSH_HPP_ */
@@ -0,0 +1,85 @@
1
+ /*
2
+ * wxButton.cpp
3
+ *
4
+ * Created on: 20.03.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #include "wxButton.hpp"
9
+
10
+ VALUE rb_cWXButton;
11
+ #if wxUSE_BUTTON
12
+ #define _self unwrap<wxButton*>(self)
13
+
14
+ namespace RubyWX {
15
+ namespace Button {
16
+
17
+ macro_attr(AuthNeeded,bool)
18
+
19
+ APP_PROTECT(wxButton)
20
+
21
+ /*
22
+ * call-seq:
23
+ * Button.new(parent, name, [options])
24
+ * Button.new(parent, [options])
25
+ *
26
+ * creates a new Button widget.
27
+ * ===Arguments
28
+ * * parent of this window or nil
29
+ * * name is a String describing a resource in a loaded xrc
30
+ *
31
+ * *options: Hash with possible options to set
32
+ */
33
+ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
34
+ {
35
+ VALUE parent,name,hash;
36
+ rb_scan_args(argc, argv, "11:",&parent,&name,&hash);
37
+ if(!_created && !rb_obj_is_kind_of(name,rb_cString)) {
38
+ wxWindowID id(wxID_ANY);
39
+ wxString label(wxEmptyString);
40
+
41
+ if(rb_obj_is_kind_of(hash,rb_cHash)) {
42
+ set_hash_option(hash,"id",id,unwrapID);
43
+ set_hash_option(hash,"label",label);
44
+ }
45
+
46
+ _self->Create(unwrap<wxWindow*>(parent),id,label);
47
+
48
+ }
49
+
50
+ rb_call_super(argc,argv);
51
+
52
+ return self;
53
+ }
54
+
55
+ }
56
+ }
57
+
58
+ #endif
59
+
60
+ DLL_LOCAL void Init_WXButton(VALUE rb_mWX)
61
+ {
62
+ #if 0
63
+ rb_mWX = rb_define_module("WX");
64
+ rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
65
+ rb_cWXControl = rb_define_class_under(rb_mWX,"Control",rb_cWXWindow);
66
+
67
+ rb_cWXAnyButton = rb_define_class_under(rb_mWX,"AnyButton",rb_cWXControl);
68
+ rb_define_attr(rb_cWXButton,"auth_needed",1,1);
69
+ #endif
70
+
71
+ #if wxUSE_BUTTON
72
+ using namespace RubyWX::Button;
73
+ rb_cWXButton = rb_define_class_under(rb_mWX,"Button",rb_cWXAnyButton);
74
+ rb_define_alloc_func(rb_cWXButton,_alloc);
75
+
76
+ rb_define_method(rb_cWXButton,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
77
+
78
+ rb_define_attr_method(rb_cWXButton,"auth_needed",_getAuthNeeded,_setAuthNeeded);
79
+
80
+ registerInfo<wxButton>(rb_cWXButton);
81
+
82
+ registerEventType<wxCommandEvent>("button",wxEVT_BUTTON);
83
+
84
+ #endif
85
+ }