From 0e22a1d523a7b04693b753d19bb2efc932bf3f95 Mon Sep 17 00:00:00 2001 From: Claudio Valerio Date: Tue, 30 Jul 2013 09:11:46 +0200 Subject: [PATCH 1/3] upgraded version --- OpenBoard.pro | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/OpenBoard.pro b/OpenBoard.pro index 60be1ebf..78b0e217 100644 --- a/OpenBoard.pro +++ b/OpenBoard.pro @@ -11,7 +11,7 @@ CONFIG += debug_and_release \ VERSION_MAJ = 0 VERSION_MIN = 08 VERSION_TYPE = b # a = alpha, b = beta, r = release, other => error -VERSION_PATCH = 02 +VERSION_PATCH = 03 VERSION = "$${VERSION_MAJ}.$${VERSION_MIN}.$${VERSION_TYPE}.$${VERSION_PATCH}" VERSION = $$replace(VERSION, "\\.r", "") From cab036fe9eff3c8bfb919c193a984e053d57cc3f Mon Sep 17 00:00:00 2001 From: Claudio Valerio Date: Tue, 30 Jul 2013 18:27:47 +0200 Subject: [PATCH 2/3] on scene move fixed copying issues --- src/board/UBBoardController.cpp | 13 ++++++++----- src/gui/UBDocumentNavigator.cpp | 1 - src/gui/UBDocumentTreeWidget.cpp | 13 ++++++++----- 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/src/board/UBBoardController.cpp b/src/board/UBBoardController.cpp index cf84fdd1..b889c96b 100644 --- a/src/board/UBBoardController.cpp +++ b/src/board/UBBoardController.cpp @@ -485,11 +485,14 @@ void UBBoardController::addScene(UBGraphicsScene* scene, bool replaceActiveIfEmp QString source = scene->document()->persistencePath() + "/" + relativeFile.toString(); QString target = selectedDocument()->persistencePath() + "/" + relativeFile.toString(); - QFileInfo fi(target); - QDir d = fi.dir(); - - d.mkpath(d.absolutePath()); - QFile::copy(source, target); + if(QFileInfo(source).isDir()) + Q_ASSERT(UBFileSystemUtils::copyDir(source,target)); + else{ + QFileInfo fi(target); + QDir d = fi.dir(); + d.mkpath(d.absolutePath()); + Q_ASSERT(QFile::copy(source, target)); + } } } diff --git a/src/gui/UBDocumentNavigator.cpp b/src/gui/UBDocumentNavigator.cpp index 1756b2b5..c8d75a5b 100644 --- a/src/gui/UBDocumentNavigator.cpp +++ b/src/gui/UBDocumentNavigator.cpp @@ -85,7 +85,6 @@ UBDocumentNavigator::~UBDocumentNavigator() void UBDocumentNavigator::generateThumbnails(UBDocumentContainer* source) { mThumbsWithLabels.clear(); -// foreach(QGraphicsItem* it, mScene->items()) int selectedIndex = -1; QList graphicsItemList = mScene->items(); for(int i = 0; i < graphicsItemList.size(); i+=1) diff --git a/src/gui/UBDocumentTreeWidget.cpp b/src/gui/UBDocumentTreeWidget.cpp index 6c1409f6..dc5a7a0d 100644 --- a/src/gui/UBDocumentTreeWidget.cpp +++ b/src/gui/UBDocumentTreeWidget.cpp @@ -326,11 +326,14 @@ void UBDocumentTreeWidget::dropEvent(QDropEvent *event) QString source = scene->document()->persistencePath() + "/" + relativeFile.toString(); QString target = targetDocProxy->persistencePath() + "/" + relativeFile.toString(); - QFileInfo fi(target); - QDir d = fi.dir(); - - d.mkpath(d.absolutePath()); - QFile::copy(source, target); + if(QFileInfo(source).isDir()) + Q_ASSERT(UBFileSystemUtils::copyDir(source,target)); + else{ + QFileInfo fi(target); + QDir d = fi.dir(); + d.mkpath(d.absolutePath()); + Q_ASSERT(QFile::copy(source, target)); + } } UBPersistenceManager::persistenceManager()->insertDocumentSceneAt(targetDocProxy, sceneClone, targetDocProxy->pageCount()); From 98b3ccccf10d3dfd7640e4d3735ebc7220ad9115 Mon Sep 17 00:00:00 2001 From: Claudio Valerio Date: Tue, 30 Jul 2013 18:59:31 +0200 Subject: [PATCH 3/3] fixed thumbnails number vs real number of scene when a dnd on mode document is realized --- src/adaptors/UBSvgSubsetAdaptor.cpp | 2 -- src/document/UBDocumentContainer.h | 10 ++++++---- src/gui/UBDocumentNavigator.cpp | 5 +++++ src/gui/UBDocumentTreeWidget.cpp | 1 + src/gui/UBPageNavigationWidget.cpp | 3 --- 5 files changed, 12 insertions(+), 9 deletions(-) diff --git a/src/adaptors/UBSvgSubsetAdaptor.cpp b/src/adaptors/UBSvgSubsetAdaptor.cpp index 315852ed..a16af8fe 100644 --- a/src/adaptors/UBSvgSubsetAdaptor.cpp +++ b/src/adaptors/UBSvgSubsetAdaptor.cpp @@ -64,8 +64,6 @@ #include "core/UBApplication.h" #include "core/UBTextTools.h" -#include "document/UBDocumentContainer.h" - #include "pdf/PDFRenderer.h" #include "core/memcheck.h" diff --git a/src/document/UBDocumentContainer.h b/src/document/UBDocumentContainer.h index 681fdae3..056cbc01 100644 --- a/src/document/UBDocumentContainer.h +++ b/src/document/UBDocumentContainer.h @@ -41,8 +41,8 @@ class UBDocumentContainer : public QObject int pageCount(){return mDocumentThumbs.size();} const QPixmap* pageAt(int index){return mDocumentThumbs[index];} - static int pageFromSceneIndex(int sceneIndex); - static int sceneIndexFromPage(int sceneIndex); + static int pageFromSceneIndex(int sceneIndex); + static int sceneIndexFromPage(int sceneIndex); void duplicatePages(QList& pageIndexes); bool movePageToIndex(int source, int target); @@ -51,15 +51,17 @@ class UBDocumentContainer : public QObject void updatePage(int index); void addEmptyThumbPage(); + void insertThumbPage(int index); + + private: UBDocumentProxy* mCurrentDocument; QList mDocumentThumbs; - + protected: void deleteThumbPage(int index); void updateThumbPage(int index); - void insertThumbPage(int index); void reloadThumbnails(); signals: diff --git a/src/gui/UBDocumentNavigator.cpp b/src/gui/UBDocumentNavigator.cpp index c8d75a5b..4f489ad6 100644 --- a/src/gui/UBDocumentNavigator.cpp +++ b/src/gui/UBDocumentNavigator.cpp @@ -99,6 +99,11 @@ void UBDocumentNavigator::generateThumbnails(UBDocumentContainer* source) for(int i = 0; i < source->selectedDocument()->pageCount(); i++) { + //claudio This is a very bad hack and shows a architectural problem + // source->selectedDocument()->pageCount() != source->pageCount() + if(i>=source->pageCount()) + source->insertThumbPage(i); + const QPixmap* pix = source->pageAt(i); Q_ASSERT(!pix->isNull()); int pageIndex = UBDocumentContainer::pageFromSceneIndex(i); diff --git a/src/gui/UBDocumentTreeWidget.cpp b/src/gui/UBDocumentTreeWidget.cpp index dc5a7a0d..4843ae55 100644 --- a/src/gui/UBDocumentTreeWidget.cpp +++ b/src/gui/UBDocumentTreeWidget.cpp @@ -24,6 +24,7 @@ #include "UBDocumentTreeWidget.h" #include "document/UBDocumentProxy.h" +//#include "document/UBDocumentContainer.h" #include "core/UBSettings.h" #include "core/UBApplication.h" diff --git a/src/gui/UBPageNavigationWidget.cpp b/src/gui/UBPageNavigationWidget.cpp index eca3c674..4b22cc5f 100644 --- a/src/gui/UBPageNavigationWidget.cpp +++ b/src/gui/UBPageNavigationWidget.cpp @@ -25,9 +25,6 @@ #include "core/UBApplication.h" #include "board/UBBoardController.h" - -#include "document/UBDocumentContainer.h" - #include "globals/UBGlobals.h" #include "core/memcheck.h"