public interface DisplayObjectType
Das Interface für die Darstellungstypen der Plugins.
Der Name eines Darstellungstypen wird bei der Definition vom Benutzer festgelegt. Er wird als eindeutiges Erkennungszeichen in den Verwaltungsdialogen verwendet, und auch bei der Anzeige in der Legende. Außerdem hat ein Darstellungstyp eine ‘Info’, die als Tooltipp etwa in der Legende benutzt wird.
Ein Darstellungstyp legt fest wie die DisplayObjects
eines Layers dargestellt werden. Darstellungstypen können Grundfiguren
besitzen, müssen es aber nicht. Beispiele für Darstellungstypen ohne Grundfiguren sind DOTArea
, DOTComplex
und DOTLine
. Bei diesen Klassen hängen alle Eigenschaften
der Visualisierung (z.B. die Farbe) direkt am Darstellungstypen. Anders verhält es sich bei der Klasse DOTPoint
: dieser Darstellungstyp hat selbst keine Eigenschaften, sondern ausschließlich benutzerdefinierte Grundfiguren (z.B. ein Rechteck festgelegter Größe) und nur an diesen hängen die Eigenschaften. Bei der Implementation sollte der Zugriff auf Eigenschaften, die direkt am Darstellungstypen hängen, durch null
als Wert für die Grundfigur geschehen.
Jede Grundfigur hat einen Typ, der einerseits definiernde Größen (z.B. den Radius bei dem Typ Kreis), aber auch die möglichen Visualisierungs-Eigenschaften festlegt (z.B. die Füllfarbe).
Eine Visualisierungs-Eigenschaft ist entweder statisch, d.h. unveränderbar, oder dynamisch, d.h. sie verändert sich in Abhängigkeit von Online-Daten.
Modifier and Type | Interface and Description |
---|---|
static interface |
DisplayObjectType.DisplayObjectTypeItem
Ein Interface für die kleinste Einheit beim Zuordnen von Anmeldedaten (Attributgruppe, Aspekt, Attribut) zu Eigenschaftswerten und deren Beschreibung.
|
Modifier and Type | Method and Description |
---|---|
void |
deletePreferences(java.util.prefs.Preferences prefs)
Löscht den DisplayObjectType unter dem übergebenen Knoten.
|
java.util.List<java.lang.String> |
getAttributeNames(java.lang.String primitiveFormName,
DOTProperty property,
DOTSubscriptionData subscriptionData)
Gibt die Attributnamen, für die Werte benötigt werden, zu der übergebenen Eigenschaft und der übergebenen Anmeldung zurück.
|
DisplayObjectType |
getCopy(java.lang.String name)
Macht eine tiefe Kopie des DisplayObjectTypes und setzt den Namen um, falls der übergebene String nicht
null ist. |
DisplayObjectType.DisplayObjectTypeItem |
getDisplayObjectTypeItemForState(java.lang.String primitiveFormName,
DOTProperty property,
DOTSubscriptionData subscriptionData,
DataState dataState)
Ist der Rückgabewert nicht null, so ist dieser DisplayObjectTypeItem für die übergebenen Daten anwendbar.
|
DisplayObjectTypePlugin |
getDisplayObjectTypePlugin()
Gibt die Selebstbeschreibung des Plugins, zu dem dieser DisplayObjectType gehört, zurück.
|
java.util.List<DOTProperty> |
getDynamicProperties(java.lang.String primitiveFormName)
Zugriff auf alle dynamischen Properties der Grundfigur.
|
java.lang.String |
getInfo()
Getter für die Info.
|
LegendTreeNodes |
getLegendTreeNodes()
Erzeugt den Teilbaum der Legende, für diesen Darstellungstyp.
|
java.lang.String |
getName()
Getter für den Namen.
|
java.lang.String |
getPrimitiveFormInfo(java.lang.String primitiveFormName)
Gibt die Kurzinfo zu der Grundfigur zurück.
|
java.util.Set<java.lang.String> |
getPrimitiveFormNames()
Zugriff auf alle auftretenden Grundfigurnamen.
|
java.lang.String |
getPrimitiveFormType(java.lang.String primitiveFormName)
Gibt den Grundfigurtyp der Grundfigur zurück.
|
java.util.Set<DOTSubscriptionData> |
getSubscriptionData()
Gibt alle Anmeldungen, die dieser DisplayObjectTyp benötigt, zurück.
|
java.util.Set<java.lang.String> |
getUsedColors()
Gibt die Namen aller von diesem DisplayObject verwendeten Farben zurück.
|
java.lang.Object |
getValueOfStaticProperty(java.lang.String primitiveFormName,
DOTProperty property)
Gibt den Wert der übergebenen DOTProperty zurück, die gegebenenfalls zu der genannten Grundfigur gehört.
|
void |
initializeFromPreferences(java.util.prefs.Preferences prefs)
Initialisiert den DisplayObjectType aus dem übergebenen Knoten.
|
java.lang.Boolean |
isPropertyStatic(java.lang.String primitiveFormName,
DOTProperty property)
Ist die DOTProperty zu der als Object übergebenen Grundfigur statisch, so erhält man
true zurück; andernfalls ist die Eigenschaft dynamisch und man erhält false . |
DisplayObjectType.DisplayObjectTypeItem |
isValueApplicable(java.lang.String primitiveFormName,
DOTProperty property,
DOTSubscriptionData subscriptionData,
java.lang.String attributeName,
double value)
Ist der Rückgabewert nicht null, so ist dieser DisplayObjectTypeItem für die übergebenen Daten anwendbar.
|
void |
putPreferences(java.util.prefs.Preferences prefs)
Speichert die Informationen des DisplayObjectTypes unter dem übergebenen Knoten.
|
void |
removePrimitiveForm(java.lang.String primitiveFormName)
Löscht die entsprechende Grundfigur.
|
void |
setInfo(java.lang.String info)
Setter für die Info.
|
void |
setName(java.lang.String name)
Setter für den Namen.
|
void |
setPropertyStatic(java.lang.String primitiveFormName,
DOTProperty property,
boolean b)
Setzt die Eigenschaft statisch bzw dynamisch zu sein der übergebenen Eigenschaft, die gegebenenfalls zu der genannten Grundfigur gehört.
|
void |
setValueOfDynamicProperty(java.lang.String primitiveFormName,
DOTProperty property,
DisplayObjectType.DisplayObjectTypeItem dItem,
java.lang.Double lowerBound,
java.lang.Double upperBound)
Setzt den Wert der übergebenen DOTProperty, die gegebenenfalls zu der genannten Grundfigur gehört, für das übergebene Intervall auf das übergebene DisplayObjectTypeItem.
|
void |
setValueOfStaticProperty(java.lang.String primitiveFormName,
DOTProperty property,
java.lang.Object value)
Setzt den Wert der übergebenen DOTProperty, die gegebenenfalls zu der genannten Grundfigur gehört.
|
java.lang.String getName()
Getter für den Namen.
void setName(java.lang.String name)
Setter für den Namen.
der
- Namejava.lang.String getInfo()
Getter für die Info.
void setInfo(java.lang.String info)
Setter für die Info.
info
- die Kurzinfojava.util.Set<java.lang.String> getPrimitiveFormNames()
Zugriff auf alle auftretenden Grundfigurnamen.
java.lang.String getPrimitiveFormType(java.lang.String primitiveFormName)
Gibt den Grundfigurtyp der Grundfigur zurück.
primitiveFormName
- der Name einer Grundfigurjava.lang.String getPrimitiveFormInfo(java.lang.String primitiveFormName)
Gibt die Kurzinfo zu der Grundfigur zurück.
primitiveFormName
- der Name einer Grundfigurvoid removePrimitiveForm(java.lang.String primitiveFormName)
Löscht die entsprechende Grundfigur.
primitiveFormName
- der Name einer Grundfigurjava.util.List<DOTProperty> getDynamicProperties(java.lang.String primitiveFormName)
Zugriff auf alle dynamischen Properties der Grundfigur.
primitiveFormName
- der Name einer Grundfigurjava.lang.Boolean isPropertyStatic(java.lang.String primitiveFormName, DOTProperty property)
Ist die DOTProperty zu der als Object übergebenen Grundfigur statisch, so erhält man true
zurück; andernfalls ist die Eigenschaft dynamisch und man erhält false
.
primitiveFormName
- der Name einer Grundfigur oder null
property
- eine Eigenschaftvoid setPropertyStatic(java.lang.String primitiveFormName, DOTProperty property, boolean b)
Setzt die Eigenschaft statisch bzw dynamisch zu sein der übergebenen Eigenschaft, die gegebenenfalls zu der genannten Grundfigur gehört. Diese Methode sollte so implementiert werden, dass sie beim Ändern die nicht mehr gültigen Werte der Eigenschaft nicht löscht (dadurch wird es möglich, dass der Benutzer diese zwischen statisch und dynamisch hin- und herschaltet ohne seine vorherigen Einstellungen zu verlieren).
primitiveFormName
- der Name einer Grundfigur oder null
property
- eine Eigenschaftb
- der neue Wertjava.lang.Object getValueOfStaticProperty(java.lang.String primitiveFormName, DOTProperty property)
Gibt den Wert der übergebenen DOTProperty zurück, die gegebenenfalls zu der genannten Grundfigur gehört.
primitiveFormName
- der Name einer Grundfigur oder null
property
- eine Eigenschaftvoid setValueOfStaticProperty(java.lang.String primitiveFormName, DOTProperty property, java.lang.Object value)
Setzt den Wert der übergebenen DOTProperty, die gegebenenfalls zu der genannten Grundfigur gehört. Diese Methode sollte so implementiert werden, dass sie auch auch dann den übergebenen Wert behält, wenn die DOTProperty aktuell nicht statisch ist (dadurch wird es möglich, dass der Benutzer diese zwischen statisch und dynamisch hin- und herschaltet ohne seine vorherigen Einstellungen zu verlieren).
primitiveFormName
- der Name einer Grundfigur oder null
property
- eine Eigenschaftvalue
- der neue Wertvoid setValueOfDynamicProperty(java.lang.String primitiveFormName, DOTProperty property, DisplayObjectType.DisplayObjectTypeItem dItem, java.lang.Double lowerBound, java.lang.Double upperBound)
Setzt den Wert der übergebenen DOTProperty, die gegebenenfalls zu der genannten Grundfigur gehört, für das übergebene Intervall auf das übergebene DisplayObjectTypeItem. Diese Methode sollte so implementiert werden, dass sie auch auch dann den übergebenen Wert behält, wenn die DOTProperty aktuell nicht dynamisch ist (dadurch wird es möglich, dass der Benutzer diese zwischen statisch und dynamisch hin- und herschaltet ohne seine vorherigen Einstellungen zu verlieren).
primitiveFormName
- der Name einer Grundfigur oder null
property
- eine EigenschaftdItem
- ein ItemlowerBound
- die untere SchrankeupperBound
- die obere SchrankeDisplayObjectType getCopy(java.lang.String name)
Macht eine tiefe Kopie des DisplayObjectTypes und setzt den Namen um, falls der übergebene String nicht null
ist. Diese Methode wird beim Erstellen und Bearbeiten von Darstellungstypen verwendet: dem Bearbeitungs-Dialog wird eine tiefe Kopie übergeben und alle Änderungen werden an diesem Objekt durchgeführt.
name
- der neue Name oder null
void putPreferences(java.util.prefs.Preferences prefs)
Speichert die Informationen des DisplayObjectTypes unter dem übergebenen Knoten.
prefs
- der Knoten, unter dem die Speicherung durchgeführt werden sollvoid initializeFromPreferences(java.util.prefs.Preferences prefs)
Initialisiert den DisplayObjectType aus dem übergebenen Knoten.
prefs
- der Knoten, unter dem die Initialisierung durchgeführt werden sollvoid deletePreferences(java.util.prefs.Preferences prefs)
Löscht den DisplayObjectType unter dem übergebenen Knoten.
prefs
- der Knoten, unter dem die Löschung durchgeführt werden sollDisplayObjectTypePlugin getDisplayObjectTypePlugin()
Gibt die Selebstbeschreibung des Plugins, zu dem dieser DisplayObjectType gehört, zurück.
LegendTreeNodes getLegendTreeNodes()
Erzeugt den Teilbaum der Legende, für diesen Darstellungstyp.
java.util.Set<DOTSubscriptionData> getSubscriptionData()
Gibt alle Anmeldungen, die dieser DisplayObjectTyp benötigt, zurück.
java.util.List<java.lang.String> getAttributeNames(java.lang.String primitiveFormName, DOTProperty property, DOTSubscriptionData subscriptionData)
Gibt die Attributnamen, für die Werte benötigt werden, zu der übergebenen Eigenschaft und der übergebenen Anmeldung zurück.
primitiveFormName
- der Name einer Grundfigur oder null
property
- eine EigenschaftsubscriptionData
- eine Anmeldungjava.util.Set<java.lang.String> getUsedColors()
Gibt die Namen aller von diesem DisplayObject verwendeten Farben zurück.
DisplayObjectType.DisplayObjectTypeItem isValueApplicable(java.lang.String primitiveFormName, DOTProperty property, DOTSubscriptionData subscriptionData, java.lang.String attributeName, double value)
Ist der Rückgabewert nicht null, so ist dieser DisplayObjectTypeItem für die übergebenen Daten anwendbar. Diese Methode wird von einem DisplayObject
aufgerufen, wenn neue Online-Daten vorliegen, die eine Änderung der Visualisierungs-Eigenschaft zur Folge haben könnte. Der im Rückgabewert enthaltene Wert (z.B. eine Farbe) wird dann vom Painter
zur Visualisierung verwendet.
primitiveFormName
- der Name einer Grundfigur oder null
subscriptionData
- Attributgruppe und AspektattributeName
- Attributvalue
- Wert des AttributsDisplayObjectType.DisplayObjectTypeItem getDisplayObjectTypeItemForState(java.lang.String primitiveFormName, DOTProperty property, DOTSubscriptionData subscriptionData, DataState dataState)
Ist der Rückgabewert nicht null, so ist dieser DisplayObjectTypeItem für die übergebenen Daten anwendbar. Diese Methode wird von einem DisplayObject
aufgerufen, wenn zur gegebenen Anmeldung
neue Daten geschickt wurden, die aber keine Werte für die Attribute enthalten, sondern Informationen über den Zustand
. Der im Rückgabewert enthaltene Wert (z.B. eine Farbe) wird dann vom Painter
zur Visualisierung verwendet.
primitiveFormName
- der Name einer Grundfigur oder null
property
- die EigenschaftsubscriptionData
- Attributgruppe und AspektdataState
- Zustand des Datensatzes