From b1fce709593090ab9d70314e544c4685a8fd0ccd Mon Sep 17 00:00:00 2001 From: Andreas Suter Date: Mon, 10 Apr 2017 20:16:43 +0200 Subject: [PATCH] replace WebKit by WebEngine. Add a musrfit help icon. For now, not everywhere the help icon will be shown in the proper theme. --- src/musredit_qt5/musredit/PHelp.cpp | 22 ++- src/musredit_qt5/musredit/PHelp.h | 7 +- src/musredit_qt5/musredit/PTextEdit.cpp | 2 +- .../musredit/icons/musrfit-help-dark.svg | 171 ++++++++++++++++++ .../musredit/icons/musrfit-help-plain.svg | 171 ++++++++++++++++++ src/musredit_qt5/musredit/musredit.pro | 2 +- src/musredit_qt5/musredit/musredit.qrc | 2 + 7 files changed, 365 insertions(+), 12 deletions(-) create mode 100644 src/musredit_qt5/musredit/icons/musrfit-help-dark.svg create mode 100644 src/musredit_qt5/musredit/icons/musrfit-help-plain.svg diff --git a/src/musredit_qt5/musredit/PHelp.cpp b/src/musredit_qt5/musredit/PHelp.cpp index d8069257..5d261f41 100644 --- a/src/musredit_qt5/musredit/PHelp.cpp +++ b/src/musredit_qt5/musredit/PHelp.cpp @@ -28,7 +28,7 @@ ***************************************************************************/ #include -#include +#include #include #include @@ -41,13 +41,21 @@ * * \param url help url */ -PHelp::PHelp(const QString &url) +PHelp::PHelp(const QString &url, const bool isDarkTheme) : + fDarkTheme(isDarkTheme) { fProgress = 0; + QString iconName(""); + if (fDarkTheme) + iconName = QString(":/icons/musrfit-help-dark.svg"); + else + iconName = QString(":/icons/musrfit-help-plain.svg"); + setWindowIcon( QIcon( QPixmap(iconName) ) ); + QNetworkProxyFactory::setUseSystemConfiguration(true); - fView = new QWebView(this); + fView = new QWebEngineView(this); fView->load(QUrl(url)); connect(fView, SIGNAL(loadFinished(bool)), SLOT(adjustLocation())); connect(fView, SIGNAL(titleChanged(QString)), SLOT(adjustTitle())); @@ -59,10 +67,10 @@ PHelp::PHelp(const QString &url) connect(fLocationEdit, SIGNAL(returnPressed()), SLOT(changeLocation())); QToolBar *toolBar = addToolBar(tr("Navigation")); - toolBar->addAction(fView->pageAction(QWebPage::Back)); - toolBar->addAction(fView->pageAction(QWebPage::Forward)); - toolBar->addAction(fView->pageAction(QWebPage::Reload)); - toolBar->addAction(fView->pageAction(QWebPage::Stop)); + toolBar->addAction(fView->pageAction(QWebEnginePage::Back)); + toolBar->addAction(fView->pageAction(QWebEnginePage::Forward)); + toolBar->addAction(fView->pageAction(QWebEnginePage::Reload)); + toolBar->addAction(fView->pageAction(QWebEnginePage::Stop)); toolBar->addWidget(fLocationEdit); QMenu *exitMenu = menuBar()->addMenu(tr("&File")); diff --git a/src/musredit_qt5/musredit/PHelp.h b/src/musredit_qt5/musredit/PHelp.h index cc66bb02..b2335009 100644 --- a/src/musredit_qt5/musredit/PHelp.h +++ b/src/musredit_qt5/musredit/PHelp.h @@ -32,7 +32,7 @@ #include -class QWebView; +class QWebEngineView; QT_BEGIN_NAMESPACE class QLineEdit; QT_END_NAMESPACE @@ -47,7 +47,7 @@ class PHelp : public QMainWindow Q_OBJECT public: - PHelp(const QString &url); + PHelp(const QString &url, const bool isDarkTheme=false); virtual ~PHelp(); protected slots: @@ -59,7 +59,8 @@ class PHelp : public QMainWindow void finishLoading(bool); private: - QWebView *fView; ///< web viewer + bool fDarkTheme; + QWebEngineView *fView; ///< web viewer QLineEdit *fLocationEdit; ///< url address line edit int fProgress; ///< progress value (0-100) while loading an url }; diff --git a/src/musredit_qt5/musredit/PTextEdit.cpp b/src/musredit_qt5/musredit/PTextEdit.cpp index 077ad0b4..ee4d3b7c 100644 --- a/src/musredit_qt5/musredit/PTextEdit.cpp +++ b/src/musredit_qt5/musredit/PTextEdit.cpp @@ -2709,7 +2709,7 @@ void PTextEdit::musrDump() */ void PTextEdit::helpContents() { - PHelp *help = new PHelp(fAdmin->getHelpUrl("main")); + PHelp *help = new PHelp(fAdmin->getHelpUrl("main"), fDarkTheme); help->show(); } diff --git a/src/musredit_qt5/musredit/icons/musrfit-help-dark.svg b/src/musredit_qt5/musredit/icons/musrfit-help-dark.svg new file mode 100644 index 00000000..de27d7cd --- /dev/null +++ b/src/musredit_qt5/musredit/icons/musrfit-help-dark.svg @@ -0,0 +1,171 @@ + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ? + + diff --git a/src/musredit_qt5/musredit/icons/musrfit-help-plain.svg b/src/musredit_qt5/musredit/icons/musrfit-help-plain.svg new file mode 100644 index 00000000..75338437 --- /dev/null +++ b/src/musredit_qt5/musredit/icons/musrfit-help-plain.svg @@ -0,0 +1,171 @@ + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ? + + diff --git a/src/musredit_qt5/musredit/musredit.pro b/src/musredit_qt5/musredit/musredit.pro index 2a15854c..3650eb2a 100644 --- a/src/musredit_qt5/musredit/musredit.pro +++ b/src/musredit_qt5/musredit/musredit.pro @@ -71,7 +71,7 @@ CONFIG += qt \ QT += widgets QT += xml -QT += webkitwidgets +QT += webenginewidgets QT += network QT += printsupport QT += svg diff --git a/src/musredit_qt5/musredit/musredit.qrc b/src/musredit_qt5/musredit/musredit.qrc index 3dbc000d..25d00e80 100644 --- a/src/musredit_qt5/musredit/musredit.qrc +++ b/src/musredit_qt5/musredit/musredit.qrc @@ -32,6 +32,8 @@ icons/musrchisq-dark.svg icons/musrfit-plain.svg icons/musrfit-dark.svg + icons/musrfit-help-plain.svg + icons/musrfit-help-dark.svg icons/msr2data-plain.svg icons/msr2data-dark.svg icons/musrprefs-plain.svg