aboutsummaryrefslogtreecommitdiff
path: root/mingui/mingui.cpp
diff options
context:
space:
mode:
authorGravatar Chris Xiong <chirs241097@gmail.com> 2022-08-29 21:30:42 -0400
committerGravatar Chris Xiong <chirs241097@gmail.com> 2022-08-29 21:30:42 -0400
commita0c4f6e2daafa8998bdb4efa3fc50f7d9b3bdb1c (patch)
tree5eba676de3753546cc9e25ea3dfb1eb385ba12d4 /mingui/mingui.cpp
parent02bdc2c6b05e424208feac12ff00652ac50cad07 (diff)
downloaddeduper-a0c4f6e2daafa8998bdb4efa3fc50f7d9b3bdb1c.tar.xz
Add group skipping.
Diffstat (limited to 'mingui/mingui.cpp')
-rw-r--r--mingui/mingui.cpp15
1 files changed, 14 insertions, 1 deletions
diff --git a/mingui/mingui.cpp b/mingui/mingui.cpp
index c251f61..ab1a083 100644
--- a/mingui/mingui.cpp
+++ b/mingui/mingui.cpp
@@ -21,6 +21,7 @@
#include <QKeySequence>
#include <QTextEdit>
#include <QMessageBox>
+#include <QInputDialog>
#include <QDesktopServices>
using std::size_t;
@@ -119,9 +120,11 @@ void MinGuiWidget::update_distances(const std::map<std::pair<size_t, size_t>, do
infopanel->setText(r);
}
-void MinGuiWidget::update_permamsg(std::size_t cur, std::size_t size)
+void MinGuiWidget::update_viewstatus(std::size_t cur, std::size_t size)
{
permamsg->setText(QString("Viewing group %1 of %2").arg(cur + 1).arg(size));
+ ngroups = size;
+ curgroup = cur;
}
void MinGuiWidget::save_list()
@@ -284,6 +287,16 @@ void MinGuiWidget::keyReleaseEvent(QKeyEvent *e)
case Qt::Key::Key_M: Q_EMIT next(); break;
case Qt::Key::Key_Z: Q_EMIT prev(); break;
case Qt::Key::Key_N: load_list(); break;
+ case Qt::Key::Key_B:
+ {
+ bool ok = false;
+ int g = QInputDialog::getInt(this, "Skip to group",
+ QString("Group # (1-%1)").arg(ngroups),
+ curgroup + 1,
+ 1, ngroups, 1, &ok);
+ if (ok) Q_EMIT switch_group((size_t) g - 1);
+ }
+ break;
case Qt::Key::Key_Return: if (e->modifiers() & Qt::KeyboardModifier::ShiftModifier) save_list(); break;
}
}