You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.3 KiB
C++
54 lines
1.3 KiB
C++
#ifndef BINDROUTETABLEMODEL_H
|
|
#define BINDROUTETABLEMODEL_H
|
|
|
|
/*
|
|
采用Qt Model/View方式展示航线信息表。
|
|
此类为自定义Model类。
|
|
*/
|
|
|
|
#include <QAbstractTableModel>
|
|
#include <QVector3D>
|
|
|
|
#include "Engine/UGDatasetVector.h"
|
|
|
|
//
|
|
struct RouteData
|
|
{
|
|
QMap<int,QVector3D>points;
|
|
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
|