fxruby 1.6.38 → 1.6.43

Sign up to get free protection for your applications and to get access to all the features.
Files changed (360) hide show
  1. checksums.yaml +5 -5
  2. data/.travis.yml +3 -14
  3. data/.yardopts +1 -1
  4. data/Gemfile +8 -5
  5. data/History.md +1344 -21
  6. data/README.rdoc +5 -5
  7. data/Rakefile +100 -68
  8. data/appveyor.yml +17 -4
  9. data/docs/Fox.html +11184 -0
  10. data/docs/Fox/Canvas.html +141 -0
  11. data/docs/Fox/Canvas/CanvasError.html +124 -0
  12. data/docs/Fox/Canvas/CircleShape.html +477 -0
  13. data/docs/Fox/Canvas/ImageShape.html +477 -0
  14. data/docs/Fox/Canvas/LineShape.html +1005 -0
  15. data/docs/Fox/Canvas/PolygonShape.html +145 -0
  16. data/docs/Fox/Canvas/RectangleShape.html +439 -0
  17. data/docs/Fox/Canvas/SelectionPolicy.html +352 -0
  18. data/docs/Fox/Canvas/Shape.html +1955 -0
  19. data/docs/Fox/Canvas/ShapeCanvas.html +2031 -0
  20. data/docs/Fox/Canvas/ShapeGroup.html +527 -0
  21. data/docs/Fox/Canvas/SingleSelectionPolicy.html +291 -0
  22. data/docs/Fox/Canvas/TextShape.html +609 -0
  23. data/docs/Fox/FTNonModal.html +550 -0
  24. data/docs/Fox/FX4Splitter.html +1336 -0
  25. data/docs/Fox/FX7Segment.html +1010 -0
  26. data/docs/Fox/FXAccelTable.html +715 -0
  27. data/docs/Fox/FXApp.html +7998 -0
  28. data/docs/Fox/FXArc.html +562 -0
  29. data/docs/Fox/FXArrowButton.html +865 -0
  30. data/docs/Fox/FXBMPIcon.html +450 -0
  31. data/docs/Fox/FXBMPImage.html +434 -0
  32. data/docs/Fox/FXBitmap.html +1362 -0
  33. data/docs/Fox/FXBitmapFrame.html +595 -0
  34. data/docs/Fox/FXBitmapView.html +1451 -0
  35. data/docs/Fox/FXButton.html +534 -0
  36. data/docs/Fox/FXCURCursor.html +261 -0
  37. data/docs/Fox/FXCalendar.html +880 -0
  38. data/docs/Fox/FXCanvas.html +311 -0
  39. data/docs/Fox/FXCheckButton.html +949 -0
  40. data/docs/Fox/FXChoiceBox.html +472 -0
  41. data/docs/Fox/FXColor.html +1519 -0
  42. data/docs/Fox/FXColorBar.html +759 -0
  43. data/docs/Fox/FXColorDialog.html +591 -0
  44. data/docs/Fox/FXColorItem.html +323 -0
  45. data/docs/Fox/FXColorList.html +712 -0
  46. data/docs/Fox/FXColorRing.html +817 -0
  47. data/docs/Fox/FXColorSelector.html +796 -0
  48. data/docs/Fox/FXColorWell.html +850 -0
  49. data/docs/Fox/FXColorWheel.html +770 -0
  50. data/docs/Fox/FXComboBox.html +2939 -0
  51. data/docs/Fox/FXComboTableItem.html +544 -0
  52. data/docs/Fox/FXCommand.html +526 -0
  53. data/docs/Fox/FXComposite.html +433 -0
  54. data/docs/Fox/FXCursor.html +779 -0
  55. data/docs/Fox/FXDC.html +5231 -0
  56. data/docs/Fox/FXDCPrint.html +696 -0
  57. data/docs/Fox/FXDCWindow.html +358 -0
  58. data/docs/Fox/FXDataTarget.html +573 -0
  59. data/docs/Fox/FXDebugTarget.html +305 -0
  60. data/docs/Fox/FXDelegator.html +305 -0
  61. data/docs/Fox/FXDial.html +1133 -0
  62. data/docs/Fox/FXDialogBox.html +413 -0
  63. data/docs/Fox/FXDict.html +1063 -0
  64. data/docs/Fox/FXDirBox.html +752 -0
  65. data/docs/Fox/FXDirDialog.html +914 -0
  66. data/docs/Fox/FXDirItem.html +989 -0
  67. data/docs/Fox/FXDirList.html +1554 -0
  68. data/docs/Fox/FXDirSelector.html +995 -0
  69. data/docs/Fox/FXDockBar.html +1451 -0
  70. data/docs/Fox/FXDockHandler.html +468 -0
  71. data/docs/Fox/FXDockSite.html +678 -0
  72. data/docs/Fox/FXDockTitle.html +606 -0
  73. data/docs/Fox/FXDocument.html +536 -0
  74. data/docs/Fox/FXDragCorner.html +440 -0
  75. data/docs/Fox/FXDrawable.html +478 -0
  76. data/docs/Fox/FXDriveBox.html +746 -0
  77. data/docs/Fox/FXEvent.html +1736 -0
  78. data/docs/Fox/FXExtentd.html +1374 -0
  79. data/docs/Fox/FXExtentf.html +1374 -0
  80. data/docs/Fox/FXFileAssoc.html +850 -0
  81. data/docs/Fox/FXFileDialog.html +2688 -0
  82. data/docs/Fox/FXFileDict.html +1058 -0
  83. data/docs/Fox/FXFileItem.html +1141 -0
  84. data/docs/Fox/FXFileList.html +2259 -0
  85. data/docs/Fox/FXFileSelector.html +2529 -0
  86. data/docs/Fox/FXFileStream.html +503 -0
  87. data/docs/Fox/FXFoldingItem.html +2822 -0
  88. data/docs/Fox/FXFoldingList.html +5189 -0
  89. data/docs/Fox/FXFont.html +2998 -0
  90. data/docs/Fox/FXFontDesc.html +710 -0
  91. data/docs/Fox/FXFontDialog.html +420 -0
  92. data/docs/Fox/FXFontSelector.html +576 -0
  93. data/docs/Fox/FXFrame.html +1012 -0
  94. data/docs/Fox/FXGIFCursor.html +337 -0
  95. data/docs/Fox/FXGIFIcon.html +450 -0
  96. data/docs/Fox/FXGIFImage.html +434 -0
  97. data/docs/Fox/FXGLCanvas.html +700 -0
  98. data/docs/Fox/FXGLCone.html +785 -0
  99. data/docs/Fox/FXGLContext.html +649 -0
  100. data/docs/Fox/FXGLCube.html +703 -0
  101. data/docs/Fox/FXGLCylinder.html +791 -0
  102. data/docs/Fox/FXGLGroup.html +1385 -0
  103. data/docs/Fox/FXGLLine.html +653 -0
  104. data/docs/Fox/FXGLObject.html +759 -0
  105. data/docs/Fox/FXGLPoint.html +561 -0
  106. data/docs/Fox/FXGLShape.html +714 -0
  107. data/docs/Fox/FXGLSphere.html +626 -0
  108. data/docs/Fox/FXGLViewer.html +3506 -0
  109. data/docs/Fox/FXGLVisual.html +2147 -0
  110. data/docs/Fox/FXGradient.html +562 -0
  111. data/docs/Fox/FXGradientBar.html +2479 -0
  112. data/docs/Fox/FXGroupBox.html +688 -0
  113. data/docs/Fox/FXHeader.html +3040 -0
  114. data/docs/Fox/FXHeaderItem.html +1353 -0
  115. data/docs/Fox/FXHiliteStyle.html +804 -0
  116. data/docs/Fox/FXHorizontalFrame.html +359 -0
  117. data/docs/Fox/FXHorizontalSeparator.html +349 -0
  118. data/docs/Fox/FXICOIcon.html +450 -0
  119. data/docs/Fox/FXICOImage.html +434 -0
  120. data/docs/Fox/FXIcon.html +384 -0
  121. data/docs/Fox/FXIconDict.html +752 -0
  122. data/docs/Fox/FXIconItem.html +1518 -0
  123. data/docs/Fox/FXIconList.html +4676 -0
  124. data/docs/Fox/FXIconSource.html +963 -0
  125. data/docs/Fox/FXId.html +712 -0
  126. data/docs/Fox/FXImage.html +2328 -0
  127. data/docs/Fox/FXImageFrame.html +489 -0
  128. data/docs/Fox/FXImageView.html +504 -0
  129. data/docs/Fox/FXInputDialog.html +894 -0
  130. data/docs/Fox/FXIrb.html +942 -0
  131. data/docs/Fox/FXJPGIcon.html +607 -0
  132. data/docs/Fox/FXJPGImage.html +591 -0
  133. data/docs/Fox/FXKnob.html +1048 -0
  134. data/docs/Fox/FXLabel.html +1013 -0
  135. data/docs/Fox/FXLight.html +920 -0
  136. data/docs/Fox/FXList.html +3717 -0
  137. data/docs/Fox/FXListBox.html +2518 -0
  138. data/docs/Fox/FXListItem.html +1459 -0
  139. data/docs/Fox/FXMDIChild.html +2175 -0
  140. data/docs/Fox/FXMDIClient.html +781 -0
  141. data/docs/Fox/FXMDIDeleteButton.html +334 -0
  142. data/docs/Fox/FXMDIMaximizeButton.html +334 -0
  143. data/docs/Fox/FXMDIMenu.html +335 -0
  144. data/docs/Fox/FXMDIMinimizeButton.html +334 -0
  145. data/docs/Fox/FXMDIRestoreButton.html +334 -0
  146. data/docs/Fox/FXMDIWindowButton.html +334 -0
  147. data/docs/Fox/FXMainWindow.html +337 -0
  148. data/docs/Fox/FXMaterial.html +570 -0
  149. data/docs/Fox/FXMatrix.html +734 -0
  150. data/docs/Fox/FXMemoryBuffer.html +472 -0
  151. data/docs/Fox/FXMemoryStream.html +632 -0
  152. data/docs/Fox/FXMenuBar.html +347 -0
  153. data/docs/Fox/FXMenuButton.html +829 -0
  154. data/docs/Fox/FXMenuCaption.html +1080 -0
  155. data/docs/Fox/FXMenuCascade.html +388 -0
  156. data/docs/Fox/FXMenuCheck.html +721 -0
  157. data/docs/Fox/FXMenuCommand.html +400 -0
  158. data/docs/Fox/FXMenuPane.html +333 -0
  159. data/docs/Fox/FXMenuRadio.html +721 -0
  160. data/docs/Fox/FXMenuSeparator.html +440 -0
  161. data/docs/Fox/FXMenuTitle.html +405 -0
  162. data/docs/Fox/FXMessageBox.html +658 -0
  163. data/docs/Fox/FXObject.html +545 -0
  164. data/docs/Fox/FXOption.html +491 -0
  165. data/docs/Fox/FXOptionMenu.html +885 -0
  166. data/docs/Fox/FXPCXIcon.html +450 -0
  167. data/docs/Fox/FXPCXImage.html +434 -0
  168. data/docs/Fox/FXPNGIcon.html +524 -0
  169. data/docs/Fox/FXPNGImage.html +508 -0
  170. data/docs/Fox/FXPPMIcon.html +450 -0
  171. data/docs/Fox/FXPPMImage.html +373 -0
  172. data/docs/Fox/FXPSBounds.html +500 -0
  173. data/docs/Fox/FXPacker.html +1229 -0
  174. data/docs/Fox/FXPicker.html +345 -0
  175. data/docs/Fox/FXPopup.html +1099 -0
  176. data/docs/Fox/FXPrintDialog.html +485 -0
  177. data/docs/Fox/FXPrinter.html +1330 -0
  178. data/docs/Fox/FXProgressBar.html +1150 -0
  179. data/docs/Fox/FXProgressDialog.html +715 -0
  180. data/docs/Fox/FXPseudoKeyboard.html +428 -0
  181. data/docs/Fox/FXPseudoMouse.html +800 -0
  182. data/docs/Fox/FXPseudoTarget.html +472 -0
  183. data/docs/Fox/FXQuatd.html +1377 -0
  184. data/docs/Fox/FXQuatf.html +1392 -0
  185. data/docs/Fox/FXRGBIcon.html +450 -0
  186. data/docs/Fox/FXRGBImage.html +434 -0
  187. data/docs/Fox/FXRadioButton.html +885 -0
  188. data/docs/Fox/FXRanged.html +1522 -0
  189. data/docs/Fox/FXRangef.html +1522 -0
  190. data/docs/Fox/FXRealSlider.html +1187 -0
  191. data/docs/Fox/FXRealSpinner.html +2175 -0
  192. data/docs/Fox/FXRecentFiles.html +841 -0
  193. data/docs/Fox/FXRectangle.html +802 -0
  194. data/docs/Fox/FXRegion.html +841 -0
  195. data/docs/Fox/FXRegistry.html +682 -0
  196. data/docs/Fox/FXReplaceDialog.html +648 -0
  197. data/docs/Fox/FXRootWindow.html +312 -0
  198. data/docs/Fox/FXRuler.html +2000 -0
  199. data/docs/Fox/FXRulerView.html +3997 -0
  200. data/docs/Fox/FXScintilla.html +49117 -0
  201. data/docs/Fox/FXScrollArea.html +1363 -0
  202. data/docs/Fox/FXScrollBar.html +1019 -0
  203. data/docs/Fox/FXScrollCorner.html +290 -0
  204. data/docs/Fox/FXScrollPane.html +499 -0
  205. data/docs/Fox/FXScrollWindow.html +409 -0
  206. data/docs/Fox/FXSearchDialog.html +382 -0
  207. data/docs/Fox/FXSegment.html +422 -0
  208. data/docs/Fox/FXSeparator.html +402 -0
  209. data/docs/Fox/FXSettings.html +1861 -0
  210. data/docs/Fox/FXShell.html +233 -0
  211. data/docs/Fox/FXShutter.html +472 -0
  212. data/docs/Fox/FXShutterItem.html +669 -0
  213. data/docs/Fox/FXSize.html +592 -0
  214. data/docs/Fox/FXSlider.html +1129 -0
  215. data/docs/Fox/FXSphered.html +906 -0
  216. data/docs/Fox/FXSpheref.html +906 -0
  217. data/docs/Fox/FXSpinner.html +2102 -0
  218. data/docs/Fox/FXSplashScreen.html +497 -0
  219. data/docs/Fox/FXSplashWindow.html +494 -0
  220. data/docs/Fox/FXSplitter.html +643 -0
  221. data/docs/Fox/FXSpring.html +517 -0
  222. data/docs/Fox/FXStatusBar.html +593 -0
  223. data/docs/Fox/FXStatusLine.html +754 -0
  224. data/docs/Fox/FXStream.html +1372 -0
  225. data/docs/Fox/FXStreamAllocError.html +148 -0
  226. data/docs/Fox/FXStreamEndError.html +148 -0
  227. data/docs/Fox/FXStreamError.html +259 -0
  228. data/docs/Fox/FXStreamFailureError.html +148 -0
  229. data/docs/Fox/FXStreamFormatError.html +148 -0
  230. data/docs/Fox/FXStreamFullError.html +148 -0
  231. data/docs/Fox/FXStreamNoReadError.html +148 -0
  232. data/docs/Fox/FXStreamNoWriteError.html +148 -0
  233. data/docs/Fox/FXStreamUnknownError.html +148 -0
  234. data/docs/Fox/FXStringDict.html +552 -0
  235. data/docs/Fox/FXSwitcher.html +619 -0
  236. data/docs/Fox/FXTGAIcon.html +450 -0
  237. data/docs/Fox/FXTGAImage.html +434 -0
  238. data/docs/Fox/FXTIFIcon.html +604 -0
  239. data/docs/Fox/FXTIFImage.html +588 -0
  240. data/docs/Fox/FXTabBar.html +644 -0
  241. data/docs/Fox/FXTabBook.html +373 -0
  242. data/docs/Fox/FXTabItem.html +478 -0
  243. data/docs/Fox/FXTable.html +10107 -0
  244. data/docs/Fox/FXTableItem.html +2195 -0
  245. data/docs/Fox/FXTablePos.html +360 -0
  246. data/docs/Fox/FXTableRange.html +360 -0
  247. data/docs/Fox/FXText.html +6870 -0
  248. data/docs/Fox/FXTextChange.html +492 -0
  249. data/docs/Fox/FXTextField.html +2016 -0
  250. data/docs/Fox/FXToggleButton.html +844 -0
  251. data/docs/Fox/FXToolBar.html +452 -0
  252. data/docs/Fox/FXToolBarGrip.html +584 -0
  253. data/docs/Fox/FXToolBarShell.html +788 -0
  254. data/docs/Fox/FXToolBarTab.html +729 -0
  255. data/docs/Fox/FXToolTip.html +761 -0
  256. data/docs/Fox/FXTopWindow.html +1716 -0
  257. data/docs/Fox/FXTranslator.html +481 -0
  258. data/docs/Fox/FXTreeItem.html +2813 -0
  259. data/docs/Fox/FXTreeList.html +5095 -0
  260. data/docs/Fox/FXTreeListBox.html +3080 -0
  261. data/docs/Fox/FXTriStateButton.html +681 -0
  262. data/docs/Fox/FXUndoList.html +2560 -0
  263. data/docs/Fox/FXVec2d.html +1450 -0
  264. data/docs/Fox/FXVec2f.html +1442 -0
  265. data/docs/Fox/FXVec3d.html +1649 -0
  266. data/docs/Fox/FXVec3f.html +1649 -0
  267. data/docs/Fox/FXVec4d.html +1858 -0
  268. data/docs/Fox/FXVec4f.html +1858 -0
  269. data/docs/Fox/FXVerticalFrame.html +359 -0
  270. data/docs/Fox/FXVerticalSeparator.html +349 -0
  271. data/docs/Fox/FXViewport.html +780 -0
  272. data/docs/Fox/FXVisual.html +1023 -0
  273. data/docs/Fox/FXWindow.html +9948 -0
  274. data/docs/Fox/FXWizard.html +1052 -0
  275. data/docs/Fox/FXXBMIcon.html +453 -0
  276. data/docs/Fox/FXXBMImage.html +437 -0
  277. data/docs/Fox/FXXPMIcon.html +450 -0
  278. data/docs/Fox/FXXPMImage.html +434 -0
  279. data/docs/Fox/NotifyHeader.html +286 -0
  280. data/docs/Fox/SCNotification.html +1438 -0
  281. data/docs/Fox/TextRange.html +281 -0
  282. data/docs/IRB.html +204 -0
  283. data/docs/Responder.html +693 -0
  284. data/docs/Responder2.html +225 -0
  285. data/docs/_index.html +2101 -0
  286. data/docs/class_list.html +51 -0
  287. data/docs/css/common.css +1 -0
  288. data/docs/css/full_list.css +58 -0
  289. data/docs/css/style.css +496 -0
  290. data/docs/file.History.html +869 -0
  291. data/docs/file.README.html +104 -0
  292. data/docs/file_list.html +66 -0
  293. data/docs/frames.html +17 -0
  294. data/docs/index.html +614 -0
  295. data/docs/js/app.js +314 -0
  296. data/docs/js/full_list.js +216 -0
  297. data/docs/js/jquery.js +4 -0
  298. data/docs/method_list.html +31043 -0
  299. data/docs/top-level-namespace.html +214 -0
  300. data/examples/canvasdemo.rb +5 -1
  301. data/examples/gltest.rb +162 -106
  302. data/examples/glviewer.rb +12 -8
  303. data/examples/inputs.rb +9 -4
  304. data/examples/pig.rb +2 -2
  305. data/examples/unicode.rb +6 -27
  306. data/ext/fox16_c/FXRbApp.cpp +3 -17
  307. data/ext/fox16_c/FXRuby.cpp +36 -46
  308. data/ext/fox16_c/extconf.rb +50 -34
  309. data/ext/fox16_c/impl.cpp +1 -1
  310. data/ext/fox16_c/include/FXRbApp.h +2 -2
  311. data/ext/fox16_c/include/FXRbCommon.h +0 -2
  312. data/ext/fox16_c/include/FXRbText.h +82 -2
  313. data/ext/fox16_c/include/FXRbTextVirtuals.h +22 -0
  314. data/ext/fox16_c/include/FXRuby.h +21 -3
  315. data/ext/fox16_c/include/gvl_wrappers.h +29 -11
  316. data/ext/fox16_c/make_impl.rb +1 -1
  317. data/fxruby.gemspec +2 -1
  318. data/lib/fox16/aliases.rb +4 -1
  319. data/lib/fox16/bitmapview.rb +0 -0
  320. data/lib/fox16/calendar.rb +6 -8
  321. data/lib/fox16/canvas.rb +93 -62
  322. data/lib/fox16/chore.rb +0 -0
  323. data/lib/fox16/colors.rb +0 -0
  324. data/lib/fox16/core.rb +18 -18
  325. data/lib/fox16/dict.rb +0 -0
  326. data/lib/fox16/glgroup.rb +5 -5
  327. data/lib/fox16/glshapes.rb +111 -99
  328. data/lib/fox16/input.rb +9 -7
  329. data/lib/fox16/irb.rb +0 -0
  330. data/lib/fox16/iterators.rb +0 -0
  331. data/lib/fox16/keys.rb +0 -0
  332. data/lib/fox16/missingdep.rb +0 -0
  333. data/lib/fox16/pseudokeyboard.rb +0 -0
  334. data/lib/fox16/pseudomouse.rb +0 -0
  335. data/lib/fox16/responder.rb +0 -0
  336. data/lib/fox16/responder2.rb +0 -0
  337. data/lib/fox16/scintilla.rb +0 -0
  338. data/lib/fox16/settings.rb +0 -0
  339. data/lib/fox16/signal.rb +0 -0
  340. data/lib/fox16/timeout.rb +0 -0
  341. data/lib/fox16/tkcompat.rb +0 -0
  342. data/lib/fox16/undolist.rb +8 -8
  343. data/lib/fox16/version.rb +1 -1
  344. data/rdoc-sources/FXGLVisual.rb +8 -0
  345. data/rdoc-sources/FXIconList.rb +2 -0
  346. data/rdoc-sources/FXImage.rb +5 -0
  347. data/rdoc-sources/FXList.rb +2 -0
  348. data/rdoc-sources/FXListBox.rb +1 -1
  349. data/rdoc-sources/FXText.rb +4 -2
  350. data/swig-interfaces/FXGLVisual.i +1 -1
  351. data/swig-interfaces/FXImage.i +9 -4
  352. data/swig-interfaces/FXMemoryBuffer.i +3 -3
  353. data/swig-interfaces/FXText.i +10 -8
  354. data/swig-interfaces/macros.i +9 -0
  355. data/test/TC_FXGLViewer.rb +8 -1
  356. data/test/TC_FXImage.rb +8 -0
  357. data/test/TC_FXList.rb +8 -8
  358. data/test/TC_FXText.rb +19 -0
  359. data/test/TC_FXVec4f.rb +26 -12
  360. metadata +299 -6
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: e4a6cf01f66381d2f7759c7a6e918bc159410443
4
- data.tar.gz: e5f562a68520db23e30c0d1a12e21b551757a2dc
2
+ SHA256:
3
+ metadata.gz: ba1a1d851f7c76d9757ba5108c3e81bbf3a6b0eb8d94c3be814651ea9faf5687
4
+ data.tar.gz: c207d33ecd96c3fb49506cbc692279115f81dabc90fa6e14421345c81d685507
5
5
  SHA512:
