<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> | |
<!-- saved from url=(0014)about:internet --> | |
<HTML> | |
<HEAD> | |
<!-- Generated by javadoc (build 1.5.0_19) on Sun Mar 20 20:56:07 PKT 2011 --> | |
<META http-equiv="Content-Type" content="text/html; charset=UTF-8"> | |
<TITLE> | |
ContainerUtils (Click Framework API - v2.3.0) | |
</TITLE> | |
<META NAME="keywords" CONTENT="org.apache.click.util.ContainerUtils class"> | |
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style"> | |
<SCRIPT type="text/javascript"> | |
function windowTitle() | |
{ | |
parent.document.title="ContainerUtils (Click Framework API - v2.3.0)"; | |
} | |
</SCRIPT> | |
<NOSCRIPT> | |
</NOSCRIPT> | |
</HEAD> | |
<BODY BGCOLOR="white"> | |
<!-- ========= START OF TOP NAVBAR ======= --> | |
<A NAME="navbar_top"><!-- --></A> | |
<A HREF="#skip-navbar_top" title="Skip navigation links"></A> | |
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""> | |
<TR> | |
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> | |
<A NAME="navbar_top_firstrow"><!-- --></A> | |
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> | |
<TR ALIGN="center" VALIGN="top"> | |
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> | |
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> | |
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> | |
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> | |
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> | |
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> | |
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> | |
</TR> | |
</TABLE> | |
</TD> | |
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> | |
</EM> | |
</TD> | |
</TR> | |
<TR> | |
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> | |
<A HREF="../../../../org/apache/click/util/ClickUtils.html" title="class in org.apache.click.util"><B>PREV CLASS</B></A> | |
<A HREF="../../../../org/apache/click/util/ErrorPage.html" title="class in org.apache.click.util"><B>NEXT CLASS</B></A></FONT></TD> | |
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> | |
<A HREF="../../../../index.html?org/apache/click/util/ContainerUtils.html" target="_top"><B>FRAMES</B></A> | |
<A HREF="ContainerUtils.html" target="_top"><B>NO FRAMES</B></A> | |
<SCRIPT type="text/javascript"> | |
<!-- | |
if(window==top) { | |
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>'); | |
} | |
//--> | |
</SCRIPT> | |
<NOSCRIPT> | |
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A> | |
</NOSCRIPT> | |
</FONT></TD> | |
</TR> | |
<TR> | |
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> | |
SUMMARY: NESTED | FIELD | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD> | |
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> | |
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD> | |
</TR> | |
</TABLE> | |
<A NAME="skip-navbar_top"></A> | |
<!-- ========= END OF TOP NAVBAR ========= --> | |
<HR> | |
<!-- ======== START OF CLASS DATA ======== --> | |
<H2> | |
<FONT SIZE="-1"> | |
org.apache.click.util</FONT> | |
<BR> | |
Class ContainerUtils</H2> | |
<PRE> | |
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html" title="class or interface in java.lang">java.lang.Object</A> | |
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.click.util.ContainerUtils</B> | |
</PRE> | |
<HR> | |
<DL> | |
<DT><PRE>public class <B>ContainerUtils</B><DT>extends <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A></DL> | |
</PRE> | |
<P> | |
Provides Container access and copy utilities. | |
<P> | |
<P> | |
<HR> | |
<P> | |
<!-- ======== CONSTRUCTOR SUMMARY ======== --> | |
<A NAME="constructor_summary"><!-- --></A> | |
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> | |
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> | |
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> | |
<B>Constructor Summary</B></FONT></TH> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD><CODE><B><A HREF="../../../../org/apache/click/util/ContainerUtils.html#ContainerUtils()">ContainerUtils</A></B>()</CODE> | |
<BR> | |
</TD> | |
</TR> | |
</TABLE> | |
| |
<!-- ========== METHOD SUMMARY =========== --> | |
<A NAME="method_summary"><!-- --></A> | |
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> | |
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> | |
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2"> | |
<B>Method Summary</B></FONT></TH> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
<CODE>static void</CODE></FONT></TD> | |
<TD><CODE><B><A HREF="../../../../org/apache/click/util/ContainerUtils.html#copyContainerToObject(org.apache.click.control.Container, java.lang.Object)">copyContainerToObject</A></B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container, | |
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A> object)</CODE> | |
<BR> | |
Populate the given object attributes from the Containers field values.</TD> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
<CODE>static void</CODE></FONT></TD> | |
<TD><CODE><B><A HREF="../../../../org/apache/click/util/ContainerUtils.html#copyContainerToObject(org.apache.click.control.Container, java.lang.Object, java.util.List)">copyContainerToObject</A></B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container, | |
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A> object, | |
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A><<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A>> fieldList)</CODE> | |
<BR> | |
Populate the given object attributes from the Containers field values.</TD> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
<CODE>static void</CODE></FONT></TD> | |
<TD><CODE><B><A HREF="../../../../org/apache/click/util/ContainerUtils.html#copyObjectToContainer(java.lang.Object, org.apache.click.control.Container)">copyObjectToContainer</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A> object, | |
<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container)</CODE> | |
<BR> | |
Populate the given Container field values from the object attributes.</TD> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
<CODE>static void</CODE></FONT></TD> | |
<TD><CODE><B><A HREF="../../../../org/apache/click/util/ContainerUtils.html#copyObjectToContainer(java.lang.Object, org.apache.click.control.Container, java.util.List)">copyObjectToContainer</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A> object, | |
<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container, | |
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A><<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A>> fieldList)</CODE> | |
<BR> | |
Populate the given Container field values from the object attributes.</TD> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
<CODE>static <A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A></CODE></FONT></TD> | |
<TD><CODE><B><A HREF="../../../../org/apache/click/util/ContainerUtils.html#findControlByName(org.apache.click.control.Container, java.lang.String)">findControlByName</A></B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container, | |
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A> name)</CODE> | |
<BR> | |
Find and return the first control with a matching name in the specified | |
container.</TD> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
<CODE>static <A HREF="../../../../org/apache/click/control/Form.html" title="class in org.apache.click.control">Form</A></CODE></FONT></TD> | |
<TD><CODE><B><A HREF="../../../../org/apache/click/util/ContainerUtils.html#findForm(org.apache.click.Control)">findForm</A></B>(<A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A> control)</CODE> | |
<BR> | |
Find and return the specified controls parent Form or null | |
if no Form is present.</TD> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
<CODE>static <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A><<A HREF="../../../../org/apache/click/control/Button.html" title="class in org.apache.click.control">Button</A>></CODE></FONT></TD> | |
<TD><CODE><B><A HREF="../../../../org/apache/click/util/ContainerUtils.html#getButtons(org.apache.click.control.Container)">getButtons</A></B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container)</CODE> | |
<BR> | |
Return the list of Buttons for the given Container, recursively including | |
any Fields contained in child containers.</TD> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
<CODE>static <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A><<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A>></CODE></FONT></TD> | |
<TD><CODE><B><A HREF="../../../../org/apache/click/util/ContainerUtils.html#getErrorFields(org.apache.click.control.Container)">getErrorFields</A></B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container)</CODE> | |
<BR> | |
Return a list of container fields which are not valid, not hidden and not | |
disabled.</TD> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
<CODE>static <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Map.html" title="class or interface in java.util">Map</A><<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A>,<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A>></CODE></FONT></TD> | |
<TD><CODE><B><A HREF="../../../../org/apache/click/util/ContainerUtils.html#getFieldMap(org.apache.click.control.Container)">getFieldMap</A></B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container)</CODE> | |
<BR> | |
Return a map of all Fields for the given Container, recursively including | |
any Fields contained in child containers.</TD> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
<CODE>static <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A><<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A>></CODE></FONT></TD> | |
<TD><CODE><B><A HREF="../../../../org/apache/click/util/ContainerUtils.html#getFields(org.apache.click.control.Container)">getFields</A></B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container)</CODE> | |
<BR> | |
Return the list of Fields for the given Container, recursively including | |
any Fields contained in child containers.</TD> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
<CODE>static <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A><<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A>></CODE></FONT></TD> | |
<TD><CODE><B><A HREF="../../../../org/apache/click/util/ContainerUtils.html#getFieldsAndLabels(org.apache.click.control.Container)">getFieldsAndLabels</A></B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container)</CODE> | |
<BR> | |
Return the list of Fields for the given Container, recursively including | |
any Fields contained in child containers.</TD> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
<CODE>static <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A><<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A>></CODE></FONT></TD> | |
<TD><CODE><B><A HREF="../../../../org/apache/click/util/ContainerUtils.html#getHiddenFields(org.apache.click.control.Container)">getHiddenFields</A></B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container)</CODE> | |
<BR> | |
Return the list of hidden Fields for the given Container, recursively including | |
any Fields contained in child containers.</TD> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
<CODE>static <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A><<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A>></CODE></FONT></TD> | |
<TD><CODE><B><A HREF="../../../../org/apache/click/util/ContainerUtils.html#getInputFields(org.apache.click.control.Container)">getInputFields</A></B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container)</CODE> | |
<BR> | |
Return the list of input Fields (TextField, Select, Radio, Checkbox etc).</TD> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
<CODE>static <A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A></CODE></FONT></TD> | |
<TD><CODE><B><A HREF="../../../../org/apache/click/util/ContainerUtils.html#insert(org.apache.click.control.Container, org.apache.click.Control, int, java.util.Map)">insert</A></B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container, | |
<A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A> control, | |
int index, | |
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Map.html" title="class or interface in java.util">Map</A><<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A>,<A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A>> controlMap)</CODE> | |
<BR> | |
Add the given control to the container at the specified index, and return | |
the added instance.</TD> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
<CODE>static boolean</CODE></FONT></TD> | |
<TD><CODE><B><A HREF="../../../../org/apache/click/util/ContainerUtils.html#remove(org.apache.click.control.Container, org.apache.click.Control, java.util.Map)">remove</A></B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container, | |
<A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A> control, | |
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Map.html" title="class or interface in java.util">Map</A><<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A>,<A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A>> controlMap)</CODE> | |
<BR> | |
Remove the given control from the container, returning <tt>true</tt> if | |
the control was found in the container and removed, or <tt>false</tt> if | |
the control was not found.</TD> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1"> | |
<CODE>static <A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A></CODE></FONT></TD> | |
<TD><CODE><B><A HREF="../../../../org/apache/click/util/ContainerUtils.html#replace(org.apache.click.control.Container, org.apache.click.Control, org.apache.click.Control, int, java.util.Map)">replace</A></B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container, | |
<A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A> currentControl, | |
<A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A> newControl, | |
int controlIndex, | |
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Map.html" title="class or interface in java.util">Map</A><<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A>,<A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A>> controlMap)</CODE> | |
<BR> | |
<B>Deprecated.</B> <I>this method was used for stateful pages, which have been deprecated</I></TD> | |
</TR> | |
</TABLE> | |
<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A> | |
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> | |
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor"> | |
<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A></B></TH> | |
</TR> | |
<TR BGCOLOR="white" CLASS="TableRowColor"> | |
<TD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD> | |
</TR> | |
</TABLE> | |
| |
<P> | |
<!-- ========= CONSTRUCTOR DETAIL ======== --> | |
<A NAME="constructor_detail"><!-- --></A> | |
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> | |
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> | |
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2"> | |
<B>Constructor Detail</B></FONT></TH> | |
</TR> | |
</TABLE> | |
<A NAME="ContainerUtils()"><!-- --></A><H3> | |
ContainerUtils</H3> | |
<PRE> | |
public <B>ContainerUtils</B>()</PRE> | |
<DL> | |
</DL> | |
<!-- ============ METHOD DETAIL ========== --> | |
<A NAME="method_detail"><!-- --></A> | |
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY=""> | |
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor"> | |
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2"> | |
<B>Method Detail</B></FONT></TH> | |
</TR> | |
</TABLE> | |
<A NAME="copyContainerToObject(org.apache.click.control.Container, java.lang.Object, java.util.List)"><!-- --></A><H3> | |
copyContainerToObject</H3> | |
<PRE> | |
public static void <B>copyContainerToObject</B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container, | |
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A> object, | |
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A><<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A>> fieldList)</PRE> | |
<DL> | |
<DD>Populate the given object attributes from the Containers field values. | |
<p/> | |
If a Field and object attribute matches, the object attribute is set to | |
the Object returned from the method | |
<A HREF="../../../../org/apache/click/control/Field.html#getValueObject()"><CODE>Field.getValueObject()</CODE></A>. If an object | |
attribute is a primitive, the Object returned from | |
<A HREF="../../../../org/apache/click/control/Field.html#getValueObject()"><CODE>Field.getValueObject()</CODE></A> will be converted | |
into the specific primitive e.g. Integer will become int and Boolean will | |
become boolean. | |
<p/> | |
The fieldList specifies which fields to copy to the object. This allows | |
one to include or exclude certain Container fields before populating the | |
object. | |
<p/> | |
The following example shows how to exclude disabled fields from | |
populating a customer object: | |
<pre class="prettyprint"> | |
public void onInit() { | |
List formFields = new ArrayList(); | |
for(Iterator it = form.getFieldList().iterator(); it.hasNext(); ) { | |
Field field = (Field) formFields.next(); | |
// Exclude disabled fields | |
if (!field.isDisabled()) { | |
formFields.add(field); | |
} | |
} | |
Customer customer = new Customer(); | |
ContainerUtils.copyContainerToObject(form, customer, formFields); | |
} | |
</pre> | |
The specified Object can either be a POJO (plain old java object) or | |
a <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Map.html" title="class or interface in java.util"><CODE>Map</CODE></A>. If a POJO is specified, its attributes are | |
populated from matching container fields. If a map is specified, its | |
key/value pairs are populated from matching container fields. | |
<P> | |
<DD><DL> | |
<DT><B>Parameters:</B><DD><CODE>container</CODE> - the fieldList Container<DD><CODE>object</CODE> - the object to populate with field values<DD><CODE>fieldList</CODE> - the list of fields to obtain values from | |
<DT><B>Throws:</B> | |
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/IllegalArgumentException.html" title="class or interface in java.lang">IllegalArgumentException</A></CODE> - if container, object or fieldList is | |
null</DL> | |
</DD> | |
</DL> | |
<HR> | |
<A NAME="copyContainerToObject(org.apache.click.control.Container, java.lang.Object)"><!-- --></A><H3> | |
copyContainerToObject</H3> | |
<PRE> | |
public static void <B>copyContainerToObject</B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container, | |
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A> object)</PRE> | |
<DL> | |
<DD>Populate the given object attributes from the Containers field values. | |
<P> | |
<DD><DL> | |
<DT><B>Parameters:</B><DD><CODE>container</CODE> - the Container to obtain field values from<DD><CODE>object</CODE> - the object to populate with field values<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/click/util/ContainerUtils.html#copyContainerToObject(org.apache.click.control.Container, java.lang.Object, java.util.List)"><CODE>copyContainerToObject(org.apache.click.control.Container, java.lang.Object, java.util.List)</CODE></A></DL> | |
</DD> | |
</DL> | |
<HR> | |
<A NAME="copyObjectToContainer(java.lang.Object, org.apache.click.control.Container, java.util.List)"><!-- --></A><H3> | |
copyObjectToContainer</H3> | |
<PRE> | |
public static void <B>copyObjectToContainer</B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A> object, | |
<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container, | |
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A><<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A>> fieldList)</PRE> | |
<DL> | |
<DD>Populate the given Container field values from the object attributes. | |
<p/> | |
If a Field and object attribute matches, the Field value is set to the | |
object attribute using the method | |
<A HREF="../../../../org/apache/click/control/Field.html#setValueObject(java.lang.Object)"><CODE>Field.setValueObject(java.lang.Object)</CODE></A>. If | |
an object attribute is a primitive it is first converted to its proper | |
wrapper class e.g. int will become Integer and boolean will become | |
Boolean. | |
<p/> | |
The fieldList specifies which fields to populate from the object. This | |
allows one to exclude or include specific fields. | |
<p/> | |
The specified Object can either be a POJO (plain old java object) or | |
a <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Map.html" title="class or interface in java.util"><CODE>Map</CODE></A>. If a POJO is specified, its attributes are | |
copied to matching container fields. If a map is specified, its key/value | |
pairs are copied to matching container fields. | |
<P> | |
<DD><DL> | |
<DT><B>Parameters:</B><DD><CODE>object</CODE> - the object to obtain attribute values from<DD><CODE>container</CODE> - the Container to populate<DD><CODE>fieldList</CODE> - the list of fields to populate from the object | |
attributes</DL> | |
</DD> | |
</DL> | |
<HR> | |
<A NAME="copyObjectToContainer(java.lang.Object, org.apache.click.control.Container)"><!-- --></A><H3> | |
copyObjectToContainer</H3> | |
<PRE> | |
public static void <B>copyObjectToContainer</B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/Object.html" title="class or interface in java.lang">Object</A> object, | |
<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container)</PRE> | |
<DL> | |
<DD>Populate the given Container field values from the object attributes. | |
<P> | |
<DD><DL> | |
<DT><B>Parameters:</B><DD><CODE>object</CODE> - the object to obtain attribute values from<DD><CODE>container</CODE> - the Container to populate<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/click/util/ContainerUtils.html#copyObjectToContainer(java.lang.Object, org.apache.click.control.Container, java.util.List)"><CODE>copyObjectToContainer(java.lang.Object, org.apache.click.control.Container, java.util.List)</CODE></A></DL> | |
</DD> | |
</DL> | |
<HR> | |
<A NAME="findControlByName(org.apache.click.control.Container, java.lang.String)"><!-- --></A><H3> | |
findControlByName</H3> | |
<PRE> | |
public static <A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A> <B>findControlByName</B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container, | |
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A> name)</PRE> | |
<DL> | |
<DD>Find and return the first control with a matching name in the specified | |
container. | |
<p/> | |
If no matching control is found in the specified container, child | |
containers will be recursively scanned for a match. | |
<P> | |
<DD><DL> | |
<DT><B>Parameters:</B><DD><CODE>container</CODE> - the container that is searched for a control with a | |
matching name<DD><CODE>name</CODE> - the name of the control to find | |
<DT><B>Returns:</B><DD>the control which name matched the given name</DL> | |
</DD> | |
</DL> | |
<HR> | |
<A NAME="findForm(org.apache.click.Control)"><!-- --></A><H3> | |
findForm</H3> | |
<PRE> | |
public static <A HREF="../../../../org/apache/click/control/Form.html" title="class in org.apache.click.control">Form</A> <B>findForm</B>(<A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A> control)</PRE> | |
<DL> | |
<DD>Find and return the specified controls parent Form or null | |
if no Form is present. | |
<P> | |
<DD><DL> | |
<DT><B>Parameters:</B><DD><CODE>control</CODE> - the control to check for Form | |
<DT><B>Returns:</B><DD>the controls parent Form or null if no parent is a Form</DL> | |
</DD> | |
</DL> | |
<HR> | |
<A NAME="getButtons(org.apache.click.control.Container)"><!-- --></A><H3> | |
getButtons</H3> | |
<PRE> | |
public static <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A><<A HREF="../../../../org/apache/click/control/Button.html" title="class in org.apache.click.control">Button</A>> <B>getButtons</B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container)</PRE> | |
<DL> | |
<DD>Return the list of Buttons for the given Container, recursively including | |
any Fields contained in child containers. | |
<P> | |
<DD><DL> | |
<DT><B>Parameters:</B><DD><CODE>container</CODE> - the container to obtain the buttons from | |
<DT><B>Returns:</B><DD>the list of contained buttons</DL> | |
</DD> | |
</DL> | |
<HR> | |
<A NAME="getErrorFields(org.apache.click.control.Container)"><!-- --></A><H3> | |
getErrorFields</H3> | |
<PRE> | |
public static <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A><<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A>> <B>getErrorFields</B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container)</PRE> | |
<DL> | |
<DD>Return a list of container fields which are not valid, not hidden and not | |
disabled. | |
<p/> | |
The list of returned fields will exclude any <tt>Button</tt> fields. | |
<P> | |
<DD><DL> | |
<DT><B>Parameters:</B><DD><CODE>container</CODE> - the container to obtain the invalid fields from | |
<DT><B>Returns:</B><DD>list of container fields which are not valid, not hidden and not | |
disabled</DL> | |
</DD> | |
</DL> | |
<HR> | |
<A NAME="getFieldMap(org.apache.click.control.Container)"><!-- --></A><H3> | |
getFieldMap</H3> | |
<PRE> | |
public static <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Map.html" title="class or interface in java.util">Map</A><<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A>,<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A>> <B>getFieldMap</B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container)</PRE> | |
<DL> | |
<DD>Return a map of all Fields for the given Container, recursively including | |
any Fields contained in child containers. | |
<p/> | |
The map's key / value pair will consist of the control name and instance. | |
<P> | |
<DD><DL> | |
<DT><B>Parameters:</B><DD><CODE>container</CODE> - the container to obtain the fields from | |
<DT><B>Returns:</B><DD>the map of contained fields</DL> | |
</DD> | |
</DL> | |
<HR> | |
<A NAME="getFields(org.apache.click.control.Container)"><!-- --></A><H3> | |
getFields</H3> | |
<PRE> | |
public static <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A><<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A>> <B>getFields</B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container)</PRE> | |
<DL> | |
<DD>Return the list of Fields for the given Container, recursively including | |
any Fields contained in child containers. | |
<P> | |
<DD><DL> | |
<DT><B>Parameters:</B><DD><CODE>container</CODE> - the container to obtain the fields from | |
<DT><B>Returns:</B><DD>the list of contained fields</DL> | |
</DD> | |
</DL> | |
<HR> | |
<A NAME="getFieldsAndLabels(org.apache.click.control.Container)"><!-- --></A><H3> | |
getFieldsAndLabels</H3> | |
<PRE> | |
public static <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A><<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A>> <B>getFieldsAndLabels</B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container)</PRE> | |
<DL> | |
<DD>Return the list of Fields for the given Container, recursively including | |
any Fields contained in child containers. The list of returned fields | |
will exclude any <tt>Button</tt> and <tt>FieldSet</tt> fields. | |
<P> | |
<DD><DL> | |
<DT><B>Parameters:</B><DD><CODE>container</CODE> - the container to obtain the fields from | |
<DT><B>Returns:</B><DD>the list of contained fields</DL> | |
</DD> | |
</DL> | |
<HR> | |
<A NAME="getHiddenFields(org.apache.click.control.Container)"><!-- --></A><H3> | |
getHiddenFields</H3> | |
<PRE> | |
public static <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A><<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A>> <B>getHiddenFields</B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container)</PRE> | |
<DL> | |
<DD>Return the list of hidden Fields for the given Container, recursively including | |
any Fields contained in child containers. The list of returned fields | |
will exclude any <tt>Button</tt>, <tt>FieldSet</tt> and <tt>Label</tt> | |
fields. | |
<P> | |
<DD><DL> | |
<DT><B>Parameters:</B><DD><CODE>container</CODE> - the container to obtain the fields from | |
<DT><B>Returns:</B><DD>the list of contained fields</DL> | |
</DD> | |
</DL> | |
<HR> | |
<A NAME="getInputFields(org.apache.click.control.Container)"><!-- --></A><H3> | |
getInputFields</H3> | |
<PRE> | |
public static <A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/List.html" title="class or interface in java.util">List</A><<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A>> <B>getInputFields</B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container)</PRE> | |
<DL> | |
<DD>Return the list of input Fields (TextField, Select, Radio, Checkbox etc). | |
for the given Container, recursively including any Fields contained in | |
child containers. The list of returned fields will exclude any | |
<tt>Button</tt>, <tt>FieldSet</tt> and <tt>Label</tt> fields. | |
<P> | |
<DD><DL> | |
<DT><B>Parameters:</B><DD><CODE>container</CODE> - the container to obtain the fields from | |
<DT><B>Returns:</B><DD>the list of contained fields</DL> | |
</DD> | |
</DL> | |
<HR> | |
<A NAME="insert(org.apache.click.control.Container, org.apache.click.Control, int, java.util.Map)"><!-- --></A><H3> | |
insert</H3> | |
<PRE> | |
public static <A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A> <B>insert</B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container, | |
<A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A> control, | |
int index, | |
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Map.html" title="class or interface in java.util">Map</A><<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A>,<A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A>> controlMap)</PRE> | |
<DL> | |
<DD>Add the given control to the container at the specified index, and return | |
the added instance. | |
<p/> | |
<b>Please note</b>: an exception is raised if the container contains a | |
control with the same name as the given control. It is the responsibility | |
of the caller to replace existing controls. | |
<p/> | |
<b>Also note</b> if the specified control already has a parent assigned, | |
it will automatically be removed from that parent and inserted as a child | |
of the container instead. | |
<p/> | |
This method is useful for developers needing to implement the | |
<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control"><CODE>Container</CODE></A> interface but cannot for one | |
reason or another extend from <A HREF="../../../../org/apache/click/control/AbstractContainer.html" title="class in org.apache.click.control"><CODE>AbstractContainer</CODE></A>. | |
For example if the Container already extends from an existing <tt>Control</tt> | |
such as a <tt>Field</tt>, it won't be possible to extend | |
<tt>AbstractContainer</tt> as well. In such scenarios instead of | |
reimplementing <A HREF="../../../../org/apache/click/control/Container.html#insert(org.apache.click.Control, int)"><CODE>insert</CODE></A>, | |
one can delegate to this method. | |
<p/> | |
For example, a custom Container that extends <tt>Field</tt> and | |
implements <tt>Container</tt> could implement the <tt>insert</tt> method | |
as follows: | |
<pre class="prettyprint"> | |
public class MyContainer extends Field implements Container { | |
public Control insert(Control control, int index) { | |
return ContainerUtils.insert(this, control, index, getControlMap()); | |
} | |
... | |
} </pre> | |
<P> | |
<DD><DL> | |
<DT><B>Parameters:</B><DD><CODE>container</CODE> - the container to insert the given control into<DD><CODE>control</CODE> - the control to add to the container<DD><CODE>index</CODE> - the index at which the control is to be inserted<DD><CODE>controlMap</CODE> - the container's map of controls keyed on control name | |
<DT><B>Returns:</B><DD>the control that was added to the container | |
<DT><B>Throws:</B> | |
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/IllegalArgumentException.html" title="class or interface in java.lang">IllegalArgumentException</A></CODE> - if the control is null or if the control | |
and container is the same instance | |
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/IndexOutOfBoundsException.html" title="class or interface in java.lang">IndexOutOfBoundsException</A></CODE> - if index is out of range | |
<tt>(index < 0 || index > container.getControls().size())</tt></DL> | |
</DD> | |
</DL> | |
<HR> | |
<A NAME="replace(org.apache.click.control.Container, org.apache.click.Control, org.apache.click.Control, int, java.util.Map)"><!-- --></A><H3> | |
replace</H3> | |
<PRE> | |
public static <A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A> <B>replace</B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container, | |
<A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A> currentControl, | |
<A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A> newControl, | |
int controlIndex, | |
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Map.html" title="class or interface in java.util">Map</A><<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A>,<A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A>> controlMap)</PRE> | |
<DL> | |
<DD><B>Deprecated.</B> <I>this method was used for stateful pages, which have been deprecated</I> | |
<P> | |
<DD>Replace the current control in the container at the specified index, and | |
return the newly added control. | |
<p/> | |
<b>Please note</b> if the new control already has a parent assigned, | |
it will automatically be removed from that parent and inserted as a child | |
of the container instead. | |
<p/> | |
This method is useful for developers needing to implement the | |
<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control"><CODE>Container</CODE></A> interface but cannot for one | |
reason or another extend from <A HREF="../../../../org/apache/click/control/AbstractContainer.html" title="class in org.apache.click.control"><CODE>AbstractContainer</CODE></A>. | |
For example if the Container already extends from an existing <tt>Control</tt> | |
such as a <tt>Field</tt>, it won't be possible to extend | |
<tt>AbstractContainer</tt> as well. In such scenarios instead of | |
reimplementing <A HREF="../../../../org/apache/click/control/Container.html#replace(org.apache.click.Control, org.apache.click.Control)"><CODE>replace</CODE></A>, | |
one can delegate to this method. | |
<p/> | |
For example, a custom Container that extends <tt>Field</tt> and | |
implements <tt>Container</tt> could implement the <tt>replace</tt> method | |
as follows: | |
<pre class="prettyprint"> | |
public class MyContainer extends Field implements Container { | |
public Control replace(Control currentControl, Control newControl) { | |
int controlIndex = getControls().indexOf(currentControl); | |
return ContainerUtils.replace(this, currentControl, newControl, | |
controlIndex, getControlMap()); | |
} | |
... | |
} </pre> | |
<P> | |
<DD><DL> | |
<DT><B>Parameters:</B><DD><CODE>container</CODE> - the container to insert the new control into<DD><CODE>currentControl</CODE> - the control currently contained in the container<DD><CODE>newControl</CODE> - the control to replace the current control contained in | |
the container<DD><CODE>controlIndex</CODE> - the index of the current control in the container<DD><CODE>controlMap</CODE> - the container's map of controls keyed on control name | |
<DT><B>Returns:</B><DD>the new control that replaced the current control | |
<DT><B>Throws:</B> | |
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/IllegalArgumentException.html" title="class or interface in java.lang">IllegalArgumentException</A></CODE> - if the currentControl or newControl is | |
null | |
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/IllegalStateException.html" title="class or interface in java.lang">IllegalStateException</A></CODE> - if the controlIndex = -1</DL> | |
</DD> | |
</DL> | |
<HR> | |
<A NAME="remove(org.apache.click.control.Container, org.apache.click.Control, java.util.Map)"><!-- --></A><H3> | |
remove</H3> | |
<PRE> | |
public static boolean <B>remove</B>(<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control">Container</A> container, | |
<A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A> control, | |
<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Map.html" title="class or interface in java.util">Map</A><<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/String.html" title="class or interface in java.lang">String</A>,<A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A>> controlMap)</PRE> | |
<DL> | |
<DD>Remove the given control from the container, returning <tt>true</tt> if | |
the control was found in the container and removed, or <tt>false</tt> if | |
the control was not found. | |
<p/> | |
This method is useful for developers needing to implement the | |
<A HREF="../../../../org/apache/click/control/Container.html" title="interface in org.apache.click.control"><CODE>Container</CODE></A> interface but cannot for one | |
reason or another extend from <A HREF="../../../../org/apache/click/control/AbstractContainer.html" title="class in org.apache.click.control"><CODE>AbstractContainer</CODE></A>. | |
For example if the Container already extends from an existing <tt>Control</tt> | |
such as a <tt>Field</tt>, it won't be possible to extend | |
<tt>AbstractContainer</tt> as well. In such scenarios instead of | |
reimplementing <A HREF="../../../../org/apache/click/control/Container.html#remove(org.apache.click.Control)"><CODE>remove</CODE></A>, | |
one can delegate to this method. | |
<p/> | |
For example, a custom Container that extends <tt>Field</tt> and | |
implements <tt>Container</tt> could implement the <tt>remove</tt> method | |
as follows: | |
<pre class="prettyprint"> | |
public class MyContainer extends Field implements Container { | |
public boolean remove (Control control) { | |
return ContainerUtils.remove(this, control, getControlMap()); | |
} | |
... | |
} </pre> | |
<P> | |
<DD><DL> | |
<DT><B>Parameters:</B><DD><CODE>container</CODE> - the container to remove the given control from<DD><CODE>control</CODE> - the control to remove from the container<DD><CODE>controlMap</CODE> - the container's map of controls keyed on control name | |
<DT><B>Returns:</B><DD>true if the control was removed from the container | |
<DT><B>Throws:</B> | |
<DD><CODE><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/lang/IllegalArgumentException.html" title="class or interface in java.lang">IllegalArgumentException</A></CODE> - if the control is null</DL> | |
</DD> | |
</DL> | |
<!-- ========= END OF CLASS DATA ========= --> | |
<HR> | |
<!-- ======= START OF BOTTOM NAVBAR ====== --> | |
<A NAME="navbar_bottom"><!-- --></A> | |
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A> | |
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY=""> | |
<TR> | |
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> | |
<A NAME="navbar_bottom_firstrow"><!-- --></A> | |
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY=""> | |
<TR ALIGN="center" VALIGN="top"> | |
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD> | |
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD> | |
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD> | |
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD> | |
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD> | |
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD> | |
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD> | |
</TR> | |
</TABLE> | |
</TD> | |
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM> | |
</EM> | |
</TD> | |
</TR> | |
<TR> | |
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> | |
<A HREF="../../../../org/apache/click/util/ClickUtils.html" title="class in org.apache.click.util"><B>PREV CLASS</B></A> | |
<A HREF="../../../../org/apache/click/util/ErrorPage.html" title="class in org.apache.click.util"><B>NEXT CLASS</B></A></FONT></TD> | |
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2"> | |
<A HREF="../../../../index.html?org/apache/click/util/ContainerUtils.html" target="_top"><B>FRAMES</B></A> | |
<A HREF="ContainerUtils.html" target="_top"><B>NO FRAMES</B></A> | |
<SCRIPT type="text/javascript"> | |
<!-- | |
if(window==top) { | |
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>'); | |
} | |
//--> | |
</SCRIPT> | |
<NOSCRIPT> | |
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A> | |
</NOSCRIPT> | |
</FONT></TD> | |
</TR> | |
<TR> | |
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> | |
SUMMARY: NESTED | FIELD | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD> | |
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2"> | |
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD> | |
</TR> | |
</TABLE> | |
<A NAME="skip-navbar_bottom"></A> | |
<!-- ======== END OF BOTTOM NAVBAR ======= --> | |
<HR> | |
<style type='text/css'>.str{color:#2A00FF;}.kwd{color:#7F0055;font-weight:bold;}.com{color:#3F7F5F;}.typ{color:#000;}.lit{color:#066;}.pun{color:#660;}.pln{color:#000;}.tag{color:#000099;font-weight:bold;}.atn{color:#009900;}.atv{color:#000;}.dec{color:#606;}pre.prettyprint{padding:1em;border:1px solid #888;overflow:auto;}@media print{.str{color:#2A00FF;}.kwd{color:#7F0055;font-weight:bold;}.com{color:#3F7F5F;font-style:italic;}.typ{color:#000;font-weight:bold;}.lit{color:#044;}.pun{color:#440;}.pln{color:#000;}.tag{color:#000099;font-weight:bold;}.atn{color:#009900;}.atv{color:#000;}}</style><script type='text/javascript'>var PR_keywords={};(function(){var CPP_KEYWORDS='abstract bool break case catch char class const '+'const_cast continue default delete deprecated dllexport dllimport do '+'double dynamic_cast else enum explicit extern false float for friend '+'goto if inline int long mutable naked namespace new noinline noreturn '+'nothrow novtable operator private property protected public register '+'reinterpret_cast return selectany short signed sizeof static '+'static_cast struct switch template this thread throw true try typedef '+'typeid typename union unsigned using declaration, directive uuid '+'virtual void volatile while typeof';var CSHARP_KEYWORDS='as base by byte checked decimal delegate descending '+'event finally fixed foreach from group implicit in interface internal '+'into is lock null object override orderby params readonly ref sbyte '+'sealed stackalloc string select uint ulong unchecked unsafe ushort var';var JAVA_KEYWORDS='package synchronized boolean implements import throws '+'instanceof transient extends final strictfp native super';var JSCRIPT_KEYWORDS='debugger export function with NaN Infinity';var PERL_KEYWORDS='require sub unless until use elsif BEGIN END';var PYTHON_KEYWORDS='and assert def del elif except exec global lambda '+'not or pass print raise yield False True None';var RUBY_KEYWORDS='then end begin rescue ensure module when undef next '+'redo retry alias defined';var SH_KEYWORDS='done fi';var KEYWORDS=[CPP_KEYWORDS,CSHARP_KEYWORDS,JAVA_KEYWORDS,JSCRIPT_KEYWORDS,PERL_KEYWORDS,PYTHON_KEYWORDS,RUBY_KEYWORDS,SH_KEYWORDS];for(var k=0;k<KEYWORDS.length;k++){var kw=KEYWORDS[k].split(' ');for(var i=0;i<kw.length;i++){if(kw[i]){PR_keywords[kw[i]]=true;}}}}).call(this);var PR_STRING='str';var PR_KEYWORD='kwd';var PR_COMMENT='com';var PR_TYPE='typ';var PR_LITERAL='lit';var PR_PUNCTUATION='pun';var PR_PLAIN='pln';var PR_TAG='tag';var PR_DECLARATION='dec';var PR_SOURCE='src';var PR_ATTRIB_NAME='atn';var PR_ATTRIB_VALUE='atv';var PR_TAB_WIDTH=8;function PR_isWordChar(ch){return(ch>='a'&&ch<='z')||(ch>='A'&&ch<='Z');}function PR_spliceArrayInto(inserted,container,containerPosition,countReplaced){inserted.unshift(containerPosition,countReplaced||0);try{container.splice.apply(container,inserted);}finally{inserted.splice(0,2);}}var REGEXP_PRECEDER_PATTERN=(function(){var preceders=['!','!=','!==','#','%','%=','&','&&','&&=','&=','(','*','*=','+=',',','-=','->','/','/=',':','::',';','<','<<','<<=','<=','=','==','===','>','>=','>>','>>=','>>>','>>>=','?','@','[','^','^=','^^','^^=','{','|','|=','||','||=','~','break','case','continue','delete','do','else','finally','instanceof','return','throw','try','typeof'];var pattern='(?:'+'(?:(?:^|[^0-9\.])\\.{1,3})|'+'(?:(?:^|[^\\+])\\+)|'+'(?:(?:^|[^\\-])-)';for(var i=0;i<preceders.length;++i){var preceder=preceders[i];if(PR_isWordChar(preceder.charAt(0))){pattern+='|\\b'+preceder;}else{pattern+='|'+preceder.replace(/([^=<>:&])/g,'\\$1');}}pattern+='|^)\\s*$';return new RegExp(pattern);})();var pr_amp=/&/g;var pr_lt=/</g;var pr_gt=/>/g;var pr_quot=/"/g;function PR_attribToHtml(str){return str.replace(pr_amp,'&').replace(pr_lt,'<').replace(pr_gt,'>').replace(pr_quot,'"');}function PR_textToHtml(str){return str.replace(pr_amp,'&').replace(pr_lt,'<').replace(pr_gt,'>');}var pr_ltEnt=/</g;var pr_gtEnt=/>/g;var pr_aposEnt=/'/g;var pr_quotEnt=/"/g;var pr_ampEnt=/&/g;function PR_htmlToText(html){var pos=html.indexOf('&');if(pos<0){return html;}for(--pos;(pos=html.indexOf('&#',pos+1))>=0;){var end=html.indexOf(';',pos);if(end>=0){var num=html.substring(pos+3,end);var radix=10;if(num&&num.charAt(0)=='x'){num=num.substring(1);radix=16;}var codePoint=parseInt(num,radix);if(!isNaN(codePoint)){html=(html.substring(0,pos)+String.fromCharCode(codePoint)+html.substring(end+1));}}}return html.replace(pr_ltEnt,'<').replace(pr_gtEnt,'>').replace(pr_aposEnt,"'").replace(pr_quotEnt,'"').replace(pr_ampEnt,'&');}function PR_isRawContent(node){return'XMP'==node.tagName;}var PR_innerHtmlWorks=null;function PR_getInnerHtml(node){if(null===PR_innerHtmlWorks){var testNode=document.createElement('PRE');testNode.appendChild(document.createTextNode('<!DOCTYPE foo PUBLIC "foo bar">\n<foo />'));PR_innerHtmlWorks=!/</.test(testNode.innerHTML);}if(PR_innerHtmlWorks){var content=node.innerHTML;if(PR_isRawContent(node)){content=PR_textToHtml(content);}return content;}var out=[];for(var child=node.firstChild;child;child=child.nextSibling){PR_normalizedHtml(child,out);}return out.join('');}function PR_normalizedHtml(node,out){switch(node.nodeType){case 1:var name=node.tagName.toLowerCase();out.push('\074',name);for(var i=0;i<node.attributes.length;++i){var attr=node.attributes[i];if(!attr.specified){continue;}out.push(' ');PR_normalizedHtml(attr,out);}out.push('>');for(var child=node.firstChild;child;child=child.nextSibling){PR_normalizedHtml(child,out);}if(node.firstChild||!/^(?:br|link|img)$/.test(name)){out.push('<\/',name,'>');}break;case 2:out.push(node.name.toLowerCase(),'="',PR_attribToHtml(node.value),'"');break;case 3:case 4:out.push(PR_textToHtml(node.nodeValue));break;}}function PR_tabExpander(tabWidth){var SPACES=' ';var charInLine=0;return function(plainText){var out=null;var pos=0;for(var i=0,n=plainText.length;i<n;++i){var ch=plainText.charAt(i);switch(ch){case'\t':if(!out){out=[];}out.push(plainText.substring(pos,i));var nSpaces=tabWidth-(charInLine%tabWidth);charInLine+=nSpaces;for(;nSpaces>=0;nSpaces-=SPACES.length){out.push(SPACES.substring(0,nSpaces));}pos=i+1;break;case'\n':charInLine=0;break;default:++charInLine;}}if(!out){return plainText;}out.push(plainText.substring(pos));return out.join('');};}var pr_chunkPattern=/(?:[^<]+|<!--[\s\S]*?-->|<!\[CDATA\[([\s\S]*?)\]\]>|<\/?[a-zA-Z][^>]*>|<)/g;var pr_commentPrefix=/^<!--/;var pr_cdataPrefix=/^<\[CDATA\[/;var pr_brPrefix=/^<br\b/i;function PR_extractTags(s){var matches=s.match(pr_chunkPattern);var sourceBuf=[];var sourceBufLen=0;var extractedTags=[];if(matches){for(var i=0,n=matches.length;i<n;++i){var match=matches[i];if(match.length>1&&match.charAt(0)==='<'){if(pr_commentPrefix.test(match)){continue;}if(pr_cdataPrefix.test(match)){sourceBuf.push(match.substring(9,match.length-3));sourceBufLen+=match.length-12;}else if(pr_brPrefix.test(match)){sourceBuf.push('\n');sourceBufLen+=1;}else{extractedTags.push(sourceBufLen,match);}}else{var literalText=PR_htmlToText(match);sourceBuf.push(literalText);sourceBufLen+=literalText.length;}}}return{source:sourceBuf.join(''),tags:extractedTags};}function PR_createSimpleLexer(shortcutStylePatterns,fallthroughStylePatterns){var shortcuts={};(function(){var allPatterns=shortcutStylePatterns.concat(fallthroughStylePatterns);for(var i=allPatterns.length;--i>=0;){var patternParts=allPatterns[i];var shortcutChars=patternParts[3];if(shortcutChars){for(var c=shortcutChars.length;--c>=0;){shortcuts[shortcutChars.charAt(c)]=patternParts;}}}})();var nPatterns=fallthroughStylePatterns.length;return function(sourceCode,opt_basePos){opt_basePos=opt_basePos||0;var decorations=[opt_basePos,PR_PLAIN];var lastToken='';var pos=0;var tail=sourceCode;while(tail.length){var style;var token=null;var patternParts=shortcuts[tail.charAt(0)];if(patternParts){var match=tail.match(patternParts[1]);token=match[0];style=patternParts[0];}else{for(var i=0;i<nPatterns;++i){patternParts=fallthroughStylePatterns[i];var contextPattern=patternParts[2];if(contextPattern&&!contextPattern.test(lastToken)){continue;}var match=tail.match(patternParts[1]);if(match){token=match[0];style=patternParts[0];break;}}if(!token){style=PR_PLAIN;token=tail.substring(0,1);}}decorations.push(opt_basePos+pos,style);pos+=token.length;tail=tail.substring(token.length);if(style!==PR_COMMENT&&/\S/.test(token)){lastToken=token;}}return decorations;};}var PR_C_STYLE_STRING_AND_COMMENT_LEXER=PR_createSimpleLexer([[PR_STRING,/^\'(?:[^\\\']|\\[\s\S])*(?:\'|$)/,null,"'"],[PR_STRING,/^"(?:[^\\"]|\\[\s\S])*(?:"|$)/,null,'"'],[PR_STRING,/^\`(?:[^\\\`]|\\[\s\S])*(?:\`|$)/,null,'`']],[[PR_PLAIN,/^(?:[^\'"\`\/\#]+)/,null,' \r\n'],[PR_COMMENT,/^#[^\r\n]*/,null,'#'],[PR_COMMENT,/^\/\/[^\r\n]*/,null],[PR_STRING,/^\/(?:[^\\\*\/]|\\[\s\S])+(?:\/|$)/,REGEXP_PRECEDER_PATTERN],[PR_COMMENT,/^\/\*[\s\S]*?(?:\*\/|$)/,null]]);function PR_splitStringAndCommentTokens(sourceCode){return PR_C_STYLE_STRING_AND_COMMENT_LEXER(sourceCode);}var PR_C_STYLE_LITERAL_IDENTIFIER_PUNC_RECOGNIZER=PR_createSimpleLexer([],[[PR_PLAIN,/^\s+/,null,' \r\n'],[PR_PLAIN,/^[a-z_$@][a-z_$@0-9]*/i,null],[PR_LITERAL,/^0x[a-f0-9]+[a-z]/i,null],[PR_LITERAL,/^(?:\d(?:_\d+)*\d*(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?[a-z]*/i,null,'123456789'],[PR_PUNCTUATION,/^[^\s\w\.$@]+/,null]]);function PR_splitNonStringNonCommentTokens(source,decorations){for(var i=0;i<decorations.length;i+=2){var style=decorations[i+1];if(style===PR_PLAIN){var start=decorations[i];var end=i+2<decorations.length?decorations[i+2]:source.length;var chunk=source.substring(start,end);var subDecs=PR_C_STYLE_LITERAL_IDENTIFIER_PUNC_RECOGNIZER(chunk,start);for(var j=0,m=subDecs.length;j<m;j+=2){var subStyle=subDecs[j+1];if(subStyle===PR_PLAIN){var subStart=subDecs[j];var subEnd=j+2<m?subDecs[j+2]:chunk.length;var token=source.substring(subStart,subEnd);if(token=='.'){subDecs[j+1]=PR_PUNCTUATION;}else if(token in PR_keywords){subDecs[j+1]=PR_KEYWORD;}else if(/^@?[A-Z][A-Z$]*[a-z][A-Za-z$]*$/.test(token)){subDecs[j+1]=token.charAt(0)=='@'?PR_LITERAL:PR_TYPE;}}}PR_spliceArrayInto(subDecs,decorations,i,2);i+=subDecs.length-2;}}return decorations;}var PR_MARKUP_LEXER=PR_createSimpleLexer([],[[PR_PLAIN,/^[^<]+/,null],[PR_DECLARATION,/^<!\w[^>]*(?:>|$)/,null],[PR_COMMENT,/^<!--[\s\S]*?(?:-->|$)/,null],[PR_SOURCE,/^<\?[\s\S]*?(?:\?>|$)/,null],[PR_SOURCE,/^<%[\s\S]*?(?:%>|$)/,null],[PR_SOURCE,/^<(script|style|xmp)\b[^>]*>[\s\S]*?<\/\1\b[^>]*>/i,null],[PR_TAG,/^<\/?\w[^<>]*>/,null]]);var PR_SOURCE_CHUNK_PARTS=/^(<[^>]*>)([\s\S]*)(<\/[^>]*>)$/;function PR_tokenizeMarkup(source){var decorations=PR_MARKUP_LEXER(source);for(var i=0;i<decorations.length;i+=2){if(decorations[i+1]===PR_SOURCE){var start=decorations[i];var end=i+2<decorations.length?decorations[i+2]:source.length;var sourceChunk=source.substring(start,end);var match=(sourceChunk.match(PR_SOURCE_CHUNK_PARTS));if(match){decorations.splice(i,2,start,PR_TAG,start+match[1].length,PR_SOURCE,start+match[1].length+(match[2]||'').length,PR_TAG);}}}return decorations;}var PR_TAG_LEXER=PR_createSimpleLexer([[PR_ATTRIB_VALUE,/^\'[^\']*(?:\'|$)/,null,"'"],[PR_ATTRIB_VALUE,/^"[^"]*(?:"|$)/,null,'"'],[PR_PUNCTUATION,/^[<>\/=]+/,null,'<>/=']],[[PR_TAG,/^[\w-]+/,/^</],[PR_ATTRIB_VALUE,/^[\w-]+/,/^=/],[PR_ATTRIB_NAME,/^[\w-]+/,null],[PR_PLAIN,/^\s+/,null,' \r\n']]);function PR_splitTagAttributes(source,decorations){for(var i=0;i<decorations.length;i+=2){var style=decorations[i+1];if(style===PR_TAG){var start=decorations[i];var end=i+2<decorations.length?decorations[i+2]:source.length;var chunk=source.substring(start,end);var subDecorations=PR_TAG_LEXER(chunk,start);PR_spliceArrayInto(subDecorations,decorations,i,2);i+=subDecorations.length-2;}}return decorations;}function PR_splitSourceNodes(source,decorations){for(var i=0;i<decorations.length;i+=2){var style=decorations[i+1];if(style==PR_SOURCE){var start=decorations[i];var end=i+2<decorations.length?decorations[i+2]:source.length;var subDecorations=PR_decorateSource(source.substring(start,end));for(var j=0,m=subDecorations.length;j<m;j+=2){subDecorations[j]+=start;}PR_spliceArrayInto(subDecorations,decorations,i,2);i+=subDecorations.length-2;}}return decorations;}function PR_splitSourceAttributes(source,decorations){var nextValueIsSource=false;for(var i=0;i<decorations.length;i+=2){var style=decorations[i+1];if(style===PR_ATTRIB_NAME){var start=decorations[i];var end=i+2<decorations.length?decorations[i+2]:source.length;nextValueIsSource=/^on|^style$/i.test(source.substring(start,end));}else if(style==PR_ATTRIB_VALUE){if(nextValueIsSource){var start=decorations[i];var end=i+2<decorations.length?decorations[i+2]:source.length;var attribValue=source.substring(start,end);var attribLen=attribValue.length;var quoted=(attribLen>=2&&/^["\']/.test(attribValue)&&attribValue.charAt(0)===attribValue.charAt(attribLen-1));var attribSource;var attribSourceStart;var attribSourceEnd;if(quoted){attribSourceStart=start+1;attribSourceEnd=end-1;attribSource=attribValue;}else{attribSourceStart=start+1;attribSourceEnd=end-1;attribSource=attribValue.substring(1,attribValue.length-1);}var attribSourceDecorations=PR_decorateSource(attribSource);for(var j=0,m=attribSourceDecorations.length;j<m;j+=2){attribSourceDecorations[j]+=attribSourceStart;}if(quoted){attribSourceDecorations.push(attribSourceEnd,PR_ATTRIB_VALUE);PR_spliceArrayInto(attribSourceDecorations,decorations,i+2,0);}else{PR_spliceArrayInto(attribSourceDecorations,decorations,i,2);}}nextValueIsSource=false;}}return decorations;}function PR_decorateSource(sourceCode){var decorations=PR_splitStringAndCommentTokens(sourceCode);decorations=PR_splitNonStringNonCommentTokens(sourceCode,decorations);return decorations;}function PR_decorateMarkup(sourceCode){var decorations=PR_tokenizeMarkup(sourceCode);decorations=PR_splitTagAttributes(sourceCode,decorations);decorations=PR_splitSourceNodes(sourceCode,decorations);decorations=PR_splitSourceAttributes(sourceCode,decorations);return decorations;}function PR_recombineTagsAndDecorations(sourceText,extractedTags,decorations){var html=[];var outputIdx=0;var openDecoration=null;var currentDecoration=null;var tagPos=0;var decPos=0;var tabExpander=PR_tabExpander(PR_TAB_WIDTH);function emitTextUpTo(sourceIdx){if(sourceIdx>outputIdx){if(openDecoration&&openDecoration!==currentDecoration){html.push('</span>');openDecoration=null;}if(!openDecoration&¤tDecoration){openDecoration=currentDecoration;html.push('<span class="',openDecoration,'">');}var htmlChunk=PR_textToHtml(tabExpander(sourceText.substring(outputIdx,sourceIdx))).replace(/(\r\n?|\n| ) /g,'$1 ').replace(/\r\n?|\n/g,' <br>');html.push(htmlChunk);outputIdx=sourceIdx;}}while(true){var outputTag;if(tagPos<extractedTags.length){if(decPos<decorations.length){outputTag=extractedTags[tagPos]<=decorations[decPos];}else{outputTag=true;}}else{outputTag=false;}if(outputTag){emitTextUpTo(extractedTags[tagPos]);if(openDecoration){html.push('</span>');openDecoration=null;}html.push(extractedTags[tagPos+1]);tagPos+=2;}else if(decPos<decorations.length){emitTextUpTo(decorations[decPos]);currentDecoration=decorations[decPos+1];decPos+=2;}else{break;}}emitTextUpTo(sourceText.length);if(openDecoration){html.push('</span>');}return html.join('');}function prettyPrintOne(sourceCodeHtml){try{var sourceAndExtractedTags=PR_extractTags(sourceCodeHtml);var source=sourceAndExtractedTags.source;var extractedTags=sourceAndExtractedTags.tags;var isMarkup=/^\s*</.test(source)&&/>\s*$/.test(source);var decorations=isMarkup?PR_decorateMarkup(source):PR_decorateSource(source);return PR_recombineTagsAndDecorations(source,extractedTags,decorations);}catch(e){if('console'in window){console.log(e);console.trace();}return sourceCodeHtml;}}var PR_SHOULD_USE_CONTINUATION=true;function prettyPrint(opt_whenDone){var codeSegments=[document.getElementsByTagName('pre'),document.getElementsByTagName('code'),document.getElementsByTagName('xmp')];var elements=[];for(var i=0;i<codeSegments.length;++i){for(var j=0;j<codeSegments[i].length;++j){elements.push(codeSegments[i][j]);}}codeSegments=null;var k=0;function doWork(){var endTime=(PR_SHOULD_USE_CONTINUATION?new Date().getTime()+250:Infinity);for(;k<elements.length&&new Date().getTime()<endTime;k++){var cs=elements[k];if(cs.className&&cs.className.indexOf('prettyprint')>=0){var nested=false;for(var p=cs.parentNode;p!=null;p=p.parentNode){if((p.tagName=='pre'||p.tagName=='code'||p.tagName=='xmp')&&p.className&&p.className.indexOf('prettyprint')>=0){nested=true;break;}}if(!nested){var content=PR_getInnerHtml(cs);content=content.replace(/(?:\r\n?|\n)$/,'');var newContent=prettyPrintOne(content);if(!PR_isRawContent(cs)){cs.innerHTML=newContent;}else{var pre=document.createElement('PRE');for(var i=0;i<cs.attributes.length;++i){var a=cs.attributes[i];if(a.specified){pre.setAttribute(a.name,a.value);}}pre.innerHTML=newContent;cs.parentNode.replaceChild(pre,cs);}}}}if(k<elements.length){setTimeout(doWork,250);}else if(opt_whenDone){opt_whenDone();}}doWork();}</script><script type='text/javascript'>prettyPrint();</script></BODY> | |
</HTML> |