Rogue Wave Views
Charts Package API Reference Guide
Product Documentation:

Rogue Wave Views
Documentation Home
List of all members | Public Member Functions | Protected Member Functions
IlvCompositeChartDisplayer Class Reference

Base class for composite displayers. More...

#include <ilviews/charts/display.h>

Inheritance diagram for IlvCompositeChartDisplayer:
IlvAbstractChartDisplayer IlvValueInterface IlvHiLoOpenCloseChartDisplayer IlvMarkedPolylineChartDisplayer IlvSideBySideChartDisplayer IlvStackedChartDisplayer IlvSideBySideBarChartDisplayer IlvStacked3dBarChartDisplayer IlvStackedBarChartDisplayer IlvStackedPolygonChartDisplayer

Public Member Functions

virtual ~IlvCompositeChartDisplayer ()
 Destructor. More...
 
void addDisplayer (IlvAbstractChartDisplayer *displayer, IlUInt position=IlvLastPositionIndex)
 Adds a displayer to the current displayer. More...
 
virtual IlBoolean boundingBox (IlvRect &bbox, const IlvTransformer *t=0) const
 Returns the bounding box of the graphical representation of data. More...
 
virtual IlBoolean dataPointBBox (IlUInt dataPtIdx, IlvRect &bbox, IlBoolean takeInfoIntoAccount, const IlvTransformer *t=0) const
 Returns the bounding box of the graphical representation of the data points at a given index. More...
 
virtual void draw (IlvPort *dst, const IlvTransformer *t=0, const IlvRegion *clip=0) const
 Draws the graphical representation of data. More...
 
virtual void drawDataPoint (IlUInt dataPtIdx, IlvPort *dst, const IlvTransformer *t=0, const IlvRegion *clip=0) const
 Draws the graphical representation of the data point(s) at a given index. More...
 
virtual void drawDataPoints (IlUInt iMin, IlUInt iMax, IlvPort *dst, const IlvTransformer *t=0, const IlvRegion *clip=0) const
 Draws the graphical representation of the data points between a given interval. More...
 
virtual void drawFill (IlBoolean b)
 Sets the filling mode of the displayer. More...
 
virtual void drawLegendItem (IlvPort *dst, const IlvRect &legendArea, IlvPalette *itemPal, const IlvRegion *clip, IlAny clientData=0) const
 Draws the graphic part of a legend item associated with the current displayer. More...
 
virtual IlvColorgetBackground (IlUInt index=0) const
 Returns the background color of a palette used by the current displayer to display data. More...
 
virtual void getClipArea (IlvRect &area, const IlvTransformer *t) const
 Returns the clipping region that is used for the drawing. More...
 
IlvAbstractChartDisplayergetDisplayer (IlUInt index) const
 Returns one of the displayers that compose the current displayer. More...
 
IlvChartDisplayerFactorygetDisplayerFactory () const
 Returns the displayer factory that has been set on the current displayer. More...
 
virtual IlvAbstractChartDisplayergetDisplayerForDataSet (const IlvChartDataSet *dataSet) const
 Returns the child displayer used to display a given data set. More...
 
IlvAbstractChartDisplayergetDisplayerModel () const
 Returns the model that is used for child displayers. More...
 
virtual IlUInt getDisplayersCount () const
 Returns the number of displayers. More...
 
virtual IlUInt getDisplayItem (IlvChartDataSet *&dataSet, const IlvPoint &viewPoint, const IlvTransformer *t) const
 Returns the item to which a view point corresponds. More...
 
virtual IlBoolean getDisplayPoint (const IlvChartDataSet *dataSet, IlUInt dataPtIdx, IlvPoint &point, const IlvTransformer *t=0) const
 Returns the corresponding screen point for a data point. More...
 
virtual IlvColorgetForeground (IlUInt index=0) const
 Returns the foreground color of a palette used by the current displayer to display data. More...
 
virtual const char * getInternalLegendText (IlUInt index=0) const
 Returns the legend text stored in the current displayer. More...
 
virtual const char * getLegendText (IlUInt index=0) const
 Returns the text that will be used in a legend for the current displayer. More...
 
virtual IlUInt getNearestPoint (IlvChartDataSet *&dataSet, const IlvPoint &viewPoint, IlvDim distance, IlvPoint &point, const IlvTransformer *t=0) const
 Returns the nearest data point. More...
 
virtual IlvPalettegetPalette (IlUInt index=0) const
 Returns a palette used by the current displayer to display data. More...
 
virtual IlvPointInfoCollectiongetPointInfoCollection (const IlvChartDataSet *dataSet) const
 Returns the point information collection defined to be used to display a given data set. More...
 
virtual IlBoolean graphicalRepresentationByDataPoint () const
 Indicates whether there is a graphical representation by data point. More...
 
virtual IlBoolean isContinuous () const
 Indicates whether the graphical representation is continuous. More...
 
virtual IlBoolean isFilled () const
 Indicates whether the graphical representation is filled. More...
 
virtual IlBoolean isViewable () const
 Indicates whether the graphical representation can be viewed. More...
 
IlvAbstractChartDisplayerremoveDisplayer (IlUInt index)
 Removes one of the displayers that compose the current displayer. More...
 
virtual void setBackground (IlvColor *color, IlUInt index=0)
 Sets the background color of a palette used by the current displayer to display data. More...
 
virtual void setChartGraphic (IlvChartGraphic *chart)
 Sets the chart graphic which uses the current displayer. More...
 
virtual IlBoolean setDataPoint (IlvChartDataSet *dataSet, IlUInt dataPtIdx, const IlvPoint &point, const IlvTransformer *t=0) const
 Sets the corresponding data point from a screen point. More...
 
