jxl.read.biff.ColumnInfoRecord Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jxl Show documentation
Show all versions of jxl Show documentation
JExcelApi is a java library which provides the ability to read, write, and modify Microsoft Excel spreadsheets.
The newest version!
/*********************************************************************
*
* Copyright (C) 2002 Andrew Khan
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
***************************************************************************/
package jxl.read.biff;
import jxl.biff.IntegerHelper;
import jxl.biff.RecordData;
import jxl.biff.Type;
/**
* Contains the display info data which affects the entire columns
*/
public class ColumnInfoRecord extends RecordData
{
/**
* The raw data
*/
private byte[] data;
/**
* The start for which to apply the format information
*/
private int startColumn;
/**
* The end column for which to apply the format information
*/
private int endColumn;
/**
* The index to the XF record, which applies to each cell in this column
*/
private int xfIndex;
/**
* The width of the column in 1/256 of a character
*/
private int width;
/**
* A hidden flag
*/
private boolean hidden;
/**
* The column's outline level
*/
private int outlineLevel;
/**
* The column collapsed flag
*/
private boolean collapsed;
/**
* Constructor which creates this object from the binary data
*
* @param t the record
*/
ColumnInfoRecord(Record t)
{
super(Type.COLINFO);
data = t.getData();
startColumn = IntegerHelper.getInt(data[0], data[1]);
endColumn = IntegerHelper.getInt(data[2], data[3]);
width = IntegerHelper.getInt(data[4], data[5]);
xfIndex = IntegerHelper.getInt(data[6], data[7]);
int options = IntegerHelper.getInt(data[8], data[9]);
hidden = ((options & 0x1) != 0);
outlineLevel = ((options & 0x700) >> 8);
collapsed = ((options & 0x1000) != 0);
}
/**
* Accessor for the start column of this range
*
* @return the start column index
*/
public int getStartColumn()
{
return startColumn;
}
/**
* Accessor for the end column of this range
*
* @return the end column index
*/
public int getEndColumn()
{
return endColumn;
}
/**
* Accessor for the column format index
*
* @return the format index
*/
public int getXFIndex()
{
return xfIndex;
}
/**
* Accessor for the column's outline level
*
* @return the column's outline level
*/
public int getOutlineLevel()
{
return outlineLevel;
}
/**
* Accessor for whether the column is collapsed
*
* @return the column's collapsed state
*/
public boolean getCollapsed()
{
return collapsed;
}
/**
* Accessor for the width of the column
*
* @return the width
*/
public int getWidth()
{
return width;
}
/**
* Accessor for the hidden flag. Used when copying sheets
*
* @return TRUE if the columns are hidden, FALSE otherwise
*/
public boolean getHidden()
{
return hidden;
}
}