diff --git a/mainwindow.cpp b/mainwindow.cpp index 97c8277..b4d6a8d 100644 --- a/mainwindow.cpp +++ b/mainwindow.cpp @@ -1180,12 +1180,19 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple, connect(ui->extFreeTextMsgEdit, &QTableWidget::customContextMenuRequested, this, [this, clearAction2, clearActionAll, restoreAction](QPoint const &point){ QMenu * menu = new QMenu(ui->extFreeTextMsgEdit); + auto selectedCall = callsignSelected(); + bool missingCallsign = selectedCall.isEmpty(); + restoreAction->setDisabled(m_lastTxMessage.isEmpty()); menu->addAction(restoreAction); auto savedMenu = menu->addMenu("Saved messages..."); buildSavedMessagesMenu(savedMenu); + auto directedMenu = menu->addMenu(QString("Directed to %1...").arg(selectedCall)); + directedMenu->setDisabled(missingCallsign); + buildQueryMenu(directedMenu, selectedCall); + auto relayMenu = menu->addMenu("Relay via..."); relayMenu->setDisabled(ui->extFreeTextMsgEdit->toPlainText().isEmpty() || m_callActivity.isEmpty()); buildRelayMenu(relayMenu); @@ -1234,6 +1241,7 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple, QString selectedCall = callsignSelected(); bool missingCallsign = selectedCall.isEmpty(); + bool isAllCall = isAllCallIncluded(selectedCall); int selectedOffset = -1; if(!ui->tableWidgetRXAll->selectedItems().isEmpty()){ @@ -1250,7 +1258,12 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple, } menu->addAction(logAction); - logAction->setDisabled(missingCallsign); + logAction->setDisabled(missingCallsign || isAllCall); + + menu->addSeparator(); + + auto savedMenu = menu->addMenu("Saved messages..."); + buildSavedMessagesMenu(savedMenu); auto directedMenu = menu->addMenu(QString("Directed to %1...").arg(selectedCall)); directedMenu->setDisabled(missingCallsign); @@ -1329,6 +1342,11 @@ MainWindow::MainWindow(QDir const& temp_directory, bool multiple, menu->addAction(logAction); logAction->setDisabled(missingCallsign || isAllCall); + menu->addSeparator(); + + auto savedMenu = menu->addMenu("Saved messages..."); + buildSavedMessagesMenu(savedMenu); + auto directedMenu = menu->addMenu(QString("Directed to %1...").arg(selectedCall)); directedMenu->setDisabled(missingCallsign); buildQueryMenu(directedMenu, selectedCall);