rwx 0.0.1.dev

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (376) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +49 -0
  3. data/COPYING +0 -0
  4. data/README.rdoc +0 -0
  5. data/Rakefile +100 -0
  6. data/VERSION +1 -0
  7. data/ext/extconf.rb +112 -0
  8. data/ext/main.cpp +432 -0
  9. data/ext/main.hpp +454 -0
  10. data/ext/rwx.cpp +472 -0
  11. data/ext/wxAboutDlg.cpp +213 -0
  12. data/ext/wxAboutDlg.hpp +19 -0
  13. data/ext/wxAnyButton.cpp +141 -0
  14. data/ext/wxAnyButton.hpp +17 -0
  15. data/ext/wxAnyChoiceDialog.cpp +93 -0
  16. data/ext/wxAnyChoiceDialog.hpp +19 -0
  17. data/ext/wxApp.cpp +205 -0
  18. data/ext/wxApp.hpp +48 -0
  19. data/ext/wxAui.hpp +19 -0
  20. data/ext/wxAuiBook.cpp +453 -0
  21. data/ext/wxAuiBook.hpp +21 -0
  22. data/ext/wxAuiManager.cpp +79 -0
  23. data/ext/wxAuiManager.hpp +18 -0
  24. data/ext/wxAuiPane.cpp +343 -0
  25. data/ext/wxAuiPane.hpp +29 -0
  26. data/ext/wxAuiToolBar.cpp +47 -0
  27. data/ext/wxAuiToolBar.hpp +17 -0
  28. data/ext/wxBitmap.cpp +368 -0
  29. data/ext/wxBitmap.hpp +60 -0
  30. data/ext/wxBitmapButton.cpp +82 -0
  31. data/ext/wxBitmapButton.hpp +17 -0
  32. data/ext/wxBitmapComboBox.cpp +284 -0
  33. data/ext/wxBitmapComboBox.hpp +22 -0
  34. data/ext/wxBitmapToggleButton.cpp +82 -0
  35. data/ext/wxBitmapToggleButton.hpp +17 -0
  36. data/ext/wxBookCtrl.cpp +633 -0
  37. data/ext/wxBookCtrl.hpp +22 -0
  38. data/ext/wxBoxSizer.cpp +60 -0
  39. data/ext/wxBoxSizer.hpp +17 -0
  40. data/ext/wxBrush.cpp +281 -0
  41. data/ext/wxBrush.hpp +28 -0
  42. data/ext/wxButton.cpp +85 -0
  43. data/ext/wxButton.hpp +17 -0
  44. data/ext/wxButtonToolBar.cpp +54 -0
  45. data/ext/wxButtonToolBar.hpp +21 -0
  46. data/ext/wxCalendarCtrl.cpp +91 -0
  47. data/ext/wxCalendarCtrl.hpp +17 -0
  48. data/ext/wxCalendarCtrlBase.cpp +55 -0
  49. data/ext/wxCalendarCtrlBase.hpp +26 -0
  50. data/ext/wxCalendarCtrlGeneric.cpp +102 -0
  51. data/ext/wxCalendarCtrlGeneric.hpp +21 -0
  52. data/ext/wxCheckBox.cpp +157 -0
  53. data/ext/wxCheckBox.hpp +17 -0
  54. data/ext/wxCheckListBox.cpp +191 -0
  55. data/ext/wxCheckListBox.hpp +20 -0
  56. data/ext/wxChoice.cpp +133 -0
  57. data/ext/wxChoice.hpp +30 -0
  58. data/ext/wxChoiceBook.cpp +90 -0
  59. data/ext/wxChoiceBook.hpp +23 -0
  60. data/ext/wxCollapsiblePane.cpp +110 -0
  61. data/ext/wxCollapsiblePane.hpp +21 -0
  62. data/ext/wxColor.cpp +435 -0
  63. data/ext/wxColor.hpp +38 -0
  64. data/ext/wxColorDialog.cpp +97 -0
  65. data/ext/wxColorDialog.hpp +19 -0
  66. data/ext/wxColorPicker.cpp +131 -0
  67. data/ext/wxColorPicker.hpp +20 -0
  68. data/ext/wxColorPickerWidget.cpp +105 -0
  69. data/ext/wxColorPickerWidget.hpp +20 -0
  70. data/ext/wxComboBox.cpp +214 -0
  71. data/ext/wxComboBox.hpp +22 -0
  72. data/ext/wxCommandEvent.cpp +45 -0
  73. data/ext/wxCommandEvent.hpp +16 -0
  74. data/ext/wxConfig.cpp +19 -0
  75. data/ext/wxConfig.hpp +17 -0
  76. data/ext/wxContextHelpButton.cpp +93 -0
  77. data/ext/wxContextHelpButton.hpp +21 -0
  78. data/ext/wxControl.cpp +90 -0
  79. data/ext/wxControl.hpp +15 -0
  80. data/ext/wxCursor.cpp +108 -0
  81. data/ext/wxCursor.hpp +25 -0
  82. data/ext/wxDC.cpp +252 -0
  83. data/ext/wxDC.hpp +18 -0
  84. data/ext/wxDataView.cpp +224 -0
  85. data/ext/wxDataView.hpp +45 -0
  86. data/ext/wxDataViewList.cpp +190 -0
  87. data/ext/wxDataViewList.hpp +17 -0
  88. data/ext/wxDatePicker.cpp +103 -0
  89. data/ext/wxDatePicker.hpp +22 -0
  90. data/ext/wxDialog.cpp +120 -0
  91. data/ext/wxDialog.hpp +17 -0
  92. data/ext/wxDirDialog.cpp +152 -0
  93. data/ext/wxDirDialog.hpp +20 -0
  94. data/ext/wxDirPicker.cpp +134 -0
  95. data/ext/wxDirPicker.hpp +28 -0
  96. data/ext/wxDirPickerWidget.cpp +127 -0
  97. data/ext/wxDirPickerWidget.hpp +20 -0
  98. data/ext/wxError.cpp +67 -0
  99. data/ext/wxError.hpp +17 -0
  100. data/ext/wxEvent.cpp +60 -0
  101. data/ext/wxEvent.hpp +17 -0
  102. data/ext/wxEvtHandler.cpp +291 -0
  103. data/ext/wxEvtHandler.hpp +85 -0
  104. data/ext/wxFileCtrl.cpp +98 -0
  105. data/ext/wxFileCtrl.hpp +17 -0
  106. data/ext/wxFileCtrlBase.cpp +219 -0
  107. data/ext/wxFileCtrlBase.hpp +33 -0
  108. data/ext/wxFileCtrlGeneric.cpp +106 -0
  109. data/ext/wxFileCtrlGeneric.hpp +19 -0
  110. data/ext/wxFileDialog.cpp +268 -0
  111. data/ext/wxFileDialog.hpp +19 -0
  112. data/ext/wxFileDirPicker.cpp +89 -0
  113. data/ext/wxFileDirPicker.hpp +29 -0
  114. data/ext/wxFileHistory.cpp +134 -0
  115. data/ext/wxFileHistory.hpp +20 -0
  116. data/ext/wxFilePicker.cpp +160 -0
  117. data/ext/wxFilePicker.hpp +28 -0
  118. data/ext/wxFilePickerWidget.cpp +139 -0
  119. data/ext/wxFilePickerWidget.hpp +20 -0
  120. data/ext/wxFont.cpp +542 -0
  121. data/ext/wxFont.hpp +37 -0
  122. data/ext/wxFontDialog.cpp +143 -0
  123. data/ext/wxFontDialog.hpp +21 -0
  124. data/ext/wxFontPicker.cpp +160 -0
  125. data/ext/wxFontPicker.hpp +21 -0
  126. data/ext/wxFontPickerWidget.cpp +128 -0
  127. data/ext/wxFontPickerWidget.hpp +20 -0
  128. data/ext/wxFrame.cpp +274 -0
  129. data/ext/wxFrame.hpp +17 -0
  130. data/ext/wxGauge.cpp +167 -0
  131. data/ext/wxGauge.hpp +17 -0
  132. data/ext/wxGrid.cpp +250 -0
  133. data/ext/wxGrid.hpp +43 -0
  134. data/ext/wxGridCellAttr.cpp +68 -0
  135. data/ext/wxGridCellAttr.hpp +26 -0
  136. data/ext/wxGridCellRenderer.cpp +120 -0
  137. data/ext/wxGridCellRenderer.hpp +30 -0
  138. data/ext/wxGridTable.cpp +111 -0
  139. data/ext/wxGridTable.hpp +47 -0
  140. data/ext/wxHyperLink.cpp +148 -0
  141. data/ext/wxHyperLink.hpp +20 -0
  142. data/ext/wxImage.cpp +884 -0
  143. data/ext/wxImage.hpp +24 -0
  144. data/ext/wxInfoBar.cpp +85 -0
  145. data/ext/wxInfoBar.hpp +21 -0
  146. data/ext/wxInfoBarBase.cpp +145 -0
  147. data/ext/wxInfoBarBase.hpp +21 -0
  148. data/ext/wxInfoBarGeneric.cpp +90 -0
  149. data/ext/wxInfoBarGeneric.hpp +21 -0
  150. data/ext/wxItemContainer.cpp +313 -0
  151. data/ext/wxItemContainer.hpp +17 -0
  152. data/ext/wxKeyEvent.cpp +35 -0
  153. data/ext/wxKeyEvent.hpp +16 -0
  154. data/ext/wxListBook.cpp +90 -0
  155. data/ext/wxListBook.hpp +21 -0
  156. data/ext/wxListBox.cpp +290 -0
  157. data/ext/wxListBox.hpp +29 -0
  158. data/ext/wxMenu.cpp +600 -0
  159. data/ext/wxMenu.hpp +17 -0
  160. data/ext/wxMenuBar.cpp +180 -0
  161. data/ext/wxMenuBar.hpp +17 -0
  162. data/ext/wxMenuItem.cpp +174 -0
  163. data/ext/wxMenuItem.hpp +17 -0
  164. data/ext/wxMessageDialog.cpp +91 -0
  165. data/ext/wxMessageDialog.hpp +19 -0
  166. data/ext/wxMessageDialogBase.cpp +152 -0
  167. data/ext/wxMessageDialogBase.hpp +18 -0
  168. data/ext/wxMessageDialogGeneric.cpp +91 -0
  169. data/ext/wxMessageDialogGeneric.hpp +19 -0
  170. data/ext/wxMouseEvent.cpp +60 -0
  171. data/ext/wxMouseEvent.hpp +16 -0
  172. data/ext/wxMultiChoiceDialog.cpp +143 -0
  173. data/ext/wxMultiChoiceDialog.hpp +19 -0
  174. data/ext/wxNoteBook.cpp +89 -0
  175. data/ext/wxNoteBook.hpp +21 -0
  176. data/ext/wxNotifyEvent.cpp +45 -0
  177. data/ext/wxNotifyEvent.hpp +16 -0
  178. data/ext/wxNumberEntryDialog.cpp +131 -0
  179. data/ext/wxNumberEntryDialog.hpp +20 -0
  180. data/ext/wxPalette.cpp +214 -0
  181. data/ext/wxPalette.hpp +24 -0
  182. data/ext/wxPanel.cpp +77 -0
  183. data/ext/wxPanel.hpp +19 -0
  184. data/ext/wxPasswordEntryDialog.cpp +141 -0
  185. data/ext/wxPasswordEntryDialog.hpp +20 -0
  186. data/ext/wxPen.cpp +323 -0
  187. data/ext/wxPen.hpp +37 -0
  188. data/ext/wxPickerBase.cpp +121 -0
  189. data/ext/wxPickerBase.hpp +28 -0
  190. data/ext/wxPoint.cpp +224 -0
  191. data/ext/wxPoint.hpp +40 -0
  192. data/ext/wxPreferences.cpp +149 -0
  193. data/ext/wxPreferences.hpp +18 -0
  194. data/ext/wxProgressDialog.cpp +171 -0
  195. data/ext/wxProgressDialog.hpp +20 -0
  196. data/ext/wxProperty.cpp +723 -0
  197. data/ext/wxProperty.hpp +16 -0
  198. data/ext/wxPropertyCell.cpp +99 -0
  199. data/ext/wxPropertyCell.hpp +16 -0
  200. data/ext/wxPropertyGrid.cpp +234 -0
  201. data/ext/wxPropertyGrid.hpp +20 -0
  202. data/ext/wxPropertyGridInterface.cpp +146 -0
  203. data/ext/wxPropertyGridInterface.hpp +33 -0
  204. data/ext/wxPropertyGridManager.cpp +257 -0
  205. data/ext/wxPropertyGridManager.hpp +20 -0
  206. data/ext/wxPropertyGridPage.cpp +65 -0
  207. data/ext/wxPropertyGridPage.hpp +20 -0
  208. data/ext/wxRadioBox.cpp +405 -0
  209. data/ext/wxRadioBox.hpp +20 -0
  210. data/ext/wxRadioButton.cpp +107 -0
  211. data/ext/wxRadioButton.hpp +16 -0
  212. data/ext/wxRearrangeCtrl.cpp +89 -0
  213. data/ext/wxRearrangeCtrl.hpp +20 -0
  214. data/ext/wxRearrangeDialog.cpp +122 -0
  215. data/ext/wxRearrangeDialog.hpp +20 -0
  216. data/ext/wxRearrangeList.cpp +94 -0
  217. data/ext/wxRearrangeList.hpp +20 -0
  218. data/ext/wxRect.cpp +281 -0
  219. data/ext/wxRect.hpp +29 -0
  220. data/ext/wxRichMessageDialog.cpp +91 -0
  221. data/ext/wxRichMessageDialog.hpp +21 -0
  222. data/ext/wxRichTextAttr.cpp +69 -0
  223. data/ext/wxRichTextAttr.hpp +28 -0
  224. data/ext/wxRichTextCtrl.cpp +484 -0
  225. data/ext/wxRichTextCtrl.hpp +21 -0
  226. data/ext/wxRichTextStyle.cpp +86 -0
  227. data/ext/wxRichTextStyle.hpp +25 -0
  228. data/ext/wxRichTextStyleSheet.cpp +497 -0
  229. data/ext/wxRichTextStyleSheet.hpp +21 -0
  230. data/ext/wxSTC.cpp +331 -0
  231. data/ext/wxSTC.hpp +21 -0
  232. data/ext/wxScrollEvent.cpp +43 -0
  233. data/ext/wxScrollEvent.hpp +16 -0
  234. data/ext/wxSearchCtrl.cpp +189 -0
  235. data/ext/wxSearchCtrl.hpp +21 -0
  236. data/ext/wxSimpleBook.cpp +89 -0
  237. data/ext/wxSimpleBook.hpp +21 -0
  238. data/ext/wxSingleChoiceDialog.cpp +147 -0
  239. data/ext/wxSingleChoiceDialog.hpp +19 -0
  240. data/ext/wxSize.cpp +206 -0
  241. data/ext/wxSize.hpp +32 -0
  242. data/ext/wxSizer.cpp +368 -0
  243. data/ext/wxSizer.hpp +23 -0
  244. data/ext/wxSizerItem.cpp +37 -0
  245. data/ext/wxSizerItem.hpp +18 -0
  246. data/ext/wxSlider.cpp +204 -0
  247. data/ext/wxSlider.hpp +21 -0
  248. data/ext/wxSpinButton.cpp +158 -0
  249. data/ext/wxSpinButton.hpp +20 -0
  250. data/ext/wxSpinCtrl.cpp +132 -0
  251. data/ext/wxSpinCtrl.hpp +21 -0
  252. data/ext/wxStartUpTip.cpp +44 -0
  253. data/ext/wxStartUpTip.hpp +16 -0
  254. data/ext/wxStaticBitmap.cpp +79 -0
  255. data/ext/wxStaticBitmap.hpp +17 -0
  256. data/ext/wxStaticBitmapBase.cpp +46 -0
  257. data/ext/wxStaticBitmapBase.hpp +22 -0
  258. data/ext/wxStaticBitmapGeneric.cpp +82 -0
  259. data/ext/wxStaticBitmapGeneric.hpp +17 -0
  260. data/ext/wxStaticBox.cpp +92 -0
  261. data/ext/wxStaticBox.hpp +22 -0
  262. data/ext/wxStaticLine.cpp +100 -0
  263. data/ext/wxStaticLine.hpp +22 -0
  264. data/ext/wxStaticText.cpp +82 -0
  265. data/ext/wxStaticText.hpp +21 -0
  266. data/ext/wxStatusBar.cpp +417 -0
  267. data/ext/wxStatusBar.hpp +17 -0
  268. data/ext/wxStream.cpp +41 -0
  269. data/ext/wxStream.hpp +46 -0
  270. data/ext/wxTaskBar.cpp +104 -0
  271. data/ext/wxTaskBar.hpp +41 -0
  272. data/ext/wxTextArea.cpp +141 -0
  273. data/ext/wxTextArea.hpp +21 -0
  274. data/ext/wxTextAttr.cpp +320 -0
  275. data/ext/wxTextAttr.hpp +28 -0
  276. data/ext/wxTextCtrl.cpp +177 -0
  277. data/ext/wxTextCtrl.hpp +30 -0
  278. data/ext/wxTextEntry.cpp +248 -0
  279. data/ext/wxTextEntry.hpp +19 -0
  280. data/ext/wxTextEntryDialog.cpp +133 -0
  281. data/ext/wxTextEntryDialog.hpp +20 -0
  282. data/ext/wxTimePicker.cpp +105 -0
  283. data/ext/wxTimePicker.hpp +22 -0
  284. data/ext/wxTimer.cpp +106 -0
  285. data/ext/wxTimer.hpp +16 -0
  286. data/ext/wxToggleButton.cpp +96 -0
  287. data/ext/wxToggleButton.hpp +21 -0
  288. data/ext/wxToolBar.cpp +85 -0
  289. data/ext/wxToolBar.hpp +17 -0
  290. data/ext/wxToolBarBase.cpp +615 -0
  291. data/ext/wxToolBarBase.hpp +17 -0
  292. data/ext/wxToolBarTool.cpp +179 -0
  293. data/ext/wxToolBarTool.hpp +16 -0
  294. data/ext/wxToolBook.cpp +96 -0
  295. data/ext/wxToolBook.hpp +23 -0
  296. data/ext/wxToplevel.cpp +125 -0
  297. data/ext/wxToplevel.hpp +25 -0
  298. data/ext/wxTreeBook.cpp +240 -0
  299. data/ext/wxTreeBook.hpp +21 -0
  300. data/ext/wxTreeCtrl.cpp +443 -0
  301. data/ext/wxTreeCtrl.hpp +66 -0
  302. data/ext/wxVariant.cpp +65 -0
  303. data/ext/wxVariant.hpp +17 -0
  304. data/ext/wxWindow.cpp +980 -0
  305. data/ext/wxWindow.hpp +35 -0
  306. data/ext/wxWizard.cpp +321 -0
  307. data/ext/wxWizard.hpp +19 -0
  308. data/ext/wxWizardPage.cpp +137 -0
  309. data/ext/wxWizardPage.hpp +38 -0
  310. data/ext/wxXRC.cpp +48 -0
  311. data/ext/wxXRC.hpp +21 -0
  312. data/old_tests/button.rb +56 -0
  313. data/old_tests/file.png +0 -0
  314. data/old_tests/green.xpm +25 -0
  315. data/old_tests/new16x16.png +0 -0
  316. data/old_tests/project.xml +10 -0
  317. data/old_tests/propertygrid.rb +51 -0
  318. data/old_tests/red.xpm +25 -0
  319. data/old_tests/ruby32x32.png +0 -0
  320. data/old_tests/status.rb +45 -0
  321. data/old_tests/test.rb +580 -0
  322. data/old_tests/wizard.xrc +40 -0
  323. data/old_tests/xrc.rb +38 -0
  324. data/rwx.gemspec +43 -0
  325. data/samples/controls/controls.rb +143 -0
  326. data/samples/controls/icons/choice.bmp +0 -0
  327. data/samples/controls/icons/choice.xpm +27 -0
  328. data/samples/controls/icons/combo.bmp +0 -0
  329. data/samples/controls/icons/combo.xpm +27 -0
  330. data/samples/controls/icons/gauge.bmp +0 -0
  331. data/samples/controls/icons/gauge.xpm +27 -0
  332. data/samples/controls/icons/list.bmp +0 -0
  333. data/samples/controls/icons/list.xpm +27 -0
  334. data/samples/controls/icons/radio.bmp +0 -0
  335. data/samples/controls/icons/radio.xpm +27 -0
  336. data/samples/controls/icons/stattext.xpm +24 -0
  337. data/samples/controls/icons/text.bmp +0 -0
  338. data/samples/controls/icons/text.xpm +27 -0
  339. data/samples/dialog/dialog_sample.rb +227 -0
  340. data/samples/sample.xpm +44 -0
  341. data/samples/widgets/icons/bmpbtn.xpm +37 -0
  342. data/samples/widgets/icons/bmpcombobox.xpm +54 -0
  343. data/samples/widgets/icons/button.xpm +54 -0
  344. data/samples/widgets/icons/checkbox.xpm +54 -0
  345. data/samples/widgets/icons/choice.xpm +27 -0
  346. data/samples/widgets/icons/choicebk.xpm +54 -0
  347. data/samples/widgets/icons/clrpicker.xpm +193 -0
  348. data/samples/widgets/icons/combobox.xpm +54 -0
  349. data/samples/widgets/icons/datepick.xpm +200 -0
  350. data/samples/widgets/icons/dirctrl.xpm +54 -0
  351. data/samples/widgets/icons/dirpicker.xpm +213 -0
  352. data/samples/widgets/icons/filepicker.xpm +214 -0
  353. data/samples/widgets/icons/fontpicker.xpm +185 -0
  354. data/samples/widgets/icons/gauge.xpm +54 -0
  355. data/samples/widgets/icons/hyperlnk.xpm +54 -0
  356. data/samples/widgets/icons/listbook.xpm +54 -0
  357. data/samples/widgets/icons/listbox.xpm +54 -0
  358. data/samples/widgets/icons/notebook.xpm +54 -0
  359. data/samples/widgets/icons/odcombobox.xpm +54 -0
  360. data/samples/widgets/icons/radiobox.xpm +54 -0
  361. data/samples/widgets/icons/scrolbar.xpm +54 -0
  362. data/samples/widgets/icons/slider.xpm +54 -0
  363. data/samples/widgets/icons/spinbtn.xpm +40 -0
  364. data/samples/widgets/icons/statbmp.xpm +40 -0
  365. data/samples/widgets/icons/statbox.xpm +54 -0
  366. data/samples/widgets/icons/stattext.xpm +54 -0
  367. data/samples/widgets/icons/text.xpm +54 -0
  368. data/samples/widgets/icons/timepick.xpm +207 -0
  369. data/samples/widgets/icons/toggle.xpm +54 -0
  370. data/samples/widgets/pages/colorpicker.rb +66 -0
  371. data/samples/widgets/pages/common.rb +17 -0
  372. data/samples/widgets/widgets.rb +29 -0
  373. data/samples/xrc/samples.xrc +46 -0
  374. data/samples/xrc/xrc_sample.rb +59 -0
  375. data/test/test_color.rb +64 -0
  376. metadata +470 -0
