package net.sourceforge.fenixedu.presentationTier.renderers; import java.util.ArrayList; import java.util.Collection; import java.util.HashMap; import java.util.List; import java.util.Map; import net.sourceforge.fenixedu.domain.DomainObject; import pt.ist.fenixWebFramework.renderers.OutputRenderer; import pt.ist.fenixWebFramework.renderers.components.HtmlBlockContainer; import pt.ist.fenixWebFramework.renderers.components.HtmlComponent; import pt.ist.fenixWebFramework.renderers.components.HtmlContainer; import pt.ist.fenixWebFramework.renderers.components.HtmlImage; import pt.ist.fenixWebFramework.renderers.components.HtmlInlineContainer; import pt.ist.fenixWebFramework.renderers.components.HtmlLink; import pt.ist.fenixWebFramework.renderers.components.HtmlList; import pt.ist.fenixWebFramework.renderers.components.HtmlListItem; import pt.ist.fenixWebFramework.renderers.components.HtmlScript; import pt.ist.fenixWebFramework.renderers.components.HtmlStyle; import pt.ist.fenixWebFramework.renderers.components.HtmlText; import pt.ist.fenixWebFramework.renderers.layouts.Layout; import pt.ist.fenixWebFramework.renderers.schemas.Schema; import pt.ist.fenixWebFramework.renderers.utils.RenderKit; import pt.ist.fenixWebFramework.renderers.utils.RenderUtils; import pt.ist.fenixWebFramework.renderers.utils.RendererPropertyUtils; /** * This renderer is a generic renderer that can be used to display simple list * or tree views. The usual way of using this renderer includes the * configuration of the presentation of each item and the indication of how to * get the children of each item. Additionaliy you can specify control link that * target each item. * *

* The TreeRenderer also offers the possibility to include images in * each items and make the tree draggable using javascript. If you need a * draggable tree then you must choose a {@link #setTreeId(String) treeId} and a * {@link #setFieldId(String) fieldId} or a{@link #setSaveUrl(String) saveUrl}. * *

* You can also configure the style and class of several elements in the tree. * You must give special attention to the class you choose for the list items * because when the tree is draggable those classes have a special meaning. * *

* Example: *