/**
* Set the cell's number within the row (0 based).
* @param num short the cell number
- * @deprecated Doesn't update the row's idea of what cell this is, use {@link HSSFRow#moveCell(HSSFCell, short)} instead
+ * @deprecated (Jan 2008) Doesn't update the row's idea of what cell this is, use {@link HSSFRow#moveCell(HSSFCell, short)} instead
*/
public void setCellNum(short num)
{
}
/**
- * get the cell's number within the row
- * @return short reperesenting the column number (logical!)
+ * @deprecated (Oct 2008) use {@link #getColumnIndex()}
*/
-
- public short getCellNum()
- {
- return record.getColumn();
+ public short getCellNum() {
+ return (short) getColumnIndex();
+ }
+
+ public int getColumnIndex() {
+ return record.getColumn() & 0xFFFF;
}
/**
return _cell.getCellType();
}
public int getColumnIndex() {
- return _cell.getCellNum();
+ return _cell.getColumnIndex();
}
public int getErrorCellValue() {
return _cell.getErrorCellValue();
}
private void removeCell(HSSFCell cell, boolean alsoRemoveRecords) {
- short column=cell.getCellNum();
+ int column=cell.getColumnIndex();
if(column < 0) {
throw new RuntimeException("Negative cell indexes not allowed");
}
sheet.getSheet().removeValueRecord(getRowNum(), cval);
}
- if (cell.getCellNum()+1 == row.getLastCol()) {
+ if (cell.getColumnIndex()+1 == row.getLastCol()) {
row.setLastCol((short) (findLastCell(row.getLastCol())+1));
}
- if (cell.getCellNum() == row.getFirstCol()) {
+ if (cell.getColumnIndex() == row.getFirstCol()) {
row.setFirstCol(findFirstCell(row.getFirstCol()));
}
}
}
// Check it's one of ours
- if(! cells[cell.getCellNum()].equals(cell)) {
+ if(! cells[cell.getColumnIndex()].equals(cell)) {
throw new IllegalArgumentException("Asked to move a cell, but it didn't belong to our row");
}
*/
private void addCell(HSSFCell cell) {
- short column=cell.getCellNum();
+ int column=cell.getColumnIndex();
// re-allocate cells array as required.
if(column>=cells.length) {
HSSFCell[] oldCells=cells;
// fix up firstCol and lastCol indexes
if (row.getFirstCol() == -1 || column < row.getFirstCol()) {
- row.setFirstCol(column);
+ row.setFirstCol((short)column);
}
if (row.getLastCol() == -1 || column >= row.getLastCol()) {
int getCellType();
+ /**
+ * @deprecated (Oct 2008) use {@link #getColumnIndex()}
+ */
short getCellNum();
+
+ /**
+ * @return the cell's column index (zero based)
+ */
+ int getColumnIndex();
int getRowIndex();
String getCellFormula();
void setCellNum(short num);
/**
- * get the cell's number within the row
- * @return short reperesenting the column number (logical!)
+ * @deprecated (Oct 2008) use {@link #getColumnIndex()}
*/
-
short getCellNum();
+
+ /**
+ * @return the cell's column index (zero based)
+ */
+ int getColumnIndex();
int getRowIndex();
return this.cell.getF().getStringValue();
}
+ /**
+ * @deprecated use {@link #getColumnIndex()}
+ */
public short getCellNum() {
- return (short)this.cellNum;
+ return (short)getColumnIndex();
+ }
+ public int getColumnIndex() {
+ return this.cellNum;
}
public int getRowIndex() {
return row.getRowNum();
}
- private static String formatTestCaseDetails(String sheetName, int rowNum, HSSFCell c) {
+ private static String formatTestCaseDetails(String sheetName, int rowIndex, HSSFCell c) {
StringBuffer sb = new StringBuffer();
- CellReference cr = new CellReference(sheetName, rowNum, c.getCellNum(), false, false);
+ CellReference cr = new CellReference(sheetName, rowIndex, c.getColumnIndex(), false, false);
sb.append(cr.formatAsString());
sb.append(" {=").append(c.getCellFormula()).append("}");
return sb.toString();
}
- private static String formatTestCaseDetails(String sheetName, int rowNum, HSSFCell c, String currentGroupComment,
+ private static String formatTestCaseDetails(String sheetName, int rowIndex, HSSFCell c, String currentGroupComment,
String rowComment) {
StringBuffer sb = new StringBuffer();
- CellReference cr = new CellReference(sheetName, rowNum, c.getCellNum(), false, false);
+ CellReference cr = new CellReference(sheetName, rowIndex, c.getColumnIndex(), false, false);
sb.append(cr.formatAsString());
sb.append(" {=").append(c.getCellFormula()).append("}");
FormulaRecord r = record.getFormulaRecord();
Ptg[] ptgs = r.getParsedExpression();
- String cellRef = new CellReference(row.getRowNum(), cell.getCellNum(), false, false).formatAsString();
+ String cellRef = new CellReference(row.getRowNum(), cell.getColumnIndex(), false, false).formatAsString();
if(false && cellRef.equals("BP24")) { // TODO - replace System.out.println()s with asserts
System.out.print(cellRef);
System.out.println(" - has " + ptgs.length + " ptgs:");
int cellNum = 0;
for (Iterator it2 = row.cellIterator(); it2.hasNext(); cellNum++) {
HSSFCell cell = (HSSFCell)it2.next();
- assertEquals(cellNum, cell.getCellNum());
+ assertEquals(cellNum, cell.getColumnIndex());
}
}
}
assertFalse("cells in the second column have not empyy notes",
"".equals(comment.getString().getString()));
assertEquals(rownum, comment.getRow());
- assertEquals(cell.getCellNum(), comment.getColumn());
+ assertEquals(cell.getColumnIndex(), comment.getColumn());
}
}
import junit.framework.TestCase;
import org.apache.poi.hssf.HSSFTestDataSamples;
-import org.apache.poi.ss.usermodel.Row.MissingCellPolicy;
/**
* Test HSSFRow is okay.
assertNull(row.getCell(1));
assertNotNull(row.getCell(5));
- assertEquals(5, cellB2.getCellNum());
+ assertEquals(5, cellB2.getColumnIndex());
assertEquals(2, row.getFirstCellNum());
assertEquals(6, row.getLastCellNum());
}
assertEquals(HSSFCell.CELL_TYPE_NUMERIC, row.getCell(5, HSSFRow.CREATE_NULL_AS_BLANK).getCellType());
// Check created ones get the right column
- assertEquals((short)0, row.getCell(0, HSSFRow.CREATE_NULL_AS_BLANK).getCellNum());
- assertEquals((short)1, row.getCell(1, HSSFRow.CREATE_NULL_AS_BLANK).getCellNum());
- assertEquals((short)2, row.getCell(2, HSSFRow.CREATE_NULL_AS_BLANK).getCellNum());
- assertEquals((short)3, row.getCell(3, HSSFRow.CREATE_NULL_AS_BLANK).getCellNum());
- assertEquals((short)4, row.getCell(4, HSSFRow.CREATE_NULL_AS_BLANK).getCellNum());
- assertEquals((short)5, row.getCell(5, HSSFRow.CREATE_NULL_AS_BLANK).getCellNum());
+ assertEquals(0, row.getCell(0, HSSFRow.CREATE_NULL_AS_BLANK).getColumnIndex());
+ assertEquals(1, row.getCell(1, HSSFRow.CREATE_NULL_AS_BLANK).getColumnIndex());
+ assertEquals(2, row.getCell(2, HSSFRow.CREATE_NULL_AS_BLANK).getColumnIndex());
+ assertEquals(3, row.getCell(3, HSSFRow.CREATE_NULL_AS_BLANK).getColumnIndex());
+ assertEquals(4, row.getCell(4, HSSFRow.CREATE_NULL_AS_BLANK).getColumnIndex());
+ assertEquals(5, row.getCell(5, HSSFRow.CREATE_NULL_AS_BLANK).getColumnIndex());
// Now change the cell policy on the workbook, check