summaryrefslogtreecommitdiffstats
path: root/filestreewidget.cpp
diff options
context:
space:
mode:
authorArno <am@disconnect.de>2013-04-05 21:23:45 +0200
committerArno <am@disconnect.de>2013-04-05 21:23:45 +0200
commit046503ba7830427fcd055da569326f0ac814b979 (patch)
treed3404b51c054a9f4b4171bbd9641162e8c3333a1 /filestreewidget.cpp
parent0f4f0d5860e4a261f37ae6f294c154c3009c4562 (diff)
downloadSheMov-046503ba7830427fcd055da569326f0ac814b979.tar.gz
SheMov-046503ba7830427fcd055da569326f0ac814b979.tar.bz2
SheMov-046503ba7830427fcd055da569326f0ac814b979.zip
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...
Diffstat (limited to 'filestreewidget.cpp')
-rw-r--r--filestreewidget.cpp34
1 files changed, 5 insertions, 29 deletions
diff --git a/filestreewidget.cpp b/filestreewidget.cpp
index 3f03636..eec2fc3 100644
--- a/filestreewidget.cpp
+++ b/filestreewidget.cpp
@@ -358,47 +358,23 @@ void FilesTreeWidget::playItems(const QStringList &paths){
QProcess::startDetached(prog, args);
}
-FilesTreeView::FilesTreeView(QWidget *parent) : QTreeView(parent), mHoverPics(false){
+FilesTreeView::FilesTreeView(QWidget *parent) : SmTreeView("ui/headerpos", parent), mHoverPics(false){
setAttribute(Qt::WA_Hover);
mHoverWin = new HoverWindow(this);
SmGlobals::instance()->treeWidgets().append(this);
}
-void FilesTreeView::setModel(QAbstractItemModel *model){
- QTreeView::setModel(model);
- for(int i = 0; i < header()->count(); ++i){
- header()->setSectionHidden(i, true);
- }
- readHeaderConfig();
-}
-
void FilesTreeView::readSettings(){
- QSettings s;
+ QSettings s;
mHoverPics = s.value("ui/hoverpics", true).toBool();
mHoverWin->setWindowOpacity(s.value("ui/hoveropacity", 10).toFloat() / 10.0);
mHoverMovies = s.value("ui/hovermovies", true).toBool();
mCursorOffest = s.value("ui/cursoroffset").toInt();
+ readHeaderConfig();
}
-void FilesTreeView::readHeaderConfig(){
- QSettings s;
- QByteArray headerPos = s.value("ui/headerpos").toByteArray();
- if(!headerPos.isEmpty()){
- header()->restoreState(headerPos);
- }
-}
-
-void FilesTreeView::writeHeaderConfig(){
- QSettings s;
- s.setValue("ui/headerpos", header()->saveState());
-}
-
-void FilesTreeView::toggleHeader(QObject *action){
- QAction *a = qobject_cast<QAction*>(action);
- Q_ASSERT(a);
- int logicalIndex = a->data().toInt();
- QHeaderView *hv = header();
- hv->setSectionHidden(logicalIndex, !a->isChecked());
+void FilesTreeView::writeSettings(){
+ writeHeaderConfig();
}
void FilesTreeView::contextMenuEvent(QContextMenuEvent *event){