fxruby 1.6.27-x64-mingw32

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 (915) hide show
  1. data.tar.gz.sig +0 -0
  2. data/.gemtest +0 -0
  3. data/.gitignore +14 -0
  4. data/.yardopts +12 -0
  5. data/History.txt +57 -0
  6. data/Manifest.txt +1214 -0
  7. data/README.rdoc +537 -0
  8. data/Rakefile +233 -0
  9. data/Rakefile.cross +421 -0
  10. data/TODO +47 -0
  11. data/doap.rdf.erb +87 -0
  12. data/examples/RAA.rb +25 -0
  13. data/examples/README +53 -0
  14. data/examples/WhatAQuietStiff.rb +356 -0
  15. data/examples/babelfish.rb +72 -0
  16. data/examples/bounce.rb +171 -0
  17. data/examples/browser.rb +191 -0
  18. data/examples/button.rb +168 -0
  19. data/examples/canvasdemo.rb +88 -0
  20. data/examples/charts.rb +35 -0
  21. data/examples/custom_table_item.rb +170 -0
  22. data/examples/datatarget.rb +223 -0
  23. data/examples/dctest.rb +696 -0
  24. data/examples/dialog.rb +143 -0
  25. data/examples/dilbert.rb +66 -0
  26. data/examples/dirlist.rb +63 -0
  27. data/examples/dragdrop.rb +97 -0
  28. data/examples/dragsource.rb +80 -0
  29. data/examples/dropsite.rb +59 -0
  30. data/examples/foursplit.rb +97 -0
  31. data/examples/gdchart.rb +76 -0
  32. data/examples/gembrowser.rb +289 -0
  33. data/examples/gltest.rb +330 -0
  34. data/examples/glviewer.rb +576 -0
  35. data/examples/groupbox.rb +392 -0
  36. data/examples/header.rb +149 -0
  37. data/examples/hello.rb +12 -0
  38. data/examples/hello2.rb +51 -0
  39. data/examples/iRAA.rb +153 -0
  40. data/examples/iconlist.rb +92 -0
  41. data/examples/icons/AngryGuyInBunnySuit.ico +0 -0
  42. data/examples/icons/FatBot.ico +0 -0
  43. data/examples/icons/FlippedySwitch.ico +0 -0
  44. data/examples/icons/LeGoon.ico +0 -0
  45. data/examples/icons/Net.ico +0 -0
  46. data/examples/icons/RedMacOS.ico +0 -0
  47. data/examples/icons/SawBlade.ico +0 -0
  48. data/examples/icons/backview.png +0 -0
  49. data/examples/icons/big.png +0 -0
  50. data/examples/icons/bigfolder.png +0 -0
  51. data/examples/icons/bigpenguin.png +0 -0
  52. data/examples/icons/bluebullet14x14.gif +0 -0
  53. data/examples/icons/bottomview.png +0 -0
  54. data/examples/icons/camera.png +0 -0
  55. data/examples/icons/capbutt.png +0 -0
  56. data/examples/icons/capnotlast.png +0 -0
  57. data/examples/icons/capproj.png +0 -0
  58. data/examples/icons/capround.png +0 -0
  59. data/examples/icons/colorpal.png +0 -0
  60. data/examples/icons/copy.png +0 -0
  61. data/examples/icons/cut.png +0 -0
  62. data/examples/icons/delimit.png +0 -0
  63. data/examples/icons/dippy.png +0 -0
  64. data/examples/icons/double_dash.png +0 -0
  65. data/examples/icons/filenew.png +0 -0
  66. data/examples/icons/fileopen.png +0 -0
  67. data/examples/icons/filesave.png +0 -0
  68. data/examples/icons/filesaveas.png +0 -0
  69. data/examples/icons/fonts.png +0 -0
  70. data/examples/icons/fox.png +0 -0
  71. data/examples/icons/foxicon.png +0 -0
  72. data/examples/icons/frontview.png +0 -0
  73. data/examples/icons/gem_big.png +0 -0
  74. data/examples/icons/gem_small.png +0 -0
  75. data/examples/icons/hello2.png +0 -0
  76. data/examples/icons/help.png +0 -0
  77. data/examples/icons/indent.png +0 -0
  78. data/examples/icons/jbevel.png +0 -0
  79. data/examples/icons/jmiter.png +0 -0
  80. data/examples/icons/jround.png +0 -0
  81. data/examples/icons/kill.png +0 -0
  82. data/examples/icons/leftview.png +0 -0
  83. data/examples/icons/light.png +0 -0
  84. data/examples/icons/minidoc.png +0 -0
  85. data/examples/icons/minifolder.png +0 -0
  86. data/examples/icons/minifolderopen.png +0 -0
  87. data/examples/icons/newfolder.png +0 -0
  88. data/examples/icons/nolight.png +0 -0
  89. data/examples/icons/onoff_dash.png +0 -0
  90. data/examples/icons/palette.png +0 -0
  91. data/examples/icons/parallel.png +0 -0
  92. data/examples/icons/paste.png +0 -0
  93. data/examples/icons/pattern.png +0 -0
  94. data/examples/icons/penguin.png +0 -0
  95. data/examples/icons/perspective.png +0 -0
  96. data/examples/icons/printicon.png +0 -0
  97. data/examples/icons/prop.png +0 -0
  98. data/examples/icons/redo.png +0 -0
  99. data/examples/icons/rightview.png +0 -0
  100. data/examples/icons/saveas.png +0 -0
  101. data/examples/icons/shutter1.png +0 -0
  102. data/examples/icons/shutter2.png +0 -0
  103. data/examples/icons/small.png +0 -0
  104. data/examples/icons/smoothlight.png +0 -0
  105. data/examples/icons/solid_line.png +0 -0
  106. data/examples/icons/tbuplevel.png +0 -0
  107. data/examples/icons/topview.png +0 -0
  108. data/examples/icons/transpbullet14x14.gif +0 -0
  109. data/examples/icons/undo.png +0 -0
  110. data/examples/icons/winapp.png +0 -0
  111. data/examples/icons/zoom.png +0 -0
  112. data/examples/image.rb +279 -0
  113. data/examples/imageviewer.rb +509 -0
  114. data/examples/inputs.rb +83 -0
  115. data/examples/mditest.rb +180 -0
  116. data/examples/pig.rb +77 -0
  117. data/examples/raabrowser.rb +122 -0
  118. data/examples/ratio.rb +80 -0
  119. data/examples/rmagick.rb +44 -0
  120. data/examples/rulerview.rb +27 -0
  121. data/examples/scintilla-test.rb +81 -0
  122. data/examples/scribble-orig.rb +186 -0
  123. data/examples/scribble.rb +162 -0
  124. data/examples/shutter.rb +158 -0
  125. data/examples/splitter.rb +211 -0
  126. data/examples/styledtext.rb +82 -0
  127. data/examples/tabbook.rb +165 -0
  128. data/examples/table.rb +182 -0
  129. data/examples/textedit/commands.rb +114 -0
  130. data/examples/textedit/helpwindow.rb +299 -0
  131. data/examples/textedit/prefdialog.rb +239 -0
  132. data/examples/textedit/textedit.rb +1763 -0
  133. data/examples/unicode.rb +36 -0
  134. data/ext/fox16_c/FXRbApp.cpp +128 -0
  135. data/ext/fox16_c/FXRbDataTarget.cpp +110 -0
  136. data/ext/fox16_c/FXRbGLViewer.cpp +89 -0
  137. data/ext/fox16_c/FXRuby.cpp +2063 -0
  138. data/ext/fox16_c/MANIFEST +190 -0
  139. data/ext/fox16_c/extconf.rb +153 -0
  140. data/ext/fox16_c/impl.cpp +1156 -0
  141. data/ext/fox16_c/include/FXMemoryBuffer.h +52 -0
  142. data/ext/fox16_c/include/FXRb4Splitter.h +54 -0
  143. data/ext/fox16_c/include/FXRb7Segment.h +51 -0
  144. data/ext/fox16_c/include/FXRbAccelTable.h +46 -0
  145. data/ext/fox16_c/include/FXRbApp.h +155 -0
  146. data/ext/fox16_c/include/FXRbAppVirtuals.h +15 -0
  147. data/ext/fox16_c/include/FXRbArrowButton.h +51 -0
  148. data/ext/fox16_c/include/FXRbBMPIcon.h +54 -0
  149. data/ext/fox16_c/include/FXRbBMPImage.h +54 -0
  150. data/ext/fox16_c/include/FXRbBitmap.h +133 -0
  151. data/ext/fox16_c/include/FXRbBitmapFrame.h +56 -0
  152. data/ext/fox16_c/include/FXRbBitmapView.h +56 -0
  153. data/ext/fox16_c/include/FXRbBitmapVirtuals.h +37 -0
  154. data/ext/fox16_c/include/FXRbButton.h +51 -0
  155. data/ext/fox16_c/include/FXRbCURCursor.h +60 -0
  156. data/ext/fox16_c/include/FXRbCanvas.h +51 -0
  157. data/ext/fox16_c/include/FXRbCheckButton.h +51 -0
  158. data/ext/fox16_c/include/FXRbChoiceBox.h +56 -0
  159. data/ext/fox16_c/include/FXRbColorBar.h +51 -0
  160. data/ext/fox16_c/include/FXRbColorDialog.h +53 -0
  161. data/ext/fox16_c/include/FXRbColorList.h +84 -0
  162. data/ext/fox16_c/include/FXRbColorRing.h +51 -0
  163. data/ext/fox16_c/include/FXRbColorSelector.h +51 -0
  164. data/ext/fox16_c/include/FXRbColorWell.h +51 -0
  165. data/ext/fox16_c/include/FXRbColorWheel.h +51 -0
  166. data/ext/fox16_c/include/FXRbComboBox.h +56 -0
  167. data/ext/fox16_c/include/FXRbCommon.h +99 -0
  168. data/ext/fox16_c/include/FXRbComposite.h +51 -0
  169. data/ext/fox16_c/include/FXRbCursor.h +87 -0
  170. data/ext/fox16_c/include/FXRbCursorVirtuals.h +6 -0
  171. data/ext/fox16_c/include/FXRbDC.h +427 -0
  172. data/ext/fox16_c/include/FXRbDCPrint.h +49 -0
  173. data/ext/fox16_c/include/FXRbDCVirtuals.h +187 -0
  174. data/ext/fox16_c/include/FXRbDCWindow.h +64 -0
  175. data/ext/fox16_c/include/FXRbDataTarget.h +65 -0
  176. data/ext/fox16_c/include/FXRbDebugTarget.h +46 -0
  177. data/ext/fox16_c/include/FXRbDelegator.h +46 -0
  178. data/ext/fox16_c/include/FXRbDial.h +51 -0
  179. data/ext/fox16_c/include/FXRbDialogBox.h +68 -0
  180. data/ext/fox16_c/include/FXRbDialogBoxVirtuals.h +3 -0
  181. data/ext/fox16_c/include/FXRbDict.h +46 -0
  182. data/ext/fox16_c/include/FXRbDirBox.h +52 -0
  183. data/ext/fox16_c/include/FXRbDirDialog.h +56 -0
  184. data/ext/fox16_c/include/FXRbDirList.h +79 -0
  185. data/ext/fox16_c/include/FXRbDirSelector.h +51 -0
  186. data/ext/fox16_c/include/FXRbDockBar.h +86 -0
  187. data/ext/fox16_c/include/FXRbDockBarVirtuals.h +10 -0
  188. data/ext/fox16_c/include/FXRbDockHandler.h +51 -0
  189. data/ext/fox16_c/include/FXRbDockSite.h +85 -0
  190. data/ext/fox16_c/include/FXRbDockSiteVirtuals.h +13 -0
  191. data/ext/fox16_c/include/FXRbDockTitle.h +51 -0
  192. data/ext/fox16_c/include/FXRbDocument.h +46 -0
  193. data/ext/fox16_c/include/FXRbDragCorner.h +51 -0
  194. data/ext/fox16_c/include/FXRbDrawable.h +64 -0
  195. data/ext/fox16_c/include/FXRbDrawableVirtuals.h +3 -0
  196. data/ext/fox16_c/include/FXRbDriveBox.h +52 -0
  197. data/ext/fox16_c/include/FXRbFileDialog.h +56 -0
  198. data/ext/fox16_c/include/FXRbFileDict.h +104 -0
  199. data/ext/fox16_c/include/FXRbFileDictVirtuals.h +9 -0
  200. data/ext/fox16_c/include/FXRbFileList.h +81 -0
  201. data/ext/fox16_c/include/FXRbFileSelector.h +51 -0
  202. data/ext/fox16_c/include/FXRbFoldingItemVirtuals.h +42 -0
  203. data/ext/fox16_c/include/FXRbFoldingList.h +270 -0
  204. data/ext/fox16_c/include/FXRbFoldingListVirtuals.h +43 -0
  205. data/ext/fox16_c/include/FXRbFont.h +183 -0
  206. data/ext/fox16_c/include/FXRbFontDialog.h +53 -0
  207. data/ext/fox16_c/include/FXRbFontSelector.h +51 -0
  208. data/ext/fox16_c/include/FXRbFontVirtuals.h +55 -0
  209. data/ext/fox16_c/include/FXRbFrame.h +51 -0
  210. data/ext/fox16_c/include/FXRbGIFCursor.h +60 -0
  211. data/ext/fox16_c/include/FXRbGIFIcon.h +54 -0
  212. data/ext/fox16_c/include/FXRbGIFImage.h +54 -0
  213. data/ext/fox16_c/include/FXRbGLCanvas.h +92 -0
  214. data/ext/fox16_c/include/FXRbGLCanvasVirtuals.h +13 -0
  215. data/ext/fox16_c/include/FXRbGLContext.h +58 -0
  216. data/ext/fox16_c/include/FXRbGLObject.h +103 -0
  217. data/ext/fox16_c/include/FXRbGLObjectVirtuals.h +22 -0
  218. data/ext/fox16_c/include/FXRbGLShape.h +81 -0
  219. data/ext/fox16_c/include/FXRbGLShapeVirtuals.h +8 -0
  220. data/ext/fox16_c/include/FXRbGLViewer.h +89 -0
  221. data/ext/fox16_c/include/FXRbGLViewerVirtuals.h +10 -0
  222. data/ext/fox16_c/include/FXRbGLVisual.h +56 -0
  223. data/ext/fox16_c/include/FXRbGradientBar.h +55 -0
  224. data/ext/fox16_c/include/FXRbGroupBox.h +51 -0
  225. data/ext/fox16_c/include/FXRbHeader.h +129 -0
  226. data/ext/fox16_c/include/FXRbHeaderItemVirtuals.h +22 -0
  227. data/ext/fox16_c/include/FXRbHorizontalFrame.h +51 -0
  228. data/ext/fox16_c/include/FXRbICOIcon.h +54 -0
  229. data/ext/fox16_c/include/FXRbICOImage.h +54 -0
  230. data/ext/fox16_c/include/FXRbIcon.h +57 -0
  231. data/ext/fox16_c/include/FXRbIconItemVirtuals.h +68 -0
  232. data/ext/fox16_c/include/FXRbIconList.h +288 -0
  233. data/ext/fox16_c/include/FXRbIconListVirtuals.h +35 -0
  234. data/ext/fox16_c/include/FXRbIconSource.h +127 -0
  235. data/ext/fox16_c/include/FXRbIconSourceVirtuals.h +37 -0
  236. data/ext/fox16_c/include/FXRbId.h +74 -0
  237. data/ext/fox16_c/include/FXRbIdVirtuals.h +9 -0
  238. data/ext/fox16_c/include/FXRbImage.h +162 -0
  239. data/ext/fox16_c/include/FXRbImageFrame.h +56 -0
  240. data/ext/fox16_c/include/FXRbImageView.h +55 -0
  241. data/ext/fox16_c/include/FXRbImageVirtuals.h +51 -0
  242. data/ext/fox16_c/include/FXRbInputDialog.h +56 -0
  243. data/ext/fox16_c/include/FXRbJPGIcon.h +54 -0
  244. data/ext/fox16_c/include/FXRbJPGImage.h +54 -0
  245. data/ext/fox16_c/include/FXRbKnob.h +51 -0
  246. data/ext/fox16_c/include/FXRbLabel.h +51 -0
  247. data/ext/fox16_c/include/FXRbList.h +226 -0
  248. data/ext/fox16_c/include/FXRbListBox.h +67 -0
  249. data/ext/fox16_c/include/FXRbListBoxVirtuals.h +4 -0
  250. data/ext/fox16_c/include/FXRbListItemVirtuals.h +33 -0
  251. data/ext/fox16_c/include/FXRbListVirtuals.h +30 -0
  252. data/ext/fox16_c/include/FXRbMDIButton.h +162 -0
  253. data/ext/fox16_c/include/FXRbMDIChild.h +82 -0
  254. data/ext/fox16_c/include/FXRbMDIChildVirtuals.h +12 -0
  255. data/ext/fox16_c/include/FXRbMDIClient.h +80 -0
  256. data/ext/fox16_c/include/FXRbMDIClientVirtuals.h +12 -0
  257. data/ext/fox16_c/include/FXRbMainWindow.h +54 -0
  258. data/ext/fox16_c/include/FXRbMatrix.h +51 -0
  259. data/ext/fox16_c/include/FXRbMenuBar.h +63 -0
  260. data/ext/fox16_c/include/FXRbMenuButton.h +51 -0
  261. data/ext/fox16_c/include/FXRbMenuCaption.h +51 -0
  262. data/ext/fox16_c/include/FXRbMenuCascade.h +51 -0
  263. data/ext/fox16_c/include/FXRbMenuCheck.h +49 -0
  264. data/ext/fox16_c/include/FXRbMenuCommand.h +49 -0
  265. data/ext/fox16_c/include/FXRbMenuPane.h +52 -0
  266. data/ext/fox16_c/include/FXRbMenuRadio.h +49 -0
  267. data/ext/fox16_c/include/FXRbMenuSeparator.h +51 -0
  268. data/ext/fox16_c/include/FXRbMenuTitle.h +51 -0
  269. data/ext/fox16_c/include/FXRbMessageBox.h +56 -0
  270. data/ext/fox16_c/include/FXRbObject.h +67 -0
  271. data/ext/fox16_c/include/FXRbObjectVirtuals.h +9 -0
  272. data/ext/fox16_c/include/FXRbOptionMenu.h +73 -0
  273. data/ext/fox16_c/include/FXRbPCXIcon.h +54 -0
  274. data/ext/fox16_c/include/FXRbPCXImage.h +54 -0
  275. data/ext/fox16_c/include/FXRbPNGIcon.h +54 -0
  276. data/ext/fox16_c/include/FXRbPNGImage.h +54 -0
  277. data/ext/fox16_c/include/FXRbPPMIcon.h +54 -0
  278. data/ext/fox16_c/include/FXRbPPMImage.h +54 -0
  279. data/ext/fox16_c/include/FXRbPacker.h +51 -0
  280. data/ext/fox16_c/include/FXRbPicker.h +51 -0
  281. data/ext/fox16_c/include/FXRbPopup.h +70 -0
  282. data/ext/fox16_c/include/FXRbPopupVirtuals.h +6 -0
  283. data/ext/fox16_c/include/FXRbPrintDialog.h +53 -0
  284. data/ext/fox16_c/include/FXRbProgressBar.h +51 -0
  285. data/ext/fox16_c/include/FXRbProgressDialog.h +53 -0
  286. data/ext/fox16_c/include/FXRbRGBIcon.h +54 -0
  287. data/ext/fox16_c/include/FXRbRGBImage.h +54 -0
  288. data/ext/fox16_c/include/FXRbRadioButton.h +51 -0
  289. data/ext/fox16_c/include/FXRbRealSlider.h +51 -0
  290. data/ext/fox16_c/include/FXRbRealSpinner.h +64 -0
  291. data/ext/fox16_c/include/FXRbRealSpinnerVirtuals.h +3 -0
  292. data/ext/fox16_c/include/FXRbRecentFiles.h +52 -0
  293. data/ext/fox16_c/include/FXRbRegistry.h +46 -0
  294. data/ext/fox16_c/include/FXRbReplaceDialog.h +53 -0
  295. data/ext/fox16_c/include/FXRbRootWindow.h +51 -0
  296. data/ext/fox16_c/include/FXRbRuler.h +56 -0
  297. data/ext/fox16_c/include/FXRbRulerView.h +54 -0
  298. data/ext/fox16_c/include/FXRbScintilla.h +52 -0
  299. data/ext/fox16_c/include/FXRbScrollArea.h +87 -0
  300. data/ext/fox16_c/include/FXRbScrollAreaVirtuals.h +13 -0
  301. data/ext/fox16_c/include/FXRbScrollBar.h +73 -0
  302. data/ext/fox16_c/include/FXRbScrollPane.h +52 -0
  303. data/ext/fox16_c/include/FXRbScrollWindow.h +57 -0
  304. data/ext/fox16_c/include/FXRbSearchDialog.h +53 -0
  305. data/ext/fox16_c/include/FXRbSeparator.h +95 -0
  306. data/ext/fox16_c/include/FXRbSettings.h +46 -0
  307. data/ext/fox16_c/include/FXRbShell.h +56 -0
  308. data/ext/fox16_c/include/FXRbShutter.h +86 -0
  309. data/ext/fox16_c/include/FXRbShutterVirtuals.h +3 -0
  310. data/ext/fox16_c/include/FXRbSlider.h +51 -0
  311. data/ext/fox16_c/include/FXRbSpinner.h +64 -0
  312. data/ext/fox16_c/include/FXRbSpinnerVirtuals.h +3 -0
  313. data/ext/fox16_c/include/FXRbSplashWindow.h +57 -0
  314. data/ext/fox16_c/include/FXRbSplitter.h +54 -0
  315. data/ext/fox16_c/include/FXRbSpring.h +51 -0
  316. data/ext/fox16_c/include/FXRbStatusBar.h +51 -0
  317. data/ext/fox16_c/include/FXRbStatusLine.h +51 -0
  318. data/ext/fox16_c/include/FXRbStream.h +101 -0
  319. data/ext/fox16_c/include/FXRbStreamVirtuals.h +9 -0
  320. data/ext/fox16_c/include/FXRbStringDict.h +46 -0
  321. data/ext/fox16_c/include/FXRbSwitcher.h +51 -0
  322. data/ext/fox16_c/include/FXRbTGAIcon.h +54 -0
  323. data/ext/fox16_c/include/FXRbTGAImage.h +54 -0
  324. data/ext/fox16_c/include/FXRbTIFIcon.h +54 -0
  325. data/ext/fox16_c/include/FXRbTIFImage.h +54 -0
  326. data/ext/fox16_c/include/FXRbTabBar.h +64 -0
  327. data/ext/fox16_c/include/FXRbTabBarVirtuals.h +3 -0
  328. data/ext/fox16_c/include/FXRbTabBook.h +52 -0
  329. data/ext/fox16_c/include/FXRbTabItem.h +51 -0
  330. data/ext/fox16_c/include/FXRbTable.h +509 -0
  331. data/ext/fox16_c/include/FXRbTableItemVirtuals.h +89 -0
  332. data/ext/fox16_c/include/FXRbTableVirtuals.h +89 -0
  333. data/ext/fox16_c/include/FXRbText.h +187 -0
  334. data/ext/fox16_c/include/FXRbTextField.h +51 -0
  335. data/ext/fox16_c/include/FXRbTextVirtuals.h +52 -0
  336. data/ext/fox16_c/include/FXRbToggleButton.h +51 -0
  337. data/ext/fox16_c/include/FXRbToolBar.h +63 -0
  338. data/ext/fox16_c/include/FXRbToolBarGrip.h +51 -0
  339. data/ext/fox16_c/include/FXRbToolBarShell.h +52 -0
  340. data/ext/fox16_c/include/FXRbToolBarTab.h +51 -0
  341. data/ext/fox16_c/include/FXRbToolTip.h +51 -0
  342. data/ext/fox16_c/include/FXRbTopWindow.h +91 -0
  343. data/ext/fox16_c/include/FXRbTopWindowVirtuals.h +15 -0
  344. data/ext/fox16_c/include/FXRbTranslator.h +61 -0
  345. data/ext/fox16_c/include/FXRbTranslatorVirtuals.h +4 -0
  346. data/ext/fox16_c/include/FXRbTreeItemVirtuals.h +42 -0
  347. data/ext/fox16_c/include/FXRbTreeList.h +277 -0
  348. data/ext/fox16_c/include/FXRbTreeListBox.h +64 -0
  349. data/ext/fox16_c/include/FXRbTreeListBoxVirtuals.h +4 -0
  350. data/ext/fox16_c/include/FXRbTreeListVirtuals.h +42 -0
  351. data/ext/fox16_c/include/FXRbTriStateButton.h +51 -0
  352. data/ext/fox16_c/include/FXRbVerticalFrame.h +51 -0
  353. data/ext/fox16_c/include/FXRbVisual.h +56 -0
  354. data/ext/fox16_c/include/FXRbWindow.h +248 -0
  355. data/ext/fox16_c/include/FXRbWindowVirtuals.h +94 -0
  356. data/ext/fox16_c/include/FXRbWizard.h +60 -0
  357. data/ext/fox16_c/include/FXRbXBMIcon.h +54 -0
  358. data/ext/fox16_c/include/FXRbXBMImage.h +54 -0
  359. data/ext/fox16_c/include/FXRbXPMIcon.h +54 -0
  360. data/ext/fox16_c/include/FXRbXPMImage.h +54 -0
  361. data/ext/fox16_c/include/FXRuby.h +881 -0
  362. data/ext/fox16_c/include/impl.h +215 -0
  363. data/ext/fox16_c/make_impl.rb +121 -0
  364. data/ext/fox16_c/markfuncs.cpp +1666 -0
  365. data/ext/fox16_c/unregisterOwnedObjects.cpp +120 -0
  366. data/index.html +14 -0
  367. data/lib/2.0/fox16_c.so +0 -0
  368. data/lib/fox16.rb +20 -0
  369. data/lib/fox16/accel_table.rb +83 -0
  370. data/lib/fox16/aliases.rb +5617 -0
  371. data/lib/fox16/bitmapview.rb +222 -0
  372. data/lib/fox16/calendar.rb +217 -0
  373. data/lib/fox16/canvas.rb +606 -0
  374. data/lib/fox16/chore.rb +105 -0
  375. data/lib/fox16/colors.rb +280 -0
  376. data/lib/fox16/core.rb +700 -0
  377. data/lib/fox16/dict.rb +35 -0
  378. data/lib/fox16/exceptions_for_fxerror.rb +17 -0
  379. data/lib/fox16/execute_nonmodal.rb +70 -0
  380. data/lib/fox16/glgroup.rb +166 -0
  381. data/lib/fox16/glshapes.rb +456 -0
  382. data/lib/fox16/input.rb +59 -0
  383. data/lib/fox16/irb.rb +179 -0
  384. data/lib/fox16/iterators.rb +420 -0
  385. data/lib/fox16/keys.rb +1374 -0
  386. data/lib/fox16/missingdep.rb +14 -0
  387. data/lib/fox16/pseudokeyboard.rb +40 -0
  388. data/lib/fox16/pseudomouse.rb +87 -0
  389. data/lib/fox16/responder.rb +70 -0
  390. data/lib/fox16/responder2.rb +132 -0
  391. data/lib/fox16/scintilla.rb +5017 -0
  392. data/lib/fox16/settings.rb +18 -0
  393. data/lib/fox16/signal.rb +71 -0
  394. data/lib/fox16/splashscreen.rb +83 -0
  395. data/lib/fox16/timeout.rb +136 -0
  396. data/lib/fox16/tkcompat.rb +56 -0
  397. data/lib/fox16/undolist.rb +455 -0
  398. data/lib/fox16/version.rb +5 -0
  399. data/rdoc-sources/FX4Splitter.rb +156 -0
  400. data/rdoc-sources/FX7Segment.rb +54 -0
  401. data/rdoc-sources/FXAccelTable.rb +84 -0
  402. data/rdoc-sources/FXApp.rb +542 -0
  403. data/rdoc-sources/FXArrowButton.rb +69 -0
  404. data/rdoc-sources/FXBMPIcon.rb +67 -0
  405. data/rdoc-sources/FXBMPImage.rb +30 -0
  406. data/rdoc-sources/FXBitmap.rb +115 -0
  407. data/rdoc-sources/FXBitmapFrame.rb +31 -0
  408. data/rdoc-sources/FXBitmapView.rb +44 -0
  409. data/rdoc-sources/FXButton.rb +59 -0
  410. data/rdoc-sources/FXCURCursor.rb +13 -0
  411. data/rdoc-sources/FXCanvas.rb +18 -0
  412. data/rdoc-sources/FXCheckButton.rb +58 -0
  413. data/rdoc-sources/FXChoiceBox.rb +49 -0
  414. data/rdoc-sources/FXColorBar.rb +48 -0
  415. data/rdoc-sources/FXColorDialog.rb +37 -0
  416. data/rdoc-sources/FXColorList.rb +55 -0
  417. data/rdoc-sources/FXColorRing.rb +49 -0
  418. data/rdoc-sources/FXColorSelector.rb +65 -0
  419. data/rdoc-sources/FXColorWell.rb +65 -0
  420. data/rdoc-sources/FXColorWheel.rb +57 -0
  421. data/rdoc-sources/FXComboBox.rb +214 -0
  422. data/rdoc-sources/FXComposite.rb +34 -0
  423. data/rdoc-sources/FXCursor.rb +67 -0
  424. data/rdoc-sources/FXDC.rb +720 -0
  425. data/rdoc-sources/FXDCPrint.rb +127 -0
  426. data/rdoc-sources/FXDCWindow.rb +33 -0
  427. data/rdoc-sources/FXDataTarget.rb +66 -0
  428. data/rdoc-sources/FXDebugTarget.rb +25 -0
  429. data/rdoc-sources/FXDelegator.rb +23 -0
  430. data/rdoc-sources/FXDial.rb +107 -0
  431. data/rdoc-sources/FXDialogBox.rb +32 -0
  432. data/rdoc-sources/FXDict.rb +78 -0
  433. data/rdoc-sources/FXDirBox.rb +55 -0
  434. data/rdoc-sources/FXDirDialog.rb +47 -0
  435. data/rdoc-sources/FXDirList.rb +149 -0
  436. data/rdoc-sources/FXDirSelector.rb +64 -0
  437. data/rdoc-sources/FXDockBar.rb +151 -0
  438. data/rdoc-sources/FXDockHandler.rb +26 -0
  439. data/rdoc-sources/FXDockSite.rb +104 -0
  440. data/rdoc-sources/FXDockTitle.rb +26 -0
  441. data/rdoc-sources/FXDocument.rb +29 -0
  442. data/rdoc-sources/FXDragCorner.rb +19 -0
  443. data/rdoc-sources/FXDrawable.rb +27 -0
  444. data/rdoc-sources/FXDriveBox.rb +46 -0
  445. data/rdoc-sources/FXExtentd.rb +85 -0
  446. data/rdoc-sources/FXExtentf.rb +85 -0
  447. data/rdoc-sources/FXFileDialog.rb +217 -0
  448. data/rdoc-sources/FXFileDict.rb +131 -0
  449. data/rdoc-sources/FXFileList.rb +208 -0
  450. data/rdoc-sources/FXFileSelector.rb +184 -0
  451. data/rdoc-sources/FXFileStream.rb +27 -0
  452. data/rdoc-sources/FXFoldingList.rb +504 -0
  453. data/rdoc-sources/FXFont.rb +361 -0
  454. data/rdoc-sources/FXFontDialog.rb +14 -0
  455. data/rdoc-sources/FXFontSelector.rb +37 -0
  456. data/rdoc-sources/FXFrame.rb +53 -0
  457. data/rdoc-sources/FXGIFCursor.rb +50 -0
  458. data/rdoc-sources/FXGIFIcon.rb +31 -0
  459. data/rdoc-sources/FXGIFImage.rb +29 -0
  460. data/rdoc-sources/FXGLCanvas.rb +45 -0
  461. data/rdoc-sources/FXGLContext.rb +40 -0
  462. data/rdoc-sources/FXGLObject.rb +75 -0
  463. data/rdoc-sources/FXGLShape.rb +69 -0
  464. data/rdoc-sources/FXGLViewer.rb +332 -0
  465. data/rdoc-sources/FXGLVisual.rb +95 -0
  466. data/rdoc-sources/FXGradientBar.rb +301 -0
  467. data/rdoc-sources/FXGroupBox.rb +36 -0
  468. data/rdoc-sources/FXHeader.rb +408 -0
  469. data/rdoc-sources/FXHorizontalFrame.rb +29 -0
  470. data/rdoc-sources/FXICOIcon.rb +65 -0
  471. data/rdoc-sources/FXICOImage.rb +31 -0
  472. data/rdoc-sources/FXIcon.rb +38 -0
  473. data/rdoc-sources/FXIconDict.rb +49 -0
  474. data/rdoc-sources/FXIconList.rb +450 -0
  475. data/rdoc-sources/FXIconSource.rb +100 -0
  476. data/rdoc-sources/FXId.rb +34 -0
  477. data/rdoc-sources/FXImage.rb +320 -0
  478. data/rdoc-sources/FXImageFrame.rb +36 -0
  479. data/rdoc-sources/FXImageView.rb +35 -0
  480. data/rdoc-sources/FXInputDialog.rb +80 -0
  481. data/rdoc-sources/FXJPGIcon.rb +71 -0
  482. data/rdoc-sources/FXJPGImage.rb +39 -0
  483. data/rdoc-sources/FXKnob.rb +76 -0
  484. data/rdoc-sources/FXLabel.rb +72 -0
  485. data/rdoc-sources/FXList.rb +443 -0
  486. data/rdoc-sources/FXListBox.rb +191 -0
  487. data/rdoc-sources/FXMDIButton.rb +67 -0
  488. data/rdoc-sources/FXMDIChild.rb +155 -0
  489. data/rdoc-sources/FXMDIClient.rb +65 -0
  490. data/rdoc-sources/FXMainWindow.rb +26 -0
  491. data/rdoc-sources/FXMatrix.rb +57 -0
  492. data/rdoc-sources/FXMemoryBuffer.rb +29 -0
  493. data/rdoc-sources/FXMemoryStream.rb +50 -0
  494. data/rdoc-sources/FXMenuBar.rb +23 -0
  495. data/rdoc-sources/FXMenuButton.rb +85 -0
  496. data/rdoc-sources/FXMenuCaption.rb +53 -0
  497. data/rdoc-sources/FXMenuCascade.rb +18 -0
  498. data/rdoc-sources/FXMenuCheck.rb +30 -0
  499. data/rdoc-sources/FXMenuCommand.rb +26 -0
  500. data/rdoc-sources/FXMenuPane.rb +13 -0
  501. data/rdoc-sources/FXMenuRadio.rb +33 -0
  502. data/rdoc-sources/FXMenuSeparator.rb +21 -0
  503. data/rdoc-sources/FXMenuTitle.rb +27 -0
  504. data/rdoc-sources/FXMessageBox.rb +73 -0
  505. data/rdoc-sources/FXObject.rb +28 -0
  506. data/rdoc-sources/FXOptionMenu.rb +83 -0
  507. data/rdoc-sources/FXPCXIcon.rb +63 -0
  508. data/rdoc-sources/FXPCXImage.rb +31 -0
  509. data/rdoc-sources/FXPNGIcon.rb +66 -0
  510. data/rdoc-sources/FXPNGImage.rb +34 -0
  511. data/rdoc-sources/FXPPMIcon.rb +36 -0
  512. data/rdoc-sources/FXPPMImage.rb +31 -0
  513. data/rdoc-sources/FXPacker.rb +63 -0
  514. data/rdoc-sources/FXPicker.rb +27 -0
  515. data/rdoc-sources/FXPopup.rb +53 -0
  516. data/rdoc-sources/FXPrintDialog.rb +36 -0
  517. data/rdoc-sources/FXProgressBar.rb +57 -0
  518. data/rdoc-sources/FXProgressDialog.rb +36 -0
  519. data/rdoc-sources/FXQuatd.rb +164 -0
  520. data/rdoc-sources/FXQuatf.rb +173 -0
  521. data/rdoc-sources/FXRGBIcon.rb +64 -0
  522. data/rdoc-sources/FXRGBImage.rb +31 -0
  523. data/rdoc-sources/FXRadioButton.rb +70 -0
  524. data/rdoc-sources/FXRanged.rb +100 -0
  525. data/rdoc-sources/FXRangef.rb +100 -0
  526. data/rdoc-sources/FXRealSlider.rb +101 -0
  527. data/rdoc-sources/FXRealSpinner.rb +140 -0
  528. data/rdoc-sources/FXRecentFiles.rb +77 -0
  529. data/rdoc-sources/FXRectangle.rb +149 -0
  530. data/rdoc-sources/FXRegion.rb +64 -0
  531. data/rdoc-sources/FXRegistry.rb +56 -0
  532. data/rdoc-sources/FXReplaceDialog.rb +56 -0
  533. data/rdoc-sources/FXRootWindow.rb +17 -0
  534. data/rdoc-sources/FXRuler.rb +130 -0
  535. data/rdoc-sources/FXRulerView.rb +225 -0
  536. data/rdoc-sources/FXScintilla.rb +121 -0
  537. data/rdoc-sources/FXScrollArea.rb +86 -0
  538. data/rdoc-sources/FXScrollBar.rb +107 -0
  539. data/rdoc-sources/FXScrollPane.rb +28 -0
  540. data/rdoc-sources/FXScrollWindow.rb +38 -0
  541. data/rdoc-sources/FXSearchDialog.rb +24 -0
  542. data/rdoc-sources/FXSeparator.rb +74 -0
  543. data/rdoc-sources/FXSettings.rb +248 -0
  544. data/rdoc-sources/FXShell.rb +8 -0
  545. data/rdoc-sources/FXShutter.rb +102 -0
  546. data/rdoc-sources/FXSize.rb +95 -0
  547. data/rdoc-sources/FXSlider.rb +98 -0
  548. data/rdoc-sources/FXSphered.rb +80 -0
  549. data/rdoc-sources/FXSpheref.rb +80 -0
  550. data/rdoc-sources/FXSpinner.rb +136 -0
  551. data/rdoc-sources/FXSplashWindow.rb +27 -0
  552. data/rdoc-sources/FXSplitter.rb +89 -0
  553. data/rdoc-sources/FXSpring.rb +61 -0
  554. data/rdoc-sources/FXStatusBar.rb +42 -0
  555. data/rdoc-sources/FXStatusLine.rb +60 -0
  556. data/rdoc-sources/FXStream.rb +142 -0
  557. data/rdoc-sources/FXStringDict.rb +38 -0
  558. data/rdoc-sources/FXSwitcher.rb +78 -0
  559. data/rdoc-sources/FXTGAIcon.rb +63 -0
  560. data/rdoc-sources/FXTGAImage.rb +31 -0
  561. data/rdoc-sources/FXTIFIcon.rb +70 -0
  562. data/rdoc-sources/FXTIFImage.rb +37 -0
  563. data/rdoc-sources/FXTabBar.rb +80 -0
  564. data/rdoc-sources/FXTabBook.rb +41 -0
  565. data/rdoc-sources/FXTabItem.rb +58 -0
  566. data/rdoc-sources/FXTable.rb +975 -0
  567. data/rdoc-sources/FXText.rb +581 -0
  568. data/rdoc-sources/FXTextField.rb +151 -0
  569. data/rdoc-sources/FXToggleButton.rb +70 -0
  570. data/rdoc-sources/FXToolBar.rb +61 -0
  571. data/rdoc-sources/FXToolBarGrip.rb +50 -0
  572. data/rdoc-sources/FXToolBarShell.rb +44 -0
  573. data/rdoc-sources/FXToolBarTab.rb +74 -0
  574. data/rdoc-sources/FXToolTip.rb +39 -0
  575. data/rdoc-sources/FXTopWindow.rb +163 -0
  576. data/rdoc-sources/FXTranslator.rb +32 -0
  577. data/rdoc-sources/FXTreeList.rb +514 -0
  578. data/rdoc-sources/FXTreeListBox.rb +219 -0
  579. data/rdoc-sources/FXTriStateButton.rb +49 -0
  580. data/rdoc-sources/FXVec2d.rb +96 -0
  581. data/rdoc-sources/FXVec2f.rb +96 -0
  582. data/rdoc-sources/FXVec3d.rb +118 -0
  583. data/rdoc-sources/FXVec3f.rb +118 -0
  584. data/rdoc-sources/FXVec4d.rb +139 -0
  585. data/rdoc-sources/FXVec4f.rb +139 -0
  586. data/rdoc-sources/FXVerticalFrame.rb +29 -0
  587. data/rdoc-sources/FXVisual.rb +79 -0
  588. data/rdoc-sources/FXWindow.rb +725 -0
  589. data/rdoc-sources/FXWizard.rb +59 -0
  590. data/rdoc-sources/FXXBMIcon.rb +37 -0
  591. data/rdoc-sources/FXXBMImage.rb +32 -0
  592. data/rdoc-sources/FXXPMIcon.rb +65 -0
  593. data/rdoc-sources/FXXPMImage.rb +31 -0
  594. data/rdoc-sources/Makefile +23 -0
  595. data/rdoc-sources/README.rdoc +53 -0
  596. data/rdoc-sources/fxdefs.rb +90 -0
  597. data/scripts/build-fox.rb +31 -0
  598. data/scripts/generate_kwargs_lib.rb +412 -0
  599. data/scripts/iface.rb +391 -0
  600. data/swig-interfaces/FX4Splitter.i +149 -0
  601. data/swig-interfaces/FX7Segment.i +141 -0
  602. data/swig-interfaces/FXAccelTable.i +100 -0
  603. data/swig-interfaces/FXApp.i +735 -0
  604. data/swig-interfaces/FXArrowButton.i +136 -0
  605. data/swig-interfaces/FXBMPIcon.i +88 -0
  606. data/swig-interfaces/FXBMPImage.i +54 -0
  607. data/swig-interfaces/FXBitmap.i +90 -0
  608. data/swig-interfaces/FXBitmapFrame.i +72 -0
  609. data/swig-interfaces/FXBitmapView.i +94 -0
  610. data/swig-interfaces/FXButton.i +130 -0
  611. data/swig-interfaces/FXCURCursor.i +49 -0
  612. data/swig-interfaces/FXCanvas.i +61 -0
  613. data/swig-interfaces/FXCheckButton.i +108 -0
  614. data/swig-interfaces/FXChoiceBox.i +91 -0
  615. data/swig-interfaces/FXColorBar.i +110 -0
  616. data/swig-interfaces/FXColorDialog.i +79 -0
  617. data/swig-interfaces/FXColorList.i +99 -0
  618. data/swig-interfaces/FXColorRing.i +148 -0
  619. data/swig-interfaces/FXColorSelector.i +157 -0
  620. data/swig-interfaces/FXColorWell.i +133 -0
  621. data/swig-interfaces/FXColorWheel.i +108 -0
  622. data/swig-interfaces/FXComboBox.i +280 -0
  623. data/swig-interfaces/FXComposeContext.i +66 -0
  624. data/swig-interfaces/FXComposite.i +103 -0
  625. data/swig-interfaces/FXCursor.i +120 -0
  626. data/swig-interfaces/FXDC.i +280 -0
  627. data/swig-interfaces/FXDCPrint.i +141 -0
  628. data/swig-interfaces/FXDCWindow.i +75 -0
  629. data/swig-interfaces/FXDataTarget.i +115 -0
  630. data/swig-interfaces/FXDebugTarget.i +60 -0
  631. data/swig-interfaces/FXDelegator.i +56 -0
  632. data/swig-interfaces/FXDial.i +168 -0
  633. data/swig-interfaces/FXDialogBox.i +131 -0
  634. data/swig-interfaces/FXDict.i +200 -0
  635. data/swig-interfaces/FXDirBox.i +68 -0
  636. data/swig-interfaces/FXDirDialog.i +97 -0
  637. data/swig-interfaces/FXDirList.i +274 -0
  638. data/swig-interfaces/FXDirSelector.i +142 -0
  639. data/swig-interfaces/FXDockBar.i +180 -0
  640. data/swig-interfaces/FXDockHandler.i +94 -0
  641. data/swig-interfaces/FXDockSite.i +91 -0
  642. data/swig-interfaces/FXDockTitle.i +91 -0
  643. data/swig-interfaces/FXDocument.i +70 -0
  644. data/swig-interfaces/FXDragCorner.i +72 -0
  645. data/swig-interfaces/FXDrawable.i +90 -0
  646. data/swig-interfaces/FXDriveBox.i +63 -0
  647. data/swig-interfaces/FXExtentd.i +131 -0
  648. data/swig-interfaces/FXExtentf.i +131 -0
  649. data/swig-interfaces/FXFileDialog.i +268 -0
  650. data/swig-interfaces/FXFileDict.i +121 -0
  651. data/swig-interfaces/FXFileList.i +345 -0
  652. data/swig-interfaces/FXFileSelector.i +347 -0
  653. data/swig-interfaces/FXFileStream.i +49 -0
  654. data/swig-interfaces/FXFoldingList.i +556 -0
  655. data/swig-interfaces/FXFont.i +333 -0
  656. data/swig-interfaces/FXFontDialog.i +63 -0
  657. data/swig-interfaces/FXFontSelector.i +127 -0
  658. data/swig-interfaces/FXFrame.i +245 -0
  659. data/swig-interfaces/FXGIFCursor.i +86 -0
  660. data/swig-interfaces/FXGIFIcon.i +54 -0
  661. data/swig-interfaces/FXGIFImage.i +54 -0
  662. data/swig-interfaces/FXGLCanvas.i +90 -0
  663. data/swig-interfaces/FXGLContext.i +85 -0
  664. data/swig-interfaces/FXGLObject.i +70 -0
  665. data/swig-interfaces/FXGLShape.i +152 -0
  666. data/swig-interfaces/FXGLViewer.i +691 -0
  667. data/swig-interfaces/FXGLVisual.i +136 -0
  668. data/swig-interfaces/FXGradientBar.i +310 -0
  669. data/swig-interfaces/FXGroupBox.i +94 -0
  670. data/swig-interfaces/FXHeader.i +432 -0
  671. data/swig-interfaces/FXHorizontalFrame.i +60 -0
  672. data/swig-interfaces/FXICOIcon.i +92 -0
  673. data/swig-interfaces/FXICOImage.i +54 -0
  674. data/swig-interfaces/FXIcon.i +128 -0
  675. data/swig-interfaces/FXIconDict.i +90 -0
  676. data/swig-interfaces/FXIconList.i +596 -0
  677. data/swig-interfaces/FXIconSource.i +55 -0
  678. data/swig-interfaces/FXId.i +103 -0
  679. data/swig-interfaces/FXImage.i +226 -0
  680. data/swig-interfaces/FXImageFrame.i +66 -0
  681. data/swig-interfaces/FXImageView.i +88 -0
  682. data/swig-interfaces/FXInputDialog.i +180 -0
  683. data/swig-interfaces/FXJPGIcon.i +101 -0
  684. data/swig-interfaces/FXJPGImage.i +67 -0
  685. data/swig-interfaces/FXKnob.i +182 -0
  686. data/swig-interfaces/FXLabel.i +199 -0
  687. data/swig-interfaces/FXList.i +476 -0
  688. data/swig-interfaces/FXListBox.i +234 -0
  689. data/swig-interfaces/FXMDIButton.i +173 -0
  690. data/swig-interfaces/FXMDIChild.i +242 -0
  691. data/swig-interfaces/FXMDIClient.i +149 -0
  692. data/swig-interfaces/FXMainWindow.i +53 -0
  693. data/swig-interfaces/FXMat3d.i +102 -0
  694. data/swig-interfaces/FXMat3f.i +102 -0
  695. data/swig-interfaces/FXMat4d.i +122 -0
  696. data/swig-interfaces/FXMat4f.i +138 -0
  697. data/swig-interfaces/FXMatrix.i +101 -0
  698. data/swig-interfaces/FXMemoryBuffer.i +64 -0
  699. data/swig-interfaces/FXMemoryStream.i +77 -0
  700. data/swig-interfaces/FXMenuBar.i +67 -0
  701. data/swig-interfaces/FXMenuButton.i +152 -0
  702. data/swig-interfaces/FXMenuCaption.i +176 -0
  703. data/swig-interfaces/FXMenuCascade.i +76 -0
  704. data/swig-interfaces/FXMenuCheck.i +90 -0
  705. data/swig-interfaces/FXMenuCommand.i +69 -0
  706. data/swig-interfaces/FXMenuPane.i +60 -0
  707. data/swig-interfaces/FXMenuRadio.i +93 -0
  708. data/swig-interfaces/FXMenuSeparator.i +65 -0
  709. data/swig-interfaces/FXMenuTitle.i +74 -0
  710. data/swig-interfaces/FXMessageBox.i +128 -0
  711. data/swig-interfaces/FXObject.i +169 -0
  712. data/swig-interfaces/FXOptionMenu.i +140 -0
  713. data/swig-interfaces/FXPCXIcon.i +91 -0
  714. data/swig-interfaces/FXPCXImage.i +55 -0
  715. data/swig-interfaces/FXPNGIcon.i +95 -0
  716. data/swig-interfaces/FXPNGImage.i +59 -0
  717. data/swig-interfaces/FXPPMIcon.i +91 -0
  718. data/swig-interfaces/FXPPMImage.i +55 -0
  719. data/swig-interfaces/FXPacker.i +255 -0
  720. data/swig-interfaces/FXPicker.i +54 -0
  721. data/swig-interfaces/FXPoint.i +52 -0
  722. data/swig-interfaces/FXPopup.i +162 -0
  723. data/swig-interfaces/FXPrintDialog.i +154 -0
  724. data/swig-interfaces/FXProgressBar.i +133 -0
  725. data/swig-interfaces/FXProgressDialog.i +105 -0
  726. data/swig-interfaces/FXQuatd.i +128 -0
  727. data/swig-interfaces/FXQuatf.i +122 -0
  728. data/swig-interfaces/FXRGBIcon.i +90 -0
  729. data/swig-interfaces/FXRGBImage.i +56 -0
  730. data/swig-interfaces/FXRadioButton.i +117 -0
  731. data/swig-interfaces/FXRanged.i +163 -0
  732. data/swig-interfaces/FXRangef.i +172 -0
  733. data/swig-interfaces/FXRealSlider.i +166 -0
  734. data/swig-interfaces/FXRealSpinner.i +215 -0
  735. data/swig-interfaces/FXRecentFiles.i +119 -0
  736. data/swig-interfaces/FXRectangle.i +104 -0
  737. data/swig-interfaces/FXRegion.i +88 -0
  738. data/swig-interfaces/FXRegistry.i +96 -0
  739. data/swig-interfaces/FXReplaceDialog.i +131 -0
  740. data/swig-interfaces/FXRootWindow.i +50 -0
  741. data/swig-interfaces/FXRuler.i +245 -0
  742. data/swig-interfaces/FXRulerView.i +233 -0
  743. data/swig-interfaces/FXScintilla.i +194 -0
  744. data/swig-interfaces/FXScrollArea.i +211 -0
  745. data/swig-interfaces/FXScrollBar.i +178 -0
  746. data/swig-interfaces/FXScrollPane.i +83 -0
  747. data/swig-interfaces/FXScrollWindow.i +67 -0
  748. data/swig-interfaces/FXSearchDialog.i +48 -0
  749. data/swig-interfaces/FXSeparator.i +138 -0
  750. data/swig-interfaces/FXSettings.i +160 -0
  751. data/swig-interfaces/FXShell.i +91 -0
  752. data/swig-interfaces/FXShutter.i +140 -0
  753. data/swig-interfaces/FXSize.i +71 -0
  754. data/swig-interfaces/FXSlider.i +181 -0
  755. data/swig-interfaces/FXSphered.i +126 -0
  756. data/swig-interfaces/FXSpheref.i +126 -0
  757. data/swig-interfaces/FXSpinner.i +212 -0
  758. data/swig-interfaces/FXSplashWindow.i +92 -0
  759. data/swig-interfaces/FXSplitter.i +123 -0
  760. data/swig-interfaces/FXSpring.i +79 -0
  761. data/swig-interfaces/FXStatusBar.i +68 -0
  762. data/swig-interfaces/FXStatusLine.i +100 -0
  763. data/swig-interfaces/FXStream.i +150 -0
  764. data/swig-interfaces/FXStringDict.i +61 -0
  765. data/swig-interfaces/FXSwitcher.i +110 -0
  766. data/swig-interfaces/FXTGAIcon.i +85 -0
  767. data/swig-interfaces/FXTGAImage.i +56 -0
  768. data/swig-interfaces/FXTIFIcon.i +73 -0
  769. data/swig-interfaces/FXTIFImage.i +93 -0
  770. data/swig-interfaces/FXTabBar.i +121 -0
  771. data/swig-interfaces/FXTabBook.i +70 -0
  772. data/swig-interfaces/FXTabItem.i +82 -0
  773. data/swig-interfaces/FXTable.i +861 -0
  774. data/swig-interfaces/FXText.i +763 -0
  775. data/swig-interfaces/FXTextField.i +290 -0
  776. data/swig-interfaces/FXToggleButton.i +136 -0
  777. data/swig-interfaces/FXToolBar.i +75 -0
  778. data/swig-interfaces/FXToolBarGrip.i +82 -0
  779. data/swig-interfaces/FXToolBarShell.i +98 -0
  780. data/swig-interfaces/FXToolBarTab.i +114 -0
  781. data/swig-interfaces/FXToolTip.i +93 -0
  782. data/swig-interfaces/FXTopWindow.i +263 -0
  783. data/swig-interfaces/FXTranslator.i +55 -0
  784. data/swig-interfaces/FXTreeList.i +549 -0
  785. data/swig-interfaces/FXTreeListBox.i +317 -0
  786. data/swig-interfaces/FXTriStateButton.i +77 -0
  787. data/swig-interfaces/FXURL.i +35 -0
  788. data/swig-interfaces/FXVec2d.i +87 -0
  789. data/swig-interfaces/FXVec2f.i +87 -0
  790. data/swig-interfaces/FXVec3d.i +111 -0
  791. data/swig-interfaces/FXVec3f.i +109 -0
  792. data/swig-interfaces/FXVec4d.i +115 -0
  793. data/swig-interfaces/FXVec4f.i +115 -0
  794. data/swig-interfaces/FXVerticalFrame.i +69 -0
  795. data/swig-interfaces/FXVisual.i +162 -0
  796. data/swig-interfaces/FXWindow.i +851 -0
  797. data/swig-interfaces/FXWizard.i +125 -0
  798. data/swig-interfaces/FXXBMIcon.i +56 -0
  799. data/swig-interfaces/FXXBMImage.i +118 -0
  800. data/swig-interfaces/FXXPMIcon.i +122 -0
  801. data/swig-interfaces/FXXPMImage.i +56 -0
  802. data/swig-interfaces/README +17 -0
  803. data/swig-interfaces/common.i +48 -0
  804. data/swig-interfaces/core.i +85 -0
  805. data/swig-interfaces/dcmodule.i +36 -0
  806. data/swig-interfaces/dialogs.i +49 -0
  807. data/swig-interfaces/exceptions.i +249 -0
  808. data/swig-interfaces/framesmodule.i +54 -0
  809. data/swig-interfaces/freefuncs.i +93 -0
  810. data/swig-interfaces/fx3d.i +60 -0
  811. data/swig-interfaces/fxdefs.i +419 -0
  812. data/swig-interfaces/handlers.i +615 -0
  813. data/swig-interfaces/iconlistmodule.i +37 -0
  814. data/swig-interfaces/icons.i +48 -0
  815. data/swig-interfaces/ignore-message-handlers.rb +16 -0
  816. data/swig-interfaces/image.i +49 -0
  817. data/swig-interfaces/labelmodule.i +47 -0
  818. data/swig-interfaces/layout.i +47 -0
  819. data/swig-interfaces/listmodule.i +37 -0
  820. data/swig-interfaces/macros.i +1326 -0
  821. data/swig-interfaces/markfuncs.i +210 -0
  822. data/swig-interfaces/mdi.i +38 -0
  823. data/swig-interfaces/menumodule.i +44 -0
  824. data/swig-interfaces/ruby-typemaps.i +778 -0
  825. data/swig-interfaces/scintilla.i +57 -0
  826. data/swig-interfaces/table-module.i +36 -0
  827. data/swig-interfaces/text-module.i +36 -0
  828. data/swig-interfaces/treelist-module.i +37 -0
  829. data/swig-interfaces/ui.i +63 -0
  830. data/test/README +19 -0
  831. data/test/TC_FXAccelTable.rb +57 -0
  832. data/test/TC_FXApp.rb +66 -0
  833. data/test/TC_FXArc.rb +26 -0
  834. data/test/TC_FXBMPIcon.rb +15 -0
  835. data/test/TC_FXBMPImage.rb +15 -0
  836. data/test/TC_FXButton.rb +82 -0
  837. data/test/TC_FXCheckButton.rb +57 -0
  838. data/test/TC_FXComboBox.rb +72 -0
  839. data/test/TC_FXDC.rb +372 -0
  840. data/test/TC_FXDCPrint.rb +102 -0
  841. data/test/TC_FXDCWindow.rb +25 -0
  842. data/test/TC_FXDataTarget.rb +24 -0
  843. data/test/TC_FXDialogBox.rb +12 -0
  844. data/test/TC_FXDirList.rb +30 -0
  845. data/test/TC_FXExtentd.rb +21 -0
  846. data/test/TC_FXExtentf.rb +21 -0
  847. data/test/TC_FXFileAssoc.rb +62 -0
  848. data/test/TC_FXFileStream.rb +89 -0
  849. data/test/TC_FXFoldingList.rb +32 -0
  850. data/test/TC_FXFont.rb +69 -0
  851. data/test/TC_FXFontDesc.rb +58 -0
  852. data/test/TC_FXGLGroup.rb +32 -0
  853. data/test/TC_FXGLShape.rb +28 -0
  854. data/test/TC_FXGLViewer.rb +29 -0
  855. data/test/TC_FXGradientBar.rb +89 -0
  856. data/test/TC_FXHeader.rb +82 -0
  857. data/test/TC_FXHiliteStyle.rb +23 -0
  858. data/test/TC_FXIconDict.rb +52 -0
  859. data/test/TC_FXIconList.rb +192 -0
  860. data/test/TC_FXId.rb +19 -0
  861. data/test/TC_FXImage.rb +188 -0
  862. data/test/TC_FXLight.rb +33 -0
  863. data/test/TC_FXList.rb +125 -0
  864. data/test/TC_FXListBox.rb +49 -0
  865. data/test/TC_FXMainWindow.rb +19 -0
  866. data/test/TC_FXMat4f.rb +228 -0
  867. data/test/TC_FXMaterial.rb +75 -0
  868. data/test/TC_FXMemoryStream.rb +97 -0
  869. data/test/TC_FXMenuCheck.rb +57 -0
  870. data/test/TC_FXMenuCommand.rb +12 -0
  871. data/test/TC_FXMenuRadio.rb +57 -0
  872. data/test/TC_FXMessageBox.rb +29 -0
  873. data/test/TC_FXPoint.rb +57 -0
  874. data/test/TC_FXQuatf.rb +93 -0
  875. data/test/TC_FXRadioButton.rb +57 -0
  876. data/test/TC_FXRanged.rb +42 -0
  877. data/test/TC_FXRangef.rb +42 -0
  878. data/test/TC_FXRectangle.rb +88 -0
  879. data/test/TC_FXRegion.rb +54 -0
  880. data/test/TC_FXRegistry.rb +27 -0
  881. data/test/TC_FXScrollArea.rb +32 -0
  882. data/test/TC_FXScrollWindow.rb +28 -0
  883. data/test/TC_FXSegment.rb +22 -0
  884. data/test/TC_FXSettings.rb +34 -0
  885. data/test/TC_FXShell.rb +30 -0
  886. data/test/TC_FXSize.rb +54 -0
  887. data/test/TC_FXStream.rb +11 -0
  888. data/test/TC_FXTable.rb +561 -0
  889. data/test/TC_FXTableItem.rb +48 -0
  890. data/test/TC_FXText.rb +105 -0
  891. data/test/TC_FXTopWindow.rb +36 -0
  892. data/test/TC_FXTreeList.rb +100 -0
  893. data/test/TC_FXTreeListBox.rb +41 -0
  894. data/test/TC_FXUndoList.rb +43 -0
  895. data/test/TC_FXVec2d.rb +142 -0
  896. data/test/TC_FXVec2f.rb +137 -0
  897. data/test/TC_FXVec3d.rb +150 -0
  898. data/test/TC_FXVec3f.rb +150 -0
  899. data/test/TC_FXVec4f.rb +158 -0
  900. data/test/TC_FXViewport.rb +30 -0
  901. data/test/TC_FXXBMIcon.rb +15 -0
  902. data/test/TC_FXXBMImage.rb +15 -0
  903. data/test/TC_FXXPMIcon.rb +15 -0
  904. data/test/TC_FXXPMImage.rb +15 -0
  905. data/test/TC_Misc.rb +161 -0
  906. data/test/TC_downcast.rb +15 -0
  907. data/test/TS_All.rb +9 -0
  908. data/test/blankpage.ps +166 -0
  909. data/test/howdypage.ps +181 -0
  910. data/test/stress1.rb +92 -0
  911. data/test/stress2.rb +51 -0
  912. data/test/stress3.rb +117 -0
  913. data/test/testcase.rb +37 -0
  914. metadata +1134 -0
  915. metadata.gz.sig +0 -0
