de.bsvrz.pat.sysbed.dataview
Class HeaderGrid.Splitter

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by de.bsvrz.pat.sysbed.dataview.HeaderGrid.Splitter
All Implemented Interfaces:
MouseListener, MouseMotionListener, ImageObserver, MenuContainer, Serializable, EventListener, Accessible
Enclosing class:
HeaderGrid

 class HeaderGrid.Splitter
extends JPanel
implements MouseListener, MouseMotionListener

Die Klasse implementiert einen Schieberegler. Mit diesem Regler wird eine links benachbarte Spalte durch Benutzung der Maus vergrößert bzw. verkleinert, indem der Schieberegler nach links bzw. rechts verschoben wird.

See Also:
HeaderGrid.HeaderElement, RowListener

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JPanel
JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
Component.AccessibleAWTComponent, Component.BltBufferStrategy, Component.FlipBufferStrategy
 
Field Summary
private  HeaderGrid.Arrow _icon
          speichert den nach rechts gerichteten Pfeil incl.
private  int _posInSplitter
          speichert bei betätigen der Maustaste die aktuelle Mausposition innerhalb des Schiebereglers
private  int _splitterWidth
          speichert die Breite des Schiebereglers
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
HeaderGrid.Splitter()
          Erzeugt ein Objekt der Klasse Splitter.
 
Method Summary
 void addRightArrow()
          Fügt den Pfeil zum Aufklappen in den Schieberegler ein.
private  void addRightArrows()
          Fügt bei darunter liegenden Elementen einen Pfeil ein, falls noch keiner vorhanden ist.
 void mouseClicked(MouseEvent e)
          Beim Doppelklick wird die optimale Spaltenbreite in Abhängigkeit der angezeigten Daten ermittelt und gesetzt.
 void mouseDragged(MouseEvent e)
          Bei gedrückter linker Maustaste und ziehen der Maus, wird links stehende Spalte vergrößert bzw.
 void mouseEntered(MouseEvent e)
          wird hier nicht benötigt
 void mouseExited(MouseEvent e)
          wird hier nicht benötigt
 void mouseMoved(MouseEvent e)
          wird hier nicht benötigt
 void mousePressed(MouseEvent e)
          Beim Betätigen der linken Maustaste wird die aktuelle Position der Maus innerhalb des Schiebereglers abgespeichert.
 void mouseReleased(MouseEvent e)
          Beim Loslassen der linken Maustaste werden ggf.
private  void removeLowerArrows()
          Bei allen darunter liegenden Elementen werden die Pfeile aus den Schiebereglern entfernt.
private  void removeRightArrow()
          Entfernt den Pfeil zum Aufklappen aus dem Schieberegler.
private  void removeUpperArrows()
          Alle darüber liegenden Elemente werden überprüft, ob der Pfeil aus dem Schieberegler entfernt werden kann.
private  void setColumnWidth(int width)
          Setzt die Spaltenbreite auf einen beliebigen Wert.
private  void setFromParent(HeaderGrid grid, boolean fromParent)
          Setzt die Variable im gesamten untergeordneten Grid, welche angibt, ob die mouseDragged-Methode des Schiebereglers von einem Vaterknoten aus aufgerufen wurde.
private  void setLastColumnWidth()
          Speichert in allen untergeordneten Spalten, die vorher noch nicht geschlossen wurden, die Spaltenbreite.
 void setOptimalColumnWidth()
          Setzt die optimale Spaltenbreite, so dass alle Daten vollständig zu sehen sind.
private  void undoColumnWidth()
          Die Spaltenbreite wird wieder auf den ursprünglichen Wert gesetzt.
 
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, 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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, 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, transferFocusBackward, 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, 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, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

_splitterWidth

private final int _splitterWidth
speichert die Breite des Schiebereglers

See Also:
Constant Field Values

_posInSplitter

private int _posInSplitter
speichert bei betätigen der Maustaste die aktuelle Mausposition innerhalb des Schiebereglers


