From 34a6085cc08fc0623f070d8ca589bd1ec7b4ae6f Mon Sep 17 00:00:00 2001 From: Unknown Date: Thu, 19 Oct 2017 14:06:17 +0200 Subject: [PATCH] Qt: add "clear" option to tty log contextmenu --- rpcs3/rpcs3qt/log_frame.cpp | 11 +++++++++++ rpcs3/rpcs3qt/log_frame.h | 1 + 2 files changed, 12 insertions(+) diff --git a/rpcs3/rpcs3qt/log_frame.cpp b/rpcs3/rpcs3qt/log_frame.cpp index 1b81d31079..6fdce76f0e 100644 --- a/rpcs3/rpcs3qt/log_frame.cpp +++ b/rpcs3/rpcs3qt/log_frame.cpp @@ -112,6 +112,7 @@ log_frame::log_frame(std::shared_ptr guiSettings, QWidget *parent) m_tty = new QTextEdit(tabWidget); m_tty->setObjectName("tty_frame"); m_tty->setReadOnly(true); + m_tty->setContextMenuPolicy(Qt::CustomContextMenu); tabWidget->addTab(m_log, tr("Log")); tabWidget->addTab(m_tty, tr("TTY")); @@ -199,6 +200,9 @@ void log_frame::CreateAndConnectActions() m_clearAct = new QAction(tr("Clear"), this); connect(m_clearAct, &QAction::triggered, m_log, &QTextEdit::clear); + m_clearTTYAct = new QAction(tr("Clear"), this); + connect(m_clearTTYAct, &QAction::triggered, m_tty, &QTextEdit::clear); + // Action groups make these actions mutually exclusive. m_logLevels = new QActionGroup(this); m_nothingAct = new QAction(tr("Nothing"), m_logLevels); @@ -248,6 +252,13 @@ void log_frame::CreateAndConnectActions() menu->exec(mapToGlobal(pos)); }); + connect(m_tty, &QWidget::customContextMenuRequested, [=](const QPoint& pos) + { + QMenu* menu = m_tty->createStandardContextMenu(); + menu->addAction(m_clearTTYAct); + menu->exec(mapToGlobal(pos)); + }); + LoadSettings(); } diff --git a/rpcs3/rpcs3qt/log_frame.h b/rpcs3/rpcs3qt/log_frame.h index ecdd34d6e5..76f2fad1c7 100644 --- a/rpcs3/rpcs3qt/log_frame.h +++ b/rpcs3/rpcs3qt/log_frame.h @@ -50,6 +50,7 @@ private: fs::file m_tty_file; QAction* m_clearAct; + QAction* m_clearTTYAct; QActionGroup* m_logLevels; QAction* m_nothingAct;