public abstract class NodeBase extends CssBase implements INodeErrorDelegate
We need to be able to calculate a delta tree very fast. The speed of the delta calculation is a large factor in response time and server CPU utilization. Delta calculation works by defining a strict way in which the DOM is manipulated (conceptual):
For the mechanism to work properly it is very important that the BEFORE state is proper. This means that the BEFORE state may NOT be changed when, during the application-phase, nodes are removed and possibly re-added to the tree. For this event it is important that even when the node is added and removed the BEFORE state is kept as ATTACHED; it may not change as the result of the moves executed in between.
When nodes are removed from the tree and in a different request/response cycle are added again we must ensure that any state from the previous delta run leaks to the new delta run; if this happens it usually results in a "Hell Freezeth over" exception. Because nodes removed from the tree in a phase are not reachable anymore it is hard to clear this state after the delta run.
| Modifier | Constructor and Description |
|---|---|
protected |
NodeBase(String tag) |
| Modifier and Type | Method and Description |
|---|---|
String |
$(String key,
Object... param)
Translate the key passed into a message string, using the component's message bundle.
|
boolean |
acceptRequestParameter(String[] values) |
void |
addBinding(IBinding binding)
Add a binding to the binding list.
|
void |
addCssClass(String name)
Add the class passed as another CSS class to the "class" attribute.
|
UIMessage |
addGlobalMessage(UIMessage m)
This adds a message to the "global" message list.
|
<T> void |
addNotificationListener(Class<T> eventClass,
INotificationListener<T> listener) |
protected void |
afterCreateContent() |
void |
alignToLeft(NodeBase node,
int xOffset,
boolean appendAsCreateJs)
Adds javascript that aligns node left to left position of specified node, with applying offset.
|
void |
alignToLeft(NodeBase node,
int xOffset,
boolean appendAsCreateJs,
boolean addServerPositionCallback)
Adds javascript that aligns node left to left position of specified node, with applying offset.
|
void |
alignToMiddle(NodeBase node,
int xOffset,
boolean appendAsCreateJs)
Adds javascript that aligns node horizontal middle to middle position of specified node, with applying offset.
|
void |
alignToMiddle(NodeBase node,
int xOffset,
boolean appendAsCreateJs,
boolean addServerPositionCallback)
Adds javascript that aligns node horizontal middle to middle position of specified node, with applying offset.
|
void |
alignTopToBottom(NodeBase node,
int yOffset,
boolean appendAsCreateJs)
Adds javascript that aligns node top to bottom of specified node, with applying y offset.
|
void |
alignTopToBottom(NodeBase node,
int yOffset,
boolean appendAsCreateJs,
boolean addServerPositionCallback)
Adds javascript that aligns node top to bottom of specified node, with applying y offset.
|
void |
alignToRight(NodeBase node,
int xOffset,
boolean appendAsCreateJs)
Adds javascript that aligns node right to right position of specified node, with applying offset.
|
void |
alignToRight(NodeBase node,
int xOffset,
boolean appendAsCreateJs,
boolean addServerPositionCallback)
Adds javascript that aligns node right to right position of specified node, with applying offset.
|
void |
alignToTop(NodeBase node,
int yOffset,
boolean appendAsCreateJs)
Adds javascript that aligns node top to top of specified node, with applying y offset.
|
void |
alignToTop(NodeBase node,
int yOffset,
boolean appendAsCreateJs,
boolean addServerPositionCallback)
Adds javascript that aligns node top to top of specified node, with applying y offset.
|
void |
appendAfterMe(NodeBase item)
Add the node passed immediately after this node in the tree.
|
void |
appendBeforeMe(NodeBase item)
Add the node passed immediately before this node in the tree.
|
void |
appendCreateJS(CharSequence js)
This adds a Javascript segment to be executed when the component is (re)constructed.
|
void |
appendJavascript(CharSequence js)
This adds a Javascript segment to be executed one time, as soon as the
current request returns.
|
void |
appendJQuerySelector(StringBuilder sb)
Appends the jQuery "selector" code for this node as:
$('#_a01') |
void |
appendJsCustomUpdatesContributor(String jsCallback)
This js general custom updates contributor callback (custom updares are triggered after any page load or ajax response handling), function gets wrapped around specified js.
|
void |
appendShowOverflowTextAsTitleJs(String cssSelector)
This is js CustomUpdatesContributor callback used to execute WebUI.showOverflowTextAsTitle, function that decorates title on elements selected by specified selector, under all children of an element.
|
JavascriptStmt |
appendStatement() |
void |
appendTreeErrors(List<UIMessage> errorList) |
protected void |
beforeCreateContent() |
ComponentPropertyBinding |
bind() |
ComponentPropertyBinding |
bind(String componentProperty) |
boolean |
bindErrors()
Checks the tree starting at this component for binding errors; all of those will be reported
by sending them to the error listeners.
|
void |
build()
Not normally called from outside, this forces the node to call createContent if needed (if unbuilt).
|
String |
calcTestID() |
protected void |
changed()
Called on stylesheet changes.
|
void |
changedJavascriptState()
This marks this component as having "changed" javascript state.
|
void |
clearFocusRequested()
Reset the "request focus" flag.
|
void |
clearGlobalMessage() |
void |
clearGlobalMessage(String code)
Delete all messages with the specified code (deprecated) or group name (see
UIMessage.getGroup()). |
void |
clearGlobalMessage(UIMessage m) |
void |
clearMessage()
Deprecated.
|
protected void |
clearValidationFailure(UIException result)
FIXME Should not exist?
|
void |
componentHandleWebAction(RequestContextImpl ctx,
String action)
Default handling for webui AJAX actions to a component.
|
void |
componentHandleWebDataRequest(RequestContextImpl ctx,
String action)
Out-of-bound data request for a component.
|
void |
createContent() |
JavascriptStmt |
createStatement() |
IBundle |
findComponentBundle()
Returns the component's message bundle stack.
|
<T> T |
findParent(Class<T> clz)
Walk the parents upwards to find the closest parent of the given class.
|
void |
forceRebuild()
Force this node to be rebuilt by fully clearing all it's content (removing all children).
|
String |
getActualID()
When the node is attached to a page this returns the ID assigned to it.
|
StackTraceElement[] |
getAllocationTracepoint() |
List<UIMessage> |
getBindingErrors() |
List<IBinding> |
getBindingList()
If present, return all bindings on this node.
|
protected Dimension |
getBrowserWindowSize() |
protected String |
getCalculatedTestID()
This can be overridden for items that are supposed to be found for testing.
|
IClickBase<?> |
getClicked()
Return the click handler for this node, or null if none is associated with it.
|
protected Rect |
getClientBounds() |
IBundle |
getComponentBundle()
Returns the component's message bundle stack.
|
String |
getComponentDataURL(IPageParameters pp)
Return an URL to a data stream generator for this component.
|
String |
getComponentDataURL(String action,
IPageParameters pp)
Return an URL to a data call on this node.
|
String |
getComponentInfo() |
String |
getComponentJSONURL(IPageParameters pp) |
StringBuilder |
getCreateJS() |
String |
getCssClass()
Return the full "class" (css class) attribute for this node.
|
List<UIMessage> |
getErrorList() |
String |
getErrorLocation()
When set this contains a user-understandable tekst indicating which control has the error.
|
protected String |
getFocusID()
If this node "wraps" focusable components this call should return the ID of
a HTML node that can receive focus when the component itself is focused.
|
UIMessage |
getMessage() |
String |
getOnClickJS() |
String |
getOnMouseDownJS() |
protected INotify<NodeBase> |
getOnSizeAndPositionChange() |
Page |
getPage()
Return the Page for this node, if attached, or null otherwise.
|
NodeContainer |
getParent()
Return the current actual parent of this node.
|
<T> T |
getParent(Class<T> clz)
Walk the parents upwards to find the closest parent of the given class.
|
NodeContainer |
getParent(int up)
Find the nth upward parent of this node.
|
NodeBase |
getParentOfTypes(Class<? extends NodeBase>... clzar)
Walk the parent chain upwards, and find the first parent that implements any of
the classes passed.
|
QDataContext |
getSharedContext()
This returns the default "shared context" for database access.
|
QDataContextFactory |
getSharedContextFactory() |
String |
getSpecialAttribute(String name)
Return the value for the "special" attribute with the specified name, if present.
|
List<String> |
getSpecialAttributeList()
Return the list of special attributes and their value.
|
String |
getTag()
Return the node's tag name (the html tag this node represents).
|
String |
getTestID()
When set this causes a "testid" attribute to be rendered on the node.
|
String |
getTestRepeatId()
EXPERIMENTAL: If this is part of some "repeating" structure this must hold a repeat ID, which is a
page-unique id for the repeating thing.
|
String |
getThemedResourceRURL(String path)
This checks to see if the RURL passed is a theme-relative URL.
|
String |
getTitle()
Returns the title as set verbatim; if it was set using a tilde key this returns the key without resource bundle replacement.
|
Object |
getUserObject()
Get whatever user object is set into this node as set by
setUserObject(Object). |
protected void |
handleDrop(RequestContextImpl ctx)
Called when a drop is done on a DropTarget node.
|
boolean |
hasCssClass(String cls)
Returns T if the css class passed is present in the current cssclass.
|
boolean |
hasError()
Return T if this node currently has an error associated with it.
|
boolean |
hasParent() |
void |
internalClearDelta() |
void |
internalClearDeltaFully() |
protected void |
internalCreateFrame()
This method is a placeholder for NodeContainer which allows it to handle
framed windows somehow.
|
protected int |
internalGetNodeCount(int depth) |
NodeContainer |
internalGetOldParent() |
NodeContainer |
internalGetParent() |
boolean |
internalHasChangedAttributes()
INTERNAL ONLY Set when this node has changed attributes.
|
boolean |
internalNeedClickHandler()
Mostly internal only: override when this component has a clicked handler which must not be
rendered as a Javascript "onclick".
|
void |
internalOnBeforeRender() |
void |
internalOnClicked(ClickInfo cli)
Internal, do the proper run sequence for a clicked event.
|
void |
internalOnValueChanged()
Default handling of change messages.
|
void |
internalRenderJavascriptDelta(JavascriptStmt stmt) |
void |
internalRenderJavascriptState(JavascriptStmt stmt) |
void |
internalSetHasChangedAttributes()
Internal use only.
|
void |
internalSetHasChangedAttributes(boolean d)
Internal only.
|
static void |
internalSetLogAllocations(boolean la)
Internal use only.
|
protected void |
internalSetTag(String tag)
INTERNAL USE ONLY, FOR SPECIAL CASES!!!! Node tags may NEVER change once rendered to the browser.
|
protected void |
internalShelve() |
protected void |
internalUnshelve() |
boolean |
isAttached()
Returns T if this node is attached to a real page.
|
boolean |
isBuilt()
Returns T if the node's content has been built (createContent() has been called).
|
boolean |
isFocusable() |
boolean |
isFocusRequested()
Returns T if this control has requested the focus.
|
boolean |
isRendersOwnClose()
Returns if node would have always rendered end tag in
HtmlTagRenderer visitor for node. |
boolean |
isStretchHeight()
Returns if node has set stretchHeight
|
ILogicContext |
lc()
Get the context.
|
<T> void |
notify(T eventClass)
Send a self-defined event through the whole page.
|
void |
notifyParentOrOpenerPage(String command) |
void |
onAddedToPage(Page p) |
void |
onBeforeFullRender()
Will be called just before "full render" starts.
|
void |
onBeforeRender()
Called before rendering starts.
|
protected void |
onForceRebuild()
Called when forceRebuild is done on this node.
|
void |
onHeaderContributors(Page page) |
protected void |
onRefresh() |
void |
onRemoveFromPage(Page p) |
protected void |
onShelve() |
protected void |
onUnshelve() |
void |
refresh() |
void |
remove()
Disconnect this node from it's parent.
|
void |
removeBinding(IBinding binding) |
boolean |
removeCssClass(String name)
Removes the specified CSS class.
|
protected void |
renderJavascriptDelta(JavascriptStmt b) |
protected void |
renderJavascriptState(JavascriptStmt b)
This gets called when a component is re-rendered fully because of a full page
refresh.
|
void |
renderJavascriptState(StringBuilder sb)
Will be called just before "full render" starts.
|
void |
replaceWith(NodeBase nw)
Replace this node in it's parent with the node passed.
|
protected void |
setBrowserWindowSize(Dimension browserWindowSize) |
void |
setCalculcatedId(String calcid) |
void |
setCalculcatedId(String calcid,
String parentId) |
void |
setClicked(IClickBase<?> clicked)
Set a click handler for this node.
|
protected void |
setClientBounds(Rect clientBound) |
void |
setComponentBundle(IBundle bundle)
Set a message bundle for this component.
|
void |
setCssClass(String cssClass)
Set the value for the "class" (css class) attribute.
|
void |
setErrorLocation(String errorLocation)
When set this contains a user-understandable tekst indicating which control has the error.
|
void |
setFocus()
Claim the focus for this component.
|
UIMessage |
setMessage(UIMessage msg)
This sets a message (an error, warning or info message) on this control.
|
void |
setOnClickJS(String onClickJS) |
void |
setOnMouseDownJS(String onMouseDownJS) |
protected void |
setOnSizeAndPositionChange(INotify<NodeBase> onSizeAndPositionChange) |
void |
setOverrideTitle(String overrideTitle) |
void |
setSpecialAttribute(String name,
String value)
This is a generic method to add tag add attributes to a tag.
|
void |
setStretchHeight(boolean value)
Method can be used to stretch height of element to take all available free space in parent container.
|
void |
setTestID(String testID)
Set an ID that can be used for finding this node in the HTML using test software.
|
void |
setTestRepeatID(String trid) |
void |
setTitle(String title)
Set the title attribute, using tilde replacement.
|
void |
setUserObject(Object userObject)
Set some user object into this node.
|
String |
toString() |
abstract void |
visit(INodeVisitor v)
This must visit the appropriate method in the node visitor.
|
getBackgroundAttachment, getBackgroundColor, getBackgroundImage, getBackgroundPosition, getBackgroundRepeat, getBorderBottomColor, getBorderBottomStyle, getBorderBottomWidth, getBorderLeftColor, getBorderLeftStyle, getBorderLeftWidth, getBorderRightColor, getBorderRightStyle, getBorderRightWidth, getBorderTopColor, getBorderTopStyle, getBorderTopWidth, getBottom, getCachedStyle, getClear, getColor, getDisplay, getFloat, getFontFamily, getFontSize, getFontSizeAdjust, getFontStyle, getFontVariant, getFontWeight, getHeight, getLeft, getLineHeight, getMarginBottom, getMarginLeft, getMarginRight, getMarginTop, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOverflow, getPaddingBottom, getPaddingLeft, getPaddingRight, getPaddingTop, getPosition, getRight, getTextAlign, getTop, getTransform, getVerticalAlign, getVisibility, getWidth, getZIndex, internalSetDisplay, setBackgroundAttachment, setBackgroundColor, setBackgroundImage, setBackgroundPosition, setBackgroundRepeat, setBorder, setBorder, setBorderBottomColor, setBorderBottomStyle, setBorderBottomWidth, setBorderColor, setBorderLeftColor, setBorderLeftStyle, setBorderLeftWidth, setBorderRightColor, setBorderRightStyle, setBorderRightWidth, setBorderStyle, setBorderTopColor, setBorderTopStyle, setBorderTopWidth, setBorderWidth, setBottom, setBottom, setCachedStyle, setClear, setColor, setDisplay, setFloat, setFontFamily, setFontSize, setFontSizeAdjust, setFontStyle, setFontVariant, setFontWeight, setHeight, setLeft, setLeft, setLineHeight, setMargin, setMarginBottom, setMarginLeft, setMarginRight, setMarginTop, setMaxHeight, setMaxWidth, setMinHeight, setMinWidth, setOverflow, setPadding, setPaddingBottom, setPaddingLeft, setPaddingRight, setPaddingTop, setPosition, setRight, setRight, setTextAlign, setTop, setTop, setTransform, setVerticalAlign, setVisibility, setWidth, setZIndexpublic abstract void visit(INodeVisitor v) throws Exception
v - Exceptionpublic static void internalSetLogAllocations(boolean la)
la - public StackTraceElement[] getAllocationTracepoint()
public final boolean internalHasChangedAttributes()
public final void internalSetHasChangedAttributes(boolean d)
d - public final void internalSetHasChangedAttributes()
public void internalOnClicked(@Nonnull ClickInfo cli) throws Exception
Exceptionprotected final void changed()
changed in class CssBaseCssBase.changed()public final NodeContainer internalGetOldParent()
public void internalClearDelta()
public void internalClearDeltaFully()
protected int internalGetNodeCount(int depth)
@Nonnull public final String getActualID()
@Nonnull public final String getTag()
protected final void internalSetTag(@Nonnull String tag)
tag - @Nonnull public final Page getPage()
public final boolean isAttached()
@Nullable public final String getCssClass()
public void setCssClass(@Nullable String cssClass)
cssClass - public final boolean removeCssClass(@Nonnull String name)
name - public final void addCssClass(@Nonnull String name)
name - public final boolean hasCssClass(@Nonnull String cls)
cls - @Nonnull public final NodeContainer getParent()
@Nullable public NodeContainer internalGetParent()
public final boolean hasParent()
@Nullable public final NodeContainer getParent(int up)
up - @Nullable public final <T> T findParent(Class<T> clz)
T - clz - @Nonnull public final <T> T getParent(Class<T> clz)
T - clz - @Nullable public final NodeBase getParentOfTypes(Class<? extends NodeBase>... clzar)
clzar - public final void remove()
public final void replaceWith(NodeBase nw)
nw - public final void appendAfterMe(@Nonnull NodeBase item)
item - public final void appendBeforeMe(@Nonnull NodeBase item)
item - public final void build()
throws Exception
Exception@OverridingMethodsMustInvokeSuper public void forceRebuild()
public boolean isBuilt()
protected void internalCreateFrame()
throws Exception
Exceptionpublic void setTitle(@Nullable String title)
title - @Nullable public String getTitle()
@Nullable public IClickBase<?> getClicked()
public void setClicked(@Nullable IClickBase<?> clicked)
clicked - public boolean internalNeedClickHandler()
@Nullable public Object getUserObject()
setUserObject(Object).public void setUserObject(@Nullable Object userObject)
userObject - public String getTestID()
public void setTestID(String testID)
testID - @Nullable protected String getCalculatedTestID()
@Nonnull public String getTestRepeatId()
public String getOnClickJS()
public void setOnClickJS(String onClickJS)
public String getOnMouseDownJS()
public void setOnMouseDownJS(String onMouseDownJS)
public void appendJavascript(@Nonnull CharSequence js)
appendCreateJS(CharSequence). This method can
be called from all code to add a Javascript to execute on the browser. This
Javascript should only reference global state or this specific component
because the order of execution for multiple components is explicitly undefined.js - @Nonnull public JavascriptStmt appendStatement()
public void appendJsCustomUpdatesContributor(@Nonnull String jsCallback)
jsCallback - public void appendShowOverflowTextAsTitleJs(@Nonnull String cssSelector)
cssSelector - public void appendCreateJS(@Nonnull CharSequence js)
js - @Nonnull public JavascriptStmt createStatement()
@Nullable public StringBuilder getCreateJS()
protected void renderJavascriptState(@Nonnull JavascriptStmt b) throws Exception
b - Exceptionpublic final void internalRenderJavascriptState(@Nonnull JavascriptStmt stmt) throws Exception
Exceptionpublic final void changedJavascriptState()
protected void renderJavascriptDelta(@Nonnull JavascriptStmt b) throws Exception
Exceptionpublic final void internalRenderJavascriptDelta(@Nonnull JavascriptStmt stmt) throws Exception
Exceptionpublic void setSpecialAttribute(@Nonnull String name, @Nullable String value)
name - value - @Nullable public List<String> getSpecialAttributeList()
setSpecialAttribute(String, String) for
details.
FIXME This should return a copy, not the actual attributes.@Nullable public String getSpecialAttribute(@Nonnull String name)
name - @Nonnull public String getComponentDataURL(@Nonnull String action, @Nullable IPageParameters pp)
componentHandleWebDataRequest(RequestContextImpl, String)
method, so there should be a handler.pp - public void componentHandleWebAction(@Nonnull RequestContextImpl ctx, @Nonnull String action) throws Exception
Constants.ACMD_NOTIFY_CLIENT_POSITION_AND_SIZE as command from client (browser).ctx - action - Exceptionpublic void componentHandleWebDataRequest(@Nonnull RequestContextImpl ctx, @Nonnull String action) throws Exception
ctx - action - Exceptionpublic boolean acceptRequestParameter(@Nonnull String[] values) throws Exception
Exception@Nonnull public String getComponentDataURL(@Nullable IPageParameters pp)
IComponentUrlDataProvider to handle the data request.pp - @Nonnull public String getComponentJSONURL(@Nullable IPageParameters pp)
public void setErrorLocation(@Nullable String errorLocation)
errorLocation - @Nullable public String getErrorLocation()
public String getComponentInfo()
@Nullable public UIMessage setMessage(@Nullable UIMessage msg)
setMessage in interface INodeErrorDelegateINodeErrorDelegate.setMessage(to.etc.domui.dom.errors.UIMessage)@Deprecated public void clearMessage()
setMessage(UIMessage) with a null parameter.
Remove this-component's "current" error message, if present.clearMessage in interface INodeErrorDelegate@Nullable public UIMessage getMessage()
getMessage in interface INodeErrorDelegatepublic boolean hasError()
public UIMessage addGlobalMessage(UIMessage m)
m - public void clearGlobalMessage()
public void clearGlobalMessage(UIMessage m)
public void clearGlobalMessage(String code)
UIMessage.getGroup()).code - public final void setComponentBundle(@Nullable IBundle bundle)
bundle - @Nullable public final IBundle findComponentBundle()
setComponentBundle(IBundle), or
the component searches for a stack of message bundles by locating [classname] and "message" bundles for itself and all
it's parent classes. If no message bundles are found at all this will return null.@Nonnull public final IBundle getComponentBundle()
setComponentBundle(IBundle), or
the component searches for a stack of message bundles by locating [classname] and "message" bundles for itself and all
it's parent classes. If no message bundles are found at all this throws an IllegalStateException.@Nonnull public String $(@Nonnull String key, Object... param)
setComponentBundle(IBundle) and
findComponentBundle() for details on how a component find it's messages.key - param - public void internalOnValueChanged()
throws Exception
Exceptionprotected void onForceRebuild()
public void renderJavascriptState(StringBuilder sb) throws Exception
Exceptionpublic void onBeforeFullRender()
throws Exception
Exceptionpublic void onBeforeRender()
throws Exception
onBeforeFullRender() and
is safe to use.Exception@OverridingMethodsMustInvokeSuper protected void beforeCreateContent()
@OverridingMethodsMustInvokeSuper public void onAddedToPage(Page p)
@OverridingMethodsMustInvokeSuper public void onRemoveFromPage(Page p)
public void onHeaderContributors(Page page)
protected void handleDrop(RequestContextImpl ctx) throws Exception
ctx - Exception@Nonnull public QDataContext getSharedContext() throws Exception
Exception@Nonnull public QDataContextFactory getSharedContextFactory()
@Nonnull public ILogicContext lc() throws Exception
Exceptionpublic void setFocus()
public final boolean isFocusRequested()
public final void clearFocusRequested()
public boolean isFocusable()
@Nullable protected String getFocusID()
public final void appendJQuerySelector(@Nonnull StringBuilder sb)
$('#_a01')sb - public boolean isStretchHeight()
public void setStretchHeight(boolean value)
UrlPage.fixStretchBody() on it.Div.getCustomUpdatesCallJS() .
public boolean isRendersOwnClose()
HtmlTagRenderer visitor for node.@Nonnull public final String getThemedResourceRURL(@Nonnull String path)
$THEME/[currentThemeString]/[name]
where [name] is the rest of the path string after THEME/ has been removed from it.path - public final <T> void notify(T eventClass)
throws Exception
addNotificationListener(Class, INotificationListener) will
receive the event in their listeners.T - eventClass - Exceptionpublic final <T> void addNotificationListener(Class<T> eventClass, INotificationListener<T> listener)
@Nonnull public List<UIMessage> getBindingErrors() throws Exception
Exceptionpublic boolean bindErrors()
throws Exception
Exception@Nullable public final List<IBinding> getBindingList()
public final void addBinding(@Nonnull IBinding binding)
binding - @Nonnull public final ComponentPropertyBinding bind()
@Nonnull public final ComponentPropertyBinding bind(@Nonnull String componentProperty)
protected void clearValidationFailure(UIException result)
result - public void alignToTop(@Nonnull NodeBase node, int yOffset, boolean appendAsCreateJs)
node - yOffset - appendAsCreateJs - When T, renders javascript into appendCreateJS buffer, otherwise adds it as appendJavascript.public void alignToTop(@Nonnull NodeBase node, int yOffset, boolean appendAsCreateJs, boolean addServerPositionCallback)
node - yOffset - appendAsCreateJs - When T, renders javascript into appendCreateJS buffer, otherwise adds it as appendJavascript.addServerPositionCallback - When T, it also causes server round-trip once position is calculated to store calculate top position. This in needed as workaround for fact that, once node update is re-rendered it looses top value inside style attribute.public void alignTopToBottom(@Nonnull NodeBase node, int yOffset, boolean appendAsCreateJs)
node - yOffset - appendAsCreateJs - When T, renders javascript into appendCreateJS buffer, otherwise adds it as appendJavascript.public void alignTopToBottom(@Nonnull NodeBase node, int yOffset, boolean appendAsCreateJs, boolean addServerPositionCallback)
node - yOffset - appendAsCreateJs - When T, renders javascript into appendCreateJS buffer, otherwise adds it as appendJavascript.addServerPositionCallback - When T, it also causes server round-trip once position is calculated to store calculate top position. This in needed as workaround for fact that, once node update is re-rendered it looses top value inside style attribute.public void alignToLeft(@Nonnull NodeBase node, int xOffset, boolean appendAsCreateJs)
node - xOffset - appendAsCreateJs - When T, renders javascript into appendCreateJS buffer, otherwise adds it as appendJavascript.public void alignToLeft(@Nonnull NodeBase node, int xOffset, boolean appendAsCreateJs, boolean addServerPositionCallback)
node - xOffset - appendAsCreateJs - When T, renders javascript into appendCreateJS buffer, otherwise adds it as appendJavascript.addServerPositionCallback - When T, it also causes server round-trip once position is calculated to store calculate left position. This in needed as workaround for fact that, once node update is re-rendered it looses left value inside style attribute.public void alignToRight(@Nonnull NodeBase node, int xOffset, boolean appendAsCreateJs)
node - xOffset - appendAsCreateJs - When T, renders javascript into appendCreateJS buffer, otherwise adds it as appendJavascript.public void alignToRight(@Nonnull NodeBase node, int xOffset, boolean appendAsCreateJs, boolean addServerPositionCallback)
node - xOffset - appendAsCreateJs - When T, renders javascript into appendCreateJS buffer, otherwise adds it as appendJavascript.addServerPositionCallback - When T, it also causes server round-trip once position is calculated to store calculate left position. This in needed as workaround for fact that, once node update is re-rendered it looses left value inside style attribute.public void alignToMiddle(@Nonnull NodeBase node, int xOffset, boolean appendAsCreateJs)
node - xOffset - appendAsCreateJs - When T, renders javascript into appendCreateJS buffer, otherwise adds it as appendJavascript.public void alignToMiddle(@Nonnull NodeBase node, int xOffset, boolean appendAsCreateJs, boolean addServerPositionCallback)
node - xOffset - appendAsCreateJs - When T, renders javascript into appendCreateJS buffer, otherwise adds it as appendJavascript.addServerPositionCallback - When T, it also causes server round-trip once position is calculated to store calculate left position. This in needed as workaround for fact that, once node update is re-rendered it looses left value inside style attribute.Copyright © 2017 etc.to. All rights reserved.