fxruby 1.6.48 → 1.6.49
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.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/.github/workflows/binary.yml +12 -11
- data/.github/workflows/ci.yml +25 -7
- data/Gemfile +1 -1
- data/History.md +9 -0
- data/Rakefile +15 -13
- data/appveyor.yml +1 -1
- data/doap.rdf +2 -2
- data/docs/Fox/Canvas/CanvasError.html +2 -2
- data/docs/Fox/Canvas/CircleShape.html +2 -2
- data/docs/Fox/Canvas/ImageShape.html +2 -2
- data/docs/Fox/Canvas/LineShape.html +2 -2
- data/docs/Fox/Canvas/PolygonShape.html +2 -2
- data/docs/Fox/Canvas/RectangleShape.html +2 -2
- data/docs/Fox/Canvas/SelectionPolicy.html +2 -2
- data/docs/Fox/Canvas/Shape.html +2 -2
- data/docs/Fox/Canvas/ShapeCanvas.html +2 -2
- data/docs/Fox/Canvas/ShapeGroup.html +2 -2
- data/docs/Fox/Canvas/SingleSelectionPolicy.html +2 -2
- data/docs/Fox/Canvas/TextShape.html +2 -2
- data/docs/Fox/Canvas.html +2 -2
- data/docs/Fox/FTNonModal.html +2 -2
- data/docs/Fox/FX4Splitter.html +2 -2
- data/docs/Fox/FX7Segment.html +2 -2
- data/docs/Fox/FXAccelTable.html +2 -2
- data/docs/Fox/FXApp.html +2 -2
- data/docs/Fox/FXArc.html +2 -2
- data/docs/Fox/FXArrowButton.html +2 -2
- data/docs/Fox/FXBMPIcon.html +2 -2
- data/docs/Fox/FXBMPImage.html +2 -2
- data/docs/Fox/FXBitmap.html +2 -2
- data/docs/Fox/FXBitmapFrame.html +2 -2
- data/docs/Fox/FXBitmapView.html +2 -2
- data/docs/Fox/FXButton.html +2 -2
- data/docs/Fox/FXCURCursor.html +2 -2
- data/docs/Fox/FXCalendar.html +2 -2
- data/docs/Fox/FXCanvas.html +2 -2
- data/docs/Fox/FXCheckButton.html +2 -2
- data/docs/Fox/FXChoiceBox.html +2 -2
- data/docs/Fox/FXColor.html +2 -2
- data/docs/Fox/FXColorBar.html +2 -2
- data/docs/Fox/FXColorDialog.html +2 -2
- data/docs/Fox/FXColorItem.html +2 -2
- data/docs/Fox/FXColorList.html +2 -2
- data/docs/Fox/FXColorRing.html +2 -2
- data/docs/Fox/FXColorSelector.html +2 -2
- data/docs/Fox/FXColorWell.html +2 -2
- data/docs/Fox/FXColorWheel.html +2 -2
- data/docs/Fox/FXComboBox.html +2 -2
- data/docs/Fox/FXComboTableItem.html +2 -2
- data/docs/Fox/FXCommand.html +2 -2
- data/docs/Fox/FXComposite.html +2 -2
- data/docs/Fox/FXCursor.html +2 -2
- data/docs/Fox/FXDC.html +2 -2
- data/docs/Fox/FXDCPrint.html +2 -2
- data/docs/Fox/FXDCWindow.html +2 -2
- data/docs/Fox/FXDataTarget.html +2 -2
- data/docs/Fox/FXDebugTarget.html +2 -2
- data/docs/Fox/FXDelegator.html +2 -2
- data/docs/Fox/FXDial.html +2 -2
- data/docs/Fox/FXDialogBox.html +21 -7
- data/docs/Fox/FXDict.html +2 -2
- data/docs/Fox/FXDirBox.html +2 -2
- data/docs/Fox/FXDirDialog.html +2 -2
- data/docs/Fox/FXDirItem.html +2 -2
- data/docs/Fox/FXDirList.html +2 -2
- data/docs/Fox/FXDirSelector.html +2 -2
- data/docs/Fox/FXDockBar.html +2 -2
- data/docs/Fox/FXDockHandler.html +2 -2
- data/docs/Fox/FXDockSite.html +2 -2
- data/docs/Fox/FXDockTitle.html +2 -2
- data/docs/Fox/FXDocument.html +2 -2
- data/docs/Fox/FXDragCorner.html +2 -2
- data/docs/Fox/FXDrawable.html +2 -2
- data/docs/Fox/FXDriveBox.html +2 -2
- data/docs/Fox/FXEvent.html +2 -2
- data/docs/Fox/FXExtentd.html +2 -2
- data/docs/Fox/FXExtentf.html +2 -2
- data/docs/Fox/FXFileAssoc.html +2 -2
- data/docs/Fox/FXFileDialog.html +2 -2
- data/docs/Fox/FXFileDict.html +2 -2
- data/docs/Fox/FXFileItem.html +2 -2
- data/docs/Fox/FXFileList.html +2 -2
- data/docs/Fox/FXFileSelector.html +2 -2
- data/docs/Fox/FXFileStream.html +2 -2
- data/docs/Fox/FXFoldingItem.html +2 -2
- data/docs/Fox/FXFoldingList.html +2 -2
- data/docs/Fox/FXFont.html +2 -2
- data/docs/Fox/FXFontDesc.html +2 -2
- data/docs/Fox/FXFontDialog.html +2 -2
- data/docs/Fox/FXFontSelector.html +2 -2
- data/docs/Fox/FXFrame.html +2 -2
- data/docs/Fox/FXGIFCursor.html +2 -2
- data/docs/Fox/FXGIFIcon.html +2 -2
- data/docs/Fox/FXGIFImage.html +2 -2
- data/docs/Fox/FXGLCanvas.html +2 -2
- data/docs/Fox/FXGLCone.html +2 -2
- data/docs/Fox/FXGLContext.html +2 -2
- data/docs/Fox/FXGLCube.html +2 -2
- data/docs/Fox/FXGLCylinder.html +2 -2
- data/docs/Fox/FXGLGroup.html +2 -2
- data/docs/Fox/FXGLLine.html +2 -2
- data/docs/Fox/FXGLObject.html +2 -2
- data/docs/Fox/FXGLPoint.html +2 -2
- data/docs/Fox/FXGLShape.html +2 -2
- data/docs/Fox/FXGLSphere.html +2 -2
- data/docs/Fox/FXGLViewer.html +2 -2
- data/docs/Fox/FXGLVisual.html +2 -2
- data/docs/Fox/FXGradient.html +2 -2
- data/docs/Fox/FXGradientBar.html +2 -2
- data/docs/Fox/FXGroupBox.html +2 -2
- data/docs/Fox/FXHeader.html +2 -2
- data/docs/Fox/FXHeaderItem.html +2 -2
- data/docs/Fox/FXHiliteStyle.html +2 -2
- data/docs/Fox/FXHorizontalFrame.html +2 -2
- data/docs/Fox/FXHorizontalSeparator.html +2 -2
- data/docs/Fox/FXICOIcon.html +2 -2
- data/docs/Fox/FXICOImage.html +2 -2
- data/docs/Fox/FXIcon.html +2 -2
- data/docs/Fox/FXIconDict.html +2 -2
- data/docs/Fox/FXIconItem.html +2 -2
- data/docs/Fox/FXIconList.html +2 -2
- data/docs/Fox/FXIconSource.html +2 -2
- data/docs/Fox/FXId.html +2 -2
- data/docs/Fox/FXImage.html +2 -2
- data/docs/Fox/FXImageFrame.html +2 -2
- data/docs/Fox/FXImageView.html +2 -2
- data/docs/Fox/FXInputDialog.html +2 -2
- data/docs/Fox/FXIrb.html +2 -2
- data/docs/Fox/FXJPGIcon.html +2 -2
- data/docs/Fox/FXJPGImage.html +2 -2
- data/docs/Fox/FXKnob.html +2 -2
- data/docs/Fox/FXLabel.html +2 -2
- data/docs/Fox/FXLight.html +2 -2
- data/docs/Fox/FXList.html +2 -2
- data/docs/Fox/FXListBox.html +2 -2
- data/docs/Fox/FXListItem.html +2 -2
- data/docs/Fox/FXMDIChild.html +2 -2
- data/docs/Fox/FXMDIClient.html +2 -2
- data/docs/Fox/FXMDIDeleteButton.html +2 -2
- data/docs/Fox/FXMDIMaximizeButton.html +2 -2
- data/docs/Fox/FXMDIMenu.html +2 -2
- data/docs/Fox/FXMDIMinimizeButton.html +2 -2
- data/docs/Fox/FXMDIRestoreButton.html +2 -2
- data/docs/Fox/FXMDIWindowButton.html +2 -2
- data/docs/Fox/FXMainWindow.html +2 -2
- data/docs/Fox/FXMaterial.html +2 -2
- data/docs/Fox/FXMatrix.html +2 -2
- data/docs/Fox/FXMemoryBuffer.html +2 -2
- data/docs/Fox/FXMemoryStream.html +2 -2
- data/docs/Fox/FXMenuBar.html +2 -2
- data/docs/Fox/FXMenuButton.html +2 -2
- data/docs/Fox/FXMenuCaption.html +2 -2
- data/docs/Fox/FXMenuCascade.html +2 -2
- data/docs/Fox/FXMenuCheck.html +2 -2
- data/docs/Fox/FXMenuCommand.html +2 -2
- data/docs/Fox/FXMenuPane.html +2 -2
- data/docs/Fox/FXMenuRadio.html +2 -2
- data/docs/Fox/FXMenuSeparator.html +2 -2
- data/docs/Fox/FXMenuTitle.html +2 -2
- data/docs/Fox/FXMessageBox.html +2 -2
- data/docs/Fox/FXObject.html +2 -2
- data/docs/Fox/FXOption.html +2 -2
- data/docs/Fox/FXOptionMenu.html +2 -2
- data/docs/Fox/FXPCXIcon.html +2 -2
- data/docs/Fox/FXPCXImage.html +2 -2
- data/docs/Fox/FXPNGIcon.html +2 -2
- data/docs/Fox/FXPNGImage.html +2 -2
- data/docs/Fox/FXPPMIcon.html +2 -2
- data/docs/Fox/FXPPMImage.html +2 -2
- data/docs/Fox/FXPSBounds.html +2 -2
- data/docs/Fox/FXPacker.html +2 -2
- data/docs/Fox/FXPicker.html +2 -2
- data/docs/Fox/FXPopup.html +2 -2
- data/docs/Fox/FXPrintDialog.html +2 -2
- data/docs/Fox/FXPrinter.html +2 -2
- data/docs/Fox/FXProgressBar.html +2 -2
- data/docs/Fox/FXProgressDialog.html +2 -2
- data/docs/Fox/FXPseudoKeyboard.html +2 -2
- data/docs/Fox/FXPseudoMouse.html +2 -2
- data/docs/Fox/FXPseudoTarget.html +2 -2
- data/docs/Fox/FXQuatd.html +2 -2
- data/docs/Fox/FXQuatf.html +2 -2
- data/docs/Fox/FXRGBIcon.html +2 -2
- data/docs/Fox/FXRGBImage.html +2 -2
- data/docs/Fox/FXRadioButton.html +2 -2
- data/docs/Fox/FXRanged.html +2 -2
- data/docs/Fox/FXRangef.html +2 -2
- data/docs/Fox/FXRealSlider.html +2 -2
- data/docs/Fox/FXRealSpinner.html +2 -2
- data/docs/Fox/FXRecentFiles.html +2 -2
- data/docs/Fox/FXRectangle.html +2 -2
- data/docs/Fox/FXRegion.html +2 -2
- data/docs/Fox/FXRegistry.html +2 -2
- data/docs/Fox/FXReplaceDialog.html +2 -2
- data/docs/Fox/FXRootWindow.html +2 -2
- data/docs/Fox/FXRuler.html +2 -2
- data/docs/Fox/FXRulerView.html +2 -2
- data/docs/Fox/FXScintilla.html +2 -2
- data/docs/Fox/FXScrollArea.html +2 -2
- data/docs/Fox/FXScrollBar.html +2 -2
- data/docs/Fox/FXScrollCorner.html +2 -2
- data/docs/Fox/FXScrollPane.html +2 -2
- data/docs/Fox/FXScrollWindow.html +2 -2
- data/docs/Fox/FXSearchDialog.html +2 -2
- data/docs/Fox/FXSegment.html +2 -2
- data/docs/Fox/FXSeparator.html +2 -2
- data/docs/Fox/FXSettings.html +2 -2
- data/docs/Fox/FXShell.html +2 -2
- data/docs/Fox/FXShutter.html +2 -2
- data/docs/Fox/FXShutterItem.html +2 -2
- data/docs/Fox/FXSize.html +2 -2
- data/docs/Fox/FXSlider.html +2 -2
- data/docs/Fox/FXSphered.html +2 -2
- data/docs/Fox/FXSpheref.html +2 -2
- data/docs/Fox/FXSpinner.html +2 -2
- data/docs/Fox/FXSplashScreen.html +2 -2
- data/docs/Fox/FXSplashWindow.html +2 -2
- data/docs/Fox/FXSplitter.html +2 -2
- data/docs/Fox/FXSpring.html +2 -2
- data/docs/Fox/FXStatusBar.html +2 -2
- data/docs/Fox/FXStatusLine.html +2 -2
- data/docs/Fox/FXStream.html +2 -2
- data/docs/Fox/FXStreamAllocError.html +2 -2
- data/docs/Fox/FXStreamEndError.html +2 -2
- data/docs/Fox/FXStreamError.html +2 -2
- data/docs/Fox/FXStreamFailureError.html +2 -2
- data/docs/Fox/FXStreamFormatError.html +2 -2
- data/docs/Fox/FXStreamFullError.html +2 -2
- data/docs/Fox/FXStreamNoReadError.html +2 -2
- data/docs/Fox/FXStreamNoWriteError.html +2 -2
- data/docs/Fox/FXStreamUnknownError.html +2 -2
- data/docs/Fox/FXStringDict.html +2 -2
- data/docs/Fox/FXSwitcher.html +2 -2
- data/docs/Fox/FXTGAIcon.html +2 -2
- data/docs/Fox/FXTGAImage.html +2 -2
- data/docs/Fox/FXTIFIcon.html +2 -2
- data/docs/Fox/FXTIFImage.html +2 -2
- data/docs/Fox/FXTabBar.html +2 -2
- data/docs/Fox/FXTabBook.html +2 -2
- data/docs/Fox/FXTabItem.html +2 -2
- data/docs/Fox/FXTable.html +2 -2
- data/docs/Fox/FXTableItem.html +2 -2
- data/docs/Fox/FXTablePos.html +2 -2
- data/docs/Fox/FXTableRange.html +2 -2
- data/docs/Fox/FXText.html +2 -2
- data/docs/Fox/FXTextChange.html +2 -2
- data/docs/Fox/FXTextField.html +2 -2
- data/docs/Fox/FXToggleButton.html +2 -2
- data/docs/Fox/FXToolBar.html +2 -2
- data/docs/Fox/FXToolBarGrip.html +2 -2
- data/docs/Fox/FXToolBarShell.html +2 -2
- data/docs/Fox/FXToolBarTab.html +2 -2
- data/docs/Fox/FXToolTip.html +2 -2
- data/docs/Fox/FXTopWindow.html +6 -9
- data/docs/Fox/FXTranslator.html +2 -2
- data/docs/Fox/FXTreeItem.html +2 -2
- data/docs/Fox/FXTreeList.html +2 -2
- data/docs/Fox/FXTreeListBox.html +2 -2
- data/docs/Fox/FXTriStateButton.html +2 -2
- data/docs/Fox/FXUndoList.html +2 -2
- data/docs/Fox/FXVec2d.html +2 -2
- data/docs/Fox/FXVec2f.html +2 -2
- data/docs/Fox/FXVec3d.html +2 -2
- data/docs/Fox/FXVec3f.html +2 -2
- data/docs/Fox/FXVec4d.html +2 -2
- data/docs/Fox/FXVec4f.html +2 -2
- data/docs/Fox/FXVerticalFrame.html +2 -2
- data/docs/Fox/FXVerticalSeparator.html +2 -2
- data/docs/Fox/FXViewport.html +2 -2
- data/docs/Fox/FXVisual.html +2 -2
- data/docs/Fox/FXWindow.html +3 -3
- data/docs/Fox/FXWizard.html +2 -2
- data/docs/Fox/FXXBMIcon.html +2 -2
- data/docs/Fox/FXXBMImage.html +2 -2
- data/docs/Fox/FXXPMIcon.html +2 -2
- data/docs/Fox/FXXPMImage.html +2 -2
- data/docs/Fox/NotifyHeader.html +2 -2
- data/docs/Fox/SCNotification.html +2 -2
- data/docs/Fox/TextRange.html +2 -2
- data/docs/Fox.html +3 -3
- data/docs/IRB.html +2 -2
- data/docs/Responder.html +2 -2
- data/docs/Responder2.html +2 -2
- data/docs/_index.html +2 -2
- data/docs/class_list.html +6 -3
- data/docs/css/full_list.css +3 -3
- data/docs/css/style.css +6 -0
- data/docs/file.History.html +21 -3
- data/docs/file.README.html +2 -2
- data/docs/file_list.html +5 -2
- data/docs/frames.html +9 -4
- data/docs/index.html +3 -3
- data/docs/js/app.js +294 -264
- data/docs/js/full_list.js +30 -4
- data/docs/method_list.html +5 -2
- data/docs/top-level-namespace.html +2 -2
- data/ext/fox16_c/extconf.rb +32 -17
- data/ext/fox16_c/scintilla_wrap.cpp +8 -1
- data/fxruby.gemspec +2 -2
- data/lib/fox16/scintilla.rb +750 -22
- data/lib/fox16/version.rb +1 -1
- data/rdoc-sources/FXDialogBox.rb +12 -0
- data/rdoc-sources/FXToolTip.rb +1 -1
- data/rdoc-sources/FXTopWindow.rb +1 -1
- data/rdoc-sources/FXWindow.rb +1 -1
- data/swig-interfaces/FXScintilla.i +8 -1
- data/test/TC_FXApp.rb +2 -1
- data/test/TC_FXButton.rb +2 -1
- data/test/TC_FXDialogBox.rb +2 -1
- data/test/TC_FXGLViewer.rb +2 -1
- data/test/TC_FXMainWindow.rb +2 -1
- data/test/TC_FXMessageBox.rb +2 -1
- data/test/TC_FXScrollArea.rb +2 -1
- data/test/TC_FXShell.rb +2 -1
- data/test/TC_FXSize.rb +4 -2
- data.tar.gz.sig +0 -0
- metadata +16 -16
- metadata.gz.sig +0 -0
data/docs/js/full_list.js
CHANGED
@@ -62,8 +62,25 @@ function enableToggles() {
|
|
62
62
|
evt.stopPropagation();
|
63
63
|
evt.preventDefault();
|
64
64
|
$(this).parent().parent().toggleClass('collapsed');
|
65
|
+
$(this).attr('aria-expanded', function (i, attr) {
|
66
|
+
return attr == 'true' ? 'false' : 'true'
|
67
|
+
});
|
65
68
|
highlight();
|
66
69
|
});
|
70
|
+
|
71
|
+
// navigation of nested classes using keyboard
|
72
|
+
$('#full_list a.toggle').on('keypress',function(evt) {
|
73
|
+
// enter key is pressed
|
74
|
+
if (evt.which == 13) {
|
75
|
+
evt.stopPropagation();
|
76
|
+
evt.preventDefault();
|
77
|
+
$(this).parent().parent().toggleClass('collapsed');
|
78
|
+
$(this).attr('aria-expanded', function (i, attr) {
|
79
|
+
return attr == 'true' ? 'false' : 'true'
|
80
|
+
});
|
81
|
+
highlight();
|
82
|
+
}
|
83
|
+
});
|
67
84
|
}
|
68
85
|
|
69
86
|
function populateSearchCache() {
|
@@ -91,7 +108,7 @@ function enableSearch() {
|
|
91
108
|
}
|
92
109
|
});
|
93
110
|
|
94
|
-
$('#full_list').after("<div id='noresults' style='display:none'></div>");
|
111
|
+
$('#full_list').after("<div id='noresults' role='status' style='display: none'></div>");
|
95
112
|
}
|
96
113
|
|
97
114
|
function ignoredKeyPress(event) {
|
@@ -154,11 +171,14 @@ function partialSearch(searchString, offset) {
|
|
154
171
|
function searchDone() {
|
155
172
|
searchTimeout = null;
|
156
173
|
highlight();
|
157
|
-
|
158
|
-
|
174
|
+
var found = $('#full_list li:visible').size();
|
175
|
+
if (found === 0) {
|
176
|
+
$('#noresults').text('No results were found.');
|
159
177
|
} else {
|
160
|
-
|
178
|
+
// This is read out to screen readers
|
179
|
+
$('#noresults').text('There are ' + found + ' results.');
|
161
180
|
}
|
181
|
+
$('#noresults').show();
|
162
182
|
$('#content').removeClass('insearch');
|
163
183
|
}
|
164
184
|
|
@@ -188,6 +208,12 @@ function expandTo(path) {
|
|
188
208
|
$target.addClass('clicked');
|
189
209
|
$target.removeClass('collapsed');
|
190
210
|
$target.parentsUntil('#full_list', 'li').removeClass('collapsed');
|
211
|
+
|
212
|
+
$target.find('a.toggle').attr('aria-expanded', 'true')
|
213
|
+
$target.parentsUntil('#full_list', 'li').each(function(i, el) {
|
214
|
+
$(el).find('> div > a.toggle').attr('aria-expanded', 'true');
|
215
|
+
});
|
216
|
+
|
191
217
|
if($target[0]) {
|
192
218
|
window.scrollTo(window.scrollX, $target.offset().top - 250);
|
193
219
|
highlight();
|
data/docs/method_list.html
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
<!DOCTYPE html>
|
2
|
-
<html>
|
2
|
+
<html >
|
3
3
|
<head>
|
4
4
|
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
5
5
|
<meta charset="utf-8" />
|
@@ -38,7 +38,10 @@
|
|
38
38
|
|
39
39
|
</div>
|
40
40
|
|
41
|
-
<div id="search">
|
41
|
+
<div id="search">
|
42
|
+
<label for="search-class">Search:</label>
|
43
|
+
<input id="search-class" type="text" />
|
44
|
+
</div>
|
42
45
|
</div>
|
43
46
|
|
44
47
|
<ul id="full_list" class="method">
|
@@ -204,9 +204,9 @@
|
|
204
204
|
</div>
|
205
205
|
|
206
206
|
<div id="footer">
|
207
|
-
Generated on
|
207
|
+
Generated on Tue Mar 11 16:01:29 2025 by
|
208
208
|
<a href="https://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
209
|
-
0.9.
|
209
|
+
0.9.37 (ruby-3.5.0).
|
210
210
|
</div>
|
211
211
|
|
212
212
|
</div>
|
data/ext/fox16_c/extconf.rb
CHANGED
@@ -23,26 +23,26 @@ end
|
|
23
23
|
LIBZ_VERSION = ENV['LIBZ_VERSION'] || '1.3.1'
|
24
24
|
LIBZ_SOURCE_URI = "http://zlib.net/fossils/zlib-#{LIBZ_VERSION}.tar.gz"
|
25
25
|
|
26
|
-
LIBPNG_VERSION = ENV['LIBPNG_VERSION'] || '1.6.
|
26
|
+
LIBPNG_VERSION = ENV['LIBPNG_VERSION'] || '1.6.50'
|
27
27
|
# LIBPNG_SOURCE_URI = "http://prdownloads.sourceforge.net/libpng/libpng-#{LIBPNG_VERSION}.tar.gz"
|
28
28
|
LIBPNG_SOURCE_URI = "https://netcologne.dl.sourceforge.net/project/libpng/libpng16/#{LIBPNG_VERSION}/libpng-#{LIBPNG_VERSION}.tar.xz"
|
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'] || '3.
|
33
|
+
LIBJPEG_VERSION = ENV['LIBJPEG_VERSION'] || '3.1.1'
|
34
34
|
LIBJPEG_SOURCE_URI = "https://github.com/libjpeg-turbo/libjpeg-turbo/releases/download/#{LIBJPEG_VERSION}/libjpeg-turbo-#{LIBJPEG_VERSION}.tar.gz"
|
35
35
|
|
36
|
-
LIBTIFF_VERSION = ENV['LIBTIFF_VERSION'] || '4.
|
36
|
+
LIBTIFF_VERSION = ENV['LIBTIFF_VERSION'] || '4.7.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.
|
39
|
+
LIBFOX_VERSION = ENV['LIBFOX_VERSION'] || '1.6.59'
|
40
40
|
LIBFOX_SOURCE_URI = "http://fox-toolkit.org/ftp/fox-#{LIBFOX_VERSION}.tar.gz"
|
41
41
|
|
42
|
-
LIBFXSCINTILLA_VERSION = ENV['LIBFXSCINTILLA_VERSION'] || '2.28.0'
|
43
|
-
LIBFXSCINTILLA_SOURCE_URI = "http://download.savannah.gnu.org/releases/fxscintilla/fxscintilla-#{LIBFXSCINTILLA_VERSION}.tar.gz"
|
44
|
-
|
45
|
-
|
42
|
+
# LIBFXSCINTILLA_VERSION = ENV['LIBFXSCINTILLA_VERSION'] || '2.28.0'
|
43
|
+
# LIBFXSCINTILLA_SOURCE_URI = "http://download.savannah.gnu.org/releases/fxscintilla/fxscintilla-#{LIBFXSCINTILLA_VERSION}.tar.gz"
|
44
|
+
LIBFXSCINTILLA_VERSION = ENV['LIBFXSCINTILLA_VERSION'] || '3.5.2'
|
45
|
+
LIBFXSCINTILLA_SOURCE_URI = "https://github.com/yetanothergeek/fxscintilla/archive/FXSCINTILLA-#{LIBFXSCINTILLA_VERSION.gsub(".","_")}.tar.gz"
|
46
46
|
|
47
47
|
module BuildRecipeCommons
|
48
48
|
def initialize(name, version, files)
|
@@ -51,7 +51,7 @@ module BuildRecipeCommons
|
|
51
51
|
rootdir = File.expand_path('../../..', __FILE__)
|
52
52
|
self.target = File.join(rootdir, "ports")
|
53
53
|
self.host = RbConfig::CONFIG["CC"].match(/(.*)-/)[1]
|
54
|
-
self.patch_files = Dir[File.join(rootdir, "patches", self.name, self.version, "*.
|
54
|
+
self.patch_files = Dir[File.join(rootdir, "patches", self.name, self.version, "*.patch")].sort
|
55
55
|
end
|
56
56
|
|
57
57
|
def port_path
|
@@ -87,6 +87,7 @@ class BuildRecipe < MiniPortile
|
|
87
87
|
def configure_defaults
|
88
88
|
[
|
89
89
|
"--host=#{host}", # build for specific target (host)
|
90
|
+
"--build=x86_64-linux-gnu", # workaround old config.guess of fxscintilla not recognizing aarch64 host platform
|
90
91
|
"--disable-static",
|
91
92
|
"--enable-shared",
|
92
93
|
]
|
@@ -99,6 +100,7 @@ class BuildRecipeCMake < MiniPortileCMake
|
|
99
100
|
case host
|
100
101
|
when /x86_64/ then "amd64"
|
101
102
|
when /i686/ then "x86"
|
103
|
+
when /aarch64/ then "aarch64"
|
102
104
|
else raise "unknown host #{host}"
|
103
105
|
end
|
104
106
|
end
|
@@ -169,6 +171,11 @@ def do_rake_compiler_setup
|
|
169
171
|
end
|
170
172
|
|
171
173
|
libtiff_recipe = BuildRecipe.new("libtiff", LIBTIFF_VERSION, [LIBTIFF_SOURCE_URI]).tap do |recipe|
|
174
|
+
if RUBY_PLATFORM=~/aarch64-mingw/
|
175
|
+
recipe.configure_options += [
|
176
|
+
"LDFLAGS=-lclang_rt.builtins-aarch64",
|
177
|
+
]
|
178
|
+
end
|
172
179
|
recipe.cook_and_activate
|
173
180
|
end
|
174
181
|
|
@@ -178,8 +185,8 @@ def do_rake_compiler_setup
|
|
178
185
|
"--without-xft",
|
179
186
|
"--without-x",
|
180
187
|
debug ? "--enable-debug" : "--enable-release",
|
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" : ""} -D__USE_MINGW_ANSI_STDIO=1 -DHAVE_VSSCANF",
|
182
|
-
"LDFLAGS=-L#{libjpeg_recipe.path}/lib -L#{libpng_recipe.path}/lib -L#{libtiff_recipe.path}/lib -L#{libz_recipe.path}/lib #{debug ? "-ggdb" : ""}",
|
188
|
+
"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" : ""} -D__USE_MINGW_ANSI_STDIO=1 -DHAVE_VSSCANF -Wno-register",
|
189
|
+
"LDFLAGS=-L#{libjpeg_recipe.path}/lib -L#{libpng_recipe.path}/lib -L#{libtiff_recipe.path}/lib -L#{libz_recipe.path}/lib #{debug ? "-ggdb" : ""} #{"-lclang_rt.builtins-aarch64" if RUBY_PLATFORM=~/aarch64-mingw/}",
|
183
190
|
]
|
184
191
|
recipe.cook_and_activate
|
185
192
|
end
|
@@ -191,17 +198,18 @@ def do_rake_compiler_setup
|
|
191
198
|
"#{ENV['MAKE'] || "make"}"
|
192
199
|
end
|
193
200
|
|
194
|
-
|
195
|
-
#
|
196
|
-
|
197
|
-
|
198
|
-
|
201
|
+
def configure
|
202
|
+
# This is necessary when fxscintilla is used from the github repository.
|
203
|
+
execute "bootstrap", "./bootstrap.sh"
|
204
|
+
|
205
|
+
super
|
206
|
+
end
|
199
207
|
|
200
208
|
def compile
|
201
209
|
execute "compile_lexers", "cd lexers && #{mk}"
|
202
210
|
execute "compile_lexlib", "cd lexlib && #{mk}"
|
203
211
|
execute "compile_src", "cd src && #{mk}"
|
204
|
-
execute "compile_fox", "cd fox && #{mk} libfxscintilla_la_LDFLAGS='-version-info
|
212
|
+
execute "compile_fox", "cd fox && #{mk} libfxscintilla_la_LDFLAGS='-version-info 25:0:0 -export-dynamic -no-undefined -L#{libfox_path}/lib -lFOX-1.6'"
|
205
213
|
end
|
206
214
|
|
207
215
|
def install
|
@@ -212,6 +220,10 @@ def do_rake_compiler_setup
|
|
212
220
|
|
213
221
|
recipe.configure_options += [
|
214
222
|
"PKG_CONFIG_PATH=#{libfox_recipe.path}/lib/pkgconfig",
|
223
|
+
# Fix undefined symbol __chkstk:
|
224
|
+
"LDFLAGS=#{"-lclang_rt.builtins-aarch64" if RUBY_PLATFORM=~/aarch64-mingw/}",
|
225
|
+
# Avoid gcc error: fxscintilla-FXSCINTILLA-3_5_2/fox/PlatFOX.cxx:1034: undefined reference to `_imp___ZN11FXScintilla11sendMessageEjml'
|
226
|
+
"CPPFLAGS=-DFOXDLL_EXPORTS",
|
215
227
|
]
|
216
228
|
recipe.cook_and_activate
|
217
229
|
end
|
@@ -294,6 +306,9 @@ dir_config('fox', '/usr/local/include/fox-1.6', '/usr/local/lib')
|
|
294
306
|
dir_config('fxscintilla', '/usr/local/include/fxscintilla', '/usr/local/lib')
|
295
307
|
|
296
308
|
unless enable_config("win32-cross")
|
309
|
+
if RUBY_PLATFORM =~ /^arm64-darwin/
|
310
|
+
dir_config('x11', '/opt/homebrew/include', '/opt/homebrew/lib')
|
311
|
+
end
|
297
312
|
checking_for "fox per pkg-config" do
|
298
313
|
pkg_config("fox")
|
299
314
|
end
|
@@ -7113,7 +7113,14 @@ SWIGEXPORT void Init_scintilla(void) {
|
|
7113
7113
|
SWIG_TypeClientData(SWIGTYPE_p_FXScintilla, (void *) &SwigClassFXScintilla);
|
7114
7114
|
rb_define_alloc_func(SwigClassFXScintilla.klass, _wrap_FXScintilla_allocate);
|
7115
7115
|
rb_define_method(SwigClassFXScintilla.klass, "initialize", VALUEFUNC(_wrap_new_FXScintilla), -1);
|
7116
|
-
rb_define_const(SwigClassFXScintilla.klass, "
|
7116
|
+
rb_define_const(SwigClassFXScintilla.klass, "ID_TICK_CARET", SWIG_From_int(static_cast< int >(FXScintilla::ID_TICK_CARET)));
|
7117
|
+
rb_define_const(SwigClassFXScintilla.klass, "ID_TICK_SCROLL", SWIG_From_int(static_cast< int >(FXScintilla::ID_TICK_SCROLL)));
|
7118
|
+
rb_define_const(SwigClassFXScintilla.klass, "ID_TICK_WIDEN", SWIG_From_int(static_cast< int >(FXScintilla::ID_TICK_WIDEN)));
|
7119
|
+
rb_define_const(SwigClassFXScintilla.klass, "ID_TICK_DWELL", SWIG_From_int(static_cast< int >(FXScintilla::ID_TICK_DWELL)));
|
7120
|
+
rb_define_const(SwigClassFXScintilla.klass, "ID_TICK_PLATFORM", SWIG_From_int(static_cast< int >(FXScintilla::ID_TICK_PLATFORM)));
|
7121
|
+
rb_define_const(SwigClassFXScintilla.klass, "ID_IDLE", SWIG_From_int(static_cast< int >(FXScintilla::ID_IDLE)));
|
7122
|
+
rb_define_const(SwigClassFXScintilla.klass, "ID_STYLE_IDLE", SWIG_From_int(static_cast< int >(FXScintilla::ID_STYLE_IDLE)));
|
7123
|
+
rb_define_const(SwigClassFXScintilla.klass, "ID_LAST", SWIG_From_int(static_cast< int >(FXScintilla::ID_LAST)));
|
7117
7124
|
rb_define_method(SwigClassFXScintilla.klass, "onScintillaCommand", VALUEFUNC(_wrap_FXScintilla_onScintillaCommand), -1);
|
7118
7125
|
rb_define_method(SwigClassFXScintilla.klass, "onPaint", VALUEFUNC(_wrap_FXScintilla_onPaint), -1);
|
7119
7126
|
rb_define_method(SwigClassFXScintilla.klass, "onConfigure", VALUEFUNC(_wrap_FXScintilla_onConfigure), -1);
|
data/fxruby.gemspec
CHANGED
@@ -32,7 +32,7 @@ Gem::Specification.new do |spec|
|
|
32
32
|
|
33
33
|
spec.summary = %q{FXRuby is the Ruby binding to the FOX GUI toolkit.}
|
34
34
|
spec.homepage = "https://github.com/larskanis/fxruby"
|
35
|
-
spec.license = 'LGPL-2.1'
|
35
|
+
spec.license = 'LGPL-2.1-or-later'
|
36
36
|
spec.metadata["changelog_uri"] = "https://github.com/larskanis/fxruby/blob/1.6/History.md"
|
37
37
|
spec.metadata["documentation_uri"] = "https://rubydoc.info/gems/fxruby/frames"
|
38
38
|
|
@@ -50,7 +50,7 @@ Gem::Specification.new do |spec|
|
|
50
50
|
spec.require_paths = ["lib"]
|
51
51
|
spec.extensions = ["ext/fox16_c/extconf.rb"]
|
52
52
|
spec.metadata['msys2_mingw_dependencies'] = 'fox'
|
53
|
-
spec.required_ruby_version = [">= 2.
|
53
|
+
spec.required_ruby_version = [">= 2.7", "< 4"]
|
54
54
|
|
55
55
|
spec.add_runtime_dependency 'mini_portile2', '~> 2.1'
|
56
56
|
|