summaryrefslogtreecommitdiffstats
path: root/archiveviewwidget.cpp
diff options
context:
space:
mode:
authoram <am@f440f766-f032-0410-8965-dc7d17de2ca0>2009-08-14 18:53:25 +0000
committeram <am@f440f766-f032-0410-8965-dc7d17de2ca0>2009-08-14 18:53:25 +0000
commit06233888b033adc6e821331e6d1822e9807371ae (patch)
treecc3ded50eb1640805652e1ec77988b39e31d13c8 /archiveviewwidget.cpp
parent41802000a0bcbb44c3add7f218eceec101f52cc0 (diff)
downloadSheMov-06233888b033adc6e821331e6d1822e9807371ae.tar.gz
SheMov-06233888b033adc6e821331e6d1822e9807371ae.tar.bz2
SheMov-06233888b033adc6e821331e6d1822e9807371ae.zip
-Implemented conlumnContains() in MovieModel
-Implemented guess-function in ArchiveEditDialog -Cumulative size is now shown in statusBar() when selecting items in ArchiveViewWidget -Fixed EditArchiveItemDialog allowing duplicate titles (neccessary after creating iseriesno and ipartno) -Fixed windowTitle() when changing tabs git-svn-id: file:///var/svn/repos2/shemov/trunk@401 f440f766-f032-0410-8965-dc7d17de2ca0
Diffstat (limited to 'archiveviewwidget.cpp')
-rw-r--r--archiveviewwidget.cpp22
1 files changed, 13 insertions, 9 deletions
diff --git a/archiveviewwidget.cpp b/archiveviewwidget.cpp
index 0e6686e..e6ffb4b 100644
--- a/archiveviewwidget.cpp
+++ b/archiveviewwidget.cpp
@@ -32,7 +32,7 @@
#include "helper.h"
#include "moviepropertiesdialog.h"
-ArchiveViewWidget::ArchiveViewWidget(MovieModel *model, ListModel *genre, ListModel *actors, QWidget *parent) : QWidget(parent), mMovieModel(model), mGenreModel(genre), mActorsModel(actors){
+ArchiveViewWidget::ArchiveViewWidget(MovieModel *model, ListModel *genre, ListModel *actors, QWidget *parent) : QWidget(parent), mMovieModel(model), mGenreModel(genre), mActorsModel(actors), mSize(0){
//filter bar
QHBoxLayout *filterLayout = new QHBoxLayout;
QLabel *l1 = new QLabel(tr("Filter by &genre"));
@@ -85,7 +85,9 @@ ArchiveViewWidget::ArchiveViewWidget(MovieModel *model, ListModel *genre, ListMo
connect(mFileView->selectionModel(), SIGNAL(currentChanged(const QModelIndex &, const QModelIndex)), this, SLOT(rowChanged(const QModelIndex &, const QModelIndex &)));
connect(mFileView, SIGNAL(doubleClicked(const QModelIndex &)), this, SLOT(showMovie(const QModelIndex &)));
+ connect(mFileView->selectionModel(), SIGNAL(selectionChanged(const QItemSelection &, const QItemSelection &)), this, SLOT(calcSize()));
+ mWindowTitle = QString("%1 - nothing selected").arg(qApp->applicationName());
setLayout(mainLayout);
}
@@ -110,12 +112,6 @@ void ArchiveViewWidget::addMovie(){
dlg.exec();
if(dlg.result() == QDialog::Accepted){
QString title = dlg.text().toLower().trimmed();
- QModelIndex idx = mMovieModel->index(title);
- if(idx != QModelIndex()){
- QString msg = QString(tr("Already have an entry with title %1")).arg(title);
- QMessageBox::critical(this, tr("Error"), msg);
- return;
- }
QList<QVariant> movieData;
movieData << title;
for(int i = 1; i < MovieItem::NumRows; ++i){
@@ -175,8 +171,16 @@ void ArchiveViewWidget::setActorFilter(const QString &filter){
void ArchiveViewWidget::rowChanged(const QModelIndex &/*current*/, const QModelIndex & /*prev*/){
QModelIndex idx = getSourceColumnZero();
- QString title = QString(tr("%1 - %2")).arg(qApp->applicationName()).arg(idx.data().toString());
- emit windowTitle(title);
+ mWindowTitle = QString(tr("%1 - %2")).arg(qApp->applicationName()).arg(idx.data().toString());
+ emit windowTitle(mWindowTitle);
+}
+
+void ArchiveViewWidget::calcSize(){
+ QModelIndexList sel = mFileView->selectionModel()->selectedRows(MovieItem::Size);
+ mSize = 0;
+ foreach(QModelIndex idx, sel){
+ mSize += idx.data().toLongLong();
+ }
}
const QModelIndex ArchiveViewWidget::getSourceColumnZero(){