fxruby 1.6.41-x64-mingw32 → 1.6.45-x64-mingw32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (375) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +2 -2
  3. data/.yardopts +1 -1
  4. data/Gemfile +2 -3
  5. data/History.md +26 -0
  6. data/README.rdoc +10 -5
  7. data/Rakefile +16 -5
  8. data/appveyor.yml +8 -7
  9. data/docs/Fox/Canvas/CanvasError.html +124 -0
  10. data/docs/Fox/Canvas/CircleShape.html +477 -0
  11. data/docs/Fox/Canvas/ImageShape.html +477 -0
  12. data/docs/Fox/Canvas/LineShape.html +1005 -0
  13. data/docs/Fox/Canvas/PolygonShape.html +145 -0
  14. data/docs/Fox/Canvas/RectangleShape.html +439 -0
  15. data/docs/Fox/Canvas/SelectionPolicy.html +352 -0
  16. data/docs/Fox/Canvas/Shape.html +1955 -0
  17. data/docs/Fox/Canvas/ShapeCanvas.html +2031 -0
  18. data/docs/Fox/Canvas/ShapeGroup.html +527 -0
  19. data/docs/Fox/Canvas/SingleSelectionPolicy.html +291 -0
  20. data/docs/Fox/Canvas/TextShape.html +609 -0
  21. data/docs/Fox/Canvas.html +141 -0
  22. data/docs/Fox/FTNonModal.html +550 -0
  23. data/docs/Fox/FX4Splitter.html +1336 -0
  24. data/docs/Fox/FX7Segment.html +1010 -0
  25. data/docs/Fox/FXAccelTable.html +715 -0
  26. data/docs/Fox/FXApp.html +7998 -0
  27. data/docs/Fox/FXArc.html +562 -0
  28. data/docs/Fox/FXArrowButton.html +865 -0
  29. data/docs/Fox/FXBMPIcon.html +450 -0
  30. data/docs/Fox/FXBMPImage.html +434 -0
  31. data/docs/Fox/FXBitmap.html +1362 -0
  32. data/docs/Fox/FXBitmapFrame.html +595 -0
  33. data/docs/Fox/FXBitmapView.html +1451 -0
  34. data/docs/Fox/FXButton.html +534 -0
  35. data/docs/Fox/FXCURCursor.html +261 -0
  36. data/docs/Fox/FXCalendar.html +880 -0
  37. data/docs/Fox/FXCanvas.html +311 -0
  38. data/docs/Fox/FXCheckButton.html +949 -0
  39. data/docs/Fox/FXChoiceBox.html +472 -0
  40. data/docs/Fox/FXColor.html +1519 -0
  41. data/docs/Fox/FXColorBar.html +759 -0
  42. data/docs/Fox/FXColorDialog.html +591 -0
  43. data/docs/Fox/FXColorItem.html +323 -0
  44. data/docs/Fox/FXColorList.html +712 -0
  45. data/docs/Fox/FXColorRing.html +817 -0
  46. data/docs/Fox/FXColorSelector.html +796 -0
  47. data/docs/Fox/FXColorWell.html +850 -0
  48. data/docs/Fox/FXColorWheel.html +770 -0
  49. data/docs/Fox/FXComboBox.html +2939 -0
  50. data/docs/Fox/FXComboTableItem.html +544 -0
  51. data/docs/Fox/FXCommand.html +526 -0
  52. data/docs/Fox/FXComposite.html +433 -0
  53. data/docs/Fox/FXCursor.html +779 -0
  54. data/docs/Fox/FXDC.html +5231 -0
  55. data/docs/Fox/FXDCPrint.html +696 -0
  56. data/docs/Fox/FXDCWindow.html +358 -0
  57. data/docs/Fox/FXDataTarget.html +573 -0
  58. data/docs/Fox/FXDebugTarget.html +305 -0
  59. data/docs/Fox/FXDelegator.html +305 -0
  60. data/docs/Fox/FXDial.html +1133 -0
  61. data/docs/Fox/FXDialogBox.html +413 -0
  62. data/docs/Fox/FXDict.html +1063 -0
  63. data/docs/Fox/FXDirBox.html +752 -0
  64. data/docs/Fox/FXDirDialog.html +914 -0
  65. data/docs/Fox/FXDirItem.html +989 -0
  66. data/docs/Fox/FXDirList.html +1554 -0
  67. data/docs/Fox/FXDirSelector.html +995 -0
  68. data/docs/Fox/FXDockBar.html +1451 -0
  69. data/docs/Fox/FXDockHandler.html +468 -0
  70. data/docs/Fox/FXDockSite.html +678 -0
  71. data/docs/Fox/FXDockTitle.html +606 -0
  72. data/docs/Fox/FXDocument.html +536 -0
  73. data/docs/Fox/FXDragCorner.html +440 -0
  74. data/docs/Fox/FXDrawable.html +478 -0
  75. data/docs/Fox/FXDriveBox.html +746 -0
  76. data/docs/Fox/FXEvent.html +1736 -0
  77. data/docs/Fox/FXExtentd.html +1374 -0
  78. data/docs/Fox/FXExtentf.html +1374 -0
  79. data/docs/Fox/FXFileAssoc.html +850 -0
  80. data/docs/Fox/FXFileDialog.html +2688 -0
  81. data/docs/Fox/FXFileDict.html +1058 -0
  82. data/docs/Fox/FXFileItem.html +1141 -0
  83. data/docs/Fox/FXFileList.html +2259 -0
  84. data/docs/Fox/FXFileSelector.html +2529 -0
  85. data/docs/Fox/FXFileStream.html +503 -0
  86. data/docs/Fox/FXFoldingItem.html +2822 -0
  87. data/docs/Fox/FXFoldingList.html +5189 -0
  88. data/docs/Fox/FXFont.html +2998 -0
  89. data/docs/Fox/FXFontDesc.html +710 -0
  90. data/docs/Fox/FXFontDialog.html +420 -0
  91. data/docs/Fox/FXFontSelector.html +576 -0
  92. data/docs/Fox/FXFrame.html +1012 -0
  93. data/docs/Fox/FXGIFCursor.html +337 -0
  94. data/docs/Fox/FXGIFIcon.html +450 -0
  95. data/docs/Fox/FXGIFImage.html +434 -0
  96. data/docs/Fox/FXGLCanvas.html +700 -0
  97. data/docs/Fox/FXGLCone.html +785 -0
  98. data/docs/Fox/FXGLContext.html +649 -0
  99. data/docs/Fox/FXGLCube.html +703 -0
  100. data/docs/Fox/FXGLCylinder.html +791 -0
  101. data/docs/Fox/FXGLGroup.html +1385 -0
  102. data/docs/Fox/FXGLLine.html +653 -0
  103. data/docs/Fox/FXGLObject.html +759 -0
  104. data/docs/Fox/FXGLPoint.html +561 -0
  105. data/docs/Fox/FXGLShape.html +714 -0
  106. data/docs/Fox/FXGLSphere.html +626 -0
  107. data/docs/Fox/FXGLViewer.html +3506 -0
  108. data/docs/Fox/FXGLVisual.html +2147 -0
  109. data/docs/Fox/FXGradient.html +562 -0
  110. data/docs/Fox/FXGradientBar.html +2479 -0
  111. data/docs/Fox/FXGroupBox.html +688 -0
  112. data/docs/Fox/FXHeader.html +3040 -0
  113. data/docs/Fox/FXHeaderItem.html +1353 -0
  114. data/docs/Fox/FXHiliteStyle.html +804 -0
  115. data/docs/Fox/FXHorizontalFrame.html +359 -0
  116. data/docs/Fox/FXHorizontalSeparator.html +349 -0
  117. data/docs/Fox/FXICOIcon.html +450 -0
  118. data/docs/Fox/FXICOImage.html +434 -0
  119. data/docs/Fox/FXIcon.html +384 -0
  120. data/docs/Fox/FXIconDict.html +752 -0
  121. data/docs/Fox/FXIconItem.html +1518 -0
  122. data/docs/Fox/FXIconList.html +4676 -0
  123. data/docs/Fox/FXIconSource.html +963 -0
  124. data/docs/Fox/FXId.html +712 -0
  125. data/docs/Fox/FXImage.html +2328 -0
  126. data/docs/Fox/FXImageFrame.html +489 -0
  127. data/docs/Fox/FXImageView.html +504 -0
  128. data/docs/Fox/FXInputDialog.html +894 -0
  129. data/docs/Fox/FXIrb.html +942 -0
  130. data/docs/Fox/FXJPGIcon.html +607 -0
  131. data/docs/Fox/FXJPGImage.html +591 -0
  132. data/docs/Fox/FXKnob.html +1048 -0
  133. data/docs/Fox/FXLabel.html +1013 -0
  134. data/docs/Fox/FXLight.html +920 -0
  135. data/docs/Fox/FXList.html +3717 -0
  136. data/docs/Fox/FXListBox.html +2518 -0
  137. data/docs/Fox/FXListItem.html +1459 -0
  138. data/docs/Fox/FXMDIChild.html +2175 -0
  139. data/docs/Fox/FXMDIClient.html +781 -0
  140. data/docs/Fox/FXMDIDeleteButton.html +334 -0
  141. data/docs/Fox/FXMDIMaximizeButton.html +334 -0
  142. data/docs/Fox/FXMDIMenu.html +335 -0
  143. data/docs/Fox/FXMDIMinimizeButton.html +334 -0
  144. data/docs/Fox/FXMDIRestoreButton.html +334 -0
  145. data/docs/Fox/FXMDIWindowButton.html +334 -0
  146. data/docs/Fox/FXMainWindow.html +337 -0
  147. data/docs/Fox/FXMaterial.html +570 -0
  148. data/docs/Fox/FXMatrix.html +734 -0
  149. data/docs/Fox/FXMemoryBuffer.html +472 -0
  150. data/docs/Fox/FXMemoryStream.html +632 -0
  151. data/docs/Fox/FXMenuBar.html +347 -0
  152. data/docs/Fox/FXMenuButton.html +829 -0
  153. data/docs/Fox/FXMenuCaption.html +1080 -0
  154. data/docs/Fox/FXMenuCascade.html +388 -0
  155. data/docs/Fox/FXMenuCheck.html +721 -0
  156. data/docs/Fox/FXMenuCommand.html +400 -0
  157. data/docs/Fox/FXMenuPane.html +333 -0
  158. data/docs/Fox/FXMenuRadio.html +721 -0
  159. data/docs/Fox/FXMenuSeparator.html +440 -0
  160. data/docs/Fox/FXMenuTitle.html +405 -0
  161. data/docs/Fox/FXMessageBox.html +658 -0
  162. data/docs/Fox/FXObject.html +545 -0
  163. data/docs/Fox/FXOption.html +491 -0
  164. data/docs/Fox/FXOptionMenu.html +885 -0
  165. data/docs/Fox/FXPCXIcon.html +450 -0
  166. data/docs/Fox/FXPCXImage.html +434 -0
  167. data/docs/Fox/FXPNGIcon.html +524 -0
  168. data/docs/Fox/FXPNGImage.html +508 -0
  169. data/docs/Fox/FXPPMIcon.html +450 -0
  170. data/docs/Fox/FXPPMImage.html +373 -0
  171. data/docs/Fox/FXPSBounds.html +500 -0
  172. data/docs/Fox/FXPacker.html +1229 -0
  173. data/docs/Fox/FXPicker.html +345 -0
  174. data/docs/Fox/FXPopup.html +1099 -0
  175. data/docs/Fox/FXPrintDialog.html +485 -0
  176. data/docs/Fox/FXPrinter.html +1330 -0
  177. data/docs/Fox/FXProgressBar.html +1150 -0
  178. data/docs/Fox/FXProgressDialog.html +715 -0
  179. data/docs/Fox/FXPseudoKeyboard.html +428 -0
  180. data/docs/Fox/FXPseudoMouse.html +800 -0
  181. data/docs/Fox/FXPseudoTarget.html +472 -0
  182. data/docs/Fox/FXQuatd.html +1377 -0
  183. data/docs/Fox/FXQuatf.html +1392 -0
  184. data/docs/Fox/FXRGBIcon.html +450 -0
  185. data/docs/Fox/FXRGBImage.html +434 -0
  186. data/docs/Fox/FXRadioButton.html +885 -0
  187. data/docs/Fox/FXRanged.html +1522 -0
  188. data/docs/Fox/FXRangef.html +1522 -0
  189. data/docs/Fox/FXRealSlider.html +1187 -0
  190. data/docs/Fox/FXRealSpinner.html +2175 -0
  191. data/docs/Fox/FXRecentFiles.html +841 -0
  192. data/docs/Fox/FXRectangle.html +802 -0
  193. data/docs/Fox/FXRegion.html +841 -0
  194. data/docs/Fox/FXRegistry.html +682 -0
  195. data/docs/Fox/FXReplaceDialog.html +648 -0
  196. data/docs/Fox/FXRootWindow.html +312 -0
  197. data/docs/Fox/FXRuler.html +2000 -0
  198. data/docs/Fox/FXRulerView.html +3997 -0
  199. data/docs/Fox/FXScintilla.html +49117 -0
  200. data/docs/Fox/FXScrollArea.html +1363 -0
  201. data/docs/Fox/FXScrollBar.html +1019 -0
  202. data/docs/Fox/FXScrollCorner.html +290 -0
  203. data/docs/Fox/FXScrollPane.html +499 -0
  204. data/docs/Fox/FXScrollWindow.html +409 -0
  205. data/docs/Fox/FXSearchDialog.html +382 -0
  206. data/docs/Fox/FXSegment.html +422 -0
  207. data/docs/Fox/FXSeparator.html +402 -0
  208. data/docs/Fox/FXSettings.html +1861 -0
  209. data/docs/Fox/FXShell.html +233 -0
  210. data/docs/Fox/FXShutter.html +472 -0
  211. data/docs/Fox/FXShutterItem.html +669 -0
  212. data/docs/Fox/FXSize.html +592 -0
  213. data/docs/Fox/FXSlider.html +1129 -0
  214. data/docs/Fox/FXSphered.html +906 -0
  215. data/docs/Fox/FXSpheref.html +906 -0
  216. data/docs/Fox/FXSpinner.html +2102 -0
  217. data/docs/Fox/FXSplashScreen.html +497 -0
  218. data/docs/Fox/FXSplashWindow.html +494 -0
  219. data/docs/Fox/FXSplitter.html +643 -0
  220. data/docs/Fox/FXSpring.html +517 -0
  221. data/docs/Fox/FXStatusBar.html +593 -0
  222. data/docs/Fox/FXStatusLine.html +754 -0
  223. data/docs/Fox/FXStream.html +1372 -0
  224. data/docs/Fox/FXStreamAllocError.html +148 -0
  225. data/docs/Fox/FXStreamEndError.html +148 -0
  226. data/docs/Fox/FXStreamError.html +259 -0
  227. data/docs/Fox/FXStreamFailureError.html +148 -0
  228. data/docs/Fox/FXStreamFormatError.html +148 -0
  229. data/docs/Fox/FXStreamFullError.html +148 -0
  230. data/docs/Fox/FXStreamNoReadError.html +148 -0
  231. data/docs/Fox/FXStreamNoWriteError.html +148 -0
  232. data/docs/Fox/FXStreamUnknownError.html +148 -0
  233. data/docs/Fox/FXStringDict.html +552 -0
  234. data/docs/Fox/FXSwitcher.html +619 -0
  235. data/docs/Fox/FXTGAIcon.html +450 -0
  236. data/docs/Fox/FXTGAImage.html +434 -0
  237. data/docs/Fox/FXTIFIcon.html +604 -0
  238. data/docs/Fox/FXTIFImage.html +588 -0
  239. data/docs/Fox/FXTabBar.html +644 -0
  240. data/docs/Fox/FXTabBook.html +373 -0
  241. data/docs/Fox/FXTabItem.html +478 -0
  242. data/docs/Fox/FXTable.html +10107 -0
  243. data/docs/Fox/FXTableItem.html +2195 -0
  244. data/docs/Fox/FXTablePos.html +360 -0
  245. data/docs/Fox/FXTableRange.html +360 -0
  246. data/docs/Fox/FXText.html +6870 -0
  247. data/docs/Fox/FXTextChange.html +492 -0
  248. data/docs/Fox/FXTextField.html +2016 -0
  249. data/docs/Fox/FXToggleButton.html +844 -0
  250. data/docs/Fox/FXToolBar.html +452 -0
  251. data/docs/Fox/FXToolBarGrip.html +584 -0
  252. data/docs/Fox/FXToolBarShell.html +788 -0
  253. data/docs/Fox/FXToolBarTab.html +729 -0
  254. data/docs/Fox/FXToolTip.html +761 -0
  255. data/docs/Fox/FXTopWindow.html +1716 -0
  256. data/docs/Fox/FXTranslator.html +481 -0
  257. data/docs/Fox/FXTreeItem.html +2813 -0
  258. data/docs/Fox/FXTreeList.html +5095 -0
  259. data/docs/Fox/FXTreeListBox.html +3080 -0
  260. data/docs/Fox/FXTriStateButton.html +681 -0
  261. data/docs/Fox/FXUndoList.html +2560 -0
  262. data/docs/Fox/FXVec2d.html +1450 -0
  263. data/docs/Fox/FXVec2f.html +1442 -0
  264. data/docs/Fox/FXVec3d.html +1649 -0
  265. data/docs/Fox/FXVec3f.html +1649 -0
  266. data/docs/Fox/FXVec4d.html +1858 -0
  267. data/docs/Fox/FXVec4f.html +1858 -0
  268. data/docs/Fox/FXVerticalFrame.html +359 -0
  269. data/docs/Fox/FXVerticalSeparator.html +349 -0
  270. data/docs/Fox/FXViewport.html +780 -0
  271. data/docs/Fox/FXVisual.html +1023 -0
  272. data/docs/Fox/FXWindow.html +9948 -0
  273. data/docs/Fox/FXWizard.html +1052 -0
  274. data/docs/Fox/FXXBMIcon.html +453 -0
  275. data/docs/Fox/FXXBMImage.html +437 -0
  276. data/docs/Fox/FXXPMIcon.html +450 -0
  277. data/docs/Fox/FXXPMImage.html +434 -0
  278. data/docs/Fox/NotifyHeader.html +286 -0
  279. data/docs/Fox/SCNotification.html +1438 -0
  280. data/docs/Fox/TextRange.html +281 -0
  281. data/docs/Fox.html +11184 -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/ext/fox16_c/core_wrap.cpp +117 -115
  304. data/ext/fox16_c/dc_wrap.cpp +82 -60
  305. data/ext/fox16_c/dialogs_wrap.cpp +87 -67
  306. data/ext/fox16_c/extconf.rb +12 -12
  307. data/ext/fox16_c/frames_wrap.cpp +101 -75
  308. data/ext/fox16_c/fx3d_wrap.cpp +258 -302
  309. data/ext/fox16_c/iconlist_wrap.cpp +70 -52
  310. data/ext/fox16_c/icons_wrap.cpp +75 -55
  311. data/ext/fox16_c/image_wrap.cpp +75 -57
  312. data/ext/fox16_c/label_wrap.cpp +78 -60
  313. data/ext/fox16_c/layout_wrap.cpp +83 -65
  314. data/ext/fox16_c/list_wrap.cpp +70 -52
  315. data/ext/fox16_c/mdi_wrap.cpp +76 -58
  316. data/ext/fox16_c/menu_wrap.cpp +78 -60
  317. data/ext/fox16_c/scintilla_wrap.cpp +85 -61
  318. data/ext/fox16_c/swigruby.h +64 -46
  319. data/ext/fox16_c/table_wrap.cpp +80 -58
  320. data/ext/fox16_c/text_wrap.cpp +75 -55
  321. data/ext/fox16_c/treelist_wrap.cpp +71 -53
  322. data/ext/fox16_c/ui_wrap.cpp +101 -81
  323. data/fxruby.gemspec +1 -1
  324. data/lib/2.4/fox16_c.so +0 -0
  325. data/lib/2.5/fox16_c.so +0 -0
  326. data/lib/2.6/fox16_c.so +0 -0
  327. data/lib/2.7/fox16_c.so +0 -0
  328. data/lib/{2.2 → 3.0}/fox16_c.so +0 -0
  329. data/lib/fox16/aliases.rb +0 -0
  330. data/lib/fox16/bitmapview.rb +0 -0
  331. data/lib/fox16/calendar.rb +0 -0
  332. data/lib/fox16/canvas.rb +76 -45
  333. data/lib/fox16/chore.rb +0 -0
  334. data/lib/fox16/colors.rb +0 -0
  335. data/lib/fox16/core.rb +0 -0
  336. data/lib/fox16/dict.rb +0 -0
  337. data/lib/fox16/glgroup.rb +5 -5
  338. data/lib/fox16/glshapes.rb +111 -99
  339. data/lib/fox16/input.rb +0 -0
  340. data/lib/fox16/irb.rb +0 -0
  341. data/lib/fox16/iterators.rb +0 -0
  342. data/lib/fox16/keys.rb +0 -0
  343. data/lib/fox16/missingdep.rb +0 -0
  344. data/lib/fox16/pseudokeyboard.rb +0 -0
  345. data/lib/fox16/pseudomouse.rb +0 -0
  346. data/lib/fox16/responder.rb +0 -0
  347. data/lib/fox16/responder2.rb +0 -0
  348. data/lib/fox16/scintilla.rb +0 -0
  349. data/lib/fox16/settings.rb +0 -0
  350. data/lib/fox16/signal.rb +0 -0
  351. data/lib/fox16/timeout.rb +0 -0
  352. data/lib/fox16/tkcompat.rb +0 -0
  353. data/lib/fox16/undolist.rb +0 -0
  354. data/lib/fox16/version.rb +1 -1
  355. data/lib/fox16.rb +2 -4
  356. data/ports/x64-mingw32/bin/libFOX-1.6-0.dll +0 -0
  357. data/ports/x64-mingw32/bin/libfxscintilla-20.dll +0 -0
  358. data/ports/x64-mingw32/bin/libgcc_s_seh-1.dll +0 -0
  359. data/ports/x64-mingw32/bin/libjpeg-62.dll +0 -0
  360. data/ports/x64-mingw32/bin/libpng16-16.dll +0 -0
  361. data/ports/x64-mingw32/bin/libstdc++-6.dll +0 -0
  362. data/ports/x64-mingw32/bin/libtiff-5.dll +0 -0
  363. data/ports/x64-mingw32/bin/libwinpthread-1.dll +0 -0
  364. data/ports/x64-mingw32/bin/zlib1.dll +0 -0
  365. metadata +310 -20
  366. data/lib/2.3/fox16_c.so +0 -0
  367. data/ports/x86_64-w64-mingw32/bin/libFOX-1.6-0.dll +0 -0
  368. data/ports/x86_64-w64-mingw32/bin/libfxscintilla-20.dll +0 -0
  369. data/ports/x86_64-w64-mingw32/bin/libgcc_s_seh-1.dll +0 -0
  370. data/ports/x86_64-w64-mingw32/bin/libjpeg-62.dll +0 -0
  371. data/ports/x86_64-w64-mingw32/bin/libpng16-16.dll +0 -0
  372. data/ports/x86_64-w64-mingw32/bin/libstdc++-6.dll +0 -0
  373. data/ports/x86_64-w64-mingw32/bin/libtiff-5.dll +0 -0
  374. data/ports/x86_64-w64-mingw32/bin/libwinpthread-1.dll +0 -0
  375. data/ports/x86_64-w64-mingw32/bin/zlib1.dll +0 -0
