diff options
Diffstat (limited to 'src/assistant/assistant/mainwindow.cpp')
-rw-r--r-- | src/assistant/assistant/mainwindow.cpp | 146 |
1 files changed, 61 insertions, 85 deletions
diff --git a/src/assistant/assistant/mainwindow.cpp b/src/assistant/assistant/mainwindow.cpp index e9b2f758e..5a6d35e20 100644 --- a/src/assistant/assistant/mainwindow.cpp +++ b/src/assistant/assistant/mainwindow.cpp @@ -1,30 +1,5 @@ -/**************************************************************************** -** -** Copyright (C) 2020 The Qt Company Ltd. -** Contact: https://www.qt.io/licensing/ -** -** This file is part of the Qt Assistant of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:GPL-EXCEPT$ -** Commercial License Usage -** Licensees holding valid commercial Qt licenses may use this file in -** accordance with the commercial license agreement provided with the -** Software or, alternatively, in accordance with the terms contained in -** a written agreement between you and The Qt Company. For licensing terms -** and conditions see https://www.qt.io/terms-conditions. For further -** information use the contact form at https://www.qt.io/contact-us. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 3 as published by the Free Software -** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT -** included in the packaging of this file. Please review the following -** information to ensure the GNU General Public License requirements will -** be met: https://www.gnu.org/licenses/gpl-3.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ +// Copyright (C) 2020 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 #include "mainwindow.h" @@ -87,6 +62,8 @@ QT_BEGIN_NAMESPACE +using namespace Qt::StringLiterals; + enum { warnAboutMissingModules = 0 }; MainWindow::MainWindow(CmdLineParser *cmdLine, QWidget *parent) @@ -121,13 +98,13 @@ MainWindow::MainWindow(CmdLineParser *cmdLine, QWidget *parent) m_indexWindow = new IndexWindow(this); QDockWidget *indexDock = new QDockWidget(tr("Index"), this); - indexDock->setObjectName(QLatin1String("IndexWindow")); + indexDock->setObjectName("IndexWindow"_L1); indexDock->setWidget(m_indexWindow); addDockWidget(Qt::LeftDockWidgetArea, indexDock); m_contentWindow = new ContentWindow; QDockWidget *contentDock = new QDockWidget(tr("Contents"), this); - contentDock->setObjectName(QLatin1String("ContentWindow")); + contentDock->setObjectName("ContentWindow"_L1); contentDock->setWidget(m_contentWindow); addDockWidget(Qt::LeftDockWidgetArea, contentDock); @@ -135,18 +112,18 @@ MainWindow::MainWindow(CmdLineParser *cmdLine, QWidget *parent) m_searchWindow->setFont(!helpEngineWrapper.usesBrowserFont() ? qApp->font() : helpEngineWrapper.browserFont()); QDockWidget *searchDock = new QDockWidget(tr("Search"), this); - searchDock->setObjectName(QLatin1String("SearchWindow")); + searchDock->setObjectName("SearchWindow"_L1); searchDock->setWidget(m_searchWindow); addDockWidget(Qt::LeftDockWidgetArea, searchDock); QDockWidget *bookmarkDock = new QDockWidget(tr("Bookmarks"), this); - bookmarkDock->setObjectName(QLatin1String("BookmarkWindow")); + bookmarkDock->setObjectName("BookmarkWindow"_L1); bookmarkDock->setWidget(m_bookmarkWidget = bookMarkManager->bookmarkDockWidget()); addDockWidget(Qt::LeftDockWidgetArea, bookmarkDock); QDockWidget *openPagesDock = new QDockWidget(tr("Open Pages"), this); - openPagesDock->setObjectName(QLatin1String("Open Pages")); + openPagesDock->setObjectName("Open Pages"_L1); OpenPagesManager *openPagesManager = OpenPagesManager::createInstance(this, usesDefaultCollection(), m_cmdLine->url()); openPagesDock->setWidget(openPagesManager->openPagesWidget()); @@ -191,15 +168,15 @@ MainWindow::MainWindow(CmdLineParser *cmdLine, QWidget *parent) } while (reader.jumpToNextImage()); qApp->setWindowIcon(appIcon); } -#if !defined(Q_OS_OSX) && !defined(Q_OS_WIN) +#if !defined(Q_OS_MACOS) && !defined(Q_OS_WIN) else { - QIcon appIcon(QLatin1String(":/qt-project.org/assistant/images/assistant-128.png")); + QIcon appIcon(":/qt-project.org/assistant/images/assistant-128.png"_L1); qApp->setWindowIcon(appIcon); } #endif QToolBar *toolBar = addToolBar(tr("Bookmark Toolbar")); - toolBar->setObjectName(QLatin1String("Bookmark Toolbar")); + toolBar->setObjectName("Bookmark Toolbar"_L1); bookMarkManager->setBookmarksToolbar(toolBar); toolBar->hide(); @@ -218,9 +195,9 @@ MainWindow::MainWindow(CmdLineParser *cmdLine, QWidget *parent) tabifyDockWidget(bookmarkDock, searchDock); contentDock->raise(); const QRect screen = QGuiApplication::primaryScreen()->geometry(); - resize(4*screen.width()/5, 4*screen.height()/5); - adjustSize(); // make sure we won't start outside of the screen + resize(4 * screen.width() / 5, 4 * screen.height() / 5); + move(screen.center() - rect().center()); } @@ -318,8 +295,8 @@ bool MainWindow::initHelpDB(bool registerInternalDoc) if (!helpEngineWrapper.setupData()) return false; - if (!registerInternalDoc && helpEngineWrapper.defaultHomePage() == QLatin1String("help")) - helpEngineWrapper.setDefaultHomePage(QLatin1String("about:blank")); + if (!registerInternalDoc && helpEngineWrapper.defaultHomePage() == "help"_L1) + helpEngineWrapper.setDefaultHomePage("about:blank"_L1); return true; } @@ -396,7 +373,7 @@ static QStringList newQtDocumentation() const int docCount = int(sizeof(docs) / sizeof(docs[0])); result.reserve(docCount); for (int d = 0; d < docCount; ++d) - result.append(QLatin1String(docs[d])); + result.append(QLatin1StringView(docs[d])); return result; } @@ -423,7 +400,7 @@ void MainWindow::lookForNewQtDocumentation() this, &MainWindow::resetQtDocInfo); connect(m_qtDocInstaller, &QtDocInstaller::registerDocumentation, this, &MainWindow::registerDocumentation); - if (helpEngine.qtDocInfo(QLatin1String("qt")).count() != 2) + if (helpEngine.qtDocInfo("qt"_L1).size() != 2) statusBar()->showMessage(tr("Looking for Qt Documentation...")); m_qtDocInstaller->installDocs(); } @@ -474,12 +451,12 @@ void MainWindow::insertLastPages() void MainWindow::setupActions() { TRACE_OBJ - QString resourcePath = QLatin1String(":/qt-project.org/assistant/images/"); + QString resourcePath = ":/qt-project.org/assistant/images/"_L1; #ifdef Q_OS_MAC setUnifiedTitleAndToolBarOnMac(true); - resourcePath.append(QLatin1String("mac")); + resourcePath.append("mac"_L1); #else - resourcePath.append(QLatin1String("win")); + resourcePath.append("win"_L1); #endif QMenu *menu = menuBar()->addMenu(tr("&File")); @@ -507,7 +484,7 @@ void MainWindow::setupActions() menu->addAction(globalActions->printAction()); menu->addSeparator(); - QIcon appExitIcon = QIcon::fromTheme("application-exit"); + QIcon appExitIcon = QIcon::fromTheme(QIcon::ThemeIcon::ApplicationExit); QAction *tmp; #ifdef Q_OS_WIN tmp = menu->addAction(appExitIcon, tr("E&xit"), @@ -546,21 +523,21 @@ void MainWindow::setupActions() m_resetZoomAction = m_viewMenu->addAction(tr("Normal &Size"), m_centralWidget, &CentralWidget::resetZoom); m_resetZoomAction->setPriority(QAction::LowPriority); - m_resetZoomAction->setIcon(QIcon(resourcePath + QLatin1String("/resetzoom.png"))); + m_resetZoomAction->setIcon(QIcon(resourcePath + "/resetzoom.png"_L1)); m_resetZoomAction->setShortcut(tr("Ctrl+0")); m_viewMenu->addSeparator(); - m_viewMenu->addAction(tr("Contents"), - this, &MainWindow::showContents, QKeySequence(tr("ALT+C"))); - m_viewMenu->addAction(tr("Index"), - this, &MainWindow::showIndex, QKeySequence(tr("ALT+I"))); - m_viewMenu->addAction(tr("Bookmarks"), - this, &MainWindow::showBookmarksDockWidget, QKeySequence(tr("ALT+O"))); - m_viewMenu->addAction(tr("Search"), - this, &MainWindow::showSearch, QKeySequence(tr("ALT+S"))); - m_viewMenu->addAction(tr("Open Pages"), - this, &MainWindow::showOpenPages, QKeySequence(tr("ALT+P"))); + m_viewMenu->addAction(tr("Contents"), QKeySequence(tr("ALT+C")), + this, &MainWindow::showContents); + m_viewMenu->addAction(tr("Index"), QKeySequence(tr("ALT+I")), + this, &MainWindow::showIndex); + m_viewMenu->addAction(tr("Bookmarks"), QKeySequence(tr("ALT+O")), + this, &MainWindow::showBookmarksDockWidget); + m_viewMenu->addAction(tr("Search"), QKeySequence(tr("ALT+S")), + this, &MainWindow::showSearch); + m_viewMenu->addAction(tr("Open Pages"), QKeySequence(tr("ALT+P")), + this, &MainWindow::showOpenPages); menu = menuBar()->addMenu(tr("&Go")); menu->addAction(globalActions->homeAction()); @@ -570,7 +547,7 @@ void MainWindow::setupActions() m_syncAction = menu->addAction(tr("Sync with Table of Contents"), this, &MainWindow::syncContents); m_syncAction->setIconText(tr("Sync")); - m_syncAction->setIcon(QIcon(resourcePath + QLatin1String("/synctoc.png"))); + m_syncAction->setIcon(QIcon(resourcePath + "/synctoc.png"_L1)); menu->addSeparator(); @@ -606,12 +583,13 @@ void MainWindow::setupActions() m_aboutAction->setMenuRole(QAction::AboutRole); #if defined(Q_OS_UNIX) && !defined(Q_OS_MAC) - m_resetZoomAction->setIcon(QIcon::fromTheme("zoom-original" , m_resetZoomAction->icon())); - m_syncAction->setIcon(QIcon::fromTheme("view-refresh" , m_syncAction->icon())); + m_resetZoomAction->setIcon(QIcon::fromTheme("zoom-original"_L1, m_resetZoomAction->icon())); + m_syncAction->setIcon(QIcon::fromTheme(QIcon::ThemeIcon::ViewRefresh, + m_syncAction->icon())); #endif QToolBar *navigationBar = addToolBar(tr("Navigation Toolbar")); - navigationBar->setObjectName(QLatin1String("NavigationToolBar")); + navigationBar->setObjectName("NavigationToolBar"_L1); navigationBar->addAction(globalActions->backAction()); navigationBar->addAction(globalActions->nextAction()); navigationBar->addAction(globalActions->homeAction()); @@ -632,8 +610,8 @@ void MainWindow::setupActions() menuBar()->insertMenu(menu->menuAction(), windowMenu); windowMenu->addAction(tr("Zoom"), this, &QWidget::showMaximized); - windowMenu->addAction(tr("Minimize"), - this, &QWidget::showMinimized, QKeySequence(tr("Ctrl+M"))); + windowMenu->addAction(tr("Minimize"), QKeySequence(tr("Ctrl+M")), + this, &QWidget::showMinimized); #endif // content viewer connections @@ -695,12 +673,12 @@ void MainWindow::setupFilterToolbar() return; m_filterCombo = new QComboBox(this); - m_filterCombo->setMinimumWidth(QFontMetrics(QFont()). - horizontalAdvance(QLatin1String("MakeTheComboBoxWidthEnough"))); + m_filterCombo->setMinimumWidth(QFontMetrics({}). + horizontalAdvance("MakeTheComboBoxWidthEnough"_L1)); QToolBar *filterToolBar = addToolBar(tr("Filter Toolbar")); - filterToolBar->setObjectName(QLatin1String("FilterToolBar")); - filterToolBar->addWidget(new QLabel(tr("Filtered by:").append(QLatin1Char(' ')), + filterToolBar->setObjectName("FilterToolBar"_L1); + filterToolBar->addWidget(new QLabel(tr("Filtered by:").append(u' '), this)); filterToolBar->addWidget(m_filterCombo); @@ -727,7 +705,7 @@ void MainWindow::setupAddressToolbar() m_addressLineEdit = new QLineEdit(this); QToolBar *addressToolBar = addToolBar(tr("Address Toolbar")); - addressToolBar->setObjectName(QLatin1String("AddressToolBar")); + addressToolBar->setObjectName("AddressToolBar"_L1); insertToolBarBreak(addressToolBar); addressToolBar->addWidget(new QLabel(tr("Address:").append(QChar::Space), @@ -739,8 +717,7 @@ void MainWindow::setupAddressToolbar() toolBarMenu()->addAction(addressToolBar->toggleViewAction()); // address lineedit - connect(m_addressLineEdit, &QLineEdit::returnPressed, - this, &MainWindow::gotoAddress); + connect(m_addressLineEdit, &QLineEdit::returnPressed, this, &MainWindow::gotoAddress); connect(m_centralWidget, &CentralWidget::currentViewerChanged, this, QOverload<>::of(&MainWindow::showNewAddress)); connect(m_centralWidget, &CentralWidget::sourceChanged, @@ -756,14 +733,14 @@ void MainWindow::updateAboutMenuText() QString str; QString trStr; QString currentLang = QLocale::system().name(); - int i = currentLang.indexOf(QLatin1Char('_')); + int i = currentLang.indexOf(u'_'); if (i > -1) currentLang = currentLang.left(i); QDataStream s(&ba, QIODevice::ReadOnly); while (!s.atEnd()) { s >> lang; s >> str; - if (lang == QLatin1String("default") && trStr.isEmpty()) { + if (lang == "default"_L1 && trStr.isEmpty()) { trStr = str; } else if (lang == currentLang) { trStr = str; @@ -838,14 +815,14 @@ void MainWindow::showAboutDialog() QString lang; QByteArray cba; QString currentLang = QLocale::system().name(); - int i = currentLang.indexOf(QLatin1Char('_')); + int i = currentLang.indexOf(u'_'); if (i > -1) currentLang = currentLang.left(i); QDataStream s(&ba, QIODevice::ReadOnly); while (!s.atEnd()) { s >> lang; s >> cba; - if (lang == QLatin1String("default") && contents.isEmpty()) { + if (lang == "default"_L1 && contents.isEmpty()) { contents = cba; } else if (lang == currentLang) { contents = cba; @@ -869,19 +846,20 @@ void MainWindow::showAboutDialog() } else { QByteArray resources; #if defined(BROWSER_QTWEBKIT) - const QString browser = QStringLiteral("Qt WebKit"); + QString browser = QStringLiteral("Qt WebKit"); #else - const QString browser = QStringLiteral("QTextBrowser"); + QString browser = QStringLiteral("QTextBrowser"); #endif + if (m_centralWidget->currentHelpViewer()) + browser = QStringLiteral("QLiteHtmlWidget"); aboutDia.setText(tr("<center>" "<h3>%1</h3>" "<p>Version %2</p>" "<p>Browser: %3</p></center>" "<p>Copyright (C) %4 The Qt Company Ltd.</p>") - .arg(tr("Qt Assistant"), QLatin1String(QT_VERSION_STR), browser, QStringLiteral("2021")), + .arg(tr("Qt Assistant"), QLatin1StringView(QT_VERSION_STR), browser, QString()), resources); - QLatin1String path(":/qt-project.org/assistant/images/assistant-128.png"); - aboutDia.setPixmap(QString(path)); + aboutDia.setPixmap(QString(":/qt-project.org/assistant/images/assistant-128.png"_L1)); } if (aboutDia.windowTitle().isEmpty()) aboutDia.setWindowTitle(tr("About %1").arg(windowTitle())); @@ -1092,13 +1070,12 @@ QString MainWindow::collectionFileDirectory(bool createDir, const QString &cache QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation); if (collectionPath.isEmpty()) { if (cacheDir.isEmpty()) - collectionPath = QDir::homePath() + QDir::separator() - + QLatin1String(".assistant"); + collectionPath = QDir::homePath() + QDir::separator() + ".assistant"_L1; else - collectionPath = QDir::homePath() + QLatin1String("/.") + cacheDir; + collectionPath = QDir::homePath() + "/."_L1 + cacheDir; } else { if (cacheDir.isEmpty()) - collectionPath = collectionPath + QLatin1String("/QtProject/Assistant"); + collectionPath = collectionPath + "/QtProject/Assistant"_L1; else collectionPath = collectionPath + QDir::separator() + cacheDir; } @@ -1114,9 +1091,8 @@ QString MainWindow::defaultHelpCollectionFileName() { TRACE_OBJ // forces creation of the default collection file path - return collectionFileDirectory(true) + QDir::separator() + - QString(QLatin1String("qthelpcollection_%1.qhc")). - arg(QLatin1String(QT_VERSION_STR)); + return collectionFileDirectory(true) + QDir::separator() + + QString("qthelpcollection_%1.qhc"_L1).arg(QLatin1StringView(QT_VERSION_STR)); } void MainWindow::currentFilterChanged(const QString &filter) |