Interface DisplayObjectType
-
- All Superinterfaces:
java.lang.Comparable<DisplayObjectType>
- All Known Implementing Classes:
DefaultDisplayObjectType
,DOTArea
,DOTAsbNode
,DOTComplex
,DOTKm
,DOTLine
,DOTNeedle
,DOTPoint
,DOTRn
,DOTStat
public interface DisplayObjectType extends java.lang.Comparable<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önnenGrundfiguren
besitzen, müssen es aber nicht. Beispiele für Darstellungstypen ohne Grundfiguren sindDOTArea
,DOTComplex
undDOTLine
. Bei diesen Klassen hängen alleEigenschaften
der Visualisierung (z.B. die Farbe) direkt am Darstellungstypen. Anders verhält es sich bei der KlasseDOTPoint
: 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, durchnull
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.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
DisplayObjectType.DisplayObjectTypeItem
Ein Interface für die kleinste Einheit beim Zuordnen von Anmeldedaten (Attributgruppe, Aspekt, Attribut) zu Eigenschaftswerten und deren Beschreibung.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method 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, Property 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 nichtnull
ist.DisplayObjectType.DisplayObjectTypeItem
getDisplayObjectTypeItemForState(java.lang.String primitiveFormName, Property property, DOTSubscriptionData subscriptionData, de.bsvrz.dav.daf.main.DataState dataState)
Ist der Rückgabewert nichtnull
, so ist dieserDisplayObjectType.DisplayObjectTypeItem
für die übergebenen Daten anwendbar.DisplayObjectTypePlugin
getDisplayObjectTypePlugin()
Gibt die Selebstbeschreibung des Plugins, zu dem dieser DisplayObjectType gehört, zurück.DisplayObjectType.DisplayObjectTypeItem
getDOTItemForValue(java.lang.String primitiveFormName, Property property, DOTSubscriptionData subscriptionData, java.lang.String attributeName, double value)
Ist der Rückgabewert nichtnull
, so ist dieserDisplayObjectType.DisplayObjectTypeItem
für die übergebenen Daten anwendbar.java.util.List<Property>
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, Property property)
Gibt den Wert der übergebenen Property zurück, die gegebenenfalls zu der genannten Grundfigur gehört.void
initializeFromPreferences(java.util.prefs.Preferences prefs)
Initialisiert den DisplayObjectType aus dem übergebenen Knoten.boolean
isPropertyStatic(java.lang.String primitiveFormName, Property property)
Ist die Property zu der als Object übergebenen Grundfigur statisch, so erhält mantrue
zurück; andernfalls ist die Eigenschaft dynamisch und man erhältfalse
.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, Property 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, Property property, DisplayObjectType.DisplayObjectTypeItem dItem, java.lang.Double lowerBound, java.lang.Double upperBound)
Setzt den Wert der übergebenen Property, die gegebenenfalls zu der genannten Grundfigur gehört, für das übergebene Intervall auf das übergebene DisplayObjectTypeItem.void
setValueOfStaticProperty(java.lang.String primitiveFormName, Property property, java.lang.Object value)
Setzt den Wert der übergebenen Property, die gegebenenfalls zu der genannten Grundfigur gehört.
-
-
-
Method Detail
-
getName
java.lang.String getName()
Getter für den Namen.- Returns:
- der Name
-
setName
void setName(java.lang.String name)
Setter für den Namen.- Parameters:
name
- der neue Name
-
getInfo
java.lang.String getInfo()
Getter für die Info.- Returns:
- die Kurzinfo
-
setInfo
void setInfo(java.lang.String info)
Setter für die Info.- Parameters:
info
- die Kurzinfo
-
getPrimitiveFormNames
java.util.Set<java.lang.String> getPrimitiveFormNames()
Zugriff auf alle auftretenden Grundfigurnamen.- Returns:
- die Menge aller Grundfigurnamen
-
getPrimitiveFormType
java.lang.String getPrimitiveFormType(java.lang.String primitiveFormName)
Gibt den Grundfigurtyp der Grundfigur zurück.- Parameters:
primitiveFormName
- der Name einer Grundfigur- Returns:
- der Typ der Grundfigur
-
getPrimitiveFormInfo
java.lang.String getPrimitiveFormInfo(java.lang.String primitiveFormName)
Gibt die Kurzinfo zu der Grundfigur zurück.- Parameters:
primitiveFormName
- der Name einer Grundfigur- Returns:
- die Kurzinfo zu der Grundfigur
-
removePrimitiveForm
void removePrimitiveForm(java.lang.String primitiveFormName)
Löscht die entsprechende Grundfigur.- Parameters:
primitiveFormName
- der Name einer Grundfigur
-
getDynamicProperties
java.util.List<Property> getDynamicProperties(@Nullable java.lang.String primitiveFormName)
Zugriff auf alle dynamischen Properties der Grundfigur.- Parameters:
primitiveFormName
- der Name einer Grundfigur- Returns:
- die Liste aller dynamischen Eigenschaften der Grundfigur
-
isPropertyStatic
boolean isPropertyStatic(@Nullable java.lang.String primitiveFormName, Property property)
Ist die Property zu der als Object übergebenen Grundfigur statisch, so erhält mantrue
zurück; andernfalls ist die Eigenschaft dynamisch und man erhältfalse
.- Parameters:
primitiveFormName
- der Name einer Grundfigur odernull
property
- eine Eigenschaft- Returns:
- ist die Eigenschaft statisch?
-
setPropertyStatic
void setPropertyStatic(@Nullable java.lang.String primitiveFormName, Property 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).- Parameters:
primitiveFormName
- der Name einer Grundfigur odernull
property
- eine Eigenschaftb
- der neue Wert
-
getValueOfStaticProperty
java.lang.Object getValueOfStaticProperty(@Nullable java.lang.String primitiveFormName, Property property)
Gibt den Wert der übergebenen Property zurück, die gegebenenfalls zu der genannten Grundfigur gehört.- Parameters:
primitiveFormName
- der Name einer Grundfigur odernull
property
- eine Eigenschaft- Returns:
- der Wert der Eigenschaft
-
setValueOfStaticProperty
void setValueOfStaticProperty(@Nullable java.lang.String primitiveFormName, Property property, java.lang.Object value)
Setzt den Wert der übergebenen Property, 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 Property 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).- Parameters:
primitiveFormName
- der Name einer Grundfigur odernull
property
- eine Eigenschaftvalue
- der neue Wert
-
setValueOfDynamicProperty
void setValueOfDynamicProperty(@Nullable java.lang.String primitiveFormName, Property property, DisplayObjectType.DisplayObjectTypeItem dItem, @Nullable java.lang.Double lowerBound, @Nullable java.lang.Double upperBound)
Setzt den Wert der übergebenen Property, 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 Property 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).- Parameters:
primitiveFormName
- der Name einer Grundfigur odernull
property
- eine EigenschaftdItem
- ein ItemlowerBound
- die untere SchrankeupperBound
- die obere Schranke
-
getCopy
DisplayObjectType getCopy(@Nullable java.lang.String name)
Macht eine tiefe Kopie des DisplayObjectTypes und setzt den Namen um, falls der übergebene String nichtnull
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.- Parameters:
name
- der neue Name odernull
- Returns:
- eine Kopie
-
putPreferences
void putPreferences(java.util.prefs.Preferences prefs)
Speichert die Informationen des DisplayObjectTypes unter dem übergebenen Knoten.- Parameters:
prefs
- der Knoten, unter dem die Speicherung durchgeführt werden soll
-
initializeFromPreferences
void initializeFromPreferences(java.util.prefs.Preferences prefs)
Initialisiert den DisplayObjectType aus dem übergebenen Knoten.- Parameters:
prefs
- der Knoten, unter dem die Initialisierung durchgeführt werden soll
-
deletePreferences
void deletePreferences(java.util.prefs.Preferences prefs)
Löscht den DisplayObjectType unter dem übergebenen Knoten.- Parameters:
prefs
- der Knoten, unter dem die Löschung durchgeführt werden soll
-
getDisplayObjectTypePlugin
DisplayObjectTypePlugin getDisplayObjectTypePlugin()
Gibt die Selebstbeschreibung des Plugins, zu dem dieser DisplayObjectType gehört, zurück.- Returns:
- die Selbstbeschreibung
-
getLegendTreeNodes
LegendTreeNodes getLegendTreeNodes()
Erzeugt den Teilbaum der Legende, für diesen Darstellungstyp.- Returns:
- der Teilbaum der Legende
-
getSubscriptionData
java.util.Set<DOTSubscriptionData> getSubscriptionData()
Gibt alle Anmeldungen, die dieser DisplayObjectTyp benötigt, zurück.- Returns:
- alle Anmeldungen
-
getAttributeNames
java.util.List<java.lang.String> getAttributeNames(@Nullable java.lang.String primitiveFormName, Property property, DOTSubscriptionData subscriptionData)
Gibt die Attributnamen, für die Werte benötigt werden, zu der übergebenen Eigenschaft und der übergebenen Anmeldung zurück.- Parameters:
primitiveFormName
- der Name einer Grundfigur odernull
property
- eine EigenschaftsubscriptionData
- eine Anmeldung- Returns:
- alle Attributname
-
getUsedColors
java.util.Set<java.lang.String> getUsedColors()
Gibt die Namen aller von diesem DisplayObject verwendeten Farben zurück.- Returns:
- Die Menge aller Namen aller benutzten Farben
-
getDOTItemForValue
DisplayObjectType.DisplayObjectTypeItem getDOTItemForValue(@Nullable java.lang.String primitiveFormName, Property property, DOTSubscriptionData subscriptionData, java.lang.String attributeName, double value)
Ist der Rückgabewert nichtnull
, so ist dieserDisplayObjectType.DisplayObjectTypeItem
für die übergebenen Daten anwendbar. Diese Methode wird von einemOnlineDisplayObject
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 vomPainter
zur Visualisierung verwendet.- Parameters:
primitiveFormName
- der Name einer Grundfigur odernull
property
- die EigenschaftsubscriptionData
- Attributgruppe und AspektattributeName
- Attributvalue
- Wert des Attributs- Returns:
- das Item oder
null
-
getDisplayObjectTypeItemForState
DisplayObjectType.DisplayObjectTypeItem getDisplayObjectTypeItemForState(@Nullable java.lang.String primitiveFormName, Property property, DOTSubscriptionData subscriptionData, de.bsvrz.dav.daf.main.DataState dataState)
Ist der Rückgabewert nichtnull
, so ist dieserDisplayObjectType.DisplayObjectTypeItem
für die übergebenen Daten anwendbar. Diese Methode wird von einemDisplayObject
aufgerufen, wenn zur gegebenenAnmeldung
neue Daten geschickt wurden, die aber keine Werte für die Attribute enthalten, sondern Informationen über denZustand
. Der im Rückgabewert enthaltene Wert (z.B. eine Farbe) wird dann vomPainter
zur Visualisierung verwendet.- Parameters:
primitiveFormName
- der Name einer Grundfigur odernull
property
- die EigenschaftsubscriptionData
- Attributgruppe und AspektdataState
- Zustand des Datensatzes- Returns:
- das Item oder
null
-
-