data/lib/fox16/canvas.rb CHANGED
@@ -133,6 +133,13 @@ module Fox
133
133
  # Default: make 6 control points
134
134
  def makeControlPoints
135
135
  end
136
+
137
+ protected def apply_dc(dc)
138
+ oldForeground = dc.foreground
139
+ dc.foreground = foreground
140
+ yield
141
+ dc.foreground = oldForeground
142
+ end
136
143
  end
137
144
 
138
145
  class ShapeGroup
@@ -191,29 +198,28 @@ module Fox
191
198
  end
192
199
 
193
200
  def draw(dc)
194
- # Save old values
195
- oldForeground = dc.foreground
196
- oldLineWidth = dc.lineWidth
197
- oldLineCap = dc.lineCap
198
- oldLineJoin = dc.lineJoin
199
- oldLineStyle = dc.lineStyle
200
-
201
- # Set properties for this line
202
- dc.foreground = foreground
203
- dc.lineWidth = lineWidth
204
- dc.lineCap = lineCap
205
- dc.lineJoin = lineJoin
206
- dc.lineStyle = lineStyle
207
-
208
- # Draw the line
209
- dc.drawLine(x1, y1, x2, y2)
210
-
211
- # Restore old properties
212
- dc.lineWidth = oldLineWidth
213
- dc.lineCap = oldLineCap
214
- dc.lineJoin = oldLineJoin
215
- dc.lineStyle = oldLineStyle
216
- dc.foreground = oldForeground
201
+ apply_dc(dc) do
202
+ # Save old values
203
+ oldLineWidth = dc.lineWidth
204
+ oldLineCap = dc.lineCap
205
+ oldLineJoin = dc.lineJoin
206
+ oldLineStyle = dc.lineStyle
207
+
208
+ # Set properties for this line
209
+ dc.lineWidth = lineWidth
210
+ dc.lineCap = lineCap
211
+ dc.lineJoin = lineJoin
212
+ dc.lineStyle = lineStyle
213
+
214
+ # Draw the line
215
+ dc.drawLine(x1, y1, x2, y2)
216
+
217
+ # Restore old properties
218
+ dc.lineWidth = oldLineWidth
219
+ dc.lineCap = oldLineCap
220
+ dc.lineJoin = oldLineJoin
221
+ dc.lineStyle = oldLineStyle
222
+ end
217
223
  end
