org.apache.pivot.wtk.content
Class NumericSpinnerData

java.lang.Object
  extended by org.apache.pivot.wtk.content.NumericSpinnerData
All Implemented Interfaces:
Iterable<Integer>, Collection<Integer>, List<Integer>, Sequence<Integer>

public class NumericSpinnerData
extends Object
implements List<Integer>

Spinner data model that presents a bounded list of integers. This is a lightweight class that spoofs the actual list data (no data is stored in the list).

The iterator returned by this class's iterator method is fail-fast: if the bounds of the enclosing spinner data change during iteration, a ConcurrentModificationException will be thrown.


Nested Class Summary
 
Nested classes/interfaces inherited from interface org.apache.pivot.collections.List
List.ItemIterator<T>, List.ListListenerList<T>
 
Nested classes/interfaces inherited from interface org.apache.pivot.collections.Sequence
Sequence.Tree<T>
 
Constructor Summary
NumericSpinnerData()
          Creates a new NumericSpinnerData instance bounded from Short.MIN_VALUE to Short.MAX_VALUE and an increment of one.
NumericSpinnerData(int lowerBound, int upperBound)
          Creates a new NumericSpinnerData with the specified bounded range and an increment of one.
NumericSpinnerData(int lowerBound, int upperBound, int increment)
          Creates a new NumericSpinnerData with the specified bounded range and increment.
 
Method Summary
 int add(Integer item)
          Adds an item to the list.
 void clear()
          Removes all elements from the collection.
 Integer get(int index)
          Retrieves the item at the given index.
 Comparator<Integer> getComparator()
          Returns the collection's sort order.
 int getIncrement()
           
 int getLength()
          Returns the length of the list.
 ListenerList<ListListener<Integer>> getListListeners()
          Returns the list listener list.
 int getLowerBound()
           
 int getUpperBound()
           
 int indexOf(Integer item)
          Returns the index of an item in the sequence.
 void insert(Integer item, int index)
          Inserts an item into the list.
 boolean isEmpty()
          Tests the emptiness of the collection.
 Iterator<Integer> iterator()
           
 int remove(Integer item)
          Removes the first occurrence of the given item from the sequence.
 Sequence<Integer> remove(int index, int count)
          Removes one or more items from the sequence.
 void setComparator(Comparator<Integer> comparator)
          Sets the collection's sort order, re-ordering the collection's contents and ensuring that new entries preserve the sort order.
 void setIncrement(int increment)
           
 void setLowerBound(int lowerBound)
           
 void setUpperBound(int upperBound)
           
 Integer update(int index, Integer item)
          Updates the item at the given index.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

NumericSpinnerData

public NumericSpinnerData()
Creates a new NumericSpinnerData instance bounded from Short.MIN_VALUE to Short.MAX_VALUE and an increment of one.


NumericSpinnerData

public NumericSpinnerData(int lowerBound,
                          int upperBound)
Creates a new NumericSpinnerData with the specified bounded range and an increment of one.


NumericSpinnerData

public NumericSpinnerData(int lowerBound,
                          int upperBound,
                          int increment)
Creates a new NumericSpinnerData with the specified bounded range and increment.

Method Detail

getLowerBound

public int getLowerBound()

setLowerBound

public void setLowerBound(int lowerBound)

getUpperBound

public int getUpperBound()

setUpperBound

public void setUpperBound(int upperBound)

getIncrement

public int getIncrement()

setIncrement

public void setIncrement(int increment)

add

public int add(Integer item)
Description copied from interface: List
Adds an item to the list. If the list is unsorted, the item is appended to the end of the list. Otherwise, it is inserted at the appropriate index.

Specified by:
add in interface List<Integer>
Specified by:
add in interface Sequence<Integer>
Parameters:
item - The item to be added to the sequence.
Returns:
The index at which the item was added.
See Also:
ListListener.itemInserted(List, int)

insert

