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,21 @@
1
+ /*
2
+ * wxSearchCtrl.hpp
3
+ *
4
+ * Created on: 14.05.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXSEARCHCTRL_HPP_
9
+ #define WXSEARCHCTRL_HPP_
10
+
11
+ #include "wxControl.hpp"
12
+
13
+ extern VALUE rb_cWXSearchCtrl;
14
+
15
+ void Init_WXSearchCtrl(VALUE rb_mWX);
16
+
17
+ #if wxUSE_SEARCHCTRL
18
+ #include <wx/srchctrl.h>
19
+ #endif
20
+
21
+ #endif /* WXSEARCHCTRL_HPP_ */
@@ -0,0 +1,89 @@
1
+ /*
2
+ * wxSimpleBook.cpp
3
+ *
4
+ * Created on: 30.03.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #include "wxSimpleBook.hpp"
9
+ #include "wxBookCtrl.hpp"
10
+
11
+ VALUE rb_cWXSimplebook;
12
+
13
+ #if wxUSE_BOOKCTRL
14
+ #define _self unwrap<wxSimplebook*>(self)
15
+
16
+ namespace RubyWX {
17
+ namespace Simplebook {
18
+
19
+ APP_PROTECT(wxSimplebook)
20
+
21
+ /*
22
+ * call-seq:
23
+ * SimpleBookCtrl.new(parent, name, [options])
24
+ * SimpleBookCtrl.new(parent, [options])
25
+ *
26
+ * creates a new SimpleBookCtrl widget.
27
+ * ===Arguments
28
+ * * parent of this window or nil
29
+ *
30
+ * *options: Hash with possible options to set
31
+ */
32
+ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
33
+ {
34
+ VALUE parent,name,hash;
35
+
36
+ rb_scan_args(argc, argv, "11:",&parent,&name,&hash);
37
+ if(!_created && !rb_obj_is_kind_of(name,rb_cString))
38
+ {
39
+ wxWindowID id(wxID_ANY);
40
+ int style(0);
41
+
42
+ if(rb_obj_is_kind_of(hash,rb_cHash))
43
+ {
44
+ set_hash_option(hash,"id",id,unwrapID);
45
+ set_hash_option(hash,"style",style);
46
+ }
47
+
48
+ _self->Create(unwrap<wxWindow*>(parent),id,wxDefaultPosition,wxDefaultSize,style);
49
+
50
+ }
51
+
52
+ rb_call_super(argc,argv);
53
+
54
+ return self;
55
+ }
56
+
57
+ }
58
+ }
59
+ #endif
60
+ DLL_LOCAL void Init_WXSimpleBookCtrl(VALUE rb_mWX)
61
+ {
62
+ #if 0
63
+ rb_mWX = rb_define_module("WX");
64
+ rb_mWXEvtHandler = rb_define_module_under(rb_mWX,"EvtHandler");
65
+
66
+ rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
67
+ rb_cWXControl = rb_define_class_under(rb_mWX,"Control",rb_cWXWindow);
68
+ rb_cWXBookCtrlBase = rb_define_class_under(rb_mWX,"BookCtrl",rb_cWXControl);
69
+ #endif
70
+
71
+ #if wxUSE_BOOKCTRL
72
+ using namespace RubyWX::Simplebook;
73
+ rb_cWXSimplebook = rb_define_class_under(rb_mWX,"SimpleBookCtrl",rb_cWXBookCtrlBase);
74
+ rb_define_alloc_func(rb_cWXSimplebook,_alloc);
75
+
76
+ rb_define_method(rb_cWXSimplebook,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
77
+
78
+ registerInfo<wxSimplebook>(rb_cWXSimplebook);
79
+
80
+ //registerEventType<wxBookCtrlEvent>("notebook_page_changed",wxEVT_NOTEBOOK_PAGE_CHANGED);
81
+ //registerEventType<wxBookCtrlEvent>("notebook_page_changing",wxEVT_NOTEBOOK_PAGE_CHANGING);
82
+ #endif
83
+
84
+ }
85
+
86
+
87
+
88
+
89
+
@@ -0,0 +1,21 @@
1
+ /*
2
+ * wxSimplebook.hpp
3
+ *
4
+ * Created on: 30.03.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXSIMPLEBOOK_HPP_
9
+ #define WXSIMPLEBOOK_HPP_
10
+
11
+ #include "wxEvtHandler.hpp"
12
+
13
+ extern VALUE rb_cWXSimplebook;
14
+
15
+ void Init_WXSimpleBookCtrl(VALUE rb_mWX);
16
+
17
+ #if wxUSE_BOOKCTRL
18
+ #include <wx/simplebook.h>
19
+ #endif
20
+
21
+ #endif /* WXSIMPLEBOOK_HPP_ */
@@ -0,0 +1,147 @@
1
+ /*
2
+ * wxSingleChoiceDialog.cpp
3
+ *
4
+ * Created on: 08.12.2013
5
+ * Author: hanmac
6
+ */
7
+
8
+
9
+ #include "wxAnyChoiceDialog.hpp"
10
+ #include "wxSingleChoiceDialog.hpp"
11
+
12
+ #include "wxApp.hpp"
13
+
14
+ VALUE rb_cWXSingleChoiceDialog;
15
+
16
+ #if wxUSE_CHOICEDLG
17
+ #define _self unwrap<wxSingleChoiceDialog*>(self)
18
+
19
+ namespace RubyWX {
20
+ namespace SingleChoiceDialog {
21
+
22
+ APP_PROTECT(wxSingleChoiceDialog)
23
+
24
+ macro_attr(Selection,int)
25
+
26
+ singlereturn(GetStringSelection)
27
+
28
+ /*
29
+ * call-seq:
30
+ * SingleChoiceDialog.new(parent, name, [options])
31
+ * SingleChoiceDialog.new(parent, [options])
32
+ *
33
+ * creates a new SingleChoiceDialog widget.
34
+ * ===Arguments
35
+ * * parent of this window or nil
36
+ * * name is a String describing a resource in a loaded xrc
37
+ *
38
+ * *options: Hash with possible options to set:
39
+ * * choices [string]
40
+ * * selection Integer
41
+ * * message String
42
+ *
43
+ */
44
+ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
45
+ {
46
+ VALUE parent,name,hash;
47
+ rb_scan_args(argc, argv, "11:",&parent,&name,&hash);
48
+ if(!_created && !rb_obj_is_kind_of(hash,rb_cString)){
49
+ int style(wxCHOICEDLG_STYLE);
50
+ int selection(-1);
51
+ wxArrayString choices;
52
+
53
+ wxString message(wxEmptyString);
54
+ wxString caption(wxEmptyString);
55
+
56
+ if(rb_obj_is_kind_of(hash,rb_cHash)){
57
+ set_hash_option(hash,"style",style);
58
+ set_hash_option(hash,"choices",choices);
59
+ set_hash_option(hash,"selection",selection);
60
+ set_hash_option(hash,"message",message);
61
+ set_hash_option(hash,"caption",caption);
62
+ }
63
+
64
+ _self->Create(unwrap<wxWindow*>(parent),message,caption,choices,(void **)NULL,style);
65
+
66
+ if(check_index(selection,choices.GetCount()))
67
+ _self->SetSelection(selection);
68
+ }
69
+ rb_call_super(argc,argv);
70
+ return self;
71
+
72
+ }
73
+
74
+
75
+ VALUE _GetSingleChoice(int argc,VALUE *argv,VALUE self)
76
+ {
77
+ VALUE message,caption,choices,hash;
78
+ rb_scan_args(argc, argv, "30:",&message,&caption,&choices,&hash);
79
+
80
+ app_protected();
81
+
82
+ wxWindow *parent = NULL;
83
+
84
+ int x(wxDefaultCoord);
85
+ int y(wxDefaultCoord);
86
+ bool centre(true);
87
+ int width(wxCHOICE_WIDTH);
88
+ int height(wxCHOICE_HEIGHT);
89
+
90
+ int selection(-1);
91
+
92
+ wxArrayString cchoices = unwrap<wxArrayString>(choices);
93
+
94
+ if(rb_obj_is_kind_of(hash,rb_cHash))
95
+ {
96
+
97
+ set_hash_option(hash,"parent",parent);
98
+ set_hash_option(hash,"x",x);
99
+ set_hash_option(hash,"y",y);
100
+
101
+ set_hash_option(hash,"center",centre);
102
+
103
+ set_hash_option(hash,"width",width);
104
+ set_hash_option(hash,"height",height);
105
+
106
+ if(set_hash_option(hash,"selection",selection))
107
+ if(!check_index(selection,cchoices.GetCount()))
108
+ return Qnil;
109
+ }
110
+
111
+ return wrap(wxGetSingleChoice(
112
+ unwrap<wxString>(message), unwrap<wxString>(caption),
113
+ cchoices,
114
+ parent, x, y, centre, width, height, selection
115
+ ));
116
+ }
117
+
118
+ }
119
+ }
120
+ #endif
121
+ DLL_LOCAL void Init_WXSingleChoiceDialog(VALUE rb_mWX)
122
+ {
123
+ #if 0
124
+ rb_cWXAnyChoiceDialog = rb_define_class_under(rb_mWX,"AnyChoiceDialog",rb_cWXDialog);
125
+
126
+ rb_define_attr(rb_cWXSingleChoiceDialog,"selection",1,1);
127
+ #endif
128
+
129
+ #if wxUSE_CHOICEDLG
130
+ using namespace RubyWX::SingleChoiceDialog;
131
+ rb_cWXSingleChoiceDialog = rb_define_class_under(rb_mWX,"SingleChoiceDialog",rb_cWXAnyChoiceDialog);
132
+ rb_define_alloc_func(rb_cWXSingleChoiceDialog,_alloc);
133
+
134
+ rb_define_method(rb_cWXSingleChoiceDialog,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
135
+
136
+ rb_define_attr_method(rb_cWXSingleChoiceDialog,"selection",_getSelection,_setSelection);
137
+
138
+ rb_define_method(rb_cWXSingleChoiceDialog,"string_selection",RUBY_METHOD_FUNC(_GetStringSelection),0);
139
+
140
+ rb_define_module_function(rb_mWX,"single_choice",RUBY_METHOD_FUNC(_GetSingleChoice),-1);
141
+
142
+ registerInfo<wxSingleChoiceDialog>(rb_cWXSingleChoiceDialog);
143
+ #endif
144
+ }
145
+
146
+
147
+
@@ -0,0 +1,19 @@
1
+ /*
2
+ * wxAnyChoiceDialog.hpp
3
+ *
4
+ * Created on: 08.12.2013
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXSINGLECHOICEDIALOG_HPP_
9
+ #define WXSINGLECHOICEDIALOG_HPP_
10
+
11
+ #include "wxDialog.hpp"
12
+
13
+ extern VALUE rb_cWXSingleChoiceDialog;
14
+
15
+ void Init_WXSingleChoiceDialog(VALUE rb_mWX);
16
+ #if wxUSE_CHOICEDLG
17
+ #include <wx/choicdlg.h>
18
+ #endif
19
+ #endif /* WXSINGLECHOICEDIALOG_HPP_ */
@@ -0,0 +1,206 @@
1
+ /*
2
+ * wxSize.cpp
3
+ *
4
+ * Created on: 04.02.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #include "wxSize.hpp"
9
+ #include "wxRect.hpp"
10
+
11
+ VALUE rb_cWXSize;
12
+
13
+ #define _self unwrap<wxSize*>(self)
14
+
15
+ ID rwxID_width,rwxID_height;
16
+
17
+ template <>
18
+ VALUE wrap< wxSize >(wxSize *size )
19
+ {
20
+ return wrapTypedPtr(size, rb_cWXSize);
21
+ }
22
+
23
+ template <>
24
+ bool is_wrapable< wxSize >(const VALUE &vsize)
25
+ {
26
+ if (rb_obj_is_kind_of(vsize, rb_cWXSize)){
27
+ return true;
28
+ }else if(rb_respond_to(vsize,rwxID_width) &&
29
+ rb_respond_to(vsize,rwxID_height)){
30
+ return true;
31
+ }else
32
+ return false;
33
+ }
34
+
35
+ template <>
36
+ wxSize unwrap< wxSize >(const VALUE &vsize)
37
+ {
38
+ if(rb_obj_is_kind_of(vsize, rb_cArray)){
39
+ wxSize size;
40
+ size.SetWidth(NUM2INT(RARRAY_AREF(vsize,0)));
41
+ size.SetHeight(NUM2INT(RARRAY_AREF(vsize,1)));
42
+ return size;
43
+ }else if(rb_obj_is_kind_of(vsize, rb_cWXRect)){
44
+ return unwrapTypedPtr<wxRect>(vsize, rb_cWXRect)->GetSize();
45
+ }else if(!rb_obj_is_kind_of(vsize, rb_cWXSize) &&
46
+ rb_respond_to(vsize,rwxID_width) &&
47
+ rb_respond_to(vsize,rwxID_height)){
48
+ wxSize size;
49
+ size.SetWidth(NUM2INT(rb_funcall(vsize,rwxID_width,0)));
50
+ size.SetHeight(NUM2INT(rb_funcall(vsize,rwxID_height,0)));
51
+ return size;
52
+ }else{
53
+ return *unwrap<wxSize*>(vsize);
54
+ }
55
+ }
56
+
57
+ bool check_negative_size(VALUE val, wxSize &size)
58
+ {
59
+ size = unwrap<wxSize>(val);
60
+ if(size.GetHeight() <= 0 && size.GetWidth() <= 0)
61
+ {
62
+ rb_raise(rb_eArgError,"%"PRIsVALUE" does have invalid size.", rb_inspect(val));
63
+ return false;
64
+ }
65
+ return true;
66
+ }
67
+
68
+ bool check_negative_size(const int &width, const int &height)
69
+ {
70
+
71
+ if(height <= 0 && width <= 0)
72
+ {
73
+ rb_raise(rb_eArgError,
74
+ "%s(%d, %d) does have invalid size.",
75
+ rb_class2name(rb_cWXSize),
76
+ width, height
77
+ );
78
+ return false;
79
+ }
80
+ return true;
81
+ }
82
+
83
+ bool check_negative_size(const wxSize &size)
84
+ {
85
+ return check_negative_size(size.GetWidth(), size.GetHeight());
86
+ }
87
+
88
+ namespace RubyWX {
89
+ namespace Size {
90
+
91
+ macro_attr(Width,int)
92
+ macro_attr(Height,int)
93
+
94
+ DLL_LOCAL VALUE _alloc(VALUE self)
95
+ {
96
+ return wrap(new wxSize());
97
+ }
98
+
99
+ DLL_LOCAL VALUE _initialize(VALUE self,VALUE width,VALUE height)
100
+ {
101
+ _setWidth(self,width);
102
+ _setHeight(self,height);
103
+ return self;
104
+ }
105
+
106
+ /*
107
+ */
108
+ DLL_LOCAL VALUE _initialize_copy(VALUE self, VALUE other)
109
+ {
110
+ VALUE result = rb_call_super(1,&other);
111
+ _setWidth(self,_getWidth(other));
112
+ _setHeight(self,_getHeight(other));
113
+ return result;
114
+ }
115
+
116
+ /*
117
+ * call-seq:
118
+ * inspect -> String
119
+ *
120
+ * Human-readable description.
121
+ * ===Return value
122
+ * String
123
+ */
124
+ DLL_LOCAL VALUE _inspect(VALUE self)
125
+ {
126
+ return rb_sprintf( "%s(%d, %d)",
127
+ rb_obj_classname( self ),
128
+ NUM2INT(_getWidth(self)),
129
+ NUM2INT(_getHeight(self)));
130
+ }
131
+
132
+ /*
133
+ * call-seq:
134
+ * marshal_dump -> Array
135
+ *
136
+ * Provides marshalling support for use by the Marshal library.
137
+ * ===Return value
138
+ * Array
139
+ */
140
+ DLL_LOCAL VALUE _marshal_dump(VALUE self)
141
+ {
142
+ VALUE ptr[2];
143
+ ptr[0] = _getWidth(self);
144
+ ptr[1] = _getHeight(self);
145
+ return rb_ary_new4(2, ptr);
146
+ }
147
+
148
+ /*
149
+ * call-seq:
150
+ * marshal_load(array) -> nil
151
+ *
152
+ * Provides marshalling support for use by the Marshal library.
153
+ *
154
+ *
155
+ */
156
+ DLL_LOCAL VALUE _marshal_load(VALUE self, VALUE data)
157
+ {
158
+ _setWidth(self, RARRAY_AREF(data,0));
159
+ _setHeight(self, RARRAY_AREF(data,1));
160
+ return Qnil;
161
+ }
162
+
163
+ }
164
+ }
165
+
166
+
167
+ /*
168
+ * Document-class: WX::Size
169
+ *
170
+ * This class represents an Size.
171
+ */
172
+
173
+ /* Document-attr: width
174
+ * returns the width value of Size. */
175
+ /* Document-attr: height
176
+ * returns the height value of Size. */
177
+
178
+
179
+ DLL_LOCAL void Init_WXSize(VALUE rb_mWX)
180
+ {
181
+
182
+ #if 0
183
+ rb_define_attr(rb_cWXSize,"width",1,1);
184
+ rb_define_attr(rb_cWXSize,"height",1,1);
185
+ #endif
186
+
187
+ using namespace RubyWX::Size;
188
+ rb_cWXSize = rb_define_class_under(rb_mWX,"Size",rb_cObject);
189
+
190
+ rb_define_alloc_func(rb_cWXSize,_alloc);
191
+ rb_define_method(rb_cWXSize,"initialize",RUBY_METHOD_FUNC(_initialize),2);
192
+ rb_define_private_method(rb_cWXSize,"initialize_copy",RUBY_METHOD_FUNC(_initialize_copy),1);
193
+
194
+ rb_define_attr_method(rb_cWXSize,"width",_getWidth,_setWidth);
195
+ rb_define_attr_method(rb_cWXSize,"height",_getHeight,_setHeight);
196
+
197
+ rb_define_method(rb_cWXSize,"inspect",RUBY_METHOD_FUNC(_inspect),0);
198
+
199
+ rb_define_method(rb_cWXSize,"marshal_dump",RUBY_METHOD_FUNC(_marshal_dump),0);
200
+ rb_define_method(rb_cWXSize,"marshal_load",RUBY_METHOD_FUNC(_marshal_load),1);
201
+
202
+ registerType<wxSize>(rb_cWXSize, true);
203
+
204
+ rwxID_width = rb_intern("width");
205
+ rwxID_height = rb_intern("height");
206
+ }