Class TextPropCollection

java.lang.Object
org.apache.poi.hslf.model.textproperties.TextPropCollection
All Implemented Interfaces:
org.apache.poi.common.Duplicatable, GenericRecord

public class TextPropCollection extends Object implements GenericRecord, org.apache.poi.common.Duplicatable
For a given run of characters, holds the properties (which could be paragraph properties or character properties). Used to hold the number of characters affected, the list of active properties, and the indent level if required.
  • Constructor Details

    • TextPropCollection

      public TextPropCollection(int charactersCovered, TextPropCollection.TextPropType textPropType)
      Create a new collection of text properties (be they paragraph or character) which will be groked via a subsequent call to buildTextPropList().
    • TextPropCollection

      public TextPropCollection(TextPropCollection other)
  • Method Details

    • getSpecialMask

      public int getSpecialMask()
    • getCharactersCovered

      public int getCharactersCovered()
      Fetch the number of characters this styling applies to
    • getTextPropList

      public List<TextProp> getTextPropList()
      Fetch the TextProps that define this styling in the record order
    • findByName

      public final <T extends TextProp> T findByName(String textPropName)
      Fetch the TextProp with this name, or null if it isn't present
    • removeByName

      public final <T extends TextProp> T removeByName(String name)
    • getTextPropType

      public final TextPropCollection.TextPropType getTextPropType()
    • addWithName

      public final <T extends TextProp> T addWithName(String name)
      Add the TextProp with this name to the list
    • addProp

      public final void addProp(TextProp textProp)
      Add the property at the correct position. Replaces an existing property with the same name.
      Parameters:
      textProp - the property to be added
    • buildTextPropList

      public int buildTextPropList(int containsField, byte[] data, int dataOffset)
      For an existing set of text properties, build the list of properties coded for in a given run of properties.
      Returns:
      the number of bytes that were used encoding the properties list
    • copy

      public TextPropCollection copy()
      Clones the given text properties
      Specified by:
      copy in interface org.apache.poi.common.Duplicatable
    • updateTextSize

      public void updateTextSize(int textSize)
      Update the size of the text that this set of properties applies to
    • writeOut

      public void writeOut(OutputStream o) throws IOException
      Writes out to disk the header, and then all the properties
      Throws:
      IOException
    • writeOut

      public void writeOut(OutputStream o, boolean isMasterStyle) throws IOException
      Writes out to disk the header, and then all the properties
      Throws:
      IOException
    • getIndentLevel

      public short getIndentLevel()
    • setIndentLevel

      public void setIndentLevel(short indentLevel)
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • equals

      public boolean equals(Object other)
      compares most properties apart of the covered characters length
      Overrides:
      equals in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getGenericProperties

      public Map<String,Supplier<?>> getGenericProperties()
      Specified by:
      getGenericProperties in interface GenericRecord