From 80a8f04d2f1ff277364801986a68b15e351173f2 Mon Sep 17 00:00:00 2001 From: shibakaneki Date: Fri, 6 May 2011 10:14:56 +0200 Subject: [PATCH] Added an indication to inform the user that it has to reboot the application in order to access the updated documents. --- src/gui/UBUpdateDlg.cpp | 2 +- src/transition/UniboardSankoreTransition.cpp | 15 ++++++++++++++- src/transition/UniboardSankoreTransition.h | 2 ++ 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/src/gui/UBUpdateDlg.cpp b/src/gui/UBUpdateDlg.cpp index 23922a85..397a2893 100644 --- a/src/gui/UBUpdateDlg.cpp +++ b/src/gui/UBUpdateDlg.cpp @@ -61,7 +61,7 @@ void UBUpdateDlg::onFilesUpdated(bool bResult) if(bResult) { - qsMsg = tr("Files update successful"); + qsMsg = tr("Files update successful!\nPlease reboot the application to access the updated documents."); } else { diff --git a/src/transition/UniboardSankoreTransition.cpp b/src/transition/UniboardSankoreTransition.cpp index 55ede803..f84fb27c 100644 --- a/src/transition/UniboardSankoreTransition.cpp +++ b/src/transition/UniboardSankoreTransition.cpp @@ -3,6 +3,7 @@ #include "frameworks/UBDesktopServices.h" #include "frameworks/UBFileSystemUtils.h" #include "core/UBApplication.h" +#include "core/UBPersistenceManager.h" UniboardSankoreTransition::UniboardSankoreTransition(QObject *parent) : QObject(parent) @@ -13,6 +14,7 @@ UniboardSankoreTransition::UniboardSankoreTransition(QObject *parent) : #else mUniboardSourceDirectory.replace("Sankore/Sankore 3.1", "Mnemis/Uniboard"); #endif + connect(this, SIGNAL(docAdded(UBDocumentProxy*)), UBPersistenceManager::persistenceManager(), SIGNAL(documentCreated(UBDocumentProxy*))); } UniboardSankoreTransition::~UniboardSankoreTransition() { @@ -62,11 +64,14 @@ void UniboardSankoreTransition::startDocumentTransition() QFileInfoList::iterator fileInfo; QString sankoreDocumentDirectory = UBSettings::uniboardDocumentDirectory(); + QStringList qslNewDocs; + for (fileInfo = fileInfoList.begin(); fileInfo != fileInfoList.end() && result; fileInfo += 1) { if (fileInfo->isDir() && fileInfo->fileName().startsWith("Uniboard Document ")){ QString sankoreDocumentName = fileInfo->fileName(); sankoreDocumentName.replace("Uniboard","Sankore"); result = UBFileSystemUtils::copyDir(fileInfo->filePath(),sankoreDocumentDirectory + "/" + sankoreDocumentName); + qslNewDocs << sankoreDocumentName; } } @@ -75,8 +80,16 @@ void UniboardSankoreTransition::startDocumentTransition() rollbackDocumentsTransition(fileInfoList); UBFileSystemUtils::deleteDir(backupDestinationPath); } - else { + else + { UBFileSystemUtils::deleteDir(mUniboardSourceDirectory); + // Notify the application that new documents have been added +// foreach(QString qstr, qslNewDocs) +// { +// UBDocumentProxy* pDoc = new UBDocumentProxy(); +// pDoc->setMetaData(UBSettings::documentName, qstr); +// emit docAdded(pDoc); +// } } emit transitionFinished(result); diff --git a/src/transition/UniboardSankoreTransition.h b/src/transition/UniboardSankoreTransition.h index 6b2ba37d..2e28abd5 100644 --- a/src/transition/UniboardSankoreTransition.h +++ b/src/transition/UniboardSankoreTransition.h @@ -4,6 +4,7 @@ #include #include #include "gui/UBUpdateDlg.h" +#include "document/UBDocumentProxy.h" class UniboardSankoreTransition : public QObject { @@ -23,6 +24,7 @@ protected: signals: void transitionFinished(bool result); + void docAdded(UBDocumentProxy* doc); private slots: void startDocumentTransition();