[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    extragear/graphics/digikam/libs
From:       Gilles Caulier <caulier.gilles () gmail ! com>
Date:       2009-07-20 8:22:41
Message-ID: 1248078161.435591.30985.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 999581 by cgilles:

 if libkexiv2 < 1.0.0, switch and config interface without Metadata tags editor \
support.  Polish API


 M  +25 -19    imageproperties/imagepropertiesmetadatatab.cpp  
 M  +45 -5     widgets/metadata/metadatapanel.cpp  
 M  +5 -0      widgets/metadata/metadatapanel.h  
 M  +2 -3      widgets/metadata/metadataselector.cpp  
 M  +1 -1      widgets/metadata/metadataselector.h  
 M  +11 -1     widgets/metadata/metadatawidget.cpp  


--- trunk/extragear/graphics/digikam/libs/imageproperties/imagepropertiesmetadatatab.cpp \
#999580:999581 @@ -48,6 +48,7 @@
 
 // Local includes
 
+#include "metadatapanel.h"
 #include "exifwidget.h"
 #include "makernotewidget.h"
 #include "iptcwidget.h"
@@ -131,20 +132,25 @@
     KConfigGroup group        = config->group("Image Properties SideBar");
     setCurrentIndex(group.readEntry("ImagePropertiesMetaData Tab",
                     (int)ImagePropertiesMetadataTabPriv::EXIF));
-    d->exifWidget->setMode(group.readEntry("EXIF Level", (int)ExifWidget::CUSTOM));
-    d->makernoteWidget->setMode(group.readEntry("MAKERNOTE Level", \
                (int)MakerNoteWidget::CUSTOM));
-    d->iptcWidget->setMode(group.readEntry("IPTC Level", (int)IptcWidget::CUSTOM));
-    d->xmpWidget->setMode(group.readEntry("XMP Level", (int)XmpWidget::CUSTOM));
-    d->exifWidget->setCurrentItemByKey(group.readEntry("Current EXIF Item", \
QString())); +    d->exifWidget->setMode(group.readEntry("EXIF Level",                \
(int)ExifWidget::CUSTOM)); +    \
d->makernoteWidget->setMode(group.readEntry("MAKERNOTE Level",                    \
(int)MakerNoteWidget::CUSTOM)); +    d->iptcWidget->setMode(group.readEntry("IPTC \
Level",                              (int)IptcWidget::CUSTOM)); +    \
d->xmpWidget->setMode(group.readEntry("XMP Level",                                \
(int)XmpWidget::CUSTOM)); +    \
d->exifWidget->setCurrentItemByKey(group.readEntry("Current EXIF Item",           \
                QString()));
     d->makernoteWidget->setCurrentItemByKey(group.readEntry("Current MAKERNOTE \
                Item", QString()));
-    d->iptcWidget->setCurrentItemByKey(group.readEntry("Current IPTC Item", \
                QString()));
-    d->xmpWidget->setCurrentItemByKey(group.readEntry("Current XMP Item", \
QString())); +    d->iptcWidget->setCurrentItemByKey(group.readEntry("Current IPTC \
Item",           QString())); +    \
d->xmpWidget->setCurrentItemByKey(group.readEntry("Current XMP Item",             \
QString()));  
 #if KEXIV2_VERSION >= 0x010000
-    d->exifWidget->setTagsFilter(group.readEntry("EXIF Tags Filter", \
                QStringList()));
-    d->makernoteWidget->setTagsFilter(group.readEntry("MAKERNOTE Tags Filter", \
                QStringList()));
-    d->iptcWidget->setTagsFilter(group.readEntry("IPTC Tags Filter", \
                QStringList()));
-    d->xmpWidget->setTagsFilter(group.readEntry("XMP Tags Filter", QStringList()));
+    d->exifWidget->setTagsFilter(group.readEntry("EXIF Tags Filter",           \
MetadataPanel::defaultExifFilter())); +    \
d->makernoteWidget->setTagsFilter(group.readEntry("MAKERNOTE Tags Filter", \
MetadataPanel::defaultMknoteFilter())); +    \
d->iptcWidget->setTagsFilter(group.readEntry("IPTC Tags Filter",           \
MetadataPanel::defaultIptcFilter())); +    \
d->xmpWidget->setTagsFilter(group.readEntry("XMP Tags Filter",             \
MetadataPanel::defaultXmpFilter())); +#else
+    d->exifWidget->setTagsFilter(MetadataPanel::defaultExifFilter()));
+    d->makernoteWidget->setTagsFilter(MetadataPanel::defaultMknoteFilter()));
+    d->iptcWidget->setTagsFilter(MetadataPanel::defaultIptcFilter()));
+    d->xmpWidget->setTagsFilter(MetadataPanel::defaultXmpFilter()));
 #endif
 }
 
