Class BitMaskTextProp

  • All Implemented Interfaces:
    java.lang.Cloneable
    Direct Known Subclasses:
    CharFlagsTextProp, ParagraphFlagsTextProp, WrapFlagsTextProp

    public abstract class BitMaskTextProp
    extends TextProp
    implements java.lang.Cloneable
    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 Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      BitMaskTextProp clone()
      Clone, eg when you want to actually make use of one of these.
      BitMaskTextProp cloneAll()  
      boolean[] getSubPropMatches()
      Fetch the list of if the sub properties match or not
      java.lang.String[] getSubPropNames()
      Fetch the list of the names of the sub properties
      boolean getSubValue​(int idx)
      Fetch the true/false status of the subproperty with the given index
      int getValue()
      Return the text property value.
      int getWriteMask()
      Calculate mask from the subPropMatches.
      void setSubValue​(boolean value, int idx)
      Set the true/false status of the subproperty with the given index
      void setValue​(int val)
      Set the value of the text property, and recompute the sub properties based on it, i.e.
      void setValueWithMask​(int val, int writeMask)
      Convenience method to set a value with mask, without splitting it into the subvalues
      void setWriteMask​(int writeMask)
      Sets the write mask, i.e.
      • Methods inherited from class java.lang.Object

        getClass, notify, notifyAll, wait, wait, wait
    • 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
        Parameters:
        val -
        writeMask -
      • 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
      • clone

        public BitMaskTextProp clone()
        Description copied from class: TextProp
        Clone, eg when you want to actually make use of one of these.
        Overrides:
        clone in class TextProp