1.0 die Zweite: NatTable 1.0.0 unter Eclipse Nebula erschienen

Dirk Fauth

Die NatTable ist ein SWT Control für komplexe, hoch-performante Tabellen, Grids und Trees, das mit sehr großen Datenmengen umgehen kann. Dieses gibt es bereits seit mehreren Jahren und wurde bis zur Version 2.3.2 auf Sourceforge gehostet. Vor etwas mehr als einem halben Jahr wurde die NatTable innerhalb des Nebula-Projektes in das Eclipse-Universum aufgenommen und hat aufgrund der Vorgaben im Eclipse Development Process einen Versionsrücksprung auf 0.9.0 vollzogen.

Jetzt wurde die Version 1.0.0 des NatTable Controls unter dem Schirm von Eclipse Nebula veröffentlicht. Mit dieser Version verliert das NatTable-Projekt den Incubation-Status, was aus Eclipse-Sicht bedeutet, dass es als vollwertiges Open-Source Projekt angesehen wird. Außerdem entspricht das Projekt den Eclipse-Qualitätsanforderungen, was durch entsprechende Release Reviews sichergestellt wird.

Neben diversen neuen Features lag das Hauptaugenmerk bei der Entwicklung des 1.0.0 Release auf den Themen Usability, Stabilisierung und Flexibilität. Im Rahmen der Usability wurden Arbeiten an der Infrastruktur, des API und der Dokumentation vorgenommen. Letzteres vor allem im Bereich Javadoc, eine detaillierte Benutzer-Dokumentation ist in Arbeit. Besonders hervorzuheben ist das Vorhandensein einer p2 Update Site für NatTable 1.0.0. Als Sourceforge-Projekt gab es diese nicht und die NatTable musste als JAR-Datei in das dropins-Verzeichnis der Eclipse-Installation gelegt werden, um sie verwenden zu können. Dasselbe galt auch für die NatTable Extensions und deren Abhängigkeiten zu GlazedLists und Apache POI. Diese stehen jetzt dank der Unterstützung des Eclipse Orbit Teams ebenfalls mit ihren aktuellen Versionen als OSGi Bundles über eine p2 Update Site zur Verfügung.

Erst durch diese Anpassungen ist es möglich geworden, für NatTable Core und die Extensions einen automatisierten Build aufzubauen, der jetzt sogar SNAPSHOT Builds für jede Änderung im Source-Code-Repository ausführt und die Ergebnisse wiederum als p2 Update Site zur Verfügung stellt. Hierüber wird auch die API-Dokumentation generiert und veröffentlicht. Die Javadoc ist noch nicht vollständig, aber schon deutlich umfangreicher als zuvor.

Eine besondere optische Neuerung in NatTable 1.0.0 ist die Anpassung des Scroll-Verhaltens. Bisher wurde beim Scrollen zellenweise gesprungen. Dadurch wirkte die NatTable kantig und es war auch nicht möglich, innerhalb Zellen zu scrollen, die größer waren als der verfügbare Viewport. Dies wurde umgestellt auf Pixel-basiertes Scrollen, wodurch sich das Handling der NatTable deutlich weicher anfühlt.

Beim Editieren wurde die API stark überarbeitet und bereinigt. Codeseitig sollte dies nur dann Auswirkung haben, wenn eigene Editoren implementiert wurden, da durch das Erweitern der Interfaces eine klarere Struktur vorgegeben wird. Außerdem wurden Controls erweitert und neue Konfigurationsmöglichkeiten eingefügt, um z.B. das Selektionsverhalten nach Bestätigen eines Wertes zu beeinflussen, Mehrfachselektion in einer Combobox zu unterstützen oder Editoren in einem Subdialog zu öffnen. Letzteres ermöglicht nun auch die Verwendung von SWT und JFace-Dialogen als Editor in der NatTable.

Seit dem Umzug von Sourceforge zu Eclipse werden alle Anpassungen in Bugzilla dokumentiert. Damit können sämtliche Änderungen im Detail eingesehen und in der Git-History nachvollzogen werden. Insgesamt wurden 122 Tickets in Bugzilla geschlossen, sowohl Fehler als auch Erweiterungen.

Eine Auflistung und Beschreibung der wichtigsten Neuigkeiten in Nebula NatTable 1.0.0 finden Sie auf der News & Noteworthy Seite des Projektes.

Geschrieben von
Dirk Fauth
Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.