Class View

java.lang.Object
de.kappich.pat.gnd.viewManagement.View
All Implemented Interfaces:
Comparable<View>

public class View extends Object implements Comparable<View>
Die Klasse für die Ansichten der Generischen Netzdarstellung.

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.

  • Constructor Details

    • View

      public View()
      Konstruiert eine leere Ansicht.
    • View

      public View(String name, List<ViewEntry> viewEntries)
      Konstruiert eine Ansicht mit Namen und ViewEntries.
      Parameters:
      name - der Name der Ansicht
      viewEntries - die ViewEntries
  • Method Details

    • getName

      public String getName()
      Ein Getter für den Namen.
      Returns:
      den Namen
    • setName

      public void setName(String name)
      Ein Setter für den Namen.
      Parameters:
      name - der neue Name
    • hasSomethingChanged

      public 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).
      Returns:
      hat sich etwas geändert?
    • setSomethingChanged

      public void setSomethingChanged(boolean b)
      Setzt den Wert der internen Variablen, die zum Verwalten von Änderungen seit der letzten Speicherung dient.
      Parameters:
      b - setzt den Wert des Änderungsstatus
    • getAllViewEntries

      public List<ViewEntry> getAllViewEntries()
      Gibt die Menge der ViewEntries inklusive Notiz-Layern zurück.
      Returns:
      die Menge der ViewEntries
    • getNumberOfViewEntries

      public int getNumberOfViewEntries()
      Gibt die Anzahl aller ViewEntries inklusive Notiz-Layern zurück.
      Returns:
      die Anzahl
    • getViewEntriesWithoutNoticeEntries

      public List<ViewEntry> getViewEntriesWithoutNoticeEntries()
      Gibt die Menge der ViewEntries ohne Notiz-Layer zurück.
      Returns:
      die Menge der ViewEntries
    • getIndex

      public int getIndex(ViewEntry viewEntry)
      Gibt den Index des ViewEntries innerhalb der Liste der ViewEntries zurück. Gehört der ViewEntry gemäß Object.equals() nicht zu dieser Ansicht, so ist der Rückgabewert -1.
      Parameters:
      viewEntry - ein ViewEntry
      Returns:
      der Index des Entrys
    • addLayer

      public 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.
      Parameters:
      layer - ein Layer
    • addLayer

      public 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.
      Parameters:
      layer - ein Layer
      zoomIn - Zoomstufe des Einblendens
      zoomOut - Zoomstufe des Ausblendens
      selectable - Sollen die Objekte des Layers selektierbar sein?
      visible - Soll der Layer eingeblendet werden?
    • layerDefinitionChanged

      public void layerDefinitionChanged(Layer layer)
      Informiert die View.ViewChangeListeners über einen geänderte Layer. Kann von außen z.B. von der Ansichtsverwaltung aufgerufen werden.
      Parameters:
      layer - ein Layer
    • layerPropertyChanged

      public void layerPropertyChanged(Layer layer)
      Informiert die View.ViewChangeListeners über einen geänderte Layer. Kann von außen z.B. von der Ansichtsverwaltung aufgerufen werden.
      Parameters:
      layer - ein Layer
    • removeLayer

      public void removeLayer(String layerName)
      Entfernt alle ViewEntries aus der Ansicht, die den Layer mit dem übergebenen Namen verwenden.
      Parameters:
      layerName - ein Layername
    • getViewEntry

      @Nullable public ViewEntry getViewEntry(Layer layer)
      Da jeder Layer nur einmal in einer Ansicht auftreten kann, kann der zugehörige ViewEntry berechnet werden.
      Parameters:
      layer -
      Returns:
    • addChangeListener

      public void addChangeListener(View.ViewChangeListener listener)
      Fügt den Listener den auf Änderungen angemeldeten Listenern hinzu.
      Parameters:
      listener - ein Listener
    • removeChangeListener

      public void removeChangeListener(View.ViewChangeListener listener)
      Entfernt den Listener aus der Menge der auf Änderungen angemeldeten Listenern.
      Parameters:
      listener - ein Listener
    • removeAllChangeListeners

      public void removeAllChangeListeners()
      Entfernt alle Listener.
    • remove

      public void remove(int index)
      Entfernt den ViewEntry, der an der Stelle index in der Liste der ViewEntries steht.
      Parameters:
      index - ein Index
    • switchTableLines

      public void switchTableLines(int i, int j)
      Vertauscht die durch die Indizes i und j angegebenen ViewEntries in der Liste aller ViewEntries.
      Parameters:
      i - ein Index
      j - ein Index
    • notifyChangeListenersViewEntryDefinitionChanged

      public void notifyChangeListenersViewEntryDefinitionChanged(int i)
      Informiert die ChangeListener darüber, dass die Definition von ViewEntry i geändert wurde.
      Parameters:
      i - ein Index
    • notifyChangeListenersViewEntryPropertyChanged

      public void notifyChangeListenersViewEntryPropertyChanged(int i)
      Informiert die ChangeListener darüber, dass eine Eigenschaft von ViewEntry i geändert wurde.
      Parameters:
      i - ein Index
    • putPreferences

      public void putPreferences(Preferences prefs)
      Speichert die Ansicht in den übergebenen Knoten.
      Parameters:
      prefs - der Knoten, unter dem die Speicherung beginnt
    • initializeFromPreferences

      public void initializeFromPreferences(Preferences prefs)
      Initialisiert die Ansicht aus dem übergebenen Knoten.
      Parameters:
      prefs - der Knoten, unter dem die Initialisierung beginnt
    • deletePreferences

      public void deletePreferences(Preferences prefs)
      Entfernt die Ansicht unterhalb des übergebenen Knotens.
      Parameters:
      prefs - der Knoten, unter dem gelöscht wird
    • getUsedColors

      public Set<String> getUsedColors()
      Gibt die Menge aller Farben, die von allen ViewEntries der Ansicht benutzt werden, zurück.
      Returns:
      die Menge aller benutzten Farben
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getCopy

      public View getCopy(String name)
      Erzeugt eine tiefe Kopie des aufrufenden Objekts und setzt den Namen auf den übergebenen Wert, falls dieser nicht null ist.
      Parameters:
      name - der neue Name
      Returns:
      die Kopie
    • compareTo

      public int compareTo(View o)
      Specified by:
      compareTo in interface Comparable<View>
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object