org.apache.fop.fo.expr
Class RelativeNumericProperty
java.lang.Object
|
+--org.apache.fop.fo.properties.Property
|
+--org.apache.fop.fo.expr.RelativeNumericProperty
- All Implemented Interfaces:
- Length, Numeric
- public class RelativeNumericProperty
- extends Property
- implements Numeric, Length
This class represent a node in a property expression tree.
It is created when an operation involve relative expression and is used
to delay evaluation of the operation until the time where getNumericValue()
or getValue() is called.
Fields inherited from class org.apache.fop.fo.properties.Property |
log |
Methods inherited from class org.apache.fop.fo.properties.Property |
getCharacter, getColorType, getCondLength, getEnum, getKeep, getLengthPair, getLengthRange, getList, getNCname, getNumber, getObject, getSpace, getSpecifiedValue, getString, isAuto, setSpecifiedValue |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Methods inherited from interface org.apache.fop.datatypes.Numeric |
getEnum |
ADDITION
public static final int ADDITION
SUBTRACTION
public static final int SUBTRACTION
MULTIPLY
public static final int MULTIPLY
DIVIDE
public static final int DIVIDE
MODULO
public static final int MODULO
NEGATE
public static final int NEGATE
ABS
public static final int ABS
MAX
public static final int MAX
MIN
public static final int MIN
RelativeNumericProperty
public RelativeNumericProperty(int operation,
Numeric op1,
Numeric op2)
- Constructor for a two argument operation.
- Parameters:
operation
- the operation opcode: ADDITION, SUBTRACTION, ...op1
- the first operand.op2
- the second operand
RelativeNumericProperty
public RelativeNumericProperty(int operation,
Numeric op)
- Constructor for a one argument operation.
- Parameters:
operation
- the operation opcode: NEGATE, ABSop
- the operand.
getNumericValue
public double getNumericValue()
throws PropertyException
- Return the resolved (calculated) value of the expression.
- Specified by:
getNumericValue
in interface Numeric
- See Also:
Numeric.getNumericValue()
getNumericValue
public double getNumericValue(PercentBaseContext context)
throws PropertyException
- Description copied from interface:
Numeric
- Return the value of this Numeric
- Specified by:
getNumericValue
in interface Numeric
- See Also:
Numeric.getNumericValue(PercentBaseContext)
getDimension
public int getDimension()
- Return the dimension of the expression
- Specified by:
getDimension
in interface Numeric
- Following copied from interface:
org.apache.fop.datatypes.Numeric
- Returns:
- the dimension.
isAbsolute
public boolean isAbsolute()
- Return false since an expression is only created when there is relative
numerics involved.
- Specified by:
isAbsolute
in interface Numeric
- Following copied from interface:
org.apache.fop.datatypes.Numeric
- Returns:
- true when the numeric is absolute.
getLength
public Length getLength()
- Cast this numeric as a Length.
- Overrides:
getLength
in class Property
- Following copied from class:
org.apache.fop.fo.properties.Property
- Returns:
- Length property value
getNumeric
public Numeric getNumeric()
- Description copied from class:
Property
- This method expects to be overridden by subclasses
- Overrides:
getNumeric
in class Property
- Following copied from class:
org.apache.fop.fo.properties.Property
- Returns:
- Numeric property value
getValue
public int getValue()
- Description copied from interface:
Numeric
- Returns the value of this numeric as an int.
- Specified by:
getValue
in interface Numeric
- See Also:
Numeric.getValue()
getValue
public int getValue(PercentBaseContext context)
- Description copied from interface:
Numeric
- Returns the value of this numeric as an int.
- Specified by:
getValue
in interface Numeric
- See Also:
Numeric.getValue(PercentBaseContext)
toString
public java.lang.String toString()
- Return a string represention of the expression. Only used for debugging.
- Overrides:
toString
in class Property
- Returns:
- the string representation.
Copyright 1999-2006 The Apache Software Foundation. All Rights Reserved.