Rework:PaketeAnnotationsGUI
From Wiki
| « Architektur GUI | Übersicht | Architektur MVB » |
Annotations GUI: Klassen und Packages
Übersicht
Die Klassen der Annotations-GUI befinden sich alle in dem Package de.unidu.is.annotation.rework.gui
Dort sind folgende Klassen eingefügt worden:
- AnnotationPanel
- AnnotationTreeFrame
- CheckNode
- CheckRenderer
- DeleteAnnotationFrame
- DocumentDetailService
- EditAnnotationFrame
- NewAnnotationFrame
- NodeSelectionListener
- SearchAnnotationFrame
- ShowAnnotationFrame
Weitere Ergänzungen zur Einbindung des Annotationsdienstes ins Daffodilsystem stehen im Package
de.unido.daffodil.gui
Dort sind folgende Klassen geändert worden:
- PaddleGUI
- PaddleTool
- messageBundle.properties
Klassenbeschreibung
Klassen in der Daffodil-GUI
In jedem Änderungsblock des Quelltextes steht der Suchbegriff "rework", um die Stellen leicht auffindbar zu machen.
PaddleGUI
Dort wird das Popup-Menu für den PLib-Document-Tree dargestellt.
Durch eine Abfrage in der DaffUser.properties werden die Annotationsmöglichkeiten angeboten, siehe dazu Einstellungen zur Nutzung des Rework Annotationsdienstes.
Die Darstellungsnamen der einzelnen Menupunkte werden in der messageBundle.properties festgelegt.
PaddleTool
Hier ist die Funktionalität des Popup-Menus implementiert. Von dieser Klasse aus werden also die weiteren Annotations-Dialoge aufgerufen.
messageBundle.properties
Die Darstellungsnamen der Annotationsdialoge im Popup-Menu der PaddleGUI werden hier festgelegt.
Annotations-GUI Klassen
NewAnnotationFrame
Hier kann eine neue Annotation geschrieben und persistent gespeichert werden. Vom Multivalent Browser aus werden zusätzlich noch Informationen darüber gespeichert, wo in dem Dokument sich die Annotation genau befindet.
AnnotationTreeFrame
Zu einem Dokument werden sämtliche Annotationen und Subannotationen in einer Baumhierarchie dargestellt. Die aktuell selektierte Annotation wird auf der rechten Seite in Volldarstelung angezeigt.
SearchAnnotationFrame
Ein Suchdialog, in dem allgemeine und eingeschränkte Suchen nach Annotationen durchgeführt werden. Die Ergebnisliste ist nach Relevanzgewichten sortiert.
ShowAnnotationFrame
Zeigt eine Annotation vollständig an.
EditAnnotationFrame
Annotationen, die man selbst erstellt hat und die ihrerseits nicht mehr annotiert sind, können hier editiert und gespeichert werden.
DeleteAnnotationFrame
Annotationen, die man selbst erstellt hat und die ihrerseits nicht mehr annotiert sind, können hier persistent gelöscht werden. Die Annotation wird noch einmal vollständig angezeigt, um eventuelle Versehen möglichst zu verhindern.
Hilfsklassen
AnnotationPanel
Dieses Panel enthält die Darstellung von Annotationstypen, Autor, Titel und Text einer Annotation. Da mehrere Dialoge diese Darstellung verwenden, wurde sie in dieses Panel ausgelagert, um dann von den einzelnen Dialogen angefordert zu werden. Es gibt Getter- und Setter-Methoden, um die einzelnen Felder zu füllen oder auszulesen, sowie Methoden um einzelne Felder editierbar zu machen.
CheckNode
Klasse für die Knoten des Annotationstypenbaums, um diese mit JCheckBoxen zu versehen.
CheckRenderer
Renderer für die Darstellung der CheckBox-Baumknoten.
NodeSelectionListener
Listener, der die CheckBoxen überprüft.
DocumentDetailService
Für den Such-Dialog werden hier die Document-DaffodilIds in die richtigen Dokumentnamen umgewandelt. Dazu wird eine XML-Informationsdatei, die den richtigen Namen enthält, für jedes Dokument aus dem Backend geladen.
| « Architektur GUI | Übersicht | Architektur MVB » |
