From 091a1e0179cb264cc2cab6e3b11ea31045c8536d Mon Sep 17 00:00:00 2001 From: kitfox Date: Tue, 29 May 2007 23:33:23 +0000 Subject: Restoring SVG Salamander to it's original code base, and updating build scripts. git-svn-id: https://svn.java.net/svn/svgsalamander~svn/trunk/svg-core@36 7dc7fa77-23fb-e6ad-8e2e-c86bd48ed22b --- .../java/com/kitfox/svg/xml/NumberWithUnits.java | 89 ++++++++++++++++++++++ 1 file changed, 89 insertions(+) create mode 100644 src/main/java/com/kitfox/svg/xml/NumberWithUnits.java (limited to 'src/main/java/com/kitfox/svg/xml/NumberWithUnits.java') diff --git a/src/main/java/com/kitfox/svg/xml/NumberWithUnits.java b/src/main/java/com/kitfox/svg/xml/NumberWithUnits.java new file mode 100644 index 0000000..77bb895 --- /dev/null +++ b/src/main/java/com/kitfox/svg/xml/NumberWithUnits.java @@ -0,0 +1,89 @@ +/* + * NumberWithUnits.java + * + * + * The Salamander Project - 2D and 3D graphics libraries in Java + * Copyright (C) 2004 Mark McKay + * + * 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 + * + * Mark McKay can be contacted at mark@kitfox.com. Salamander and other + * projects can be found at http://www.kitfox.com + * + * Created on February 18, 2004, 2:43 PM + */ + +package com.kitfox.svg.xml; + +import java.io.Serializable; + +/** + * @author Mark McKay + * @author Mark McKay + */ +public class NumberWithUnits implements Serializable +{ + public static final long serialVersionUID = 0; + + public static final int UT_UNITLESS = 0; + public static final int UT_PX = 1; //Pixels + public static final int UT_CM = 2; //Centimeters + public static final int UT_MM = 3; //Millimeters + public static final int UT_IN = 4; //Inches + public static final int UT_EM = 5; //Default font height + public static final int UT_EX = 6; //Height of character 'x' in default font + public static final int UT_PT = 7; //Points - 1/72 of an inch + public static final int UT_PC = 8; //Picas - 1/6 of an inch + public static final int UT_PERCENT = 9; //Percent - relative width + + float value = 0f; + int unitType = UT_UNITLESS; + + /** Creates a new instance of NumberWithUnits */ + public NumberWithUnits() + { + } + + public NumberWithUnits(String value) + { + set(value); + } + + public NumberWithUnits(float value, int unitType) + { + this.value = value; + this.unitType = unitType; + } + + public float getValue() { return value; } + public int getUnits() { return unitType; } + + public void set(String value) + { + this.value = XMLParseUtil.findFloat(value); + unitType = UT_UNITLESS; + + if (value.indexOf("px") != -1) { unitType = UT_PX; return; } + if (value.indexOf("cm") != -1) { unitType = UT_CM; return; } + if (value.indexOf("mm") != -1) { unitType = UT_MM; return; } + if (value.indexOf("in") != -1) { unitType = UT_IN; return; } + if (value.indexOf("em") != -1) { unitType = UT_EM; return; } + if (value.indexOf("ex") != -1) { unitType = UT_EX; return; } + if (value.indexOf("pt") != -1) { unitType = UT_PT; return; } + if (value.indexOf("pc") != -1) { unitType = UT_PC; return; } + if (value.indexOf("%") != -1) { unitType = UT_PERCENT; return; } + } + +} -- cgit v1.2.3-55-g7522