fxruby 1.6.13-mswin32

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 (496) hide show
  1. data/LICENSE +456 -0
  2. data/README +39 -0
  3. data/doc/apes02.html +21 -0
  4. data/doc/apes03.html +39 -0
  5. data/doc/book.html +3 -0
  6. data/doc/build.html +133 -0
  7. data/doc/ch03s02.html +23 -0
  8. data/doc/ch03s03.html +52 -0
  9. data/doc/ch03s04.html +36 -0
  10. data/doc/ch03s05.html +60 -0
  11. data/doc/ch04s02.html +71 -0
  12. data/doc/ch04s03.html +37 -0
  13. data/doc/ch04s04.html +72 -0
  14. data/doc/ch05s02.html +260 -0
  15. data/doc/ch05s03.html +127 -0
  16. data/doc/changes.html +685 -0
  17. data/doc/clipboardtut.html +67 -0
  18. data/doc/differences.html +190 -0
  19. data/doc/dragdroptut.html +263 -0
  20. data/doc/events.html +36 -0
  21. data/doc/examples.html +104 -0
  22. data/doc/gems.html +73 -0
  23. data/doc/goals.html +41 -0
  24. data/doc/images/babelfish.png +0 -0
  25. data/doc/images/browser.png +0 -0
  26. data/doc/images/button.png +0 -0
  27. data/doc/images/call-chain-example.png +0 -0
  28. data/doc/images/colordialog.png +0 -0
  29. data/doc/images/datatarget.png +0 -0
  30. data/doc/images/dialog.png +0 -0
  31. data/doc/images/dilbert.png +0 -0
  32. data/doc/images/dirlist.png +0 -0
  33. data/doc/images/dropsite-droprejected.png +0 -0
  34. data/doc/images/foursplit.png +0 -0
  35. data/doc/images/gltest.png +0 -0
  36. data/doc/images/glviewer.png +0 -0
  37. data/doc/images/groupbox.png +0 -0
  38. data/doc/images/header.png +0 -0
  39. data/doc/images/hello-with-button.png +0 -0
  40. data/doc/images/hello-with-icon-1.png +0 -0
  41. data/doc/images/hello-with-icon-2.png +0 -0
  42. data/doc/images/hello-with-icon-3.png +0 -0
  43. data/doc/images/hello-with-tooltip.png +0 -0
  44. data/doc/images/hello-without-button.png +0 -0
  45. data/doc/images/hello.png +0 -0
  46. data/doc/images/hello2.png +0 -0
  47. data/doc/images/iconlist-bigicons.png +0 -0
  48. data/doc/images/iconlist-details.png +0 -0
  49. data/doc/images/image.png +0 -0
  50. data/doc/images/imageviewer.png +0 -0
  51. data/doc/images/inheritance.png +0 -0
  52. data/doc/images/mditest.png +0 -0
  53. data/doc/images/raabrowser.png +0 -0
  54. data/doc/images/scribble.png +0 -0
  55. data/doc/images/shutter.png +0 -0
  56. data/doc/images/splitter.png +0 -0
  57. data/doc/images/tabbook.png +0 -0
  58. data/doc/images/table.png +0 -0
  59. data/doc/images/tutorial1.png +0 -0
  60. data/doc/implementation.html +16 -0
  61. data/doc/infosources.html +33 -0
  62. data/doc/library.html +30 -0
  63. data/doc/opengl.html +73 -0
  64. data/doc/pt01.html +3 -0
  65. data/doc/pt02.html +3 -0
  66. data/doc/scintilla.html +36 -0
  67. data/doc/style.css +247 -0
  68. data/doc/subversion.html +21 -0
  69. data/doc/tutorial1.html +90 -0
  70. data/doc/unicode.html +56 -0
  71. data/examples/RAA.rb +25 -0
  72. data/examples/README +53 -0
  73. data/examples/babelfish.rb +93 -0
  74. data/examples/bounce.rb +159 -0
  75. data/examples/browser.rb +191 -0
  76. data/examples/button.rb +168 -0
  77. data/examples/datatarget.rb +223 -0
  78. data/examples/dctest.rb +696 -0
  79. data/examples/dialog.rb +143 -0
  80. data/examples/dilbert.rb +67 -0
  81. data/examples/dirlist.rb +63 -0
  82. data/examples/dragdrop.rb +97 -0
  83. data/examples/dragsource.rb +80 -0
  84. data/examples/dropsite.rb +59 -0
  85. data/examples/foursplit.rb +97 -0
  86. data/examples/gltest.rb +330 -0
  87. data/examples/glviewer.rb +576 -0
  88. data/examples/groupbox.rb +392 -0
  89. data/examples/header.rb +149 -0
  90. data/examples/hello.rb +12 -0
  91. data/examples/hello2.rb +51 -0
  92. data/examples/iRAA.rb +153 -0
  93. data/examples/iconlist.rb +92 -0
  94. data/examples/icons/AngryGuyInBunnySuit.ico +0 -0
  95. data/examples/icons/FatBot.ico +0 -0
  96. data/examples/icons/FlippedySwitch.ico +0 -0
  97. data/examples/icons/LeGoon.ico +0 -0
  98. data/examples/icons/Net.ico +0 -0
  99. data/examples/icons/RedMacOS.ico +0 -0
  100. data/examples/icons/SawBlade.ico +0 -0
  101. data/examples/icons/backview.png +0 -0
  102. data/examples/icons/big.png +0 -0
  103. data/examples/icons/bigfolder.png +0 -0
  104. data/examples/icons/bigpenguin.png +0 -0
  105. data/examples/icons/bottomview.png +0 -0
  106. data/examples/icons/camera.png +0 -0
  107. data/examples/icons/capbutt.png +0 -0
  108. data/examples/icons/capnotlast.png +0 -0
  109. data/examples/icons/capproj.png +0 -0
  110. data/examples/icons/capround.png +0 -0
  111. data/examples/icons/colorpal.png +0 -0
  112. data/examples/icons/copy.png +0 -0
  113. data/examples/icons/cut.png +0 -0
  114. data/examples/icons/delimit.png +0 -0
  115. data/examples/icons/dippy.png +0 -0
  116. data/examples/icons/double_dash.png +0 -0
  117. data/examples/icons/filenew.png +0 -0
  118. data/examples/icons/fileopen.png +0 -0
  119. data/examples/icons/filesave.png +0 -0
  120. data/examples/icons/filesaveas.png +0 -0
  121. data/examples/icons/fonts.png +0 -0
  122. data/examples/icons/fox.png +0 -0
  123. data/examples/icons/foxicon.png +0 -0
  124. data/examples/icons/frontview.png +0 -0
  125. data/examples/icons/gem_big.png +0 -0
  126. data/examples/icons/gem_small.png +0 -0
  127. data/examples/icons/hello2.png +0 -0
  128. data/examples/icons/help.png +0 -0
  129. data/examples/icons/indent.png +0 -0
  130. data/examples/icons/jbevel.png +0 -0
  131. data/examples/icons/jmiter.png +0 -0
  132. data/examples/icons/jround.png +0 -0
  133. data/examples/icons/kill.png +0 -0
  134. data/examples/icons/leftview.png +0 -0
  135. data/examples/icons/light.png +0 -0
  136. data/examples/icons/minidoc.png +0 -0
  137. data/examples/icons/minifolder.png +0 -0
  138. data/examples/icons/minifolderopen.png +0 -0
  139. data/examples/icons/newfolder.png +0 -0
  140. data/examples/icons/nolight.png +0 -0
  141. data/examples/icons/onoff_dash.png +0 -0
  142. data/examples/icons/palette.png +0 -0
  143. data/examples/icons/parallel.png +0 -0
  144. data/examples/icons/paste.png +0 -0
  145. data/examples/icons/pattern.png +0 -0
  146. data/examples/icons/penguin.png +0 -0
  147. data/examples/icons/perspective.png +0 -0
  148. data/examples/icons/printicon.png +0 -0
  149. data/examples/icons/prop.png +0 -0
  150. data/examples/icons/redo.png +0 -0
  151. data/examples/icons/rightview.png +0 -0
  152. data/examples/icons/saveas.png +0 -0
  153. data/examples/icons/shutter1.png +0 -0
  154. data/examples/icons/shutter2.png +0 -0
  155. data/examples/icons/small.png +0 -0
  156. data/examples/icons/smoothlight.png +0 -0
  157. data/examples/icons/solid_line.png +0 -0
  158. data/examples/icons/tbuplevel.png +0 -0
  159. data/examples/icons/topview.png +0 -0
  160. data/examples/icons/undo.png +0 -0
  161. data/examples/icons/winapp.png +0 -0
  162. data/examples/icons/zoom.png +0 -0
  163. data/examples/image.rb +279 -0
  164. data/examples/imageviewer.rb +509 -0
  165. data/examples/inputs.rb +83 -0
  166. data/examples/mditest.rb +180 -0
  167. data/examples/pig.rb +77 -0
  168. data/examples/raabrowser.rb +122 -0
  169. data/examples/ratio.rb +80 -0
  170. data/examples/rulerview.rb +27 -0
  171. data/examples/scintilla-test.rb +81 -0
  172. data/examples/scribble-orig.rb +186 -0
  173. data/examples/scribble.rb +162 -0
  174. data/examples/shutter.rb +158 -0
  175. data/examples/splitter.rb +211 -0
  176. data/examples/styledtext.rb +82 -0
  177. data/examples/tabbook.rb +165 -0
  178. data/examples/table.rb +187 -0
  179. data/examples/textedit/commands.rb +114 -0
  180. data/examples/textedit/helpwindow.rb +299 -0
  181. data/examples/textedit/prefdialog.rb +239 -0
  182. data/examples/textedit/textedit.rb +1763 -0
  183. data/examples/unicode.rb +36 -0
  184. data/ext/fox16/fox16.so +0 -0
  185. data/index.html +14 -0
  186. data/lib/fox16/aliases.rb +5598 -0
  187. data/lib/fox16/calendar.rb +217 -0
  188. data/lib/fox16/chore.rb +105 -0
  189. data/lib/fox16/colors.rb +280 -0
  190. data/lib/fox16/core.rb +681 -0
  191. data/lib/fox16/dict.rb +35 -0
  192. data/lib/fox16/execute_nonmodal.rb +70 -0
  193. data/lib/fox16/glgroup.rb +166 -0
  194. data/lib/fox16/glshapes.rb +456 -0
  195. data/lib/fox16/input.rb +59 -0
  196. data/lib/fox16/irb.rb +178 -0
  197. data/lib/fox16/iterators.rb +371 -0
  198. data/lib/fox16/keys.rb +1374 -0
  199. data/lib/fox16/kwargs.rb +2725 -0
  200. data/lib/fox16/missingdep.rb +14 -0
  201. data/lib/fox16/pseudokeyboard.rb +40 -0
  202. data/lib/fox16/pseudomouse.rb +87 -0
  203. data/lib/fox16/responder.rb +70 -0
  204. data/lib/fox16/responder2.rb +131 -0
  205. data/lib/fox16/scintilla.rb +3641 -0
  206. data/lib/fox16/settings.rb +18 -0
  207. data/lib/fox16/signal.rb +71 -0
  208. data/lib/fox16/splashscreen.rb +82 -0
  209. data/lib/fox16/timeout.rb +136 -0
  210. data/lib/fox16/undolist.rb +455 -0
  211. data/lib/fox16/version.rb +9 -0
  212. data/rdoc-sources/FX4Splitter.rb +156 -0
  213. data/rdoc-sources/FX7Segment.rb +54 -0
  214. data/rdoc-sources/FXAccelTable.rb +102 -0
  215. data/rdoc-sources/FXApp.rb +545 -0
  216. data/rdoc-sources/FXArrowButton.rb +69 -0
  217. data/rdoc-sources/FXBMPIcon.rb +67 -0
  218. data/rdoc-sources/FXBMPImage.rb +30 -0
  219. data/rdoc-sources/FXBitmap.rb +115 -0
  220. data/rdoc-sources/FXBitmapFrame.rb +31 -0
  221. data/rdoc-sources/FXBitmapView.rb +44 -0
  222. data/rdoc-sources/FXButton.rb +59 -0
  223. data/rdoc-sources/FXCURCursor.rb +13 -0
  224. data/rdoc-sources/FXCanvas.rb +18 -0
  225. data/rdoc-sources/FXCheckButton.rb +58 -0
  226. data/rdoc-sources/FXChoiceBox.rb +49 -0
  227. data/rdoc-sources/FXColorBar.rb +48 -0
  228. data/rdoc-sources/FXColorDialog.rb +37 -0
  229. data/rdoc-sources/FXColorList.rb +55 -0
  230. data/rdoc-sources/FXColorRing.rb +49 -0
  231. data/rdoc-sources/FXColorSelector.rb +65 -0
  232. data/rdoc-sources/FXColorWell.rb +65 -0
  233. data/rdoc-sources/FXColorWheel.rb +57 -0
  234. data/rdoc-sources/FXComboBox.rb +211 -0
  235. data/rdoc-sources/FXComposite.rb +34 -0
  236. data/rdoc-sources/FXCursor.rb +67 -0
  237. data/rdoc-sources/FXDC.rb +720 -0
  238. data/rdoc-sources/FXDCPrint.rb +127 -0
  239. data/rdoc-sources/FXDCWindow.rb +33 -0
  240. data/rdoc-sources/FXDataTarget.rb +66 -0
  241. data/rdoc-sources/FXDebugTarget.rb +25 -0
  242. data/rdoc-sources/FXDelegator.rb +23 -0
  243. data/rdoc-sources/FXDial.rb +107 -0
  244. data/rdoc-sources/FXDialogBox.rb +32 -0
  245. data/rdoc-sources/FXDict.rb +79 -0
  246. data/rdoc-sources/FXDirBox.rb +55 -0
  247. data/rdoc-sources/FXDirDialog.rb +47 -0
  248. data/rdoc-sources/FXDirList.rb +149 -0
  249. data/rdoc-sources/FXDirSelector.rb +64 -0
  250. data/rdoc-sources/FXDockBar.rb +151 -0
  251. data/rdoc-sources/FXDockHandler.rb +26 -0
  252. data/rdoc-sources/FXDockSite.rb +104 -0
  253. data/rdoc-sources/FXDockTitle.rb +26 -0
  254. data/rdoc-sources/FXDocument.rb +29 -0
  255. data/rdoc-sources/FXDragCorner.rb +19 -0
  256. data/rdoc-sources/FXDrawable.rb +27 -0
  257. data/rdoc-sources/FXDriveBox.rb +46 -0
  258. data/rdoc-sources/FXExtentd.rb +85 -0
  259. data/rdoc-sources/FXExtentf.rb +85 -0
  260. data/rdoc-sources/FXFileDialog.rb +217 -0
  261. data/rdoc-sources/FXFileDict.rb +131 -0
  262. data/rdoc-sources/FXFileList.rb +208 -0
  263. data/rdoc-sources/FXFileSelector.rb +184 -0
  264. data/rdoc-sources/FXFileStream.rb +27 -0
  265. data/rdoc-sources/FXFoldingList.rb +504 -0
  266. data/rdoc-sources/FXFont.rb +361 -0
  267. data/rdoc-sources/FXFontDialog.rb +14 -0
  268. data/rdoc-sources/FXFontSelector.rb +37 -0
  269. data/rdoc-sources/FXFrame.rb +53 -0
  270. data/rdoc-sources/FXGIFCursor.rb +50 -0
  271. data/rdoc-sources/FXGIFIcon.rb +31 -0
  272. data/rdoc-sources/FXGIFImage.rb +29 -0
  273. data/rdoc-sources/FXGLCanvas.rb +45 -0
  274. data/rdoc-sources/FXGLContext.rb +40 -0
  275. data/rdoc-sources/FXGLObject.rb +75 -0
  276. data/rdoc-sources/FXGLShape.rb +69 -0
  277. data/rdoc-sources/FXGLViewer.rb +332 -0
  278. data/rdoc-sources/FXGLVisual.rb +94 -0
  279. data/rdoc-sources/FXGradientBar.rb +301 -0
  280. data/rdoc-sources/FXGroupBox.rb +33 -0
  281. data/rdoc-sources/FXHeader.rb +408 -0
  282. data/rdoc-sources/FXHorizontalFrame.rb +29 -0
  283. data/rdoc-sources/FXICOIcon.rb +65 -0
  284. data/rdoc-sources/FXICOImage.rb +31 -0
  285. data/rdoc-sources/FXIcon.rb +38 -0
  286. data/rdoc-sources/FXIconDict.rb +48 -0
  287. data/rdoc-sources/FXIconList.rb +447 -0
  288. data/rdoc-sources/FXIconSource.rb +100 -0
  289. data/rdoc-sources/FXId.rb +34 -0
  290. data/rdoc-sources/FXImage.rb +286 -0
  291. data/rdoc-sources/FXImageFrame.rb +36 -0
  292. data/rdoc-sources/FXImageView.rb +35 -0
  293. data/rdoc-sources/FXInputDialog.rb +77 -0
  294. data/rdoc-sources/FXJPGIcon.rb +70 -0
  295. data/rdoc-sources/FXJPGImage.rb +38 -0
  296. data/rdoc-sources/FXKnob.rb +76 -0
  297. data/rdoc-sources/FXLabel.rb +69 -0
  298. data/rdoc-sources/FXList.rb +440 -0
  299. data/rdoc-sources/FXListBox.rb +191 -0
  300. data/rdoc-sources/FXMDIButton.rb +67 -0
  301. data/rdoc-sources/FXMDIChild.rb +155 -0
  302. data/rdoc-sources/FXMDIClient.rb +65 -0
  303. data/rdoc-sources/FXMainWindow.rb +26 -0
  304. data/rdoc-sources/FXMatrix.rb +57 -0
  305. data/rdoc-sources/FXMemoryBuffer.rb +28 -0
  306. data/rdoc-sources/FXMemoryStream.rb +50 -0
  307. data/rdoc-sources/FXMenuBar.rb +23 -0
  308. data/rdoc-sources/FXMenuButton.rb +84 -0
  309. data/rdoc-sources/FXMenuCaption.rb +50 -0
  310. data/rdoc-sources/FXMenuCascade.rb +18 -0
  311. data/rdoc-sources/FXMenuCheck.rb +30 -0
  312. data/rdoc-sources/FXMenuCommand.rb +26 -0
  313. data/rdoc-sources/FXMenuPane.rb +13 -0
  314. data/rdoc-sources/FXMenuRadio.rb +33 -0
  315. data/rdoc-sources/FXMenuSeparator.rb +21 -0
  316. data/rdoc-sources/FXMenuTitle.rb +27 -0
  317. data/rdoc-sources/FXMessageBox.rb +72 -0
  318. data/rdoc-sources/FXObject.rb +28 -0
  319. data/rdoc-sources/FXOptionMenu.rb +83 -0
  320. data/rdoc-sources/FXPCXIcon.rb +63 -0
  321. data/rdoc-sources/FXPCXImage.rb +31 -0
  322. data/rdoc-sources/FXPNGIcon.rb +66 -0
  323. data/rdoc-sources/FXPNGImage.rb +34 -0
  324. data/rdoc-sources/FXPPMIcon.rb +36 -0
  325. data/rdoc-sources/FXPPMImage.rb +31 -0
  326. data/rdoc-sources/FXPacker.rb +63 -0
  327. data/rdoc-sources/FXPicker.rb +27 -0
  328. data/rdoc-sources/FXPopup.rb +53 -0
  329. data/rdoc-sources/FXPrintDialog.rb +36 -0
  330. data/rdoc-sources/FXProgressBar.rb +57 -0
  331. data/rdoc-sources/FXProgressDialog.rb +36 -0
  332. data/rdoc-sources/FXQuatd.rb +164 -0
  333. data/rdoc-sources/FXQuatf.rb +173 -0
  334. data/rdoc-sources/FXRGBIcon.rb +64 -0
  335. data/rdoc-sources/FXRGBImage.rb +31 -0
  336. data/rdoc-sources/FXRadioButton.rb +70 -0
  337. data/rdoc-sources/FXRanged.rb +100 -0
  338. data/rdoc-sources/FXRangef.rb +100 -0
  339. data/rdoc-sources/FXRealSlider.rb +101 -0
  340. data/rdoc-sources/FXRealSpinner.rb +140 -0
  341. data/rdoc-sources/FXRecentFiles.rb +77 -0
  342. data/rdoc-sources/FXRectangle.rb +149 -0
  343. data/rdoc-sources/FXRegion.rb +64 -0
  344. data/rdoc-sources/FXRegistry.rb +56 -0
  345. data/rdoc-sources/FXReplaceDialog.rb +56 -0
  346. data/rdoc-sources/FXRootWindow.rb +17 -0
  347. data/rdoc-sources/FXRuler.rb +130 -0
  348. data/rdoc-sources/FXRulerView.rb +225 -0
  349. data/rdoc-sources/FXScintilla.rb +121 -0
  350. data/rdoc-sources/FXScrollArea.rb +86 -0
  351. data/rdoc-sources/FXScrollBar.rb +107 -0
  352. data/rdoc-sources/FXScrollPane.rb +28 -0
  353. data/rdoc-sources/FXScrollWindow.rb +38 -0
  354. data/rdoc-sources/FXSearchDialog.rb +24 -0
  355. data/rdoc-sources/FXSeparator.rb +74 -0
  356. data/rdoc-sources/FXSettings.rb +248 -0
  357. data/rdoc-sources/FXShell.rb +8 -0
  358. data/rdoc-sources/FXShutter.rb +102 -0
  359. data/rdoc-sources/FXSize.rb +95 -0
  360. data/rdoc-sources/FXSlider.rb +98 -0
  361. data/rdoc-sources/FXSphered.rb +80 -0
  362. data/rdoc-sources/FXSpheref.rb +80 -0
  363. data/rdoc-sources/FXSpinner.rb +136 -0
  364. data/rdoc-sources/FXSplashWindow.rb +27 -0
  365. data/rdoc-sources/FXSplitter.rb +89 -0
  366. data/rdoc-sources/FXSpring.rb +61 -0
  367. data/rdoc-sources/FXStatusBar.rb +42 -0
  368. data/rdoc-sources/FXStatusLine.rb +60 -0
  369. data/rdoc-sources/FXStream.rb +142 -0
  370. data/rdoc-sources/FXStringDict.rb +38 -0
  371. data/rdoc-sources/FXSwitcher.rb +78 -0
  372. data/rdoc-sources/FXTGAIcon.rb +63 -0
  373. data/rdoc-sources/FXTGAImage.rb +31 -0
  374. data/rdoc-sources/FXTIFIcon.rb +70 -0
  375. data/rdoc-sources/FXTIFImage.rb +37 -0
  376. data/rdoc-sources/FXTabBar.rb +80 -0
  377. data/rdoc-sources/FXTabBook.rb +41 -0
  378. data/rdoc-sources/FXTabItem.rb +58 -0
  379. data/rdoc-sources/FXTable.rb +967 -0
  380. data/rdoc-sources/FXText.rb +578 -0
  381. data/rdoc-sources/FXTextField.rb +151 -0
  382. data/rdoc-sources/FXToggleButton.rb +69 -0
  383. data/rdoc-sources/FXToolBar.rb +61 -0
  384. data/rdoc-sources/FXToolBarGrip.rb +50 -0
  385. data/rdoc-sources/FXToolBarShell.rb +44 -0
  386. data/rdoc-sources/FXToolBarTab.rb +74 -0
  387. data/rdoc-sources/FXToolTip.rb +36 -0
  388. data/rdoc-sources/FXTopWindow.rb +163 -0
  389. data/rdoc-sources/FXTranslator.rb +32 -0
  390. data/rdoc-sources/FXTreeList.rb +514 -0
  391. data/rdoc-sources/FXTreeListBox.rb +219 -0
  392. data/rdoc-sources/FXTriStateButton.rb +49 -0
  393. data/rdoc-sources/FXVec2d.rb +96 -0
  394. data/rdoc-sources/FXVec2f.rb +96 -0
  395. data/rdoc-sources/FXVec3d.rb +113 -0
  396. data/rdoc-sources/FXVec3f.rb +113 -0
  397. data/rdoc-sources/FXVec4d.rb +129 -0
  398. data/rdoc-sources/FXVec4f.rb +129 -0
  399. data/rdoc-sources/FXVerticalFrame.rb +29 -0
  400. data/rdoc-sources/FXVisual.rb +79 -0
  401. data/rdoc-sources/FXWindow.rb +725 -0
  402. data/rdoc-sources/FXWizard.rb +59 -0
  403. data/rdoc-sources/FXXBMIcon.rb +37 -0
  404. data/rdoc-sources/FXXBMImage.rb +32 -0
  405. data/rdoc-sources/FXXPMIcon.rb +65 -0
  406. data/rdoc-sources/FXXPMImage.rb +31 -0
  407. data/rdoc-sources/README.rdoc +53 -0
  408. data/rdoc-sources/fxdefs.rb +90 -0
  409. data/tests/README +19 -0
  410. data/tests/TC_FXAccelTable.rb +43 -0
  411. data/tests/TC_FXApp.rb +15 -0
  412. data/tests/TC_FXArc.rb +26 -0
  413. data/tests/TC_FXBMPIcon.rb +15 -0
  414. data/tests/TC_FXBMPImage.rb +15 -0
  415. data/tests/TC_FXButton.rb +72 -0
  416. data/tests/TC_FXCheckButton.rb +57 -0
  417. data/tests/TC_FXComboBox.rb +52 -0
  418. data/tests/TC_FXDC.rb +372 -0
  419. data/tests/TC_FXDCPrint.rb +102 -0
  420. data/tests/TC_FXDCWindow.rb +23 -0
  421. data/tests/TC_FXDataTarget.rb +24 -0
  422. data/tests/TC_FXDirList.rb +30 -0
  423. data/tests/TC_FXFileAssoc.rb +62 -0
  424. data/tests/TC_FXFileStream.rb +90 -0
  425. data/tests/TC_FXFoldingList.rb +32 -0
  426. data/tests/TC_FXFont.rb +69 -0
  427. data/tests/TC_FXFontDesc.rb +58 -0
  428. data/tests/TC_FXGLGroup.rb +32 -0
  429. data/tests/TC_FXGLShape.rb +28 -0
  430. data/tests/TC_FXGLViewer.rb +20 -0
  431. data/tests/TC_FXGradientBar.rb +89 -0
  432. data/tests/TC_FXHeader.rb +82 -0
  433. data/tests/TC_FXIconDict.rb +52 -0
  434. data/tests/TC_FXIconList.rb +192 -0
  435. data/tests/TC_FXId.rb +19 -0
  436. data/tests/TC_FXImage.rb +155 -0
  437. data/tests/TC_FXLight.rb +33 -0
  438. data/tests/TC_FXList.rb +116 -0
  439. data/tests/TC_FXListBox.rb +49 -0
  440. data/tests/TC_FXMat4f.rb +228 -0
  441. data/tests/TC_FXMaterial.rb +89 -0
  442. data/tests/TC_FXMemoryStream.rb +97 -0
  443. data/tests/TC_FXMenuCheck.rb +57 -0
  444. data/tests/TC_FXMenuCommand.rb +12 -0
  445. data/tests/TC_FXMenuRadio.rb +57 -0
  446. data/tests/TC_FXPoint.rb +57 -0
  447. data/tests/TC_FXQuatf.rb +77 -0
  448. data/tests/TC_FXRadioButton.rb +57 -0
  449. data/tests/TC_FXRangef.rb +48 -0
  450. data/tests/TC_FXRectangle.rb +88 -0
  451. data/tests/TC_FXRegion.rb +54 -0
  452. data/tests/TC_FXRegistry.rb +27 -0
  453. data/tests/TC_FXScrollArea.rb +28 -0
  454. data/tests/TC_FXScrollWindow.rb +28 -0
  455. data/tests/TC_FXSegment.rb +22 -0
  456. data/tests/TC_FXSettings.rb +34 -0
  457. data/tests/TC_FXShell.rb +26 -0
  458. data/tests/TC_FXSize.rb +54 -0
  459. data/tests/TC_FXStream.rb +11 -0
  460. data/tests/TC_FXTable.rb +368 -0
  461. data/tests/TC_FXTableItem.rb +48 -0
  462. data/tests/TC_FXText.rb +96 -0
  463. data/tests/TC_FXTopWindow.rb +32 -0
  464. data/tests/TC_FXTreeList.rb +100 -0
  465. data/tests/TC_FXTreeListBox.rb +41 -0
  466. data/tests/TC_FXUndoList.rb +43 -0
  467. data/tests/TC_FXVec2d.rb +142 -0
  468. data/tests/TC_FXVec2f.rb +137 -0
  469. data/tests/TC_FXVec3d.rb +150 -0
  470. data/tests/TC_FXVec3f.rb +150 -0
  471. data/tests/TC_FXVec4f.rb +158 -0
  472. data/tests/TC_FXViewport.rb +30 -0
  473. data/tests/TC_FXXBMIcon.rb +15 -0
  474. data/tests/TC_FXXBMImage.rb +15 -0
  475. data/tests/TC_FXXPMIcon.rb +15 -0
  476. data/tests/TC_FXXPMImage.rb +15 -0
  477. data/tests/TC_Misc.rb +157 -0
  478. data/tests/TC_downcast.rb +15 -0
  479. data/tests/TS_All.rb +25 -0
  480. data/tests/blankpage.ps +166 -0
  481. data/tests/howdypage.ps +181 -0
  482. data/tests/stress1.rb +94 -0
  483. data/tests/stress2.rb +51 -0
  484. data/tests/stress3.rb +117 -0
  485. data/tests/testcase.rb +37 -0
  486. data/web/art/fxrubylogo.png +0 -0
  487. data/web/art/fxrubylogo_small.png +0 -0
  488. data/web/art/line.gif +0 -0
  489. data/web/art/oul_grey.gif +0 -0
  490. data/web/art/our.gif +0 -0
  491. data/web/downloads.html +93 -0
  492. data/web/home.html +113 -0
  493. data/web/menu.html +50 -0
  494. data/web/styles.css +167 -0
  495. data/web/top.html +15 -0
  496. metadata +548 -0
