jxl.biff.ConditionalFormat 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) 2007 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.biff;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Iterator;
import jxl.WorkbookSettings;
import jxl.biff.formula.ExternalSheet;
import jxl.write.biff.File;
/**
* Class containing the CONDFMT and CF records for conditionally formatting
* a cell
*/
public class ConditionalFormat
{
/**
* The range of the format
*/
private ConditionalFormatRangeRecord range;
/**
* The format conditions
*/
private ArrayList conditions;
/**
* Constructor
*/
public ConditionalFormat(ConditionalFormatRangeRecord cfrr)
{
range = cfrr;
conditions = new ArrayList();
}
/**
* Adds a condition
*
* @param cond the condition
*/
public void addCondition(ConditionalFormatRecord cond)
{
conditions.add(cond);
}
/**
* Inserts a blank column into this spreadsheet. If the column is out of
* range of the columns in the sheet, then no action is taken
*
* @param col the column to insert
*/
public void insertColumn(int col)
{
range.insertColumn(col);
}
/**
* Removes a column from this spreadsheet. If the column is out of range
* of the columns in the sheet, then no action is taken
*
* @param col the column to remove
*/
public void removeColumn(int col)
{
range.removeColumn(col);
}
/**
* Removes a row from this spreadsheet. If the row is out of
* range of the columns in the sheet, then no action is taken
*
* @param row the row to remove
*/
public void removeRow(int row)
{
range.removeRow(row);
}
/**
* Inserts a blank row into this spreadsheet. If the row is out of range
* of the rows in the sheet, then no action is taken
*
* @param row the row to insert
*/
public void insertRow(int row)
{
range.insertRow(row);
}
/**
* Writes out the data validation
*
* @exception IOException
* @param outputFile the output file
*/
public void write(File outputFile) throws IOException
{
outputFile.write(range);
for (Iterator i = conditions.iterator(); i.hasNext();)
{
ConditionalFormatRecord cfr = (ConditionalFormatRecord) i.next();
outputFile.write(cfr);
}
}
}