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

List:       kde-commits
Subject:    extragear/graphics/digikam
From:       Gilles Caulier <caulier.gilles () gmail ! com>
Date:       2008-05-25 17:40:29
Message-ID: 1211737229.876201.22564.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 812535 by cgilles:

backport commits #812500, 812506, 812510 from KDE branch
CCBUGS: 161369


 M  +25 -23    digikam/albumiconview.cpp  
 M  +15 -15    digikam/tagfilterview.cpp  
 M  +16 -15    digikam/tagfolderview.cpp  
 M  +30 -24    libs/imageproperties/imagedescedittab.cpp  
 M  +16 -15    libs/imageproperties/talbumlistview.cpp  
 M  +18 -2     project/project.kdevelop  


--- trunk/extragear/graphics/digikam/digikam/albumiconview.cpp #812534:812535
@@ -1604,31 +1604,31 @@
 void AlbumIconView::changeTagOnImageInfos(const ImageInfoList &list, const \
QList<int> &tagIDs, bool addOrRemove, bool progress)  {
     float cnt = list.count();
-    int i = 0;
+    int i     = 0;
 
+    d->imageLister->blockSignals(true);
+    DatabaseTransaction transaction;
+    foreach(const ImageInfo &info, list)
     {
-        DatabaseTransaction transaction;
-        foreach(const ImageInfo &info, list)
-        {
-            MetadataHub hub;
+        MetadataHub hub;
 
-            hub.load(info);
+        hub.load(info);
 
-            for (QList<int>::const_iterator tagIt = tagIDs.begin(); tagIt != \
                tagIDs.end(); ++tagIt)
-            {
-                hub.setTag(*tagIt, addOrRemove);
-            }
+        for (QList<int>::const_iterator tagIt = tagIDs.begin(); tagIt != \
tagIDs.end(); ++tagIt) +        {
+            hub.setTag(*tagIt, addOrRemove);
+        }
 
-            hub.write(info, MetadataHub::PartialWrite);
-            hub.write(info.filePath(), MetadataHub::FullWriteIfChanged);
+        hub.write(info, MetadataHub::PartialWrite);
+        hub.write(info.filePath(), MetadataHub::FullWriteIfChanged);
 
-            if (progress)
-            {
-                emit signalProgressValue((int)((i++/cnt)*100.0));
-                kapp->processEvents();
-            }
+        if (progress)
+        {
+            emit signalProgressValue((int)((i++/cnt)*100.0));
+            kapp->processEvents();
         }
     }
+    d->imageLister->blockSignals(false);
 
     if (d->currentAlbum && d->currentAlbum->type() == Album::TAG)
     {
@@ -2234,17 +2234,18 @@
     int   i   = 0;
     float cnt = (float)countSelected();
     rating    = qMin(RatingMax, qMax(RatingMin, rating));
+    MetadataHub hub;
 
+    DatabaseTransaction transaction;
+    for (IconItem *it = firstItem() ; it ; it = it->nextItem())
     {
-        DatabaseTransaction transaction;
-        for (IconItem *it = firstItem() ; it ; it = it->nextItem())
+        if (it->isSelected())
         {
-            if (it->isSelected())
+            AlbumIconItem *albumItem = dynamic_cast<AlbumIconItem *>(it);
+            if (albumItem)
             {
-                AlbumIconItem *albumItem = static_cast<AlbumIconItem *>(it);
-                ImageInfo info           = albumItem->imageInfo();
+                ImageInfo info = albumItem->imageInfo();
 
-                MetadataHub hub;
                 hub.load(info);
                 hub.setRating(rating);
                 hub.write(info, MetadataHub::PartialWrite);
@@ -2255,6 +2256,7 @@
             }
         }
     }
+    d->imageLister->blockSignals(false);
 
     emit signalProgressBarMode(StatusProgressBar::TextMode, QString());
     updateContents();
--- trunk/extragear/graphics/digikam/digikam/tagfilterview.cpp #812534:812535
@@ -623,25 +623,25 @@
             emit signalProgressBarMode(StatusProgressBar::ProgressBarMode, 
                                        i18n("Assigning image tags. Please \
wait..."));  
+            AlbumLister::instance()->blockSignals(true);
+            DatabaseTransaction transaction;
+            MetadataHub         hub;
+            int i=0;
+
+            for (QList<int>::const_iterator it = imageIDs.begin(); it != \
imageIDs.end(); ++it)  {
-                DatabaseTransaction transaction;
-                int i=0;
-                for (QList<int>::const_iterator it = imageIDs.begin();
-                    it != imageIDs.end(); ++it)
-                {
-                    // create temporary ImageInfo object
-                    ImageInfo info(*it);
+                // create temporary ImageInfo object
+                ImageInfo info(*it);
 
-                    MetadataHub hub;
-                    hub.load(info);
-                    hub.setTag(destAlbum, true);
-                    hub.write(info, MetadataHub::PartialWrite);
-                    hub.write(info.filePath(), MetadataHub::FullWriteIfChanged);
+                hub.load(info);
+                hub.setTag(destAlbum, true);
+                hub.write(info, MetadataHub::PartialWrite);
+                hub.write(info.filePath(), MetadataHub::FullWriteIfChanged);
 
-                    emit \
                signalProgressValue((int)((i++/(float)imageIDs.count())*100.0));
-                    kapp->processEvents();
-                }
+                emit \
signalProgressValue((int)((i++/(float)imageIDs.count())*100.0)); +                \
kapp->processEvents();  }
+            AlbumLister::instance()->blockSignals(false);
 
             emit signalProgressBarMode(StatusProgressBar::TextMode, QString());
         }
--- trunk/extragear/graphics/digikam/digikam/tagfolderview.cpp #812534:812535
@@ -44,6 +44,7 @@
 #include "albummanager.h"
 #include "albumsettings.h"
 #include "albumthumbnailloader.h"
+#include "albumlister.h"
 #include "databasetransaction.h"
 #include "ddragobjects.h"
 #include "folderitem.h"
@@ -942,25 +943,25 @@
             emit signalProgressBarMode(StatusProgressBar::ProgressBarMode, 
                                        i18n("Assigning image tags. Please \
wait..."));  
-            int i=0;
+            int i = 0;
+            AlbumLister::instance()->blockSignals(true);
+            DatabaseTransaction transaction;
+            MetadataHub         hub;
+
+            for (QList<int>::const_iterator it = imageIDs.begin(); it != \
imageIDs.end(); ++it)  {
-                DatabaseTransaction transaction;
-                for (QList<int>::const_iterator it = imageIDs.begin();
-                    it != imageIDs.end(); ++it)
-                {
-                    // create temporary ImageInfo object
-                    ImageInfo info(*it);
+                // create temporary ImageInfo object
+                ImageInfo info(*it);
 
-                    MetadataHub hub;
-                    hub.load(info);
-                    hub.setTag(destAlbum, true);
-                    hub.write(info, MetadataHub::PartialWrite);
-                    hub.write(info.filePath(), MetadataHub::FullWriteIfChanged);
+                hub.load(info);
+                hub.setTag(destAlbum, true);
+                hub.write(info, MetadataHub::PartialWrite);
+                hub.write(info.filePath(), MetadataHub::FullWriteIfChanged);
 
-                    emit \
                signalProgressValue((int)((i++/(float)imageIDs.count())*100.0));
-                    kapp->processEvents();
-                }
+                emit \
signalProgressValue((int)((i++/(float)imageIDs.count())*100.0)); +                \
kapp->processEvents();  }
+            AlbumLister::instance()->blockSignals(false);
 
             emit signalProgressBarMode(StatusProgressBar::TextMode, QString());
         }
--- trunk/extragear/graphics/digikam/libs/imageproperties/imagedescedittab.cpp \
#812534:812535 @@ -61,6 +61,7 @@
 #include "albumdb.h"
 #include "album.h"
 #include "albumsettings.h"
+#include "albumlister.h"
 #include "albumthumbnailloader.h"
 #include "databasetransaction.h"
 #include "tageditdlg.h"
@@ -484,21 +485,24 @@
 
     // we are now changing attributes ourselves
     d->ignoreImageAttributesWatch = true;
+
     int i=0;
+    AlbumLister::instance()->blockSignals(true);
+    DatabaseTransaction transaction;
+
+    foreach(const ImageInfo &info, d->currInfos)
     {
-        DatabaseTransaction transaction;
-        foreach(const ImageInfo &info, d->currInfos)
-        {
-            // apply to database
-            d->hub.write(info);
-            // apply to file metadata
-            d->hub.write(info.filePath(), MetadataHub::FullWrite, writeSettings);
+        // apply to database
+        d->hub.write(info);
+        // apply to file metadata
+        d->hub.write(info.filePath(), MetadataHub::FullWrite, writeSettings);
 
-            emit signalProgressValue((int)((i++/(float)d->currInfos.count())*100.0));
                
-            if (progressInfo)
-                kapp->processEvents();
-        }
+        emit signalProgressValue((int)((i++/(float)d->currInfos.count())*100.0));
+        if (progressInfo)
+            kapp->processEvents();
     }
+    AlbumLister::instance()->blockSignals(false);
+
     d->ignoreImageAttributesWatch = false;
 
     emit signalProgressBarMode(StatusProgressBar::TextMode, QString());
@@ -574,22 +578,24 @@
                                i18n("Reading metadata from files. Please wait..."));
 
     d->ignoreImageAttributesWatch = true;