IlvChartDisplayerFactorysetDisplayerFactory (IlvChartDisplayerFactory *factory, IlBoolean reCreate=IlFalse)
 Sets the displayer factory that will be used by the current displayer. More...
 
IlvAbstractChartDisplayersetDisplayerModel (IlvAbstractChartDisplayer *model)
 Sets the model that will be used when creating child displayers. More...
 
virtual void setForeground (IlvColor *color, IlUInt index=0)
 Sets the foreground color of a palette used by the current displayer to display data. More...
 
virtual void setLegendItems (IlvChartLegend *legend) const
 Sets the legend items associated with the current displayer. More...
 
virtual void setLegendText (const char *text, IlUInt index=0)
 Sets the text that will be used in a legend for the current displayer. More...
 
virtual void setMode (IlvDrawMode mode)
 Sets the drawing mode. More...
 
virtual void setOrdinateInfo (IlvCoordinateInfo *ordinateInfo)
 Sets the coordinate information associated with the ordinate scale considered to display data. More...
 
virtual void setOverwrite (IlBoolean o)
 Sets the overwrite mode. More...
 
virtual void setPalette (IlvPalette *pal, IlUInt index=0)
 Sets a palette used by the current displayer to display data. More...
 
virtual void setPointInfoCollection (const IlvChartDataSet *dataSet, IlvPointInfoCollection *ptInfoCollection)
 Sets the point information collection that will be used to display a given data set. More...
 
virtual void write (IlvOutputFile &file) const
 Writes the attributes of the current object in a file. More...
 
- Public Member Functions inherited from IlvAbstractChartDisplayer
virtual ~IlvAbstractChartDisplayer ()
 Destructor. More...
 
void addDataSet (IlvChartDataSet *dataSet)
 Adds a real data set to be displayed by the current displayer. More...
 
virtual IlBoolean canBeProjectedIfOutOfBounds () const
 Indicates whether the graphical representation can be projected when it is out-of-bounds. More...
 
virtual IlvAbstractChartDisplayercopy () const =0
 Virtual copy constructor. More...
 
IlBoolean dataPointToDisplay (const IlvDoublePoint &dataPoint, IlvPoint &point, const IlvTransformer *t=0) const
 Projects a data point into screen coordinates. More...
 
virtual IlBoolean displayDataSet (const IlvChartDataSet *dataSet) const
 Indicates whether the current displayer displays a data set. More...
 
IlBoolean displayToDataPoint (const IlvPoint &point, IlvDoublePoint &dataPoint, const IlvTransformer *t=0) const
 Inversely projects a screen point to retrieve the corresponding data point. More...
 
IlvChartGraphicgetChartGraphic () const
 Returns the chart graphic which uses the current displayer. More...
 
IlvChartDataSetgetDataSet (IlUInt index=0) const
 Returns a data set used by the current displayer. More...
 
IlUInt getDataSetsCount () const
 Returns the number of data sets used by the current displayer. More...
 
IlUInt getMaxDataSetsCount () const
 Returns the maximum number of real data sets that the current displayer is allowed to display. More...
 
const char * getName () const
 Returns the name of the current displayer. More...
 
IlvCoordinateInfogetOrdinateInfo () const
 Deprecated Returns the coordinate information associated with the ordinate scale considered to display data. More...
 
const IlvCompositeChartDisplayergetParentDisplayer () const
 Returns the parent displayer. More...
 
virtual IlvChartDataPointInfogetPointInfo (IlUInt dataPtIdx, const IlvChartDataSet *dataSet=0) const
 Returns the point information associated with a given data point. More...
 
virtual IlvPalettegetProjectedPointsPalette () const
 Returns the palette used to display out-of-bounds values. More...
 
IlvChartDataSetgetRealDataSet (IlUInt index=0) const
 Returns a real data set to be displayed by the current displayer. More...
 
IlUInt getRealDataSetsCount () const
 Returns the number of real data sets. More...
 
virtual IlvCombinedChartDataSetgetVirtualDataSet (const IlvChartDataSet *dataSet, IlUInt &index) const
 Returns a virtual data set used by the current displayer. More...
 
virtual void insertDataSet (IlvChartDataSet *dataSet, IlUInt index=IlvLastPositionIndex)
 Inserts a real data set to be displayed by the current displayer. More...
 
IlBoolean isVisible () const
 Indicates whether the graphical representation is visible. More...
 
virtual void removeDataSet (IlvChartDataSet *dataSet)
 Removes a real data set from the data sets to be displayed by the current displayer. More...
 
virtual void removeDataSets ()
 Removes all the real data sets to be displayed by the current displayer.
 
void removePointInfoCollection (const IlvChartDataSet *dataSet)
 Removes the point information collection defined to be used to display a given data set. More...
 
virtual IlBoolean replaceDataSet (IlvChartDataSet *oldDataSet, IlvChartDataSet *newDataSet)
 Replaces a real data set with another one. More...
 
IlvOutputFilesave (IlvOutputFile &file) const
 Writes a complete description of the current object in a file. More...
 
virtual void setDataSet (IlvChartDataSet *dataSet, IlUInt index=0)
 Sets a real data set to be displayed by the current displayer. More...
 
void setDataSet (IlvChartDataSet *dataSet, IlvPalette *palette, IlUInt index=0)
 Sets a real data set to be displayed by the current displayer. More...
 
virtual void setDataSets (IlUInt count, IlvChartDataSet *const *dataSets)
 Sets the real data sets to be displayed by the current displayer. More...
 
void setName (const char *name)
 Sets the name of the current displayer. More...
 
void setParentDisplayer (const IlvCompositeChartDisplayer *displayer)
 Sets the parent displayer. More...
 
