[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdegraphics/libs/libkexiv2/libkexiv2
From: Marcel Wiesweg <marcel.wiesweg () gmx ! de>
Date: 2009-09-04 17:24:32
Message-ID: 1252085072.938809.26998.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 1019869 by mwiesweg:
Add first revision of code using Exiv2 PreviewManager.
Need to find efficient method to create manager.
M +1 -0 kexiv2_p.h
M +60 -0 kexiv2image.cpp
--- trunk/KDE/kdegraphics/libs/libkexiv2/libkexiv2/kexiv2_p.h #1019868:1019869
@@ -81,6 +81,7 @@
#include <exiv2/panasonicmn.hpp>
#include <exiv2/pentaxmn.hpp>
#include <exiv2/fujimn.hpp>
+//#include <exiv2/preview.hpp>
#ifdef __GNUC__
#pragma GCC visibility pop
#endif
--- trunk/KDE/kdegraphics/libs/libkexiv2/libkexiv2/kexiv2image.cpp #1019868:1019869
@@ -899,4 +899,64 @@
return false;
}
+/*
+Prototype code
+
+ //------------------------------------------------------------
+ //-- GPS manipulation methods --------------------------------
+ //------------------------------------------------------------
+
+ class EmbeddedPreviewInfo
+ {
+ public:
+ int width;
+ int height;
+ QString mimeType;
+ };
+ /**
+ * Returns a list of infos about the embedded previews available.
+ * /
+ QList<EmbeddedPreviewInfo> getEmbeddedPreviewInfos() const;
+ /**
+ * Returns the data for an embedded preview. Index is the index
+ * of the corresponding EmbeddedPreviewInfo in the list retrieved from getEmbeddedPreviewInfos().
+ * /
+ QByteArray getEmbeddedPreviewData(unsigned int index) const;
+
+QList<KExiv2::EmbeddedPreviewInfo> KExiv2::getEmbeddedPreviewInfos() const
+{
+ QList<EmbeddedPreviewInfo> infos;
+#if (EXIV2_TEST_VERSION(0,18,0))
+ Exiv2::PreviewManager manager;
+
+ Exiv2::PreviewPropertiesList properties = manager.getPreviewProperties();
+ for (unsigned int i=0; i<properties.size(); i++)
+ {
+ EmbeddedPreviewInfo info;
+ Exiv2::PreviewProperties &property = properties[i];
+ info.width = property.width_;
+ info.height = property.height_;
+ info.mimeType = QString::fromLatin1(property.mimeType_.c_str());
+ infos << info;
+ }
+#endif
+ return infos;
+}
+
+QByteArray KExiv2::getEmbeddedPreviewData(unsigned int index) const
+{
+#if (EXIV2_TEST_VERSION(0,18,0))
+ Exiv2::PreviewManager manager;
+ Exiv2::PreviewPropertiesList properties = manager.getPreviewProperties();
+ if (index < properties.size())
+ return QByteArray();
+ Exiv2::PreviewImage image = manager.getPreviewImage(properties[index]);
+ return QByteArray((const char*)image.pData(), image.size());
+#else
+ Q_UNUSED(index)
+ return QByteArray();
+#endif
+}
+*/
+
} // NameSpace KExiv2Iface
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic