fxruby 1.6.41-x86-mingw32 → 1.6.45-x86-mingw32

Sign up to get free protection for your applications and to get access to all the features.
Files changed (377) 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/3.0/fox16_c.so +0 -0
  329. data/lib/3.1/fox16_c.so +0 -0
  330. data/lib/fox16/aliases.rb +0 -0
  331. data/lib/fox16/bitmapview.rb +0 -0
  332. data/lib/fox16/calendar.rb +0 -0
  333. data/lib/fox16/canvas.rb +76 -45
  334. data/lib/fox16/chore.rb +0 -0
  335. data/lib/fox16/colors.rb +0 -0
  336. data/lib/fox16/core.rb +0 -0
  337. data/lib/fox16/dict.rb +0 -0
  338. data/lib/fox16/glgroup.rb +5 -5
  339. data/lib/fox16/glshapes.rb +111 -99
  340. data/lib/fox16/input.rb +0 -0
  341. data/lib/fox16/irb.rb +0 -0
  342. data/lib/fox16/iterators.rb +0 -0
  343. data/lib/fox16/keys.rb +0 -0
  344. data/lib/fox16/missingdep.rb +0 -0
  345. data/lib/fox16/pseudokeyboard.rb +0 -0
  346. data/lib/fox16/pseudomouse.rb +0 -0
  347. data/lib/fox16/responder.rb +0 -0
  348. data/lib/fox16/responder2.rb +0 -0
  349. data/lib/fox16/scintilla.rb +0 -0
  350. data/lib/fox16/settings.rb +0 -0
  351. data/lib/fox16/signal.rb +0 -0
  352. data/lib/fox16/timeout.rb +0 -0
  353. data/lib/fox16/tkcompat.rb +0 -0
  354. data/lib/fox16/undolist.rb +0 -0
  355. data/lib/fox16/version.rb +1 -1
  356. data/lib/fox16.rb +2 -4
  357. data/ports/x86-mingw32/bin/libFOX-1.6-0.dll +0 -0
  358. data/ports/x86-mingw32/bin/libfxscintilla-20.dll +0 -0
  359. data/ports/x86-mingw32/bin/libgcc_s_sjlj-1.dll +0 -0
  360. data/ports/x86-mingw32/bin/libjpeg-62.dll +0 -0
  361. data/ports/x86-mingw32/bin/libpng16-16.dll +0 -0
  362. data/ports/x86-mingw32/bin/libstdc++-6.dll +0 -0
  363. data/ports/x86-mingw32/bin/libtiff-5.dll +0 -0
  364. data/ports/x86-mingw32/bin/libwinpthread-1.dll +0 -0
  365. data/ports/x86-mingw32/bin/zlib1.dll +0 -0
  366. metadata +311 -20
  367. data/lib/2.2/fox16_c.so +0 -0
  368. data/lib/2.3/fox16_c.so +0 -0
  369. data/ports/i686-w64-mingw32/bin/libFOX-1.6-0.dll +0 -0
  370. data/ports/i686-w64-mingw32/bin/libfxscintilla-20.dll +0 -0
  371. data/ports/i686-w64-mingw32/bin/libgcc_s_sjlj-1.dll +0 -0
  372. data/ports/i686-w64-mingw32/bin/libjpeg-62.dll +0 -0
  373. data/ports/i686-w64-mingw32/bin/libpng16-16.dll +0 -0
  374. data/ports/i686-w64-mingw32/bin/libstdc++-6.dll +0 -0
  375. data/ports/i686-w64-mingw32/bin/libtiff-5.dll +0 -0
  376. data/ports/i686-w64-mingw32/bin/libwinpthread-1.dll +0 -0
  377. data/ports/i686-w64-mingw32/bin/zlib1.dll +0 -0
@@ -1,6 +1,6 @@
1
1
  /* ----------------------------------------------------------------------------
2
2
  * This file was automatically generated by SWIG (http://www.swig.org).
3
- * Version 3.0.12
3
+ * Version 4.0.2
4
4
  *
5
5
  * This file is not intended to be easily readable and contains a number of
6
6
  * coding conventions designed to improve portability and efficiency. Do not make
@@ -331,6 +331,7 @@ template <typename T> T SwigValueInit() {
331
331
  /* Flags for pointer conversions */
332
332
  #define SWIG_POINTER_DISOWN 0x1
333
333
  #define SWIG_CAST_NEW_MEMORY 0x2
334
+ #define SWIG_POINTER_NO_NULL 0x4
334
335
 