218
224
  end
219
225
 
@@ -228,31 +234,42 @@ module Fox
228
234
  end
229
235
 
230
236
  def draw(dc)
231
- oldForeground = dc.foreground
232
- dc.foreground = foreground
233
- dc.drawRectangle(x, y, width, height)
234
- dc.foreground = oldForeground
237
+ apply_dc(dc) do
238
+ dc.lineWidth = 5 if selected?
239
+ dc.drawRectangle(x, y, width, height)
240
+ end
235
241
  end
236
242
  end
237
243
 
238
- class TextShape < RectangleShape
244
+ class TextShape < Shape
239
245
 
240
246
  attr_reader :font, :text
247
+ attr_accessor :width, :height
241
248
 
242
249
  def initialize(x, y, w, h, text=nil)
243
- super(x, y, w, h)
250
+ super(x, y)
251
+ @width = w
252
+ @height = h
244
253
  @text = text
245
254
  @font = FXApp.instance.normalFont
246
255
  end
247
256
 
248
257
  def draw(dc)
249
- super(dc)
250
- oldForeground = dc.foreground
251
- oldTextFont = dc.font
252
- dc.font = @font
253
- dc.drawImageText(x, y, text)
254
- dc.font = oldTextFont if oldTextFont
255
- dc.foreground = oldForeground
258
+ old_foreground = dc.foreground
259
+ apply_dc(dc) do
260
+ if selected?
261
+ dc.lineWidth = 5
262
+ dc.drawRectangle(x - 3, y - 3, width + 6, height + 6)
263
+ end
264
+
265
+ old_background = dc.background
266
+ dc.background = old_foreground
267
+ oldTextFont = dc.font
268
+ dc.font = @font
269
+ dc.drawImageText(x, y + height, text)
270
+ dc.font = oldTextFont if oldTextFont
271
+ dc.background = old_foreground
272
+ end
256
273
  end
