KD Chart API Documentation  3.1
Signals | Public Member Functions | Protected Slots | Protected Member Functions | List of all members
KDChart::AbstractDiagram Class Referenceabstract

AbstractDiagram defines the interface for diagram classes. More...

#include <KDChartAbstractDiagram.h>

Inheritance diagram for KDChart::AbstractDiagram:
KDChart::AbstractCartesianDiagram KDChart::AbstractPolarDiagram KDChart::AbstractTernaryDiagram KDChart::BarDiagram KDChart::LineDiagram KDChart::Plotter KDChart::StockDiagram KDChart::AbstractPieDiagram KDChart::PolarDiagram KDChart::RadarDiagram KDChart::TernaryLineDiagram KDChart::TernaryPointDiagram

Signals

void aboutToBeDestroyed ()
 
void attributesModelAboutToChange (AttributesModel *newModel, AttributesModel *oldModel)
 
void boundariesChanged ()
 
void dataHidden ()
 
void layoutChanged (AbstractDiagram *)
 
void modelDataChanged ()
 
void modelsChanged ()
 
void propertiesChanged ()
 
void viewportCoordinateSystemChanged ()
 

Public Member Functions

 ~AbstractDiagram () override
 
bool allowOverlappingDataValueTexts () const
 
bool antiAliasing () const
 
virtual AttributesModelattributesModel () const
 
QBrush brush () const
 
QBrush brush (const QModelIndex &index) const
 
QBrush brush (int dataset) const
 
bool compare (const AbstractDiagram *other) const
 
AbstractCoordinatePlanecoordinatePlane () const
 
const QPair< QPointF, QPointF > dataBoundaries () const
 Return the bottom left and top right data point, that the diagram will display (unless the grid adjusts these values). More...
 
void dataChanged (const QModelIndex &topLeft, const QModelIndex &bottomRight, const QVector< int > &roles=QVector< int >()) override
 
QList< QBrush > datasetBrushes () const
 
int datasetDimension () const
 
QStringList datasetLabels () const
 
QList< MarkerAttributesdatasetMarkers () const
 
QList< QPen > datasetPens () const
 
DataValueAttributes dataValueAttributes () const
 
DataValueAttributes dataValueAttributes (const QModelIndex &index) const
 
DataValueAttributes dataValueAttributes (int dataset) const
 
void doItemsLayout () override
 
int horizontalOffset () const override
 
QModelIndex indexAt (const QPoint &point) const override
 
QModelIndexList indexesAt (const QPoint &point) const
 
QModelIndexList indexesIn (const QRect &rect) const
 
bool isHidden () const
 
bool isHidden (const QModelIndex &index) const
 
bool isHidden (int dataset) const
 
bool isIndexHidden (const QModelIndex &index) const override
 
QStringList itemRowLabels () const
 
QModelIndex moveCursor (CursorAction cursorAction, Qt::KeyboardModifiers modifiers) override
 
virtual void paint (PaintContext *paintContext)=0
 
void paintDataValueText (QPainter *painter, const QModelIndex &index, const QPointF &pos, qreal value)
 
void paintMarker (QPainter *painter, const DataValueAttributes &a, const QModelIndex &index, const QPointF &pos)
 
virtual void paintMarker (QPainter *painter, const MarkerAttributes &markerAttributes, const QBrush &brush, const QPen &, const QPointF &point, const QSizeF &size)
 
void paintMarker (QPainter *painter, const QModelIndex &index, const QPointF &pos)
 
QPen pen () const
 
QPen pen (const QModelIndex &index) const
 
QPen pen (int dataset) const
 
bool percentMode () const
 Returns whether this diagram is drawn in percent mode. More...
 
virtual void resize (const QSizeF &area)=0
 
void scrollTo (const QModelIndex &index, ScrollHint hint=EnsureVisible) override
 
void setAllowOverlappingDataValueTexts (bool allow)
 
void setAntiAliasing (bool enabled)
 
virtual void setAttributesModel (AttributesModel *model)
 Sets an external AttributesModel on this diagram. More...
 
void setBrush (const QBrush &brush)
 
void setBrush (const QModelIndex &index, const QBrush &brush)
 
void setBrush (int dataset, const QBrush &brush)
 
virtual void setCoordinatePlane (AbstractCoordinatePlane *plane)
 
Q_DECL_DEPRECATED void setDatasetDimension (int dimension)
 
void setDataValueAttributes (const DataValueAttributes &a)
 
void setDataValueAttributes (const QModelIndex &index, const DataValueAttributes &a)
 
void setDataValueAttributes (int dataset, const DataValueAttributes &a)
 
void setHidden (bool hidden)
 
void setHidden (const QModelIndex &index, bool hidden)
 
void setHidden (int dataset, bool hidden)
 
void setModel (QAbstractItemModel *model) override
 
void setPen (const QModelIndex &index, const QPen &pen)
 
void setPen (const QPen &pen)
 
void setPen (int dataset, const QPen &pen)
 
Q_DECL_DEPRECATED void setPercentMode (bool percent)
 Deprecated method that turns the percent mode of this diagram on or off. More...
 
void setRootIndex (const QModelIndex &idx) override
 Reimplemented for internal purposes. More...
 
void setSelection (const QRect &rect, QItemSelectionModel::SelectionFlags command) override
 
void setSelectionModel (QItemSelectionModel *selectionModel) override
 
void setUnitPrefix (const QString &prefix, int column, Qt::Orientation orientation)
 
void setUnitPrefix (const QString &prefix, Qt::Orientation orientation)
 
void setUnitSuffix (const QString &suffix, int column, Qt::Orientation orientation)
 
void setUnitSuffix (const QString &suffix, Qt::Orientation orientation)
 
QString unitPrefix (int column, Qt::Orientation orientation, bool fallback=false) const
 
QString unitPrefix (Qt::Orientation orientation) const
 
