Package org.xhtmlrenderer.swing
Class ScalableXHTMLPanel
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- org.xhtmlrenderer.swing.RootPanel
-
- org.xhtmlrenderer.swing.BasicPanel
-
- org.xhtmlrenderer.simple.XHTMLPanel
-
- org.xhtmlrenderer.swing.ScalableXHTMLPanel
-
- All Implemented Interfaces:
ImageObserver,MenuContainer,Serializable,Accessible,Scrollable,FSCanvas,UserInterface,FormSubmissionListener,RepaintListener
@ParametersAreNonnullByDefault public class ScalableXHTMLPanel extends XHTMLPanel
ScalableXHTMLPanel extendsXHTMLPanelto allow zoom on output.- Author:
- chm
- See Also:
- Serialized Form
-
-
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.BaselineResizeBehavior, Component.BltBufferStrategy, Component.FlipBufferStrategy
-
-
Field Summary
Fields Modifier and Type Field Description static intSCALE_POLICY_FIT_HEIGHTstatic intSCALE_POLICY_FIT_WHOLEstatic intSCALE_POLICY_FIT_WIDTHstatic intSCALE_POLICY_NONE-
Fields inherited from class org.xhtmlrenderer.swing.BasicPanel
formSubmissionListener
-
Fields inherited from class org.xhtmlrenderer.swing.RootPanel
active_element, doc, focus_element, hovered_element, sharedContext
-
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
-
Fields inherited from class java.awt.Component
accessibleContext, 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
Constructors Constructor Description ScalableXHTMLPanel()Instantiates an XHTMLPanel with noDocumentloaded by default.ScalableXHTMLPanel(UserAgentCallback uac)Instantiates a panel with a customUserAgentCallbackimplementation.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddScaleChangeListener(ScaleChangeListener scl)protected voidcalculateScaleAccordingToPolicy(Dimension layoutSize)protected PointconvertFromScaled(int x, int y)protected PointconvertFromScaled(Point origin)protected PointconvertToScaled(int x, int y)protected PointconvertToScaled(Point origin)protected voiddoRender(RenderingContext c, Layer root)Renders according to scale factorBoxfind(int x, int y)Search Box according to scale factordoublegetScale()intgetScalePolicy()voidremoveScaleChangeListener(ScaleChangeListener scl)voidsetDocument(InputStream stream, String url)Renders a Document read from an InputStream using a URL as a base URL for relative paths.voidsetDocument(Document doc, String url)Renders a Document using a URL as a base URL for relative paths.voidsetScale(double newScale)Force scale to usevoidsetScalePolicy(int scalePolicy)-
Methods inherited from class org.xhtmlrenderer.simple.XHTMLPanel
decrementFontSize, getMaxFontScale, getMinFontScale, incrementFontSize, relayout, resetFontSize, setDocument, setDocument, setDocument, setFontScalingFactor, setMaxFontScale, setMinFontScale, setSharedContext
-
Methods inherited from class org.xhtmlrenderer.swing.BasicPanel
addMouseTrackingListener, assignPagePrintPositions, getDocument, getDocumentTitle, getMouseTrackingListeners, getURL, isCenteredPagedView, isInteractive, isOpaque, loadDocument, paintComponent, paintPage, printTree, reloadDocument, reloadDocument, removeMouseTrackingListener, resetMouseTracker, scrollTo, setCenteredPagedView, setDocument, setDocument, setDocumentFromString, setDocumentRelative, setFormSubmissionListener, setInteractive, setLayout, setOpaque, setSize, submit
-
Methods inherited from class org.xhtmlrenderer.swing.RootPanel
addDocumentListener, addNotify, doDocumentLayout, doLayout, find, fireDocumentLoaded, fireDocumentStarted, fireOnLayoutException, fireOnRenderException, getCellRendererPane, getEnclosingScrollPane, getFixedRectangle, getLayoutContext, getLayoutWidth, getPreferredScrollableViewportSize, getRootBox, getRootLayer, getScreenExtents, getScrollableBlockIncrement, getScrollableTracksViewportHeight, getScrollableTracksViewportWidth, getScrollableUnitIncrement, getSharedContext, hasDocumentListeners, init, isActive, isDefaultFontFromComponent, isExtentsHaveChanged, isFocus, isHover, isNeedRelayout, isPrintView, newLayoutContext, newRenderingContext, removeDocumentListener, removeNotify, repaintRequested, resetScrollPosition, setDefaultFontFromComponent, setDocument, setEnclosingScrollPane, setNeedRelayout, setRootBox, validate
-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, 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, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, 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, 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, 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, transferFocusDownCycle, 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, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
SCALE_POLICY_NONE
public static final int SCALE_POLICY_NONE
- See Also:
- Constant Field Values
-
SCALE_POLICY_FIT_WIDTH
public static final int SCALE_POLICY_FIT_WIDTH
- See Also:
- Constant Field Values
-
SCALE_POLICY_FIT_HEIGHT
public static final int SCALE_POLICY_FIT_HEIGHT
- See Also:
- Constant Field Values
-
SCALE_POLICY_FIT_WHOLE
public static final int SCALE_POLICY_FIT_WHOLE
- See Also:
- Constant Field Values
-
-
Constructor Detail
-
ScalableXHTMLPanel
public ScalableXHTMLPanel()
Instantiates an XHTMLPanel with noDocumentloaded by default.
-
ScalableXHTMLPanel
public ScalableXHTMLPanel(UserAgentCallback uac)
Instantiates a panel with a customUserAgentCallbackimplementation.- Parameters:
uac- The custom UserAgentCallback implementation.
-
-
Method Detail
-
setDocument
public void setDocument(Document doc, @Nullable String url)
Renders a Document using a URL as a base URL for relative paths.- Overrides:
setDocumentin classXHTMLPanel- Parameters:
doc- The new document valueurl- The new document value
-
setDocument
public void setDocument(InputStream stream, String url)
Renders a Document read from an InputStream using a URL as a base URL for relative paths.- Overrides:
setDocumentin classXHTMLPanel- Parameters:
stream- The stream to read the Document from.url- The URL used to resolve relative path references.
-
find
public Box find(int x, int y)
Search Box according to scale factor
-
setScale
public void setScale(double newScale) throws IllegalArgumentExceptionForce scale to use- Parameters:
newScale- The scale to use- Throws:
IllegalArgumentException- IfnewScale <= <tt>0.0d</tt>.
-
getScale
public double getScale()
-
addScaleChangeListener
public void addScaleChangeListener(ScaleChangeListener scl)
-
removeScaleChangeListener
public void removeScaleChangeListener(ScaleChangeListener scl)
-
doRender
protected void doRender(RenderingContext c, Layer root)
Renders according to scale factor- Overrides:
doRenderin classBasicPanel- Parameters:
c- the RenderingContext to useroot- The Layer to render
-
calculateScaleAccordingToPolicy
protected void calculateScaleAccordingToPolicy(Dimension layoutSize)
-
convertToScaled
protected Point convertToScaled(int x, int y)
-
convertFromScaled
protected Point convertFromScaled(int x, int y)
-
getScalePolicy
public int getScalePolicy()
-
setScalePolicy
public void setScalePolicy(int scalePolicy)
-
-