#ifndef BINDROUTETABLEMODEL_H #define BINDROUTETABLEMODEL_H /* 采用Qt Model/View方式展示航线信息表。 此类为自定义Model类。 */ #include #include #include "Engine/UGDatasetVector.h" // struct RouteData { QMappoints; QString routeNumber; // qreal routeHeight; QString bindState; QString routeFeatures; }; class BindRouteTableModel : public QAbstractTableModel { Q_OBJECT public: explicit BindRouteTableModel(QObject *parent = nullptr); ~BindRouteTableModel(); void getHeader(); int getRowCount(); void setBeginResetModel(); void setEndResetModel(); protected: virtual int rowCount(const QModelIndex& parent = QModelIndex()) const override; virtual int columnCount(const QModelIndex& parent = QModelIndex()) const override; virtual QVariant data(const QModelIndex& index, int role = Qt::DisplayRole) const override; virtual bool setData(const QModelIndex& index, const QVariant& value, int role = Qt::EditRole) override; virtual QVariant headerData(int section, Qt::Orientation orientation,int role = Qt::DisplayRole) const override; Qt::ItemFlags flags(const QModelIndex& index) const override; public: QStringList m_headData; //表头数据 RouteData routeData; }; #endif // BINDROUTETABLEMODEL_H