summaryrefslogtreecommitdiffstats
path: root/seriestreewidget.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'seriestreewidget.cpp')
-rw-r--r--seriestreewidget.cpp20
1 files changed, 19 insertions, 1 deletions
diff --git a/seriestreewidget.cpp b/seriestreewidget.cpp
index 24e9eb4..518cac1 100644
--- a/seriestreewidget.cpp
+++ b/seriestreewidget.cpp
@@ -64,7 +64,7 @@ SeriesTreeWidget::SeriesTreeWidget(QWidget *parent) : QWidget(parent){
mProxy->setSourceModel(mModel);
mView->setModel(mProxy);
mView->setSortingEnabled(true);
- for(int i = 1; i < 5 ;++i){
+ for(int i = 1; i < 6 ;++i){
mView->setColumnHidden(i, true);
}
mView->resizeColumnToContents(0);
@@ -137,6 +137,23 @@ void SeriesTreeWidget::seriesAdded(QString seriesName, int seriesPart, bool reso
}
}
+void SeriesTreeWidget::toggleFavorite(){
+ QModelIndexList selected = mView->selectionModel()->selectedRows();
+ if(selected.isEmpty()){
+ return;
+ }
+ foreach(QModelIndex idx, selected){
+ if(idx.data(SeriesTreeModel::TypeRole).toInt() == SeriesTreeModel::Part){
+ bool curFav = idx.data(SeriesTreeModel::FavoriteRole).toBool();
+ QModelIndex source = mProxy->mapToSource(idx);
+ if(source.isValid()){
+ source = mModel->index(source.row(), SeriesTreeModel::Favorite, source.parent());
+ }
+ mModel->setData(source, !curFav, Qt::EditRole);
+ }
+ }
+}
+
void SeriesTreeWidget::deleteFromSeries(){
QModelIndexList selected = mView->selectionModel()->selectedRows();
if(selected.isEmpty()){
@@ -217,6 +234,7 @@ void SeriesTreeWidget::readSettings(){
mView->setCurrentIndex(real);
}
mFilterEdit->setText(s.value("archive/filtertext").toString());
+ mModel->readSettings();
}
void SeriesTreeWidget::writeSettings(){