/* ListgroupRendererExt.java Purpose: Description: History: Fri Aug 29 15:22:30 2008, Created by tomyeh Copyright (C) 2008 Potix Corporation. All Rights Reserved. {{IS_RIGHT This program is distributed under LGPL Version 2.1 in the hope that it will be useful, but WITHOUT ANY WARRANTY. }}IS_RIGHT */ package org.zkoss.zul; /** * Provides additional control to {@link ListitemRenderer} for instantiating * {@link Listgroup} and {@link Listgroupfoot}. * * @author tomyeh * @since 3.5.0 */ public interface ListgroupRendererExt { /** Creates an instance of {@link Listgroup} for rendering. * The created component will be passed to {@link ListitemRenderer#render}. * * <p>Note: remember to invoke {@link Listgroup#applyProperties} to initialize * the properties, defined in the component definition, properly. * * <p>If null is returned, the default row is created as follow. <pre><code> final Listgroup group = new Listgroup(); group.applyProperties(); return group; </code></pre> * * <p>Note: DO NOT call {@link Listgroup#setParent}. * * @return the listgroup if you'd like to create it differently, or null * if you want {@link Listbox} to create it for you */ public Listgroup newListgroup(Listbox listbox); /** Creates an instance of {@link Listgroupfoot} for rendering. * The created component will be passed to {@link ListitemRenderer#render}. * * <p>Note: remember to invoke {@link Listgroupfoot#applyProperties} to initialize * the properties, defined in the component definition, properly. * * <p>If null is returned, the default row is created as follow. <pre><code> final Listgroupfoot groupfoot = new Listgroupfoot(); groupfoot.applyProperties(); return groupfoot; </code></pre> * * <p>Note: DO NOT call {@link Listgroupfoot#setParent}. * * @return the listgroupfoot if you'd like to create it differently, or null * if you want {@link Listbox} to create it for you */ public Listgroupfoot newListgroupfoot(Listbox listbox); }