Issue #54: Bookmarks page - model, bookmarks manager

This commit is contained in:
Jakub Melka
2023-12-16 20:23:53 +01:00
parent c1c59139b5
commit 7a5f37e38f
14 changed files with 756 additions and 5 deletions

View File

@ -361,6 +361,7 @@ PDFProgramController::PDFProgramController(QObject* parent) :
m_toolManager(nullptr),
m_annotationManager(nullptr),
m_formManager(nullptr),
m_bookmarkManager(nullptr),
m_isBusy(false),
m_isFactorySettingsBeingRestored(false),
m_progress(nullptr)
@ -375,6 +376,9 @@ PDFProgramController::~PDFProgramController()
delete m_annotationManager;
m_annotationManager = nullptr;
delete m_bookmarkManager;
m_bookmarkManager = nullptr;
}
void PDFProgramController::initializeAnnotationManager()
@ -396,6 +400,11 @@ void PDFProgramController::initializeFormManager()
connect(m_formManager, &pdf::PDFFormManager::documentModified, this, &PDFProgramController::onDocumentModified);
}
void PDFProgramController::initializeBookmarkManager()
{
m_bookmarkManager = new PDFBookmarkManager(this);
}
void PDFProgramController::initialize(Features features,
QMainWindow* mainWindow,
IMainWindow* mainWindowInterface,
@ -605,6 +614,7 @@ void PDFProgramController::initialize(Features features,
}
initializeAnnotationManager();
initializeBookmarkManager();
if (features.testFlag(Forms))
{
@ -1915,6 +1925,11 @@ void PDFProgramController::setDocument(pdf::PDFModifiedDocument document, bool i
m_annotationManager->setDocument(document);
}
if (m_bookmarkManager)
{
m_bookmarkManager->setDocument(document);
}
if (m_formManager)
{
m_formManager->setDocument(document);