diff --git a/tools/cabana/mainwin.cc b/tools/cabana/mainwin.cc index 2478155fcf..60a1f7a3a3 100644 --- a/tools/cabana/mainwin.cc +++ b/tools/cabana/mainwin.cc @@ -8,7 +8,15 @@ #include "tools/replay/util.h" +static MainWindow *main_win = nullptr; +void qLogMessageHandler(QtMsgType type, const QMessageLogContext &context, const QString &msg) { + main_win->showStatusMessage(msg); +} + MainWindow::MainWindow() : QWidget() { + main_win = this; + qInstallMessageHandler(qLogMessageHandler); + QVBoxLayout *main_layout = new QVBoxLayout(this); main_layout->setContentsMargins(11, 11, 11, 5); main_layout->setSpacing(0); diff --git a/tools/cabana/mainwin.h b/tools/cabana/mainwin.h index 56d2da145b..63f704dcc8 100644 --- a/tools/cabana/mainwin.h +++ b/tools/cabana/mainwin.h @@ -14,6 +14,7 @@ class MainWindow : public QWidget { public: MainWindow(); void dockCharts(bool dock); + void showStatusMessage(const QString &msg, int timeout = 0) { status_bar->showMessage(msg, timeout); } signals: void logMessageFromReplay(const QString &msg, int timeout);