summaryrefslogtreecommitdiffstats
path: root/src/gui/image/qimagereader.cpp
diff options
context:
space:
mode:
authorAnton Kudryavtsev <a.kudryavtsev@netris.ru>2016-04-05 12:05:18 +0300
committerAnton Kudryavtsev <a.kudryavtsev@netris.ru>2016-07-14 05:53:48 +0000
commit7682542b4b487003e43c4081be01c06655db3c7e (patch)
treed2a2a7900c9bd361dd23a345a16122262d4aa6a2 /src/gui/image/qimagereader.cpp
parent4cb3c3e15aba83a32f5b4ddcf4561bc231aa4dc2 (diff)
Factor out qt_getImageText() and qt_getImageTextFromDescription()
... and re-use them in QImageReader, QJpegHandler, QPngHandler. Change-Id: Iec89e47205f3c420e1e7eb4a2d3c1fbfe887fd8c Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
Diffstat (limited to 'src/gui/image/qimagereader.cpp')
-rw-r--r--src/gui/image/qimagereader.cpp17
1 files changed, 5 insertions, 12 deletions
diff --git a/src/gui/image/qimagereader.cpp b/src/gui/image/qimagereader.cpp
index 0102ff5981..45d57856aa 100644
--- a/src/gui/image/qimagereader.cpp
+++ b/src/gui/image/qimagereader.cpp
@@ -147,6 +147,9 @@
#include <private/qfactoryloader_p.h>
#include <QMutexLocker>
+// for qt_getImageText
+#include <private/qimage_p.h>
+
// image handlers
#include <private/qbmphandler_p.h>
#include <private/qppmhandler_p.h>
@@ -592,18 +595,8 @@ bool QImageReaderPrivate::initHandler()
*/
void QImageReaderPrivate::getText()
{
- if (!text.isEmpty() || (!handler && !initHandler()) || !handler->supportsOption(QImageIOHandler::Description))
- return;
- foreach (const QString &pair, handler->option(QImageIOHandler::Description).toString().split(
- QLatin1String("\n\n"))) {
- int index = pair.indexOf(QLatin1Char(':'));
- if (index >= 0 && pair.indexOf(QLatin1Char(' ')) < index) {
- text.insert(QLatin1String("Description"), pair.simplified());
- } else {
- QString key = pair.left(index);
- text.insert(key, pair.mid(index + 2).simplified());
- }
- }
+ if (text.isEmpty() && (handler || initHandler()) && handler->supportsOption(QImageIOHandler::Description))
+ text = qt_getImageTextFromDescription(handler->option(QImageIOHandler::Description).toString());
}
/*!