void setVirtualDataSet (IlvCombinedChartDataSet *vDataSet, IlUInt index=0)
 Sets a virtual data set used by the current displayer. More...
 
void setVisible (IlBoolean visible)
 Specifies whether the graphical representation is visible. More...
 
virtual IlBoolean useVirtualDataSets () const
 Indicates whether the current displayer uses virtual data sets. More...
 

Protected Member Functions

 IlvCompositeChartDisplayer (IlvChartDisplayerFactory *factory=0)
 Constructor. More...
 
 IlvCompositeChartDisplayer (IlvInputFile &file)
 Constructor. More...
 
 IlvCompositeChartDisplayer (const IlvCompositeChartDisplayer &displayer)
 Constructor. More...
 
virtual IlvAbstractChartDisplayercreateDisplayer (IlUInt idx, IlvPalette *pal=0)
 Defines the child displayers that will be created by default to compose the current displayer. More...
 
void initDisplayers (IlUInt count, IlvPalette *const *palettes=0)
 Creates the displayers that compose the current displayer. More...
 
virtual IlvAbstractChartDisplayermakeDisplayer (IlUInt idx, IlvPalette *pal=0)
 Creates one of the displayers that compose the current displayer. More...
 
virtual void update ()
 Performs the updates needed when modifications (removing, adding, replacing) are made to the real data sets.
 
virtual void updateDisplayers ()
 Updates the displayers that compose the current displayer. More...
 
- Protected Member Functions inherited from IlvAbstractChartDisplayer
 IlvAbstractChartDisplayer ()
 Constructor. More...
 
 IlvAbstractChartDisplayer (const IlvAbstractChartDisplayer &displayer)
 Constructor. More...
 
 IlvAbstractChartDisplayer (IlvInputFile &file)
 Constructor. More...
 
virtual void dataSetAdded (IlUInt position=IlvLastPositionIndex)
 Performs the updates needed when a real data set is added. More...
 
virtual void dataSetRemoved (IlUInt index)
 Performs the updates needed when a real data set is removed. More...
 
virtual void updateVirtualDataSets ()
 Updates the virtual data sets. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from IlvAbstractChartDisplayer
static IlvAbstractChartDisplayerLoad (IlvInputFile &file)
 Reads a displayer object from a file. More...
 

Detailed Description

Base class for composite displayers.

Library: ilvcharts

This class is an abstract subclass of IlvAbstractChartDisplayer that defines composite displayers that display data with several rendering shapes, thus allowing more complex graphical representations of data to be represented. Examples of composite displayers are displayers representing data with stacked bars or displaying data with stock charts.

All composite displayers are defined as a composite of other displayers which can be single or composite displayers. The displayers that compose a composite displayer are automatically created by the composite displayer. The type of the displayers to be created by default is not specified at this level of the class hierarchy. However, if a displayer model is defined, the displayers that are created by default are copies of the displayer model.

A displayer factory can also be set on a given composite displayer to define the displayers that will be created instead of the displayers created by default for the composite displayer. A displayer factory is defined by subclassing the IlvChartDisplayerFactory class.

See also
IlvAbstractChartDisplayer, IlvHiLoOpenCloseChartDisplayer, IlvPolyPointOrLineChartDisplayer, IlvSideBySideChartDisplayer, IlvStackedChartDisplayer, IlvChartDisplayerFactory.

Constructor & Destructor Documentation

virtual IlvCompositeChartDisplayer::~IlvCompositeChartDisplayer ( )
virtual

Destructor.

The destructor deletes the displayers that compose the current composite displayer. It also deletes the displayer factory if one has been defined.

IlvCompositeChartDisplayer::IlvCompositeChartDisplayer ( IlvChartDisplayerFactory factory = 0)
protected

Constructor.

Initializes a new IlvCompositeChartDisplayer instance.

Parameters
factoryThe displayer factory that is set to be used to create the displayers that compose the current displayer.
IlvCompositeChartDisplayer::IlvCompositeChartDisplayer ( IlvInputFile file)
protected

Constructor.

Initializes a new IlvCompositeChartDisplayer instance from the description read in the input file named file.

Parameters
fileThe file used to initialize the current displayer.
IlvCompositeChartDisplayer::IlvCompositeChartDisplayer ( const IlvCompositeChartDisplayer displayer)
protected

Constructor.

Initializes a new IlvCompositeChartDisplayer instance as a copy of displayer.

Parameters
displayerThe object used to initialize the current one.

Member Function Documentation

void IlvCompositeChartDisplayer::addDisplayer ( IlvAbstractChartDisplayer displayer,
IlUInt  position = IlvLastPositionIndex 
)

Adds a displayer to the current displayer.

Parameters
displayerThe displayer to add to the collection of displayers that compose the current displayer.
positionThe index at which the displayer displayer is added to the collection of displayers that compose the current displayer. If no position is specified, the displayer is added after the displayers that are already defined.
virtual IlBoolean IlvCompositeChartDisplayer::boundingBox ( IlvRect bbox,
const IlvTransformer t = 0 
) const
virtual

Returns the bounding box of the graphical representation of data.

Parameters
bboxThe bounding box of the graphical representation of data displayed by the current displayer.
tThe transformer that is applied to the returned bounding box.
Returns
IlTrue if the bounding box has been successfully computed and IlFalse otherwise.

Implements IlvAbstractChartDisplayer.

virtual IlvAbstractChartDisplayer* IlvCompositeChartDisplayer::createDisplayer ( IlUInt  idx,
IlvPalette pal = 0 
)
protectedvirtual

Defines the child displayers that will be created by default to compose the current displayer.

This method creates the displayer that will be added later at the index idx to the collection of displayers that compose the current displayer and returns it.