QString unitSuffix (int column, Qt::Orientation orientation, bool fallback=false) const
 
QString unitSuffix (Qt::Orientation orientation) const
 
void update () const
 
void useDefaultColors ()
 
void useRainbowColors ()
 
virtual bool usesExternalAttributesModel () const
 
void useSubduedColors ()
 
int verticalOffset () const override
 
QRect visualRect (const QModelIndex &index) const override
 
virtual QRegion visualRegion (const QModelIndex &index) const
 
QRegion visualRegionForSelection (const QItemSelection &selection) const override
 

Protected Slots

void setDataBoundariesDirty () const
 

Protected Member Functions

 AbstractDiagram (Private *p, QWidget *parent, AbstractCoordinatePlane *plane)
 
 AbstractDiagram (QWidget *parent=nullptr, AbstractCoordinatePlane *plane=nullptr)
 
QModelIndex attributesModelRootIndex () const
 returns a QModelIndex pointing into the AttributesModel that corresponds to the root index of the diagram. More...
 
virtual const QPair< QPointF, QPointF > calculateDataBoundaries () const =0
 
virtual bool checkInvariants (bool justReturnTheStatus=false) const
 
virtual Q_DECL_DEPRECATED void paintDataValueTexts (QPainter *painter)
 
virtual Q_DECL_DEPRECATED void paintMarkers (QPainter *painter)
 
void setAttributesModelRootIndex (const QModelIndex &)
 
void setDatasetDimensionInternal (int dimension)
 
Q_DECL_DEPRECATED qreal valueForCell (int row, int column) const
 

Detailed Description

AbstractDiagram defines the interface for diagram classes.

AbstractDiagram is the base class for diagram classes ("chart types").

It defines the interface, that needs to be implemented for the diagram, to function within the KDChart framework. It extends Interview's QAbstractItemView.

Definition at line 38 of file KDChartAbstractDiagram.h.

Constructor & Destructor Documentation

◆ AbstractDiagram() [1/2]

KDChart::AbstractDiagram::AbstractDiagram ( Private *  p,
QWidget *  parent,
AbstractCoordinatePlane plane 
)
inlineexplicitprotected

◆ AbstractDiagram() [2/2]

AbstractDiagram::AbstractDiagram ( QWidget *  parent = nullptr,
AbstractCoordinatePlane plane = nullptr 
)
explicitprotected

Definition at line 37 of file KDChartAbstractDiagram.cpp.

◆ ~AbstractDiagram()

AbstractDiagram::~AbstractDiagram ( )
override

Definition at line 45 of file KDChartAbstractDiagram.cpp.

References aboutToBeDestroyed().

Member Function Documentation

◆ aboutToBeDestroyed

void KDChart::AbstractDiagram::aboutToBeDestroyed ( )
signal

This signal is emitted when this diagram is being destroyed, but before all the data, i.e. the attributes model, is invalidated.

Referenced by KDChart::DiagramObserver::DiagramObserver(), and ~AbstractDiagram().

◆ allowOverlappingDataValueTexts()

bool AbstractDiagram::allowOverlappingDataValueTexts ( ) const
Returns
Whether data value labels are allowed to overlap.

Definition at line 335 of file KDChartAbstractDiagram.cpp.

References d.

Referenced by compare().

◆ antiAliasing()

bool AbstractDiagram::antiAliasing ( ) const
Returns
Whether anti-aliasing is to be used for rendering this diagram.

Definition at line 346 of file KDChartAbstractDiagram.cpp.

References d.

Referenced by compare().

◆ attributesModel()

AttributesModel * AbstractDiagram::attributesModel ( ) const
virtual

◆ attributesModelAboutToChange

void KDChart::AbstractDiagram::attributesModelAboutToChange ( AttributesModel newModel,
AttributesModel oldModel 
)
signal

This signal is emitted just before the new attributes model is connected internally. It gives you a chance to connect to its signals first or perform other setup work.

◆ attributesModelRootIndex()

QModelIndex AbstractDiagram::attributesModelRootIndex ( ) const
protected

◆ boundariesChanged

void KDChart::AbstractDiagram::boundariesChanged ( )
signal

Emitted upon change of a data boundary

Referenced by KDChart::AbstractCoordinatePlane::addDiagram(), and KDChart::Plotter::setType().

◆ brush() [1/3]

QBrush AbstractDiagram::brush ( ) const

Retrieve the brush to be used for painting datapoints globally. This will fall back automatically to the default settings, if there are no specific settings.

Returns
The brush to use for painting.

Definition at line 664 of file KDChartAbstractDiagram.cpp.

References attributesModel(), KDChart::AttributesModel::data(), and KDChart::DatasetBrushRole.

Referenced by brush(), datasetBrushes(), KDChart::TernaryLineDiagram::paint(), KDChart::TernaryPointDiagram::paint(), KDChart::PolarDiagram::paint(), KDChart::RadarDiagram::paint(), paintMarker(), setBrush(), KDChart::StockDiagram::setDownTrendCandlestickBrush(), and KDChart::StockDiagram::setUpTrendCandlestickBrush().

◆ brush() [2/3]

QBrush AbstractDiagram::brush ( const QModelIndex &  index) const

Retrieve the brush to be used, for painting the datapoint at the given index in the model.

Parameters
indexThe index of the datapoint in the model. With a dataset dimension of two, this is the index of the key of each key/value pair.
Returns
The brush to use for painting.

Definition at line 677 of file KDChartAbstractDiagram.cpp.

References attributesModel(), KDChart::AttributesModel::data(), and KDChart::DatasetBrushRole.

◆ brush() [3/3]

QBrush AbstractDiagram::brush ( int  dataset) const

Retrieve the brush to be used for the given dataset. This will fall back automatically to what was set at model level, if there are no dataset specific settings.

Parameters
datasetThe dataset to retrieve the brush for.
Returns
The brush to use for painting.

