Refactor CenterAlignSqlTableModel.
This commit is contained in:
@@ -3,3 +3,17 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#include "CenterAlignSqlTableModel.h"
|
#include "CenterAlignSqlTableModel.h"
|
||||||
|
QVariant CenterAlignSqlTableModel::data(const QModelIndex &index, int role) const {
|
||||||
|
if (index.column() > 0 && role == Qt::TextAlignmentRole) {
|
||||||
|
return Qt::AlignCenter;
|
||||||
|
}
|
||||||
|
if (index.column() > 0 && role == Qt::DisplayRole) {
|
||||||
|
auto val = QSqlTableModel::data(index, role).toString();
|
||||||
|
QStringList list = val.split("\n");
|
||||||
|
if (list.size() > 1)
|
||||||
|
return QString("%1...").arg(list[0].left(list[0].length() < 20 ? list[0].length() : 20));
|
||||||
|
return val;
|
||||||
|
} else {
|
||||||
|
return QSqlTableModel::data(index, role);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -10,23 +10,9 @@ class CenterAlignSqlTableModel:public QSqlTableModel {
|
|||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
explicit CenterAlignSqlTableModel(QObject *parent = nullptr, QSqlDatabase db = QSqlDatabase()):QSqlTableModel(parent,db){};
|
explicit CenterAlignSqlTableModel(QObject *parent = nullptr, QSqlDatabase db = QSqlDatabase()):QSqlTableModel(parent,db){};
|
||||||
~CenterAlignSqlTableModel(){};
|
~CenterAlignSqlTableModel() override = default;
|
||||||
protected:
|
protected:
|
||||||
QVariant data(const QModelIndex& index, int role) const override {
|
QVariant data(const QModelIndex& index, int role) const override;
|
||||||
if (index.column() >0 && role == Qt::TextAlignmentRole) {
|
|
||||||
return Qt::AlignCenter;
|
|
||||||
}
|
|
||||||
if (index.column() >0 && role == Qt::DisplayRole){
|
|
||||||
auto val = QSqlTableModel::data(index,role).toString();
|
|
||||||
QStringList list = val.split("\n");
|
|
||||||
if (list.size()>1)
|
|
||||||
return QString("%1...").arg(list[0].left(list[0].length()<20?list[0].length():20));
|
|
||||||
return val;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return QSqlTableModel::data(index,role);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user