The API documentation for FXMDIClient
referred to the non-existent instance method
activeChild=
(see RubyForge
Bug #10259). This method has been added.
The API documentation for FXMDIClient
also referred to the non-existent instance methods
getMDIChildFirst
and
getMDIChildLast
. These entries have been
removed.
The API documentation for FXMDIChild
referred to non-existent instance methods
getMDINext
and
getMDIPrev
(see RubyForge
Bug #10436). The documentation has been corrected.
Added the :repeat
parameter for the
addChore
and
addTimeout
methods. See the documentation for
more details, and gltest.rb
for an example of its
use.
Corrected a number of minor typos in the API documentation.
Corrected a typo in the imageviewer.rb
example.
Modified the inputs.rb
example program to
use Pipe.read_nonblock()
instead of
Pipe.read()
.
Fixed a bug in the implementation of the
findText
method for the
FXText
class, when used with the
SEARCH_REGEX
option.
The binary gem for Windows was built with FOX version 1.6.28 and FXScintilla version 1.71.
Added editable
as an alias for
FXTextField#editable?
.
Added each_child_recursive
instance
method for the FXWindow
class. This method
performs a depth-first traversal of the widget tree starting at the
receiver window.
Corrected some errors in the keyword arguments support for the
FXVec2d
, FXVec2f
,
FXVec3d
, FVec3f
,
FXVec4d
and FXVec4f
classes.
Corrected an error in the keyword arguments support for the
FXIconDict
class.
Modified the gem specification so that the RDoc generated during a gem install is consistent with that generated by other methods (see RubyForge Bug #10035).
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.
The binary gem for Windows was built with FOX version 1.6.25 and FXScintilla version 1.71.
A bug was discovered in the keyword arguments library support
for the FXMenuBar
class (see RubyForge
Bug #9927). This problem has been fixed.
The binary gem for Windows was built with FOX version 1.6.25 and FXScintilla version 1.71.
Due to an internal bookkeeping error, applications like the
glviewer.rb
example program which create multiple
FXGLViewer
instances could cause an assertion
to fail. When this assertion fails on Windows, the program simply
crashes (see RubyForge
Bug #9775). This problem has been fixed.
The keyword arguments library, introduced in version 1.6.5, is now included automatically when you load FXRuby; it is no longer necessary to explicitly require it.
The binary gem for Windows was built with FOX version 1.6.25 and FXScintilla version 1.71.
The binary gem for Windows was built with FOX version 1.6.25 and FXScintilla version 1.71.
Somewhere along the way, the RAA browser example program got broken due to changes in the SOAP interface to RAA (see RubyForge Bug #7977). This has been fixed.
Some debugging code that was meant to detect errors in FXRuby message data conversion was inadvertently causing some user applications to crash when running under Windows (see RubyForge Bug #8049). This debugging code has been changed to avoid the problem.
Modified the implementations of the each iterator methods for
FXFoldingList
,
FXFoldingItem
,
FXTreeItem
, FXTreeList
and FXTreeListBox
(see RubyForge
Bug #8090). The new implementation is a bit more robust in
terms of modifications (such as deletion) of the iterated-over
elements.
A bug in the new keyword arguments library (introduced in
version 1.6.5) caused the initialize
method
for the FXDCWindow
class to do the wrong thing
(see RubyForge
Bug #8441). This has been corrected.
A different bug in the keyword arguments library caused the
initialize
method for the
FXFont
class to do the wrong thing (see RubyForge
Bug #8517). This also has been corrected.
Yet another bug in the keyword arguments library broke the part
of the code that used to yield self
to an
optional block attached to the call to new
(see RubyForge
Bug #8518). This has been corrected.
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.
The binary gem for Windows was built with FOX version 1.6.20 and FXScintilla version 1.71.
Clicking outside of the visible cells for an
FXTable
when there was no current selection
caused the code to raise an exception (see RubyForge
Bug #5907). This problem has been fixed.
The hasTimeout?
method for the
FXApp
class was implemented incorrectly (see
RubyForge
Bug #7564). This problem has been fixed.
The FXFoldingList
and
FXFoldingItem
classes did not have each
iterator methods like most of the other list-based widgets (see RubyForge
Patch #7978). These have been added.
The API documentation for FXMDIClient
claimed that FXScrollArea
was its base class
(see RubyForge
Bug #7979). This has been corrected; the base class for
FXMDIClient
is
FXComposite
.
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.
The binary gem for Windows was built with FOX version 1.6.20 and FXScintilla version 1.71.
A change made in Ruby 1.8.5 for cyclic requires led to a problem that caused the Ruby interpreter to emit a large number of warnings (see RubyForge Bug #5633). This problem has been fixed.
The binary gem for Windows was built with FOX version 1.6.16 and FXScintilla version 1.71.
Widgets of some classes (namely
FXTopWindow
and
FXMDIChild
) 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 the
FXComboTableItem
class was coded incorrectly
(see RubyForge
Bug #5906). This has been fixed.
There was a minor typo in the API documentation for the
FXTriStateButton
class (see RubyForge
Bug #5962). This has been fixed.
The each_row
and
each_column
iterator methods for the
FXTable
class were incorrectly coded (see
RubyForge
Bug #6036). This has been fixed.
The new
class methods for
FXColorItem
, FXDirItem
,
FXFileItem
,
FXFoldingItem
,
FXHeaderItem
,
FXIconItem
, FXListItem
and FXTreeItem
were all raising exceptions when
a non-nil
value was passed in for the last
argument (see RubyForge
Bug #6197). A similar problem was present for various instance
methods in the FXColorList
,
FXListBox
and
FXMDIClient
classes. These problems have been
fixed.
A few problems were discovered for the
inputs.rb
example program (see RubyForge
Bug #6209). These problems have been fixed.
Several instance methods for the FXTable
class were not actually present under their documented names (see
RubyForge
Bug #6211). This has been fixed.
The build script was not compatible with changes made in the recently-released FXScintilla 1.71 (see RubyForge Bug #6313). This has been fixed.
The binary gem for Windows was built with FOX version 1.6.16 and FXScintilla version 1.71.
The expandTree()
and
collapseTree()
methods for the
FXFoldingList
class were incorrectly identified
as expandFolding()
and
collapseFolding()
in the API documentation
(see RubyForge
Bug #5354). This has been fixed.
The FXDockTitle
class was not supported
(see RubyForge
Bug #5632). This has been fixed.
The API documentation for the FXGLCanvas
class claimed it had a shared?
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.
The binary gem for Windows was built with FOX version 1.6.14 and FXScintilla version 1.67 (from CVS).
The children
instance method for the
FXWindow
class always returned an array of
FXWindow
instances, even if the actual types
should have been instances of subclasses of
FXWindow
(see RubyForge
Bug #4342). This has been fixed.
The dilbert.rb
example program was broken
due to a change in the Dilbert.com web site structure (see RubyForge
Bug #4597). This has been fixed.
The expandTree()
and
collapseTree()
methods for the
FXFoldingList
class were incorrectly identified
as expandFolding()
and
collapseFolding()
in the API documentation
(see RubyForge
Bug #5354). This has been fixed.
The FXDockTitle
class was not supported
(see RubyForge
Bug #5632). This has been fixed.
The API documentation for the FXGLCanvas
class claimed it had a shared?
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.
The binary gem for Windows was built with FOX version 1.4.34 and FXScintilla version 1.63.
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 an
IndexError
(see RubyForge
Bug #5007). This has been fixed.
The documentation for the reparent
instance method for the FXWindow
class was
incorrect (see RubyForge
Bug #5035). This has been fixed.
The textedit.rb
example program was not up
to date with some of the changes for FOX 1.6. This example has been
updated.
The new font
method for the
FXFont
class was not documented. This has been
fixed.
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.
The binary gem for Windows was built with FOX version 1.6.8 and FXScintilla version 1.67 (from CVS).
This is the first release of FXRuby compatible with FOX version 1.6. One of the most signficant changes for FOX 1.6 has been the addition of Unicode support; all FOX widgets and internal string processing routines are now Unicode aware. For a comprehensive overview of the changes made to FOX since version 1.4 (including those made in the FOX 1.5 development series), please refer to the News archives at the FOX web site.
Added the allowSide
,
disallowSide
and
allowedSide?
methods for the
FXDockBar
class, as complements to the
allowedSides
accessor methods (see RubyForge
Feature Request #2307).
Added the visible=
and
visible?
accessor methods for the
FXWindow
class, as complements to the
show
, hide
and
shown?
methods (see RubyForge
Feature Request #3579).
The browser.rb
example was making use of a
deprecated API (see RubyForge
Bug #4325). This has been fixed.
The children
instance method for the
FXWindow
class always returned an array of
FXWindow
instances, even if the actual types
should have been instances of subclasses of
FXWindow
(see RubyForge
Bug #4342). This has been fixed.
The dilbert.rb
example program was broken
due to a change in the Dilbert.com web site structure (see RubyForge
Bug #4597). This has been fixed.
The binary gem for Windows was built with FOX version 1.6.5 and FXScintilla version 1.67 (from CVS).
FXRuby would not compile properly on some x86-64 systems (see RubyForge Bug #3729). This error has been corrected. Thanks to Javier Goizueta for initially reporting this problem, and especially to Tobias Peters for providing a patch.
The FXIconDict
widget was accidentally
"lost" in the transition between FXRuby versions 1.2 and 1.4 (see
RubyForge
Bug #4117). This error has been corrected. Thanks to Manfred
Usselmann for reporting this problem.
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 findItemByData
method was
implemented incorrectly for the FXComboBox
,
FXFoldingList
,
FXIconList
, FXList
and
FXListBox
classes (see RubyForge
Bug #4172). This error has been corrected. Thanks to Gerard
Menochet for reporting this problem.
The FXListBox
widget was not sending the
appropriate message data to its message target for the
SEL_COMMAND
message type (see RubyForge
Bug #4255). This error has been corrected. Thanks to Gerard
Menochet for reporting this problem.
The binary gem for Windows was built with FOX version 1.4.29 and FXScintilla version 1.63.
The FXTextField
class was not properly
responding to the ID_INSERT_STRING
command (see
RubyForge
Bug #3320). This error has been corrected. Thanks to Uwe Hartl
for reporting this problem.
The text
and
getText
methods for the
FXMenuCaption
class were returning
nil
instead of the actual value (see RubyForge
Bug #3458). This error has been corrected. Thanks to Meinrad
Recheis (Henon) for reporting this problem.
The API documentation for the FXMDIChild
class erroneously listed SEL_CLOSEALL
as one of
the message types that an MDI child window might send to its message
target (see RubyForge
Bug #3508). This error has been corrected. Thanks to Meinrad
Recheis (Henon) for reporting this problem.
Calling the selectRange
method for
class FXTable
would cause a fatal error instead
of merely raising an IndexError
exception (see
RubyForge
Bug #3615). This error has been corrected. Thanks to Meinrad
Recheis (Henon) for reporting this problem.
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
and
FXRealSpinner
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
and
FXSELID
methods as
SELTYPE
and SELID
(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 binary gem for Windows was built with FOX version 1.4.29 and FXScintilla version 1.63.
The build instructions for Unix platforms had not been updated recently and as such contained some errors (see RubyForge Bug #3014). These errors have been corrected. Thanks to Dave Burns for reporting this problem.
The extendSelection
method for the
FXTable
class was raising an exception if an
out of bounds row or column index was passed in (see RubyForge
Bug #3050). This has been changed so that
extendSelection
instead returns false for out
of bounds arguments. Thanks to Leonid Moiseichuk for reporting this
problem.
The each_child
iterator method for the
FXWindow
class would fail if the child window
was destroyed in the block (see RubyForge
Bug #3134). Thanks to Liam Irish for reporting this problem
and providing a patch.
The message data for the SEL_REPLACED
message sent by the FXTable
class to its target
was not being handled properly (see RubyForge
Bug #3244). There were also problems with the message data for
the SEL_SELECTED
and
SEL_DESELECTED
messages. Furthermore, the
SEL_REPLACED
message was not documented in the
RDoc documentation for the FXTable
class. All
of these problems have been corrected. Thanks to _blackdog for
reporting this problem.
The binary gem for Windows was built with FOX version 1.4.29 and FXScintilla version 1.63.
The TOGGLEBUTTON_KEEPSTATE
option for the
FXToggleButton
class was not documented (see
RubyForge
Bug #2286). This oversight has been corrected. Thanks to Tim
Smith for reporting this problem.
The scintilla.rb
library file was not up to
date with the latest FXScintilla release, and as a result it was
missing some methods (see RubyForge
Bug #2479). This oversight has been corrected. Thanks to Maxim
Kulkin for reporting this problem.
Due to changes in the APIs for timers and chores, the mechanisms for removing chores and timeouts were broken (see RubyForge Bug #2563). This bug has been fixed. Thanks to "moinker" for reporting this problem.
An error in the test setup caused all of the tests for the
FXList
class to fail (see RubyForge
Bug #2564). This bug has been fixed. Thanks to Peter for
reporting this problem.
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.
The binary gem for Windows was built with FOX version 1.4.21 and FXScintilla version 1.63.
Due to a bug in the implementation, the
checked?
method for the
FXCheckButton
class always returned
false
(see RubyForge
Bug #1852). This bug has been fixed. Thanks to Meinrad Recheis
for reporting this problem.
The API documentation for the FXTable
class listed several obsolete attributes (see RubyForge
Bug #1928). Those errors have been corrected. Thanks to Pavel
Sokolov for reporting these problems.
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 FXTopWindow
class had a number of errors (see RubyForge
Bug #2269). This problem has been corrected.
The API documentation for the FXTreeList
class still listed the obsolete reparentItem
method (see RubyForge
Bug #2270). This problem has been corrected. Thanks to Jacob
Hansen for reporting this problem.
Due to a bug in how the SWIG typemaps for the
FXlong type were defined, some methods for the
FXFileStream
class were broken (see RubyForge
Bug #2275). This problem has been corrected. Thanks to Gonzalo
Garramuno for reporting this problem.
Merged in all of the fixes for FXRuby 1.2.6.
The binary gem for Windows was built with FOX version 1.4.17 and FXScintilla version 1.63.
This is the second release of FXRuby which is compatible with FOX 1.4, and as such should be considered an "unstable" release. For a history of the changes made during the FOX 1.3 and 1.4 development, see the News page at the FOX Web site.
The unit tests (in the tests
subdirectory)
had not been updated to require the fox14
feature, and were still looking at fox12
. This
has been corrected.
A number of minor problems were corrected for the Windows build of FXRuby.
The binary gem for Windows was built with FOX version 1.4.17 and FXScintilla version 1.63.
This is the first release of FXRuby which is compatible with FOX 1.4, and as such should be considered an "unstable" release. For a history of the changes made during the FOX 1.3 and 1.4 development, see the News page at the FOX Web site.
Some additional problems related to calling the
setTableSize
method for an
FXTable
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 API documentation for the FXDC
class
erroneously referred to the font
attribute as
textFont
(see RubyForge
Bug #1667). This problem has been corrected. Thanks to Meinrad
Recheis for reporting this problem.
The checked?
,
unchecked?
and
maybe?
methods for the
FXMenuCheck
class were missing (see RubyForge
Bug #1677). This problem has been corrected. Thanks to Oliver
Smith for reporting this problem.
The API documentation for the
FXScrollArea
class incorrectly spelled the
names of the horizontalScrollBar
and
verticalScrollBar
methods as
horizontalScrollbar
and
verticalScrollbar
(see RubyForge
Bug #1678). The documentation has been corrected. Thanks to
Jannis Pohlmann for reporting this mistake.
Some code in the groupbox.rb
example
program was calling the getRootWindow
method,
but that method has been renamed to getRoot
(see RubyForge
Bug #1692). This problem has been corrected. Thanks to
Jaroslav Stika for reporting this problem.
The hasChar?
method for the
FXFont
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.
Due to an error in the SWIG interface files, the
data
method for the
FXSettings
class was not being wrapped
properly. As a result, this method was unavailable and in turn led to
other dependent methods (like each_section
)
to be unavailable as well (see RubyForge
Bug #1771). This error has been corrected. Thanks to Jannis
Pohlmann for reporting this problem.
The binary gem for Windows was built with FOX version 1.2.16 and FXScintilla version 1.62.
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 the FXTable
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
and
overlayText
methods for the
FXTable
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
and
updateRange
methods for the
FXTable
class were incorrect. These have been
fixed.
The setTableSize
method for the
FXTable
class now raises
ArgError
if either the number of rows or
columns passed in as arguments is less than zero.
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 the
FXTable
class was removed in FOX 1.2, so we've
added a convenience method for this that just calls the
selectRange
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.
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 the FXImage
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
and fxparseHotKey
method names, which were
all lowercase (i.e. fxparseaccel
and
fxparsehotkey
). (see RubyForge
Bug #1470). These errors have been corrected.
Added the FXScrollArea#scrollCorner
method, which returns a reference to the scroll corner for any window
derived from FXScrollArea
(see RubyForge
Feature Request #1226). Thanks to Brian Sheehan for this
suggestion.
Added the FXMemoryBuffer#to_a
method,
which is just an alias for the data
accessor
method that returns a copy of the data buffer as an array (see RubyForge
Feature Request #1295). Thanks to Meinrad Recheis for this
suggestion.
Added the appendRows
and
appendColumns
methods to the
FXTable
class (see RubyForge
Feature Request #1295). Thanks to Brett Hallett for this
suggestion.
The binary gem for Windows was built with FOX version 1.2.13 and FXScintilla version 1.62.
Since group boxes containing radio buttons no longer enforce the radio behavior of radio buttons (i.e. keeping only one radio button selected at a time), some of the example programs were no longer working as desired (see RubyForge Bug #751 and RubyForge Bug #1280). This problem has been corrected. Thanks to Yuri Leikind and Barry DeZonia for reporting this problem.
Bob Sidebotham reported a little typo in the
table.rb
example program (see RubyForge
Bug #990). This has been corrected.
The API documentation for FXList
did not
reflect the changes for FOX 1.2; the
retrieveItem()
has been renamed to
getItem()
and
insertItem()
has been renamed to
setItem()
(see RubyForge
Bug #1037 and RubyForge
Bug #1257). This has been corrected. Thanks to Remy Drouilhet
and Stephan Kamper for reporting this problem.
The Windows installer was missing some of the documentation files (see RubyForge Bug #1139). This has been corrected. Thanks to Curt Hibbs and Mark Smith for reporting this problem.
The browser.rb
example program was broken
(see RubyForge
Bug #1146). This has been corrected. Thanks to Stefan Lang for
reporting this problem.
The attribute setter for
FXHeaderItem#justification
was defined
incorrectly (see RubyForge
Bug #1276). This has been corrected. Thanks to Joel VanderWerf
for reporting this problem (and providing a patch to fix it).
The filenames
alias for the
FXFileDialog#getFilenames()
instance method
was missing (see RubyForge
Bug #1277). This error has been corrected. Thanks to Barry
DeZonia for reporting this problem.
The API documentation for the
FXFileDialog
class methods
getOpenFilenames()
,
getOpenDirectory()
,
getOpenFilename()
and
getSaveFilename()
was extremely inadequate
(see RubyForge
Bug #1279). This documentation has been improved. Thanks to
Barry DeZonia for reporting this problem.
Brett Hallett contributed a Ruby port of the "ratio" example
program from the regular FOX distribution, for demonstrating the use
of the new FXSpring
layout manager (see RubyForge
Bug #1282). Many thanks to Brett for this addition!
Joel VanderWerf contributed code to simplify how programs
interact with modal and non-modal dialog boxes (see RubyForge
Bug #1283). See the API documentation for the new
FXDialogBox#execute_modal
and
FXDialogBox#execute_nonmodal
methods for
examples of their use.
The attribute setters for
FXRealSpinner#selBackColor
and
FXSpinner#selBackColor
were defined
incorrectly (see RubyForge
Bug #1297). These have been corrected. Thanks to Meinrad
Recheis for reporting this problem.
The tooltipPause
attribute reader for
the FXApp
class was missing (see RubyForge
Patch #1306). Thanks to Joel VanderWerf for reporting this
omission and providing a patch to fix it.
The API documentation for the
FXToolBarTab
class was missing (see RubyForge
Bug #1322). Thanks to Joel VanderWerf for reporting this
omission.
The attribute accessors for
FXText#visibleRows
and
FXText#visibleColumns
were defined and
documented incorrectly (see RubyForge
Bug #1325). These have been corrected. Thanks to Karl El-Koura
for reporting this problem.
The binary gem for Windows was built with FOX version 1.2.13 and FXScintilla version 1.62.
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.
The binary gem for Windows was built with FOX version 1.2.9 and FXScintilla version 1.61.
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 the FXBitmapView
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.
The mditest.rb
example program was not up
to date with the new APIs. This has been fixed.
The glviewer.rb
example program was not up
to date with the new APIs (see SourceForge
Bug #986479). This has been fixed. Thanks to Remy Drouilhet
for reporting this problem and suggesting the fixes.
The FXGLGroup#bounds
method was defined
incorrectly (see SourceForge
Bug #986476). This has been fixed. Thanks to Remy Drouilhet
for reporting this problem and suggesting the fix.
The scintilla-test.rb
example program was
not up to date with the new APIs (see SourceForge
Bug #986172). This has been fixed. Thanks to Peter Watkins for
reporting this problem and submitting a corrected version of the
program.
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.
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 methods
horizontalGridShown=()
and
verticalGridShown=()
to complement the
already available horizontalGridShown?
and
verticalGridShown?
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 Windows was built with FOX version 1.2.7 and FXScintilla version 1.61.
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.