Класс QAbstractProxyModel
Класс QAbstractProxyModel предоставляет базовый класс для моделей элементов-прокси, которые могут выполнять сортировку, фильтрацию или другие задачи обработки данных. Подробнее...
| Заголовок: | #include <QAbstractProxyModel> |
| qmake: | QT += core |
| С момента: | Qt 4.1 |
| Наследуется от: | QAbstractItemModel |
| Наследуется в: |
Свойства
- sourceModel : QAbstractItemModel *
- 1 свойство унаследовано от QObject
Открытые функции
| QAbstractProxyModel(QObject *parent = Q_NULLPTR) | |
| ~QAbstractProxyModel() | |
| virtual QModelIndex | mapFromSource(const QModelIndex &sourceIndex) const = 0 |
| virtual QItemSelection | mapSelectionFromSource(const QItemSelection &sourceSelection) const |
| virtual QItemSelection | mapSelectionToSource(const QItemSelection &proxySelection) const |
| virtual QModelIndex | mapToSource(const QModelIndex &proxyIndex) const = 0 |
| virtual void | setSourceModel(QAbstractItemModel *sourceModel) |
| QAbstractItemModel * | sourceModel() const |
Переопределённые открытые функции
| virtual QModelIndex | buddy(const QModelIndex &index) const |
| virtual bool | canDropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) const |
| virtual bool | canFetchMore(const QModelIndex &parent) const |
| virtual QVariant | data(const QModelIndex &proxyIndex, int role = Qt::DisplayRole) const |
| virtual bool | dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) |
| virtual void | fetchMore(const QModelIndex &parent) |
| virtual Qt::ItemFlags | flags(const QModelIndex &index) const |
- 39 открытых функций унаследовано от QAbstractItemModel
- 32 открытых функции унаследовано от QObject
Сигналы
| void | sourceModelChanged() |
- 18 сигналов, унаследованных от QAbstractItemModel
- 2 сигнала, унаследованных от QObject
Защищённые слоты
| void | resetInternalData() |
- 1 защищённый слот, унаследованный от QAbstractItemModel
Дополнительные унаследованные члены
- 2 публичных слота, унаследованных от QAbstractItemModel
- 1 публичный слот, унаследованный от QObject
- 11 статических публичных членов, унаследованных от QObject
- 19 защищённых функций, унаследованных от QAbstractItemModel
- 9 защищённых функций, унаследованных от QObject
Подробное описание
Класс QAbstractProxyModel предоставляет базовый класс для моделей прокси-элементов, которые могут выполнять сортировку, фильтрацию или другие задачи обработки данных.
Этот класс определяет стандартный интерфейс, который модели прокси должны использовать, чтобы корректно взаимодействовать с другими компонентами модели/представления. Он не предназначен для прямого экземплярирования.
Все стандартные модели прокси производятся от класса QAbstractProxyModel. Если вам нужно создать новый класс модели прокси, обычно лучше унаследовать от существующего класса, который обеспечивает поведение, наиболее близкое к желаемому.
Модели прокси, которые фильтруют или сортируют элементы данных из модели источника, должны создаваться с использованием или наследованием от QSortFilterProxyModel.
Для создания подкласса QAbstractProxyModel, необходимо реализовать mapFromSource() и mapToSource(). Функции mapSelectionFromSource() и mapSelectionToSource() нужно переопределять только если требуется поведение, отличное от стандартного.
Примечание: Если источник модели удален или не задан, прокси-модель работает с пустой моделью-заполнителем.
См. также QSortFilterProxyModel, QAbstractItemModel и Программирование с использованием моделей и представлений.
Документация свойств
sourceModel : QAbstractItemModel *
Это свойство содержит источник модели для этой прокси-модели.
Функции доступа:
| QAbstractItemModel * | sourceModel() const |
| virtual void | setSourceModel(QAbstractItemModel *sourceModel) |
Сигнал уведомления:
| void | sourceModelChanged() | [см. примечание ниже] |
Примечание: Это приватный сигнал. Он может использоваться в соединениях сигналов, но не может испускаться пользователем.
Документация функций-членов
QAbstractProxyModel::QAbstractProxyModel(QObject *parent = Q_NULLPTR)
Конструктор прокси-модели с заданным parent.
QAbstractProxyModel::~QAbstractProxyModel()
Уничтожает прокси-модель.
[virtual] QModelIndex QAbstractProxyModel::buddy(const QModelIndex &index) const
Переопределено из QAbstractItemModel::buddy().
[virtual] bool QAbstractProxyModel::canDropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) const
Переопределено из QAbstractItemModel::canDropMimeData().
Эта функция была введена в Qt 5.4.
[virtual] bool QAbstractProxyModel::canFetchMore(const QModelIndex &parent) const
Переопределено из QAbstractItemModel::canFetchMore().
[virtual] QVariant QAbstractProxyModel::data(const QModelIndex &proxyIndex, int role = Qt::DisplayRole) const
Переопределено из QAbstractItemModel::data().
См. также setData().
[virtual] bool QAbstractProxyModel::dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent)
Переопределено из QAbstractItemModel::dropMimeData().
Эта функция была введена в Qt 5.4.
[virtual] void QAbstractProxyModel::fetchMore(const QModelIndex &parent)
Переопределено из QAbstractItemModel::fetchMore().
[virtual] Qt::ItemFlags QAbstractProxyModel::flags(const QModelIndex &index) const
Переопределено из QAbstractItemModel::flags().
[virtual] bool QAbstractProxyModel::hasChildren(const QModelIndex &parent = QModelIndex()) const
Переопределено из QAbstractItemModel::hasChildren().
[virtual] QVariant QAbstractProxyModel::headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const
Переопределено из QAbstractItemModel::headerData().
См. также setHeaderData().
[virtual] QMap<int, QVariant> QAbstractProxyModel::itemData(const QModelIndex &proxyIndex) const
Переопределено из QAbstractItemModel::itemData().
См. также setItemData().
[pure virtual] QModelIndex QAbstractProxyModel::mapFromSource(const QModelIndex &sourceIndex) const
Переопределите эту функцию, чтобы вернуть индекс модели в прокси-модели, соответствующий sourceIndex из источника модели.
См. также mapToSource().
[virtual] QItemSelection QAbstractProxyModel::mapSelectionFromSource(const QItemSelection &sourceSelection) const
Возвращает выбор прокси-модели, преобразованный из указанного sourceSelection.
Переопределите этот метод, чтобы отобразить выбор источника в выбор прокси-модели.
[virtual] QItemSelection QAbstractProxyModel::mapSelectionToSource(const QItemSelection &proxySelection) const
Возвращает выбор источника, преобразованный из указанного proxySelection.
Переопределите этот метод, чтобы отобразить выбор прокси-модели в выбор источника.
[pure virtual] QModelIndex QAbstractProxyModel::mapToSource(const QModelIndex &proxyIndex) const
Переопределите эту функцию, чтобы вернуть индекс модели в источнике модели, соответствующий proxyIndex в прокси-модели.
См. также mapFromSource().
[virtual] QMimeData *QAbstractProxyModel::mimeData(const QModelIndexList &indexes) const
Переопределено из QAbstractItemModel::mimeData().
[virtual] QStringList QAbstractProxyModel::mimeTypes() const
Переопределено из QAbstractItemModel::mimeTypes().
[protected slot] void QAbstractProxyModel::resetInternalData()
Очищает roleNames этой прокси-модели.
[virtual] void QAbstractProxyModel::revert()
Переопределено из QAbstractItemModel::revert().
[virtual] bool QAbstractProxyModel::setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole)
Переопределено из QAbstractItemModel::setData().
См. также data().
[virtual] bool QAbstractProxyModel::setHeaderData(int section, Qt::Orientation orientation, const QVariant &value, int role = Qt::EditRole)
Переопределено из QAbstractItemModel::setHeaderData().
См. также headerData().
[virtual] bool QAbstractProxyModel::setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles)
Переопределено из QAbstractItemModel::setItemData().
См. также itemData().
[virtual] void QAbstractProxyModel::setSourceModel(QAbstractItemModel *sourceModel)
Устанавливает указанный sourceModel для обработки прокси-моделью.
Подклассы должны вызывать beginResetModel() в начале метода, отключить связь со старой моделью, вызвать этот метод, подключиться к новой модели и вызвать endResetModel().
Примечание: Метод-сеттер для свойства sourceModel.
См. также sourceModel().
[virtual] QModelIndex QAbstractProxyModel::sibling(int row, int column, const QModelIndex &idx) const
Переопределено из QAbstractItemModel::sibling().
[virtual] void QAbstractProxyModel::sort(int column, Qt::SortOrder order = Qt::AscendingOrder)
Переопределено из QAbstractItemModel::sort().
QAbstractItemModel *QAbstractProxyModel::sourceModel() const
Возвращает модель, содержащую данные, доступные через прокси-модель.
Примечание: Метод-геттер для свойства sourceModel.
См. также setSourceModel().
[virtual] QSize QAbstractProxyModel::span(const QModelIndex &index) const
Переопределено из QAbstractItemModel::span().
[virtual] bool QAbstractProxyModel::submit()
Переопределено из QAbstractItemModel::submit().
[virtual] Qt::DropActions QAbstractProxyModel::supportedDragActions() const
Переопределено из QAbstractItemModel::supportedDragActions().
[virtual] Qt::DropActions QAbstractProxyModel::supportedDropActions() const
Переопределено из QAbstractItemModel::supportedDropActions().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qabstractproxymodel.html