Class ComponentsCtrl

java.lang.Object
org.zkoss.zk.ui.sys.ComponentsCtrl

public class ComponentsCtrl extends Object
Utilities for implementing components.
Author:
tomyeh
  • Field Details

  • Constructor Details

    • ComponentsCtrl

      public ComponentsCtrl()
  • Method Details

    • toAutoId

      public static final String toAutoId(String prefix, int val)
      Returns the automatically generate component's UUID/ID.
    • encodeId

      public static final String encodeId(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(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(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(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()
      Since:
      8.5.1
    • setRootParent

      public static final void setRootParent(Component comp)
      Sets root parent

      Used only internally.

      Since:
      8.5.1
    • getCurrentInfo

      public static final Object getCurrentInfo()
      Returns the current component info ComponentInfo, definition (ComponentDefinition or null, which is used only by UiEngine to communicate with AbstractComponent.
      Since:
      3.0.0
    • setCurrentInfo

      public static final void setCurrentInfo(ComponentDefinition compdef)
      Sets the current component definition, which is used only by UiEngine to communicate with AbstractComponent.

      Used only internally.

      Since:
      3.0.0
    • setCurrentInfo

      public static void setCurrentInfo(ComponentInfo compInfo)
      Sets the current component definition, which is used only by UiEngine to communicate with AbstractComponent.

      Used only internally.

      Since:
      3.0.0
    • setCurrentInfo

      public static void setCurrentInfo(ShadowInfo compInfo)
      Sets the current shadow definition, which is used only by UiEngine to communicate with AbstractComponent.

      Used only internally.

      Since:
      8.0.0
    • parseEventExpression

      public static Object[] parseEventExpression(Component comp, 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 to
      evtexpr - 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, 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 Method getEventMethod(Class<?> cls, String evtnm)
      Returns the method for handling the specified event, or null if not available.
    • setEventMethodCache

      public static final void setEventMethodCache(org.zkoss.util.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 Collection<org.zkoss.json.JavaScriptValue> redraw(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