-    int i=0;
+    int i = 0;
+    DatabaseTransaction transaction;
+    AlbumLister::instance()->blockSignals(true);
+
+    foreach(const ImageInfo &info, d->currInfos)
     {
-        DatabaseTransaction transaction;
-        foreach(const ImageInfo &info, d->currInfos)
-        {
-            // A batch operation: a hub for each single file, not the common hub
-            MetadataHub fileHub(MetadataHub::NewTagsImport);
-            // read in from DMetadata
-            fileHub.load(info.filePath());
-            // write out to database
-            fileHub.write(info);
+        // A batch operation: a hub for each single file, not the common hub
+        MetadataHub fileHub(MetadataHub::NewTagsImport);
+        // read in from DMetadata
+        fileHub.load(info.filePath());
+        // write out to database
+        fileHub.write(info);
 
-            emit signalProgressValue((int)((i++/(float)d->currInfos.count())*100.0));
                
-            kapp->processEvents();
-        }
+        emit signalProgressValue((int)((i++/(float)d->currInfos.count())*100.0));
+        kapp->processEvents();
     }
+    AlbumLister::instance()->blockSignals(false);
+
     d->ignoreImageAttributesWatch = false;
 
     emit signalProgressBarMode(StatusProgressBar::TextMode, QString());
