blob: 5a79ff92d8a985b1323f2d3be2f262f3fcfe37ff [file] [log] [blame]
<!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:06 PKT 2011 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
Select (Click Framework API - v2.3.0)
</TITLE>
<META NAME="keywords" CONTENT="org.apache.click.control.Select class">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
parent.document.title="Select (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>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../org/apache/click/control/Reset.html" title="class in org.apache.click.control"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/click/control/Submit.html" title="class in org.apache.click.control"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?org/apache/click/control/Select.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="Select.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<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:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<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.control</FONT>
<BR>
Class Select</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 "><A HREF="../../../../org/apache/click/control/AbstractControl.html" title="class in org.apache.click.control">org.apache.click.control.AbstractControl</A>
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">org.apache.click.control.Field</A>
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.click.control.Select</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B> <DD><A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/io/Serializable.html" title="class or interface in java.io">Serializable</A>, <A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A>, <A HREF="../../../../org/apache/click/Stateful.html" title="interface in org.apache.click">Stateful</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <B>Select</B><DT>extends <A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A></DL>
</PRE>
<P>
Provides a Select control: &nbsp; &lt;select&gt;&lt;/select&gt;.
<table class='htmlHeader' cellspacing='6'>
<tr>
<td>Select</td>
<td>
<select title='Select Control'>
<option value='Option 1'>Option 1</option>
<option value='Option 2'>Option 2</option>
<option value='Option 3'>Option 3</option>
</select>
</td>
</tr>
</table>
The Control listener will be invoked if the Select is valid and an item(s) is
selected by the user.
<h3>Select Examples</h3>
<h4><a name="single-select-example"></a>Single Item Select</h4>
A single item Select, will only allow users to select one item from the list.
By default the Select <A HREF="../../../../org/apache/click/control/Select.html#multiple"><CODE>multiple</CODE></A> item property is false.
<p/>
If a Select is required, an item after the first in the list must be selected
for the Field to be valid. This forces the user to make an active selection.
An example of a single item Select is provided below along with the
rendered HTML.
<pre class="prettyprint">
public class GenderPage extends Page {
public Form form = new Form();
private Select genderSelect = new Select("Gender");
public GenderPage() {
genderSelect.setRequired(true);
genderSelect.add(new Option("U", "");
genderSelect.add(new Option("M", "Male"));
genderSelect.add(new Option("F", "Female"));
form.add(genderSelect);
form.add(new Submit("ok", " OK "));
}
public void onPost() {
if (form.isValid()) {
String gender = genderSelect.getValue();
..
}
}
} </pre>
Rendered HTML:
<table class="htmlExample"><tr><td>
<table class='form'><tr>
<td align='left'><label >Gender</label><font color="red">*</font></td>
<td align='left'><select name='gender'size='1'><option value='U'></option><option value='M'>Male</option><option value='F'>Female</option></select></td>
</tr>
<tr><td colspan='2'>&nbsp;</td></tr>
<tr align='left'><td colspan='2'>
<input type='submit' value=' OK '/>
</td></tr>
</table>
</td></tr>
</table>
Note how <A HREF="../../../../org/apache/click/control/Option.html" title="class in org.apache.click.control"><CODE>Option</CODE></A> items are added to the Select. In this
example the "U" option will not be a valid selection, as it is the first
item in the option list.
<h4><a name="multiple-select-example"></a>Multiple Item Select</h4>
A multiple item Select, will allow users to select multiple items from the list.
By default the Select <A HREF="../../../../org/apache/click/control/Select.html#multiple"><CODE>multiple</CODE></A> item property is false, and must be
enabled for multiple item selects.
<p/>
If multiple item Select is required, the user must select an item(s) in
the list for the Field to be valid. A valid selection can include any item
including the first item.
<p/>
An example of a single item Select is provided below along with the
rendered HTML.
<pre class="prettyprint">
public class LocationPage extends Page {
public Form form = new Form();
private Select locationSelect = new Select("location");
public LocationPage() {
locationSelect.setMutliple(true);
locationSelect.setRequired(true);
locationSelect.setSize(7);
locationSelect.add("QLD");
locationSelect.add("NSW");
locationSelect.add("NT");
locationSelect.add("SA");
locationSelect.add("TAS");
locationSelect.add("VIC");
locationSelect.add("WA");
form.add(locationSelect);
form.add(new Submit("ok", " OK "));
}
public void onPost() {
if (form.isValid()) {
String location = locationSelect.getValue();
..
}
}
} </pre>
Rendered HTML:
<table class="htmlExample"><tr><td>
<table class='form'>
<tr>
<td align='left'><label >Location</label><font color="red">*</font></td>
<td align='left'><select name='location'size='7' multiple ><option value='QLD'>QLD</option><option value='NSW'>NSW</option><option value='NT'>NT</option><option value='SA'>SA</option><option value='TAS'>TAS</option><option value='VIC'>VIC</option><option value='WA'>WA</option></select></td>
</tr>
<tr><td colspan='2'>&nbsp;</td></tr>
<tr align='left'><td colspan='2'><input type='submit' value=' OK '/></td></tr>
</table>
</td></tr>
</table>
Note in this example the <A HREF="../../../../org/apache/click/control/Select.html#add(java.lang.String)"><CODE>add(String)</CODE></A> method is used to add an Option
item to the Select.
<h3><a name="required-behaviour"></a>Required Behaviour</h3>
When a Select control's required property is set to true, then the user has
to select a value other than the first value in the option list. The first
value represents a non-selection by the user. In the example below an
Empty Option is set as the first value in the option list.
<pre class="prettyprint">
public MyPage extends Page {
..
private Select mySelect;
public MyPage() {
mySelect = new Select("mySelect");
mySelect.setRequired(true);
..
}
public void onInit() {
mySelect.add(Option.EMPTY_OPTION);
List&lt;Customer&gt; customerList = customerDao.getCustomerList();
mySelect.addAll(customerList, "id", "name");
}
..
} </pre>
Unless you use a <a href="#dataprovider">DataProvider</a>, remember to always
populate the Select option list before it is processed. Do not populate the
option list in a Page's onRender() method.
<h3><a name="readonly-behaviour"></a>Readonly Behaviour</h3>
Note the &lt;select&gt; HTML element does not support the "readonly" attribute.
To provide readonly style behaviour, the Select control will render the
"disabled" attribute when it is readonly to give the appearance of a
readonly field, and will render a hidden field of the same name so that its
value will be submitted with the form.
<h3><a name="dataprovider"></a>DataProvider</h3>
A common issue new Click users face is which page event (onInit or onRender)
to populate the Select <A HREF="../../../../org/apache/click/control/Select.html#getOptionList()"><CODE>optionList</CODE></A> in. To alleviate
this problem you can set a
<A HREF="../../../../org/apache/click/control/Select.html#setDataProvider(org.apache.click.dataprovider.DataProvider)"><CODE>dataProvider</CODE></A>
which allows the Select to fetch data when needed. This is
particularly useful if retrieveing Select data is expensive e.g. loading
from a database.
<p/>
Below is a simple example:
<pre class="prettyprint">
public class GenderPage extends Page {
public Form form = new Form();
private Select genderSelect = new Select("Gender");
public GenderPage() {
// Set the Select default "non-selection" option
genderSelect.setDefaultOption(new Option("U", "");
// Set a DataProvider which "getData" method will be called to populate the
// optionList. The "getData" method is only called when the optionList
// data is needed
genderSelect.setDataProvider(new DataProvider() {
public List getData() {
List options = new ArrayList();
options.add(new Option("M", "Male"));
options.add(new Option("F", "Female"));
return options;
}
});
form.add(genderSelect);
form.add(new Submit("ok", " OK "));
}
public void onPost() {
if (form.isValid()) {
String gender = genderSelect.getValue();
..
}
}
} </pre>
<h3><a name="default-value"></a>Specify the default selected value</h3>
If you need to set the selected value to something other than the first
option, set the Select <A HREF="../../../../org/apache/click/control/Field.html#setValue(java.lang.String)"><CODE>value</CODE></A> to the
option value you want to select:
<pre class="prettyprint">
public MyPage extends Page {
private Select mySelect;
public MyPage() {
mySelect = new Select("mySelect");
mySelect.add("YES");
mySelect.add("NO");
// If you want NO to be selected by default, set the value to "NO"
mySelect.setValue("NO");
}
} </pre>
See also the W3C HTML reference:
<a class="external" target="_blank" title="W3C HTML 4.01 Specification"
href="http://www.w3.org/TR/html401/interact/forms.html#h-17.6">SELECT</a>
<P>
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/click/control/Option.html" title="class in org.apache.click.control"><CODE>Option</CODE></A>,
<A HREF="../../../../org/apache/click/control/OptionGroup.html" title="class in org.apache.click.control"><CODE>OptionGroup</CODE></A>,
<A HREF="../../../../serialized-form.html#org.apache.click.control.Select">Serialized Form</A></DL>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_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>Field Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="../../../../org/apache/click/dataprovider/DataProvider.html" title="interface in org.apache.click.dataprovider">DataProvider</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#dataProvider">dataProvider</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The select data provider.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<A HREF="../../../../org/apache/click/control/Option.html" title="class in org.apache.click.control">Option</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#defaultOption">defaultOption</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The default option will be the first option added to the Select.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#multiple">multiple</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The multiple options selectable flag.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#optionList">optionList</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The Select Option/OptionGroup list.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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>&lt;<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>&gt;</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#selectedValues">selectedValues</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The multiple selected values.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#size">size</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The Select display size in rows.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected static&nbsp;<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></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#VALIDATE_SELECT_FUNCTION">VALIDATE_SELECT_FUNCTION</A></B></CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;The field validation JavaScript function template.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.click.control.Field"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class org.apache.click.control.<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/click/control/Field.html#disabled">disabled</A>, <A HREF="../../../../org/apache/click/control/Field.html#error">error</A>, <A HREF="../../../../org/apache/click/control/Field.html#focus">focus</A>, <A HREF="../../../../org/apache/click/control/Field.html#form">form</A>, <A HREF="../../../../org/apache/click/control/Field.html#help">help</A>, <A HREF="../../../../org/apache/click/control/Field.html#label">label</A>, <A HREF="../../../../org/apache/click/control/Field.html#labelStyle">labelStyle</A>, <A HREF="../../../../org/apache/click/control/Field.html#labelStyleClass">labelStyleClass</A>, <A HREF="../../../../org/apache/click/control/Field.html#parentStyleClassHint">parentStyleClassHint</A>, <A HREF="../../../../org/apache/click/control/Field.html#parentStyleHint">parentStyleHint</A>, <A HREF="../../../../org/apache/click/control/Field.html#readonly">readonly</A>, <A HREF="../../../../org/apache/click/control/Field.html#required">required</A>, <A HREF="../../../../org/apache/click/control/Field.html#tabindex">tabindex</A>, <A HREF="../../../../org/apache/click/control/Field.html#title">title</A>, <A HREF="../../../../org/apache/click/control/Field.html#trim">trim</A>, <A HREF="../../../../org/apache/click/control/Field.html#validate">validate</A>, <A HREF="../../../../org/apache/click/control/Field.html#value">value</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.click.control.AbstractControl"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class org.apache.click.control.<A HREF="../../../../org/apache/click/control/AbstractControl.html" title="class in org.apache.click.control">AbstractControl</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/click/control/AbstractControl.html#actionListener">actionListener</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#attributes">attributes</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#behaviors">behaviors</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#headElements">headElements</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#listener">listener</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#listenerMethod">listenerMethod</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#messages">messages</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#name">name</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#parent">parent</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#styles">styles</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.click.Control"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from interface org.apache.click.<A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/click/Control.html#CONTROL_MESSAGES">CONTROL_MESSAGES</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== 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/control/Select.html#Select()">Select</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a Select field with no name defined.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#Select(java.lang.String)">Select</A></B>(<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>&nbsp;name)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a Select field with the given name.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#Select(java.lang.String, boolean)">Select</A></B>(<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>&nbsp;name,
boolean&nbsp;required)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a Select field with the given name and required status.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#Select(java.lang.String, java.lang.String)">Select</A></B>(<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>&nbsp;name,
<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>&nbsp;label)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a Select field with the given name and label.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#Select(java.lang.String, java.lang.String, boolean)">Select</A></B>(<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>&nbsp;name,
<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>&nbsp;label,
boolean&nbsp;required)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Create a Select field with the given name, label and required status.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== 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>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#add(java.lang.Object)">add</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>&nbsp;option)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add the given Option/OptionGroup/String/Number/Boolean to the Select.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#add(org.apache.click.control.Option)">add</A></B>(<A HREF="../../../../org/apache/click/control/Option.html" title="class in org.apache.click.control">Option</A>&nbsp;option)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add the given Option to the Select.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#add(org.apache.click.control.OptionGroup)">add</A></B>(<A HREF="../../../../org/apache/click/control/OptionGroup.html" title="class in org.apache.click.control">OptionGroup</A>&nbsp;optionGroup)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add the given OptionGroup to the Select.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#add(java.lang.String)">add</A></B>(<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>&nbsp;value)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add the given option value to the Select.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#addAll(java.util.Collection)">addAll</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Collection.html" title="class or interface in java.util">Collection</A>&lt;?&gt;&nbsp;options)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add the given Option/OptionGroup/String/Number/Boolean collection to the
Select.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#addAll(java.util.Collection, java.lang.String, java.lang.String)">addAll</A></B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Collection.html" title="class or interface in java.util">Collection</A>&nbsp;objects,
<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>&nbsp;optionValueProperty,
<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>&nbsp;optionLabelProperty)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add the given collection of objects to the Select, creating new Option
instances based on the object properties specified by optionValueProperty
and optionLabelProperty.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#addAll(java.util.Map)">addAll</A></B>(<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>&nbsp;options)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add the given Map of option values and labels to the Select.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#addAll(java.lang.String[])">addAll</A></B>(<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>[]&nbsp;options)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Add the given array of string options to the Select option list.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#bindRequestValue()">bindRequestValue</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Bind the request submission, setting the <A HREF="../../../../org/apache/click/control/Field.html#value"><CODE>Field.value</CODE></A> or
<A HREF="../../../../org/apache/click/control/Select.html#selectedValues"><CODE>selectedValues</CODE></A> property if defined in the request.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#getControlSizeEst()">getControlSizeEst</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the estimated rendered control size in characters.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/click/dataprovider/DataProvider.html" title="interface in org.apache.click.dataprovider">DataProvider</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#getDataProvider()">getDataProvider</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the select option list DataProvider.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../org/apache/click/control/Option.html" title="class in org.apache.click.control">Option</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#getDefaultOption()">getDefaultOption</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the Select default option or null if no default option is set.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;<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></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#getDefaultOptionValue()">getDefaultOptionValue</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the Select <A HREF="../../../../org/apache/click/control/Select.html#getDefaultOption()"><CODE>defaultOption</CODE></A> value, or
null if no defaultOption is set.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<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></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#getMultipleValues()">getMultipleValues</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>Deprecated.</B>&nbsp;<I>use <A HREF="../../../../org/apache/click/control/Select.html#getSelectedValues()"><CODE>getSelectedValues()</CODE></A> instead, this method will
be removed in subsequent releases</I></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<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></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#getOptionList()">getOptionList</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the Option list.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<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></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#getSelectedValues()">getSelectedValues</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the list of selected values.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;int</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#getSize()">getSize</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the number of Select display rows.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<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></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#getState()">getState</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the Select state.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<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></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#getTag()">getTag</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the select's html tag: <tt>select</tt>.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<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></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#getValidationJavaScript()">getValidationJavaScript</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return the Select JavaScript client side validation function.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#isMultiple()">isMultiple</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Return true if multiple options can be selected.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#onRender()">onRender</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;This method invokes <A HREF="../../../../org/apache/click/control/Select.html#getOptionList()"><CODE>getOptionList()</CODE></A> to ensure exceptions thrown
while retrieving options will be handled by the error page.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#render(org.apache.click.util.HtmlStringBuffer)">render</A></B>(<A HREF="../../../../org/apache/click/util/HtmlStringBuffer.html" title="class in org.apache.click.util">HtmlStringBuffer</A>&nbsp;buffer)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Render the HTML representation of the Select.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#setDataProvider(org.apache.click.dataprovider.DataProvider)">setDataProvider</A></B>(<A HREF="../../../../org/apache/click/dataprovider/DataProvider.html" title="interface in org.apache.click.dataprovider">DataProvider</A>&nbsp;dataProvider)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the select option list DataProvider.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#setDefaultOption(org.apache.click.control.Option)">setDefaultOption</A></B>(<A HREF="../../../../org/apache/click/control/Option.html" title="class in org.apache.click.control">Option</A>&nbsp;option)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the Select default option.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>protected &nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#setInitialValue()">setInitialValue</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the initial select option value.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#setMultiple(boolean)">setMultiple</A></B>(boolean&nbsp;value)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the multiple options can be selected flag.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#setMultipleValues(java.util.List)">setMultipleValues</A></B>(<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>&lt;<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>&gt;&nbsp;multipleValues)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<B>Deprecated.</B>&nbsp;<I>use <A HREF="../../../../org/apache/click/control/Select.html#getSelectedValues()"><CODE>getSelectedValues()</CODE></A> instead, this method will
be removed in subsequent releases</I></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#setOptionList(java.util.List)">setOptionList</A></B>(<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>&nbsp;options)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the Option list.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#setSelectedValues(java.util.List)">setSelectedValues</A></B>(<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>&lt;<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>&gt;&nbsp;multipleValues)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the list of selected values.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#setSize(int)">setSize</A></B>(int&nbsp;rows)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the number of the Select display rows.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#setState(java.lang.Object)">setState</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>&nbsp;state)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the Select state.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../org/apache/click/control/Select.html#validate()">validate</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Validate the Select request submission.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.click.control.Field"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.click.control.<A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/click/control/Field.html#getError()">getError</A>, <A HREF="../../../../org/apache/click/control/Field.html#getErrorLabel()">getErrorLabel</A>, <A HREF="../../../../org/apache/click/control/Field.html#getFocus()">getFocus</A>, <A HREF="../../../../org/apache/click/control/Field.html#getFocusJavaScript()">getFocusJavaScript</A>, <A HREF="../../../../org/apache/click/control/Field.html#getForm()">getForm</A>, <A HREF="../../../../org/apache/click/control/Field.html#getHelp()">getHelp</A>, <A HREF="../../../../org/apache/click/control/Field.html#getId()">getId</A>, <A HREF="../../../../org/apache/click/control/Field.html#getLabel()">getLabel</A>, <A HREF="../../../../org/apache/click/control/Field.html#getLabelStyle()">getLabelStyle</A>, <A HREF="../../../../org/apache/click/control/Field.html#getLabelStyleClass()">getLabelStyleClass</A>, <A HREF="../../../../org/apache/click/control/Field.html#getParentStyleClassHint()">getParentStyleClassHint</A>, <A HREF="../../../../org/apache/click/control/Field.html#getParentStyleHint()">getParentStyleHint</A>, <A HREF="../../../../org/apache/click/control/Field.html#getRequestValue()">getRequestValue</A>, <A HREF="../../../../org/apache/click/control/Field.html#getTabIndex()">getTabIndex</A>, <A HREF="../../../../org/apache/click/control/Field.html#getTextAlign()">getTextAlign</A>, <A HREF="../../../../org/apache/click/control/Field.html#getTitle()">getTitle</A>, <A HREF="../../../../org/apache/click/control/Field.html#getValidate()">getValidate</A>, <A HREF="../../../../org/apache/click/control/Field.html#getValue()">getValue</A>, <A HREF="../../../../org/apache/click/control/Field.html#getValueObject()">getValueObject</A>, <A HREF="../../../../org/apache/click/control/Field.html#getWidth()">getWidth</A>, <A HREF="../../../../org/apache/click/control/Field.html#isDisabled()">isDisabled</A>, <A HREF="../../../../org/apache/click/control/Field.html#isHidden()">isHidden</A>, <A HREF="../../../../org/apache/click/control/Field.html#isReadonly()">isReadonly</A>, <A HREF="../../../../org/apache/click/control/Field.html#isRequired()">isRequired</A>, <A HREF="../../../../org/apache/click/control/Field.html#isTrim()">isTrim</A>, <A HREF="../../../../org/apache/click/control/Field.html#isValid()">isValid</A>, <A HREF="../../../../org/apache/click/control/Field.html#onProcess()">onProcess</A>, <A HREF="../../../../org/apache/click/control/Field.html#removeState(org.apache.click.Context)">removeState</A>, <A HREF="../../../../org/apache/click/control/Field.html#renderTagBegin(java.lang.String, org.apache.click.util.HtmlStringBuffer)">renderTagBegin</A>, <A HREF="../../../../org/apache/click/control/Field.html#restoreState(org.apache.click.Context)">restoreState</A>, <A HREF="../../../../org/apache/click/control/Field.html#saveState(org.apache.click.Context)">saveState</A>, <A HREF="../../../../org/apache/click/control/Field.html#setDisabled(boolean)">setDisabled</A>, <A HREF="../../../../org/apache/click/control/Field.html#setError(java.lang.String)">setError</A>, <A HREF="../../../../org/apache/click/control/Field.html#setErrorMessage(java.lang.String)">setErrorMessage</A>, <A HREF="../../../../org/apache/click/control/Field.html#setErrorMessage(java.lang.String, T)">setErrorMessage</A>, <A HREF="../../../../org/apache/click/control/Field.html#setFocus(boolean)">setFocus</A>, <A HREF="../../../../org/apache/click/control/Field.html#setForm(org.apache.click.control.Form)">setForm</A>, <A HREF="../../../../org/apache/click/control/Field.html#setHelp(java.lang.String)">setHelp</A>, <A HREF="../../../../org/apache/click/control/Field.html#setLabel(java.lang.String)">setLabel</A>, <A HREF="../../../../org/apache/click/control/Field.html#setLabelStyle(java.lang.String)">setLabelStyle</A>, <A HREF="../../../../org/apache/click/control/Field.html#setLabelStyleClass(java.lang.String)">setLabelStyleClass</A>, <A HREF="../../../../org/apache/click/control/Field.html#setListener(java.lang.Object, java.lang.String)">setListener</A>, <A HREF="../../../../org/apache/click/control/Field.html#setParent(java.lang.Object)">setParent</A>, <A HREF="../../../../org/apache/click/control/Field.html#setParentStyleClassHint(java.lang.String)">setParentStyleClassHint</A>, <A HREF="../../../../org/apache/click/control/Field.html#setParentStyleHint(java.lang.String)">setParentStyleHint</A>, <A HREF="../../../../org/apache/click/control/Field.html#setReadonly(boolean)">setReadonly</A>, <A HREF="../../../../org/apache/click/control/Field.html#setRequired(boolean)">setRequired</A>, <A HREF="../../../../org/apache/click/control/Field.html#setTabIndex(int)">setTabIndex</A>, <A HREF="../../../../org/apache/click/control/Field.html#setTextAlign(java.lang.String)">setTextAlign</A>, <A HREF="../../../../org/apache/click/control/Field.html#setTitle(java.lang.String)">setTitle</A>, <A HREF="../../../../org/apache/click/control/Field.html#setTrim(boolean)">setTrim</A>, <A HREF="../../../../org/apache/click/control/Field.html#setValidate(boolean)">setValidate</A>, <A HREF="../../../../org/apache/click/control/Field.html#setValue(java.lang.String)">setValue</A>, <A HREF="../../../../org/apache/click/control/Field.html#setValueObject(java.lang.Object)">setValueObject</A>, <A HREF="../../../../org/apache/click/control/Field.html#setWidth(java.lang.String)">setWidth</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.click.control.AbstractControl"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.click.control.<A HREF="../../../../org/apache/click/control/AbstractControl.html" title="class in org.apache.click.control">AbstractControl</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../org/apache/click/control/AbstractControl.html#addBehavior(org.apache.click.Behavior)">addBehavior</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#addStyleClass(java.lang.String)">addStyleClass</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#appendAttributes(org.apache.click.util.HtmlStringBuffer)">appendAttributes</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#dispatchActionEvent()">dispatchActionEvent</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#getActionListener()">getActionListener</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#getAttribute(java.lang.String)">getAttribute</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#getAttributes()">getAttributes</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#getBehaviors()">getBehaviors</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#getContext()">getContext</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#getHeadElements()">getHeadElements</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#getHtmlImports()">getHtmlImports</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#getMessage(java.lang.String)">getMessage</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#getMessage(java.lang.String, java.lang.Object...)">getMessage</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#getMessages()">getMessages</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#getName()">getName</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#getPage()">getPage</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#getParent()">getParent</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#getStyle(java.lang.String)">getStyle</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#getStyles()">getStyles</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#hasAttribute(java.lang.String)">hasAttribute</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#hasAttributes()">hasAttributes</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#hasBehaviors()">hasBehaviors</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#hasStyles()">hasStyles</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#isAjaxTarget(org.apache.click.Context)">isAjaxTarget</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#onDeploy(javax.servlet.ServletContext)">onDeploy</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#onDestroy()">onDestroy</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#onInit()">onInit</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#removeBehavior(org.apache.click.Behavior)">removeBehavior</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#removeStyleClass(java.lang.String)">removeStyleClass</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#renderTagEnd(java.lang.String, org.apache.click.util.HtmlStringBuffer)">renderTagEnd</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#setActionListener(org.apache.click.ActionListener)">setActionListener</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#setAttribute(java.lang.String, java.lang.String)">setAttribute</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#setId(java.lang.String)">setId</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#setName(java.lang.String)">setName</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#setStyle(java.lang.String, java.lang.String)">setStyle</A>, <A HREF="../../../../org/apache/click/control/AbstractControl.html#toString()">toString</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<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#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>
&nbsp;
<P>
<!-- ============ FIELD DETAIL =========== -->
<A NAME="field_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>Field Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="VALIDATE_SELECT_FUNCTION"><!-- --></A><H3>
VALIDATE_SELECT_FUNCTION</H3>
<PRE>
protected static final <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> <B>VALIDATE_SELECT_FUNCTION</B></PRE>
<DL>
<DD>The field validation JavaScript function template.
The function template arguments are: <ul>
<li>0 - is the field id</li>
<li>1 - is the Field required status</li>
<li>2 - is the localized error message</li>
<li>3 - is the default Select option value</li>
</ul>
<P>
<DL>
<DT><B>See Also:</B><DD><A HREF="../../../../constant-values.html#org.apache.click.control.Select.VALIDATE_SELECT_FUNCTION">Constant Field Values</A></DL>
</DL>
<HR>
<A NAME="multiple"><!-- --></A><H3>
multiple</H3>
<PRE>
protected boolean <B>multiple</B></PRE>
<DL>
<DD>The multiple options selectable flag. The default value is false.
<P>
<DL>
</DL>
</DL>
<HR>
<A NAME="optionList"><!-- --></A><H3>
optionList</H3>
<PRE>
protected <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> <B>optionList</B></PRE>
<DL>
<DD>The Select Option/OptionGroup list.
<P>
<DL>
</DL>
</DL>
<HR>
<A NAME="size"><!-- --></A><H3>
size</H3>
<PRE>
protected int <B>size</B></PRE>
<DL>
<DD>The Select display size in rows. The default size is one.
<P>
<DL>
</DL>
</DL>
<HR>
<A NAME="selectedValues"><!-- --></A><H3>
selectedValues</H3>
<PRE>
protected <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>&lt;<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>&gt; <B>selectedValues</B></PRE>
<DL>
<DD>The multiple selected values. This list will only be populated if
<A HREF="../../../../org/apache/click/control/Select.html#multiple"><CODE>multiple</CODE></A> is true.
<P>
<DL>
</DL>
</DL>
<HR>
<A NAME="dataProvider"><!-- --></A><H3>
dataProvider</H3>
<PRE>
protected <A HREF="../../../../org/apache/click/dataprovider/DataProvider.html" title="interface in org.apache.click.dataprovider">DataProvider</A> <B>dataProvider</B></PRE>
<DL>
<DD>The select data provider.
<P>
<DL>
</DL>
</DL>
<HR>
<A NAME="defaultOption"><!-- --></A><H3>
defaultOption</H3>
<PRE>
protected <A HREF="../../../../org/apache/click/control/Option.html" title="class in org.apache.click.control">Option</A> <B>defaultOption</B></PRE>
<DL>
<DD>The default option will be the first option added to the Select.
This property is often used when populating the Select from a
<A HREF="../../../../org/apache/click/control/Select.html#setDataProvider(org.apache.click.dataprovider.DataProvider)"><CODE>setDataProvider(org.apache.click.dataprovider.DataProvider)</CODE></A>, where
the DataProvider does not return a sensible default option e.g. an
empty ("") option.
<P>
<DL>
</DL>
</DL>
<!-- ========= 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="Select(java.lang.String)"><!-- --></A><H3>
Select</H3>
<PRE>
public <B>Select</B>(<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>&nbsp;name)</PRE>
<DL>
<DD>Create a Select field with the given name.
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - the name of the field</DL>
</DL>
<HR>
<A NAME="Select(java.lang.String, java.lang.String)"><!-- --></A><H3>
Select</H3>
<PRE>
public <B>Select</B>(<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>&nbsp;name,
<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>&nbsp;label)</PRE>
<DL>
<DD>Create a Select field with the given name and label.
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - the name of the field<DD><CODE>label</CODE> - the label of the field</DL>
</DL>
<HR>
<A NAME="Select(java.lang.String, boolean)"><!-- --></A><H3>
Select</H3>
<PRE>
public <B>Select</B>(<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>&nbsp;name,
boolean&nbsp;required)</PRE>
<DL>
<DD>Create a Select field with the given name and required status.
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - the name of the field<DD><CODE>required</CODE> - the field required status</DL>
</DL>
<HR>
<A NAME="Select(java.lang.String, java.lang.String, boolean)"><!-- --></A><H3>
Select</H3>
<PRE>
public <B>Select</B>(<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>&nbsp;name,
<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>&nbsp;label,
boolean&nbsp;required)</PRE>
<DL>
<DD>Create a Select field with the given name, label and required status.
<P>
<DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - the name of the field<DD><CODE>label</CODE> - the label of the field<DD><CODE>required</CODE> - the field required status</DL>
</DL>
<HR>
<A NAME="Select()"><!-- --></A><H3>
Select</H3>
<PRE>
public <B>Select</B>()</PRE>
<DL>
<DD>Create a Select field with no name defined.
<p/>
<b>Please note</b> the control's name must be defined before it is valid.
<P>
</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="getTag()"><!-- --></A><H3>
getTag</H3>
<PRE>
public <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> <B>getTag</B>()</PRE>
<DL>
<DD>Return the select's html tag: <tt>select</tt>.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/apache/click/control/AbstractControl.html#getTag()">getTag</A></CODE> in class <CODE><A HREF="../../../../org/apache/click/control/AbstractControl.html" title="class in org.apache.click.control">AbstractControl</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>this controls html tag<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/click/control/AbstractControl.html#getTag()"><CODE>AbstractControl.getTag()</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="add(org.apache.click.control.Option)"><!-- --></A><H3>
add</H3>
<PRE>
public void <B>add</B>(<A HREF="../../../../org/apache/click/control/Option.html" title="class in org.apache.click.control">Option</A>&nbsp;option)</PRE>
<DL>
<DD>Add the given Option to the Select.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>option</CODE> - the Option value to add
<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 option is null</DL>
</DD>
</DL>
<HR>
<A NAME="add(org.apache.click.control.OptionGroup)"><!-- --></A><H3>
add</H3>
<PRE>
public void <B>add</B>(<A HREF="../../../../org/apache/click/control/OptionGroup.html" title="class in org.apache.click.control">OptionGroup</A>&nbsp;optionGroup)</PRE>
<DL>
<DD>Add the given OptionGroup to the Select.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>optionGroup</CODE> - the OptionGroup value to add
<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 optionGroup is null</DL>
</DD>
</DL>
<HR>
<A NAME="add(java.lang.String)"><!-- --></A><H3>
add</H3>
<PRE>
public void <B>add</B>(<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>&nbsp;value)</PRE>
<DL>
<DD>Add the given option value to the Select. This convenience method will
create a new <A HREF="../../../../org/apache/click/control/Option.html" title="class in org.apache.click.control"><CODE>Option</CODE></A> with the given value and add it to the
Select. The new Option display label will be the same as its value.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - the option value to add
<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 value is null</DL>
</DD>
</DL>
<HR>
<A NAME="add(java.lang.Object)"><!-- --></A><H3>
add</H3>
<PRE>
public void <B>add</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>&nbsp;option)</PRE>
<DL>
<DD>Add the given Option/OptionGroup/String/Number/Boolean to the Select.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>option</CODE> - one of either Option/OptionGroup/String/Number/Boolean
to add
<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 option is null, or the option
is an unsupported class</DL>
</DD>
</DL>
<HR>
<A NAME="addAll(java.util.Collection)"><!-- --></A><H3>
addAll</H3>
<PRE>
public void <B>addAll</B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Collection.html" title="class or interface in java.util">Collection</A>&lt;?&gt;&nbsp;options)</PRE>
<DL>
<DD>Add the given Option/OptionGroup/String/Number/Boolean collection to the
Select.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>options</CODE> - the collection of Option/OptionGroup/String/Number/Boolean
objects to add
<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 options is null, or the collection
contains an unsupported class</DL>
</DD>
</DL>
<HR>
<A NAME="addAll(java.util.Map)"><!-- --></A><H3>
addAll</H3>
<PRE>
public void <B>addAll</B>(<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>&nbsp;options)</PRE>
<DL>
<DD>Add the given Map of option values and labels to the Select.
The Map entry key will be used as the option value and the Map entry
value will be used as the option label.
<p/>
It is recommended that <tt>LinkedHashMap</tt> is used as the Map
parameter to maintain the order of the option vales.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>options</CODE> - the Map of option values and labels to add
<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 options is null</DL>
</DD>
</DL>
<HR>
<A NAME="addAll(java.lang.String[])"><!-- --></A><H3>
addAll</H3>
<PRE>
public void <B>addAll</B>(<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>[]&nbsp;options)</PRE>
<DL>
<DD>Add the given array of string options to the Select option list.
<p/>
The options array string value will be used for the <A HREF="../../../../org/apache/click/control/Option.html#value"><CODE>Option.value</CODE></A>
and <A HREF="../../../../org/apache/click/control/Option.html#label"><CODE>Option.label</CODE></A>.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>options</CODE> - the array of option values to add
<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 options is null</DL>
</DD>
</DL>
<HR>
<A NAME="addAll(java.util.Collection, java.lang.String, java.lang.String)"><!-- --></A><H3>
addAll</H3>
<PRE>
public void <B>addAll</B>(<A HREF="http://java.sun.com/j2se/1.5.0/docs/api/java/util/Collection.html" title="class or interface in java.util">Collection</A>&nbsp;objects,
<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>&nbsp;optionValueProperty,
<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>&nbsp;optionLabelProperty)</PRE>
<DL>
<DD>Add the given collection of objects to the Select, creating new Option
instances based on the object properties specified by optionValueProperty
and optionLabelProperty. If the optionLabelProperty is null, the
optionValueProperty will be used as both the value and label of the
options.
<p/>
The collection objects can either be POJOs (plain old java objects) or
<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> instances.
<p/>
Example usage:
<pre class="prettyprint">
Select select = new Select("type", "Type:");
select.addAll(getCustomerService().getCustomerTypes(), "id", "name");
form.add(select); </pre>
This method will iterate over all customerTypes and for each customerType
create a new Option, setting the option value to the customerType
<tt>"id"</tt>, and the option label to the customerType <tt>"name"</tt>.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>objects</CODE> - the collection of objects to render as options<DD><CODE>optionValueProperty</CODE> - the name of the object property to render as
the Option value<DD><CODE>optionLabelProperty</CODE> - the name of the object property to render as
the Option label
<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 objects or optionValueProperty
parameter is null</DL>
</DD>
</DL>
<HR>
<A NAME="getDataProvider()"><!-- --></A><H3>
getDataProvider</H3>
<PRE>
public <A HREF="../../../../org/apache/click/dataprovider/DataProvider.html" title="interface in org.apache.click.dataprovider">DataProvider</A> <B>getDataProvider</B>()</PRE>
<DL>
<DD>Return the select option list DataProvider.
<P>
<DD><DL>
<DT><B>Returns:</B><DD>the select option list DataProvider</DL>
</DD>
</DL>
<HR>
<A NAME="setDataProvider(org.apache.click.dataprovider.DataProvider)"><!-- --></A><H3>
setDataProvider</H3>
<PRE>
public void <B>setDataProvider</B>(<A HREF="../../../../org/apache/click/dataprovider/DataProvider.html" title="interface in org.apache.click.dataprovider">DataProvider</A>&nbsp;dataProvider)</PRE>
<DL>
<DD>Set the select option list DataProvider. The dataProvider can return any
mixture of Option and OptionGroup values.
<p/>
Example usage:
<pre class="prettyprint">
Select select = new Select("name", "Name");
// Set the Select default "non-selection" option
select.setDefaultOption(new Option("U", ""));
select.setDataProvider(new DataProvider() {
public List getData() {
List options = new ArrayList();
options.add(new Option("M", "Male"));
options.add(new Option("F", "Female"));
return options;
}
}); </pre>
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>dataProvider</CODE> - the select option list DataProvider</DL>
</DD>
</DL>
<HR>
<A NAME="getSize()"><!-- --></A><H3>
getSize</H3>
<PRE>
public int <B>getSize</B>()</PRE>
<DL>
<DD>Return the number of Select display rows.
<P>
<DD><DL>
<DT><B>Returns:</B><DD>the number of Select display rows</DL>
</DD>
</DL>
<HR>
<A NAME="setSize(int)"><!-- --></A><H3>
setSize</H3>
<PRE>
public void <B>setSize</B>(int&nbsp;rows)</PRE>
<DL>
<DD>Set the number of the Select display rows.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>rows</CODE> - the Select display size in rows.</DL>
</DD>
</DL>
<HR>
<A NAME="isMultiple()"><!-- --></A><H3>
isMultiple</H3>
<PRE>
public boolean <B>isMultiple</B>()</PRE>
<DL>
<DD>Return true if multiple options can be selected.
<P>
<DD><DL>
<DT><B>Returns:</B><DD>true if multiple options can be selected</DL>
</DD>
</DL>
<HR>
<A NAME="setMultiple(boolean)"><!-- --></A><H3>
setMultiple</H3>
<PRE>
public void <B>setMultiple</B>(boolean&nbsp;value)</PRE>
<DL>
<DD>Set the multiple options can be selected flag.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>value</CODE> - the multiple options can be selected flag</DL>
</DD>
</DL>
<HR>
<A NAME="getMultipleValues()"><!-- --></A><H3>
getMultipleValues</H3>
<PRE>
public <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> <B>getMultipleValues</B>()</PRE>
<DL>
<DD><B>Deprecated.</B>&nbsp;<I>use <A HREF="../../../../org/apache/click/control/Select.html#getSelectedValues()"><CODE>getSelectedValues()</CODE></A> instead, this method will
be removed in subsequent releases</I>
<P>
<DD>Return the list of selected values.
<P>
<DD><DL>
<DT><B>Returns:</B><DD>the list of selected values</DL>
</DD>
</DL>
<HR>
<A NAME="getSelectedValues()"><!-- --></A><H3>
getSelectedValues</H3>
<PRE>
public <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> <B>getSelectedValues</B>()</PRE>
<DL>
<DD>Return the list of selected values.
<P>
<DD><DL>
<DT><B>Returns:</B><DD>the list of selected values</DL>
</DD>
</DL>
<HR>
<A NAME="setMultipleValues(java.util.List)"><!-- --></A><H3>
setMultipleValues</H3>
<PRE>
public void <B>setMultipleValues</B>(<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>&lt;<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>&gt;&nbsp;multipleValues)</PRE>
<DL>
<DD><B>Deprecated.</B>&nbsp;<I>use <A HREF="../../../../org/apache/click/control/Select.html#getSelectedValues()"><CODE>getSelectedValues()</CODE></A> instead, this method will
be removed in subsequent releases</I>
<P>
<DD>Set the list of selected values.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>multipleValues</CODE> - the list of selected values</DL>
</DD>
</DL>
<HR>
<A NAME="setSelectedValues(java.util.List)"><!-- --></A><H3>
setSelectedValues</H3>
<PRE>
public void <B>setSelectedValues</B>(<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>&lt;<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>&gt;&nbsp;multipleValues)</PRE>
<DL>
<DD>Set the list of selected values.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>multipleValues</CODE> - the list of selected values</DL>
</DD>
</DL>
<HR>
<A NAME="setDefaultOption(org.apache.click.control.Option)"><!-- --></A><H3>
setDefaultOption</H3>
<PRE>
public void <B>setDefaultOption</B>(<A HREF="../../../../org/apache/click/control/Option.html" title="class in org.apache.click.control">Option</A>&nbsp;option)</PRE>
<DL>
<DD>Set the Select default option. The default option will be the first option
added to the Select <A HREF="../../../../org/apache/click/control/Select.html#getOptionList()"><CODE>optionList</CODE></A>.
<p/>
<b>Please note</b>: this property is used in conjunction with the Select
<A HREF="../../../../org/apache/click/control/Select.html#setDataProvider(org.apache.click.dataprovider.DataProvider)"><CODE>dataProvider</CODE></A>,
where the DataProvider does not return a sensible default, non-selecting
option. For example if the DataProvider returns a list of Authors from the
database, the list won't include a default empty ("") option to choose
from. By setting the defaultOption property, the Select will add this
Option as the first option of the Select <A HREF="../../../../org/apache/click/control/Select.html#getOptionList()"><CODE>optionList</CODE></A>.
<p/>
In addition, if the Select is <A HREF="../../../../org/apache/click/control/Field.html#setRequired(boolean)"><CODE>required</CODE></A>,
the defaultOption is used to check whether the Select is valid or not.
In other words, if the user's selected value equals the defaultOption value,
the Select won't be valid since no selection was made by the user.
<p/>
Example usage:
<pre class="prettyprint">
public void onInit() {
authorSelect.setDefaultOption(Option.EMPTY_OPTION);
authorSelect.setDataProvider(new DataProvider() {
public List getData() {
List options = new ArrayList();
List<Author> authors = getAuthorDao().getAuthors();
for (Author author : authors) {
options.add(new Option(author.getId(), author.getName()));
}
return options;
}
});
form.add(authorSelect);
} </pre>
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>option</CODE> - the Select default option</DL>
</DD>
</DL>
<HR>
<A NAME="getDefaultOption()"><!-- --></A><H3>
getDefaultOption</H3>
<PRE>
public <A HREF="../../../../org/apache/click/control/Option.html" title="class in org.apache.click.control">Option</A> <B>getDefaultOption</B>()</PRE>
<DL>
<DD>Return the Select default option or null if no default option is set.
<P>
<DD><DL>
<DT><B>Returns:</B><DD>the Select default option or null if no default option is set<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/click/control/Select.html#setDefaultOption(org.apache.click.control.Option)"><CODE>setDefaultOption(org.apache.click.control.Option)</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="getOptionList()"><!-- --></A><H3>
getOptionList</H3>
<PRE>
public <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> <B>getOptionList</B>()</PRE>
<DL>
<DD>Return the Option list.
<P>
<DD><DL>
<DT><B>Returns:</B><DD>the Option list</DL>
</DD>
</DL>
<HR>
<A NAME="setOptionList(java.util.List)"><!-- --></A><H3>
setOptionList</H3>
<PRE>
public void <B>setOptionList</B>(<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>&nbsp;options)</PRE>
<DL>
<DD>Set the Option list.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>options</CODE> - the Option list</DL>
</DD>
</DL>
<HR>
<A NAME="getValidationJavaScript()"><!-- --></A><H3>
getValidationJavaScript</H3>
<PRE>
public <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> <B>getValidationJavaScript</B>()</PRE>
<DL>
<DD>Return the Select JavaScript client side validation function.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/apache/click/control/Field.html#getValidationJavaScript()">getValidationJavaScript</A></CODE> in class <CODE><A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>the field JavaScript client side validation function</DL>
</DD>
</DL>
<HR>
<A NAME="bindRequestValue()"><!-- --></A><H3>
bindRequestValue</H3>
<PRE>
public void <B>bindRequestValue</B>()</PRE>
<DL>
<DD>Bind the request submission, setting the <A HREF="../../../../org/apache/click/control/Field.html#value"><CODE>Field.value</CODE></A> or
<A HREF="../../../../org/apache/click/control/Select.html#selectedValues"><CODE>selectedValues</CODE></A> property if defined in the request.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/apache/click/control/Field.html#bindRequestValue()">bindRequestValue</A></CODE> in class <CODE><A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getState()"><!-- --></A><H3>
getState</H3>
<PRE>
public <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>getState</B>()</PRE>
<DL>
<DD>Return the Select state. The following state is returned, depending on
whether <A HREF="../../../../org/apache/click/control/Select.html#isMultiple()"><CODE>isMultiple()</CODE></A> is <tt>true</tt> or <tt>false</tt>:
<ul>
<li><A HREF="../../../../org/apache/click/control/Field.html#getValue()"><CODE>Field.getValue()</CODE></A> if <A HREF="../../../../org/apache/click/control/Select.html#isMultiple()"><CODE>isMultiple()</CODE></A> is <tt>false</tt></li>
<li><A HREF="../../../../org/apache/click/control/Select.html#getSelectedValues()"><CODE>getSelectedValues()</CODE></A> if <A HREF="../../../../org/apache/click/control/Select.html#isMultiple()"><CODE>isMultiple()</CODE></A> is <tt>true</tt></li>
</ul>
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/click/Stateful.html#getState()">getState</A></CODE> in interface <CODE><A HREF="../../../../org/apache/click/Stateful.html" title="interface in org.apache.click">Stateful</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/apache/click/control/Field.html#getState()">getState</A></CODE> in class <CODE><A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>the Select state</DL>
</DD>
</DL>
<HR>
<A NAME="setState(java.lang.Object)"><!-- --></A><H3>
setState</H3>
<PRE>
public void <B>setState</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>&nbsp;state)</PRE>
<DL>
<DD>Set the Select state.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/click/Stateful.html#setState(java.lang.Object)">setState</A></CODE> in interface <CODE><A HREF="../../../../org/apache/click/Stateful.html" title="interface in org.apache.click">Stateful</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/apache/click/control/Field.html#setState(java.lang.Object)">setState</A></CODE> in class <CODE><A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>state</CODE> - the Select state to set</DL>
</DD>
</DL>
<HR>
<A NAME="onRender()"><!-- --></A><H3>
onRender</H3>
<PRE>
public void <B>onRender</B>()</PRE>
<DL>
<DD>This method invokes <A HREF="../../../../org/apache/click/control/Select.html#getOptionList()"><CODE>getOptionList()</CODE></A> to ensure exceptions thrown
while retrieving options will be handled by the error page.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/click/Control.html#onRender()">onRender</A></CODE> in interface <CODE><A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/apache/click/control/AbstractControl.html#onRender()">onRender</A></CODE> in class <CODE><A HREF="../../../../org/apache/click/control/AbstractControl.html" title="class in org.apache.click.control">AbstractControl</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/click/Control.html#onRender()"><CODE>Control.onRender()</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="getControlSizeEst()"><!-- --></A><H3>
getControlSizeEst</H3>
<PRE>
public int <B>getControlSizeEst</B>()</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../org/apache/click/control/AbstractControl.html#getControlSizeEst()">AbstractControl</A></CODE></B></DD>
<DD>Return the estimated rendered control size in characters.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/apache/click/control/AbstractControl.html#getControlSizeEst()">getControlSizeEst</A></CODE> in class <CODE><A HREF="../../../../org/apache/click/control/AbstractControl.html" title="class in org.apache.click.control">AbstractControl</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>the estimated rendered control size in characters<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/click/control/AbstractControl.html#getControlSizeEst()"><CODE>AbstractControl.getControlSizeEst()</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="render(org.apache.click.util.HtmlStringBuffer)"><!-- --></A><H3>
render</H3>
<PRE>
public void <B>render</B>(<A HREF="../../../../org/apache/click/util/HtmlStringBuffer.html" title="class in org.apache.click.util">HtmlStringBuffer</A>&nbsp;buffer)</PRE>
<DL>
<DD>Render the HTML representation of the Select.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/click/Control.html#render(org.apache.click.util.HtmlStringBuffer)">render</A></CODE> in interface <CODE><A HREF="../../../../org/apache/click/Control.html" title="interface in org.apache.click">Control</A></CODE><DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/apache/click/control/AbstractControl.html#render(org.apache.click.util.HtmlStringBuffer)">render</A></CODE> in class <CODE><A HREF="../../../../org/apache/click/control/AbstractControl.html" title="class in org.apache.click.control">AbstractControl</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>buffer</CODE> - the specified buffer to render the control's output to<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/click/control/AbstractControl.html#toString()"><CODE>AbstractControl.toString()</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="validate()"><!-- --></A><H3>
validate</H3>
<PRE>
public void <B>validate</B>()</PRE>
<DL>
<DD>Validate the Select request submission.
<p/>
If a Select is <A HREF="../../../../org/apache/click/control/Field.html#required"><CODE>Field.required</CODE></A> then the user must select a value
other than the first value is the list, otherwise the Select will
have a validation error. If the Select is not required then no
validation errors will occur.
<p/>
A field error message is displayed if a validation error occurs.
These messages are defined in the resource bundle: <blockquote>
<pre>/click-control.properties</pre></blockquote>
<p/>
Error message bundle key names include: <blockquote><ul>
<li>select-error</li>
</ul></blockquote>
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><A HREF="../../../../org/apache/click/control/Field.html#validate()">validate</A></CODE> in class <CODE><A HREF="../../../../org/apache/click/control/Field.html" title="class in org.apache.click.control">Field</A></CODE></DL>
</DD>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<A NAME="getDefaultOptionValue()"><!-- --></A><H3>
getDefaultOptionValue</H3>
<PRE>
protected <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> <B>getDefaultOptionValue</B>()</PRE>
<DL>
<DD>Return the Select <A HREF="../../../../org/apache/click/control/Select.html#getDefaultOption()"><CODE>defaultOption</CODE></A> value, or
null if no defaultOption is set.
<P>
<DD><DL>
<DT><B>Returns:</B><DD>the Select defaultOption value, or null if no defaultOption is set<DT><B>See Also:</B><DD><A HREF="../../../../org/apache/click/control/Select.html#getDefaultOption()"><CODE>getDefaultOption()</CODE></A>,
<A HREF="../../../../org/apache/click/control/Select.html#setDefaultOption(org.apache.click.control.Option)"><CODE>setDefaultOption(org.apache.click.control.Option)</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="setInitialValue()"><!-- --></A><H3>
setInitialValue</H3>
<PRE>
protected void <B>setInitialValue</B>()</PRE>
<DL>
<DD>Set the initial select option value.
<P>
<DD><DL>
</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>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../org/apache/click/control/Reset.html" title="class in org.apache.click.control"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../org/apache/click/control/Submit.html" title="class in org.apache.click.control"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../index.html?org/apache/click/control/Select.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="Select.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<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:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#field_summary">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;<A HREF="#field_detail">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<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,'&amp;').replace(pr_lt,'&lt;').replace(pr_gt,'&gt;').replace(pr_quot,'&quot;');}function PR_textToHtml(str){return str.replace(pr_amp,'&amp;').replace(pr_lt,'&lt;').replace(pr_gt,'&gt;');}var pr_ltEnt=/&lt;/g;var pr_gtEnt=/&gt;/g;var pr_aposEnt=/&apos;/g;var pr_quotEnt=/&quot;/g;var pr_ampEnt=/&amp;/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&&currentDecoration){openDecoration=currentDecoration;html.push('<span class="',openDecoration,'">');}var htmlChunk=PR_textToHtml(tabExpander(sourceText.substring(outputIdx,sourceIdx))).replace(/(\r\n?|\n| ) /g,'$1&nbsp;').replace(/\r\n?|\n/g,'&nbsp;<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>