summaryrefslogtreecommitdiffstats
path: root/archivebrowser.cpp
diff options
context:
space:
mode:
authorArno <am@disconnect.de>2014-02-07 03:31:24 +0100
committerArno <am@disconnect.de>2014-02-07 03:31:24 +0100
commit3ac6968ebaf087aeb4bb3deeb1ded2bbbd54dfa5 (patch)
treee9cf1265bee25dc6ef26b8f441f6070dd46a01d2 /archivebrowser.cpp
parente0b8f04b18ababa819e2e0f019c76dcca971b51a (diff)
downloadSheMov-3ac6968ebaf087aeb4bb3deeb1ded2bbbd54dfa5.tar.gz
SheMov-3ac6968ebaf087aeb4bb3deeb1ded2bbbd54dfa5.tar.bz2
SheMov-3ac6968ebaf087aeb4bb3deeb1ded2bbbd54dfa5.zip
Update status bar from ArchiveBrowser
Update item selection count and selected size in statusBar.
Diffstat (limited to 'archivebrowser.cpp')
-rw-r--r--archivebrowser.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/archivebrowser.cpp b/archivebrowser.cpp
index 5eda9d6..c39805b 100644
--- a/archivebrowser.cpp
+++ b/archivebrowser.cpp
@@ -28,8 +28,25 @@ ArchiveBrowser::ArchiveBrowser(QWidget *parent) : QWidget(parent){
mTree->setItemDelegateForColumn(ArchiveBrowserModel::FileType, new FileTypeDelegate(this));
mTree->setSelectionMode(QAbstractItemView::ExtendedSelection);
+ //connect
+ connect(mTree->selectionModel(), SIGNAL(selectionChanged(QItemSelection,QItemSelection)), this, SLOT(browserSelectionChanged(QItemSelection,QItemSelection)));
+
//make widget
QVBoxLayout *mainLayout = new QVBoxLayout;
mainLayout->addWidget(mTree);
setLayout(mainLayout);
}
+
+void ArchiveBrowser::browserSelectionChanged(const QItemSelection &selected, const QItemSelection &deselected) {
+ Q_UNUSED(selected);
+ Q_UNUSED(deselected);
+ QModelIndexList sel = mTree->selectionModel()->selectedRows();
+ qint64 size = 0;
+ int selItems = 0;
+ foreach(QModelIndex idx, sel){
+ size += idx.data(ArchiveBrowserModel::TotalSizeRole).toDouble();
+ ++selItems;
+ }
+ emit sizeChanged(size);
+ emit itemCountChanged(selItems);
+}