- Qt 6.6
- Qt Graphs
- C++ Classes
- QtGraphs (Technical Preview)
- QScatterDataProxy
- Qt Graphs | Commercial or GPLv3

# QScatterDataProxy Class

The QScatterDataProxy class is the data proxy for 3D scatter graphs. More...

Header: | #include <QScatterDataProxy>
CMake: | find_package(Qt6 REQUIRED COMPONENTS Graphs) target_link_libraries(mytarget PRIVATE Qt6::Graphs)
qmake: | QT += graphs
Instantiated By: | ScatterDataProxy
Inherits: | QAbstractDataProxy
Inherited By: | QItemModelScatterDataProxy
Status: | Technical Preview

- List of all members, including inherited members

## Properties

- itemCount : const int
- series : QScatter3DSeries* const

## Public Functions

| QScatterDataProxy(QObject *parent = nullptr)
virtual | ~QScatterDataProxy()
int | addItem(const QScatterDataItem &item)
int | addItems(const QScatterDataArray &items)
const QScatterDataArray * | array() const
void | insertItem(int index, const QScatterDataItem &item)
void | insertItems(int index, const QScatterDataArray &items)
const QScatterDataItem * | itemAt(int index) const
int | itemCount() const
void | removeItems(int index, int removeCount)
void | resetArray(QScatterDataArray *newArray)
QScatter3DSeries * | series() const
void | setItem(int index, const QScatterDataItem &item)
void | setItems(int index, const QScatterDataArray &items)

## Signals

void | arrayReset()
void | itemCountChanged(int count)
void | itemsAdded(int startIndex, int count)
void | itemsChanged(int startIndex, int count)
void | itemsInserted(int startIndex, int count)
void | itemsRemoved(int startIndex, int count)
void | seriesChanged(QScatter3DSeries *series)

## Related Non-Members

| QScatterDataArray

## Detailed Description

A scatter data proxy handles adding, inserting, changing, and removing data items.

QScatterDataProxy takes ownership of all QtGraphs::QScatterDataArray and QScatterDataItem objects passed to it.

See also Qt Graphs Data Handling.

## Property Documentation

### `[read-only]` itemCount : const int

This property holds the number of items in the array.

Access functions:

int | itemCount() const

Notifier signal:

void | itemCountChanged(int count)

### `[read-only]` series : QScatter3DSeries* const

This property holds the series this proxy is attached to.

Access functions:

QScatter3DSeries * | series() const

Notifier signal:

void | seriesChanged(QScatter3DSeries *series)

## Member Function Documentation

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

Constructs QScatterDataProxy with the given parent.

### `[virtual noexcept]` QScatterDataProxy::~QScatterDataProxy()

Deletes the scatter data proxy.

### int QScatterDataProxy::addItem(const QScatterDataItem &item)

Adds the item item to the end of the array.

Returns the index of the added item.

### int QScatterDataProxy::addItems(const QScatterDataArray &items)

Adds the items specified by items to the end of the array.

Returns the index of the first added item.

### const QScatterDataArray *QScatterDataProxy::array() const

Returns the pointer to the data array.

### `[signal]` void QScatterDataProxy::arrayReset()

This signal is emitted when the data array is reset. If the contents of the whole array are changed without calling resetArray(), this signal needs to be emitted to update the graph.

### void QScatterDataProxy::insertItem(int index, const QScatterDataItem &item)

Inserts the item item to the position index. If the index is equal to the data array size, the item is added to the array.

### void QScatterDataProxy::insertItems(int index, const QScatterDataArray &items)

Inserts the items specified by items to the position index. If the index is equal to data array size, the items are added to the array.

### const QScatterDataItem *QScatterDataProxy::itemAt(int index) const

Returns the pointer to the item at the index index. It is guaranteed to be valid only until the next call that modifies data.

### `[signal]` void QScatterDataProxy::itemsAdded(int startIndex, int count)

This signal is emitted when the number of items specified by count is added starting at the position startIndex. If items are added to the array without calling addItem() or addItems(), this signal needs to be emitted to update the graph.

### `[signal]` void QScatterDataProxy::itemsChanged(int startIndex, int count)

This signal is emitted when the number of items specified by count is changed starting at the position startIndex. If items are changed in the array without calling setItem() or setItems(), this signal needs to be emitted to update the graph.

### `[signal]` void QScatterDataProxy::itemsInserted(int startIndex, int count)

This signal is emitted when the number of items specified by count is inserted starting at the position startIndex. If items are inserted into the array without calling insertItem() or insertItems(), this signal needs to be emitted to update the graph.

### `[signal]` void QScatterDataProxy::itemsRemoved(int startIndex, int count)

This signal is emitted when the number of rows specified by count is removed starting at the position startIndex. The index may be larger than the current array size if items are removed from the end. If items are removed from the array without calling removeItems(), this signal needs to be emitted to update the graph.

### void QScatterDataProxy::removeItems(int index, int removeCount)

Removes the number of items specified by removeCount starting at the position index. Attempting to remove items past the end of the array does nothing.

### void QScatterDataProxy::resetArray(QScatterDataArray *newArray)

Takes ownership of the array newArray. Clears the existing array if the new array differs from it. If the arrays are the same, this function just triggers the arrayReset() signal.

Passing a null array deletes the old array and creates a new empty array.

### void QScatterDataProxy::setItem(int index, const QScatterDataItem &item)

Replaces the item at the position index with the item item.

### void QScatterDataProxy::setItems(int index, const QScatterDataArray &items)

Replaces the items starting from the position index with the items specified by items.

## Related Non-Members

### `[alias]` QScatterDataArray

A list of QScatterDataItem objects.