Prepare HSSFBorderFormatting for #58138

git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1691075 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Nick Burch 2015-07-14 20:36:10 +00:00
parent 36c3b8d688
commit c806cede90
2 changed files with 52 additions and 81 deletions

View File

@ -19,193 +19,164 @@ package org.apache.poi.hssf.usermodel;
import org.apache.poi.hssf.record.CFRuleBase;
import org.apache.poi.hssf.record.cf.BorderFormatting;
import org.apache.poi.hssf.util.HSSFColor;
/**
* High level representation for Border Formatting component
* of Conditional Formatting settings
*/
public final class HSSFBorderFormatting implements org.apache.poi.ss.usermodel.BorderFormatting
{
public final class HSSFBorderFormatting implements org.apache.poi.ss.usermodel.BorderFormatting {
private final HSSFWorkbook workbook;
private final CFRuleBase cfRuleRecord;
private final BorderFormatting borderFormatting;
protected HSSFBorderFormatting(CFRuleBase cfRuleRecord)
{
protected HSSFBorderFormatting(CFRuleBase cfRuleRecord, HSSFWorkbook workbook) {
this.workbook = workbook;
this.cfRuleRecord = cfRuleRecord;
this.borderFormatting = cfRuleRecord.getBorderFormatting();
}
protected BorderFormatting getBorderFormattingBlock()
{
protected BorderFormatting getBorderFormattingBlock() {
return borderFormatting;
}
public short getBorderBottom()
{
public short getBorderBottom() {
return (short)borderFormatting.getBorderBottom();
}
public short getBorderDiagonal()
{
public short getBorderDiagonal() {
return (short)borderFormatting.getBorderDiagonal();
}
public short getBorderLeft()
{
public short getBorderLeft() {
return (short)borderFormatting.getBorderLeft();
}
public short getBorderRight()
{
public short getBorderRight() {
return (short)borderFormatting.getBorderRight();
}
public short getBorderTop()
{
public short getBorderTop() {
return (short)borderFormatting.getBorderTop();
}
public short getBottomBorderColor()
{
public short getBottomBorderColor() {
return (short)borderFormatting.getBottomBorderColor();
}
public HSSFColor getBottomBorderColorColor() {
return workbook.getCustomPalette().getColor(
borderFormatting.getBottomBorderColor()
);
}
public short getDiagonalBorderColor()
{
public short getDiagonalBorderColor() {
return (short)borderFormatting.getDiagonalBorderColor();
}
public short getLeftBorderColor()
{
public short getLeftBorderColor() {
return (short)borderFormatting.getLeftBorderColor();
}
public short getRightBorderColor()
{
public short getRightBorderColor() {
return (short)borderFormatting.getRightBorderColor();
}
public short getTopBorderColor()
{
public short getTopBorderColor() {
return (short)borderFormatting.getTopBorderColor();
}
public boolean isBackwardDiagonalOn()
{
public boolean isBackwardDiagonalOn() {
return borderFormatting.isBackwardDiagonalOn();
}
public boolean isForwardDiagonalOn()
{
public boolean isForwardDiagonalOn() {
return borderFormatting.isForwardDiagonalOn();
}
public void setBackwardDiagonalOn(boolean on)
{
public void setBackwardDiagonalOn(boolean on) {
borderFormatting.setBackwardDiagonalOn(on);
if( on )
{
if( on ) {
cfRuleRecord.setTopLeftBottomRightBorderModified(on);
}
}
public void setBorderBottom(short border)
{
public void setBorderBottom(short border) {
borderFormatting.setBorderBottom(border);
if( border != 0)
{
if( border != 0) {
cfRuleRecord.setBottomBorderModified(true);
} else {
cfRuleRecord.setBottomBorderModified(false);
}
}
public void setBorderDiagonal(short border)
{
public void setBorderDiagonal(short border) {
borderFormatting.setBorderDiagonal(border);
if( border != 0)
{
if( border != 0) {
cfRuleRecord.setBottomLeftTopRightBorderModified(true);
cfRuleRecord.setTopLeftBottomRightBorderModified(true);
}
}
public void setBorderLeft(short border)
{
public void setBorderLeft(short border) {
borderFormatting.setBorderLeft(border);
if( border != 0)
{
if( border != 0) {
cfRuleRecord.setLeftBorderModified(true);
}
}
public void setBorderRight(short border)
{
public void setBorderRight(short border) {
borderFormatting.setBorderRight(border);
if( border != 0)
{
if( border != 0) {
cfRuleRecord.setRightBorderModified(true);
}
}
public void setBorderTop(short border)
{
public void setBorderTop(short border) {
borderFormatting.setBorderTop(border);
if( border != 0)
{
if( border != 0) {
cfRuleRecord.setTopBorderModified(true);
}
}
public void setBottomBorderColor(short color)
{
public void setBottomBorderColor(short color) {
borderFormatting.setBottomBorderColor(color);
if( color != 0)
{
if( color != 0) {
cfRuleRecord.setBottomBorderModified(true);
}
}
public void setDiagonalBorderColor(short color)
{
public void setDiagonalBorderColor(short color) {
borderFormatting.setDiagonalBorderColor(color);
if( color != 0)
{
if( color != 0) {
cfRuleRecord.setBottomLeftTopRightBorderModified(true);
cfRuleRecord.setTopLeftBottomRightBorderModified(true);
}
}
public void setForwardDiagonalOn(boolean on)
{
public void setForwardDiagonalOn(boolean on) {
borderFormatting.setForwardDiagonalOn(on);
if( on )
{
if( on ) {
cfRuleRecord.setBottomLeftTopRightBorderModified(on);
}
}
public void setLeftBorderColor(short color)
{
public void setLeftBorderColor(short color) {
borderFormatting.setLeftBorderColor(color);
if( color != 0)
{
if( color != 0) {
cfRuleRecord.setLeftBorderModified(true);
}
}
public void setRightBorderColor(short color)
{
public void setRightBorderColor(short color) {
borderFormatting.setRightBorderColor(color);
if( color != 0)
{
if( color != 0) {
cfRuleRecord.setRightBorderModified(true);
}
}
public void setTopBorderColor(short color)
{
public void setTopBorderColor(short color) {
borderFormatting.setTopBorderColor(color);
if( color != 0)
{
if( color != 0) {
cfRuleRecord.setTopBorderModified(true);
}
}

View File

@ -99,13 +99,13 @@ public final class HSSFConditionalFormattingRule implements ConditionalFormattin
if ( borderFormatting != null)
{
cfRuleRecord.setBorderFormatting(borderFormatting);
return new HSSFBorderFormatting(cfRuleRecord);
return new HSSFBorderFormatting(cfRuleRecord, workbook);
}
else if( create )
{
borderFormatting = new BorderFormatting();
cfRuleRecord.setBorderFormatting(borderFormatting);
return new HSSFBorderFormatting(cfRuleRecord);
return new HSSFBorderFormatting(cfRuleRecord, workbook);
}
else
{