Definition at line 669 of file KDChartAbstractDiagram.cpp.

References brush(), d, and KDChart::DatasetBrushRole.

◆ calculateDataBoundaries()

virtual const QPair<QPointF, QPointF> KDChart::AbstractDiagram::calculateDataBoundaries ( ) const
protectedpure virtual

◆ checkInvariants()

bool AbstractDiagram::checkInvariants ( bool  justReturnTheStatus = false) const
protectedvirtual

◆ compare()

bool AbstractDiagram::compare ( const AbstractDiagram other) const

Returns true if both diagrams have the same settings.

Definition at line 57 of file KDChartAbstractDiagram.cpp.

References allowOverlappingDataValueTexts(), antiAliasing(), attributesModel(), KDChart::AttributesModel::compare(), datasetDimension(), and percentMode().

◆ coordinatePlane()

AbstractCoordinatePlane * AbstractDiagram::coordinatePlane ( ) const

◆ dataBoundaries()

const QPair< QPointF, QPointF > AbstractDiagram::dataBoundaries ( ) const

Return the bottom left and top right data point, that the diagram will display (unless the grid adjusts these values).

This method returns a cached result of calculations done by calculateDataBoundaries. Classes derived from AbstractDiagram must implement the calculateDataBoundaries function, to specify their own way of calculating the data boundaries. If derived classes want to force recalculation of the data boundaries, they can call setDataBoundariesDirty()

Returned value is in diagram coordinates.

Definition at line 84 of file KDChartAbstractDiagram.cpp.

References calculateDataBoundaries(), and d.

Referenced by KDChart::PolarGrid::drawGrid(), KDChart::RadarGrid::drawGrid(), KDChart::CartesianCoordinatePlane::getRawDataBoundingRectFromDiagrams(), KDChart::BarDiagram::paint(), KDChart::LeveyJenningsDiagram::paint(), KDChart::LineDiagram::paint(), KDChart::Plotter::paint(), and KDChart::RadarDiagram::paint().

◆ dataChanged()

void AbstractDiagram::dataChanged ( const QModelIndex &  topLeft,
const QModelIndex &  bottomRight,
const QVector< int > &  roles = QVector<int>() 
)
override

Reimplemented for internal purposes.

Definition at line 217 of file KDChartAbstractDiagram.cpp.

References setDataBoundariesDirty().

◆ dataHidden

void KDChart::AbstractDiagram::dataHidden ( )
signal

This signal is emitted, when the hidden status of at least one data cell was (un)set.

Referenced by setHidden().

◆ datasetBrushes()

QList< QBrush > AbstractDiagram::datasetBrushes ( ) const

The set of dataset brushes currently used, for use in legends, etc.

Note
Cell-level override brushes, if set, take precedence over the dataset values, so you might need to check these too, in order to find the brush, that is used for a single cell.
Returns
The current set of dataset brushes.

Definition at line 870 of file KDChartAbstractDiagram.cpp.

References brush(), and d.

Referenced by KDChart::Legend::datasetCount(), KDChart::Legend::removeDiagram(), and KDChart::Legend::setBrushesFromDiagram().

◆ datasetDimension()

int AbstractDiagram::datasetDimension ( ) const

The dataset dimension of a diagram determines how many value dimensions it expects each datapoint to have. For each dimension and data series it will expect one column of values in the model. If the dimension is 1, automatic values will be used for X.

For example, a diagram with the default dimension of 1 will have one column per data series (the Y values) and will use automatic values for X (1, 2, 3, ... n). If the dimension is 2, the diagram will use the first, (and the third, fifth, etc) columns as X values, and the second, (and the fourth, sixth, etc) column as Y values.

Returns
The dataset dimension of the diagram.

Definition at line 921 of file KDChartAbstractDiagram.cpp.

References d.

Referenced by compare(), KDChart::CartesianCoordinatePlane::getDataDimensionsList(), KDChart::TernaryLineDiagram::paint(), KDChart::TernaryPointDiagram::paint(), paintDataValueTexts(), paintMarkers(), KDChart::LineDiagram::setType(), and KDChart::Plotter::setType().

◆ datasetLabels()

QStringList AbstractDiagram::datasetLabels ( ) const

The set of dataset labels currently displayed, for use in legends, etc.

Returns
The set of dataset labels currently displayed.

Definition at line 857 of file KDChartAbstractDiagram.cpp.

References d.

Referenced by KDChart::Legend::datasetCount().

◆ datasetMarkers()

QList< MarkerAttributes > AbstractDiagram::datasetMarkers ( ) const

The set of dataset markers currently used, for use in legends, etc.

Note
Cell-level override markers, if set, take precedence over the dataset values, so you might need to check these too, in order to find the marker, that is shown for a single cell.
Returns
The current set of dataset brushes.

Definition at line 896 of file KDChartAbstractDiagram.cpp.

References d, dataValueAttributes(), and KDChart::DataValueAttributes::markerAttributes().

◆ datasetPens()

QList< QPen > AbstractDiagram::datasetPens ( ) const

The set of dataset pens currently used, for use in legends, etc.

Note
Cell-level override pens, if set, take precedence over the dataset values, so you might need to check these too, in order to find the pens, that is used for a single cell.
Returns
The current set of dataset pens.

Definition at line 883 of file KDChartAbstractDiagram.cpp.

References d, and pen().

Referenced by KDChart::Legend::removeDiagram().

◆ dataValueAttributes() [1/3]

DataValueAttributes AbstractDiagram::dataValueAttributes ( ) const

◆ dataValueAttributes() [2/3]

DataValueAttributes AbstractDiagram::dataValueAttributes ( const QModelIndex &  index) const

Retrieve the DataValueAttributes for the given index. This will fall back automatically to what was set at dataset or model level, if there are no datapoint specific settings.

Parameters
indexThe datapoint to retrieve the attributes for. With a dataset dimension of two, this is the index of the key of each key/value pair.
Returns
The DataValueAttributes for the given index.

