File indexing completed on 2026-05-06 08:49:17
0001
0002
0003
0004
0005 #ifndef QCONCATENATEROWSPROXYMODEL_H
0006 #define QCONCATENATEROWSPROXYMODEL_H
0007
0008 #include <QtCore/qabstractitemmodel.h>
0009
0010 QT_REQUIRE_CONFIG(concatenatetablesproxymodel);
0011
0012 QT_BEGIN_NAMESPACE
0013
0014 class QConcatenateTablesProxyModelPrivate;
0015
0016 class Q_CORE_EXPORT QConcatenateTablesProxyModel : public QAbstractItemModel
0017 {
0018 Q_OBJECT
0019
0020 public:
0021 explicit QConcatenateTablesProxyModel(QObject *parent = nullptr);
0022 ~QConcatenateTablesProxyModel();
0023
0024 QList<QAbstractItemModel *> sourceModels() const;
0025 Q_SCRIPTABLE void addSourceModel(QAbstractItemModel *sourceModel);
0026 Q_SCRIPTABLE void removeSourceModel(QAbstractItemModel *sourceModel);
0027
0028 QModelIndex mapFromSource(const QModelIndex &sourceIndex) const;
0029 QModelIndex mapToSource(const QModelIndex &proxyIndex) const;
0030
0031 QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
0032 bool setData(const QModelIndex &index, const QVariant &value, int role = Qt::EditRole) override;
0033 QMap<int, QVariant> itemData(const QModelIndex &proxyIndex) const override;
0034 bool setItemData(const QModelIndex &index, const QMap<int, QVariant> &roles) override;
0035 Qt::ItemFlags flags(const QModelIndex &index) const override;
0036 QModelIndex index(int row, int column, const QModelIndex &parent = QModelIndex()) const override;
0037 QModelIndex parent(const QModelIndex &index) const override;
0038 int rowCount(const QModelIndex &parent = QModelIndex()) const override;
0039 QVariant headerData(int section, Qt::Orientation orientation, int role = Qt::DisplayRole) const override;
0040 int columnCount(const QModelIndex &parent = QModelIndex()) const override;
0041 QStringList mimeTypes() const override;
0042 QMimeData *mimeData(const QModelIndexList &indexes) const override;
0043 bool canDropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) const override;
0044 bool dropMimeData(const QMimeData *data, Qt::DropAction action, int row, int column, const QModelIndex &parent) override;
0045 QSize span(const QModelIndex &index) const override;
0046 QHash<int, QByteArray> roleNames() const override;
0047
0048 private:
0049 Q_DECLARE_PRIVATE(QConcatenateTablesProxyModel)
0050 Q_DISABLE_COPY(QConcatenateTablesProxyModel)
0051 };
0052
0053 QT_END_NAMESPACE
0054
0055 #endif