335
336
  /* Flags for new pointer objects */
336
337
  #define SWIG_POINTER_OWN 0x1
@@ -982,42 +983,53 @@ SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
982
983
  #ifndef RSTRUCT_PTR
983
984
  # define RSTRUCT_PTR(x) RSTRUCT(x)->ptr
984
985
  #endif
986
+ #ifndef RTYPEDDATA_P
987
+ # define RTYPEDDATA_P(x) (TYPE(x) != T_DATA)
988
+ #endif
985
989
 
986
990
 
987
991
 
988
992
  /*
989
- * Need to be very careful about how these macros are defined, especially
990
- * when compiling C++ code or C code with an ANSI C compiler.
993
+ * The following macros are used for providing the correct type of a
994
+ * function pointer to the Ruby C API.
995
+ * Starting with Ruby 2.7 (corresponding to RB_METHOD_DEFINITION_DECL being
996
+ * defined) these macros act transparently due to Ruby's moving away from
997
+ * ANYARGS and instead employing strict function signatures.
998
+ *
999
+ * Note: In case of C (not C++) the macros are transparent even before
1000
+ * Ruby 2.7 due to the fact that the Ruby C API used function declarators
1001
+ * with empty parentheses, which allows for an unspecified number of
1002
+ * arguments.
1003
+ *
1004
+ * PROTECTFUNC(f) is used for the function pointer argument of the Ruby
1005
+ * C API function rb_protect().
991
1006
  *
992
- * VALUEFUNC(f) is a macro used to typecast a C function that implements
993
- * a Ruby method so that it can be passed as an argument to API functions
994
- * like rb_define_method() and rb_define_singleton_method().
1007
+ * VALUEFUNC(f) is used for the function pointer argument(s) of Ruby C API
1008
+ * functions like rb_define_method() and rb_define_singleton_method().
995
1009
  *
996
- * VOIDFUNC(f) is a macro used to typecast a C function that implements
997
- * either the "mark" or "free" stuff for a Ruby Data object, so that it
998
- * can be passed as an argument to API functions like Data_Wrap_Struct()
1010
+ * VOIDFUNC(f) is used to typecast a C function that implements either
1011
+ * the "mark" or "free" stuff for a Ruby Data object, so that it can be
1012
+ * passed as an argument to Ruby C API functions like Data_Wrap_Struct()
999
1013
  * and Data_Make_Struct().
1014
+ *
1015
+ * SWIG_RUBY_VOID_ANYARGS_FUNC(f) is used for the function pointer
1016
+ * argument(s) of Ruby C API functions like rb_define_virtual_variable().
1017
+ *
1018
+ * SWIG_RUBY_INT_ANYARGS_FUNC(f) is used for the function pointer
1019
+ * argument(s) of Ruby C API functions like st_foreach().
1000
1020
  */
1001
-
1002
- #ifdef __cplusplus
1003
- # ifndef RUBY_METHOD_FUNC /* These definitions should work for Ruby 1.4.6 */
1004
- # define PROTECTFUNC(f) ((VALUE (*)()) f)
1005
- # define VALUEFUNC(f) ((VALUE (*)()) f)
1006
- # define VOIDFUNC(f) ((void (*)()) f)
1007
- # else
1008
- # ifndef ANYARGS /* These definitions should work for Ruby 1.6 */
1009
- # define PROTECTFUNC(f) ((VALUE (*)()) f)
1010
- # define VALUEFUNC(f) ((VALUE (*)()) f)
1011
- # define VOIDFUNC(f) ((RUBY_DATA_FUNC) f)
1012
- # else /* These definitions should work for Ruby 1.7+ */
1013
- # define PROTECTFUNC(f) ((VALUE (*)(VALUE)) f)
1014
- # define VALUEFUNC(f) ((VALUE (*)(ANYARGS)) f)
1015
- # define VOIDFUNC(f) ((RUBY_DATA_FUNC) f)
1016
- # endif
1017
- # endif
1021
+ #if defined(__cplusplus) && !defined(RB_METHOD_DEFINITION_DECL)
1022
+ # define PROTECTFUNC(f) ((VALUE (*)(VALUE)) f)
1023
+ # define VALUEFUNC(f) ((VALUE (*)(ANYARGS)) f)
1024
+ # define VOIDFUNC(f) ((RUBY_DATA_FUNC) f)
1025
+ # define SWIG_RUBY_VOID_ANYARGS_FUNC(f) ((void (*)(ANYARGS))(f))
1026
+ # define SWIG_RUBY_INT_ANYARGS_FUNC(f) ((int (*)(ANYARGS))(f))
1018
1027
  #else
1028
+ # define PROTECTFUNC(f) (f)
1019
1029
  # define VALUEFUNC(f) (f)
1020
1030
  # define VOIDFUNC(f) (f)
1031
+ # define SWIG_RUBY_VOID_ANYARGS_FUNC(f) (f)
1032
+ # define SWIG_RUBY_INT_ANYARGS_FUNC(f) (f)
1021
1033
  #endif
1022
1034
 
1023
1035
  /* Don't use for expressions have side effect */
@@ -1205,7 +1217,7 @@ void Ruby_Format_OverloadedError(
1205
1217
  /* -----------------------------------------------------------------------------
1206
1218
  * rubytracking.swg
1207
1219
  *
1208
- * This file contains support for tracking mappings from
1220
+ * This file contains support for tracking mappings from
1209
1221
  * Ruby objects to C++ objects. This functionality is needed
1210
1222
  * to implement mark functions for Ruby's mark and sweep
1211
1223
  * garbage collector.
@@ -1232,7 +1244,7 @@ extern "C" {
1232
1244
  #endif
1233
1245
 
1234
1246
  /* Global hash table to store Trackings from C/C++
1235
- structs to Ruby Objects.
1247
+ structs to Ruby Objects.
1236
1248
  */
1237
1249
  static st_table* swig_ruby_trackings = NULL;
1238
1250
 
@@ -1246,7 +1258,7 @@ SWIGRUNTIME void SWIG_RubyInitializeTrackings(void) {
1246
1258
  /* Create a hash table to store Trackings from C++
1247
1259
  objects to Ruby objects. */
1248
1260
 
1249
- /* Try to see if some other .so has already created a
1261
+ /* Try to see if some other .so has already created a
1250
1262
  tracking hash table, which we keep hidden in an instance var
1251
1263
  in the SWIG module.
1252
1264
  This is done to allow multiple DSOs to share the same
@@ -1273,8 +1285,9 @@ SWIGRUNTIME void SWIG_RubyInitializeTrackings(void) {
1273
1285
  swig_ruby_trackings = (st_table*)NUM2SWIG(trackings_value);
1274
1286
  }
1275
1287
 
1276
- rb_define_virtual_variable("SWIG_TRACKINGS_COUNT", RUBY_VALUE_METHOD_FUNC(swig_ruby_trackings_count), RUBY_VOID_METHOD_FUNC((rb_gvar_setter_t*)NULL))
1277
- ;
1288
+ rb_define_virtual_variable("SWIG_TRACKINGS_COUNT",
1289
+ VALUEFUNC(swig_ruby_trackings_count),
1290
+ SWIG_RUBY_VOID_ANYARGS_FUNC((rb_gvar_setter_t*)NULL));
1278
1291
  }
1279
1292
 
1280
1293
  /* Add a Tracking from a C/C++ struct to a Ruby object */
@@ -1306,13 +1319,14 @@ SWIGRUNTIME void SWIG_RubyRemoveTracking(void* ptr) {
1306
1319
 
1307
1320
  /* This is a helper method that unlinks a Ruby object from its
1308
1321
  underlying C++ object. This is needed if the lifetime of the
1309
- Ruby object is longer than the C++ object */
1322
+ Ruby object is longer than the C++ object. */
1310
1323
  SWIGRUNTIME void SWIG_RubyUnlinkObjects(void* ptr) {
1311
1324
  VALUE object = SWIG_RubyInstanceFor(ptr);
1312
1325
 
1313
1326
  if (object != Qnil) {
1314
- if (TYPE(object) != T_DATA)
1315
- abort();
1327
+ // object might have the T_ZOMBIE type, but that's just
1328
+ // because the GC has flagged it as such for a deferred
1329
+ // destruction. Until then, it's still a T_DATA object.
1316
1330
  DATA_PTR(object) = 0;
1317
1331
  }
1318
1332
  }
@@ -1322,14 +1336,15 @@ SWIGRUNTIME void SWIG_RubyUnlinkObjects(void* ptr) {
1322
1336
  to the passed callback function. */
1323
1337
 
1324
1338
  /* Proxy method to abstract the internal trackings datatype */
1325
- static int swig_ruby_internal_iterate_callback(st_data_t ptr, st_data_t obj, st_data_t meth) {
1326
- ((void(*)(void*, VALUE))meth)((void*)ptr, (VALUE)obj);
1327
-
1339
+ static int swig_ruby_internal_iterate_callback(st_data_t ptr, st_data_t obj, st_data_t meth) {
1340
+ ((void (*) (void *, VALUE))meth)((void *)ptr, (VALUE)obj);
1328
1341
  return ST_CONTINUE;
1329
1342
  }
1330
1343
 
1331
1344
  SWIGRUNTIME void SWIG_RubyIterateTrackings( void(*meth)(void* ptr, VALUE obj) ) {
1332
- st_foreach(swig_ruby_trackings, RUBY_INT_METHOD_FUNC(swig_ruby_internal_iterate_callback), (st_data_t)meth);
1345
+ st_foreach(swig_ruby_trackings,
1346
+ SWIG_RUBY_INT_ANYARGS_FUNC(swig_ruby_internal_iterate_callback),
1347
+ (st_data_t)meth);
1333
1348
  }
1334
1349
 
1335
1350
  #ifdef __cplusplus
@@ -1546,10 +1561,11 @@ SWIG_Ruby_NewPointerObj(void *ptr, swig_type_info *type, int flags)
1546
1561
  swig_class *sklass;
1547
1562
  VALUE klass;
1548
1563
  VALUE obj;
1549
-
1564
+
1550
1565
  if (!ptr)
1551
1566
  return Qnil;
1552
-
1567
+
1568
+ assert(type);
1553
1569
  if (type->clientdata) {
1554
1570
  sklass = (swig_class *) type->clientdata;
1555
1571
 
@@ -1557,7 +1573,7 @@ SWIG_Ruby_NewPointerObj(void *ptr, swig_type_info *type, int flags)
1557
1573
  track = sklass->trackObjects;
1558
1574
  if (track) {
1559
1575
  obj = SWIG_RubyInstanceFor(ptr);
1560
-
1576
+
1561
1577
  /* Check the object's type and make sure it has the correct type.
1562
1578
  It might not in cases where methods do things like
1563
1579
  downcast methods. */
@@ -1589,7 +1605,7 @@ SWIG_Ruby_NewPointerObj(void *ptr, swig_type_info *type, int flags)
1589
1605
  obj = Data_Wrap_Struct(klass, 0, 0, ptr);
1590
1606
  }
1591
1607
  rb_iv_set(obj, "@__swigtype__", rb_str_new2(type->name));
1592
-
1608
+
1593
1609
  return obj;
1594
1610
  }
1595
1611
 
@@ -1609,6 +1625,8 @@ SWIGRUNTIMEINLINE char *
1609
1625
  SWIG_Ruby_MangleStr(VALUE obj)
1610
1626
  {
1611
1627
  VALUE stype = rb_iv_get(obj, "@__swigtype__");
1628
+ if (NIL_P(stype))
1629
+ return NULL;
1612
1630
  return StringValuePtr(stype);
1613
1631
  }
1614
1632
 
@@ -1621,7 +1639,7 @@ typedef struct {
1621
1639
  SWIGRUNTIME swig_ruby_owntype
1622
1640
  SWIG_Ruby_AcquirePtr(VALUE obj, swig_ruby_owntype own) {
1623
1641
  swig_ruby_owntype oldown = {0, 0};
1624
- if (obj) {
1642
+ if (TYPE(obj) == T_DATA && !RTYPEDDATA_P(obj)) {
1625
1643
  oldown.datafree = RDATA(obj)->dfree;
1626
1644
  RDATA(obj)->dfree = own.datafree;
1627
1645
  }
@@ -1640,9 +1658,9 @@ SWIG_Ruby_ConvertPtrAndOwn(VALUE obj, void **ptr, swig_type_info *ty, int flags,
1640
1658
  if (NIL_P(obj)) {
1641
1659
  if (ptr)
1642
1660
  *ptr = 0;
1643
- return SWIG_OK;
1661
+ return (flags & SWIG_POINTER_NO_NULL) ? SWIG_NullReferenceError : SWIG_OK;
1644
1662
  } else {
1645
- if (TYPE(obj) != T_DATA) {
1663
+ if (TYPE(obj) != T_DATA || (TYPE(obj) == T_DATA && RTYPEDDATA_P(obj))) {
1646
1664
  return SWIG_ERROR;
1647
1665
  }
1648
1666
  Data_Get_Struct(obj, void, vptr);
@@ -1737,7 +1755,7 @@ SWIG_Ruby_NewPackedObj(void *ptr, int sz, swig_type_info *type) {
1737
1755
  return rb_str_new2(result);
1738
1756
  }
1739
1757
 
1740
- /* Convert a packed value value */
1758
+ /* Convert a packed pointer value */
1741
1759
  SWIGRUNTIME int
1742
1760
  SWIG_Ruby_ConvertPacked(VALUE obj, void *ptr, int sz, swig_type_info *ty) {
1743
1761
  swig_cast_info *tc;
@@ -1976,7 +1994,7 @@ static swig_module_info swig_module = {swig_types, 118, 0, 0, 0, 0};
1976
1994
  #define SWIG_RUBY_THREAD_END_BLOCK
1977
1995
 
1978
1996
 
1979
- #define SWIGVERSION 0x030012
1997
+ #define SWIGVERSION 0x040002
1980
1998
  #define SWIG_VERSION SWIGVERSION
1981
1999
 
1982
2000
 
@@ -8121,7 +8139,7 @@ SWIGINTERN VALUE _wrap_FXFoldingList_setShape(int nargs, VALUE *args, VALUE self
8121
8139
  _v = SWIG_CheckState(res);
8122
8140
  if (_v) {
8123
8141
  void *vptr = 0;
8124
- int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_FXRegion, 0);
8142
+ int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_FXRegion, SWIG_POINTER_NO_NULL);
8125
8143
  _v = SWIG_CheckState(res);
8126
8144
  if (_v) {
8127
8145
  return _wrap_FXFoldingList_setShape__SWIG_0(nargs, args, self);
@@ -14165,7 +14183,7 @@ SWIGINTERN VALUE _wrap_FXTreeList_setShape(int nargs, VALUE *args, VALUE self) {
14165
14183
  _v = SWIG_CheckState(res);
14166
14184
  if (_v) {
14167
14185
  void *vptr = 0;
14168
- int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_FXRegion, 0);
14186
+ int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_FXRegion, SWIG_POINTER_NO_NULL);
14169
14187
  _v = SWIG_CheckState(res);
14170
14188
  if (_v) {
14171
14189
  return _wrap_FXTreeList_setShape__SWIG_0(nargs, args, self);
@@ -18405,7 +18423,7 @@ SWIGINTERN VALUE _wrap_FXDirList_setShape(int nargs, VALUE *args, VALUE self) {
18405
18423
  _v = SWIG_CheckState(res);
18406
18424
  if (_v) {
18407
18425
  void *vptr = 0;
18408
- int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_FXRegion, 0);
18426
+ int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_FXRegion, SWIG_POINTER_NO_NULL);
18409
18427
  _v = SWIG_CheckState(res);
18410
18428
  if (_v) {
18411
18429
  return _wrap_FXDirList_setShape__SWIG_0(nargs, args, self);
@@ -20859,7 +20877,7 @@ SWIG_InitializeModule(void *clientdata) {
20859
20877
 
20860
20878
  /* Now work on filling in swig_module.types */
20861
20879
  #ifdef SWIGRUNTIME_DEBUG
20862
- printf("SWIG_InitializeModule: size %d\n", swig_module.size);
20880
+ printf("SWIG_InitializeModule: size %lu\n", (unsigned long)swig_module.size);
20863
20881
  #endif
20864
20882
  for (i = 0; i < swig_module.size; ++i) {
20865
20883
  swig_type_info *type = 0;
@@ -20867,7 +20885,7 @@ SWIG_InitializeModule(void *clientdata) {
20867
20885
  swig_cast_info *cast;
20868
20886
 
20869
20887
  #ifdef SWIGRUNTIME_DEBUG
20870
- printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
20888
+ printf("SWIG_InitializeModule: type %lu %s\n", (unsigned long)i, swig_module.type_initial[i]->name);
20871
20889
  #endif
20872
20890
 
20873
20891
  /* if there is another module already loaded */
@@ -20943,7 +20961,7 @@ SWIG_InitializeModule(void *clientdata) {
20943
20961
  for (i = 0; i < swig_module.size; ++i) {
20944
20962
  int j = 0;
20945
20963
  swig_cast_info *cast = swig_module.cast_initial[i];
20946
- printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
20964
+ printf("SWIG_InitializeModule: type %lu %s\n", (unsigned long)i, swig_module.type_initial[i]->name);
20947
20965
  while (cast->type) {
20948
20966
  printf("SWIG_InitializeModule: cast type %s\n", cast->type->name);
20949
20967
  cast++;