From 6d4df99100c34ae17421f8d9b7e1a87654064c5c Mon Sep 17 00:00:00 2001 From: eelke Date: Fri, 16 Aug 2019 08:27:05 +0200 Subject: [PATCH] Add Cancel back to query menu --- pglab/DatabaseWindow.cpp | 17 ++++++++++++++++- pglab/DatabaseWindow.h | 2 ++ 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/pglab/DatabaseWindow.cpp b/pglab/DatabaseWindow.cpp index a5737f0..5b227da 100644 --- a/pglab/DatabaseWindow.cpp +++ b/pglab/DatabaseWindow.cpp @@ -109,6 +109,12 @@ void DatabaseWindow::createActions() auto action = actionAbout = new QAction(icon, tr("About"), this); action->setObjectName("actionAbout"); } + { + QIcon icon; + icon.addFile(QString::fromUtf8(":/icons/script_delete.png"), QSize(), QIcon::Normal, QIcon::On); + auto action = actionCancelQuery = new QAction(icon, tr("Cancel query"), this); + action->setObjectName("actionCancelQuery"); + } { QIcon icon; icon.addFile(QString::fromUtf8(":/icons/page_white_delete.png"), QSize(), QIcon::Normal, QIcon::On); @@ -251,7 +257,8 @@ void DatabaseWindow::initMenus() menuQuery->addActions({ actionExecuteQuery, actionExplain, - actionExplainAnalyze + actionExplainAnalyze, + actionCancelQuery }); menuWindow = mb->addMenu(tr("Window")); @@ -318,6 +325,14 @@ void DatabaseWindow::on_actionAbout_triggered() } +void DatabaseWindow::on_actionCancelQuery_triggered() +{ + auto query_tool = GetActiveQueryTool(); + if (query_tool) { + query_tool->cancel(); + } +} + void DatabaseWindow::on_actionCopy_triggered() { QWidget *w = QApplication::focusWidget(); diff --git a/pglab/DatabaseWindow.h b/pglab/DatabaseWindow.h index 1e9b757..6e8207e 100644 --- a/pglab/DatabaseWindow.h +++ b/pglab/DatabaseWindow.h @@ -61,6 +61,7 @@ private: // Standard actions QAction *actionAbout = nullptr; + QAction *actionCancelQuery = nullptr; QAction *actionClose = nullptr; QAction *actionCopy = nullptr; QAction *actionCopyAsCString = nullptr; @@ -116,6 +117,7 @@ private slots: // void tabWidget_currentChanged(int index); void on_actionAbout_triggered(); + void on_actionCancelQuery_triggered(); void on_actionClose_triggered(); void on_actionCopy_triggered(); void on_actionCopyAsCString_triggered();