diff options
author | Arno <am@disconnect.de> | 2011-05-22 05:54:07 +0200 |
---|---|---|
committer | Arno <am@disconnect.de> | 2011-05-22 05:54:07 +0200 |
commit | 47d30d5f4838a1980545c36308858efc7d5bde0d (patch) | |
tree | b1137fa0db924409df7eda40f8ed08e5fa30ae1e /seriestreemodel.cpp | |
parent | 9b2f7da813faea42587c0a78435a41aa338471fe (diff) | |
download | SheMov-47d30d5f4838a1980545c36308858efc7d5bde0d.tar.gz SheMov-47d30d5f4838a1980545c36308858efc7d5bde0d.tar.bz2 SheMov-47d30d5f4838a1980545c36308858efc7d5bde0d.zip |
Update IsLocal when setting DVD no.
The field IsLocal in the SeriesTreeModel is now properly updated
when the DVD no. changes. It still doesn't propagate to the file
view, though.
Diffstat (limited to 'seriestreemodel.cpp')
-rw-r--r-- | seriestreemodel.cpp | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/seriestreemodel.cpp b/seriestreemodel.cpp index a0dfebf..b850b9c 100644 --- a/seriestreemodel.cpp +++ b/seriestreemodel.cpp @@ -181,11 +181,13 @@ bool SeriesTreeModel::setData(const QModelIndex &index, const QVariant &value, i } } } - }else if(index.data(TypeRole).toInt() == NewSeries){ - return setNewSeries(index, value); - }else{ - return updateGeneric(index, value); + }else if(index.column() == IsLocal){ + setLocal(index, value); } + }else if(index.data(TypeRole).toInt() == NewSeries){ + return setNewSeries(index, value); + }else{ + return updateGeneric(index, value); } return false; } @@ -671,3 +673,11 @@ bool SeriesTreeModel::updateGeneric(const QModelIndex &source, const QVariant &v mDb.rollback(); return false; } + +bool SeriesTreeModel::setLocal(const QModelIndex &source, const QVariant &value){ + SmTreeItem *item = static_cast<SmTreeItem*>(source.internalPointer()); + item->setData(IsLocal, value); + emit dataChanged(source, source); + emit localsChanged(); + return true; +} |