java-gnome 4.0.16 released
Ok, so this was a while ago; got a bit behind on my blogging, and it’s time to catch up. This post is an extract of the release note from the NEWS file which you can read online … or in the
sources from Bazaar. We’ve also released 4.0.17-rc1.
java-gnome 4.0.16 (17 Jun 2010)
Accelerating is good for you
Accelerators
java-gnome now has full support for accelerators, the key bindings (such as
Ctrl+Q for “quit”) typically used to activate MenuItems and Actions. The
heart of the API is in the AcceleratorGroup class, although you actually
use it care of MenuItem’s setAccelerator() and Action’s setAccelerator().
Huge thanks are due to Thijs Leibbrand for having navigating the almost
incomprehensible native API and figured out how we could best add coverage for
Java programs.
Cairo Operations
Though we’ve had support for Cairo’s various “operators” (different modes for combining what’s being drawn with what’s already on the surface) for some time, we didn’t really know what we were doing. Thanks to the careful work of Kenneth Prugh, we’ve now got full coverage in the Operator class along with a magnificent series of illustrations. These are the same pictures as are in the underlying Cairo documentation, but like our screenshots, ours are generated automatically by java-gnome programs whenever you build the documentation.
Miscellaneous improvements
The style CENTER has been added in ButtonBoxStyle.
Coverage of GTK’s new InfoBar Widget was added by Guillaume Mazoyer, who also made numerous touch ups to various core classes. The Activatable and Editable interfaces got some love. And methods to get “human readable” byte sizes have been added to the Glib utility class.
Finally, we exposed the code needed to force GDK to revert to the pre GTK 2.18
behaviour of using native X Windows for every Widget. This shouldn’t be
necessary — the whole point of major changes like the “client-side windows”
branch are is that they are supposed to Just Work (and more to the point Just
Work better, over time) — but it does give a workaround for unusual corner
cases where either GTK, java-gnome, or the developer is constrained and needs
some help. You can call org.gnome.gdk[]‘s ensureNative() if you
need it.
You can download java-gnome’s sources from ftp.gnome.org_, or easily checkout a branch from_ ‘mainline‘:
$ bzr checkout bzr://research.operationaldynamics.com/bzr/java-gnome/mainline java-gnome
though if you’re going to do that you’re best off following the instructions in the HACKING guidelines.
AfC
