Package com.iizix.prop.ui.chart.series
Class Series
- java.lang.Object
- com.iizix.prop.GProp<GProp<?>[]>
- com.iizix.prop.PropCnr
- com.iizix.prop.ui.chart.series.Series
- All Implemented Interfaces:
EventListener
,IGProp<GProp<?>[]>
,IPropCnr
,IPropCnrBooleanSettings<SeriesOption>
,IPropCnrColorSettings<SeriesColor>
,IPropCnrFillSettings<SeriesFill>
,IPropCnrFontSettings<SeriesFont>
,IPropCnrStrokeSettings<SeriesStroke>
,IChartContainer
,IVSColumnBestValueListener
,IVSColumnListener
,IVSComponentListener
,IVSComponentState
,java.lang.Cloneable
- Direct Known Subclasses:
ESeries
public class Series extends PropCnr implements IChartContainer, IPropCnrBooleanSettings<SeriesOption>, IPropCnrColorSettings<SeriesColor>, IPropCnrStrokeSettings<SeriesStroke>, IPropCnrFillSettings<SeriesFill>, IPropCnrFontSettings<SeriesFont>, IVSColumnListener
A chart series consists of several series values properties in a defined order. The Designer chart series persists in XML and can be predefined and only modified at runtime with the required settings.- Author:
- Christopher Mindus
Nested Class Summary
Nested classes/interfaces inherited from interface com.iizix.prop.ui.chart.IChartContainer
IChartContainer.Type
Nested classes/interfaces inherited from interface com.iizix.prop.vs.IVSComponentState
IVSComponentState.State
Field Summary
Fields Modifier and Type Field Description static java.lang.String
PLOT
The "$plot" string for the property.Fields inherited from class com.iizix.prop.PropCnr
EMPTY, EMPTY_CLASSES, EMPTY_CNRS, EXTENDS_FRAMEWORK_ERROR_ID
Fields inherited from class com.iizix.prop.GProp
GPDEBUG, PROP_ATTR_STRING_EDITOR_PROP, PROP_ATTR_STRING_ERRORED_NAME, PROP_ATTR_STRING_EXTENDS, PROP_ATTR_STRING_EXTENDS_FINAL, PROP_ATTR_STRING_EXTENDS_PRIVATE, PROP_ATTR_STRING_NULLABLE, PROP_ATTR_STRING_PRIVATE, PROP_ATTR_STRING_PRIVATE_CHANGE_EVENT, PROP_ATTR_STRING_READ_ONLY, PROP_USER_1, PROP_USER_2
Fields inherited from interface com.iizix.prop.IGProp
EQC_ERROR_IGNORE_ALL, EQC_ERROR_IGNORE_REFERENCES, EQC_IGNORE_ARRAY, EQC_IGNORE_VOLATILE_OR_EDITOR, EQC_PRIVATE, EQC_SAVE_FILE, EXT_CONTAINER_EXTENDS, EXT_CONTAINER_EXTENDS_VALID, EXT_EXTENDED, EXT_FINAL, EXT_OVERRIDES, EXT_OVERRIDES_FINAL_ERR, EXT_PRIVATE
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Series
addNoValue()
Adds a new data point without value, i.e.Series
addValue(double value)
Adds a new data series simple value.Series
addValue(GSeriesValue value)
Adds a new data series value.Series
addValues(double... values)
Adds a new data series simple values.Series
addValues(GSeriesValue... values)
Adds a new data series values.Series
clone()
Clone must be overridden.Value.Type
getBestVSColumnHeaderValueType(VSRelativeReference<?> reference)
Requests the value type that would best suit the listener.IChartContainer.Type
getContainerType()
Gets the type of container.java.lang.String
getPlot()
Gets the plot name to associate this series with.SeriesType
getSeriesType()
Gets the series type.GSeriesValue
getValue(int index)
Gets the series value at specified index.int
getValueCount()
Gets the count of values in the series.GSeriesValue[]
getValues()
Gets the series values as an array of values.java.util.List<GSeriesValue>
getValuesList()
Gets the series values as a list of values.SeriesValue
getValuesProp(int index)
Gets the series value property at specified index.VSTable
getVSTable()
Returns the VS table connection.boolean
hasConnection(int vs)
Returns whether this series is with or without VS table connection.void
onBroken(VSRelativeReference<?> reference, VSColumnHeader column)
Called when the property reference has been broken, i.e.void
onCellValueChanged(VSColumnHeader column, VSField cell, Value value, GProp<?> trigger, IPostEventProcessing postProcessing)
Called when the cell value is set in the column.void
onParentStateChanged(IVSComponent parent, IVSComponentState.State state, boolean on)
Called when the parent changes state.void
onResolved(VSRelativeReference<?> reference, VSColumnHeader column)
Called when the property reference has been resolved.void
onRowAdded(VSColumnHeader column, VSRow row, int rowIndex)
Called when a row has been added to the table.void
onRowRemoved(VSColumnHeader column, VSRow row, int rowIndex)
Called when a row has been removed from the table.void
onSelectionChanged(VSColumnHeader column, VSRow row, int rowIndex, boolean isSelected)
Called when the row selection is changed to forward to column listeners.void
onSingleSelectionChanged(VSColumnHeader column, int rowIndex)
Called when the row selection in table single-selection mode is changed to forward to column listeners.void
onStateChanged(VSColumnHeader column, IVSComponentState.State state, boolean on)
Called when the column changes state.void
onStateChanged(VSColumnHeader column, VSField cell, IVSComponentState.State state, boolean on)
Called when a cell in the column changes state.boolean
removeAllValues()
Removes all the values from the data series.boolean
removeValue(int index)
Remove a value at specified index.Series
setPlot(java.lang.String name)
Sets the plot name to associate this series with.void
updateContents()
Called to update the data series with new data from the connected VS table.boolean
usesPropIndex()
Checks if index is relevant for this container, e.g.boolean
verify(PropVerification verification)
Verifies this property container.Methods inherited from class com.iizix.prop.PropCnr
__transferChildProps, addPredefinedProps, addProp, addProp, addProp2, addProp2, appendPropValue, canRequestFocus, completeVirtualize, containsProp, containsProp, convertLoadedProp, couldRequestFocusIfVirtualized, createCopyOfAtom, createUniqueAtom, createUniqueAtom, createUniqueAtom, createVSReference, doPropEqualsArrayValues, doVirtualizePropCnr, enablePropCommunication, enablePropHashMap, equalsTree, equalsTree, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getBool, getBool, getBool, getBool, getChildPropError, getChildPropError, getChildPropErrorSeverity, getChildPropErrorSeverity, getErrorsProp, getExtendsContainer, getExtendsError, getExtendsName, getExtendsOverride, getExtendsPossibleClasses, getFirstProp, getFirstProp, getFocusEngine, getInt, getInt, getInt, getInt, getLong, getLong, getLong, getLong, getNumber, getNumber, getNumber, getNumber, getPossibleChildren, getPredefinedProps, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getPropBaseReference, getPropCnr, getPropCount, getPropCount, getPropIndex, getPropIndex, getPropIndexes, getProps, getProps, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue0, getReferences, getRetargetedVerifyContainer, getString, getString, getString, getString, getValueClasses, getVSReference, hasFocus, hasSendData, initializeElement, initializeExtendsFramework, initializeProp, initializeValue, initPropCnr, insertProp, insertProp2, isChild, isExtendsOverriden, isExtendsPropertyValid, isExtendsRoot, isPropAddRemoveAllowed, isPropCommunicating, isPropExtended, isSibling, list, list, logPropNotFound, maybeAddProp, onInsertProp, onPropDispose, onPropRemoved, onPropTreeInitialized, onReferenceEvent, paramString, prepare, removeAllProps, removeAllProps2, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, reorderProps, replaceProps, requestFocus, requestFocus, requestFocusEx, requestFocusEx, resolveReferences, resolveRuntimeReferences, setBool, setBool, setBool, setBool, setCreateRequiredProp, setExtendsName, setExtendsOverride, setInt, setInt, setInt, setLong, setLong, setLong, setLong, setNumber, setNumber, setNumber, setNumber, setProp, setProp, setProp, setProp2, setProp2, setPropValue, setPropValue, setPropValue, setPropValue, setPropValue, setPropValue, setString, setString, setString, setString, shouldCreateProps, shouldSerializeToXML, toElementString, toNativeValue0, usePropHashMap, validateChildPropInValue, validateClassInstances, validatePropType, validatePropValue, verifyInternalUseOnly, verifyTree, virtualize
Methods inherited from class com.iizix.prop.GProp
addPropError, addPropListener, convertPropError, dispose, equals, equals, equalsErrors, equalsObj, equalsPropValue, equalValues, extendsClone, finalize, fine, fine, finer, finer, finest, finest, fromElementString, getAliasName, getAppSessionGyro, getAppWorker, getAtomPath, getAttribute, getChildReferencePropName, getClientSessionGyro, getClientWorker, getConstraints, getEnvironment, getErroredPropItems, getErroredProps, getErrorsProp, getExtendsRootContainer, getFullPropName, getFullPropName, getFullPropNameDebug, getFullPropNameDebug, getListeners, getModuleFolder, getModuleFolder, getParent, getParent, getProjectName, getPropAtom, getPropError, getPropError, getPropErroredName, getPropErrorSeverity, getPropExtendsFlags, getPropFromPath, getPropFromPath, getPropFromReference, getPropFromReference, getPropIndex, getPropName, getPropPath, getPropPath, getPropReferenceTarget, getPropRootPropMgr, getPropTreeErrorSeverity, getPropValue, getPropValue, getPropValueObject, getReferencePropName, getRelativePropName, getRootFromName, getRootName, getRootParent, getRootParent, getTreeLock, hasChanged, hasPrivateChangeEventProp, hasPropError, hasPropTreeError, info, info, initializeGElement, initializeGProp, isDisposed, isPropChildOf, isPropClientCreated, isPropCreateRequired, isPropExtended, isPropExtendsFinal, isPropExtendsPrivate, isPropExtendsPrivateInRoot, isPropExtendsPrivateInRoot, isPropFile, isPropFolder, isPropForEditor, isPropNullable, isPropPrivate, isPropPrivateAtCreation, isPropReadOnly, isPropReferenceTreeValid, isPropRoot, isPropUSER, isPropValueTreeLockNeeded, isPropVirtualized, isPropVirtualizing, isPropVolatile, isPropVolatileOrEditorOnly, isProxied, list, list, list, mapAliasToReference, mapAliasToReference, mapReferenceToAlias, mapReferenceToAlias, mapReferenceToProjectRelative, modifyPropValue, moveProp, moveProp, moveProp, onEvent, onEventSelf, onPrepare, onPropInvalidateCache, onPropParentChanged, onPropValueSet, onRemoteEvent, onVirtualizationCompleted, onVirtualized, paramValue, post, post, removePropError, removePropListener, removePropUSER, renameProp, renameProp2, resetChangedTree, setChanged, setConstraints, setConstraints, setParent, setPrivateChangeEventProp, setPrivateCreateRequiredProp, setPropError, setPropErroredName, setPropExtended, setPropExtendsFinal, setPropExtendsPrivate, setPropForEditor, setPropNullable, setPropPrivate, setPropReadOnly, setPropUSER, setPropValue, setPropValue, setPropValue, setPropValueIncognito, setPropVolatile, severe, severe, severe, shouldSerializeToXML, throwIfReadOnly, toNativeValue, toString, toString, triggerRemoteEvent, triggerRemoteEvent, validateProp, verifyHasPropertyItem, warning, warning, warning
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface com.iizix.prop.ui.chart.IChartContainer
getChart, getName
Methods inherited from interface com.iizix.prop.IGProp
addPropError, addPropListener, dispose, equals, fine, fine, finer, finer, finest, finest, fromElementString, getAppSessionGyro, getAtomPath, getClientSessionGyro, getConstraints, getEnvironment, getErroredPropItems, getErroredProps, getErrorsProp, getExtendsRootContainer, getFullPropName, getFullPropNameDebug, getModuleFolder, getModuleFolder, getParent, getParent, getPropAtom, getPropBaseReference, getPropError, getPropError, getPropErrorSeverity, getPropExtendsFlags, getPropFromPath, getPropFromReference, getPropIndex, getPropName, getPropPath, getPropPath, getPropRootPropMgr, getPropTreeErrorSeverity, getPropValue, getPropValue, getReferencePropName, getReferences, getRelativePropName, getRootParent, getTreeLock, getValueClasses, getVSReference, hasChanged, hasPrivateChangeEventProp, hasPropError, hasPropTreeError, info, info, initializeGElement, initializeGProp, isDisposed, isPropChildOf, isPropClientCreated, isPropCommunicating, isPropCreateRequired, isPropExtended, isPropExtendsFinal, isPropExtendsPrivate, isPropExtendsPrivateInRoot, isPropExtendsPrivateInRoot, isPropFile, isPropFolder, isPropNullable, isPropPrivate, isPropReadOnly, isPropReferenceTreeValid, isPropRoot, isPropVirtualized, list, list, list, list, list, mapAliasToReference, mapReferenceToAlias, mapReferenceToProjectRelative, moveProp, moveProp, moveProp, onEvent, onEventSelf, onPropTreeInitialized, onRemoteEvent, removePropError, removePropListener, renameProp, resolveRuntimeReferences, setChanged, setConstraints, setConstraints, setParent, setPrivateChangeEventProp, setPropError, setPropExtendsFinal, setPropExtendsPrivate, setPropNullable, setPropPrivate, setPropReadOnly, setPropValue, setPropValue, severe, severe, severe, toElementString, toNativeValue, triggerRemoteEvent, triggerRemoteEvent, validateProp, validatePropType, validatePropValue, verifyHasPropertyItem, warning, warning, warning
Methods inherited from interface com.iizix.prop.IPropCnr
addProp, addProp, addProp2, addProp2, canRequestFocus, canRequestFocus, canRequestFocus, containsProp, containsProp, couldRequestFocusIfVirtualized, couldRequestFocusIfVirtualized, couldRequestFocusIfVirtualized, createCopyOfAtom, createUniqueAtom, createUniqueAtom, enablePropCommunication, enablePropHashMap, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getAllProps, getBool, getBool, getBool, getBool, getChildPropError, getChildPropError, getChildPropErrorSeverity, getChildPropErrorSeverity, getErrorsProp, getExtendsError, getExtendsName, getExtendsPossibleClasses, getFirstProp, getFirstProp, getFocusEngine, getInt, getInt, getInt, getInt, getLong, getLong, getLong, getLong, getNumber, getNumber, getNumber, getNumber, getPossibleChildren, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getProp, getPropCnr, getPropCount, getPropIndex, getPropIndex, getPropIndexes, getProps, getProps, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getPropValue, getString, getString, getString, getString, hasFocus, initializeExtendsFramework, insertProp, insertProp2, isChild, isExtendsOverriden, isExtendsRoot, isPropAddRemoveAllowed, isPropExtended, isSibling, removeAllProps, removeAllProps2, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, removeProp2, reorderProps, requestFocus, requestFocusEx, setBool, setBool, setBool, setBool, setExtendsName, setExtendsOverride, setInt, setInt, setInt, setLong, setLong, setLong, setLong, setNumber, setNumber, setNumber, setNumber, setProp, setProp, setProp, setProp2, setProp2, setPropValue, setPropValue, setPropValue, setPropValue, setPropValue, setPropValue, setString, setString, setString, setString, usePropHashMap, validateClassInstances
Methods inherited from interface com.iizix.prop.IPropCnrBooleanSettings
get, set
Methods inherited from interface com.iizix.prop.IPropCnrColorSettings
get, getNoDefault, set
Methods inherited from interface com.iizix.prop.IPropCnrFillSettings
get, getNoDefault, set
Methods inherited from interface com.iizix.prop.IPropCnrFontSettings
get, getNoDefault, set
Methods inherited from interface com.iizix.prop.IPropCnrStrokeSettings
get, getNoDefault, set
Field Detail
PLOT
public static final java.lang.String PLOT
The "$plot" string for the property.- See Also:
- Constant Field Values
Constructor Detail
Series
public Series(java.lang.String name)
Constructs a new series from a name.- Parameters:
name
- The name of the series. The name MUST be a validAtom
name.- Throws:
java.lang.NullPointerException
- If the name is null.java.lang.IllegalArgumentException
- If the name is invalid.
Series
public Series(Atom atom)
Constructs a new series from an Atom name.This constructor is used by the persistence framework and should not be used.
- Parameters:
atom
- The atom name.
Series
public Series()
Constructs a new series without a name.This constructor is used by the persistence framework and should not be used.
Method Detail
usesPropIndex
public final boolean usesPropIndex()
Checks if index is relevant for this container, e.g. to keep the values in order.- Specified by:
usesPropIndex
in interfaceIPropCnr
- Overrides:
usesPropIndex
in classPropCnr
- Returns:
- true, the series is index-sensitive.
getSeriesType
public SeriesType getSeriesType()
Gets the series type.- Returns:
- The series type, or null if undefined.
getContainerType
public final IChartContainer.Type getContainerType()
Gets the type of container.- Specified by:
getContainerType
in interfaceIChartContainer
- Returns:
- Type.SERIES.
getValuesList
public java.util.List<GSeriesValue> getValuesList()
Gets the series values as a list of values.- Returns:
- A modifiable list with the values. Changing the array will not affect the series.
getValues
public GSeriesValue[] getValues()
Gets the series values as an array of values.- Returns:
- An array with the values.
getValuesProp
public SeriesValue getValuesProp(int index)
Gets the series value property at specified index.- Parameters:
index
- The index.- Returns:
- The value property, or null if index is out of bounds.
getValue
public GSeriesValue getValue(int index)
Gets the series value at specified index.
addValue
public Series addValue(GSeriesValue value)
Adds a new data series value.- Parameters:
value
- The new values to add.- Returns:
this
instance for concatenation use.
addValues
public Series addValues(GSeriesValue... values)
Adds a new data series values.- Parameters:
values
- The new values to add.- Returns:
this
instance for concatenation use.
addValue
public Series addValue(double value)
Adds a new data series simple value.- Parameters:
value
- The new simple value to add.- Returns:
this
instance for concatenation use.
addValues
public Series addValues(double... values)
Adds a new data series simple values.- Parameters:
values
- The new simple values to add.- Returns:
this
instance for concatenation use.
addNoValue
public Series addNoValue()
Adds a new data point without value, i.e. a null value.- Returns:
this
instance for concatenation use.
removeValue
public boolean removeValue(int index)
Remove a value at specified index.- Parameters:
index
- The index of the value to remove.- Returns:
- true for success, false for failure (index out of bounds).
getValueCount
public int getValueCount()
Gets the count of values in the series.- Returns:
- The count.
removeAllValues
public boolean removeAllValues()
Removes all the values from the data series.- Returns:
- true for changed, false for no change (no values present).
setPlot
public Series setPlot(java.lang.String name)
Sets the plot name to associate this series with. If the plot name is not found in the chart, this setting will be ignored.
getPlot
public java.lang.String getPlot()
Gets the plot name to associate this series with.- Returns:
- The plot name, or null if unassigned.
verify
public boolean verify(PropVerification verification)
Verifies this property container. The check performed is the extension of classes and that no circular reference is present.
hasConnection
public boolean hasConnection(int vs)
Returns whether this series is with or without VS table connection.- Parameters:
vs
- The VS connection check: -1 = no matter what type of connection, 0 = no VS connection, 1 = with VS connection.- Returns:
- true if the data series matches the VS connection check setting, always true when "vs=-1".
getVSTable
public VSTable getVSTable()
Returns the VS table connection.- Returns:
- The VS table, or null for none.
onResolved
public void onResolved(VSRelativeReference<?> reference, VSColumnHeader column)
Called when the property reference has been resolved. UI components use this method to set its state according to the field.- Specified by:
onResolved
in interfaceIVSColumnListener
- Parameters:
reference
- The VSRelativeReference instance holding the reference.column
- The target reference.
onBroken
public void onBroken(VSRelativeReference<?> reference, VSColumnHeader column)
Called when the property reference has been broken, i.e. unresolved.- Specified by:
onBroken
in interfaceIVSColumnListener
- Parameters:
reference
- The VSRelativeReference instance holding the reference.column
- The target reference.
getBestVSColumnHeaderValueType
public Value.Type getBestVSColumnHeaderValueType(VSRelativeReference<?> reference)
Requests the value type that would best suit the listener.- Specified by:
getBestVSColumnHeaderValueType
in interfaceIVSColumnBestValueListener
- Parameters:
reference
- The VSRelativeReference instance holding the reference.- Returns:
- null if none is available.
onStateChanged
public void onStateChanged(VSColumnHeader column, IVSComponentState.State state, boolean on)
Called when the column changes state.- Specified by:
onStateChanged
in interfaceIVSColumnListener
- Parameters:
column
- The VS table column.state
- The state change, possible values ENABLED, READONLY, VISIBLE or SELECTED.on
- New state.
onSingleSelectionChanged
public void onSingleSelectionChanged(VSColumnHeader column, int rowIndex)
Called when the row selection in table single-selection mode is changed to forward to column listeners.- Specified by:
onSingleSelectionChanged
in interfaceIVSColumnListener
- Parameters:
column
- The column.rowIndex
- The row index selected, -1 for none.
onSelectionChanged
public void onSelectionChanged(VSColumnHeader column, VSRow row, int rowIndex, boolean isSelected)
Called when the row selection is changed to forward to column listeners.- Specified by:
onSelectionChanged
in interfaceIVSColumnListener
- Parameters:
column
- The column.row
- The row that was changed.rowIndex
- The row index.isSelected
- The selected state.
onRowAdded
public void onRowAdded(VSColumnHeader column, VSRow row, int rowIndex)
Called when a row has been added to the table.- Specified by:
onRowAdded
in interfaceIVSColumnListener
- Parameters:
column
- The column.row
- The row that was added.rowIndex
- The row index where it was inserted.
onRowRemoved
public void onRowRemoved(VSColumnHeader column, VSRow row, int rowIndex)
Called when a row has been removed from the table.- Specified by:
onRowRemoved
in interfaceIVSColumnListener
- Parameters:
column
- The column.row
- The row that was removed.rowIndex
- The row index before removal.
onStateChanged
public void onStateChanged(VSColumnHeader column, VSField cell, IVSComponentState.State state, boolean on)
Called when a cell in the column changes state.- Specified by:
onStateChanged
in interfaceIVSColumnListener
- Parameters:
column
- The VS column.cell
- The VS field.state
- The state change.on
- New state.
onCellValueChanged
public void onCellValueChanged(VSColumnHeader column, VSField cell, Value value, GProp<?> trigger, IPostEventProcessing postProcessing)
Called when the cell value is set in the column.- Specified by:
onCellValueChanged
in interfaceIVSColumnListener
- Parameters:
column
- The VS column.cell
- The VS field.value
- The value, never null, butvalue.isNull()
could be true.trigger
- The trigger property that may be null.postProcessing
- Post-processing instance.
onParentStateChanged
public void onParentStateChanged(IVSComponent parent, IVSComponentState.State state, boolean on)
Called when the parent changes state.- Specified by:
onParentStateChanged
in interfaceIVSComponentListener
- Parameters:
parent
- The parent who's state was changed.state
- The state change, possible values PARENT_ENABLED, PARENT_READONLY, PARENT_VISIBLE.on
- New state.
updateContents
public void updateContents()
Called to update the data series with new data from the connected VS table.