fxruby 1.6.38-x86-mingw32 → 1.6.43-x86-mingw32
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/.travis.yml +3 -14
- data/.yardopts +1 -1
- data/Gemfile +8 -5
- data/History.md +1344 -21
- data/README.rdoc +5 -5
- data/Rakefile +100 -68
- data/appveyor.yml +17 -4
- data/docs/Fox.html +11184 -0
- data/docs/Fox/Canvas.html +141 -0
- data/docs/Fox/Canvas/CanvasError.html +124 -0
- data/docs/Fox/Canvas/CircleShape.html +477 -0
- data/docs/Fox/Canvas/ImageShape.html +477 -0
- data/docs/Fox/Canvas/LineShape.html +1005 -0
- data/docs/Fox/Canvas/PolygonShape.html +145 -0
- data/docs/Fox/Canvas/RectangleShape.html +439 -0
- data/docs/Fox/Canvas/SelectionPolicy.html +352 -0
- data/docs/Fox/Canvas/Shape.html +1955 -0
- data/docs/Fox/Canvas/ShapeCanvas.html +2031 -0
- data/docs/Fox/Canvas/ShapeGroup.html +527 -0
- data/docs/Fox/Canvas/SingleSelectionPolicy.html +291 -0
- data/docs/Fox/Canvas/TextShape.html +609 -0
- data/docs/Fox/FTNonModal.html +550 -0
- data/docs/Fox/FX4Splitter.html +1336 -0
- data/docs/Fox/FX7Segment.html +1010 -0
- data/docs/Fox/FXAccelTable.html +715 -0
- data/docs/Fox/FXApp.html +7998 -0
- data/docs/Fox/FXArc.html +562 -0
- data/docs/Fox/FXArrowButton.html +865 -0
- data/docs/Fox/FXBMPIcon.html +450 -0
- data/docs/Fox/FXBMPImage.html +434 -0
- data/docs/Fox/FXBitmap.html +1362 -0
- data/docs/Fox/FXBitmapFrame.html +595 -0
- data/docs/Fox/FXBitmapView.html +1451 -0
- data/docs/Fox/FXButton.html +534 -0
- data/docs/Fox/FXCURCursor.html +261 -0
- data/docs/Fox/FXCalendar.html +880 -0
- data/docs/Fox/FXCanvas.html +311 -0
- data/docs/Fox/FXCheckButton.html +949 -0
- data/docs/Fox/FXChoiceBox.html +472 -0
- data/docs/Fox/FXColor.html +1519 -0
- data/docs/Fox/FXColorBar.html +759 -0
- data/docs/Fox/FXColorDialog.html +591 -0
- data/docs/Fox/FXColorItem.html +323 -0
- data/docs/Fox/FXColorList.html +712 -0
- data/docs/Fox/FXColorRing.html +817 -0
- data/docs/Fox/FXColorSelector.html +796 -0
- data/docs/Fox/FXColorWell.html +850 -0
- data/docs/Fox/FXColorWheel.html +770 -0
- data/docs/Fox/FXComboBox.html +2939 -0
- data/docs/Fox/FXComboTableItem.html +544 -0
- data/docs/Fox/FXCommand.html +526 -0
- data/docs/Fox/FXComposite.html +433 -0
- data/docs/Fox/FXCursor.html +779 -0
- data/docs/Fox/FXDC.html +5231 -0
- data/docs/Fox/FXDCPrint.html +696 -0
- data/docs/Fox/FXDCWindow.html +358 -0
- data/docs/Fox/FXDataTarget.html +573 -0
- data/docs/Fox/FXDebugTarget.html +305 -0
- data/docs/Fox/FXDelegator.html +305 -0
- data/docs/Fox/FXDial.html +1133 -0
- data/docs/Fox/FXDialogBox.html +413 -0
- data/docs/Fox/FXDict.html +1063 -0
- data/docs/Fox/FXDirBox.html +752 -0
- data/docs/Fox/FXDirDialog.html +914 -0
- data/docs/Fox/FXDirItem.html +989 -0
- data/docs/Fox/FXDirList.html +1554 -0
- data/docs/Fox/FXDirSelector.html +995 -0
- data/docs/Fox/FXDockBar.html +1451 -0
- data/docs/Fox/FXDockHandler.html +468 -0
- data/docs/Fox/FXDockSite.html +678 -0
- data/docs/Fox/FXDockTitle.html +606 -0
- data/docs/Fox/FXDocument.html +536 -0
- data/docs/Fox/FXDragCorner.html +440 -0
- data/docs/Fox/FXDrawable.html +478 -0
- data/docs/Fox/FXDriveBox.html +746 -0
- data/docs/Fox/FXEvent.html +1736 -0
- data/docs/Fox/FXExtentd.html +1374 -0
- data/docs/Fox/FXExtentf.html +1374 -0
- data/docs/Fox/FXFileAssoc.html +850 -0
- data/docs/Fox/FXFileDialog.html +2688 -0
- data/docs/Fox/FXFileDict.html +1058 -0
- data/docs/Fox/FXFileItem.html +1141 -0
- data/docs/Fox/FXFileList.html +2259 -0
- data/docs/Fox/FXFileSelector.html +2529 -0
- data/docs/Fox/FXFileStream.html +503 -0
- data/docs/Fox/FXFoldingItem.html +2822 -0
- data/docs/Fox/FXFoldingList.html +5189 -0
- data/docs/Fox/FXFont.html +2998 -0
- data/docs/Fox/FXFontDesc.html +710 -0
- data/docs/Fox/FXFontDialog.html +420 -0
- data/docs/Fox/FXFontSelector.html +576 -0
- data/docs/Fox/FXFrame.html +1012 -0
- data/docs/Fox/FXGIFCursor.html +337 -0
- data/docs/Fox/FXGIFIcon.html +450 -0
- data/docs/Fox/FXGIFImage.html +434 -0
- data/docs/Fox/FXGLCanvas.html +700 -0
- data/docs/Fox/FXGLCone.html +785 -0
- data/docs/Fox/FXGLContext.html +649 -0
- data/docs/Fox/FXGLCube.html +703 -0
- data/docs/Fox/FXGLCylinder.html +791 -0
- data/docs/Fox/FXGLGroup.html +1385 -0
- data/docs/Fox/FXGLLine.html +653 -0
- data/docs/Fox/FXGLObject.html +759 -0
- data/docs/Fox/FXGLPoint.html +561 -0
- data/docs/Fox/FXGLShape.html +714 -0
- data/docs/Fox/FXGLSphere.html +626 -0
- data/docs/Fox/FXGLViewer.html +3506 -0
- data/docs/Fox/FXGLVisual.html +2147 -0
- data/docs/Fox/FXGradient.html +562 -0
- data/docs/Fox/FXGradientBar.html +2479 -0
- data/docs/Fox/FXGroupBox.html +688 -0
- data/docs/Fox/FXHeader.html +3040 -0
- data/docs/Fox/FXHeaderItem.html +1353 -0
- data/docs/Fox/FXHiliteStyle.html +804 -0
- data/docs/Fox/FXHorizontalFrame.html +359 -0
- data/docs/Fox/FXHorizontalSeparator.html +349 -0
- data/docs/Fox/FXICOIcon.html +450 -0
- data/docs/Fox/FXICOImage.html +434 -0
- data/docs/Fox/FXIcon.html +384 -0
- data/docs/Fox/FXIconDict.html +752 -0
- data/docs/Fox/FXIconItem.html +1518 -0
- data/docs/Fox/FXIconList.html +4676 -0
- data/docs/Fox/FXIconSource.html +963 -0
- data/docs/Fox/FXId.html +712 -0
- data/docs/Fox/FXImage.html +2328 -0
- data/docs/Fox/FXImageFrame.html +489 -0
- data/docs/Fox/FXImageView.html +504 -0
- data/docs/Fox/FXInputDialog.html +894 -0
- data/docs/Fox/FXIrb.html +942 -0
- data/docs/Fox/FXJPGIcon.html +607 -0
- data/docs/Fox/FXJPGImage.html +591 -0
- data/docs/Fox/FXKnob.html +1048 -0
- data/docs/Fox/FXLabel.html +1013 -0
- data/docs/Fox/FXLight.html +920 -0
- data/docs/Fox/FXList.html +3717 -0
- data/docs/Fox/FXListBox.html +2518 -0
- data/docs/Fox/FXListItem.html +1459 -0
- data/docs/Fox/FXMDIChild.html +2175 -0
- data/docs/Fox/FXMDIClient.html +781 -0
- data/docs/Fox/FXMDIDeleteButton.html +334 -0
- data/docs/Fox/FXMDIMaximizeButton.html +334 -0
- data/docs/Fox/FXMDIMenu.html +335 -0
- data/docs/Fox/FXMDIMinimizeButton.html +334 -0
- data/docs/Fox/FXMDIRestoreButton.html +334 -0
- data/docs/Fox/FXMDIWindowButton.html +334 -0
- data/docs/Fox/FXMainWindow.html +337 -0
- data/docs/Fox/FXMaterial.html +570 -0
- data/docs/Fox/FXMatrix.html +734 -0
- data/docs/Fox/FXMemoryBuffer.html +472 -0
- data/docs/Fox/FXMemoryStream.html +632 -0
- data/docs/Fox/FXMenuBar.html +347 -0
- data/docs/Fox/FXMenuButton.html +829 -0
- data/docs/Fox/FXMenuCaption.html +1080 -0
- data/docs/Fox/FXMenuCascade.html +388 -0
- data/docs/Fox/FXMenuCheck.html +721 -0
- data/docs/Fox/FXMenuCommand.html +400 -0
- data/docs/Fox/FXMenuPane.html +333 -0
- data/docs/Fox/FXMenuRadio.html +721 -0
- data/docs/Fox/FXMenuSeparator.html +440 -0
- data/docs/Fox/FXMenuTitle.html +405 -0
- data/docs/Fox/FXMessageBox.html +658 -0
- data/docs/Fox/FXObject.html +545 -0
- data/docs/Fox/FXOption.html +491 -0
- data/docs/Fox/FXOptionMenu.html +885 -0
- data/docs/Fox/FXPCXIcon.html +450 -0
- data/docs/Fox/FXPCXImage.html +434 -0
- data/docs/Fox/FXPNGIcon.html +524 -0
- data/docs/Fox/FXPNGImage.html +508 -0
- data/docs/Fox/FXPPMIcon.html +450 -0
- data/docs/Fox/FXPPMImage.html +373 -0
- data/docs/Fox/FXPSBounds.html +500 -0
- data/docs/Fox/FXPacker.html +1229 -0
- data/docs/Fox/FXPicker.html +345 -0
- data/docs/Fox/FXPopup.html +1099 -0
- data/docs/Fox/FXPrintDialog.html +485 -0
- data/docs/Fox/FXPrinter.html +1330 -0
- data/docs/Fox/FXProgressBar.html +1150 -0
- data/docs/Fox/FXProgressDialog.html +715 -0
- data/docs/Fox/FXPseudoKeyboard.html +428 -0
- data/docs/Fox/FXPseudoMouse.html +800 -0
- data/docs/Fox/FXPseudoTarget.html +472 -0
- data/docs/Fox/FXQuatd.html +1377 -0
- data/docs/Fox/FXQuatf.html +1392 -0
- data/docs/Fox/FXRGBIcon.html +450 -0
- data/docs/Fox/FXRGBImage.html +434 -0
- data/docs/Fox/FXRadioButton.html +885 -0
- data/docs/Fox/FXRanged.html +1522 -0
- data/docs/Fox/FXRangef.html +1522 -0
- data/docs/Fox/FXRealSlider.html +1187 -0
- data/docs/Fox/FXRealSpinner.html +2175 -0
- data/docs/Fox/FXRecentFiles.html +841 -0
- data/docs/Fox/FXRectangle.html +802 -0
- data/docs/Fox/FXRegion.html +841 -0
- data/docs/Fox/FXRegistry.html +682 -0
- data/docs/Fox/FXReplaceDialog.html +648 -0
- data/docs/Fox/FXRootWindow.html +312 -0
- data/docs/Fox/FXRuler.html +2000 -0
- data/docs/Fox/FXRulerView.html +3997 -0
- data/docs/Fox/FXScintilla.html +49117 -0
- data/docs/Fox/FXScrollArea.html +1363 -0
- data/docs/Fox/FXScrollBar.html +1019 -0
- data/docs/Fox/FXScrollCorner.html +290 -0
- data/docs/Fox/FXScrollPane.html +499 -0
- data/docs/Fox/FXScrollWindow.html +409 -0
- data/docs/Fox/FXSearchDialog.html +382 -0
- data/docs/Fox/FXSegment.html +422 -0
- data/docs/Fox/FXSeparator.html +402 -0
- data/docs/Fox/FXSettings.html +1861 -0
- data/docs/Fox/FXShell.html +233 -0
- data/docs/Fox/FXShutter.html +472 -0
- data/docs/Fox/FXShutterItem.html +669 -0
- data/docs/Fox/FXSize.html +592 -0
- data/docs/Fox/FXSlider.html +1129 -0
- data/docs/Fox/FXSphered.html +906 -0
- data/docs/Fox/FXSpheref.html +906 -0
- data/docs/Fox/FXSpinner.html +2102 -0
- data/docs/Fox/FXSplashScreen.html +497 -0
- data/docs/Fox/FXSplashWindow.html +494 -0
- data/docs/Fox/FXSplitter.html +643 -0
- data/docs/Fox/FXSpring.html +517 -0
- data/docs/Fox/FXStatusBar.html +593 -0
- data/docs/Fox/FXStatusLine.html +754 -0
- data/docs/Fox/FXStream.html +1372 -0
- data/docs/Fox/FXStreamAllocError.html +148 -0
- data/docs/Fox/FXStreamEndError.html +148 -0
- data/docs/Fox/FXStreamError.html +259 -0
- data/docs/Fox/FXStreamFailureError.html +148 -0
- data/docs/Fox/FXStreamFormatError.html +148 -0
- data/docs/Fox/FXStreamFullError.html +148 -0
- data/docs/Fox/FXStreamNoReadError.html +148 -0
- data/docs/Fox/FXStreamNoWriteError.html +148 -0
- data/docs/Fox/FXStreamUnknownError.html +148 -0
- data/docs/Fox/FXStringDict.html +552 -0
- data/docs/Fox/FXSwitcher.html +619 -0
- data/docs/Fox/FXTGAIcon.html +450 -0
- data/docs/Fox/FXTGAImage.html +434 -0
- data/docs/Fox/FXTIFIcon.html +604 -0
- data/docs/Fox/FXTIFImage.html +588 -0
- data/docs/Fox/FXTabBar.html +644 -0
- data/docs/Fox/FXTabBook.html +373 -0
- data/docs/Fox/FXTabItem.html +478 -0
- data/docs/Fox/FXTable.html +10107 -0
- data/docs/Fox/FXTableItem.html +2195 -0
- data/docs/Fox/FXTablePos.html +360 -0
- data/docs/Fox/FXTableRange.html +360 -0
- data/docs/Fox/FXText.html +6870 -0
- data/docs/Fox/FXTextChange.html +492 -0
- data/docs/Fox/FXTextField.html +2016 -0
- data/docs/Fox/FXToggleButton.html +844 -0
- data/docs/Fox/FXToolBar.html +452 -0
- data/docs/Fox/FXToolBarGrip.html +584 -0
- data/docs/Fox/FXToolBarShell.html +788 -0
- data/docs/Fox/FXToolBarTab.html +729 -0
- data/docs/Fox/FXToolTip.html +761 -0
- data/docs/Fox/FXTopWindow.html +1716 -0
- data/docs/Fox/FXTranslator.html +481 -0
- data/docs/Fox/FXTreeItem.html +2813 -0
- data/docs/Fox/FXTreeList.html +5095 -0
- data/docs/Fox/FXTreeListBox.html +3080 -0
- data/docs/Fox/FXTriStateButton.html +681 -0
- data/docs/Fox/FXUndoList.html +2560 -0
- data/docs/Fox/FXVec2d.html +1450 -0
- data/docs/Fox/FXVec2f.html +1442 -0
- data/docs/Fox/FXVec3d.html +1649 -0
- data/docs/Fox/FXVec3f.html +1649 -0
- data/docs/Fox/FXVec4d.html +1858 -0
- data/docs/Fox/FXVec4f.html +1858 -0
- data/docs/Fox/FXVerticalFrame.html +359 -0
- data/docs/Fox/FXVerticalSeparator.html +349 -0
- data/docs/Fox/FXViewport.html +780 -0
- data/docs/Fox/FXVisual.html +1023 -0
- data/docs/Fox/FXWindow.html +9948 -0
- data/docs/Fox/FXWizard.html +1052 -0
- data/docs/Fox/FXXBMIcon.html +453 -0
- data/docs/Fox/FXXBMImage.html +437 -0
- data/docs/Fox/FXXPMIcon.html +450 -0
- data/docs/Fox/FXXPMImage.html +434 -0
- data/docs/Fox/NotifyHeader.html +286 -0
- data/docs/Fox/SCNotification.html +1438 -0
- data/docs/Fox/TextRange.html +281 -0
- data/docs/IRB.html +204 -0
- data/docs/Responder.html +693 -0
- data/docs/Responder2.html +225 -0
- data/docs/_index.html +2101 -0
- data/docs/class_list.html +51 -0
- data/docs/css/common.css +1 -0
- data/docs/css/full_list.css +58 -0
- data/docs/css/style.css +496 -0
- data/docs/file.History.html +869 -0
- data/docs/file.README.html +104 -0
- data/docs/file_list.html +66 -0
- data/docs/frames.html +17 -0
- data/docs/index.html +614 -0
- data/docs/js/app.js +314 -0
- data/docs/js/full_list.js +216 -0
- data/docs/js/jquery.js +4 -0
- data/docs/method_list.html +31043 -0
- data/docs/top-level-namespace.html +214 -0
- data/examples/canvasdemo.rb +5 -1
- data/examples/gltest.rb +162 -106
- data/examples/glviewer.rb +12 -8
- data/examples/inputs.rb +9 -4
- data/examples/pig.rb +2 -2
- data/examples/unicode.rb +6 -27
- data/ext/fox16_c/FXRbApp.cpp +3 -17
- data/ext/fox16_c/FXRuby.cpp +36 -46
- data/ext/fox16_c/extconf.rb +50 -34
- data/ext/fox16_c/impl.cpp +1 -1
- data/ext/fox16_c/include/FXRbApp.h +2 -2
- data/ext/fox16_c/include/FXRbCommon.h +0 -2
- data/ext/fox16_c/include/FXRbText.h +82 -2
- data/ext/fox16_c/include/FXRbTextVirtuals.h +22 -0
- data/ext/fox16_c/include/FXRuby.h +21 -3
- data/ext/fox16_c/include/gvl_wrappers.h +29 -11
- data/ext/fox16_c/make_impl.rb +1 -1
- data/fxruby.gemspec +2 -1
- data/lib/fox16/aliases.rb +4 -1
- data/lib/fox16/bitmapview.rb +0 -0
- data/lib/fox16/calendar.rb +6 -8
- data/lib/fox16/canvas.rb +93 -62
- data/lib/fox16/chore.rb +0 -0
- data/lib/fox16/colors.rb +0 -0
- data/lib/fox16/core.rb +18 -18
- data/lib/fox16/dict.rb +0 -0
- data/lib/fox16/glgroup.rb +5 -5
- data/lib/fox16/glshapes.rb +111 -99
- data/lib/fox16/input.rb +9 -7
- data/lib/fox16/irb.rb +0 -0
- data/lib/fox16/iterators.rb +0 -0
- data/lib/fox16/keys.rb +0 -0
- data/lib/fox16/missingdep.rb +0 -0
- data/lib/fox16/pseudokeyboard.rb +0 -0
- data/lib/fox16/pseudomouse.rb +0 -0
- data/lib/fox16/responder.rb +0 -0
- data/lib/fox16/responder2.rb +0 -0
- data/lib/fox16/scintilla.rb +0 -0
- data/lib/fox16/settings.rb +0 -0
- data/lib/fox16/signal.rb +0 -0
- data/lib/fox16/timeout.rb +0 -0
- data/lib/fox16/tkcompat.rb +0 -0
- data/lib/fox16/undolist.rb +8 -8
- data/lib/fox16/version.rb +1 -1
- data/rdoc-sources/FXGLVisual.rb +8 -0
- data/rdoc-sources/FXIconList.rb +2 -0
- data/rdoc-sources/FXImage.rb +5 -0
- data/rdoc-sources/FXList.rb +2 -0
- data/rdoc-sources/FXListBox.rb +1 -1
- data/rdoc-sources/FXText.rb +4 -2
- data/swig-interfaces/FXGLVisual.i +1 -1
- data/swig-interfaces/FXImage.i +9 -4
- data/swig-interfaces/FXMemoryBuffer.i +3 -3
- data/swig-interfaces/FXText.i +10 -8
- data/swig-interfaces/macros.i +9 -0
- data/test/TC_FXGLViewer.rb +8 -1
- data/test/TC_FXImage.rb +8 -0
- data/test/TC_FXList.rb +8 -8
- data/test/TC_FXText.rb +19 -0
- data/test/TC_FXVec4f.rb +26 -12
- metadata +300 -9
data/ext/fox16_c/extconf.rb
CHANGED
@@ -24,51 +24,36 @@ end
|
|
24
24
|
LIBZ_VERSION = ENV['LIBZ_VERSION'] || '1.2.7.3'
|
25
25
|
LIBZ_SOURCE_URI = "http://zlib.net/fossils/zlib-#{LIBZ_VERSION}.tar.gz"
|
26
26
|
|
27
|
-
LIBPNG_VERSION = ENV['LIBPNG_VERSION'] || '1.6.
|
27
|
+
LIBPNG_VERSION = ENV['LIBPNG_VERSION'] || '1.6.37'
|
28
28
|
LIBPNG_SOURCE_URI = "http://prdownloads.sourceforge.net/libpng/libpng-#{LIBPNG_VERSION}.tar.gz"
|
29
29
|
|
30
30
|
# LIBJPEG_VERSION = ENV['LIBJPEG_VERSION'] || '9b'
|
31
31
|
# LIBJPEG_SOURCE_URI = "http://www.ijg.org/files/jpegsrc.v#{LIBJPEG_VERSION}.tar.gz"
|
32
32
|
|
33
|
-
LIBJPEG_VERSION = ENV['LIBJPEG_VERSION'] || '
|
33
|
+
LIBJPEG_VERSION = ENV['LIBJPEG_VERSION'] || '2.0.6'
|
34
34
|
LIBJPEG_SOURCE_URI = "https://downloads.sourceforge.net/libjpeg-turbo/libjpeg-turbo-#{LIBJPEG_VERSION}.tar.gz"
|
35
35
|
|
36
|
-
LIBTIFF_VERSION = ENV['LIBTIFF_VERSION'] || '4.0
|
36
|
+
LIBTIFF_VERSION = ENV['LIBTIFF_VERSION'] || '4.1.0'
|
37
37
|
LIBTIFF_SOURCE_URI = "http://download.osgeo.org/libtiff/tiff-#{LIBTIFF_VERSION}.tar.gz"
|
38
38
|
|
39
|
-
LIBFOX_VERSION = ENV['LIBFOX_VERSION'] || '1.6.
|
40
|
-
LIBFOX_SOURCE_URI = "http://
|
39
|
+
LIBFOX_VERSION = ENV['LIBFOX_VERSION'] || '1.6.57'
|
40
|
+
LIBFOX_SOURCE_URI = "http://fox-toolkit.org/ftp/fox-#{LIBFOX_VERSION}.tar.gz"
|
41
41
|
|
42
42
|
LIBFXSCINTILLA_VERSION = ENV['LIBFXSCINTILLA_VERSION'] || '2.28.0'
|
43
43
|
LIBFXSCINTILLA_SOURCE_URI = "http://download.savannah.gnu.org/releases/fxscintilla/fxscintilla-#{LIBFXSCINTILLA_VERSION}.tar.gz"
|
44
44
|
# LIBFXSCINTILLA_VERSION = ENV['LIBFXSCINTILLA_VERSION'] || '3.5.2'
|
45
45
|
# LIBFXSCINTILLA_SOURCE_URI = "https://github.com/yetanothergeek/fxscintilla/archive/FXSCINTILLA-#{LIBFXSCINTILLA_VERSION.gsub(".","_")}.tar.gz"
|
46
46
|
|
47
|
-
|
48
|
-
class BuildRecipe < MiniPortile
|
47
|
+
module BuildRecipeCommons
|
49
48
|
def initialize(name, version, files)
|
50
49
|
super(name, version)
|
51
50
|
self.files = files
|
52
51
|
rootdir = File.expand_path('../../..', __FILE__)
|
53
52
|
self.target = File.join(rootdir, "ports")
|
54
|
-
|
55
|
-
# correct compiler prefix for cross build, but use host if not set.
|
56
|
-
self.host = consolidated_host(RbConfig::CONFIG["host_alias"].empty? ? RbConfig::CONFIG["host"] : RbConfig::CONFIG["host_alias"])
|
53
|
+
self.host = RbConfig::CONFIG["host"]
|
57
54
|
self.patch_files = Dir[File.join(rootdir, "patches", self.name, self.version, "*.diff")].sort
|
58
55
|
end
|
59
56
|
|
60
|
-
def consolidated_host(name)
|
61
|
-
name.gsub('i686-pc-mingw32', 'i586-mingw32msvc')
|
62
|
-
end
|
63
|
-
|
64
|
-
def configure_defaults
|
65
|
-
[
|
66
|
-
"--host=#{host}", # build for specific target (host)
|
67
|
-
"--disable-static",
|
68
|
-
"--enable-shared",
|
69
|
-
]
|
70
|
-
end
|
71
|
-
|
72
57
|
def port_path
|
73
58
|
"#{target}/#{host}"
|
74
59
|
end
|
@@ -96,6 +81,44 @@ class BuildRecipe < MiniPortile
|
|
96
81
|
end
|
97
82
|
end
|
98
83
|
|
84
|
+
class BuildRecipe < MiniPortile
|
85
|
+
include BuildRecipeCommons
|
86
|
+
|
87
|
+
def configure_defaults
|
88
|
+
[
|
89
|
+
"--host=#{host}", # build for specific target (host)
|
90
|
+
"--disable-static",
|
91
|
+
"--enable-shared",
|
92
|
+
]
|
93
|
+
end
|
94
|
+
end
|
95
|
+
class BuildRecipeCMake < MiniPortileCMake
|
96
|
+
include BuildRecipeCommons
|
97
|
+
|
98
|
+
def system_processor
|
99
|
+
case host
|
100
|
+
when /x86_64/ then "amd64"
|
101
|
+
when /i686/ then "x86"
|
102
|
+
else raise "unknown host #{host}"
|
103
|
+
end
|
104
|
+
end
|
105
|
+
|
106
|
+
def configure_defaults
|
107
|
+
[
|
108
|
+
"-DENABLE_STATIC=0",
|
109
|
+
"-DENABLE_SHARED=1",
|
110
|
+
"-DCMAKE_SYSTEM_NAME=Windows",
|
111
|
+
"-DCMAKE_C_COMPILER=#{host}-gcc",
|
112
|
+
"-DCMAKE_CXX_COMPILER=#{host}-g++",
|
113
|
+
"-DCMAKE_SYSTEM_PROCESSOR=#{system_processor}",
|
114
|
+
]
|
115
|
+
end
|
116
|
+
|
117
|
+
def make_cmd
|
118
|
+
ENV["MAKE"] || "make"
|
119
|
+
end
|
120
|
+
end
|
121
|
+
|
99
122
|
def do_rake_compiler_setup
|
100
123
|
if enable_config("win32-cross")
|
101
124
|
dir_config("installed")
|
@@ -141,7 +164,7 @@ def do_rake_compiler_setup
|
|
141
164
|
recipe.cook_and_activate
|
142
165
|
end
|
143
166
|
|
144
|
-
libjpeg_recipe =
|
167
|
+
libjpeg_recipe = BuildRecipeCMake.new("libjpeg", LIBJPEG_VERSION, [LIBJPEG_SOURCE_URI]).tap do |recipe|
|
145
168
|
recipe.cook_and_activate
|
146
169
|
end
|
147
170
|
|
@@ -158,13 +181,6 @@ def do_rake_compiler_setup
|
|
158
181
|
"CPPFLAGS=-I#{libjpeg_recipe.path}/include -I#{libpng_recipe.path}/include -I#{libtiff_recipe.path}/include -I#{libz_recipe.path}/include -DUNICODE=1 #{debug ? "-ggdb" : ""}",
|
159
182
|
"LDFLAGS=-L#{libjpeg_recipe.path}/lib -L#{libpng_recipe.path}/lib -L#{libtiff_recipe.path}/lib -L#{libz_recipe.path}/lib #{debug ? "-ggdb" : ""}",
|
160
183
|
]
|
161
|
-
class << recipe
|
162
|
-
def compile
|
163
|
-
# Add param -no-undefined to libtool to build a win32 shared lib
|
164
|
-
execute "compile", "#{ENV['MAKE'] || "make"} libFOX_1_6_la_LDFLAGS='-version-info 0:49:0 -export-dynamic -no-undefined'"
|
165
|
-
end
|
166
|
-
end
|
167
|
-
|
168
184
|
recipe.cook_and_activate
|
169
185
|
end
|
170
186
|
|
@@ -312,14 +328,14 @@ if enable_config("debug")
|
|
312
328
|
else
|
313
329
|
$CPPFLAGS += " -DNDEBUG"
|
314
330
|
end
|
315
|
-
$CPPFLAGS += " -Wno-unused-function"
|
316
331
|
|
317
332
|
# Platform-specific modifications
|
318
333
|
do_rake_compiler_setup
|
319
334
|
|
320
|
-
|
321
|
-
$
|
322
|
-
$
|
335
|
+
if RbConfig::MAKEFILE_CONFIG['CC'] =~ /gcc/
|
336
|
+
$CXXFLAGS += " -Wno-unused-function"
|
337
|
+
$CXXFLAGS += " -Wno-maybe-uninitialized"
|
338
|
+
end
|
323
339
|
|
324
340
|
# Last step: build the makefile
|
325
341
|
create_header
|
data/ext/fox16_c/impl.cpp
CHANGED
@@ -1026,7 +1026,7 @@ IMPLEMENT_FXID_STUBS(FXRbText)
|
|
1026
1026
|
IMPLEMENT_FXDRAWABLE_STUBS(FXRbText)
|
1027
1027
|
IMPLEMENT_FXWINDOW_STUBS(FXRbText)
|
1028
1028
|
IMPLEMENT_FXSCROLLAREA_STUBS(FXRbText)
|
1029
|
-
IMPLEMENT_FXTEXT_STUBS(FXRbText)
|
1029
|
+
IMPLEMENT_FXTEXT_STUBS(FXRbText,FXText)
|
1030
1030
|
|
1031
1031
|
/* Start stub implementations for class FXRbTextField */
|
1032
1032
|
IMPLEMENT_FXOBJECT_STUBS(FXRbTextField)
|
@@ -73,7 +73,7 @@ static void cls ## _init(cls* self,VALUE ary,bool connect){ \
|
|
73
73
|
argv[0]=const_cast<char *>("foo"); \
|
74
74
|
for(i=1;i<argc;i++){ \
|
75
75
|
VALUE e=rb_ary_entry(ary,i-1); \
|
76
|
-
argv[i]=
|
76
|
+
argv[i]=StringValueCStr(e); \
|
77
77
|
} \
|
78
78
|
argv[argc]=0; \
|
79
79
|
self->cls::init(argc,argv,connect); \
|
@@ -127,7 +127,7 @@ inline void cls ## _exit(cls *self,FXint code){ \
|
|
127
127
|
argc=static_cast<int>(RARRAY_LEN(ary)+1); \
|
128
128
|
for(i=1; i<argc; i++){ \
|
129
129
|
VALUE e=rb_ary_entry(ary,i-1); \
|
130
|
-
argv[i]=
|
130
|
+
argv[i]=StringValueCStr(e); \
|
131
131
|
} \
|
132
132
|
} \
|
133
133
|
void cls::exit(FXint code){ \
|
@@ -24,7 +24,6 @@
|
|
24
24
|
* $Id: FXRbCommon.h 2303 2005-12-09 03:17:28Z lyle $
|
25
25
|
***********************************************************************/
|
26
26
|
|
27
|
-
extern "C" {
|
28
27
|
#include "ruby.h"
|
29
28
|
|
30
29
|
#include "extconf.h"
|
@@ -32,7 +31,6 @@ extern "C" {
|
|
32
31
|
#ifdef HAVE_RUBY_ENCODING_H
|
33
32
|
#include "ruby/encoding.h"
|
34
33
|
#endif
|
35
|
-
}
|
36
34
|
|
37
35
|
/**
|
38
36
|
* The Ruby header files for Win32 redefine the symbol "select", which
|
@@ -27,7 +27,39 @@
|
|
27
27
|
#ifndef FXRBTEXT_H
|
28
28
|
#define FXRBTEXT_H
|
29
29
|
|
30
|
-
#define DECLARE_FXTEXT_STUBS(klass) \
|
30
|
+
#define DECLARE_FXTEXT_STUBS(klass,subklass) \
|
31
|
+
inline void klass ## _eraseCursorOverhang(klass* self){ \
|
32
|
+
FXASSERT(self->isMemberOf(FXMETACLASS(subklass))); \
|
33
|
+
dynamic_cast<subklass*>(self)->public_eraseCursorOverhang(); \
|
34
|
+
} \
|
35
|
+
inline void klass ## _drawCursor(klass* self,FXuint state){ \
|
36
|
+
FXASSERT(self->isMemberOf(FXMETACLASS(subklass))); \
|
37
|
+
dynamic_cast<subklass*>(self)->public_drawCursor(state); \
|
38
|
+
} \
|
39
|
+
inline FXuint klass ## _style(klass* self,FXint row,FXint beg,FXint end,FXint pos){ \
|
40
|
+
FXASSERT(self->isMemberOf(FXMETACLASS(subklass))); \
|
41
|
+
return dynamic_cast<subklass*>(self)->public_style(row, beg, end, pos); \
|
42
|
+
} \
|
43
|
+
inline void klass ## _drawBufferText(klass* self,FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h,FXint pos,FXint n,FXuint style){ \
|
44
|
+
FXASSERT(self->isMemberOf(FXMETACLASS(subklass))); \
|
45
|
+
dynamic_cast<subklass*>(self)->public_drawBufferText(dc, x, y, w, h, pos, n, style); \
|
46
|
+
} \
|
47
|
+
inline void klass ## _fillBufferRect(klass* self,FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h,FXuint style){ \
|
48
|
+
FXASSERT(self->isMemberOf(FXMETACLASS(subklass))); \
|
49
|
+
dynamic_cast<subklass*>(self)->public_fillBufferRect(dc, x, y, w, h, style); \
|
50
|
+
} \
|
51
|
+
inline void klass ## _drawTextRow(klass* self,FXDCWindow& dc,FXint line,FXint left,FXint right){ \
|
52
|
+
FXASSERT(self->isMemberOf(FXMETACLASS(subklass))); \
|
53
|
+
dynamic_cast<subklass*>(self)->public_drawTextRow(dc, line, left, right); \
|
54
|
+
} \
|
55
|
+
inline void klass ## _drawContents(klass* self,FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h){ \
|
56
|
+
FXASSERT(self->isMemberOf(FXMETACLASS(subklass))); \
|
57
|
+
dynamic_cast<subklass*>(self)->public_drawContents(dc, x, y, w, h); \
|
58
|
+
} \
|
59
|
+
inline void klass ## _drawNumbers(klass* self,FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h){ \
|
60
|
+
FXASSERT(self->isMemberOf(FXMETACLASS(subklass))); \
|
61
|
+
dynamic_cast<subklass*>(self)->public_drawNumbers(dc, x, y, w, h); \
|
62
|
+
} \
|
31
63
|
inline void klass ## _setCursorPos(klass* self,FXint pos,FXbool notify){ \
|
32
64
|
self->klass::setCursorPos(pos,notify); \
|
33
65
|
} \
|
@@ -72,7 +104,55 @@ inline void klass ## _setStyledText(klass* self,const FXString& text,FXint style
|
|
72
104
|
}
|
73
105
|
|
74
106
|
|
75
|
-
#define IMPLEMENT_FXTEXT_STUBS(cls) \
|
107
|
+
#define IMPLEMENT_FXTEXT_STUBS(cls,superklass) \
|
108
|
+
void cls::eraseCursorOverhang(){ \
|
109
|
+
FXRbCallVoidMethod(this,"eraseCursorOverhang"); \
|
110
|
+
} \
|
111
|
+
void cls::public_eraseCursorOverhang(){ \
|
112
|
+
superklass::eraseCursorOverhang(); \
|
113
|
+
} \
|
114
|
+
void cls::drawCursor(FXuint state){ \
|
115
|
+
FXRbCallVoidMethod(this,"drawCursor", state); \
|
116
|
+
} \
|
117
|
+
void cls::public_drawCursor(FXuint state){ \
|
118
|
+
superklass::drawCursor(state); \
|
119
|
+
} \
|
120
|
+
FXuint cls::style(FXint row,FXint beg,FXint end,FXint pos){ \
|
121
|
+
return FXRbCallUIntMethod(this,"style", row, beg, end, pos); \
|
122
|
+
} \
|
123
|
+
FXuint cls::public_style(FXint row,FXint beg,FXint end,FXint pos){ \
|
124
|
+
return superklass::style(row, beg, end, pos); \
|
125
|
+
} \
|
126
|
+
void cls::drawBufferText(FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h,FXint pos,FXint n,FXuint style){ \
|
127
|
+
FXRbCallVoidMethod(this,"drawBufferText", dc, x, y, w, h, pos, n, style); \
|
128
|
+
} \
|
129
|
+
void cls::public_drawBufferText(FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h,FXint pos,FXint n,FXuint style){ \
|
130
|
+
superklass::drawBufferText(dc, x, y, w, h, pos, n, style); \
|
131
|
+
} \
|
132
|
+
void cls::fillBufferRect(FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h,FXuint style){ \
|
133
|
+
FXRbCallVoidMethod(this,"fillBufferRect", dc, x, y, w, h, style); \
|
134
|
+
} \
|
135
|
+
void cls::public_fillBufferRect(FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h,FXuint style){ \
|
136
|
+
superklass::fillBufferRect(dc, x, y, w, h, style); \
|
137
|
+
} \
|
138
|
+
void cls::drawTextRow(FXDCWindow& dc,FXint line,FXint left,FXint right){ \
|
139
|
+
FXRbCallVoidMethod(this,"drawTextRow", dc, line, left, right); \
|
140
|
+
} \
|
141
|
+
void cls::public_drawTextRow(FXDCWindow& dc,FXint line,FXint left,FXint right){ \
|
142
|
+
superklass::drawTextRow(dc, line, left, right); \
|
143
|
+
} \
|
144
|
+
void cls::drawContents(FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h){ \
|
145
|
+
FXRbCallVoidMethod(this,"drawContents", dc, x, y, w, h); \
|
146
|
+
} \
|
147
|
+
void cls::public_drawContents(FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h){ \
|
148
|
+
superklass::drawContents(dc, x, y, w, h); \
|
149
|
+
} \
|
150
|
+
void cls::drawNumbers(FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h){ \
|
151
|
+
FXRbCallVoidMethod(this,"drawNumbers", dc, x, y, w, h); \
|
152
|
+
} \
|
153
|
+
void cls::public_drawNumbers(FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h){ \
|
154
|
+
superklass::drawNumbers(dc, x, y, w, h); \
|
155
|
+
} \
|
76
156
|
void cls::setCursorPos(FXint pos,FXbool notify){ \
|
77
157
|
FXRbCallVoidMethod(this,"setCursorPos",pos,notify); \
|
78
158
|
} \
|
@@ -1,3 +1,25 @@
|
|
1
|
+
protected:
|
2
|
+
// Overrides the base class versions of these virtual functions
|
3
|
+
virtual void eraseCursorOverhang();
|
4
|
+
virtual void drawCursor(FXuint state);
|
5
|
+
virtual FXuint style(FXint row,FXint beg,FXint end,FXint pos);
|
6
|
+
virtual void drawBufferText(FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h,FXint pos,FXint n,FXuint style);
|
7
|
+
virtual void fillBufferRect(FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h,FXuint style);
|
8
|
+
virtual void drawTextRow(FXDCWindow& dc,FXint line,FXint left,FXint right);
|
9
|
+
virtual void drawContents(FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h);
|
10
|
+
virtual void drawNumbers(FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h);
|
11
|
+
|
12
|
+
public:
|
13
|
+
// Publically accessible versions of those protected functions
|
14
|
+
void public_eraseCursorOverhang();
|
15
|
+
void public_drawCursor(FXuint state);
|
16
|
+
FXuint public_style(FXint row,FXint beg,FXint end,FXint pos);
|
17
|
+
void public_drawBufferText(FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h,FXint pos,FXint n,FXuint style);
|
18
|
+
void public_fillBufferRect(FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h,FXuint style);
|
19
|
+
void public_drawTextRow(FXDCWindow& dc,FXint line,FXint left,FXint right);
|
20
|
+
void public_drawContents(FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h);
|
21
|
+
void public_drawNumbers(FXDCWindow& dc,FXint x,FXint y,FXint w,FXint h);
|
22
|
+
|
1
23
|
public:
|
2
24
|
// Overrides the base class version of setCursorPos()
|
3
25
|
virtual void setCursorPos(FXint pos,FXbool notify=FALSE);
|
@@ -359,6 +359,9 @@ inline VALUE to_ruby_cb(const FXFontDesc& fontdesc){
|
|
359
359
|
inline VALUE to_ruby_cb(FXDC& dc){
|
360
360
|
return FXRbGetRubyObjCb(reinterpret_cast<void*>(&dc), FXRbTypeQuery("FXDC *"));
|
361
361
|
}
|
362
|
+
inline VALUE to_ruby_cb(FXDCWindow& dc){
|
363
|
+
return FXRbGetRubyObjCb(reinterpret_cast<void*>(&dc), FXRbTypeQuery("FXDCWindow *"));
|
364
|
+
}
|
362
365
|
|
363
366
|
template<class TYPE>
|
364
367
|
VALUE to_ruby_cb(TYPE obj){
|
@@ -466,7 +469,7 @@ void FXRbCallVoidMethod_gvlcb(FXDC* recv,const char *func,TYPE1 arg1,TYPE2 arg2,
|
|
466
469
|
|
467
470
|
/* Four arguments */
|
468
471
|
template<class TYPE1, class TYPE2, class TYPE3, class TYPE4>
|
469
|
-
void FXRbCallVoidMethod_gvlcb(FXObject* recv,const char *func, TYPE1 arg1, TYPE2 arg2, TYPE3 arg3, TYPE4 arg4){
|
472
|
+
void FXRbCallVoidMethod_gvlcb(FXObject* recv,const char *func, TYPE1& arg1, TYPE2 arg2, TYPE3 arg3, TYPE4 arg4){
|
470
473
|
VALUE obj=FXRbGetRubyObj(recv,false);
|
471
474
|
FXASSERT(!NIL_P(obj));
|
472
475
|
rb_funcall(obj,rb_intern(func),4,to_ruby_cb(arg1),to_ruby_cb(arg2),to_ruby_cb(arg3),to_ruby_cb(arg4));
|
@@ -496,7 +499,7 @@ void FXRbCallVoidMethod_gvlcb(FXDC* recv, const char *func, TYPE1 arg1, TYPE2 ar
|
|
496
499
|
|
497
500
|
/* Six arguments */
|
498
501
|
template<class TYPE1, class TYPE2, class TYPE3, class TYPE4, class TYPE5, class TYPE6>
|
499
|
-
void FXRbCallVoidMethod_gvlcb(const FXObject* recv, const char *func, TYPE1 arg1, TYPE2& arg2, TYPE3 arg3, TYPE4 arg4, TYPE5 arg5, TYPE6 arg6){
|
502
|
+
void FXRbCallVoidMethod_gvlcb(const FXObject* recv, const char *func, TYPE1& arg1, TYPE2& arg2, TYPE3 arg3, TYPE4 arg4, TYPE5 arg5, TYPE6 arg6){
|
500
503
|
VALUE obj=FXRbGetRubyObj(recv,false);
|
501
504
|
FXASSERT(!NIL_P(obj));
|
502
505
|
rb_funcall(obj,rb_intern(func),6,to_ruby_cb(arg1),to_ruby_cb(arg2),to_ruby_cb(arg3),to_ruby_cb(arg4),to_ruby_cb(arg5),to_ruby_cb(arg6));
|
@@ -517,6 +520,13 @@ void FXRbCallVoidMethod_gvlcb(FXDC* recv, const char *func, TYPE1 arg1, TYPE2 ar
|
|
517
520
|
rb_funcall(obj,rb_intern(func),7,to_ruby_cb(arg1),to_ruby_cb(arg2),to_ruby_cb(arg3),to_ruby_cb(arg4),to_ruby_cb(arg5),to_ruby_cb(arg6),to_ruby_cb(arg7));
|
518
521
|
}
|
519
522
|
|
523
|
+
template<class TYPE1, class TYPE2, class TYPE3, class TYPE4, class TYPE5, class TYPE6, class TYPE7, class TYPE8>
|
524
|
+
void FXRbCallVoidMethod_gvlcb(FXObject* recv, const char *func, TYPE1& arg1, TYPE2 arg2, TYPE3 arg3, TYPE4 arg4, TYPE5 arg5, TYPE6 arg6, TYPE7 arg7, TYPE8 arg8){
|
525
|
+
VALUE obj=FXRbGetRubyObj(recv,false);
|
526
|
+
FXASSERT(!NIL_P(obj));
|
527
|
+
rb_funcall(obj,rb_intern(func),8,to_ruby_cb(arg1),to_ruby_cb(arg2),to_ruby_cb(arg3),to_ruby_cb(arg4),to_ruby_cb(arg5),to_ruby_cb(arg6),to_ruby_cb(arg7), to_ruby_cb(arg8));
|
528
|
+
}
|
529
|
+
|
520
530
|
/* Nine arguments */
|
521
531
|
template<class TYPE1, class TYPE2, class TYPE3, class TYPE4, class TYPE5, class TYPE6, class TYPE7, class TYPE8, class TYPE9>
|
522
532
|
void FXRbCallVoidMethod_gvlcb(FXDC* recv, const char *func, TYPE1 arg1, TYPE2 arg2, TYPE3 arg3, TYPE4 arg4, TYPE5 arg5, TYPE6 arg6, TYPE7 arg7, TYPE8 arg8, TYPE9 arg9){
|
@@ -535,7 +545,7 @@ void FXRbCallVoidMethod_gvlcb(FXObject* recv,const char *func,TYPE1& arg1,TYPE2
|
|
535
545
|
|
536
546
|
// Call function with "FXbool" return value
|
537
547
|
inline bool FXRbCallBoolMethod_gvlcb(FXStream* recv,const char *func){
|
538
|
-
VALUE v=rb_funcall(FXRbGetRubyObj(recv,false),rb_intern(func),0
|
548
|
+
VALUE v=rb_funcall(FXRbGetRubyObj(recv,false),rb_intern(func),0);
|
539
549
|
return (v==Qtrue);
|
540
550
|
}
|
541
551
|
|
@@ -644,6 +654,14 @@ FXuint FXRbCallUIntMethod_gvlcb(FXObject* recv, const char *func, TYPE arg){
|
|
644
654
|
return static_cast<FXuint>(NUM2UINT(v));
|
645
655
|
}
|
646
656
|
|
657
|
+
template<class TYPE1, class TYPE2, class TYPE3, class TYPE4>
|
658
|
+
FXuint FXRbCallUIntMethod_gvlcb(FXObject* recv, const char *func, TYPE1 arg1, TYPE2 arg2, TYPE3 arg3, TYPE4 arg4){
|
659
|
+
VALUE obj=FXRbGetRubyObj(recv,false);
|
660
|
+
FXASSERT(!NIL_P(obj));
|
661
|
+
VALUE v=rb_funcall(obj,rb_intern(func),4,to_ruby_cb(arg1),to_ruby_cb(arg2),to_ruby_cb(arg3),to_ruby_cb(arg4));
|
662
|
+
return static_cast<FXuint>(NUM2UINT(v));
|
663
|
+
}
|
664
|
+
|
647
665
|
// Call functions with FXString return value
|
648
666
|
FXString FXRbCallStringMethod_gvlcb(const FXObject* recv, const char *func);
|
649
667
|
|
@@ -15,16 +15,14 @@
|
|
15
15
|
#ifndef __gvl_wrappers_h
|
16
16
|
#define __gvl_wrappers_h
|
17
17
|
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
#endif
|
18
|
+
#if defined(HAVE_RB_THREAD_CALL_WITH_GVL)
|
19
|
+
extern "C" void *rb_thread_call_with_gvl(void *(*func)(void *), void *data1);
|
20
|
+
#endif
|
22
21
|
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
}
|
22
|
+
#if defined(HAVE_RB_THREAD_CALL_WITHOUT_GVL)
|
23
|
+
extern "C" void *rb_thread_call_without_gvl(void *(*func)(void *), void *data1,
|
24
|
+
rb_unblock_function_t *ubf, void *data2);
|
25
|
+
#endif
|
28
26
|
|
29
27
|
void fxrb_wakeup_fox(void *);
|
30
28
|
|
@@ -287,7 +285,7 @@ FOR_EACH_BLOCKING_FUNCTION( DEFINE_GVL_STUB_DECL )
|
|
287
285
|
|
288
286
|
#define FOR_EACH_PARAM_OF_FXRbCallVoidMethod_6(param) \
|
289
287
|
param(ID, , func) \
|
290
|
-
param(TYPE1,
|
288
|
+
param(TYPE1, &, arg1) \
|
291
289
|
param(TYPE2, , arg2) \
|
292
290
|
param(TYPE3, , arg3) \
|
293
291
|
param(TYPE4, , arg4)
|
@@ -302,7 +300,7 @@ FOR_EACH_BLOCKING_FUNCTION( DEFINE_GVL_STUB_DECL )
|
|
302
300
|
|
303
301
|
#define FOR_EACH_PARAM_OF_FXRbCallVoidMethod_8(param) \
|
304
302
|
param(ID, , func) \
|
305
|
-
param(TYPE1,
|
303
|
+
param(TYPE1, &, arg1) \
|
306
304
|
param(TYPE2, &, arg2) \
|
307
305
|
param(TYPE3, , arg3) \
|
308
306
|
param(TYPE4, , arg4) \
|
@@ -319,6 +317,17 @@ FOR_EACH_BLOCKING_FUNCTION( DEFINE_GVL_STUB_DECL )
|
|
319
317
|
param(TYPE6, , arg6) \
|
320
318
|
param(TYPE7, , arg7)
|
321
319
|
|
320
|
+
#define FOR_EACH_PARAM_OF_FXRbCallVoidMethod_10(param) \
|
321
|
+
param(ID, , func) \
|
322
|
+
param(TYPE1, &, arg1) \
|
323
|
+
param(TYPE2, , arg2) \
|
324
|
+
param(TYPE3, , arg3) \
|
325
|
+
param(TYPE4, , arg4) \
|
326
|
+
param(TYPE5, , arg5) \
|
327
|
+
param(TYPE6, , arg6) \
|
328
|
+
param(TYPE7, , arg7) \
|
329
|
+
param(TYPE8, , arg8)
|
330
|
+
|
322
331
|
#define FOR_EACH_PARAM_OF_FXRbCallVoidMethod_11(param) \
|
323
332
|
param(ID, , func) \
|
324
333
|
param(TYPE1, , arg1) \
|
@@ -387,6 +396,13 @@ FOR_EACH_BLOCKING_FUNCTION( DEFINE_GVL_STUB_DECL )
|
|
387
396
|
param(ID, , func) \
|
388
397
|
param(TYPE1, , arg1)
|
389
398
|
|
399
|
+
#define FOR_EACH_PARAM_OF_FXRbCallUIntMethod_6(param) \
|
400
|
+
param(ID, , func) \
|
401
|
+
param(TYPE1, , arg1) \
|
402
|
+
param(TYPE2, , arg2) \
|
403
|
+
param(TYPE3, , arg3) \
|
404
|
+
param(TYPE4, , arg4)
|
405
|
+
|
390
406
|
#define FOR_EACH_PARAM_OF_FXRbCallGLObjectMethod_2(param) \
|
391
407
|
param(ID, , func)
|
392
408
|
|
@@ -544,6 +560,7 @@ FOR_EACH_BLOCKING_FUNCTION( DEFINE_GVL_STUB_DECL )
|
|
544
560
|
function(FXRbCallVoidMethod, GVL_TYPE_VOID, void, RECV, recv, 7) \
|
545
561
|
function(FXRbCallVoidMethod, GVL_TYPE_VOID, void, RECV, recv, 8) \
|
546
562
|
function(FXRbCallVoidMethod, GVL_TYPE_VOID, void, RECV, recv, 9) \
|
563
|
+
function(FXRbCallVoidMethod, GVL_TYPE_VOID, void, RECV, recv, 10) \
|
547
564
|
function(FXRbCallVoidMethod, GVL_TYPE_VOID, void, RECV, recv, 11) \
|
548
565
|
function(FXRbCallBoolMethod, GVL_TYPE_NONVOID, bool, RECV, recv, 2) \
|
549
566
|
function(FXRbCallBoolMethod, GVL_TYPE_NONVOID, bool, RECV, recv, 3) \
|
@@ -556,6 +573,7 @@ FOR_EACH_BLOCKING_FUNCTION( DEFINE_GVL_STUB_DECL )
|
|
556
573
|
function(FXRbCallIntMethod, GVL_TYPE_NONVOID, FXint, RECV, recv, 7) \
|
557
574
|
function(FXRbCallLongMethod, GVL_TYPE_NONVOID, FXint, RECV, recv, 5) \
|
558
575
|
function(FXRbCallUIntMethod, GVL_TYPE_NONVOID, FXint, RECV, recv, 3) \
|
576
|
+
function(FXRbCallUIntMethod, GVL_TYPE_NONVOID, FXint, RECV, recv, 6) \
|
559
577
|
function(FXRbCallGLObjectMethod, GVL_TYPE_NONVOID, FXGLObject*, RECV, recv, 2) \
|
560
578
|
function(FXRbCallGLObjectMethod, GVL_TYPE_NONVOID, FXGLObject*, RECV, recv, 3) \
|
561
579
|
function(FXRbCallGLObjectMethod, GVL_TYPE_NONVOID, FXGLObject*, RECV, recv, 4) \
|