From f41e3577a9fc25b37e33047afc8852017d612f5e Mon Sep 17 00:00:00 2001 From: Arno Date: Fri, 7 Feb 2014 09:04:54 +0100 Subject: Save state of ArchiveBrowser persist header settings and filters --- shemov.cpp | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'shemov.cpp') diff --git a/shemov.cpp b/shemov.cpp index ff26204..b045120 100644 --- a/shemov.cpp +++ b/shemov.cpp @@ -80,7 +80,7 @@ SheMov::SheMov(QWidget *parent, Qt::WindowFlags flags) : QMainWindow(parent, fla //archivebrower splash.showMessage(tr("Creating Archive Browser..."), Qt::AlignHCenter, Qt::yellow); qApp->processEvents(); - ArchiveBrowser *mArchiveBrowser = new ArchiveBrowser; + mArchiveBrowser = new ArchiveBrowser; mTab->addTab(mArchiveBrowser, tr("Archive Browser")); connect(mArchiveBrowser, SIGNAL(sizeChanged(qint64)), this, SLOT(setSize(qint64))); connect(mArchiveBrowser, SIGNAL(itemCountChanged(int)), this, SLOT(updateSelectedCount(int))); @@ -137,6 +137,7 @@ SheMov::SheMov(QWidget *parent, Qt::WindowFlags flags) : QMainWindow(parent, fla mFSWidget->fileView()->setFocus(Qt::ActiveWindowFocusReason); mPicWidget->readSettings(); mArchive->readSettings(); + mArchiveBrowser->readConfig(); readSettings(); Helper::centerWidget(picViewer); } @@ -147,6 +148,7 @@ void SheMov::closeEvent(QCloseEvent *event){ mPicWidget->picViewer2()->writeSettings(); mPicWidget->writeSettings(); mArchive->writeSettings(); + mArchiveBrowser->writeSettings(); writeSettings(); SmGlobals *globals = SmGlobals::instance(); delete globals; @@ -185,6 +187,7 @@ void SheMov::tabChanged(int newTab){ mPVAddToNPA->setEnabled(newTab == FileManager); mNewPicsA->setEnabled(newTab == FileManager); mNewMovieWizardA->setEnabled(newTab == FileManager); + mArchiveBrowserViewMenuA->setEnabled(newTab == ArchiveBrowserTab); statusbarMessage(QString()); ArchiveController *c = SmGlobals::instance()->archiveController(); switch(newTab){ @@ -476,6 +479,11 @@ void SheMov::createActions(){ QSignalMapper *aFilesMapper = createHeaderMapper(afilesmodel, mArchiveFilesAG); connect(aFilesMapper, SIGNAL(mapped(QObject*)), controller->archiveFiles(), SLOT(toggleHeader(QObject*))); controller->archiveFiles()->setHeaderGroup(mArchiveFilesAG); + SmTreeModel *abrowsermodel = static_cast(SmGlobals::instance()->model("BrowserModel")); + mArchiveBrowserAG = new QActionGroup(this); + QSignalMapper *archiveBrowserHeaderMapper = createHeaderMapper(abrowsermodel, mArchiveBrowserAG); + connect(archiveBrowserHeaderMapper, SIGNAL(mapped(QObject*)), mArchiveBrowser->archiveTree(), SLOT(toggleHeader(QObject*))); + mArchiveBrowser->archiveTree()->setHeaderGroup(mArchiveBrowserAG); /* very unfortunate naming of variables: * picViewer: the actual PictureViewer2 window @@ -750,6 +758,13 @@ void SheMov::createMenus(){ mPicViewMenu->addAction(mPWRefreshA); mViewPicMenuA = menuBar()->addMenu(mPicViewMenu); + //Archive Browser view menu + mArchiveBrowserViewMenu = new QMenu(tr("&View"), this); + QMenu *abHeaderMenu = new QMenu(tr("Show headers"), this); + abHeaderMenu->addActions(mArchiveBrowserAG->actions()); + mArchiveBrowserViewMenu->addMenu(abHeaderMenu); + mArchiveBrowserViewMenuA = menuBar()->addMenu(mArchiveBrowserViewMenu); + //Movie archive QMenu *archiveHeaderMenu = new QMenu(tr("Show headers"), this); archiveHeaderMenu->addActions(mArchiveFilesAG->actions()); -- cgit v1.2.3-70-g09d2