6
- metadata.gz: 8571281e68f9d5059acc4e5cd74dc4943b2385cf532129c9130b7728b8ceecbfd3cc998d4320413c68d1365b1499d044c99c3c9e0257b27202286c0cfbeaafae
7
- data.tar.gz: 5eca6ad6d3ffb9920bfac096351de8bbafe0c06e3bb203a06afc699e3e6fee1077529c3abbb5d247c4f2b8061ad29211b661dc099abcd652f6ca34b30293cb2e
6
+ metadata.gz: afcba6ecb6cb88b7688e87a524d6a5a6a3cba00add46f5c2c7ec5d5a73ab6e0fb6048f5cc8efabf12b86e97b0d5b304724361ef198fc7a505eaf95de0b960682
7
+ data.tar.gz: b50f77b898cdec9f36151ff448954a2e056093071f0473de32c7a892429d30ced06cda76fb65547ba07371b34a08f535cf282ff598ca4f27046d4a7cfa9e2051
@@ -1,6 +1,4 @@
1
- dist: trusty
2
- sudo: false
3
- group: beta
1
+ dist: xenial
4
2
  language: ruby
5
3
 
6
4
  addons:
@@ -31,15 +29,6 @@ after_script:
31
29
  - "xpra stop :9"
32
30
 