257
274
  end
258
275
 
@@ -274,14 +291,13 @@ module Fox
274
291
  end
275
292
 
276
293
  def draw(dc)
277
- oldForeground = dc.foreground
278
- oldLineWidth = dc.lineWidth
279
- dc.foreground = foreground
280
- dc.lineWidth = 5 if selected?
281
- dc.drawArc(x, y, width, height, 0, 64*180)
282
- dc.drawArc(x, y, width, height, 64*180, 64*360)
283
- dc.foreground = oldForeground
284
- dc.lineWidth = oldLineWidth
294
+ apply_dc(dc) do
295
+ oldLineWidth = dc.lineWidth
296
+ dc.lineWidth = 5 if selected?
297
+ dc.drawArc(x, y, width, height, 0, 64*180)
298
+ dc.drawArc(x, y, width, height, 64*180, 64*360)
299
+ dc.lineWidth = oldLineWidth
300
+ end
285
301
  end
286
302
  end
287
303
 
@@ -293,11 +309,26 @@ module Fox
293
309
  attr_accessor :image
294
310
 
295
311
  def initialize(x, y, image)
312
+ super(x, y)
296
313
  @image = image
297
314
  end
298
315
 
316
+ def width
317
+ @image.width
318
+ end
319
+
320
+ def height
321
+ @image.height
322
+ end
323
+
299
324
  def draw(dc)
