Class Components
- java.lang.Object
-
- org.zkoss.zk.ui.Components
-
public class Components extends java.lang.ObjectUtilities to accessComponent.- Author:
- tomyeh
-
-
Field Summary
Fields Modifier and Type Field Description static org.zkoss.zk.ui.Components.ExecEXECUTION_PROXYExecution Proxystatic org.zkoss.zk.ui.Components.RequestScopeREQUEST_SCOPE_PROXYRequest Scope Proxy
-
Constructor Summary
Constructors Modifier Constructor Description protectedComponents()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.StringcomponentToPath(Component comp, Component ref)Converts a component to a path (relevant to another component).static ComposergetComposer(Component comp)Returns the composer object, or null if not found.static PagegetCurrentPage(Component comp)Returns the page of the give component, or the current page if the component is null or it doesn't belong to any page.static ComponentDefinitiongetDefinitionByDeviceType(java.lang.String deviceType, java.lang.Class cls)Returns the component definition of the specified class in all language of the specified device, or null if not foundstatic java.lang.ObjectgetImplicit(Component comp, java.lang.String name)Returns the implicit object of the specified name, or null if not found.static java.lang.ObjectgetImplicit(Page page, java.lang.String name)Returns the implicit object of the specified name, or null if not found.static java.lang.ObjectgetImplicit(Page page, Component comp, java.lang.String name)Returns the implicit object of the specified name, or null if not found.static java.util.Collection<java.lang.String>getImplicitNames()Returns a readonly collection of the names of the implicit objects.static IdSpacegetParentIdSpace(IdSpace idspace)Returns the parent of the ID space, or null if not found.static ComponentgetRoot(Component comp)Returns the root component of the specified one.static intgetScope(java.lang.String scope)Converts a string to an integer that can be used to accessComponent.getAttribute(String, int)static java.util.Collection<Component>getVisibleChildren(Component comp)Returns a collection of visible children.static booleanisAncestor(Component node1, Component node2)Tests whether node1 is an ancestor of node 2.static booleanisImplicit(java.lang.String id)Returns whether the given id is an implicit ZK object id.static booleanisRealVisible(Component comp)Returns whether this component is real visible (all its parents are visible).static ComponentpathToComponent(java.lang.String path, Component ref)Converts a path, generated bycomponentToPath(org.zkoss.zk.ui.Component, org.zkoss.zk.ui.Component), to a component.static voidremoveAllChildren(Component comp)Removes all children of the specified component.static voidreplace(Component oldc, Component newc)Replaces a component with another.static voidreplaceChildren(Component parent, java.util.Collection<Component> newChildren)Replaces all children of the specified component.static java.lang.StringscopeToString(int scope)Converts an integer to the string representing the scope.static voidsmartUpdate(Component comp, java.lang.String key, java.lang.Object value, boolean append)Adds the smartUpdate command to the specific component.static voidsort(java.util.List<? extends Component> list, int from, int to, java.util.Comparator<? super Component> cpr)Sorts the components in the list.static voidsort(java.util.List<? extends Component> list, java.util.Comparator<? super Component> cpr)Sorts the components in the list.
-
-
-
Method Detail
-
getParentIdSpace
public static IdSpace getParentIdSpace(IdSpace idspace)
Returns the parent of the ID space, or null if not found.- Since:
- 5.0.0
-
sort
public static void sort(java.util.List<? extends Component> list, java.util.Comparator<? super Component> cpr)
Sorts the components in the list.Note: you cannot use
Collections.sort(java.util.List<T>)to sortComponent.getChildren()because Collections.sort might cause some replicated item in the list.- See Also:
sort(List, int, int, Comparator)
-
sort
public static void sort(java.util.List<? extends Component> list, int from, int to, java.util.Comparator<? super Component> cpr)
Sorts the components in the list.- Parameters:
list- the list to be sortedfrom- the index of the first element (inclusive) to be sortedto- the index of the last element (exclusive) to be sortedcpr- the comparator to determine the order of the list.- Since:
- 3.5.0
-
replace
public static void replace(Component oldc, Component newc)
Replaces a component with another.- Parameters:
oldc- the component to remove.newc- the component to add- Throws:
java.lang.IllegalArgumentException- if oldc's parent and page are both null.- Since:
- 3.5.2
-
replaceChildren
public static void replaceChildren(Component parent, java.util.Collection<Component> newChildren)
Replaces all children of the specified component. It is the same asparent.getChildren().clear(); parent.getChildren().addAll(newChildren);- Since:
- 3.5.2
-
getRoot
public static Component getRoot(Component comp)
Returns the root component of the specified one. Notice that it could returncomp, if it is already a root component (or it is null).- Since:
- 3.6.3
-
isAncestor
public static boolean isAncestor(Component node1, Component node2)
Tests whether node1 is an ancestor of node 2. If node1 and node2 is the same, true is returned.
-
removeAllChildren
public static void removeAllChildren(Component comp)
Removes all children of the specified component. It is the same ascomp.getChildren().clear().
-
getDefinitionByDeviceType
public static final ComponentDefinition getDefinitionByDeviceType(java.lang.String deviceType, java.lang.Class cls)
Returns the component definition of the specified class in all language of the specified device, or null if not found- Parameters:
deviceType- the device type (Device), such as ajax. It cannot be null.cls- the implementation class of the component.- Since:
- 5.0.0
-
isRealVisible
public static boolean isRealVisible(Component comp)
Returns whether this component is real visible (all its parents are visible).Note: true is returned if comp is null. In other words, it can be used to examine parent's real visibility even if it is a root component, such as
Components.isRealVisible(getParent()).- See Also:
Component.isVisible()
-
getVisibleChildren
public static java.util.Collection<Component> getVisibleChildren(Component comp)
Returns a collection of visible children.The performance of the returned collection's size() is NO GOOD.
-
getScope
public static final int getScope(java.lang.String scope)
Converts a string to an integer that can be used to accessComponent.getAttribute(String, int)
-
scopeToString
public static final java.lang.String scopeToString(int scope)
Converts an integer to the string representing the scope.- Parameters:
scope- one ofComponent.COMPONENT_SCOPE,Component.SPACE_SCOPE,Component.PAGE_SCOPE,Component.DESKTOP_SCOPE,Component.SESSION_SCOPE,Component.REQUEST_SCOPE, andComponent.APPLICATION_SCOPE.
-
componentToPath
public static final java.lang.String componentToPath(Component comp, Component ref)
Converts a component to a path (relevant to another component). It is usefully to implement a serializable component that contains a reference to another component. In this case, we can not serializes the reference directly (otherwise, another component will be created, when deserialized).Rather, it is better to store the path related, and then restore it back to a component by calling
pathToComponent(java.lang.String, org.zkoss.zk.ui.Component).- Parameters:
comp- the component to be converted to path. It cannot be null.ref- the component used to generated the path from. It cannot be null.- Returns:
- the path. Notice that you have to use
pathToComponent(java.lang.String, org.zkoss.zk.ui.Component)to convert it back. - Throws:
java.lang.UnsupportedOperationException- if we cannot find a path to the component to write.- Since:
- 3.0.0
-
pathToComponent
public static final Component pathToComponent(java.lang.String path, Component ref)
Converts a path, generated bycomponentToPath(org.zkoss.zk.ui.Component, org.zkoss.zk.ui.Component), to a component.- Parameters:
ref- the component used to generated the path from. It cannot be null. It is the same as the one when callingcomponentToPath(org.zkoss.zk.ui.Component, org.zkoss.zk.ui.Component).- Since:
- 3.0.0
-
isImplicit
public static boolean isImplicit(java.lang.String id)
Returns whether the given id is an implicit ZK object id.- Parameters:
id- Component id- Returns:
- whether the given name is a implicit object.
- Since:
- 3.5.2
-
getImplicitNames
public static java.util.Collection<java.lang.String> getImplicitNames()
Returns a readonly collection of the names of the implicit objects.- Since:
- 6.0.0
-
getImplicit
public static java.lang.Object getImplicit(Page page, Component comp, java.lang.String name)
Returns the implicit object of the specified name, or null if not found.Notice that it does check for the current scope (
Scopes.getCurrent(org.zkoss.zk.ui.Page)). Rather,Scopes.getImplicit(java.lang.String, java.lang.Object)depends on this method.- Parameters:
page- the page. If page is null and comp is not, comp.getPage() is assumed- Since:
- 5.0.0
- See Also:
Scopes.getImplicit(java.lang.String, java.lang.Object)
-
getImplicit
public static java.lang.Object getImplicit(Component comp, java.lang.String name)
Returns the implicit object of the specified name, or null if not found.It is the same as getImplicit(null, comp, name).
- Since:
- 3.6.0
-
getImplicit
public static java.lang.Object getImplicit(Page page, java.lang.String name)
Returns the implicit object of the specified name, or null if not found.It is the same as getImplicit(page, null, name).
- Since:
- 3.6.0
-
getComposer
public static Composer getComposer(Component comp)
Returns the composer object, or null if not found.- Since:
- 7.0.3
-
smartUpdate
public static void smartUpdate(Component comp, java.lang.String key, java.lang.Object value, boolean append)
Adds the smartUpdate command to the specific component.- Since:
- 7.0.3
-
getCurrentPage
public static Page getCurrentPage(Component comp)
Returns the page of the give component, or the current page if the component is null or it doesn't belong to any page. The current page is retrieved byExecutionCtrl.getCurrentPage()or the current execution. This method returns null if no execution or no current page at all.- Parameters:
comp- the component to retrieve the page. Ignored if null.- Since:
- 6.0.0
-
-