@@ -0,0 +1,69 @@
1
+ /***********************************************************************
2
+ * FXRuby -- the Ruby language bindings for the FOX GUI toolkit.
3
+ * Copyright (c) 2001-2009 by Lyle Johnson. All Rights Reserved.
4
+ *
5
+ * This library is free software; you can redistribute it and/or
6
+ * modify it under the terms of the GNU Lesser General Public
7
+ * License as published by the Free Software Foundation; either
8
+ * version 2.1 of the License, or (at your option) any later version.
9
+ *
10
+ * This library is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
+ * Lesser General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Lesser General Public
16
+ * License along with this library; if not, write to the Free Software
17
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18
+ *
19
+ * For further information please contact the author by e-mail
20
+ * at "lyle@lylejohnson.name".
21
+ ***********************************************************************/
22
+
23
+
24
+ /**
25
+ * Vertical frame layout manager widget is used to automatically
26
+ * place child-windows vertically from top-to-bottom, or bottom-to-top,
27
+ * depending on the child window's layout hints.
28
+ */
29
+ class FXVerticalFrame : public FXPacker {
30
+ protected:
31
+ FXVerticalFrame(){}
32
+ public:
33
+
34
+ /// Construct a vertical frame layout manager
35
+ %extend {
36
+ FXVerticalFrame(FXComposite *p,FXuint opts=0,FXint x=0,FXint y=0,FXint w=0,FXint h=0,FXint pl=DEFAULT_SPACING,FXint pr=DEFAULT_SPACING,FXint pt=DEFAULT_SPACING,FXint pb=DEFAULT_SPACING,FXint hs=DEFAULT_SPACING,FXint vs=DEFAULT_SPACING){
37
+ return new FXRbVerticalFrame(p,opts,x,y,w,h,pl,pr,pt,pb,hs,vs);
38
+ }
39
+ }
40
+
41
+ /// Destructor
42
+ virtual ~FXVerticalFrame();
43
+ };
44
+
45
+
46
+ DECLARE_FXOBJECT_VIRTUALS(FXVerticalFrame)
47
+ DECLARE_FXID_VIRTUALS(FXVerticalFrame)
48
+ DECLARE_FXDRAWABLE_VIRTUALS(FXVerticalFrame)
49
+ DECLARE_FXWINDOW_VIRTUALS(FXVerticalFrame)
50
+
51
+ %{
52
+ static swig_type_info *FXVerticalFrame_dynamic_cast(void **ptr) {
53
+ FXVerticalFrame **ppVerticalFrame = reinterpret_cast<FXVerticalFrame **>(ptr);
54
+ FXShutter *pShutter=dynamic_cast<FXShutter*>(*ppVerticalFrame);
55
+ if(pShutter){
56
+ *ptr=reinterpret_cast<void*>(pShutter);
57
+ return SWIG_TypeQuery("FXShutter *");
58
+ }
59
+ FXShutterItem *pShutterItem=dynamic_cast<FXShutterItem*>(*ppVerticalFrame);
60
+ if(pShutterItem){
61
+ *ptr=reinterpret_cast<void*>(pShutterItem);
62
+ return SWIG_TypeQuery("FXShutterItem *");
63
+ }
64
+ return 0;
65
+ }
66
+ %}
67
+
68
+ DYNAMIC_CAST(SWIGTYPE_p_FXVerticalFrame, FXVerticalFrame_dynamic_cast);
69
+
@@ -0,0 +1,162 @@
1
+ /***********************************************************************
2
+ * FXRuby -- the Ruby language bindings for the FOX GUI toolkit.
3
+ * Copyright (c) 2001-2009 by Lyle Johnson. All Rights Reserved.
4
+ *
5
+ * This library is free software; you can redistribute it and/or
6
+ * modify it under the terms of the GNU Lesser General Public
7
+ * License as published by the Free Software Foundation; either
8
+ * version 2.1 of the License, or (at your option) any later version.
9
+ *
10
+ * This library is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
+ * Lesser General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Lesser General Public
16
+ * License along with this library; if not, write to the Free Software
17
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18
+ *
19
+ * For further information please contact the author by e-mail
20
+ * at "lyle@lylejohnson.name".
21
+ ***********************************************************************/
22
+
23
+ /// Construction options for FXVisual class
24
+ enum FXVisualOptions {
25
+ VISUAL_DEFAULT = 0, /// Default visual
26
+ VISUAL_MONOCHROME = 1, /// Must be monochrome visual
27
+ VISUAL_BEST = 2, /// Best (deepest) visual
28
+ VISUAL_INDEXCOLOR = 4, /// Palette visual
29
+ VISUAL_GRAYSCALE = 8, /// Gray scale visual
30
+ VISUAL_TRUECOLOR = 16, /// Must be true color visual
31
+ VISUAL_OWNCOLORMAP = 32, /// Allocate private colormap
32
+ VISUAL_DOUBLEBUFFER = 64, /// Double-buffered [FXGLVisual]
33
+ VISUAL_STEREO = 128, /// Stereo [FXGLVisual]
34
+ VISUAL_NOACCEL = 256, /// No hardware acceleration [for broken h/w]
35
+ VISUAL_SWAP_COPY = 512 /// Buffer swap by copying [FXGLVisual]
36
+ };
37
+
38
+
39
+ /// Visual type
40
+ enum FXVisualType {
41
+ VISUALTYPE_UNKNOWN, /// Undetermined visual type
42
+ VISUALTYPE_MONO, /// Visual for drawing into 1-bpp surfaces
43
+ VISUALTYPE_TRUE, /// True color
44
+ VISUALTYPE_INDEX, /// Index [palette] color
45
+ VISUALTYPE_GRAY /// Gray scale
46
+ };
47
+
48
+ %rename("visualType") FXVisual::getType() const;
49
+
50
+ %ignore FXVisual::getInfo() const;
51
+ %ignore FXVisual::getVisual() const;
52
+
53
+ /// Visual describes pixel format of a drawable
54
+ class FXVisual : public FXId {
55
+ protected:
56
+ FXuint flags; // Visual flags
57
+ FXuint hint; // Depth Hint
58
+ FXuint depth; // Visual depth, significant bits/pixel
59
+ FXuint numred; // Number of reds
60
+ FXuint numgreen; // Number of greens
61
+ FXuint numblue; // Number of blues
62
+ FXuint numcolors; // Total number of colors
63
+ FXuint maxcolors; // Maximum number of colors
64
+ FXVisualType type; // Visual type
65
+ void *info; // Opaque data
66
+ FXID colormap; // Color map, if any
67
+ FXbool freemap; // We allocated the map
68
+ #ifndef WIN32
69
+ protected:
70
+ void *visual; // Application visual [Visual]
71
+ void* gc; // Drawing GC
72
+ void* scrollgc; // Scrolling GC
73
+ FXPixel rpix[16][256]; // Mapping from red -> pixel
74
+ FXPixel gpix[16][256]; // Mapping from green -> pixel
75
+ FXPixel bpix[16][256]; // Mapping from blue -> pixel
76
+ FXPixel lut[256]; // Color lookup table
77
+ protected:
78
+ void* setupgc(FXbool);
79
+ void setuptruecolor();
80
+ void setupdirectcolor();
81
+ void setuppseudocolor();
82
+ void setupstaticcolor();
83
+ void setupgrayscale();
84
+ void setupstaticgray();
85
+ void setuppixmapmono();
86
+ void setupcolormap();
87
+ #else
88
+ protected:
89
+ int pixelformat; // PIXELFORMAT number
90
+ #endif
91
+ protected:
92
+ FXVisual();
93
+ public:
94
+
95
+ /// Construct default visual
96
+ %extend {
97
+ FXVisual(FXApp* a,FXuint flgs,FXuint d=32){
98
+ return new FXRbVisual(a,flgs,d);
99
+ }
100
+ }
101
+
102
+ /// Get visual type
103
+ FXVisualType getType() const;
104
+
105
+ /// Get visual info
106
+ void* getInfo() const;
107
+
108
+ /// Get visual or pixel format
109
+ void* getVisual() const;
110
+
111
+ /// Get flags (see FXVisualOptions)
112
+ FXuint getFlags() const;
113
+
114
+ /// Get depth, i.e. number of significant bits in color representation
115
+ FXuint getDepth() const;
116
+
117
+ /// Get number of colors
118
+ FXuint getNumColors() const;
119
+
120
+ /// Get number of reds
121
+ FXuint getNumRed() const;
122
+
123
+ /// Get number of greens
124
+ FXuint getNumGreen() const;
125
+
126
+ /// Get number of blues
127
+ FXuint getNumBlue() const;
128
+
129
+ /// Get device pixel value for color
130
+ FXPixel getPixel(FXColor clr);
131
+
132
+ /// Get color value for device pixel value
133
+ FXColor getColor(FXPixel pix);
134
+
135
+ /// Set maximum number of colors to allocate
136
+ void setMaxColors(FXuint maxcols);
137
+
138
+ /// Get maximum number of colors
139
+ FXuint getMaxColors() const;
140
+
141
+ /// Destructor
142
+ virtual ~FXVisual();
143
+ };
144
+
145
+
146
+ DECLARE_FXOBJECT_VIRTUALS(FXVisual)
147
+ DECLARE_FXID_VIRTUALS(FXVisual)
148
+
149
+ %{
150
+ static swig_type_info *FXVisual_dynamic_cast(void **ptr) {
151
+ FXVisual **ppVisual = reinterpret_cast<FXVisual **>(ptr);
152
+ FXGLVisual *pGLVisual=dynamic_cast<FXGLVisual*>(*ppVisual);
153
+ if(pGLVisual){
154
+ *ptr=reinterpret_cast<void*>(pGLVisual);
155
+ return SWIG_TypeQuery("FXGLVisual *");
156
+ }
157
+ return 0;
158
+ }
159
+ %}
160
+
161
+ DYNAMIC_CAST(SWIGTYPE_p_FXVisual, FXVisual_dynamic_cast);
162
+
@@ -0,0 +1,851 @@
1
+ /***********************************************************************
2
+ * FXRuby -- the Ruby language bindings for the FOX GUI toolkit.
3
+ * Copyright (c) 2001-2009 by Lyle Johnson. All Rights Reserved.
4
+ *
5
+ * This library is free software; you can redistribute it and/or
6
+ * modify it under the terms of the GNU Lesser General Public
7
+ * License as published by the Free Software Foundation; either
8
+ * version 2.1 of the License, or (at your option) any later version.
9
+ *
10
+ * This library is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13
+ * Lesser General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU Lesser General Public
16
+ * License along with this library; if not, write to the Free Software
17
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18
+ *
19
+ * For further information please contact the author by e-mail
20
+ * at "lyle@lylejohnson.name".
21
+ ***********************************************************************/
22
+
23
+ /// Layout hints for child widgets
24
+ enum {
25
+ LAYOUT_NORMAL = 0, /// Default layout mode
26
+ LAYOUT_SIDE_TOP = 0, /// Pack on top side (default)
27
+ LAYOUT_SIDE_BOTTOM = 0x00000001, /// Pack on bottom side
28
+ LAYOUT_SIDE_LEFT = 0x00000002, /// Pack on left side
29
+ LAYOUT_SIDE_RIGHT = LAYOUT_SIDE_LEFT|LAYOUT_SIDE_BOTTOM, /// Pack on right side
30
+ LAYOUT_FILL_COLUMN = 0x00000001, /// Matrix column is stretchable
31
+ LAYOUT_FILL_ROW = 0x00000002, /// Matrix row is stretchable
32
+ LAYOUT_LEFT = 0, /// Stick on left (default)
33
+ LAYOUT_RIGHT = 0x00000004, /// Stick on right
34
+ LAYOUT_CENTER_X = 0x00000008, /// Center horizontally
35
+ LAYOUT_FIX_X = LAYOUT_RIGHT|LAYOUT_CENTER_X, /// X fixed
36
+ LAYOUT_TOP = 0, /// Stick on top (default)
37
+ LAYOUT_BOTTOM = 0x00000010, /// Stick on bottom
38
+ LAYOUT_CENTER_Y = 0x00000020, /// Center vertically
39
+ LAYOUT_FIX_Y = LAYOUT_BOTTOM|LAYOUT_CENTER_Y, /// Y fixed
40
+ LAYOUT_DOCK_SAME = 0, /// Dock on same galley if it fits
41
+ LAYOUT_DOCK_NEXT = 0x00000040, /// Dock on next galley
42
+ LAYOUT_RESERVED_1 = 0x00000080,
43
+ LAYOUT_FIX_WIDTH = 0x00000100, /// Width fixed
44
+ LAYOUT_FIX_HEIGHT = 0x00000200, /// height fixed
45
+ LAYOUT_MIN_WIDTH = 0, /// Minimum width is the default
46
+ LAYOUT_MIN_HEIGHT = 0, /// Minimum height is the default
47
+ LAYOUT_FILL_X = 0x00000400, /// Stretch or shrink horizontally
48
+ LAYOUT_FILL_Y = 0x00000800, /// Stretch or shrink vertically
49
+ LAYOUT_FILL = LAYOUT_FILL_X|LAYOUT_FILL_Y, /// Stretch or shrink in both directions
50
+ LAYOUT_EXPLICIT = LAYOUT_FIX_X|LAYOUT_FIX_Y|LAYOUT_FIX_WIDTH|LAYOUT_FIX_HEIGHT /// Explicit placement
51
+ };
52
+
53
+
54
+ /// Frame border appearance styles (for subclasses)
55
+ enum {
56
+ FRAME_NONE = 0, /// Default is no frame
57
+ FRAME_SUNKEN = 0x00001000, /// Sunken border
58
+ FRAME_RAISED = 0x00002000, /// Raised border
59
+ FRAME_THICK = 0x00004000, /// Thick border
60
+ FRAME_GROOVE = FRAME_THICK, /// A groove or etched-in border
61
+ FRAME_RIDGE = FRAME_THICK|FRAME_RAISED|FRAME_SUNKEN, /// A ridge or embossed border
62
+ FRAME_LINE = FRAME_RAISED|FRAME_SUNKEN, /// Simple line border
63
+ FRAME_NORMAL = FRAME_SUNKEN|FRAME_THICK /// Regular raised/thick border
64
+ };
65
+
66
+
67
+ /// Packing style (for packers)
68
+ enum {
69
+ PACK_NORMAL = 0, /// Default is each its own size
70
+ PACK_UNIFORM_HEIGHT = 0x00008000, /// Uniform height
71
+ PACK_UNIFORM_WIDTH = 0x00010000 /// Uniform width
72
+ };
73
+
74
+ class FXCursor;
75
+ class FXAccelTable;
76
+ class FXComposite;
77
+
78
+
79
+ %typemap(check) FXint CHILD_WINDOW_INDEX {
80
+ if ($1 < 0 || $1 >= arg1->numChildren()) {
81
+ rb_raise(rb_eIndexError, "child window index out of bounds");
82
+ }
83
+ }
84
+
85
+ %apply FXint CHILD_WINDOW_INDEX { FXint index };
86
+
87
+ %rename("windowCount") FXWindow::getWindowCount() const;
88
+ %rename("before?") FXWindow::before(const FXWindow *a,const FXWindow* b);
89
+ %rename("before?") FXWindow::before(const FXWindow* b);
90
+ %rename("after?") FXWindow::after(const FXWindow *a,const FXWindow* b);
91
+ %rename("after?") FXWindow::after(const FXWindow* b);
92
+ %rename("composeContext") FXWindow::getComposeContext() const;
93
+ %rename("inFocusChain?") FXWindow::inFocusChain() const;
94
+
95
+ %alias FXWindow::shown() const "visible?";
96
+
97
+ %ignore FXWindow::setDNDData(FXDNDOrigin origin,FXDragType type,const FXString& string) const;
98
+ %ignore FXWindow::getDNDData(FXDNDOrigin origin,FXDragType type,FXString& string) const;
99
+
100
+ /// Base class for all windows
101
+ class FXWindow : public FXDrawable {
102
+ protected:
103
+ FXComposeContext *composeContext; // Compose context
104
+ FXCursor *defaultCursor; // Normal Cursor
105
+ FXCursor *dragCursor; // Cursor during drag
106
+ FXAccelTable *accelTable; // Accelerator table
107
+ FXObject *target; // Target object
108
+ FXSelector message; // Message ID
109
+ FXint xpos; // Window X Position
110
+ FXint ypos; // Window Y Position
111
+ FXColor backColor; // Window background color
112
+ FXString tag; // Help tag
113
+ FXuint flags; // Window state flags
114
+ FXuint options; // Window options
115
+ public:
116
+
117
+ // Common DND types
118
+ static FXDragType octetType; // Raw octet stream
119
+ static FXDragType deleteType; // Delete request
120
+ static FXDragType textType; // Ascii text request
121
+ static FXDragType utf8Type; // UTF-8 text request
122
+ static FXDragType utf16Type; // UTF-16 text request
123
+ static FXDragType colorType; // Color
124
+ static FXDragType urilistType; // URI List
125
+ static const FXDragType stringType; // Clipboard text type (pre-registered)
126
+ static const FXDragType imageType; // Clipboard image type (pre-registered)
127
+
128
+ protected:
129
+ FXWindow();
130
+ FXWindow(FXApp* a,FXVisual *vis);
131
+ FXWindow(FXApp* a,FXWindow* own,FXuint opts,FXint x,FXint y,FXint w,FXint h);
132
+ static FXWindow* findDefault(FXWindow* window);
133
+ static FXWindow* findInitial(FXWindow* window);
134
+ virtual FXbool doesOverrideRedirect() const;
135
+
136
+ protected:
137
+
138
+ // Window state flags
139
+ enum {
140
+ FLAG_SHOWN = 0x00000001, // Is shown
141
+ FLAG_ENABLED = 0x00000002, // Able to receive input
142
+ FLAG_UPDATE = 0x00000004, // Is subject to GUI update
143
+ FLAG_DROPTARGET = 0x00000008, // Drop target
144
+ FLAG_FOCUSED = 0x00000010, // Has focus
145
+ FLAG_DIRTY = 0x00000020, // Needs layout
146
+ FLAG_RECALC = 0x00000040, // Needs recalculation
147
+ FLAG_TIP = 0x00000080, // Show tip
148
+ FLAG_HELP = 0x00000100, // Show help
149
+ FLAG_DEFAULT = 0x00000200, // Default widget
150
+ FLAG_INITIAL = 0x00000400, // Initial widget
151
+ FLAG_SHELL = 0x00000800, // Shell window
152
+ FLAG_ACTIVE = 0x00001000, // Window is active
153
+ FLAG_PRESSED = 0x00002000, // Button has been pressed
154
+ FLAG_KEY = 0x00004000, // Keyboard key pressed
155
+ FLAG_CARET = 0x00008000, // Caret is on
156
+ FLAG_CHANGED = 0x00010000, // Window data changed
157
+ FLAG_LASSO = 0x00020000, // Lasso mode
158
+ FLAG_TRYDRAG = 0x00040000, // Tentative drag mode
159
+ FLAG_DODRAG = 0x00080000, // Doing drag mode
160
+ FLAG_SCROLLINSIDE = 0x00100000, // Scroll only when inside
161
+ FLAG_SCROLLING = 0x00200000, // Right mouse scrolling
162
+ FLAG_OWNED = 0x00400000
163
+ };
164
+
165
+ public:
166
+
167
+ // Message handlers
168
+ long onPaint(FXObject*,FXSelector,void* PTR_EVENT);
169
+ long onMap(FXObject*,FXSelector,void* PTR_EVENT);
170
+ long onUnmap(FXObject*,FXSelector,void* PTR_EVENT);
171
+ long onConfigure(FXObject*,FXSelector,void* PTR_EVENT);
172
+ long onUpdate(FXObject*,FXSelector,void* PTR_NULL);
173
+ long onMotion(FXObject*,FXSelector,void* PTR_EVENT);
174
+ long onMouseWheel(FXObject*,FXSelector,void* PTR_EVENT);
175
+ long onEnter(FXObject*,FXSelector,void* PTR_EVENT);
176
+ long onLeave(FXObject*,FXSelector,void* PTR_EVENT);
177
+ long onLeftBtnPress(FXObject*,FXSelector,void* PTR_EVENT);
178
+ long onLeftBtnRelease(FXObject*,FXSelector,void* PTR_EVENT);
179
+ long onMiddleBtnPress(FXObject*,FXSelector,void* PTR_EVENT);
180
+ long onMiddleBtnRelease(FXObject*,FXSelector,void* PTR_EVENT);
181
+ long onRightBtnPress(FXObject*,FXSelector,void* PTR_EVENT);
182
+ long onRightBtnRelease(FXObject*,FXSelector,void* PTR_EVENT);
183
+ long onBeginDrag(FXObject*,FXSelector,void* PTR_EVENT);
184
+ long onEndDrag(FXObject*,FXSelector,void* PTR_EVENT);
185
+ long onDragged(FXObject*,FXSelector,void* PTR_EVENT);
186
+ long onKeyPress(FXObject*,FXSelector,void* PTR_EVENT);
187
+ long onKeyRelease(FXObject*,FXSelector,void* PTR_EVENT);
188
+ long onUngrabbed(FXObject*,FXSelector,void* PTR_EVENT);
189
+ long onDestroy(FXObject*,FXSelector,void* PTR_IGNORE);
190
+ long onFocusSelf(FXObject*,FXSelector,void* PTR_IGNORE);
191
+ long onFocusIn(FXObject*,FXSelector,void* PTR_EVENT);
192
+ long onFocusOut(FXObject*,FXSelector,void* PTR_EVENT);
193
+ long onSelectionLost(FXObject*,FXSelector,void* PTR_EVENT);
194
+ long onSelectionGained(FXObject*,FXSelector,void* PTR_EVENT);
195
+ long onSelectionRequest(FXObject*,FXSelector,void* PTR_EVENT);
196
+ long onClipboardLost(FXObject*,FXSelector,void* PTR_EVENT);
197
+ long onClipboardGained(FXObject*,FXSelector,void* PTR_EVENT);
198
+ long onClipboardRequest(FXObject*,FXSelector,void* PTR_EVENT);
199
+ long onDNDEnter(FXObject*,FXSelector,void* PTR_EVENT);
200
+ long onDNDLeave(FXObject*,FXSelector,void* PTR_EVENT);
201
+ long onDNDMotion(FXObject*,FXSelector,void* PTR_EVENT);
202
+ long onDNDDrop(FXObject*,FXSelector,void* PTR_EVENT);
203
+ long onDNDRequest(FXObject*,FXSelector,void* PTR_EVENT);
204
+ long onQueryHelp(FXObject*,FXSelector,void* PTR_EVENT); // FIXME
205
+ long onQueryTip(FXObject*,FXSelector,void* PTR_EVENT); // FIXME
206
+ long onCmdShow(FXObject*,FXSelector,void* PTR_IGNORE);
207
+ long onCmdHide(FXObject*,FXSelector,void* PTR_IGNORE);
208
+ long onUpdToggleShown(FXObject*,FXSelector,void* PTR_IGNORE);
209
+ long onCmdToggleShown(FXObject*,FXSelector,void* PTR_IGNORE);
210
+ long onCmdRaise(FXObject*,FXSelector,void* PTR_IGNORE);
211
+ long onCmdLower(FXObject*,FXSelector,void* PTR_IGNORE);
212
+ long onCmdEnable(FXObject*,FXSelector,void* PTR_IGNORE);
213
+ long onCmdDisable(FXObject*,FXSelector,void* PTR_IGNORE);
214
+ long onUpdToggleEnabled(FXObject*,FXSelector,void* PTR_IGNORE);
215
+ long onCmdToggleEnabled(FXObject*,FXSelector,void* PTR_IGNORE);
216
+ long onCmdUpdate(FXObject*,FXSelector,void* PTR_IGNORE);
217
+ long onUpdYes(FXObject*,FXSelector,void* PTR_IGNORE);
218
+ long onCmdDelete(FXObject*,FXSelector,void* PTR_IGNORE);
219
+
220
+ public:
221
+
222
+ // Message ID's common to most Windows
223
+ enum {
224
+ ID_NONE,
225
+ ID_HIDE, // ID_HIDE+FALSE
226
+ ID_SHOW, // ID_HIDE+TRUE
227
+ ID_TOGGLESHOWN,
228
+ ID_LOWER,
229
+ ID_RAISE,
230
+ ID_DELETE,
231
+ ID_DISABLE, // ID_DISABLE+FALSE
232
+ ID_ENABLE, // ID_DISABLE+TRUE
233
+ ID_TOGGLEENABLED,
234
+ ID_UNCHECK, // ID_UNCHECK+FALSE
235
+ ID_CHECK, // ID_UNCHECK+TRUE
236
+ ID_UNKNOWN, // ID_UNCHECK+MAYBE
237
+ ID_UPDATE,
238
+ ID_AUTOSCROLL,
239
+ ID_TIPTIMER,
240
+ ID_HSCROLLED,
241
+ ID_VSCROLLED,
242
+ ID_SETVALUE,
243
+ ID_SETINTVALUE,
244
+ ID_SETREALVALUE,
245
+ ID_SETSTRINGVALUE,
246
+ ID_SETICONVALUE,
247
+ ID_SETINTRANGE,
248
+ ID_SETREALRANGE,
249
+ ID_GETINTVALUE,
250
+ ID_GETREALVALUE,
251
+ ID_GETSTRINGVALUE,
252
+ ID_GETICONVALUE,
253
+ ID_GETINTRANGE,
254
+ ID_GETREALRANGE,
255
+ ID_SETHELPSTRING,
256
+ ID_GETHELPSTRING,
257
+ ID_SETTIPSTRING,
258
+ ID_GETTIPSTRING,
259
+ ID_QUERY_MENU,
260
+ ID_HOTKEY,
261
+ ID_ACCEL,
262
+ ID_UNPOST,
263
+ ID_POST,
264
+ ID_MDI_TILEHORIZONTAL,
265
+ ID_MDI_TILEVERTICAL,
266
+ ID_MDI_CASCADE,
267
+ ID_MDI_MAXIMIZE,
268
+ ID_MDI_MINIMIZE,
269
+ ID_MDI_RESTORE,
270
+ ID_MDI_CLOSE,
271
+ ID_MDI_WINDOW,
272
+ ID_MDI_MENUWINDOW,
273
+ ID_MDI_MENUMINIMIZE,
274
+ ID_MDI_MENURESTORE,
275
+ ID_MDI_MENUCLOSE,
276
+ ID_MDI_NEXT,
277
+ ID_MDI_PREV,
278
+ ID_LAST
279
+ };
280
+
281
+ public:
282
+
283
+ // Common DND type names
284
+ %extend {
285
+ static VALUE octetTypeName() {
286
+ return to_ruby(FXWindow::octetTypeName);
287
+ }
288
+
289
+ static VALUE deleteTypeName() {
290
+ return to_ruby(FXWindow::deleteTypeName);
291
+ }
292
+
293
+ static VALUE textTypeName() {
294
+ return to_ruby(FXWindow::textTypeName);
295
+ }
296
+
297
+ static VALUE colorTypeName() {
298
+ return to_ruby(FXWindow::colorTypeName);
299
+ }
300
+
301
+ static VALUE urilistTypeName() {
302
+ return to_ruby(FXWindow::urilistTypeName);
303
+ }
304
+
305
+ static VALUE utf8TypeName() {
306
+ return to_ruby(FXWindow::utf8TypeName);
307
+ }
308
+
309
+ static VALUE utf16TypeName() {
310
+ return to_ruby(FXWindow::utf16TypeName);
311
+ }
312
+ }
313
+
314
+ public:
315
+
316
+ /// Constructor
317
+ %extend {
318
+ // Construct as a child of some other window
319
+ FXWindow(FXComposite* p,FXuint opts=0,FXint x=0,FXint y=0,FXint w=0,FXint h=0){
320
+ return new FXRbWindow(p,opts,x,y,w,h);
321
+ }
322
+
323
+ // Shell window constructor
324
+ FXWindow(FXApp* a,FXVisual *vis){
325
+ return new FXRbWindow(a,vis);
326
+ }
327
+
328
+ // Construct owned window
329
+ FXWindow(FXApp* a,FXWindow* own,FXuint opts,FXint x,FXint y,FXint w,FXint h){
330
+ return new FXRbWindow(a,own,opts,x,y,w,h);
331
+ }
332
+ }
333
+
334
+ /// Return a pointer to the parent window
335
+ FXWindow* getParent() const;
336
+
337
+ /// Return a pointer to the owner window
338
+ FXWindow* getOwner() const;
339
+
340
+ /// Return a pointer to the shell window
341
+ FXWindow* getShell() const;
342
+
343
+ /// Return a pointer to the root window
344
+ FXWindow* getRoot() const;
345
+
346
+ /// Return a pointer to the next (sibling) window, if any
347
+ FXWindow* getNext() const;
348
+
349
+ /// Return a pointer to the previous (sibling) window , if any
350
+ FXWindow* getPrev() const;
351
+
352
+ /// Return a pointer to this window's first child window , if any
353
+ FXWindow* getFirst() const;
354
+
355
+ /// Return a pointer to this window's last child window, if any
356
+ FXWindow* getLast() const;
357
+
358
+ /// Return a pointer to the currently focused child window
359
+ FXWindow* getFocus() const;
360
+
361
+ /// Change window key
362
+ void setKey(FXuint k);
363
+
364
+ /// Return window key
365
+ FXuint getKey() const;
366
+
367
+ /// Set the message target object for this window
368
+ void setTarget(FXObject *t);
369
+
370
+ /// Get the message target object for this window, if any
371
+ FXObject* getTarget() const;
372
+
373
+ /// Set the message identifier for this window
374
+ void setSelector(FXSelector sel);
375
+
376
+ /// Get the message identifier for this window
377
+ FXSelector getSelector() const;
378
+
379
+ /// Get this window's x-coordinate, in the parent's coordinate system
380
+ FXint getX() const;
381
+
382
+ /// Get this window's y-coordinate, in the parent's coordinate system
383
+ FXint getY() const;
384
+
385
+ /// Set this window's x-coordinate, in the parent's coordinate system
386
+ void setX(FXint x);
387
+
388
+ /// Set this window's y-coordinate, in the parent's coordinate system
389
+ void setY(FXint y);
390
+
391
+ /**
392
+ * Set the window width; and flag the widget as being in need of
393
+ * layout by its parent. This does not immediately update the server-
394
+ * side representation of the widget.
395
+ */
396
+ void setWidth(FXint w);
397
+
398
+ /**
399
+ * Set the window height; and flag the widget as being in need of
400
+ * layout by its parent. This does not immediately update the server-
401
+ * side representation of the widget.
402
+ */
403
+ void setHeight(FXint h);
404
+
405
+ /// Set layout hints for this window
406
+ void setLayoutHints(FXuint lout);
407
+
408
+ /// Get layout hints for this window
409
+ FXuint getLayoutHints() const;
410
+
411
+ /// Return a pointer to the accelerator table
412
+ FXAccelTable* getAccelTable() const;
413
+
414
+ /// Set the accelerator table
415
+ void setAccelTable(FXAccelTable* acceltable);
416
+
417
+ /// Add a hot key
418
+ void addHotKey(FXHotKey code);
419
+
420
+ /// Remove a hot key
421
+ void remHotKey(FXHotKey code);
422
+
423
+ /// Change help tag for this widget
424
+ void setHelpTag(const FXString& text);
425
+
426
+ /// Get the help tag for this widget
427
+ const FXString& getHelpTag() const;
428
+
429
+ /// Return true if window is a shell window
430
+ bool isShell() const;
431
+
432
+ /// Return true if specified window is owned by this window
433
+ bool isOwnerOf(const FXWindow* window) const;
434
+
435
+ /// Return true if specified window is ancestor of this window.
436
+ bool isChildOf(const FXWindow* window) const;
437
+
438
+ /// Return true if this window contains child in its subtree.
439
+ bool containsChild(const FXWindow* child) const;
440
+
441
+ /// Return the child window at specified coordinates
442
+ FXWindow* getChildAt(FXint x,FXint y) const;
443
+
444
+ /// Return the number of child windows for this window
445
+ FXint numChildren() const;
446
+
447
+ /**
448
+ * Return the index (starting from zero) of the specified child window,
449
+ * or -1 if the window is not a child or NULL
450
+ */
451
+ FXint indexOfChild(const FXWindow *window) const;
452
+
453
+ %extend {
454
+ // Remove specified child window
455
+ FXbool removeChild(FXWindow* child){
456
+ if(self->containsChild(child)){
457
+ delete child;
458
+ return TRUE;
459
+ }
460
+ else{
461
+ return FALSE;
462
+ }
463
+ }
464
+ }
465
+
466
+ /**
467
+ * Return the child window at specified index,
468
+ * or NULL if the index is negative or out of range
469
+ */
470
+ FXWindow* childAtIndex(FXint index) const;
471
+
472
+ /// Return the common ancestor of window a and window b
473
+ static FXWindow* commonAncestor(FXWindow* a,FXWindow* b);
474
+
475
+ /// Return TRUE if sibling a <= sibling b in list
476
+ static bool before(const FXWindow *a,const FXWindow* b);
477
+
478
+ /// Return TRUE if sibling a >= sibling b in list
479
+ static bool after(const FXWindow *a,const FXWindow* b);
480
+
481
+ %extend {
482
+ bool before(const FXWindow *other) const { return FXWindow::before(self, other); }
483
+ bool after(const FXWindow *other) const { return FXWindow::after(self, other); }
484
+ }
485
+
486
+ /// Return compose context
487
+ FXComposeContext* getComposeContext() const;
488
+
489
+ /// Create compose context
490
+ void createComposeContext();
491
+
492
+ /// Destroy compose context
493
+ void destroyComposeContext();
494
+
495
+ /// Set the default cursor for this window
496
+ void setDefaultCursor(FXCursor* cur);
497
+
498
+ /// Return the default cursor for this window
499
+ FXCursor* getDefaultCursor() const;
500
+
501
+ /// Set the drag cursor for this window
502
+ void setDragCursor(FXCursor* cur);
503
+
504
+ /// Return the drag cursor for this window
505
+ FXCursor* getDragCursor() const;
506
+
507
+ %extend {
508
+ /// Return the cursor position and mouse button-state
509
+ VALUE getCursorPosition() const {
510
+ FXint x, y;
511
+ FXuint buttons;
512
+ self->getCursorPosition(x, y, buttons);
513
+ VALUE arr = rb_ary_new();
514
+ rb_ary_push(arr, INT2NUM(x));
515
+ rb_ary_push(arr, INT2NUM(y));
516
+ rb_ary_push(arr, UINT2NUM(buttons));
517
+ return arr;
518
+ }
519
+ }
520
+
521
+ /// Warp the cursor to the new position
522
+ FXint setCursorPosition(FXint x,FXint y);
523
+
524
+ /// Return true if this window is able to receive mouse and keyboard events
525
+ bool isEnabled() const;
526
+
527
+ /// Return true if the window is active
528
+ bool isActive() const;
529
+
530
+ /// Return true if this window has the focus
531
+ bool hasFocus() const;
532
+
533
+ /// Return true if this window is in focus chain
534
+ bool inFocusChain() const;
535
+
536
+ /// Return true if this is the default window
537
+ bool isDefault() const;
538
+
539
+ /// Make this window the initial default window
540
+ void setInitial(bool enable=true);
541
+
542
+ /// Return true if this is the initial default window
543
+ bool isInitial() const;
544
+
545
+ /// Generate a SEL_UPDATE message for the window and its children
546
+ void forceRefresh();
547
+
548
+ /// Scroll rectangle x,y,w,h by a shift of dx,dy
549
+ void scroll(FXint x,FXint y,FXint w,FXint h,FXint dx,FXint dy) const;
550
+
551
+ /// Mark the specified rectangle to be repainted later
552
+ void update(FXint x,FXint y,FXint w,FXint h) const;
553
+
554
+ /// Mark the entire window to be repainted later
555
+ void update() const;
556
+
557
+ /// Process any outstanding repaint messages immediately, for the given rectangle
558
+ void repaint(FXint x,FXint y,FXint w,FXint h) const;
559
+
560
+ /// If marked but not yet painted, paint the window now
561
+ void repaint() const;
562
+
563
+ /**
564
+ * Grab the mouse to this window; future mouse events will be
565
+ * reported to this window even while the cursor goes outside of this window
566
+ */
567
+ void grab();
568
+
569
+ /// Release the mouse grab
570
+ void ungrab();
571
+
572
+ /// Return true if the window has been grabbed
573
+ bool grabbed() const;
574
+
575
+ /// Grab keyboard device
576
+ void grabKeyboard();
577
+
578
+ /// Ungrab keyboard device
579
+ void ungrabKeyboard();
580
+
581
+ /// Return true if active grab is in effect
582
+ bool grabbedKeyboard() const;
583
+
584
+ /// Return true if the window is shown
585
+ bool shown() const;
586
+
587
+ /// Return true if the window is under the cursor
588
+ bool underCursor() const;
589
+
590
+ /// Return true if this window owns the primary selection
591
+ bool hasSelection() const;
592
+
593
+ %extend {
594
+ /// Try to acquire the primary selection, given a list of drag types
595
+ bool acquireSelection(VALUE typesArray){
596
+ Check_Type(typesArray,T_ARRAY);
597
+ FXDragType *types=0;
598
+ FXuint numtypes=RARRAY_LEN(typesArray);
599
+ if(numtypes>0){
600
+ types=new FXDragType[numtypes];
601
+ for(FXuint i=0;i<numtypes;i++){
602
+ types[i]=(FXDragType) NUM2USHRT(rb_ary_entry(typesArray,i));
603
+ }
604
+ }
605
+ bool result=self->acquireSelection(types,numtypes);
606
+ delete [] types;
607
+ return result;
608
+ }
609
+ }
610
+
611
+ /// Release the primary selection
612
+ bool releaseSelection();
613
+
614
+ /// Return true if this window owns the clipboard
615
+ bool hasClipboard() const;
616
+
617
+ %extend {
618
+ /// Try to acquire the clipboard, given a list of drag types
619
+ bool acquireClipboard(VALUE typesArray){
620
+ Check_Type(typesArray,T_ARRAY);
621
+ FXDragType *types=0;
622
+ FXuint numtypes=RARRAY_LEN(typesArray);
623
+ if(numtypes>0){
624
+ types=new FXDragType[numtypes];
625
+ for(FXuint i=0;i<numtypes;i++){
626
+ types[i]=(FXDragType) NUM2USHRT(rb_ary_entry(typesArray,i));
627
+ }
628
+ }
629
+ bool result=self->acquireClipboard(types,numtypes);
630
+ delete [] types;
631
+ return result;
632
+ }
633
+ }
634
+
635
+ /// Release the clipboard
636
+ bool releaseClipboard();
637
+
638
+ /// Return true if this window is able to receive drops
639
+ bool isDropEnabled() const;
640
+
641
+ /// Return true if a drag operaion has been initiated from this window
642
+ bool isDragging() const;
643
+
644
+ %extend {
645
+ /// Initiate a drag operation with a list of previously registered drag types
646
+ bool beginDrag(VALUE typesArray){
647
+ Check_Type(typesArray,T_ARRAY);
648
+ FXDragType *types=0;
649
+ FXuint numtypes=RARRAY_LEN(typesArray);
650
+ if(numtypes>0){
651
+ types=new FXDragType[numtypes];
652
+ for(FXuint i=0;i<numtypes;i++){
653
+ types[i]=(FXDragType) NUM2USHRT(rb_ary_entry(typesArray,i));
654
+ }
655
+ }
656
+ bool result=self->beginDrag(types,numtypes);
657
+ delete [] types;
658
+ return result;
659
+ }
660
+ }
661
+
662
+ /**
663
+ * When dragging, inform the drop-target of the new position and
664
+ * the drag action
665
+ */
666
+ bool handleDrag(FXint x,FXint y,FXDragAction action=DRAG_COPY);
667
+
668
+ /// Terminate the drag operation with or without actually dropping the data
669
+ FXDragAction endDrag(bool drop=true);
670
+
671
+ /// Return true if this window is the target of a drop
672
+ bool isDropTarget() const;
673
+
674
+ /**
675
+ * When being dragged over, indicate that no further SEL_DND_MOTION messages
676
+ * are required while the cursor is inside the given rectangle
677
+ */
678
+ void setDragRectangle(FXint x,FXint y,FXint w,FXint h,bool wantupdates=true) const;
679
+
680
+ /**
681
+ * When being dragged over, indicate we want to receive SEL_DND_MOTION messages
682
+ * every time the cursor moves
683
+ */
684
+ void clearDragRectangle() const;
685
+
686
+ /// When being dragged over, indicate acceptance or rejection of the dragged data
687
+ void acceptDrop(FXDragAction action=DRAG_ACCEPT) const;
688
+
689
+ /// The target accepted our drop
690
+ FXDragAction didAccept() const;
691
+
692
+ /**
693
+ * Sent by the drop target in response to SEL_DND_DROP. The drag action
694
+ * should be the same as the action the drop target reported to the drag
695
+ * source in reponse to the SEL_DND_MOTION message.
696
+ * This function notifies the drag source that its part of the drop transaction
697
+ * is finished, and that it is free to release any resources involved in the
698
+ * drag operation.
699
+ * Calling dropFinished() is advisable in cases where the drop target needs
700
+ * to perform complex processing on the data received from the drag source,
701
+ * prior to returning from the SEL_DND_DROP message handler.
702
+ */
703
+ void dropFinished(FXDragAction action=DRAG_REJECT) const;
704
+
705
+ %extend {
706
+ // When being dragged over, inquire the drag types which are being offered
707
+ VALUE inquireDNDTypes(FXDNDOrigin origin) const {
708
+ FXDragType* types;
709
+ FXuint numtypes;
710
+ VALUE arr = rb_ary_new();
711
+ if (self->inquireDNDTypes(origin, types, numtypes)) {
712
+ for (FXuint i = 0; i < numtypes; i++)
713
+ rb_ary_push(arr, to_ruby(types[i]));
714
+ FXFREE(&types);
715
+ }
716
+ return arr;
717
+ }
718
+ }
719
+
720
+ /// When being dragged over, return true if we are offered the given drag type
721
+ bool offeredDNDType(FXDNDOrigin origin,FXDragType type) const;
722
+
723
+ /// When being dragged over, return the drag action
724
+ FXDragAction inquireDNDAction() const;
725
+
726
+ %extend {
727
+ // Set DND data; ownership is transferred to the system
728
+ void setDNDData(FXDNDOrigin origin, FXDragType type, VALUE str) const {
729
+ Check_Type(str, T_STRING);
730
+ FXuchar* data;
731
+ FXuint size = RSTRING_LEN(str);
732
+ if (FXMALLOC(&data, FXuchar, size)) {
733
+ memcpy((void *) data, (void *) RSTRING_PTR(str), size);
734
+ self->setDNDData(origin, type, data, size);
735
+ } else {
736
+ rb_raise(rb_eNoMemError, "couldn't copy drag-and-drop data");
737
+ }
738
+ }
739
+
740
+ // Get DND data; the caller becomes the owner of the array.
741
+ VALUE getDNDData(FXDNDOrigin origin, FXDragType type) const {
742
+ FXuchar* data;
743
+ FXuint size;
744
+ VALUE result = Qnil;
745
+ if (self->getDNDData(origin, type, data, size)) {
746
+ result = rb_str_new((const FXchar *) data, size);
747
+ FXFREE(&data);
748
+ }
749
+ return result;
750
+ }
751
+ }
752
+
753
+ /**
754
+ * Set DND data from string value.
755
+ */
756
+ bool setDNDData(FXDNDOrigin origin,FXDragType type,const FXString& string) const;
757
+
758
+ /**
759
+ * Get DND data into string value.
760
+ */
761
+ bool getDNDData(FXDNDOrigin origin,FXDragType type,FXString& string) const;
762
+
763
+ %extend {
764
+ // Translate coordinates from fromwindow's coordinate space
765
+ // to this window's coordinate space
766
+ VALUE translateCoordinatesFrom(const FXWindow* fromwindow,
767
+ FXint fromx, FXint fromy) const {
768
+ FXint tox, toy;
769
+ self->translateCoordinatesFrom(tox, toy, fromwindow, fromx, fromy);
770
+ VALUE result = rb_ary_new();
771
+ rb_ary_push(result, INT2NUM(tox));
772
+ rb_ary_push(result, INT2NUM(toy));
773
+ return result;
774
+ }
775
+
776
+ // Translate coordinates from this window's coordinate space
777
+ // to towindow's coordinate space
778
+ VALUE translateCoordinatesTo(const FXWindow* towindow,
779
+ FXint fromx, FXint fromy) const {
780
+ FXint tox, toy;
781
+ self->translateCoordinatesTo(tox, toy, towindow, fromx, fromy);
782
+ VALUE result = rb_ary_new();
783
+ rb_ary_push(result, INT2NUM(tox));
784
+ rb_ary_push(result, INT2NUM(toy));
785
+ return result;
786
+ }
787
+ }
788
+
789
+ /// Get background color
790
+ FXColor getBackColor() const;
791
+
792
+ /// Destroy window
793
+ virtual ~FXWindow();
794
+ };
795
+
796
+ %clear FXint index;
797
+
798
+ DECLARE_FXOBJECT_VIRTUALS(FXWindow)
799
+ DECLARE_FXID_VIRTUALS(FXWindow)
800
+ DECLARE_FXDRAWABLE_VIRTUALS(FXWindow)
801
+ DECLARE_FXWINDOW_VIRTUALS(FXWindow)
802
+
803
+ %{
804
+ static swig_type_info *FXWindow_dynamic_cast(void **ptr) {
805
+ FXWindow **ppWindow = reinterpret_cast<FXWindow **>(ptr);
806
+ FXCanvas *pCanvas=dynamic_cast<FXCanvas*>(*ppWindow);
807
+ if(pCanvas){
808
+ *ptr=reinterpret_cast<void*>(pCanvas);
809
+ return SWIG_TypeQuery("FXCanvas *");
810
+ }
811
+ FXComposite *pComposite=dynamic_cast<FXComposite*>(*ppWindow);
812
+ if(pComposite){
813
+ *ptr=reinterpret_cast<void*>(pComposite);
814
+ return SWIG_TypeQuery("FXComposite *");
815
+ }
816
+ FXDragCorner *pDragCorner=dynamic_cast<FXDragCorner*>(*ppWindow);
817
+ if(pDragCorner){
818
+ *ptr=reinterpret_cast<void*>(pDragCorner);
819
+ return SWIG_TypeQuery("FXDragCorner *");
820
+ }
821
+ FXFrame *pFrame=dynamic_cast<FXFrame*>(*ppWindow);
822
+ if(pFrame){
823
+ *ptr=reinterpret_cast<void*>(pFrame);
824
+ return SWIG_TypeQuery("FXFrame *");
825
+ }
826
+ FXMenuCaption *pMenuCaption=dynamic_cast<FXMenuCaption*>(*ppWindow);
827
+ if(pMenuCaption){
828
+ *ptr=reinterpret_cast<void*>(pMenuCaption);
829
+ return SWIG_TypeQuery("FXMenuCaption *");
830
+ }
831
+ FXMenuSeparator *pMenuSeparator=dynamic_cast<FXMenuSeparator*>(*ppWindow);
832
+ if(pMenuSeparator){
833
+ *ptr=reinterpret_cast<void*>(pMenuSeparator);
834
+ return SWIG_TypeQuery("FXMenuSeparator *");
835
+ }
836
+ FXScrollBar *pScrollBar=dynamic_cast<FXScrollBar*>(*ppWindow);
837
+ if(pScrollBar){
838
+ *ptr=reinterpret_cast<void*>(pScrollBar);
839
+ return SWIG_TypeQuery("FXScrollBar *");
840
+ }
841
+ FXScrollCorner *pScrollCorner=dynamic_cast<FXScrollCorner*>(*ppWindow);
842
+ if(pScrollCorner){
843
+ *ptr=reinterpret_cast<void*>(pScrollCorner);
844
+ return SWIG_TypeQuery("FXScrollCorner *");
845
+ }
846
+ return 0;
847
+ }
848
+ %}
849
+
850
+ DYNAMIC_CAST(SWIGTYPE_p_FXWindow, FXWindow_dynamic_cast);
851
+