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,20 @@
1
+ /*
2
+ * wxFontPickerWidget.hpp
3
+ *
4
+ * Created on: 24.05.2014
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXFONTPICKERWIDGET_HPP_
9
+ #define WXFONTPICKERWIDGET_HPP_
10
+
11
+ #include "wxEvtHandler.hpp"
12
+
13
+ extern VALUE rb_cWXFontPickerWidget;
14
+
15
+ void Init_WXFontPickerWidget(VALUE rb_mWX);
16
+ #if wxUSE_FONTPICKERCTRL
17
+ #include <wx/fontpicker.h>
18
+ #endif
19
+
20
+ #endif /* WXFONTPICKERWIDGET_HPP_ */
@@ -0,0 +1,274 @@
1
+ /*
2
+ * wxFrame.cpp
3
+ *
4
+ * Created on: 06.02.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #include "wxEvtHandler.hpp"
9
+ VALUE rb_cWXFrame;
10
+
11
+ #define _self unwrap<wxFrame*>(self)
12
+
13
+ namespace RubyWX {
14
+ namespace Frame {
15
+
16
+ APP_PROTECT(wxFrame)
17
+
18
+
19
+ /*
20
+ * call-seq:
21
+ * Frame.new(parent, name, [options])
22
+ * Frame.new(parent, [options])
23
+ *
24
+ * creates a new Frame widget.
25
+ * ===Arguments
26
+ * * parent of this window or nil
27
+ * * name is a String describing a resource in a loaded xrc
28
+ *
29
+ * *options: Hash with possible options to set
30
+ *
31
+ */
32
+ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
33
+ {
34
+ VALUE parent,hash,name;
35
+ rb_scan_args(argc, argv, "11:",&parent,&name,&hash);
36
+
37
+ if(!_created) {
38
+ #if wxUSE_XRC
39
+ if(!loadxrc(_self,name,unwrap<wxWindow*>(parent)))
40
+ #endif
41
+ {
42
+ wxWindowID id(wxID_ANY);
43
+ int style(wxDEFAULT_FRAME_STYLE);
44
+
45
+ wxString title(wxEmptyString);
46
+
47
+ if(rb_obj_is_kind_of(hash,rb_cHash))
48
+ {
49
+ set_hash_option(hash,"id",id,unwrapID);
50
+ set_hash_option(hash,"style",style);
51
+
52
+ set_hash_option(hash,"title",title);
53
+
54
+ TopLevel::set_style_flags(hash,style);
55
+ }
56
+
57
+ if(title.empty() && !wxTheApp->GetTopWindow())
58
+ title = wxTheApp->GetAppName();
59
+
60
+ _self->Create(
61
+ unwrap<wxWindow*>(parent),id,title,
62
+ wxDefaultPosition,wxDefaultSize,style
63
+ );
64
+
65
+ }
66
+ }
67
+
68
+ rb_call_super(argc,argv);
69
+
70
+ return self;
71
+ }
72
+
73
+
74
+ #if wxUSE_MENUS
75
+ macro_attr(MenuBar,wxMenuBar*)
76
+ #endif // wxUSE_MENUS
77
+
78
+ #if wxUSE_STATUSBAR
79
+ macro_attr(StatusBar,wxStatusBar*)
80
+ macro_attr(StatusBarPane,int)
81
+
82
+
83
+ /*
84
+ * call-seq:
85
+ * create_statusbar(**options) -> WX::StatusBar
86
+ *
87
+ * creates a new status bar and add it to this frame.
88
+ * ===Arguments
89
+ * * options
90
+ * * number Integer
91
+ * * style Integer
92
+ * * id Symbol/Integer
93
+ *
94
+ * ===Return value
95
+ * WX::StatusBar
96
+ */
97
+ DLL_LOCAL VALUE _CreateStatusBar(int argc,VALUE *argv,VALUE self)
98
+ {
99
+ VALUE hash;
100
+ rb_scan_args(argc, argv, ":",&hash);
101
+
102
+ int number = 1;
103
+ long style = wxSTB_DEFAULT_STYLE;
104
+ wxWindowID wid = wxID_ANY;
105
+
106
+ if(rb_obj_is_kind_of(hash,rb_cHash))
107
+ {
108
+ set_hash_option(hash,"number",number);
109
+ set_hash_option(hash,"style",style);
110
+ set_hash_option(hash,"id",wid,unwrapID);
111
+ }
112
+
113
+ return wrap(_self->CreateStatusBar(number,style,wid));
114
+
115
+ }
116
+
117
+ /*
118
+ * call-seq:
119
+ * push_status_text(text,[pos]) -> self
120
+ *
121
+ * pushes status text to the given pane.
122
+ * ===Arguments
123
+ * * text String
124
+ * * pos is a Integer
125
+ *
126
+ * ===Return value
127
+ * self
128
+ * === Exceptions
129
+ * [IndexError]
130
+ * * pos is greater than the count of panes
131
+ */
132
+ DLL_LOCAL VALUE _pushStatusText(int argc,VALUE *argv,VALUE self)
133
+ {
134
+ VALUE str,num;
135
+ rb_scan_args(argc, argv, "11",&str,&num);
136
+ rb_check_frozen(self);
137
+
138
+ int cidx(0);
139
+
140
+ if(!NIL_P(num))
141
+ cidx = NUM2INT(num);
142
+
143
+ if(check_index(cidx,_self->GetStatusBar()->GetFieldsCount()))
144
+ _self->PushStatusText(unwrap<wxString>(str),cidx);
145
+
146
+ return self;
147
+ }
148
+
149
+
150
+ /*
151
+ * call-seq:
152
+ * pop_status_text([pos]) -> self
153
+ *
154
+ * pops status text from the given pane.
155
+ * ===Arguments
156
+ * * pos is a Integer
157
+ *
158
+ * ===Return value
159
+ * self
160
+ * === Exceptions
161
+ * [IndexError]
162
+ * * pos is greater than the count of panes
163
+ */
164
+ DLL_LOCAL VALUE _popStatusText(int argc,VALUE *argv,VALUE self)
165
+ {
166
+ VALUE num;
167
+ rb_scan_args(argc, argv, "01",&num);
168
+ rb_check_frozen(self);
169
+
170
+ int cidx(0);
171
+
172
+ if(!NIL_P(num))
173
+ cidx = NUM2INT(num);
174
+
175
+ if(check_index(cidx,_self->GetStatusBar()->GetFieldsCount()))
176
+ _self->PopStatusText(cidx);
177
+
178
+ return self;
179
+ }
180
+ #endif // wxUSE_STATUSBAR
181
+
182
+ #if wxUSE_TOOLBAR
183
+ macro_attr(ToolBar,wxToolBar*)
184
+
185
+ /*
186
+ * call-seq:
187
+ * create_statusbar(**options) -> WX::StatusBar
188
+ *
189
+ * creates a new status bar and add it to this frame.
190
+ * ===Arguments
191
+ * * options
192
+ * * style Integer
193
+ * * id Symbol/Integer
194
+ *
195
+ * ===Return value
196
+ * WX::StatusBar
197
+ */
198
+ DLL_LOCAL VALUE _CreateToolBar(int argc,VALUE *argv,VALUE self)
199
+ {
200
+ VALUE hash;
201
+ rb_scan_args(argc, argv, ":",&hash);
202
+
203
+ long style = -1;
204
+ wxWindowID wid = wxID_ANY;
205
+
206
+ if(rb_obj_is_kind_of(hash,rb_cHash))
207
+ {
208
+ set_hash_option(hash,"style",style);
209
+ set_hash_option(hash,"id",wid,unwrapID);
210
+ }
211
+
212
+ return wrap(_self->CreateToolBar(style,wid));
213
+
214
+ }
215
+
216
+ #endif // wxUSE_TOOLBAR
217
+ }
218
+ }
219
+
220
+
221
+ /* Document-attr: menubar
222
+ * the menu bar of the Frame. WX::MenuBar
223
+ */
224
+ /* Document-attr: statusbar
225
+ * the status bar of the Frame. WX::StatusBar
226
+ */
227
+ /* Document-attr: toolbar
228
+ * the tool bar of the Frame. WX::ToolBar
229
+ */
230
+
231
+
232
+ /* Document-attr: statusbar_pane
233
+ * the status bar pane where the help text are showing. Integer
234
+ */
235
+ DLL_LOCAL void Init_WXFrame(VALUE rb_mWX)
236
+ {
237
+ #if 0
238
+ rb_mWX = rb_define_module("WX");
239
+ rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
240
+
241
+ rb_cWXTopLevel = rb_define_class_under(rb_mWX,"TopLevel",rb_cWXWindow);
242
+
243
+ rb_define_attr(rb_cWXFrame,"menubar",1,1);
244
+ rb_define_attr(rb_cWXFrame,"statusbar",1,1);
245
+ rb_define_attr(rb_cWXFrame,"statusbar_pane",1,1);
246
+ rb_define_attr(rb_cWXFrame,"toolbar",1,1);
247
+ #endif
248
+
249
+ using namespace RubyWX::Frame;
250
+ rb_cWXFrame = rb_define_class_under(rb_mWX,"Frame",rb_cWXTopLevel);
251
+ rb_define_alloc_func(rb_cWXFrame,_alloc);
252
+
253
+ rb_define_method(rb_cWXFrame,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
254
+
255
+ #if wxUSE_MENUS
256
+ rb_define_attr_method(rb_cWXFrame,"menubar",_getMenuBar,_setMenuBar);
257
+ #endif // wxUSE_MENUS
258
+ #if wxUSE_STATUSBAR
259
+ rb_define_attr_method(rb_cWXFrame,"statusbar",_getStatusBar,_setStatusBar);
260
+ rb_define_attr_method(rb_cWXFrame,"statusbar_pane",_getStatusBarPane,_setStatusBarPane);
261
+ rb_define_method(rb_cWXFrame,"create_statusbar",RUBY_METHOD_FUNC(_CreateStatusBar),-1);
262
+
263
+
264
+ rb_define_method(rb_cWXFrame,"push_status_text",RUBY_METHOD_FUNC(_pushStatusText),-1);
265
+ rb_define_method(rb_cWXFrame,"pop_status_text",RUBY_METHOD_FUNC(_popStatusText),-1);
266
+
267
+ #endif // wxUSE_STATUSBAR
268
+ #if wxUSE_TOOLBAR
269
+ rb_define_attr_method(rb_cWXFrame,"toolbar",_getToolBar,_setToolBar);
270
+ rb_define_method(rb_cWXFrame,"create_toolbar",RUBY_METHOD_FUNC(_CreateToolBar),-1);
271
+ #endif // wxUSE_TOOLBAR
272
+
273
+ registerInfo<wxFrame>(rb_cWXFrame);
274
+ }
@@ -0,0 +1,17 @@
1
+ /*
2
+ * wxFrame.hpp
3
+ *
4
+ * Created on: 06.02.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXFRAME_HPP_
9
+ #define WXFRAME_HPP_
10
+
11
+ #include "wxToplevel.hpp"
12
+
13
+ extern VALUE rb_cWXFrame;
14
+
15
+ DLL_LOCAL void Init_WXFrame(VALUE rb_mWX);
16
+
17
+ #endif /* WXFRAME_HPP_ */
@@ -0,0 +1,167 @@
1
+ /*
2
+ * wxGauge.cpp
3
+ *
4
+ * Created on: 27.02.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #include "wxGauge.hpp"
9
+
10
+ VALUE rb_cWXGauge;
11
+
12
+ #if wxUSE_GAUGE
13
+ #define _self unwrap<wxGauge*>(self)
14
+
15
+ namespace RubyWX {
16
+ namespace Gauge {
17
+
18
+ macro_attr(Range,int)
19
+
20
+ singlereturn(GetValue)
21
+
22
+ APP_PROTECT(wxGauge)
23
+
24
+ singlereturn(IsVertical)
25
+
26
+
27
+ DLL_LOCAL VALUE _setValue(VALUE self,VALUE other)
28
+ {
29
+ rb_check_frozen(self);
30
+
31
+ int val = NUM2UINT(other);
32
+ //extra check, because value can't be bigger than range
33
+ if(check_index(val,_self->GetRange()))
34
+ _self->SetValue(val);
35
+ return other;
36
+ }
37
+
38
+ /*
39
+ * call-seq:
40
+ * Gauge.new(parent, name, [options])
41
+ * Gauge.new(parent, [options])
42
+ *
43
+ * creates a new Gauge widget.
44
+ * ===Arguments
45
+ * * parent of this window or nil
46
+ * * name is a String describing a resource in a loaded xrc
47
+ *
48
+ * * options: Hash with possible options to set:
49
+ * * range Integer
50
+ * * value Integer
51
+ *
52
+ */
53
+ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
54
+ {
55
+ VALUE parent,name,hash;
56
+ rb_scan_args(argc, argv, "11:",&parent,&name,&hash);
57
+
58
+ if(!_created && !rb_obj_is_kind_of(name,rb_cString))
59
+ {
60
+ wxWindowID id(wxID_ANY);
61
+ int style(wxGA_HORIZONTAL);
62
+
63
+ int range(0);
64
+
65
+ if(rb_obj_is_kind_of(hash,rb_cHash))
66
+ {
67
+ set_hash_option(hash,"id",id,unwrapID);
68
+ set_hash_option(hash,"range",style);
69
+ set_hash_option(hash,"style",style);
70
+
71
+ set_hash_flag_option(hash,"vertical",wxGA_VERTICAL,style);
72
+ set_hash_flag_option(hash,"smooth",wxGA_SMOOTH,style);
73
+ }
74
+
75
+ _self->Create(unwrap<wxWindow*>(parent),id,range,wxDefaultPosition,wxDefaultSize,style);
76
+
77
+ }
78
+
79
+ rb_call_super(argc,argv);
80
+
81
+ if(rb_obj_is_kind_of(hash,rb_cHash))
82
+ {
83
+ VALUE temp;
84
+
85
+ set_option(value,Value,int)
86
+ }
87
+ return self;
88
+ }
89
+
90
+ singlefunc(Pulse)
91
+
92
+ }
93
+ }
94
+ #endif
95
+
96
+
97
+ /* Document-attr: range
98
+ * the range of the Gauge. Integer
99
+ */
100
+ /* Document-attr: value
101
+ * the value of the Gauge. Integer
102
+ */
103
+
104
+ /* Document-method: vertical?
105
+ * call-seq:
106
+ * vertical? -> true/false
107
+ *
108
+ * returns true if this control is vertical.
109
+ * ===Return value
110
+ * true/false
111
+ */
112
+
113
+ /* Document-method: pulse
114
+ * call-seq:
115
+ * pulse -> self
116
+ *
117
+ * Switch the gauge to indeterminate mode (if required) and
118
+ * makes the gauge move a bit to indicate the user that
119
+ * some progress has been made.
120
+ * ===Return value
121
+ * self
122
+ */
123
+
124
+
125
+ /* Document-const: VERTICAL
126
+ * Creates a vertical gauge.
127
+ */
128
+ /* Document-const: SMOOTH
129
+ * Creates smooth progress bar with one pixel wide update step (not supported by all platforms).
130
+ */
131
+
132
+
133
+ DLL_LOCAL void Init_WXGauge(VALUE rb_mWX)
134
+ {
135
+ #if 0
136
+ rb_mWX = rb_define_module("WX");
137
+ rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
138
+
139
+ rb_cWXControl = rb_define_class_under(rb_mWX,"Control",rb_cWXWindow);
140
+
141
+ rb_define_attr(rb_cWXGauge,"range",1,1);
142
+ rb_define_attr(rb_cWXGauge,"value",1,1);
143
+ #endif
144
+
145
+ #if wxUSE_GAUGE
146
+ using namespace RubyWX::Gauge;
147
+ rb_cWXGauge = rb_define_class_under(rb_mWX,"Gauge",rb_cWXControl);
148
+ rb_define_alloc_func(rb_cWXGauge,_alloc);
149
+
150
+ rb_define_method(rb_cWXGauge,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
151
+
152
+ rb_define_attr_method(rb_cWXGauge,"range",_getRange,_setRange);
153
+ rb_define_attr_method(rb_cWXGauge,"value",_GetValue,_setValue);
154
+
155
+ rb_define_method(rb_cWXGauge,"pulse",RUBY_METHOD_FUNC(_Pulse),0);
156
+
157
+ rb_define_method(rb_cWXGauge,"vertical?",RUBY_METHOD_FUNC(_IsVertical),0);
158
+
159
+ rb_define_const(rb_cWXGauge,"VERTICAL",INT2NUM(wxGA_VERTICAL));
160
+ rb_define_const(rb_cWXGauge,"SMOOTH",INT2NUM(wxGA_SMOOTH));
161
+
162
+
163
+ registerInfo<wxGauge>(rb_cWXGauge);
164
+ #endif
165
+
166
+ }
167
+