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

List:       kde-commits
Subject:    branches/extragear/graphics/digikam/1.0-databaseext/libs
From:       Holger Foerster <hamsi2k () freenet ! de>
Date:       2010-02-11 11:29:32
Message-ID: 1265887772.205072.29256.nullmailer () svn ! kde ! org
[Download RAW message or body]

SVN commit 1088694 by foerster:

Show detailled progress information. Refactored some variables. Handle window closing \
event.

 M  +40 -32    database/databasecopymanager.cpp  
 M  +4 -2      database/databasecopymanager.h  
 M  +14 -12    dialogs/migrationdlg.cpp  
 M  +2 -1      dialogs/migrationdlg.h  


--- branches/extragear/graphics/digikam/1.0-databaseext/libs/database/databasecopymanager.cpp \
#1088693:1088694 @@ -37,14 +37,22 @@
 
 namespace Digikam
 {
-    void DatabaseCopyManager::stopThread()
+    DatabaseCopyManager::DatabaseCopyManager()
     {
-        isStopThread=true;
     }
 
+    DatabaseCopyManager::~DatabaseCopyManager()
+    {
+    }
+
+    void DatabaseCopyManager::stopProcessing()
+    {
+        isStopProcessing=true;
+    }
+
     void DatabaseCopyManager::copyDatabases(DatabaseParameters fromDBParameters, \
DatabaseParameters toDBParameters)  {
-        isStopThread=false;
+        isStopProcessing=false;
         DatabaseLocking fromLocking;
         DatabaseBackend fromDBbackend(&fromLocking, "MigrationFromDatabase");
         if (!fromDBbackend.open(fromDBParameters))
@@ -90,87 +98,87 @@
 
         emit stepStarted(i18n("Copy AlbumRoots..."));
         // now perform the copy action
-        if (isStopThread || !copyTable(fromDBbackend, \
QString("Migrate_Read_AlbumRoots"), toDBbackend, \
QString("Migrate_Write_AlbumRoots"))) +        if (isStopProcessing || \
!copyTable(fromDBbackend, QString("Migrate_Read_AlbumRoots"), toDBbackend, \
QString("Migrate_Write_AlbumRoots")))  {
-            handleClosing(isStopThread, fromDBbackend, toDBbackend);
+            handleClosing(isStopProcessing, fromDBbackend, toDBbackend);
             return;
         }
         emit stepStarted(i18n("Copy Albums..."));
-        if (isStopThread || !copyTable(fromDBbackend, \
QString("Migrate_Read_Albums"), toDBbackend, QString("Migrate_Write_Albums"))) +      \
if (isStopProcessing || !copyTable(fromDBbackend, QString("Migrate_Read_Albums"), \
toDBbackend, QString("Migrate_Write_Albums")))  {
-            handleClosing(isStopThread, fromDBbackend, toDBbackend);
+            handleClosing(isStopProcessing, fromDBbackend, toDBbackend);
             return;
         }
         emit stepStarted(i18n("Copy Images..."));
-        if (isStopThread || !copyTable(fromDBbackend, \
QString("Migrate_Read_Images"), toDBbackend, QString("Migrate_Write_Images"))) +      \
if (isStopProcessing || !copyTable(fromDBbackend, QString("Migrate_Read_Images"), \
toDBbackend, QString("Migrate_Write_Images")))  {
-            handleClosing(isStopThread, fromDBbackend, toDBbackend);
+            handleClosing(isStopProcessing, fromDBbackend, toDBbackend);
             return;
         }
         emit stepStarted(i18n("Copy ImageHaarMatrix..."));
-        if (isStopThread || !copyTable(fromDBbackend, \
QString("Migrate_Read_ImageHaarMatrix"), toDBbackend, \
QString("Migrate_Write_ImageHaarMatrix"))) +        if (isStopProcessing || \
!copyTable(fromDBbackend, QString("Migrate_Read_ImageHaarMatrix"), toDBbackend, \
QString("Migrate_Write_ImageHaarMatrix")))  {
-            handleClosing(isStopThread, fromDBbackend, toDBbackend);
+            handleClosing(isStopProcessing, fromDBbackend, toDBbackend);
             return;
         }
         emit stepStarted(i18n("Copy ImageInformation..."));
-        if (isStopThread || !copyTable(fromDBbackend, \
QString("Migrate_Read_ImageInformation"), toDBbackend, \
QString("Migrate_Write_ImageInformation"))) +        if (isStopProcessing || \
!copyTable(fromDBbackend, QString("Migrate_Read_ImageInformation"), toDBbackend, \
QString("Migrate_Write_ImageInformation")))  {
-            handleClosing(isStopThread, fromDBbackend, toDBbackend);
+            handleClosing(isStopProcessing, fromDBbackend, toDBbackend);
             return;
         }
         emit stepStarted(i18n("Copy ImageMetadata..."));
-        if (isStopThread || !copyTable(fromDBbackend, \
QString("Migrate_Read_ImageMetadata"), toDBbackend, \
QString("Migrate_Write_ImageMetadata"))) +        if (isStopProcessing || \
!copyTable(fromDBbackend, QString("Migrate_Read_ImageMetadata"), toDBbackend, \
QString("Migrate_Write_ImageMetadata")))  {
-            handleClosing(isStopThread, fromDBbackend, toDBbackend);
+            handleClosing(isStopProcessing, fromDBbackend, toDBbackend);
             return;
         }
         emit stepStarted(i18n("Copy ImagePositions..."));
-        if (isStopThread || !copyTable(fromDBbackend, \
QString("Migrate_Read_ImagePositions"), toDBbackend, \
QString("Migrate_Write_ImagePositions"))) +        if (isStopProcessing || \
!copyTable(fromDBbackend, QString("Migrate_Read_ImagePositions"), toDBbackend, \
QString("Migrate_Write_ImagePositions")))  {
-            handleClosing(isStopThread, fromDBbackend, toDBbackend);
+            handleClosing(isStopProcessing, fromDBbackend, toDBbackend);
             return;
         }
         emit stepStarted(i18n("Copy ImageComments..."));
-        if (isStopThread || !copyTable(fromDBbackend, \
QString("Migrate_Read_ImageComments"), toDBbackend, \
QString("Migrate_Write_ImageComments"))) +        if (isStopProcessing || \
!copyTable(fromDBbackend, QString("Migrate_Read_ImageComments"), toDBbackend, \
QString("Migrate_Write_ImageComments")))  {
-            handleClosing(isStopThread, fromDBbackend, toDBbackend);
+            handleClosing(isStopProcessing, fromDBbackend, toDBbackend);
             return;
         }
         emit stepStarted(i18n("Copy ImageCopyright..."));
-        if (isStopThread || !copyTable(fromDBbackend, \
QString("Migrate_Read_ImageCopyright"), toDBbackend, \
QString("Migrate_Write_ImageCopyright"))) +        if (isStopProcessing || \
!copyTable(fromDBbackend, QString("Migrate_Read_ImageCopyright"), toDBbackend, \
QString("Migrate_Write_ImageCopyright")))  {
-            handleClosing(isStopThread, fromDBbackend, toDBbackend);
+            handleClosing(isStopProcessing, fromDBbackend, toDBbackend);
             return;
         }
         emit stepStarted(i18n("Copy Tags..."));
-        if (isStopThread || !copyTable(fromDBbackend, QString("Migrate_Read_Tags"), \
toDBbackend, QString("Migrate_Write_Tags"))) +        if (isStopProcessing || \
!copyTable(fromDBbackend, QString("Migrate_Read_Tags"), toDBbackend, \
QString("Migrate_Write_Tags")))  {
-            handleClosing(isStopThread, fromDBbackend, toDBbackend);
+            handleClosing(isStopProcessing, fromDBbackend, toDBbackend);
             return;
         }
         emit stepStarted(i18n("Copy ImageTags..."));
-        if (isStopThread || !copyTable(fromDBbackend, \
QString("Migrate_Read_ImageTags"), toDBbackend, QString("Migrate_Write_ImageTags"))) \
+        if (isStopProcessing || !copyTable(fromDBbackend, \
QString("Migrate_Read_ImageTags"), toDBbackend, QString("Migrate_Write_ImageTags")))  \
                {
-            handleClosing(isStopThread, fromDBbackend, toDBbackend);
+            handleClosing(isStopProcessing, fromDBbackend, toDBbackend);
             return;
         }
         emit stepStarted(i18n("Copy ImageProperties..."));
-        if (isStopThread || !copyTable(fromDBbackend, \
QString("Migrate_Read_ImageProperties"), toDBbackend, \
QString("Migrate_Write_ImageProperties"))) +        if (isStopProcessing || \
!copyTable(fromDBbackend, QString("Migrate_Read_ImageProperties"), toDBbackend, \
QString("Migrate_Write_ImageProperties")))  {
-            handleClosing(isStopThread, fromDBbackend, toDBbackend);
+            handleClosing(isStopProcessing, fromDBbackend, toDBbackend);
             return;
         }
         emit stepStarted(i18n("Copy Searches..."));
-        if (isStopThread || !copyTable(fromDBbackend, \
QString("Migrate_Read_Searches"), toDBbackend, QString("Migrate_Write_Searches"))) +  \
if (isStopProcessing || !copyTable(fromDBbackend, QString("Migrate_Read_Searches"), \
toDBbackend, QString("Migrate_Write_Searches")))  {
-            handleClosing(isStopThread, fromDBbackend, toDBbackend);
+            handleClosing(isStopProcessing, fromDBbackend, toDBbackend);
             return;
         }
         emit stepStarted(i18n("Copy DownloadHistory..."));
-        if (isStopThread || !copyTable(fromDBbackend, \
QString("Migrate_Read_DownloadHistory"), toDBbackend, \
QString("Migrate_Write_DownloadHistory"))) +        if (isStopProcessing || \
!copyTable(fromDBbackend, QString("Migrate_Read_DownloadHistory"), toDBbackend, \
QString("Migrate_Write_DownloadHistory")))  {
-            handleClosing(isStopThread, fromDBbackend, toDBbackend);
+            handleClosing(isStopProcessing, fromDBbackend, toDBbackend);
             return;
         }
 /*
@@ -205,7 +213,7 @@
         int resultCounter=0;
         while (result.next())
         {
-            if (isStopThread==true)
+            if (isStopProcessing==true)
             {
                 return false;
             }
--- branches/extragear/graphics/digikam/1.0-databaseext/libs/database/databasecopymanager.h \
#1088693:1088694 @@ -37,6 +37,8 @@
         Q_OBJECT
 
         public:
+            DatabaseCopyManager();
+            ~DatabaseCopyManager();
             enum FinishStates{success, failed, canceled};
             void copyDatabases(DatabaseParameters fromDBParameters, \
DatabaseParameters toDBParameters);  
@@ -46,10 +48,10 @@
             void finished(int finishState, QString errorMsg);
 
         public Q_SLOTS:
-            void stopThread();
+            void stopProcessing();
 
         private:
-            bool isStopThread;
+            bool isStopProcessing;
             bool copyTable(DatabaseBackend &fromDBbackend, QString fromActionName, \
                DatabaseBackend &toDBbackend, QString toActionName);
             void handleClosing(bool isstopThread, DatabaseBackend &fromDBbackend, \
DatabaseBackend &toDBbackend);  
--- branches/extragear/graphics/digikam/1.0-databaseext/libs/dialogs/migrationdlg.cpp \
#1088693:1088694 @@ -73,12 +73,12 @@
 
     MigrationDlg::~MigrationDlg()
     {
-
+        copyThread->wait();
     }
 
     void MigrationDlg::setupMainArea()
     {
-        thread                          = new DatabaseCopyThread(this);
+        copyThread                      = new DatabaseCopyThread(this);
         fromDatabaseWidget              = new DatabaseWidget(this);
         toDatabaseWidget                = new DatabaseWidget(this);
         migrateButton                   = new QPushButton(i18n("Migrate ->"), this);
@@ -94,9 +94,11 @@
         progressBarSmallStep            = new QProgressBar(progressBox);
         progressBarSmallStep->setTextVisible(true);
 
+        overallStepTitle=new QLabel(i18n("Step Progress"), progressBox);
+
         vlay->addWidget(new QLabel(i18n("Overall Progress"), progressBox));
         vlay->addWidget(progressBar);
-        vlay->addWidget(new QLabel(i18n("Step Progress"), progressBox));
+        vlay->addWidget(overallStepTitle);
         vlay->addWidget(progressBarSmallStep);
 
         QWidget *mainWidget     = new QWidget;
@@ -120,25 +122,24 @@
         connect(migrateButton, SIGNAL(clicked()), this, SLOT(performCopy()));
 
 
-        // connect signal handlers for copy thread
-        this->connect(&(thread->copyManager), SIGNAL(finished(int, QString)), \
SLOT(handleFinish(int, QString))); +        // connect signal handlers for copy \
copyThread +        this->connect(&(copyThread->copyManager), SIGNAL(finished(int, \
QString)), SLOT(handleFinish(int, QString)));  
-        this->connect(&(thread->copyManager), SIGNAL(stepStarted(QString)), \
                SLOT(handleStepStarted(QString)));
-        this->connect(&(thread->copyManager), SIGNAL(smallStepStarted(int, int)), \
SLOT(handleSmallStepStarted(int, int))); +        \
this->connect(&(copyThread->copyManager), SIGNAL(stepStarted(QString)), \
SLOT(handleStepStarted(QString))); +        this->connect(&(copyThread->copyManager), \
SIGNAL(smallStepStarted(int, int)), SLOT(handleSmallStepStarted(int, int)));  
-        connect(cancelButton, SIGNAL(clicked()), &(thread->copyManager), \
                SLOT(stopThread()));
-
-        this->connect(cancelButton, SIGNAL(closeClicked()), &(thread->copyManager), \
SLOT(stopThread())); +        connect(cancelButton, SIGNAL(clicked()), \
&(copyThread->copyManager), SLOT(stopProcessing())); +        this->connect(this, \
SIGNAL(closeClicked()), &(copyThread->copyManager), SLOT(stopProcessing()));  }
 
     void MigrationDlg::performCopy()
     {
         DatabaseParameters toDBParameters = \
                toDatabaseWidget->getDatabaseParameters();
         DatabaseParameters fromDBParameters = \
                fromDatabaseWidget->getDatabaseParameters();
-        thread->init(fromDBParameters, toDBParameters);
+        copyThread->init(fromDBParameters, toDBParameters);
 
         lockInputFields();
-        thread->start();
+        copyThread->start();
     }
 
     void MigrationDlg::dataInit()
@@ -186,6 +187,7 @@
     void MigrationDlg::handleStepStarted(QString stepName)
     {
         int progressBarValue = progressBar->value();
+        overallStepTitle->setText(i18n("Step Progress (%1)", stepName));
         progressBar->setValue(++progressBarValue);
     }
 
--- branches/extragear/graphics/digikam/1.0-databaseext/libs/dialogs/migrationdlg.h \
#1088693:1088694 @@ -82,9 +82,10 @@
     DatabaseWidget *toDatabaseWidget;
     QPushButton    *migrateButton;
     QPushButton    *cancelButton;
+    QLabel         *overallStepTitle;
     QProgressBar   *progressBar;
     QProgressBar   *progressBarSmallStep;
-    DatabaseCopyThread *thread;
+    DatabaseCopyThread *copyThread;
 
     void setupMainArea();
     void dataInit();


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

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