Class DataViewPanel
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- de.bsvrz.pat.sysbed.dataview.DataViewPanel
-
- All Implemented Interfaces:
DataViewListener,java.awt.image.ImageObserver,java.awt.MenuContainer,java.io.Serializable,javax.accessibility.Accessible
public class DataViewPanel extends javax.swing.JPanel implements DataViewListener
Dieses Panel stellt die Datensätze, die dasModelübergibt, in einem ScrollPane dar. Mit dem Konstruktor wird ein baumartiger Header erstellt, dessen Spaltenbreiten durch Schieberegler verändert werden kann. Damit dies funktioniert, muss nachdem der Header erzeugt und dieser angezeigt (z.B. durch validate() oder durch Frame.setVisible()) wird mit der MethodeinitHeaderSize()initialisiert werden.- See Also:
- Serialized Form
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
-
Constructor Summary
Constructors Constructor Description DataViewPanel(DataViewModel model)Konstruktor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddDataTableObject(int index, DataTableObject dataTableObject)Fügt einen Datensatz an eine bestimmte Position der bisherigen Datensätze ein.voidaddDataTableObjects(java.util.List<DataTableObject> dataTableObjects)Fügt eine beliebige Anzahl neuer Datensätze an die bestehenden Datensätze hinten an.booleangetFirstRun()Hoffentlich bald überflüssig.HeaderGridgetHeaderGrid()Gibt den Spaltenheader zurück.SelectionManagergetSelectionManager()Gibt den SelectionManager zurück.intgetVerticalScrollBarsMaximumValue()Gibt den Maximalwert des vertikalen Rollbalkens zurück.intgetVerticalScrollBarsVisibleAmount()Gibt den Ausdehung des Knopfes der vertikalen Rollbalkens zurück.intgetVisibleViewPortHeight()Gibt die Höhe des sichtbaren Bereich des Viewports zurück.voidincreaseLowerPanel(int height)Vergrößert den unteren Platzhalter um die angebene HöhevoidinitHeaderSize()Die Größe des Headers wird initial gesetzt.booleanisHorizontalScrollBarVisible()Gibttruezurück, wenn der horizontale Rolbalken sichtbar ist.voidremoveDataTableObject(int index)Löscht einen Datensatz an angegebener Position.voidsetDataTableObjects(java.util.List<DataTableObject> dataTableObjects)Alle bisherigen Datensätze werden gelöscht und die neuen werden übernommen.voidsetFirstRun(boolean firstRun)Kann auf false gesetzt werden, falls die Größen des Spaltenheaders initialisiert worden sind.voidsetHorizontalScrollBarPolicy(int horizontalPolicy)Setzt den Modus des horizontalen Rollbalkens.voidsetVerticalScrollBarsMaximumValue(int value)Setzt den maximalen Wert des vertikalen Rollbalkens.voidsetVerticalScrollBarValue(int value)Setzt den Wert des vertikalen Rollbalkens.java.lang.StringtoString()voidupdate(int index, DataTableObject dataTableObject)Aktualisiert an angegebener Position den Datensatz.-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Constructor Detail
-
DataViewPanel
public DataViewPanel(DataViewModel model)
Konstruktor. Benötigt eine Instanz desDataViewModel. Das Model gibt Benachrichtigungen, falls sich an den anzuzeigenden Daten etwas ändert.- Parameters:
model- das DataViewModel
-
-
Method Detail
-
getSelectionManager
public SelectionManager getSelectionManager()
Gibt den SelectionManager zurück.- Returns:
- den SelectionManager
-
getHeaderGrid
public HeaderGrid getHeaderGrid()
Gibt den Spaltenheader zurück.- Returns:
- den Spaltenheader
-
initHeaderSize
public void initHeaderSize()
Die Größe des Headers wird initial gesetzt. Dies ist notwendig, damit die Headergröße durch die Maus verändert werden kann. Diese Methode muss nach dem Anzeigen der Tabelle, allerdings bevor die ersten Daten kommen, aufgerufen werden.- See Also:
setHeaderSizes(HeaderGrid, int)
-
getFirstRun
public boolean getFirstRun()
Hoffentlich bald überflüssig. Spätestens, wenn die MethodeinitHeaderSize()von der Applikation aufgerufen wird.- Returns:
- gibt
trueoderfalsezurück
-
setFirstRun
public void setFirstRun(boolean firstRun)
Kann auf false gesetzt werden, falls die Größen des Spaltenheaders initialisiert worden sind.- Parameters:
firstRun-trueist Default-Einstellung
-
addDataTableObjects
public void addDataTableObjects(java.util.List<DataTableObject> dataTableObjects)
Fügt eine beliebige Anzahl neuer Datensätze an die bestehenden Datensätze hinten an.Achtung: es ist nicht geklärt, ob diese Methode auch dafür sorgt, dass die Zeilen der Datensätze sichtbar werden, falls sie im sichtbaren Bereich sind, oder ob dazu noch der AdjustmentListener getriggert werden muss. S. addDataTableObject(..).
- Specified by:
addDataTableObjectsin interfaceDataViewListener- Parameters:
dataTableObjects- Liste neuer Datensätze
-
addDataTableObject
public void addDataTableObject(int index, DataTableObject dataTableObject)Fügt einen Datensatz an eine bestimmte Position der bisherigen Datensätze ein. Befindet sich die Position innerhalb der gerade dargestellten Datensätze, dann wird die Darstellung neu erzeugt und angezeigt.DIESER KOMMENTAR IST FALSCH: Tatsächlich wird nur die erste Zeile ins Panel eingefügt, alle anderen kommen erst durch den AdjustmentListener hinzu. Da ein AdjustmentEvent künstlich nur recht komisch auszulösen ist, hätte man das besser so wie beschrieben implementiert. TN, nach langer Fehlersuche.
- Specified by:
addDataTableObjectin interfaceDataViewListener- Parameters:
index- Position des neuen DatensatzesdataTableObject- der neue Datensatz
-
setDataTableObjects
public void setDataTableObjects(java.util.List<DataTableObject> dataTableObjects)
Alle bisherigen Datensätze werden gelöscht und die neuen werden übernommen. Die ersten Datensätze, die angezeigt werden können, werden dargestellt.Für diese Methode ist nicht klar, ob sie von den Problemen der Methode addDataTableObject betroffen ist.
- Specified by:
setDataTableObjectsin interfaceDataViewListener- Parameters:
dataTableObjects- Liste neuer Datensätze
-
removeDataTableObject
public void removeDataTableObject(int index)
Löscht einen Datensatz an angegebener Position.- Specified by:
removeDataTableObjectin interfaceDataViewListener- Parameters:
index- Position des zu löschenden Datensatzes
-
update
public void update(int index, DataTableObject dataTableObject)Aktualisiert an angegebener Position den Datensatz.Von dieser Methode ist nicht bekannt, ob sie von den Problemen der Methode addDataTableObject betroffen ist.
- Specified by:
updatein interfaceDataViewListener- Parameters:
index- Position des zu aktualisierenden DatensatzesdataTableObject- aktueller Datensatz
-
increaseLowerPanel
public void increaseLowerPanel(int height)
Vergrößert den unteren Platzhalter um die angebene Höhe- Parameters:
height- die zu addierende Höhe für den Platzhalter
-
setVerticalScrollBarValue
public void setVerticalScrollBarValue(int value)
Setzt den Wert des vertikalen Rollbalkens.- Parameters:
value- der neue Wert
-
getVerticalScrollBarsMaximumValue
public int getVerticalScrollBarsMaximumValue()
Gibt den Maximalwert des vertikalen Rollbalkens zurück.- Returns:
- gibt den Maximalwert des vertikalen Rollbalkens zurück
-
setVerticalScrollBarsMaximumValue
public void setVerticalScrollBarsMaximumValue(int value)
Setzt den maximalen Wert des vertikalen Rollbalkens.- Parameters:
value- der neue Wert
-
getVerticalScrollBarsVisibleAmount
public int getVerticalScrollBarsVisibleAmount()
Gibt den Ausdehung des Knopfes der vertikalen Rollbalkens zurück.- Returns:
- gibt den Ausdehung des Knopfes der vertikalen Rollbalkens zurück
-
getVisibleViewPortHeight
public int getVisibleViewPortHeight()
Gibt die Höhe des sichtbaren Bereich des Viewports zurück.- Returns:
- gibt die Höhe des sichtbaren Bereich des Viewports zurück
-
isHorizontalScrollBarVisible
public boolean isHorizontalScrollBarVisible()
Gibttruezurück, wenn der horizontale Rolbalken sichtbar ist.- Returns:
- gibt
truezurück, wenn der horizontale Rolbalken sichtbar ist
-
setHorizontalScrollBarPolicy
public void setHorizontalScrollBarPolicy(int horizontalPolicy)
Setzt den Modus des horizontalen Rollbalkens.- Parameters:
horizontalPolicy- der neue Modus
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.awt.Component
-
-