Flying Saucer Project Release ${app.version}

org.xhtmlrenderer.swing
Class BasicPanel

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 org.xhtmlrenderer.swing.RootPanel
                      extended by org.xhtmlrenderer.swing.BasicPanel
All Implemented Interfaces:
java.awt.event.ComponentListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, UserInterface, FormSubmissionListener
Direct Known Subclasses:
XHTMLPanel

public abstract class BasicPanel
extends RootPanel
implements FormSubmissionListener

A Swing JPanel that encloses the Flying Saucer renderer for easy integration into Swing applications.

Author:
Joshua Marinacci
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.BaselineResizeBehavior
 
Field Summary
 
Fields inherited from class org.xhtmlrenderer.swing.RootPanel
active_element, focus_element, hovered_element
 
Fields inherited from class javax.swing.JComponent
TOOL_TIP_TEXT_KEY, 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
BasicPanel()
           
BasicPanel(UserAgentCallback uac)
           
 
Method Summary
 void addDocumentListener(DocumentListener listener)
          Adds the specified Document listener to receive Document events from this component.
 void addMouseTrackingListener(FSMouseListener l)
           
 void assignPagePrintPositions(java.awt.Graphics2D g)
           
 org.w3c.dom.Document getDocument()
           
 java.lang.String getDocumentTitle()
          Returns the title as reported by the NamespaceHandler assigned to the SharedContext in this panel.
 java.awt.Rectangle getFixedRectangle()
          Gets the fixedRectangle attribute of the BasicPanel object
 java.util.List getMouseTrackingListeners()
           
 SharedContext getSharedContext()
           
 java.net.URL getURL()
           
 boolean isActive(org.w3c.dom.Element e)
          Gets the active attribute of the UserInterface object
 boolean isCenteredPagedView()
           
 boolean isFocus(org.w3c.dom.Element e)
          Gets the focus attribute of the UserInterface object
 boolean isHover(org.w3c.dom.Element e)
          Gets the hover attribute of the UserInterface object
 boolean isInteractive()
           
 boolean isOpaque()
          Returns whether the background of this BasicPanel will be painted when it is rendered.
 void paintComponent(java.awt.Graphics g)
           
 void paintPage(java.awt.Graphics2D g, int pageNo)
           
 void printTree()
           
 void reloadDocument(org.w3c.dom.Document doc)
          Reloads the document using the same base URL and namespace handler.
 void reloadDocument(java.lang.String URI)
          Reloads the document using the same base URL and namespace handler.
 void removeDocumentListener(DocumentListener listener)
          Removes the specified Document listener from receive Document events from this component.
 void removeMouseTrackingListener(FSMouseListener l)
           
 void scrollTo(java.awt.Point pt)
          Scroll the panel to make the specified point be on screen.
 void setCenteredPagedView(boolean centeredPagedView)
           
 void setDocument(org.w3c.dom.Document doc, java.lang.String url)
           
 void setDocument(java.io.InputStream stream, java.lang.String url, NamespaceHandler nsh)
           
 void setDocument(java.lang.String url)
           
 void setDocument(java.lang.String url, NamespaceHandler nsh)
           
 void setDocumentFromString(java.lang.String content, java.lang.String url, NamespaceHandler nsh)
           
 void setFormSubmissionListener(FormSubmissionListener fsl)
           
 void setInteractive(boolean interactive)
           
 void setLayout(java.awt.LayoutManager l)
          Sets the layout attribute of the BasicPanel object Overrides the method to do nothing, since you shouldn't have a LayoutManager on an FS panel.
 void setOpaque(boolean opaque)
          Specifies whether the background of this BasicPanel will be painted when it is rendered.
 void setSharedContext(SharedContext ctx)
           
 void setSize(java.awt.Dimension d)
           
 void submit(java.lang.String url)
          Called by XhtmlForm when a form is submitted.
 
Methods inherited from class org.xhtmlrenderer.swing.RootPanel
addNotify, componentHidden, componentMoved, componentResized, componentShown, doDocumentLayout, find, find, getLayoutContext, getLayoutWidth, getRootBox, getRootLayer, getScreenExtents, isPrintView, newRenderingContext, removeNotify, resetScrollPosition, setDocument, setRootBox
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, 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, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, 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, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, 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, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, transferFocusDownCycle, validate
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, 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, 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, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

BasicPanel

public BasicPanel()

BasicPanel

public BasicPanel(UserAgentCallback uac)
Method Detail

addDocumentListener

public void addDocumentListener(DocumentListener listener)
Adds the specified Document listener to receive Document events from this component. If listener l is null, no exception is thrown and no action is performed.

Parameters:
listener - Contains the DocumentListener for DocumentEvent data.

removeDocumentListener

public void removeDocumentListener(DocumentListener listener)
Removes the specified Document listener from receive Document events from this component. If listener l is null, no exception is thrown and no action is performed.

Parameters:
listener - Contains the DocumentListener to remove.

paintComponent

