Class HTMLFlow
- All Implemented Interfaces:
HasAttachHandlers,HasHandlers,EventListener,HasVisibility,IsWidget,LogicalStructure,HasClearHandlers,HasClickHandlers,HasContentLoadedHandlers,HasDoubleClickHandlers,HasDragMoveHandlers,HasDragRepositionMoveHandlers,HasDragRepositionStartHandlers,HasDragRepositionStopHandlers,HasDragResizeMoveHandlers,HasDragResizeStartHandlers,HasDragResizeStopHandlers,HasDragStartHandlers,HasDragStopHandlers,HasDropHandlers,HasDropMoveHandlers,HasDropOutHandlers,HasDropOverHandlers,HasFocusChangedHandlers,HasHoverHandlers,HasHoverHiddenHandlers,HasKeyDownHandlers,HasKeyPressHandlers,HasMouseDownHandlers,HasMouseMoveHandlers,HasMouseOutHandlers,HasMouseOverHandlers,HasMouseStillDownHandlers,HasMouseUpHandlers,HasMouseWheelHandlers,HasMovedHandlers,HasParentMovedHandlers,HasResizedHandlers,HasRightMouseDownHandlers,HasRuleContextChangedHandlers,HasScrolledHandlers,HasShowContextMenuHandlers,HasVisibilityChangedHandlers
- Direct Known Subclasses:
HTMLPane
HTML
content can be specified directly via contents, or loaded 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.
HTMLFlows are typically used to render snippets of HTML directly in
the document rather than holding a complete HTML page, as the component can only size to fit HTML content it renders
directly into the DOM. If you are looking to display a complete HTML page, you will need to modify the default Overflow and defaultHeight, or
use the HTMLPane 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.
HTMLFlow is a DataBoundComponent but only supports one method at this time, fetchRelatedData.
-
Nested Class Summary
Nested classes/interfaces inherited from class com.google.gwt.user.client.ui.UIObject
UIObject.DebugIdImpl, UIObject.DebugIdImplEnabled -
Field Summary
Fields inherited from class com.smartgwt.client.widgets.BaseWidget
config, configOnly, factoryCreated, factoryProperties, id, nativeObject, scClassNameFields inherited from class com.google.gwt.user.client.ui.UIObject
DEBUG_ID_PREFIX -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionAdd a contentLoaded handler.static voidchangeAutoChildDefaults(String autoChildName, Canvas defaults) Changes the defaults for Canvas AutoChildren namedautoChildName.static voidchangeAutoChildDefaults(String autoChildName, FormItem defaults) Changes the defaults for FormItem AutoChildren namedautoChildName.protected JavaScriptObjectcreate()voidfetchRelatedData(ListGridRecord record, Canvas schema) Based on the relationship between the DataSource this component is bound to and the DataSource specified as the "schema" argument, call fetchData() to retrieve records in this data set that are related to the passed-in record.voidfetchRelatedData(ListGridRecord record, Canvas schema, DSCallback callback) voidfetchRelatedData(ListGridRecord record, Canvas schema, DSCallback callback, DSRequest requestProperties) Based on the relationship between the DataSource this component is bound to and the DataSource specified as the "schema" argument, call fetchData() to retrieve records in this data set that are related to the passed-in record.By default an HTMLFlow will explicitly prevent browser caching.If this component is passed a URL with a protocol that differs from the current page, should it be automatically changed to match the page?booleanIfContentsTypeis not explicitly specified, should it be automatically derived?Text selection for copy and paste is enabled by default in the HTMLFlow class.If true, Smart GWT components created while executing the loaded HTML are captured for rendering inside the HTMLFlow.String of HTML contents for this component - may be a fragment of HTML to display or a complete HTML page.ThecontentsTypeattribute governs whether the contents of this htmlFlow are a fragment of HTML to inserted directly into the DOM, or a complete HTML page to be displayed in an IFRAME.If specified the HTMLFlow will load its contents from this URL instead of displayingthis.contents.intHTMLFlow defaultHeight is set to1which, together withoverflow:"visible"causes the HTMLFlow to size to its content HTML.intFor custom components, establishes a default width for the component.Dynamic string of HTML contents for this component.IfevalScriptBlocksis 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.Selects the HTTP method that will be used when fetching content.When usingcontentsTypeContentsType.PAGE, sets the <iframe>sandboxattribute to the provided value.HTML to show while content is being fetched, active only if thecontentsURLproperty has been set.Getter implementing theLogicalStructureinterface, which supports Eclipse's logical structure debugging facility.static HTMLFlowgetOrCreateRef(JavaScriptObject jsObj) HTMLFlows areoverflow:"visible"by default, allowing them to fit their HTML content.When thisHTMLFlowis focused, causes Ctrl-A / Command-A keypresses to select just the content, as opposed to all content on the screen becoming selected.String[]List of tags used to determine whether the HTML contents of an HTMLFlow should be rendered withcontentsType:"page".booleanCan this component have itscontentsspecified as a complete standalone HTML page to be rendered into an embedded IFRAME?booleanisPageHTML(String html) Determines whether the html string passed in is source for a standalone HTML page as opposed to an HTML fragment to be added to the DOM.Returns true if this htmlFlow is currently loading content from the server.
Note: Does not apply to htmlFlows withcontentsTypeset to"page"setAllowCaching(Boolean allowCaching) By default an HTMLFlow will explicitly prevent browser caching.setAutoChangeProtocol(Boolean autoChangeProtocol) If this component is passed a URL with a protocol that differs from the current page, should it be automatically changed to match the page?setAutoDeriveContentsType(boolean autoDeriveContentsType) IfContentsTypeis not explicitly specified, should it be automatically derived?setCanSelectText(Boolean canSelectText) Text selection for copy and paste is enabled by default in the HTMLFlow class.setCaptureSCComponents(Boolean captureSCComponents) If true, Smart GWT components created while executing the loaded HTML are captured for rendering inside the HTMLFlow.setContents(String contents) String of HTML contents for this component - may be a fragment of HTML to display or a complete HTML page.setContentsType(ContentsType contentsType) ThecontentsTypeattribute governs whether the contents of this htmlFlow are a fragment of HTML to inserted directly into the DOM, or a complete HTML page to be displayed in an IFRAME.setContentsURL(String contentsURL) If specified the HTMLFlow will load its contents from this URL instead of displayingthis.contents.setContentsURLParams(Map contentsURLParams) Parameters to be sent to the contentsURL when fetching content.setDefaultHeight(int defaultHeight) HTMLFlow defaultHeight is set to1which, together withoverflow:"visible"causes the HTMLFlow to size to its content HTML.static voidsetDefaultProperties(HTMLFlow hTMLFlowProperties) Class level method to set the default properties of this class.setDefaultWidth(int defaultWidth) For custom components, establishes a default width for the component.setDynamicContents(Boolean dynamicContents) Dynamic string of HTML contents for this component.setEvalScriptBlocks(Boolean evalScriptBlocks) IfevalScriptBlocksis 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.setHttpMethod(SendMethod httpMethod) Selects the HTTP method that will be used when fetching content.setIframeSandbox(String iframeSandbox) When usingcontentsTypeContentsType.PAGE, sets the <iframe>sandboxattribute to the provided value.setLoadingMessage(String loadingMessage) HTML to show while content is being fetched, active only if thecontentsURLproperty has been set.Setter implementing theLogicalStructureinterface, which supports Eclipse's logical structure debugging facility.setOverflow(Overflow overflow) HTMLFlows areoverflow:"visible"by default, allowing them to fit their HTML content.setSelectContentOnSelectAll(Boolean selectContentOnSelectAll) When thisHTMLFlowis focused, causes Ctrl-A / Command-A keypresses to select just the content, as opposed to all content on the screen becoming selected.setStructuralHTMLTags(String... structuralHTMLTags) List of tags used to determine whether the HTML contents of an HTMLFlow should be rendered withcontentsType:"page".setSupportsContentsAsPage(boolean supportsContentsAsPage) Can this component have itscontentsspecified as a complete standalone HTML page to be rendered into an embedded IFRAME?voidtransformHTML(String html) Override to modify the loaded HTML before it is rendered.Methods inherited from class com.smartgwt.client.widgets.Canvas
addChild, addChild, addChild, addChild, addChild, addClearHandler, 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, addRuleContextChangedHandler, addScrolledHandler, addShowContextMenuHandler, addSnapAlignCandidate, addStyleName, addVisibilityChangedHandler, adjustForContent, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateFade, animateHide, animateHide, animateHide, animateHide, 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, animateShow, asSGWTComponent, blur, bringToFront, clear, clearExplicitTabIndex, clickMaskUp, clickMaskUp, contains, contains, containsEvent, containsEventTarget, containsFocus, containsPoint, containsPoint, dataContextChanged, deparent, depeer, disable, enable, encloses, focus, focusAfterGroup, focusAtEnd, focusInNextTabElement, focusInPreviousTabElement, getAbsoluteLeft, getAbsoluteTop, getAccessKey, getAdaptiveHeightPriority, getAdaptiveWidthPriority, getAlwaysManageFocusNavigation, getAlwaysShowScrollbars, getAnimateAcceleration, getAnimateFadeTime, getAnimateHideAcceleration, getAnimateHideEffect, getAnimateHideTime, getAnimateMoveAcceleration, getAnimateMoveTime, getAnimateRectAcceleration, getAnimateRectTime, getAnimateResizeAcceleration, getAnimateResizeLayoutMode, getAnimateResizeTime, getAnimateScrollAcceleration, getAnimateScrollTime, getAnimateShowAcceleration, getAnimateShowEffect, getAnimateShowTime, getAnimateTime, getAppImgDir, getAriaHandleID, getAriaRole, getAriaStateDefaults, getAutoMaskComponents, getAutoParent, getAutoPopulateData, getAutoShowParent, getBackgroundColor, getBackgroundImage, getBackgroundPosition, getBackgroundRepeat, getBorder, getBorderRadius, getBottom, getById, getByJSObject, getByLocalId, getCanAcceptDrop, getCanAdaptHeight, getCanAdaptWidth, getCanDrag, getCanDragReposition, getCanDragResize, getCanDragScroll, getCanDrop, getCanDropBefore, getCanFocus, getCanHover, getCanvasAutoChild, getCanvasItem, getChildren, getChildrenResizeSnapAlign, getChildrenSnapAlign, getChildrenSnapCenterAlign, getChildrenSnapEdgeAlign, getChildrenSnapResizeToGrid, getChildrenSnapToGrid, getChildTabPosition, getClassName, getComponentMask, getComponentMaskDefaults, getContentElement, getContextMenu, getCorrectZoomOverflow, getCursor, getDataContext, getDataPath, getDefiningProperty, getDefiningPropertyName, getDefiningPropertyNameOptions, getDestroyed, getDestroying, getDisabled, getDisabledCursor, getDisableTouchScrollingForDrag, getDoubleClickDelay, getDragAppearance, getDragIntersectStyle, getDragMaskType, getDragMaxHeight, getDragMaxWidth, getDragMinHeight, getDragMinWidth, getDragOpacity, getDragRepositionAppearance, getDragRepositionCursor, getDragResizeAppearance, getDragScrollDelay, getDragStartDistance, getDragTarget, getDragTargetAsString, getDragType, getDropTarget, getDropTargetAsString, getDropTypes, getDropTypesAsString, getEdgeBackgroundColor, getEdgeCenterBackgroundColor, getEdgeImage, getEdgeMarginSize, getEdgeOffset, getEdgeOpacity, getEdgeShowCenter, getEdgeSize, getEditNode, getEditProxy, getEditProxyConstructor, getElement, getElement, getEnableWhen, getEndLine, getEventEdge, getEventEdge, getExtraSpace, getFacetId, getFloatingScrollbars, getFormItemAutoChild, getForwardSVGeventsToObject, getFullDataPath, getGroupBorderCSS, getGroupLabelBackgroundColor, getGroupLabelStyleName, getGroupPadding, getGroupTitle, getHeight, getHeightAsString, getHideUsingDisplayNone, getHoverAlign, getHoverAutoDestroy, getHoverAutoFitMaxWidth, getHoverAutoFitMaxWidthAsString, getHoverAutoFitWidth, getHoverComponent, getHoverDelay, getHoverFocusKey, getHoverHeight, getHoverHTML, getHoverMoveWithMouse, getHoverOpacity, getHoverPersist, getHoverScreen, getHoverStyle, getHoverVAlign, getHoverWidth, getHoverWrap, getHSnapPosition, getHSnapPosition, getHtmlElement, getHtmlElementAsString, getHtmlPosition, getImage, getImgURL, getImgURL, getInnerContentHeight, getInnerContentWidth, getInnerHeight, getInnerWidth, getIsGroup, getIsPrinting, getIsRuleScope, getIsSnapAlignCandidate, getKeepInParentRect, getLayoutAlign, getLeaveGroupLabelSpace, getLeavePageSpace, getLeft, getLeftAsString, getLocalId, getLocateByIDOnly, getLocateChildrenBy, getLocateChildrenType, getLocatePeersBy, getLocatePeersType, getLocatorName, getMargin, getMasterCanvas, getMasterElement, getMatchElement, getMatchElementHeight, getMatchElementWidth, getMaxHeight, getMaxWidth, getMaxZoomOverflowError, getMenuConstructor, getMinHeight, getMinNonEdgeSize, getMinWidth, getMomentumScrollMinSpeed, getMouseStillDownDelay, getMouseStillDownInitialDelay, getName, getNativeAutoHideScrollbars, getNextZIndex, getNoDoubleClicks, getNoDropCursor, getOffsetHeight, getOffsetWidth, getOffsetX, getOffsetY, getOpacity, getOuterElement, getPadding, getPageBottom, getPageLeft, getPageRect, getPageRight, getPageTop, getPaletteDefaults, getPanelContainer, getParentCanvas, getParentElement, getPeers, getPendingMarkerStyle, getPendingMarkerVisible, getPercentBox, getPercentSource, getPersistentMatchElement, getPointerSettings, getPointerTarget, getPointerTargetAsString, getPosition, getPrefix, getPrintChildrenAbsolutelyPositioned, getPrintHTML, getPrintHTML, getPrintStyleName, getPrompt, getProportionalResizeModifiers, getProportionalResizing, getReceiveScrollbarEvents, getRect, getRedrawOnResize, getResizeBarTarget, getResizeFrom, getRight, getRuleContext, getRuleContext, getRuleScope, getScrollbarSize, getScrollBottom, getScrollHeight, getScrollLeft, getScrollRight, getScrollTop, getScrollWidth, getShadowColor, getShadowDepth, getShadowHOffset, getShadowImage, getShadowOffset, getShadowSoftness, getShadowSpread, getShadowVOffset, getShouldPrint, getShowCustomScrollbars, getShowDragShadow, getShowEdges, getShowHover, getShowHoverComponents, getShowPointer, getShowResizeBar, getShowShadow, getShowSnapGrid, getShrinkElementOnHide, getSizeMayChangeOnRedraw, getSkinImgDir, getSnapAlignCandidates, getSnapAlignCenterLineStyle, getSnapAlignEdgeLineStyle, getSnapAxis, getSnapEdge, getSnapGridLineProperties, getSnapGridStyle, getSnapHDirection, getSnapHGap, getSnapOffsetLeft, getSnapOffsetTop, getSnapOnDrop, getSnapPosition, getSnapPosition, getSnapResizeToAlign, getSnapResizeToGrid, getSnapTo, getSnapToAlign, getSnapToCenterAlign, getSnapToEdgeAlign, getSnapToGrid, getSnapVDirection, getSnapVGap, getStartLine, getStyleName, getTabIndex, getTestDataContext, getTestInstance, getTitle, getTooltip, getTop, getTopAsString, getTopElement, getUISummary, getUpdateTabPositionOnDraw, getUpdateTabPositionOnReparent, getUseBackMask, getUseCSSShadow, getUseDragMask, getUseImageForSVG, getUseNativeDrag, getUseOpacityFilter, getUseTouchScrolling, getValuesManager, getValuesManagerAsString, getViewportHeight, getViewportWidth, getVisibility, getVisibleHeight, getVisibleWhen, getVisibleWidth, getVSnapPosition, getVSnapPosition, getWidth, getWidthAsString, getWorkflows, getZIndex, getZIndex, handleHover, hide, hideClickMask, hideClickMask, hideComponentMask, hideComponentMask, hideContextMenu, imgHTML, imgHTML, imgHTML, initComplete, intersects, isDirty, isDisabled, isFocused, isVisible, keyUp, layoutChildren, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, linkHTML, markForDestroy, markForRedraw, markForRedraw, moveAbove, moveBelow, moveBy, moveTo, onAttach, onDetach, onInit, pageScrollDown, pageScrollUp, parentResized, placeNear, placeNear, placeNear, print, print, print, print, printComponents, provideRuleContext, provideRuleContext, redraw, redraw, registerFontScaledPaddingStyles, removeChild, removeChild, removePeer, removePeer, removeRuleContext, removeSnapAlignCandidate, resizeAutoChildAttributes, resizeBy, resizeControls, resizeControlsTo, resizeFonts, resizeFonts, resizeFonts, resizeFontsTo, resizeIcons, resizePadding, resizePadding, resizeTo, resizeTo, revealChild, revealChild, scrollBy, scrollByPercent, scrollTo, scrollTo, scrollTo, scrollTo, scrollTo, scrollToBottom, scrollToLeft, scrollToPercent, scrollToRight, scrollToTop, sendToBack, setAccessKey, setAdaptHeightByCustomizer, setAdaptiveHeightPriority, setAdaptiveWidthPriority, setAdaptWidthByCustomizer, setAlign, setAllowExternalFilters, setAlwaysManageFocusNavigation, setAlwaysShowScrollbars, setAnimateAcceleration, setAnimateFadeTime, setAnimateHideAcceleration, setAnimateHideEffect, setAnimateHideTime, setAnimateMoveAcceleration, setAnimateMoveTime, setAnimateRectAcceleration, setAnimateRectTime, setAnimateResizeAcceleration, setAnimateResizeLayoutMode, setAnimateResizeTime, setAnimateScrollAcceleration, setAnimateScrollTime, setAnimateShowAcceleration, setAnimateShowEffect, setAnimateShowTime, setAnimateTime, setAppImgDir, setAriaRole, setAriaState, setAutoChildConstructor, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildProperties, setAutoChildVisibility, setAutoHeight, setAutoMaskComponents, setAutoParent, setAutoPopulateData, setAutoResizeAutoChildAttributes, setAutoResizeIcons, setAutoShowParent, setAutoWidth, setBackgroundColor, setBackgroundImage, setBackgroundPosition, setBackgroundRepeat, setBorder, setBorderRadius, setBottom, setCanAcceptDrop, setCanAdaptHeight, setCanAdaptWidth, setCanDrag, setCanDragReposition, setCanDragResize, setCanDragScroll, setCanDrop, setCanDropBefore, setCanFocus, setCanHover, setChildren, setChildrenResizeSnapAlign, setChildrenSnapAlign, setChildrenSnapCenterAlign, setChildrenSnapEdgeAlign, setChildrenSnapResizeToGrid, setChildrenSnapToGrid, setComponentMaskDefaults, setContextMenu, setCorrectZoomOverflow, setCursor, setDataContext, setDataPath, setDefaultPageSpace, setDefaultProperties, setDefaultShowCustomScrollbars, setDefiningProperty, setDefiningPropertyNameOptions, setDisabled, setDisabledCursor, setDisableTouchScrollingForDrag, setDoubleClickDelay, setDragAppearance, setDragIntersectStyle, setDragMaskType, setDragMaxHeight, setDragMaxWidth, setDragMinHeight, setDragMinWidth, setDragOpacity, setDragRepositionAppearance, setDragRepositionCursor, setDragResizeAppearance, setDragScrollDelay, setDragStartDistance, setDragTarget, setDragTarget, setDragType, setDropTarget, setDropTarget, setDropTypes, setDropTypes, setEdgeBackgroundColor, setEdgeCenterBackgroundColor, setEdgeImage, setEdgeMarginSize, setEdgeOffset, setEdgeOpacity, setEdgeShowCenter, setEdgeSize, setEditMode, setEditMode, setEditMode, setEditProxyConstructor, setElement, setEnableWhen, setEndLine, setExtraSpace, setFacetId, setFloatingScrollbars, setForwardSVGeventsToObject, setGroupBorderCSS, setGroupLabelBackgroundColor, setGroupLabelStyleName, setGroupPadding, setGroupTitle, setHeight, setHeight, setHeight, setHeight100, setHideUsingDisplayNone, setHoverAlign, setHoverAutoDestroy, setHoverAutoFitMaxWidth, setHoverAutoFitMaxWidth, setHoverAutoFitWidth, setHoverDelay, setHoverFocusKey, setHoverHeight, setHoverMoveWithMouse, setHoverOpacity, setHoverPersist, setHoverScreen, setHoverStyle, setHoverVAlign, setHoverWidth, setHoverWrap, setHtmlElement, setHtmlElement, setHtmlPosition, setImage, setImage, setInitHandler, setIsGroup, setIsRuleScope, setIsSnapAlignCandidate, setKeepInParentRect, setKeepInParentRect, setKeepInParentRect, setLayoutAlign, setLayoutAlign, setLeaveGroupLabelSpace, setLeavePageSpace, setLeft, setLeft, setLocateByIDOnly, setLocateChildrenBy, setLocateChildrenType, setLocatePeersBy, setLocatePeersType, setLocatorName, setLocatorParent, setLocatorParent, setLogicalStructure, setMargin, setMatchElement, setMatchElementHeight, setMatchElementWidth, setMaxHeight, setMaxWidth, setMaxZoomOverflowError, setMenuConstructor, setMinHeight, setMinNonEdgeSize, setMinWidth, setMomentumScrollMinSpeed, setMouseStillDownDelay, setMouseStillDownInitialDelay, setName, setNativeAutoHideScrollbars, setNeverUseFilters, setNoDoubleClicks, setNoDropCursor, setOpacity, setPadding, setPageLeft, setPageTop, setPanelContainer, setParentCanvas, setParentElement, setPeers, setPendingMarkerStyle, setPendingMarkerVisible, setPercentBox, setPercentSource, setPersistentMatchElement, setPointerSettings, setPointerTarget, setPosition, setPrefix, setPrintChildrenAbsolutelyPositioned, setPrintStyleName, setPrompt, setProportionalResizeModifiers, setProportionalResizing, setReceiveScrollbarEvents, setRect, setRect, setRedrawOnResize, setRelativeTabPosition, setResizeBarTarget, setResizeFrom, setResizeFrom, setRight, setRuleScope, setScrollbarConstructor, setScrollbarSize, setShadowColor, setShadowDepth, setShadowHOffset, setShadowImage, setShadowOffset, setShadowSoftness, setShadowSpread, setShadowVOffset, setShouldPrint, setShowCustomScrollbars, setShowDragShadow, setShowEdges, setShowHover, setShowHoverComponents, setShowPointer, setShowResizeBar, setShowShadow, setShowSnapGrid, setShrinkElementOnHide, setSizeMayChangeOnRedraw, setSkinImgDir, setSmoothFade, setSnapAlignCandidates, setSnapAlignCenterLineStyle, setSnapAlignEdgeLineStyle, setSnapAxis, setSnapEdge, setSnapGridLineProperties, setSnapGridStyle, setSnapHDirection, setSnapHGap, setSnapOffsetLeft, setSnapOffsetTop, setSnapOnDrop, setSnapResizeToAlign, setSnapResizeToGrid, setSnapTo, setSnapToAlign, setSnapToCenterAlign, setSnapToEdgeAlign, setSnapToGrid, setSnapVDirection, setSnapVGap, setStartLine, setStyleName, setTabIndex, setTestDataContext, setTitle, setTooltip, setTop, setTop, setUpdateTabPositionOnDraw, setUpdateTabPositionOnReparent, setUseBackMask, setUseCSSShadow, setUseDragMask, setUseImageForSVG, setUseNativeDrag, setUseOpacityFilter, setUseTouchScrolling, setValuesManager, setValuesManager, setVisibility, setVisible, setVisibleWhen, setWidth, setWidth, setWidth, setWidth100, setWorkflows, setZIndex, shouldDragScroll, show, showClickMask, showComponentMask, showComponentMask, showNextTo, showNextTo, showNextTo, showNextTo, showPendingMarker, showPrintPreview, showPrintPreview, showPrintPreview, showPrintPreview, showRecursively, startDebuggingOverflow, stopDebuggingOverflow, updateChildTabPosition, updateChildTabPositions, updateEditNode, updateHover, updateHover, updateShadow, updateTabPositionForDraw, visibleAtPoint, willAcceptDropMethods inherited from class com.smartgwt.client.widgets.BaseWidget
addDrawHandler, addDynamicProperty, addDynamicProperty, addDynamicProperty, addDynamicProperty, applyFactoryProperties, clearDynamicProperty, completeCreation, destroy, doAddHandler, doInit, doOnRender, draw, equals, error, errorIfNotCreated, getAttribute, getAttributeAsBoolean, getAttributeAsDate, getAttributeAsDateArray, getAttributeAsDouble, getAttributeAsElement, getAttributeAsFloat, getAttributeAsFloatArray, getAttributeAsInt, getAttributeAsIntArray, getAttributeAsJavaScriptObject, getAttributeAsMap, getAttributeAsObject, getAttributeAsRecord, getAttributeAsString, getAttributeAsStringArray, getConfig, getDOM, getHandlerCount, getID, getInnerHTML, getJsObj, getOrCreateJsObj, getRef, getScClassName, hasAutoAssignedID, hasDynamicProperty, hashCode, initNativeObject, internalSetID, internalSetID, isConfigOnly, isCreated, isDrawn, isFactoryCreated, 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, setDefaultProperties, setDragTracker, setFactoryCreated, setID, setJavaScriptObject, setLogicalStructure, setLogicalStructure, setNullProperty, setPosition, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setProperty, setScClassName, toStringMethods inherited from class com.google.gwt.user.client.ui.Widget
addAttachHandler, addBitlessDomHandler, addDomHandler, addHandler, asWidget, asWidgetOrNull, createHandlerManager, delegateEvent, doAttachChildren, doDetachChildren, fireEvent, getLayoutData, getParent, isAttached, isOrWasAttached, onBrowserEvent, onLoad, onUnload, removeFromParent, setLayoutData, sinkEvents, unsinkEventsMethods inherited from class com.google.gwt.user.client.ui.UIObject
addStyleDependentName, ensureDebugId, ensureDebugId, ensureDebugId, getStyleElement, getStyleName, getStylePrimaryName, getStylePrimaryName, isVisible, onEnsureDebugId, removeStyleDependentName, removeStyleName, resolvePotentialElement, setElement, setPixelSize, setSize, setStyleDependentName, setStyleName, setStyleName, setStyleName, setStylePrimaryName, setStylePrimaryName, setVisible, sinkBitlessEventMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface com.google.gwt.event.shared.HasHandlers
fireEvent
-
Constructor Details
-
HTMLFlow
public HTMLFlow() -
HTMLFlow
-
HTMLFlow
-
-
Method Details
-
getOrCreateRef
-
changeAutoChildDefaults
Changes the defaults for Canvas AutoChildren namedautoChildName.- Parameters:
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. For usage tips on this param, seeSGWTProperties.- See Also:
-
changeAutoChildDefaults
Changes the defaults for FormItem AutoChildren namedautoChildName.- Parameters:
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. For usage tips on this param, seeSGWTProperties.- See Also:
-
create
-
setAllowCaching
By default an HTMLFlow will explicitly prevent browser caching.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.
- Parameters:
allowCaching- New allowCaching value. Default value is false- Returns:
HTMLFlowinstance, for chaining setter calls- Throws:
IllegalStateException- this property cannot be changed after the component has been created
-
getAllowCaching
By default an HTMLFlow will explicitly prevent browser caching.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.
- Returns:
- Current allowCaching value. Default value is false
-
setAutoChangeProtocol
If this component is passed a URL with a protocol that differs from the current page, should it be automatically changed to match the page?- Parameters:
autoChangeProtocol- New autoChangeProtocol value. Default value is true- Returns:
HTMLFlowinstance, for chaining setter calls
-
getAutoChangeProtocol
If this component is passed a URL with a protocol that differs from the current page, should it be automatically changed to match the page?- Returns:
- Current autoChangeProtocol value. Default value is true
-
setAutoDeriveContentsType
IfContentsTypeis not explicitly specified, should it be automatically derived?If set to true, this component will use
isPageHTML()to determine whether the contents are a standalone HTML page which should be rendered into an embedded IFRAME rather than written directly into the component's handle in the DOM.Note that this property will auto derive the appropriate contents type for both explicitly specified
contentsand for HTML loaded from thecontentsURLSee
ContentsTypefor further information on displaying complete HTML pages in an IFRAME.- Parameters:
autoDeriveContentsType- New autoDeriveContentsType value. Default value is false- Returns:
HTMLFlowinstance, for chaining setter calls
-
getAutoDeriveContentsType
public boolean getAutoDeriveContentsType()IfContentsTypeis not explicitly specified, should it be automatically derived?If set to true, this component will use
isPageHTML()to determine whether the contents are a standalone HTML page which should be rendered into an embedded IFRAME rather than written directly into the component's handle in the DOM.Note that this property will auto derive the appropriate contents type for both explicitly specified
contentsand for HTML loaded from thecontentsURLSee
ContentsTypefor further information on displaying complete HTML pages in an IFRAME.- Returns:
- Current autoDeriveContentsType value. Default value is false
-
setCanSelectText
Text selection for copy and paste is enabled by default in the HTMLFlow class. Note that this setting has no impact ifContentsTypeis set toContentsType.PAGE. In this case contents is loaded from a target URL via an IFRAME element, and text selection behavior will be dictated by the loaded HTML.- Overrides:
setCanSelectTextin classCanvas- Parameters:
canSelectText- New canSelectText value. Default value is true- Returns:
HTMLFlowinstance, for chaining setter calls- Throws:
IllegalStateException- this property cannot be changed after the component has been created
-
getCanSelectText
Text selection for copy and paste is enabled by default in the HTMLFlow class. Note that this setting has no impact ifContentsTypeis set toContentsType.PAGE. In this case contents is loaded from a target URL via an IFRAME element, and text selection behavior will be dictated by the loaded HTML.- Overrides:
getCanSelectTextin classCanvas- Returns:
- Current canSelectText value. Default value is true
-
setCaptureSCComponents
If true, Smart GWT components created while executing the loaded HTML are captured for rendering inside the HTMLFlow.Only applies when contentsType is not "page".
- Parameters:
captureSCComponents- New captureSCComponents value. Default value is true- Returns:
HTMLFlowinstance, for chaining setter calls- Throws:
IllegalStateException- this property cannot be changed after the component has been created
-
getCaptureSCComponents
If true, Smart GWT components created while executing the loaded HTML are captured for rendering inside the HTMLFlow.Only applies when contentsType is not "page".
- Returns:
- Current captureSCComponents value. Default value is true
-
setContents
String of HTML contents for this component - may be a fragment of HTML to display or a complete HTML page. SeecontentsTypeandsupportsContentsAsPage.To load HTML contents from a URL, use
contentsURLinstead of this property. IfcontentsURLis non-null,contentswill be ignored.
If this method is called after the component has been drawn/initialized: Changes the contents of a widget to newContents, an HTML string.- Overrides:
setContentsin classCanvas- Parameters:
contents- an HTML string to be set as the contents of this widget. Default value is " "- Returns:
HTMLFlowinstance, for chaining setter calls- See Also:
-
getContents
String of HTML contents for this component - may be a fragment of HTML to display or a complete HTML page. SeecontentsTypeandsupportsContentsAsPage.To load HTML contents from a URL, use
contentsURLinstead of this property. IfcontentsURLis non-null,contentswill be ignored.- Overrides:
getContentsin classCanvas- Returns:
- Current contents value. Default value is " "
- See Also:
-
setContentsType
ThecontentsTypeattribute governs whether the contents of this htmlFlow are a fragment of HTML to inserted directly into the DOM, or a complete HTML page to be displayed in an IFRAME. If not explicitly specified,autoDeriveContentsTypemay be set to automatically determine the appropriate contents type by analyzing the contents of the component. IfautoDeriveContentsTypeis false andcontentsTypeis not explicitly specified, contents will always be assumed to be"fragment".HTMLFlow contents may be
directly specifiedor loaded from aspecified URL. Note that ifsupportsContentsAsPageis false and nocontentsURLis specified, the contents string will always be assumed to be a fragment, even ifContentsTypeis explicitly set to"page".Note that an HTMLFlow with contentsType:"page" should not be used to load and display a page containing a set of Smart GWT components into the application. To dynamically load Smart GWT components, use
ViewLoader, never this mechanism (clickherefor why).Scripting, CSS and scoping considerations for HTMLFlow contents
The following considerations apply to HTMLFlow contents, whether directly specified or loaded from a contentsURL.When contentsType is
"page", the HTML content will be rendered as a standalone document using an IFRAME. UseiframeSandboxto specify IFRAME restrictions using the native sandbox attribute. Note that any script (if allowed) will be executed in the scope of the embedded IFRAME window, not the main application window. Similarly, other features like css stylesheets loaded by the HTMLFlow will apply to the IFRAME window only, and the IFRAME will not pick up css style from the main application by default.When contentsType is
"fragment", if script is encountered within the HTML fragment it will be evaluated in the scope of the main application ifevalScriptBlocksis enabled. Developers should be aware that this evaluation occurs as part of the draw/redraw process, but unlike script embedded directly in a static HTML page, it is not processed by the browser while the elements are being written into the DOM anddocument.write(...)can not be used to modify the HTML as it is being rendered. In this mode, since the contents is written directly into the DOM, standard css styling for the page will be applied.Note that if
autoDeriveContentsTypeis enabled, the default set of recognizedstructuralHTMLTagsinclude<script>, so HTML contents including script will display ascontentsType:"page". The list ofstructuralHTMLTagscan be modified to exclude script tags if desired.- Parameters:
contentsType- New contentsType value. Default value is null- Returns:
HTMLFlowinstance, for chaining setter calls- Throws:
IllegalStateException- this property cannot be changed after the component has been created
-
getContentsType
ThecontentsTypeattribute governs whether the contents of this htmlFlow are a fragment of HTML to inserted directly into the DOM, or a complete HTML page to be displayed in an IFRAME. If not explicitly specified,autoDeriveContentsTypemay be set to automatically determine the appropriate contents type by analyzing the contents of the component. IfautoDeriveContentsTypeis false andcontentsTypeis not explicitly specified, contents will always be assumed to be"fragment".HTMLFlow contents may be
directly specifiedor loaded from aspecified URL. Note that ifsupportsContentsAsPageis false and nocontentsURLis specified, the contents string will always be assumed to be a fragment, even ifContentsTypeis explicitly set to"page".Note that an HTMLFlow with contentsType:"page" should not be used to load and display a page containing a set of Smart GWT components into the application. To dynamically load Smart GWT components, use
ViewLoader, never this mechanism (clickherefor why).Scripting, CSS and scoping considerations for HTMLFlow contents
The following considerations apply to HTMLFlow contents, whether directly specified or loaded from a contentsURL.When contentsType is
"page", the HTML content will be rendered as a standalone document using an IFRAME. UseiframeSandboxto specify IFRAME restrictions using the native sandbox attribute. Note that any script (if allowed) will be executed in the scope of the embedded IFRAME window, not the main application window. Similarly, other features like css stylesheets loaded by the HTMLFlow will apply to the IFRAME window only, and the IFRAME will not pick up css style from the main application by default.When contentsType is
"fragment", if script is encountered within the HTML fragment it will be evaluated in the scope of the main application ifevalScriptBlocksis enabled. Developers should be aware that this evaluation occurs as part of the draw/redraw process, but unlike script embedded directly in a static HTML page, it is not processed by the browser while the elements are being written into the DOM anddocument.write(...)can not be used to modify the HTML as it is being rendered. In this mode, since the contents is written directly into the DOM, standard css styling for the page will be applied.Note that if
autoDeriveContentsTypeis enabled, the default set of recognizedstructuralHTMLTagsinclude<script>, so HTML contents including script will display ascontentsType:"page". The list ofstructuralHTMLTagscan be modified to exclude script tags if desired.- Returns:
- Current contentsType value. Default value is null
-
setContentsURL
If specified the HTMLFlow will load its contents from this URL instead of displayingthis.contents. May be combined with parameters ifcontentsURLParamswere specified.The HTML retrieved from the target URL may be a complete standalone page to be rendered into its own scope using an IFRAME, or a fragment of HTML to display within this component's handle. See
ContentsTypeandautoDeriveContentsTypefor more information.Note that the link{loadingMessage} and
httpMethodfeatures only apply if contentsURL was set and contentsType was not explicitly set to"page"
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. -
getContentsURL
If specified the HTMLFlow will load its contents from this URL instead of displayingthis.contents. May be combined with parameters ifcontentsURLParamswere specified.The HTML retrieved from the target URL may be a complete standalone page to be rendered into its own scope using an IFRAME, or a fragment of HTML to display within this component's handle. See
ContentsTypeandautoDeriveContentsTypefor more information.Note that the link{loadingMessage} and
httpMethodfeatures only apply if contentsURL was set and contentsType was not explicitly set to"page"- Returns:
- Current contentsURL value. Default value is null
- See Also:
-
setContentsURLParams
Parameters to be sent to the contentsURL when fetching content.- Parameters:
contentsURLParams- New contentsURLParams value. Default value is null- Returns:
HTMLFlowinstance, for chaining setter calls
-
setDefaultHeight
HTMLFlow defaultHeight is set to1which, together withoverflow:"visible"causes the HTMLFlow to size to its content HTML.Note that if
ContentsTypeis"page",overflow:"visible"is not supported - for this usage an explicit larger height should be specified. You may want to use the preconfiguredHTMLPaneclass instead of HTMLFlow for this usage.- Overrides:
setDefaultHeightin classCanvas- Parameters:
defaultHeight- New defaultHeight value. Default value is 1- Returns:
HTMLFlowinstance, for chaining setter calls- See Also:
-
getDefaultHeight
public int getDefaultHeight()HTMLFlow defaultHeight is set to1which, together withoverflow:"visible"causes the HTMLFlow to size to its content HTML.Note that if
ContentsTypeis"page",overflow:"visible"is not supported - for this usage an explicit larger height should be specified. You may want to use the preconfiguredHTMLPaneclass instead of HTMLFlow for this usage.- Overrides:
getDefaultHeightin classCanvas- Returns:
- Current defaultHeight value. Default value is 1
- See Also:
-
setDefaultWidth
For custom components, establishes a default width for the component.For a component that should potentially be sized automatically by a Layout, set this property rather than
widthdirectly, because Layouts regard a width setting as an explicit size that shouldn't be changed.- Overrides:
setDefaultWidthin classCanvas- Parameters:
defaultWidth- New defaultWidth value. Default value is 200- Returns:
HTMLFlowinstance, for chaining setter calls- See Also:
-
getDefaultWidth
public int getDefaultWidth()For custom components, establishes a default width for the component.For a component that should potentially be sized automatically by a Layout, set this property rather than
widthdirectly, because Layouts regard a width setting as an explicit size that shouldn't be changed.- Overrides:
getDefaultWidthin classCanvas- Returns:
- Current defaultWidth value. Default value is 200
- See Also:
-
setDynamicContents
Dynamic string of HTML contents for this component. As withcontents, this may be a fragment of HTML to display or a complete HTML page. SeecontentsTypeandsupportsContentsAsPage.See
Canvas.dynamicContentsfor details on how dynamicContents are resolved to a final string value.Note : This is an advanced setting
- Overrides:
setDynamicContentsin classCanvas- Parameters:
dynamicContents- New dynamicContents value. Default value is false- Returns:
HTMLFlowinstance, for chaining setter calls- See Also:
-
Canvas.setContents(java.lang.String)com.smartgwt.client.widgets.Canvas#setDynamicContentsVars
-
getDynamicContents
Dynamic string of HTML contents for this component. As withcontents, this may be a fragment of HTML to display or a complete HTML page. SeecontentsTypeandsupportsContentsAsPage.See
Canvas.dynamicContentsfor details on how dynamicContents are resolved to a final string value.- Overrides:
getDynamicContentsin classCanvas- Returns:
- Current dynamicContents value. Default value is false
- See Also:
-
Canvas.getContents()com.smartgwt.client.widgets.Canvas#getDynamicContentsVars
-
setEvalScriptBlocks
IfevalScriptBlocksis 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.
evalScriptBlocksis enabled by default when loading remote content (viacontentsURL) and disabled by default for content supplied viasetContents().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".
- Parameters:
evalScriptBlocks- New evalScriptBlocks value. Default value is null- Returns:
HTMLFlowinstance, for chaining setter calls- Throws:
IllegalStateException- this property cannot be changed after the component has been created
-
getEvalScriptBlocks
IfevalScriptBlocksis 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.
evalScriptBlocksis enabled by default when loading remote content (viacontentsURL) and disabled by default for content supplied viasetContents().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".
- Returns:
- Current evalScriptBlocks value. Default value is null
-
setHttpMethod
Selects the HTTP method that will be used when fetching content. Valid values are "POST" and "GET".- Parameters:
httpMethod- New httpMethod value. Default value is "GET"- Returns:
HTMLFlowinstance, for chaining setter calls
-
getHttpMethod
Selects the HTTP method that will be used when fetching content. Valid values are "POST" and "GET".- Returns:
- Current httpMethod value. Default value is "GET"
-
setIframeSandbox
When usingcontentsTypeContentsType.PAGE, sets the <iframe>sandboxattribute to the provided value.Use the value "*ALL*" to cause the "sandbox" attribute to be output with no value (which causes full sandboxing).
See any HTML reference for other legal values of the "sandbox" attribute, which allow you to remove individual restrictions on the loaded content.
Note that Smart GWT simply applies the provided value to the generated <iframe> element and cannot fix bugs or differences in sandbox behavior across different browsers.
- Parameters:
iframeSandbox- New iframeSandbox value. Default value is null- Returns:
HTMLFlowinstance, for chaining setter calls- Throws:
IllegalStateException- this property cannot be changed after the component has been created
-
getIframeSandbox
When usingcontentsTypeContentsType.PAGE, sets the <iframe>sandboxattribute to the provided value.Use the value "*ALL*" to cause the "sandbox" attribute to be output with no value (which causes full sandboxing).
See any HTML reference for other legal values of the "sandbox" attribute, which allow you to remove individual restrictions on the loaded content.
Note that Smart GWT simply applies the provided value to the generated <iframe> element and cannot fix bugs or differences in sandbox behavior across different browsers.
- Returns:
- Current iframeSandbox value. Default value is null
-
setLoadingMessage
HTML to show while content is being fetched, active only if thecontentsURLproperty has been set. Use"${loadingImage}"to includea 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
contentsproperty instead.Note: the
loadingMessageis never displayed whencontentsTypewas explicitly specified as"page".- Parameters:
loadingMessage- New loadingMessage value. Default value is " ${loadingImage}"- Returns:
HTMLFlowinstance, for chaining setter calls- See Also:
-
getLoadingMessage
HTML to show while content is being fetched, active only if thecontentsURLproperty has been set. Use"${loadingImage}"to includea 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
contentsproperty instead.Note: the
loadingMessageis never displayed whencontentsTypewas explicitly specified as"page".- Returns:
- Current loadingMessage value. Default value is " ${loadingImage}"
- See Also:
-
setOverflow
HTMLFlows areoverflow:"visible"by default, allowing them to fit their HTML content.Note that if
ContentsTypeis"page",overflow:"visible"is not supported and the overflow will default to"auto"instead- Overrides:
setOverflowin classCanvas- Parameters:
overflow- New overflow value. Default value is Canvas.VISIBLE- Returns:
HTMLFlowinstance, for chaining setter calls- See Also:
-
getOverflow
HTMLFlows areoverflow:"visible"by default, allowing them to fit their HTML content.Note that if
ContentsTypeis"page",overflow:"visible"is not supported and the overflow will default to"auto"instead- Overrides:
getOverflowin classCanvas- Returns:
- Current overflow value. Default value is Canvas.VISIBLE
- See Also:
-
setSelectContentOnSelectAll
When thisHTMLFlowis focused, causes Ctrl-A / Command-A keypresses to select just the content, as opposed to all content on the screen becoming selected. ThisHTMLFlowmust befocusablein order for this setting to have an effect.Not valid with
contentsTypeContentsType.PAGE.- Parameters:
selectContentOnSelectAll- New selectContentOnSelectAll value. Default value is null- Returns:
HTMLFlowinstance, for chaining setter calls- See Also:
-
getSelectContentOnSelectAll
When thisHTMLFlowis focused, causes Ctrl-A / Command-A keypresses to select just the content, as opposed to all content on the screen becoming selected. ThisHTMLFlowmust befocusablein order for this setting to have an effect.Not valid with
contentsTypeContentsType.PAGE.- Returns:
- Current selectContentOnSelectAll value. Default value is null
- See Also:
-
setStructuralHTMLTags
List of tags used to determine whether the HTML contents of an HTMLFlow should be rendered withcontentsType:"page".If an HTML string contains any of these tags not enclosed in either
<pre> ... </pre>tags or comments (<!-- ... -->),isPageHTML()will return true.The default list of tags are as follows:
- "!doctype"
- "html"
- "head"
- "body"
- "style"
- "link"
- "script"
Note : This is an advanced setting
- Parameters:
structuralHTMLTags- New structuralHTMLTags value. Default value is ["!doctype","html","head","body","style","link","script"]- Returns:
HTMLFlowinstance, for chaining setter calls
-
getStructuralHTMLTags
List of tags used to determine whether the HTML contents of an HTMLFlow should be rendered withcontentsType:"page".If an HTML string contains any of these tags not enclosed in either
<pre> ... </pre>tags or comments (<!-- ... -->),isPageHTML()will return true.The default list of tags are as follows:
- "!doctype"
- "html"
- "head"
- "body"
- "style"
- "link"
- "script"
- Returns:
- Current structuralHTMLTags value. Default value is ["!doctype","html","head","body","style","link","script"]
-
setSupportsContentsAsPage
Can this component have itscontentsspecified as a complete standalone HTML page to be rendered into an embedded IFRAME?If true, if
ContentsTypeis specified as, orderived to be"page", the contents will be rendered into an embedded IFRAME using thesrcdocattribute rather than written directly into the component handle.If false, contentsType has no effect unless contents are being loaded from an explicitly specified
contentsURL- Parameters:
supportsContentsAsPage- New supportsContentsAsPage value. Default value is true- Returns:
HTMLFlowinstance, for chaining setter calls
-
getSupportsContentsAsPage
public boolean getSupportsContentsAsPage()Can this component have itscontentsspecified as a complete standalone HTML page to be rendered into an embedded IFRAME?If true, if
ContentsTypeis specified as, orderived to be"page", the contents will be rendered into an embedded IFRAME using thesrcdocattribute rather than written directly into the component handle.If false, contentsType has no effect unless contents are being loaded from an explicitly specified
contentsURL- Returns:
- Current supportsContentsAsPage value. Default value is true
-
addContentLoadedHandler
Add a contentLoaded handler.StringMethod fired when content is completely loaded in this htmlFlow. Has no default implementation. Add a notification to fire custom logic when loading completes.
Notes:
- A call to
this.setContents()will cause this notification to be fired when the contents have been set. IfHTMLFlow.evalScriptBlocksis true, and the HTML passed intosetContents()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 updated - When using
HTMLFlow.contentsURL, this does not apply to htmlFlows withcontentsTypeset to"page"
- Specified by:
addContentLoadedHandlerin interfaceHasContentLoadedHandlers- Parameters:
handler- the contentLoaded handler- Returns:
HandlerRegistrationused to remove this handler
- A call to
-
fetchRelatedData
Based on the relationship between the DataSource this component is bound to and the DataSource specified as the "schema" argument, call fetchData() to retrieve records in this data set that are related to the passed-in record.Relationships between DataSources are declared via
DataSourceField.foreignKey.For example, given two related DataSources "orders" and "orderItems", where we want to fetch the "orderItems" that belong to a given "order". "orderItems" should declare a field that is a
foreignKeyto the "orders" table (for example, it might be named "orderId" with foreignKey="orders.id"). Then, to load the records related to a given "order", call fetchRelatedData() on the component bound to "orderItems", pass the "orders" DataSource as the "schema" and pass a record from the "orders" DataSource as the "record" argument.Note: When you expect a large number of records to be returned it is not recommended to display these in the DetailViewer as it doesn't have the same level of support for large datasets as the
ListGrid.- Parameters:
record- DataSource recordschema- schema of the DataSource record, or DataBoundComponent already bound to that schema- See Also:
-
fetchRelatedData
-
fetchRelatedData
public void fetchRelatedData(ListGridRecord record, Canvas schema, DSCallback callback, DSRequest requestProperties) Based on the relationship between the DataSource this component is bound to and the DataSource specified as the "schema" argument, call fetchData() to retrieve records in this data set that are related to the passed-in record.Relationships between DataSources are declared via
DataSourceField.foreignKey.For example, given two related DataSources "orders" and "orderItems", where we want to fetch the "orderItems" that belong to a given "order". "orderItems" should declare a field that is a
foreignKeyto the "orders" table (for example, it might be named "orderId" with foreignKey="orders.id"). Then, to load the records related to a given "order", call fetchRelatedData() on the component bound to "orderItems", pass the "orders" DataSource as the "schema" and pass a record from the "orders" DataSource as the "record" argument.Note: When you expect a large number of records to be returned it is not recommended to display these in the DetailViewer as it doesn't have the same level of support for large datasets as the
ListGrid.- Parameters:
record- DataSource recordschema- schema of the DataSource record, or DataBoundComponent already bound to that schemacallback- callback to invoke on completionrequestProperties- additional properties to set on the DSRequest that will be issued- See Also:
-
isPageHTML
Determines whether the html string passed in is source for a standalone HTML page as opposed to an HTML fragment to be added to the DOM.Returns true if any
structuralHTMLTagsare found in the HTML string, outside of HTML comment or<pre> ... </pre>blocks.This method is used by
autoDeriveContentsTypeto determine whether the widget contents should be rendered inside an embedded IFRAME.- Parameters:
html- HTML string to test- Returns:
- true if the HTML string contains any structural HTML page elements.
-
loadingContent
Returns true if this htmlFlow is currently loading content from the server.
Note: Does not apply to htmlFlows withcontentsTypeset to"page"- Returns:
- whether content is currently being loaded
- See Also:
-
transformHTML
Override to modify the loaded HTML before it is rendered.- Parameters:
html- the html as loaded from the server return (HTML) html to be rendered. SeeHTMLString- See Also:
-
setDefaultProperties
Class level method to set the default properties of this class. If set, then all existing and subsequently created instances of this class will automatically have default properties corresponding to the properties set on the SmartGWT class instance passed to this function before its underlying SmartClient JS object was created. This is a powerful feature that eliminates the need for users to create a separate hierarchy of subclasses that only alter the default properties of this class. Can also be used for skinning / styling purposes.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.
- Parameters:
hTMLFlowProperties- properties that should be used as new defaults when instances of this class are created- See Also:
-
setLogicalStructure
Setter implementing theLogicalStructureinterface, which supports Eclipse's logical structure debugging facility. -
getLogicalStructure
Getter implementing theLogicalStructureinterface, which supports Eclipse's logical structure debugging facility.- Specified by:
getLogicalStructurein interfaceLogicalStructure- Overrides:
getLogicalStructurein classCanvas
-