fxruby 1.6.19-x86-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 (497) 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 +132 -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 +777 -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 +72 -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/charts.rb +35 -0
  78. data/examples/custom_table_item.rb +170 -0
  79. data/examples/datatarget.rb +223 -0
  80. data/examples/dctest.rb +696 -0
  81. data/examples/dialog.rb +143 -0
  82. data/examples/dilbert.rb +66 -0
  83. data/examples/dirlist.rb +63 -0
  84. data/examples/dragdrop.rb +97 -0
  85. data/examples/dragsource.rb +80 -0
  86. data/examples/dropsite.rb +59 -0
  87. data/examples/foursplit.rb +97 -0
  88. data/examples/gltest.rb +330 -0
  89. data/examples/glviewer.rb +576 -0
  90. data/examples/groupbox.rb +392 -0
  91. data/examples/header.rb +149 -0
  92. data/examples/hello.rb +12 -0
  93. data/examples/hello2.rb +51 -0
  94. data/examples/iRAA.rb +153 -0
  95. data/examples/iconlist.rb +92 -0
  96. data/examples/icons/AngryGuyInBunnySuit.ico +0 -0
  97. data/examples/icons/FatBot.ico +0 -0
  98. data/examples/icons/FlippedySwitch.ico +0 -0
  99. data/examples/icons/LeGoon.ico +0 -0
  100. data/examples/icons/Net.ico +0 -0
  101. data/examples/icons/RedMacOS.ico +0 -0
  102. data/examples/icons/SawBlade.ico +0 -0
  103. data/examples/icons/backview.png +0 -0
  104. data/examples/icons/big.png +0 -0
  105. data/examples/icons/bigfolder.png +0 -0
  106. data/examples/icons/bigpenguin.png +0 -0
  107. data/examples/icons/bottomview.png +0 -0
  108. data/examples/icons/camera.png +0 -0
  109. data/examples/icons/capbutt.png +0 -0
  110. data/examples/icons/capnotlast.png +0 -0
  111. data/examples/icons/capproj.png +0 -0
  112. data/examples/icons/capround.png +0 -0
  113. data/examples/icons/colorpal.png +0 -0
  114. data/examples/icons/copy.png +0 -0
  115. data/examples/icons/cut.png +0 -0
  116. data/examples/icons/delimit.png +0 -0
  117. data/examples/icons/dippy.png +0 -0
  118. data/examples/icons/double_dash.png +0 -0
  119. data/examples/icons/filenew.png +0 -0
  120. data/examples/icons/fileopen.png +0 -0
  121. data/examples/icons/filesave.png +0 -0
  122. data/examples/icons/filesaveas.png +0 -0
  123. data/examples/icons/fonts.png +0 -0
  124. data/examples/icons/fox.png +0 -0
  125. data/examples/icons/foxicon.png +0 -0
  126. data/examples/icons/frontview.png +0 -0
  127. data/examples/icons/gem_big.png +0 -0
  128. data/examples/icons/gem_small.png +0 -0
  129. data/examples/icons/hello2.png +0 -0
  130. data/examples/icons/help.png +0 -0
  131. data/examples/icons/indent.png +0 -0
  132. data/examples/icons/jbevel.png +0 -0
  133. data/examples/icons/jmiter.png +0 -0
  134. data/examples/icons/jround.png +0 -0
  135. data/examples/icons/kill.png +0 -0
  136. data/examples/icons/leftview.png +0 -0
  137. data/examples/icons/light.png +0 -0
  138. data/examples/icons/minidoc.png +0 -0
  139. data/examples/icons/minifolder.png +0 -0
  140. data/examples/icons/minifolderopen.png +0 -0
  141. data/examples/icons/newfolder.png +0 -0
  142. data/examples/icons/nolight.png +0 -0
  143. data/examples/icons/onoff_dash.png +0 -0
  144. data/examples/icons/palette.png +0 -0
  145. data/examples/icons/parallel.png +0 -0
  146. data/examples/icons/paste.png +0 -0
  147. data/examples/icons/pattern.png +0 -0
  148. data/examples/icons/penguin.png +0 -0
  149. data/examples/icons/perspective.png +0 -0
  150. data/examples/icons/printicon.png +0 -0
  151. data/examples/icons/prop.png +0 -0
  152. data/examples/icons/redo.png +0 -0
  153. data/examples/icons/rightview.png +0 -0
  154. data/examples/icons/saveas.png +0 -0
  155. data/examples/icons/shutter1.png +0 -0
  156. data/examples/icons/shutter2.png +0 -0
  157. data/examples/icons/small.png +0 -0
  158. data/examples/icons/smoothlight.png +0 -0
  159. data/examples/icons/solid_line.png +0 -0
  160. data/examples/icons/tbuplevel.png +0 -0
  161. data/examples/icons/topview.png +0 -0
  162. data/examples/icons/undo.png +0 -0
  163. data/examples/icons/winapp.png +0 -0
  164. data/examples/icons/zoom.png +0 -0
  165. data/examples/image.rb +279 -0
  166. data/examples/imageviewer.rb +509 -0
  167. data/examples/inputs.rb +83 -0
  168. data/examples/mditest.rb +180 -0
  169. data/examples/pig.rb +77 -0
  170. data/examples/raabrowser.rb +122 -0
  171. data/examples/ratio.rb +80 -0
  172. data/examples/rulerview.rb +27 -0
  173. data/examples/scintilla-test.rb +81 -0
  174. data/examples/scribble-orig.rb +186 -0
  175. data/examples/scribble.rb +162 -0
  176. data/examples/shutter.rb +158 -0
  177. data/examples/splitter.rb +211 -0
  178. data/examples/styledtext.rb +82 -0
  179. data/examples/tabbook.rb +165 -0
  180. data/examples/table.rb +182 -0
  181. data/examples/textedit/commands.rb +114 -0
  182. data/examples/textedit/helpwindow.rb +299 -0
  183. data/examples/textedit/prefdialog.rb +239 -0
  184. data/examples/textedit/textedit.rb +1763 -0
  185. data/examples/unicode.rb +36 -0
  186. data/ext/fox16/fox16.so +0 -0
  187. data/index.html +14 -0
  188. data/lib/fox16/accel_table.rb +70 -0
  189. data/lib/fox16/aliases.rb +5611 -0
  190. data/lib/fox16/calendar.rb +217 -0
  191. data/lib/fox16/chore.rb +105 -0
  192. data/lib/fox16/colors.rb +280 -0
  193. data/lib/fox16/core.rb +700 -0
  194. data/lib/fox16/dict.rb +35 -0
  195. data/lib/fox16/exceptions_for_fxerror.rb +17 -0
  196. data/lib/fox16/execute_nonmodal.rb +70 -0
  197. data/lib/fox16/glgroup.rb +166 -0
  198. data/lib/fox16/glshapes.rb +456 -0
  199. data/lib/fox16/input.rb +59 -0
  200. data/lib/fox16/irb.rb +178 -0
  201. data/lib/fox16/iterators.rb +420 -0
  202. data/lib/fox16/keys.rb +1374 -0
  203. data/lib/fox16/kwargs.rb +2740 -0
  204. data/lib/fox16/missingdep.rb +14 -0
  205. data/lib/fox16/pseudokeyboard.rb +40 -0
  206. data/lib/fox16/pseudomouse.rb +87 -0
  207. data/lib/fox16/responder.rb +70 -0
  208. data/lib/fox16/responder2.rb +132 -0
  209. data/lib/fox16/scintilla.rb +3641 -0
  210. data/lib/fox16/settings.rb +18 -0
  211. data/lib/fox16/signal.rb +71 -0
  212. data/lib/fox16/splashscreen.rb +82 -0
  213. data/lib/fox16/timeout.rb +136 -0
  214. data/lib/fox16/undolist.rb +455 -0
  215. data/lib/fox16/version.rb +9 -0
  216. data/rdoc-sources/FX4Splitter.rb +156 -0
  217. data/rdoc-sources/FX7Segment.rb +54 -0
  218. data/rdoc-sources/FXAccelTable.rb +84 -0
  219. data/rdoc-sources/FXApp.rb +545 -0
  220. data/rdoc-sources/FXArrowButton.rb +69 -0
  221. data/rdoc-sources/FXBMPIcon.rb +67 -0
  222. data/rdoc-sources/FXBMPImage.rb +30 -0
  223. data/rdoc-sources/FXBitmap.rb +115 -0
  224. data/rdoc-sources/FXBitmapFrame.rb +31 -0
  225. data/rdoc-sources/FXBitmapView.rb +44 -0
  226. data/rdoc-sources/FXButton.rb +59 -0
  227. data/rdoc-sources/FXCURCursor.rb +13 -0
  228. data/rdoc-sources/FXCanvas.rb +18 -0
  229. data/rdoc-sources/FXCheckButton.rb +58 -0
  230. data/rdoc-sources/FXChoiceBox.rb +49 -0
  231. data/rdoc-sources/FXColorBar.rb +48 -0
  232. data/rdoc-sources/FXColorDialog.rb +37 -0
  233. data/rdoc-sources/FXColorList.rb +55 -0
  234. data/rdoc-sources/FXColorRing.rb +49 -0
  235. data/rdoc-sources/FXColorSelector.rb +65 -0
  236. data/rdoc-sources/FXColorWell.rb +65 -0
  237. data/rdoc-sources/FXColorWheel.rb +57 -0
  238. data/rdoc-sources/FXComboBox.rb +214 -0
  239. data/rdoc-sources/FXComposite.rb +34 -0
  240. data/rdoc-sources/FXCursor.rb +67 -0
  241. data/rdoc-sources/FXDC.rb +720 -0
  242. data/rdoc-sources/FXDCPrint.rb +127 -0
  243. data/rdoc-sources/FXDCWindow.rb +33 -0
  244. data/rdoc-sources/FXDataTarget.rb +66 -0
  245. data/rdoc-sources/FXDebugTarget.rb +25 -0
  246. data/rdoc-sources/FXDelegator.rb +23 -0
  247. data/rdoc-sources/FXDial.rb +107 -0
  248. data/rdoc-sources/FXDialogBox.rb +32 -0
  249. data/rdoc-sources/FXDict.rb +79 -0
  250. data/rdoc-sources/FXDirBox.rb +55 -0
  251. data/rdoc-sources/FXDirDialog.rb +47 -0
  252. data/rdoc-sources/FXDirList.rb +149 -0
  253. data/rdoc-sources/FXDirSelector.rb +64 -0
  254. data/rdoc-sources/FXDockBar.rb +151 -0
  255. data/rdoc-sources/FXDockHandler.rb +26 -0
  256. data/rdoc-sources/FXDockSite.rb +104 -0
  257. data/rdoc-sources/FXDockTitle.rb +26 -0
  258. data/rdoc-sources/FXDocument.rb +29 -0
  259. data/rdoc-sources/FXDragCorner.rb +19 -0
  260. data/rdoc-sources/FXDrawable.rb +27 -0
  261. data/rdoc-sources/FXDriveBox.rb +46 -0
  262. data/rdoc-sources/FXExtentd.rb +85 -0
  263. data/rdoc-sources/FXExtentf.rb +85 -0
  264. data/rdoc-sources/FXFileDialog.rb +217 -0
  265. data/rdoc-sources/FXFileDict.rb +131 -0
  266. data/rdoc-sources/FXFileList.rb +208 -0
  267. data/rdoc-sources/FXFileSelector.rb +184 -0
  268. data/rdoc-sources/FXFileStream.rb +27 -0
  269. data/rdoc-sources/FXFoldingList.rb +504 -0
  270. data/rdoc-sources/FXFont.rb +361 -0
  271. data/rdoc-sources/FXFontDialog.rb +14 -0
  272. data/rdoc-sources/FXFontSelector.rb +37 -0
  273. data/rdoc-sources/FXFrame.rb +53 -0
  274. data/rdoc-sources/FXGIFCursor.rb +50 -0
  275. data/rdoc-sources/FXGIFIcon.rb +31 -0
  276. data/rdoc-sources/FXGIFImage.rb +29 -0
  277. data/rdoc-sources/FXGLCanvas.rb +45 -0
  278. data/rdoc-sources/FXGLContext.rb +40 -0
  279. data/rdoc-sources/FXGLObject.rb +75 -0
  280. data/rdoc-sources/FXGLShape.rb +69 -0
  281. data/rdoc-sources/FXGLViewer.rb +332 -0
  282. data/rdoc-sources/FXGLVisual.rb +94 -0
  283. data/rdoc-sources/FXGradientBar.rb +301 -0
  284. data/rdoc-sources/FXGroupBox.rb +36 -0
  285. data/rdoc-sources/FXHeader.rb +411 -0
  286. data/rdoc-sources/FXHorizontalFrame.rb +29 -0
  287. data/rdoc-sources/FXICOIcon.rb +65 -0
  288. data/rdoc-sources/FXICOImage.rb +31 -0
  289. data/rdoc-sources/FXIcon.rb +38 -0
  290. data/rdoc-sources/FXIconDict.rb +48 -0
  291. data/rdoc-sources/FXIconList.rb +450 -0
  292. data/rdoc-sources/FXIconSource.rb +100 -0
  293. data/rdoc-sources/FXId.rb +34 -0
  294. data/rdoc-sources/FXImage.rb +292 -0
  295. data/rdoc-sources/FXImageFrame.rb +36 -0
  296. data/rdoc-sources/FXImageView.rb +35 -0
  297. data/rdoc-sources/FXInputDialog.rb +80 -0
  298. data/rdoc-sources/FXJPGIcon.rb +70 -0
  299. data/rdoc-sources/FXJPGImage.rb +38 -0
  300. data/rdoc-sources/FXKnob.rb +76 -0
  301. data/rdoc-sources/FXLabel.rb +72 -0
  302. data/rdoc-sources/FXList.rb +443 -0
  303. data/rdoc-sources/FXListBox.rb +191 -0
  304. data/rdoc-sources/FXMDIButton.rb +67 -0
  305. data/rdoc-sources/FXMDIChild.rb +155 -0
  306. data/rdoc-sources/FXMDIClient.rb +65 -0
  307. data/rdoc-sources/FXMainWindow.rb +26 -0
  308. data/rdoc-sources/FXMatrix.rb +57 -0
  309. data/rdoc-sources/FXMemoryBuffer.rb +28 -0
  310. data/rdoc-sources/FXMemoryStream.rb +50 -0
  311. data/rdoc-sources/FXMenuBar.rb +23 -0
  312. data/rdoc-sources/FXMenuButton.rb +84 -0
  313. data/rdoc-sources/FXMenuCaption.rb +53 -0
  314. data/rdoc-sources/FXMenuCascade.rb +18 -0
  315. data/rdoc-sources/FXMenuCheck.rb +30 -0
  316. data/rdoc-sources/FXMenuCommand.rb +26 -0
  317. data/rdoc-sources/FXMenuPane.rb +13 -0
  318. data/rdoc-sources/FXMenuRadio.rb +33 -0
  319. data/rdoc-sources/FXMenuSeparator.rb +21 -0
  320. data/rdoc-sources/FXMenuTitle.rb +27 -0
  321. data/rdoc-sources/FXMessageBox.rb +73 -0
  322. data/rdoc-sources/FXObject.rb +28 -0
  323. data/rdoc-sources/FXOptionMenu.rb +83 -0
  324. data/rdoc-sources/FXPCXIcon.rb +63 -0
  325. data/rdoc-sources/FXPCXImage.rb +31 -0
  326. data/rdoc-sources/FXPNGIcon.rb +66 -0
  327. data/rdoc-sources/FXPNGImage.rb +34 -0
  328. data/rdoc-sources/FXPPMIcon.rb +36 -0
  329. data/rdoc-sources/FXPPMImage.rb +31 -0
  330. data/rdoc-sources/FXPacker.rb +63 -0
  331. data/rdoc-sources/FXPicker.rb +27 -0
  332. data/rdoc-sources/FXPopup.rb +53 -0
  333. data/rdoc-sources/FXPrintDialog.rb +36 -0
  334. data/rdoc-sources/FXProgressBar.rb +57 -0
  335. data/rdoc-sources/FXProgressDialog.rb +36 -0
  336. data/rdoc-sources/FXQuatd.rb +164 -0
  337. data/rdoc-sources/FXQuatf.rb +173 -0
  338. data/rdoc-sources/FXRGBIcon.rb +64 -0
  339. data/rdoc-sources/FXRGBImage.rb +31 -0
  340. data/rdoc-sources/FXRadioButton.rb +70 -0
  341. data/rdoc-sources/FXRanged.rb +100 -0
  342. data/rdoc-sources/FXRangef.rb +100 -0
  343. data/rdoc-sources/FXRealSlider.rb +101 -0
  344. data/rdoc-sources/FXRealSpinner.rb +140 -0
  345. data/rdoc-sources/FXRecentFiles.rb +77 -0
  346. data/rdoc-sources/FXRectangle.rb +149 -0
  347. data/rdoc-sources/FXRegion.rb +64 -0
  348. data/rdoc-sources/FXRegistry.rb +56 -0
  349. data/rdoc-sources/FXReplaceDialog.rb +56 -0
  350. data/rdoc-sources/FXRootWindow.rb +17 -0
  351. data/rdoc-sources/FXRuler.rb +130 -0
  352. data/rdoc-sources/FXRulerView.rb +225 -0
  353. data/rdoc-sources/FXScintilla.rb +121 -0
  354. data/rdoc-sources/FXScrollArea.rb +86 -0
  355. data/rdoc-sources/FXScrollBar.rb +107 -0
  356. data/rdoc-sources/FXScrollPane.rb +28 -0
  357. data/rdoc-sources/FXScrollWindow.rb +38 -0
  358. data/rdoc-sources/FXSearchDialog.rb +24 -0
  359. data/rdoc-sources/FXSeparator.rb +74 -0
  360. data/rdoc-sources/FXSettings.rb +248 -0
  361. data/rdoc-sources/FXShell.rb +8 -0
  362. data/rdoc-sources/FXShutter.rb +102 -0
  363. data/rdoc-sources/FXSize.rb +95 -0
  364. data/rdoc-sources/FXSlider.rb +98 -0
  365. data/rdoc-sources/FXSphered.rb +80 -0
  366. data/rdoc-sources/FXSpheref.rb +80 -0
  367. data/rdoc-sources/FXSpinner.rb +136 -0
  368. data/rdoc-sources/FXSplashWindow.rb +27 -0
  369. data/rdoc-sources/FXSplitter.rb +89 -0
  370. data/rdoc-sources/FXSpring.rb +61 -0
  371. data/rdoc-sources/FXStatusBar.rb +42 -0
  372. data/rdoc-sources/FXStatusLine.rb +60 -0
  373. data/rdoc-sources/FXStream.rb +142 -0
  374. data/rdoc-sources/FXStringDict.rb +38 -0
  375. data/rdoc-sources/FXSwitcher.rb +78 -0
  376. data/rdoc-sources/FXTGAIcon.rb +63 -0
  377. data/rdoc-sources/FXTGAImage.rb +31 -0
  378. data/rdoc-sources/FXTIFIcon.rb +70 -0
  379. data/rdoc-sources/FXTIFImage.rb +37 -0
  380. data/rdoc-sources/FXTabBar.rb +80 -0
  381. data/rdoc-sources/FXTabBook.rb +41 -0
  382. data/rdoc-sources/FXTabItem.rb +58 -0
  383. data/rdoc-sources/FXTable.rb +975 -0
  384. data/rdoc-sources/FXText.rb +581 -0
  385. data/rdoc-sources/FXTextField.rb +151 -0
  386. data/rdoc-sources/FXToggleButton.rb +70 -0
  387. data/rdoc-sources/FXToolBar.rb +61 -0
  388. data/rdoc-sources/FXToolBarGrip.rb +50 -0
  389. data/rdoc-sources/FXToolBarShell.rb +44 -0
  390. data/rdoc-sources/FXToolBarTab.rb +74 -0
  391. data/rdoc-sources/FXToolTip.rb +39 -0
  392. data/rdoc-sources/FXTopWindow.rb +163 -0
  393. data/rdoc-sources/FXTranslator.rb +32 -0
  394. data/rdoc-sources/FXTreeList.rb +514 -0
  395. data/rdoc-sources/FXTreeListBox.rb +219 -0
  396. data/rdoc-sources/FXTriStateButton.rb +49 -0
  397. data/rdoc-sources/FXVec2d.rb +96 -0
  398. data/rdoc-sources/FXVec2f.rb +96 -0
  399. data/rdoc-sources/FXVec3d.rb +118 -0
  400. data/rdoc-sources/FXVec3f.rb +118 -0
  401. data/rdoc-sources/FXVec4d.rb +139 -0
  402. data/rdoc-sources/FXVec4f.rb +139 -0
  403. data/rdoc-sources/FXVerticalFrame.rb +29 -0
  404. data/rdoc-sources/FXVisual.rb +79 -0
  405. data/rdoc-sources/FXWindow.rb +725 -0
  406. data/rdoc-sources/FXWizard.rb +59 -0
  407. data/rdoc-sources/FXXBMIcon.rb +37 -0
  408. data/rdoc-sources/FXXBMImage.rb +32 -0
  409. data/rdoc-sources/FXXPMIcon.rb +65 -0
  410. data/rdoc-sources/FXXPMImage.rb +31 -0
  411. data/rdoc-sources/README.rdoc +53 -0
  412. data/rdoc-sources/fxdefs.rb +90 -0
  413. data/tests/README +19 -0
  414. data/tests/TC_FXAccelTable.rb +57 -0
  415. data/tests/TC_FXApp.rb +16 -0
  416. data/tests/TC_FXArc.rb +26 -0
  417. data/tests/TC_FXBMPIcon.rb +15 -0
  418. data/tests/TC_FXBMPImage.rb +15 -0
  419. data/tests/TC_FXButton.rb +78 -0
  420. data/tests/TC_FXCheckButton.rb +57 -0
  421. data/tests/TC_FXComboBox.rb +63 -0
  422. data/tests/TC_FXDC.rb +372 -0
  423. data/tests/TC_FXDCPrint.rb +101 -0
  424. data/tests/TC_FXDCWindow.rb +23 -0
  425. data/tests/TC_FXDataTarget.rb +24 -0
  426. data/tests/TC_FXDialogBox.rb +12 -0
  427. data/tests/TC_FXDirList.rb +30 -0
  428. data/tests/TC_FXExtentd.rb +21 -0
  429. data/tests/TC_FXExtentf.rb +21 -0
  430. data/tests/TC_FXFileAssoc.rb +62 -0
  431. data/tests/TC_FXFileStream.rb +89 -0
  432. data/tests/TC_FXFoldingList.rb +32 -0
  433. data/tests/TC_FXFont.rb +69 -0
  434. data/tests/TC_FXFontDesc.rb +58 -0
  435. data/tests/TC_FXGLGroup.rb +32 -0
  436. data/tests/TC_FXGLShape.rb +28 -0
  437. data/tests/TC_FXGLViewer.rb +20 -0
  438. data/tests/TC_FXGradientBar.rb +89 -0
  439. data/tests/TC_FXHeader.rb +82 -0
  440. data/tests/TC_FXHiliteStyle.rb +23 -0
  441. data/tests/TC_FXIconDict.rb +52 -0
  442. data/tests/TC_FXIconList.rb +192 -0
  443. data/tests/TC_FXId.rb +19 -0
  444. data/tests/TC_FXImage.rb +155 -0
  445. data/tests/TC_FXLight.rb +33 -0
  446. data/tests/TC_FXList.rb +116 -0
  447. data/tests/TC_FXListBox.rb +49 -0
  448. data/tests/TC_FXMainWindow.rb +19 -0
  449. data/tests/TC_FXMat4f.rb +228 -0
  450. data/tests/TC_FXMaterial.rb +89 -0
  451. data/tests/TC_FXMemoryStream.rb +97 -0
  452. data/tests/TC_FXMenuCheck.rb +57 -0
  453. data/tests/TC_FXMenuCommand.rb +12 -0
  454. data/tests/TC_FXMenuRadio.rb +57 -0
  455. data/tests/TC_FXMessageBox.rb +25 -0
  456. data/tests/TC_FXPoint.rb +57 -0
  457. data/tests/TC_FXQuatf.rb +93 -0
  458. data/tests/TC_FXRadioButton.rb +57 -0
  459. data/tests/TC_FXRanged.rb +42 -0
  460. data/tests/TC_FXRangef.rb +42 -0
  461. data/tests/TC_FXRectangle.rb +88 -0
  462. data/tests/TC_FXRegion.rb +54 -0
  463. data/tests/TC_FXRegistry.rb +27 -0
  464. data/tests/TC_FXScrollArea.rb +28 -0
  465. data/tests/TC_FXScrollWindow.rb +28 -0
  466. data/tests/TC_FXSegment.rb +22 -0
  467. data/tests/TC_FXSettings.rb +34 -0
  468. data/tests/TC_FXShell.rb +26 -0
  469. data/tests/TC_FXSize.rb +54 -0
  470. data/tests/TC_FXStream.rb +11 -0
  471. data/tests/TC_FXTable.rb +561 -0
  472. data/tests/TC_FXTableItem.rb +48 -0
  473. data/tests/TC_FXText.rb +96 -0
  474. data/tests/TC_FXTopWindow.rb +32 -0
  475. data/tests/TC_FXTreeList.rb +100 -0
  476. data/tests/TC_FXTreeListBox.rb +41 -0
  477. data/tests/TC_FXUndoList.rb +43 -0
  478. data/tests/TC_FXVec2d.rb +142 -0
  479. data/tests/TC_FXVec2f.rb +137 -0
  480. data/tests/TC_FXVec3d.rb +150 -0
  481. data/tests/TC_FXVec3f.rb +150 -0
  482. data/tests/TC_FXVec4f.rb +158 -0
  483. data/tests/TC_FXViewport.rb +30 -0
  484. data/tests/TC_FXXBMIcon.rb +15 -0
  485. data/tests/TC_FXXBMImage.rb +15 -0
  486. data/tests/TC_FXXPMIcon.rb +15 -0
  487. data/tests/TC_FXXPMImage.rb +15 -0
  488. data/tests/TC_Misc.rb +157 -0
  489. data/tests/TC_downcast.rb +15 -0
  490. data/tests/TS_All.rb +25 -0
  491. data/tests/blankpage.ps +166 -0
  492. data/tests/howdypage.ps +181 -0
  493. data/tests/stress1.rb +92 -0
  494. data/tests/stress2.rb +51 -0
  495. data/tests/stress3.rb +117 -0
  496. data/tests/testcase.rb +37 -0
  497. metadata +556 -0
