- All Implemented Interfaces:
CSSNumberValue
,CSSPrimitiveValue
,CSSTypedValue
,CSSValue
,Serializable
,Cloneable
- Direct Known Subclasses:
PercentageValue
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from interface io.sf.carte.doc.style.css.CSSValue
CSSValue.CssType, CSSValue.Type
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionclone()
Creates and returns a copy of this object.static NumberValue
createCSSNumberValue
(short unit, float floatValue) boolean
static float
floatValueConversion
(float fvalue, short declType, short unitType) Converts a float value, expressed indeclType
units, tounitType
units.Get a string representation of the current value.Gives the text representation of the dimension unit, if this value represents a dimension.float
getFloatValue
(short unitType) Gets a float value in a specified unit.getMinifiedCssText
(String propertyName) Gives a minified version of the css text of the property.short
If this is aNUMERIC
value, get its unit type.int
hashCode()
boolean
Test whether this is a numeric value that was the result of acalc()
expression.boolean
Test whether this is a numeric value that is less than zero.boolean
Is this value a number set to a value of zero, or an absolute value less than 1e-5 ?minifyAbsolute
(String propertyName) void
Round this value to the nearest integer.void
void
Set that the value that this number represents was originally specified as a calculation or as a relative unit, but comes from being either calculated or absolutized.void
setCalculatedNumber
(boolean calculated) Sets whether this number is the result of a calculation.void
setCssText
(String cssText) Attempts to change this value to match the supplied css text.void
This value is expected to contain an integer.void
setFloatValue
(short unitType, float floatValue) If this value is numeric, set a float value with the given unit.void
setFloatValuePt
(float floatValue) void
setIntegerValue
(int intValue) void
setMaximumFractionDigits
(int maxFractionDigits) Set the maximum fraction digits to use in the serialization of this number when it was not specified or is the result of a calculation.void
writeCssText
(SimpleWriter wri) Serialize this value to aSimpleWriter
.Methods inherited from class io.sf.carte.doc.style.css.property.TypedValue
getComponent, getComponentCount, getCssValueType, getStringValue, setComponent, setStringValue, toRGBColor
Methods inherited from class io.sf.carte.doc.style.css.property.PrimitiveValue
getPrimitiveType, isPrimitiveValue, isSubproperty, setSubproperty
Methods inherited from class io.sf.carte.doc.style.css.property.StyleValue
isSystemDefault, matches, toString
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface io.sf.carte.doc.style.css.CSSPrimitiveValue
isPrimitiveValue
Methods inherited from interface io.sf.carte.doc.style.css.CSSTypedValue
getStringValue, setStringValue, toRGBColor, toRGBColorValue
Methods inherited from interface io.sf.carte.doc.style.css.CSSValue
getCssValueType, getMinifiedCssText, getPrimitiveType, matches
-
Field Details
-
realvalue
protected float realvalue
-
-
Constructor Details
-
NumberValue
public NumberValue() -
NumberValue
-
-
Method Details
-
getUnitType
public short getUnitType()Description copied from interface:CSSPrimitiveValue
If this is aNUMERIC
value, get its unit type.You can also find the unit types of mathematical functions and
calc()
expressions, although this may be computationally expensive:- For
calc()
expressions please useCSSMathValue.computeUnitType()
. - For mathematical functions use
CSSMathFunctionValue.computeUnitType()
.
- Specified by:
getUnitType
in interfaceCSSPrimitiveValue
- Returns:
- the unit type as in
CSSUnit
, orCSS_INVALID
if the type is not numeric or the unit is not valid.
- For
-
getCssText
Description copied from class:StyleValue
Get a string representation of the current value.- Specified by:
getCssText
in interfaceCSSValue
- Specified by:
getCssText
in classStyleValue
- Returns:
- the css text representing the value of this property.
-
writeCssText
Description copied from interface:CSSValue
Serialize this value to aSimpleWriter
.- Specified by:
writeCssText
in interfaceCSSValue
- Parameters:
wri
- the SimpleWriter.- Throws:
IOException
- if an error happened while writing.
-
serializeAbsolute
- Throws:
IOException
-
getMinifiedCssText
Description copied from interface:CSSValue
Gives a minified version of the css text of the property.It may be customized for the given property name.
- Specified by:
getMinifiedCssText
in interfaceCSSValue
- Overrides:
getMinifiedCssText
in classStyleValue
- Parameters:
propertyName
- the property name.- Returns:
- the minified css text.
-
minifyAbsolute
-
setFloatValue
Description copied from interface:CSSTypedValue
If this value is numeric, set a float value with the given unit.- Specified by:
setFloatValue
in interfaceCSSTypedValue
- Overrides:
setFloatValue
in classTypedValue
- Parameters:
unitType
- the unit type according toCSSUnit
.floatValue
- the float value.- Throws:
DOMException
- INVALID_ACCESS_ERR if the unit is not aCSSUnit
one, or this value is not a number.
NO_MODIFICATION_ALLOWED_ERR if this value is unmodifiable.
-
setFloatValuePt
public void setFloatValuePt(float floatValue) -
setIntegerValue
public void setIntegerValue(int intValue) -
setExpectInteger
Description copied from interface:CSSPrimitiveValue
This value is expected to contain an integer.If this value is a non-integer number, an exception will be thrown immediately.
If this value is a
calc()
that ever produces a non-integer number, the value shall be rounded to the nearest integer.If the value is a proxy that ever produces other than an integer number (without
calc()
involvement), an exception should be thrown later.- Specified by:
setExpectInteger
in interfaceCSSPrimitiveValue
- Overrides:
setExpectInteger
in classPrimitiveValue
- Throws:
DOMException
- TYPE_MISMATCH_ERR if the value is a constant number and not an integer.
-
roundToInteger
Description copied from interface:CSSNumberValue
Round this value to the nearest integer.- Specified by:
roundToInteger
in interfaceCSSNumberValue
- Throws:
DOMException
- TYPE_MISMATCH_ERR if this value is not a plain<number>
.
-
setCssText
Description copied from class:StyleValue
Attempts to change this value to match the supplied css text.In css4j, it is not recommended to set property values using this method.
- Specified by:
setCssText
in interfaceCSSValue
- Overrides:
setCssText
in classStyleValue
- Parameters:
cssText
- the text value.- Throws:
DOMException
- SYNTAX_ERR: Raised if the specified CSS string value has a syntax error (according to the attached property) or is unparsable.
INVALID_MODIFICATION_ERR: Raised if the specified CSS string value represents a different type of values than the values allowed by the CSS property.
NO_MODIFICATION_ALLOWED_ERR: Raised if this value is read-only.
-
isCalculatedNumber
public boolean isCalculatedNumber()Description copied from interface:CSSTypedValue
Test whether this is a numeric value that was the result of acalc()
expression.- Specified by:
isCalculatedNumber
in interfaceCSSTypedValue
- Overrides:
isCalculatedNumber
in classTypedValue
- Returns:
true
if this is a numeric value, and it was produced as the output of a calculation (instead of declared as a plain, constant numeric value).
-
setCalculatedNumber
public void setCalculatedNumber(boolean calculated) Sets whether this number is the result of a calculation.- Specified by:
setCalculatedNumber
in interfaceCSSNumberValue
- Parameters:
calculated
-true
if this number was calculated.
-
setAbsolutizedUnit
public void setAbsolutizedUnit()Set that the value that this number represents was originally specified as a calculation or as a relative unit, but comes from being either calculated or absolutized.This has consequences as to how the number is serialized.
-
setMaximumFractionDigits
public void setMaximumFractionDigits(int maxFractionDigits) Set the maximum fraction digits to use in the serialization of this number when it was not specified or is the result of a calculation.- Parameters:
maxFractionDigits
- the maximum fraction digits.
-
isNegativeNumber
public boolean isNegativeNumber()Description copied from interface:CSSPrimitiveValue
Test whether this is a numeric value that is less than zero.- Specified by:
isNegativeNumber
in interfaceCSSPrimitiveValue
- Returns:
true
if this is a numeric value and its value is negative.
-
isNumberZero
public boolean isNumberZero()Description copied from class:TypedValue
Is this value a number set to a value of zero, or an absolute value less than 1e-5 ?- Specified by:
isNumberZero
in interfaceCSSTypedValue
- Overrides:
isNumberZero
in classTypedValue
- Returns:
true
if this is a number and is set to zero (or equivalently small value).
-
getFloatValue
Gets a float value in a specified unit.- Specified by:
getFloatValue
in interfaceCSSTypedValue
- Overrides:
getFloatValue
in classTypedValue
- Parameters:
unitType
- A unit code to get the float value, likeCSS_NUMBER
,CSS_PERCENTAGE
,CSS_PT
orCSS_EX
. If the type isCSS_OTHER
, the value shall be returned as is, regardless of the unit that was set with.- Returns:
- The float value in the specified unit.
- Throws:
DOMException
- INVALID_ACCESS_ERR if the CSS value can't be converted into the specified unit.
-
floatValueConversion
public static float floatValueConversion(float fvalue, short declType, short unitType) throws DOMException Converts a float value, expressed indeclType
units, tounitType
units.- Parameters:
fvalue
- the float value to convert.declType
- the declared type of the value.unitType
- the desired unit type.- Returns:
- the value converted to the
unitType
unit. - Throws:
DOMException
- if the unit conversion could not be done.
-
getDimensionUnitText
Gives the text representation of the dimension unit, if this value represents a dimension.- Returns:
- the text representation of the dimension unit, or the empty string if this value does not represent a dimension.
-
hashCode
public int hashCode()- Overrides:
hashCode
in classPrimitiveValue
-
equals
- Overrides:
equals
in classPrimitiveValue
-
clone
Description copied from class:TypedValue
Creates and returns a copy of this object.The object will be the same except for the
subproperty
flag, that will be disabled in the clone object.- Specified by:
clone
in interfaceCSSTypedValue
- Specified by:
clone
in interfaceCSSValue
- Specified by:
clone
in classTypedValue
- Returns:
- a copy of this object.
-
createCSSNumberValue
-