@@ -0,0 +1,37 @@
1
+ /*
2
+ * wxFont.hpp
3
+ *
4
+ * Created on: 28.02.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXFONT_HPP_
9
+ #define WXFONT_HPP_
10
+
11
+ #include "main.hpp"
12
+
13
+ extern VALUE rb_cWXFont;
14
+ DLL_LOCAL void Init_WXFont(VALUE rb_mWX);
15
+
16
+ #ifdef HAVE_RUBY_ENCODING_H
17
+ template <>
18
+ VALUE wrapenum< wxFontEncoding >(const wxFontEncoding &enc );
19
+
20
+ template <>
21
+ wxFontEncoding unwrapenum< wxFontEncoding >(const VALUE &venc);
22
+ #endif
23
+
24
+
25
+ template <>
26
+ wxFont unwrap< wxFont >(const VALUE &vfont);
27
+
28
+
29
+ namespace RubyWX {
30
+ namespace Font {
31
+
32
+ void define_const();
33
+
34
+ }
35
+ }
36
+
37
+ #endif /* WXFONT_HPP_ */
@@ -0,0 +1,143 @@
1
+ /*
2
+ * wxFontDialog.cpp
3
+ *
4
+ * Created on: 05.03.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #include "wxFontDialog.hpp"
9
+ #include "wxFont.hpp"
10
+ #include "wxColor.hpp"
11
+
12
+ #include "wxApp.hpp"
13
+
14
+ VALUE rb_cWXFontDialog;
15
+ #if wxUSE_FONTDLG
16
+ #define _self unwrap<wxFontDialog*>(self)
17
+
18
+ namespace RubyWX {
19
+ namespace FontDialog {
20
+
21
+ APP_PROTECT(wxFontDialog)
22
+
23
+ /*
24
+ * call-seq:
25
+ * FontDialog.new(parent, name, [options])
26
+ * FontDialog.new(parent, [options])
27
+ *
28
+ * creates a new FontDialog widget.
29
+ * ===Arguments
30
+ * * parent of this window or nil
31
+ * * name is a String describing a resource in a loaded xrc
32
+ *
33
+ * *options: Hash with possible options to set:
34
+ * * font WX::Font
35
+ * * color WX::Color
36
+ * * symbols true/false Allows using SymbolFonts (default false)
37
+ * * show_help true/false (default false)
38
+ *
39
+ */
40
+ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
41
+ {
42
+ VALUE parent,name,hash;
43
+ rb_scan_args(argc, argv, "11:",&parent,&name,&hash);
44
+ if(!_created && !rb_obj_is_kind_of(name,rb_cString))
45
+ {
46
+ wxFontData data;
47
+
48
+ if(rb_obj_is_kind_of(hash,rb_cHash))
49
+ {
50
+ wxColour color(wxNullColour);
51
+ wxFont font(wxNullFont);
52
+ bool symbols(false);
53
+ bool show_help(false);
54
+
55
+ set_hash_option(hash,"color",color);
56
+ set_hash_option(hash,"font",font);
57
+ set_hash_option(hash,"symbols",symbols);
58
+ set_hash_option(hash,"show_help",show_help);
59
+
60
+ if(color.IsOk())
61
+ data.SetColour(color);
62
+ if(font.IsOk())
63
+ data.SetInitialFont(font);
64
+
65
+ data.SetAllowSymbols(symbols);
66
+ data.SetShowHelp(show_help);
67
+
68
+ }
69
+ _self->Create(unwrap<wxWindow*>(parent),data);
70
+
71
+ }
72
+
73
+ rb_call_super(argc,argv);
74
+
75
+
76
+
77
+ return self;
78
+ }
79
+
80
+ macro_attr_pre(Colour,wxColour,GetFontData)
81
+ macro_attr_pre(InitialFont,wxFont,GetFontData)
82
+ macro_attr_pre(ChosenFont,wxFont,GetFontData)
83
+
84
+ macro_attr_pre(AllowSymbols,bool,GetFontData)
85
+ macro_attr_pre(ShowHelp,bool,GetFontData)
86
+
87
+ //macro_attr_pre(EnableEffects,bool,GetFontData)
88
+
89
+ DLL_LOCAL VALUE _getUserFont(int argc,VALUE *argv,VALUE self)
90
+ {
91
+ VALUE parent,caption,font;
92
+ rb_scan_args(argc, argv, "12",&parent,&caption,&font);
93
+
94
+ app_protected();
95
+
96
+ wxFont col = wxGetFontFromUser(unwrap<wxWindow*>(parent),unwrap<wxFont>(font),unwrap<wxString>(caption));
97
+ return col.IsOk() ? wrap(col) : Qnil;
98
+ }
99
+
100
+ }
101
+ }
102
+
103
+ #endif
104
+
105
+ DLL_LOCAL void Init_WXFontDialog(VALUE rb_mWX)
106
+ {
107
+ #if 0
108
+ rb_mWX = rb_define_module("WX");
109
+ rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
110
+
111
+ rb_cWXTopLevel = rb_define_class_under(rb_mWX,"TopLevel",rb_cWXWindow);
112
+
113
+ rb_cWXDialog = rb_define_class_under(rb_mWX,"Dialog",rb_cWXTopLevel);
114
+
115
+ rb_define_attr(rb_cWXFontDialog,"initial_font",1,1);
116
+ rb_define_attr(rb_cWXFontDialog,"chosen_font",1,1);
117
+
118
+ rb_define_attr(rb_cWXFontDialog,"color",1,1);
119
+
120
+ rb_define_attr(rb_cWXFontDialog,"allow_symbols",1,1);
121
+ rb_define_attr(rb_cWXFontDialog,"show_help",1,1);
122
+ #endif
123
+
124
+ #if wxUSE_FONTDLG
125
+ using namespace RubyWX::FontDialog;
126
+ rb_cWXFontDialog = rb_define_class_under(rb_mWX,"FontDialog",rb_cWXDialog);
127
+ rb_define_alloc_func(rb_cWXFontDialog,_alloc);
128
+ rb_define_method(rb_cWXFontDialog,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
129
+
130
+ rb_define_attr_method(rb_cWXFontDialog,"initial_font",_getInitialFont,_setInitialFont);
131
+ rb_define_attr_method(rb_cWXFontDialog,"chosen_font",_getChosenFont,_setChosenFont);
132
+
133
+ rb_define_attr_method(rb_cWXFontDialog,"color",_getColour,_setColour);
134
+
135
+ rb_define_attr_method(rb_cWXFontDialog,"allow_symbols",_getAllowSymbols,_setAllowSymbols);
136
+ rb_define_attr_method(rb_cWXFontDialog,"show_help",_getShowHelp,_setShowHelp);
137
+
138
+
139
+ rb_define_module_function(rb_mWX,"font_dialog",RUBY_METHOD_FUNC(_getUserFont),-1);
140
+
141
+ registerInfo<wxFontDialog>(rb_cWXFontDialog);
142
+ #endif
143
+ }
@@ -0,0 +1,21 @@
1
+ /*
2
+ * wxFontDialog.hpp
3
+ *
4
+ * Created on: 05.03.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXFONTDIALOG_HPP_
9
+ #define WXFONTDIALOG_HPP_
10
+
11
+ #include "wxDialog.hpp"
12
+
13
+ extern VALUE rb_cWXFontDialog;
14
+
15
+ void Init_WXFontDialog(VALUE rb_mWX);
16
+
17
+ #if wxUSE_FONTDLG
18
+ #include <wx/fontdlg.h>
19
+ #endif
20
+
21
+ #endif /* WXFONTDIALOG_HPP_ */
@@ -0,0 +1,160 @@
1
+ /*
2
+ * wxFontPicker.cpp
3
+ *
4
+ * Created on: 05.03.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+
9
+ #include "wxFontPicker.hpp"
10
+ #include "wxPickerBase.hpp"
11
+ #include "wxFont.hpp"
12
+ #include "wxColor.hpp"
13
+
14
+ VALUE rb_cWXFontPicker,rb_cWXFontPickerEvent;
15
+
16
+ #if wxUSE_FONTPICKERCTRL
17
+ #define _self unwrap<wxFontPickerCtrl*>(self)
18
+
19
+ namespace RubyWX {
20
+ namespace FontPicker {
21
+
22
+ macro_attr(SelectedFont,wxFont)
23
+
24
+ #ifdef HAVE_WXFONTPICKERCTRL_GETSELECTEDCOLOUR
25
+ macro_attr(SelectedColour,wxColor)
26
+ #endif
27
+
28
+ APP_PROTECT(wxFontPickerCtrl)
29
+
30
+ /*
31
+ * call-seq:
32
+ * FontPicker.new(parent, name, [options])
33
+ * FontPicker.new(parent, [options])
34
+ *
35
+ * creates a new FontPicker widget.
36
+ * ===Arguments
37
+ * * parent of this window or nil
38
+ * * name is a String describing a resource in a loaded xrc
39
+ *
40
+ * *options: Hash with possible options to set:
41
+ * * selected_font WX::Font default font
42
+ * * selected_color WX::Color default color
43
+ *
44
+ */
45
+ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
46
+ {
47
+ VALUE parent,name,hash;
48
+ rb_scan_args(argc, argv, "11:",&parent,&name,&hash);
49
+ if(!_created && !rb_obj_is_kind_of(name,rb_cString))
50
+ {
51
+ wxWindowID id(wxID_ANY);
52
+ wxFont font(wxNullFont);
53
+ int style(wxFNTP_DEFAULT_STYLE);
54
+
55
+ if(rb_obj_is_kind_of(hash,rb_cHash))
56
+ {
57
+ set_hash_option(hash,"id",id,unwrapID);
58
+ set_hash_option(hash,"font",font);
59
+ set_hash_option(hash,"style",style);
60
+
61
+ PickerBase::set_style_flags(hash,style);
62
+
63
+ set_hash_flag_option(hash,"fontdesc_as_label",wxFNTP_FONTDESC_AS_LABEL,style);
64
+ set_hash_flag_option(hash,"font_for_label",wxFNTP_USEFONT_FOR_LABEL,style);
65
+ }
66
+
67
+ _self->Create(unwrap<wxWindow*>(parent),id,font,wxDefaultPosition,wxDefaultSize,style);
68
+ }
69
+
70
+ rb_call_super(argc,argv);
71
+
72
+ if(rb_obj_is_kind_of(hash,rb_cHash))
73
+ {
74
+ VALUE temp;
75
+
76
+ set_option(selected_font,SelectedFont,wxFont)
77
+ set_option(selected_color,SelectedColour,wxColor)
78
+ }
79
+ return self;
80
+ }
81
+
82
+ namespace Event
83
+ {
84
+ #undef _self
85
+ #define _self unwrap<wxFontPickerEvent*>(self)
86
+ macro_attr(Font,wxFont)
87
+ }
88
+
89
+ }
90
+ }
91
+ #endif
92
+
93
+
94
+ /* Document-attr: selected_font
95
+ * the current font of the WX::FontPicker. WX::Font
96
+ */
97
+ /* Document-attr: selected_color
98
+ * the current color of the WX::FontPicker. WX::Color
99
+ */
100
+
101
+ /* Document-attr: font
102
+ * the font of the WX::Event::FontPicker. WX::Font
103
+ */
104
+
105
+ /* Document-const: DEFAULT_STYLE
106
+ * default style for this control.
107
+ */
108
+ /* Document-const: FONTDESC_AS_LABEL
109
+ * Keeps the label of the button updated with the fontface name and the font size.
110
+ * E.g. choosing "Times New Roman bold, italic with size 10" from the fontdialog,
111
+ * will update the label (overwriting any previous label) with the "Times New Roman, 10" text.
112
+ */
113
+ /* Document-const: USEFONT_FOR_LABEL
114
+ * Uses the currently selected font to draw the label of the button.
115
+ */
116
+
117
+ DLL_LOCAL void Init_WXFontPicker(VALUE rb_mWX)
118
+ {
119
+ #if 0
120
+ rb_mWX = rb_define_module("WX");
121
+ rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
122
+ rb_cWXControl = rb_define_class_under(rb_mWX,"Control",rb_cWXWindow);
123
+ rb_cWXPickerBase = rb_define_class_under(rb_mWX,"PickerBase",rb_cWXControl);
124
+
125
+ rb_cWXEvent = rb_define_class_under(rb_mWX,"Event",rb_cObject);
126
+
127
+ rb_define_attr(rb_cWXFontPicker,"selected_font",1,1);
128
+ rb_define_attr(rb_cWXFontPicker,"selected_color",1,1);
129
+ rb_define_attr(rb_cWXFontPickerEvent,"font",1,1);
130
+ #endif
131
+
132
+ #if wxUSE_FONTPICKERCTRL
133
+ using namespace RubyWX::FontPicker;
134
+ rb_cWXFontPicker = rb_define_class_under(rb_mWX,"FontPicker",rb_cWXPickerBase);
135
+ rb_define_alloc_func(rb_cWXFontPicker,_alloc);
136
+
137
+ rb_define_method(rb_cWXFontPicker,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
138
+
139
+ rb_define_attr_method(rb_cWXFontPicker,"selected_font",_getSelectedFont,_setSelectedFont);
140
+
141
+ #ifdef HAVE_WXFONTPICKERCTRL_GETSELECTEDCOLOUR
142
+ rb_define_attr_method(rb_cWXFontPicker,"selected_color",_getSelectedColour,_setSelectedColour);
143
+ #endif
144
+
145
+ rb_cWXFontPickerEvent = rb_define_class_under(rb_cWXEvent,"FontPicker",rb_cWXEvent);
146
+ registerEventType("fontpicker_changed",wxEVT_FONTPICKER_CHANGED,rb_cWXFontPickerEvent);
147
+ rb_define_attr_method(rb_cWXFontPickerEvent,"font",Event::_getFont,Event::_setFont);
148
+
149
+ rb_define_const(rb_cWXFontPicker,"DEFAULT_STYLE",INT2NUM(wxFNTP_DEFAULT_STYLE));
150
+ rb_define_const(rb_cWXFontPicker,"FONTDESC_AS_LABEL",INT2NUM(wxFNTP_FONTDESC_AS_LABEL));
151
+ rb_define_const(rb_cWXFontPicker,"USEFONT_FOR_LABEL",INT2NUM(wxFNTP_USEFONT_FOR_LABEL));
152
+
153
+ registerInfo<wxFontPickerCtrl>(rb_cWXFontPicker);
154
+ #endif
155
+
156
+ }
157
+
158
+
159
+
160
+
@@ -0,0 +1,21 @@
1
+ /*
2
+ * wxFontPicker.hpp
3
+ *
4
+ * Created on: 05.03.2012
5
+ * Author: hanmac
6
+ */
7
+
8
+ #ifndef WXFONTPICKER_HPP_
9
+ #define WXFONTPICKER_HPP_
10
+
11
+ #include "wxEvtHandler.hpp"
12
+
13
+ extern VALUE rb_cWXFontPicker;
14
+
15
+ void Init_WXFontPicker(VALUE rb_mWX);
16
+
17
+ #if wxUSE_FONTPICKERCTRL
18
+ #include <wx/fontpicker.h>
19
+ #endif
20
+
21
+ #endif /* WXFONTPICKER_HPP_ */
@@ -0,0 +1,128 @@
1
+ /*
2
+ * wxFontPickerWidget.cpp
3
+ *
4
+ * Created on: 24.05.2014
5
+ * Author: hanmac
6
+ */
7
+
8
+ #include "wxFontPickerWidget.hpp"
9
+ #include "wxButton.hpp"
10
+ #include "wxFontPicker.hpp"
11
+ #include "wxFont.hpp"
12
+ #include "wxColor.hpp"
13
+
14
+ VALUE rb_cWXFontPickerWidget;
15
+ #if wxUSE_FONTPICKERCTRL
16
+ #define _self unwrap<wxFontPickerWidget*>(self)
17
+
18
+ namespace RubyWX {
19
+ namespace FontPickerWidget {
20
+
21
+ APP_PROTECT(wxFontPickerWidget)
22
+
23
+ macro_attr(Font,wxFont)
24
+
25
+ #ifdef HAVE_WXFONTPICKERCTRL_GETSELECTEDCOLOUR
26
+ macro_attr(SelectedColour,wxColor)
27
+ #endif
28
+
29
+ /*
30
+ * call-seq:
31
+ * FontPickerWidget.new(parent, name, [options])
32
+ * FontPickerWidget.new(parent, [options])
33
+ *
34
+ * creates a new FontPickerWidget widget.
35
+ * ===Arguments
36
+ * * parent of this window or nil
37
+ * * name is a String describing a resource in a loaded xrc
38
+ *
39
+ * *options: Hash with possible options to set:
40
+ */
41
+ DLL_LOCAL VALUE _initialize(int argc,VALUE *argv,VALUE self)
42
+ {
43
+ VALUE parent,name,hash;
44
+ rb_scan_args(argc, argv, "11:",&parent,&name,&hash);
45
+ if(!_created && !rb_obj_is_kind_of(name,rb_cString)) {
46
+ wxWindowID id(wxID_ANY);
47
+ int style(wxFONTBTN_DEFAULT_STYLE);
48
+
49
+ wxFont font(wxNullFont);
50
+
51
+ if(rb_obj_is_kind_of(hash,rb_cHash))
52
+ {
53
+ set_hash_option(hash,"id",id,unwrapID);
54
+ set_hash_option(hash,"style",style);
55
+ set_hash_option(hash,"font",font);
56
+
57
+ set_hash_flag_option(hash,"fontdesc_as_label",wxFNTP_FONTDESC_AS_LABEL,style);
58
+ set_hash_flag_option(hash,"font_for_label",wxFNTP_USEFONT_FOR_LABEL,style);
59
+
60
+ }
61
+
62
+ _self->Create(
63
+ unwrap<wxWindow*>(parent),id,font,
64
+ wxDefaultPosition,wxDefaultSize,style
65
+ );
66
+
67
+ }
68
+
69
+ rb_call_super(argc,argv);
70
+ return self;
71
+ }
72
+
73
+ }
74
+ }
75
+
76
+ #endif
77
+
78
+ /* Document-attr: font
79
+ * the font of the FontPickerWidget. WX::Font
80
+ */
81
+
82
+ /* Document-const: DEFAULT_STYLE
83
+ * default style for this control.
84
+ */
85
+ /* Document-const: FONTDESC_AS_LABEL
86
+ * Keeps the label of the button updated with the fontface name and the font size.
87
+ * E.g. choosing "Times New Roman bold, italic with size 10" from the fontdialog,
88
+ * will update the label (overwriting any previous label) with the "Times New Roman, 10" text.
89
+ */
90
+ /* Document-const: USEFONT_FOR_LABEL
91
+ * Uses the currently selected font to draw the label of the button.
92
+ */
93
+
94
+
95
+ DLL_LOCAL void Init_WXFontPickerWidget(VALUE rb_mWX)
96
+ {
97
+ #if 0
98
+ rb_mWX = rb_define_module("WX");
99
+ rb_cWXWindow = rb_define_class_under(rb_mWX,"Window",rb_cObject);
100
+ rb_cWXControl = rb_define_class_under(rb_mWX,"Control",rb_cWXWindow);
101
+ rb_cWXAnyButton = rb_define_class_under(rb_mWX,"AnyButton",rb_cWXControl);
102
+
103
+ rb_cWXButton = rb_define_class_under(rb_mWX,"Button",rb_cWXAnyButton);
104
+
105
+ rb_define_attr(rb_cWXFontPickerWidget,"font",1,1);
106
+ rb_define_attr(rb_cWXFontPickerWidget,"selected_color",1,1);
107
+
108
+ #endif
109
+
110
+ #if wxUSE_FONTPICKERCTRL
111
+ using namespace RubyWX::FontPickerWidget;
112
+ rb_cWXFontPickerWidget = rb_define_class_under(rb_mWX,"FontPickerWidget",rb_cWXButton);
113
+ rb_define_alloc_func(rb_cWXFontPickerWidget,_alloc);
114
+
115
+ rb_define_method(rb_cWXFontPickerWidget,"initialize",RUBY_METHOD_FUNC(_initialize),-1);
116
+
117
+ rb_define_attr_method(rb_cWXFontPickerWidget,"font",_getFont,_setFont);
118
+ #ifdef HAVE_WXFONTPICKERCTRL_GETSELECTEDCOLOUR
119
+ rb_define_attr_method(rb_cWXFontPickerWidget,"selected_color",_getSelectedColour,_setSelectedColour);
120
+ #endif
121
+
122
+ rb_define_const(rb_cWXFontPickerWidget,"DEFAULT_STYLE",INT2NUM(wxFNTP_DEFAULT_STYLE));
123
+ rb_define_const(rb_cWXFontPickerWidget,"FONTDESC_AS_LABEL",INT2NUM(wxFNTP_FONTDESC_AS_LABEL));
124
+ rb_define_const(rb_cWXFontPickerWidget,"USEFONT_FOR_LABEL",INT2NUM(wxFNTP_USEFONT_FOR_LABEL));
125
+
126
+ registerInfo<wxFontPickerWidget>(rb_cWXFontPickerWidget);
127
+ #endif
128
+ }