]> source.dussan.org Git - poi.git/commitdiff
http://nagoya.apache.org/bugzilla/show_bug.cgi?id=10702
authorAndrew C. Oliver <acoliver@apache.org>
Fri, 6 Sep 2002 01:10:19 +0000 (01:10 +0000)
committerAndrew C. Oliver <acoliver@apache.org>
Fri, 6 Sep 2002 01:10:19 +0000 (01:10 +0000)
PR:
Obtained from:
Submitted by:
Reviewed by:

git-svn-id: https://svn.apache.org/repos/asf/jakarta/poi/trunk@352838 13f79535-47bb-0310-9956-ffa450edef68

src/java/org/apache/poi/hssf/usermodel/HSSFCellStyle.java

index 70ec27b169b5bbc73ec4fc1ec79ebd9afe229d62..0f968c2f0715de17984b2c378ffa3e1916389042 100644 (file)
@@ -68,6 +68,7 @@ import org.apache.poi.hssf.record.ExtendedFormatRecord;
  * @version 1.0-pre
  *
  * @author  Andrew C. Oliver (acoliver at apache dot org)
+ * @author Jason Height (jheight at chariot dot net dot au)
  * @see org.apache.poi.hssf.usermodel.HSSFWorkbook#createCellStyle()
  * @see org.apache.poi.hssf.usermodel.HSSFWorkbook#getCellStyleAt(short)
  * @see org.apache.poi.hssf.usermodel.HSSFCell#setCellStyle(HSSFCellStyle)
@@ -473,22 +474,34 @@ public class HSSFCellStyle
 
     /**
      * set the degree of rotation for the text in the cell
-     * @param rotation degrees
+     * @param rotation degrees (between -90 and 90 degrees)
      */
 
     public void setRotation(short rotation)
     {
+      if ((rotation < 0)&&(rotation >= -90)) {
+        //Take care of the funny 4th quadrant issue
+        //The 4th quadrant (-1 to -90) is stored as (91 to 180)
+        rotation = (short)(90 - rotation);
+      }
+      else if ((rotation < -90)  ||(rotation > 90))
+        //Do not allow an incorrect rotation to be set
+        throw new IllegalArgumentException("The rotation must be between -90 and 90 degrees");
         format.setRotation(rotation);
     }
 
     /**
      * get the degree of rotation for the text in the cell
-     * @return rotation degrees
+     * @return rotation degrees (between -90 and 90 degrees)
      */
 
     public short getRotation()
     {
-        return format.getRotation();
+      short rotation = format.getRotation();
+      if (rotation > 90)
+        //This is actually the 4th quadrant
+        rotation = (short)(90-rotation);
+      return rotation;
     }
 
     /**