From 1ace481fa85287cbfb1799bea9d2fd325eaf1ce7 Mon Sep 17 00:00:00 2001 From: Dean Lee Date: Sat, 4 Feb 2023 02:50:39 +0800 Subject: [PATCH] cabana: elide long signal names (#27202) elide long signal names --- tools/cabana/signaledit.cc | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/tools/cabana/signaledit.cc b/tools/cabana/signaledit.cc index 7f31293c41..b871ffa21a 100644 --- a/tools/cabana/signaledit.cc +++ b/tools/cabana/signaledit.cc @@ -292,7 +292,10 @@ void SignalItemDelegate::paint(QPainter *painter, const QStyleOptionViewItem &op font.setBold(true); painter->setFont(font); painter->setPen((option.state & QStyle::State_Selected ? option.palette.highlightedText() : option.palette.text()).color()); - painter->drawText(option.rect.adjusted(rc.width() + 9, 0, 0, 0), option.displayAlignment, index.data(Qt::DisplayRole).toString()); + QString text = index.data(Qt::DisplayRole).toString(); + QRect text_rect = option.rect.adjusted(rc.width() + 9, 0, 0, 0); + text = painter->fontMetrics().elidedText(text, Qt::ElideRight, text_rect.width()); + painter->drawText(text_rect, option.displayAlignment, text); painter->restore(); } else { QStyledItemDelegate::paint(painter, option, index);