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,82 @@
1
+ /*
2
+ * wxBitmapToggleButton.cpp
3
+ *
4
+ * Created on: 10.12.2013
5
+ * Author: hanmac
6
+ */
7
+
8
+ #include "wxBitmapToggleButton.hpp"
9
+ #include "wxBitmap.hpp"
10
+
11
+ VALUE rb_cWXBitmapToggleButton;
12
+ #if wxUSE_TOGGLEBTN & defined(wxHAS_BITMAPTOGGLEBUTTON)
13
+ #define _self unwrap<wxBitmapToggleButton*>(self)
14
+
15
+ namespace RubyWX {
16
+ namespace BitmapToggleButton {
17
+
18
+ APP_PROTECT(wxBitmapToggleButton)
19
+
20
+
21
+ /*
22
+ * call-seq:
23
+ * BitmapToggleButton.new(parent, name, [options])
24
+ * BitmapToggleButton.new(parent, [options])
25
+ *
26
+ * creates a new BitmapToggleButton 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
+ * * bitmap WX::Bitmap
33
+ */
34
+ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
35
+ {
36
+ VALUE parent,name,hash;
37
+ rb_scan_args(argc, argv, "11:",&parent,&name,&hash);
38
+ if(!_created && !rb_obj_is_kind_of(name,rb_cString)) {
39
+ wxWindowID id(wxID_ANY);
40
+ wxBitmap bitmap(wxNullBitmap);
41
+
42
+ if(rb_obj_is_kind_of(hash,rb_cHash)) {
43
+ VALUE temp;
44
+ set_hash_option(hash,"id",id,unwrapID);
45
+
46
+ temp = rb_hash_aref(hash,ID2SYM(rb_intern("bitmap")));
47
+ bitmap = wrapBitmap(temp,id,WRAP_BITMAP_ID,wxART_BUTTON);
48
+ }
49
+
50
+ _self->Create(unwrap<wxWindow*>(parent),id,bitmap);
51
+
52
+ }
53
+
54
+ rb_call_super(argc,argv);
55
+ return self;
56
+ }
57
+
58
+ }
59
+ }
60
+
61
+ #endif
62
+
63
+ DLL_LOCAL void Init_WXBitmapToggleButton(VALUE rb_mWX)
64
+ {
65
+ #if 0
66
+ rb_mWX = rb_define_module("WX");
67
+ rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
68
+ rb_cWXControl = rb_define_class_under(rb_mWX,"Control",rb_cWXWindow);
69
+
70
+ rb_cWXToggleButton = rb_define_class_under(rb_mWX,"ToggleButton",rb_cWXAnyButton);
71
+ #endif
72
+ #if wxUSE_TOGGLEBTN & defined(wxHAS_BITMAPTOGGLEBUTTON)
73
+ using namespace RubyWX::BitmapToggleButton;
74
+ rb_cWXBitmapToggleButton = rb_define_class_under(rb_mWX,"BitmapToggleButton",rb_cWXToggleButton);
75
+ rb_define_alloc_func(rb_cWXBitmapToggleButton,_alloc);
76
+
77
+ rb_define_method(rb_cWXBitmapToggleButton,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
78
+
79
+ registerInfo<wxBitmapToggleButton>(rb_cWXBitmapToggleButton);
80
+
81
+ #endif
82
+ }
@@ -0,0 +1,17 @@
1
+ /*
2
+ * wxBitmapToggleButton.hpp
3
+ *
4
+ * Created on: 10.12.2013
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXBITMAPTOGGLEBUTTON_HPP_
9
+ #define WXBITMAPTOGGLEBUTTON_HPP_
10
+
11
+ #include "wxToggleButton.hpp"
12
+
13
+ extern VALUE rb_cWXBitmapToggleButton;
14
+
15
+ void Init_WXBitmapToggleButton(VALUE rb_mWX);
16
+
17
+ #endif /* WXBITMAPTOGGLEBUTTON_HPP_ */
@@ -0,0 +1,633 @@
1
+ /*
2
+ * wxBookCtrl.cpp
3
+ *
4
+ * Created on: 26.03.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+
9
+
10
+ #include "wxEvtHandler.hpp"
11
+ #include "wxNotifyEvent.hpp"
12
+ #include "wxSizer.hpp"
13
+
14
+
15
+ #include "wxBookCtrl.hpp"
16
+ #include "wxChoiceBook.hpp"
17
+ #include "wxNoteBook.hpp"
18
+ #include "wxListBook.hpp"
19
+ #include "wxToolBook.hpp"
20
+ #include "wxAuiBook.hpp"
21
+ #include "wxTreeBook.hpp"
22
+
23
+
24
+ #include "wxBitmap.hpp"
25
+
26
+ VALUE rb_cWXBookCtrlBase,rb_cWXBookCtrlEvent;
27
+
28
+ #if wxUSE_BOOKCTRL
29
+
30
+ template <>
31
+ wxBookCtrlBase* unwrap<wxBookCtrlBase*>(const VALUE &arg)
32
+ {
33
+ return unwrapTypedPtr<wxBookCtrlBase>(arg,rb_cWXBookCtrlBase);
34
+ }
35
+
36
+ #define _self unwrap<wxBookCtrlBase*>(self)
37
+
38
+ namespace RubyWX {
39
+ namespace BookCtrl {
40
+
41
+ macro_attr(ImageList,wxImageList*)
42
+ macro_attr(InternalBorder,unsigned int)
43
+ macro_attr(ControlMargin,int)
44
+ macro_attr_selection(Selection,GetPageCount)
45
+
46
+ macro_attr(FitToCurrentPage,bool)
47
+
48
+ singlereturn(IsVertical)
49
+ singlereturn(GetControlSizer)
50
+ singlereturn(GetCurrentPage)
51
+ singlereturn(GetControllerSize)
52
+
53
+
54
+ /*
55
+ * call-seq:
56
+ * BookCtrl.new(parent, name, [options])
57
+ * BookCtrl.new(parent, [options])
58
+ *
59
+ * creates a new BookCtrl widget.
60
+ * ===Arguments
61
+ * * parent of this window or nil
62
+ * * name is a String describing a resource in a loaded xrc
63
+ *
64
+ * *options: Hash with possible options to set:
65
+ * * image_list [WX::Bitmap]
66
+ *
67
+ */
68
+ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
69
+ {
70
+ VALUE parent,name,hash;
71
+ rb_scan_args(argc, argv, "11:",&parent,&name,&hash);
72
+
73
+ rb_call_super(argc,argv);
74
+
75
+
76
+ if(rb_obj_is_kind_of(hash,rb_cHash))
77
+ {
78
+ VALUE temp;
79
+ set_option(image_list,ImageList,wxImageList*)
80
+ }
81
+
82
+ return self;
83
+ }
84
+
85
+ /*
86
+ * call-seq:
87
+ * page(pos) -> WX::Window
88
+ *
89
+ * returns the page with the given index.
90
+ * ===Arguments
91
+ * * pos is a Integer
92
+ *
93
+ * ===Return value
94
+ * WX::Window
95
+ * === Exceptions
96
+ * [IndexError]
97
+ * * pos is greater than the count of pages
98
+ */
99
+ DLL_LOCAL VALUE _page(VALUE self,VALUE idx)
100
+ {
101
+ int cidx(NUM2INT(idx));
102
+
103
+ if(check_index(cidx,_self->GetPageCount()))
104
+ return wrap(_self->GetPage(cidx));
105
+ return Qnil;
106
+ }
107
+
108
+ DLL_LOCAL VALUE _each_size(VALUE self)
109
+ {
110
+ return UINT2NUM(_self->GetPageCount());
111
+ }
112
+
113
+
114
+ /*
115
+ * call-seq:
116
+ * each_page -> Enumerator
117
+ * each_page { |child| } -> self
118
+ *
119
+ * iterates the pages in this book control.
120
+ * ===Return value
121
+ * self
122
+ *
123
+ */
124
+ DLL_LOCAL VALUE _each(VALUE self)
125
+ {
126
+ RETURN_SIZED_ENUMERATOR(self,0,NULL,RUBY_METHOD_FUNC(_each_size));
127
+ std::size_t count = _self->GetPageCount();
128
+ for(std::size_t i = 0; i < count; ++i)
129
+ rb_yield(wrap(_self->GetPage(i)));
130
+ return self;
131
+ }
132
+
133
+ /*
134
+ * call-seq:
135
+ * get_page_text(pos) -> String
136
+ *
137
+ * returns the text of the given page.
138
+ * ===Arguments
139
+ * * pos is a Integer
140
+ *
141
+ * ===Return value
142
+ * String
143
+ * === Exceptions
144
+ * [IndexError]
145
+ * * pos is greater than the count of pages
146
+ */
147
+ DLL_LOCAL VALUE _get_page_text(VALUE self,VALUE idx)
148
+ {
149
+ int cidx(NUM2INT(idx));
150
+ if(check_index(cidx,_self->GetPageCount()))
151
+ return wrap(_self->GetPageText(cidx));
152
+ return Qnil;
153
+ }
154
+
155
+ /*
156
+ * call-seq:
157
+ * set_page_text(pos,text) -> self
158
+ *
159
+ * returns the text of the given page.
160
+ * ===Arguments
161
+ * * pos is a Integer
162
+ * * text is a String
163
+ *
164
+ * ===Return value
165
+ * self
166
+ * === Exceptions
167
+ * [IndexError]
168
+ * * pos is greater than the count of pages
169
+ */
170
+ DLL_LOCAL VALUE _set_page_text(VALUE self,VALUE idx,VALUE str)
171
+ {
172
+ rb_check_frozen(self);
173
+ int cidx(NUM2INT(idx));
174
+ if(check_index(cidx,_self->GetPageCount()))
175
+ _self->SetPageText(cidx,unwrap<wxString>(str));
176
+ return self;
177
+ }
178
+
179
+ /*
180
+ * call-seq:
181
+ * get_page_image(pos) -> Integer
182
+ *
183
+ * returns the image idx of the given page.
184
+ * ===Arguments
185
+ * * pos is a Integer
186
+ *
187
+ * ===Return value
188
+ * Integer
189
+ * === Exceptions
190
+ * [IndexError]
191
+ * * pos is greater than the count of pages
192
+ */
193
+ DLL_LOCAL VALUE _get_page_image(VALUE self,VALUE idx)
194
+ {
195
+ #if wxUSE_AUI
196
+ //TODO should be fixed in wx
197
+ if(rb_obj_is_kind_of(self,rb_cWXAuiNotebook))
198
+ rb_raise(rb_eArgError,"get_page_image is not supported for %s",rb_class2name(rb_cWXAuiNotebook));
199
+ #endif
200
+ int cidx(NUM2INT(idx));
201
+ if(check_index(cidx,_self->GetPageCount()))
202
+ return INT2NUM(_self->GetPageImage(cidx));
203
+ return Qnil;
204
+ }
205
+
206
+ /*
207
+ * call-seq:
208
+ * set_page_image(pos,iid) -> self
209
+ *
210
+ * sets the image idx of the given page.
211
+ * ===Arguments
212
+ * * pos is a Integer
213
+ * * iid Integer index of the image in the image_list
214
+ *
215
+ * ===Return value
216
+ * self
217
+ * === Exceptions
218
+ * [IndexError]
219
+ * * pos is greater than the count of pages
220
+ * * iid is greater than the count of images in the image_list
221
+ */
222
+ DLL_LOCAL VALUE _set_page_image(VALUE self,VALUE idx,VALUE iid)
223
+ {
224
+ rb_check_frozen(self);
225
+ int cidx(NUM2INT(idx));
226
+
227
+ if(check_index(cidx,_self->GetPageCount()))
228
+ {
229
+ int ciid(NUM2INT(iid));
230
+ wxImageList *imglist = _self->GetImageList();
231
+ if(imglist && check_index(ciid,imglist->GetImageCount()))
232
+ {
233
+ _self->SetPageImage(cidx,ciid);
234
+ }
235
+ }
236
+ return self;
237
+ }
238
+
239
+
240
+
241
+ DLL_LOCAL bool check_imagelist(wxBookCtrlBase* self, VALUE imageid, int& iid)
242
+ {
243
+ if(NIL_P(imageid))
244
+ return true;
245
+
246
+ iid = NUM2INT(imageid);
247
+ wxImageList *imglist = self->GetImageList();
248
+ if(imglist)
249
+ return check_index(iid,imglist->GetImageCount());
250
+ return true;
251
+ }
252
+
253
+ DLL_LOCAL bool check_window(VALUE self,VALUE hash, VALUE window, wxWindow*& w)
254
+ {
255
+
256
+ if(rb_obj_is_kind_of(window,rb_cClass) && rb_class_inherited(window,rb_cWXWindow)) {
257
+ VALUE argv2[] = {self, hash };
258
+ w = unwrap<wxWindow*>(rb_class_new_instance(2,argv2,window));
259
+ return true;
260
+ #if wxUSE_TREEBOOK
261
+ }else if(nil_check(window,!rb_obj_is_kind_of(self,rb_cWXTreebook))) //TODO Tree Ctrl allows nil page, but i can't check that
262
+ #else
263
+ }else if(nil_check(window))
264
+ #endif
265
+ {
266
+ return window_parent_check(window,_self,w);
267
+ }
268
+ return false;
269
+ }
270
+
271
+ /*
272
+ * call-seq:
273
+ * add_page(window, text, [select], [bitmap]) -> true/false
274
+ * add_page(WindowClass, text, [select], [bitmap],**options) [{|window| }] -> true/false
275
+ *
276
+ * adds a new page to the BookCtrl widget.
277
+ *
278
+ * ===Arguments
279
+ * * window is a WX::Window instance
280
+ * * text is the Label of the page. String
281
+ * * select is true/false and says if the new page should be selected
282
+ * * bitmap is a Integer and says the position of the bitmap in the image_list
283
+ * ===Return value
284
+ * true/false
285
+ * === Exceptions
286
+ * [IndexError]
287
+ * * bitmap is greater than the list of bitmaps in the image_list
288
+ * [TypeError]
289
+ * * window is nil when the BookCtrl does not support it (currently only supported for TreeBookCtrl)
290
+ * [ArgumentError]
291
+ * * window does not have this BookCtrl as parent
292
+ *
293
+ */
294
+ DLL_LOCAL VALUE _addPage(int argc,VALUE *argv,VALUE self)
295
+ {
296
+ VALUE window,text,select,imageid,hash;
297
+ wxWindow *w = NULL;
298
+ bool sel = false;
299
+ int iid = -1;
300
+ rb_scan_args(argc, argv, "22:",&window,&text,&select,&imageid,&hash);
301
+
302
+ rb_check_frozen(self);
303
+
304
+ if(!NIL_P(select))
305
+ sel = RTEST(select);
306
+
307
+ check_imagelist(_self,imageid,iid);
308
+ check_window(self,hash,window,w);
309
+
310
+ return wrap(_self->AddPage(w,unwrap<wxString>(text),sel,iid));
311
+ }
312
+
313
+
314
+ /*
315
+ * call-seq:
316
+ * insert_page(pos, window, text, [select], [bitmap]) -> true/false
317
+ * insert_page(pos, WindowClass, text, [select], [bitmap],**options) [{|window| }] -> true/false
318
+ *
319
+ * inserts a new page to the BookCtrl widget into the given position.
320
+ *
321
+ * ===Arguments
322
+ * * pos is a Integer
323
+ * * window is a WX::Window instance
324
+ * * text is the Label of the page. String
325
+ * * select is true/false and says if the new page should be selected
326
+ * * bitmap is a Integer and says the position of the bitmap in the image_list
327
+ * ===Return value
328
+ * true/false
329
+ * === Exceptions
330
+ * [IndexError]
331
+ * * pos is greater than the count of pages
332
+ * * bitmap is greater than the list of bitmaps in the image_list
333
+ * [TypeError]
334
+ * * window is nil when the BookCtrl does not support it (currently only supported for TreeBookCtrl)
335
+ * [ArgumentError]
336
+ * * window does not have this BookCtrl as parent
337
+ *
338
+ */
339
+ DLL_LOCAL VALUE _insertPage(int argc,VALUE *argv,VALUE self)
340
+ {
341
+ VALUE idx,window,text,select,imageid,hash;
342
+ wxWindow *w = NULL;
343
+ bool sel = false;
344
+ int iid = -1;
345
+ rb_scan_args(argc, argv, "32:",&idx,&window,&text,&select,&imageid,&hash);
346
+
347
+ rb_check_frozen(self);
348
+
349
+ int cidx = NUM2INT(idx);
350
+ if(check_index(cidx,_self->GetPageCount()+1))
351
+ {
352
+ if(!NIL_P(select))
353
+ sel = RTEST(select);
354
+
355
+ check_imagelist(_self,imageid,iid);
356
+ check_window(self,hash,window,w);
357
+
358
+ return wrap(_self->InsertPage(cidx,w,unwrap<wxString>(text),sel,iid));
359
+ }
360
+ return Qnil;
361
+ }
362
+
363
+
364
+ /*
365
+ * call-seq:
366
+ * prepend_page(window, text, [select], [bitmap]) -> true/false
367
+ * prepend_page(WindowClass, text, [select], [bitmap],**options) [{|window| }] -> true/false
368
+ *
369
+ * prepends a new page to the BookCtrl widget.
370
+ *
371
+ * ===Arguments
372
+ * * window is a WX::Window instance
373
+ * * text is the Label of the page. String
374
+ * * select is true/false and says if the new page should be selected
375
+ * * bitmap is a Integer and says the position of the bitmap in the image_list
376
+ * ===Return value
377
+ * true/false
378
+ * === Exceptions
379
+ * [IndexError]
380
+ * * bitmap is greater than the list of bitmaps in the image_list
381
+ * [TypeError]
382
+ * * window is nil when the BookCtrl does not support it (currently only supported for TreeBookCtrl)
383
+ * [ArgumentError]
384
+ * * window does not have this BookCtrl as parent
385
+ *
386
+ */
387
+ DLL_LOCAL VALUE _prependPage(int argc,VALUE *argv,VALUE self)
388
+ {
389
+ VALUE window,text,select,imageid,hash;
390
+ wxWindow *w = NULL;
391
+ bool sel = false;
392
+ int iid = -1;
393
+ rb_scan_args(argc, argv, "22:",&window,&text,&select,&imageid,&hash);
394
+
395
+ rb_check_frozen(self);
396
+
397
+ if(!NIL_P(select))
398
+ sel = RTEST(select);
399
+
400
+ check_imagelist(_self,imageid,iid);
401
+ check_window(self,hash,window,w);
402
+
403
+ return wrap(_self->InsertPage(0,w,unwrap<wxString>(text),sel,iid));
404
+ }
405
+
406
+ /*
407
+ * call-seq:
408
+ * delete_page(pos) -> WX::Window
409
+ *
410
+ * deletes and returns the page with the given index from the BookCtrl.
411
+ * ===Arguments
412
+ * * pos is a Integer
413
+ *
414
+ * ===Return value
415
+ * WX::Window
416
+ * === Exceptions
417
+ * [IndexError]
418
+ * * pos is greater than the count of pages
419
+ */
420
+ DLL_LOCAL VALUE _deletePage(VALUE self,VALUE idx)
421
+ {
422
+ rb_check_frozen(self);
423
+ int cidx = NUM2INT(idx);
424
+ if(check_index(cidx,_self->GetPageCount()))
425
+ {
426
+ wxWindow *w = _self->GetPage(cidx);
427
+ if(_self->RemovePage(cidx))
428
+ return wrap(w);
429
+ }
430
+ return Qnil;
431
+ }
432
+
433
+
434
+
435
+ singlefunc(DeleteAllPages)
436
+ singlefunc(AdvanceSelection)
437
+
438
+ /*
439
+ * call-seq:
440
+ * prev_page -> self
441
+ *
442
+ * selects the previous page of the current selected.
443
+ * ===Return value
444
+ * self
445
+ */
446
+ DLL_LOCAL VALUE _prev_page(VALUE self)
447
+ {
448
+ rb_check_frozen(self);
449
+ _self->AdvanceSelection(false);
450
+ return self;
451
+ }
452
+
453
+ /* Document-method: delete_all_pages
454
+ * call-seq:
455
+ * delete_all_pages -> self
456
+ *
457
+ * deletes all pages from the BookCtrl. Returns self.
458
+ * ===Return value
459
+ * self
460
+ */
461
+
462
+ /* Document-method: next_page
463
+ * call-seq:
464
+ * next_page -> self
465
+ *
466
+ * selects the next page of the current selected.
467
+ * ===Return value
468
+ * self
469
+ */
470
+
471
+
472
+
473
+ /* Document-method: vertical?
474
+ * call-seq:
475
+ * vertical? -> true/false
476
+ *
477
+ * returns true is vertical orientation is used.
478
+ * ===Return value
479
+ * true/false
480
+ */
481
+
482
+ /* Document-method: current_page
483
+ * call-seq:
484
+ * current_page -> WX::Window/nil
485
+ *
486
+ * returns the current selected page or nil if none is selected.
487
+ * ===Return value
488
+ * WX::Window/nil
489
+ */
490
+
491
+
492
+ /* Document-method: control_sizer
493
+ * call-seq:
494
+ * current_page -> WX::Sizer/nil
495
+ *
496
+ * returns the sizer containing the control, if any
497
+ * ===Return value
498
+ * WX::Sizer/nil
499
+ */
500
+ /* Document-method: controller_size
501
+ * call-seq:
502
+ * controller_size -> WX::Size
503
+ *
504
+ * return the size of the area needed to accommodate the controller
505
+ * ===Return value
506
+ * WX::Size
507
+ */
508
+
509
+
510
+
511
+ /* Document-attr: image_list
512
+ * [WX::Bitmap] array of bitmap images,
513
+ * bitmap parameter for add, insert & prepend of pages must be smaller than size of array.
514
+ */
515
+ /* Document-attr: selection
516
+ * Integer/nil returns the index of the current selected page, or nil if none is selected.
517
+ */
518
+ /* Document-attr: internal_border
519
+ * Integer returns how many pixel the pages are depart of each other.
520
+ */
521
+ /* Document-attr: control_margin
522
+ * Integer returns the margin of the pages.
523
+ */
524
+
525
+ /* Document-const: TOP
526
+ * orient the book ctrl pages on top.
527
+ */
528
+ /* Document-const: BOTTOM
529
+ * orient the book ctrl pages on bottom.
530
+ */
531
+ /* Document-const: LEFT
532
+ * orient the book ctrl pages on left.
533
+ */
534
+ /* Document-const: RIGHT
535
+ * orient the book ctrl pages on right.
536
+ */
537
+
538
+ //for event
539
+
540
+ /* Document-attr: old_selection
541
+ * Integer/nil returns the index of the current selected page, or nil if none is selected.
542
+ */
543
+
544
+ namespace Event {
545
+ #undef _self
546
+ #define _self unwrapTypedPtr<wxBookCtrlEvent>(self,rb_cWXBookCtrlEvent)
547
+ macro_attr(Selection,int)
548
+ macro_attr(OldSelection,int)
549
+ }
550
+
551
+ }
552
+ }
553
+ #endif
554
+ DLL_LOCAL void Init_WXBookCtrl(VALUE rb_mWX)
555
+ {
556
+ #if 0
557
+ rb_mWX = rb_define_module("WX");
558
+ rb_mWXEvtHandler = rb_define_module_under(rb_mWX,"EvtHandler");
559
+
560
+ rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
561
+ rb_cWXControl = rb_define_class_under(rb_mWX,"Control",rb_cWXWindow);
562
+
563
+ rb_define_attr(rb_cWXBookCtrlBase,"selection",1,1);
564
+ rb_define_attr(rb_cWXBookCtrlBase,"image_list",1,1);
565
+ rb_define_attr(rb_cWXBookCtrlBase,"intenal_border",1,1);
566
+ rb_define_attr(rb_cWXBookCtrlBase,"control_margin",1,1);
567
+
568
+ rb_define_attr(rb_cWXBookCtrlEvent,"selection",1,1);
569
+ rb_define_attr(rb_cWXBookCtrlEvent,"old_selection",1,1);
570
+
571
+ rb_cWXEvent = rb_define_class_under(rb_mWX,"Event",rb_cObject);
572
+ rb_cWXCommandEvent = rb_define_class_under(rb_cWXEvent,"Command",rb_cWXEvent);
573
+ rb_cWXNotifyEvent = rb_define_class_under(rb_cWXEvent,"Notify",rb_cWXCommandEvent);
574
+
575
+ #endif
576
+
577
+ #if wxUSE_BOOKCTRL
578
+ using namespace RubyWX::BookCtrl;
579
+ rb_cWXBookCtrlBase = rb_define_class_under(rb_mWX,"BookCtrl",rb_cWXControl);
580
+ rb_undef_alloc_func(rb_cWXBookCtrlBase);
581
+
582
+ rb_define_method(rb_cWXBookCtrlBase,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
583
+
584
+ rb_define_attr_method(rb_cWXBookCtrlBase,"selection",_getSelection,_setSelection);
585
+ rb_define_attr_method(rb_cWXBookCtrlBase,"image_list",_getImageList,_setImageList);
586
+ rb_define_attr_method(rb_cWXBookCtrlBase,"intenal_border",_getInternalBorder,_setInternalBorder);
587
+ rb_define_attr_method(rb_cWXBookCtrlBase,"control_margin",_getControlMargin,_setControlMargin);
588
+
589
+ rb_define_method(rb_cWXBookCtrlBase,"add_page",RUBY_METHOD_FUNC(_addPage),-1);
590
+ rb_define_method(rb_cWXBookCtrlBase,"insert_page",RUBY_METHOD_FUNC(_insertPage),-1);
591
+ rb_define_method(rb_cWXBookCtrlBase,"prepend_page",RUBY_METHOD_FUNC(_prependPage),-1);
592
+
593
+ rb_define_method(rb_cWXBookCtrlBase,"each_page",RUBY_METHOD_FUNC(_each),0);
594
+
595
+ rb_define_method(rb_cWXBookCtrlBase,"page",RUBY_METHOD_FUNC(_page),1);
596
+
597
+ rb_define_method(rb_cWXBookCtrlBase,"get_page_text",RUBY_METHOD_FUNC(_get_page_text),1);
598
+ rb_define_method(rb_cWXBookCtrlBase,"set_page_text",RUBY_METHOD_FUNC(_set_page_text),2);
599
+
600
+ rb_define_method(rb_cWXBookCtrlBase,"get_page_image",RUBY_METHOD_FUNC(_get_page_image),1);
601
+ rb_define_method(rb_cWXBookCtrlBase,"set_page_image",RUBY_METHOD_FUNC(_set_page_image),2);
602
+
603
+ rb_define_method(rb_cWXBookCtrlBase,"vertical?",RUBY_METHOD_FUNC(_IsVertical),0);
604
+
605
+ rb_define_method(rb_cWXBookCtrlBase,"current_page",RUBY_METHOD_FUNC(_GetCurrentPage),0);
606
+ rb_define_method(rb_cWXBookCtrlBase,"controller_size",RUBY_METHOD_FUNC(_GetControllerSize),0);
607
+ rb_define_method(rb_cWXBookCtrlBase,"control_sizer",RUBY_METHOD_FUNC(_GetControlSizer),0);
608
+
609
+ rb_define_method(rb_cWXBookCtrlBase,"delete_page",RUBY_METHOD_FUNC(_deletePage),1);
610
+ rb_define_method(rb_cWXBookCtrlBase,"delete_all_pages",RUBY_METHOD_FUNC(_DeleteAllPages),0);
611
+
612
+ rb_define_method(rb_cWXBookCtrlBase,"next_page",RUBY_METHOD_FUNC(_AdvanceSelection),0);
613
+ rb_define_method(rb_cWXBookCtrlBase,"prev_page",RUBY_METHOD_FUNC(_prev_page),0);
614
+
615
+ rb_define_const(rb_cWXBookCtrlBase,"TOP",INT2NUM(wxBK_TOP));
616
+ rb_define_const(rb_cWXBookCtrlBase,"BOTTOM",INT2NUM(wxBK_BOTTOM));
617
+ rb_define_const(rb_cWXBookCtrlBase,"LEFT",INT2NUM(wxBK_LEFT));
618
+ rb_define_const(rb_cWXBookCtrlBase,"RIGHT",INT2NUM(wxBK_RIGHT));
619
+
620
+
621
+ rb_cWXBookCtrlEvent = rb_define_class_under(rb_cWXEvent,"BookCtrl",rb_cWXNotifyEvent);
622
+
623
+ rb_define_attr_method(rb_cWXBookCtrlEvent,"selection",Event::_getSelection,Event::_setSelection);
624
+ rb_define_attr_method(rb_cWXBookCtrlEvent,"old_selection",Event::_getOldSelection,Event::_setOldSelection);
625
+
626
+ registerInfo<wxBookCtrlBase>(rb_cWXBookCtrlBase);
627
+ registerInfo<wxBookCtrlEvent>(rb_cWXBookCtrlEvent);
628
+ #endif
629
+
630
+ }
631
+
632
+
633
+