The default implementation checks whether a displayer model is defined. (See the IlvCompositeChartDisplayer::setDisplayerModel() method.) If this is the case, it returns a copy of this model. Otherwise, it returns 0.

Parameters
idxThe index at which the created displayer will be added later to the collection of displayers that compose the current displayer.
palThe palette (if any) that will be used by the created displayer.
Returns
A pointer to the created displayer.
Note
This method is used internally and should not be used directly by the user. It is called in the IlvCompositeChartDisplayer::makeDisplayer() method to create the displayers used by default to compose the current displayer when no displayer factory is defined.

Reimplemented in IlvHiLoOpenCloseChartDisplayer, IlvMarkedPolylineChartDisplayer, IlvStacked3dBarChartDisplayer, IlvStackedPolygonChartDisplayer, IlvStackedBarChartDisplayer, and IlvSideBySideBarChartDisplayer.

virtual IlBoolean IlvCompositeChartDisplayer::dataPointBBox ( IlUInt  dataPtIdx,
IlvRect bbox,
IlBoolean  takeInfoIntoAccount,
const IlvTransformer t = 0 
) const
virtual

Returns the bounding box of the graphical representation of the data points at a given index.

Parameters
dataPtIdxThe index of the data point(s) for which we want to get the bounding box of their graphical representation.
bboxThe returned bounding box of the graphical representation of the data point(s).
takeInfoIntoAccountA Boolean value indicating whether the point information must be taken into account when the bounding box is computed.
tThe transformer that is applied to the bounding box.
Returns
IlTrue if the bounding box has been successfully computed and IlFalse otherwise.

Implements IlvAbstractChartDisplayer.

virtual void IlvCompositeChartDisplayer::draw ( IlvPort dst,
const IlvTransformer t = 0,
const IlvRegion clip = 0 
) const
virtual

Draws the graphical representation of data.

Draws the graphical representation of data in the given IlvPort dst using the transformer t and the clipping region clip. In the case of a composite displayer, the draw() method is called for each child displayer that composes the composite displayer.

Parameters
dstThe port used for the drawing.
tThe optional transformer.
clipThe optional clipping region.

Implements IlvAbstractChartDisplayer.

Reimplemented in IlvStackedChartDisplayer.

virtual void IlvCompositeChartDisplayer::drawDataPoint ( IlUInt  dataPtIdx,
IlvPort dst,
const IlvTransformer t = 0,
const IlvRegion clip = 0 
) const
virtual

Draws the graphical representation of the data point(s) at a given index.

Draws the graphical representation of the data point(s) at the index dataPtIdx in the data set(s) to be displayed by the current displayer. The drawing is performed in the port dst using the transformer t, and the clipping region clip.

Parameters
dataPtIdxThe index of the data point(s) to draw.
dstThe port used for the drawing.
tThe optional transformer.
clipThe optional clipping region.

Implements IlvAbstractChartDisplayer.

virtual void IlvCompositeChartDisplayer::drawDataPoints ( IlUInt  iMin,
IlUInt  iMax,
IlvPort dst,
const IlvTransformer t = 0,
const IlvRegion clip = 0 
) const
virtual

Draws the graphical representation of the data points between a given interval.

Draws the graphical representation of the data points between the indexes iMin and iMax in the data set(s) to be displayed by the current displayer. The drawing is performed in the port dst using the transformer t and the clipping region clip.

Parameters
iMinThe minimum index used to select the data points to draw.
iMaxThe maximum index used to select the data points to draw.
dstThe port used for the drawing.
tThe optional transformer.
clipThe optional clipping region.
Note
For handling the needs of chart drawing, iMin is decreased by 1 and iMax is increased by 1 before selecting the data points whenever possible. This ensures continuity when drawing the chart, especially when polylines are used.
Warning
This method is simplified for performance reasons and does not work if the data have to be shifted by the cycle length before being displayed. If the data must be shifted, you have to use the IlvAbstractChartDisplayer::drawDataPoint() method, which works for all cases.

Implements IlvAbstractChartDisplayer.

virtual void IlvCompositeChartDisplayer::drawFill ( IlBoolean  b)
virtual

Sets the filling mode of the displayer.

This method tells the displayer whether the shape to render must be filled (using the background color of the palette) or simply outlined. In the case of a composite displayer, the new mode is propagated to all the child displayers.

Parameters
bThe new value of the Boolean indicating if the shape is to be filled (IlTrue) or only outlined (IlFalse).

Implements IlvAbstractChartDisplayer.

virtual void IlvCompositeChartDisplayer::drawLegendItem ( IlvPort dst,
const IlvRect legendArea,
IlvPalette itemPal,
const IlvRegion clip,
IlAny  clientData = 0 
) const
virtual

Draws the graphic part of a legend item associated with the current displayer.

The drawing is performed in the port dst using the clipping region clip. It is bounded by the rectangle legendArea.

The current implementation of the method simply calls the drawLegendItem method for all the displayers that compose the current displayer.

Parameters
dstThe port used for the drawing.
legendAreaThe area where the drawing is performed.
itemPalThe palette of the legend item associated with the current displayer.
clipThe optional clipping region.
clientDataThe client data defined for the legend item associated with the current displayer.

Implements IlvAbstractChartDisplayer.

virtual IlvColor* IlvCompositeChartDisplayer::getBackground ( IlUInt  index = 0) const
virtual

Returns the background color of a palette used by the current displayer to display data.

If the current displayer is a single displayer (that is, an object inherited from the IlvSingleChartDisplayer class), this method just returns the background color of the palette stored inside the displayer. If the current displayer is a composite displayer (that is, an object inherited from the IlvCompositeChartDisplayer class), this method returns the background color of the palette used by the displayer at the index index in the collection of displayers that compose the current displayer.

