Diese Seite beschreibt nur ein paar der vielen Fähigkeiten von FlexGantt. Die gesamte Menge an Features ist sehr viel größer.
Diese Seite beschreibt nur ein paar der vielen Fähigkeiten von FlexGantt. Die gesamte Menge an Features ist sehr viel größer.
Model-View-Controller (MVC) Architektur - FlexGantt implementiert den gleichen MVC Ansatz, den Entwickler bereits von der Swing Bibliothek kennen. Fast alle Klassen in FlexGantt leiten direkt von Swing Klassen ab. So ist z.B. das Gantt Chart Modell eine Erweiterung der TreeModel Klasse von Swing.
Geteilter Gantt Chart - diese Funktion steht bei vielen Planungssystemen ganz oben auf der Liste. Die Fähigkeit den Gantt Chart in der Mitte zu splitten, so dass man entweder verschiedene Regionen des gleichen Plans oder zwei unterschiedliche Pläne miteinander vergleichen kann. Letzteres erlaubt zum Beispiel die gleichzeitige Sicht auf Aufträge und die zur Verfügung stehenden Ressourcen.
Internationalisierung (i18n) - FlexGantt wird mit Unterstützung für die folgenden Sprache ausgeliefert: Deutsch, Englisch, Spanisch, Französisch, Chinesisch, und Japanisch. Zusätzliche Sprachen können sehr leicht hinzugefügt
werden, indem ein entsprechendes Resource Bundle geschrieben wird.
Abhängigkeiten / Constraints - häufig haben die in einem Gantt Chart angezeigten Aktivitäten irgendeine Beziehung zueinander ("hängt ab von", "startet nach", "startet vor", "gleiche Startzeit", "gleiche Endzeit"). Solche Beziehungen werden durch Linien mit Pfeilenden dargestellt. Auch FlexGantt bietet dieses Standardverhalten an und erlaubt zusätzlich noch die einfache Anpassung der Linien, d.h. die Linien können in verschiedenen Farben und Strichen gezeichnet werden. Wenn gewünscht kann sogar eine ganz andere Darstellungsform gewählt werden. Möglich wird dies durch austauschbare Renderer.
Lazy Loading - in vielen Anwendungen im Planungs- und Steuerungsumfeld sind die darzustellenden Datenmengen gewaltig. Hierfür bietet FlexGantt mehrere Möglichkeiten um "Lazy Loading" Strategien umzusetzen.
Lesezeichen - in FlexGantt können Benutzer Lesezeichen anlegen und auswählen. Diese stellen dann wieder den Zustand des Gantt Charts her, der vorlag als das Lesezeichen erzeugt wurde, d.h. der gleiche Zeitraum wird wieder angezeigt.
Ebenen - FlexGantt verwendet den gleichen Ebenenansatz, den auch viele Grafik- und Zeichenprogramme benutzen. Die verschiedenen grafischen Objekte liegen auf verschiedenen Ebenen. Diese Ebenen können dann einzeln ein- und ausgeschaltet werden. Weiterhin ist es möglich die Reihenfolge und die Transparenz der Ebenen interaktive zu verändern. Mithilfe der Transparenz lassen sich z.B. verschiedene Entwicklungsschritte eines Planes miteinander vergleichen.
Policy gesteuertes Verhalten - Planungssysteme unterscheiden sich häufig sehr stark in ihrem Verhalten sowohl bei den Planungsalgorithmen als auch auf der Benutzeroberfläche. Moderne Systeme erlauben häufig die Konfiguration ihrer Algorithmen mittels austauschbarer "Policies". Den gleichen Ansatz kann man auch in FlexGantt finden. Policies kontrollieren das Verhalten des Gantt Charts indem sie sagen was der Benutzer machen kann und was nicht (z.B. "ist eine Aktivität verschiebbar?"). Anschliessend liefern die Policies auch die Kommandos, um die vom Benutzer gewünschte Aktion durchzuführen. FlexGantt implementiert für letzteres ein komplettes Command Framework einschliesslich Command Stack mit Undo / Redo Funktionen.
Virtuelles Gitter - Aktivitäten lassen sich beim verschieben an einem unsichtbaren virtuellen Gitter ausrichten. Dieses Gitter läßt sich mithilfe einer sogenannten "Policy" beliebig konfigurieren. Die Standardimplementierung der Policy erlaubt das Ausrichten auf Minuten, Stunden, Sekunden, Monaten, Tage, Wochen, Jahre, etc ...
Austauschbare Renderer und Editoren - ein wichtiges architektonisches Konzept das in Swing gefunden werden kann sind die sogenannten Renderer und Editoren. Diese sind austauschbar und werden auf Objekttypen gemapped, d.h. man kann angeben für welche Art Objekt welcher Renderer und welcher Editor verwendet werden soll. FlexGantt folgt auch hier den Vorgaben von Swing und implementiert genau das gleiche Vorgehen. Jede Art von Aktivität im Gantt Chart kann somit unterschiedlich gezeichnet und editiert werden.
Features - Teil 1