From 9611e92cf0d90e4ce1eaf3c3adbaac0f78f4c884 Mon Sep 17 00:00:00 2001 From: Berthold Stoeger Date: Thu, 31 May 2018 16:36:34 +0200 Subject: Desktop: Derive UserManual from QDialog In commit d21d42b69117aae04b68ecc9cc2139e034bde146 helpView was made a child-object of MainWindow, which is Qt's idiomatic way of having helpView deleted with MainWindow. As an unintended consequence, the helpView didn't show. The reason is that UserManual derives directly from QObject. In contrast, UserSurvey derives from QDialog and is correctly shown. Therefore also derive UserManual from QDialog. Reported-by: Willem Ferguson Signed-off-by: Berthold Stoeger --- desktop-widgets/mainwindow.cpp | 2 ++ desktop-widgets/mainwindow.h | 2 ++ desktop-widgets/usermanual.cpp | 2 +- desktop-widgets/usermanual.h | 3 ++- 4 files changed, 7 insertions(+), 2 deletions(-) diff --git a/desktop-widgets/mainwindow.cpp b/desktop-widgets/mainwindow.cpp index 94c319a4b..087ccc228 100644 --- a/desktop-widgets/mainwindow.cpp +++ b/desktop-widgets/mainwindow.cpp @@ -100,7 +100,9 @@ extern "C" void showErrorFromC(char *buf) MainWindow::MainWindow() : QMainWindow(), actionNextDive(0), actionPreviousDive(0), +#ifndef NO_USERMANUAL helpView(0), +#endif state(VIEWALL), survey(0) { diff --git a/desktop-widgets/mainwindow.h b/desktop-widgets/mainwindow.h index 3a9848f62..00ddd86b7 100644 --- a/desktop-widgets/mainwindow.h +++ b/desktop-widgets/mainwindow.h @@ -191,7 +191,9 @@ private: Ui::MainWindow ui; QAction *actionNextDive; QAction *actionPreviousDive; +#ifndef NO_USERMANUAL UserManual *helpView; +#endif CurrentState state; CurrentState stateBeforeEdit; QString filter_open(); diff --git a/desktop-widgets/usermanual.cpp b/desktop-widgets/usermanual.cpp index 69000dd54..83bffb521 100644 --- a/desktop-widgets/usermanual.cpp +++ b/desktop-widgets/usermanual.cpp @@ -56,7 +56,7 @@ MyQWebEngineView::MyQWebEngineView(QWidget* parent) } #endif -UserManual::UserManual(QWidget *parent) : QWidget(parent) +UserManual::UserManual(QWidget *parent) : QDialog(parent) { QShortcut *closeKey = new QShortcut(QKeySequence(Qt::CTRL + Qt::Key_W), this); connect(closeKey, SIGNAL(activated()), this, SLOT(close())); diff --git a/desktop-widgets/usermanual.h b/desktop-widgets/usermanual.h index c9ae66323..e005fb0fe 100644 --- a/desktop-widgets/usermanual.h +++ b/desktop-widgets/usermanual.h @@ -8,6 +8,7 @@ #else #include #endif +#include #include "ui_searchbar.h" class SearchBar : public QWidget{ @@ -47,7 +48,7 @@ public: #endif -class UserManual : public QWidget { +class UserManual : public QDialog { Q_OBJECT public: -- cgit v1.2.3-70-g09d2