|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object info.monitorenter.gui.chart.labelformatters.ALabelFormatter info.monitorenter.gui.chart.labelformatters.LabelFormatterAutoUnits
public class LabelFormatterAutoUnits
A label formatter that adds an automatic choice of the unit SI prefix to a
decorated IAxisLabelFormatter
.
The formatted Strings will be divided by a factor according to the automatic chosen unit.
Field Summary |
---|
Fields inherited from class info.monitorenter.gui.chart.labelformatters.ALabelFormatter |
---|
m_propertyChangeSupport, UNIT_UNCHANGED |
Fields inherited from interface info.monitorenter.gui.chart.IAxisLabelFormatter |
---|
PROPERTY_FORMATCHANGE |
Constructor Summary | |
---|---|
LabelFormatterAutoUnits()
Default constructor that uses a
to add the auto unit feature to. |
|
LabelFormatterAutoUnits(ALabelFormatter delegate)
Creates an instance that will add "unit-functionality" to the given formatter. |
Method Summary | |
---|---|
void |
addPropertyChangeListener(java.lang.String propertyName,
java.beans.PropertyChangeListener listener)
Registers a property change listener that will be informed about changes of the property identified by the given propertyName . |
java.lang.String |
format(double value)
Provide a String for the value. |
IAxis<?> |
getAxis()
Intended for AAxis only. |
int |
getMaxAmountChars()
Returns the maximum amount of characters that will be returned from IAxisLabelFormatter.format(double) . |
double |
getMinimumValueShiftForChange()
Returns the minimum change in the value to format that will cause to return a different formatted String. |
double |
getNextEvenValue(double value,
boolean ceiling)
Returns the next "even" value to the given one. |
AUnit |
getUnit()
Returns ALabelFormatter.UNIT_UNCHANGED . |
void |
initPaintIteration()
Void adapter method implementation - optional to override. |
java.lang.Number |
parse(java.lang.String formatted)
The reverse operation to . |
void |
removePropertyChangeListener(java.lang.String property,
java.beans.PropertyChangeListener listener)
Deregisters a property change listener that has been registerd for listening on the given property. |
void |
setAxis(IAxis<?> axis)
Intended for AAxis only. |
java.lang.String |
toString()
|
Methods inherited from class info.monitorenter.gui.chart.labelformatters.ALabelFormatter |
---|
equals, hashCode |
Methods inherited from class java.lang.Object |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public LabelFormatterAutoUnits()
LabelFormatterSimple
to add the auto unit feature to.
public LabelFormatterAutoUnits(ALabelFormatter delegate)
delegate
- the formatter that will be decorated with units.Method Detail |
---|
public void addPropertyChangeListener(java.lang.String propertyName, java.beans.PropertyChangeListener listener)
IAxisLabelFormatter
propertyName
.
addPropertyChangeListener
in interface IAxisLabelFormatter
addPropertyChangeListener
in class ALabelFormatter
propertyName
- the name of the property the listener is interested inlistener
- a listener that will only be informed if the property identified
by the argument propertyName
changesIAxisLabelFormatter.addPropertyChangeListener(java.lang.String,
java.beans.PropertyChangeListener)
public java.lang.String format(double value)
IAxisLabelFormatter
value
- the value to format.
IAxisLabelFormatter.format(double)
public IAxis<?> getAxis()
ALabelFormatter
AAxis
only.
getAxis
in class ALabelFormatter
ALabelFormatter.getAxis()
public int getMaxAmountChars()
ALabelFormatter
IAxisLabelFormatter.format(double)
.
getMaxAmountChars
in interface IAxisLabelFormatter
getMaxAmountChars
in class ALabelFormatter
IAxisLabelFormatter.format(double)
.ALabelFormatter.getMaxAmountChars()
public double getMinimumValueShiftForChange()
IAxisLabelFormatter
To achieve two different formatted Strings to be returned from the format method the corresponding values given to the format method have to differ at least by this value.
Some implementations (e.g. a formatter for date) have to use their own
format method an increas a value to determine when the first change will
occur. This is expensive and it's recommended that this action is performed
once only and the result is stored. Additionally this routine has to start
with an "even" (see IAxisLabelFormatter.getNextEvenValue(double, boolean)
) value to
get a correct result (the distance from even number to even number).
IAxisLabelFormatter.getMinimumValueShiftForChange()
public double getNextEvenValue(double value, boolean ceiling)
IAxisLabelFormatter
value
- the value to get the next "even" value for.ceiling
- if true, the next higher number will returned, else the next lower
one.
IAxisLabelFormatter.getNextEvenValue(double,
boolean)
public AUnit getUnit()
ALabelFormatter
ALabelFormatter.UNIT_UNCHANGED
.
getUnit
in interface IAxisLabelFormatter
getUnit
in class ALabelFormatter
ALabelFormatter.UNIT_UNCHANGED
IAxisLabelFormatter.getUnit()
public void initPaintIteration()
ALabelFormatter
initPaintIteration
in interface IAxisLabelFormatter
initPaintIteration
in class ALabelFormatter
IAxisLabelFormatter.initPaintIteration()
public java.lang.Number parse(java.lang.String formatted) throws java.lang.NumberFormatException
IAxisLabelFormatter
IAxisLabelFormatter.format(double)
.
The given argument has to be in the format that will be generated by that
method or exceptions may be thrown.
test.parse(test.format(d))== d
has to be true if no rounding occurs by the formatter.
formatted
- a String
in the format that will be produced by
method IAxisLabelFormatter.format(double)
.
java.lang.NumberFormatException
- if the format of the argument is invalid.IAxisLabelFormatter.parse(String)
public void removePropertyChangeListener(java.lang.String property, java.beans.PropertyChangeListener listener)
IAxisLabelFormatter
removePropertyChangeListener
in interface IAxisLabelFormatter
removePropertyChangeListener
in class ALabelFormatter
property
- the property the listener was registered to.listener
- a listener that will only be informed if the property identified
by the argument propertyName
changesALabelFormatter.removePropertyChangeListener(java.lang.String,
java.beans.PropertyChangeListener)
public void setAxis(IAxis<?> axis)
ALabelFormatter
AAxis
only.
Do never invoke this! This is only public for package sorting reasons.
setAxis
in interface IAxisLabelFormatter
setAxis
in class ALabelFormatter
axis
- The m_axis to set.ALabelFormatter.setAxis(IAxis)
public java.lang.String toString()
toString
in class java.lang.Object
Object.toString()
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |