]> source.dussan.org Git - poi.git/commitdiff
bug 59718: deprecate get/setBoldweight. Use get/setBold
authorJaven O'Neal <onealj@apache.org>
Sat, 18 Jun 2016 01:21:08 +0000 (01:21 +0000)
committerJaven O'Neal <onealj@apache.org>
Sat, 18 Jun 2016 01:21:08 +0000 (01:21 +0000)
git-svn-id: https://svn.apache.org/repos/asf/poi/trunk@1748898 13f79535-47bb-0310-9956-ffa450edef68

src/java/org/apache/poi/hssf/usermodel/HSSFWorkbook.java
src/java/org/apache/poi/ss/usermodel/Workbook.java
src/ooxml/java/org/apache/poi/xssf/model/StylesTable.java
src/ooxml/java/org/apache/poi/xssf/streaming/SXSSFWorkbook.java
src/ooxml/java/org/apache/poi/xssf/usermodel/XSSFWorkbook.java

index 20a31e90778fb92832b23d97207cb2b03b0d424d..e25c7b9e70779419ef4e667eb315c80f91237384 100644 (file)
@@ -1114,13 +1114,15 @@ public final class HSSFWorkbook extends POIDocument implements org.apache.poi.ss
 
     /**
      * 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.
      */
     @Override
     public HSSFFont findFont(short boldWeight, short color, short fontHeight,
                              String name, boolean italic, boolean strikeout,
                              short typeOffset, byte underline)
     {
-        for (short i=0; i<=getNumberOfFonts(); i++) {
+        short numberOfFonts = getNumberOfFonts();
+        for (short i=0; i<=numberOfFonts; i++) {
             // Remember - there is no 4!
             if(i == 4) continue;
 
@@ -1140,6 +1142,34 @@ public final class HSSFWorkbook extends POIDocument implements org.apache.poi.ss
 
         return null;
     }
+    /**
+     * Finds a font that matches the one with the supplied attributes
+     */
+    public HSSFFont findFont(boolean bold, 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.getBold() == bold
+                    && 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;
+    }
 
     /**
      * get the number of fonts in the font table
index df754a3b6e0769fd91dc53d177889e63d25f2a19..1fcc29a3eb849e36339327be3e070d87fdbd3149 100644 (file)
@@ -26,7 +26,6 @@ import java.util.List;
 import org.apache.poi.ss.SpreadsheetVersion;
 import org.apache.poi.ss.formula.udf.UDFFinder;
 import org.apache.poi.ss.usermodel.Row.MissingCellPolicy;
-import org.apache.poi.ss.util.CellRangeAddress;
 
 /**
  * High level representation of a Excel workbook.  This is the first object most users
@@ -283,8 +282,16 @@ public interface Workbook extends Closeable, Iterable<Sheet> {
      * 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.
      */
     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
+     *
+     * @return the font with the matched attributes or <code>null</code>
+     */
+    Font findFont(boolean bold, short color, short fontHeight, String name, boolean italic, boolean strikeout, short typeOffset, byte underline);
 
     /**
      * Get the number of fonts in the font table
index d0e73adb0d683c6dd7afa8b54856e42388c35879..209dc722a1325d5545b6ad3d891dccf537784aa8 100644 (file)
@@ -803,6 +803,7 @@ public class StylesTable extends POIXMLDocumentPart {
 
     /**
      * 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) {
@@ -820,4 +821,24 @@ public class StylesTable extends POIXMLDocumentPart {
         }
         return null;
     }
+    
+    /**
+     * Finds a font that matches the one with the supplied attributes
+     */
+    public XSSFFont findFont(boolean bold, short color, short fontHeight, String name, boolean italic, boolean strikeout, short typeOffset, byte underline) {
+        for (XSSFFont font : fonts) {
+            if (    (font.getBold() == bold)
+                    && 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;
+    }
 }
index d741782a97e9d382b5e07dfc84532895e9aadf1a..668e473ac537b884700d016dea04da8ea0d38810 100644 (file)
@@ -813,12 +813,24 @@ public class SXSSFWorkbook implements Workbook {
      * 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.
      */
     @Override
     public Font findFont(short boldWeight, short color, short fontHeight, String name, boolean italic, boolean strikeout, short typeOffset, byte underline)
     {
         return _wb.findFont(boldWeight, color, fontHeight, name, italic, strikeout, typeOffset, underline);
     }
+    
+    /**
+     * Finds a font that matches the one with the supplied attributes
+     *
+     * @return the font with the matched attributes or <code>null</code>
+     */
+    @Override
+    public Font findFont(boolean bold, short color, short fontHeight, String name, boolean italic, boolean strikeout, short typeOffset, byte underline)
+    {
+        return _wb.findFont(bold, color, fontHeight, name, italic, strikeout, typeOffset, underline);
+    }
    
 
     /**
index 84b131889b8d54f320ea08a72363983db745a65b..ce4b033fc1211dfd9941db7af351f0b4cc793a75 100644 (file)
@@ -870,11 +870,20 @@ public class XSSFWorkbook extends POIXMLDocument implements Workbook {
 
     /**
      * 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.
      */
     @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
+     */
+    @Override
+    public XSSFFont findFont(boolean bold, short color, short fontHeight, String name, boolean italic, boolean strikeout, short typeOffset, byte underline) {
+        return stylesSource.findFont(bold, color, fontHeight, name, italic, strikeout, typeOffset, underline);
+    }
 
     /**
      * Convenience method to get the active sheet.  The active sheet is is the sheet