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"