Spec-Zone.ru › Qt 5.11

Класс QIdentityProxyModel

Класс QIdentityProxyModel проксирует свой исходный модель без изменений. Подробнее...

Заголовок: #include <QIdentityProxyModel>
qmake: QT += core
С момента: Qt 4.8
Наследуется от: QAbstractProxyModel
  • Список всех членов, включая унаследованные

Открытые функции

QIdentityProxyModel(QObject *parent = nullptr)
virtual ~QIdentityProxyModel()

Переопределённые открытые функции

virtual int columnCount(const QModelIndex &parent = QModelIndex()) const override
virtual bool dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) override
virtual QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const override
virtual QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const override
virtual bool insertColumns(int column, int count, const QModelIndex &parent = QModelIndex()) override
virtual bool insertRows(int row, int count, const QModelIndex &parent = QModelIndex()) override
virtual QModelIndex mapFromSource(const QModelIndex &sourceIndex) const override
virtual QItemSelection mapSelectionFromSource(const QItemSelection &selection) const override
virtual QItemSelection mapSelectionToSource(const QItemSelection &selection) const override
virtual QModelIndex mapToSource(const QModelIndex &proxyIndex) const override
virtual QModelIndexList match(const QModelIndex &start, int role, const QVariant &value, int hits = 1, Qt::MatchFlags flags = Qt::MatchFlags(Qt::MatchStartsWith|Qt::MatchWrap)) const override
virtual QModelIndex parent(const QModelIndex &child) const override
virtual bool removeColumns(int column, int count, const QModelIndex &parent = QModelIndex()) override
virtual bool removeRows(int row, int count, const QModelIndex &parent = QModelIndex()) override
virtual int rowCount(const QModelIndex &parent = QModelIndex()) const override
virtual void setSourceModel(QAbstractItemModel *newSourceModel) override
virtual QModelIndex sibling(int row, int column, const QModelIndex &idx) const override
  • 28 открытых функций, унаследованных от QAbstractProxyModel
  • 40 открытых функций, унаследованных от QAbstractItemModel
  • 32 открытых функции, унаследованных от QObject

Дополнительные унаследованные члены

  • 1 свойство, унаследованное от QAbstractProxyModel
  • 1 свойство, унаследованное от QObject
  • 2 открытых слотов, унаследованных от QAbstractItemModel
  • 1 открытый слот, унаследованный от QObject
  • 1 сигнал, унаследованный от QAbstractProxyModel
  • 18 сигналов, унаследованных от QAbstractItemModel
  • 2 сигнала, унаследованных от QObject
  • 11 статических открытых членов, унаследованных от QObject
  • 19 защищённых функций, унаследованных от QAbstractItemModel
  • 9 защищённых функций, унаследованных от QObject
  • 1 защищённый слот, унаследованный от QAbstractProxyModel
  • 1 защищённый слот, унаследованный от QAbstractItemModel

Подробное описание

Класс QIdentityProxyModel проксирует свой исходный модель без изменений.

QIdentityProxyModel можно использовать для точного передачи структуры исходной модели без сортировки, фильтрации или других преобразований. Это аналогично концепции единичной матрицы, где A.I = A.

Поскольку он не выполняет сортировку или фильтрацию, этот класс наиболее подходит для проксирования моделей, которые преобразуют данные() исходной модели. Например, модель прокси может быть создана для определения используемого шрифта или цвета фона или подсказки. Это исключает необходимость реализации всех обработок данных в одном классе, который создаёт структуру модели, и может также использоваться для создания переиспользуемых компонентов.

Это также предоставляет способ изменения данных в случае, когда исходная модель предоставляется сторонним приложением, которое нельзя изменить.

class DateFormatProxyModel : public QIdentityProxyModel
{
  // ...

  void setDateFormatString(const QString &formatString)
  {
    m_formatString = formatString;
  }

  QVariant data(const QModelIndex &index, int role) const override
  {
    if (role != Qt::DisplayRole)
      return QIdentityProxyModel::data(index, role);

    const QDateTime dateTime = sourceModel()->data(SourceClass::DateRole).toDateTime();

    return dateTime.toString(m_formatString);
  }

private:
  QString m_formatString;
};

См. также QAbstractProxyModel, Программирование моделей/представлений и QAbstractItemModel.

Документация по функциям-членам

QIdentityProxyModel::QIdentityProxyModel(QObject *parent = nullptr)

Конструктор модели-идентификатора с заданным parent.

[virtual] QIdentityProxyModel::~QIdentityProxyModel()

Деструктор этой модели-идентификатора.

[override virtual] int QIdentityProxyModel::columnCount(const QModelIndex &parent = QModelIndex()) const

Переопределено из QAbstractItemModel::columnCount().

[override virtual] bool QIdentityProxyModel::dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent)

Переопределено из QAbstractProxyModel::dropMimeData().

[override virtual] QVariant QIdentityProxyModel::headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const

Переопределено из QAbstractProxyModel::headerData().

[override virtual] QModelIndex QIdentityProxyModel::index(int row, int column, const QModelIndex &parent = QModelIndex()) const

Переопределено из QAbstractItemModel::index().

[override virtual] bool QIdentityProxyModel::insertColumns(int column, int count, const QModelIndex &parent = QModelIndex())

Переопределено из QAbstractItemModel::insertColumns().

[override virtual] bool QIdentityProxyModel::insertRows(int row, int count, const QModelIndex &parent = QModelIndex())

Переопределено из QAbstractItemModel::insertRows().

[override virtual] QModelIndex QIdentityProxyModel::mapFromSource(const QModelIndex &sourceIndex) const

Переопределено из QAbstractProxyModel::mapFromSource().

[override virtual] QItemSelection QIdentityProxyModel::mapSelectionFromSource(const QItemSelection &selection) const

Переопределено из QAbstractProxyModel::mapSelectionFromSource().

[override virtual] QItemSelection QIdentityProxyModel::mapSelectionToSource(const QItemSelection &selection) const

Переопределено из QAbstractProxyModel::mapSelectionToSource().

[override virtual] QModelIndex QIdentityProxyModel::mapToSource(const QModelIndex &proxyIndex) const

Переопределено из QAbstractProxyModel::mapToSource().

[override virtual] QModelIndexList QIdentityProxyModel::match(const QModelIndex &start, int role, const QVariant &value, int hits = 1, Qt::MatchFlags flags = Qt::MatchFlags(Qt::MatchStartsWith|Qt::MatchWrap)) const

Переопределено из QAbstractItemModel::match().

[override virtual] QModelIndex QIdentityProxyModel::parent(const QModelIndex &child) const

Переопределено из QAbstractItemModel::parent().

[override virtual] bool QIdentityProxyModel::removeColumns(int column, int count, const QModelIndex &parent = QModelIndex())

Переопределено из QAbstractItemModel::removeColumns().

[override virtual] bool QIdentityProxyModel::removeRows(int row, int count, const QModelIndex &parent = QModelIndex())

Переопределено из QAbstractItemModel::removeRows().

[override virtual] int QIdentityProxyModel::rowCount(const QModelIndex &parent = QModelIndex()) const

Переопределено из QAbstractItemModel::rowCount().

[override virtual] void QIdentityProxyModel::setSourceModel(QAbstractItemModel *newSourceModel)

Переопределено из QAbstractProxyModel::setSourceModel().

[override virtual] QModelIndex QIdentityProxyModel::sibling(int row, int column, const QModelIndex &idx) const

Переопределено из QAbstractProxyModel::sibling().

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.11/qidentityproxymodel.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API