Parameters
indexIf the current displayer is a composite displayer, this parameter indicates the index of the displayer within the displayers that compose the current displayer. Otherwise, this parameter can be omitted.
Returns
A pointer to the background color.

Implements IlvAbstractChartDisplayer.

virtual void IlvCompositeChartDisplayer::getClipArea ( IlvRect area,
const IlvTransformer t 
) const
virtual

Returns the clipping region that is used for the drawing.

The current implementation of the method returns in area the area composed of all the clipping regions used by the displayers that make up the current displayer.

Parameters
areaThe clipping region that is used to clip the graphical representation of data drawn by the current displayer.
tThe transformer that is applied to the returned clipping region.

Implements IlvAbstractChartDisplayer.

IlvAbstractChartDisplayer* IlvCompositeChartDisplayer::getDisplayer ( IlUInt  index) const

Returns one of the displayers that compose the current displayer.

Parameters
indexThe index of the displayer to be retrieved from the collection of displayers that compose the current displayer.
Returns
A pointer to the displayer at the index index in the collection of displayers that compose the current displayer.
IlvChartDisplayerFactory* IlvCompositeChartDisplayer::getDisplayerFactory ( ) const

Returns the displayer factory that has been set on the current displayer.

Returns
A pointer to the displayer factory that has been set on the current displayer if one exists and 0 otherwise. (See the Detailed Description paragraph for more information.)
See also
setDisplayerFactory().
virtual IlvAbstractChartDisplayer* IlvCompositeChartDisplayer::getDisplayerForDataSet ( const IlvChartDataSet dataSet) const
virtual

Returns the child displayer used to display a given data set.

The default implementation returns a pointer to the first displayer that displays the data set dataSet among the displayers that compose the current displayer.

dataSet The data set for which we want to get the first displayer displaying this data set.

Returns
A pointer to the first displayer that displays the data set dataSet among the displayers that compose the current displayer, if one exists, and 0 otherwise.

Reimplemented in IlvStackedChartDisplayer.

IlvAbstractChartDisplayer* IlvCompositeChartDisplayer::getDisplayerModel ( ) const

Returns the model that is used for child displayers.

Returns
The displayer model, or 0 if none is defined.
See also
setDisplayerModel().
virtual IlUInt IlvCompositeChartDisplayer::getDisplayersCount ( ) const
virtual

Returns the number of displayers.

Returns
The number of displayers that compose the current displayer.

Implements IlvAbstractChartDisplayer.

virtual IlUInt IlvCompositeChartDisplayer::getDisplayItem ( IlvChartDataSet *&  dataSet,
const IlvPoint viewPoint,
const IlvTransformer t 
) const
virtual

Returns the item to which a view point corresponds.

Returns the index of the data point in the data set dataSet displayed by the current displayer that has its corresponding representation colliding with the point viewPoint. The returned index is equal to IlvBadIndex if no data point has been found. If the data set dataSet passed as a parameter is equal to 0, the nearest data point is searched for in all the data sets displayed by the current displayer. Otherwise, it is searched for in the data set dataSet. At the end, dataSet references the data set in which the data point has been found or 0 if no data set has been found. If no point has been found in a data set, dataSet is also equal to 0.

Parameters
dataSetThe data set from which a data point is retrieved.
viewPointThe point in screen coordinates for which we want to get the nearest displayed data point.
tThe optional transformer.
Returns
The index of the nearest data point that has been found.

Implements IlvAbstractChartDisplayer.

virtual IlBoolean IlvCompositeChartDisplayer::getDisplayPoint ( const IlvChartDataSet dataSet,
IlUInt  dataPtIdx,
IlvPoint point,
const IlvTransformer t = 0 
) const
virtual

Returns the corresponding screen point for a data point.

Returns in point the point in screen coordinates corresponding to the data point at the index dataPtIdx in the data set data set to be displayed by the current displayer.

Parameters
dataSetThe data set to which the considered data point belongs.
dataPtIdxThe index of the considered data point in the data set dataSet.
pointThe screen point corresponding to the considered data point.
tThe transformer that is applied to the returned screen point.
Returns
IlTrue if the corresponding screen point has been successfully computed and IlFalse otherwise.

Implements IlvAbstractChartDisplayer.

virtual IlvColor* IlvCompositeChartDisplayer::getForeground ( IlUInt  index = 0) const
virtual

Returns the foreground color of a palette used by the current displayer to display data.

If the current displayer is a single displayer (that is, an object inherited from the IlvSingleChartDisplayer class), this method just returns the foreground color of the palette stored inside the displayer. If the current displayer is a composite displayer (that is, an object inherited from the IlvCompositeChartDisplayer class), this method returns the foreground color of the palette used by the displayer at the index index in the collection of displayers that compose the current displayer.

Parameters
indexIf the current displayer is a composite displayer, this parameter indicates the index of the displayer within the displayers that compose the current displayer. Otherwise, this parameter can be omitted.
Returns
A pointer to the foreground color.

Implements IlvAbstractChartDisplayer.

virtual const char* IlvCompositeChartDisplayer::getInternalLegendText ( IlUInt  index = 0) const
virtual

Returns the legend text stored in the current displayer.

This text, if it is defined, is used in a legend as comments for the data represented by the current displayer. (See the IlvAbstractChartDisplayer::getLegendText() method.) If the current displayer is a single displayer (that is, an object inherited from the IlvSingleChartDisplayer class), this method just returns the legend text stored inside the displayer. If the current displayer is a composite displayer (that is, an object inherited from the IlvCompositeChartDisplayer class), this method returns the legend text stored for the displayer at the index index in the collection of displayers that compose the current displayer.