33
31
  rvm:
34
- - "2.0.0"
35
- - "2.1"
36
- - "2.2"
37
- - "2.3.1"
38
- - "2.4.0"
39
32
  - "ruby-head"
40
- # swig compilation is sooo slow on rbx-3, that it exceeds the time limit on travis-ci
41
- #- "rbx-3"
42
- matrix:
43
- allow_failures:
44
- - rvm: ruby-head
45
- - rvm: rbx-3
33
+ - "2.7.2"
34
+ - "2.2"
data/.yardopts CHANGED
@@ -7,6 +7,6 @@
7
7
  rdoc-sources/*.rb
8
8
  lib/fox16/*.rb
9
9
  -
10
- History.txt
10
+ History.md
11
11
  rdoc-sources/*.rdoc
12
12
  README.rdoc
data/Gemfile CHANGED
@@ -3,16 +3,19 @@ source 'https://rubygems.org'
3
3
  # Specify your gem's runtime dependencies in fxruby.gemspec
4
4
  gemspec
5
5
 
6
+ # For some reason this is required in addition to the gemspec
7
+ # when 'bundle config force_ruby_platform true' is active:
8
+ gem 'mini_portile2'
9
+
6
10
  group :development do
7
11
  gem 'rake-compiler', '~> 1.0'
8
- gem 'rake-compiler-dock', '~> 0.6.0'
12
+ gem 'rake-compiler-dock', '~> 1.0'
9
13
  gem 'yard', '~> 0.8'
10
- gem "bundler", "~> 1.12"
11
- gem "rake", "~> 12.0"
14
+ gem "bundler", ">= 1.12", "< 3.a"
15
+ gem "rake", "~> 13.0"
12
16
  end
13
17
 
14
18
  group :test do
15
- gem 'opengl', '~> 0.8'
16
- gem 'glu', '~> 8.0'
19
+ gem 'opengl-bindings', '~> 1.0'
17
20
  gem 'test-unit', '~> 3.1'
18
21
  end
data/History.md CHANGED
@@ -1,14 +1,55 @@
1
- === 1.6.38 / 2017-07-27
1
+ ## 1.6.43 / 2020-11-27
2
+
3
+ * Make FXRuby compatible to ruby-3.0
4
+ * Migration to the `opengl-bindings` gem.
5
+ The `opengl` gem is deprecated since years and no longer maintained.
6
+ `opengl-bindings` is the announced successor.
7
+ * Add an alternative location for API documentation: https://larskanis.github.io/fxruby/
8
+ This is because https://rubydoc.info is too often down.
9
+ * Fix Canvas::ImageShape and shape selection. #60
10
+ This changes the position the text of TextShape is printed on the canvas.
11
+
12
+ ## 1.6.42 / 2020-02-01
13
+
14
+ * Fix a packing issue in 1.6.41: `lib/fox16/input.rb` had owner permission only.
15
+
16
+ ## 1.6.41 / 2020-01-26
17
+
18
+ * Add support for Ruby-2.7
19
+ * Fix build error on FreeBSD. #51
20
+ * Fix handling of scroll events to FXText instance.
21
+ * Add 8 virtual methods of FXText to be passed through ruby.
22
+ * FXText#findText: Return multi entry array only when searching Regex.
23
+ * Fix several example apps in example/ dir.
24
+ * Update to rake-compiler-dock-1.0 and use parallel cross build.
25
+ * Update to libpng-1.6.37, jpeg-turbo-2.0.4, libtiff-4.1.0 on Windows binary gem.
26
+
27
+ ## 1.6.40 / 2018-12-28
28
+
29
+ * Fix some library classes which failed, when Fox was not included into the global namespace.
30
+ * Add new accessor FXImage#dataPtr to access raw image data from FFI, Fiddle or OpenGL.
31
+ * Ensure zero terminated strings in values of C-argv.
32
+ * Remove various Ruby and C++ warnings.
33
+ * Update libfox to 1.6.57.
34
+ * Add support for RubyInstaller-2.6
35
+ * Set minimum required ruby version to 2.2.
36
+
37
+ ## 1.6.39 / 2017-12-26
38
+
39
+ * Fix FXGLVisual.supported and .supported?
40
+ * Add support for RubyInstaller-2.5
41
+
42
+ ## 1.6.38 / 2017-07-27
2
43
 
3
44
  * Update dependent libraries for Windows binary gem.
4
45
  * Replace libjpeg-9b by libjpeg-turbo-1.5.2 on Windows binary gem.
5
46
  * Fix build with clang on FreeBSD (and possibly other OS). Fixes #41
6
47
 
7
- === 1.6.37 / 2017-06-24
48
+ ## 1.6.37 / 2017-06-24
8
49
 
9
50
  * Add a 3rd type of FXRbObjects which is used for callbacks. Fixes #39
10
51
 
11
- === 1.6.36 / 2017-06-04
52
+ ## 1.6.36 / 2017-06-04
12
53
 
13
54
  * Support the fxruby source gem on Windows (only RubyInstaller-2.4).
14
55
  * Replace our self-made directory search methods by pgk-config.
@@ -18,7 +59,7 @@
18
59
  * Update to libjpeg-9b
19
60
  * More automation for gem releases
20
61
 
21
- === 1.6.35 / 2017-02-15
62
+ ## 1.6.35 / 2017-02-15
22
63
 
23
64
  * Adjust for Ruby-2.4 with unified Integers
24
65
  * Add support for RubyInstaller-2.4
@@ -29,7 +70,7 @@
29
70
  * Update dependent gems.
30
71
  * Update libraries for Windows build.
31
72
 
32
- === 1.6.34 / 2016-04-26
73
+ ## 1.6.34 / 2016-04-26
33
74
 
34
75
  * Add support for RubyInstaller-2.3
35
76
  * Avoid RARRAY_PTR() which broke fxruby on ruby-2.3.0.
@@ -37,7 +78,7 @@
37
78
  * Fix initialisation of runOnUiThread event handler, when FXApp is called with a block.
38
79
  * Disable GVL on RubyInstaller-1.9.3. Fixes #24
39
80
 
40
- === 1.6.33 / 2015-08-20
81
+ ## 1.6.33 / 2015-08-20
41
82
 
42
83
  * Avoid rb_* calls that are prohibited during GC. Fixes #23
43
84
  * Use copy'ing getters for FXVec members in FXMat*, FXMaterial and FXLight.
@@ -45,7 +86,7 @@
45
86
  * Fix test suite, so that all tests pass.
46
87
  * Add a travis-ci test setup and connect it to the github account.
47
88
 
48
- === 1.6.32 / 2015-08-07
89
+ ## 1.6.32 / 2015-08-07
49
90
 
50
91
  * Avoid call to rb_class2name() during GC. Fixes #21
51
92
  * Use release mode, unless extconf.rb is called with --enable-debug,
@@ -53,12 +94,12 @@
53
94
  * Remove self made GC detection by ruby's rb_during_gc().
54
95
  * Fix Windows binary x86-mingw32.gem for Ruby versions < 2.0
55
96
 
56
- === 1.6.31 / 2015-07-21
97
+ ## 1.6.31 / 2015-07-21
57
98
 
58
99
  * Replace pipe2() by pipe() and fcntl(), because pipe2() is not as portable.
59
100
  * Add missing include statement. Fixes #20
60
101
 
61
- === 1.6.30 / 2015-07-07
102
+ ## 1.6.30 / 2015-07-07
62
103
 
63
104
  * Fix crashes in rb_gc_mark(): 0x00000003f54af8 is T_ZOMBIE / T_NONE
64
105
  * Release Ruby's GVL while calls to FXImage#savePixels, #loadPixels
@@ -69,7 +110,7 @@
69
110
  This allows to safely execute GUI code from other threads.
70
111
  * Use rake-compiler-dock for building windows binary gems.
71
112
 
72
- === 1.6.29 / 2015-02-17
113
+ ## 1.6.29 / 2015-02-17
73
114
 
74
115
  * Add Windows binaries for Ruby-2.1 and 2.2.
75
116
  * Use shared libs for Windows binary gems to reduce gem size.
@@ -80,40 +121,40 @@
80
121
  * Change GC'ing of TreeListBox and FXTreeItem. Fixes #10
81
122
  * Update to swig version 2.0 or newer. Fixes #13
82
123
 
83
- === 1.6.28 / 2013-07-05
124
+ ## 1.6.28 / 2013-07-05
84
125
 
85
126
  * Fix build for Ruby-2.0.0-p127+
86
127
  * Update libraries for win32 build: libfox-1.6.49
87
128
 
88
- === 1.6.27 / 2013-04-05
129
+ ## 1.6.27 / 2013-04-05
89
130
 
90
131
  * Add support for Ruby-2.0.
91
132
  * Add cross compilation for x64-mingw32 target.
92
133
 
93
- === 1.6.26 / 2013-02-16
134
+ ## 1.6.26 / 2013-02-16
94
135
 
95
136
  * Mark all text strings retrieved from fox as UTF-8 when running on Ruby 1.9
96
137
  * Fix loading error on Ruby 1.8.7 by renaming the C++ extension to fox16_c
97
138
  * Update libraries for windows cross compilation
98
139
 
99
- === 1.6.25 / 2012-06-17
140
+ ## 1.6.25 / 2012-06-17
100
141
 
101
142
  * Windows: Fix slow loading of fox16.so by using a more recent mingw-w64 compiler
102
143
  (reported by Allen Doug and Igor Jorobus)
103
144
  * Fix two possible segfaults in conjunction with FXSplashWindow (reported by Igor Jorobus)
104
145
 
105
- === 1.6.24 / 2012-06-06
146
+ ## 1.6.24 / 2012-06-06
106
147
 
107
148
  * Update libraries for win32 build: libz-1.2.7 libpng-1.5.10 libjpeg-8d libtiff-4.0.1 libfox-1.6.45
108
149
  * Avoid Segfauls in lots of methods when called with nil instead of FXApp, FXComposite or FXWindow objects
109
150
 
110
- === 1.6.23 / 2012-03-08
151
+ ## 1.6.23 / 2012-03-08
111
152
 
112
153
  * Add YARD documentation support
113
154
  * Use generated Manifest.txt
114
155
  * Support for parallel task execution with drake
115
156
 
116
- === 1.6.22 / 2012-02-21
157
+ ## 1.6.22 / 2012-02-21
117
158
 
118
159
  * Allow better access to raw pixel data of FXImage and derivatives
119
160
  * Build Windows binary gem per cross compiler on Linux
@@ -132,13 +173,1295 @@
132
173
  * Fix FXApp#addInput for Ruby 1.9 on Linux
133
174
  * Fix "ruby_code case not handled: Regexp" issue with newer rubygems
134
175
 
135
- === 1.6.20 / 2009-03-06
176
+ ## Changes For Version 1.6.20 (November 09, 2009)
136
177
 
137
178
  * Integrated the Hoe and rake-compiler extensions into the Rakefile and
138
179
  removed redundant tasks.
139
180
  * Did some work to provide support for MinGW builds.
181
+ * The previous release of FXRuby couldn't be built from source against Ruby 1.9.1 final
182
+ due to a change in some of the file-related utility libraries
183
+ (see RubyForge Bug #23786). This problem has been corrected.
184
+
185
+
186
+ ## Changes For Version 1.6.19 (March 6, 2009)
187
+
188
+ * The previous release of FXRuby couldn't be built from source against Ruby 1.9.1 final
189
+ due to a change in some of the file-related utility libraries
190
+ (see RubyForge Bug #23786). This problem has been corrected.
191
+ * The previous release of FXRuby couldn't be built from source against Ruby versions 1.8.5 or
192
+ earlier (see RubyForge Bug #23967). This problem has been corrected.
193
+ * A change in the return value for Ruby's `instance_variables` method broke
194
+ some of the code related to message handling in FXRuby (see RubyForge
195
+ Bug #23787). This problem has been corrected.
196
+ * The `addAccel` method for the `FXAccelTable` class
197
+ now accepts lambda functions (or any other objects that respond to `call`). See
198
+ the API documentation
199
+ for `FXAccelTable` for examples of how this works.
200
+
201
+
202
+ ## Changes For Version 1.6.18 (December 29, 2008)
203
+
204
+ * Some users were having trouble building FXRuby on 64-bit operating systems
205
+ (see RubyForge Bug #23375). This problem has been corrected.
206
+
207
+
208
+ ## Changes For Version 1.6.17 (December 24, 2008)
209
+
210
+ * The Ruby interpreter was generating a large number of warning messages about redefined methods
211
+ in the `kwargs.rb` library
212
+ (see RubyForge
213
+ Bug #19231 and elsewhere). This problem has been corrected.
214
+
215
+ * Due to recent changes in Ruby's garbage collection algorithm, FXRuby applications could under some circumstances
216
+ crash for large numbers of table items
217
+ (see RubyForge bugs ).
218
+ This bug has been fixed.
219
+
220
+ * The documentation for the `FXTable` class referred to the non-existent `setColumnX`
221
+ and `setRowY` instance methods
222
+ (see RubyForge
223
+ Bug #21987). These entries have been removed from the documentation.
224
+
225
+ * A number of instance methods for the `FXTable` class could crash an application if they
226
+ were passed out-of-bounds index arguments
227
+ (see RubyForge
228
+ Bug #21987). These methods now raise `IndexError` when they're passed out-of-bounds
229
+ indexes.
230
+
231
+ * Due to a change in the URL scheme for the Dilbert web site, the `dilbert.rb` example
232
+ program was no longer working properly
233
+ (see RubyForge
234
+ Bug #21538). This has been fixed.
235
+
236
+ * The `lower` method for the `FXRangef` was returning
237
+ ´self´ instead of an `FXVec3f` instance for the range's low
238
+ bound
239
+ (see RubyForge
240
+ Bug #22488). This has been fixed.
241
+
242
+ * Made a number of minor fixes for compatibility with Ruby 1.9.1.
243
+
244
+
245
+ ## Changes For Version 1.6.16 (July 3, 2008)
246
+
247
+ * Historically, if you called `create` on a
248
+ window before its parent window was created, your application would
249
+ crash (see RubyForge
250
+ Bug #20702 and elsewhere). Now, the code should raise a
251
+ ´RuntimeError´ with a message indicating the
252
+ problem.
253
+
254
+ * The message data that the `FXPicker` widget
255
+ sends along with its ´SEL_CHANGED´ and
256
+ ´SEL_COMMAND´ messages wasn't being handled
257
+ properly, and as a result, applications using this widget could crash
258
+ (see RubyForge
259
+ Bug #20780). This problem has been fixed.
260
+
261
+
262
+ ## Changes For Version 1.6.15 (June 4, 2008)
263
+
264
+ * FXRuby applications could crash (with a segmentation fault) if
265
+ ´nil´ was passed in as the first argument to
266
+ `FXDialogBox.new` or
267
+ `FXMainWindow.new` (see RubyForge
268
+ Bug #14642). These methods now raise an
269
+ ´ArgumentError´ if ´nil´ is
270
+ passed as the first argument.
271
+
272
+ * You should only ever construct one `FXApp`
273
+ object per application, but there was no protection against doing so
274
+ in the code (see RubyForge
275
+ Bug #16275). Now, `FXApp.new` will
276
+ raise a `RuntimeException` if an
277
+ `FXApp` object already exists.
278
+
279
+ * The `babelfish.rb` example program, which
280
+ previously depended on an external web service to perform translation
281
+ between languages, was broken since that web service no longer exists
282
+ (see RubyForge
283
+ Bug #16962). The example has now been updated to use Dr. Nic's
284
+ Tranexp library instead.
285
+
286
+ * The value of the ´MBOX_SAVE_CANCEL_DONTSAVE´
287
+ option (for the `FXMessageBox` class) wasn't
288
+ wrapped properly and was unusable (see RubyForge
289
+ Bug #17094). There was also no constant corresponding to the
290
+ ´MBOX_CLICKED_DONTSAVE´ return value. Both of these
291
+ problems have been fixed.
292
+
293
+ * The fields for new `FXHiliteStyle` objects
294
+ were uninitialized and as a result sometimes gave unpredictable
295
+ results (see RubyForge
296
+ Bug #19637). This has been fixed.
297
+
298
+ * The `columnHeaderFont` and
299
+ `rowHeaderFont` attributes for
300
+ `FXTable` weren't implemented properly (see
301
+ RubyForge
302
+ Bug #20142). This has been fixed.
303
+
304
+ * Ruby 1.8.7 adds a new `first` method to
305
+ the `Enumerable` module, and this conflicts with
306
+ the existing `first` method defined in the
307
+ `FXWindow` base class for a number of FXRuby
308
+ classes which mix in `Enumerable` (see RubyForge
309
+ Bug #20418). This problem has been resolved.
310
+
311
+ * Due to a bug in the `extconf.rb` script, the
312
+ build was failing for Ruby 1.9.0 (see RubyForge
313
+ Bug #20426). This has been fixed.
314
+
315
+
316
+ ## Changes For Version 1.6.14 (March 29, 2008)
317
+
318
+ * Updated the documentation for the `FXImage`
319
+ class to indicate which methods call `render`
320
+ after they're finished, and which ones do not.
321
+
322
+ * Corrected a little typo in the
323
+ `gembrowser.rb` example program.
324
+
325
+ * Updated the `dilbert.rb` example program to
326
+ use the more popular-and-likely-to-be-installed Hpricot HTML
327
+ parser library instead of Rubyful Soup.
328
+
329
+ * Re-added the documentation for the
330
+ ´TOGGLEBUTTON_KEEPSTATE´ option, which had
331
+ mysteriously disappeared (see RubyForge
332
+ Bug #2286).
333
+
334
+ * Made a number of minor fixes to support building FXRuby against
335
+ Ruby 1.9.
336
+
337
+ * Added a binary gem for OS X. This works with the Ruby that's
338
+ included with OS X (Leopard).
339
+
340
+ * The binary gem for Windows was built with FOX version 1.6.32 and
341
+ FXScintilla version 1.71.
342
+
343
+
344
+ ## Changes For Version 1.6.13 (November 9, 2007)
345
+
346
+ * Calls to the `extractText` method for the
347
+ `FXTable` class were causing various
348
+ memory-related errors on certain platforms (see RubyForge
349
+ Bug #15444). This problem has been fixed.
350
+
351
+ * The binary gem for Windows was built with FOX version 1.6.28 and
352
+ FXScintilla version 1.71.
353
+
354
+ ## Changes For Version 1.6.12 (October 19, 2007)
355
+
356
+ * The API documentation for `FXMDIClient`
357
+ referred to the non-existent instance method
358
+ `activeChild=` (see RubyForge
359
+ Bug #10259). This method has been added.
360
+
361
+ * The API documentation for `FXMDIClient`
362
+ also referred to the non-existent instance methods
363
+ `getMDIChildFirst` and
364
+ `getMDIChildLast`. These entries have been
365
+ removed.
366
+
367
+ * The API documentation for `FXMDIChild`
368
+ referred to non-existent instance methods
369
+ `getMDINext` and
370
+ `getMDIPrev` (see RubyForge
371
+ Bug #10436). The documentation has been corrected.
372
+
373
+ * Added the ´:repeat´ parameter for the
374
+ `addChore` and
375
+ `addTimeout` methods. See the documentation for
376
+ more details, and `gltest.rb` for an example of its
377
+ use.
378
+
379
+ * Corrected a number of minor typos in the API
380
+ documentation.
381
+
382
+ * Corrected a typo in the `imageviewer.rb`
383
+ example.
384
+
385
+ * Modified the `inputs.rb` example program to
386
+ use `Pipe.read_nonblock()` instead of
387
+ `Pipe.read()`.
388
+
389
+ * Fixed a bug in the implementation of the
390
+ `findText` method for the
391
+ `FXText` class, when used with the
392
+ ´SEARCH_REGEX´ option.
393
+
394
+ * The binary gem for Windows was built with FOX version 1.6.28 and
395
+ FXScintilla version 1.71.
396
+
397
+
398
+ ## Changes For Version 1.6.11 (April 18, 2007)
399
+
400
+ * Added `editable` as an alias for
401
+ `FXTextField#editable?`.
402
+
403
+ * Added `each_child_recursive` instance
404
+ method for the `FXWindow` class. This method
405
+ performs a depth-first traversal of the widget tree starting at the
406
+ receiver window.
407
+
408
+ * Corrected some errors in the keyword arguments support for the
409
+ `FXVec2d`, `FXVec2f`,
410
+ `FXVec3d`, `FVec3f`,
411
+ `FXVec4d` and `FXVec4f`
412
+ classes.
413
+
414
+ * Corrected an error in the keyword arguments support for the
415
+ `FXIconDict` class.
416
+
417
+ * Modified the gem specification so that the RDoc generated during
418
+ a gem install is consistent with that generated by other methods (see
419
+ RubyForge
420
+ Bug #10035).
421
+
422
+ * Changes to the `iterators` library in version
423
+ 1.6.6 introduced a bug in the `each` method for
424
+ the `FXFoldingList`,
425
+ `FXTreeList` and
426
+ `FXTreeListBox` classes (see RubyForge
427
+ Bug #10175). This problem has been fixed.
428
+
429
+ * Applied submitted patches for building FXRuby against Ruby 1.9
430
+ (see RubyForge
431
+ Bug #10181). Please note that building FXRuby against the Ruby
432
+ 1.9 code base is still officially unsupported; however, I'm glad to
433
+ accept patches that will help make this possible.
434
+
435
+ * The binary gem for Windows was built with FOX version 1.6.25 and
436
+ FXScintilla version 1.71.
437
+
438
+
439
+ ## Changes For Version 1.6.9 (April 8, 2007)
440
+
441
+ * A bug was discovered in the keyword arguments library support
442
+ for the `FXMenuBar` class (see RubyForge
443
+ Bug #9927). This problem has been fixed.
444
+
445
+ * The binary gem for Windows was built with FOX version 1.6.25 and
446
+ FXScintilla version 1.71.
447
+
448
+
449
+ ## Changes For Version 1.6.8 (April 5, 2007)
450
+
451
+ * Due to an internal bookkeeping error, applications like the
452
+ `glviewer.rb` example program which create multiple
453
+ `FXGLViewer` instances could cause an assertion
454
+ to fail. When this assertion fails on Windows, the program simply
455
+ crashes (see RubyForge
456
+ Bug #9775). This problem has been fixed.
457
+
458
+ * The keyword arguments library, introduced in version 1.6.5, is
459
+ now included automatically when you load FXRuby; it is no longer
460
+ necessary to explicitly require it.
461
+
462
+ * The binary gem for Windows was built with FOX version 1.6.25 and
463
+ FXScintilla version 1.71.
464
+
465
+
466
+ ## Changes For Version 1.6.7 (March 31, 2007)
467
+
468
+ * The binary gem for Windows was built with FOX version 1.6.25 and
469
+ FXScintilla version 1.71.
470
+
471
+
472
+ ## Changes For Version 1.6.6 (February 10, 2007)
473
+
474
+ * Somewhere along the way, the RAA browser example program got
475
+ broken due to changes in the SOAP interface to RAA (see RubyForge
476
+ Bug #7977). This has been fixed.
477
+
478
+ * Some debugging code that was meant to detect errors in FXRuby
479
+ message data conversion was inadvertently causing some user
480
+ applications to crash when running under Windows (see RubyForge
481
+ Bug #8049). This debugging code has been changed to avoid the
482
+ problem.
483
+
484
+ * Modified the implementations of the each iterator methods for
485
+ `FXFoldingList`,
486
+ `FXFoldingItem`,
487
+ `FXTreeItem`, `FXTreeList`
488
+ and `FXTreeListBox` (see RubyForge
489
+ Bug #8090). The new implementation is a bit more robust in
490
+ terms of modifications (such as deletion) of the iterated-over
491
+ elements.
492
+
493
+ * A bug in the new keyword arguments library (introduced in
494
+ version 1.6.5) caused the `initialize` method
495
+ for the `FXDCWindow` class to do the wrong thing
496
+ (see RubyForge
497
+ Bug #8441). This has been corrected.
498
+
499
+ * A different bug in the keyword arguments library caused the
500
+ `initialize` method for the
501
+ `FXFont` class to do the wrong thing (see RubyForge
502
+ Bug #8517). This also has been corrected.
503
+
504
+ * Yet another bug in the keyword arguments library broke the part
505
+ of the code that used to yield ´self´ to an
506
+ optional block attached to the call to `new`
507
+ (see RubyForge
508
+ Bug #8518). This has been corrected.
509
+
510
+ * Most of the FXRuby example programs have been updated to use the
511
+ keyword arguments library.
512
+
513
+ * Added a new "virtual" keyword argument
514
+ ´:padding´ that can be used in place of (or in
515
+ addition to) the ´:padLeft´,
516
+ ´:padRight´, ´:padTop´ and
517
+ ´:padBottom´ arguments for a constructor. When a
518
+ ´:padding´ value is passed in to the arguments
519
+ hash, that value will be used for any of the four regular padding
520
+ values that aren't otherwise specified. See the example programs for,
521
+ you know, examples.
522
+
523
+ * The binary gem for Windows was built with FOX version 1.6.20 and
524
+ FXScintilla version 1.71.
525
+
526
+
527
+ ## Changes For Version 1.6.5 (January 20, 2007)
528
+
529
+ * Clicking outside of the visible cells for an
530
+ `FXTable` when there was no current selection
531
+ caused the code to raise an exception (see RubyForge
532
+ Bug #5907). This problem has been fixed.
533
+
534
+ * The `hasTimeout?` method for the
535
+ `FXApp` class was implemented incorrectly (see
536
+ RubyForge
537
+ Bug #7564). This problem has been fixed.
538
+
539
+ * The `FXFoldingList` and
540
+ `FXFoldingItem` classes did not have each
541
+ iterator methods like most of the other list-based widgets (see RubyForge
542
+ Patch #7978). These have been added.
543
+
544
+ * The API documentation for `FXMDIClient`
545
+ claimed that `FXScrollArea` was its base class
546
+ (see RubyForge
547
+ Bug #7979). This has been corrected; the base class for
548
+ `FXMDIClient` is
549
+ `FXComposite`.
550
+
551
+ * There was a small typo in the documentation for the
552
+ `FXFoldingList` class options (see RubyForge
553
+ Bug #7981). This has been fixed.
554
+
555
+ * Added preliminary support for keyword-style arguments, as
556
+ described in the "Differences Between
557
+ FOX and FXRuby" section of the FXRuby User's Guide.
558
+
559
+ * The binary gem for Windows was built with FOX version 1.6.20 and
560
+ FXScintilla version 1.71.
561
+
562
+
563
+ ## Changes For Version 1.6.4 (November 30, 2006)
564
+
565
+ * A change made in Ruby 1.8.5 for cyclic requires led to a problem
566
+ that caused the Ruby interpreter to emit a large number of warnings
567
+ (see RubyForge
568
+ Bug #5633). This problem has been fixed.
569
+
570
+ * The binary gem for Windows was built with FOX version 1.6.16 and
571
+ FXScintilla version 1.71.
572
+
573
+
574
+ ## Changes For Version 1.6.3 (October 27, 2006)
575
+
576
+ * Widgets of some classes (namely
577
+ `FXTopWindow` and
578
+ `FXMDIChild`) weren't properly sending a
579
+ ´SEL_CLOSE´ message to their message targets (see
580
+ RubyForge
581
+ Bug #5498). Thanks to a change in FOX version 1.6.16, this
582
+ problem has been fixed.
583
+
584
+ * The `getControlFor` method for the
585
+ `FXComboTableItem` class was coded incorrectly
586
+ (see RubyForge
587
+ Bug #5906). This has been fixed.
588
+
589
+ * There was a minor typo in the API documentation for the
590
+ `FXTriStateButton` class (see RubyForge Bug #5962). This has been fixed.
591
+
592
+ * The `each_row` and
593
+ `each_column` iterator methods for the
594
+ `FXTable` class were incorrectly coded (see
595
+ RubyForge
596
+ Bug #6036). This has been fixed.
597
+
598
+ * The `new` class methods for
599
+ `FXColorItem`, `FXDirItem`,
600
+ `FXFileItem`,
601
+ `FXFoldingItem`,
602
+ `FXHeaderItem`,
603
+ `FXIconItem`, `FXListItem`
604
+ and `FXTreeItem` were all raising exceptions when
605
+ a non-´nil´ value was passed in for the last
606
+ argument (see RubyForge
607
+ Bug #6197). A similar problem was present for various instance
608
+ methods in the `FXColorList`,
609
+ `FXListBox` and
610
+ `FXMDIClient` classes. These problems have been
611
+ fixed.
612
+
613
+ * A few problems were discovered for the
614
+ `inputs.rb` example program (see RubyForge
615
+ Bug #6209). These problems have been fixed.
616
+
617
+ * Several instance methods for the `FXTable`
618
+ class were not actually present under their documented names (see
619
+ RubyForge
620
+ Bug #6211). This has been fixed.
621
+
622
+ * The build script was not compatible with changes made in the
623
+ recently-released FXScintilla 1.71 (see RubyForge
624
+ Bug #6313). This has been fixed.
625
+
626
+ * The binary gem for Windows was built with FOX version 1.6.16 and
627
+ FXScintilla version 1.71.
628
+
629
+
630
+ ## Changes For Version 1.6.2 (September 13, 2006)
631
+
632
+ * The `expandTree()` and
633
+ `collapseTree()` methods for the
634
+ `FXFoldingList` class were incorrectly identified
635
+ as `expandFolding()` and
636
+ `collapseFolding()` in the API documentation
637
+ (see RubyForge
638
+ Bug #5354). This has been fixed.
639
+
640
+ * The `FXDockTitle` class was not supported
641
+ (see RubyForge
642
+ Bug #5632). This has been fixed.
643
+
644
+ * The API documentation for the `FXGLCanvas`
645
+ class claimed it had a `shared?` method, but it
646
+ didn't (see RubyForge
647
+ Bug #5591). Now it does.
648
+
649
+ * The `FXGradientBar` class was not supported
650
+ (see RubyForge
651
+ Bug #5746). This has been fixed.
652
+
653
+ * The binary gem for Windows was built with FOX version 1.6.14 and
654
+ FXScintilla version 1.67 (from CVS).
655
+
656
+
657
+ ## Changes For Version 1.4.7 (September 13, 2006)
658
+
659
+ * The `children` instance method for the
660
+ `FXWindow` class always returned an array of
661
+ `FXWindow` instances, even if the actual types
662
+ should have been instances of subclasses of
663
+ `FXWindow` (see RubyForge
664
+ Bug #4342). This has been fixed.
665
+
666
+ * The `dilbert.rb` example program was broken
667
+ due to a change in the Dilbert.com web site structure (see RubyForge
668
+ Bug #4597). This has been fixed.
669
+
670
+ * The `expandTree()` and
671
+ `collapseTree()` methods for the
672
+ `FXFoldingList` class were incorrectly identified
673
+ as `expandFolding()` and
674
+ `collapseFolding()` in the API documentation
675
+ (see RubyForge
676
+ Bug #5354). This has been fixed.
677
+
678
+ * The `FXDockTitle` class was not supported
679
+ (see RubyForge
680
+ Bug #5632). This has been fixed.
681
+
682
+ * The API documentation for the `FXGLCanvas`
683
+ class claimed it had a `shared?` method, but it
684
+ didn't (see RubyForge
685
+ Bug #5591). Now it does.
686
+
687
+ * The `FXGradientBar` class was not supported
688
+ (see RubyForge
689
+ Bug #5746). This has been fixed.
690
+
691
+ * The binary gem for Windows was built with FOX version 1.4.34 and
692
+ FXScintilla version 1.63.
693
+
694
+
695
+ ## Changes For Version 1.6.1 (July 21, 2006)
696
+
697
+ * The message data sent along for the
698
+ ´SEL_INSERTED´, ´SEL_DELETED´
699
+ and ´SEL_REPLACED´ messages from an a
700
+ `FXText` widget to its target was not being
701
+ converted properly (see RubyForge
702
+ Bug #4666). This has been fixed.
703
+
704
+ * The code related to the localization of application messages in
705
+ FOX wasn't implemented properly in FXRuby, and as a result,
706
+ constructing certain dialogs (like the color dialog) could cause a
707
+ program to crash (see RubyForge
708
+ Bug #5000). This has been fixed.
709
+
710
+ * The "Stop Spin" button in the gltest.rb example program didn't
711
+ stop the cubes from spinning after either the "Spin Timer" or "Spin
712
+ Chore" option was selected (see RubyForge
713
+ Bug #5001). This was actually a symptom of a larger problem,
714
+ that FXRuby wasn't properly handling timers and chores. These problems
715
+ have been fixed.
716
+
717
+ * Setting the current item for an
718
+ `FXComboBox` to -1 (to indicate that there's no
719
+ current item) would cause FXRuby to erroneously raise an
720
+ `IndexError` (see RubyForge
721
+ Bug #5007). This has been fixed.
722
+
723
+ * The documentation for the `reparent`
724
+ instance method for the `FXWindow` class was
725
+ incorrect (see RubyForge
726
+ Bug #5035). This has been fixed.
727
+
728
+ * The `textedit.rb` example program was not up
729
+ to date with some of the changes for FOX 1.6. This example has been
730
+ updated.
731
+
732
+ * The new `font` method for the
733
+ `FXFont` class was not documented. This has been
734
+ fixed.
735
+
736
+ * The `dilbert.rb` example program has been
737
+ modified to use the RubyfulSoup HTML library instead of the
738
+ html-parser library.
739
+
740
+ * As discussed in various forums (see for example [this
741
+ post](http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/182827), the `autorequire` directive for
742
+ RubyGems specifications is now deprecated. As a result, this has been
743
+ removed from the FXRuby gem specification. This change will break any
744
+ code that was using a statement like:´require_gem 'fxruby'´as
745
+ the sole means for loading FXRuby. Such programs should instead
746
+ use:´require 'fox16'´which will work
747
+ for either gem based or non-gem based installations.
748
+
749
+ * The binary gem for Windows was built with FOX version 1.6.8 and
750
+ FXScintilla version 1.67 (from CVS).
751
+
752
+
753
+ ## Changes For Version 1.6.0 (May 29, 2006)
754
+
755
+ * This is the first release of FXRuby compatible with FOX version
756
+ 1.6. One of the most signficant changes for FOX 1.6 has been the
757
+ addition of Unicode support; all FOX widgets and internal string
758
+ processing routines are now Unicode aware. For a comprehensive
759
+ overview of the changes made to FOX since version 1.4 (including those
760
+ made in the FOX 1.5 development series), please refer to the
761
+ [News archives](http://www.fox-toolkit.com/news.html) at
762
+ the FOX web site.
763
+
764
+ * Added the `allowSide`,
765
+ `disallowSide` and
766
+ `allowedSide?` methods for the
767
+ `FXDockBar` class, as complements to the
768
+ `allowedSides` accessor methods (see RubyForge
769
+ Feature Request #2307).
770
+
771
+ * Added the `visible=` and
772
+ `visible?` accessor methods for the
773
+ `FXWindow` class, as complements to the
774
+ `show`, `hide` and
775
+ `shown?` methods (see RubyForge
776
+ Feature Request #3579).
777
+
778
+ * The `browser.rb` example was making use of a
779
+ deprecated API (see RubyForge
780
+ Bug #4325). This has been fixed.
781
+
782
+ * The `children` instance method for the
783
+ `FXWindow` class always returned an array of
784
+ `FXWindow` instances, even if the actual types
785
+ should have been instances of subclasses of
786
+ `FXWindow` (see RubyForge
787
+ Bug #4342). This has been fixed.
788
+
789
+ * The `dilbert.rb` example program was broken
790
+ due to a change in the Dilbert.com web site structure (see RubyForge
791
+ Bug #4597). This has been fixed.
792
+
793
+ * The binary gem for Windows was built with FOX version 1.6.5 and
794
+ FXScintilla version 1.67 (from CVS).
795
+
796
+
797
+ ## Changes For Version 1.4.6 (April 26, 2006)
798
+
799
+ * FXRuby would not compile properly on some x86-64 systems (see
800
+ RubyForge
801
+ Bug #3729). This error has been corrected. Thanks to Javier
802
+ Goizueta for initially reporting this problem, and especially to
803
+ Tobias Peters for providing a patch.
804
+
805
+ * The `FXIconDict` widget was accidentally
806
+ "lost" in the transition between FXRuby versions 1.2 and 1.4 (see
807
+ RubyForge
808
+ Bug #4117). This error has been corrected. Thanks to Manfred
809
+ Usselmann for reporting this problem.
810
+
811
+ * The `FXSwitcher` widget was not sending the
812
+ appropriate message data to its message target for the
813
+ ´SEL_COMMAND´ message type (see RubyForge
814
+ Bug #4157). This error has been corrected. Thanks to Manfred
815
+ Usselmann for reporting this problem.
816
+
817
+ * The `FXSeparator` class wasn't implemented
818
+ properly (see RubyForge
819
+ Bug #4158). This error has been corrected. Thanks to Gerard
820
+ Menochet for reporting this problem.
821
+
822
+ * The `findItemByData` method was
823
+ implemented incorrectly for the `FXComboBox`,
824
+ `FXFoldingList`,
825
+ `FXIconList`, `FXList` and
826
+ `FXListBox` classes (see RubyForge
827
+ Bug #4172). This error has been corrected. Thanks to Gerard
828
+ Menochet for reporting this problem.
829
+
830
+ * The `FXListBox` widget was not sending the
831
+ appropriate message data to its message target for the
832
+ ´SEL_COMMAND´ message type (see RubyForge
833
+ Bug #4255). This error has been corrected. Thanks to Gerard
834
+ Menochet for reporting this problem.
835
+
836
+ * The binary gem for Windows was built with FOX version 1.4.29 and
837
+ FXScintilla version 1.63.
838
+
839
+
840
+ ## Changes For Version 1.4.5 (April 10, 2006)
841
+
842
+ * The `FXTextField` class was not properly
843
+ responding to the ´ID_INSERT_STRING´ command (see
844
+ RubyForge
845
+ Bug #3320). This error has been corrected. Thanks to Uwe Hartl
846
+ for reporting this problem.
847
+
848
+ * The `text` and
849
+ `getText` methods for the
850
+ `FXMenuCaption` class were returning
851
+ ´nil´ instead of the actual value (see RubyForge
852
+ Bug #3458). This error has been corrected. Thanks to Meinrad
853
+ Recheis (Henon) for reporting this problem.
854
+
855
+ * The API documentation for the `FXMDIChild`
856
+ class erroneously listed ´SEL_CLOSEALL´ as one of
857
+ the message types that an MDI child window might send to its message
858
+ target (see RubyForge
859
+ Bug #3508). This error has been corrected. Thanks to Meinrad
860
+ Recheis (Henon) for reporting this problem.
861
+
862
+ * Calling the `selectRange` method for
863
+ class `FXTable` would cause a fatal error instead
864
+ of merely raising an `IndexError` exception (see
865
+ RubyForge
866
+ Bug #3615). This error has been corrected. Thanks to Meinrad
867
+ Recheis (Henon) for reporting this problem.
868
+
869
+ * Due to an error in the SWIG interface files, the
870
+ `FXChoiceBox` class was basically unusable (see
871
+ RubyForge
872
+ Bug #3676). This error has been corrected. Thanks to Uwe Hartl
873
+ for reporting this problem.
874
+
875
+ * The API documentation for the
876
+ `FXRealSlider` and
877
+ `FXRealSpinner` classes erroneously claimed that
878
+ the message data for the ´SEL_COMMAND´ and
879
+ ´SEL_CHANGED´ messages sent by these widgets to
880
+ their targets were integers (see RubyForge
881
+ Bug #3749). Along the same lines, the message data for those
882
+ widgets wasn't being converted correctly (see RubyForge
883
+ Bug #3750). Both of these errors have been corrected. Thanks
884
+ to Meinrad Recheis (Henon) for reporting these problems.
885
+
886
+ * The API documentation for the Fox module incorrectly listed the
887
+ names of the `FXSELTYPE` and
888
+ `FXSELID` methods as
889
+ `SELTYPE` and `SELID`
890
+ (see RubyForge
891
+ Bug #3940). This error has been corrected. Thanks to Joel
892
+ VanderWerf for reporting this problem.
893
+
894
+ * The `FXTableItem` constructor was supposed
895
+ to (optionally) accept a reference to an arbitrary Ruby object as its
896
+ third argument, but this wasn't working properly (see RubyForge
897
+ Bug #4005). This error has been corrected. Thanks to Mark
898
+ Volkman for reporting this problem.
899
+
900
+ * The binary gem for Windows was built with FOX version 1.4.29 and
901
+ FXScintilla version 1.63.
902
+
903
+
904
+ ## Changes For Version 1.4.4 (January 21, 2006)
905
+
906
+ * The build instructions for Unix platforms had not been updated
907
+ recently and as such contained some errors (see RubyForge
908
+ Bug #3014). These errors have been corrected. Thanks to Dave
909
+ Burns for reporting this problem.
910
+
911
+ * The `extendSelection` method for the
912
+ `FXTable` class was raising an exception if an
913
+ out of bounds row or column index was passed in (see RubyForge
914
+ Bug #3050). This has been changed so that
915
+ `extendSelection` instead returns false for out
916
+ of bounds arguments. Thanks to Leonid Moiseichuk for reporting this
917
+ problem.
918
+
919
+ * The `each_child` iterator method for the
920
+ `FXWindow` class would fail if the child window
921
+ was destroyed in the block (see RubyForge
922
+ Bug #3134). Thanks to Liam Irish for reporting this problem
923
+ and providing a patch.
924
+
925
+ * The message data for the ´SEL_REPLACED´
926
+ message sent by the `FXTable` class to its target
927
+ was not being handled properly (see RubyForge
928
+ Bug #3244). There were also problems with the message data for
929
+ the ´SEL_SELECTED´ and
930
+ ´SEL_DESELECTED´ messages. Furthermore, the
931
+ ´SEL_REPLACED´ message was not documented in the
932
+ RDoc documentation for the `FXTable` class. All
933
+ of these problems have been corrected. Thanks to _blackdog for
934
+ reporting this problem.
935
+
936
+ * The binary gem for Windows was built with FOX version 1.4.29 and
937
+ FXScintilla version 1.63.
938
+
939
+
940
+ ## Changes For Version 1.4.3 (November 7, 2005)
941
+
942
+ * The ´TOGGLEBUTTON_KEEPSTATE´ option for the
943
+ `FXToggleButton` class was not documented (see
944
+ RubyForge
945
+ Bug #2286). This oversight has been corrected. Thanks to Tim
946
+ Smith for reporting this problem.
947
+
948
+ * The `scintilla.rb` library file was not up to
949
+ date with the latest FXScintilla release, and as a result it was
950
+ missing some methods (see RubyForge
951
+ Bug #2479). This oversight has been corrected. Thanks to Maxim
952
+ Kulkin for reporting this problem.
953
+
954
+ * Due to changes in the APIs for timers and chores, the mechanisms
955
+ for removing chores and timeouts were broken (see RubyForge
956
+ Bug #2563). This bug has been fixed. Thanks to "moinker" for
957
+ reporting this problem.
958
+
959
+ * An error in the test setup caused all of the tests for the
960
+ `FXList` class to fail (see RubyForge
961
+ Bug #2564). This bug has been fixed. Thanks to Peter for
962
+ reporting this problem.
963
+
964
+ * Due to a bug in the test suite runner script, not all test cases
965
+ were being exercised (see RubyForge
966
+ Bug #2565). This bug has been fixed.
967
+
968
+ * Calling the `getPixel` method for the
969
+ `FXImage` class when the client-side pixel buffer
970
+ for the image has already been released would cause a program to crash
971
+ (see RubyForge
972
+ Bug #2611). Now, `getPixel` will raise
973
+ an exception if it's called after the pixel buffer has been released.
974
+ The documentation for `getPixel` has been
975
+ updated accordingly. Thanks to Gonzalo Garramuno for reporting this
976
+ problem.
977
+
978
+ * The `makePositionVisible` method for the
979
+ `FXTable` class was raising an exception when
980
+ passed out-of-bounds values for the row or column index (see RubyForge
981
+ Bug #2660). This could happen, for example, if you were to
982
+ click in a table area outside of the regular cells (which indirectly
983
+ triggers a call to `makePositionVisible`). This
984
+ was actually inconsistent with standard FOX behavior, which simply
985
+ ignores out of bounds values for that method's arguments. This bug has
986
+ been fixed, and the documentation for
987
+ `makePositionVisible` has been updated
988
+ accordingly. Thanks to Ralf Jonas for reporting this problem.
989
+
990
+ * The binary gem for Windows was built with FOX version 1.4.21 and
991
+ FXScintilla version 1.63.
992
+
993
+
994
+ ## Changes For Version 1.4.2 (August 22, 2005)
995
+
996
+ * Due to a bug in the implementation, the
997
+ `checked?` method for the
998
+ `FXCheckButton` class always returned
999
+ ´false´ (see RubyForge
1000
+ Bug #1852). This bug has been fixed. Thanks to Meinrad Recheis
1001
+ for reporting this problem.
1002
+
1003
+ * The API documentation for the `FXTable`
1004
+ class listed several obsolete attributes (see RubyForge
1005
+ Bug #1928). Those errors have been corrected. Thanks to Pavel
1006
+ Sokolov for reporting these problems.
1007
+
1008
+ * There were a number of bugs in the
1009
+ `textedit.rb` example program (see RubyForge
1010
+ Bug #1979), and those bugs have been fixed. Thanks to Claude
1011
+ Marinier for reporting these problems.
1012
+
1013
+ * The API documentation for the `FXTreeList`
1014
+ class' `new` method still showed the number of
1015
+ visible items (´nvis´) as its second argument
1016
+ (see RubyForge
1017
+ Bug #2171). This problem has been corrected. Thanks to Bill
1018
+ Atkins for reporting this problem.
1019
+
1020
+ * The API documentation for the `FXTopWindow`
1021
+ class had a number of errors (see RubyForge
1022
+ Bug #2269). This problem has been corrected.
1023
+
1024
+ * The API documentation for the `FXTreeList`
1025
+ class still listed the obsolete `reparentItem`
1026
+ method (see RubyForge
1027
+ Bug #2270). This problem has been corrected. Thanks to Jacob
1028
+ Hansen for reporting this problem.
1029
+
1030
+ * Due to a bug in how the SWIG typemaps for the
1031
+ ´FXlong´ type were defined, some methods for the
1032
+ `FXFileStream` class were broken (see RubyForge
1033
+ Bug #2275). This problem has been corrected. Thanks to Gonzalo
1034
+ Garramuno for reporting this problem.
1035
+
1036
+ * Merged in all of the fixes for FXRuby 1.2.6.
1037
+
1038
+ * The binary gem for Windows was built with FOX version 1.4.17 and
1039
+ FXScintilla version 1.63.
1040
+
1041
+
1042
+ ## Changes For Version 1.4.1 (August 20, 2005)
1043
+
1044
+ * This is the second release of FXRuby which is compatible with
1045
+ FOX 1.4, and as such should be considered an "unstable" release. For a
1046
+ history of the changes made during the FOX 1.3 and 1.4 development,
1047
+ see the [News](http://www.fox-toolkit.com/news.html)
1048
+ page at the FOX Web site.
1049
+
1050
+ * The unit tests (in the `tests` subdirectory)
1051
+ had not been updated to require the ´fox14´
1052
+ feature, and were still looking at ´fox12´. This
1053
+ has been corrected.
1054
+
1055
+ * A number of minor problems were corrected for the Windows build
1056
+ of FXRuby.
1057
+
1058
+ * The binary gem for Windows was built with FOX version 1.4.17 and
1059
+ FXScintilla version 1.63.
1060
+
1061
+
1062
+ ## Changes For Version 1.4.0 (August 19, 2005)
1063
+
1064
+ * This is the first release of FXRuby which is compatible with FOX
1065
+ 1.4, and as such should be considered an "unstable" release. For a
1066
+ history of the changes made during the FOX 1.3 and 1.4 development,
1067
+ see the [News](http://www.fox-toolkit.com/news.html)
1068
+ page at the FOX Web site.
1069
+
1070
+
1071
+ ## Changes For Version 1.2.6 (April 15, 2005)
1072
+
1073
+ * Some additional problems related to calling the
1074
+ `setTableSize` method for an
1075
+ `FXTable` were discovered (see RubyForge
1076
+ Bug #1597). This problem has been corrected. Thanks to Joel
1077
+ VanderWerf for reporting this problem.
1078
+
1079
+ * The `iconlist.rb` example program had a
1080
+ "Sort" pulldown menu filled with a number of commands that didn't
1081
+ really do anything, including sorting the items (see RubyForge
1082
+ Bug #1654). This pulldown menu has been removed from that
1083
+ example.
1084
+
1085
+ * The API documentation for the `FXDC` class
1086
+ erroneously referred to the `font` attribute as
1087
+ `textFont` (see RubyForge
1088
+ Bug #1667). This problem has been corrected. Thanks to Meinrad
1089
+ Recheis for reporting this problem.
1090
+
1091
+ * The `checked?`,
1092
+ `unchecked?` and
1093
+ `maybe?` methods for the
1094
+ `FXMenuCheck` class were missing (see RubyForge
1095
+ Bug #1677). This problem has been corrected. Thanks to Oliver
1096
+ Smith for reporting this problem.
1097
+
1098
+ * The API documentation for the
1099
+ `FXScrollArea` class incorrectly spelled the
1100
+ names of the `horizontalScrollBar` and
1101
+ `verticalScrollBar` methods as
1102
+ `horizontalScrollbar` and
1103
+ `verticalScrollbar` (see RubyForge
1104
+ Bug #1678). The documentation has been corrected. Thanks to
1105
+ Jannis Pohlmann for reporting this mistake.
1106
+
1107
+ * Some code in the `groupbox.rb` example
1108
+ program was calling the `getRootWindow` method,
1109
+ but that method has been renamed to `getRoot`
1110
+ (see RubyForge
1111
+ Bug #1692). This problem has been corrected. Thanks to
1112
+ Jaroslav Stika for reporting this problem.
1113
+
1114
+ * The `hasChar?` method for the
1115
+ `FXFont` class was spelled without a trailing
1116
+ question mark, but it seems more Ruby-like that it should, so we've
1117
+ added an alias for that (see RubyForge
1118
+ Bug #1714). This method also now accepts a string of size 1
1119
+ (i.e. a single character) as its input, as an alternative to an
1120
+ ordinal value. Thanks to Meinrad Recheis for these suggestions.
1121
+
1122
+ * The API documentation for the `FXImage`
1123
+ class mistakenly listed ´IMAGE_ALPHA´ as a valid
1124
+ image rendering hint, but this flag is no longer needed since FOX
1125
+ images now always contain an alpha channel (see RubyForge
1126
+ Bug #1715). The documentation has been corrected. Thanks to
1127
+ Meinrad Recheis for reporting this mistake.
1128
+
1129
+ * Due to an error in the SWIG interface files, the
1130
+ `data` method for the
1131
+ `FXSettings` class was not being wrapped
1132
+ properly. As a result, this method was unavailable and in turn led to
1133
+ other dependent methods (like `each_section`)
1134
+ to be unavailable as well (see RubyForge
1135
+ Bug #1771). This error has been corrected. Thanks to Jannis
1136
+ Pohlmann for reporting this problem.
1137
+
1138
+ * The binary gem for Windows was built with FOX version 1.2.16 and
1139
+ FXScintilla version 1.62.
1140
+
1141
+
1142
+ ## Changes For Version 1.2.5 (March 1, 2005)
1143
+
1144
+ * The change made for FXRuby version 1.2.4 regarding garbage
1145
+ collection for table items corrected only one of the problems
1146
+ described in RubyForge
1147
+ Bug #1445; There was still a problem related to the
1148
+ "destructive" effects of the `setTableSize`
1149
+ method for the `FXTable` class. This problem has
1150
+ now been corrected as well. Thanks to David Peoples, Jamey Cribbs and
1151
+ Joel VanderWerf for their assistance in helping me to track down this
1152
+ problem.
1153
+
1154
+ * The `extractText` and
1155
+ `overlayText` methods for the
1156
+ `FXTable` class were implemented incorrectly and
1157
+ weren't listed in the API documentation. These problems have been
1158
+ corrected.
1159
+
1160
+ * The checks for out-of-bounds indices in the
1161
+ `getColumnX`,
1162
+ `setColumnX`, `getRowY`,
1163
+ `setRowY` and
1164
+ `updateRange` methods for the
1165
+ `FXTable` class were incorrect. These have been
1166
+ fixed.
1167
+
1168
+ * The `setTableSize` method for the
1169
+ `FXTable` class now raises
1170
+ `ArgError` if either the number of rows or
1171
+ columns passed in as arguments is less than zero.
1172
+
1173
+ * A typo in one of the source files was causing the build to fail
1174
+ when compiled against Ruby versions 1.8.1 or earlier (see RubyForge
1175
+ Bug #1551). This error has been corrected. Thanks to Alex
1176
+ McGuire for reporting this problem.
1177
+
1178
+ * The `selectItem` method for the
1179
+ `FXTable` class was removed in FOX 1.2, so we've
1180
+ added a convenience method for this that just calls the
1181
+ `selectRange` method under the hood (see RubyForge
1182
+ Bug #1562). Thanks to Joel VanderWerf for this
1183
+ suggestion.
1184
+
1185
+ * The binary gem for Windows was built with FOX version 1.2.13 and
1186
+ FXScintilla version 1.62.
1187
+
1188
+
1189
+ ## Changes For Version 1.2.4 (February 23, 2005)
1190
+
1191
+ * Due to a change in some of the internal Ruby C APIs, a
1192
+ compile-time error for FXRuby was introduced in some of the Ruby 1.8.2
1193
+ preview releases (see RubyForge
1194
+ Bug #1039). One should not see any compile-time errors when
1195
+ compiling FXRuby (versions 1.2.3 or later) against the Ruby 1.8.2
1196
+ final release, but I've neverthless made a change to how those
1197
+ internal APIs are used, to avoid any potential problems. Thanks to the
1198
+ many users who pointed out this problem.
1199
+
1200
+ * Joel VanderWerf suggested some enhancements to the
1201
+ `image.rb` example program in order to improve its
1202
+ startup time (see RubyForge
1203
+ Bug #1281). Those changes have been incorporated. Thanks to
1204
+ Joel for this suggestion.
1205
+
1206
+ * One change for the `FXImage` class between
1207
+ FOX versions 1.0 and 1.2 is the nature of the pixel buffer that's
1208
+ passed to the `FXImage` constructor. Previously,
1209
+ this pixel buffer was expected to be a string of bytes; now it's
1210
+ expected to be an array of ´FXColor´ values. This
1211
+ modification was not implemented correctly for FXRuby versions 1.2.3
1212
+ and earlier (see RubyForge
1213
+ Bug #1427). This bug has been corrected, and the example
1214
+ program (`image.rb`) and test cases have been
1215
+ updated as well. Thanks to Oliver Smith and others for reporting this
1216
+ problem.
1217
+
1218
+ * A couple of different problems, reported by Patrick Fernie and
1219
+ David Peoples, exposed a flaw in how FXRuby manages the links between
1220
+ FOX objects and their Ruby peers when the FOX objects are destroyed
1221
+ (see RubyForge
1222
+ Bug #1445). Without going into all the gory details, let's
1223
+ just say that since we have no explicit control over when Ruby's
1224
+ garbage collector decides to "collect" those Ruby peers that point to
1225
+ C++ objects that have been destroyed, we need to take steps to
1226
+ neutralize those Ruby peer objects so that they can't cause your
1227
+ application to crash in the meantime; I've implemented a fix to take
1228
+ care of this situation. Thanks to Patrick and David for reporting
1229
+ these problems.
1230
+
1231
+ * The API documentation for FXRuby 1.2 still contained references
1232
+ to the old "spellings" of the `fxparseAccel`
1233
+ and `fxparseHotKey` method names, which were
1234
+ all lowercase (i.e. `fxparseaccel` and
1235
+ `fxparsehotkey`). (see RubyForge
1236
+ Bug #1470). These errors have been corrected.
1237
+
1238
+ * Added the `FXScrollArea#scrollCorner`
1239
+ method, which returns a reference to the scroll corner for any window
1240
+ derived from `FXScrollArea` (see RubyForge
1241
+ Feature Request #1226). Thanks to Brian Sheehan for this
1242
+ suggestion.
1243
+
1244
+ * Added the `FXMemoryBuffer#to_a` method,
1245
+ which is just an alias for the `data` accessor
1246
+ method that returns a copy of the data buffer as an array (see RubyForge
1247
+ Feature Request #1295). Thanks to Meinrad Recheis for this
1248
+ suggestion.
1249
+
1250
+ * Added the `appendRows` and
1251
+ `appendColumns` methods to the
1252
+ `FXTable` class (see RubyForge
1253
+ Feature Request #1295). Thanks to Brett Hallett for this
1254
+ suggestion.
1255
+
1256
+ * The binary gem for Windows was built with FOX version 1.2.13 and
1257
+ FXScintilla version 1.62.
1258
+
1259
+
1260
+ ## Changes For Version 1.2.3 (January 22, 2005)
1261
+
1262
+ * Since group boxes containing radio buttons no longer enforce the
1263
+ radio behavior of radio buttons (i.e. keeping only one radio button
1264
+ selected at a time), some of the example programs were no longer
1265
+ working as desired (see RubyForge
1266
+ Bug #751 and RubyForge
1267
+ Bug #1280). This problem has been corrected. Thanks to Yuri
1268
+ Leikind and Barry DeZonia for reporting this problem.
1269
+
1270
+ * Bob Sidebotham reported a little typo in the
1271
+ `table.rb` example program (see RubyForge
1272
+ Bug #990). This has been corrected.
1273
+
1274
+ * The API documentation for `FXList` did not
1275
+ reflect the changes for FOX 1.2; the
1276
+ `retrieveItem()` has been renamed to
1277
+ `getItem()` and
1278
+ `insertItem()` has been renamed to
1279
+ `setItem()` (see RubyForge
1280
+ Bug #1037 and RubyForge
1281
+ Bug #1257). This has been corrected. Thanks to Remy Drouilhet
1282
+ and Stephan Kamper for reporting this problem.
1283
+
1284
+ * The Windows installer was missing some of the documentation
1285
+ files (see RubyForge
1286
+ Bug #1139). This has been corrected. Thanks to Curt Hibbs and
1287
+ Mark Smith for reporting this problem.
1288
+
1289
+ * The `browser.rb` example program was broken
1290
+ (see RubyForge
1291
+ Bug #1146). This has been corrected. Thanks to Stefan Lang for
1292
+ reporting this problem.
1293
+
1294
+ * The attribute setter for
1295
+ `FXHeaderItem#justification` was defined
1296
+ incorrectly (see RubyForge
1297
+ Bug #1276). This has been corrected. Thanks to Joel VanderWerf
1298
+ for reporting this problem (and providing a patch to fix it).
1299
+
1300
+ * The `filenames` alias for the
1301
+ `FXFileDialog#getFilenames()` instance method
1302
+ was missing (see RubyForge
1303
+ Bug #1277). This error has been corrected. Thanks to Barry
1304
+ DeZonia for reporting this problem.
1305
+
1306
+ * The API documentation for the
1307
+ `FXFileDialog` class methods
1308
+ `getOpenFilenames()`,
1309
+ `getOpenDirectory()`,
1310
+ `getOpenFilename()` and
1311
+ `getSaveFilename()` was extremely inadequate
1312
+ (see RubyForge
1313
+ Bug #1279). This documentation has been improved. Thanks to
1314
+ Barry DeZonia for reporting this problem.
1315
+
1316
+ * Brett Hallett contributed a Ruby port of the "ratio" example
1317
+ program from the regular FOX distribution, for demonstrating the use
1318
+ of the new `FXSpring` layout manager (see RubyForge
1319
+ Bug #1282). Many thanks to Brett for this addition!
1320
+
1321
+ * Joel VanderWerf contributed code to simplify how programs
1322
+ interact with modal and non-modal dialog boxes (see RubyForge
1323
+ Bug #1283). See the API documentation for the new
1324
+ `FXDialogBox#execute_modal` and
1325
+ `FXDialogBox#execute_nonmodal` methods for
1326
+ examples of their use.
1327
+
1328
+ * The attribute setters for
1329
+ `FXRealSpinner#selBackColor` and
1330
+ `FXSpinner#selBackColor` were defined
1331
+ incorrectly (see RubyForge
1332
+ Bug #1297). These have been corrected. Thanks to Meinrad
1333
+ Recheis for reporting this problem.
1334
+
1335
+ * The `tooltipPause` attribute reader for
1336
+ the `FXApp` class was missing (see RubyForge
1337
+ Patch #1306). Thanks to Joel VanderWerf for reporting this
1338
+ omission and providing a patch to fix it.
1339
+
1340
+ * The API documentation for the
1341
+ `FXToolBarTab` class was missing (see RubyForge
1342
+ Bug #1322). Thanks to Joel VanderWerf for reporting this
1343
+ omission.
1344
+
1345
+ * The attribute accessors for
1346
+ `FXText#visibleRows` and
1347
+ `FXText#visibleColumns` were defined and
1348
+ documented incorrectly (see RubyForge
1349
+ Bug #1325). These have been corrected. Thanks to Karl El-Koura
1350
+ for reporting this problem.
1351
+
1352
+ * The binary gem for Windows was built with FOX version 1.2.13 and
1353
+ FXScintilla version 1.62.
1354
+
1355
+
1356
+ ## Changes For Version 1.2.2 (October 1, 2004)
1357
+
1358
+ * In order to avoid versioning problems when dealing with a mix of
1359
+ applications based on either FXRuby 1.0 or 1.2, the feature name for
1360
+ FXRuby has been changed from "fox" to "fox12". For most application
1361
+ developers, this means that you will need to modify the source code
1362
+ for applications targeted at FXRuby 1.2 to begin with the line
1363
+ ´require 'fox12'´Note that no
1364
+ changes should be required for legacy applications targeted at FXRuby
1365
+ 1.0.
1366
+
1367
+ * Made a number of updates to the documentation, to reflect API
1368
+ changes for FXRuby 1.2.
1369
+
1370
+ * The binary gem for Windows was built with FOX version 1.2.9 and
1371
+ FXScintilla version 1.61.
1372
+
1373
+
1374
+ ## Changes For Version 1.2a2 (July 10, 2004)
1375
+
1376
+ * This is the second "alpha" release of FXRuby 1.2. This release
1377
+ should be compatible with any FOX library version 1.2; it is not
1378
+ compatible with any previous FOX library versions. As this is an alpha
1379
+ release, users should expect a certain amount of instability, bugs,
1380
+ etc.
1381
+
1382
+ * For this release, all of the FOX 1.2 classes are available with
1383
+ the exception of the `FXBitmapView` class. There
1384
+ is a small problem with how the `FXBitmapView`
1385
+ class is declared in the FOX 1.2 header files, and I'm trying to
1386
+ decide how best to resolve that problem. The goal is to have this
1387
+ problem resolved by the next alpha release of FXRuby.
1388
+
1389
+ * For this release, all of the RDoc-based online documentation has
1390
+ been brought up to date with the new APIs.
1391
+
1392
+ * Portions of the FXRuby User's Guide were still out of date with
1393
+ respect to the new APIs (see SourceForge Bug #988623). This has been fixed.
1394
+
1395
+ * The `mditest.rb` example program was not up
1396
+ to date with the new APIs. This has been fixed.
1397
+
1398
+ * The `glviewer.rb` example program was not up
1399
+ to date with the new APIs (see SourceForge Bug #986479). This has been fixed. Thanks to Remy Drouilhet
1400
+ for reporting this problem and suggesting the fixes.
1401
+
1402
+ * The `FXGLGroup#bounds` method was defined
1403
+ incorrectly (see SourceForge Bug #986476). This has been fixed. Thanks to Remy Drouilhet
1404
+ for reporting this problem and suggesting the fix.
1405
+
1406
+ * The `scintilla-test.rb` example program was
1407
+ not up to date with the new APIs (see SourceForge Bug #986172). This has been fixed. Thanks to Peter Watkins for
1408
+ reporting this problem and submitting a corrected version of the
1409
+ program.
1410
+
1411
+ * There was a small typo in the table.rb example program (see
1412
+ SourceForge Bug #988152). This has been fixed. Thanks to Jamey Cribbs for
1413
+ reporting this problem and suggesting the fix.
1414
+
1415
+ * Due to an oversight on my part, one of the overloaded
1416
+ constructors for the `FXRegion` class wasn't
1417
+ wrapped properly (see SourceForge Bug #986181). This has been fixed. Thanks to Bil Bas for
1418
+ reporting this problem.
1419
+
1420
+ * Removed some obsolete aliases for the old leading and trailing
1421
+ rows and columns for the `FXTable` class (see
1422
+ SourceForge Bug #988038). Thanks to Yuri Leikind for reporting this
1423
+ problem.
1424
+
1425
+ * Added `FXTable` instance methods
1426
+ `horizontalGridShown=()` and
1427
+ `verticalGridShown=()` to complement the
1428
+ already available `horizontalGridShown?` and
1429
+ `verticalGridShown?` methods.
1430
+
1431
+ * The binary gem for the 1.2a1 release on Windows didn't have PNG
1432
+ or JPEG image support built-in (see SourceForge Bug #986180). This has been fixed. Thanks to Bil Bas for
1433
+ reporting this problem.
1434
+
1435
+ * The binary gem for Windows was built with FOX version 1.2.7 and
1436
+ FXScintilla version 1.61.
1437
+
1438
+
1439
+ ## Changes For Version 1.2a1 (June 28, 2004)
1440
+
1441
+ * This is the first "alpha" release of FXRuby 1.2. This release
1442
+ should be compatible with any FOX library version 1.2; it is not
1443
+ compatible with any previous FOX library versions. As this is an alpha
1444
+ release, users should expect a certain amount of instability, bugs,
1445
+ etc.
1446
+ The intent of this first alpha release is twofold. The primary
1447
+ intent is allow application developers who have current projects based
1448
+ on FXRuby 1.0 to begin the process of updating their applications for
1449
+ compatibility with FXRuby 1.2. For this release, all of the classes
1450
+ that existed in FXRuby 1.0 have been updated for compatibility with
1451
+ FOX 1.2, and so developers should at least be able to begin to "port"
1452
+ their applications forward now. Note that there have been a number of
1453
+ changes for FOX 1.2 and FXRuby 1.2, both in terms of API changes and
1454
+ less obvious "behavioral" changes. For a detailed summary of these
1455
+ changes, please see "What's New in FOX 1.2" (also available as a PDF).
1456
+ Note that few, if any, of the new classes introduced in FOX 1.2 are
1457
+ available in this first alpha release of FXRuby 1.2. Support for those
1458
+ new classes should come along quickly in subsequent alpha releases of
1459
+ FXRuby 1.2.
1460
+ The secondary intent of this first alpha release is to introduce
1461
+ the new RubyGems-based packaging
1462
+ of FXRuby and to begin to work out the inevitable kinks in that
1463
+ system.
140
1464
 
141
- === 1.6.19 / 2009-03-06
1465
+ * The binary gem for Windows was built with FOX version 1.2.4 and
1466
+ FXScintilla version 1.57.
142
1467
 
143
- * Please see http://www.fxruby.org/doc/changes.html
144
- for a complete list of the changes in this release.