Interface ComponentCloneListener

All Known Subinterfaces:
CloneableEventListener<T>
All Known Implementing Classes:
GenericAutowireComposer, GenericForwardComposer, SelectorComposer

public interface ComponentCloneListener
Used to notify an object stored in a component, when the component is cloned.

When a component is cloned, it checks every attribute (Component.setAttribute(java.lang.String, java.lang.Object, int)) and listener (Component.addEventListener(int, java.lang.String, org.zkoss.zk.ui.event.EventListener<? extends org.zkoss.zk.ui.event.Event>)) to see whether this interface is implemented. If implemented, willClone(org.zkoss.zk.ui.Component) will be called. Then, the object can either return itself, if it can be shared by two components, or clone itself, if an independent instance must be used for each component.

Since:
2.4.0
Author:
tomyeh
  • Method Summary

    Modifier and Type
    Method
    Description
    Called when a component is going to be cloned.
  • Method Details

    • willClone

      Object willClone(Component comp)
      Called when a component is going to be cloned. If the object is OK to be shared by the cloned and original components, it can return itself. If an independent instance must be created for the cloned component, it can clone itself and return the cloned object.
      Parameters:
      comp - the cloned component (not the original one)
      Returns:
      the object to be used in the cloned component. If this object is returned, the same object is shared by the cloned and original components. If other object is returned, it is used by the cloned component. If null is returned, it is not used by the cloned component at all.
      Since:
      5.0.0