first commit
This commit is contained in:
51
hrmsEjb/jxl/biff/DValParser.java
Normal file
51
hrmsEjb/jxl/biff/DValParser.java
Normal file
@@ -0,0 +1,51 @@
|
||||
package jxl.biff;
|
||||
|
||||
import common.Logger;
|
||||
|
||||
public class DValParser {
|
||||
private static Logger logger = Logger.getLogger(DValParser.class);
|
||||
|
||||
private static int PROMPT_BOX_VISIBLE_MASK = 1;
|
||||
|
||||
private static int PROMPT_BOX_AT_CELL_MASK = 2;
|
||||
|
||||
private static int VALIDITY_DATA_CACHED_MASK = 4;
|
||||
|
||||
private boolean promptBoxVisible;
|
||||
|
||||
private boolean promptBoxAtCell;
|
||||
|
||||
private boolean validityDataCached;
|
||||
|
||||
private int numDVRecords;
|
||||
|
||||
public DValParser(byte[] data) {
|
||||
int options = IntegerHelper.getInt(data[0], data[1]);
|
||||
this.promptBoxVisible = ((options & PROMPT_BOX_VISIBLE_MASK) != 0);
|
||||
this.promptBoxAtCell = ((options & PROMPT_BOX_AT_CELL_MASK) != 0);
|
||||
this.validityDataCached = ((options & VALIDITY_DATA_CACHED_MASK) != 0);
|
||||
this.numDVRecords = IntegerHelper.getInt(data[14], data[15], data[16], data[17]);
|
||||
}
|
||||
|
||||
public byte[] getData() {
|
||||
byte[] data = new byte[18];
|
||||
int options = 0;
|
||||
if (this.promptBoxVisible)
|
||||
options |= PROMPT_BOX_VISIBLE_MASK;
|
||||
if (this.promptBoxAtCell)
|
||||
options |= PROMPT_BOX_AT_CELL_MASK;
|
||||
if (this.validityDataCached)
|
||||
options |= VALIDITY_DATA_CACHED_MASK;
|
||||
IntegerHelper.getFourBytes(-1, data, 10);
|
||||
IntegerHelper.getFourBytes(this.numDVRecords, data, 14);
|
||||
return data;
|
||||
}
|
||||
|
||||
public void dvRemoved() {
|
||||
this.numDVRecords--;
|
||||
}
|
||||
|
||||
public int getNumberOfDVRecords() {
|
||||
return this.numDVRecords;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user