From: Manuel Nickschas Date: Tue, 6 Nov 2018 22:46:33 +0000 (+0100) Subject: qtui: Make the debug log a proper dialog X-Git-Tag: 0.13.0~5 X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=commitdiff_plain;h=d438145b28f34b7fdbc7e290aa001e5f3f922207;hp=1ccf9666ade9a46880ffb68feeac81b7c39e570b qtui: Make the debug log a proper dialog For some reason unbeknownst and shrouded in ancient mystery, the debug log was displayed in a naked widget, which caused it to not be rendered in a window when using not-so-smart window managers (such as Windows™). Make the debug log a proper dialog, and also fix the close button not being part of a platform-agnostic QDialogButtonBox, while we're at it. --- diff --git a/src/qtui/CMakeLists.txt b/src/qtui/CMakeLists.txt index 0a5a3add..3861d609 100644 --- a/src/qtui/CMakeLists.txt +++ b/src/qtui/CMakeLists.txt @@ -25,7 +25,7 @@ set(SOURCES coresessionwidget.cpp debugbufferviewoverlay.cpp debugconsole.cpp - debuglogwidget.cpp + debuglogdlg.cpp debugmessagemodelfilter.cpp inputwidget.cpp ircconnectionwizard.cpp @@ -72,7 +72,7 @@ set(FORMS coresessionwidget.ui debugbufferviewoverlay.ui debugconsole.ui - debuglogwidget.ui + debuglogdlg.ui inputwidget.ui msgprocessorstatuswidget.ui nicklistwidget.ui diff --git a/src/qtui/debuglogwidget.cpp b/src/qtui/debuglogdlg.cpp similarity index 90% rename from src/qtui/debuglogwidget.cpp rename to src/qtui/debuglogdlg.cpp index 83a5e090..bebe26b9 100644 --- a/src/qtui/debuglogwidget.cpp +++ b/src/qtui/debuglogdlg.cpp @@ -18,12 +18,12 @@ * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ***************************************************************************/ -#include "debuglogwidget.h" +#include "debuglogdlg.h" #include "quassel.h" -DebugLogWidget::DebugLogWidget(QWidget *parent) - : QWidget(parent) +DebugLogDlg::DebugLogDlg(QWidget *parent) + : QDialog(parent) { ui.setupUi(this); setAttribute(Qt::WA_DeleteOnClose, true); @@ -41,13 +41,13 @@ DebugLogWidget::DebugLogWidget(QWidget *parent) } -QString DebugLogWidget::toString(const Logger::LogEntry &msg) +QString DebugLogDlg::toString(const Logger::LogEntry &msg) { return msg.timeStamp.toString("yyyy-MM-dd hh:mm:ss ") + msg.message + "\n"; } -void DebugLogWidget::logUpdated(const Logger::LogEntry &msg) +void DebugLogDlg::logUpdated(const Logger::LogEntry &msg) { ui.textEdit->moveCursor(QTextCursor::End); ui.textEdit->insertPlainText(toString(msg)); diff --git a/src/qtui/debuglogwidget.h b/src/qtui/debuglogdlg.h similarity index 92% rename from src/qtui/debuglogwidget.h rename to src/qtui/debuglogdlg.h index 5bffad9b..faf0584b 100644 --- a/src/qtui/debuglogwidget.h +++ b/src/qtui/debuglogdlg.h @@ -25,14 +25,14 @@ #include "logger.h" -#include "ui_debuglogwidget.h" +#include "ui_debuglogdlg.h" -class DebugLogWidget : public QWidget +class DebugLogDlg : public QDialog { Q_OBJECT public: - DebugLogWidget(QWidget *parent = 0); + DebugLogDlg(QWidget *parent = 0); private slots: void logUpdated(const Logger::LogEntry &msg); @@ -41,5 +41,5 @@ private: QString toString(const Logger::LogEntry &msg); private: - Ui::DebugLogWidget ui; + Ui::DebugLogDlg ui; }; diff --git a/src/qtui/mainwin.cpp b/src/qtui/mainwin.cpp index fd27f80a..e06d28bd 100644 --- a/src/qtui/mainwin.cpp +++ b/src/qtui/mainwin.cpp @@ -79,7 +79,7 @@ #include "coreinfodlg.h" #include "contextmenuactionprovider.h" #include "debugbufferviewoverlay.h" -#include "debuglogwidget.h" +#include "debuglogdlg.h" #include "debugmessagemodelfilter.h" #include "flatproxymodel.h" #include "icon.h" @@ -1998,8 +1998,8 @@ void MainWin::on_actionDebugMessageModel_triggered() void MainWin::on_actionDebugLog_triggered() { - DebugLogWidget *logWidget = new DebugLogWidget(nullptr); // will be deleted on close - logWidget->show(); + auto dlg = new DebugLogDlg(this); + dlg->show(); } diff --git a/src/qtui/ui/debuglogdlg.ui b/src/qtui/ui/debuglogdlg.ui new file mode 100644 index 00000000..c51fa24d --- /dev/null +++ b/src/qtui/ui/debuglogdlg.ui @@ -0,0 +1,67 @@ + + + DebugLogDlg + + + + 0 + 0 + 400 + 300 + + + + Debug Log + + + + + + + + + Qt::Horizontal + + + QDialogButtonBox::Close + + + + + + + + + buttonBox + accepted() + DebugLogDlg + accept() + + + 248 + 254 + + + 157 + 274 + + + + + buttonBox + rejected() + DebugLogDlg + reject() + + + 316 + 260 + + + 286 + 274 + + + + + diff --git a/src/qtui/ui/debuglogwidget.ui b/src/qtui/ui/debuglogwidget.ui deleted file mode 100644 index fc853c55..00000000 --- a/src/qtui/ui/debuglogwidget.ui +++ /dev/null @@ -1,83 +0,0 @@ - - DebugLogWidget - - - - 0 - 0 - 400 - 300 - - - - Debug Log - - - - 0 - - - 0 - - - - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - Close - - - - - - - Qt::Horizontal - - - - 40 - 20 - - - - - - - - - - - - pushButton - clicked() - DebugLogWidget - close() - - - 217 - 284 - - - 179 - -16 - - - - -