public class View extends java.lang.Object implements java.lang.Comparable<View>
Eine Ansicht hat einen eindeutigen Namen unter dem sie von der Ansichtsverwaltung
geführt wird. Sie besteht aus einer Liste von ViewEntries
, also Layern mit
ansichts-spezifischen Einstellungen.
Modifier and Type | Class and Description |
---|---|
static interface |
View.ViewChangeListener
Ein Interface für Listener, die über Änderungen der Ansicht informiert werden wollen.
|
Constructor and Description |
---|
View()
Konstruiert eine leere Ansicht.
|
View(java.lang.String name,
java.util.List<ViewEntry> viewEntries)
Konstruiert eine Ansicht mit Namen und ViewEntries.
|
Modifier and Type | Method and Description |
---|---|
void |
addChangeListener(View.ViewChangeListener listener)
Fügt den Listener den auf Änderungen angemeldeten Listenern hinzu.
|
void |
addLayer(Layer layer)
Fügt einen ViewEntry mit dem übergebenen Layer und Default-Einstellungen am Ende
der Liste der ViewEntries hinzu, falls der übergebene
Layer noch nicht
zu der Ansicht gehört. |
void |
addLayer(Layer layer,
int zoomIn,
int zoomOut,
boolean selectable,
boolean visible)
Fügt einen ViewEntry mit dem übergebenen Layer und Default-Einstellungen am Ende
der Liste der ViewEntries hinzu, falls der übergebene
Layer noch nicht
zu der Ansicht gehört. |
int |
compareTo(View o) |
void |
deletePreferences(java.util.prefs.Preferences prefs)
Entfernt die Ansicht unterhalb des übergebenen Knotens.
|
boolean |
equals(java.lang.Object o) |
java.util.List<ViewEntry> |
getAllViewEntries()
Gibt die Menge der ViewEntries inklusive Notiz-Layern zurück.
|
View |
getCopy(java.lang.String name)
Erzeugt eine tiefe Kopie des aufrufenden Objekts und setzt den Namen auf den übergebenen
Wert, falls dieser nicht
null ist. |
int |
getIndex(ViewEntry viewEntry)
Gibt den Index des ViewEntries innerhalb der Liste der ViewEntries zurück.
|
java.lang.String |
getName()
Ein Getter für den Namen.
|
int |
getNumberOfViewEntries()
Gibt die Anzahl aller ViewEntries inklusive Notiz-Layern zurück.
|
java.util.Set<java.lang.String> |
getUsedColors()
Gibt die Menge aller Farben, die von allen ViewEntries der Ansicht benutzt werden, zurück.
|
java.util.List<ViewEntry> |
getViewEntriesWithoutNoticeEntries()
Gibt die Menge der ViewEntries ohne Notiz-Layer zurück.
|
ViewEntry |
getViewEntry(Layer layer)
Da jeder
Layer nur einmal in einer Ansicht auftreten kann, kann der zugehörige
ViewEntry berechnet werden. |
int |
hashCode() |
boolean |
hasSomethingChanged()
Gibt
true zurück, wenn seit dem Konstruieren der Ansicht oder seit dem letzten Aufruf
von setSomethingChanged() mit dem Wert false, eine Veränderung an der Ansicht vorgenommen wurde
(ob durch eine verändernde Methode oder durch setSomethingChanged() mit dem Wert true ). |
void |
initializeFromPreferences(java.util.prefs.Preferences prefs)
Initialisiert die Ansicht aus dem übergebenen Knoten.
|
void |
layerDefinitionChanged(Layer layer)
Informiert die
View.ViewChangeListeners über einen geänderte Layer. |
void |
layerPropertyChanged(Layer layer)
Informiert die
View.ViewChangeListeners über einen geänderte Layer. |
void |
notifyChangeListenersViewEntryDefinitionChanged(int i)
Informiert die ChangeListener darüber, dass die Definition von ViewEntry i geändert wurde.
|
void |
notifyChangeListenersViewEntryPropertyChanged(int i)
Informiert die ChangeListener darüber, dass eine Eigenschaft von ViewEntry i geändert wurde.
|
void |
putPreferences(java.util.prefs.Preferences prefs)
Speichert die Ansicht in den übergebenen Knoten.
|
void |
remove(int index)
Entfernt den ViewEntry, der an der Stelle
index in der Liste der ViewEntries steht. |
void |
removeAllChangeListeners()
Entfernt alle Listener.
|
void |
removeChangeListener(View.ViewChangeListener listener)
Entfernt den Listener aus der Menge der auf Änderungen angemeldeten Listenern.
|
void |
removeLayer(java.lang.String layerName)
Entfernt alle ViewEntries aus der Ansicht, die den Layer mit dem übergebenen Namen verwenden.
|
void |
setName(java.lang.String name)
Ein Setter für den Namen.
|
void |
setSomethingChanged(boolean b)
Setzt den Wert der internen Variablen, die zum Verwalten von Änderungen seit der letzten Speicherung
dient.
|
void |
switchTableLines(int i,
int j)
Vertauscht die durch die Indizes i und j angegebenen ViewEntries in der Liste aller ViewEntries.
|
java.lang.String |
toString() |
public View()
public View(java.lang.String name, java.util.List<ViewEntry> viewEntries)
name
- der Name der AnsichtviewEntries
- die ViewEntriespublic java.lang.String getName()
public void setName(java.lang.String name)
name
- der neue Namepublic boolean hasSomethingChanged()
true
zurück, wenn seit dem Konstruieren der Ansicht oder seit dem letzten Aufruf
von setSomethingChanged() mit dem Wert false, eine Veränderung an der Ansicht vorgenommen wurde
(ob durch eine verändernde Methode oder durch setSomethingChanged() mit dem Wert true
).public void setSomethingChanged(boolean b)
b
- setzt den Wert des Änderungsstatuspublic java.util.List<ViewEntry> getAllViewEntries()
public int getNumberOfViewEntries()
public java.util.List<ViewEntry> getViewEntriesWithoutNoticeEntries()
public int getIndex(ViewEntry viewEntry)
viewEntry
- ein ViewEntrypublic void addLayer(Layer layer)
Layer
noch nicht
zu der Ansicht gehört.layer
- ein Layerpublic void addLayer(Layer layer, int zoomIn, int zoomOut, boolean selectable, boolean visible)
Layer
noch nicht
zu der Ansicht gehört.layer
- ein LayerzoomIn
- Zoomstufe des EinblendenszoomOut
- Zoomstufe des Ausblendensselectable
- Sollen die Objekte des Layers selektierbar sein?visible
- Soll der Layer eingeblendet werden?public void layerDefinitionChanged(Layer layer)
View.ViewChangeListeners
über einen geänderte Layer.
Kann von außen z.B. von der Ansichtsverwaltung
aufgerufen werden.layer
- ein Layerpublic void layerPropertyChanged(Layer layer)
View.ViewChangeListeners
über einen geänderte Layer.
Kann von außen z.B. von der Ansichtsverwaltung
aufgerufen werden.layer
- ein Layerpublic void removeLayer(java.lang.String layerName)
layerName
- ein Layername@Nullable public ViewEntry getViewEntry(Layer layer)
Layer
nur einmal in einer Ansicht auftreten kann, kann der zugehörige
ViewEntry
berechnet werden.layer
- public void addChangeListener(View.ViewChangeListener listener)
listener
- ein Listenerpublic void removeChangeListener(View.ViewChangeListener listener)
listener
- ein Listenerpublic void removeAllChangeListeners()
public void remove(int index)
index
in der Liste der ViewEntries steht.index
- ein Indexpublic void switchTableLines(int i, int j)
i
- ein Indexj
- ein Indexpublic void notifyChangeListenersViewEntryDefinitionChanged(int i)
i
- ein Indexpublic void notifyChangeListenersViewEntryPropertyChanged(int i)
i
- ein Indexpublic void putPreferences(java.util.prefs.Preferences prefs)
prefs
- der Knoten, unter dem die Speicherung beginntpublic void initializeFromPreferences(java.util.prefs.Preferences prefs)
prefs
- der Knoten, unter dem die Initialisierung beginntpublic void deletePreferences(java.util.prefs.Preferences prefs)
prefs
- der Knoten, unter dem gelöscht wirdpublic java.util.Set<java.lang.String> getUsedColors()
public java.lang.String toString()
toString
in class java.lang.Object
public View getCopy(java.lang.String name)
null
ist.name
- der neue Namepublic int compareTo(View o)
compareTo
in interface java.lang.Comparable<View>
public boolean equals(java.lang.Object o)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object