QStaticText: mark constructor as explicit

A QStaticText object is supposed to be created and *kept* by the user,
and then used repeatedly for drawing, saving the expensive
layouting/rasterization process which would otherwise be done for each
drawText-like call.

Allowing an implicit conversion from QString is therefore surely
unwanted.

[ChangeLog][Potentially Source-Incompatible Changes][QStaticText] The
QStaticText(const QString &) constructor is now explicit.

Change-Id: Ib939a5f46638cb9a54d1cc30ff50e3a9d20be5e4
Reviewed-by: Marc Mutz <marc.mutz@kdab.com>
This commit is contained in:
Giuseppe D'Angelo 2017-04-04 15:47:31 +01:00
parent 89302436cb
commit 49c4c061e0

View File

@ -62,7 +62,7 @@ public:
}; };
QStaticText(); QStaticText();
QStaticText(const QString &text); explicit QStaticText(const QString &text);
QStaticText(const QStaticText &other); QStaticText(const QStaticText &other);
#ifdef Q_COMPILER_RVALUE_REFS #ifdef Q_COMPILER_RVALUE_REFS
QStaticText &operator=(QStaticText &&other) Q_DECL_NOTHROW { swap(other); return *this; } QStaticText &operator=(QStaticText &&other) Q_DECL_NOTHROW { swap(other); return *this; }