@@ -0,0 +1,36 @@
1
+ module Fox
2
+ # Hopefully Helpful Hint message
3
+ #
4
+ # = Tooltip styles
5
+ # TOOLTIP_PERMANENT:: Tooltip stays up indefinitely
6
+ # TOOLTIP_VARIABLE:: Tooltip stays up variable time, depending on the length of the string
7
+ # TOOLTIP_NORMAL::
8
+ #
9
+ # = Message identifiers
10
+ #
11
+ # ID_TIP_SHOW:: Show it
12
+ # ID_TIP_HIDE:: Hide it
13
+ #
14
+ class FXToolTip < FXShell
15
+ # Construct a tool tip
16
+ def initialize(app, opts=TOOLTIP_NORMAL, x=0, y=0, width=0, height=0); end
17
+
18
+ # Set the text for this tip
19
+ def text=(text); end
20
+
21
+ # Get the text for this tip
22
+ def text() ; end
23
+
24
+ # Set the tip text font
25
+ def font=(font) ; end
26
+
27
+ # Get the tip text font
28
+ def font() ; end
29
+
30
+ # Get the current tip text color
31
+ def textColor() ; end
32
+
33
+ # Set the current tip text color
34
+ def textColor=(color); end
35
+ end
36
+ end
@@ -0,0 +1,163 @@
1
+ module Fox
2
+ #
3
+ # Abstract base class for all top-level windows.
4
+ #
5
+ # TopWindows are usually managed by a Window Manager under X11 and
6
+ # therefore borders and window-menus and other decorations like resize-
7
+ # handles are subject to the Window Manager's interpretation of the
8
+ # decoration hints.
9
+ # When a TopWindow is closed, it sends a SEL_CLOSE message to its
10
+ # target. The target should return 0 in response to this message if
11
+ # there is no objection to proceed with the closing of the window, and
12
+ # return 1 otherwise. After the SEL_CLOSE message has been sent and
13
+ # no objection was raised, the window will delete itself.
14
+ # When the session is closed, the window will send a SEL_SESSION_NOTIFY
15
+ # message to its target, allowing the application to write any unsaved
16
+ # data to the disk. If the target returns 0, then the system will proceed
17
+ # to close the session. Subsequently a SEL_SESSION_CLOSED will be received
18
+ # which causes the window to be closed with prejudice by calling the
19
+ # function close(FALSE).
20
+ # When receiving a SEL_UPDATE, the target can update the title string
21
+ # of the window, so that the title of the window reflects the name
22
+ # of the document, for example.
23
+ # For convenience, TopWindow provides the same layout behavior as
24
+ # the Packer widget, as well as docking and undocking of toolbars.
25
+ # TopWindows can be owned by other windows, or be free-floating.
26
+ # Owned TopWindows will usually remain stacked on top of the owner
27
+ # windows. The lifetime of an owned window should not exceed that of
28
+ # the owner.
29
+ #
30
+ # === Events
31
+ #
32
+ # The following messages are sent by FXTopWindow to its target:
33
+ #
34
+ # +SEL_MINIMIZE+::
35
+ # sent when the user clicks the minimize button in the upper right-hand
36
+ # corner of the top-level window.
37
+ # +SEL_MAXIMIZE+::
38
+ # sent when the user clicks the maximize button in the upper right-hand
39
+ # corner of the top-level window.
40
+ # +SEL_RESTORE+::
41
+ # sent when the user clicks the restore button in the upper right-hand
42
+ # corner of the top-level window.
43
+ # +SEL_CLOSE+::
44
+ # sent when the user clicks the close button in the upper right-hand
45
+ # corner of the top-level window.
46
+ # +SEL_SESSION_NOTIFY+:
47
+ # sent when the session is closed.:
48
+ # +SEL_SESSION_CLOSED+::
49
+ # sent after the session is closed.
50
+ #
51
+ # === Title and border decorations
52
+ #
53
+ # +DECOR_NONE+:: Borderless window
54
+ # +DECOR_TITLE+:: Window title
55
+ # +DECOR_MINIMIZE+:: Minimize button
56
+ # +DECOR_MAXIMIZE+:: Maximize button
57
+ # +DECOR_CLOSE+:: Close button
58
+ # +DECOR_BORDER+:: Border
59
+ # +DECOR_SHRINKABLE+:: Window can become smaller
60
+ # +DECOR_STRETCHABLE+:: Window can become larger
61
+ # +DECOR_RESIZE+:: Resize handles
62
+ # +DECOR_MENU+:: Window menu
63
+ # +DECOR_ALL+:: All of the above
64
+ #
65
+ # === Initial window placement
66
+ #
67
+ # +PLACEMENT_DEFAULT+:: Place it at the default size and location
68
+ # +PLACEMENT_VISIBLE+:: Place window to be fully visible
69
+ # +PLACEMENT_CURSOR+:: Place it under the cursor position
70
+ # +PLACEMENT_OWNER+:: Place it centered on its owner
71
+ # +PLACEMENT_SCREEN+:: Place it centered on the screen
72
+ # +PLACEMENT_MAXIMIZED+:: Place it maximized to the screen size
73
+ #
74
+ # === Message identifiers
75
+ #
76
+ # +ID_MAXIMIZE+:: Maximize the window
77
+ # +ID_MINIMIZE+:: Minimize the window
78
+ # +ID_RESTORE+:: Restore the window
79
+ # +ID_CLOSE+:: Close the window
80
+ # +ID_QUERY_DOCK+:: Toolbar asks to dock
81
+ #
82
+
83
+ class FXTopWindow < FXShell
84
+
85
+ # Window title [String]
86
+ attr_accessor :title
87
+
88
+ # Top padding, in pixels [Integer]
89
+ attr_accessor :padTop
90
+
91
+ # Bottom padding, in pixels [Integer]
92
+ attr_accessor :padBottom
93
+
94
+ # Left padding, in pixels [Integer]
95
+ attr_accessor :padLeft
96
+
97
+ # Right padding, in pixels [Integer]
98
+ attr_accessor :padRight
99
+
100
+ # Horizontal spacing between child widgets, in pixels [Integer]
101
+ attr_accessor :hSpacing
102
+
103
+ # Vertical spacing between child widgets, in pixels [Integer]
104
+ attr_accessor :vSpacing
105
+
106
+ # Packing hints for child widgets [Integer]
107
+ attr_accessor :packingHints
108
+
109
+ # Title and border decorations (see above) [Integer]
110
+ attr_accessor :decorations
111
+
112
+ # Window icon [FXIcon]
113
+ attr_accessor :icon
114
+
115
+ # Window mini (title) icon [FXIcon]
116
+ attr_accessor :miniIcon
117
+
118
+ # Show this window with given _placement_
119
+ # (one of +PLACEMENT_DEFAULT+, +PLACEMENT_VISIBLE+, +PLACEMENT_CURSOR+, +PLACEMENT_OWNER+, +PLACEMENT_SCREEN+ or +PLACEMENT_MAXIMIZED+).
120
+ def show(placement) ; end
121
+
122
+ # Position the window based on _placement_
123
+ # (one of +PLACEMENT_DEFAULT+, +PLACEMENT_VISIBLE+, +PLACEMENT_CURSOR+, +PLACEMENT_OWNER+, +PLACEMENT_SCREEN+ or +PLACEMENT_MAXIMIZED+).
124
+ def place(placement) ; end
125
+
126
+ # Obtain border sizes added to our window by the window manager.
127
+ # Returns a 4-element array containing the left, right, top and bottom border sizes (in pixels).
128
+ def getWMBorders(); end
129
+
130
+ # Return +true+ if window is maximized.
131
+ def maximized? ; end
132
+
133
+ # Return +true+ if window is minimized.
134
+ def minimized? ; end
135
+
136
+ #
137
+ # Maximize window and return +true+ if maximized.
138
+ # If _notify_ is +true+, sends a +SEL_MAXIMIZE+ message to its message target.
139
+ #
140
+ def maximize(notify=false); end
141
+
142
+ #
143
+ # Minimize or iconify window and return +true+ if minimized.
144
+ # If _notify_ is +true+, sends a +SEL_MINIMIZE+ message to its message target.
145
+ #
146
+ def minimize(notify=false); end
147
+
148
+ #
149
+ # Restore window to normal and return +true+ if restored.
150
+ # If _notify_ is +true+, sends a +SEL_RESTORE+ message to its message target.
151
+ #
152
+ def restore(notify=false); end
153
+
154
+ #
155
+ # Close the window, return +true+ if actually closed. If _notify_ is +true+, the target
156
+ # will receive a +SEL_CLOSE+ message to determine if it is OK to close the window.
157
+ # If the target ignores the +SEL_CLOSE+ message or returns 0, the window will
158
+ # be closed, and subsequently deleted. When the last main window has been
159
+ # closed, the application will receive an +ID_QUIT+ message and will be closed.
160
+ #
161
+ def close(notify=false); end
162
+ end
163
+ end
@@ -0,0 +1,32 @@
1
+ module Fox
2
+ #
3
+ # A translator translates a message to another language.
4
+ #
5
+ class FXTranslator
6
+
7
+ # The application associated with this translator [FXApp]
8
+ attr_reader :app
9
+
10
+ #
11
+ # Return a new translator for the application _a_ (an FXApp instance).
12
+ #
13
+ def initialize(a); end
14
+
15
+ #
16
+ # Translate a message.
17
+ #
18
+ def tr(context, message, hint=nil); end
19
+
20
+ #
21
+ # Change the text codec used to decode the messages embedded in the
22
+ # source.
23
+ #
24
+ def textCodec=(codec); end
25
+
26
+ #
27
+ # Return a reference to the text codec.
28
+ #
29
+ def textCodec; end
30
+ end
31
+ end
32
+
@@ -0,0 +1,514 @@
1
+ module Fox
2
+ #
3
+ # Each item in an FXTreeList is an instance of FXTreeItem.
4
+ #
5
+ # A tree item can contain zero or more child items, and those items are arranged
6
+ # as a linked list. The FXTreeItem#first method returns the a reference to the
7
+ # first child item, if any, and the FXTreeItem#last method returns a reference to
8
+ # the last child item.
9
+ #
10
+ class FXTreeItem < FXObject
11
+
12
+ #
13
+ # Return a new FXTreeItem instance, initialized with the specified text,
14
+ # open-state icon, closed-state icon and user data.
15
+ #
16
+ def initialize(text, openIcon=nil, closedIcon=nil, data=nil) # :yields: theItem
17
+ end
18
+
19
+ # Return the number of child items for this tree item.
20
+ def numChildren; end
21
+
22
+ # Return the item text (a string) for this tree item.
23
+ def text; end
24
+
25
+ # Set the item text for this tree item.
26
+ def text=(txt); end
27
+
28
+ # Return a reference to the opened-state icon (an FXIcon instance) for
29
+ # this tree item, or +nil+ if none was specified.
30
+ def openIcon; end
31
+
32
+ # Set the opened-state icon (an FXIcon instance) for this tree item,
33
+ # or +nil+ if no icon should be used.
34
+ def setOpenIcon(oi, owned=false); end
35
+
36
+ # Return a reference to the closed-state icon (an FXIcon instance) for
37
+ # this tree item, or +nil+ if none was specified.
38
+ def closedIcon; end
39
+
40
+ # Set the closed-state icon (an FXIcon instance) for this tree item,
41
+ # or +nil+ if no icon should be used.
42
+ def setClosedIcon(ci, owned=false); end
43
+
44
+ # Return a reference to the user data for this tree item, or +nil+
45
+ # if no user data has been associated with this tree item.
46
+ def data; end
47
+
48
+ # Set the user data (a reference to any kind of object) for this tree item,
49
+ # or +nil+ if no user data needs to be associated with this item.
50
+ def data=(dt); end
51
+
52
+ # Set the focus on this tree item (_focus_ is either +true+ or +false+)
53
+ def setFocus(focus) ; end
54
+
55
+ # Returns +true+ if this item has the focus
56
+ def hasFocus? ; end
57
+
58
+ # Set this item's selected state to +true+ or +false+.
59
+ def selected=(sel); end
60
+
61
+ # Returns +true+ if this item is selected
62
+ def selected? ; end
63
+
64
+ # Set this item's "opened" state to +true+ or +false+.
65
+ def opened=(op); end
66
+
67
+ # Returns +true+ if this item is opened
68
+ def opened? ; end
69
+
70
+ # Set this item's expanded state to +true+ or +false+.
71
+ def expanded=(ex); end
72
+
73
+ # Returns +true+ if this item is expanded
74
+ def expanded? ; end
75
+
76
+ # Set this item's enabled state to +true+ or +false+.
77
+ def enabled=(en); end
78
+
79
+ # Returns +true+ if this item is enabled
80
+ def enabled? ; end
81
+
82
+ # Set this item's "draggable" state to +true+ or +false+.
83
+ def draggable=(dr); end
84
+
85
+ # Returns +true+ if this item is draggable
86
+ def draggable? ; end
87
+
88
+ # Return +true+ if this items has subitems, real or imagined.
89
+ def hasItems?; end
90
+
91
+ # Change has items flag to +true+ or +false+.
92
+ def hasItems=(flag); end
93
+
94
+ # Return a reference to the parent item for this tree item, or +nil+
95
+ # if this is a root-level item.
96
+ def parent; end
97
+
98
+ # Return a reference to the first child item for this tree item,
99
+ # or +nil+ if this tree item has no child items.
100
+ def first; end
101
+
102
+ # Return a reference to the last child item for this tree item,
103
+ # or +nil+ if this tree item has no child items.
104
+ def last; end
105
+
106
+ # Return a reference to the next sibling item for this tree item,
107
+ # or +nil+ if this is the last item in the parent item's list of
108
+ # child items.
109
+ def next; end
110
+
111
+ # Return a reference to the previous sibling item for this tree item,
112
+ # or +nil+ if this is the first item in the parent item's list of
113
+ # child items.
114
+ def prev; end
115
+
116
+ # Return a reference to the item that is "logically" below this item.
117
+ def below; end
118
+
119
+ # Return a reference to the item that is "logically" above this item.
120
+ def above; end
121
+
122
+ #
123
+ # Return +true+ if this item is a descendant of _item_.
124
+ #
125
+ def childOf?(item); end
126
+
127
+ #
128
+ # Return +true+ if this item is an ancestor of _item_.
129
+ #
130
+ def parentOf?(item); end
131
+
132
+ # Returns the item's text
133
+ def to_s
134
+ text
135
+ end
136
+
137
+ # Get the width of this item
138
+ def getWidth(treeList) ; end
139
+
140
+ # Get the height of this item
141
+ def getHeight(treeList) ; end
142
+
143
+ # Create this tree item
144
+ def create; end
145
+
146
+ # Detach this tree item
147
+ def detach; end
148
+
149
+ # Destroy this tree item
150
+ def destroy; end
151
+ end
152
+
153
+ #
154
+ # A Tree List Widget organizes items in a hierarchical, tree-like fashion.
155
+ # Subtrees can be collapsed or expanded by double-clicking on an item
156
+ # or by clicking on the optional plus button in front of the item.
157
+ # Each item may have a text and optional open-icon as well as a closed-icon.
158
+ # The items may be connected by optional lines to show the hierarchical
159
+ # relationship.
160
+ # When an item's selected state changes, the treelist emits a SEL_SELECTED
161
+ # or SEL_DESELECTED message. If an item is opened or closed, a message
162
+ # of type SEL_OPENED or SEL_CLOSED is sent. When the subtree under an
163
+ # item is expanded, a SEL_EXPANDED or SEL_COLLAPSED message is issued.
164
+ # A change of the current item is signified by the SEL_CHANGED message.
165
+ # In addition, the tree list sends SEL_COMMAND messages when the user
166
+ # clicks on an item, and SEL_CLICKED, SEL_DOUBLECLICKED, and SEL_TRIPLECLICKED
167
+ # when the user clicks once, twice, or thrice, respectively.
168
+ # When items are added or removed, the tree list sends messages of the
169
+ # type SEL_INSERTED or SEL_DELETED.
170
+ # In each of these cases, a pointer to the item, if any, is passed in the
171
+ # 3rd argument of the message.
172
+ #
173
+ # === Events
174
+ #
175
+ # The following messages are sent by FXTreeList to its target:
176
+ #
177
+ # +SEL_KEYPRESS+:: sent when a key goes down; the message data is an FXEvent instance.
178
+ # +SEL_KEYRELEASE+:: sent when a key goes up; the message data is an FXEvent instance.
179
+ # +SEL_LEFTBUTTONPRESS+:: sent when the left mouse button goes down; the message data is an FXEvent instance.
180
+ # +SEL_LEFTBUTTONRELEASE+:: sent when the left mouse button goes up; the message data is an FXEvent instance.
181
+ # +SEL_RIGHTBUTTONPRESS+:: sent when the right mouse button goes down; the message data is an FXEvent instance.
182
+ # +SEL_RIGHTBUTTONRELEASE+:: sent when the right mouse button goes up; the message data is an FXEvent instance.
183
+ # +SEL_COMMAND+:: sent when a list item is clicked on; the message data is a reference to the item (an FXTreeItem instance).
184
+ # +SEL_CLICKED+:: sent when the left mouse button is single-clicked in the list; the message data is a reference to the item clicked (an FXTreeItem instance) or +nil+ if no item was clicked.
185
+ # +SEL_DOUBLECLICKED+:: sent when the left mouse button is double-clicked in the list; the message data is a reference to the item clicked (an FXTreeItem instance) or +nil+ if no item was clicked.
186
+ # +SEL_TRIPLECLICKED+:: sent when the left mouse button is triple-clicked in the list; the message data is a reference to the item clicked (an FXTreeItem instance) or +nil+ if no item was clicked.
187
+ # +SEL_OPENED+:: sent when an item is opened; the message data is a reference to the item (an FXTreeItem instance).
188
+ # +SEL_CLOSED+:: sent when an item is closed; the message data is a reference to the item (an FXTreeItem instance).
189
+ # +SEL_EXPANDED+:: sent when a sub-tree is expanded; the message data is a reference to the root item for the sub-tree (an FXTreeItem instance).
190
+ # +SEL_COLLAPSED+:: sent when a sub-tree is collapsed; the message data is a reference to the root item for the sub-tree (an FXTreeItem instance).
191
+ # +SEL_SELECTED+:: sent when an item is selected; the message data is a reference to the item (an FXTreeItem instance).
192
+ # +SEL_DESELECTED+:: sent when an item is deselected; the message data is a reference to the item (an FXTreeItem instance).
193
+ # +SEL_CHANGED+:: sent when the current item changes; the message data is a reference to the current item (an FXTreeItem instance).
194
+ # +SEL_INSERTED+:: sent after an item is added to the list; the message data is a reference to the item (an FXTreeItem instance).
195
+ # +SEL_DELETED+:: sent before an item is removed from the list; the message data is a reference to the item (an FXTreeItem instance).
196
+ #
197
+ # === Tree list styles
198
+ #
199
+ # +TREELIST_EXTENDEDSELECT+:: Extended selection mode allows for drag-selection of ranges of items
200
+ # +TREELIST_SINGLESELECT+:: Single selection mode allows up to one item to be selected
201
+ # +TREELIST_BROWSESELECT+:: Browse selection mode enforces one single item to be selected at all times
202
+ # +TREELIST_MULTIPLESELECT+:: Multiple selection mode is used for selection of individual items
203
+ # +TREELIST_AUTOSELECT+:: Automatically select under cursor
204
+ # +TREELIST_SHOWS_LINES+:: Lines shown
205
+ # +TREELIST_SHOWS_BOXES+:: Boxes to expand shown
206
+ # +TREELIST_ROOT_BOXES+:: Display root boxes also
207
+ # +TREELIST_NORMAL+:: same as +TREELIST_EXTENDEDLIST+
208
+
209
+ class FXTreeList < FXScrollArea
210
+
211
+ # Number of items [Integer]
212
+ attr_reader :numItems
213
+
214
+ # Number of visible items [Integer]
215
+ attr_accessor :numVisible
216
+
217
+ # First root-level item [FXTreeItem]
218
+ attr_reader :firstItem
219
+
220
+ # Last root-level item [FXTreeItem]
221
+ attr_reader :lastItem
222
+
223
+ # Current item, if any [FXTreeItem]
224
+ attr_accessor :currentItem
225
+
226
+ # Anchor item, if any [FXTreeItem]
227
+ attr_accessor :anchorItem
228
+
229
+ # Item under the cursor, if any [FXTreeItem]
230
+ attr_reader :cursorItem
231
+
232
+ # Text font [FXFont]
233
+ attr_accessor :font
234
+
235
+ # Parent-child indent amount, in pixels [Integer]
236
+ attr_accessor :indent
237
+
238
+ # Normal text color [FXColor]
239
+ attr_accessor :textColor
240
+
241
+ # Selected text background color [FXColor]
242
+ attr_accessor :selBackColor
243
+
244
+ # Selected text color [FXColor]
245
+ attr_accessor :selTextColor
246
+
247
+ # Line color [FXColor]
248
+ attr_accessor :lineColor
249
+
250
+ # List style [Integer]
251
+ attr_accessor :listStyle
252
+
253
+ # Status line help text for this list [String]
254
+ attr_accessor :helpText
255
+
256
+ #
257
+ # Construct a new, initially empty tree list.
258
+ #
259
+ # ==== Parameters:
260
+ #
261
+ # +p+:: the parent window for this tree list [FXComposite]
262
+ # +target+:: the message target, if any, for this tree list [FXObject]
263
+ # +selector+:: the message identifier for this tree list [Integer]
264
+ # +opts+:: tree list options [Integer]
265
+ # +x+:: initial x-position [Integer]
266
+ # +y+:: initial y-position [Integer]
267
+ # +width+:: initial width [Integer]
268
+ # +height+:: initial height [Integer]
269
+ #
270
+ def initialize(p, target=nil, selector=0, opts=TREELIST_NORMAL, x=0, y=0, width=0, height=0) # :yields: theTreeList
271
+ end
272
+
273
+ #
274
+ # Fill tree list by appending items from array of strings and return the
275
+ # number of items added.
276
+ # If _notify_ is +true+, a +SEL_INSERTED+ message is sent to the list's
277
+ # message target after each item is added.
278
+ #
279
+ def fillItems(father, strings, oi=nil, ci=nil, ptr=nil, notify=false); end
280
+
281
+ # Insert a new (possibly subclassed) _item_ under _father_ before _other_ item
282
+ # Returns a reference to the newly added item (an FXTreeItem instance).
283
+ # If _notify_ is +true+, a +SEL_INSERTED+ message is sent to the list's message
284
+ # target after the item is added.
285
+ def insertItem(other, father, item, notify=false); end
286
+
287
+ # Insert item with given text and optional icons, and user-data pointer under _father_ before _other_ item.
288
+ # Returns a reference to the newly added item (an FXTreeItem instance).
289
+ # If _notify_ is +true+, a +SEL_INSERTED+ message is sent to the list's message
290
+ # target after the item is added.
291
+ def insertItem(other, father, text, oi=nil, ci=nil, ptr=nil, notify=false); end
292
+
293
+ # Append a new (possibly subclassed) _item_ as last child of _father_.
294
+ # Returns a reference to the newly added item (an FXTreeItem instance).
295
+ # If _notify_ is +true+, a +SEL_INSERTED+ message is sent to the list's message
296
+ # target after the item is added.
297
+ def appendItem(father, item, notify=false); end
298
+
299
+ # Append item with given text and optional icons, and user-data pointer as last child of _father_.
300
+ # Returns a reference to the newly added item (an FXTreeItem instance).
301
+ # If _notify_ is +true+, a +SEL_INSERTED+ message is sent to the list's message
302
+ # target after the item is added.
303
+ def appendItem(father, text, oi=nil, ci=nil, ptr=nil, notify=false); end
304
+
305
+ # Prepend a new (possibly subclassed) _item_ as first child of _father_.
306
+ # Returns a reference to the newly added item (an FXTreeItem instance).
307
+ # If _notify_ is +true+, a +SEL_INSERTED+ message is sent to the list's message
308
+ # target after the item is added.
309
+ def prependItem(father, item, notify=false); end
310
+
311
+ # Prepend item with given text and optional icons, and user-data pointer as first child of _father_.
312
+ # Returns a reference to the newly added item (an FXTreeItem instance).
313
+ # If _notify_ is +true+, a +SEL_INSERTED+ message is sent to the list's message
314
+ # target after the item is added.
315
+ def prependItem(father, text, oi=nil, ci=nil, ptr=nil, notify=false); end
316
+
317
+ #
318
+ # Move _item_ under _father_ before _other_ item and return a reference to
319
+ # _item_.
320
+ #
321
+ def moveItem(other, father, item); end
322
+
323
+ #
324
+ # Extract item from list and return a reference to the item.
325
+ # If _notify_ is +true+ and the extraction causes the list's current item
326
+ # to change, a +SEL_CHANGED+ message is sent to the list's message target
327
+ # before the item is extracted from the list.
328
+ #
329
+ def extractItem(item, notify=false); end
330
+
331
+ # Remove item.
332
+ # If _notify_ is +true+, a +SEL_DELETED+ message is sent to the list's message
333
+ # target before the item is removed.
334
+ def removeItem(item, notify=false);
335
+
336
+ # Remove items in range [_fromItem_, _toItem_] inclusively.
337
+ # If _notify_ is +true+, a +SEL_DELETED+ message is sent to the list's message
338
+ # target before each item is removed.
339
+ def removeItems(fromItem, toItem, notify=false); end
340
+
341
+ # Remove all items from the list.
342
+ # If _notify_ is +true+, a +SEL_DELETED+ message is sent to the list's message
343
+ # target before each item is removed.
344
+ def clearItems(notify=false); end
345
+
346
+ # Return item width
347
+ def getItemWidth(item); end
348
+
349
+ # Return item height
350
+ def getItemHeight(item); end
351
+
352
+ # Return a reference to the tree item at (_x_, _y_), if any.
353
+ def getItemAt(x, y); end
354
+
355
+ #
356
+ # Search items by _text_, beginning from item _start_ (an FXTreeItem instance).
357
+ # If the start item is +nil+, the search will start at the first, top-most
358
+ # item in the list.
359
+ # Flags may be +SEARCH_FORWARD+ or +SEARCH_BACKWARD+ to control the search
360
+ # direction; this can be combined with +SEARCH_NOWRAP+ or +SEARCH_WRAP+
361
+ # to control whether the search wraps at the start or end of the list.
362
+ # The option +SEARCH_IGNORECASE+ causes a case-insensitive match. Finally,
363
+ # passing +SEARCH_PREFIX+ causes searching for a prefix of the item name.
364
+ # Return +nil+ if no matching item is found.
365
+ #
366
+ def findItem(text, start=nil, flags=SEARCH_FORWARD|SEARCH_WRAP); end
367
+
368
+ #
369
+ # Search items by associated user _data_, beginning from item _start_
370
+ # (an FXTreeItem instance).
371
+ # If the start item is +nil+ the search will start at the first, top-most item
372
+ # in the list.
373
+ # Flags may be +SEARCH_FORWARD+ or +SEARCH_BACKWARD+ to control the search
374
+ # direction; this can be combined with +SEARCH_NOWRAP+ or +SEARCH_WRAP+
375
+ # to control whether the search wraps at the start or end of the list.
376
+ # Return +nil+ if no matching item is found.
377
+ #
378
+ def findItemByData(data, start=nil, flags=SEARCH_FORWARD|SEARCH_WRAP); end
379
+
380
+ # Scroll the list to make _item_ visible
381
+ def makeItemVisible(item); end
382
+
383
+ # Change item's text
384
+ def setItemText(item, text); end
385
+
386
+ # Return item's text
387
+ def getItemText(item); end
388
+
389
+ # Change item's open icon, deleting the old icon if it's owned
390
+ def setItemOpenIcon(item, openIcon, owned=false); end
391
+
392
+ # Return item's open icon
393
+ def getItemOpenIcon(item); end
394
+
395
+ # Change item's closed icon, deleting the old icon if it's owned
396
+ def setItemClosedIcon(item, closedIcon, owned=false); end
397
+
398
+ # Return item's closed icon
399
+ def getItemClosedIcon(item); end
400
+
401
+ # Change item's user data
402
+ def setItemData(item, data); end
403
+
404
+ # Return item's user data
405
+ def getItemData(item); end
406
+
407
+ # Return +true+ if item is selected
408
+ def itemSelected?(item); end
409
+
410
+ # Return +true+ if item is current
411
+ def itemCurrent?(item); end
412
+
413
+ # Return +true+ if item is visible
414
+ def itemVisible?(item); end
415
+
416
+ # Return +true+ if item opened
417
+ def itemOpened?(item); end
418
+
419
+ # Return +true+ if item expanded
420
+ def itemExpanded?(item); end
421
+
422
+ # Return +true+ if item is a leaf-item, i.e. has no children
423
+ def itemLeaf?(item); end
424
+
425
+ # Return +true+ if item is enabled
426
+ def itemEnabled?(item); end
427
+
428
+ # Return item hit code: 0 outside, 1 icon, 2 text, 3 box
429
+ def hitItem(item, x, y); end
430
+
431
+ # Repaint item
432
+ def updateItem(item); end
433
+
434
+ # Enable item
435
+ def enableItem(item); end
436
+
437
+ # Disable item
438
+ def disableItem(item); end
439
+
440
+ # Select item.
441
+ # If _notify_ is +true+, a +SEL_SELECTED+ message is sent to the list's
442
+ # message target after the item is selected.
443
+ def selectItem(item, notify=false); end
444
+
445
+ # Deselect item.
446
+ # If _notify_ is +true+, a +SEL_DESELECTED+ message is sent to the list's
447
+ # message target after the item is deselected.
448
+ def deselectItem(item, notify=false); end
449
+
450
+ # Toggle item selection.
451
+ # If _notify_ is +true+, a +SEL_SELECTED+ or +SEL_DESELECTED+ message is
452
+ # sent to the list's message target to indicate the change.
453
+ def toggleItem(item, notify=false); end
454
+
455
+ #
456
+ # Set this item's state to opened. The primary result of this change is
457
+ # that the item's icon will change to its "open" icon.
458
+ # This is different from the #expandTree method, which actually
459
+ # collapses part of the tree list, making some items invisible.
460
+ # If _notify_ is +true+, a +SEL_OPENED+ message is sent to the list's
461
+ # message target after the item is opened.
462
+ #
463
+ def openItem(item, notify=false); end
464
+
465
+ #
466
+ # Set this item's state to closed. The primary result of this change is
467
+ # that the item's icon will change to its "closed" icon.
468
+ # This is different from the #collapseTree method, which actually
469
+ # collapses part of the tree list, making some items invisible.
470
+ # If _notify_ is +true+, a +SEL_CLOSED+ message is sent to the list's
471
+ # message target after the item is closed.
472
+ #
473
+ def closeItem(item, notify=false); end
474
+
475
+ # Collapse sub-tree rooted at _tree_.
476
+ # If _notify_ is +true+, a +SEL_COLLAPSED+ message is sent to the list's
477
+ # message target after the sub-tree is collapsed.
478
+ def collapseTree(tree, notify=false); end
479
+
480
+ # Expand sub-tree rooted at _tree_.
481
+ # If _notify_ is +true+, a +SEL_EXPANDED+ message is sent to the list's
482
+ # message target after the sub-tree is expanded.
483
+ def expandTree(tree, notify=false); end
484
+
485
+ #
486
+ # Change current item. If there is already a current item, that item
487
+ # is first closed. After _item_ is set as the tree list's current item,
488
+ # it is opened and selected.
489
+ # If _notify_ is +true+, a +SEL_CHANGED+ message is sent to the list's
490
+ # message target after the current item changes.
491
+ #
492
+ def setCurrentItem(item, notify=false); end
493
+
494
+ # Extend selection from anchor item to _item_.
495
+ # If _notify_ is +true+, a series of +SEL_SELECTED+ and +SEL_DESELECTED+
496
+ # messages may be sent to the list's message target, indicating the changes.
497
+ def extendSelection(item, notify=false); end
498
+
499
+ # Deselect all items.
500
+ # If _notify_ is +true+, +SEL_DESELECTED+ messages will be sent to the list's
501
+ # message target indicating the affected items.
502
+ def killSelection(notify=false); end
503
+
504
+ # Sort root items.
505
+ def sortRootItems(); end
506
+
507
+ # Sort all items recursively.
508
+ def sortItems(); end
509
+
510
+ # Sort children of _item_
511
+ def sortChildItems(item); end
512
+ end
513
+ end
514
+