/* Merger.java
Purpose:
Description:
History:
Fri Jul 30 18:53:19 TST 2010, Created by tomyeh
Copyright (C) 2010 Potix Corporation. All Rights Reserved.
*/
package org.zkoss.zk.ui.ext.render;
import org.zkoss.zk.ui.Component;
/**
* Implemented by the object returned by {@link org.zkoss.zk.ui.sys.ComponentCtrl#getExtraCtrl}
* to indicate a component is capable to merge with its sibling and children.
*
* @author tomyeh
* @since 5.0.4
* @deprecated As of release 6.5.1, please use stubonly instead.
*/
public interface Merger {
/** Merges the next sibling into one component, if possible.
* @return the component after merged, or null if it is not able
* to merge the next sibling.
*/
public Component mergeNextSibling();
/** Merges the children into one component, if possible.
* <p>Notice that {@link #mergeNextSibling} is called first to merge
* all adjacent siblings if possible, and then {@link #mergeChildren}
* is called to merge parent and children.
* @return the component after merged, or null if it is not able
* to merge the children.
*/
public Component mergeChildren();
}