@@ -153,14 +159,14 @@
     KSharedConfig::Ptr config = KGlobal::config();
     KConfigGroup group        = config->group("Image Properties SideBar");
     group.writeEntry("ImagePropertiesMetaData Tab", currentIndex());
-    group.writeEntry("EXIF Level", d->exifWidget->getMode());
-    group.writeEntry("MAKERNOTE Level", d->makernoteWidget->getMode());
-    group.writeEntry("IPTC Level", d->iptcWidget->getMode());
-    group.writeEntry("XMP Level", d->xmpWidget->getMode());
-    group.writeEntry("Current EXIF Item", d->exifWidget->getCurrentItemKey());
-    group.writeEntry("Current MAKERNOTE Item", \
                d->makernoteWidget->getCurrentItemKey());
-    group.writeEntry("Current IPTC Item", d->iptcWidget->getCurrentItemKey());
-    group.writeEntry("Current XMP Item", d->xmpWidget->getCurrentItemKey());
+    group.writeEntry("EXIF Level",                  d->exifWidget->getMode());
+    group.writeEntry("MAKERNOTE Level",             d->makernoteWidget->getMode());
+    group.writeEntry("IPTC Level",                  d->iptcWidget->getMode());
+    group.writeEntry("XMP Level",                   d->xmpWidget->getMode());
+    group.writeEntry("Current EXIF Item",           \
d->exifWidget->getCurrentItemKey()); +    group.writeEntry("Current MAKERNOTE Item",  \
d->makernoteWidget->getCurrentItemKey()); +    group.writeEntry("Current IPTC Item",  \
d->iptcWidget->getCurrentItemKey()); +    group.writeEntry("Current XMP Item",        \
d->xmpWidget->getCurrentItemKey());  config->sync();
 }
 
--- trunk/extragear/graphics/digikam/libs/widgets/metadata/metadatapanel.cpp \
#999580:999581 @@ -180,10 +180,26 @@
         mknoteViewerConfig = 0;
         iptcViewerConfig   = 0;
         xmpViewerConfig    = 0;
-    }
 
+        setDefaultFilter(ExifHumanList,      defaultExifFilter);
+        setDefaultFilter(MakerNoteHumanList, defaultMknoteFilter);
+        setDefaultFilter(IptcHumanList,      defaultIptcFilter);
+        setDefaultFilter(XmpHumanList,       defaultXmpFilter);
+    };
+
+    void setDefaultFilter(const char** list, QStringList& filter)
+    {
+        for (int i=0 ; QString(list[i]) != QString("-1") ; ++i)
+            filter << QString(list[i]);
+    };
+
     KTabWidget           *tab;
 
+    QStringList           defaultExifFilter;
+    QStringList           defaultMknoteFilter;
+    QStringList           defaultIptcFilter;
+    QStringList           defaultXmpFilter;
+
     MetadataSelectorView *exifViewerConfig;
     MetadataSelectorView *mknoteViewerConfig;
     MetadataSelectorView *iptcViewerConfig;
@@ -198,19 +214,19 @@
     // --------------------------------------------------------
 
     d->exifViewerConfig   = new MetadataSelectorView(d->tab);
-    d->exifViewerConfig->setDefaultFilter(ExifHumanList);
+    d->exifViewerConfig->setDefaultFilter(d->defaultExifFilter);
     d->tab->insertTab(1, d->exifViewerConfig, i18n("EXIF viewer"));
 
     d->mknoteViewerConfig = new MetadataSelectorView(d->tab);
-    d->mknoteViewerConfig->setDefaultFilter(MakerNoteHumanList);
+    d->mknoteViewerConfig->setDefaultFilter(d->defaultMknoteFilter);
     d->tab->insertTab(2, d->mknoteViewerConfig, i18n("Makernotes viewer"));
 
     d->iptcViewerConfig   = new MetadataSelectorView(d->tab);
