Package org.xhtmlrenderer.swt
Class SWTReplacedElementFactory
java.lang.Object
org.xhtmlrenderer.swt.SWTReplacedElementFactory
- All Implemented Interfaces:
ReplacedElementFactory
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final Map<Element, ReplacedElement> Cache of image components (ReplacedElements) for quick lookup, keyed by Element. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidclean()Dispose missing image if created.@Nullable ReplacedElementcreateReplacedElement(LayoutContext c, BlockBox box, UserAgentCallback uac, int cssWidth, int cssHeight) NOTE: Only block equivalent elements can be replaced.protected @Nullable ReplacedElementRetrieves a ReplacedElement for an image from cache, or null if not found.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()Instructs theReplacedElementFactoryto discard any cached data (typically because a new page is about to be loaded).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 voidAdds a ReplacedElement containing an image to a cache of images for quick lookup.
-
Field Details
-
_imageComponents
Cache of image components (ReplacedElements) for quick lookup, keyed by Element.
-
-
Constructor Details
-
SWTReplacedElementFactory
public SWTReplacedElementFactory()
-
-
Method Details
-
clean
public void clean()Dispose missing image if created. -
createReplacedElement
@CheckReturnValue public @Nullable ReplacedElement createReplacedElement(LayoutContext c, BlockBox box, UserAgentCallback uac, int cssWidth, int cssHeight) Description copied from interface:ReplacedElementFactoryNOTE: Only block equivalent elements can be replaced.- Specified by:
createReplacedElementin interfaceReplacedElementFactory- Parameters:
cssWidth- 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 a <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- Returns:
- A ReplacedElement for the image; will not be null.
-
storeImageReplacedElement
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 (like a placeholder if the image can't be loaded).
-
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.
-
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:
listener- the listener instance to receive callbacks on form submission.
-
reset
public void reset()Description copied from interface:ReplacedElementFactoryInstructs theReplacedElementFactoryto discard any cached data (typically because a new page is about to be loaded).- Specified by:
resetin interfaceReplacedElementFactory
-