package jxl.write.biff; import jxl.biff.IntegerHelper; import jxl.biff.Type; import jxl.biff.WritableRecordData; class PaneRecord extends WritableRecordData { private int rowsVisible; private int columnsVisible; private static final int topLeftPane = 3; private static final int bottomLeftPane = 2; private static final int topRightPane = 1; private static final int bottomRightPane = 0; public PaneRecord(int cols, int rows) { super(Type.PANE); this.rowsVisible = rows; this.columnsVisible = cols; } public byte[] getData() { byte[] data = new byte[10]; IntegerHelper.getTwoBytes(this.columnsVisible, data, 0); IntegerHelper.getTwoBytes(this.rowsVisible, data, 2); if (this.rowsVisible > 0) IntegerHelper.getTwoBytes(this.rowsVisible, data, 4); if (this.columnsVisible > 0) IntegerHelper.getTwoBytes(this.columnsVisible, data, 6); int activePane = 3; if (this.rowsVisible > 0 && this.columnsVisible == 0) { activePane = 2; } else if (this.rowsVisible == 0 && this.columnsVisible > 0) { activePane = 1; } else if (this.rowsVisible > 0 && this.columnsVisible > 0) { activePane = 0; } IntegerHelper.getTwoBytes(activePane, data, 8); return data; } }