300
- dc.drawImage(image)
325
+ apply_dc(dc) do
326
+ if selected?
327
+ dc.lineWidth = 5
328
+ dc.drawRectangle(x - 3, y - 3, width + 5, height + 5)
329
+ end
330
+ dc.drawImage(image, x, y)
331
+ end
301
332
  end
302
333
  end
303
334
 
data/lib/fox16/chore.rb CHANGED
File without changes
data/lib/fox16/colors.rb CHANGED
File without changes
data/lib/fox16/core.rb CHANGED
File without changes
data/lib/fox16/dict.rb CHANGED
File without changes
data/lib/fox16/glgroup.rb CHANGED
@@ -9,7 +9,7 @@ module Fox
9
9
  # A group of OpenGL objects
10
10
  #
11
11
  class FXGLGroup < FXGLObject
12
-
12
+ include OpenGL if defined?(OpenGL)
13
13
  include Enumerable
14
14
 
15
15
  FLT_MAX = 1.0e+20
@@ -80,12 +80,12 @@ module Fox
80
80
  #
81
81
  def hit(viewer)
82
82
  # GL.PushName(0xffffffff)
83
- GL.PushName(1000000)
83
+ glPushName(1000000)
84
84
  @list.each_with_index do |obj, i|
85
- GL.LoadName(i)
86
- obj.hit(viewer)
85
+ glLoadName(i)
86
+ obj.hit(viewer)
87
87
  end
