diff options
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; +} |