com.lowagie.text
Class List

java.lang.Object
  extended bycom.lowagie.text.List
All Implemented Interfaces:
Element, MarkupAttributes, TextElementArray
Direct Known Subclasses:
GreekList, RomanList, ZapfDingbatsList, ZapfDingbatsNumberList

public class List
extends Object
implements TextElementArray, MarkupAttributes

A List contains several ListItems.

Example 1:

 List list = new List(true, 20);
 list.add(new ListItem("First line"));
 list.add(new ListItem("The second line is longer to see what happens once the end of the line is reached. Will it start on a new line?"));
 list.add(new ListItem("Third line"));
 
The result of this code looks like this:
  1. First line
  2. The second line is longer to see what happens once the end of the line is reached. Will it start on a new line?
  3. Third line
Example 2:
 List overview = new List(false, 10);
 overview.add(new ListItem("This is an item"));
 overview.add("This is another item");
 
The result of this code looks like this:

See Also:
Element, ListItem

Field Summary
static boolean ALPHABETICAL
          a possible value for the lettered parameter
protected  int first
          This variable indicates the first number of a numbered list.
protected  char firstCh
           
protected  float indentationLeft
          The indentation of this list on the left side.
protected  float indentationRight
          The indentation of this list on the right side.
protected  char lastCh
           
protected  boolean lettered
           
protected  ArrayList list
          This is the ArrayList containing the different ListItems.
protected  Properties markupAttributes
          Contains extra markupAttributes
protected  boolean numbered
          This variable indicates if the list has to be numbered.
static boolean NUMBERICAL
          a possible value for the lettered parameter
static boolean ORDERED
          a possible value for the numbered parameter
protected  Chunk symbol
          This is the listsymbol of a list that is not numbered.
protected  float symbolIndent
          The indentation of the listitems.
static boolean UNORDERED
          a possible value for the numbered parameter
 
Fields inherited from interface com.lowagie.text.Element
ALIGN_BASELINE, ALIGN_BOTTOM, ALIGN_CENTER, ALIGN_JUSTIFIED, ALIGN_JUSTIFIED_ALL, ALIGN_LEFT, ALIGN_MIDDLE, ALIGN_RIGHT, ALIGN_TOP, ALIGN_UNDEFINED, ANCHOR, ANNOTATION, AUTHOR, CCITT_BLACKIS1, CCITT_ENCODEDBYTEALIGN, CCITT_ENDOFBLOCK, CCITT_ENDOFLINE, CCITTG3_1D, CCITTG3_2D, CCITTG4, CELL, CHAPTER, CHUNK, CREATIONDATE, CREATOR, GRAPHIC, HEADER, IMGRAW, IMGTEMPLATE, JPEG, KEYWORDS, LIST, LISTITEM, MULTI_COLUMN_TEXT, PARAGRAPH, PHRASE, PRODUCER, PTABLE, RECTANGLE, ROW, SECTION, SUBJECT, TABLE, TITLE
 
Constructor Summary
List(boolean numbered, boolean lettered, float symbolIndent)
          Creates a list
List(boolean numbered, float symbolIndent)
          Constructs a List.
List(Properties attributes)
          Returns a List that has been constructed taking in account the value of some attributes.
 
Method Summary
 boolean add(Object o)
          Adds an Object to the List.
 int first()
          Gets the first number .
 ArrayList getChunks()
          Gets all the chunks in this element.
 ArrayList getItems()
          Gets all the items in the list.
 String getMarkupAttribute(String name)
          Returns the value of the specified attribute.
 Set getMarkupAttributeNames()
          Returns a Set of String attribute names for the MarkupAttributes implementor.
 Properties getMarkupAttributes()
          Return a Properties-object containing all the markupAttributes.
 float indentationLeft()
          Gets the indentation of this paragraph on the left side.
 float indentationRight()
          Gets the indentation of this paragraph on the right side.
 boolean isNumbered()
          Checks if the list is numbered.
static boolean isSymbol(String tag)
          Checks if a given tag corresponds with the listsymbol tag of this object.
static boolean isTag(String tag)
          Checks if a given tag corresponds with this object.
 float leading()
          Gets the leading of the first listitem.
private  int listItemsInList()
          Counts the number of ListItems in the list ommiting nested lists
private  String nextLetter()
          Retrieves the next letter in the sequence
 boolean process(ElementListener listener)
          Processes the element by adding it (or the different parts) to an ElementListener.
 void setFirst(char first)
          Sets the Letter that has to come first in the list.
 void setFirst(int first)
          Sets the number that has to come first in the list.
 void setIndentationLeft(float indentation)
          Sets the indentation of this paragraph on the left side.
 void setIndentationRight(float indentation)
          Sets the indentation of this paragraph on the right side.
 void setListSymbol(Chunk symbol)
          Sets the listsymbol.
 void setListSymbol(String symbol)
          Sets the listsymbol.
 void setMarkupAttribute(String name, String value)
          Sets the specified attribute.
 void setMarkupAttributes(Properties markupAttributes)
          Sets the markupAttributes.
 int size()
          Gets the size of the list.
 Chunk symbol()
          Gets the Chunk containing the symbol.
 float symbolIndent()
          Gets the symbol indentation.
 int type()
          Gets the type of the text element.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface com.lowagie.text.Element
toString
 

Field Detail

ORDERED

public static final boolean ORDERED
a possible value for the numbered parameter

See Also:
Constant Field Values

UNORDERED

public static final boolean UNORDERED
a possible value for the numbered parameter

See Also:
Constant Field Values

NUMBERICAL

public static final boolean NUMBERICAL
a possible value for the lettered parameter

See Also:
Constant Field Values

ALPHABETICAL

public static final boolean ALPHABETICAL
a possible value for the lettered parameter

See Also:
Constant Field Values

list

protected ArrayList list
This is the ArrayList containing the different ListItems.


numbered

protected boolean numbered
This variable indicates if the list has to be numbered.


lettered

protected boolean lettered

first

protected int first
This variable indicates the first number of a numbered list.


firstCh

protected char firstCh

lastCh

protected char lastCh

symbol

protected Chunk symbol
This is the listsymbol of a list that is not numbered.


indentationLeft

protected float indentationLeft
The indentation of this list on the left side.


indentationRight

protected float indentationRight
The indentation of this list on the right side.


symbolIndent

protected float symbolIndent
The indentation of the listitems.


markupAttributes

protected Properties markupAttributes
Contains extra markupAttributes

Constructor Detail

List

public List(boolean numbered,
            float symbolIndent)
Constructs a List.

Remark: the parameter symbolIndent is important for instance when generating PDF-documents; it indicates the indentation of the listsymbol. It is not important for HTML-documents.

Parameters:
numbered - a boolean
symbolIndent - the indentation that has to be used for the listsymbol

List

public List(boolean numbered,
            boolean lettered,
            float symbolIndent)
Creates a list

Parameters:
numbered - has the list to be numbered?
lettered - has the list to be 'numbered' with letters
symbolIndent - the indentation of the symbol

List

public List(Properties attributes)
Returns a List that has been constructed taking in account the value of some attributes.

Parameters:
attributes - Some attributes
Method Detail

process

public boolean process(ElementListener listener)
Processes the element by adding it (or the different parts) to an ElementListener.

Specified by:
process in interface Element
Parameters:
listener - an ElementListener
Returns:
true if the element was processed successfully

type

public int type()
Gets the type of the text element.

Specified by:
type in interface Element
Returns:
a type

getChunks

public ArrayList getChunks()
Gets all the chunks in this element.

Specified by:
getChunks in interface Element
Returns:
an ArrayList

add

public boolean add(Object o)
Adds an Object to the List.

Specified by:
add in interface TextElementArray
Parameters:
o - the object to add.
Returns:
true if adding the object succeeded

setIndentationLeft

public void setIndentationLeft(float indentation)
Sets the indentation of this paragraph on the left side.

