From e2301c31398583138f389cc2b3832fc22fcf69a1 Mon Sep 17 00:00:00 2001 From: Krad Date: Fri, 1 Apr 2022 15:23:42 +0800 Subject: [PATCH] Shrink long word wrap text in data model. --- src/db/CenterAlignSqlTableModel.h | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/db/CenterAlignSqlTableModel.h b/src/db/CenterAlignSqlTableModel.h index 222fa57..1f22f4e 100644 --- a/src/db/CenterAlignSqlTableModel.h +++ b/src/db/CenterAlignSqlTableModel.h @@ -15,7 +15,15 @@ protected: QVariant data(const QModelIndex& index, int role) const override { if (index.column() >0 && role == Qt::TextAlignmentRole) { return Qt::AlignCenter; - } else { + } + 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); } }