From b65fac29aeaceb6bf8bf9df7a852cdd4a8b651c8 Mon Sep 17 00:00:00 2001 From: "Felix (xq) Queißner" Date: Mon, 29 Jun 2020 22:03:56 +0200 Subject: Adds basic editing for favourite groups --- src/mainwindow.cpp | 34 ++++++++++++++++++++++++++++------ 1 file changed, 28 insertions(+), 6 deletions(-) (limited to 'src/mainwindow.cpp') diff --git a/src/mainwindow.cpp b/src/mainwindow.cpp index b987e7d..62f6ad0 100644 --- a/src/mainwindow.cpp +++ b/src/mainwindow.cpp @@ -10,6 +10,8 @@ #include #include #include +#include + #include "ioutil.hpp" #include "kristall.hpp" @@ -145,12 +147,12 @@ void MainWindow::on_browser_tabs_currentChanged(int index) } } -void MainWindow::on_favourites_view_doubleClicked(const QModelIndex &index) -{ - if(auto url = kristall::favourites.getFavourite(index).destination; url.isValid()) { - this->addNewTab(true, url); - } -} +//void MainWindow::on_favourites_view_doubleClicked(const QModelIndex &index) +//{ +// if(auto url = kristall::favourites.getFavourite(index).destination; url.isValid()) { +// this->addNewTab(true, url); +// } +//} void MainWindow::on_browser_tabs_tabCloseRequested(int index) { @@ -406,6 +408,26 @@ void MainWindow::on_favourites_view_customContextMenuRequested(const QPoint &pos menu.exec(this->ui->favourites_view->mapToGlobal(pos)); } + else if(QString group = kristall::favourites.group(idx); not group.isEmpty()) { + qDebug() << group; + } + } + else { + QMenu menu; + + connect(menu.addAction("Create new group..."), &QAction::triggered, [this]() { + QInputDialog dialog { this }; + + dialog.setInputMode(QInputDialog::TextInput); + dialog.setLabelText(tr("Enter name of the new group:")); + + if(dialog.exec() != QDialog::Accepted) + return; + + kristall::favourites.addGroup(dialog.textValue()); + }); + + menu.exec(this->ui->favourites_view->mapToGlobal(pos)); } } -- cgit v1.2.3