Neues für Entwickler

Die folgenden Änderungen sind wichtig für Entwickler, welche die Entwicklungsplattform von GNOME 2.26 verwenden möchten. Wenn Sie dies nicht interessiert, können Sie direkt bei Abschnitt 5 ― Internationalisierung weiterlesen.

So wie für den GNOME-Desktop, ist GNOME 2.26 auch die neueste Version der GNOME-Entwicklerplattform, einer Sammlung von API- und ABI-stabilen Bibliotheken, welche unter der GNU LGPL lizenziert sind und zur Entwicklung plattformübergreifender Anwendung genutzt werden können.

Keine Verwendung veralteter Bibliotheken mehr

Ab GNOME 3.0 werden zahlreiche veraltete Teile von GNOME entfernt. Diese veralteten Komponenten sind unter anderem GNOME-spezifische Bibliotheken wie libgnome, libgnomeui, libgnomeprint, libgnomeprintui, libglade, und libgnomevfs. Für Anwendungen, die Bestandteil des GNOME-Desktops sind, wurden mehrere Aufräumaufgaben erstellt, um sicher zu stellen, dass kein veralteter Quelltext mehr verwendet wird. Dadurch wird ein einfacher Übergang zu GNOME 3.0 ermöglicht.

Allen Entwicklern wird empfohlen diesem Beispiel bei ihren eigenen Anwendungen zu folgen. Weiterhin listet die Wiki-Seite GNOME goals verschiedene Aufgaben für Entwickler (oder potenzielle Entwickler) auf, die noch erledigt werden müssen.

4.1. GTK+ 2.16

GTK+ 2.16 ist die aktuelle Version des GTK+-Toolkit, welches das Herz von GNOME bildet. Neben dem Hinzufügen einer Reihe neuer Funktionen für Entwickler wurden in GTK+ 2.16 zahlreiche Fehler behoben und eine Grundreinigung vorgenommen, um den Wechsel auf das anstehende GTK+ 3.0 zu vereinfachen.

Das Widget GtkEntry kann nun ein Symbol vor oder nach dem Eingabe-Widget anzeigen (abhängig von Ihrer lokalen Schreibrichtung). Optional können diese Symbole aufleuchten oder anklickbar sein.

Abbildung 8Symbole in GtkEntry

Weiterhin kann das Widget GtkEntry nun dazu verwendet werden, um Fortschrittsbalken anzuzeigen.

Abbildung 9GtkEntry mit Fortschrittsbalken

Das neue Interface GtkActivatable wurde für Widgets hinzugefügt, die mit einer GtkAction verknüpft werden können.

4.2. Zugriff auf die API für das CD/DVD-Brennen

Die Bibliothek libbrasero-media stellt eine Schnittstelle bereit, mit der Anwendungen auf die Brenninfrastruktur von GNOME zugreifen können. Ein Anwendungsbeispiel kann unter anderem in GNOMEs Video-Player gefunden werden, in welchem DVDs und VCDs eines Films erstellt werden können.

4.3. Zugriff auf die Evince-API

Über die neue Bibliothek libevview kann nun das von Evince verwendete Widget EvView verwendet werden, um dessen Dokumentenbetrachungsfähigkeiten auch in anderen Anwendungen nutzbar zu machen.

libevdocument ist eine Bibliothek, mit der Dritte Backends für Dokumentenformate entwickelt können, deren Unterstützung nicht Bestandteil der Evince-Kernanwendung ist.

Weiterhin haben beide Bibliotheken bereits über gnome-python-desktop Anbindungen an die Programmiersprache Python.

4.4. Anjuta

Die integrierte Entwicklungsumgebung Anjuta hat in GNOME 2.26 einige große Verbesserungen erfahren. Am wichtigsten ist wohl die komplette Neuprogrammierung der Symbolverwaltung, welche zusammen mit dem neuen Lesezeichensystem schnellere Navigation im Quelltext erlaubt. Weiterhin ist auch die Quelltextvervollständigung und Methodentipps für alle über pkg-config erkannten Bibliotheken möglich.

Zusätzlich haben die Integration der Versionskontrollsysteme und des Glade-Oberflächengestalters einen großen Schritt vorwärts gemacht. Bei Projekten, welche die Versionskontrollsysteme Subversion oder Git verwenden, wird im Dateibaum nun ein Statussymbol für alle versionierten Dateien angezeigt. Weiterhin ist es möglich automatisch Ereignisaufrufe von Glade generieren zu lassen. Außerdem werden GtkBuilder-Dateien nun unterstützt.

Um die GNOME-Mobilplattform besser zu unterstützen, wurden Remote-Debugging über gdbserver und die Unterstützung von Scratchbox (in Version 2) integriert.