-    d->iptcViewerConfig->setDefaultFilter(IptcHumanList);
+    d->iptcViewerConfig->setDefaultFilter(d->defaultIptcFilter);
     d->tab->insertTab(3, d->iptcViewerConfig, i18n("IPTC viewer"));
 
     d->xmpViewerConfig    = new MetadataSelectorView(d->tab);
-    d->xmpViewerConfig->setDefaultFilter(XmpHumanList);
+    d->xmpViewerConfig->setDefaultFilter(d->defaultXmpFilter);
     d->tab->insertTab(4, d->xmpViewerConfig, i18n("XMP viewer"));
 
 #if KEXIV2_VERSION < 0x010000
@@ -228,6 +244,30 @@
     delete d;
 }
 
+QStringList MetadataPanel::defaultExifFilter()
+{
+    MetadataPanelPriv d;
+    return d.defaultExifFilter;
+}
+
+QStringList MetadataPanel::defaultMknoteFilter()
+{
+    MetadataPanelPriv d;
+    return d.defaultMknoteFilter;
+}
+
+QStringList MetadataPanel::defaultIptcFilter()
+{
+    MetadataPanelPriv d;
+    return d.defaultIptcFilter;
+}
+
+QStringList MetadataPanel::defaultXmpFilter()
+{
+    MetadataPanelPriv d;
+    return d.defaultXmpFilter;
+}
+
 void MetadataPanel::applySettings()
 {
 #if KEXIV2_VERSION >= 0x010000
--- trunk/extragear/graphics/digikam/libs/widgets/metadata/metadatapanel.h \
#999580:999581 @@ -50,6 +50,11 @@
 
     void applySettings();
 
+    static QStringList defaultExifFilter();
+    static QStringList defaultMknoteFilter();
+    static QStringList defaultIptcFilter();
+    static QStringList defaultXmpFilter();
+
 private:
 
     void readSettings();
--- trunk/extragear/graphics/digikam/libs/widgets/metadata/metadataselector.cpp \
#999580:999581 @@ -274,10 +274,9 @@
     d->selector->setcheckedTagsList(list);
 }
 
-void MetadataSelectorView::setDefaultFilter(const char** list)
+void MetadataSelectorView::setDefaultFilter(const QStringList& list)
 {
-    for (int i=0 ; QString(list[i]) != QString("-1") ; ++i)
-        d->defaultFilter << QString(list[i]);
+    d->defaultFilter = list;
 }
 
 QStringList MetadataSelectorView::defaultFilter() const
--- trunk/extragear/graphics/digikam/libs/widgets/metadata/metadataselector.h \
#999580:999581 @@ -104,7 +104,7 @@
 
     void setcheckedTagsList(const QStringList& list);
 
-    void setDefaultFilter(const char** list);
+    void setDefaultFilter(const QStringList& list);
     QStringList defaultFilter() const;
 
     QStringList checkedTagsList() const;
--- trunk/extragear/graphics/digikam/libs/widgets/metadata/metadatawidget.cpp \
#999580:999581 @@ -55,6 +55,10 @@
 #include <kiconloader.h>
 #include <klocale.h>
 
+// Libkexiv2 includes
+
+#include <libkexiv2/version.h>
+
 // Local includes
 
 #include "metadatalistview.h"
@@ -119,8 +123,14 @@
     QToolButton *simpleLevel = new QToolButton(d->levelGBox);
     simpleLevel->setIcon(iconLoader->loadIcon("user-identity", \
(KIconLoader::Group)KIconLoader::Toolbar));  simpleLevel->setCheckable(true);
-    simpleLevel->setWhatsThis(i18n("Switch the tags view to a custom human-readable \
list")); +#if KEXIV2_VERSION >= 0x010000
+    simpleLevel->setWhatsThis(i18n("Switch the tags view to a custom human-readable \
list. " +                                   "To customize tags filter list, go to \
Metadata configuration panel."));  simpleLevel->setToolTip(i18n("Custom list"));
+#else
+    simpleLevel->setWhatsThis(i18n("Switch the tags view to a human-readable \
list")); +    simpleLevel->setToolTip(i18n("Human-readable list"));
+#endif
     d->levelButtons->addButton(simpleLevel, CUSTOM);
 
     QToolButton *fullLevel = new QToolButton(d->levelGBox);


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic