org.apache.poi.hslf.model.textproperties
Class BitMaskTextProp

java.lang.Object
  extended by org.apache.poi.hslf.model.textproperties.TextProp
      extended by org.apache.poi.hslf.model.textproperties.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


Field Summary
protected static POILogger logger
           
 
Constructor Summary
protected BitMaskTextProp(int sizeOfDataBlock, int maskInHeader, java.lang.String overallName, java.lang.String... subPropNames)
           
 
Method Summary
 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 org.apache.poi.hslf.model.textproperties.TextProp
equals, getMask, getName, getSize, hashCode, toString
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

logger

protected static final POILogger logger
Constructor Detail

BitMaskTextProp

protected BitMaskTextProp(int sizeOfDataBlock,
                          int maskInHeader,
                          java.lang.String overallName,
                          java.lang.String... subPropNames)
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

cloneAll

public BitMaskTextProp cloneAll()


Copyright 2017 The Apache Software Foundation or its licensors, as applicable.