From f49e2fa75eaf9f08194768a00f9a897013015e9f Mon Sep 17 00:00:00 2001 From: Claudio Valerio Date: Mon, 24 Sep 2012 12:31:17 +0200 Subject: [PATCH] fixed import issue related to documents, without title page, imported at application start up --- src/adaptors/UBImportDocument.cpp | 7 +++++-- src/core/UBPersistenceManager.cpp | 5 +++-- src/core/UBPersistenceManager.h | 2 +- src/core/main.cpp | 2 +- 4 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/adaptors/UBImportDocument.cpp b/src/adaptors/UBImportDocument.cpp index 0bf32c82..ca5944f3 100644 --- a/src/adaptors/UBImportDocument.cpp +++ b/src/adaptors/UBImportDocument.cpp @@ -171,8 +171,11 @@ UBDocumentProxy* UBImportDocument::importFile(const QFile& pFile, const QString& return NULL; } - - UBDocumentProxy* newDocument = UBPersistenceManager::persistenceManager()->createDocumentFromDir(documentRootFolder, pGroup); + bool addTitlePage = false; + if(UBSettings::settings()->teacherGuidePageZeroActivated->get().toBool() && !QFile(documentRootFolder+"/page000.svg").exists()) + addTitlePage=true; + + UBDocumentProxy* newDocument = UBPersistenceManager::persistenceManager()->createDocumentFromDir(documentRootFolder, pGroup, "", false, addTitlePage); UBApplication::showMessage(tr("Import successful.")); return newDocument; } diff --git a/src/core/UBPersistenceManager.cpp b/src/core/UBPersistenceManager.cpp index 7224a789..f1806705 100644 --- a/src/core/UBPersistenceManager.cpp +++ b/src/core/UBPersistenceManager.cpp @@ -265,7 +265,7 @@ UBDocumentProxy* UBPersistenceManager::createDocument(const QString& pGroupName, return doc; } -UBDocumentProxy* UBPersistenceManager::createDocumentFromDir(const QString& pDocumentDirectory, const QString& pGroupName, const QString& pName, bool withEmptyPage) +UBDocumentProxy* UBPersistenceManager::createDocumentFromDir(const QString& pDocumentDirectory, const QString& pGroupName, const QString& pName, bool withEmptyPage, bool addTitlePage) { checkIfDocumentRepositoryExists(); @@ -280,7 +280,8 @@ UBDocumentProxy* UBPersistenceManager::createDocumentFromDir(const QString& pDoc { doc->setMetaData(UBSettings::documentName, pName); } - if (withEmptyPage) createDocumentSceneAt(doc, 0); + if(withEmptyPage) createDocumentSceneAt(doc, 0); + if(addTitlePage) persistDocumentScene(doc, mSceneCache.createScene(doc, 0, false), 0); QMap metadatas = UBMetadataDcSubsetAdaptor::load(pDocumentDirectory); diff --git a/src/core/UBPersistenceManager.h b/src/core/UBPersistenceManager.h index 60ce57c2..6a514bcb 100644 --- a/src/core/UBPersistenceManager.h +++ b/src/core/UBPersistenceManager.h @@ -47,7 +47,7 @@ class UBPersistenceManager : public QObject static void destroy(); virtual UBDocumentProxy* createDocument(const QString& pGroupName = "", const QString& pName = "", bool withEmptyPage = true); - virtual UBDocumentProxy* createDocumentFromDir(const QString& pDocumentDirectory, const QString& pGroupName = "", const QString& pName = "", bool withEmptyPage = false); + virtual UBDocumentProxy* createDocumentFromDir(const QString& pDocumentDirectory, const QString& pGroupName = "", const QString& pName = "", bool withEmptyPage = false, bool addTitlePage = false); virtual UBDocumentProxy* persistDocumentMetadata(UBDocumentProxy* pDocumentProxy); diff --git a/src/core/main.cpp b/src/core/main.cpp index 28a631b7..55c4e0a8 100644 --- a/src/core/main.cpp +++ b/src/core/main.cpp @@ -129,7 +129,7 @@ int main(int argc, char *argv[]) QObject::connect(&app, SIGNAL(messageReceived(const QString&)), &app, SLOT(handleOpenMessage(const QString&))); - qDebug() << fileToOpen; + qDebug() << "file name argument" << fileToOpen; int result = app.exec(fileToOpen); app.cleanup();