Class GVTACIImpl

  • All Implemented Interfaces:
    java.lang.Cloneable, java.text.AttributedCharacterIterator, java.text.CharacterIterator, GVTAttributedCharacterIterator

    public class GVTACIImpl
    extends java.lang.Object
    implements GVTAttributedCharacterIterator
    GVTACIImpl Used to implement SVG <tspan> and <text> attributes. This implementation is designed for efficient support of per-character attributes (i.e. single character attribute spans). It supports an extended set of TextAttributes, via inner class GVTAttributedCharacterIterator.TextAttributes.
    • Field Summary

      • Fields inherited from interface java.text.CharacterIterator

        DONE
    • Constructor Summary

      Constructors 
      Constructor Description
      GVTACIImpl()
      Constructs a new GVTAttributedCharacterIterator with no attributes and a null string.
      GVTACIImpl​(java.text.AttributedCharacterIterator aci)
      Constructs a GVTACIImpl whose contents are equivalent to those of aci.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.Object clone()
      Create a copy of this iterator
      char current()
      Get the character at the current position (as returned by getIndex()).
      char first()
      Sets the position to getBeginIndex().
      java.util.Set getAllAttributeKeys()
      Get the keys of all attributes defined on the iterator's text range.
      java.lang.Object getAttribute​(java.text.AttributedCharacterIterator.Attribute attribute)
      Get the value of the named attribute for the current character.
      java.util.Map getAttributes()
      Returns a map with the attributes defined on the current character.
      int getBeginIndex()
      Get the start index of the text.
      int getEndIndex()
      Get the end index of the text.
      int getIndex()
      Get the current index.
      int getRunLimit()
      Get the index of the first character following the run with respect to all attributes containing the current character.
      int getRunLimit​(java.text.AttributedCharacterIterator.Attribute attribute)
      Get the index of the first character following the run with respect to the given attribute containing the current character.
      int getRunLimit​(java.util.Set attributes)
      Get the index of the first character following the run with respect to the given attributes containing the current character.
      int getRunStart()
      Get the index of the first character of the run with respect to all attributes containing the current character.
      int getRunStart​(java.text.AttributedCharacterIterator.Attribute attribute)
      Get the index of the first character of the run with respect to the given attribute containing the current character.
      int getRunStart​(java.util.Set attributes)
      Get the index of the first character of the run with respect to the given attributes containing the current character.
      char last()
      Sets the position to getEndIndex()-1 (getEndIndex() if the text is empty) and returns the character at that position.
      char next()
      Increments the iterator's index by one, returning the next character.
      char previous()
      Decrements the iterator's index by one and returns the character at the new index.
      void setAttributeArray​(GVTAttributedCharacterIterator.TextAttribute attr, java.lang.Object[] attValues, int beginIndex, int endIndex)
      Sets values of a per-character attribute associated with the content string.
      char setIndex​(int position)
      Sets the position to the specified position in the text.
      void setString​(java.lang.String s)
      Sets this iterator's contents to an unattributed copy of String s.
      void setString​(java.text.AttributedString s)
      Assigns this iterator's contents to be equivalent to AttributedString s.
      • Methods inherited from class java.lang.Object

        equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • GVTACIImpl

        public GVTACIImpl()
        Constructs a new GVTAttributedCharacterIterator with no attributes and a null string.
      • GVTACIImpl

        public GVTACIImpl​(java.text.AttributedCharacterIterator aci)
        Constructs a GVTACIImpl whose contents are equivalent to those of aci. This constructor creates a new copy of the source data in aci.
    • Method Detail

      • setString

        public void setString​(java.lang.String s)
        Sets this iterator's contents to an unattributed copy of String s.
        Specified by:
        setString in interface GVTAttributedCharacterIterator
      • setString

        public void setString​(java.text.AttributedString s)
        Assigns this iterator's contents to be equivalent to AttributedString s.
        Specified by:
        setString in interface GVTAttributedCharacterIterator
      • setAttributeArray

        public void setAttributeArray​(GVTAttributedCharacterIterator.TextAttribute attr,
                                      java.lang.Object[] attValues,
                                      int beginIndex,
                                      int endIndex)
        Sets values of a per-character attribute associated with the content string. Characters from beginIndex to endIndex (zero-offset) are assigned values for attribute key attr from the array attValues. If the length of attValues is less than character span (endIndex-beginIndex) the last value is duplicated; if attValues is longer than the character span the extra values are ignored. Note that if either beginIndex or endIndex are outside the bounds of the current character array they are clipped accordingly.
        Specified by:
        setAttributeArray in interface GVTAttributedCharacterIterator
      • getAllAttributeKeys

        public java.util.Set getAllAttributeKeys()
        Get the keys of all attributes defined on the iterator's text range.
        Specified by:
        getAllAttributeKeys in interface java.text.AttributedCharacterIterator
        Specified by:
        getAllAttributeKeys in interface GVTAttributedCharacterIterator
      • getAttribute

        public java.lang.Object getAttribute​(java.text.AttributedCharacterIterator.Attribute attribute)
        Get the value of the named attribute for the current character.
        Specified by:
        getAttribute in interface java.text.AttributedCharacterIterator
        Specified by:
        getAttribute in interface GVTAttributedCharacterIterator
      • getAttributes

        public java.util.Map getAttributes()
        Returns a map with the attributes defined on the current character.
        Specified by:
        getAttributes in interface java.text.AttributedCharacterIterator
        Specified by:
        getAttributes in interface GVTAttributedCharacterIterator
      • getRunLimit

        public int getRunLimit()
        Get the index of the first character following the run with respect to all attributes containing the current character.
        Specified by:
        getRunLimit in interface java.text.AttributedCharacterIterator
        Specified by:
        getRunLimit in interface GVTAttributedCharacterIterator
      • getRunLimit

        public int getRunLimit​(java.text.AttributedCharacterIterator.Attribute attribute)
        Get the index of the first character following the run with respect to the given attribute containing the current character.
        Specified by:
        getRunLimit in interface java.text.AttributedCharacterIterator
        Specified by:
        getRunLimit in interface GVTAttributedCharacterIterator
      • getRunLimit

        public int getRunLimit​(java.util.Set attributes)
        Get the index of the first character following the run with respect to the given attributes containing the current character.
        Specified by:
        getRunLimit in interface java.text.AttributedCharacterIterator
        Specified by:
        getRunLimit in interface GVTAttributedCharacterIterator
      • getRunStart

        public int getRunStart()
        Get the index of the first character of the run with respect to all attributes containing the current character.
        Specified by:
        getRunStart in interface java.text.AttributedCharacterIterator
        Specified by:
        getRunStart in interface GVTAttributedCharacterIterator
      • getRunStart

        public int getRunStart​(java.text.AttributedCharacterIterator.Attribute attribute)
        Get the index of the first character of the run with respect to the given attribute containing the current character.
        Specified by:
        getRunStart in interface java.text.AttributedCharacterIterator
        Specified by:
        getRunStart in interface GVTAttributedCharacterIterator
        Parameters:
        attribute - The attribute for whose appearance the first offset is requested.
      • getRunStart

        public int getRunStart​(java.util.Set attributes)
        Get the index of the first character of the run with respect to the given attributes containing the current character.
        Specified by:
        getRunStart in interface java.text.AttributedCharacterIterator
        Specified by:
        getRunStart in interface GVTAttributedCharacterIterator
        Parameters:
        attributes - the Set of attributes which begins at the returned index.
      • clone

        public java.lang.Object clone()
        Create a copy of this iterator
        Specified by:
        clone in interface java.text.CharacterIterator
        Specified by:
        clone in interface GVTAttributedCharacterIterator
        Overrides:
        clone in class java.lang.Object
      • current

        public char current()
        Get the character at the current position (as returned by getIndex()).
        Specified by: java.text.CharacterIterator.
        Specified by:
        current in interface java.text.CharacterIterator
        Specified by:
        current in interface GVTAttributedCharacterIterator
      • first

        public char first()
        Sets the position to getBeginIndex().
        Specified by:
        first in interface java.text.CharacterIterator
        Specified by:
        first in interface GVTAttributedCharacterIterator
        Returns:
        the character at the start index of the text.
        Specified by: java.text.CharacterIterator.
      • getBeginIndex

        public int getBeginIndex()
        Get the start index of the text.
        Specified by: java.text.CharacterIterator.
        Specified by:
        getBeginIndex in interface java.text.CharacterIterator
        Specified by:
        getBeginIndex in interface GVTAttributedCharacterIterator
      • getEndIndex

        public int getEndIndex()
        Get the end index of the text.
        Specified by: java.text.CharacterIterator.
        Specified by:
        getEndIndex in interface java.text.CharacterIterator
        Specified by:
        getEndIndex in interface GVTAttributedCharacterIterator
      • getIndex

        public int getIndex()
        Get the current index.
        Specified by: java.text.CharacterIterator.
        Specified by:
        getIndex in interface java.text.CharacterIterator
        Specified by:
        getIndex in interface GVTAttributedCharacterIterator
      • last

        public char last()
        Sets the position to getEndIndex()-1 (getEndIndex() if the text is empty) and returns the character at that position.
        Specified by: java.text.CharacterIterator.
        Specified by:
        last in interface java.text.CharacterIterator
        Specified by:
        last in interface GVTAttributedCharacterIterator
      • next

        public char next()
        Increments the iterator's index by one, returning the next character.
        Specified by:
        next in interface java.text.CharacterIterator
        Specified by:
        next in interface GVTAttributedCharacterIterator
        Returns:
        the character at the new index.
        Specified by: java.text.CharacterIterator.
      • previous

        public char previous()
        Decrements the iterator's index by one and returns the character at the new index.
        Specified by: java.text.CharacterIterator.
        Specified by:
        previous in interface java.text.CharacterIterator
        Specified by:
        previous in interface GVTAttributedCharacterIterator
      • setIndex

        public char setIndex​(int position)
        Sets the position to the specified position in the text.
        Specified by:
        setIndex in interface java.text.CharacterIterator
        Specified by:
        setIndex in interface GVTAttributedCharacterIterator
        Parameters:
        position - The new (current) index into the text.
        Returns:
        the character at new index position.
        Specified by: java.text.CharacterIterator.