// For license of this file, see /LICENSE.md. #include "gui/nonclosablemenu.h" #include NonClosableMenu::NonClosableMenu(QWidget* parent) : QMenu(parent) {} NonClosableMenu::NonClosableMenu(const QString& title, QWidget* parent) : QMenu(title, parent) {} void NonClosableMenu::keyPressEvent(QKeyEvent* event) { if (event->key() != Qt::Key::Key_Space) { QMenu::keyPressEvent(event); } } void NonClosableMenu::mousePressEvent(QMouseEvent* event) { auto* act = dynamic_cast(activeAction()); if (act != nullptr) { act->toggle(); } else { QMenu::mousePressEvent(event); } } void NonClosableMenu::mouseReleaseEvent(QMouseEvent* event) { Q_UNUSED(event) }