File indexing completed on 2024-05-12 04:33:18
0001 /* 0002 SPDX-FileCopyrightText: 2009-2010 Michael G. Hansen <mike at mghansen dot de> 0003 SPDX-FileCopyrightText: 2011-2018 Gilles Caulier <caulier dot gilles at gmail dot com> 0004 0005 SPDX-License-Identifier: GPL-2.0-or-later 0006 */ 0007 0008 #include "kipiimageinfoshared.h" 0009 0010 // Qt includes 0011 0012 #include <QFileInfo> 0013 #include <QStringList> 0014 #include <QDebug> 0015 0016 namespace KXMLKipiCmd 0017 { 0018 0019 class KipiImageInfoShared::Private 0020 { 0021 public: 0022 0023 Private() 0024 { 0025 } 0026 0027 QDateTime dateTime; 0028 }; 0029 0030 KipiImageInfoShared::KipiImageInfoShared(Interface* const interface, const QUrl& url) 0031 : ImageInfoShared(interface, url), 0032 d(new Private()) 0033 { 0034 } 0035 0036 KipiImageInfoShared::~KipiImageInfoShared() 0037 { 0038 delete d; 0039 } 0040 0041 QMap<QString, QVariant> KipiImageInfoShared::attributes() 0042 { 0043 qDebug() << "QMap<QString,QVariant> attributes()"; 0044 0045 QMap<QString, QVariant> res; 0046 0047 // Comment attribute 0048 res[QString::fromLatin1("comment")] = QString::fromLatin1("Image located at \"%1\"").arg(_url.url()); 0049 0050 // Date attribute 0051 if (!d->dateTime.isValid()) 0052 { 0053 if ( ! _url.isLocalFile() ) 0054 { 0055 qFatal("KIPI::ImageInfoShared::time does not yet support non local files, please fix\n"); 0056 d->dateTime = QDateTime(); 0057 } 0058 else 0059 { 0060 // File creation date only 0061 d->dateTime = QFileInfo( _url.toLocalFile() ).lastModified(); 0062 } 0063 } 0064 0065 res[QString::fromLatin1("date")] = d->dateTime; 0066 0067 return res; 0068 } 0069 void KipiImageInfoShared::clearAttributes() 0070 { 0071 qDebug() << "void KipiImageInfoShared::clearAttributes()"; 0072 } 0073 0074 void KipiImageInfoShared::addAttributes(const QMap<QString, QVariant>& attributes) 0075 { 0076 qDebug() << "void KipiImageInfoShared::addAttributes()"; 0077 0078 QMap<QString, QVariant>::const_iterator it = attributes.constBegin(); 0079 0080 while (it != attributes.constEnd()) 0081 { 0082 QString key = it.key(); 0083 QString val = it.value().toString(); 0084 qDebug() << QString::fromLatin1("attribute( \"%1\" ), value( \"%2\" )").arg(key).arg(val); 0085 ++it; 0086 } 0087 } 0088 0089 void KipiImageInfoShared::delAttributes(const QStringList& attributes) 0090 { 0091 qDebug() << "void KipiImageInfoShared::delAttributes()"; 0092 qDebug() << QString::fromLatin1("attributes : \"%1\"").arg(attributes.join(QString::fromLatin1(", "))); 0093 } 0094 0095 } // namespace KXMLKipiCmd