diff --git a/UI/frontend-plugins/frontend-tools/scripts.cpp b/UI/frontend-plugins/frontend-tools/scripts.cpp index b69629b4b..00da30790 100644 --- a/UI/frontend-plugins/frontend-tools/scripts.cpp +++ b/UI/frontend-plugins/frontend-tools/scripts.cpp @@ -4,8 +4,10 @@ #include #include +#include #include #include +#include #include #include #include @@ -87,13 +89,21 @@ ScriptLogWindow::ScriptLogWindow() : QWidget(nullptr) edit->setFont(fixedFont); edit->setWordWrapMode(QTextOption::NoWrap); - QDialogButtonBox *buttonBox = new QDialogButtonBox( - QDialogButtonBox::Close); - connect(buttonBox, &QDialogButtonBox::rejected, this, &QWidget::hide); + QHBoxLayout *buttonLayout = new QHBoxLayout(); + QPushButton *clearButton = new QPushButton(tr("Clear")); + connect(clearButton, &QPushButton::clicked, + this, &ScriptLogWindow::ClearWindow); + QPushButton *closeButton = new QPushButton(tr("Close")); + connect(closeButton, &QPushButton::clicked, + this, &QDialog::hide); + + buttonLayout->addStretch(); + buttonLayout->addWidget(clearButton); + buttonLayout->addWidget(closeButton); QVBoxLayout *layout = new QVBoxLayout(); layout->addWidget(edit); - layout->addWidget(buttonBox); + layout->addLayout(buttonLayout); setLayout(layout); scriptLogWidget = edit; @@ -156,6 +166,12 @@ void ScriptLogWindow::AddLogMsg(int log_level, QString msg) } } +void ScriptLogWindow::ClearWindow() +{ + Clear(); + scriptLogWidget->setPlainText(QString()); +} + void ScriptLogWindow::Clear() { lines.clear(); diff --git a/UI/frontend-plugins/frontend-tools/scripts.hpp b/UI/frontend-plugins/frontend-tools/scripts.hpp index af1194a4c..f638c3fda 100644 --- a/UI/frontend-plugins/frontend-tools/scripts.hpp +++ b/UI/frontend-plugins/frontend-tools/scripts.hpp @@ -17,6 +17,7 @@ public: public slots: void AddLogMsg(int log_level, QString msg); + void ClearWindow(); void Clear(); void ScrollChanged(int val); };