From d796821f8304306dbe088701724243b39e8eb358 Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Mon, 16 Apr 2018 17:07:36 +0200 Subject: Multiple subwindows interface Subwindows are similar to tab groups. - Rewrote Browser and MainWindow, so they should be somewhat cleaner now - Moved AboutDialog to lib/about What's broken: - loading bar - search box - address bar bookmark suggestions - plugins --- src/widgets/mainwindowmenubar.cpp | 91 --------------------------------------- src/widgets/mainwindowmenubar.h | 32 -------------- 2 files changed, 123 deletions(-) delete mode 100644 src/widgets/mainwindowmenubar.cpp delete mode 100644 src/widgets/mainwindowmenubar.h (limited to 'src/widgets') diff --git a/src/widgets/mainwindowmenubar.cpp b/src/widgets/mainwindowmenubar.cpp deleted file mode 100644 index 44a6eba..0000000 --- a/src/widgets/mainwindowmenubar.cpp +++ /dev/null @@ -1,91 +0,0 @@ -/* - * This file is part of smolbote. It's copyrighted by the contributors recorded - * in the version control history of the file, available from its original - * location: https://neueland.iserlohn-fortress.net/smolbote.hg - * - * SPDX-License-Identifier: GPL-3.0 - */ - -#include "mainwindowmenubar.h" -#include "browser.h" -#include "downloads/downloadswidget.h" -#include "mainwindow/mainwindow.h" -#include -#include -#include "configuration/configuration.h" - -MainWindowMenuBar::MainWindowMenuBar(std::shared_ptr config, MainWindow *parent) - : QMenuBar(parent) -{ - Q_ASSERT(config); - Q_CHECK_PTR(parent); - - setSizePolicy(QSizePolicy::Minimum, QSizePolicy::Preferred); - - auto *browser = dynamic_cast(QApplication::instance()); - - // Browser menu - QMenu *browserMenu = new QMenu(qApp->applicationName(), this); - addMenu(browserMenu); - - QAction *newWindowAction = browserMenu->addAction(tr("New Window")); - connect(newWindowAction, &QAction::triggered, parent, [parent]() { - parent->newWindow(); - }); - newWindowAction->setShortcut(QKeySequence(config->value("browser.shortcuts.newWindow").value().c_str())); - - browserMenu->addAction(parent->findChild("newTab_action")); - - browserMenu->addSeparator(); - //browserMenu->addAction(tr("Settings"), parent, &MainWindow::showSettingsDialog); - browserMenu->addAction(tr("About"), parent, &MainWindow::about, QKeySequence(config->value("browser.shortcuts.about").value().c_str())); - browserMenu->addAction(tr("About Qt"), qApp, &QApplication::aboutQt); - browserMenu->addSeparator(); - - QAction *quitAction = browserMenu->addAction(tr("Quit"), qApp, &QApplication::quit); - quitAction->setShortcut(QKeySequence(config->value("browser.shortcuts.quit").value().c_str())); - - // Tools menu - QMenu *toolsMenu = new QMenu(tr("Tools"), this); - addMenu(toolsMenu); - - m_downloadsAction = toolsMenu->addAction(tr("Downloads")); - m_downloadsAction->setParent(parent); - m_downloadsAction->setShortcut(QKeySequence(config->value("downloads.shortcut").value().c_str())); - connect(m_downloadsAction, &QAction::triggered, [parent]() { - parent->m_downloadsWidget->show(); - }); - - m_bookmarksAction = toolsMenu->addAction(tr("Bookmarks")); - m_bookmarksAction->setParent(parent); - m_bookmarksAction->setShortcut(QKeySequence(config->value("bookmarks.shortcut").value().c_str())); - - //toolsMenu->addAction(tr("Filter"), browser->blocklists(), SLOT(show()), QKeySequence::fromString(browser->settings()->value("blocker.shortcut").toString())); - - // Profile menu - QMenu *profileMenu = addMenu(tr("Profile")); - m_profileAction = profileMenu->addAction(tr("Current profile")); - m_profileAction->setEnabled(false); - - QMenu *loadMenu = profileMenu->addMenu(tr("Load")); - - for(const QString &name : browser->profiles()) { - QAction *profileAction = loadMenu->addAction(browser->profile(name)->name()); - connect(profileAction, &QAction::triggered, this, [browser, parent, name] { - parent->setProfile(browser->profile(name)); - }); - } -} - -QAction *MainWindowMenuBar::bookmarksAction() -{ - Q_CHECK_PTR(m_bookmarksAction); - return m_bookmarksAction; -} - -QAction *MainWindowMenuBar::profileAction() const -{ - Q_CHECK_PTR(m_profileAction); - return m_profileAction; -} - diff --git a/src/widgets/mainwindowmenubar.h b/src/widgets/mainwindowmenubar.h deleted file mode 100644 index 11c8beb..0000000 --- a/src/widgets/mainwindowmenubar.h +++ /dev/null @@ -1,32 +0,0 @@ -/* - * This file is part of smolbote. It's copyrighted by the contributors recorded - * in the version control history of the file, available from its original - * location: https://neueland.iserlohn-fortress.net/smolbote.hg - * - * SPDX-License-Identifier: GPL-3.0 - */ - -#ifndef MAINWINDOWMENUBAR_H -#define MAINWINDOWMENUBAR_H - -#include -#include - -class MainWindow; -class Configuration; -class MainWindowMenuBar : public QMenuBar -{ - Q_OBJECT -public: - explicit MainWindowMenuBar(std::shared_ptr config, MainWindow *parent = nullptr); - - QAction *bookmarksAction(); - QAction *profileAction() const; - -private: - QAction *m_bookmarksAction; - QAction *m_downloadsAction; - QAction *m_profileAction; -}; - -#endif // MAINWINDOWMENUBAR_H -- cgit v1.2.1