Parameters:
indentation - the new indentation

setIndentationRight

public void setIndentationRight(float indentation)
Sets the indentation of this paragraph on the right side.

Parameters:
indentation - the new indentation

setFirst

public void setFirst(int first)
Sets the number that has to come first in the list.

Parameters:
first - a number

setFirst

public void setFirst(char first)
Sets the Letter that has to come first in the list.

Parameters:
first - a letter

setListSymbol

public void setListSymbol(Chunk symbol)
Sets the listsymbol.

Parameters:
symbol - a Chunk

setListSymbol

public void setListSymbol(String symbol)
Sets the listsymbol.

This is a shortcut for setListSymbol(Chunk symbol).

Parameters:
symbol - a String

getItems

public ArrayList getItems()
Gets all the items in the list.

Returns:
an ArrayList containing ListItems.

size

public int size()
Gets the size of the list.

Returns:
a size

leading

public float leading()
Gets the leading of the first listitem.

Returns:
a leading

isNumbered

public boolean isNumbered()
Checks if the list is numbered.

Returns:
true if the list is numbered, false otherwise.

symbolIndent

public float symbolIndent()
Gets the symbol indentation.

Returns:
the symbol indentation

symbol

public Chunk symbol()
Gets the Chunk containing the symbol.

Returns:
a Chunk with a symbol

first

public int first()
Gets the first number .

Returns:
a number

indentationLeft

public float indentationLeft()
Gets the indentation of this paragraph on the left side.

Returns:
the indentation

indentationRight

public float indentationRight()
Gets the indentation of this paragraph on the right side.

Returns:
the indentation

isSymbol

public static boolean isSymbol(String tag)
Checks if a given tag corresponds with the listsymbol tag of this object.

Parameters:
tag - the given tag
Returns:
true if the tag corresponds

isTag

public static boolean isTag(String tag)
Checks if a given tag corresponds with this object.

Parameters:
tag - the given tag
Returns:
true if the tag corresponds

nextLetter

private String nextLetter()
Retrieves the next letter in the sequence

Returns:
String contains the next character (A-Z or a-z)

listItemsInList

private int listItemsInList()
Counts the number of ListItems in the list ommiting nested lists

Returns:
Integer number of ListItems in the list

setMarkupAttribute

public void setMarkupAttribute(String name,
                               String value)
Description copied from interface: MarkupAttributes
Sets the specified attribute.

Specified by:
setMarkupAttribute in interface MarkupAttributes
Parameters:
name - String attribute name.
value - String attribute value.
See Also:
MarkupAttributes.setMarkupAttribute(java.lang.String, java.lang.String)

setMarkupAttributes

public void setMarkupAttributes(Properties markupAttributes)
Description copied from interface: MarkupAttributes
Sets the markupAttributes.

Specified by:
setMarkupAttributes in interface MarkupAttributes
Parameters:
markupAttributes - a Properties-object containing markupattributes
See Also:
MarkupAttributes.setMarkupAttributes(java.util.Properties)

getMarkupAttribute

public String getMarkupAttribute(String name)
Description copied from interface: MarkupAttributes
Returns the value of the specified attribute.

Specified by:
getMarkupAttribute in interface MarkupAttributes
Parameters:
name - String attribute name.
Returns:
String.
See Also:
MarkupAttributes.getMarkupAttribute(java.lang.String)

getMarkupAttributeNames

public Set getMarkupAttributeNames()
Description copied from interface: MarkupAttributes
Returns a Set of String attribute names for the MarkupAttributes implementor.

Specified by:
getMarkupAttributeNames in interface MarkupAttributes
Returns:
Set.
See Also:
MarkupAttributes.getMarkupAttributeNames()

getMarkupAttributes

public Properties getMarkupAttributes()
Description copied from interface: MarkupAttributes
Return a Properties-object containing all the markupAttributes.

Specified by:
getMarkupAttributes in interface MarkupAttributes
Returns:
Properties
See Also:
MarkupAttributes.getMarkupAttributes()