diff options
author | Anton Kudryavtsev <a.kudryavtsev@netris.ru> | 2016-03-29 11:18:10 +0300 |
---|---|---|
committer | Anton Kudryavtsev <a.kudryavtsev@netris.ru> | 2016-03-29 10:55:33 +0000 |
commit | a07b68aee9571817cb8e60a0cfb0f804478cbd3c (patch) | |
tree | d504d971b66f56780728525b699004a3aafd958c /src | |
parent | a54a5fee80e3cf0dffd9498db2d1948ce906e21d (diff) |
QQuickColorImageProvider: optimize string usage
Don't allocate memory to extract name: use QStringRef.
Replace QStringLiteral with QL1S to use QStringBuilder.
Extract color only when it's needed.
Change-Id: Ic02315e95defcffecce0128fb175b1d4a08db817
Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/controls/qquickcolorimageprovider.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/controls/qquickcolorimageprovider.cpp b/src/controls/qquickcolorimageprovider.cpp index 582b73ed..9fc55d00 100644 --- a/src/controls/qquickcolorimageprovider.cpp +++ b/src/controls/qquickcolorimageprovider.cpp @@ -54,10 +54,9 @@ QImage QQuickColorImageProvider::requestImage(const QString &id, QSize *size, co Q_UNUSED(requestedSize); int sep = id.indexOf(QLatin1Char('/')); - QString name = id.left(sep); - QString color = id.mid(sep + 1); + const QStringRef name = id.leftRef(sep); qreal dpr = qApp->primaryScreen()->devicePixelRatio(); - QString file = qt_findAtNxFile(m_path + QLatin1Char('/') + name + QStringLiteral(".png"), dpr); + QString file = qt_findAtNxFile(m_path + QLatin1Char('/') + name + QLatin1String(".png"), dpr); QImage image(file); if (image.isNull()) { @@ -68,6 +67,7 @@ QImage QQuickColorImageProvider::requestImage(const QString &id, QSize *size, co if (size) *size = image.size(); + const QString color = id.mid(sep + 1); if (!color.isEmpty()) { QPainter painter(&image); painter.setCompositionMode(QPainter::CompositionMode_SourceIn); |