java.lang.Object
org.xhtmlrenderer.swing.SwingReplacedElementFactory
- All Implemented Interfaces:
ReplacedElementFactory
A ReplacedElementFactory where Elements are replaced by Swing components.
-
Field Summary
Fields -
Constructor Summary
ConstructorsConstructorDescriptionSwingReplacedElementFactory(RepaintListener repaintListener) SwingReplacedElementFactory(RepaintListener listener, ImageResourceLoader irl) -
Method Summary
Modifier and TypeMethodDescriptionprotected voidAdds a form to a local cache for quick lookup.@Nullable ReplacedElementcreateReplacedElement(LayoutContext context, BlockBox box, UserAgentCallback uac, int cssWidth, int cssHeight) NOTE: Only block equivalent elements can be replaced.protected @Nullable XhtmlFormReturns the XhtmlForm associated with an Element in cache, or null if not found.protected @Nullable ElementgetParentForm(Element e, LayoutContext context) protected @Nullable ReplacedElementRetrieves a ReplacedElement for an image from cache, or null if not found.protected ReplacedElementnewIrreplaceableImageElement(int cssWidth, int cssHeight) Returns a ReplacedElement for some element in the stream which should be replaceable, but is not.voidRemoves any reference toElemente.protected @Nullable ReplacedElementreplaceImage(UserAgentCallback uac, LayoutContext context, Element elem, int cssWidth, int cssHeight) Handles replacement of image elements in the document.voidreset()Clears out any references to elements or items created by this factory so far.voidIdentifies the FSL which will be used for callbacks when a form submit action is executed; you can use aDefaultFormSubmissionListenerif you don't want any action to be taken.protected voidstoreImageReplacedElement(Element e, ReplacedElement cc, String uri, int cssWidth, int cssHeight) Adds a ReplacedElement containing an image to a cache of images for quick lookup.
-
Field Details
-
repaintListener
-
-
Constructor Details
-
SwingReplacedElementFactory
public SwingReplacedElementFactory() -
SwingReplacedElementFactory
-
SwingReplacedElementFactory
-
-
Method Details
-
createReplacedElement
@CheckReturnValue public @Nullable ReplacedElement createReplacedElement(LayoutContext context, BlockBox box, UserAgentCallback uac, int cssWidth, int cssHeight) Description copied from interface:ReplacedElementFactoryNOTE: Only block equivalent elements can be replaced.- Specified by:
createReplacedElementin interfaceReplacedElementFactorycssWidth- The CSS width of the element in dots (or-1if width isauto)cssHeight- The CSS height of the element in dots (or-1if the height should be treated asauto)- Returns:
- The
ReplacedElementornullif noReplacedElementapplies
-
replaceImage
@CheckReturnValue protected @Nullable ReplacedElement replaceImage(UserAgentCallback uac, LayoutContext context, Element elem, int cssWidth, int cssHeight) Handles replacement of image elements in the document. May return the same ReplacedElement for a given image on multiple calls. Image will be automatically scaled to cssWidth and cssHeight assuming these are non-zero positive values. The element is assumed to have a src attribute (e.g. it's an<img>element).- Parameters:
uac- Used to retrieve images on demand from some source.elem- The element with the image referencecssWidth- Target width of the imagecssHeight- Target height of the image @return A ReplacedElement for the image; will not be null.
-
newIrreplaceableImageElement
@CheckReturnValue protected ReplacedElement newIrreplaceableImageElement(int cssWidth, int cssHeight) Returns a ReplacedElement for some element in the stream which should be replaceable, but is not. This might be the case for an element like img, where the source isn't provided.- Parameters:
cssWidth- Target width for the element.cssHeight- Target height for the element- Returns:
- A ReplacedElement to substitute for one that can't be generated.
-
storeImageReplacedElement
protected void storeImageReplacedElement(Element e, ReplacedElement cc, String uri, int cssWidth, int cssHeight) Adds a ReplacedElement containing an image to a cache of images for quick lookup.- Parameters:
e- The element under which the image is keyed.cc- The replaced element containing the image, or another ReplacedElement to be used in its place
-
lookupImageReplacedElement
Retrieves a ReplacedElement for an image from cache, or null if not found.- Parameters:
e- The element by which the image is keyed- Returns:
- The ReplacedElement for the image, or null if there is none.
-
addForm
Adds a form to a local cache for quick lookup.- Parameters:
e- The element under which the form is keyed (e.g.<form>in HTML)f- The form element being stored.
-
getForm
Returns the XhtmlForm associated with an Element in cache, or null if not found.- Parameters:
e- The Element to which the form is keyed- Returns:
- The form, or null if not found.
-
getParentForm
-
reset
public void reset()Clears out any references to elements or items created by this factory so far.- Specified by:
resetin interfaceReplacedElementFactory
-
remove
Description copied from interface:ReplacedElementFactoryRemoves any reference toElemente.- Specified by:
removein interfaceReplacedElementFactory
-
setFormSubmissionListener
Description copied from interface:ReplacedElementFactoryIdentifies the FSL which will be used for callbacks when a form submit action is executed; you can use aDefaultFormSubmissionListenerif you don't want any action to be taken.- Specified by:
setFormSubmissionListenerin interfaceReplacedElementFactory- Parameters:
fsl- the listener instance to receive callbacks on form submission.
-