diff options
-rw-r--r-- | moviewidget.cpp | 17 | ||||
-rw-r--r-- | moviewidget.h | 1 |
2 files changed, 16 insertions, 2 deletions
diff --git a/moviewidget.cpp b/moviewidget.cpp index 3978c98..786cad3 100644 --- a/moviewidget.cpp +++ b/moviewidget.cpp @@ -40,9 +40,11 @@ void MovieWidget::setupWidget(){ QIcon buttplugRight(buttplug.transformed(rotatematrix)); rotatematrix.rotate(-180); QIcon buttplugLeft(buttplug.transformed(rotatematrix)); - QAction *backA = new QAction(buttplugLeft, tr("Prev. filter"), this); + QAction *backA = new QAction(buttplugLeft, tr("Prev. archive selection"), this); + connect(backA, &QAction::triggered, [=] { forwardSelection(-1) ;}); toolbar->addAction(backA); - QAction *forwardA = new QAction(buttplugRight, tr("Next filter"), this); + QAction *forwardA = new QAction(buttplugRight, tr("Next archive selection"), this); + connect(forwardA, &QAction::triggered, [=] { forwardSelection(1); }); toolbar->addAction(forwardA); QLabel *filterL = new QLabel(tr("Filter")); @@ -441,3 +443,14 @@ void MovieWidget::copyToClipboard(int role){ QClipboard *clip = qApp->clipboard(); clip->setText(selected.first().data(role).toString()); } + +void MovieWidget::forwardSelection(int by){ + int cur = mSelectionCB->currentIndex(); + if(cur + by >= mSelectionCB->count()){ + mSelectionCB->setCurrentIndex(0); + }else if(cur + by < 0){ + mSelectionCB->setCurrentIndex(mSelectionCB->count() - 1); + }else{ + mSelectionCB->setCurrentIndex(cur + by); + } +} diff --git a/moviewidget.h b/moviewidget.h index f3ee593..7c23c3b 100644 --- a/moviewidget.h +++ b/moviewidget.h @@ -33,6 +33,7 @@ class MovieWidget : public QWidget { void topDoubleClicked(const QModelIndex &idx); void playSelected(); void copyToClipboard(int role); + void forwardSelection(int by); private: void setupWidget(); |