From 8ec24c0ac9a0c699721c50a70630c91cc36b1c30 Mon Sep 17 00:00:00 2001 From: Chris Xiong Date: Mon, 19 Sep 2022 12:04:52 -0400 Subject: Fix sizeHintChanged not being fired when item view size changes. Also menu adjustments. --- qdeduper/mingui.cpp | 31 +++++++++++++++++++++---------- 1 file changed, 21 insertions(+), 10 deletions(-) (limited to 'qdeduper/mingui.cpp') diff --git a/qdeduper/mingui.cpp b/qdeduper/mingui.cpp index ee4f013..2f21e5e 100644 --- a/qdeduper/mingui.cpp +++ b/qdeduper/mingui.cpp @@ -93,6 +93,7 @@ DeduperMainWindow::DeduperMainWindow() lv->setHorizontalScrollMode(QAbstractItemView::ScrollMode::ScrollPerPixel); lv->setVerticalScrollMode(QAbstractItemView::ScrollMode::ScrollPerPixel); lv->setMinimumWidth(240); + lv->installEventFilter(this); pd = new QProgressDialog(this); pd->setModal(true); pd->setMinimumDuration(0); @@ -176,6 +177,9 @@ void DeduperMainWindow::setup_menu() file->addAction("Load Database..."); file->addAction("Save Database..."); file->addSeparator(); + file->addAction("Export Marked Images List..."); + file->addAction("Import Marked Images List..."); + file->addSeparator(); file->addAction("Search for Image..."); file->addSeparator(); file->addAction("Preferences..."); @@ -225,9 +229,10 @@ void DeduperMainWindow::setup_menu() mark->addAction("Mark All"); mark->addAction("Mark None"); mark->addAction("Mark All within..."); - mark->addAction("Review Marked Imagess"); + mark->addSeparator(); + mark->addAction("Review Marked Images"); - help->addAction("View Documentation"); + help->addAction("Help"); help->addAction("About"); tb = new QToolBar(this); @@ -509,14 +514,6 @@ fs::path::string_type DeduperMainWindow::common_prefix(const std::vectorrowCount(); ++i) - id->resize(im->indexFromItem(im->item(i))); -} - void DeduperMainWindow::closeEvent(QCloseEvent *e) { if (QMessageBox::StandardButton::Yes == @@ -527,3 +524,17 @@ void DeduperMainWindow::closeEvent(QCloseEvent *e) else e->ignore(); } + +bool DeduperMainWindow::eventFilter(QObject *obj, QEvent *e) +{ + if (e->type() == QEvent::Type::Resize) + { + if (im && id && obj == lv) + for (int i = 0; i < im->rowCount(); ++i) + { + id->resize(im->indexFromItem(im->item(i))); + } + return false; + } + return false; +} -- cgit v1.2.3