Novidades para Desenvolvedores
The GNOME 2.12 Development Platform provides a stable base for third-party software developers, and for the GNOME Desktop itself. GNOME 2.12 adds some user-visible and API improvements, while maintaining backwards compatibilty and API-stability. It also makes it easier to develop applications that run on Unix and Windows, and use important standards to interoperate with other desktops.
- 3.1 GTK+ Improvements
- 3.2 Cross-platform
- 3.3 Standards Compliance
3.1 GTK+ Improvements
In GNOME 2.12, GTK+ 2.8 provides some interesting user-visible features, such as
- GTK+ now uses the freedesktop Cairo drawing API, making custom widget drawing easier to implement and allowing new effects. In the near future, this should allow GNOME to use new graphics effects and take advantage of hardware acceleration, as well as improving our printing APIs.
- Drag and drop handling has been improved and now previews blocks of text when you drag them.
In addition to these changes, which all GTK-based applications can use without recompilation, several new APIs have been added to make developement even easier. These include:
- GtkFileChooser can now display a file-overwrite confirmation dialog when in save mode.
- GtkWindow can have an urgency hint, instructing the window manager to, for instance, flash the window title.
- GtkIconView now implements the GtkLayout interface, and can render items via GtkCellRendererCells.
- GtkTextView now allows you to set a background color for pargraphs, and you can now skip over invisible text when iterating.
- GtkScrolledWindow has functions to get the scrollbars.
- GtkMenu now supports vertical (rotated) menus, and it can ignore keyboard focus, for special applications such as the onscreen keyboard.
- GtkEntryCompletion's popup menu may now be wider than the Entry, and the popup can be avoided when there is only a single match.
- GtkAboutDialog's license text can now be wrapped.
- GtkToolButton can now use named icons from icon themes, and these iscons may also be used when dragging.
- GtkSizeGroup can ignore hidden widgets.
See also the full list of the new API in GTK+ 2.8.
3.2 Cross-platform
The GTK+ library is already popular among developers who need to support multiple platforms, including Microsoft Windows as well as Linux and UNIX. For instance, artists may edit their images using GIMP and Inkscape on either Linux or Windows.
And now many more GNOME libraries, including ORBit2, libbonobo, libgnome, libbonoboui, libgnomeui and gnome-vfs, can build on Microsoft Windows, making it easier to build and distribute GNOME applications on that platform. While this support is not yet complete, it may be sufficient for some applications, and is expected to be complete in the next release of GTK+ and GNOME.
3.3 Standards Compliance
GNOME works closely with groups such as freedesktop.org. Standards support is a big plus for GNOME developers and users. Interoperability support improves the user experience by allowing GNOME, KDE, and other applications to work together more easily, and following open specifications helps ensure that user data is not trapped in proprietary formats.
GNOME developers are working hard with other members of the free software community through Freedesktop.org on the development of standards to allow interoperability. Those standards include: shared MIME database, icon themes, recent files, menus, desktop entries, thumbnail management, and the system tray specifications. In addition, GNOME supports CORBA, XML, Xdnd, EWMH, XEMBED, XSETTINGS, and XSMP.