Implementation of XSSFRow#{get,set}Height and other methods.
Patch contributed by Paolo Mottadelli <paolo.moz@gmail.com>. git-svn-id: https://svn.apache.org/repos/asf/poi/branches/ooxml@614205 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
bd8185c485
commit
9db93d7661
@ -124,13 +124,17 @@ public class XSSFRow implements Row {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public short getHeight() {
|
public short getHeight() {
|
||||||
// TODO Auto-generated method stub
|
if (this.row.getHt() > 0) {
|
||||||
return 0;
|
return (short) (this.row.getHt() * 20);
|
||||||
|
}
|
||||||
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
public float getHeightInPoints() {
|
public float getHeightInPoints() {
|
||||||
// TODO Auto-generated method stub
|
if (this.row.getHt() > 0) {
|
||||||
return 0;
|
return (short) this.row.getHt();
|
||||||
|
}
|
||||||
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
public short getLastCellNum() {
|
public short getLastCellNum() {
|
||||||
@ -159,8 +163,7 @@ public class XSSFRow implements Row {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public boolean getZeroHeight() {
|
public boolean getZeroHeight() {
|
||||||
// TODO Auto-generated method stub
|
return this.row.getHidden();
|
||||||
return false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void removeCell(Cell cell) {
|
public void removeCell(Cell cell) {
|
||||||
@ -177,13 +180,11 @@ public class XSSFRow implements Row {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void setHeight(short height) {
|
public void setHeight(short height) {
|
||||||
// TODO Auto-generated method stub
|
this.row.setHt((double) height / 20);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setHeightInPoints(float height) {
|
public void setHeightInPoints(float height) {
|
||||||
// TODO Auto-generated method stub
|
this.row.setHt((double) height);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setRowNum(int rowNum) {
|
public void setRowNum(int rowNum) {
|
||||||
@ -192,7 +193,7 @@ public class XSSFRow implements Row {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void setZeroHeight(boolean height) {
|
public void setZeroHeight(boolean height) {
|
||||||
// TODO Auto-generated method stub
|
this.row.setHidden(height);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -65,20 +65,20 @@ public class XSSFSheet implements Sheet {
|
|||||||
CTSelection selection = view.addNewSelection();
|
CTSelection selection = view.addNewSelection();
|
||||||
selection.setActiveCell("A1");
|
selection.setActiveCell("A1");
|
||||||
CTSheetFormatPr format = this.worksheet.addNewSheetFormatPr();
|
CTSheetFormatPr format = this.worksheet.addNewSheetFormatPr();
|
||||||
format.setDefaultColWidth(13.2307692307692);
|
format.setDefaultColWidth(13);
|
||||||
format.setDefaultRowHeight(13);
|
format.setDefaultRowHeight(15);
|
||||||
format.setCustomHeight(true);
|
format.setCustomHeight(true);
|
||||||
CTCols cols = this.worksheet.addNewCols();
|
CTCols cols = this.worksheet.addNewCols();
|
||||||
CTCol col = cols.addNewCol();
|
CTCol col = cols.addNewCol();
|
||||||
col.setMin(1);
|
col.setMin(1);
|
||||||
col.setMax(2);
|
col.setMax(2);
|
||||||
col.setWidth(13.2307692307692);
|
col.setWidth(13);
|
||||||
col.setCustomWidth(true);
|
col.setCustomWidth(true);
|
||||||
for (int i = 3 ; i < 5 ; ++i) {
|
for (int i = 3 ; i < 5 ; ++i) {
|
||||||
col = cols.addNewCol();
|
col = cols.addNewCol();
|
||||||
col.setMin(i);
|
col.setMin(i);
|
||||||
col.setMax(i);
|
col.setMax(i);
|
||||||
col.setWidth(13.2307692307692);
|
col.setWidth(13);
|
||||||
col.setCustomWidth(true);
|
col.setCustomWidth(true);
|
||||||
}
|
}
|
||||||
CTHeaderFooter hf = this.worksheet.addNewHeaderFooter();
|
CTHeaderFooter hf = this.worksheet.addNewHeaderFooter();
|
||||||
@ -185,18 +185,15 @@ public class XSSFSheet implements Sheet {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public short getDefaultColumnWidth() {
|
public short getDefaultColumnWidth() {
|
||||||
// TODO Auto-generated method stub
|
return (short) this.worksheet.getSheetFormatPr().getDefaultColWidth();
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public short getDefaultRowHeight() {
|
public short getDefaultRowHeight() {
|
||||||
// TODO Auto-generated method stub
|
return (short) (this.worksheet.getSheetFormatPr().getDefaultRowHeight() * 20);
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public float getDefaultRowHeightInPoints() {
|
public float getDefaultRowHeightInPoints() {
|
||||||
// TODO Auto-generated method stub
|
return (short) this.worksheet.getSheetFormatPr().getDefaultRowHeight();
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean getDialog() {
|
public boolean getDialog() {
|
||||||
@ -440,7 +437,6 @@ public class XSSFSheet implements Sheet {
|
|||||||
|
|
||||||
public void setColumnWidth(short column, short width) {
|
public void setColumnWidth(short column, short width) {
|
||||||
// TODO Auto-generated method stub
|
// TODO Auto-generated method stub
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDefaultColumnStyle(short column, CellStyle style) {
|
public void setDefaultColumnStyle(short column, CellStyle style) {
|
||||||
@ -449,17 +445,16 @@ public class XSSFSheet implements Sheet {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void setDefaultColumnWidth(short width) {
|
public void setDefaultColumnWidth(short width) {
|
||||||
// TODO Auto-generated method stub
|
this.worksheet.getSheetFormatPr().setDefaultColWidth((double) width);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDefaultRowHeight(short height) {
|
public void setDefaultRowHeight(short height) {
|
||||||
// TODO Auto-generated method stub
|
this.worksheet.getSheetFormatPr().setDefaultRowHeight(height / 20);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
public void setDefaultRowHeightInPoints(float height) {
|
public void setDefaultRowHeightInPoints(float height) {
|
||||||
// TODO Auto-generated method stub
|
this.worksheet.getSheetFormatPr().setDefaultRowHeight(height);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -141,6 +141,28 @@ public class TestXSSFRow extends TestCase {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void testGetSetHeight() throws Exception {
|
||||||
|
XSSFRow row = getSampleRow();
|
||||||
|
// I assume that "ht" attribute value is in 'points', please verify that
|
||||||
|
// Test that no rowHeight is set
|
||||||
|
assertEquals((short) -1, row.getHeight());
|
||||||
|
// Set a rowHeight in twips (1/20th of a point) and test the new value
|
||||||
|
row.setHeight((short) 240);
|
||||||
|
assertEquals((short) 240, row.getHeight());
|
||||||
|
assertEquals((float) 12, row.getHeightInPoints());
|
||||||
|
// Set a new rowHeight in points and test the new value
|
||||||
|
row.setHeightInPoints((float) 13);
|
||||||
|
assertEquals((float) 13, row.getHeightInPoints());
|
||||||
|
assertEquals((short) 260, row.getHeight());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testGetSetZeroHeight() throws Exception {
|
||||||
|
XSSFRow row = getSampleRow();
|
||||||
|
assertFalse(row.getZeroHeight());
|
||||||
|
row.setZeroHeight(true);
|
||||||
|
assertTrue(row.getZeroHeight());
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Method that returns a row with some sample cells
|
* Method that returns a row with some sample cells
|
||||||
* @return row
|
* @return row
|
||||||
|
@ -86,8 +86,29 @@ public class TestXSSFSheet extends TestCase {
|
|||||||
Row row2_overwritten_copy = it2.next();
|
Row row2_overwritten_copy = it2.next();
|
||||||
assertEquals(row2_ovrewritten, row2_overwritten_copy);
|
assertEquals(row2_ovrewritten, row2_overwritten_copy);
|
||||||
assertEquals(row2_overwritten_copy.getCell((short) 0).getNumericCellValue(), (double) 100);
|
assertEquals(row2_overwritten_copy.getCell((short) 0).getNumericCellValue(), (double) 100);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testGetSetDefaultRowHeight() throws Exception {
|
||||||
|
XSSFWorkbook workbook = new XSSFWorkbook();
|
||||||
|
Sheet sheet = workbook.createSheet("Sheet 1");
|
||||||
|
// Test that default height set by the constructor
|
||||||
|
assertEquals((short) 300, sheet.getDefaultRowHeight());
|
||||||
|
assertEquals((float) 15, sheet.getDefaultRowHeightInPoints());
|
||||||
|
// Set a new default row height in twips and test getting the value in points
|
||||||
|
sheet.setDefaultRowHeight((short) 360);
|
||||||
|
assertEquals((float) 18, sheet.getDefaultRowHeightInPoints());
|
||||||
|
// Set a new default row height in points and test getting the value in twips
|
||||||
|
sheet.setDefaultRowHeightInPoints((short) 17);
|
||||||
|
assertEquals((short) 340, sheet.getDefaultRowHeight());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void testGetSetDefaultColumnWidth() throws Exception {
|
||||||
|
XSSFWorkbook workbook = new XSSFWorkbook();
|
||||||
|
Sheet sheet = workbook.createSheet("Sheet 1");
|
||||||
|
// Test that default column width set by the constructor
|
||||||
|
assertEquals((short) 13, sheet.getDefaultColumnWidth());
|
||||||
|
// Set a new default column width and get its value
|
||||||
|
sheet.setDefaultColumnWidth((short) 14);
|
||||||
|
assertEquals((short) 14, sheet.getDefaultColumnWidth());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user