From 11bea18184816147e86e43f3b90149d675f6b3ab Mon Sep 17 00:00:00 2001 From: Javen O'Neal Date: Sat, 2 Jul 2016 09:00:13 +0000 Subject: [PATCH] bug 59781: promote to Common SS: move PaneInformation from o.a.p.hssf.util to o.a.p.ss.util git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1751044 13f79535-47bb-0310-9956-ffa450edef68 --- .../apache/poi/hssf/model/InternalSheet.java | 2 +- .../apache/poi/hssf/usermodel/HSSFSheet.java | 2 +- .../apache/poi/hssf/util/PaneInformation.java | 85 +------------- .../org/apache/poi/ss/usermodel/Sheet.java | 2 +- .../apache/poi/ss/util/PaneInformation.java | 105 ++++++++++++++++++ .../apache/poi/xssf/streaming/SXSSFSheet.java | 2 +- .../apache/poi/xssf/usermodel/XSSFSheet.java | 3 +- .../ss/usermodel/BaseTestBugzillaIssues.java | 2 +- .../poi/ss/usermodel/BaseTestSheet.java | 2 +- 9 files changed, 118 insertions(+), 87 deletions(-) create mode 100644 src/java/org/apache/poi/ss/util/PaneInformation.java diff --git a/src/java/org/apache/poi/hssf/model/InternalSheet.java b/src/java/org/apache/poi/hssf/model/InternalSheet.java index 9dd03a8043..b810eaa926 100644 --- a/src/java/org/apache/poi/hssf/model/InternalSheet.java +++ b/src/java/org/apache/poi/hssf/model/InternalSheet.java @@ -70,9 +70,9 @@ import org.apache.poi.hssf.record.aggregates.RecordAggregate.PositionTrackingVis import org.apache.poi.hssf.record.aggregates.RecordAggregate.RecordVisitor; import org.apache.poi.hssf.record.aggregates.RowRecordsAggregate; import org.apache.poi.hssf.record.aggregates.WorksheetProtectionBlock; -import org.apache.poi.hssf.util.PaneInformation; import org.apache.poi.ss.formula.FormulaShifter; import org.apache.poi.ss.util.CellRangeAddress; +import org.apache.poi.ss.util.PaneInformation; import org.apache.poi.util.Internal; import org.apache.poi.util.POILogFactory; import org.apache.poi.util.POILogger; diff --git a/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java b/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java index f0c10efd03..d1de9ba7ac 100644 --- a/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java +++ b/src/java/org/apache/poi/hssf/usermodel/HSSFSheet.java @@ -51,7 +51,6 @@ import org.apache.poi.hssf.record.aggregates.FormulaRecordAggregate; import org.apache.poi.hssf.record.aggregates.RecordAggregate.RecordVisitor; import org.apache.poi.hssf.record.aggregates.WorksheetProtectionBlock; import org.apache.poi.hssf.usermodel.helpers.HSSFRowShifter; -import org.apache.poi.hssf.util.PaneInformation; import org.apache.poi.ss.SpreadsheetVersion; import org.apache.poi.ss.formula.FormulaShifter; import org.apache.poi.ss.formula.FormulaType; @@ -70,6 +69,7 @@ import org.apache.poi.ss.util.CellAddress; import org.apache.poi.ss.util.CellRangeAddress; import org.apache.poi.ss.util.CellRangeAddressList; import org.apache.poi.ss.util.CellReference; +import org.apache.poi.ss.util.PaneInformation; import org.apache.poi.ss.util.SSCellRange; import org.apache.poi.ss.util.SheetUtil; import org.apache.poi.util.Configurator; diff --git a/src/java/org/apache/poi/hssf/util/PaneInformation.java b/src/java/org/apache/poi/hssf/util/PaneInformation.java index 3ca96bab37..d0382961e6 100644 --- a/src/java/org/apache/poi/hssf/util/PaneInformation.java +++ b/src/java/org/apache/poi/hssf/util/PaneInformation.java @@ -19,87 +19,12 @@ package org.apache.poi.hssf.util; /** * Holds information regarding a split plane or freeze plane for a sheet. - * + * @deprecated POI 3.15 beta 3. Use {@link org.apache.poi.ss.util.PaneInformation} instead. */ -public class PaneInformation +public class PaneInformation extends org.apache.poi.ss.util.PaneInformation { - /** Constant for active pane being the lower right*/ - public static final byte PANE_LOWER_RIGHT = (byte)0; - /** Constant for active pane being the upper right*/ - public static final byte PANE_UPPER_RIGHT = (byte)1; - /** Constant for active pane being the lower left*/ - public static final byte PANE_LOWER_LEFT = (byte)2; - /** Constant for active pane being the upper left*/ - public static final byte PANE_UPPER_LEFT = (byte)3; - - private short x; - private short y; - private short topRow; - private short leftColumn; - private byte activePane; - private boolean frozen = false; - - public PaneInformation(short x, short y, short top, short left, byte active, boolean frozen) { - this.x = x; - this.y = y; - this.topRow = top; - this.leftColumn = left; - this.activePane = active; - this.frozen = frozen; - } + public PaneInformation(short x, short y, short top, short left, byte active, boolean frozen) { + super(x, y, top, left, active, frozen); + } - - /** - * Returns the vertical position of the split. - * @return 0 if there is no vertical spilt, - * or for a freeze pane the number of columns in the TOP pane, - * or for a split plane the position of the split in 1/20th of a point. - */ - public short getVerticalSplitPosition() { - return x; - } - - /** - * Returns the horizontal position of the split. - * @return 0 if there is no horizontal spilt, - * or for a freeze pane the number of rows in the LEFT pane, - * or for a split plane the position of the split in 1/20th of a point. - */ - public short getHorizontalSplitPosition() { - return y; - } - - /** - * For a horizontal split returns the top row in the BOTTOM pane. - * @return 0 if there is no horizontal split, or the top row of the bottom pane. - */ - public short getHorizontalSplitTopRow() { - return topRow; - } - - /** - * For a vertical split returns the left column in the RIGHT pane. - * @return 0 if there is no vertical split, or the left column in the RIGHT pane. - */ - public short getVerticalSplitLeftColumn() { - return leftColumn; - } - - /** - * Returns the active pane - * @see #PANE_LOWER_RIGHT - * @see #PANE_UPPER_RIGHT - * @see #PANE_LOWER_LEFT - * @see #PANE_UPPER_LEFT - * @return the active pane. - */ - public byte getActivePane() { - return activePane; - } - - /** Returns true if this is a Freeze pane, false if it is a split pane. - */ - public boolean isFreezePane() { - return frozen; - } } diff --git a/src/java/org/apache/poi/ss/usermodel/Sheet.java b/src/java/org/apache/poi/ss/usermodel/Sheet.java index 5fbdd5bc20..34521fd437 100644 --- a/src/java/org/apache/poi/ss/usermodel/Sheet.java +++ b/src/java/org/apache/poi/ss/usermodel/Sheet.java @@ -22,9 +22,9 @@ import java.util.Iterator; import java.util.List; import java.util.Map; -import org.apache.poi.hssf.util.PaneInformation; import org.apache.poi.ss.util.CellAddress; import org.apache.poi.ss.util.CellRangeAddress; +import org.apache.poi.ss.util.PaneInformation; /** * High level representation of a Excel worksheet. diff --git a/src/java/org/apache/poi/ss/util/PaneInformation.java b/src/java/org/apache/poi/ss/util/PaneInformation.java new file mode 100644 index 0000000000..dc54b4cf3c --- /dev/null +++ b/src/java/org/apache/poi/ss/util/PaneInformation.java @@ -0,0 +1,105 @@ +/* ==================================================================== + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +==================================================================== */ + +package org.apache.poi.ss.util; + +/** + * Holds information regarding a split plane or freeze plane for a sheet. + * + */ +public class PaneInformation +{ + /** Constant for active pane being the lower right*/ + public static final byte PANE_LOWER_RIGHT = (byte)0; + /** Constant for active pane being the upper right*/ + public static final byte PANE_UPPER_RIGHT = (byte)1; + /** Constant for active pane being the lower left*/ + public static final byte PANE_LOWER_LEFT = (byte)2; + /** Constant for active pane being the upper left*/ + public static final byte PANE_UPPER_LEFT = (byte)3; + + private final short x; + private final short y; + private final short topRow; + private final short leftColumn; + private final byte activePane; + private final boolean frozen; + + public PaneInformation(short x, short y, short top, short left, byte active, boolean frozen) { + this.x = x; + this.y = y; + this.topRow = top; + this.leftColumn = left; + this.activePane = active; + this.frozen = frozen; + } + + + /** + * Returns the vertical position of the split. + * @return 0 if there is no vertical spilt, + * or for a freeze pane the number of columns in the TOP pane, + * or for a split plane the position of the split in 1/20th of a point. + */ + public short getVerticalSplitPosition() { + return x; + } + + /** + * Returns the horizontal position of the split. + * @return 0 if there is no horizontal spilt, + * or for a freeze pane the number of rows in the LEFT pane, + * or for a split plane the position of the split in 1/20th of a point. + */ + public short getHorizontalSplitPosition() { + return y; + } + + /** + * For a horizontal split returns the top row in the BOTTOM pane. + * @return 0 if there is no horizontal split, or the top row of the bottom pane. + */ + public short getHorizontalSplitTopRow() { + return topRow; + } + + /** + * For a vertical split returns the left column in the RIGHT pane. + * @return 0 if there is no vertical split, or the left column in the RIGHT pane. + */ + public short getVerticalSplitLeftColumn() { + return leftColumn; + } + + /** + * Returns the active pane + * @see #PANE_LOWER_RIGHT + * @see #PANE_UPPER_RIGHT + * @see #PANE_LOWER_LEFT + * @see #PANE_UPPER_LEFT + * @return the active pane. + */ + public byte getActivePane() { + return activePane; + } + + /** Returns true if this is a Freeze pane, false if it is a split pane. + */ + public boolean isFreezePane() { + return frozen; + } +} diff --git a/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFSheet.java b/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFSheet.java index a6f31a5554..d87d4d9b62 100644 --- a/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFSheet.java +++ b/src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFSheet.java @@ -26,7 +26,6 @@ import java.util.Map; import java.util.Set; import java.util.TreeMap; -import org.apache.poi.hssf.util.PaneInformation; import org.apache.poi.ss.SpreadsheetVersion; import org.apache.poi.ss.usermodel.AutoFilter; import org.apache.poi.ss.usermodel.Cell; @@ -44,6 +43,7 @@ import org.apache.poi.ss.usermodel.SheetConditionalFormatting; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.util.CellAddress; import org.apache.poi.ss.util.CellRangeAddress; +import org.apache.poi.ss.util.PaneInformation; import org.apache.poi.ss.util.SheetUtil; import org.apache.poi.util.Internal; import org.apache.poi.util.NotImplemented; diff --git a/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java b/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java index 8df7b42a6e..53beb9c505 100644 --- a/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java +++ b/src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFSheet.java @@ -43,7 +43,7 @@ import javax.xml.namespace.QName; import org.apache.poi.POIXMLDocumentPart; import org.apache.poi.POIXMLException; -import org.apache.poi.hssf.util.PaneInformation; + import org.apache.poi.openxml4j.exceptions.InvalidFormatException; import org.apache.poi.openxml4j.exceptions.PartAlreadyExistsException; import org.apache.poi.openxml4j.opc.PackagePart; @@ -71,6 +71,7 @@ import org.apache.poi.ss.util.CellAddress; import org.apache.poi.ss.util.CellRangeAddress; import org.apache.poi.ss.util.CellRangeAddressList; import org.apache.poi.ss.util.CellReference; +import org.apache.poi.ss.util.PaneInformation; import org.apache.poi.ss.util.SSCellRange; import org.apache.poi.ss.util.SheetUtil; import org.apache.poi.util.Beta; diff --git a/src/testcases/org/apache/poi/ss/usermodel/BaseTestBugzillaIssues.java b/src/testcases/org/apache/poi/ss/usermodel/BaseTestBugzillaIssues.java index 5f99cfb4a3..4a1e02bc48 100644 --- a/src/testcases/org/apache/poi/ss/usermodel/BaseTestBugzillaIssues.java +++ b/src/testcases/org/apache/poi/ss/usermodel/BaseTestBugzillaIssues.java @@ -18,10 +18,10 @@ package org.apache.poi.ss.usermodel; import org.apache.poi.hssf.usermodel.HSSFWorkbook; -import org.apache.poi.hssf.util.PaneInformation; import org.apache.poi.ss.ITestDataProvider; import org.apache.poi.ss.SpreadsheetVersion; import org.apache.poi.ss.util.CellRangeAddress; +import org.apache.poi.ss.util.PaneInformation; import org.apache.poi.ss.util.SheetUtil; import org.apache.poi.util.POILogFactory; import org.apache.poi.util.POILogger; diff --git a/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheet.java b/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheet.java index 9bfabf2ea4..9d3b345599 100644 --- a/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheet.java +++ b/src/testcases/org/apache/poi/ss/usermodel/BaseTestSheet.java @@ -39,11 +39,11 @@ import java.util.Map; import java.util.Map.Entry; import java.util.Set; -import org.apache.poi.hssf.util.PaneInformation; import org.apache.poi.ss.ITestDataProvider; import org.apache.poi.ss.SpreadsheetVersion; import org.apache.poi.ss.util.CellAddress; import org.apache.poi.ss.util.CellRangeAddress; +import org.apache.poi.ss.util.PaneInformation; import org.junit.Rule; import org.junit.Test; import org.junit.rules.ExpectedException; -- 2.39.5