Die Wrangler-Klassen dienen der Interaktion GUI / Annotation, sie werden zum Anlegen, Verändern und Editieren der Annotation verwendet.
Übersicht Wrangler-Klassen (com.levigo.jadice.swing.internal.annotation.wranglers):
ArrowAnnotationWrangler
Anlegen / Ändern von Pfeil-Annotationen.
EllipseAnnotationWrangler
Anlegen / Ändern von Ellipse- / Oval- / Kreis-Annotationen.
FreehandAnnotationWrangler
Anlegen / Ändern von freihändig gezeichneten Annotationen.
IconifiedTextAnnotationWrangler
Anlegen / Ändern von ikonifizierten textbasierten Annotationen.
ImageAnnotationWrangler
Anlegen / Ändern von Annotationen mit Bildinhalt.
LineAnnotationWrangler
Anlegen / Ändern von Linien basierenden Annotationen.
PolygonAnnotationWrangler
Anlegen / Ändern von Polygon basierenden Annotationen.
RectangleAnnotationWrangler
Anlegen / Ändern von Rechteck basierenden Annotationen.
StampAnnotationWrangler
Anlegen / Ändern von Text basierenden Stempel-Annotationen.
StampImageAnnotationWrangler
Anlegen / Ändern von Bild basierenden Stempel-Annotationen.
TextAnnotationWrangler
Anlegen / Ändern von Text basierenden Annotationen.
Im folgenden werden die Konfigurationsmöglichkeiten der Wrangler-Klassen erläutert:
Allgemeine Parameter, gültig für jede Wrangler-Klasse:
Anlegemodus (hier Beispiel anhand TextAnnotationWrangler-Klasse)
<wrangler class="com.levigo.jadice.swing.internal.annotation.wranglers.TextAnnotationWrangler"> <property name="creationMode">SINGLE_CLICK</property> </wrangler>
Hier kann das Anlegeverhalten der Annotation definiert werden.
Folgende Einstellung sind möglich:
- DEFAULT
Die Annotation kann während des Anlegens in der Grösse beliebig aufgezogen / verändert werden. Der Anlegevorgang wird beendet, sobald die Maustaste losgelassen wird. Aufziehen bei Stempelannotationen ist nicht möglich, da diese ihre Grösse anhand des Textinhalts / der Bildgrösse selbst bestimmt.
- SINGLE_CLICK
Das Anlegen der Annotation wird beim ersten Mausklick beendet, die Annotation erhält die minimale Grösse. Dieses Verhalten kann nützlich sein, wenn man z.B. eine AnnotationCustomizer-Implementation im Annotationsprofil verwendet, die die Grösse der Annotation festlegt.
ArrowAnnotationWrangler
Anpassen der Pfeilspitze
<wrangler class="com.levigo.jadice.swing.internal.annotation.wranglers.ArrowAnnotationWrangler"> <property name="arrowHeadHandleEnabled">false</property> </wrangler>
Folgende Einstellung sind möglich:
- true
Anfasser zum Ändern der Pfeilspitze ist aktiv
- false
Anfasser zum Ändern der Pfeilspitze ist deaktiviert
FreehandAnnotationWrangler
Maximale Punktanzahl
<wrangler class="com.levigo.jadice.swing.internal.annotation.wranglers.FreehandAnnotationWrangler"> <property name="maxPoints">100</property> </wrangler>
Hier kann die maximale Anzahl der Punkte beim Anlegen definiert werden. Wird diese erreicht wird der Anlegevorgang beendet.
PolygonAnnotationWrangler
Parameter:
Offenens / geschlossenes Polygon anlegen
<wrangler class="com.levigo.jadice.swing.internal.annotation.wranglers.PolygonAnnotationWrangler"> <property name="closed">true</property> </wrangler>
Folgende Einstellung sind möglich:
- true
Es wird eine Linie zum Startpunkt gezeichnet (geschlossenes Polygon)
- false
Es wird keine Linie zum Startpunkt gezeichnet (offenes Polygon)
TextAnnotationWrangler
Standardeditorgrösse
<wrangler class="com.levigo.jadice.swing.internal.annotation.wranglers.TextAnnotationWrangler"> <property name="editorWidth">300</property> <property name="editorHeight">100</property> </wrangler>
Hier kann eine Standardgrösse für das Editierfenster definiert werden, die Grössenangaben werden verwendet, wenn die Breite / Höhe der Annotation kleiner als die Standardeditorgrösse ist.
Textformatierungsmodus für den Editor
<wrangler class="com.levigo.jadice.swing.internal.annotation.wranglers.TextAnnotationWrangler"> <property name="editorAdjustMode">WORD</property> </wrangler>
Hier kann eine Textformatierung für den Editor definiert werden. Wenn keine Formatierung gesetzt ist (= DISABLED), wird die Textformatierung vom TextAnnotationRenderer verwendet.
Folgende Einstellung sind möglich:
DISABLED
Die Textformatierung ist deaktiviert (Standard).
NONE
Es wird keine Formatierung vorgenommen.
WORD
Der Text wird wortweise angepasst an die Breite des Editorfensters.
CHARACTER
Der Text wird zeichenweise angepasst an die Breite des Editorfensters.
Standardgrösse
<wrangler class="com.levigo.jadice.swing.internal.annotation.wranglers.TextAnnotationWrangler"> <property name="defaultSizeMode">FIT</property> <property name="defaultWidth">300</property> <property name="defaultHeight">100</property> </wrangler>
Hier kann eine Standardgrösse für die Annotation beim Anlegen definiert werden.
Folgende Einstellung sind möglich:
DISABLED
Grössenanpassung ist deaktiviert (Standardeinstellung).
FIT
Grösse wird dynamisch angepasst, d.h. ist die beim Anlegen aufgezogene Grösse (Breite und / oder Höhe) kleiner als die definierte Standardbreite / -höhe, wird die entsprechende Standardgrössenangabe verwendet
FIT_WIDTH
Definierte Standardbreite wird verwendet, wenn die aufgezogene Breite kleiner als die Standardbreite ist.
FIT_HEIGHT
Definierte Standardhöhe wird verwendet, wenn die aufgezogene Höhe kleiner als die Standardhöhe ist.
FORCE
Die definierte Standardgrösse wird immer verwendet.
FORCE_WIDTH
Die definierte Standardbreite wird immer verwendet.
FORCE_HEIGHT
Die definierte Standardhöhe wird immer verwendet.
Textselektion beim Editieren
<wrangler class="com.levigo.jadice.swing.internal.annotation.wranglers.TextAnnotationWrangler"> <property name="textSelection">ALL</property> </wrangler>
Hier kann das Selektionsverhalten des Textes beim Start des Editiervorgangs definiert werden.
Folgende Einstellung sind möglich:
ALL
Es wird der komplette Text markiert (Standardeinstellung).
NONE
Text wird nicht selektiert
Grössenanpassung der Annotation beim Anlegen
<wrangler class="com.levigo.jadice.swing.internal.annotation.wranglers.TextAnnotationWrangler"> <property name="adjustMode">BOUNDS</property> </wrangler>
Hier kann die Grössenanpassung der Annotation nach Beendigung des Editiervorgangs definiert werden.
Folgende Einstellung sind möglich:
NONE
Es wird keine Anpassung vorgenommen, die ursprüngliche Grösse vor dem Editieren wird beibehalten (Standardeinstellung)
BOUNDS
Die Grösse der Annotation wird an den Text angepasst
Ausrichtung des Texteditors bei Drehung
<wrangler class="com.levigo.jadice.swing.internal.annotation.wranglers.TextAnnotationWrangler"> <property name="editorLayout">ROTATED</property> </wrangler>
Hier kann die Ausrichtung des Texteditor bei Drehung definiert werden.
Folgende Einstellung sind möglich:
ROTATED
Texteditor wird entsprechend der aktuellen Rotation gedreht (Standardeinstellung)
ORIGINALLY
Texteditor wird immer in Originalausrichtung (0°) dargestellt