Definition at line 312 of file KDChartAbstractDiagram.cpp.

References attributesModel(), KDChart::AttributesModel::data(), and KDChart::DataValueLabelAttributesRole.

◆ dataValueAttributes() [3/3]

DataValueAttributes AbstractDiagram::dataValueAttributes ( int  dataset) const

Retrieve the DataValueAttributes for the given dataset. This will fall back automatically to what was set at model level, if there are no dataset specific settings.

Parameters
datasetThe dataset to retrieve the attributes for.
Returns
The DataValueAttributes for the given dataset.

Definition at line 292 of file KDChartAbstractDiagram.cpp.

References d, dataValueAttributes(), and KDChart::DataValueLabelAttributesRole.

◆ doItemsLayout()

void AbstractDiagram::doItemsLayout ( )
override

Reimplemented for internal purposes.

Definition at line 208 of file KDChartAbstractDiagram.cpp.

References d, and update().

Referenced by setModel().

◆ horizontalOffset()

int AbstractDiagram::horizontalOffset ( ) const
override

Reimplemented for internal purposes.

Definition at line 787 of file KDChartAbstractDiagram.cpp.

◆ indexAt()

QModelIndex AbstractDiagram::indexAt ( const QPoint &  point) const
override

Reimplemented for internal purposes.

Definition at line 963 of file KDChartAbstractDiagram.cpp.

References d.

◆ indexesAt()

QModelIndexList AbstractDiagram::indexesAt ( const QPoint &  point) const

This method is added alongside with indexAt from QAIM, since in kdchart multiple indexes can be displayed at the same spot.

Definition at line 968 of file KDChartAbstractDiagram.cpp.

References d.

◆ indexesIn()

QModelIndexList AbstractDiagram::indexesIn ( const QRect &  rect) const

Definition at line 973 of file KDChartAbstractDiagram.cpp.

References d.

◆ isHidden() [1/3]

bool AbstractDiagram::isHidden ( ) const

Retrieve the hidden status specified globally. This will fall back automatically to the default settings ( = not hidden), if there are no specific settings.

Returns
The global hidden status.

Definition at line 249 of file KDChartAbstractDiagram.cpp.

References attributesModel(), KDChart::DataHiddenRole, and KDChart::AttributesModel::modelData().

Referenced by isHidden().

◆ isHidden() [2/3]

bool AbstractDiagram::isHidden ( const QModelIndex &  index) const

Retrieve the hidden status for the given index. This will fall back automatically to what was set at dataset or diagram level, if there are no datapoint specific settings.

Parameters
indexThe datapoint to retrieve the hidden status for.
Returns
The hidden status for the given index.

Definition at line 262 of file KDChartAbstractDiagram.cpp.

References attributesModel(), d, KDChart::DataHiddenRole, and isHidden().

◆ isHidden() [3/3]

bool AbstractDiagram::isHidden ( int  dataset) const

Retrieve the hidden status for the given dataset. This will fall back automatically to what was set at diagram level, if there are no dataset specific settings.

Parameters
datasetThe dataset to retrieve the hidden status for.
Returns
The hidden status for the given dataset.

Definition at line 254 of file KDChartAbstractDiagram.cpp.

References d, KDChart::DataHiddenRole, and isHidden().

◆ isIndexHidden()

bool AbstractDiagram::isIndexHidden ( const QModelIndex &  index) const
override

Reimplemented for internal purposes.

Definition at line 797 of file KDChartAbstractDiagram.cpp.

◆ itemRowLabels()

QStringList AbstractDiagram::itemRowLabels ( ) const

The set of item row labels currently displayed, for use in Abscissa axes, etc.

Returns
The set of item row labels currently displayed.

Definition at line 843 of file KDChartAbstractDiagram.cpp.

References attributesModel(), attributesModelRootIndex(), KDChart::AttributesModel::headerData(), KDChart::AttributesModel::rowCount(), unitPrefix(), and unitSuffix().

◆ layoutChanged

void KDChart::AbstractDiagram::layoutChanged ( AbstractDiagram )
signal

Diagrams are supposed to emit this signal, when the layout of one of their element changes. Layouts can change, for example, when axes are added or removed, or when the configuration was changed in a way that the axes or the diagram itself are displayed in a different geometry. Changes in the diagrams coordinate system also result in the layoutChanged() signal being emitted.

Referenced by KDChart::CartesianCoordinatePlane::addDiagram(), KDChart::PolarCoordinatePlane::addDiagram(), KDChart::LineDiagram::setCenterDataPoints(), setDatasetDimensionInternal(), KDChart::AbstractPieDiagram::setPieAttributes(), KDChart::BarDiagram::setThreeDBarAttributes(), KDChart::AbstractPieDiagram::setThreeDPieAttributes(), KDChart::LineDiagram::setType(), and KDChart::Plotter::setType().

◆ modelDataChanged

void KDChart::AbstractDiagram::modelDataChanged ( )
signal

This signal is emitted, when the model data is changed.

Referenced by KDChart::AbstractCoordinatePlane::addDiagram(), and KDChart::AbstractCoordinatePlane::takeDiagram().

◆ modelsChanged

void KDChart::AbstractDiagram::modelsChanged ( )
signal

◆ moveCursor()

QModelIndex AbstractDiagram::moveCursor ( CursorAction  cursorAction,
Qt::KeyboardModifiers  modifiers 
)
override

Reimplemented for internal purposes.

Definition at line 782 of file KDChartAbstractDiagram.cpp.

◆ paint()

virtual void KDChart::AbstractDiagram::paint ( PaintContext paintContext)
pure virtual

Draw the diagram contents to the rectangle and painter, that are passed in as part of the paint context.

Parameters
paintContextAll information needed for painting.

