diff options
Diffstat (limited to 'fswidget.cpp')
-rw-r--r-- | fswidget.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/fswidget.cpp b/fswidget.cpp index ca7407d..f282a6c 100644 --- a/fswidget.cpp +++ b/fswidget.cpp @@ -32,8 +32,10 @@ void FSWidget::setupWidget(){ rotatematrix.rotate(-180); QIcon buttplugLeft(buttplug.transformed(rotatematrix)); QAction *backA = new QAction(buttplugLeft, tr("Prev. dir"), this); + connect(backA, &QAction::triggered, [=] { advanceDir(-1); }); toolbar->addAction(backA); QAction *forwardA = new QAction(buttplugRight, tr("Next dir"), this); + connect(forwardA, &QAction::triggered, [=] { advanceDir(1); }); toolbar->addAction(forwardA); QIcon plusIcon = Helper::icon(QColor(255,85,255), '+'); @@ -262,6 +264,18 @@ void FSWidget::gatherData(const QString &curDir){ mFileView->setSortingEnabled(true); } +void FSWidget::advanceDir(int by){ + int dirCount = mDirCB->count(); + int nextIdx = mDirCB->currentIndex() + by; + if(nextIdx >= dirCount){ + nextIdx = 0; + } + if(nextIdx < 0){ + nextIdx = dirCount - 1; + } + mDirCB->setCurrentIndex(nextIdx); +} + int FSWidget::queryCount(QSqlQuery &q, const QString &arg) const{ int retval = -1; q.bindValue(":arg", arg); |