88
- GL.PopName
88
+ glPopName
89
89
  end
90
90
 
91
91
  #
@@ -9,6 +9,7 @@ module Fox
9
9
  # OpenGL point object
10
10
  #
11
11
  class FXGLPoint < FXGLObject
12
+ include OpenGL
12
13
 
13
14
  # Point position, in model coordinates (a 3-element array)
14
15
  attr_accessor :pos
@@ -47,20 +48,20 @@ module Fox
47
48
  # Draw this point into _viewer_ (an FXGLViewer instance).
48
49
  #
49
50
  def draw(viewer)
50
- GL::Color(0.0, 0.0, 1.0)
51
- GL::PointSize(HANDLE_SIZE)
52
- GL::Begin(GL::POINTS)
53
- GL::Vertex(@pos)
54
- GL::End()
51
+ glColor3d(0.0, 0.0, 1.0)
52
+ glPointSize(HANDLE_SIZE)
53
+ glBegin(GL_POINTS)
54
+ glVertex3d(*@pos)
55
+ glEnd()
55
56
  end
56
57
 
57
58
  #
58
59
  # Perform hit test for this point in _viewer_ (an FXGLViewer instance).
59
60
  #
60
61
  def hit(viewer)
61
- GL::Begin(GL::POINTS)
62
- GL::Vertex(@pos)
63
- GL::End()
62
+ glBegin(GL_POINTS)
63
+ glVertex3d(*@pos)
64
+ glEnd()
64
65
  end
65
66
  end
66
67
 
@@ -68,6 +69,7 @@ module Fox
68
69
  # OpenGL line object
69
70
  #
70
71
  class FXGLLine < FXGLObject
72
+ include OpenGL
71
73
 
72
74
  # Starting point for line [FXGLPoint]
73
75
  attr_accessor :fm
@@ -93,14 +95,14 @@ module Fox
93
95
  def initialize(*args)
94
96
  super()
95
97
  if args.length == 0
96
- @fm = FXGLPoint.new(-0.5, 0.0, 0.0)
97
- @to = FXGLPoint.new( 0.5, 0.0, 0.0)
98
+ @fm = FXGLPoint.new(-0.5, 0.0, 0.0)
99
+ @to = FXGLPoint.new( 0.5, 0.0, 0.0)
98
100
  elsif args.length == 1
99
- @fm = args[0].fm
100
- @to = args[0].to
101
+ @fm = args[0].fm
102
+ @to = args[0].to
101
103
  else
102
- @fm = FXGLPoint.new(args[0], args[1], args[2])
103
- @to = FXGLPoint.new(args[3], args[4], args[5])
104
+ @fm = FXGLPoint.new(args[0], args[1], args[2])
105
+ @to = FXGLPoint.new(args[3], args[4], args[5])
104
106
  end
105
107
  end
106
108
 
@@ -120,22 +122,22 @@ module Fox
120
122
  # Draw this line into _viewer_ (an FXGLViewer instance).
121
123
  #
122
124
  def draw(viewer)
123
- GL::Color(1.0, 0.0, 0.0)
124
- GL::PointSize(HANDLE_SIZE)
125
- GL::Begin(GL::LINES)
126
- GL::Vertex(@fm.pos)
127
- GL::Vertex(@to.pos)
128
- GL::End()
125
+ glColor3d(1.0, 0.0, 0.0)
126
+ glPointSize(HANDLE_SIZE)
127
+ glBegin(GL_LINES)
128
+ glVertex3d(*@fm.pos)
129
+ glVertex3d(*@to.pos)
130
+ glEnd()
129
131
  end
130
132
 
131
133
  #
132
134
  # Perform hit-test for this line in _viewer_ (an FXGLViewer instance).
133
135
  #
134
136
  def hit(viewer)
135
- GL::Begin(GL::LINES)
136
- GL::Vertex(@fm.pos)
137
- GL::Vertex(@to.pos)
138
- GL::End()
137
+ glBegin(GL_LINES)
138
+ glVertex3d(*@fm.pos)
139
+ glVertex3d(*@to.pos)
140
+ glEnd()
139
141
  end
140
142
  end
141
143
 
@@ -143,6 +145,7 @@ module Fox
143
145
  # OpenGL cube object
144
146
  #
145
147
  class FXGLCube < FXGLShape
148
+ include OpenGL
146
149
 
147
150
  # Cube width [Float]
148
151
  attr_accessor :width
@@ -173,17 +176,17 @@ module Fox
173
176
  #
174
177
  def initialize(*args)
175
178
  if args.length == 7
176
- super(args[0], args[1], args[2], SHADING_SMOOTH|STYLE_SURFACE,
179
+ super(args[0], args[1], args[2], SHADING_SMOOTH|STYLE_SURFACE,
177
180
  args[6], args[6])
178
181
  else
179
- super(args[0], args[1], args[2], SHADING_SMOOTH|STYLE_SURFACE)
182
+ super(args[0], args[1], args[2], SHADING_SMOOTH|STYLE_SURFACE)
180
183
  end
181
184
  @width = args[3] ? args[3] : 1.0
182
185
  @height = args[4] ? args[4] : 1.0
183
186
  @depth = args[5] ? args[5] : 1.0
184
187
  setRange(FXRangef.new(-0.5*@width, 0.5*@width,
185
- -0.5*@height, 0.5*@height,
186
- -0.5*@depth, 0.5*@depth))
188
+ -0.5*@height, 0.5*@height,
189
+ -0.5*@depth, 0.5*@depth))
187
190
  end
188
191
 
189
192
  #
@@ -195,58 +198,58 @@ module Fox
195
198
  zmin, zmax = -0.5*@depth, 0.5*@depth
196
199
 
197
200
  # Draw low face
