mirror of
https://github.com/OPM/ResInsight.git
synced 2026-11-02 20:30:46 -06:00
#5385 Make QShortenedLabel slightly longer
This commit is contained in:
1 parent
5973e8c330
commit
0d67a179ef
1 file changed
+9
-2
@@ -79,10 +79,12 @@ QString QShortenedLabel::fullText() const
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
QSize QShortenedLabel::minimumSizeHint() const
|
QSize QShortenedLabel::minimumSizeHint() const
|
||||||
{
|
{
|
||||||
int minimumWidth = 20;
|
const int minimumNumberOfCharacters = 10;
|
||||||
|
|
||||||
QFontMetrics fontMetrics = QApplication::fontMetrics();
|
QFontMetrics fontMetrics = QApplication::fontMetrics();
|
||||||
QString fullLabelText = fullText();
|
QString fullLabelText = fullText();
|
||||||
|
QString shortenedText = fullLabelText.left(minimumNumberOfCharacters);
|
||||||
|
int minimumWidth = fontMetrics.width(shortenedText);
|
||||||
|
|
||||||
if (!fullLabelText.isEmpty())
|
if (!fullLabelText.isEmpty())
|
||||||
{
|
{
|
||||||
@@ -101,7 +103,12 @@ QSize QShortenedLabel::minimumSizeHint() const
|
|||||||
maxFirstWordWidth = std::max(maxFirstWordWidth, wordWidth);
|
maxFirstWordWidth = std::max(maxFirstWordWidth, wordWidth);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
int minimumTextWidth = std::min(maxLineWidth, maxFirstWordWidth);
|
int minimumTextWidth = maxFirstWordWidth;
|
||||||
|
|
||||||
|
// Prefer the max line width if there's just one character between them
|
||||||
|
if (maxFirstWordWidth + fontMetrics.maxWidth() >= maxLineWidth)
|
||||||
|
minimumTextWidth = maxLineWidth;
|
||||||
|
|
||||||
minimumWidth = std::max(minimumWidth, minimumTextWidth);
|
minimumWidth = std::max(minimumWidth, minimumTextWidth);
|
||||||
}
|
}
|
||||||
QSize minimumSize = QLabel::minimumSizeHint();
|
QSize minimumSize = QLabel::minimumSizeHint();
|
||||||
|
|||||||
Reference in new issue
Block a user