Neues für Entwickler

Die GNOME 2.12 Entwicklerplattform bietet eine stabile Basis für dritte Software-Entwickler sowie für den GNOME-Desktop selbst. Außerdem erleichtert sie die Entwicklung von Anwendungen für Unix und Windows, sowie die Nutzung wichtiger Standards für die Zusammenarbeit mit anderen Desktops.

3.1. Verbesserungen bei GTK+

GTK+ bietet bei GNOME 2.12 einige interessante, für den Anwender sichtbare Features, wie z.B.

  • GTK+ nutzt nun Freedesktops Cairo-Drawing-API wodurch das Verwenden eigener Widgets vereinfacht wird und neue Effekte möglich werden. Dies sollte GNOME erlauben bald neue grafische Effekte zu nutzen, Vorteile aus Hardware-Beschleunigung zu ziehen und die Drucker-APIs zu verbessern.
  • Die »Drag Drop

Zusätzlich zu diesen Änderungen, welche alle GTK-basierten Anwendungen ohne Rekompilation nutzen können, wurden verschiedene neue APIs hinzugefügt, welche die Entwicklung noch einmal vereinfachen. Dazu zählen:

  • GtkFileChooser kann nun einen Bestätigungsdialog vor dem Überschreiben einer Datei anzeigen.
  • GtkWindow kann eine Dringlichkeitsmeldung senden, welche den Fenstermanager anweist z.B. den Fentertitel aufblinken zu lassen.
  • GtkIconView implementiert nun das GtkLayout-Interface und ist in der Lage mit GtkCellRendererCells Objekte zu rendern.
  • Mit GtkTextView können Sie nun Absätzen eine Hintergrundfarbe zuweisen sowie unsichtbaren Text beim Iterieren überspringen.
  • GtkScrolledWindow hat nun Funktionen um die Bildlaufleisten zu erhalten.
  • GtkMenu unterstützt nun vertikale (gedrehte) Menüs und ist in der Lage, den Eingabefokus für bestimmte Anwendungen, wie z.B. die Bildschirmtastatur, zu ignorieren.
  • Das GtkEntryCompletion-Popup-Menü kann nun breiter sein als das Eingabefeld und der Popup kann vermieden werden, falls es nur eine einzige Übereinstimmung gibt.
  • Der GtkAboutDialog-Lizenztext kann nun umgebrochen werden.
  • GtkToolButton kann nun benannte Icons aus den Symbol-Themen nutzen, wobei diese auch beim Ziehen verwendet werden können.
  • GtkSizeGroup kann nun versteckte Widgets ignorieren.

Sehen Sie auch die komplette Liste der neuen APIs in GTK+ 2.8 ein.

3.2. Plattformübergreifend

Die GTK+-Bibliothek ist bereits bei Entwicklern beliebt, die verschiedene Plattformen unterstützen müssen, einschließlich Microsoft Windows, Linux und Unix. Künstler z.B. können ihre Bilder mit GIMP und Inkscape sowohl unter Linux, als auch unter Windows bearbeiten.

Inzwischen können viele andere GNOME-Bibliotheken, einschließlich ORBit2, libgnome, libbonoboui, libgnomeui und gnome-vfs unter Microsoft Windows verwendet werden, wodurch Kompilieren und Verteilen von GNOME-Anwendungen auf dieser Plattform einfacher wird. Obwohl diese Unterstützung noch nicht komplett ist, mag sie für einige Anwendungen ausreichen. Eine vollständige Unterstützung ist bei der nächsten Veröffentlichung von GTK+ und GNOME zu erwarten.

3.3. Einhaltung von Normen

GNOME arbeitet eng mit Gruppen wie freedesktop.org zusammen. Unterstützung von Standards bringt einen großen Vorteil für GNOME-Entwickler und -Nutzer und verbessert deren Erfahrungen, da GNOME, KDE und andere Anwendungen einfacher zuammenarbeiten können. Klaren Spezifikationen zu folgen hilft zusätzlich zu sichern, dass keine Nutzerdaten in proprietären Formaten gefangen sind.

GNOME-Entwickler arbeiten über Freedesktop.org mit anderen Mitgliedern der Freien Software-Gemeinschaft hart an der Entwicklung von Standards, die Interoperabilität gewährleisten. Die Standards beinhalten eine gemeinsame MIME-Datenbank, Symbol-Themen, zuletzt geöffnete Dateien, Menüs, Desktop-Eingaben, die Verwaltung von Vorschaubildern und die Benachrichtigungsfeld-Spezifikationen. Zusätzlich unterstützt GNOME CORBA, XML, Xdnd, EWMH, XEMBED, XSETTINGS und XSMP.