public class ScrollViewport extends javax.swing.JPanel
Modifier and Type | Class and Description |
---|---|
private class |
ScrollViewport.ScrollViewPortMouseListener |
javax.swing.JPanel.AccessibleJPanel
javax.swing.JComponent.AccessibleJComponent
Modifier and Type | Field and Description |
---|---|
static int |
ALL_DIRECTION
Allow scrolling in both directions
|
private int |
allowedScrollDirections |
private java.util.List<javax.swing.JButton> |
buttons |
private javax.swing.JComponent |
component |
static int |
DOWN_DIRECTION
Direction flag for downwards
|
static int |
HORIZONTAL_DIRECTION
Allow horizontal scrolling
|
static int |
LEFT_DIRECTION
Direction flag for left
|
private static int |
NO_SCROLL |
private java.awt.event.ComponentAdapter |
refreshButtonsOnResize |
static int |
RIGHT_DIRECTION
Direction flag for right
|
private int |
scrollDirection |
private javax.swing.Timer |
timer |
static int |
UP_DIRECTION
Direction flag for upwards
|
static int |
VERTICAL_DIRECTION
Allow vertical scrolling
|
private javax.swing.JViewport |
vp |
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
Constructor and Description |
---|
ScrollViewport(int direction)
Create a new scroll viewport
|
ScrollViewport(javax.swing.JComponent c,
int direction)
Create a new scroll viewport
|
Modifier and Type | Method and Description |
---|---|
void |
add(javax.swing.JComponent c)
Sets the component to be used as content.
|
private void |
addScrollButton(int direction,
java.lang.String icon,
java.lang.String borderLayoutPosition) |
java.awt.Dimension |
getMinimumSize() |
java.awt.Dimension |
getPreferredSize() |
java.awt.Point |
getViewPosition()
Gets the position (offset) of the view area
|
java.awt.Rectangle |
getViewRect()
Gets the current visible part of the view
|
java.awt.Dimension |
getViewSize()
Gets the size of the view
|
void |
scroll()
Scrolls in the currently selected scroll direction.
|
void |
scroll(int deltaX,
int deltaY)
Scrolls by the given offset
|
void |
showOrHideButtons()
Update the visibility of the buttons
Only show them if the Viewport is too small for the content.
|
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, getNextFocusableComponent, getPopupLocation, 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 static final int NO_SCROLL
public static final int UP_DIRECTION
public static final int DOWN_DIRECTION
public static final int LEFT_DIRECTION
public static final int RIGHT_DIRECTION
public static final int VERTICAL_DIRECTION
public static final int HORIZONTAL_DIRECTION
public static final int ALL_DIRECTION
private final javax.swing.JViewport vp
private javax.swing.JComponent component
private final java.util.List<javax.swing.JButton> buttons
private final javax.swing.Timer timer
private int scrollDirection
private final int allowedScrollDirections
private final transient java.awt.event.ComponentAdapter refreshButtonsOnResize
public ScrollViewport(javax.swing.JComponent c, int direction)
c
- The component to display as content.direction
- The direction to scroll.
Should be one of VERTICAL_DIRECTION
, HORIZONTAL_DIRECTION
, ALL_DIRECTION
public ScrollViewport(int direction)
direction
- The direction to scroll.
Should be one of VERTICAL_DIRECTION
, HORIZONTAL_DIRECTION
, ALL_DIRECTION
private void addScrollButton(int direction, java.lang.String icon, java.lang.String borderLayoutPosition)
public void scroll()
public void scroll(int deltaX, int deltaY)
deltaX
- offset xdeltaY
- offset ypublic void showOrHideButtons()
public java.awt.Rectangle getViewRect()
public java.awt.Dimension getViewSize()
public java.awt.Point getViewPosition()
public java.awt.Dimension getPreferredSize()
getPreferredSize
in class javax.swing.JComponent
public java.awt.Dimension getMinimumSize()
getMinimumSize
in class javax.swing.JComponent
public void add(javax.swing.JComponent c)
c
- The component