GNOME Platform Bindings 2.5.7 (Release Candidate)
GNOME Platform Bindings
Please note that the GNOME Platform Bindings are now in API
freeze, so only very important API changes will be allowed before
the fully-frozen GNOME Platform Bindings 2.6.0 release, on April
12th.
(See the big list of changes below if you’ve read this blurb
before.)
This is a scheduled developement release of the GNOME Platform
Bindings, which provide a stable GNOME development platform for
programming languages other than C, in the style of those
languages. We very much hope that Linux distributions will
distribute these bindings as a supported development platform.
For the GNOME 2.5/2.6 schedule, we have bindings for C++, Java,
and Perl: http://www.gnome.org/start/2.5/bindings/modules.html
These bindings follow these rules:
http://developer.gnome.org/dotplan/bindings/rules.html
and this schedule:
http://www.gnome.org/start/2.5/bindings/
Note that those rules do not guarantee 100% API coverage, but
they do guarantee API/ABI stability.
There are also “Beta Bindings” for C#, which are likely to be on
the full release schedule for GNOME 2.7/2.8, but they are not yet
following the official schedule or rules for 2.5/2.6.
Note that other bindings also exist:
http://www.gtk.org/bindings.html
but they are not on this release schedule and they do not
necessarily follow the same rules.
If you have questions about the GNOME Platform Bindings release
set please send email to language-bindings@gnome.org.
If you have questions about the individual bindings, please send
email to their own mailing lists. You can find links to the
individual projects here:
http://www.gnome.org/start/2.5/bindings/modules.html
Download
You can download source tarballs from
ftp://ftp.gnome.org/pub/GNOME/bindings/2.5/2.5.7/
- Changes, for each binding:
- C++ (gtkmm):
glibmm 2.3.8:
- Fix crash when using Glib::Main signals. (Martin Schulze)
- Corrected the configure-time SUN compiler check. (Murray
Cumming, Alexander Nedotsukov)
gtkmm 2.3.7:
- Gtk:
- Action:
- create_tool_item(), create_menu(), and create_icon() return
specific types. (Bryan Forbes) - Constructors: Give 0 instead of “” to GTK+ for empty strings,
to make stock items work. (Murray Cumming)
- create_tool_item(), create_menu(), and create_icon() return
- Container: Keep managed child widgets alive when remove()ing
them. (Murray Cumming) - IconTheme: Wrapped the changed signal. (Murray Cumming)
- FileFilter: It’s a Gtk::Object, not a Glib::Object. (Murray
Cumming) - TreeView: Added move_column_to_start(). (Andrew E. Makeev)
- UIManager: Fixed typo in disconnect_proxy signal name. (Bryan
Forbes) - many: Do the extra reference for several get_*() methods.
(Bryan Forbes, Murray Cumming)
- Action:
- Documentation:
- Reference documentation: Corrected some mention of null
parameters, and g_free(), in generated-from-C docs. (Murray
Cumming) - Book: Corrected typos and updated libsigc++ syntax. (Elijah
Newren) - FAQ: Don’t mention gtkmm 1.2 so much. (Elijah Newren)
- Examples: Adde book/menus_and_toolbars, to show UIManager.
(Murray Cumming)
- Reference documentation: Corrected some mention of null
libglademm 2.3.3:
- get_widget():
- Don’t create a C++ object with a null C object, when the C
object can not be found. (jdhall) - Really return existing widget wrappers. (Murray Cumming)
- Don’t create a C++ object with a null C object, when the C
- Stop accidental need for doxygen when building from tarballs.
(Murray Cumming) - win32: Test for -mms-bitfields / -fnative-struct.
gnome-vfsmm 2.5.3:
- Added utility functions, such as escaping/unescaping of
strings. (Murray Cumming) - Added Glib::Value specializations for enums. (Bryan
Forbes)
libgnomeuimm 2.5.3:
- Stock items: Fix linker error when using these. (Bryan
Forbes) - PixmapEntry: Correct the base class.
- Entry: Really deprecate it. (Bryan Forbes)
- Java (java-gnome):
2.5.7 (2.6 Beta 2)
Updated Classes:
glib.CustomEvents – Reverted implementation to original
implementation plus a
fix for the update bug. (far better performance when adding
events) [Mark Howard]
glib.Boxed & glib.GObject – implemented hashCode & equals
methods [Jonas
Berlin]
glib.Enum & glib.Flags – Fixed memory leak in equals method
[Jonas Berlin]
gdk.Color – Fixed handle allocation bug [Jonas Berlin] gdk.Drawable
– added the following methods: [Jeffrey Morgan] drawRGBImage
drawRGBImageDitherAlign
drawRGB32Image
drawRGB32ImageDitherAlign
drawGrayImage
drawIndexedImage
drawPolygon
drawDrawable
drawImage
drawPoints
drawSegments
drawLines
drawGlyphs
drawLayoutLine
drawLayout
drawLayoutLineWithColors
drawLayoutWithColors
gtk.ComboBox – fixed problem with no-op constructor so it now uses
simpler API when not supplying model [Jeffrey Morgan]
gtk.ComboBoxEntry – fixed problem with no-op constructor so it now
uses
simpler API when not supplying model [Jeffrey Morgan]
gtk.Expander – fixed signature of native set_expanded method
[Jeffrey Morgan]
gtk.FileChooserDialog – updated API due to gtk change [Jeffrey
Morgan]
gtk.FileChooserWidget – updated API due to gtk change [Jeffrey
Morgan]
gtk.Item – fixed bug with no-op constructor setting up events prior
object creation [Jeffrey Morgan]
gtk.TextBuffer – fixed selectRange method [Mark Howard]
gtk.TextView
- fixed set/get acceptsTab/overwrite [Mark Howard]
- Fixed problem when creating TreeView via glade [Jeffrey Morgan]
gtk.ToolButton – fixed bug when handling null Icons in object
creation. [Jeffrey Morgan] gtk.ToolItem – fixed bug that caused
failure in creating subclasses Fixes #917565[Jeffrey Morgan] gtk.TreeIter – Fixed bug in TreeIter object
construction. Fixes: #914500 [Mark Howard] gtk.UIManager - fixed object creation bug [Jeffrey Morgan]
- enabled event handling [Jeffrey Morgan] glib.Value – Fixed
Pixbuf handling [Mark Howard] Updated Interfaces: gtk.FileChooser –
updated API due to gtk change [Jeffrey Morgan] Other:- Added dynamic loading of gconf and gtkhtml libraries. [Jeffrey
Morgan] - fixed gnome api doc linkoffline setting
- Updated example applications to use new widgets.
- Removed all empty generated JNI/C files. [Jeffrey Morgan]
- Added tutorial examples to eclipse classpath [Jeffrey
Morgan] - Updated the tutorial to reflect new API [Jeffrey Morgan]
- Fixed native widget to multiple java object mapping problems
(and hencememory leak)
- Fixed memory leak with Strings in signals [Mark Howard]
- Fixed event intialisation [Mark Howard]
- Added shell script to help run example apps [Mark Howard]
- Perl (gtk2-perl):
- Added dynamic loading of gconf and gtkhtml libraries. [Jeffrey
Overview of Changes in Gnome2::Canvas
1.0
- Require stable Glib/Gtk2 1.040
- Add import version checking.
- Spit and polish.
Overview of changes in Gnome2-VFS
1.001
- Made all version checks refer to stable releases.
- Made the test suite more robust.
Overview of changes in Gnome2::GConf
1.000
- New test suite for GConfClient. [Emmanuele]
- Adapted version information methods to the current policy.
[Toersten] - Updated documentation. [Emmanuele]
- Require Glib 1.040. [Emmanuele]
Overview of Changes in Gtk2::GladeXML
1.0
- Import version checking.
- Build improvements.
Overview of changes in Gnome2
1.00
- Depend on Glib 1.04, Gnome2::Canvas 1.00, and Gnome2::VFS
1.00.
Overview of Changes in Glib 1.040
Since 1.02x (the previous stable
series)
- Updated build requirement
- ExtUtils::Depends >= 0.2
- Support for a few new API features in glib-2.4.x.
- Functions that use GErrors in C throw magical Glib::Error
exception objects; these objects overload the stringification
operator, so old code won’t be broken, but new code can match
errors without worrying about translated error messages. User code
and other extensions can register their own error domains. See the
Glib::Error manpage for more info. - Glib::Type enhancements
- Perl code can register enum and flags types for use as
Glib::Objectproperty types.
- During Glib::Object class initialization, invoke INIT_BASE in
the object’s package, if it exists. (Analogue for GTypeClass’s
base_init.) - It is now possible to add GInterface implementations to
Glib::Object types derived in Perl code. - New param spec, Glib::ParamSpec::scalar
- Perl code can register enum and flags types for use as
- Glib::MakeHelper is generally more helpful.
- The POD generation tools allow specification of cumulative data
type descriptions, and much finer control over the format and
content of the generated documentation. - Glib can now export useful constants on request.
- New versioning API, see Glib::version.
Since 1.0391
- Nothing. 🙂
Overview of Changes in Gtk2 1.040
Since 1.02x (the previous stable
series)
- Updated requirements:
- Glib >= 1.040
- ExtUtils::Depends >= 0.2 (required only at build time)
- ExtUtils::PkgConfig >= 1.03 (require only at build
time)
- Add support for new objects and API in gtk+-2.4.0.
- Derivation of Gtk2::CellRenderer has been reworked; it’s much
more sane now, but we retain backward compatibility with the 1.02x
code. - It is now possible to implement GInterfaces in Perl code, so
you can now implement your own Gtk2::TreeModels and
Gtk2::CellEditables. Examples are included. - The SPLICE operation is now supported on Gtk2::SimpleList’s
tied data. - New, standardized versioning API and documentation.
- Documentation enhancements all around.
- Huge test suite expansion and amazing increase in API
coverage. - New utility module Gtk2::TestHelper wraps up some of the
boilerplate involved in testing Gtk2-based modules.
Since 1.0391
- Test fixes. [Torsten]
- Use INT2PTR to quell cast warnings. [muppet]
- Documentation updates. [all]
- Hide private symbols from ABI. [muppet]
- Add examples/dialog.pl [Ross]
- Assorted bits of code cleanup. [muppet]
—
Murray Cumming
www.murrayc.com
murrayc@murrayc.com