Implemented in KDChart::TernaryPointDiagram, KDChart::TernaryLineDiagram, KDChart::RingDiagram, KDChart::RadarDiagram, KDChart::PolarDiagram, KDChart::PieDiagram, KDChart::StockDiagram, KDChart::Plotter, KDChart::LineDiagram, KDChart::LeveyJenningsDiagram, and KDChart::BarDiagram.

◆ paintDataValueText()

void AbstractDiagram::paintDataValueText ( QPainter *  painter,
const QModelIndex &  index,
const QPointF &  pos,
qreal  value 
)

Definition at line 362 of file KDChartAbstractDiagram.cpp.

References d.

Referenced by paintDataValueTexts().

◆ paintDataValueTexts()

void AbstractDiagram::paintDataValueTexts ( QPainter *  painter)
protectedvirtual
Deprecated:
This method is deprecated and provided for backward-compatibility only. Your own diagram classes should call d->paintDataValueTextsAndMarkers() instead which also is taking care for showing your cell-specific comments, if any,

Definition at line 370 of file KDChartAbstractDiagram.cpp.

References checkInvariants(), coordinatePlane(), d, datasetDimension(), paintDataValueText(), and translate().

◆ paintMarker() [1/3]

void AbstractDiagram::paintMarker ( QPainter *  painter,
const DataValueAttributes a,
const QModelIndex &  index,
const QPointF &  pos 
)

◆ paintMarker() [2/3]

void AbstractDiagram::paintMarker ( QPainter *  painter,
const MarkerAttributes markerAttributes,
const QBrush &  brush,
const QPen &  pen,
const QPointF &  point,
const QSizeF &  size 
)
virtual

◆ paintMarker() [3/3]

void AbstractDiagram::paintMarker ( QPainter *  painter,
const QModelIndex &  index,
const QPointF &  pos 
)

◆ paintMarkers()

void AbstractDiagram::paintMarkers ( QPainter *  painter)
protectedvirtual
Deprecated:
This method is deprecated and provided for backward-compatibility only. Your own diagram classes should call d->paintDataValueTextsAndMarkers() instead which also is taking care for showing your cell-specific comments, if any,

Definition at line 576 of file KDChartAbstractDiagram.cpp.

References checkInvariants(), coordinatePlane(), datasetDimension(), paintMarker(), and translate().

◆ pen() [1/3]

QPen AbstractDiagram::pen ( ) const

◆ pen() [2/3]

QPen AbstractDiagram::pen ( const QModelIndex &  index) const

Retrieve the pen to be used, for painting the datapoint at the given index in the model.

Parameters
indexThe index of the datapoint in the model. With a dataset dimension of two, this is the index of the key of each key/value pair.
Returns
The pen to use for painting.

Definition at line 635 of file KDChartAbstractDiagram.cpp.

References attributesModel(), KDChart::AttributesModel::data(), and KDChart::DatasetPenRole.

◆ pen() [3/3]

QPen AbstractDiagram::pen ( int  dataset) const

Retrieve the pen to be used for the given dataset. This will fall back automatically to what was set at model level, if there are no dataset specific settings.

Parameters
datasetThe dataset to retrieve the pen for.
Returns
The pen to use for painting.

Definition at line 627 of file KDChartAbstractDiagram.cpp.

References d, KDChart::DatasetPenRole, and pen().

◆ percentMode()

bool AbstractDiagram::percentMode ( ) const

Returns whether this diagram is drawn in percent mode.

If true, all data points in the same column of a diagram will be drawn at the same X coordinate and stacked up so that the distance from the last data point (or the zero line) to a data point P is always the ratio of (Y-Value of P)/ (sum of all Y-Values in same column as P) relative to the diagrams height (or width, if abscissa and ordinate are swapped).

Note that this property is not applicable to all diagram types.

Definition at line 357 of file KDChartAbstractDiagram.cpp.

References d.

Referenced by compare().

◆ propertiesChanged

void KDChart::AbstractDiagram::propertiesChanged ( )
signal

◆ resize()

virtual void KDChart::AbstractDiagram::resize ( const QSizeF &  area)
pure virtual

Called by the widget's sizeEvent. Adjust all internal structures, that are calculated, depending on the size of the widget.

Parameters
areaSize of the widget

Implemented in KDChart::StockDiagram, KDChart::TernaryPointDiagram, KDChart::TernaryLineDiagram, KDChart::RingDiagram, KDChart::RadarDiagram, KDChart::PolarDiagram, KDChart::PieDiagram, KDChart::Plotter, KDChart::LineDiagram, and KDChart::BarDiagram.

Referenced by KDChart::CartesianCoordinatePlane::setGeometry().

◆ scrollTo()

void AbstractDiagram::scrollTo ( const QModelIndex &  index,
ScrollHint  hint = EnsureVisible 
)
override

Reimplemented for internal purposes.

Definition at line 776 of file KDChartAbstractDiagram.cpp.

◆ setAllowOverlappingDataValueTexts()

void AbstractDiagram::setAllowOverlappingDataValueTexts ( bool  allow)

Set whether data value labels are allowed to overlap.

Parameters
allowTrue means that overlapping labels are allowed.

Definition at line 326 of file KDChartAbstractDiagram.cpp.

References d, dataValueAttributes(), propertiesChanged(), setDataValueAttributes(), and KDChart::DataValueAttributes::setShowOverlappingDataLabels().

◆ setAntiAliasing()

void AbstractDiagram::setAntiAliasing ( bool  enabled)

Set whether anti-aliasing is to be used while rendering this diagram.

Parameters
enabledTrue means that AA is enabled.

Definition at line 340 of file KDChartAbstractDiagram.cpp.

References d, and propertiesChanged().

◆ setAttributesModel()

void AbstractDiagram::setAttributesModel ( AttributesModel amodel)
virtual

Sets an external AttributesModel on this diagram.

Associate an AttributesModel with this diagram. Note that the diagram does not take ownership of the AttributesModel. This should thus only be used with AttributesModels that have been explicitly created by the user, and are owned by her. Setting an AttributesModel that is internal to another diagram is an error.

