aboutsummaryrefslogtreecommitdiff
path: root/src/widgets/mainwindowmenubar.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/widgets/mainwindowmenubar.cpp')
-rw-r--r--src/widgets/mainwindowmenubar.cpp58
1 files changed, 35 insertions, 23 deletions
diff --git a/src/widgets/mainwindowmenubar.cpp b/src/widgets/mainwindowmenubar.cpp
index 964d9fd..c233d29 100644
--- a/src/widgets/mainwindowmenubar.cpp
+++ b/src/widgets/mainwindowmenubar.cpp
@@ -19,49 +19,61 @@
******************************************************************************/
#include "mainwindowmenubar.h"
+#include <QApplication>
#include <QMenu>
-#include "browser.h"
#include <QInputDialog>
#include "forms/profilesdialog.h"
-
-#include "interfaces.h"
-
#include "mainwindow.h"
+#include <settings/configuration.h>
-MainWindowMenuBar::MainWindowMenuBar(MainWindow *parent) :
+MainWindowMenuBar::MainWindowMenuBar(std::shared_ptr<Configuration> config, MainWindow *parent) :
QMenuBar(parent)
{
- m_parentWindow = parent;
+ Q_ASSERT(config);
+ Q_ASSERT(parent);
// Browser menu
QMenu *browserMenu = new QMenu(qApp->applicationName(), this);
addMenu(browserMenu);
- browserMenu->addAction(tr("New Window"), parent, SLOT(newWindow()), QKeySequence::fromString(browser->settings()->value("window.shortcuts.windowNew").toString()));
- browserMenu->addAction(tr("New Tab"), parent, SLOT(newTab()), QKeySequence::fromString(browser->settings()->value("window.shortcuts.tabNew").toString()));
+
+ QAction *newWindowAction = browserMenu->addAction(tr("New Window"));
+ connect(newWindowAction, &QAction::triggered, parent, [parent]() {
+ parent->newWindow();
+ });
+ newWindowAction->setShortcut(QKeySequence(config->value<std::string>("browser.shortcuts.newWindow").value().c_str()));
+
+ QAction *newTabAction = browserMenu->addAction(tr("New Tab"));
+ connect(newTabAction, &QAction::triggered, parent, [parent]() {
+ parent->newTab();
+ });
+ newTabAction->setShortcut(QKeySequence(config->value<std::string>("browser.shortcuts.newTab").value().c_str()));
+
browserMenu->addSeparator();
- browserMenu->addAction(tr("About"), parent, SLOT(about()), QKeySequence(tr("F1")));
- browserMenu->addAction(tr("About Qt"), qApp, SLOT(aboutQt()));
+ browserMenu->addAction(tr("About"), parent, &MainWindow::about, QKeySequence(config->value<std::string>("browser.shortcuts.about").value().c_str()));
+ browserMenu->addAction(tr("About Qt"), qApp, &QApplication::aboutQt);
browserMenu->addSeparator();
- browserMenu->addAction(tr("Quit"), qApp, SLOT(quit()), QKeySequence::fromString(browser->settings()->value("window.shortcuts.windowClose").toString()));
+
+ QAction *quitAction = browserMenu->addAction(tr("Quit"), qApp, &QApplication::quit);
+ quitAction->setShortcut(QKeySequence(config->value<std::string>("browser.shortcuts.quit").value().c_str()));
// Tools menu
QMenu *toolsMenu = new QMenu(tr("Tools"), this);
addMenu(toolsMenu);
QAction *downloadsAction = toolsMenu->addAction(tr("Downloads"));
downloadsAction->setParent(parent);
- downloadsAction->setShortcut(QKeySequence::fromString(browser->settings()->value("downloads.dialogShortcut").toString()));
- connect(downloadsAction, &QAction::triggered, this, [&]() {
- m_parentWindow->addTabbedDock(Qt::RightDockWidgetArea, browser->downloads());
- });
+ //downloadsAction->setShortcut(QKeySequence::fromString(browser->settings()->value("downloads.dialogShortcut").toString()));
+ //connect(downloadsAction, &QAction::triggered, this, [&]() {
+ // m_parentWindow->addTabbedDock(Qt::RightDockWidgetArea, browser->downloads());
+ //});
QAction *bookmarksAction = toolsMenu->addAction(tr("Bookmarks"));
bookmarksAction->setParent(parent);
- bookmarksAction->setShortcut(QKeySequence(browser->settings()->value("bookmarks.dialogShortcut").toString()));
- connect(bookmarksAction, &QAction::triggered, this, [&]() {
- m_parentWindow->addTabbedDock(Qt::RightDockWidgetArea, browser->bookmarks());
- });
+ //bookmarksAction->setShortcut(QKeySequence(browser->settings()->value("bookmarks.dialogShortcut").toString()));
+ //connect(bookmarksAction, &QAction::triggered, this, [&]() {
+ // m_parentWindow->addTabbedDock(Qt::RightDockWidgetArea, browser->bookmarks());
+ //});
toolsMenu->addSeparator();
- toolsMenu->addAction(tr("Filter"), browser->blocklists(), SLOT(show()), QKeySequence::fromString(browser->settings()->value("blocker.shortcut").toString()));
+ //toolsMenu->addAction(tr("Filter"), browser->blocklists(), SLOT(show()), QKeySequence::fromString(browser->settings()->value("blocker.shortcut").toString()));
// Plugins
// if(qApp->plugin("")) {
@@ -78,7 +90,7 @@ MainWindowMenuBar::MainWindowMenuBar(MainWindow *parent) :
// Profile menu
QMenu *profileMenu = new QMenu(tr("Profile"), this);
addMenu(profileMenu);
- profileMenu->addAction(tr("Profiles"), this, SLOT(handleLoadProfile()));
+ //profileMenu->addAction(tr("Profiles"), this, SLOT(handleLoadProfile()));
// Page menu
QMenu *pageMenu = new QMenu(tr("Page"), this);
@@ -93,9 +105,9 @@ QAction *MainWindowMenuBar::printAction()
return m_printAction;
}
-void MainWindowMenuBar::handleLoadProfile()
+void MainWindowMenuBar::handleLoadProfile(MainWindow *window)
{
- ProfilesDialog *dlg = new ProfilesDialog(m_parentWindow, this);
+ ProfilesDialog *dlg = new ProfilesDialog(window, this);
dlg->exec();
// bool ok;