Parameters
indexIf the current displayer is a composite displayer, this parameter indicates the index of the displayer within the displayers that compose the current displayer. Otherwise, this parameter can be omitted.
Returns
The legend text that is stored.

Implements IlvAbstractChartDisplayer.

virtual const char* IlvCompositeChartDisplayer::getLegendText ( IlUInt  index = 0) const
virtual

Returns the text that will be used in a legend for the current displayer.

If the current displayer is a single displayer (that is, an object inherited from the IlvSingleChartDisplayer class), this method just returns the legend text stored inside the displayer if it is defined. Otherwise, the method returns the name of the data set obtained by the IlvAbstractChartDisplayer::getRealDataSet() method. If the current displayer is a composite displayer (that is, an object inherited from the IlvCompositeChartDisplayer class), this method returns the text that will be used in a legend for the displayer at the index index in the collection of displayers that compose the current displayer.

Parameters
indexIf the current displayer is a composite displayer, this parameter indicates the index of the displayer within the displayers that compose the current displayer. Otherwise, this parameter can be omitted.
Returns
The text that will be used in a legend as comments for the data represented by the current displayer.

Implements IlvAbstractChartDisplayer.

virtual IlUInt IlvCompositeChartDisplayer::getNearestPoint ( IlvChartDataSet *&  dataSet,
const IlvPoint viewPoint,
IlvDim  distance,
IlvPoint point,
const IlvTransformer t = 0 
) const
virtual

Returns the nearest data point.

Returns the index of the data point in the data set dataSet displayed by the current displayer that has its corresponding point in screen coordinates nearest to the point viewPoint. The returned index is equal to IlvBadIndex if no data point has been found. If the data set dataSet passed as a parameter is equal to 0, the nearest data point is searched for in all the data sets displayed by the current displayer. Otherwise, it is searched for in the data set dataSet. At the end, dataSet references the data set in which the data point has been found or 0 if no data set has been found. If no point has been found in a data set, dataSet is also equal to 0.

Parameters
dataSetThe data set from which a data point is retrieved.
viewPointThe point in screen coordinates for which we want to get the nearest displayed data point.
distanceThe maximum distance allowed between viewPoint and the screen point corresponding to the returned data point.
pointThe screen point corresponding to the nearest data point that has been found.
tThe optional transformer.
Returns
The index of the nearest data point that has been found.

Implements IlvAbstractChartDisplayer.

virtual IlvPalette* IlvCompositeChartDisplayer::getPalette ( IlUInt  index = 0) const
virtual

Returns a palette used by the current displayer to display data.

If the current displayer is a single displayer (that is, an object inherited from the IlvSingleChartDisplayer class), this method just returns the palette stored inside the displayer. If the current displayer is a composite displayer (that is, an object inherited from the IlvCompositeChartDisplayer class), this method returns the palette used by the displayer at the index index in the collection of displayers that compose the current displayer.

Parameters
indexIf the current displayer is a composite displayer, this parameter indicates the index of the displayer within the displayers composing the current displayer. Otherwise, this parameter can be omitted.
Returns
A pointer to the palette.

Implements IlvAbstractChartDisplayer.

virtual IlvPointInfoCollection* IlvCompositeChartDisplayer::getPointInfoCollection ( const IlvChartDataSet dataSet) const
virtual

Returns the point information collection defined to be used to display a given data set.

Parameters
dataSetThe data set that will be displayed by the current displayer.
Returns
A pointer to the point information collection defined to be used to display the data set dataSet.

Implements IlvAbstractChartDisplayer.

virtual IlBoolean IlvCompositeChartDisplayer::graphicalRepresentationByDataPoint ( ) const
virtual

Indicates whether there is a graphical representation by data point.

There is a graphical representation by data point for displayers displaying markers, bars, and so on. But there is not a graphical representation by data point for some displayers (such as polyline displayers, step displayers, and so on) that display continuous graphical representations linking several data points together.

This method returns IlTrue if there is a graphical representation by data point for the current displayer and IlFalse otherwise.

Returns
IlTrue by default.

Reimplemented from IlvAbstractChartDisplayer.

void IlvCompositeChartDisplayer::initDisplayers ( IlUInt  count,
IlvPalette *const *  palettes = 0 
)
protected

Creates the displayers that compose the current displayer.

The displayers are created by calling the IlvCompositeChartDisplayer::makeDisplayer() method count times.

Parameters
countThe number of created displayers that compose the current displayer.
palettesThe array of count palettes that will be used by the created displayers.
Note
This method is used internally and should not be used directly by the user.
virtual IlBoolean IlvCompositeChartDisplayer::isContinuous ( ) const
virtual

Indicates whether the graphical representation is continuous.

The graphical representation of data displayed by a displayer is continuous if the graphical representation displayed for a given data point extends to and relies on another data point. So it is continuous if a given data point is not sufficient to display the graphical representation for this data point. For example, the graphical representation of data by a polyline is continuous since it requires the given data point and the following data point to be able to draw the graphical representation for a given data point. On the other hand, the graphical representation of data by markers is not continuous.

This method returns IlTrue if the current displayer is continuous and IlFalse otherwise.

Returns
IlFalse by default.

Reimplemented from IlvAbstractChartDisplayer.

virtual IlBoolean IlvCompositeChartDisplayer::isFilled ( ) const
virtual

Indicates whether the graphical representation is filled.

A graphical representation is filled for a given data point if it is not only located around this data point but also if it extends towards the origin. This is the case, for example, for displayers representing data with bars. A bar begins at the data point position and is drawn to the abscissa scale in Cartesian charts and to the center of the data display area in polar charts.

This method returns IlTrue if the graphical representation displayed by the current displayer is filled and IlFalse otherwise.

