summaryrefslogtreecommitdiffstats
path: root/moviemodel.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 /moviemodel.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 'moviemodel.cpp')
-rw-r--r--moviemodel.cpp24
1 files changed, 17 insertions, 7 deletions
diff --git a/moviemodel.cpp b/moviemodel.cpp
index 191b987..da921b4 100644
--- a/moviemodel.cpp
+++ b/moviemodel.cpp
@@ -87,13 +87,23 @@ QModelIndex MovieModel::index(int movieId, int column) const{
return retval;
}
-QModelIndex MovieModel::index(const QString &movieTitle) const {
- QModelIndex retval = QModelIndex();
- for(int i = 0; i < rowCount(QModelIndex()); ++i){
- MovieItem *item = mItems.at(i);
- if(item->dataAt(MovieItem::Title).toString() == movieTitle){
- retval = createIndex(i, 0, item);
- break;
+QModelIndexList MovieModel::columnContains(const QVariant &content, int column) const{
+ QModelIndexList retval;
+ if((column == MovieItem::Title) || (column == MovieItem::Filename) || (column == MovieItem::Md5Sum)){
+ QString part = content.toString();
+ for(int i = 0; i < mItems.size(); ++i){
+ QString current = mItems.at(i)->dataAt(column).toString();
+ if(current.contains(part)){
+ retval << createIndex(i, column, mItems.at(i));
+ }
+ }
+ }else{
+ qint64 value = content.toLongLong();
+ for(int i = 0; i < mItems.size(); ++i){
+ qint64 current = mItems.at(i)->dataAt(column).toLongLong();
+ if(value == current){
+ retval << createIndex(i, column, mItems.at(i));
+ }
}
}
return retval;