Correct:

AttributesModel *am = new AttributesModel( model, 0 );
diagram1->setAttributesModel( am );
diagram2->setAttributesModel( am );

Wrong:

diagram1->setAttributesModel( diagram2->attributesModel() );
Parameters
modelThe AttributesModel to use for this diagram.
See also
AttributesModel, usesExternalAttributesModel

By default, a diagram has it's own internal set of attributes, but an external one can be set. This can be used to share attributes between several diagrams. The diagram does not take ownership of the attributesmodel.

Parameters
amodelThe AttributesModel to use for this diagram.

Reimplemented in KDChart::AbstractCartesianDiagram.

Definition at line 143 of file KDChartAbstractDiagram.cpp.

References d, modelsChanged(), and setDataBoundariesDirty().

Referenced by KDChart::AbstractCartesianDiagram::setAttributesModel().

◆ setAttributesModelRootIndex()

void AbstractDiagram::setAttributesModelRootIndex ( const QModelIndex &  idx)
protected

Definition at line 187 of file KDChartAbstractDiagram.cpp.

References d, and setDataBoundariesDirty().

Referenced by setRootIndex().

◆ setBrush() [1/3]

void AbstractDiagram::setBrush ( const QBrush &  brush)

Set the brush to be used, for painting all datasets in the model.

Parameters
brushThe brush to use.

Definition at line 651 of file KDChartAbstractDiagram.cpp.

References attributesModel(), brush(), KDChart::DatasetBrushRole, propertiesChanged(), and KDChart::AttributesModel::setModelData().

◆ setBrush() [2/3]

void AbstractDiagram::setBrush ( const QModelIndex &  index,
const QBrush &  brush 
)

Set the brush to be used, for painting the datapoint at the given index.

Parameters
indexThe datapoint's index in the model. With a dataset dimension of two, this is the index of the key of each key/value pair.
brushThe brush to use.

Definition at line 643 of file KDChartAbstractDiagram.cpp.

References attributesModel(), brush(), KDChart::DatasetBrushRole, propertiesChanged(), and KDChart::AttributesModel::setData().

◆ setBrush() [3/3]

void AbstractDiagram::setBrush ( int  dataset,
const QBrush &  brush 
)

Set the brush to be used, for painting the given dataset.

Parameters
datasetThe dataset to set the brush for.
brushThe brush to use.

Definition at line 658 of file KDChartAbstractDiagram.cpp.

References brush(), d, KDChart::DatasetBrushRole, and propertiesChanged().

◆ setCoordinatePlane()

void AbstractDiagram::setCoordinatePlane ( AbstractCoordinatePlane plane)
virtual

Set the coordinate plane associated with the diagram. This determines how coordinates in value space are mapped into pixel space. The chart takes ownership.

Reimplemented in KDChart::AbstractCartesianDiagram.

Definition at line 203 of file KDChartAbstractDiagram.cpp.

References d.

Referenced by KDChart::AbstractCoordinatePlane::addDiagram(), KDChart::AbstractCartesianDiagram::setCoordinatePlane(), and KDChart::AbstractCoordinatePlane::takeDiagram().

◆ setDataBoundariesDirty

void AbstractDiagram::setDataBoundariesDirty ( ) const
protectedslot

◆ setDatasetDimension()

void AbstractDiagram::setDatasetDimension ( int  dimension)
Deprecated:

Sets the dataset dimension of the diagram. Using this method is deprecated. Use the specific diagram types instead.

Definition at line 926 of file KDChartAbstractDiagram.cpp.

◆ setDatasetDimensionInternal()

void AbstractDiagram::setDatasetDimensionInternal ( int  dimension)
protected

◆ setDataValueAttributes() [1/3]

void AbstractDiagram::setDataValueAttributes ( const DataValueAttributes a)

Set the DataValueAttributes for all datapoints in the model.

Parameters
aThe attributes to set.

Definition at line 320 of file KDChartAbstractDiagram.cpp.

References d, KDChart::DataValueLabelAttributesRole, and propertiesChanged().

◆ setDataValueAttributes() [2/3]

void AbstractDiagram::setDataValueAttributes ( const QModelIndex &  index,
const DataValueAttributes a 
)

Set the DataValueAttributes for the given index.

Parameters
indexThe datapoint to set the attributes for. With a dataset dimension of two, this is the index of the key of each key/value pair.
aThe attributes to set.

Definition at line 273 of file KDChartAbstractDiagram.cpp.

References d, KDChart::DataValueLabelAttributesRole, and propertiesChanged().

Referenced by setAllowOverlappingDataValueTexts().

◆ setDataValueAttributes() [3/3]

void AbstractDiagram::setDataValueAttributes ( int  dataset,
const DataValueAttributes a 
)

Set the DataValueAttributes for the given dataset.

Parameters
datasetThe dataset to set the attributes for.
aThe attributes to set.

Definition at line 281 of file KDChartAbstractDiagram.cpp.

References d, KDChart::DataValueLabelAttributesRole, and propertiesChanged().

◆ setHidden() [1/3]

void AbstractDiagram::setHidden ( bool  hidden)

Hide (or unhide, resp.) all datapoints in the model.

Note
Hidden data are still taken into account by the coordinate plane, so neither the grid nor your axes' ranges will change, when you hide data. For totally removing data from KD Chart's view you can use another approach: e.g. you could define a proxy model on top of your data model, and register the proxy model calling setModel() instead of registering your real data model.
Parameters
hiddenThe hidden status to set.

Definition at line 243 of file KDChartAbstractDiagram.cpp.

References d, dataHidden(), and KDChart::DataHiddenRole.

◆ setHidden() [2/3]

void AbstractDiagram::setHidden ( const QModelIndex &  index,
bool  hidden 
)

Hide (or unhide, resp.) a data cell.

