From 046503ba7830427fcd055da569326f0ac814b979 Mon Sep 17 00:00:00 2001 From: Arno Date: Fri, 5 Apr 2013 21:23:45 +0200 Subject: New Class: SmTreeView Code reusage: all 3 tabs had the same funtions: readHeaderConfig, writeHeaderConfig and toggleHeader, so turn it into a class derived from QTreeView. Unfortunately mATree didn't do things as later added Views, so it took some time to find the culprit in SheMov::readSettings :( Hopefully I didn't break too much... --- shemov.cpp | 28 +++++++++------------------- 1 file changed, 9 insertions(+), 19 deletions(-) (limited to 'shemov.cpp') diff --git a/shemov.cpp b/shemov.cpp index 9d44fc3..eed20df 100644 --- a/shemov.cpp +++ b/shemov.cpp @@ -146,12 +146,10 @@ SheMov::SheMov(QWidget *parent, Qt::WindowFlags flags) : QMainWindow(parent, fla setCentralWidget(centralWidget); show(); splash.finish(this); - mATree->seriesWidget()->readSettings(); - mATree->filesWidget()->filesTree()->readSettings(); + mATree->readSettings(); mFSWidget->readSettings(); - readSettings(); + readSettings(); mFSWidget->fileView()->setFocus(Qt::ActiveWindowFocusReason); - mATree->filesWidget()->filesTree()->header()->resizeSections(QHeaderView::ResizeToContents); mPicWidget->readSettings(); Helper::centerWidget(picViewer); } @@ -159,14 +157,14 @@ SheMov::SheMov(QWidget *parent, Qt::WindowFlags flags) : QMainWindow(parent, fla void SheMov::closeEvent(QCloseEvent *event){ mFSWidget->writeSettings(); mFSWidget->pictureViewer()->close(); - mATree->seriesWidget()->writeSettings(); + mATree->seriesWidget()->writeSettings(); + mATree->filesWidget()->filesTree()->writeSettings(); mPicWidget->picViewer2()->writeSettings(); mPicWidget->writeSettings(); - FilesTreeModel *filesModel = static_cast(SmGlobals::instance()->model("FilesModel")); - filesModel->writeCache(); - writeSettings(); - delete SmGlobals::instance(); - event->accept(); + FilesTreeModel *filesModel = static_cast(SmGlobals::instance()->model("FilesModel")); + filesModel->writeCache(); + writeSettings(); + event->accept(); } void SheMov::updateSelectedCount(int count){ @@ -534,6 +532,7 @@ void SheMov::createActions(){ mFilesTreeHeadersGroup = new QActionGroup(this); QSignalMapper *fileTreeHeaderMapper = createHeaderMapper(filesModel, mFilesTreeHeadersGroup); connect(fileTreeHeaderMapper, SIGNAL(mapped(QObject*)), mATree->filesWidget()->filesTree(), SLOT(toggleHeader(QObject*))); + mATree->filesWidget()->filesTree()->setHeaderGroup(mFilesTreeHeadersGroup); mFileSysHeaderGroup = new QActionGroup(this); QSignalMapper *fileSysHeaderMapper = createHeaderMapper(qobject_cast(mFSWidget->fileModel()), mFileSysHeaderGroup); connect(fileSysHeaderMapper, SIGNAL(mapped(QObject*)), mFSWidget->fileView(), SLOT(toggleHeader(QObject*))); @@ -1084,15 +1083,6 @@ void SheMov::readSettings(){ mMountDvdA->setChecked(false); } } - QList visibleHeadersDefault = QList() << 0 << 1 << 2 << 3 << 4 << 13; - QList visibleHeaders = s.value("ui/visibleheaders", visibleHeadersDefault).toList(); - foreach(QVariant h, visibleHeaders){ - foreach(QAction *a, mFilesTreeHeadersGroup->actions()){ - if(a->data() == h){ - a->trigger(); - } - } - } int seriesFilterMode = s.value("archive/filtermode").toInt(); QAction *filterAction = qobject_cast(mFilterMapper->mapping(seriesFilterMode)); -- cgit v1.2.3-70-g09d2