public class ViewManager extends javax.swing.table.AbstractTableModel implements javax.swing.table.TableModel, LayerManager.LayerManagerChangeListener
Die Ansichtsverwaltung ist ein Singleton, das unter anderem das Interface TableModel implementiert, damit es vom Ansichtsdialog
angezeigt werden kann.
Diese Klasse ist wie auch die Darstellungstyp-
und die Layerverwaltung
als Singleton implementiert, um den Programmieraufwand für die Kommunikation verschiedener Objekte dieser Klasse untereinader, der andernfalls notwendig wäre, einzusparen. Es kann in Zukunft notwendig sein, dies zu ändern.
Modifier and Type | Field and Description |
---|---|
private static Debug |
_debug |
private static ViewManager |
_instance |
private java.util.Set<java.lang.String> |
_notChangables |
private java.util.List<View> |
_views |
private java.util.Hashtable<java.lang.String,View> |
_viewsHashMap |
private static java.lang.String[] |
columnNames |
Modifier | Constructor and Description |
---|---|
private |
ViewManager() |
Modifier and Type | Method and Description |
---|---|
void |
addView(View view)
Fügt die übergebene Ansicht hinzu, wenn noch keine Ansicht mit demselben Namen existiert.
|
void |
clearViews()
Leert die Ansichtsverwaltung komplett, also inklusive der im Programmkode definierten Ansichten.
|
int |
getColumnCount()
Gibt die Anzahl der Spalten der Tabellendarstellung zurück.
|
java.lang.String |
getColumnName(int columnIndex)
Gibt den Spaltennamen der entsprechenden Spalte in der Tabellendarstellung zurück.
|
int |
getIndexOfView(java.lang.String viewName)
Bestimmt den Index der Ansicht in der Ansichtsverwaltung.
|
static ViewManager |
getInstance()
Die übliche getInstance-Methode eines Singletons.
|
static java.util.prefs.Preferences |
getPreferenceStartPath()
Gibt den Ausgangspunkt der Präferenzen der Ansichtsverwaltung zurück.
|
int |
getRowCount()
Gibt die Anzahl der Zeilen der Tabellendarstellung zurück.
|
void |
getStatistics()
Schreibt eine kleine Statistik der Ansichtsverwaltung auf den Standardausgabekanal.
|
java.util.Set<java.lang.String> |
getUsedColors()
Gibt eine Menge mit allen Namen aller in den Ansichten verwendeten Farben zurück.
|
java.lang.Object |
getValueAt(int rowIndex,
int columnIndex)
Gibt den Wert des Feldes in der Tabellendarstellung zurück.
|
View |
getView(int i)
Gibt die i-te Ansicht zurück (die Zählung beginnt bei 0).
|
View |
getView(java.lang.String viewName)
Gibt die Ansicht der Ansichtsverwaltung zurück, falls die Ansichtsverwaltung eine Ansicht mit diesem Namen besitzt, und
null sonst. |
java.util.Set<java.lang.String> |
getViewNames()
Gibt eine Menge aller Ansichtsnamen zurück.
|
boolean |
hasView(java.lang.String viewName)
Gibt
true zurück, falls die Ansichtsverwaltung eine Ansicht mit diesem Namen besitzt, und false sonst. |
private void |
initDefaultViews() |
private void |
initDefaultViewsForLines(View defaultView) |
private void |
initDefaultViewsForPoints(View defaultView) |
private void |
initUserDefinedViews() |
private void |
internalAdd(View view) |
boolean |
isChangeable(View view)
Gibt
true zurück, wenn die übergebene Ansicht eine benutzer-definierte Ansicht ist, und demzufolge verändert werden kann; andernfalls ist der Rückgabewert false , wenn nämlich die Ansicht im Programmkode festgelegt wurde, und deshalb unveränderbar ist. |
void |
layerAdded(Layer layer)
Diese Methode wird aufgerufen, wenn der Layer hinzugefügt wurde.
|
void |
layerChanged(Layer layer)
Diese Methode wird aufgerufen, wenn der Layer geändert wurde.
|
void |
layerRemoved(java.lang.String layerName)
Diese Methode wird aufgerufen, wenn der Layer gelöscht wurde.
|
static void |
refreshInstance()
Mit Hilfe dieser Methode kann man den ViewManager dazu zwingen, sich erneut zu konstruieren, was etwa nach dem Importieren von Präferenzen sinnvoll ist.
|
private int |
remove(java.lang.String viewName) |
boolean |
removeView(View view)
Entfernt die übergebene Ansicht aus der Ansichtverwaltung, die den Namen von view besitzt, falls eine solche existiert und diese nicht im Programmkode definiert wurde.
|
java.lang.String |
toString() |
addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getColumnClass, getListeners, getTableModelListeners, isCellEditable, removeTableModelListener, setValueAt
private static final ViewManager _instance
private static java.lang.String[] columnNames
private java.util.List<View> _views
private java.util.Hashtable<java.lang.String,View> _viewsHashMap
private java.util.Set<java.lang.String> _notChangables
private static final Debug _debug
public static ViewManager getInstance()
Die übliche getInstance-Methode eines Singletons.
public static void refreshInstance()
Mit Hilfe dieser Methode kann man den ViewManager dazu zwingen, sich erneut zu konstruieren, was etwa nach dem Importieren von Präferenzen sinnvoll ist.
private void initDefaultViews()
private void initDefaultViewsForLines(View defaultView)
private void initDefaultViewsForPoints(View defaultView)
public boolean isChangeable(View view)
Gibt true
zurück, wenn die übergebene Ansicht eine benutzer-definierte Ansicht ist, und demzufolge verändert werden kann; andernfalls ist der Rückgabewert false
, wenn nämlich die Ansicht im Programmkode festgelegt wurde, und deshalb unveränderbar ist.
Die aktuell eingeblendete Ansicht kann immer verändert werden, auch wenn sie im Programmkode festgelegt wurde; allerdings werden die Änderungen nicht gespeichert.
view
- eine Ansichtpublic void addView(View view)
Fügt die übergebene Ansicht hinzu, wenn noch keine Ansicht mit demselben Namen existiert.
view
- eine Ansichtprivate void internalAdd(View view)
public boolean removeView(View view)
Entfernt die übergebene Ansicht aus der Ansichtverwaltung, die den Namen von view besitzt, falls eine solche existiert und diese nicht im Programmkode definiert wurde.
view
- eine Ansichtpublic void clearViews()
Leert die Ansichtsverwaltung komplett, also inklusive der im Programmkode definierten Ansichten.
private void initUserDefinedViews()
public boolean hasView(java.lang.String viewName)
Gibt true
zurück, falls die Ansichtsverwaltung eine Ansicht mit diesem Namen besitzt, und false
sonst.
viewName
- ein Ansichtsnametrue
genau dann, wenn ein View mit dem übergebenen Namen existiertpublic View getView(java.lang.String viewName)
Gibt die Ansicht der Ansichtsverwaltung zurück, falls die Ansichtsverwaltung eine Ansicht mit diesem Namen besitzt, und null
sonst.
viewName
- ein Ansichtsnamenull
public View getView(int i)
Gibt die i-te Ansicht zurück (die Zählung beginnt bei 0).
i
- ein Indexpublic int getIndexOfView(java.lang.String viewName)
Bestimmt den Index der Ansicht in der Ansichtsverwaltung.
viewName
- der Ansichtsnamepublic java.util.Set<java.lang.String> getViewNames()
Gibt eine Menge aller Ansichtsnamen zurück.
public int getColumnCount()
Gibt die Anzahl der Spalten der Tabellendarstellung zurück.
getColumnCount
in interface javax.swing.table.TableModel
public int getRowCount()
Gibt die Anzahl der Zeilen der Tabellendarstellung zurück.
getRowCount
in interface javax.swing.table.TableModel
public java.lang.String getColumnName(int columnIndex)
Gibt den Spaltennamen der entsprechenden Spalte in der Tabellendarstellung zurück.
getColumnName
in interface javax.swing.table.TableModel
getColumnName
in class javax.swing.table.AbstractTableModel
columnIndex
- ein Spaltenindexpublic java.lang.Object getValueAt(int rowIndex, int columnIndex)
Gibt den Wert des Feldes in der Tabellendarstellung zurück.
getValueAt
in interface javax.swing.table.TableModel
rowIndex
- ein ZeilenindexcolumnIndex
- ein Spaltenindexpublic static java.util.prefs.Preferences getPreferenceStartPath()
Gibt den Ausgangspunkt der Präferenzen der Ansichtsverwaltung zurück.
private int remove(java.lang.String viewName)
public java.lang.String toString()
toString
in class java.lang.Object
public void getStatistics()
Schreibt eine kleine Statistik der Ansichtsverwaltung auf den Standardausgabekanal.
public java.util.Set<java.lang.String> getUsedColors()
Gibt eine Menge mit allen Namen aller in den Ansichten verwendeten Farben zurück.
public void layerAdded(Layer layer)
LayerManager.LayerManagerChangeListener
Diese Methode wird aufgerufen, wenn der Layer hinzugefügt wurde.
layerAdded
in interface LayerManager.LayerManagerChangeListener
layer
- ein Layerpublic void layerChanged(Layer layer)
LayerManager.LayerManagerChangeListener
Diese Methode wird aufgerufen, wenn der Layer geändert wurde.
layerChanged
in interface LayerManager.LayerManagerChangeListener
layer
- ein Layerpublic void layerRemoved(java.lang.String layerName)
LayerManager.LayerManagerChangeListener
Diese Methode wird aufgerufen, wenn der Layer gelöscht wurde.
layerRemoved
in interface LayerManager.LayerManagerChangeListener