public void insert(Integer item,
                   int index)
Description copied from interface: List
Inserts an item into the list.

Specified by:
insert in interface List<Integer>
Specified by:
insert in interface Sequence<Integer>
Parameters:
item - The item to be added to the list.
index - The index at which the item should be inserted. Must be a value between 0 and getLength().
See Also:
ListListener.itemInserted(List, int)

update

public Integer update(int index,
                      Integer item)
Description copied from interface: List
Updates the item at the given index.

Specified by:
update in interface List<Integer>
Specified by:
update in interface Sequence<Integer>
Parameters:
index - The index of the item to update.
item - The item that will replace any existing value at the given index.
Returns:
The item that was previously stored at the given index.
See Also:
ListListener.itemUpdated(List, int, Object)

remove

public int remove(Integer item)
Description copied from interface: Sequence
Removes the first occurrence of the given item from the sequence.

Specified by:
remove in interface Sequence<Integer>
Parameters:
item - The item to remove.
Returns:
The index of the item that was removed, or -1 if the item could not be found.
See Also:
Sequence.remove(int, int)

remove

public Sequence<Integer> remove(int index,
                                int count)
Description copied from interface: Sequence
Removes one or more items from the sequence.

Specified by:
remove in interface List<Integer>
Specified by:
remove in interface Sequence<Integer>
Parameters:
index - The starting index to remove.
count - The number of items to remove, beginning with index.
Returns:
A sequence containing the items that were removed.
See Also:
ListListener.itemsRemoved(List, int, Sequence)

get

public Integer get(int index)
Description copied from interface: Sequence
Retrieves the item at the given index.

Specified by:
get in interface Sequence<Integer>
Parameters:
index - The index of the item to retrieve.

indexOf

public int indexOf(Integer item)
Description copied from interface: Sequence
Returns the index of an item in the sequence.

Specified by:
indexOf in interface Sequence<Integer>
Parameters:
item - The item to locate.
Returns:
The index of first occurrence of the item if it exists in the sequence; -1, otherwise.

clear

public void clear()
Description copied from interface: Collection
Removes all elements from the collection.

Specified by:
clear in interface Collection<Integer>
Specified by:
clear in interface List<Integer>
See Also:
ListListener.itemsRemoved(List, int, Sequence)

isEmpty

public boolean isEmpty()
Description copied from interface: Collection
Tests the emptiness of the collection.

Specified by:
isEmpty in interface Collection<Integer>
Returns:
true if the collection contains no elements; false, otherwise.

getLength

public int getLength()
Description copied from interface: List
Returns the length of the list.

Specified by:
getLength in interface List<Integer>
Specified by:
getLength in interface Sequence<Integer>
Returns:
The number of items in the list, or -1 if the list's length is not known. In this case, the iterator must be used to retrieve the contents of the list.

getComparator

public Comparator<Integer> getComparator()
Description copied from interface: Collection
Returns the collection's sort order.

Specified by:
getComparator in interface Collection<Integer>
Returns:
The comparator used to order elements in the collection, or null if the sort order is undefined.
See Also:
Collection.setComparator(Comparator)

setComparator

public void setComparator(Comparator<Integer> comparator)
Description copied from interface: Collection
Sets the collection's sort order, re-ordering the collection's contents and ensuring that new entries preserve the sort order.

Calling this method more than once with the same comparator will re-sort the collection.

Specified by:
setComparator in interface Collection<Integer>
Specified by:
setComparator in interface List<Integer>
Parameters:
comparator - The comparator used to order elements in the collection, or null if the collection is unsorted.
See Also:
ListListener.comparatorChanged(List, Comparator)

iterator

public Iterator<Integer> iterator()
Specified by:
iterator in interface Iterable<Integer>

getListListeners

public ListenerList<ListListener<Integer>> getListListeners()
Description copied from interface: List
Returns the list listener list.

Specified by:
getListListeners in interface List<Integer>