Package org.zkoss.zk.ui.sys
Class ComponentsCtrl
- java.lang.Object
-
- org.zkoss.zk.ui.sys.ComponentsCtrl
-
public class ComponentsCtrl extends java.lang.Object
Utilities for implementing components.- Author:
- tomyeh
-
-
Field Summary
Fields Modifier and Type Field Description static ComponentDefinition
DUMMY
Represents a dummy definition.
-
Constructor Summary
Constructors Constructor Description ComponentsCtrl()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static void
applyForward(Component comp, java.lang.String forward)
Applies the forward condition to the specified component.static void
checkUuid(java.lang.String uuid)
Checks if the given UUID is valid.static java.lang.String
encodeId(java.lang.StringBuffer sb, int val)
Returns an ID representing the specified number The ID consists of 0-9, a-z and _.static java.lang.Object
getCurrentInfo()
Returns the current component infoComponentInfo
, definition (ComponentDefinition
or null, which is used only byUiEngine
to communicate withAbstractComponent
.static java.lang.reflect.Method
getEventMethod(java.lang.Class<?> cls, java.lang.String evtnm)
Returns the method for handling the specified event, or null if not available.static Component
getRootParent()
Returns the root parent when being called inComponentCtrl.onPageAttached(org.zkoss.zk.ui.Page, org.zkoss.zk.ui.Page)
andComponentCtrl.onPageDetached(org.zkoss.zk.ui.Page)
static boolean
isAutoUuid(java.lang.String id)
Returns whether an ID is generated automatically.static boolean
isReservedAttribute(java.lang.String name)
Returns if the attribute name is reserved.static java.lang.Object[]
parseEventExpression(Component comp, java.lang.String evtexpr, Component defaultComp, boolean deferred)
Pares the event expression.static java.util.Collection<JavaScriptValue>
redraw(java.util.Collection<? extends Component> comps)
An utilities to create an array of JavaScript objects (JavaScriptValue
) that can be used to mount the specified widget at the clients.static void
setCurrentInfo(ComponentDefinition compdef)
Sets the current component definition, which is used only byUiEngine
to communicate withAbstractComponent
.static void
setCurrentInfo(ComponentInfo compInfo)
Sets the current component definition, which is used only byUiEngine
to communicate withAbstractComponent
.static void
setCurrentInfo(ShadowInfo compInfo)
Sets the current shadow definition, which is used only byUiEngine
to communicate withAbstractComponent
.static void
setEventMethodCache(Cache cache)
Sets the cache that stores the information about event handler methods.static void
setRootParent(Component comp)
Sets root parentstatic java.lang.String
toAutoId(java.lang.String prefix, int val)
Returns the automatically generate component's UUID/ID.
-
-
-
Field Detail
-
DUMMY
public static final ComponentDefinition DUMMY
Represents a dummy definition.
-
-
Method Detail
-
toAutoId
public static final java.lang.String toAutoId(java.lang.String prefix, int val)
Returns the automatically generate component's UUID/ID.
-
encodeId
public static final java.lang.String encodeId(java.lang.StringBuffer sb, int val)
Returns an ID representing the specified number The ID consists of 0-9, a-z and _.- Since:
- 5.0.5
-
isAutoUuid
public static final boolean isAutoUuid(java.lang.String id)
Returns whether an ID is generated automatically. Note: true is returned if id is null. Also notice that this method doesn't check if a custom ID generator (IdGenerator
) is assigned.- Since:
- 5.0.3
-
checkUuid
public static void checkUuid(java.lang.String uuid)
Checks if the given UUID is valid. UUID cannot be empty and can only have alphanumeric characters or underscore.- Throws:
UiException
- if uuid is not valid.
-
isReservedAttribute
public static final boolean isReservedAttribute(java.lang.String name)
Returns if the attribute name is reserved. If name is null, false is returned.- Since:
- 3.0.0
-
getRootParent
public static final Component getRootParent()
Returns the root parent when being called inComponentCtrl.onPageAttached(org.zkoss.zk.ui.Page, org.zkoss.zk.ui.Page)
andComponentCtrl.onPageDetached(org.zkoss.zk.ui.Page)
- Since:
- 8.5.1
-
setRootParent
public static final void setRootParent(Component comp)
Sets root parentUsed only internally.
- Since:
- 8.5.1
-
getCurrentInfo
public static final java.lang.Object getCurrentInfo()
Returns the current component infoComponentInfo
, definition (ComponentDefinition
or null, which is used only byUiEngine
to communicate withAbstractComponent
.- Since:
- 3.0.0
-
setCurrentInfo
public static final void setCurrentInfo(ComponentDefinition compdef)
Sets the current component definition, which is used only byUiEngine
to communicate withAbstractComponent
.Used only internally.
- Since:
- 3.0.0
-
setCurrentInfo
public static void setCurrentInfo(ComponentInfo compInfo)
Sets the current component definition, which is used only byUiEngine
to communicate withAbstractComponent
.Used only internally.
- Since:
- 3.0.0
-
setCurrentInfo
public static void setCurrentInfo(ShadowInfo compInfo)
Sets the current shadow definition, which is used only byUiEngine
to communicate withAbstractComponent
.Used only internally.
- Since:
- 8.0.0
-
parseEventExpression
public static java.lang.Object[] parseEventExpression(Component comp, java.lang.String evtexpr, Component defaultComp, boolean deferred) throws ComponentNotFoundException
Pares the event expression.There are several formats for the event expression:
- onClick
- self.onClick
- id.onClick
- ../id1/id2.onClick
- ${elexpr}.onClick
- Parameters:
comp
- the component that the event expression is referenced toevtexpr
- the event expression.defaultComp
- the default component which is used when evtexpr doesn't specify the component.deferred
- whether to defer the conversion of the path to a component. If true and EL not specified or evaluated to a string, it returns the path directly rather than converting it to a component.- Returns:
- a two element array. The first element is the component if deferred is false or EL is evaluated to a component, or a path, otherwise. The second component is the event name.
- Throws:
ComponentNotFoundException
- Since:
- 3.0.0
-
applyForward
public static final void applyForward(Component comp, java.lang.String forward)
Applies the forward condition to the specified component.The basic format:
onEvent1=id1/id2.onEvent2,onEvent3=id3.onEvent4
See
ComponentInfo.setForward(java.lang.String)
for more information.- Since:
- 3.0.0
-
getEventMethod
public static final java.lang.reflect.Method getEventMethod(java.lang.Class<?> cls, java.lang.String evtnm)
Returns the method for handling the specified event, or null if not available.
-
setEventMethodCache
public static final void setEventMethodCache(Cache cache)
Sets the cache that stores the information about event handler methods.Default:
FastReadCache
. In additions, the number of caches is default to 97 and can be changed by use of the org.zkoss.zk.ui.eventMethods.cache.number property. The maximal allowed size of each cache, if GC, is default to 30 and can be changed by use of the org.zkoss.zk.ui.eventMethods.cache.maxSize property.- Parameters:
cache
- the cache. It cannot be null. It must be thread safe. Once assigned, the caller shall not access it again.- Since:
- 3.0.0
-
redraw
public static final java.util.Collection<JavaScriptValue> redraw(java.util.Collection<? extends Component> comps)
An utilities to create an array of JavaScript objects (JavaScriptValue
) that can be used to mount the specified widget at the clients.- Since:
- 5.0.0
-
-