class HeaderGrid.Splitter
extends javax.swing.JPanel
implements java.awt.event.MouseListener, java.awt.event.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.
HeaderGrid.HeaderElement
,
RowListener
javax.swing.JPanel.AccessibleJPanel
javax.swing.JComponent.AccessibleJComponent
Modifier and Type | Field and Description |
---|---|
private HeaderGrid.Arrow |
_arrow
speichert den nach rechts gerichteten Pfeil incl. seiner Funktionalität
|
private int |
_posInSplitter
speichert bei betätigen der Maustaste die aktuelle Mausposition innerhalb des Schiebereglers
|
private int |
_splitterWidth
speichert die Breite des Schiebereglers
|
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Constructor and Description |
---|
Splitter()
Erzeugt ein Objekt der Klasse
Splitter . |
Modifier and Type | Method and Description |
---|---|
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(java.awt.event.MouseEvent e)
Beim Doppelklick wird die optimale Spaltenbreite in Abhängigkeit der angezeigten Daten ermittelt und gesetzt.
|
void |
mouseDragged(java.awt.event.MouseEvent e)
Bei gedrückter linker Maustaste und ziehen der Maus, wird links stehende Spalte vergrößert bzw. verkleinert.
|
void |
mouseEntered(java.awt.event.MouseEvent e)
wird hier nicht benötigt
|
void |
mouseExited(java.awt.event.MouseEvent e)
wird hier nicht benötigt
|
void |
mouseMoved(java.awt.event.MouseEvent e)
wird hier nicht benötigt
|
void |
mousePressed(java.awt.event.MouseEvent e)
Beim Betätigen der linken Maustaste wird die aktuelle Position der Maus innerhalb des Schiebereglers abgespeichert.
|
void |
mouseReleased(java.awt.event.MouseEvent e)
Beim Loslassen der linken Maustaste werden ggf. gesetzte Werte zurückgesetzt.
|
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.
|
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
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
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
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, 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, transferFocusBackward, transferFocusUpCycle
private final int _splitterWidth
speichert die Breite des Schiebereglers
private int _posInSplitter
speichert bei betätigen der Maustaste die aktuelle Mausposition innerhalb des Schiebereglers
private HeaderGrid.Arrow _arrow
speichert den nach rechts gerichteten Pfeil incl. seiner Funktionalität
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.
grid
- wo die Variable gesetzt werden sollfromParent
- neuer Wert der Variablepublic void addRightArrow()
Fügt den Pfeil zum Aufklappen in den Schieberegler ein.
public void setOptimalColumnWidth()
Setzt die optimale Spaltenbreite, so dass alle Daten vollständig zu sehen sind.
public void mouseClicked(java.awt.event.MouseEvent e)
Beim Doppelklick wird die optimale Spaltenbreite in Abhängigkeit der angezeigten Daten ermittelt und gesetzt.
mouseClicked
in interface java.awt.event.MouseListener
public void mouseEntered(java.awt.event.MouseEvent e)
wird hier nicht benötigt
mouseEntered
in interface java.awt.event.MouseListener
public void mouseExited(java.awt.event.MouseEvent e)
wird hier nicht benötigt
mouseExited
in interface java.awt.event.MouseListener
public void mouseMoved(java.awt.event.MouseEvent e)
wird hier nicht benötigt
mouseMoved
in interface java.awt.event.MouseMotionListener
public void mousePressed(java.awt.event.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.
mousePressed
in interface java.awt.event.MouseListener
e
- Mausereignisprivate void setLastColumnWidth()
Speichert in allen untergeordneten Spalten, die vorher noch nicht geschlossen wurden, die Spaltenbreite.
public void mouseReleased(java.awt.event.MouseEvent e)
Beim Loslassen der linken Maustaste werden ggf. gesetzte Werte zurückgesetzt.
mouseReleased
in interface java.awt.event.MouseListener
e
- Mausereignisprivate void addRightArrows()
Fügt bei darunter liegenden Elementen einen Pfeil ein, falls noch keiner vorhanden ist.
public void mouseDragged(java.awt.event.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.
mouseDragged
in interface java.awt.event.MouseMotionListener
e
- Mausereignisprivate void setColumnWidth(int width)
Setzt die Spaltenbreite auf einen beliebigen Wert.
width
- die neue Spaltenbreiteprivate 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. Falls ja, dann wird er entfernt.
private void removeLowerArrows()
Bei allen darunter liegenden Elementen werden die Pfeile aus den Schiebereglern entfernt.
private void undoColumnWidth()
Die Spaltenbreite wird wieder auf den ursprünglichen Wert gesetzt.