From b039fbf6aaef0e961490f8267a91976866ac2e0a Mon Sep 17 00:00:00 2001 From: Arno Date: Sat, 6 Jul 2013 19:24:04 +0200 Subject: Lots of Display Changes * Save header states * Implement delegates for columns * unify size and duration to 1 column * colorize View ... and lots of other things I forgot :) --- shemov.cpp | 52 ++++++++++++++++++++++++++++++++++------------------ 1 file changed, 34 insertions(+), 18 deletions(-) (limited to 'shemov.cpp') diff --git a/shemov.cpp b/shemov.cpp index d1f5b5b..4ce5114 100644 --- a/shemov.cpp +++ b/shemov.cpp @@ -40,6 +40,7 @@ #include "smdirmodel.h" #include "framecache.h" #include "archiveview.h" +#include "archivecontroller.h" SheMov::SheMov(QWidget *parent, Qt::WindowFlags flags) : QMainWindow(parent, flags), mOpenWithGroupFS(0), mOpenWithGroupAV(0) { //application icon @@ -80,7 +81,6 @@ SheMov::SheMov(QWidget *parent, Qt::WindowFlags flags) : QMainWindow(parent, fla mArchive = new ArchiveView; mTab->addTab(mArchive, "Experimental"); connect(mArchive->archiveModel(), SIGNAL(message(QString)), this, SLOT(statusbarMessage(QString))); - mArchive->readSettings(); //pictures splash.showMessage(tr("Creating Picture Archive..."), Qt::AlignHCenter, Qt::yellow); @@ -142,6 +142,7 @@ SheMov::SheMov(QWidget *parent, Qt::WindowFlags flags) : QMainWindow(parent, fla readSettings(); mFSWidget->fileView()->setFocus(Qt::ActiveWindowFocusReason); mPicWidget->readSettings(); + mArchive->readSettings(); Helper::centerWidget(picViewer); } @@ -177,29 +178,30 @@ void SheMov::configure(){ } void SheMov::tabChanged(int newTab){ - mEditFSMenuA->setVisible(newTab == 0); - mEditAVMenuA->setVisible(newTab == 1); - mEditPicMenuA->setVisible(newTab == 2); - mViewFSMenuA->setVisible(newTab == 0); - mViewAVMenuA->setVisible(newTab == 1); - mViewPicMenuA->setVisible(newTab == 2); - mCdupA->setEnabled(newTab == 0); - mBackDirA->setEnabled(newTab == 0); - mFilesTreeHeadersGroup->setEnabled(newTab == 1); - mFilterGroup->setEnabled(newTab == 1); - mShowTreeGroup->setEnabled(newTab == 1); - mPicActionGroup->setEnabled(newTab == 2); - mFilterFavoritesA->setEnabled(newTab == 1); + mEditFSMenuA->setVisible(newTab == FileManager); + mEditAVMenuA->setVisible(newTab == Archive); + mEditPicMenuA->setVisible(newTab == Pictures); + mViewFSMenuA->setVisible(newTab == FileManager); + mViewAVMenuA->setVisible(newTab == Archive); + mViewPicMenuA->setVisible(newTab == Pictures); + mArchiveViewMenuA->setVisible(newTab == Experimental); + mCdupA->setEnabled(newTab == FileManager); + mBackDirA->setEnabled(newTab == FileManager); + mFilesTreeHeadersGroup->setEnabled(newTab == Archive); + mFilterGroup->setEnabled(newTab == Archive); + mShowTreeGroup->setEnabled(newTab == Archive); + mPicActionGroup->setEnabled(newTab == Pictures); + mFilterFavoritesA->setEnabled(newTab == Archive); mPVSelectAllA->disconnect(); - mPVShowNPDialogA->setEnabled(newTab == 0); - mPVAddToNPA->setEnabled(newTab == 0); + mPVShowNPDialogA->setEnabled(newTab == FileManager); + mPVAddToNPA->setEnabled(newTab == FileManager); statusbarMessage(QString()); switch(newTab){ - case 0: + case FileManager: connect(mPVSelectAllA, SIGNAL(triggered()), mFSWidget, SLOT(selectAllPV())); setDuration(mFSWidget->fileView()->duration()); break; - case 2: + case Pictures: connect(mPVSelectAllA, SIGNAL(triggered()), mPicWidget->picView(), SLOT(setPVAll())); default: setDuration(QVariant()); @@ -535,6 +537,12 @@ void SheMov::createActions(){ QSignalMapper *picsTreeHeaderMapper = createHeaderMapper(picFilesModel, mPicsTreeHeaderGroup); connect(picsTreeHeaderMapper, SIGNAL(mapped(QObject*)), mPicWidget->picView(), SLOT(toggleHeader(QObject*))); mPicWidget->picView()->setHeaderGroup(mPicsTreeHeaderGroup); + mArchiveFilesAG = new QActionGroup(this); + ArchiveController *controller = SmGlobals::instance()->archiveController(); + SmTreeModel *afilesmodel = controller->archiveFilesModel(); + QSignalMapper *aFilesMapper = createHeaderMapper(afilesmodel, mArchiveFilesAG); + connect(aFilesMapper, SIGNAL(mapped(QObject*)), controller->archiveFiles(), SLOT(toggleHeader(QObject*))); + controller->archiveFiles()->setHeaderGroup(mArchiveFilesAG); //Tree view hover mHoverTreeGroup = new QActionGroup(this); @@ -870,6 +878,14 @@ void SheMov::createMenus(){ mPicViewMenu->addAction(mPWRefreshA); mViewPicMenuA = menuBar()->addMenu(mPicViewMenu); + // + QMenu *archiveHeaderMenu = new QMenu(tr("Show headers"), this); + archiveHeaderMenu->addActions(mArchiveFilesAG->actions()); + mArchiveViewMenu = new QMenu(tr("&View"), this); + archiveHeaderMenu->addActions(mArchiveFilesAG->actions()); + mArchiveViewMenu->addMenu(archiveHeaderMenu); + mArchiveViewMenuA = menuBar()->addMenu(mArchiveViewMenu); + QMenu *helpMenu = new QMenu(tr("&Help"), this); helpMenu->addAction(mAboutShemovA); helpMenu->addAction(mAboutQtA); -- cgit v1.2.3-70-g09d2