jxl.format.Orientation Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of jxl Show documentation
Show all versions of jxl Show documentation
JExcelApi is a java library which provides the ability to read, write, and modify Microsoft Excel spreadsheets.
The newest version!
/*********************************************************************
*
* Copyright (C) 2002 Andrew Khan
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
***************************************************************************/
package jxl.format;
/**
* Enumeration type which describes the orientation of data within a cell
*/
public final class Orientation
{
/**
* The internal binary value which gets written to the generated Excel file
*/
private int value;
/**
* The textual description
*/
private String string;
/**
* The list of alignments
*/
private static Orientation[] orientations = new Orientation[0];
/**
* Constructor
*
* @param val
*/
protected Orientation(int val, String s)
{
value = val; string = s;
Orientation[] oldorients = orientations;
orientations = new Orientation[oldorients.length + 1];
System.arraycopy(oldorients, 0, orientations, 0, oldorients.length);
orientations[oldorients.length] = this;
}
/**
* Accessor for the binary value
*
* @return the internal binary value
*/
public int getValue()
{
return value;
}
/**
* Gets the textual description
*/
public String getDescription()
{
return string;
}
/**
* Gets the alignment from the value
*
* @param val
* @return the alignment with that value
*/
public static Orientation getOrientation(int val)
{
for (int i = 0 ; i < orientations.length ; i++)
{
if (orientations[i].getValue() == val)
{
return orientations[i];
}
}
return HORIZONTAL;
}
/**
* Cells with this specified orientation will be horizontal
*/
public static Orientation HORIZONTAL = new Orientation(0, "horizontal");
/**
* Cells with this specified orientation have their data
* presented vertically
*/
public static Orientation VERTICAL = new Orientation(0xff, "vertical");
/**
* Cells with this specified orientation will have their data
* presented with a rotation of 90 degrees upwards
*/
public static Orientation PLUS_90 = new Orientation(90, "up 90");
/**
* Cells with this specified orientation will have their data
* presented with a rotation of 90 degrees downwards
*/
public static Orientation MINUS_90 = new Orientation(180, "down 90");
/**
* Cells with this specified orientation will have their data
* presented with a rotation 45 degrees upwards
*/
public static Orientation PLUS_45 = new Orientation(45, "up 45");
/**
* Cells with this specified orientation will have their data
* presented with a rotation 45 degrees downwards
*/
public static Orientation MINUS_45 = new Orientation(135, "down 45");
/**
* Cells with this specified orientation will have their text stacked
* downwards, but not rotated
*/
public static Orientation STACKED = new Orientation(255, "stacked");
}