org.mortbay.html
Class TableForm

java.lang.Object
  extended by org.mortbay.html.Element
      extended by org.mortbay.html.Composite
          extended by org.mortbay.html.Block
              extended by org.mortbay.html.Form
                  extended by org.mortbay.html.TableForm

public class TableForm
extends Form

A form laid out in a Table.

This class creates a form and lays out all the elements within a table. Each element added has a label part and a element part. The label is displayed in the form beside the element. All buttons are shown at the bottom.


Field Summary
 
Fields inherited from class org.mortbay.html.Form
encodingMultipartForm, encodingWWWURL
 
Fields inherited from class org.mortbay.html.Block
Bold, Center, Div, Italic, Left, Listing, Plain, Pre, Quote, Right, Span, Xmp
 
Fields inherited from class org.mortbay.html.Composite
elements, nest
 
Fields inherited from class org.mortbay.html.Element
ALIGN, attributeMap, BGCOLOR, BOTTOM, CENTER, CLASS, COLOR, HEIGHT, ID, LEFT, MIDDLE, noAttributes, RIGHT, SIZE, STYLE, TOP, VALIGN, WIDTH
 
Constructor Summary
TableForm(String target)
          Create a new TableForm.
 
Method Summary
 Input addButton(String tag, String label)
          Add a Submit Button.
 void addButtonArea()
           
 void addButtonArea(String label)
           
 void addButtonRow()
           
 void addCheckbox(String tag, String label, boolean checked)
           
 void addColumn()
          Create a new column in the form.
 void addColumn(int spacing)
          Create a new column in the form.
 void addField(String label, Element field)
          Add an arbitrary element to the table.
 Input addFileField(String tag, String label)
          Add a File Entry Field.
 void addHiddenField(String tag, String value)
          Add a hidden field.
 void addInfoField(String tag, String label, String value)
          Add an informational field which also passes the data as hidden.
 void addPassword(String tag, String label, int length)
          Add a password field.
 void addReset(String label)
          Add a reset button.
 Select addSelect(String tag, String label, boolean multiple, int size)
          Add a Select field.
 Select addSelect(String tag, String label, boolean multiple, int size, Enumeration values)
          Add a Select field initialised with fields.
 void addText(String label, String value)
          Add an informational section.
 TextArea addTextArea(String tag, String label, int width, int height, String value)
          Add a Text Area.
 Input addTextField(String tag, String label, int length, String value)
          Add a Text Entry Field.
 void buttonsAtBottom()
           
 TableForm extendRow()
          Extend the usage of the current row in the form.
 void newColumns()
          Add a new sections of columns.
 void newTable()
          Start using a new Table.
 Table outerTable()
          Get the internal table
 void setColumnSpan(int span)
          Set the column span of the current column.
 Table table()
          Get the internal table
 void useAttributes(String attr)
          Use the given attributes on the next addXXX
 void write(Writer out)
          Write the composite.
 
Methods inherited from class org.mortbay.html.Form
action, encoding, method, target
 
Methods inherited from class org.mortbay.html.Composite
add, contents, nest, replace, reset, setNest, size, unnest
 
Methods inherited from class org.mortbay.html.Element
attribute, attribute, attribute, attributes, attributes, bgColor, bottom, center, color, cssClass, cssID, height, height, height, left, middle, right, setAttributesFrom, size, size, style, top, toString, width, width, width, write, write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TableForm

public TableForm(String target)
Create a new TableForm.

Parameters:
target - The target url to send the form contents to
Method Detail

addText

public void addText(String label,
                    String value)
Add an informational section.


addTextField

public Input addTextField(String tag,
                          String label,
                          int length,
                          String value)
Add a Text Entry Field.

Parameters:
tag - The form name of the element
label - The label for the element in the table.

addTextArea

public TextArea addTextArea(String tag,
                            String label,
                            int width,
                            int height,
                            String value)
Add a Text Area.

Parameters:
tag - The form name of the element
label - The label for the element in the table.

addFileField

public Input addFileField(String tag,
                          String label)
Add a File Entry Field.

Parameters:
tag - The form name of the element
label - The label for the element in the table.

addInfoField

public void addInfoField(String tag,
                         String label,
                         String value)
Add an informational field which also passes the data as hidden.

Parameters:
tag - The form name of the element
label - The label for the element in the table.

addHiddenField

public void addHiddenField(String tag,
                           String value)
Add a hidden field.

Parameters:
tag - The form name of the element

addPassword

public void addPassword(String tag,
                        String label,
                        int length)
Add a password field.

Parameters:
tag - The form name of the element
label - The label for the element in the table.

addCheckbox

public void addCheckbox(String tag,
                        String label,
                        boolean checked)
Parameters:
tag - The form name of the element
label - The label for the element in the table.

addSelect

public Select addSelect(String tag,
                        String label,
                        boolean multiple,
                        int size)
Add a Select field.

Parameters:
tag - The form name of the element
label - The label for the element in the table.

addSelect

public Select addSelect(String tag,
                        String label,
                        boolean multiple,
                        int size,
                        Enumeration values)
Add a Select field initialised with fields.

Parameters:
tag - The form name of the element
label - The label for the element in the table.

addButtonArea

public void addButtonArea(String label)

addButtonArea

public void addButtonArea()

addButtonRow

public void addButtonRow()

buttonsAtBottom

public void buttonsAtBottom()

addButton

public Input addButton(String tag,
                       String label)
Add a Submit Button.

Parameters:
tag - The form name of the element
label - The label for the Button

addReset

public void addReset(String label)
Add a reset button.

Parameters:
label - The label for the element in the table.

useAttributes

public void useAttributes(String attr)
Use the given attributes on the next addXXX


table

public Table table()
Get the internal table


outerTable

public Table outerTable()
Get the internal table


extendRow

public TableForm extendRow()
Extend the usage of the current row in the form. The next element added will be added to the same row as the form and not have a label of it's own.

Returns:
TableForm, the this pointer so that users can write:
                    tableForm.extendRow().addField(...)

addField

public void addField(String label,
                     Element field)
Add an arbitrary element to the table.

Parameters:
label - The label for the element in the table.

addColumn

public void addColumn()
Create a new column in the form.


addColumn

public void addColumn(int spacing)
Create a new column in the form.


newColumns

public void newColumns()
Add a new sections of columns.


setColumnSpan

public void setColumnSpan(int span)
Set the column span of the current column. This call is needed for forms that have varying numbers of columns in different sections. NB. and column spacing counts as a column.

Parameters:
span -

newTable

public void newTable()
Start using a new Table. Anything added to the Composite parent of this object before this is called will be added between the two tables.


write

public void write(Writer out)
           throws IOException
Description copied from class: Composite
Write the composite. The default implementation writes the elements sequentially. May be overridden for more specialized behaviour.

Overrides:
write in class Form
Parameters:
out - Writer to write the element to.
Throws:
IOException