From 5ccf66e6b4984bec28a37697ea1163e811b1673d Mon Sep 17 00:00:00 2001 From: Uwe Risse Date: Mon, 20 Feb 2023 23:23:45 +0100 Subject: [PATCH] Right-click on the Q65 mode button to toggle Q65 Pileup mode On/Off. --- Configuration.cpp | 9 +++++++++ Configuration.hpp | 1 + widgets/mainwindow.cpp | 13 +++++++++++++ widgets/mainwindow.h | 1 + widgets/mainwindow.ui | 2 +- 5 files changed, 25 insertions(+), 1 deletion(-) diff --git a/Configuration.cpp b/Configuration.cpp index d128d0746..632537b8e 100644 --- a/Configuration.cpp +++ b/Configuration.cpp @@ -997,6 +997,15 @@ void Configuration::set_location (QString const& grid_descriptor) m_->dynamic_grid_ = grid_descriptor.trimmed (); } +void Configuration::setSpecial_Q65_Pileup() +{ + m_->bSpecialOp_=true; + m_->ui_->gbSpecialOpActivity->setChecked(m_->bSpecialOp_); + m_->ui_->rbQ65pileup->setChecked(true); + m_->SelectedActivity_ = static_cast (SpecialOperatingActivity::Q65_PILEUP); + m_->write_settings(); +} + void Configuration::setSpecial_Hound() { m_->bSpecialOp_=true; diff --git a/Configuration.hpp b/Configuration.hpp index 8344af8f7..13c54372b 100644 --- a/Configuration.hpp +++ b/Configuration.hpp @@ -183,6 +183,7 @@ public: bool highlight_only_fields () const; bool include_WAE_entities () const; bool highlight_73 () const; + void setSpecial_Q65_Pileup(); void setSpecial_Hound(); void setSpecial_Fox(); void setSpecial_None(); diff --git a/widgets/mainwindow.cpp b/widgets/mainwindow.cpp index 995329b69..114836a3c 100644 --- a/widgets/mainwindow.cpp +++ b/widgets/mainwindow.cpp @@ -6461,6 +6461,19 @@ void MainWindow::on_RoundRobin_currentTextChanged(QString text) ui->sbTxPercent->setEnabled (text == tr ("Random")); } +void MainWindow::mousePressEvent(QMouseEvent *event) +{ + if(ui->q65Button->hasFocus() && (event->button() & Qt::RightButton)) { + m_specOp=m_config.special_op_id(); + if (m_specOp==SpecOp::Q65_PILEUP) { + m_config.setSpecial_None(); + } else { + m_config.setSpecial_Q65_Pileup(); + } + m_specOp=m_config.special_op_id(); + on_actionQ65_triggered(); + } +} void MainWindow::on_dxCallEntry_textChanged (QString const& call) { diff --git a/widgets/mainwindow.h b/widgets/mainwindow.h index 3f2384c83..21ec187a1 100644 --- a/widgets/mainwindow.h +++ b/widgets/mainwindow.h @@ -211,6 +211,7 @@ private slots: void on_txb6_clicked(); void on_lookupButton_clicked(); void on_addButton_clicked(); + void mousePressEvent(QMouseEvent *event) override; void on_dxCallEntry_textChanged (QString const&); void on_dxGridEntry_textChanged (QString const&); void on_dxCallEntry_editingFinished(); diff --git a/widgets/mainwindow.ui b/widgets/mainwindow.ui index e5ed6cefe..2b6ff1f21 100644 --- a/widgets/mainwindow.ui +++ b/widgets/mainwindow.ui @@ -2982,7 +2982,7 @@ QLabel[oob="true"] { - Switch to Q65 mode + <html><head/><body><p>Switch to Q65 mode. Right-click to toggle Q65 Pileup mode On/Off.</p></body></html> Q65