Class BitMaskTextProp

  • All Implemented Interfaces:
    org.apache.poi.common.Duplicatable, GenericRecord
    Direct Known Subclasses:
    CharFlagsTextProp, ParagraphFlagsTextProp, WrapFlagsTextProp

    public abstract class BitMaskTextProp
    extends TextProp
    Definition of a special kind of property of some text, or its paragraph. For these properties, a flag in the "contains" header field tells you the data property family will exist. The value of the property is itself a mask, encoding several different (but related) properties
    • Method Detail

      • getSubPropNames

        public java.lang.String[] getSubPropNames()
        Fetch the list of the names of the sub properties
      • getSubPropMatches

        public boolean[] getSubPropMatches()
        Fetch the list of if the sub properties match or not
      • getWriteMask

        public int getWriteMask()
        Calculate mask from the subPropMatches.
        Overrides:
        getWriteMask in class TextProp
      • setWriteMask

        public void setWriteMask​(int writeMask)
        Sets the write mask, i.e. which defines the text properties to be considered
        Parameters:
        writeMask - the mask, bit values outside the property mask range will be ignored
      • getValue

        public int getValue()
        Return the text property value. Clears all bits of the value, which are marked as unset.
        Overrides:
        getValue in class TextProp
        Returns:
        the text property value.
      • setValue

        public void setValue​(int val)
        Set the value of the text property, and recompute the sub properties based on it, i.e. all unset subvalues will be cleared. Use setSubValue(boolean, int) to explicitly set subvalues to false.
        Overrides:
        setValue in class TextProp
      • setValueWithMask

        public void setValueWithMask​(int val,
                                     int writeMask)
        Convenience method to set a value with mask, without splitting it into the subvalues
      • getSubValue

        public boolean getSubValue​(int idx)
        Fetch the true/false status of the subproperty with the given index
      • setSubValue

        public void setSubValue​(boolean value,
                                int idx)
        Set the true/false status of the subproperty with the given index
      • cloneAll

        public BitMaskTextProp cloneAll()
        Returns:
        an identical copy of this, i.e. also the subPropMatches are copied
      • copy

        public abstract BitMaskTextProp copy()
        Description copied from class: TextProp
        Clone, eg when you want to actually make use of one of these.
        Specified by:
        copy in interface org.apache.poi.common.Duplicatable
        Overrides:
        copy in class TextProp