diff options
author | Arno <am@disconnect.de> | 2010-12-05 08:29:05 +0100 |
---|---|---|
committer | Arno <am@disconnect.de> | 2010-12-05 08:29:05 +0100 |
commit | 609e8d6f4ae179243d6f258205701561d94500f5 (patch) | |
tree | 057b5c21086d984c05b9d5e50cf5be59e167b5e6 /archivetreeview.cpp | |
parent | d1837c9c92c9f38a464f0473001db4e9a57d44e7 (diff) | |
download | SheMov-609e8d6f4ae179243d6f258205701561d94500f5.tar.gz SheMov-609e8d6f4ae179243d6f258205701561d94500f5.tar.bz2 SheMov-609e8d6f4ae179243d6f258205701561d94500f5.zip |
Selectable columns in FilesTreeView
Made columns shown in FilesTreeView selectable. Also, the order of
columns is saved and restored.
This was a difficult one. I even had to make a debug build of qt. But I
fixed a serious bug in FilesTreeModel::modeName: don't access the Hash
if modeName == -1.
Diffstat (limited to 'archivetreeview.cpp')
-rw-r--r-- | archivetreeview.cpp | 19 |
1 files changed, 4 insertions, 15 deletions
diff --git a/archivetreeview.cpp b/archivetreeview.cpp index 2260052..49004e3 100644 --- a/archivetreeview.cpp +++ b/archivetreeview.cpp @@ -31,6 +31,7 @@ #include <QMessageBox> #include <QClipboard> #include <QApplication> +#include <QHeaderView> #include "archivetreeview.h" #include "smglobals.h" @@ -58,12 +59,7 @@ ArchiveTreeView::ArchiveTreeView(QWidget *parent) : QWidget(parent){ // files view mFilesWidget = new FilesTreeWidget; - QAbstractItemModel *filesModel = SmGlobals::instance()->model("FilesModel"); - mFilesModel = static_cast<FilesTreeModel*>(filesModel); - for(int i = 5; i < 12; ++i){ - mFilesWidget->filesTree()->setColumnHidden(i, true); - } - mFilesWidget->filesTree()->setColumnHidden(14, true); + mFilesModel = qobject_cast<FilesTreeModel*>(SmGlobals::instance()->model("FilesModel")); connect(mSeriesWidget, SIGNAL(filesReload()), mFilesWidget->filesTree(), SLOT(expandAll())); // actors and genre @@ -118,9 +114,7 @@ void ArchiveTreeView::setFileViewMode(int mode){ currentChanged(QItemSelection(), QItemSelection()); } mFilesWidget->filesTree()->expandAll(); - mFilesWidget->filesTree()->resizeColumnToContents(0); - mFilesWidget->filesTree()->resizeColumnToContents(1); - mFilesWidget->filesTree()->resizeColumnToContents(2); + mFilesWidget->filesTree()->header()->resizeSections(QHeaderView::ResizeToContents); constructWindowTitle(); } @@ -237,12 +231,7 @@ void ArchiveTreeView::currentChanged(const QItemSelection &selected, const QItem mFilesModel->setIds(selectedPartIds); mFilesWidget->filesTree()->expandAll(); - mFilesWidget->filesTree()->resizeColumnToContents(FilesTreeModel::FileName); - mFilesWidget->filesTree()->resizeColumnToContents(FilesTreeModel::PartNo); - mFilesWidget->filesTree()->resizeColumnToContents(FilesTreeModel::Quality); - mFilesWidget->filesTree()->resizeColumnToContents(FilesTreeModel::DvdNo); - mFilesWidget->filesTree()->resizeColumnToContents(FilesTreeModel::DisplayName); - mFilesWidget->filesTree()->resizeColumnToContents(FilesTreeModel::SizeDuration); + mFilesWidget->filesTree()->header()->resizeSections(QHeaderView::ResizeToContents); setMappingItems(selectedPartIds, mActorsModel, mActorsWidget); setMappingItems(selectedPartIds, mGenresModel, mGenresWidget); } |