Returns
IlFalse by default.

Reimplemented from IlvAbstractChartDisplayer.

virtual IlBoolean IlvCompositeChartDisplayer::isViewable ( ) const
virtual

Indicates whether the graphical representation can be viewed.

The graphical representation displayed by the current displayer can be viewed if the visibility flag of the current displayer is set to IlTrue and if at least one of the graphical representations displayed by the displayers that compose the current displayer can be viewed.

Returns
IlTrue if the graphical representation displayed by the current displayer can be viewed and IlFalse otherwise.

Reimplemented from IlvAbstractChartDisplayer.

virtual IlvAbstractChartDisplayer* IlvCompositeChartDisplayer::makeDisplayer ( IlUInt  idx,
IlvPalette pal = 0 
)
protectedvirtual

Creates one of the displayers that compose the current displayer.

Creates the displayer that will be added later at the index idx to the collection of displayers that compose the current displayer and returns it.

Parameters
idxThe index at which the created displayer will be added later to the collection of displayers that compose the current displayer.
palThe palette (if any) that will be used by the created displayer.
Returns
A pointer to the created displayer.
Note
This method uses the displayer factory to create the displayer if it is defined. Otherwise, it uses the IlvCompositeChartDisplayer::createDisplayer() method that implements the creation of the displayer to be used by default.
IlvAbstractChartDisplayer* IlvCompositeChartDisplayer::removeDisplayer ( IlUInt  index)

Removes one of the displayers that compose the current displayer.

Parameters
indexThe index of the displayer to remove from the collection of displayers that compose the current displayer.
Returns
A pointer to the displayer that is removed from the collection of displayers.
Note
The displayer is only removed from the collection of displayers that compose the current displayer. It is not deleted. It is the responsibility of the caller to delete the removed displayer, if necessary.
virtual void IlvCompositeChartDisplayer::setBackground ( IlvColor color,
IlUInt  index = 0 
)
virtual

Sets the background color of a palette used by the current displayer to display data.

If the current displayer is a single displayer (that is, an object inherited from the IlvSingleChartDisplayer class), this method just sets the background color of the palette stored inside the displayer. If the current displayer is a composite displayer (that is, an object inherited from the IlvCompositeChartDisplayer class), this method sets the background color of the palette used by the displayer at the index index in the collection of displayers that compose the current displayer.

Parameters
colorThe background color to be set.
indexIf the current displayer is a composite displayer, this parameter indicates the index of the displayer within the displayers that compose the current displayer. Otherwise, this parameter can be omitted.

Implements IlvAbstractChartDisplayer.

virtual void IlvCompositeChartDisplayer::setChartGraphic ( IlvChartGraphic chart)
virtual

Sets the chart graphic which uses the current displayer.

Parameters
chartThe chart graphic which uses the current displayer.
Note
This method is for internal use only and should not be used directly by the user. The chart graphic that uses the current displayer is automatically set when the displayer is added to this chart graphic. Therefore, the chart graphic does not need to be set by hand.

Reimplemented from IlvAbstractChartDisplayer.

virtual IlBoolean IlvCompositeChartDisplayer::setDataPoint ( IlvChartDataSet dataSet,
IlUInt  dataPtIdx,
const IlvPoint point,
const IlvTransformer t = 0 
) const
virtual

Sets the corresponding data point from a screen point.

Computes from the point in screen coordinates point the corresponding data point and sets this data point at the index dataPtIdx in the data set dataSet that is displayed by the current displayer.

Parameters
dataSetThe data set for which we want to set a data point.
dataPtIdxThe index of the data point to be set.
pointThe point in screen coordinates that is considered to be already transformed by t.
tThe transformer that has already been applied to point.
Returns
IlTrue if the data point has been successfully set and IlFalse otherwise.

Implements IlvAbstractChartDisplayer.

IlvChartDisplayerFactory* IlvCompositeChartDisplayer::setDisplayerFactory ( IlvChartDisplayerFactory factory,
IlBoolean  reCreate = IlFalse 
)

Sets the displayer factory that will be used by the current displayer.

Parameters
factoryThe displayer factory that is set to be used to create the displayers that compose the current displayer.
reCreateA Boolean value indicating whether the displayers that compose the current displayer must be re-created after the displayer factory has been set.
IlvAbstractChartDisplayer* IlvCompositeChartDisplayer::setDisplayerModel ( IlvAbstractChartDisplayer model)

Sets the model that will be used when creating child displayers.

This methods allows you to define a displayer model that will be copied each time a child displayer must be created. (See the IlvCompositeChartDisplayer::createDisplayer() method.)

Parameters
modelThe new model.
Returns
The old model, or 0 if none was defined.
virtual void IlvCompositeChartDisplayer::setForeground ( IlvColor color,
IlUInt  index = 0 
)
virtual

Sets the foreground color of a palette used by the current displayer to display data.

If the current displayer is a single displayer (that is, an object inherited from the IlvSingleChartDisplayer class), this method just sets the foreground color of the palette stored inside the displayer. If the current displayer is a composite displayer (that is, an object inherited from the IlvCompositeChartDisplayer class), this method sets the foreground color of the palette used by the displayer at the index index in the collection of displayers that compose the current displayer.

Parameters
colorThe foreground color to be set.
indexIf the current displayer is a composite displayer, this parameter indicates the index of the displayer within the displayers that compose the current displayer. Otherwise, this parameter can be omitted.

Implements IlvAbstractChartDisplayer.

virtual void IlvCompositeChartDisplayer::setLegendItems ( IlvChartLegend legend) const
virtual

Sets the legend items associated with the current displayer.

Sets the legend items associated with the current displayer on the legend legend.