198
- GL::Begin(GL::TRIANGLE_STRIP)
199
- GL::Normal(0.0, 0.0, -1.0)
200
- GL::Vertex(xmin, ymin, zmin)
201
- GL::Vertex(xmin, ymax, zmin)
202
- GL::Vertex(xmax, ymin, zmin)
203
- GL::Vertex(xmax, ymax, zmin)
204
- GL::End()
201
+ glBegin(GL_TRIANGLE_STRIP)
202
+ glNormal3d(0.0, 0.0, -1.0)
203
+ glVertex3d(xmin, ymin, zmin)
204
+ glVertex3d(xmin, ymax, zmin)
205
+ glVertex3d(xmax, ymin, zmin)
206
+ glVertex3d(xmax, ymax, zmin)
207
+ glEnd()
205
208
 
206
209
  # Draw east face
207
- GL::Begin(GL::TRIANGLE_STRIP)
208
- GL::Normal(1.0, 0.0, 0.0)
209
- GL::Vertex(xmax, ymin, zmin)
210
- GL::Vertex(xmax, ymax, zmin)
211
- GL::Vertex(xmax, ymin, zmax)
212
- GL::Vertex(xmax, ymax, zmax)
213
- GL::End()
210
+ glBegin(GL_TRIANGLE_STRIP)
211
+ glNormal3d(1.0, 0.0, 0.0)
212
+ glVertex3d(xmax, ymin, zmin)
213
+ glVertex3d(xmax, ymax, zmin)
214
+ glVertex3d(xmax, ymin, zmax)
215
+ glVertex3d(xmax, ymax, zmax)
216
+ glEnd()
214
217
 
215
218
  # Draw high face
216
- GL::Begin(GL::TRIANGLE_STRIP)
217
- GL::Normal(0.0, 0.0, 1.0)
218
- GL::Vertex(xmax, ymin, zmax)
219
- GL::Vertex(xmax, ymax, zmax)
220
- GL::Vertex(xmin, ymin, zmax)
221
- GL::Vertex(xmin, ymax, zmax)
222
- GL::End()
219
+ glBegin(GL_TRIANGLE_STRIP)
220
+ glNormal3d(0.0, 0.0, 1.0)
221
+ glVertex3d(xmax, ymin, zmax)
222
+ glVertex3d(xmax, ymax, zmax)
223
+ glVertex3d(xmin, ymin, zmax)
224
+ glVertex3d(xmin, ymax, zmax)
225
+ glEnd()
223
226
 
224
227
  # Draw west face
225
- GL::Begin(GL::TRIANGLE_STRIP)
226
- GL::Normal(-1.0, 0.0, 0.0)
227
- GL::Vertex(xmin, ymin, zmax)
228
- GL::Vertex(xmin, ymax, zmax)
229
- GL::Vertex(xmin, ymin, zmin)
230
- GL::Vertex(xmin, ymax, zmin)
231
- GL::End()
228
+ glBegin(GL_TRIANGLE_STRIP)
229
+ glNormal3d(-1.0, 0.0, 0.0)
230
+ glVertex3d(xmin, ymin, zmax)
231
+ glVertex3d(xmin, ymax, zmax)
232
+ glVertex3d(xmin, ymin, zmin)
233
+ glVertex3d(xmin, ymax, zmin)
234
+ glEnd()
232
235
 
233
236
  # Draw north face
234
- GL::Begin(GL::TRIANGLE_STRIP)
235
- GL::Normal(0.0, 1.0, 0.0)
236
- GL::Vertex(xmin, ymax, zmin)
237
- GL::Vertex(xmin, ymax, zmax)
238
- GL::Vertex(xmax, ymax, zmin)
239
- GL::Vertex(xmax, ymax, zmax)
240
- GL::End()
237
+ glBegin(GL_TRIANGLE_STRIP)
238
+ glNormal3d(0.0, 1.0, 0.0)
239
+ glVertex3d(xmin, ymax, zmin)
240
+ glVertex3d(xmin, ymax, zmax)
241
+ glVertex3d(xmax, ymax, zmin)
242
+ glVertex3d(xmax, ymax, zmax)
243
+ glEnd()
241
244
 
242
245
  # Draw south face
243
- GL::Begin(GL::TRIANGLE_STRIP)
244
- GL::Normal(0.0, -1.0, 0.0)
245
- GL::Vertex(xmin, ymin, zmax)
246
- GL::Vertex(xmin, ymin, zmin)
247
- GL::Vertex(xmax, ymin, zmax)
248
- GL::Vertex(xmax, ymin, zmin)
249
- GL::End()
246
+ glBegin(GL_TRIANGLE_STRIP)
247
+ glNormal3d(0.0, -1.0, 0.0)
248
+ glVertex3d(xmin, ymin, zmax)
249
+ glVertex3d(xmin, ymin, zmin)
250
+ glVertex3d(xmax, ymin, zmax)
251
+ glVertex3d(xmax, ymin, zmin)
252
+ glEnd()
250
253
  end
251
254
  end
252
255
 
@@ -254,6 +257,9 @@ module Fox
254
257
  # OpenGL cone object
255
258
  #
256
259
  class FXGLCone < FXGLShape
260
+ include OpenGL
261
+ include GLU
262
+
257
263
  # Cone fidelity
258
264
  SLICES_NUMBER = 20
259
265
  STACKS_NUMBER = 20
@@ -293,9 +299,9 @@ module Fox
293
299
  #
294
300
  def initialize(*args)
295
301
  if args.length == 5
296
- super(args[0], args[1], args[2], SHADING_SMOOTH|STYLE_SURFACE)
302
+ super(args[0], args[1], args[2], SHADING_SMOOTH|STYLE_SURFACE)
297
303
  elsif args.length == 6