_icon

private HeaderGrid.Arrow _icon
speichert den nach rechts gerichteten Pfeil incl. seiner Funktionalität

Constructor Detail

HeaderGrid.Splitter

public HeaderGrid.Splitter()
Erzeugt ein Objekt der Klasse Splitter.

Method Detail

setFromParent

private void setFromParent(HeaderGrid grid,
                           boolean fromParent)
Setzt die Variable im gesamten untergeordneten Grid, welche angibt, ob die mouseDragged-Methode des Schiebereglers von einem Vaterknoten aus aufgerufen wurde.

Parameters:
grid - wo die Variable gesetzt werden soll
fromParent - neuer Wert der Variable

addRightArrow

public void addRightArrow()
Fügt den Pfeil zum Aufklappen in den Schieberegler ein.


setOptimalColumnWidth

public void setOptimalColumnWidth()
Setzt die optimale Spaltenbreite, so dass alle Daten vollständig zu sehen sind.


mouseClicked

public void mouseClicked(MouseEvent e)
Beim Doppelklick wird die optimale Spaltenbreite in Abhängigkeit der angezeigten Daten ermittelt und gesetzt.

Specified by:
mouseClicked in interface MouseListener

mouseEntered

public void mouseEntered(MouseEvent e)
wird hier nicht benötigt

Specified by:
mouseEntered in interface MouseListener

mouseExited

public void mouseExited(MouseEvent e)
wird hier nicht benötigt

Specified by:
mouseExited in interface MouseListener

mouseMoved

public void mouseMoved(MouseEvent e)
wird hier nicht benötigt

Specified by:
mouseMoved in interface MouseMotionListener

mousePressed

public void mousePressed(MouseEvent e)
Beim Betätigen der linken Maustaste wird die aktuelle Position der Maus innerhalb des Schiebereglers abgespeichert. Ist dies der erste Aufruf, dann werden die Größen der Elemente mittels der Methode DataViewPanel.setHeaderSizes(HeaderGrid,int) initialisiert.

Specified by:
mousePressed in interface MouseListener
Parameters:
e - Mausereignis

setLastColumnWidth

private void setLastColumnWidth()
Speichert in allen untergeordneten Spalten, die vorher noch nicht geschlossen wurden, die Spaltenbreite.


mouseReleased

public void mouseReleased(MouseEvent e)
Beim Loslassen der linken Maustaste werden ggf. gesetzte Werte zurückgesetzt.

Specified by:
mouseReleased in interface MouseListener
Parameters:
e - Mausereignis

addRightArrows

private void addRightArrows()
Fügt bei darunter liegenden Elementen einen Pfeil ein, falls noch keiner vorhanden ist.


mouseDragged

public void mouseDragged(MouseEvent e)
Bei gedrückter linker Maustaste und ziehen der Maus, wird links stehende Spalte vergrößert bzw. verkleinert. Der Layoutmanager macht sein übriges und passt alle anderen Elemente ggf. an.

Specified by:
mouseDragged in interface MouseMotionListener
Parameters:
e - Mausereignis

setColumnWidth

private void setColumnWidth(int width)
Setzt die Spaltenbreite auf einen beliebigen Wert.

Parameters:
width - die neue Spaltenbreite

removeRightArrow

private void removeRightArrow()
Entfernt den Pfeil zum Aufklappen aus dem Schieberegler.


removeUpperArrows

private void removeUpperArrows()
Alle darüber liegenden Elemente werden überprüft, ob der Pfeil aus dem Schieberegler entfernt werden kann. Falls ja, dann wird er entfernt.


removeLowerArrows

private void removeLowerArrows()
Bei allen darunter liegenden Elementen werden die Pfeile aus den Schiebereglern entfernt.


undoColumnWidth

private void undoColumnWidth()
Die Spaltenbreite wird wieder auf den ursprünglichen Wert gesetzt.