From d20722d81728953182682a99f116cecbaaa15945 Mon Sep 17 00:00:00 2001 From: Clemens Brunner Date: Tue, 2 Mar 2021 09:02:19 +0100 Subject: [PATCH] Fix slow events dialog (#207) * Fix slow events dialog * Add changelog entry --- CHANGELOG.md | 2 +- mnelab/dialogs/eventsdialog.py | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 7718332a..f0b405c9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,7 +2,7 @@ ### Fixed - Remove auto-installation of `PySide2` when using `pip` ([#196](https://github.com/cbrnr/mnelab/pull/196) by [Clemens Brunner](https://github.com/cbrnr)) - Starting MNELAB with the `mnelab` command in a terminal now also works on Windows ([#197](https://github.com/cbrnr/mnelab/pull/197) by [Clemens Brunner](https://github.com/cbrnr)) -- Removing annotations is now as fast as it should be ([#206](https://github.com/cbrnr/mnelab/pull/206) by [Clemens Brunner](https://github.com/cbrnr)) +- Removing annotations and events is now as fast as it should be ([#206](https://github.com/cbrnr/mnelab/pull/206) and [#207](https://github.com/cbrnr/mnelab/pull/207) by [Clemens Brunner](https://github.com/cbrnr)) ### Changed - Rename `master` branch to `main` ([#193](https://github.com/cbrnr/mnelab/pull/193) by [Clemens Brunner](https://github.com/cbrnr)) diff --git a/mnelab/dialogs/eventsdialog.py b/mnelab/dialogs/eventsdialog.py index 0987dc9e..762caa09 100644 --- a/mnelab/dialogs/eventsdialog.py +++ b/mnelab/dialogs/eventsdialog.py @@ -67,10 +67,11 @@ def __init__(self, parent, pos, desc): @Slot() def toggle_buttons(self): """Toggle + and - buttons.""" - if len(self.table.selectedItems()) == 2: # one row (2 items) selected + n_items = len(self.table.selectedItems()) + if n_items == 2: # one row (2 items) selected self.add_button.setEnabled(True) self.remove_button.setEnabled(True) - elif len(self.table.selectedItems()) > 2: # more than one row selected + elif n_items > 2: # more than one row selected self.add_button.setEnabled(False) self.remove_button.setEnabled(True) else: # no rows selected @@ -88,5 +89,6 @@ def add_event(self): def remove_event(self): rows = {index.row() for index in self.table.selectedIndexes()} + self.table.clearSelection() for row in sorted(rows, reverse=True): self.table.removeRow(row)