Class ViewEntry
java.lang.Object
de.kappich.pat.gnd.viewManagement.ViewEntry
- Direct Known Subclasses:
NoticeViewEntry
public class ViewEntry
extends java.lang.Object
Eine Klasse für einen Layer einer Ansicht mit dessen ansicht-spezifischen Eigenschaften.
Ein ViewEntry ist ein Objekt, das einen Layer
und seine Einstellungen innerhalb einer Ansicht
beschreibt. Dementsprechend
ergeben sich seine Bestandteile (der Layer, zwei Maßstabsgrenzen zum Ein- und Ausblenden, und zwei Flags, die anzeigen, ob die Objekte des Layers
sichtbar sind und ob der Layer aktuell eingeblendet ist) und Methoden.
Zwei Implementationsdeteils: Obwohl ein ViewEntry ein Bestandteil seiner Ansicht ist, kennt er diese auch, um deren ChangeListener mit Hilfe der notify-Methoden über Änderungen zu benachrichtigen. Außerdem wird dem ViewEntry die Swing-Komponente, in der er visualisiert wird, mit einem Setter bekannt gemacht, wenn er visiualisiert wird.
-
Constructor Summary
-
Method Summary
Modifier and Type Method Description javax.swing.JComponent
getComponent()
Gibt die Swing-Komponente, die den ViewEntry aktuell visualisiert, zurück.ViewEntry
getCopy()
Gibt einen neuen ViewEntry zurück, der dem aufrufenden Objekt gleicht, abgesehen davon, dass dieser noch nicht zu einer Ansicht gehört und keine Swing-Komponente, die ihn visualisiert, kennt.Layer
getLayer()
Gibt den Layer zurück.java.util.Set<java.lang.String>
getUsedColors()
Gibt die Menge aller von zugehörigen Layer verwendeten Farben zurück.int
getZoomIn()
Gibt den Wert des Maßstabs zurück, ab dem der Layer eingeblendet wird.int
getZoomOut()
Gibt den Wert des Maßstabs zurück, ab dem der Layer ausgeblendet wird.boolean
initializeFromPreferences(java.util.prefs.Preferences prefs)
Initialisiert einen ViewEntry aus dem angebenen Knoten.boolean
isSelectable()
Gibttrue
zurück, wenn die Objekte des Layers selektierbar sind.boolean
isVisible()
Gibttrue
zurück, wenn der Layer aktuell sichtbar ist.boolean
isVisible(int scale)
Gibttrue
zurück, wenn der Layer sichtbar ist und der übergebene Wert zwischen den Werten von getZoomOut und getZoomIn liegt, d.h. wenn der Layer in einer Karte mit dem entsprechenden Maßstab angezeigt werden soll.void
putPreferences(java.util.prefs.Preferences prefs)
Speichert den ViewEntry unter dem angebenen Knoten.void
setComponent(javax.swing.JComponent component)
Setzt die Swing-Komponente, die den ViewEntry aktuell visualisiert.void
setLayer(Layer layer)
Setzt den Layer und informiert die ChangeListener.void
setSelectable(boolean selectable)
Macht die Objekte des Layers selektierbar oder nicht.void
setView(View view)
Setzt die Ansicht, zu der der ViewEntry gehört.void
setVisible(boolean visible)
Setzt den Wert, der entscheidet, ob der Layer aktuell angezeigt werden soll.void
setZoomIn(int zoomIn)
Setzt den Wert des Maßstabs, ab dem der Layer eingeblendet wird.void
setZoomOut(int zoomOut)
Setzt den Wert des Maßstabs, ab dem der Layer eingeblendet wird.java.lang.String
toString()
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Constructor Details
-
ViewEntry
public ViewEntry()Konstruiert ein leeres Objekt. -
ViewEntry
Konstruiert einen ViewEntry aus den übergebenen Informationen- Parameters:
layer
- Der Layer des ViewEntry'szoomIn
- Der Maßstab, ab dem der Layer des ViewEntry's eingeblendet wirdzoomOut
- Der Maßstab, ab dem der Layer des ViewEntry's ausgeblendet wirdselectable
- Sind die Objekte des Layers selektierbar?visible
- Wird der Layer aktuell angezeigt?
-
-
Method Details
-
setView
Setzt die Ansicht, zu der der ViewEntry gehört. Beim Löschen aus der Ansicht wird der Wertnull
gesetzt.- Parameters:
view
- die Ansicht
-
getLayer
Gibt den Layer zurück.- Returns:
- den Layer
-
setLayer
Setzt den Layer und informiert die ChangeListener.- Parameters:
layer
- neue Layer
-
getZoomIn
public int getZoomIn()Gibt den Wert des Maßstabs zurück, ab dem der Layer eingeblendet wird.- Returns:
- den Zoom-In-Wert
-
setZoomIn
public void setZoomIn(int zoomIn)Setzt den Wert des Maßstabs, ab dem der Layer eingeblendet wird.- Parameters:
zoomIn
- der neue Zoom-In-Wert
-
getZoomOut
public int getZoomOut()Gibt den Wert des Maßstabs zurück, ab dem der Layer ausgeblendet wird.- Returns:
- den Zoom-Out-wert
-
setZoomOut
public void setZoomOut(int zoomOut)Setzt den Wert des Maßstabs, ab dem der Layer eingeblendet wird.- Parameters:
zoomOut
- der neue Zoom-Out-Wert
-
isSelectable
public boolean isSelectable()Gibttrue
zurück, wenn die Objekte des Layers selektierbar sind.- Returns:
- sind die Objekte selektierbar?
-
setSelectable
public void setSelectable(boolean selectable)Macht die Objekte des Layers selektierbar oder nicht. Nur Objekte selektierbarer Layer erscheinen auch im Kartentooltipp.- Parameters:
selectable
- der neue Wert der Selektierbarkeits-Eigenschaft
-
isVisible
public boolean isVisible()Gibttrue
zurück, wenn der Layer aktuell sichtbar ist. Diese Methode überprüft nur das Sichtbarkeitsflag, nicht aber die Zoomstufe (die es möglicherweise nicht gibt, wenn nämlich die Ansicht nicht angezeigt wird).- Returns:
- ist der Layer sichtbar?
-
setVisible
public void setVisible(boolean visible)Setzt den Wert, der entscheidet, ob der Layer aktuell angezeigt werden soll.- Parameters:
visible
- der neue Sichtbarkeitswert
-
isVisible
public boolean isVisible(int scale)Gibttrue
zurück, wenn der Layer sichtbar ist und der übergebene Wert zwischen den Werten von getZoomOut und getZoomIn liegt, d.h. wenn der Layer in einer Karte mit dem entsprechenden Maßstab angezeigt werden soll.- Parameters:
scale
- ein Maßstab- Returns:
- ist der Layer für den übergebenen Maßstab sichtbar?
-
putPreferences
public void putPreferences(java.util.prefs.Preferences prefs)Speichert den ViewEntry unter dem angebenen Knoten.- Parameters:
prefs
- der Knoten, unter dem die Speicherung beginnt
-
initializeFromPreferences
public boolean initializeFromPreferences(java.util.prefs.Preferences prefs)Initialisiert einen ViewEntry aus dem angebenen Knoten.- Parameters:
prefs
- der Knoten, unter dem die Initialisierung beginnt- Returns:
true
, falls erfolgreich,false
sonst
-
toString
public java.lang.String toString()- Overrides:
toString
in classjava.lang.Object
-
getComponent
public javax.swing.JComponent getComponent()Gibt die Swing-Komponente, die den ViewEntry aktuell visualisiert, zurück.- Returns:
- eine Swing-Komponente oder
null
-
setComponent
public void setComponent(@Nullable javax.swing.JComponent component)Setzt die Swing-Komponente, die den ViewEntry aktuell visualisiert.- Parameters:
component
- die neue Swing-Komponente
-
getCopy
Gibt einen neuen ViewEntry zurück, der dem aufrufenden Objekt gleicht, abgesehen davon, dass dieser noch nicht zu einer Ansicht gehört und keine Swing-Komponente, die ihn visualisiert, kennt.- Returns:
- die Kopie
-
getUsedColors
public java.util.Set<java.lang.String> getUsedColors()Gibt die Menge aller von zugehörigen Layer verwendeten Farben zurück.- Returns:
- die Menge der benutzten Farben
-