Note
Hidden data are still taken into account by the coordinate plane, so neither the grid nor your axes' ranges will change, when you hide data. For totally removing data from KD Chart's view you can use another approach: e.g. you could define a proxy model on top of your data model, and register the proxy model calling setModel() instead of registering your real data model.
Parameters
indexThe datapoint to set the hidden status for. With a dataset dimension of two, this is the index of the key of each key/value pair.
hiddenThe hidden status to set.

Definition at line 228 of file KDChartAbstractDiagram.cpp.

References d, dataHidden(), and KDChart::DataHiddenRole.

◆ setHidden() [3/3]

void AbstractDiagram::setHidden ( int  dataset,
bool  hidden 
)

Hide (or unhide, resp.) a dataset.

Note
Hidden data are still taken into account by the coordinate plane, so neither the grid nor your axes' ranges will change, when you hide data. For totally removing data from KD Chart's view you can use another approach: e.g. you could define a proxy model on top of your data model, and register the proxy model calling setModel() instead of registering your real data model.
Parameters
datasetThe dataset to set the hidden status for.
hiddenThe hidden status to set.

Definition at line 237 of file KDChartAbstractDiagram.cpp.

References d, dataHidden(), and KDChart::DataHiddenRole.

◆ setModel()

void AbstractDiagram::setModel ( QAbstractItemModel *  model)
override

◆ setPen() [1/3]

void AbstractDiagram::setPen ( const QModelIndex &  index,
const QPen &  pen 
)

Set the pen to be used, for painting the datapoint at the given index.

Parameters
indexThe datapoint's index in the model. With a dataset dimension of two, this is the index of the key of each key/value pair.
penThe pen to use.

Definition at line 601 of file KDChartAbstractDiagram.cpp.

References attributesModel(), KDChart::DatasetPenRole, pen(), propertiesChanged(), and KDChart::AttributesModel::setData().

◆ setPen() [2/3]

void AbstractDiagram::setPen ( const QPen &  pen)

Set the pen to be used, for painting all datasets in the model.

Parameters
penThe pen to use.

Definition at line 609 of file KDChartAbstractDiagram.cpp.

References attributesModel(), KDChart::DatasetPenRole, pen(), propertiesChanged(), and KDChart::AttributesModel::setModelData().

◆ setPen() [3/3]

void AbstractDiagram::setPen ( int  dataset,
const QPen &  pen 
)

Set the pen to be used, for painting the given dataset.

Parameters
datasetThe dataset to set the pen for.
penThe pen to use.

Definition at line 616 of file KDChartAbstractDiagram.cpp.

References d, KDChart::DatasetPenRole, pen(), and propertiesChanged().

◆ setPercentMode()

void AbstractDiagram::setPercentMode ( bool  percent)

Deprecated method that turns the percent mode of this diagram on or off.

Deprecated:

This method is deprecated. Use the setType() method of a supporting diagram implementation instead, e.g. BarDiagram::setType().

See also
percentMode

Definition at line 351 of file KDChartAbstractDiagram.cpp.

References d, and propertiesChanged().

Referenced by KDChart::LineDiagram::setType().

◆ setRootIndex()

void AbstractDiagram::setRootIndex ( const QModelIndex &  idx)
override

Reimplemented for internal purposes.

Set the root index in the model, where the diagram starts referencing data for display.


Definition at line 180 of file KDChartAbstractDiagram.cpp.

References d, and setAttributesModelRootIndex().

Referenced by KDChart::AbstractCartesianDiagram::setRootIndex().

◆ setSelection()

void AbstractDiagram::setSelection ( const QRect &  rect,
QItemSelectionModel::SelectionFlags  command 
)
override

Reimplemented for internal purposes.

Definition at line 802 of file KDChartAbstractDiagram.cpp.

References d.

◆ setSelectionModel()

void AbstractDiagram::setSelectionModel ( QItemSelectionModel *  selectionModel)
override

Associate a seleection model with the diagrom.

Definition at line 122 of file KDChartAbstractDiagram.cpp.

References modelsChanged().

◆ setUnitPrefix() [1/2]

void AbstractDiagram::setUnitPrefix ( const QString &  prefix,
int  column,
Qt::Orientation  orientation 
)

Set the unit prefix to be used on axes for one specific column.

Parameters
prefixThe prefix to be used.
columnThe column which should be set.
orientationThe orientation of the axis to use.

Sets the unit prefix for one value

Parameters
prefixthe prefix to be set
columnthe value using that prefix
orientationthe orientantion of the axis to set

Definition at line 688 of file KDChartAbstractDiagram.cpp.

References d.

◆ setUnitPrefix() [2/2]

void AbstractDiagram::setUnitPrefix ( const QString &  prefix,
Qt::Orientation  orientation 
)

Set the unit prefix to be used on axes for all columns.

Parameters
prefixThe prefix to be used.
orientationThe orientation of the axis to use.

Sets the unit prefix for all values

Parameters
prefixthe prefix to be set
orientationthe orientantion of the axis to set

Definition at line 698 of file KDChartAbstractDiagram.cpp.

References d.

◆ setUnitSuffix() [1/2]

void AbstractDiagram::setUnitSuffix ( const QString &  suffix,
int  column,
Qt::Orientation  orientation 
)

Set the unit prefix to be used on axes for one specific column.

Parameters
suffixThe suffix to be used.
columnThe column which should be set.
orientationThe orientation of the axis to use.

Sets the unit suffix for one value

Parameters
suffixthe suffix to be set
columnthe value using that suffix
orientationthe orientantion of the axis to set

Definition at line 709 of file KDChartAbstractDiagram.cpp.

References d.

◆ setUnitSuffix() [2/2]

void AbstractDiagram::setUnitSuffix ( const QString &  suffix,
Qt::Orientation  orientation 
)

Set the unit prefix to be used on axes for all columns.

