public class HTMLFlow extends Canvas implements HasContentLoadedHandlers
HTML
content can be loaded and reloaded from a URL via the property contentsURL
. This method of loading is for
simple HTML content only; Smart GWT components should be loaded via the ViewLoader
class.
NOTE: Since the size of an HTMLFlow component is determined by its HTML contents, this component will draw at varying sizes if given content of varying size. When using HTMLFlow components within a Layout, consider what will happen if the HTMLFlow renders at various sizes. An HTMLFlow which can expand should be placed in a container where other components can render smaller, where the container is allowed to scroll, or where there is padding to expand into.
config, configOnly, id, nativeObject, scClassName
Constructor and Description |
---|
HTMLFlow() |
HTMLFlow(com.google.gwt.core.client.JavaScriptObject jsObj) |
HTMLFlow(java.lang.String contents) |
Modifier and Type | Method and Description |
---|---|
com.google.gwt.event.shared.HandlerRegistration |
addContentLoadedHandler(ContentLoadedHandler handler)
Add a contentLoaded handler.
|
static void |
changeAutoChildDefaults(java.lang.String autoChildName,
Canvas defaults)
Changes the defaults for Canvas AutoChildren named
autoChildName . |
static void |
changeAutoChildDefaults(java.lang.String autoChildName,
FormItem defaults)
Changes the defaults for FormItem AutoChildren named
autoChildName . |
protected com.google.gwt.core.client.JavaScriptObject |
create() |
java.lang.Boolean |
getAllowCaching()
By default an HTMLFlow will explicitly prevent browser caching.
|
java.lang.Boolean |
getCaptureSCComponents()
If true, Smart GWT components created while executing the loaded HTML are captured for rendering inside the HTMLFlow.
|
java.lang.String |
getContents()
The contents of a canvas or label widget.
|
ContentsType |
getContentsType()
The default setting of 'null' or 'fragment' indicates that HTML loaded from
contentsURL is assumed to be an HTML fragment rather than a
complete page. |
java.lang.String |
getContentsURL()
URL to load content from.
|
java.lang.Boolean |
getDynamicContents()
Dynamic contents allows the contents string to be treated as a simple, but powerful
template.
|
java.lang.Boolean |
getEvalScriptBlocks()
If
evalScriptBlocks is true, HTMLFlow will pre-process the loaded HTML in order to mimic how the HTML would
execute if it were loaded as an independent page or loaded via an IFRAME. |
SendMethod |
getHttpMethod()
Selects the HTTP method that will be used when fetching content.
|
java.lang.String |
getLoadingMessage()
HTML to show while content is being fetched, active only if the
contentsURL property has been set. |
com.smartgwt.logicalstructure.core.LogicalStructureObject |
getLogicalStructure() |
static HTMLFlow |
getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj) |
java.lang.Boolean |
loadingContent()
Returns true if this htmlFlow is currently loading content from the server.
Note: Does not apply to htmlFlows with contentsType set to "page" |
void |
setAllowCaching(java.lang.Boolean allowCaching)
By default an HTMLFlow will explicitly prevent browser caching.
|
void |
setCaptureSCComponents(java.lang.Boolean captureSCComponents)
If true, Smart GWT components created while executing the loaded HTML are captured for rendering inside the HTMLFlow.
|
void |
setContents(java.lang.String contents)
The contents of a canvas or label widget.
|
void |
setContentsType(ContentsType contentsType)
The default setting of 'null' or 'fragment' indicates that HTML loaded from
contentsURL is assumed to be an HTML fragment rather than a
complete page. |
void |
setContentsURL(java.lang.String contentsURL)
URL to load content from.
|
void |
setContentsURLParams(java.util.Map contentsURLParams)
Parameters to be sent to the contentsURL when fetching content.
|
static void |
setDefaultProperties(HTMLFlow hTMLFlowProperties)
Class level method to set the default properties of this class.
|
void |
setDynamicContents(java.lang.Boolean dynamicContents)
Dynamic contents allows the contents string to be treated as a simple, but powerful
template.
|
void |
setEvalScriptBlocks(java.lang.Boolean evalScriptBlocks)
If
evalScriptBlocks is true, HTMLFlow will pre-process the loaded HTML in order to mimic how the HTML would
execute if it were loaded as an independent page or loaded via an IFRAME. |
void |
setHttpMethod(SendMethod httpMethod)
Selects the HTTP method that will be used when fetching content.
|
void |
setLoadingMessage(java.lang.String loadingMessage)
HTML to show while content is being fetched, active only if the
contentsURL property has been set. |
com.smartgwt.logicalstructure.core.LogicalStructureObject |
setLogicalStructure(com.smartgwt.logicalstructure.widgets.HTMLFlowLogicalStructure s) |
void |
transformHTML(java.lang.String html)
Override to modify the loaded HTML before it is rendered.
|
addChild, addChild, addChild, addChild, addChild, addClickHandler, addDoubleClickHandler, addDragMoveHandler, addDragRepositionMoveHandler, addDragRepositionStartHandler, addDragRepositionStopHandler, addDragResizeMoveHandler, addDragResizeStartHandler, addDragResizeStopHandler, addDragStartHandler, addDragStopHandler, addDropHandler, addDropMoveHandler, addDropOutHandler, addDropOverHandler, addFocusChangedHandler, addHoverHandler, addHoverHiddenHandler, addKeyDownHandler, addKeyPressHandler, addMouseDownHandler, addMouseMoveHandler, addMouseOutHandler, addMouseOverHandler, addMouseStillDownHandler, addMouseUpHandler, addMouseWheelHandler, addMovedHandler, addParentMovedHandler, addPeer, addPeer, addPeer, addPeer, addResizedHandler, addRightMouseDownHandler, addScrolledHandler, addShowContextMenuHandler, addStyleName, addVisibilityChangedHandler, adjustForContent, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateHide, animateHide, animateHide, animateMove, animateMove, animateMove, animateMove, animateRect, animateRect, animateRect, animateRect, animateResize, animateResize, animateResize, animateResize, animateScroll, animateScroll, animateScroll, animateScroll, animateScroll, animateScroll, animateShow, animateShow, animateShow, animateShow, animateShow, animateShow, asSGWTComponent, blur, bringToFront, clear, clickMaskUp, clickMaskUp, contains, contains, containsEvent, containsFocus, containsPoint, containsPoint, deparent, depeer, disable, enable, focus, focusInNextTabElement, focusInPreviousTabElement, getAbsoluteLeft, getAbsoluteTop, getAccessKey, getAnimateAcceleration, getAnimateFadeTime, getAnimateHideAcceleration, getAnimateHideTime, getAnimateMoveAcceleration, getAnimateMoveTime, getAnimateRectAcceleration, getAnimateRectTime, getAnimateResizeAcceleration, getAnimateResizeTime, getAnimateScrollAcceleration, getAnimateScrollTime, getAnimateShowAcceleration, getAnimateShowEffect, getAnimateShowTime, getAnimateTime, getAppImgDir, getAriaRole, getAutoDraw, getAutoShowParent, getBackgroundColor, getBackgroundImage, getBackgroundPosition, getBackgroundRepeat, getBorder, getBottom, getById, getByJSObject, getByLocalId, getCanAcceptDrop, getCanDrag, getCanDragReposition, getCanDragResize, getCanDragScroll, getCanDrop, getCanDropBefore, getCanFocus, getCanHover, getCanSelectText, getCanvasAutoChild, getCanvasItem, getChildren, getChildrenSnapResizeToGrid, getChildrenSnapToGrid, getClassName, getComponentMask, getComponentMaskDefaults, getContentElement, getContextMenu, getCursor, getDataPath, getDefaultHeight, getDefaultWidth, getDestroyed, getDestroying, getDisabled, getDisabledCursor, getDoubleClickDelay, getDragAppearance, getDragIntersectStyle, getDragMaskType, getDragOpacity, getDragRepositionAppearance, getDragRepositionCursor, getDragResizeAppearance, getDragScrollDelay, getDragStartDistance, getDragTarget, getDragType, getDropTypes, getDropTypesAsString, getEdgeBackgroundColor, getEdgeCenterBackgroundColor, getEdgeImage, getEdgeMarginSize, getEdgeOffset, getEdgeOpacity, getEdgeShowCenter, getEdgeSize, getElement, getElement, getEventEdge, getEventEdge, getExtraSpace, getFacetId, getFormItemAutoChild, getFullDataPath, getGroupBorderCSS, getGroupLabelBackgroundColor, getGroupLabelStyleName, getGroupTitle, getHeight, getHeightAsString, getHideUsingDisplayNone, getHoverAlign, getHoverAutoDestroy, getHoverComponent, getHoverDelay, getHoverHeight, getHoverHTML, getHoverMoveWithMouse, getHoverOpacity, getHoverStyle, getHoverVAlign, getHoverWidth, getHoverWrap, getHSnapOrigin, getHSnapOrigin, getHSnapPosition, getHSnapPosition, getHtmlElement, getHtmlPosition, getImage, getImgURL, getImgURL, getInnerContentHeight, getInnerContentWidth, getInnerHeight, getInnerWidth, getIsGroup, getKeepInParentRect, getLayoutAlign, getLeft, getLeftAsString, getLocateChildrenBy, getLocateChildrenType, getLocatePeersBy, getLocatePeersType, getMargin, getMasterCanvas, getMasterElement, getMatchElement, getMaxHeight, getMaxWidth, getMenuConstructor, getMinHeight, getMinWidth, getMomentumScrollMinSpeed, getMouseStillDownDelay, getMouseStillDownInitialDelay, getNextZIndex, getNoDoubleClicks, getOffsetHeight, getOffsetWidth, getOffsetX, getOffsetY, getOpacity, getOuterElement, getOverflow, getPadding, getPageBottom, getPageLeft, getPageRect, getPageRight, getPageTop, getParentCanvas, getParentElement, getPeers, getPercentBox, getPercentSource, getPosition, getPrefix, getPrintChildrenAbsolutelyPositioned, getPrintHTML, getPrintHTML, getPrompt, getRect, getRedrawOnResize, getResizeBarTarget, getResizeFrom, getRight, getScrollbarSize, getScrollBottom, getScrollHeight, getScrollLeft, getScrollRight, getScrollTop, getScrollWidth, getShadowDepth, getShadowImage, getShadowOffset, getShadowSoftness, getShouldPrint, getShowCustomScrollbars, getShowDragShadow, getShowEdges, getShowHover, getShowHoverComponents, getShowResizeBar, getShowShadow, getShrinkElementOnHide, getSkinImgDir, getSnapAxis, getSnapEdge, getSnapHDirection, getSnapHGap, getSnapOffsetLeft, getSnapOffsetTop, getSnapOnDrop, getSnapResizeToGrid, getSnapTo, getSnapToGrid, getSnapVDirection, getSnapVGap, getStyleName, getTabIndex, getTestInstance, getTitle, getTooltip, getTop, getTopAsString, getTopElement, getUseBackMask, getUseDragMask, getUseNativeDrag, getUseOpacityFilter, getValuesManager, getViewportHeight, getViewportWidth, getVisibility, getVisibleHeight, getVisibleWidth, getVSnapOrigin, getVSnapOrigin, getVSnapPosition, getVSnapPosition, getWidth, getWidthAsString, getZIndex, getZIndex, handleHover, hide, hideClickMask, hideClickMask, hideComponentMask, hideContextMenu, imgHTML, imgHTML, imgHTML, intersects, isDirty, isDisabled, isDrawn, isVisible, keyUp, layoutChildren, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, markForDestroy, markForRedraw, markForRedraw, moveAbove, moveBelow, moveBy, moveTo, onAttach, onDetach, onInit, parentResized, printComponents, redraw, redraw, removeChild, removeChild, removePeer, removePeer, resizeBy, resizeTo, resizeTo, scrollBy, scrollByPercent, scrollTo, scrollTo, scrollTo, scrollToBottom, scrollToLeft, scrollToPercent, scrollToRight, scrollToTop, sendToBack, setAccessKey, setAlign, setAllowExternalFilters, setAnimateAcceleration, setAnimateFadeTime, setAnimateHideAcceleration, setAnimateHideTime, setAnimateMoveAcceleration, setAnimateMoveTime, setAnimateRectAcceleration, setAnimateRectTime, setAnimateResizeAcceleration, setAnimateResizeTime, setAnimateScrollAcceleration, setAnimateScrollTime, setAnimateShowAcceleration, setAnimateShowEffect, setAnimateShowTime, setAnimateTime, setAppImgDir, setAriaRole, setAriaState, setAutoChildConstructor, setAutoChildProperties, setAutoChildProperties, setAutoChildVisibility, setAutoDraw, setAutoHeight, setAutoShowParent, setAutoWidth, setBackgroundColor, setBackgroundImage, setBackgroundPosition, setBackgroundRepeat, setBorder, setBottom, setCanAcceptDrop, setCanDrag, setCanDragReposition, setCanDragResize, setCanDragScroll, setCanDrop, setCanDropBefore, setCanFocus, setCanHover, setCanSelectText, setChildren, setChildrenSnapResizeToGrid, setChildrenSnapToGrid, setComponentMaskDefaults, setContextMenu, setCursor, setDataPath, setDefaultHeight, setDefaultProperties, setDefaultWidth, setDisabled, setDisabledCursor, setDoubleClickDelay, setDragAppearance, setDragIntersectStyle, setDragMaskType, setDragOpacity, setDragRepositionAppearance, setDragRepositionCursor, setDragResizeAppearance, setDragScrollDelay, setDragStartDistance, setDragTarget, setDragType, setDropTypes, setDropTypes, setEdgeBackgroundColor, setEdgeCenterBackgroundColor, setEdgeImage, setEdgeMarginSize, setEdgeOffset, setEdgeOpacity, setEdgeShowCenter, setEdgeSize, setElement, setExtraSpace, setFacetId, setGroupBorderCSS, setGroupLabelBackgroundColor, setGroupLabelStyleName, setGroupTitle, setHeight, setHeight, setHeight, setHeight100, setHideUsingDisplayNone, setHoverAlign, setHoverAutoDestroy, setHoverDelay, setHoverHeight, setHoverMoveWithMouse, setHoverOpacity, setHoverStyle, setHoverVAlign, setHoverWidth, setHoverWrap, setHtmlElement, setHtmlPosition, setImage, setImage, setInitHandler, setIsGroup, setKeepInParentRect, setKeepInParentRect, setKeepInParentRect, setLayoutAlign, setLayoutAlign, setLeft, setLeft, setLocateChildrenBy, setLocateChildrenType, setLocatePeersBy, setLocatePeersType, setLogicalStructure, setMargin, setMatchElement, setMaxHeight, setMaxWidth, setMenuConstructor, setMinHeight, setMinWidth, setMomentumScrollMinSpeed, setMouseStillDownDelay, setMouseStillDownInitialDelay, setNeverUseFilters, setNoDoubleClicks, setOpacity, setOverflow, setPadding, setPageLeft, setPageTop, setParentCanvas, setParentElement, setPeers, setPercentBox, setPercentSource, setPosition, setPrefix, setPrintChildrenAbsolutelyPositioned, setPrompt, setRect, setRect, setRedrawOnResize, setResizeBarTarget, setResizeFrom, setResizeFrom, setRight, setScrollbarConstructor, setScrollbarSize, setShadowDepth, setShadowImage, setShadowOffset, setShadowSoftness, setShouldPrint, setShowCustomScrollbars, setShowDragShadow, setShowEdges, setShowHover, setShowHoverComponents, setShowResizeBar, setShowShadow, setShrinkElementOnHide, setSkinImgDir, setSmoothFade, setSnapAxis, setSnapEdge, setSnapHDirection, setSnapHGap, setSnapOffsetLeft, setSnapOffsetTop, setSnapOnDrop, setSnapResizeToGrid, setSnapTo, setSnapToGrid, setSnapVDirection, setSnapVGap, setStyleName, setTabIndex, setTitle, setTooltip, setTop, setTop, setUseBackMask, setUseDragMask, setUseNativeDrag, setUseOpacityFilter, setValuesManager, setVisibility, setVisible, setWidth, setWidth, setWidth, setWidth100, setZIndex, shouldDragScroll, show, showClickMask, showComponentMask, showComponentMask, showNextTo, showNextTo, showNextTo, showNextTo, showPrintPreview, showPrintPreview, showPrintPreview, showPrintPreview, showRecursively, updateEditNode, updateHover, updateHover, updateShadow, visibleAtPoint, willAcceptDrop
addDrawHandler, destroy, doAddHandler, doInit, doOnRender, draw, equals, error, errorIfNotCreated, getAttribute, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDateArray, getAttributeAsDouble, getAttributeAsElement, getAttributeAsFloat, getAttributeAsFloatArray, getAttributeAsInt, getAttributeAsIntArray, getAttributeAsJavaScriptObject, getAttributeAsMap, getAttributeAsRecord, getAttributeAsString, getAttributeAsStringArray, getConfig, getDOM, getHandlerCount, getID, getInnerHTML, getJsObj, getOrCreateJsObj, getRef, getScClassName, hasAutoAssignedID, hashCode, initNativeObject, internalSetID, internalSetID, isConfigOnly, isCreated, onBind, onDestroy, onDraw, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setAttribute, setConfig, setConfigOnly, setDragTracker, setID, setJavaScriptObject, setLogicalStructure, setNullProperty, setPosition, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setScClassName, toString
addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, doAttachChildren, doDetachChildren, fireEvent, getLayoutData, getParent, isAttached, isOrWasAttached, onBrowserEvent, onLoad, onUnload, removeFromParent, setLayoutData, sinkEvents
addStyleDependentName, ensureDebugId, ensureDebugId, ensureDebugId, getStyleElement, getStyleName, getStylePrimaryName, getStylePrimaryName, isVisible, onEnsureDebugId, removeStyleDependentName, removeStyleName, resolvePotentialElement, setElement, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setVisible, sinkBitlessEvent, unsinkEvents
public HTMLFlow()
public HTMLFlow(com.google.gwt.core.client.JavaScriptObject jsObj)
public HTMLFlow(java.lang.String contents)
public static HTMLFlow getOrCreateRef(com.google.gwt.core.client.JavaScriptObject jsObj)
public static void changeAutoChildDefaults(java.lang.String autoChildName, Canvas defaults)
autoChildName
.autoChildName
- name of an AutoChild to customize the defaults for.defaults
- Canvas defaults to apply. These defaults override any existing properties
without destroying or wiping out non-overridden properties.AutoChildUsage
public static void changeAutoChildDefaults(java.lang.String autoChildName, FormItem defaults)
autoChildName
.autoChildName
- name of an AutoChild to customize the defaults for.defaults
- FormItem defaults to apply. These defaults override any existing properties
without destroying or wiping out non-overridden properties.AutoChildUsage
protected com.google.gwt.core.client.JavaScriptObject create()
public void setAllowCaching(java.lang.Boolean allowCaching) throws java.lang.IllegalStateException
Set to true to allow browser caching if the browser would normally do so, in other words, if the HTTP headers returned with the response indicate that the response can be cached.
allowCaching
- Default value is falsejava.lang.IllegalStateException
- this property cannot be changed after the component has been createdpublic java.lang.Boolean getAllowCaching()
Set to true to allow browser caching if the browser would normally do so, in other words, if the HTTP headers returned with the response indicate that the response can be cached.
public void setCaptureSCComponents(java.lang.Boolean captureSCComponents) throws java.lang.IllegalStateException
Only applies when contentsType is not "page".
captureSCComponents
- Default value is truejava.lang.IllegalStateException
- this property cannot be changed after the component has been createdpublic java.lang.Boolean getCaptureSCComponents()
Only applies when contentsType is not "page".
public void setContents(java.lang.String contents)
setContents
in class Canvas
contents
- an HTML string to be set as the contents of this widget See HTMLString
. Default value is " "setDynamicContents(java.lang.Boolean)
public java.lang.String getContents()
getContents
in class Canvas
HTMLString
getDynamicContents()
public void setContentsURL(java.lang.String contentsURL)
If specified, this component will load HTML content from the specified URL when it is first drawn.
This feature relies on the XMLHttpRequest object which can be disabled by end-users in some supported
browsers. See PlatformDependencies
for more information.
If this method is called after the component has been drawn/initialized:
Change the URL this component loads content from. Triggers a fetch for content from the new URL.
Can also be called with no arguments to reload content from the existing contentsURL
.
This feature relies on the XMLHttpRequest object which can be disabled by end-users in some supported browsers. See PlatformDependencies
for more information.
contentsURL
- URL to retrieve contents from. Default value is nullpublic java.lang.String getContentsURL()
If specified, this component will load HTML content from the specified URL when it is first drawn.
This feature relies on the XMLHttpRequest object which can be disabled by end-users in some supported
browsers. See PlatformDependencies
for more information.
public void setDynamicContents(java.lang.Boolean dynamicContents)
You can use this feature to build some simple custom components. For example, let's say you want to show the value of a Slider in a Canvas somewhere on the screen. You can do this by observing the valueChanged() method on the slider and calling setContents() on your canvas with the new string or you can set the contents of the canvas to something like:
"The slider value is ${sliderInstance.getValue()}."
Next you set dynamicContents: true on the canvas, observe valueChanged() on the slider and call canvas.markForRedraw() in that observation. This approach is cleaner than setContents() when the Canvas is aggregating several values or dynamic expressions. Like so:
Slider.create({ ID: "mySlider" }); Canvas.create({ ID: "myCanvas", dynamicContents: true, contents: "The slider value is ${mySlider.getValue()}." }); myCanvas.observe(mySlider, "valueChanged", "observer.markForRedraw()");You can embed an arbitrary number of dynamic expressions in the contents string. The search and replace is optimized for speed.
If an error occurs during the evaluation of one of the expressions, a warning is logged to the ISC Developer Console and the error string is embedded in place of the expected value in the Canvas.
The value of a function is its return value. The value of any variable is the same as that returned by its toString() representation.
Inside the evaluation contentext, this
points to the canvas instance that
has the dynamicContents string as its contents - in other words the canvas instance on
which the template is declared.
Note : This is an advanced setting
setDynamicContents
in class Canvas
dynamicContents
- Default value is falsesetContents(java.lang.String)
,
com.smartgwt.client.widgets.Canvas#setDynamicContentsVars
public java.lang.Boolean getDynamicContents()
You can use this feature to build some simple custom components. For example, let's say you want to show the value of a Slider in a Canvas somewhere on the screen. You can do this by observing the valueChanged() method on the slider and calling setContents() on your canvas with the new string or you can set the contents of the canvas to something like:
"The slider value is ${sliderInstance.getValue()}."
Next you set dynamicContents: true on the canvas, observe valueChanged() on the slider and call canvas.markForRedraw() in that observation. This approach is cleaner than setContents() when the Canvas is aggregating several values or dynamic expressions. Like so:
Slider.create({ ID: "mySlider" }); Canvas.create({ ID: "myCanvas", dynamicContents: true, contents: "The slider value is ${mySlider.getValue()}." }); myCanvas.observe(mySlider, "valueChanged", "observer.markForRedraw()");You can embed an arbitrary number of dynamic expressions in the contents string. The search and replace is optimized for speed.
If an error occurs during the evaluation of one of the expressions, a warning is logged to the ISC Developer Console and the error string is embedded in place of the expected value in the Canvas.
The value of a function is its return value. The value of any variable is the same as that returned by its toString() representation.
Inside the evaluation contentext, this
points to the canvas instance that
has the dynamicContents string as its contents - in other words the canvas instance on
which the template is declared.
getDynamicContents
in class Canvas
getContents()
,
com.smartgwt.client.widgets.Canvas#getDynamicContentsVars
public void setEvalScriptBlocks(java.lang.Boolean evalScriptBlocks) throws java.lang.IllegalStateException
evalScriptBlocks
is true, HTMLFlow will pre-process the loaded HTML in order to mimic how the HTML would
execute if it were loaded as an independent page or loaded via an IFRAME. This feature is intended to assist with migrating existing applications to Smart GWT.
evalScriptBlocks
is enabled by default when loading
remote content (via contentsURL
) and disabled by default for
content supplied via HTMLFlow.setContents()
.
Note that, if evalScriptBlocks is false, <SCRIPT> blocks will still be detected and disabled to avoid the inconsistent results across different browsers.
Only applies when contentsType is not "page".
evalScriptBlocks
- Default value is nulljava.lang.IllegalStateException
- this property cannot be changed after the component has been createdpublic java.lang.Boolean getEvalScriptBlocks()
evalScriptBlocks
is true, HTMLFlow will pre-process the loaded HTML in order to mimic how the HTML would
execute if it were loaded as an independent page or loaded via an IFRAME. This feature is intended to assist with migrating existing applications to Smart GWT.
evalScriptBlocks
is enabled by default when loading
remote content (via contentsURL
) and disabled by default for
content supplied via HTMLFlow.setContents()
.
Note that, if evalScriptBlocks is false, <SCRIPT> blocks will still be detected and disabled to avoid the inconsistent results across different browsers.
Only applies when contentsType is not "page".
public void setHttpMethod(SendMethod httpMethod)
httpMethod
- Default value is "GET"public SendMethod getHttpMethod()
public void setLoadingMessage(java.lang.String loadingMessage)
contentsURL
property has been set. Use
"${loadingImage}"
to include a loading
image
. The loading message will show both during the initial load of content, and during reload if the contents are
reloaded or the contentsURL changed. For a first-time only loading message, initialize the contents
property instead.
Note: the loadingMessage
is never displayed when loading complete web pages rather
than HTML fragments (see contentsType
).
loadingMessage
- See HTMLString
. Default value is " ${loadingImage}"public java.lang.String getLoadingMessage()
contentsURL
property has been set. Use
"${loadingImage}"
to include a loading
image
. The loading message will show both during the initial load of content, and during reload if the contents are
reloaded or the contentsURL changed. For a first-time only loading message, initialize the contents
property instead.
Note: the loadingMessage
is never displayed when loading complete web pages rather
than HTML fragments (see contentsType
).
HTMLString
public com.google.gwt.event.shared.HandlerRegistration addContentLoadedHandler(ContentLoadedHandler handler)
StringMethod fired when content is completely loaded in this htmlFlow. Has no default implementation. May be observed or overridden as a notification type method to fire custom logic when loading completes.
Notes:
this.setContents()
will cause this notification to be fired
when the contents have been set. If evalScriptBlocks
is true, and the HTML passed into setContents()
contains any <script src=... >
tags,
this callback will be fired asynchronously once the scripts have been loaded from the server and executed, as well as
having the widget content updatedcontentsURL
, this does not apply to htmlFlows with contentsType
set to "page"
addContentLoadedHandler
in interface HasContentLoadedHandlers
handler
- the contentLoaded handlerHandlerRegistration
used to remove this handlerpublic java.lang.Boolean loadingContent()
contentsType
set to "page"
ContentLoadedEvent
public void transformHTML(java.lang.String html)
html
- the html as loaded from the server return (HTML) html to be renderedpublic static void setDefaultProperties(HTMLFlow hTMLFlowProperties)
Note: This method is intended for setting default attributes only and will affect all instances of the underlying class (including those automatically generated in JavaScript). This method should not be used to apply standard EventHandlers or override methods for a class - use a custom subclass instead. Calling this method after instances have been created can result in undefined behavior, since it bypasses any setters and a class instance may have already examined a particular property and not be expecting any changes through this route.
hTMLFlowProperties
- properties that should be used as new defaults when instances of this class are createdpublic void setContentsType(ContentsType contentsType) throws java.lang.IllegalStateException
contentsURL
is assumed to be an HTML fragment rather than a
complete page. Set to "page" to load HTML as a standalone page, via an IFRAME.
contentsType:"page"
should only be used for controlled HTML content, and only when such content
cannot be delivered as an HTML fragment instead (the default). To dynamically load Smart GWT components, use
ViewLoader
, never this mechanism
(click here
for why).
Loading HTML content as a fragment is less resource intensive and avoids visual artifacts such as translucent media HTML content as a fragment is less resource intensive and avoids visual artifacts such as translucent media becoming opaque or disappearing when placed over an IFRAME.
Loading third-party, uncontrolled content could
lead to the surrounding page disappearing if a user clicks on an HTML link with target=_top
.
With contentsType:"page"
, loadingMessage
is not supported, and only "GET" is supported for httpMethod
.
contentsType
- contentsType Default value is nulljava.lang.IllegalStateException
- this property cannot be changed after the component has been createdpublic ContentsType getContentsType()
contentsURL
is assumed to be an HTML fragment rather than a
complete page. Set to "page" to load HTML as a standalone page, via an IFRAME.
contentsType:"page"
should only be used for controlled HTML content, and only when such content
cannot be delivered as an HTML fragment instead (the default). To dynamically load Smart GWT components, use
ViewLoader
, never this mechanism
(click here
for why).
Loading HTML content as a fragment is less resource intensive and avoids visual artifacts such as translucent media becoming opaque or disappearing when placed over an IFRAME.
Loading third-party, uncontrolled content could
lead to the surrounding page disappearing if a user clicks on an HTML link with target=_top
.
With contentsType:"page"
, loadingMessage
is not supported, and only "GET" is supported for httpMethod
.
public void setContentsURLParams(java.util.Map contentsURLParams)
contentsURLParams
- parameterspublic com.smartgwt.logicalstructure.core.LogicalStructureObject setLogicalStructure(com.smartgwt.logicalstructure.widgets.HTMLFlowLogicalStructure s)
public com.smartgwt.logicalstructure.core.LogicalStructureObject getLogicalStructure()
getLogicalStructure
in interface LogicalStructure
getLogicalStructure
in class Canvas