298
- super(args[0], args[1], args[2], SHADING_SMOOTH|STYLE_SURFACE,
304
+ super(args[0], args[1], args[2], SHADING_SMOOTH|STYLE_SURFACE,
299
305
  args[5], args[5])
300
306
  end
301
307
  @height = args[3] ? args[3] : 1.0
@@ -310,15 +316,15 @@ module Fox
310
316
  # Draw this cone into _viewer_ (an FXGLViewer instance).
311
317
  #
312
318
  def drawshape(viewer)
313
- quad = GLU::NewQuadric()
314
- GLU::QuadricDrawStyle(quad, GLU::FILL)
315
- GL::PushMatrix()
316
- GL::Rotate(-90, 1, 0, 0)
317
- GLU::Cylinder(quad, @radius, 0, @height, @slices, @stacks)
318
- GLU::QuadricOrientation(quad, GLU::INSIDE)
319
- GLU::Disk(quad, 0, @radius, @slices, @loops)
320
- GLU::DeleteQuadric(quad)
321
- GL::PopMatrix()
319
+ quad = gluNewQuadric()
320
+ gluQuadricDrawStyle(quad, GLU_FILL)
321
+ glPushMatrix()
322
+ glRotated(-90, 1, 0, 0)
323
+ gluCylinder(quad, @radius, 0, @height, @slices, @stacks)
324
+ gluQuadricOrientation(quad, GLU_INSIDE)
325
+ gluDisk(quad, 0, @radius, @slices, @loops)
326
+ gluDeleteQuadric(quad)
327
+ glPopMatrix()
322
328
  end
323
329
  end
324
330
 
@@ -326,6 +332,9 @@ module Fox
326
332
  # OpenGL cylinder object
327
333
  #
328
334
  class FXGLCylinder < FXGLShape
335
+ include OpenGL
336
+ include GLU
337
+
329
338
  # Cylinder fidelity
330
339
  SLICES_NUMBER = 20
331
340
  STACKS_NUMBER = 20
@@ -365,9 +374,9 @@ module Fox
365
374
  #
366
375
  def initialize(*args)
367
376
  if args.length == 5
368
- super(args[0], args[1], args[2], SHADING_SMOOTH|STYLE_SURFACE)
377
+ super(args[0], args[1], args[2], SHADING_SMOOTH|STYLE_SURFACE)
369
378
  else
370
- super(args[0], args[1], args[2], SHADING_SMOOTH|STYLE_SURFACE,
379
+ super(args[0], args[1], args[2], SHADING_SMOOTH|STYLE_SURFACE,
371
380
  args[5], args[5])
372
381
  end
373
382
  @height = args[3] ? args[3] : 1.0
@@ -382,18 +391,18 @@ module Fox
382
391
  # Draw this cylinder into _viewer_ (an FXGLViewer instance).
383
392
  #
384
393
  def drawshape(viewer)
385
- quad = GLU::NewQuadric()
386
- GLU::QuadricDrawStyle(quad, GLU::FILL)
387
- GL::PushMatrix()
388
- GL::Rotate(-90, 1, 0, 0)
389
- GLU::Cylinder(quad, @radius, @radius, @height, @slices, @stacks)
390
- GLU::QuadricOrientation(quad, GLU::INSIDE)
391
- GLU::Disk(quad, 0, @radius, @slices, @loops)
392
- GL::Translate(0, 0, @height)
393
- GLU::QuadricOrientation(quad, GLU::OUTSIDE)
394
- GLU::Disk(quad, 0, @radius, @slices, @loops)
395
- GL::PopMatrix()
396
- GLU::DeleteQuadric(quad)
394
+ quad = gluNewQuadric()
395
+ gluQuadricDrawStyle(quad, GLU_FILL)
396
+ glPushMatrix()
397
+ glRotated(-90, 1, 0, 0)
398
+ gluCylinder(quad, @radius, @radius, @height, @slices, @stacks)
399
+ gluQuadricOrientation(quad, GLU_INSIDE)
400
+ gluDisk(quad, 0, @radius, @slices, @loops)
401
+ glTranslated(0, 0, @height)
402
+ gluQuadricOrientation(quad, GLU_OUTSIDE)
403
+ gluDisk(quad, 0, @radius, @slices, @loops)
404
+ glPopMatrix()
405
+ gluDeleteQuadric(quad)
397
406
  end
398
407
  end
399
408
 
@@ -401,6 +410,9 @@ module Fox
401
410
  # OpenGL sphere object
402
411
  #
403
412
  class FXGLSphere < FXGLShape
413
+ include OpenGL
414
+ include GLU
415
+
404
416
  # Sphere fidelity
405
417
  SLICES_NUMBER = 20
406
418
  STACKS_NUMBER = 20
@@ -448,10 +460,10 @@ module Fox
448
460
  # Draw this sphere into _viewer_ (an FXGLViewer instance).
449
461
  #
450
462
  def drawshape(viewer)
451
- quad = GLU::NewQuadric()
452
- GLU::QuadricDrawStyle(quad, GLU::FILL)
453
- GLU::Sphere(quad, @radius, @slices, @stacks)
454
- GLU::DeleteQuadric(quad)
463
+ quad = gluNewQuadric()
464
+ gluQuadricDrawStyle(quad, GLU_FILL)
465
+ gluSphere(quad, @radius, @slices, @stacks)
466
+ gluDeleteQuadric(quad)
455
467
  end
456
468
  end
457
469
  end
data/lib/fox16/input.rb CHANGED
File without changes
data/lib/fox16/irb.rb CHANGED
File without changes
File without changes
data/lib/fox16/keys.rb CHANGED
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
data/lib/fox16/signal.rb CHANGED
File without changes
data/lib/fox16/timeout.rb CHANGED
File without changes
File without changes
File without changes
data/lib/fox16/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  module Fox
2
2
  def Fox.fxrubyversion
3
- "1.6.41"
3
+ "1.6.45"
4
4
  end
5
5
  end
data/lib/fox16.rb CHANGED
@@ -18,11 +18,9 @@ rescue LoadError
18
18
  end
19
19
  end
20
20
 
21
+ ruby_plat = RUBY_PLATFORM.gsub("i386", "x86")
21
22
  # Temporary add this directory for DLL search, so that bundled DLLs can be found.
22
- ports_dir = RbConfig::CONFIG["host"].gsub('i686-pc-mingw32') do
23
- major_minor < '2.0' ? 'i586-mingw32msvc' : 'i686-w64-mingw32'
24
- end
25
- ports_bin = File.expand_path("../../ports/#{ports_dir}/bin", __FILE__)
23
+ ports_bin = File.expand_path("../../ports/#{ruby_plat}/bin", __FILE__)
26
24
  add_dll_path.call(ports_bin) do
27
25
  require "#{major_minor}/fox16_c"
28
26
  end
Binary file
Binary file