diff options
author | Daniel Teske <daniel.teske@digia.com> | 2013-02-08 14:08:12 +0100 |
---|---|---|
committer | Daniel Teske <daniel.teske@digia.com> | 2013-02-11 12:26:38 +0100 |
commit | 76e451171d6459c50772fbbcab61f8f88eea7161 (patch) | |
tree | f8743906994126fb4484507189bd11f72146a1b6 | |
parent | 5be5542756c8471a3089c717178a1a6378ea5927 (diff) | |
download | qt-creator-76e451171d6459c50772fbbcab61f8f88eea7161.tar.gz |
Eliding Label: Set a tooltip if it elides.
Change-Id: I567a548695d709a01cc865811d268d039ceb11af
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
-rw-r--r-- | src/libs/utils/elidinglabel.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/libs/utils/elidinglabel.cpp b/src/libs/utils/elidinglabel.cpp index e3ec254888..fd01545ed7 100644 --- a/src/libs/utils/elidinglabel.cpp +++ b/src/libs/utils/elidinglabel.cpp @@ -69,8 +69,12 @@ void ElidingLabel::paintEvent(QPaintEvent *) QRect contents = contentsRect().adjusted(m, m, -m, -m); QFontMetrics fm = fontMetrics(); QString txt = text(); - if (txt.length() > 4 && fm.width(txt) > contents.width()) + if (txt.length() > 4 && fm.width(txt) > contents.width()) { + setToolTip(txt); txt = fm.elidedText(txt, m_elideMode, contents.width()); + } else { + setToolTip(QString()); + } int flags = QStyle::visualAlignment(layoutDirection(), alignment()) | Qt::TextSingleLine; QPainter painter(this); |