[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: kdeextragear-3/digikam/interfaces
From: Ralf Hoelzer <ralf () well ! com>
Date: 2004-06-09 4:11:44
Message-ID: 20040609041144.935D9126EF () office ! kde ! org
[Download RAW message or body]
CVS commit by rhoezler:
Write comments to EXIF UserComment tag and JPEG COM field, if the comment is edited
by a KIPI plugin, such as the Commentseditor.
M +29 -3 kipiinterface.cpp 1.8
M +1 -0 kipiinterface.h 1.5
--- kdeextragear-3/digikam/interfaces/kipiinterface.cpp #1.7:1.8
@@ -30,4 +30,6 @@
#include <klocale.h>
+#include <kfilemetainfo.h>
+#include <libkexif/kexifdata.h>
// Local includes.
@@ -35,4 +37,5 @@
#include "albummanager.h"
#include "albuminfo.h"
+#include "albumsettings.h"
#include "digikamio.h"
#include "kipiinterface.h"
@@ -45,4 +48,5 @@ DigikamImageInfo::DigikamImageInfo( KIPI
{
imageName_ = url.fileName();
+ imageUrl_ = url.path();
albumName_ = url.path().section('/', -2, -2);
@@ -89,4 +93,26 @@ void DigikamImageInfo::setDescription( c
album_->setItemComments(imageName_, description);
album_->closeDB();
+
+ // store as JPEG Exif comment
+ AlbumSettings *settings = AlbumSettings::instance();
+
+ QString fileName(imageUrl_);
+ KFileMetaInfo metaInfo(fileName, "image/jpeg",KFileMetaInfo::Fastest);
+
+ if(settings->getSaveExifComments() && metaInfo.isValid () && \
metaInfo.mimeType() == "image/jpeg") + {
+ // set Jpeg comment
+ if (metaInfo.containsGroup("Jpeg EXIF Data"))
+ {
+ metaInfo["Jpeg EXIF Data"].item("Comment").setValue(description);
+ metaInfo.applyChanges();
+ }
+
+ // set EXIF UserComment
+ KExifData *exifData = new KExifData;
+ exifData->writeComment(fileName,description);
+ delete exifData;
+ }
+
}
}
--- kdeextragear-3/digikam/interfaces/kipiinterface.h #1.4:1.5
@@ -81,4 +81,5 @@ public:
private:
QString imageName_;
+ QString imageUrl_;
QString albumName_;
QString imageComments_;
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic