HSSFFont boldFont = wb.createFont();
boldFont.setFontHeightInPoints((short)22);
- boldFont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
+ boldFont.setBold(true);
HSSFCellStyle boldStyle = wb.createCellStyle();
boldStyle.setFont(boldFont);
hssfColor = workbook.getCustomPalette().findSimilarColor((byte)foreground.getRed(), (byte)foreground.getGreen(), (byte)foreground.getBlue());
boolean bold = (matchFont.getStyle() & Font.BOLD) != 0;
boolean italic = (matchFont.getStyle() & Font.ITALIC) != 0;
- HSSFFont hssfFont = workbook.findFont(bold ? HSSFFont.BOLDWEIGHT_BOLD : 0,
+ HSSFFont hssfFont = workbook.findFont(bold,
hssfColor.getIndex(),
(short)(matchFont.getSize() * 20),
matchFont.getName(),
if (hssfFont == null)
{
hssfFont = workbook.createFont();
- hssfFont.setBoldweight(bold ? HSSFFont.BOLDWEIGHT_BOLD : 0);
+ hssfFont.setBold(bold);
hssfFont.setColor(hssfColor.getIndex());
hssfFont.setFontHeight((short)(matchFont.getSize() * 20));
hssfFont.setFontName(matchFont.getName());
import org.apache.poi.ddf.EscherRecord;
import org.apache.poi.ss.SpreadsheetVersion;
import org.apache.poi.ss.usermodel.ClientAnchor;
-import org.apache.poi.util.Removal;
/**
* A client anchor is attached to an excel worksheet. It anchors against a
public void setAnchorType(AnchorType anchorType) {
_escherClientAnchor.setFlag(anchorType.value);
}
- /**
- * Sets the anchor type
- * @param anchorType the anchor type to set
- * @deprecated POI 3.15. Use {@link #setAnchorType(AnchorType)} instead.
- */
- @Removal(version="3.17")
- @Override
- public void setAnchorType(int anchorType) {
- _escherClientAnchor.setFlag((short) anchorType);
- }
private void checkRange(int value, int minRange, int maxRange, String varName) {
if (value < minRange || value > maxRange)
import org.apache.poi.hssf.record.common.ExtendedColor;
import org.apache.poi.ss.usermodel.CreationHelper;
import org.apache.poi.util.Internal;
-import org.apache.poi.util.Removal;
public class HSSFCreationHelper implements CreationHelper {
private final HSSFWorkbook workbook;
return workbook.createDataFormat();
}
- /**
- * {@inheritDoc}
- * @deprecated POI 3.15 beta 3. Use {@link #createHyperlink(HyperlinkType)} instead.
- */
- @Deprecated
- @Removal(version="3.17")
- @Override
- public HSSFHyperlink createHyperlink(int type) {
- return new HSSFHyperlink(type);
- }
@Override
public HSSFHyperlink createHyperlink(HyperlinkType type) {
return new HSSFHyperlink(type);
import org.apache.poi.ss.formula.EvaluationCell;
import org.apache.poi.ss.formula.EvaluationSheet;
import org.apache.poi.ss.usermodel.CellType;
-import org.apache.poi.util.Internal;
/**
* HSSF wrapper for a cell under evaluation
*/
public final class HSSFFont implements Font {
/**
- * Arial font
+ * Normal boldness (not bold)
*/
+ final static short BOLDWEIGHT_NORMAL = 0x190;
+ /**
+ * Bold boldness (bold)
+ */
+ final static short BOLDWEIGHT_BOLD = 0x2bc;
+
+ /**
+ * Arial font
+ */
public final static String FONT_ARIAL = "Arial";
HSSFPalette pallette = wb.getCustomPalette();
return pallette.getColor( getColor() );
}
-
- /**
- * set the boldness to use
- * @param boldweight
- * @see #BOLDWEIGHT_NORMAL
- * @see #BOLDWEIGHT_BOLD
- * @deprecated 3.15 beta 2. Scheduled for removal in 3.17. Use {@link #setBold(boolean)} instead.
- */
- public void setBoldweight(short boldweight)
- {
- font.setBoldWeight(boldweight);
- }
/**
* sets the font to be bold or not
else
font.setBoldWeight(BOLDWEIGHT_NORMAL);
}
-
- /**
- * get the boldness to use
- * @return boldweight
- * @see #BOLDWEIGHT_NORMAL
- * @see #BOLDWEIGHT_BOLD
- * @deprecated 3.15 beta 2. Scheduled for removal in 3.17. Use {@link #getBold} instead.
- */
- public short getBoldweight()
- {
- return font.getBoldWeight();
- }
/**
* get if the font is bold or not
*/
public boolean getBold()
{
- return getBoldweight() == BOLDWEIGHT_BOLD;
+ return font.getBoldWeight() == BOLDWEIGHT_BOLD;
}
/**
case CREATE_NULL_AS_BLANK:
return (cell == null) ? createCell(cellnum, CellType.BLANK) : cell;
default:
- throw new IllegalArgumentException("Illegal policy " + policy + " (" + policy.id + ")");
+ throw new IllegalArgumentException("Illegal policy " + policy);
}
}
}
setColumnWidth(column, (int) (width));
}
-
- }
-
- /**
- * Returns cell comment for the specified row and column
- *
- * @return cell comment or <code>null</code> if not found
- * @deprecated as of 2015-11-23 (circa POI 3.14beta1). Use {@link #getCellComment(CellAddress)} instead.
- */
- @Override
- public HSSFComment getCellComment(int row, int column) {
- return findCellComment(row, column);
}
/**
return getFontAt(fontindex);
}
- /**
- * Finds a font that matches the one with the supplied attributes
- * @deprecated 3.15 beta 2. Use {@link #findFont(boolean, short, short, String, boolean, boolean, short, byte)} instead.
- */
- @Deprecated
- @Override
- public HSSFFont findFont(short boldWeight, short color, short fontHeight,
- String name, boolean italic, boolean strikeout,
- short typeOffset, byte underline)
- {
- short numberOfFonts = getNumberOfFonts();
- for (short i=0; i<=numberOfFonts; i++) {
- // Remember - there is no 4!
- if(i == 4) {
- continue;
- }
-
- HSSFFont hssfFont = getFontAt(i);
- if (hssfFont.getBoldweight() == boldWeight
- && hssfFont.getColor() == color
- && hssfFont.getFontHeight() == fontHeight
- && hssfFont.getFontName().equals(name)
- && hssfFont.getItalic() == italic
- && hssfFont.getStrikeout() == strikeout
- && hssfFont.getTypeOffset() == typeOffset
- && hssfFont.getUnderline() == underline)
- {
- return hssfFont;
- }
- }
-
- return null;
- }
/**
* Finds a font that matches the one with the supplied attributes
*/
package org.apache.poi.ss.usermodel;
import org.apache.poi.util.Internal;
-import org.apache.poi.util.Removal;
/**
* A client anchor is attached to an excel worksheet. It anchors against
*/
public interface ClientAnchor {
- /**
- * Move and Resize With Anchor Cells
- * <p>
- * Specifies that the current drawing shall move and
- * resize to maintain its row and column anchors (i.e. the
- * object is anchored to the actual from and to row and column)
- * </p>
- * @deprecated since POI 3.14beta1 (circa 2015-11-24). Use {@link AnchorType#MOVE_AND_RESIZE} instead.
- */
- @Removal(version="3.17")
- public static final AnchorType MOVE_AND_RESIZE = AnchorType.MOVE_AND_RESIZE;
-
- /**
- * Move With Cells but Do Not Resize
- * <p>
- * Specifies that the current drawing shall move with its
- * row and column (i.e. the object is anchored to the
- * actual from row and column), but that the size shall remain absolute.
- * </p>
- * <p>
- * If additional rows/columns are added between the from and to locations of the drawing,
- * the drawing shall move its to anchors as needed to maintain this same absolute size.
- * </p>
- * @deprecated since POI 3.14beta1 (circa 2015-11-24). Use {@link AnchorType#MOVE_DONT_RESIZE} instead.
- */
- @Removal(version="3.17")
- public static final AnchorType MOVE_DONT_RESIZE = AnchorType.MOVE_DONT_RESIZE;
-
- /**
- * Do Not Move or Resize With Underlying Rows/Columns
- * <p>
- * Specifies that the current start and end positions shall
- * be maintained with respect to the distances from the
- * absolute start point of the worksheet.
- * </p>
- * <p>
- * If additional rows/columns are added before the
- * drawing, the drawing shall move its anchors as needed
- * to maintain this same absolute position.
- * </p>
- * @deprecated since POI 3.14beta1 (circa 2015-11-24). Use {@link AnchorType#DONT_MOVE_AND_RESIZE} instead.
- */
- @Removal(version="3.17")
- public static final AnchorType DONT_MOVE_AND_RESIZE = AnchorType.DONT_MOVE_AND_RESIZE;
-
/**
* @since POI 3.14beta1
*/
* @since POI 3.14
*/
public void setAnchorType( AnchorType anchorType );
- /**
- * Sets the anchor type
- * @param anchorType the anchor type to set
- * @deprecated POI 3.15. Use {@link #setAnchorType(AnchorType)} instead.
- */
- @Removal(version="3.17")
- public void setAnchorType( int anchorType );
/**
* Gets the anchor type
package org.apache.poi.ss.usermodel;
import org.apache.poi.common.usermodel.HyperlinkType;
-import org.apache.poi.util.Removal;
/**
* An object that handles instantiating concrete
* Creates a new DataFormat instance
*/
DataFormat createDataFormat();
-
- /**
- * Creates a new Hyperlink, of the given type
- * @deprecated POI 3.15 beta 3. Use {@link #createHyperlink(HyperlinkType)} instead.
- */
- @Removal(version="3.17")
- @Deprecated
- Hyperlink createHyperlink(int type);
/**
* Creates a new Hyperlink, of the given type
public interface Font {
- /**
- * Normal boldness (not bold)
- * @deprecated 3.15 beta 2. Scheduled for removal in 3.17.
- * Boldweight constants no longer needed due to {@link #getBold} and {@link #setBold(boolean)}
- */
- public final static short BOLDWEIGHT_NORMAL = 0x190;
-
- /**
- * Bold boldness (bold)
- * @deprecated 3.15 beta 2. Scheduled for removal in 3.17.
- * Boldweight constants no longer needed due to {@link #getBold} and {@link #setBold(boolean)}
- */
- public final static short BOLDWEIGHT_BOLD = 0x2bc;
/**
* normal type of black color.
*/
public short getIndex();
- /**
- * @deprecated 3.15 beta 2. Scheduled for removal in 3.17. Use {@link #setBold(boolean)}.
- */
- public void setBoldweight(short boldweight);
public void setBold(boolean bold);
- /**
- * @deprecated 3.15 beta 2. Scheduled for removal in 3.17. Use {@link #getBold()}.
- */
- public short getBoldweight();
public boolean getBold();
}
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.util.Removal;
/**
* High level representation of a Excel worksheet.
* @return true => protection enabled; false => protection disabled
*/
boolean getScenarioProtect();
-
- /**
- * Sets the zoom magnication for the sheet. The zoom is expressed as a
- * fraction. For example to express a zoom of 75% use 3 for the numerator
- * and 4 for the denominator.
- *
- * @param numerator The numerator for the zoom magnification.
- * @param denominator The denominator for the zoom magnification.
- * @deprecated 2015-11-23 (circa POI 3.14beta1). Use {@link #setZoom(int)} instead.
- */
- @Removal(version="3.16")
- @Deprecated
- void setZoom(int numerator, int denominator);
/**
* Window zoom magnification for current view representing percent values.
* @param useMergedCells whether to use the contents of merged cells when calculating the width of the column
*/
void autoSizeColumn(int column, boolean useMergedCells);
-
- /**
- * Returns cell comment for the specified row and column
- *
- * @return cell comment or <code>null</code> if not found
- * @deprecated as of 2015-11-23 (circa POI 3.14beta1). Use {@link #getCellComment(CellAddress)} instead.
- */
- @Deprecated
- Comment getCellComment(int row, int column);
/**
* Returns cell comment for the specified location
package org.apache.poi.ss.usermodel;
-import java.util.EnumSet;
-
import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.ss.util.CellRangeAddressBase;
* @return new font object
*/
Font createFont();
-
- /**
- * Finds a font that matches the one with the supplied attributes
- *
- * @return the font with the matched attributes or <code>null</code>
- * @deprecated POI 3.15 beta 2. Use {@link #findFont(boolean, short, short, String, boolean, boolean, short, byte)} instead.
- */
- @Deprecated
- Font findFont(short boldWeight, short color, short fontHeight, String name, boolean italic, boolean strikeout, short typeOffset, byte underline);
/**
* Finds a font that matches the one with the supplied attributes
int indexXf = putCellXf(xf);
return new XSSFCellStyle(indexXf - 1, xfSize - 1, this, theme);
}
-
- /**
- * Finds a font that matches the one with the supplied attributes
- * @deprecated POI 3.15 beta 2. Use {@link #findFont(boolean, short, short, String, boolean, boolean, short, byte)} instead.
- */
- public XSSFFont findFont(short boldWeight, short color, short fontHeight, String name, boolean italic, boolean strikeout, short typeOffset, byte underline) {
- for (XSSFFont font : fonts) {
- if ( (font.getBoldweight() == boldWeight)
- && font.getColor() == color
- && font.getFontHeight() == fontHeight
- && font.getFontName().equals(name)
- && font.getItalic() == italic
- && font.getStrikeout() == strikeout
- && font.getTypeOffset() == typeOffset
- && font.getUnderline() == underline)
- {
- return font;
- }
- }
- return null;
- }
/**
* Finds a font that matches the one with the supplied attributes
import org.apache.poi.ss.util.CellAddress;
import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.ss.util.CellReference;
-import org.apache.poi.util.Internal;
import org.apache.poi.util.LocaleUtil;
import org.apache.poi.util.NotImplemented;
import org.apache.poi.util.POILogFactory;
import org.apache.poi.util.POILogger;
-import org.apache.poi.util.Removal;
import org.apache.poi.xssf.usermodel.XSSFHyperlink;
import org.apache.poi.xssf.usermodel.XSSFRichTextString;
private CellStyle _style;
private Property _firstProperty;
- /**
- * @deprecated POI 3.15 beta 3.
- * Will be deleted when we make the CellType enum transition. See bug 59791.
- */
- @Removal(version="3.17")
- @Deprecated
- public SXSSFCell(SXSSFRow row, int cellType)
- {
- this(row, CellType.forInt((cellType)));
- }
-
public SXSSFCell(SXSSFRow row,CellType cellType)
{
_row=row;
import org.apache.poi.util.Internal;
import org.apache.poi.util.POILogFactory;
import org.apache.poi.util.POILogger;
-import org.apache.poi.util.Removal;
import org.apache.poi.xssf.usermodel.XSSFCreationHelper;
import org.apache.poi.xssf.usermodel.XSSFRichTextString;
public DataFormat createDataFormat() {
return helper.createDataFormat();
}
- /**
- * {@inheritDoc}
- * @deprecated POI 3.15 beta 3. Use {@link #createHyperlink(HyperlinkType)} instead.
- */
- @Deprecated
- @Removal(version="3.17")
- @Override
- public Hyperlink createHyperlink(int type) {
- return helper.createHyperlink(type);
- }
@Override
public Hyperlink createHyperlink(HyperlinkType type) {
return helper.createHyperlink(type);
// use Boolean to have a tri-state for on/off/undefined
private Boolean _hidden = UNDEFINED;
private Boolean _collapsed = UNDEFINED;
-
- /**
- *
- * @param sheet the parent sheet the row belongs to
- * @param initialSize - no longer needed
- * @deprecated 2015-11-30 (circa POI 3.14beta1). Use {@link #SXSSFRow(SXSSFSheet)} instead.
- */
- @Deprecated
- public SXSSFRow(SXSSFSheet sheet, @SuppressWarnings("UnusedParameters") int initialSize)
- {
- this(sheet);
- }
public SXSSFRow(SXSSFSheet sheet)
{
case CREATE_NULL_AS_BLANK:
return (cell == null) ? createCell(cellnum, CellType.BLANK) : cell;
default:
- throw new IllegalArgumentException("Illegal policy " + policy + " (" + policy.id + ")");
+ throw new IllegalArgumentException("Illegal policy " + policy);
}
}
import org.apache.poi.ss.util.SheetUtil;
import org.apache.poi.util.Internal;
import org.apache.poi.util.NotImplemented;
-import org.apache.poi.util.Removal;
import org.apache.poi.xssf.usermodel.XSSFColor;
import org.apache.poi.xssf.usermodel.XSSFComment;
import org.apache.poi.xssf.usermodel.XSSFDataValidation;
{
return _sh.getScenarioProtect();
}
-
- /**
- * Sets the zoom magnification for the sheet. The zoom is expressed as a
- * fraction. For example to express a zoom of 75% use 3 for the numerator
- * and 4 for the denominator.
- *
- * @param numerator The numerator for the zoom magnification.
- * @param denominator The denominator for the zoom magnification.
- * @deprecated 2015-11-23 (circa POI 3.14beta1). Use {@link #setZoom(int)} instead.
- */
- @Deprecated
- @Removal(version="3.16")
- @Override
- public void setZoom(int numerator, int denominator)
- {
- _sh.setZoom(numerator,denominator);
- }
/**
* Window zoom magnification for current view representing percent values.
setColumnWidth(column, width);
}
}
-
- /**
- * Returns cell comment for the specified row and column
- *
- * @return cell comment or <code>null</code> if not found
- * @deprecated as of 2015-11-23 (circa POI 3.14beta1). Use {@link #getCellComment(CellAddress)} instead.
- */
- @Deprecated
- @Removal(version="3.16")
- @Override
- public XSSFComment getCellComment(int row, int column)
- {
- return getCellComment(new CellAddress(row, column));
- }
/**
* Returns cell comment for the specified row and column
{
return _wb.createFont();
}
-
- /**
- * Finds a font that matches the one with the supplied attributes
- *
- * @return the font with the matched attributes or <code>null</code>
- * @deprecated POI 3.15 beta 2. Use {@link #findFont(boolean, short, short, String, boolean, boolean, short, byte)} instead.
- */
- @Deprecated
- @Override
- @Removal(version="3.17")
- public Font findFont(short boldWeight, short color, short fontHeight, String name, boolean italic, boolean strikeout, short typeOffset, byte underline)
- {
- //noinspection deprecation
- return _wb.findFont(boldWeight, color, fontHeight, name, italic, strikeout, typeOffset, underline);
- }
/**
* Finds a font that matches the one with the supplied attributes
import org.apache.poi.ss.formula.eval.StringEval;
import org.apache.poi.ss.formula.eval.ValueEval;
import org.apache.poi.ss.usermodel.Cell;
-import org.apache.poi.ss.usermodel.CellType;
import org.apache.poi.ss.usermodel.CellValue;
import org.apache.poi.ss.usermodel.RichTextString;
package org.apache.poi.xssf.usermodel;
import org.apache.poi.ss.usermodel.ClientAnchor;
-import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.util.Internal;
import org.apache.poi.util.Removal;
import org.apache.poi.util.Units;
{
this.anchorType = anchorType;
}
- /**
- * Sets the anchor type
- * @param anchorType the anchor type to set
- * @deprecated POI 3.15. Use {@link #setAnchorType(AnchorType)} instead
- */
- @Removal(version="3.17")
- @Override
- public void setAnchorType( int anchorType )
- {
- this.anchorType = AnchorType.byId(anchorType);
- }
/**
* Gets the anchor type
import org.apache.poi.ss.usermodel.CreationHelper;
import org.apache.poi.ss.usermodel.Hyperlink;
import org.apache.poi.util.Internal;
-import org.apache.poi.util.Removal;
import org.openxmlformats.schemas.spreadsheetml.x2006.main.CTColor;
public class XSSFCreationHelper implements CreationHelper {
public XSSFColor createExtendedColor() {
return new XSSFColor(CTColor.Factory.newInstance(), workbook.getStylesSource().getIndexedColors());
}
-
- /**
- * Create a new XSSFHyperlink.
- *
- * @param type - the type of hyperlink to create, see {@link HyperlinkType}
- * @deprecated POI 3.15 beta 3. Use {@link #createHyperlink(HyperlinkType)} instead.
- */
- @Deprecated
- @Removal(version="3.17")
- @Override
- public XSSFHyperlink createHyperlink(int type) {
- return new XSSFHyperlink(type);
- }
/**
* Create a new XSSFHyperlink.
}
}
- /**
- * @deprecated 3.15 beta 2. Scheduled for removal in 3.17. Use {@link #setBold(boolean)} instead.
- */
- public void setBoldweight(short boldweight)
- {
- setBold(boldweight == BOLDWEIGHT_BOLD);
- }
-
- /**
- * get the boldness to use
- * @return boldweight
- * @see #BOLDWEIGHT_NORMAL
- * @see #BOLDWEIGHT_BOLD
- * @deprecated 3.15 beta 2. Scheduled for removal in 3.17. Use {@link #getBold} instead.
- */
- public short getBoldweight()
- {
- return getBold() ? BOLDWEIGHT_BOLD : BOLDWEIGHT_NORMAL;
- }
-
/**
* set character-set to use.
*
return _workbook.getSheetName(sheetId);
}
String ref = getRefersToFormula();
- AreaReference areaRef = new AreaReference(ref);
+ AreaReference areaRef = new AreaReference(ref, SpreadsheetVersion.EXCEL2007);
return areaRef.getFirstCell().getSheetName();
}
getPane().setState(STPaneState.SPLIT);
getPane().setActivePane(STPane.Enum.forInt(activePane));
}
-
- /**
- * Return cell comment at row, column, if one exists. Otherwise returns null.
- * @param row the row where the comment is located
- * @param column the column where the comment is located
- * @return the cell comment, if one exists. Otherwise return null.
- * @deprecated as of 2015-11-23 (circa POI 3.14beta1). Use {@link #getCellComment(CellAddress)} instead.
- */
- @Deprecated
- @Override
- @Removal(version="3.16")
- public XSSFComment getCellComment(int row, int column) {
- return getCellComment(new CellAddress(row, column));
- }
/**
* Return cell comment at row, column, if one exists. Otherwise returns null.
return getRow(collapseRow).getCTRow().getCollapsed();
}
- /**
- * Sets the zoom magnification for the sheet. The zoom is expressed as a
- * fraction. For example to express a zoom of 75% use 3 for the numerator
- * and 4 for the denominator.
- *
- * @param numerator The numerator for the zoom magnification.
- * @param denominator The denominator for the zoom magnification.
- * @deprecated 2015-11-23 (circa POI 3.14beta1). Use {@link #setZoom(int)} instead.
- */
- @Deprecated
- @Removal(version="3.16")
- @Override
- public void setZoom(int numerator, int denominator) {
- int zoom = 100*numerator/denominator;
- setZoom(zoom);
- }
-
/**
* Window zoom magnification for current view representing percent values.
* Valid values range from 10 to 400. Horizontal & Vertical scale together.
sheet.setName(sheetname);
return sheet;
}
-
- /**
- * Finds a font that matches the one with the supplied attributes
- * @deprecated POI 3.15. Use {@link #findFont(boolean, short, short, String, boolean, boolean, short, byte)} instead.
- */
- @Deprecated
- @Override
- public XSSFFont findFont(short boldWeight, short color, short fontHeight, String name, boolean italic, boolean strikeout, short typeOffset, byte underline) {
- return stylesSource.findFont(boldWeight, color, fontHeight, name, italic, strikeout, typeOffset, underline);
- }
/**
* Finds a font that matches the one with the supplied attributes
assertEquals(0, sheet.getNumMergedRegions());
assertNull(sheet.getActiveCell());
assertTrue(sheet.getAutobreaks());
- //noinspection deprecation
- assertNull(sheet.getCellComment(0, 0));
assertNull(sheet.getCellComment(new CellAddress(0, 0)));
assertEquals(0, sheet.getColumnBreaks().length);
assertTrue(sheet.getRowSumsBelow());
public void testLineBreaks_bug48877() throws IOException{
XSSFFont font = new XSSFFont();
- //noinspection deprecation
- font.setBoldweight(XSSFFont.BOLDWEIGHT_BOLD);
+ font.setBold(true);
font.setFontHeightInPoints((short) 14);
XSSFRichTextString str;
STXstring t1, t2, t3;
{
Triplet triplet = new Triplet();
triplet.fontName = font.getFontName();
-
- switch ( font.getBoldweight() )
- {
- case HSSFFont.BOLDWEIGHT_BOLD:
- triplet.bold = true;
- break;
- case HSSFFont.BOLDWEIGHT_NORMAL:
- default:
- triplet.bold = false;
- break;
- }
-
- if ( font.getItalic() )
- {
- triplet.italic = true;
- }
+ triplet.bold = font.getBold();
+ triplet.italic = font.getItalic();
getFontReplacer().update( triplet );
setBlockProperties( blockTarget, triplet );
void buildStyle_font( HSSFWorkbook workbook, StringBuilder style,
HSSFFont font )
{
- switch ( font.getBoldweight() )
+ if ( font.getBold() )
{
- case HSSFFont.BOLDWEIGHT_BOLD:
style.append( "font-weight:bold;" );
- break;
- case HSSFFont.BOLDWEIGHT_NORMAL:
- // by default, not not increase HTML size
- // style.append( "font-weight: normal; " );
- break;
}
final HSSFColor fontColor = workbook.getCustomPalette().getColor(
anchor.setAnchorType(AnchorType.MOVE_DONT_RESIZE);
assertEquals(AnchorType.MOVE_DONT_RESIZE, anchor.getAnchorType());
//noinspection deprecation
- anchor.setAnchorType(AnchorType.MOVE_DONT_RESIZE.value);
+ anchor.setAnchorType(AnchorType.MOVE_DONT_RESIZE);
assertEquals(AnchorType.MOVE_DONT_RESIZE, anchor.getAnchorType());
HSSFSimpleShape rectangle = drawing.createSimpleShape(anchor);
package org.apache.poi.hssf.usermodel;
+import static org.apache.poi.POITestCase.assertContains;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertSame;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
-import static org.apache.poi.POITestCase.assertContains;
import java.awt.image.BufferedImage;
import java.io.ByteArrayInputStream;
* <b>YK: If a bug can be tested in terms of common ss interfaces,
* define the test in the base class {@link BaseTestBugzillaIssues}</b>
*/
-@SuppressWarnings("deprecation")
public final class TestBugs extends BaseTestBugzillaIssues {
// to not affect other tests running in the same JVM
@After
assertEquals(4, wb.getNumberOfFonts());
HSSFFont f1 = wb.getFontAt((short)0);
- assertEquals(400, f1.getBoldweight());
+ assertFalse(f1.getBold());
// Check that asking for the same font
// multiple times gives you the same thing.
// yet to add
assertNull(
wb.findFont(
- (short)11, (short)123, (short)22,
+ false, (short)123, (short)22,
"Thingy", false, true, (short)2, (byte)2
)
);
assertEquals(5, nf.getIndex());
assertEquals(nf, wb.getFontAt((short)5));
- nf.setBoldweight((short)11);
+ nf.setBold(false);
nf.setColor((short)123);
nf.setFontHeight((short)22);
nf.setFontName("Thingy");
// Find it now
assertNotNull(
wb.findFont(
- (short)11, (short)123, (short)22,
+ false, (short)123, (short)22,
"Thingy", false, true, (short)2, (byte)2
)
);
HSSFFont font = wb.findFont(
- (short) 11, (short) 123, (short) 22,
+ false, (short) 123, (short) 22,
"Thingy", false, true, (short) 2, (byte) 2
);
assertNotNull(font);
);
assertEquals(nf,
wb.findFont(
- (short)11, (short)123, (short)22,
+ false, (short)123, (short)22,
"Thingy", false, true, (short)2, (byte)2
)
);
HSSFCellStyle cs = wb.createCellStyle();
fnt.setColor(HSSFFont.COLOR_RED);
- fnt.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
+ fnt.setBold(true);
cs.setFont(fnt);
for (int rownum = 0; rownum < 100; rownum++) {
r = s.createRow(rownum);
import static org.junit.Assert.assertSame;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
-import static org.apache.poi.POITestCase.assertBetween;
import java.io.IOException;
import java.util.List;
import org.apache.poi.hssf.usermodel.RecordInspector.RecordCollector;
import org.apache.poi.ss.formula.ptg.Area3DPtg;
import org.apache.poi.ss.formula.ptg.Ptg;
-import org.apache.poi.ss.usermodel.*;
+import org.apache.poi.ss.usermodel.AutoFilter;
+import org.apache.poi.ss.usermodel.BaseTestSheet;
+import org.apache.poi.ss.usermodel.DataValidation;
+import org.apache.poi.ss.usermodel.DataValidationConstraint;
+import org.apache.poi.ss.usermodel.DataValidationHelper;
+import org.apache.poi.ss.usermodel.Sheet;
+import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.ss.util.CellRangeAddress;
import org.apache.poi.ss.util.CellRangeAddressList;
import org.junit.Test;
workbook.close();
}
- @SuppressWarnings("deprecation")
@Test
public void zoom() throws IOException {
HSSFWorkbook wb = new HSSFWorkbook();
assertEquals(11*20, bs.getFont(wbSimple).getFontHeight());
assertEquals(8, bs.getFont(wbSimple).getColor());
assertFalse(bs.getFont(wbSimple).getItalic());
- assertEquals(HSSFFont.BOLDWEIGHT_NORMAL, bs.getFont(wbSimple).getBoldweight());
+ assertFalse(bs.getFont(wbSimple).getBold());
HSSFCellStyle cs = wbComplex.getSheetAt(0).getColumnStyle(1);
package org.apache.poi.hssf.usermodel;
-import junit.framework.TestCase;
-
import org.apache.poi.hssf.HSSFTestDataSamples;
import org.apache.poi.ss.usermodel.BorderStyle;
+import org.apache.poi.util.IOUtils;
+
+import junit.framework.TestCase;
/**
* Class to test row styling functionality
* Last row, first row is tested against the correct values (99,0).<P>
* FAILURE: HSSF does not create a sheet or excepts. Filesize does not match the known good.
* HSSFSheet last row or first row is incorrect. <P>
- *
*/
public void testWriteSheetFont() {
HSSFWorkbook wb = new HSSFWorkbook();
HSSFCellStyle cs = wb.createCellStyle();
fnt.setColor(HSSFFont.COLOR_RED);
- fnt.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
+ fnt.setBold(true);
cs.setFont(fnt);
for (int rownum = 0; rownum < 100; rownum++)
{
r.setRowStyle(cs);
r.createCell(0);
}
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
+ HSSFWorkbook wb2 = HSSFTestDataSamples.writeOutAndReadBack(wb);
+ IOUtils.closeQuietly(wb);
SanityChecker sanityChecker = new SanityChecker();
- sanityChecker.checkHSSFWorkbook(wb);
+ sanityChecker.checkHSSFWorkbook(wb2);
assertEquals("LAST ROW == 99", 99, s.getLastRowNum());
assertEquals("FIRST ROW == 0", 0, s.getFirstRowNum());
+ IOUtils.closeQuietly(wb2);
}
/**
row.setRowStyle(cs);
row.createCell(0);
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
+ HSSFWorkbook wb2 = HSSFTestDataSamples.writeOutAndReadBack(wb);
+ IOUtils.closeQuietly(wb);
SanityChecker sanityChecker = new SanityChecker();
- sanityChecker.checkHSSFWorkbook(wb);
+ sanityChecker.checkHSSFWorkbook(wb2);
assertEquals("LAST ROW ", 1, s.getLastRowNum());
assertEquals("FIRST ROW ", 0, s.getFirstRowNum());
-
+ IOUtils.closeQuietly(wb2);
}
/**
* Last row, first row is tested against the correct values (99,0).<P>
* FAILURE: HSSF does not create a sheet or excepts. Filesize does not match the known good.
* HSSFSheet last row or first row is incorrect. <P>
- *
*/
public void testWriteSheetStyle() {
HSSFWorkbook wb = new HSSFWorkbook();
r.setRowStyle(cs2);
r.createCell(0);
}
- wb = HSSFTestDataSamples.writeOutAndReadBack(wb);
+ HSSFWorkbook wb2 = HSSFTestDataSamples.writeOutAndReadBack(wb);
+ IOUtils.closeQuietly(wb);
SanityChecker sanityChecker = new SanityChecker();
- sanityChecker.checkHSSFWorkbook(wb);
+ sanityChecker.checkHSSFWorkbook(wb2);
assertEquals("LAST ROW == 99", 99, s.getLastRowNum());
assertEquals("FIRST ROW == 0", 0, s.getFirstRowNum());
- s = wb.getSheetAt(0);
+ s = wb2.getSheetAt(0);
assertNotNull("Sheet is not null", s);
for (int rownum = 0; rownum < 100; rownum++)
assertEquals("FillForegroundColor for row: ", cs2.getFillForegroundColor(), (short) 0x0);
assertEquals("FillPattern for row: ", cs2.getFillPattern(), (short) 0x1);
}
+ IOUtils.closeQuietly(wb2);
}
}
protected final void baseTestDefaultFont(String defaultName, short defaultSize, short defaultColor) throws IOException {
//get default font and check against default value
Workbook workbook = _testDataProvider.createWorkbook();
- Font fontFind=workbook.findFont(Font.BOLDWEIGHT_NORMAL, defaultColor, defaultSize, defaultName, false, false, Font.SS_NONE, Font.U_NONE);
+ Font fontFind=workbook.findFont(false, defaultColor, defaultSize, defaultName, false, false, Font.SS_NONE, Font.U_NONE);
assertNotNull(fontFind);
//get default font, then change 2 values and check against different values (height changes)
Font font=workbook.createFont();
- font.setBoldweight(Font.BOLDWEIGHT_BOLD);
- assertEquals(Font.BOLDWEIGHT_BOLD, font.getBoldweight());
+ font.setBold(true);
+ assertTrue(font.getBold());
font.setUnderline(Font.U_DOUBLE);
assertEquals(Font.U_DOUBLE, font.getUnderline());
font.setFontHeightInPoints((short)15);
assertEquals(15*20, font.getFontHeight());
assertEquals(15, font.getFontHeightInPoints());
- fontFind=workbook.findFont(Font.BOLDWEIGHT_BOLD, defaultColor, (short)(15*20), defaultName, false, false, Font.SS_NONE, Font.U_DOUBLE);
+ fontFind=workbook.findFont(true, defaultColor, (short)(15*20), defaultName, false, false, Font.SS_NONE, Font.U_DOUBLE);
assertNotNull(fontFind);
workbook.close();
}
int num0 = wb.getNumberOfFonts();
Font f1=wb.createFont();
- f1.setBoldweight(Font.BOLDWEIGHT_BOLD);
+ f1.setBold(true);
short idx1 = f1.getIndex();
wb.createCellStyle().setFont(f1);
wb.createCellStyle().setFont(f3);
assertEquals(num0 + 3,wb.getNumberOfFonts());
- assertEquals(Font.BOLDWEIGHT_BOLD,wb.getFontAt(idx1).getBoldweight());
+ assertTrue(wb.getFontAt(idx1).getBold());
assertEquals(Font.U_DOUBLE,wb.getFontAt(idx2).getUnderline());
assertEquals(23,wb.getFontAt(idx3).getFontHeightInPoints());
wb.close();
int num0 = wb1.getNumberOfFonts();
Font font=wb1.createFont();
- font.setBoldweight(Font.BOLDWEIGHT_BOLD);
+ font.setBold(true);
font.setStrikeout(true);
font.setColor(IndexedColors.YELLOW.getIndex());
font.setFontName("Courier");
//default font
Font f1 = wb.getFontAt((short)0);
- assertEquals(Font.BOLDWEIGHT_NORMAL, f1.getBoldweight());
+ assertFalse(f1.getBold());
// Check that asking for the same font
// multiple times gives you the same thing.
// yet to add
assertNull(
wb.findFont(
- Font.BOLDWEIGHT_BOLD, (short)123, (short)(22*20),
+ true, (short)123, (short)(22*20),
"Thingy", false, true, (short)2, (byte)2
)
);
assertSame(nf, wb.getFontAt(nfIdx));
- nf.setBoldweight(Font.BOLDWEIGHT_BOLD);
+ nf.setBold(true);
nf.setColor((short)123);
nf.setFontHeightInPoints((short)22);
nf.setFontName("Thingy");
// Find it now
assertNotNull(
wb.findFont(
- Font.BOLDWEIGHT_BOLD, (short)123, (short)(22*20),
+ true, (short)123, (short)(22*20),
"Thingy", false, true, (short)2, (byte)2
)
);
assertSame(nf,
wb.findFont(
- Font.BOLDWEIGHT_BOLD, (short)123, (short)(22*20),
+ true, (short)123, (short)(22*20),
"Thingy", false, true, (short)2, (byte)2
)
);
import java.io.IOException;
import java.text.DateFormat;
+import java.util.Arrays;
import java.util.Calendar;
import java.util.Date;
+import java.util.List;
import java.util.Locale;
import org.apache.poi.hssf.HSSFTestDataSamples;
assertEquals("51:01", dfUS.formatRawCellContents(42605.368761574071, -1, "mm:ss"));
}
+ /**
+ * bug 60422 : simple number formats seem ok
+≈ */
+ @Test
+ public void testSimpleNumericFormatsInGermanyLocale() {
+ List<Locale> locales = Arrays.asList(new Locale[] {Locale.GERMANY, Locale.US, Locale.ROOT} );
+ for (Locale locale : locales) {
+ //show that LocaleUtil has no effect on these tests
+ LocaleUtil.setUserLocale(locale);
+ try {
+ char euro = '\u20AC';
+ DataFormatter df = new DataFormatter(Locale.GERMANY);
+ assertEquals("4,33", df.formatRawCellContents(4.33, -1, "#,##0.00"));
+ assertEquals("1.234,33", df.formatRawCellContents(1234.333, -1, "#,##0.00"));
+ assertEquals("-1.234,33", df.formatRawCellContents(-1234.333, -1, "#,##0.00"));
+ assertEquals("1.234,33 " + euro, df.formatRawCellContents(1234.33, -1, "#,##0.00 " + euro));
+ assertEquals("1.234,33 " + euro, df.formatRawCellContents(1234.33, -1, "#,##0.00 \"" + euro + "\""));
+ } finally {
+ LocaleUtil.resetUserLocale();
+ }
+ }
+ }
+
/**
* bug 60422 : DataFormatter has issues with a specific NumberFormat in Germany default locale
- * Currently, this test only passes if you set LocaleUtil.setUserLocale(Locale.ROOT) or Locale.US.
- */
+≈ */
@Test
public void testBug60422() {
+ //when this is set to Locale.Germany, the result is
LocaleUtil.setUserLocale(Locale.ROOT);
try {
char euro = '\u20AC';
String formatString = String.format(Locale.ROOT,
"_-* #,##0.00\\ \"%s\"_-;\\-* #,##0.00\\ \"%s\"_-;_-* \"-\"??\\ \"%s\"_-;_-@_-",
euro, euro, euro);
+ //this should be 4,33
assertEquals("4.33 " + euro, df.formatRawCellContents(4.33, 178, formatString));
} finally {
LocaleUtil.resetUserLocale();
HSSFRow row = sheet.createRow(0);
HSSFCellStyle style = wb.createCellStyle();
HSSFFont font = wb.createFont();
- font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
+ font.setBold(true);
style.setFont(font);
writeHeaderCell(row, 0, "Raw Long Bits A", style);
writeHeaderCell(row, 1, "Raw Long Bits B", style);
HSSFRow row = sheet.createRow(0);
HSSFCellStyle style = wb.createCellStyle();
HSSFFont font = wb.createFont();
- font.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
+ font.setBold(true);
style.setFont(font);
writeHeaderCell(row, 0, "Value", style);
writeHeaderCell(row, 1, "Raw Long Bits", style);