public void paintComponent(java.awt.Graphics g)
Overrides:
paintComponent in class javax.swing.JComponent

paintPage

public void paintPage(java.awt.Graphics2D g,
                      int pageNo)

assignPagePrintPositions

public void assignPagePrintPositions(java.awt.Graphics2D g)

printTree

public void printTree()

setLayout

public void setLayout(java.awt.LayoutManager l)
Sets the layout attribute of the BasicPanel object Overrides the method to do nothing, since you shouldn't have a LayoutManager on an FS panel.

Overrides:
setLayout in class java.awt.Container
Parameters:
l - The new layout value

setSharedContext

public void setSharedContext(SharedContext ctx)

setSize

public void setSize(java.awt.Dimension d)
Overrides:
setSize in class java.awt.Component

setDocument

public void setDocument(java.io.InputStream stream,
                        java.lang.String url,
                        NamespaceHandler nsh)

setDocumentFromString

public void setDocumentFromString(java.lang.String content,
                                  java.lang.String url,
                                  NamespaceHandler nsh)

setDocument

public void setDocument(org.w3c.dom.Document doc,
                        java.lang.String url)

setDocument

public void setDocument(java.lang.String url)

setDocument

public void setDocument(java.lang.String url,
                        NamespaceHandler nsh)

reloadDocument

public void reloadDocument(java.lang.String URI)
Reloads the document using the same base URL and namespace handler. Reloading will pick up changes to styles within the document.

Parameters:
URI - A URI for the Document to load, for example, file.toURL().toExternalForm().

reloadDocument

public void reloadDocument(org.w3c.dom.Document doc)
Reloads the document using the same base URL and namespace handler. Reloading will pick up changes to styles within the document.

Parameters:
doc - The document to reload.

getURL

public java.net.URL getURL()

getDocument

public org.w3c.dom.Document getDocument()

getDocumentTitle

public java.lang.String getDocumentTitle()
Returns the title as reported by the NamespaceHandler assigned to the SharedContext in this panel. For an HTML document, this will be the contents of /html/head/title.

Returns:
the document title, or "" if the namespace handler cannot find a title, or if there is no current document in the panel.

isHover

public boolean isHover(org.w3c.dom.Element e)
Description copied from interface: UserInterface
Gets the hover attribute of the UserInterface object

Specified by:
isHover in interface UserInterface
Overrides:
isHover in class RootPanel
Parameters:
e - PARAM
Returns:
The hover value

isActive

public boolean isActive(org.w3c.dom.Element e)
Description copied from interface: UserInterface
Gets the active attribute of the UserInterface object

Specified by:
isActive in interface UserInterface
Overrides:
isActive in class RootPanel
Parameters:
e - PARAM
Returns:
The active value

isFocus

public boolean isFocus(org.w3c.dom.Element e)
Description copied from interface: UserInterface
Gets the focus attribute of the UserInterface object

Specified by:
isFocus in interface UserInterface
Overrides:
isFocus in class RootPanel
Parameters:
e - PARAM
Returns:
The focus value

isOpaque

public boolean isOpaque()
Returns whether the background of this BasicPanel will be painted when it is rendered.

Overrides:
isOpaque in class javax.swing.JComponent
Returns:
true if the background of this BasicPanel will be painted, false if it will not.

setOpaque

public void setOpaque(boolean opaque)
Specifies whether the background of this BasicPanel will be painted when it is rendered.

Overrides:
setOpaque in class javax.swing.JComponent
Parameters:
opaque - true if the background of this BasicPanel should be painted, false if it should not.

getSharedContext

public SharedContext getSharedContext()
Overrides:
getSharedContext in class RootPanel

getFixedRectangle

public java.awt.Rectangle getFixedRectangle()
Description copied from class: RootPanel
Gets the fixedRectangle attribute of the BasicPanel object

Overrides:
getFixedRectangle in class RootPanel
Returns:
The fixedRectangle value

scrollTo

public void scrollTo(java.awt.Point pt)
Scroll the panel to make the specified point be on screen. Typically this will scroll the screen down to the y component of the point.


isInteractive

public boolean isInteractive()

setInteractive

public void setInteractive(boolean interactive)

addMouseTrackingListener

public void addMouseTrackingListener(FSMouseListener l)

removeMouseTrackingListener

public void removeMouseTrackingListener(FSMouseListener l)

getMouseTrackingListeners

public java.util.List getMouseTrackingListeners()

isCenteredPagedView

public boolean isCenteredPagedView()

setCenteredPagedView

public void setCenteredPagedView(boolean centeredPagedView)

submit

public void submit(java.lang.String url)
Description copied from interface: FormSubmissionListener
Called by XhtmlForm when a form is submitted.

Specified by:
submit in interface FormSubmissionListener
Parameters:
url - the entire query string as composed from form elements and the form's action URL

setFormSubmissionListener

public void setFormSubmissionListener(FormSubmissionListener fsl)

Flying Saucer Project Release ${app.version}

Flying Saucer Project Home