The current implementation simply calls, if the current displayer can be viewed, the IlvChartLegend::addLegendItem() method for each viewable child displayer that composes the current displayer. (See the IlvAbstractChartDisplayer::isViewable() method.)

See the IlvAbstractChartDisplayer::setLegendItems() method for more details.

Parameters
legendThe legend that will display the legend items associated with the current displayer.

Implements IlvAbstractChartDisplayer.

Reimplemented in IlvMarkedPolylineChartDisplayer.

virtual void IlvCompositeChartDisplayer::setLegendText ( const char *  text,
IlUInt  index = 0 
)
virtual

Sets the text that will be used in a legend for the current displayer.

If the current displayer is a single displayer (that is, an object inherited from the IlvSingleChartDisplayer class), this method just sets the legend text stored inside the displayer. If the current displayer is a composite displayer (that is, an object inherited from the IlvCompositeChartDisplayer class), this method sets the legend text defined for the displayer at the index index in the collection of displayers that compose the current displayer.

Parameters
textThe text that will be used in a legend for the current displayer. The text passed as a parameter is copied.
indexIf the current displayer is a composite displayer, this parameter indicates the index of the displayer within the displayers that compose the current displayer. Otherwise, this parameter can be omitted.

Implements IlvAbstractChartDisplayer.

virtual void IlvCompositeChartDisplayer::setMode ( IlvDrawMode  mode)
virtual

Sets the drawing mode.

Sets the drawing mode for the current object. The information is passed to all the palettes used by the current displayer to display data.

Parameters
modeThe new drawing mode for the current object.

Implements IlvAbstractChartDisplayer.

virtual void IlvCompositeChartDisplayer::setOrdinateInfo ( IlvCoordinateInfo ordinateInfo)
virtual

Sets the coordinate information associated with the ordinate scale considered to display data.

This method allows you to specify the ordinate scale that will be considered to display data for the current displayer. The coordinate information associated with this ordinate scale is set in the current displayer. In the case of a composite displayer, the coordinate information is propagated to all the child displayers.

Parameters
ordinateInfoThe new coordinate information associated with the ordinate scale that will be considered to display the data for the current displayer.
Note
This method is for internal use only and should not be directly used by the user. The coordinate information associated with the ordinate scale that will be considered to display data for the current displayer is automatically set when the displayer is added to a chart graphic. (See the IlvChartGraphic::addDisplayer() method.) Therefore, the coordinate information does not need to be set by hand.

Reimplemented from IlvAbstractChartDisplayer.

virtual void IlvCompositeChartDisplayer::setOverwrite ( IlBoolean  o)
virtual

Sets the overwrite mode.

Modifies the way the drawing member functions of the current object operate when drawing on the root port. If the o parameter is set to IlFalse, the drawing operations are hidden by the windows stored on the top window. If the parameter is set to IlTrue, the drawing operations are performed on top of every window present on the screen, just as if the windows were part of the root window. The information is passed to all the palettes used by the current displayer to display data.

Parameters
oThe new value of the Boolean indicating the way the drawing member functions operate.

Implements IlvAbstractChartDisplayer.

virtual void IlvCompositeChartDisplayer::setPalette ( IlvPalette pal,
IlUInt  index = 0 
)
virtual

Sets a palette used by the current displayer to display data.

If the current displayer is a single displayer (that is, an object inherited from the IlvSingleChartDisplayer class), this method just sets the palette stored inside the displayer. If the current displayer is a composite displayer (that is, an object inherited from the IlvCompositeChartDisplayer class), this method sets the palette used by the displayer at the index index in the collection of displayers that compose the current displayer.

Parameters
palThe palette to be set.
indexIf the current displayer is a composite displayer, this parameter indicates the index of the displayer within the displayers composing the current displayer. Otherwise, this parameter can be omitted.

Implements IlvAbstractChartDisplayer.

virtual void IlvCompositeChartDisplayer::setPointInfoCollection ( const IlvChartDataSet dataSet,
IlvPointInfoCollection ptInfoCollection 
)
virtual

Sets the point information collection that will be used to display a given data set.

This new point information collection has priority. It is the one that will be considered to display the data set dataSet, even if a point information collection has already been defined for the data set dataSet by using the IlvChartDataSet::setPointInfoCollection() method.

Parameters
dataSetThe data set that will be displayed by the current displayer.
ptInfoCollectionThe point information collection that will be used to display the data set dataSet.

Implements IlvAbstractChartDisplayer.

virtual void IlvCompositeChartDisplayer::updateDisplayers ( )
protectedvirtual

Updates the displayers that compose the current displayer.

Note
This method is used internally and should not be used directly by the user. It is called in the IlvCompositeChartDisplayer::update() method to update the displayers that compose the current displayer when the real data sets have been modified.

Reimplemented in IlvHiLoOpenCloseChartDisplayer, IlvMarkedPolylineChartDisplayer, IlvStacked3dBarChartDisplayer, and IlvSideBySideChartDisplayer.

virtual void IlvCompositeChartDisplayer::write ( IlvOutputFile file) const
virtual

Writes the attributes of the current object in a file.

Called by the IlvAbstractChartDisplayer::save() method. This method can be overloaded in subclasses that define new attributes. The information written by the write() method is read by the IO constructor, which takes an IlvInputFile as its only argument. Both this method and the IO constructor can be automatically declared by using the DeclareChartDisplayerTypeInfo() macro within the class declaration.

Parameters
fileThe file where the attributes of the current object are written.

Reimplemented from IlvAbstractChartDisplayer.


© Copyright 2016, Rogue Wave Software, Inc. All Rights Reserved.
Rogue Wave is a registered trademark of Rogue Wave Software, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.