Class JSVGScrollPane
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
org.apache.batik.swing.JSVGScrollPane
- All Implemented Interfaces:
ImageObserver, MenuContainer, Serializable, Accessible
A Swing component that consists of a JSVGCanvas with optional scroll
bars.
Reimplementation, rather than implementing the Scrollable interface, provides several advantages. The main advantage is the ability to control more precisely ScrollBar events; fewer JSVGCanvas updates are required when scrolling. This creates a significant performance (reflected by an increase in scroll speed) advantage compared to implementing the Scrollable interface.
- Version:
- $Id$
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionprotected classAdvanced JScrollBar listener.protected classHandle scroll, zoom, and resize events(package private) classprotected classMouseWheel listener.Nested classes/interfaces inherited from class JPanel
JPanel.AccessibleJPanelNested classes/interfaces inherited from class JComponent
JComponent.AccessibleJComponentNested classes/interfaces inherited from class Container
Container.AccessibleAWTContainerNested classes/interfaces inherited from class Component
Component.AccessibleAWTComponent, Component.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy -
Field Summary
FieldsModifier and TypeFieldDescriptionprotected JSVGCanvasprotected Componentprotected JScrollBarprotected JPanelprotected JSVGScrollPane.SBListenerprotected booleanprotected booleanprotected JScrollBarprotected Rectangle2Dprotected JSVGScrollPane.SBListenerFields inherited from class JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWFields inherited from class Component
accessibleContext, BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
Constructor Summary
ConstructorsConstructorDescriptionJSVGScrollPane(JSVGCanvas canvas) Creates a JSVGScrollPane, which will scroll an JSVGCanvas. -
Method Summary
Modifier and TypeMethodDescriptionprotected voidDerives the SVG Viewbox from the SVG root element.protected SVGDocumentLoaderListenerFactory method so subclasses can override the default load listener.protected JSVGScrollPane.SBListenercreateScrollBarListener(boolean isVertical) Scrollbar listener factory method so subclasses can override the default SBListener behaviour.protected JSVGScrollPane.ScrollListenerFactory method so subclasses can override the default listener behaviourbooleanprotected Rectangle2Dvoidreset()Resets this object (for reloads), releasing any cached data and recomputing scroll extents.protected voidCompute the scrollbar extents, and determine if scrollbars should be visible.voidscaleChange(float scale) Called when the scale size changes.voidsetScrollbarsAlwaysVisible(boolean vis) protected voidSets the translation portion of the transform based upon the current scroll bar positionprotected voidupdateScrollbarState(boolean hNeeded, boolean vNeeded) protected DimensionupdateScrollbarVisibility(int tx, int ty, int maxW, int maxH) Methods inherited from class JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUIMethods inherited from class 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, updateMethods inherited from class 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, validateTreeMethods inherited from class 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, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
Field Details
-
canvas
-
horizontalPanel
-
vertical
-
horizontal
-
cornerBox
-
scrollbarsAlwaysVisible
protected boolean scrollbarsAlwaysVisible -
hsbListener
-
vsbListener
-
viewBox
-
ignoreScrollChange
protected boolean ignoreScrollChange
-
-
Constructor Details
-
JSVGScrollPane
Creates a JSVGScrollPane, which will scroll an JSVGCanvas.
-
-
Method Details
-
getScrollbarsAlwaysVisible
public boolean getScrollbarsAlwaysVisible() -
setScrollbarsAlwaysVisible
public void setScrollbarsAlwaysVisible(boolean vis) -
createScrollBarListener
Scrollbar listener factory method so subclasses can override the default SBListener behaviour. -
createScrollListener
Factory method so subclasses can override the default listener behaviour -
createLoadListener
Factory method so subclasses can override the default load listener. -
getCanvas
-
reset
public void reset()Resets this object (for reloads), releasing any cached data and recomputing scroll extents. -
setScrollPosition
protected void setScrollPosition()Sets the translation portion of the transform based upon the current scroll bar position -
resizeScrollBars
protected void resizeScrollBars()Compute the scrollbar extents, and determine if scrollbars should be visible. -
updateScrollbarVisibility
-
updateScrollbarState
protected void updateScrollbarState(boolean hNeeded, boolean vNeeded) -
checkAndSetViewBoxRect
protected void checkAndSetViewBoxRect()Derives the SVG Viewbox from the SVG root element. Caches it. Assumes that it will not change. -
getViewBoxRect
-
scaleChange
public void scaleChange(float scale) Called when the scale size changes. The scale factor (1.0 == original size). By default, this method does nothing, but may be overidden to display a scale (zoom) factor in a status bar, for example.
-