Parameters
suffixThe suffix to be used.
orientationThe orientation of the axis to use.

Sets the unit suffix for all values

Parameters
suffixthe suffix to be set
orientationthe orientantion of the axis to set

Definition at line 719 of file KDChartAbstractDiagram.cpp.

References d.

◆ unitPrefix() [1/2]

QString AbstractDiagram::unitPrefix ( int  column,
Qt::Orientation  orientation,
bool  fallback = false 
) const

Retrieves the axis unit prefix for a specific column.

Parameters
columnThe column whose prefix should be retrieved.
orientationThe orientation of the axis.
fallbackIf true, the prefix for all columns is returned, when none is set for the selected column.
Returns
The axis unit prefix.

Returns the unit prefix for a special value

Parameters
columnthe value which's prefix is requested
orientationthe orientation of the axis
fallbackif true, the global prefix is return when no specific one is set for that value
Returns
the unit prefix

Definition at line 731 of file KDChartAbstractDiagram.cpp.

References d.

Referenced by itemRowLabels().

◆ unitPrefix() [2/2]

QString AbstractDiagram::unitPrefix ( Qt::Orientation  orientation) const

Retrieves the axis unit prefix.

Parameters
orientationThe orientation of the axis.
Returns
The axis unit prefix.

Returns the global unit prefix

Parameters
orientationthe orientation of the axis
Returns
the unit prefix

Definition at line 742 of file KDChartAbstractDiagram.cpp.

References d.

◆ unitSuffix() [1/2]

QString AbstractDiagram::unitSuffix ( int  column,
Qt::Orientation  orientation,
bool  fallback = false 
) const

Retrieves the axis unit suffix for a specific column.

Parameters
columnThe column whose prefix should be retrieved.
orientationThe orientation of the axis.
fallbackIf true, the suffix for all columns is returned, when none is set for the selected column.
Returns
The axis unit suffix.

Returns the unit suffix for a special value

Parameters
columnthe value which's suffix is requested
orientationthe orientation of the axis
fallbackif true, the global suffix is return when no specific one is set for that value
Returns
the unit suffix

Definition at line 754 of file KDChartAbstractDiagram.cpp.

References d.

Referenced by itemRowLabels().

◆ unitSuffix() [2/2]

QString AbstractDiagram::unitSuffix ( Qt::Orientation  orientation) const

Retrieves the axis unit suffix.

Parameters
orientationThe orientation of the axis.
Returns
The axis unit suffix.

Returns the global unit suffix

Parameters
orientationthe orientation of the axis
Returns
the unit suffix

Definition at line 765 of file KDChartAbstractDiagram.cpp.

References d.

◆ update()

void AbstractDiagram::update ( ) const

◆ useDefaultColors()

void KDChart::AbstractDiagram::useDefaultColors ( )

Set the palette to be used, for painting datasets to the default palette.

See also
KDChart::Palette. FIXME: fold into one usePalette (KDChart::Palette&) method

Definition at line 828 of file KDChartAbstractDiagram.cpp.

References d, and KDChart::AttributesModel::PaletteTypeDefault.

◆ useRainbowColors()

void KDChart::AbstractDiagram::useRainbowColors ( )

Set the palette to be used, for painting datasets to the rainbow palette.

See also
KDChart::Palette.

Definition at line 838 of file KDChartAbstractDiagram.cpp.

References d, and KDChart::AttributesModel::PaletteTypeRainbow.

◆ usesExternalAttributesModel()

bool AbstractDiagram::usesExternalAttributesModel ( ) const
virtual

Returns whether the diagram is using its own built-in attributes model or an attributes model that was set via setAttributesModel.

See also
setAttributesModel

Definition at line 163 of file KDChartAbstractDiagram.cpp.

References d.

◆ useSubduedColors()

void KDChart::AbstractDiagram::useSubduedColors ( )

Set the palette to be used, for painting datasets to the subdued palette.

See also
KDChart::Palette.

Definition at line 833 of file KDChartAbstractDiagram.cpp.

References d, and KDChart::AttributesModel::PaletteTypeSubdued.

◆ valueForCell()

qreal AbstractDiagram::valueForCell ( int  row,
int  column 
) const
protected

Helper method, retrieving the data value (DisplayRole) for a given row and column

Parameters
rowThe row to query.
columnThe column to query.
Returns
The value of the display role at the given row and column as a qreal.
Deprecated:

Definition at line 945 of file KDChartAbstractDiagram.cpp.

References attributesModelRootIndex(), and d.

◆ verticalOffset()

int AbstractDiagram::verticalOffset ( ) const
override

Reimplemented for internal purposes.

Definition at line 792 of file KDChartAbstractDiagram.cpp.

◆ viewportCoordinateSystemChanged

void KDChart::AbstractDiagram::viewportCoordinateSystemChanged ( )
signal

Emitted upon change of the view coordinate system

Referenced by KDChart::AbstractCartesianDiagram::setCoordinatePlane().

◆ visualRect()

QRect AbstractDiagram::visualRect ( const QModelIndex &  index) const
override

Reimplemented for internal purposes.

Definition at line 771 of file KDChartAbstractDiagram.cpp.

References d.

◆ visualRegion()

QRegion AbstractDiagram::visualRegion ( const QModelIndex &  index) const
virtual

Definition at line 822 of file KDChartAbstractDiagram.cpp.

References d.

◆ visualRegionForSelection()

QRegion AbstractDiagram::visualRegionForSelection ( const QItemSelection &  selection) const
override

Reimplemented for internal purposes.

Definition at line 812 of file KDChartAbstractDiagram.cpp.

References d.


The documentation for this class was generated from the following files:

© 2001 Klarälvdalens Datakonsult AB (KDAB)
"The Qt, C++ and OpenGL Experts"
https://www.kdab.com/
https://www.kdab.com/development-resources/qt-tools/kd-chart/
Generated by doxygen 1.9.1