aboutsummaryrefslogtreecommitdiff
path: root/src/base/QXmppFileMetadata.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/base/QXmppFileMetadata.cpp')
-rw-r--r--src/base/QXmppFileMetadata.cpp16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/base/QXmppFileMetadata.cpp b/src/base/QXmppFileMetadata.cpp
index e71d9dc5..08b9f085 100644
--- a/src/base/QXmppFileMetadata.cpp
+++ b/src/base/QXmppFileMetadata.cpp
@@ -13,6 +13,7 @@
#include <QDateTime>
#include <QDomElement>
+#include <QFileInfo>
#include <QMimeDatabase>
class QXmppFileMetadataPrivate : public QSharedData
@@ -38,6 +39,21 @@ public:
/// \since QXmpp 1.5
///
+///
+/// \brief Creates a QXmppFileMetadata object from information from QFileInfo.
+///
+/// Sets the filename, file size, media type and the last modification date.
+///
+QXmppFileMetadata QXmppFileMetadata::fromFileInfo(const QFileInfo &info)
+{
+ QXmppFileMetadata metadata;
+ metadata.setFilename(info.fileName());
+ metadata.setSize(info.size());
+ metadata.setMediaType(QMimeDatabase().mimeTypeForFile(info));
+ metadata.setLastModified(info.lastModified());
+ return metadata;
+}
+
QXmppFileMetadata::QXmppFileMetadata()
: d(new QXmppFileMetadataPrivate())
{