@@ -0,0 +1,94 @@
1
+ module Fox
2
+ #
3
+ # Visual describes pixel format of a drawable
4
+ #
5
+ class FXGLVisual < FXVisual
6
+
7
+ # Requested number of bits of red (default is 8) [Integer]
8
+ attr_accessor :redSize
9
+
10
+ # Requested number of bits of green (default is 8) [Integer]
11
+ attr_accessor :greenSize
12
+
13
+ # Requested number of bits of blue (default is 8) [Integer]
14
+ attr_accessor :blueSize
15
+
16
+ # Requested number of bits of alpha (default is zero) [Integer]
17
+ attr_accessor :alphaSize
18
+
19
+ # Requested depth size (default is 16) [Integer]
20
+ attr_accessor :depthSize
21
+
22
+ # Requested stencil size (default is zero) [Integer]
23
+ attr_accessor :stencilSize
24
+
25
+ # Requested number of bits of red for the accumulation buffer (default is zero) [Integer]
26
+ attr_accessor :accumRedSize
27
+
28
+ # Requested number of bits of green for the accumulation buffer (default is zero) [Integer]
29
+ attr_accessor :accumGreenSize
30
+
31
+ # Requested number of bits of blue for the accumulation buffer (default is zero) [Integer]
32
+ attr_accessor :accumBlueSize
33
+
34
+ # Requested number of bits of alpha for the accumulation buffer (default is zero) [Integer]
35
+ attr_accessor :accumAlphaSize
36
+
37
+ # Actual number of bits of red [Integer]
38
+ attr_reader :actualRedSize
39
+
40
+ # Actual number of bits of green [Integer]
41
+ attr_reader :actualGreenSize
42
+
43
+ # Actual number of bits of blue [Integer]
44
+ attr_reader :actualBlueSize
45
+
46
+ # Actual number of bits of alpha [Integer]
47
+ attr_reader :actualAlphaSize
48
+
49
+ # Actual depth size [Integer]
50
+ attr_reader :actualDepthSize
51
+
52
+ # Actual stencil size [Integer]
53
+ attr_reader :actualStencilSize
54
+
55
+ # Actual number of bits of red for the accumulation buffer [Integer]
56
+ attr_reader :actualAccumRedSize
57
+
58
+ # Actual number of bits of green for the accumulation buffer [Integer]
59
+ attr_reader :actualAccumGreenSize
60
+
61
+ # Actual number of bits of blue for the accumulation buffer [Integer]
62
+ attr_reader :actualAccumBlueSize
63
+
64
+ # Actual number of bits of alpha for the accumulation buffer [Integer]
65
+ attr_reader :actualAccumAlphaSize
66
+
67
+ #
68
+ # Construct default visual
69
+ #
70
+ def initialize(app, flags) # :yields: theGLVisual
71
+
72
+ #
73
+ # Test if OpenGL is possible, and what level is supported.
74
+ # Because of remote display capability, the display server may
75
+ # support a different level of OpenGL than the client; it may
76
+ # even support no OpenGL at all! This function returns the lesser
77
+ # of the client support level and the display server support level.
78
+ #
79
+ def FXGLVisual.supported?(app); end
80
+
81
+ # Return +true+ if double-buffered
82
+ def doubleBuffered?; end
83
+
84
+ # Return +true+ if stereo
85
+ def stereo?; end
86
+
87
+ # Return +true+ if hardware-accelerated
88
+ def accelerated?; end
89
+
90
+ # Return +true+ if this visual "swaps" by copying instead of flipping buffers.
91
+ def bufferSwapCopy?; end
92
+ end
93
+ end
94
+
@@ -0,0 +1,301 @@
1
+ module Fox
2
+ #
3
+ # An FXGradientBar widget is defined in part by its array of "segments",
4
+ # each of which is an FXGradient instance. An FXGradient instance defines
5
+ # the properties of one segment, namely, the lower, middle and upper
6
+ # values (all Floats); the lower and upper color values; and the blending
7
+ # mode for the segment.
8
+ #
9
+ class FXGradient
10
+ # Lower value [Float]
11
+ attr_accessor :lower
12
+
13
+ # Middle value [Float]
14
+ attr_accessor :middle
15
+
16
+ # Upper value [Float]
17
+ attr_accessor :upper
18
+
19
+ # Lower color [FXColor]
20
+ attr_accessor :lowerColor
21
+
22
+ # Upper color [FXColor]
23
+ attr_accessor :upperColor
24
+
25
+ # Blend mode [Integer]
26
+ attr_accessor :blend
27
+ end
28
+
29
+ #
30
+ # The FXGradientBar is a control that is used to edit color gradient,
31
+ # such as used in texture mapping and shape filling.
32
+ #
33
+ # === Events
34
+ #
35
+ # The following messages are sent by FXGradientBar to its target:
36
+ #
37
+ # +SEL_LEFTBUTTONPRESS+:: sent when the left mouse button goes down; the message data is an FXEvent instance.
38
+ # +SEL_LEFTBUTTONRELEASE+:: sent when the left mouse button goes up; the message data is an FXEvent instance.
39
+ # +SEL_CHANGED+:: sent when anything about a segment changes; the message data is an integer indicating the segment number
40
+ # +SEL_SELECTED+:: sent when one or more segments are selected.
41
+ # +SEL_DESELECTED+:: sent when one or more segments are deselected.
42
+ #
43
+ # === Gradient bar orientation
44
+ #
45
+ # +GRADIENTBAR_HORIZONTAL+:: Gradient bar shown horizontally
46
+ # +GRADIENTBAR_VERTICAL+:: Gradient bar shown vertically
47
+ # +GRADIENTBAR_NO_CONTROLS+:: No controls shown
48
+ # +GRADIENTBAR_CONTROLS_TOP+:: Controls on top
49
+ # +GRADIENTBAR_CONTROLS_BOTTOM+:: Controls on bottom
50
+ # +GRADIENTBAR_CONTROLS_LEFT+:: Controls on left
51
+ # +GRADIENTBAR_CONTROLS_RIGHT+:: Controls on right
52
+ #
53
+ # === Blend modes
54
+ #
55
+ # +GRADIENT_BLEND_LINEAR+:: Linear blend
56
+ # +GRADIENT_BLEND_POWER+:: Power law blend
57
+ # +GRADIENT_BLEND_SINE+:: Sine blend
58
+ # +GRADIENT_BLEND_INCREASING+:: Quadratic increasing blend
59
+ # +GRADIENT_BLEND_DECREASING+:: Quadratic decreasing blend
60
+ #
61
+ # === Message identifiers
62
+ #
63
+ # +ID_LOWER_COLOR+:: write me
64
+ # +ID_UPPER_COLOR+:: write me
65
+ # +ID_BLEND_LINEAR+:: write me
66
+ # +ID_BLEND_POWER+:: write me
67
+ # +ID_BLEND_SINE+:: write me
68
+ # +ID_BLEND_INCREASING+:: write me
69
+ # +ID_BLEND_DECREASING+:: write me
70
+ # +ID_RECENTER+:: write me
71
+ # +ID_SPLIT+:: write me
72
+ # +ID_MERGE+:: write me
73
+ # +ID_UNIFORM+:: write me
74
+ #
75
+ class FXGradientBar < FXFrame
76
+
77
+ #
78
+ # Gradient bar style, some combination of +GRADIENTBAR_HORIZONTAL+,
79
+ # +GRADIENTBAR_VERTICAL+, +GRADIENTBAR_NO_CONTROLS+,
80
+ # +GRADIENTBAR_CONTROLS_TOP+, +GRADIENTBAR_CONTROLS_BOTTOM+,
81
+ # +GRADIENTBAR_CONTROLS_LEFT+ and +GRADIENTBAR_CONTROLS_RIGHT+.
82
+ #
83
+ attr_accessor :barStyle
84
+
85
+ # Selection color [FXColor]
86
+ attr_accessor :selectColor
87
+
88
+ # Status line help text [String]
89
+ attr_accessor :helpText
90
+
91
+ # Tool tip text [String]
92
+ attr_accessor :tipText
93
+
94
+ #
95
+ # Return an initialized FXGradientBar instance.
96
+ #
97
+ def initialize(p, target=nil, selector=0, opts=FRAME_NORMAL, x=0, y=0, width=0, height=0, padLeft=DEFAULT_PAD, padRight=DEFAULT_PAD, padTop=DEFAULT_PAD, padBottom=DEFAULT_PAD) # :yields: theGradientBar
98
+ end
99
+
100
+ #
101
+ # Return the zero-based index of the segment containing location (_x_, _y_).
102
+ # Returns -1 if no matching segment was found.
103
+ #
104
+ def getSegment(x, y); end
105
+
106
+ #
107
+ # Return the grip in segment _seg_ which is closest to location (_x_, _y_),
108
+ # one of +GRIP_LOWER+, +GRIP_SEG_LOWER+, +GRIP_MIDDLE+, +GRIP_SEG_UPPER+,
109
+ # +GRIP_UPPER+ or +GRIP_NONE+.
110
+ #
111
+ def getGrip(seg, x, y); end
112
+
113
+ # Return the number of segments
114
+ def numSegments(); end
115
+
116
+ #
117
+ # Replace the current gradient segments with _segments_, an array of
118
+ # FXGradient instances.
119
+ #
120
+ def gradients=(segments); end
121
+
122
+ #
123
+ # Return a reference to the array of gradient segments (an array of
124
+ # FXGradient instances).
125
+ #
126
+ def gradients(); end
127
+
128
+ #
129
+ # Change current segment to _index_. Use an _index_ of -1 to indicate that there
130
+ # is no current segment.
131
+ # If _notify_ is +true+, a +SEL_CHANGED+ message is sent to the gradient bar's
132
+ # message target after the current segment is changed.
133
+ # Raises IndexError if _index_ is out of bounds.
134
+ #
135
+ def setCurrentSegment(index, notify=false); end
136
+
137
+ #
138
+ # Return the index of the current segment, or -1 if there is no current segment.
139
+ #
140
+ def getCurrentSegment(); end
141
+
142
+ #
143
+ # Change anchor segment to _seg_.
144
+ # Use a _seg_ value of -1 to indicate that there is no anchor segment.
145
+ # Raises IndexError if _seg_ is out of bounds.
146
+ #
147
+ def anchorSegment=(seg); end
148
+
149
+ #
150
+ # Return the index of the anchor segment, or -1 if there is no anchor segment.
151
+ #
152
+ def anchorSegment(); end
153
+
154
+ #
155
+ # Select segment(s) _fm_ through _to_ and return +true+ if the selected range
156
+ # is different than it was.
157
+ # If _notify_ is +true+, a +SEL_SELECTED+ message is sent to the gradient bar's
158
+ # message target after the current segment is changed.
159
+ # Raises ArgumentError if _fm_ is greater than _to_, and
160
+ # IndexError if either _fm_ or _to_ is out of bounds.
161
+ #
162
+ def selectSegments(fm, to, notify=false); end
163
+
164
+ #
165
+ # Deselect all segments, and return +true+ if there was a previously
166
+ # selected range.
167
+ # If _notify_ is +true+, a +SEL_DESELECTED+ message is sent to the gradient bar's
168
+ # message target after the current selection is deselected.
169
+ #
170
+ def deselectSegments(notify); end
171
+
172
+ #
173
+ # Return +true+ if the specified segment is selected.
174
+ # Raises IndexError if _seg_ is out of bounds.
175
+ #
176
+ def segmentSelected?(seg); end
177
+
178
+ #
179
+ # Set lower color of the segment with index _seg_.
180
+ # If _notify_ is +true+, a +SEL_CHANGED+ message is sent to the gradient bar's
181
+ # message target after the segment's lower color is changed.
182
+ # Raises IndexError if _seg_ is out of bounds.
183
+ #
184
+ def setSegmentLowerColor(seg, clr, notify=false); end
185
+
186
+ #
187
+ # Set upper color of the segment with index _seg_.
188
+ # If _notify_ is +true+, a +SEL_CHANGED+ message is sent to the gradient bar's
189
+ # message target after the segment's upper color is changed.
190
+ # Raises IndexError if _seg_ is out of bounds.
191
+ #
192
+ def setSegmentUpperColor(seg, clr, notify=false); end
193
+
194
+ #
195
+ # Return lower color of the segment with index _seg_.
196
+ # Raises IndexError if _seg_ is out of bounds.
197
+ #
198
+ def getSegmentLowerColor(seg); end
199
+
200
+ #
201
+ # Return upper color of the segment with index _seg_.
202
+ # Raises IndexError if _seg_ is out of bounds.
203
+ #
204
+ def getSegmentUpperColor(seg); end
205
+
206
+ #
207
+ # Move lower point of segment _seg_ to _val_.
208
+ # If _notify_ is +true+, a +SEL_CHANGED+ message is sent to the gradient bar's
209
+ # message target after the segment's lower value is changed.
210
+ # Raises IndexError if _seg_ is out of bounds.
211
+ #
212
+ def moveSegmentLower(seg, val, notify=false); end
213
+
214
+ #
215
+ # Move middle point of segment _seg_ to _val_.
216
+ # If _notify_ is +true+, a +SEL_CHANGED+ message is sent to the gradient bar's
217
+ # message target after the segment's middle value is changed.
218
+ # Raises IndexError if _seg_ is out of bounds.
219
+ #
220
+ def moveSegmentMiddle(seg, val, notify=false); end
221
+
222
+ #
223
+ # Move upper point of segment _seg_ to _val_.
224
+ # If _notify_ is +true+, a +SEL_CHANGED+ message is sent to the gradient bar's
225
+ # message target after the segment's upper value is changed.
226
+ # Raises IndexError if _seg_ is out of bounds.
227
+ #
228
+ def moveSegmentUpper(seg, val, notify=false); end
229
+
230
+ #
231
+ # Move segments _sglo_ to _sghi_ to new position _val_.
232
+ # If _notify_ is +true+, a +SEL_CHANGED+ message is sent to the gradient bar's
233
+ # message target after the segments' values are changed.
234
+ #
235
+ def moveSegments(sglo, sghi, val, notify=false); end
236
+
237
+ #
238
+ # Return lower value of segment _seg_.
239
+ # Raises IndexError if _seg_ is out of bounds.
240
+ #
241
+ def getSegmentLower(seg); end
242
+
243
+ #
244
+ # Return middle value of segment _seg_.
245
+ # Raises IndexError if _seg_ is out of bounds.
246
+ #
247
+ def getSegmentMiddle(seg); end
248
+
249
+ #
250
+ # Return upper value of segment _seg_.
251
+ # Raises IndexError if _seg_ is out of bounds.
252
+ #
253
+ def getSegmentUpper(seg); end
254
+
255
+ #
256
+ # Return a gradient ramp of size _nramp_ based on the settings for this
257
+ # gradient bar. The return value is an array of color values corresponding
258
+ # to this gradient bar.
259
+ #
260
+ def gradient(nramp); end
261
+
262
+ #
263
+ # Return the blend mode of segment _seg_, one of +GRADIENT_BLEND_LINEAR+,
264
+ # +GRADIENT_BLEND_POWER+, +GRADIENT_BLEND_SINE+, +GRADIENT_BLEND_INCREASING+
265
+ # or +GRADIENT_BLEND_DECREASING+.
266
+ # Raises IndexError if _seg_ is out of bounds.
267
+ #
268
+ def getSegmentBlend(seg); end
269
+
270
+ #
271
+ # Split segment at the midpoint
272
+ # If _notify_ is +true+, a +SEL_CHANGED+ message is sent to the gradient bar's
273
+ # message target after this change is completed.
274
+ #
275
+ def splitSegments(sglo, sghi, notify=false); end
276
+
277
+ #
278
+ # Merge segments.
279
+ # If _notify_ is +true+, a +SEL_CHANGED+ message is sent to the gradient bar's
280
+ # message target after this change is completed.
281
+ #
282
+ def mergeSegments(sglo, sghi, notify=false); end
283
+
284
+ #
285
+ # Make segments uniformly distributed.
286
+ # If _notify_ is +true+, a +SEL_CHANGED+ message is sent to the gradient bar's
287
+ # message target after this change is completed.
288
+ #
289
+ def uniformSegments(sglo, sghi, notify=false); end
290
+
291
+ #
292
+ # Set the blend mode for segments _sglo_ through _sghi_ to _blend_, where
293
+ # _blend_ is one of +GRADIENT_BLEND_LINEAR+,
294
+ # +GRADIENT_BLEND_POWER+, +GRADIENT_BLEND_SINE+, +GRADIENT_BLEND_INCREASING+
295
+ # or +GRADIENT_BLEND_DECREASING+.
296
+ # If _notify_ is +true+, a +SEL_CHANGED+ message is sent to the gradient bar's
297
+ # message target after this change is completed.
298
+ #
299
+ def blendSegments(sglo, sghi, blend=GRADIENT_BLEND_LINEAR, notify=false); end
300
+ end
301
+ end
@@ -0,0 +1,36 @@
1
+ module Fox
2
+ # An FXGroupBox widget provides a nice raised or sunken border
3
+ # around a group of widgets, providing a visual delineation.
4
+ # Typically, a title is placed over the border to provide some
5
+ # clarification.
6
+ #
7
+ # === Group box options
8
+ #
9
+ # +GROUPBOX_TITLE_LEFT+:: Title is left-justified
10
+ # +GROUPBOX_TITLE_CENTER+:: Title is centered
11
+ # +GROUPBOX_TITLE_RIGHT+:: Title is right-justified
12
+ # +GROUPBOX_NORMAL+:: same as <tt>GROUPBOX_TITLE_LEFT</tt>
13
+
14
+ class FXGroupBox < FXPacker
15
+
16
+ # Group box title text [String]
17
+ attr_accessor :text
18
+
19
+ # Group box style [Integer]
20
+ attr_accessor :groupBoxStyle
21
+
22
+ # Title font [FXFont]
23
+ attr_accessor :font
24
+
25
+ # Title text color [FXColor]
26
+ attr_accessor :textColor
27
+
28
+ # Construct group box layout manager
29
+ def initialize(parent, text, opts=GROUPBOX_NORMAL, x=0, y=0, width=0, height=0, padLeft=DEFAULT_SPACING, padRight=DEFAULT_SPACING, padTop=DEFAULT_SPACING, padBottom=DEFAULT_SPACING, hSpacing=DEFAULT_SPACING, vSpacing=DEFAULT_SPACING) # :yields: theGroupBox
30
+ end
31
+
32
+ # Return the group box's title text
33
+ def to_s; text; end
34
+ end
35
+ end
36
+
@@ -0,0 +1,411 @@
1
+ module Fox
2
+ #
3
+ # Header item
4
+ #
5
+ # === Alignment hints
6
+ #
7
+ # +RIGHT+:: Align on right
8
+ # +LEFT+:: Align on left
9
+ # +CENTER_X+:: Align centered horizontally (default)
10
+ # +TOP+:: Align on top
11
+ # +BOTTOM+:: Align on bottom
12
+ # +CENTER_Y+:: Align centered vertically (default)
13
+ #
14
+ # === Icon position
15
+ #
16
+ # +BEFORE+:: Icon before the text
17
+ # +AFTER+:: Icon after the text
18
+ # +ABOVE+:: Icon above the text
19
+ # +BELOW+:: Icon below the text
20
+ #
21
+ # === Arrow
22
+ #
23
+ # +ARROW_NONE+:: No arrow
24
+ # +ARROW_UP+:: Arrow pointing up
25
+ # +ARROW_DOWN+:: Arrow pointing down
26
+ # +PRESSED+:: Pressed down
27
+ #
28
+ class FXHeaderItem < FXObject
29
+
30
+ # Item's text label [String]
31
+ attr_accessor :text
32
+
33
+ # Item's icon [FXIcon]
34
+ attr_accessor :icon
35
+
36
+ # Item's user data [Object]
37
+ attr_accessor :data
38
+
39
+ # Size [Integer]
40
+ attr_accessor :size
41
+
42
+ # Sort direction (+FALSE+, +TRUE+ or +MAYBE+) [Integer]
43
+ attr_accessor :arrowDir
44
+
45
+ # Current position [Integer]
46
+ attr_accessor :pos
47
+
48
+ # Content justification (one of +LEFT+, +RIGHT+, +CENTER_X+, +TOP+, +BOTTOM+ or +CENTER_Y+) [Integer]
49
+ attr_accessor :justification
50
+
51
+ # Icon position (one of +BEFORE+, +AFTER+, +ABOVE+ or +BELOW+) [Integer]
52
+ attr_accessor :iconPosition
53
+
54
+ #
55
+ # Construct new item with given text, icon, size, and user-data
56
+ #
57
+ def initialize(text, ic=nil, s=0, ptr=nil) # :yields: theHeaderItem
58
+ end
59
+
60
+ # Return the header item's text label
61
+ def to_s; text; end
62
+
63
+ # Return the item's content width in the header.
64
+ def getWidth(header); end
65
+
66
+ # Return the item's content height in the header.
67
+ def getHeight(header); end
68
+
69
+ # Create server-side resources
70
+ def create; end
71
+
72
+ # Detach from server-side resources
73
+ def detach; end
74
+
75
+ # Destroy server-side resources
76
+ def destroy; end
77
+
78
+ # Set pressed state to +true+ or +false+.
79
+ def pressed=(p); end
80
+
81
+ # Return +true+ if in pressed state.
82
+ def pressed?; end
83
+ end
84
+
85
+ #
86
+ # Header control may be placed over a table or list to provide a resizable
87
+ # captions above a number of columns.
88
+ # Each caption comprises a label and an optional icon; in addition, an arrow
89
+ # may be shown to indicate whether the items in that column are sorted, and
90
+ # if so, whether they are sorted in increasing or decreasing order.
91
+ # Each caption can be interactively resized. During the resizing, if the
92
+ # HEADER_TRACKING was specified, the header control sends a SEL_CHANGED message
93
+ # to its target, with the message data set to the caption number being resized,
94
+ # of the type FXint.
95
+ # If the HEADER_TRACKING was not specified the SEL_CHANGED message is sent at
96
+ # the end of the resizing operation.
97
+ # Clicking on a caption causes a message of type SEL_COMMAND to be sent to the
98
+ # target, with the message data set to the caption number being clicked.
99
+ # A single click on a split causes a message of type SEL_CLICKED to be sent to the
100
+ # target; a typical response to this message would be to adjust the size of
101
+ # the split to fit the contents displayed underneath it.
102
+ # The contents may be scrolled by calling setPosition().
103
+ #
104
+ # === Events
105
+ #
106
+ # The following messages are sent by FXHeader to its target:
107
+ #
108
+ # +SEL_CHANGED+::
109
+ # sent continuously while a header item is being resized, if the
110
+ # +HEADER_TRACKING+ option was specified, or at the end of the resize
111
+ # if +HEADER_TRACKING+ was not specfied. The message data is an integer
112
+ # indicating the index of the item being resized.
113
+ # +SEL_COMMAND+::
114
+ # sent when a header item is clicked; the message data is an integer
115
+ # indicating the index of the current item.
116
+ # +SEL_CLICKED+::
117
+ # sent when a header item is clicked; the message data is an integer
118
+ # indicating the index of the current item.
119
+ # +SEL_LEFTBUTTONPRESS+:: sent when the left mouse button goes down; the message data is an FXEvent instance.
120
+ # +SEL_LEFTBUTTONRELEASE+:: sent when the left mouse button goes up; the message data is an FXEvent instance.
121
+ # +SEL_REPLACED+:: sent when a header item is about to be replaced; the message data is an Integer indicating the index of the item to be replaced.
122
+ # +SEL_INSERTED+:: sent after a header item is inserted; the message data is an Integer indicating the index of the item that was inserted.
123
+ # +SEL_DELETED+:: sent when a header item is about to be removed; the message data is an Integer indicating the index of the item to be removed.
124
+ #
125
+ # === Header style options
126
+ #
127
+ # +HEADER_BUTTON+:: Button style can be clicked
128
+ # +HEADER_HORIZONTAL+:: Horizontal header control (default)
129
+ # +HEADER_VERTICAL+:: Vertical header control
130
+ # +HEADER_TRACKING+:: Tracks continuously while moving
131
+ # +HEADER_RESIZE+:: Allow resizing sections
132
+ # +HEADER_NORMAL+:: Normal options, same as <tt>HEADER_HORIZONTAL|FRAME_NORMAL</tt>
133
+ #
134
+ # === Message identifiers
135
+ #
136
+ # +ID_TIPTIMER+:: x
137
+ #
138
+ class FXHeader < FXFrame
139
+
140
+ # Number of items [Integer]
141
+ attr_reader :numItems
142
+
143
+ # Total size of all items [Integer]
144
+ attr_reader :totalSize
145
+
146
+ # Current position [Integer]
147
+ attr_accessor :position
148
+
149
+ # Text font [FXFont]
150
+ attr_accessor :font
151
+
152
+ # Text color [FXColor]
153
+ attr_accessor :textColor
154
+
155
+ # Header style options [Integer]
156
+ attr_accessor :headerStyle
157
+
158
+ # Status line help text for this header
159
+ attr_accessor :helpText
160
+
161
+ #
162
+ # Return an initialized FXHeader instance.
163
+ #
164
+ def initialize(p, target=nil, selector=0, opts=HEADER_NORMAL, x=0, y=0, width=0, height=0, padLeft=DEFAULT_PAD, padRight=DEFAULT_PAD, padTop=DEFAULT_PAD, padBottom=DEFAULT_PAD) # :yields: theHeader
165
+ end
166
+
167
+ #
168
+ # Return the item (a FXHeaderItem instance) at the given index.
169
+ # Raises IndexError if _index_ is out of bounds.
170
+ #
171
+ def getItem(index); end
172
+
173
+ #
174
+ # Return the item-index given its coordinate offset.
175
+ # Returns -1 if the specified coordinate is before the first item in the
176
+ # header, or _numItems_ if the coordinate is after the last item in the
177
+ # header.
178
+ #
179
+ def getItemAt(coord); end
180
+
181
+ #
182
+ # Replace the item at _index_ with a (possibly subclassed) item and return the index
183
+ # of the replaced item.
184
+ # If _notify_ is +true+, a +SEL_REPLACED+ message is sent to the header's
185
+ # message target before the item is replaced.
186
+ # Raises IndexError if _index_ is out of bounds.
187
+ #
188
+ def setItem(index, item, notify=false); end
189
+
190
+ #
191
+ # Replace the item at _index_ with a new item with the specified
192
+ # text, icon, size and user data object, and return the index of the replaced
193
+ # item. The new item is created by calling the FXHeader#createItem method.
194
+ # If _notify_ is +true+, a +SEL_REPLACED+ message is sent to the header's
195
+ # message target before the item is replaced.
196
+ # Raises IndexError if _index_ is out of bounds.
197
+ #
198
+ def setItem(index, text, icon=nil, size=0, data=nil, notify=false); end
199
+
200
+ #
201
+ # Fill the header by appending items from an array of strings.
202
+ # Returns the number of items appended.
203
+ #
204
+ def fillItems(strings, icon=nil, size=0, data=nil, notify=false); end
205
+
206
+ #
207
+ # Insert a new (possibly subclassed) item at the specified _index_ and return the
208
+ # index of the inserted item.
209
+ # If _notify_ is +true+, a +SEL_INSERTED+ message is sent to the header's
210
+ # message target after the item is inserted.
211
+ # Raises IndexError if _index_ is out of bounds.
212
+ #
213
+ def insertItem(index, item, notify=false); end
214
+
215
+ #
216
+ # Insert a new item at the specified _index_ with the specified text, icon, size
217
+ # and user data object, and return the index of the inserted item.
218
+ # The new item is created by calling the FXHeader#createItem method.
219
+ # If _notify_ is +true+, a +SEL_INSERTED+ message is sent to the header's
220
+ # message target after the item is inserted.
221
+ # Raises IndexError if _index_ is out of bounds.
222
+ #
223
+ def insertItem(index, text, icon=nil, size=0, data=nil, notify=false); end
224
+
225
+ #
226
+ # Append a (possibly subclassed) item to the list and return the index
227
+ # of the appended item.
228
+ # If _notify_ is +true+, a +SEL_INSERTED+ message is sent to the header's
229
+ # message target after the item is appended.
230
+ #
231
+ def appendItem(item, notify=false); end
232
+
233
+ #
234
+ # Append a new item with the specified text, icon, size and user data object,
235
+ # and return the index of the appended item.
236
+ # The new item is created by calling the FXHeader#createItem method.
237
+ # If _notify_ is +true+, a +SEL_INSERTED+ message is sent to the header's
238
+ # message target after the item is appended.
239
+ #
240
+ def appendItem(text, icon=nil, size=0, data=nil, notify=false); end
241
+
242
+ #
243
+ # Prepend a (possibly subclassed) item to the list and return the index
244
+ # of the prepended item.
245
+ # If _notify_ is +true+, a +SEL_INSERTED+ message is sent to the header's
246
+ # message target after the item is appended.
247
+ #
248
+ def prependItem(item, notify=false); end
249
+
250
+ #
251
+ # Prepend a new item with the specified text, icon, size and user data object,
252
+ # and return the index of the appended item.
253
+ # The new item is created by calling the FXHeader#createItem method.
254
+ # If _notify_ is +true+, a +SEL_INSERTED+ message is sent to the header's
255
+ # message target after the item is appended.
256
+ #
257
+ def prependItem(text, icon=nil, size=0, data=nil, notify=false); end
258
+
259
+ #
260
+ # Extract item from list and return a reference to the item.
261
+ # If _notify_ is +true+, a +SEL_DELETED+ message is sent to the header's
262
+ # message target before the item is extracted from the list.
263
+ # Raises IndexError if _index_ is out of bounds.
264
+ #
265
+ def extractItem(index, notify=false); end
266
+
267
+ #
268
+ # Remove the item at the specified index from this header.
269
+ # If _notify_ is +true+, a +SEL_DELETED+ message is sent to the header's message target
270
+ # before the item is removed.
271
+ # Raises IndexError if _index_ is out of bounds.
272
+ #
273
+ def removeItem(index, notify=false); end
274
+
275
+ #
276
+ # Remove all items from this header.
277
+ # If _notify_ is +true+, a +SEL_DELETED+ message is sent to the header's message target
278
+ # before each item is removed.
279
+ #
280
+ def clearItems(notify=false); end
281
+
282
+ #
283
+ # Change text label for item at index.
284
+ # Raises IndexError if _index_ is out of bounds.
285
+ #
286
+ def setItemText(index, text); end
287
+
288
+ #
289
+ # Get text of item at index.
290
+ # Raises IndexError if _index_ is out of bounds.
291
+ #
292
+ def getItemText(index); end
293
+
294
+ #
295
+ # Change icon of item at index.
296
+ # Raises IndexError if _index_ is out of bounds.
297
+ #
298
+ def setItemIcon(index, icon); end
299
+
300
+ #
301
+ # Return icon of item at index.
302
+ # Raises IndexError if _index_ is out of bounds.
303
+ #
304
+ def getItemIcon(index); end
305
+
306
+ #
307
+ # Change size of item at index.
308
+ # Raises IndexError if _index_ is out of bounds.
309
+ #
310
+ def setItemSize(index, size); end
311
+
312
+ #
313
+ # Return size of item at index.
314
+ # Raises IndexError if _index_ is out of bounds.
315
+ #
316
+ def getItemSize(index); end
317
+
318
+ #
319
+ # Return the offset (in pixels) of the left side of the item at index.
320
+ # (If it's a vertical header, return the offset of the top side of the item).
321
+ # Raises IndexError if _index_ is out of bounds.
322
+ #
323
+ def getItemOffset(index); end
324
+
325
+ #
326
+ # Change user data object of item at index.
327
+ # Raises IndexError if _index_ is out of bounds.
328
+ #
329
+ def setItemData(index, ptr); end
330
+
331
+ #
332
+ # Return user data for item at index.
333
+ # Raises IndexError if _index_ is out of bounds.
334
+ #
335
+ def getItemData(index); end
336
+
337
+ #
338
+ # Change arrow (sort) direction for item at index, where _dir_ is either
339
+ # +FALSE+, +TRUE+ or +MAYBE+.
340
+ # If _dir_ is +TRUE+, the arrow will point up; if _dir_ is +FALSE+, the
341
+ # arrow points down; and if _dir_ is +MAYBE+, no arrow is drawn.
342
+ # Raises IndexError if _index_ is out of bounds.
343
+ #
344
+ def setArrowDir(index, dir=MAYBE); end
345
+
346
+ #
347
+ # Return sort direction for the item at index, one of +FALSE+, +TRUE+ or
348
+ # +MAYBE+.
349
+ # If _dir_ is +TRUE+, the arrow will point up; if _dir_ is +FALSE+, the
350
+ # arrow points down; and if _dir_ is +MAYBE+, no arrow is drawn.
351
+ # Raises IndexError if _index_ is out of bounds.
352
+ #
353
+ def getArrowDir(index); end
354
+
355
+ #
356
+ # Change item justification. Horizontal justification is controlled by passing
357
+ # FXHeaderItem::RIGHT, FXHeaderItem::LEFT, or FXHeaderItem::CENTER_X.
358
+ # Vertical justification is controlled by FXHeaderItem::TOP, FXHeaderItem::BOTTOM,
359
+ # or FXHeaderItem::CENTER_Y.
360
+ # The default is a combination of FXHeaderItem::LEFT and FXHeaderItem::CENTER_Y.
361
+ # Raises IndexError if _index_ is out of bounds.
362
+ #
363
+ def setItemJustify(index, justify); end
364
+
365
+ #
366
+ # Return item justification for the item at _index_, one of
367
+ # +LEFT+, +RIGHT+, +CENTER_X+, +TOP+, +BOTTOM+ or +CENTER_Y+.
368
+ # Raises IndexError if _index_ is out of bounds.
369
+ #
370
+ def getItemJustify(index); end
371
+
372
+ #
373
+ # Change relative position of icon and text of item.
374
+ # Passing FXHeaderItem::BEFORE or FXHeaderItem::AFTER places the icon
375
+ # before or after the text, and passing FXHeaderItem::ABOVE or
376
+ # FXHeaderItem::BELOW places it above or below the text, respectively.
377
+ # The default of FXHeaderItem::BEFORE places the icon in front of the text.
378
+ # Raises IndexError if _index_ is out of bounds.
379
+ #
380
+ def setItemIconPosition(index, mode); end
381
+
382
+ #
383
+ # Return relative icon and text position of the item at _index_,
384
+ # one of +ABOVE+, +BELOW+, +BEFORE+ or +AFTER+.
385
+ # Raises IndexError if _index_ is out of bounds.
386
+ #
387
+ def getItemIconPosition(index); end
388
+
389
+ #
390
+ # Changed button item's pressed state.
391
+ # Raises IndexError if _index_ is out of bounds.
392
+ #
393
+ def setItemPressed(index, pressed=true); end
394
+
395
+ #
396
+ # Return +true+ if button item at specified index is pressed in.
397
+ # Raises IndexError if _index_ is out of bounds.
398
+ #
399
+ def isItemPressed(index); end
400
+
401
+ # Scroll to make the specified item visible.
402
+ def makeItemVisible(index); end
403
+
404
+ #
405
+ # Repaint header at index.
406
+ # Raises IndexError if _index_ is out of bounds.
407
+ #
408
+ def updateItem(index); end
409
+ end
410
+ end
411
+