--- trunk/extragear/graphics/digikam/libs/imageproperties/talbumlistview.cpp \
#812534:812535 @@ -48,6 +48,7 @@
 #include "albumdb.h"
 #include "album.h"
 #include "albumsettings.h"
+#include "albumlister.h"
 #include "databasetransaction.h"
 #include "imageinfo.h"
 #include "ddragobjects.h"
@@ -395,25 +396,25 @@
             emit signalProgressBarMode(StatusProgressBar::ProgressBarMode, 
                                        i18n("Assign tag to images. Please \
wait..."));  
-            int i=0;
+            int i = 0;
+            AlbumLister::instance()->blockSignals(true);
+            DatabaseTransaction transaction;
+            MetadataHub         hub;
+
+            for (QList<int>::const_iterator it = imageIDs.begin(); it != \
imageIDs.end(); ++it)  {
-                DatabaseTransaction transaction;
-                for (QList<int>::const_iterator it = imageIDs.begin();
-                    it != imageIDs.end(); ++it)
-                {
-                    // create temporary ImageInfo object
-                    ImageInfo info(*it);
+                // create temporary ImageInfo object
+                ImageInfo info(*it);
 
-                    MetadataHub hub;
-                    hub.load(info);
-                    hub.setTag(destAlbum, true);
-                    hub.write(info, MetadataHub::PartialWrite);
-                    hub.write(info.filePath(), MetadataHub::FullWriteIfChanged);
+                hub.load(info);
+                hub.setTag(destAlbum, true);
+                hub.write(info, MetadataHub::PartialWrite);
+                hub.write(info.filePath(), MetadataHub::FullWriteIfChanged);
 
-                    emit \
                signalProgressValue((int)((i++/(float)imageIDs.count())*100.0));
-                    kapp->processEvents();
-                }
+                emit \
signalProgressValue((int)((i++/(float)imageIDs.count())*100.0)); +                \
kapp->processEvents();  }
+            AlbumLister::instance()->blockSignals(false);
 
             //ImageAttributesWatch::instance().imagesChanged(destAlbum->id());
 
--- trunk/extragear/graphics/digikam/project/project.kdevelop #812534:812535
@@ -608,6 +608,22 @@
     <projectname>project</projectname>
     <projectname>project</projectname>
     <projectname>project</projectname>
+    <projectname>project</projectname>
+    <projectname>project</projectname>
+    <projectname>project</projectname>
+    <projectname>project</projectname>
+    <projectname>project</projectname>
+    <projectname>project</projectname>
+    <projectname>project</projectname>
+    <projectname>project</projectname>
+    <projectname>project</projectname>
+    <projectname>project</projectname>
+    <projectname>project</projectname>
+    <projectname>project</projectname>
+    <projectname>project</projectname>
+    <projectname>project</projectname>
+    <projectname>project</projectname>
+    <projectname>project</projectname>
   </general>
   <kdevfileview>
     <groups>
@@ -706,7 +722,7 @@
     <run>
       <directoryradio>build</directoryradio>
       <customdirectory>/</customdirectory>
-      <mainprogram>/home/gilles/Documents/Devel/SVN/trunk/graphics/digikam/digikam/digikam</mainprogram>
 +      <mainprogram>/home/gilles/Documents/devel/SVN/trunk/graphics/digikam/digikam/digikam</mainprogram>
  <programargs/>
       <terminal>false</terminal>
       <autocompile>false</autocompile>
@@ -722,7 +738,7 @@
         <envvar value="/opt/kde4/lib/kde4/plugins" name="QT_PLUGIN_PATH" />
       </envvars>
       <globaldebugarguments/>
-      <globalcwd>/home/gilles/Documents/Devel/SVN/trunk/graphics/digikam/project/../..</globalcwd>
 +      <globalcwd/>
       <useglobalprogram>true</useglobalprogram>
       <autoinstall>false</autoinstall>
       <autokdesu>false</autokdesu>


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

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