public class DOTManager
extends javax.swing.table.AbstractTableModel
implements javax.swing.table.TableModel
Der DOTManager verwaltet alle Darstellungstypen. Derzeit ist er als Singleton implementiert, um das Problem der Kommunikation verschiedener Manager zu umgehen. Er ist auch ein TableModel, damit seine Inhalte im DOTManagerDialog angezeigt werden können.
Modifier and Type | Class and Description |
---|---|
static interface |
DOTManager.DOTChangeListener
Ein Interface für Listener, die über Änderungen von Darstellungstypen informiert werden wollen.
|
Modifier and Type | Field and Description |
---|---|
private static Debug |
_debug |
private java.util.List<DOTManager.DOTChangeListener> |
_dotChangeListeners |
private java.util.Hashtable<java.lang.String,DisplayObjectType> |
_dotHash |
private java.util.List<DisplayObjectType> |
_dotList |
private static java.util.Map<java.lang.String,java.lang.String> |
_fullClassNames |
private boolean |
_initialized |
private static DOTManager |
_instance |
private java.util.Set<java.lang.String> |
_notChangables |
private static java.lang.String[] |
columnNames |
Modifier | Constructor and Description |
---|---|
private |
DOTManager() |
Modifier and Type | Method and Description |
---|---|
private void |
addAdvancedDOTForDetectionSites() |
void |
addDOTChangeListener(DOTManager.DOTChangeListener listener)
Fügt das übergebene Objekt zur Liste aller auf Darstellungstypänderungen angemeldeten Objekte hinzu.
|
private void |
addDOTVerkehrsDatenanalyseKurz() |
private static void |
addFullClassNames(java.util.List<java.lang.String> fullClassNames) |
private void |
addTestDOTForDetectionSites() |
void |
clearDisplayObjectTypes()
Löscht alle Darstellungstypen.
|
boolean |
containsDisplayObjectType(java.lang.String name)
Gibt
true zurück, wenn ein Darstellungstyp mit diesem Namen existiert. |
boolean |
deleteDisplayObjectType(DisplayObjectType dot)
Löscht den übergebenen Darstellungstypen.
|
boolean |
deleteDisplayObjectType(java.lang.String dotName)
Löscht den Darstellungstypen mit dem übergebenen Namen, und gibt
true zurück, wenn das Löschen erfolgreich war. |
private java.lang.Class<?> |
getClass(java.lang.String className) |
int |
getColumnCount() |
java.lang.String |
getColumnName(int columnIndex) |
DisplayObjectType |
getDisplayObjectType(int index)
Gibt den Darstellungstypen zu dem übergebenen Index zurück, falls ein solcher existiert, und wirft eine
IndexOutOfBoundsException sonst. |
DisplayObjectType |
getDisplayObjectType(java.lang.String name)
Gibt den Darstellungstypen zu dem übergebenen Namen zurück, falls ein solcher existiert, und
null sonst. |
java.util.List<DisplayObjectType> |
getDisplayObjectTypes()
Gibt alle Darstellungstypen zurück.
|
java.lang.Object[] |
getDOTNames()
Gibt die Namen aller Darstellungstypen zurück.
|
static DOTManager |
getInstance()
Die für eine Singleton typische Methode.
|
static java.util.prefs.Preferences |
getPreferenceStartPath()
Gibt den Ausgangsknoten zum Abspeichern aller Präferenzen des DOTManagers an.
|
int |
getRowCount() |
java.lang.Object |
getValueAt(int rowIndex,
int columnIndex) |
private void |
initDefaultDOTs() |
private void |
initDefaultDOTsForLines() |
private void |
initDefaultDOTsForPoints() |
private boolean |
initUserDefinedDOTs()
Initialisiert die benutzerdefinierten Darstellungstypen.
|
boolean |
isChangeable(DisplayObjectType dot)
Gibt
true zurück, wenn der Darstellungstyp veränderbar ist, was genau dann der Fall ist, wenn er nicht im Programmcode, sondern von einem Benutzer definiert wurde, und false sonst. |
void |
notifyDOTChangeListenersDOTAdded(DisplayObjectType displayObjectType)
Benachrichtigt alle auf Darstellungstypänderungen angemeldeten Objekte über das Hinzufügen eines Darstellungstypen.
|
void |
notifyDOTChangeListenersDOTChanged(DisplayObjectType displayObjectType)
Benachrichtigt alle auf Darstellungstypänderungen angemeldeten Objekte über das Verändern eines Darstellungstypen.
|
void |
notifyDOTChangeListenersDOTRemoved(java.lang.String displayObjectTypeName)
Benachrichtigt alle auf Darstellungstypänderungen angemeldeten Objekte über das Entfernen eines Darstellungstypen.
|
static void |
pluginsAdded(java.util.List<java.lang.String> plugins)
Der PluginManager ruft diese Methode auf, wenn externe Plugins hinzugefügt wurden.
|
private void |
put(DisplayObjectType dot) |
private void |
readFullClassNames() |
static void |
refreshInstance()
Mit Hilfe dieser Methode kann man den DOTManager dazu zwingen, sich erneut zu konstruieren, was etwa nach dem Importieren von Präferenzen angezeigt ist.
|
private void |
remove(DisplayObjectType dot) |
void |
removeDOTChangeListener(DOTManager.DOTChangeListener listener)
Löscht das übergebene Objekt aus der Liste aller auf Darstellungstypänderungen angemeldeten Objekte.
|
void |
saveDisplayObjectType(DisplayObjectType dot)
Speichert den übergebenen Darstellungstypen.
|
private static void |
storeFullClassNameLookup(DisplayObjectType dot) |
addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getColumnClass, getListeners, getTableModelListeners, isCellEditable, removeTableModelListener, setValueAt
private static final DOTManager _instance
private boolean _initialized
private static final java.util.Map<java.lang.String,java.lang.String> _fullClassNames
private static final Debug _debug
private static java.lang.String[] columnNames
private final java.util.List<DisplayObjectType> _dotList
private final java.util.Hashtable<java.lang.String,DisplayObjectType> _dotHash
private final java.util.Set<java.lang.String> _notChangables
private final java.util.List<DOTManager.DOTChangeListener> _dotChangeListeners
public static DOTManager getInstance()
Die für eine Singleton typische Methode.
public static void refreshInstance()
Mit Hilfe dieser Methode kann man den DOTManager dazu zwingen, sich erneut zu konstruieren, was etwa nach dem Importieren von Präferenzen angezeigt ist.
public DisplayObjectType getDisplayObjectType(java.lang.String name)
Gibt den Darstellungstypen zu dem übergebenen Namen zurück, falls ein solcher existiert, und null
sonst.
eine
- Namenull
public DisplayObjectType getDisplayObjectType(int index)
Gibt den Darstellungstypen zu dem übergebenen Index zurück, falls ein solcher existiert, und wirft eine IndexOutOfBoundsException
sonst.
ein
- Index zwischen 0 und der Anzahl der Darstellungstypen - 1public java.util.List<DisplayObjectType> getDisplayObjectTypes()
Gibt alle Darstellungstypen zurück.
public boolean containsDisplayObjectType(java.lang.String name)
Gibt true
zurück, wenn ein Darstellungstyp mit diesem Namen existiert.
true
genau dann, wenn es einen Darstellungstyp mit diesem Namen gibtpublic void saveDisplayObjectType(DisplayObjectType dot)
Speichert den übergebenen Darstellungstypen.
dot
- ein Darstellungstyppublic boolean deleteDisplayObjectType(DisplayObjectType dot)
Löscht den übergebenen Darstellungstypen.
dot
- ein Darstellungstyppublic boolean deleteDisplayObjectType(java.lang.String dotName)
Löscht den Darstellungstypen mit dem übergebenen Namen, und gibt true
zurück, wenn das Löschen erfolgreich war.
dotName
- ein Darstellungstypnametrue
genau dann, wenn das Löschen erfolgreich war.public void clearDisplayObjectTypes()
Löscht alle Darstellungstypen.
private java.lang.Class<?> getClass(java.lang.String className)
private boolean initUserDefinedDOTs()
Initialisiert die benutzerdefinierten Darstellungstypen.
public static java.util.prefs.Preferences getPreferenceStartPath()
Gibt den Ausgangsknoten zum Abspeichern aller Präferenzen des DOTManagers an.
private static void storeFullClassNameLookup(DisplayObjectType dot)
public java.lang.Object[] getDOTNames()
Gibt die Namen aller Darstellungstypen zurück.
private void readFullClassNames()
private void initDefaultDOTs()
private void initDefaultDOTsForLines()
private void initDefaultDOTsForPoints()
private void addDOTVerkehrsDatenanalyseKurz()
private void addAdvancedDOTForDetectionSites()
private void addTestDOTForDetectionSites()
public boolean isChangeable(DisplayObjectType dot)
Gibt true
zurück, wenn der Darstellungstyp veränderbar ist, was genau dann der Fall ist, wenn er nicht im Programmcode, sondern von einem Benutzer definiert wurde, und false
sonst.
dot
- ein Darstellungstyptrue
genau dann, wenn der Darstellungstyp veränderbar istprivate void put(DisplayObjectType dot)
private void remove(DisplayObjectType dot)
public java.lang.String getColumnName(int columnIndex)
getColumnName
in interface javax.swing.table.TableModel
getColumnName
in class javax.swing.table.AbstractTableModel
public int getColumnCount()
getColumnCount
in interface javax.swing.table.TableModel
public int getRowCount()
getRowCount
in interface javax.swing.table.TableModel
public java.lang.Object getValueAt(int rowIndex, int columnIndex)
getValueAt
in interface javax.swing.table.TableModel
public void addDOTChangeListener(DOTManager.DOTChangeListener listener)
Fügt das übergebene Objekt zur Liste aller auf Darstellungstypänderungen angemeldeten Objekte hinzu.
listener
- ein DOTChangeListenerpublic void removeDOTChangeListener(DOTManager.DOTChangeListener listener)
Löscht das übergebene Objekt aus der Liste aller auf Darstellungstypänderungen angemeldeten Objekte.
listener
- ein DOTChangeListenerpublic void notifyDOTChangeListenersDOTAdded(DisplayObjectType displayObjectType)
Benachrichtigt alle auf Darstellungstypänderungen angemeldeten Objekte über das Hinzufügen eines Darstellungstypen.
displayObjectType
- ein Darstellungstyppublic void notifyDOTChangeListenersDOTChanged(DisplayObjectType displayObjectType)
Benachrichtigt alle auf Darstellungstypänderungen angemeldeten Objekte über das Verändern eines Darstellungstypen.
displayObjectType
- ein Darstellungstyppublic void notifyDOTChangeListenersDOTRemoved(java.lang.String displayObjectTypeName)
Benachrichtigt alle auf Darstellungstypänderungen angemeldeten Objekte über das Entfernen eines Darstellungstypen.
displayObjectType
- ein Darstellungstypprivate static void addFullClassNames(java.util.List<java.lang.String> fullClassNames)
public static void pluginsAdded(java.util.List<java.lang.String> plugins)
Der PluginManager ruft diese Methode auf, wenn externe Plugins hinzugefügt wurden. Dies wird statt einem Listener-Mechanismus bevorzugt, weil bei einem solchen sichergestellt werden müsste, dass der DOTManager bereits instanziiert ist.
plugins
- die Liste der hinzugefügten Plugins