1.6.45 / 2022-01-14
+-
+
Add binary gem support for ruby-3.1 on platform x64-mingw-ucrt and drop ruby-2.3.
+ -
+
Update to libz-1.2.11, libjpeg-turbo-2.1.2, libtiff-4.3.0 for Windows binary gems.
+
1.6.44 / 2020-12-31
+-
+
Add binary gem support for ruby-3.0. #66
+ -
+
Drop support for ruby-2.2
+
1.6.43 / 2020-11-27
-
Make FXRuby compatible to ruby-3.0
@@ -184,7 +198,7 @@-
Avoid rb_* calls that are prohibited during GC. Fixes #23
-
-
Use copy'ing getters for FXVec members in FXMat*, FXMaterial and FXLight. This fixes the TC_FXMaterial#test_bug test case.
+Use copy’ing getters for FXVec members in FXMat*, FXMaterial and FXLight. This fixes the TC_FXMaterial#test_bug test case.
-
Fix test suite, so that all tests pass.
- @@ -197,7 +211,7 @@
-
Use release mode, unless extconf.rb is called with –enable-debug, so that all FXTRACE() and FXASSERT() calls are skiped, per default.
-
-
Remove self made GC detection by ruby's rb_during_gc().
+Remove self made GC detection by ruby’s rb_during_gc().
-
Fix Windows binary x86-mingw32.gem for Ruby versions < 2.0
-
Fix crashes in rb_gc_mark(): 0x00000003f54af8 is T_ZOMBIE / T_NONE
-
-
Release Ruby's GVL while calls to FXImage#savePixels, #loadPixels and FXApp#run* methods.
+Release Ruby’s GVL while calls to FXImage#savePixels, #loadPixels and FXApp#run* methods.
-
Add a working version for FXApp#addInput event handling on Windows. This works for sockets only for now.
- @@ -228,13 +242,13 @@
-
Use shared libs for Windows binary gems to reduce gem size.
-
-
Allow non owned assignment of image data to FXImage derivations without copy'ing pixel data.
+Allow non owned assignment of image data to FXImage derivations without copy’ing pixel data.
-
Allow retrival of parts of the pixel data.
-
Fix namespace specifier for FXRGB in kwargs.rb.
-
-
Change GC'ing of TreeListBox and FXTreeItem. Fixes #10
+Change GC’ing of TreeListBox and FXTreeItem. Fixes #10
-
Update to swig version 2.0 or newer. Fixes #13
-
-
Fix double referenced foxObj when borrowed object registration is triggered from C++
-
-
Fix Segfault while GC'ing FXWindows
- -
-
Fix 'object allocation not allowed while garbage collection' bug
+Fix Segfault while GC’ing FXWindows
+ -
+
Fix ‘object allocation not allowed while garbage collection’ bug
-
Fix clipboard handling on windows
- @@ -326,16 +340,16 @@
-
Did some work to provide support for MinGW builds.
-
-
The previous release of FXRuby couldn't be built from source against Ruby 1.9.1 final due to a change in some of the file-related utility libraries (see RubyForge Bug #23786). This problem has been corrected.
+The previous release of FXRuby couldn’t be built from source against Ruby 1.9.1 final due to a change in some of the file-related utility libraries (see RubyForge Bug #23786). This problem has been corrected.
Changes For Version 1.6.19 (March 6, 2009)
-
-
The previous release of FXRuby couldn't be built from source against Ruby 1.9.1 final due to a change in some of the file-related utility libraries (see RubyForge Bug #23786). This problem has been corrected.
- -
-
The previous release of FXRuby couldn't be built from source against Ruby versions 1.8.5 or earlier (see RubyForge Bug #23967). This problem has been corrected.
- -
-
A change in the return value for Ruby's
+instance_variables
method broke some of the code related to message handling in FXRuby (see RubyForge Bug #23787). This problem has been corrected.The previous release of FXRuby couldn’t be built from source against Ruby 1.9.1 final due to a change in some of the file-related utility libraries (see RubyForge Bug #23786). This problem has been corrected.
+ -
+
The previous release of FXRuby couldn’t be built from source against Ruby versions 1.8.5 or earlier (see RubyForge Bug #23967). This problem has been corrected.
+ -
+
A change in the return value for Ruby’s
instance_variables
method broke some of the code related to message handling in FXRuby (see RubyForge Bug #23787). This problem has been corrected. -
The
addAccel
method for theFXAccelTable
class now accepts lambda functions (or any other objects that respond tocall
). See the API documentation forFXAccelTable
for examples of how this works.
-
The Ruby interpreter was generating a large number of warning messages about redefined methods in the
kwargs.rb
library (see RubyForge Bug #19231 and elsewhere). This problem has been corrected. -
-
Due to recent changes in Ruby's garbage collection algorithm, FXRuby applications could under some circumstances crash for large numbers of table items (see RubyForge bugs ). This bug has been fixed.
+Due to recent changes in Ruby's garbage collection algorithm, FXRuby applications could under some circumstances crash for large numbers of table items (see RubyForge bugs ). This bug has been fixed.
-
The documentation for the
FXTable
class referred to the non-existentsetColumnX
andsetRowY
instance methods (see RubyForge Bug #21987). These entries have been removed from the documentation. -
-
A number of instance methods for the
+FXTable
class could crash an application if they were passed out-of-bounds index arguments (see RubyForge Bug #21987). These methods now raiseIndexError
when they're passed out-of-bounds indexes.A number of instance methods for the
FXTable
class could crash an application if they were passed out-of-bounds index arguments (see RubyForge Bug #21987). These methods now raiseIndexError
when they're passed out-of-bounds indexes. -
Due to a change in the URL scheme for the Dilbert web site, the
dilbert.rb
example program was no longer working properly (see RubyForge Bug #21538). This has been fixed. -
-
The
+lower
method for theFXRangef
was returning ´self´ instead of anFXVec3f
instance for the range's low bound (see RubyForge Bug #22488). This has been fixed.The
lower
method for theFXRangef
was returning ´self´ instead of anFXVec3f
instance for the range’s low bound (see RubyForge Bug #22488). This has been fixed. -
Made a number of minor fixes for compatibility with Ruby 1.9.1.
-
Historically, if you called
create
on a window before its parent window was created, your application would crash (see RubyForge Bug #20702 and elsewhere). Now, the code should raise a ´RuntimeError´ with a message indicating the problem. -
-
The message data that the
+FXPicker
widget sends along with its ´SEL_CHANGED´ and ´SEL_COMMAND´ messages wasn't being handled properly, and as a result, applications using this widget could crash (see RubyForge Bug #20780). This problem has been fixed.The message data that the
FXPicker
widget sends along with its ´SEL_CHANGED´ and ´SEL_COMMAND´ messages wasn’t being handled properly, and as a result, applications using this widget could crash (see RubyForge Bug #20780). This problem has been fixed.
Changes For Version 1.6.15 (June 4, 2008)
@@ -375,13 +389,13 @@You should only ever construct one FXApp
object per application, but there was no protection against doing so in the code (see RubyForge Bug #16275). Now, FXApp.new
will raise a RuntimeException
if an FXApp
object already exists.
The babelfish.rb
example program, which previously depended on an external web service to perform translation between languages, was broken since that web service no longer exists (see RubyForge Bug #16962). The example has now been updated to use Dr. Nic's Tranexp library instead.
The value of the ´MBOX_SAVE_CANCEL_DONTSAVE´ option (for the FXMessageBox
class) wasn't wrapped properly and was unusable (see RubyForge Bug #17094). There was also no constant corresponding to the ´MBOX_CLICKED_DONTSAVE´ return value. Both of these problems have been fixed.
The babelfish.rb
example program, which previously depended on an external web service to perform translation between languages, was broken since that web service no longer exists (see RubyForge Bug #16962). The example has now been updated to use Dr. Nic's Tranexp library instead.
The value of the ´MBOX_SAVE_CANCEL_DONTSAVE´ option (for the FXMessageBox
class) wasn’t wrapped properly and was unusable (see RubyForge Bug #17094). There was also no constant corresponding to the ´MBOX_CLICKED_DONTSAVE´ return value. Both of these problems have been fixed.
The fields for new FXHiliteStyle
objects were uninitialized and as a result sometimes gave unpredictable results (see RubyForge Bug #19637). This has been fixed.
The columnHeaderFont
and rowHeaderFont
attributes for FXTable
weren't implemented properly (see RubyForge Bug #20142). This has been fixed.
The columnHeaderFont
and rowHeaderFont
attributes for FXTable
weren't implemented properly (see RubyForge Bug #20142). This has been fixed.
Ruby 1.8.7 adds a new first
method to the Enumerable
module, and this conflicts with the existing first
method defined in the FXWindow
base class for a number of FXRuby classes which mix in Enumerable
(see RubyForge Bug #20418). This problem has been resolved.
Changes For Version 1.6.14 (March 29, 2008)
-
-
Updated the documentation for the
+FXImage
class to indicate which methods callrender
after they're finished, and which ones do not.Updated the documentation for the
FXImage
class to indicate which methods callrender
after they're finished, and which ones do not. -
Corrected a little typo in the
gembrowser.rb
example program. - @@ -400,7 +414,7 @@
-
Made a number of minor fixes to support building FXRuby against Ruby 1.9.
-
-
Added a binary gem for OS X. This works with the Ruby that's included with OS X (Leopard).
+Added a binary gem for OS X. This works with the Ruby that's included with OS X (Leopard).
-
The binary gem for Windows was built with FOX version 1.6.32 and FXScintilla version 1.71.
Changes to the iterators
library in version 1.6.6 introduced a bug in the each
method for the FXFoldingList
, FXTreeList
and FXTreeListBox
classes (see RubyForge Bug #10175). This problem has been fixed.
Applied submitted patches for building FXRuby against Ruby 1.9 (see RubyForge Bug #10181). Please note that building FXRuby against the Ruby 1.9 code base is still officially unsupported; however, I'm glad to accept patches that will help make this possible.
+Applied submitted patches for building FXRuby against Ruby 1.9 (see RubyForge Bug #10181). Please note that building FXRuby against the Ruby 1.9 code base is still officially unsupported; however, I'm glad to accept patches that will help make this possible.
The binary gem for Windows was built with FOX version 1.6.25 and FXScintilla version 1.71.
Most of the FXRuby example programs have been updated to use the keyword arguments library.
Added a new “virtual” keyword argument ´:padding´ that can be used in place of (or in addition to) the ´:padLeft´, ´:padRight´, ´:padTop´ and ´:padBottom´ arguments for a constructor. When a ´:padding´ value is passed in to the arguments hash, that value will be used for any of the four regular padding values that aren't otherwise specified. See the example programs for, you know, examples.
+Added a new “virtual” keyword argument ´:padding´ that can be used in place of (or in addition to) the ´:padLeft´, ´:padRight´, ´:padTop´ and ´:padBottom´ arguments for a constructor. When a ´:padding´ value is passed in to the arguments hash, that value will be used for any of the four regular padding values that aren’t otherwise specified. See the example programs for, you know, examples.
The binary gem for Windows was built with FOX version 1.6.20 and FXScintilla version 1.71.
There was a small typo in the documentation for the FXFoldingList
class options (see RubyForge Bug #7981). This has been fixed.
Added preliminary support for keyword-style arguments, as described in the "Differences Between FOX and FXRuby" section of the FXRuby User's Guide.
+Added preliminary support for keyword-style arguments, as described in the "Differences Between FOX and FXRuby" section of the FXRuby User's Guide.
The binary gem for Windows was built with FOX version 1.6.20 and FXScintilla version 1.71.
Changes For Version 1.6.3 (October 27, 2006)
-
-
Widgets of some classes (namely
+FXTopWindow
andFXMDIChild
) weren't properly sending a ´SEL_CLOSE´ message to their message targets (see RubyForge Bug #5498). Thanks to a change in FOX version 1.6.16, this problem has been fixed.Widgets of some classes (namely
FXTopWindow
andFXMDIChild
) weren’t properly sending a ´SEL_CLOSE´ message to their message targets (see RubyForge Bug #5498). Thanks to a change in FOX version 1.6.16, this problem has been fixed. -
The
getControlFor
method for theFXComboTableItem
class was coded incorrectly (see RubyForge Bug #5906). This has been fixed. - @@ -545,7 +559,7 @@
-
The
FXDockTitle
class was not supported (see RubyForge Bug #5632). This has been fixed. -
-
The API documentation for the
+FXGLCanvas
class claimed it had ashared?
method, but it didn't (see RubyForge Bug #5591). Now it does.The API documentation for the
FXGLCanvas
class claimed it had ashared?
method, but it didn't (see RubyForge Bug #5591). Now it does. -
The
FXGradientBar
class was not supported (see RubyForge Bug #5746). This has been fixed. - @@ -562,7 +576,7 @@
-
The
FXDockTitle
class was not supported (see RubyForge Bug #5632). This has been fixed. -
-
The API documentation for the
+FXGLCanvas
class claimed it had ashared?
method, but it didn't (see RubyForge Bug #5591). Now it does.The API documentation for the
FXGLCanvas
class claimed it had ashared?
method, but it didn't (see RubyForge Bug #5591). Now it does. -
The
FXGradientBar
class was not supported (see RubyForge Bug #5746). This has been fixed. -
@@ -573,11 +587,11 @@
-
The message data sent along for the ´SEL_INSERTED´, ´SEL_DELETED´ and ´SEL_REPLACED´ messages from an a
FXText
widget to its target was not being converted properly (see RubyForge Bug #4666). This has been fixed. -
-
The code related to the localization of application messages in FOX wasn't implemented properly in FXRuby, and as a result, constructing certain dialogs (like the color dialog) could cause a program to crash (see RubyForge Bug #5000). This has been fixed.
- -
-
The "Stop Spin" button in the gltest.rb example program didn't stop the cubes from spinning after either the "Spin Timer" or "Spin Chore" option was selected (see RubyForge Bug #5001). This was actually a symptom of a larger problem, that FXRuby wasn't properly handling timers and chores. These problems have been fixed.
- -
-
Setting the current item for an
+FXComboBox
to -1 (to indicate that there's no current item) would cause FXRuby to erroneously raise anIndexError
(see RubyForge Bug #5007). This has been fixed.The code related to the localization of application messages in FOX wasn't implemented properly in FXRuby, and as a result, constructing certain dialogs (like the color dialog) could cause a program to crash (see RubyForge Bug #5000). This has been fixed.
+ -
+
The "Stop Spin" button in the gltest.rb example program didn't stop the cubes from spinning after either the "Spin Timer" or "Spin Chore" option was selected (see RubyForge Bug #5001). This was actually a symptom of a larger problem, that FXRuby wasn't properly handling timers and chores. These problems have been fixed.
+ -
+
Setting the current item for an
FXComboBox
to -1 (to indicate that there's no current item) would cause FXRuby to erroneously raise anIndexError
(see RubyForge Bug #5007). This has been fixed. -
The documentation for the
reparent
instance method for theFXWindow
class was incorrect (see RubyForge Bug #5035). This has been fixed. - @@ -587,7 +601,7 @@
-
The
dilbert.rb
example program has been modified to use the RubyfulSoup HTML library instead of the html-parser library. -
-
As discussed in various forums (see for example this post, the
+autorequire
directive for RubyGems specifications is now deprecated. As a result, this has been removed from the FXRuby gem specification. This change will break any code that was using a statement like:´require_gem 'fxruby'´as the sole means for loading FXRuby. Such programs should instead use:´require 'fox16'´which will work for either gem based or non-gem based installations.As discussed in various forums (see for example this post, the
autorequire
directive for RubyGems specifications is now deprecated. As a result, this has been removed from the FXRuby gem specification. This change will break any code that was using a statement like:´require_gem ‘fxruby’´as the sole means for loading FXRuby. Such programs should instead use:´require ‘fox16’´which will work for either gem based or non-gem based installations. -
The binary gem for Windows was built with FOX version 1.6.8 and FXScintilla version 1.67 (from CVS).
-
-
The
FXSwitcher
widget was not sending the appropriate message data to its message target for the ´SEL_COMMAND´ message type (see RubyForge Bug #4157). This error has been corrected. Thanks to Manfred Usselmann for reporting this problem. -
-
The
+FXSeparator
class wasn't implemented properly (see RubyForge Bug #4158). This error has been corrected. Thanks to Gerard Menochet for reporting this problem.The
FXSeparator
class wasn't implemented properly (see RubyForge Bug #4158). This error has been corrected. Thanks to Gerard Menochet for reporting this problem. -
The
findItemByData
method was implemented incorrectly for theFXComboBox
,FXFoldingList
,FXIconList
,FXList
andFXListBox
classes (see RubyForge Bug #4172). This error has been corrected. Thanks to Gerard Menochet for reporting this problem. - @@ -638,11 +652,11 @@
-
Due to an error in the SWIG interface files, the
FXChoiceBox
class was basically unusable (see RubyForge Bug #3676). This error has been corrected. Thanks to Uwe Hartl for reporting this problem. -
-
The API documentation for the
+FXRealSlider
andFXRealSpinner
classes erroneously claimed that the message data for the ´SEL_COMMAND´ and ´SEL_CHANGED´ messages sent by these widgets to their targets were integers (see RubyForge Bug #3749). Along the same lines, the message data for those widgets wasn't being converted correctly (see RubyForge Bug #3750). Both of these errors have been corrected. Thanks to Meinrad Recheis (Henon) for reporting these problems.The API documentation for the
FXRealSlider
andFXRealSpinner
classes erroneously claimed that the message data for the ´SEL_COMMAND´ and ´SEL_CHANGED´ messages sent by these widgets to their targets were integers (see RubyForge Bug #3749). Along the same lines, the message data for those widgets wasn’t being converted correctly (see RubyForge Bug #3750). Both of these errors have been corrected. Thanks to Meinrad Recheis (Henon) for reporting these problems. -
The API documentation for the Fox module incorrectly listed the names of the
FXSELTYPE
andFXSELID
methods asSELTYPE
andSELID
(see RubyForge Bug #3940). This error has been corrected. Thanks to Joel VanderWerf for reporting this problem. -
-
The
+FXTableItem
constructor was supposed to (optionally) accept a reference to an arbitrary Ruby object as its third argument, but this wasn't working properly (see RubyForge Bug #4005). This error has been corrected. Thanks to Mark Volkman for reporting this problem.The
FXTableItem
constructor was supposed to (optionally) accept a reference to an arbitrary Ruby object as its third argument, but this wasn't working properly (see RubyForge Bug #4005). This error has been corrected. Thanks to Mark Volkman for reporting this problem. -
The binary gem for Windows was built with FOX version 1.4.29 and FXScintilla version 1.63.
Due to a bug in the test suite runner script, not all test cases were being exercised (see RubyForge Bug #2565). This bug has been fixed.
Calling the getPixel
method for the FXImage
class when the client-side pixel buffer for the image has already been released would cause a program to crash (see RubyForge Bug #2611). Now, getPixel
will raise an exception if it's called after the pixel buffer has been released. The documentation for getPixel
has been updated accordingly. Thanks to Gonzalo Garramuno for reporting this problem.
The makePositionVisible
method for the FXTable
class was raising an exception when passed out-of-bounds values for the row or column index (see RubyForge Bug #2660). This could happen, for example, if you were to click in a table area outside of the regular cells (which indirectly triggers a call to makePositionVisible
). This was actually inconsistent with standard FOX behavior, which simply ignores out of bounds values for that method's arguments. This bug has been fixed, and the documentation for makePositionVisible
has been updated accordingly. Thanks to Ralf Jonas for reporting this problem.
Calling the getPixel
method for the FXImage
class when the client-side pixel buffer for the image has already been released would cause a program to crash (see RubyForge Bug #2611). Now, getPixel
will raise an exception if it's called after the pixel buffer has been released. The documentation for getPixel
has been updated accordingly. Thanks to Gonzalo Garramuno for reporting this problem.
The makePositionVisible
method for the FXTable
class was raising an exception when passed out-of-bounds values for the row or column index (see RubyForge Bug #2660). This could happen, for example, if you were to click in a table area outside of the regular cells (which indirectly triggers a call to makePositionVisible
). This was actually inconsistent with standard FOX behavior, which simply ignores out of bounds values for that method's arguments. This bug has been fixed, and the documentation for makePositionVisible
has been updated accordingly. Thanks to Ralf Jonas for reporting this problem.
The binary gem for Windows was built with FOX version 1.4.21 and FXScintilla version 1.63.
There were a number of bugs in the textedit.rb
example program (see RubyForge Bug #1979), and those bugs have been fixed. Thanks to Claude Marinier for reporting these problems.
The API documentation for the FXTreeList
class' new
method still showed the number of visible items (´nvis´) as its second argument (see RubyForge Bug #2171). This problem has been corrected. Thanks to Bill Atkins for reporting this problem.
The API documentation for the FXTreeList
class’ new
method still showed the number of visible items (´nvis´) as its second argument (see RubyForge Bug #2171). This problem has been corrected. Thanks to Bill Atkins for reporting this problem.
The API documentation for the FXTopWindow
class had a number of errors (see RubyForge Bug #2269). This problem has been corrected.
-
Some additional problems related to calling the
setTableSize
method for anFXTable
were discovered (see RubyForge Bug #1597). This problem has been corrected. Thanks to Joel VanderWerf for reporting this problem. -
-
The
+iconlist.rb
example program had a "Sort" pulldown menu filled with a number of commands that didn't really do anything, including sorting the items (see RubyForge Bug #1654). This pulldown menu has been removed from that example.The
iconlist.rb
example program had a "Sort" pulldown menu filled with a number of commands that didn't really do anything, including sorting the items (see RubyForge Bug #1654). This pulldown menu has been removed from that example. -
The API documentation for the
FXDC
class erroneously referred to thefont
attribute astextFont
(see RubyForge Bug #1667). This problem has been corrected. Thanks to Meinrad Recheis for reporting this problem. - @@ -730,7 +744,7 @@
-
Some code in the
groupbox.rb
example program was calling thegetRootWindow
method, but that method has been renamed togetRoot
(see RubyForge Bug #1692). This problem has been corrected. Thanks to Jaroslav Stika for reporting this problem. -
-
The
+hasChar?
method for theFXFont
class was spelled without a trailing question mark, but it seems more Ruby-like that it should, so we've added an alias for that (see RubyForge Bug #1714). This method also now accepts a string of size 1 (i.e. a single character) as its input, as an alternative to an ordinal value. Thanks to Meinrad Recheis for these suggestions.The
hasChar?
method for theFXFont
class was spelled without a trailing question mark, but it seems more Ruby-like that it should, so we've added an alias for that (see RubyForge Bug #1714). This method also now accepts a string of size 1 (i.e. a single character) as its input, as an alternative to an ordinal value. Thanks to Meinrad Recheis for these suggestions. -
The API documentation for the
FXImage
class mistakenly listed ´IMAGE_ALPHA´ as a valid image rendering hint, but this flag is no longer needed since FOX images now always contain an alpha channel (see RubyForge Bug #1715). The documentation has been corrected. Thanks to Meinrad Recheis for reporting this mistake. -
@@ -743,7 +757,7 @@
-
The change made for FXRuby version 1.2.4 regarding garbage collection for table items corrected only one of the problems described in RubyForge Bug #1445; There was still a problem related to the "destructive" effects of the
setTableSize
method for theFXTable
class. This problem has now been corrected as well. Thanks to David Peoples, Jamey Cribbs and Joel VanderWerf for their assistance in helping me to track down this problem. -
-
The
+extractText
andoverlayText
methods for theFXTable
class were implemented incorrectly and weren't listed in the API documentation. These problems have been corrected.The
extractText
andoverlayText
methods for theFXTable
class were implemented incorrectly and weren't listed in the API documentation. These problems have been corrected. -
The checks for out-of-bounds indices in the
getColumnX
,setColumnX
,getRowY
,setRowY
andupdateRange
methods for theFXTable
class were incorrect. These have been fixed. - @@ -751,20 +765,20 @@
-
A typo in one of the source files was causing the build to fail when compiled against Ruby versions 1.8.1 or earlier (see RubyForge Bug #1551). This error has been corrected. Thanks to Alex McGuire for reporting this problem.
-
-
The
+selectItem
method for theFXTable
class was removed in FOX 1.2, so we've added a convenience method for this that just calls theselectRange
method under the hood (see RubyForge Bug #1562). Thanks to Joel VanderWerf for this suggestion.The
selectItem
method for theFXTable
class was removed in FOX 1.2, so we've added a convenience method for this that just calls theselectRange
method under the hood (see RubyForge Bug #1562). Thanks to Joel VanderWerf for this suggestion. -
The binary gem for Windows was built with FOX version 1.2.13 and FXScintilla version 1.62.
Changes For Version 1.2.4 (February 23, 2005)
-
-
Due to a change in some of the internal Ruby C APIs, a compile-time error for FXRuby was introduced in some of the Ruby 1.8.2 preview releases (see RubyForge Bug #1039). One should not see any compile-time errors when compiling FXRuby (versions 1.2.3 or later) against the Ruby 1.8.2 final release, but I've neverthless made a change to how those internal APIs are used, to avoid any potential problems. Thanks to the many users who pointed out this problem.
+Due to a change in some of the internal Ruby C APIs, a compile-time error for FXRuby was introduced in some of the Ruby 1.8.2 preview releases (see RubyForge Bug #1039). One should not see any compile-time errors when compiling FXRuby (versions 1.2.3 or later) against the Ruby 1.8.2 final release, but I've neverthless made a change to how those internal APIs are used, to avoid any potential problems. Thanks to the many users who pointed out this problem.
-
Joel VanderWerf suggested some enhancements to the
image.rb
example program in order to improve its startup time (see RubyForge Bug #1281). Those changes have been incorporated. Thanks to Joel for this suggestion. -
-
One change for the
-FXImage
class between FOX versions 1.0 and 1.2 is the nature of the pixel buffer that's passed to theFXImage
constructor. Previously, this pixel buffer was expected to be a string of bytes; now it's expected to be an array of ´FXColor´ values. This modification was not implemented correctly for FXRuby versions 1.2.3 and earlier (see RubyForge Bug #1427). This bug has been corrected, and the example program (image.rb
) and test cases have been updated as well. Thanks to Oliver Smith and others for reporting this problem. -
-
A couple of different problems, reported by Patrick Fernie and David Peoples, exposed a flaw in how FXRuby manages the links between FOX objects and their Ruby peers when the FOX objects are destroyed (see RubyForge Bug #1445). Without going into all the gory details, let's just say that since we have no explicit control over when Ruby's garbage collector decides to "collect" those Ruby peers that point to C++ objects that have been destroyed, we need to take steps to neutralize those Ruby peer objects so that they can't cause your application to crash in the meantime; I've implemented a fix to take care of this situation. Thanks to Patrick and David for reporting these problems.
+One change for the
+FXImage
class between FOX versions 1.0 and 1.2 is the nature of the pixel buffer that’s passed to theFXImage
constructor. Previously, this pixel buffer was expected to be a string of bytes; now it’s expected to be an array of ´FXColor´ values. This modification was not implemented correctly for FXRuby versions 1.2.3 and earlier (see RubyForge Bug #1427). This bug has been corrected, and the example program (image.rb
) and test cases have been updated as well. Thanks to Oliver Smith and others for reporting this problem. -
+
A couple of different problems, reported by Patrick Fernie and David Peoples, exposed a flaw in how FXRuby manages the links between FOX objects and their Ruby peers when the FOX objects are destroyed (see RubyForge Bug #1445). Without going into all the gory details, let's just say that since we have no explicit control over when Ruby's garbage collector decides to "collect" those Ruby peers that point to C++ objects that have been destroyed, we need to take steps to neutralize those Ruby peer objects so that they can't cause your application to crash in the meantime; I've implemented a fix to take care of this situation. Thanks to Patrick and David for reporting these problems.
-
The API documentation for FXRuby 1.2 still contained references to the old "spellings" of the
fxparseAccel
andfxparseHotKey
method names, which were all lowercase (i.e.fxparseaccel
andfxparsehotkey
). (see RubyForge Bug #1470). These errors have been corrected. -
@@ -812,7 +826,7 @@
Changes For Version 1.2.2 (October 1, 2004)
-
-
In order to avoid versioning problems when dealing with a mix of applications based on either FXRuby 1.0 or 1.2, the feature name for FXRuby has been changed from “fox” to “fox12”. For most application developers, this means that you will need to modify the source code for applications targeted at FXRuby 1.2 to begin with the line ´require 'fox12'´Note that no changes should be required for legacy applications targeted at FXRuby 1.0.
+In order to avoid versioning problems when dealing with a mix of applications based on either FXRuby 1.0 or 1.2, the feature name for FXRuby has been changed from “fox” to “fox12”. For most application developers, this means that you will need to modify the source code for applications targeted at FXRuby 1.2 to begin with the line ´require ‘fox12’´Note that no changes should be required for legacy applications targeted at FXRuby 1.0.
-
Made a number of updates to the documentation, to reflect API changes for FXRuby 1.2.
-
@@ -823,11 +837,11 @@
-
This is the second "alpha" release of FXRuby 1.2. This release should be compatible with any FOX library version 1.2; it is not compatible with any previous FOX library versions. As this is an alpha release, users should expect a certain amount of instability, bugs, etc.
-
-
For this release, all of the FOX 1.2 classes are available with the exception of the
+FXBitmapView
class. There is a small problem with how theFXBitmapView
class is declared in the FOX 1.2 header files, and I'm trying to decide how best to resolve that problem. The goal is to have this problem resolved by the next alpha release of FXRuby.For this release, all of the FOX 1.2 classes are available with the exception of the
FXBitmapView
class. There is a small problem with how theFXBitmapView
class is declared in the FOX 1.2 header files, and I'm trying to decide how best to resolve that problem. The goal is to have this problem resolved by the next alpha release of FXRuby. -
For this release, all of the RDoc-based online documentation has been brought up to date with the new APIs.
-
-
Portions of the FXRuby User's Guide were still out of date with respect to the new APIs (see SourceForge Bug #988623). This has been fixed.
+Portions of the FXRuby User's Guide were still out of date with respect to the new APIs (see SourceForge Bug #988623). This has been fixed.
-
The
mditest.rb
example program was not up to date with the new APIs. This has been fixed. - @@ -839,29 +853,29 @@
-
There was a small typo in the table.rb example program (see SourceForge Bug #988152). This has been fixed. Thanks to Jamey Cribbs for reporting this problem and suggesting the fix.
-
-
Due to an oversight on my part, one of the overloaded constructors for the
+FXRegion
class wasn't wrapped properly (see SourceForge Bug #986181). This has been fixed. Thanks to Bil Bas for reporting this problem.Due to an oversight on my part, one of the overloaded constructors for the
FXRegion
class wasn't wrapped properly (see SourceForge Bug #986181). This has been fixed. Thanks to Bil Bas for reporting this problem. -
Removed some obsolete aliases for the old leading and trailing rows and columns for the
FXTable
class (see SourceForge Bug #988038). Thanks to Yuri Leikind for reporting this problem. -
Added
FXTable
instance methodshorizontalGridShown=()
andverticalGridShown=()
to complement the already availablehorizontalGridShown?
andverticalGridShown?
methods. -
-
The binary gem for the 1.2a1 release on Windows didn't have PNG or JPEG image support built-in (see SourceForge Bug #986180). This has been fixed. Thanks to Bil Bas for reporting this problem.
+The binary gem for the 1.2a1 release on Windows didn't have PNG or JPEG image support built-in (see SourceForge Bug #986180). This has been fixed. Thanks to Bil Bas for reporting this problem.
-
The binary gem for Windows was built with FOX version 1.2.7 and FXScintilla version 1.61.
Changes For Version 1.2a1 (June 28, 2004)
-
-
This is the first "alpha" release of FXRuby 1.2. This release should be compatible with any FOX library version 1.2; it is not compatible with any previous FOX library versions. As this is an alpha release, users should expect a certain amount of instability, bugs, etc. The intent of this first alpha release is twofold. The primary intent is allow application developers who have current projects based on FXRuby 1.0 to begin the process of updating their applications for compatibility with FXRuby 1.2. For this release, all of the classes that existed in FXRuby 1.0 have been updated for compatibility with FOX 1.2, and so developers should at least be able to begin to "port" their applications forward now. Note that there have been a number of changes for FOX 1.2 and FXRuby 1.2, both in terms of API changes and less obvious "behavioral" changes. For a detailed summary of these changes, please see "What's New in FOX 1.2" (also available as a PDF). Note that few, if any, of the new classes introduced in FOX 1.2 are available in this first alpha release of FXRuby 1.2. Support for those new classes should come along quickly in subsequent alpha releases of FXRuby 1.2. The secondary intent of this first alpha release is to introduce the new RubyGems-based packaging of FXRuby and to begin to work out the inevitable kinks in that system.
+This is the first "alpha" release of FXRuby 1.2. This release should be compatible with any FOX library version 1.2; it is not compatible with any previous FOX library versions. As this is an alpha release, users should expect a certain amount of instability, bugs, etc. The intent of this first alpha release is twofold. The primary intent is allow application developers who have current projects based on FXRuby 1.0 to begin the process of updating their applications for compatibility with FXRuby 1.2. For this release, all of the classes that existed in FXRuby 1.0 have been updated for compatibility with FOX 1.2, and so developers should at least be able to begin to "port" their applications forward now. Note that there have been a number of changes for FOX 1.2 and FXRuby 1.2, both in terms of API changes and less obvious "behavioral" changes. For a detailed summary of these changes, please see "What's New in FOX 1.2" (also available as a PDF). Note that few, if any, of the new classes introduced in FOX 1.2 are available in this first alpha release of FXRuby 1.2. Support for those new classes should come along quickly in subsequent alpha releases of FXRuby 1.2. The secondary intent of this first alpha release is to introduce the new RubyGems-based packaging of FXRuby and to begin to work out the inevitable kinks in that system.
-
The binary gem for Windows was built with FOX version 1.2.4 and FXScintilla version 1.57.
-
-
-
-