- Qt 6.8
- Qt Charts
- C++ Classes
- QVPieModelMapper
- Qt Charts | Commercial or GPLv3

# QVPieModelMapper Class

The QVPieModelMapper is a vertical model mapper for pie series. More...

Header: | `#include <QVPieModelMapper>`
In QML: | VPieModelMapper
Inherits: | QPieModelMapper

- List of all members, including inherited members

## Properties

firstRow : int labelsColumn : int model : QAbstractItemModel* | rowCount : int series : QPieSeries* valuesColumn : int

## Public Functions

| QVPieModelMapper(QObject *parent = nullptr)
int | firstRow() const
int | labelsColumn() const
QAbstractItemModel * | model() const
int | rowCount() const
QPieSeries * | series() const
void | setFirstRow(int firstRow)
void | setLabelsColumn(int labelsColumn)
void | setModel(QAbstractItemModel *model)
void | setRowCount(int rowCount)
void | setSeries(QPieSeries *series)
void | setValuesColumn(int valuesColumn)
int | valuesColumn() const

## Signals

void | firstRowChanged()
void | labelsColumnChanged()
void | modelReplaced()
void | rowCountChanged()
void | seriesReplaced()
void | valuesColumnChanged()

## Detailed Description

Model mappers enable using a data model derived from the QAbstractItemModel class as a data source for a chart. A vertical model mapper is used to create a connection between a data model and QPieSeries, so that each row in the data model defines a pie slice and each column maps to the label or the value of the pie slice.

Both model and pie series properties can be used to manipulate the data. The model mapper keeps the pie series and the data model in sync.

## Property Documentation

### firstRow : int

This property holds the row of the model that contains the first slice value.

The minimum and default value is 0.

Access functions:

int | firstRow() const
void | setFirstRow(int firstRow)

Notifier signal:

void | firstRowChanged()

### labelsColumn : int

This property holds the column of the model that is kept in sync with the labels of the pie's slices.

The default value is -1 (invalid mapping).

Access functions:

int | labelsColumn() const
void | setLabelsColumn(int labelsColumn)

Notifier signal:

void | labelsColumnChanged()

### model : QAbstractItemModel*

This property holds the model that is used by the mapper.

Access functions:

QAbstractItemModel * | model() const
void | setModel(QAbstractItemModel *model)

Notifier signal:

void | modelReplaced()

### rowCount : int

This property holds the number of rows of the model that are mapped as the data for a pie series.

The minimum and default value is -1 (number limited by the number of rows in the model).

Access functions:

int | rowCount() const
void | setRowCount(int rowCount)

Notifier signal:

void | rowCountChanged()

### series : QPieSeries*

This property holds the pie series that is used by the mapper.

All the data in the series is discarded when it is set to the mapper. When a new series is specified, the old series is disconnected (but it preserves its data).

Access functions:

QPieSeries * | series() const
void | setSeries(QPieSeries *series)

Notifier signal:

void | seriesReplaced()

### valuesColumn : int

This property holds the column of the model that is kept in sync with the values of the pie's slices.

The default value is -1 (invalid mapping).

Access functions:

int | valuesColumn() const
void | setValuesColumn(int valuesColumn)

Notifier signal:

void | valuesColumnChanged()

## Member Function Documentation

### `[explicit]` QVPieModelMapper::QVPieModelMapper(QObject *parent = nullptr)

Constructs a mapper object that is a child of parent.

### `[signal]` void QVPieModelMapper::firstRowChanged()

This signal is emitted when the first row changes.

Note: Notifier signal for property firstRow.

### int QVPieModelMapper::labelsColumn() const

Returns the column of the model that is kept in sync with the labels of the pie's slices.

Note: Getter function for property labelsColumn.

See also setLabelsColumn().

### `[signal]` void QVPieModelMapper::labelsColumnChanged()

This signal is emitted when the labels column changes.

Note: Notifier signal for property labelsColumn.

### `[signal]` void QVPieModelMapper::modelReplaced()

This signal is emitted when the model that the mapper is connected to changes.

Note: Notifier signal for property model.

### `[signal]` void QVPieModelMapper::rowCountChanged()

This signal is emitted when the number of rows changes.

Note: Notifier signal for property rowCount.

### `[signal]` void QVPieModelMapper::seriesReplaced()

This signal is emitted when the series that the mapper is connected to changes.

Note: Notifier signal for property series.

### void QVPieModelMapper::setLabelsColumn(int labelsColumn)

Sets the model column that is kept in sync with the pies slices' labels to labelsColumn.

Note: Setter function for property labelsColumn.

See also labelsColumn().

### void QVPieModelMapper::setValuesColumn(int valuesColumn)

Sets the model column that is kept in sync with the pie slices' values to valuesColumn.

Note: Setter function for property valuesColumn.

See also valuesColumn().

### int QVPieModelMapper::valuesColumn() const

Returns the column of the model that is kept in sync with the values of the pie's slices.

Note: Getter function for property valuesColumn.

See also setValuesColumn().

### `[signal]` void QVPieModelMapper::valuesColumnChanged()

This signal is emitted when the values column changes.

Note: Notifier signal for property valuesColumn.