summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/gui/text/qstatictext.cpp10
-rw-r--r--src/gui/text/qstatictext.h2
-rw-r--r--src/gui/text/qstatictext_p.h2
3 files changed, 7 insertions, 7 deletions
diff --git a/src/gui/text/qstatictext.cpp b/src/gui/text/qstatictext.cpp
index e3bb950..9ddcf44 100644
--- a/src/gui/text/qstatictext.cpp
+++ b/src/gui/text/qstatictext.cpp
@@ -44,11 +44,11 @@
QT_BEGIN_NAMESPACE
-QStaticText::QStaticText(const QString &text, const QFont &font)
+QStaticText::QStaticText(const QString &text, const QFont &font, const QSizeF &size)
: d_ptr(new QStaticTextPrivate)
{
Q_D(QStaticText);
- d->init(text, font);
+ d->init(text, font, size.isValid() ? size.width() : -1.0);
}
QStaticTextPrivate::QStaticTextPrivate()
@@ -61,7 +61,7 @@ QStaticTextPrivate *QStaticTextPrivate::get(const QStaticText *q)
return q->d_ptr;
}
-void QStaticTextPrivate::init(const QString &text, const QFont &font)
+void QStaticTextPrivate::init(const QString &text, const QFont &font, qreal width)
{
Q_ASSERT(textLayout == 0);
textLayout = new QTextLayout(text, font);
@@ -70,10 +70,10 @@ void QStaticTextPrivate::init(const QString &text, const QFont &font)
QFontMetrics fontMetrics(font);
textLayout->beginLayout();
- int h = -fontMetrics.ascent();
+ int h = width >= 0.0 ? 0 : -fontMetrics.ascent();
QTextLine line;
if ((line = textLayout->createLine()).isValid()) {
- line.setLineWidth(fontMetrics.width(text));
+ line.setLineWidth(width >= 0.0 ? width : fontMetrics.width(text));
line.setPosition(QPointF(0, h));
h += line.height();
}
diff --git a/src/gui/text/qstatictext.h b/src/gui/text/qstatictext.h
index 4d39e23..1855114 100644
--- a/src/gui/text/qstatictext.h
+++ b/src/gui/text/qstatictext.h
@@ -56,7 +56,7 @@ class Q_GUI_EXPORT QStaticText
{
Q_DECLARE_PRIVATE(QStaticText);
public:
- QStaticText(const QString &text, const QFont &font);
+ QStaticText(const QString &text, const QFont &font, const QSizeF &maximumSize = QSizeF());
private:
QStaticTextPrivate *d_ptr;
diff --git a/src/gui/text/qstatictext_p.h b/src/gui/text/qstatictext_p.h
index c9abee3..d0e0c2a 100644
--- a/src/gui/text/qstatictext_p.h
+++ b/src/gui/text/qstatictext_p.h
@@ -10,7 +10,7 @@ class QStaticTextPrivate
{
public:
QStaticTextPrivate();
- void init(const QString &text, const QFont &font);
+ void init(const QString &text, const QFont &font, qreal width);
QTextLayout *textLayout;