From 0b606b76e679c587fb14c2472de1b809954f29bf Mon Sep 17 00:00:00 2001 From: Manjeet Dahiya Date: Mon, 7 Sep 2009 15:17:44 +0000 Subject: XEP-0054: vcard-temp implementation and other code cleanups --- source/QXmppUtils.cpp | 54 +++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 52 insertions(+), 2 deletions(-) (limited to 'source/QXmppUtils.cpp') diff --git a/source/QXmppUtils.cpp b/source/QXmppUtils.cpp index 493d1266..04c2a4ab 100644 --- a/source/QXmppUtils.cpp +++ b/source/QXmppUtils.cpp @@ -27,6 +27,8 @@ #include #include #include +#include +#include QString jidToResource(const QString& jid) { @@ -38,7 +40,8 @@ QString jidToBareJid(const QString& jid) return jid.left(jid.indexOf(QChar('/'))); } -void helperToXmlAddAttribute(QTextStream& stream, const QString& name, const QString& value) +void helperToXmlAddAttribute(QTextStream& stream, const QString& name, + const QString& value) { if(!value.isEmpty()) stream << " " << name <<"='" << value << "'"; @@ -49,7 +52,15 @@ void helperToXmlAddElement(QTextStream& stream, const QString& name, int value) stream << "<" << name << ">" << value << ""; } -void helperToXmlAddElement(QTextStream& stream, const QString& name, const QString& value) +void helperToXmlAddElement(QTextStream& stream, const QString& name, + const QString& value) +{ + if(!value.isEmpty()) + stream << "<" << name << ">" << value << ""; +} + +void helperToXmlAddElement(QTextStream& stream, const QString& name, + const QByteArray& value) { if(!value.isEmpty()) stream << "<" << name << ">" << value << ""; @@ -84,3 +95,42 @@ QString unescapeString(const QString& str) strOut.replace("&", QChar('&')); return strOut; } + +QString getImageType(const QByteArray& image) +{ + QBuffer buffer; + buffer.setData(image); + buffer.open(QIODevice::ReadOnly); + QString format = QImageReader::imageFormat(&buffer); + + if(format.toUpper() == "PNG") + return "image/png"; + else if(format.toUpper() == "MNG") + return "video/x-mng"; + else if(format.toUpper() == "GIF") + return "image/gif"; + else if(format.toUpper() == "BMP") + return "image/bmp"; + else if(format.toUpper() == "XPM") + return "image/x-xpm"; + else if(format.toUpper() == "SVG") + return "image/svg+xml"; + else if(format.toUpper() == "JPEG") + return "image/jpeg"; + + return "image/unknown"; +} + +QString getImageHash(const QByteArray& image) +{ + return ""; +} + +QImage getImageFromByteArray(const QByteArray& image) +{ + QBuffer buffer; + buffer.setData(image); + buffer.open(QIODevice::ReadOnly); + QImageReader imageReader(&buffer); + return imageReader.read(); +} -- cgit v1.2.3