pivot.wtk.skin
Class TextAreaSkin.ElementView

java.lang.Object
  extended by pivot.wtk.skin.TextAreaSkin.NodeView
      extended by pivot.wtk.skin.TextAreaSkin.ElementView
All Implemented Interfaces:
java.lang.Iterable<TextAreaSkin.NodeView>, Sequence<TextAreaSkin.NodeView>, ElementListener, NodeListener, Visual
Direct Known Subclasses:
TextAreaSkin.DocumentView, TextAreaSkin.ParagraphView
Enclosing class:
TextAreaSkin

public abstract class TextAreaSkin.ElementView
extends TextAreaSkin.NodeView
implements Sequence<TextAreaSkin.NodeView>, java.lang.Iterable<TextAreaSkin.NodeView>, ElementListener

Abstract base class for element views.

Author:
gbrown

Nested Class Summary
 
Nested classes/interfaces inherited from interface pivot.collections.Sequence
Sequence.Search, Sequence.Sort, Sequence.Tree
 
Constructor Summary
TextAreaSkin.ElementView(Element element)
           
 
Method Summary
 int add(TextAreaSkin.NodeView nodeView)
          Adds an item to the sequence.
protected  void attach()
           
protected  void detach()
           
 TextAreaSkin.NodeView get(int index)
          Retrieves the item at the given index.
 int getCharacterAt(int x, int y)
           
 Bounds getCharacterBounds(int offset)
           
 int getLength()
          Returns the length of the sequence.
 int getOffset()
           
 int indexOf(TextAreaSkin.NodeView nodeView)
          Returns the index of an item in the sequence.
 void insert(TextAreaSkin.NodeView nodeView, int index)
          Inserts an item into the sequence at a specific index.
 java.util.Iterator<TextAreaSkin.NodeView> iterator()
           
 void nodeInserted(Element element, int index)
          Called when a node has been inserted into an element.
 void nodesRemoved(Element element, int index, Sequence<Node> nodes)
          Called when nodes have been removed from an element.
 void paint(java.awt.Graphics2D graphics)
          Paints the visual.
 Sequence<TextAreaSkin.NodeView> remove(int index, int count)
          Removes one or more items from the sequence.
 int remove(TextAreaSkin.NodeView nodeView)
          Removes the first occurrence of the given item from the sequence.
 TextAreaSkin.NodeView update(int index, TextAreaSkin.NodeView nodeView)
          Updates the item at the given index.
 
Methods inherited from class pivot.wtk.skin.TextAreaSkin.NodeView
getBounds, getBounds, getBreakWidth, getHeight, getHeight, getLocation, getNext, getNode, getParent, getSize, getSize, getWidth, getX, getY, invalidate, isValid, offsetChanged, parentChanged, rangeInserted, rangeRemoved, repaint, repaint, setBreakWidth, setLocation, setParent, setSize, validate
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TextAreaSkin.ElementView

public TextAreaSkin.ElementView(Element element)
Method Detail

attach

protected void attach()
Overrides:
attach in class TextAreaSkin.NodeView

detach

protected void detach()
Overrides:
detach in class TextAreaSkin.NodeView

add

public int add(TextAreaSkin.NodeView nodeView)
Description copied from interface: Sequence
Adds an item to the sequence.

Specified by:
add in interface Sequence<TextAreaSkin.NodeView>
Parameters:
nodeView - The item to be added to the sequence.
Returns:
The index at which the item was added.

insert

public void insert(TextAreaSkin.NodeView nodeView,
                   int index)
Description copied from interface: Sequence
Inserts an item into the sequence at a specific index.

Specified by:
insert in interface Sequence<TextAreaSkin.NodeView>
Parameters:
nodeView - The item to be added to the sequence.
index - The index at which the item should be inserted. Must be a value between 0 and getLength().

update

public TextAreaSkin.NodeView update(int index,
                                    TextAreaSkin.NodeView nodeView)
Description copied from interface: Sequence
Updates the item at the given index.

Specified by:
update in interface Sequence<TextAreaSkin.NodeView>
Parameters:
index - The index of the item to update.
nodeView - The item that will replace any existing value at the given index.
Returns:
The item that was previously stored at the given index.

remove

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

Specified by:
remove in interface Sequence<TextAreaSkin.NodeView>
Parameters:
nodeView - 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<TextAreaSkin.NodeView> remove(int index,
                                              int count)
Description copied from interface: Sequence
Removes one or more items from the sequence.

Specified by:
remove in interface Sequence<TextAreaSkin.NodeView>
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.

get

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

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

indexOf

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

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

getLength

public int getLength()
Description copied from interface: Sequence
Returns the length of the sequence.

Specified by:
getLength in interface Sequence<TextAreaSkin.NodeView>
Returns:
The number of items in the sequence.

paint

public void paint(java.awt.Graphics2D graphics)
Description copied from interface: Visual
Paints the visual.

Specified by:
paint in interface Visual
Parameters:
graphics - The graphics context in which to paint the visual.

getOffset

public int getOffset()
Specified by:
getOffset in class TextAreaSkin.NodeView

getCharacterAt

public int getCharacterAt(int x,
                          int y)
Specified by:
getCharacterAt in class TextAreaSkin.NodeView

getCharacterBounds

public Bounds getCharacterBounds(int offset)
Specified by:
getCharacterBounds in class TextAreaSkin.NodeView

nodeInserted

public void nodeInserted(Element element,
                         int index)
Description copied from interface: ElementListener
Called when a node has been inserted into an element.

Specified by:
nodeInserted in interface ElementListener

nodesRemoved

public void nodesRemoved(Element element,
                         int index,
                         Sequence<Node> nodes)
Description copied from interface: ElementListener
Called when nodes have been removed from an element.

Specified by:
nodesRemoved in interface ElementListener

iterator

public java.util.Iterator<TextAreaSkin.NodeView> iterator()
Specified by:
iterator in interface java.lang.Iterable<TextAreaSkin.NodeView>