diff options
author | Aqua-sama <aqua@iserlohn-fortress.net> | 2017-03-20 16:27:03 +0100 |
---|---|---|
committer | Aqua-sama <aqua@iserlohn-fortress.net> | 2017-03-20 16:27:03 +0100 |
commit | 32693ab1efcd708f0eba06c33fb5b52a59fd377b (patch) | |
tree | afc64b7f89d7880825d89d860dc30e2c05393936 /src/forms/bookmarksdialog.cpp | |
parent | Dockable bookmarks dialog (diff) | |
download | smolbote-32693ab1efcd708f0eba06c33fb5b52a59fd377b.tar.xz |
Fixed opening bookmarks with multiple windows
Diffstat (limited to 'src/forms/bookmarksdialog.cpp')
-rw-r--r-- | src/forms/bookmarksdialog.cpp | 114 |
1 files changed, 0 insertions, 114 deletions
diff --git a/src/forms/bookmarksdialog.cpp b/src/forms/bookmarksdialog.cpp deleted file mode 100644 index becac56..0000000 --- a/src/forms/bookmarksdialog.cpp +++ /dev/null @@ -1,114 +0,0 @@ -/** LICENSE ******************************************************************** - ** - ** smolbote: yet another qute browser - ** Copyright (C) 2017 Xian Nox - ** - ** This program is free software: you can redistribute it and/or modify - ** it under the terms of the GNU General Public License as published by - ** the Free Software Foundation, either version 3 of the License, or - ** (at your option) any later version. - ** - ** This program is distributed in the hope that it will be useful, - ** but WITHOUT ANY WARRANTY; without even the implied warranty of - ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - ** GNU General Public License for more details. - ** - ** You should have received a copy of the GNU General Public License - ** along with this program. If not, see <http://www.gnu.org/licenses/>. - ** - ******************************************************************************/ - -#include "bookmarksdialog.h" -#include "ui_bookmarksdialog.h" -#include "browser.h" -#include <QTreeWidget> -#include <QDockWidget> - -BookmarksDialog::BookmarksDialog(QWidget *parent) : - QDialog(parent), - ui(new Ui::BookmarksDialog) -{ - // make sure this dialog does not get deleted on close - setAttribute(Qt::WA_DeleteOnClose, false); - - ui->setupUi(this); - ui->treeWidget->header()->setSectionResizeMode(QHeaderView::Stretch); - - QStyle *style = ui->treeWidget->style(); - ui->addFolder_toolButton->setIcon(style->standardPixmap(QStyle::SP_DirIcon)); - ui->addBookmark_toolButton->setIcon(style->standardPixmap(QStyle::SP_FileIcon)); - ui->addSeparator_toolButton->setText("---"); - ui->deleteItem_toolButton->setIcon(style->standardPixmap(QStyle::SP_TrashIcon)); - - connect(ui->treeWidget, SIGNAL(itemSelectionChanged()), this, SLOT(showItemDetails())); - connect(ui->treeWidget, SIGNAL(itemActivated(QTreeWidgetItem*,int)), this, SLOT(openItem(QTreeWidgetItem*,int))); - - ui->deleteItem_toolButton->setShortcut(QKeySequence::Delete); - connect(ui->deleteItem_toolButton, SIGNAL(clicked(bool)), this, SLOT(deleteCurrentItem())); - - xbel = new Xbel(ui->treeWidget); - xbel->read(sSettings->value("bookmarks.path").toString()); - - connect(ui->addFolder_toolButton, &QToolButton::clicked, [this]() { - xbel->addFolder(ui->treeWidget->currentItem()); - }); - connect(ui->addBookmark_toolButton, &QToolButton::clicked, [this]() { - xbel->addBookmark(ui->treeWidget->currentItem()); - }); - connect(ui->addSeparator_toolButton, &QToolButton::clicked, [this]() { - xbel->addSeparator(ui->treeWidget->currentItem()); - }); -} - -BookmarksDialog::~BookmarksDialog() -{ - qDebug("Destroying BookmarksManager"); - - if(ui->treeWidget->topLevelItemCount() > 0) { - xbel->write(sSettings->value("bookmarks.path").toString()); - } - - delete xbel; - delete ui; -} - -void BookmarksDialog::show() -{ - // show() is called by a QAction in MainWindow - w = qobject_cast<MainWindow *>(sender()->parent()); - - // dockable widgets - QDockWidget *bookmarksDock = new QDockWidget(tr("Bookmarks"), w); - bookmarksDock->setWidget(this); - bookmarksDock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea); - w->addDockWidget(Qt::RightDockWidgetArea, bookmarksDock); - bookmarksDock->setFloating(true); - - QDialog::show(); -} - -void BookmarksDialog::deleteCurrentItem() -{ - delete ui->treeWidget->currentItem(); -} - -void BookmarksDialog::openItem(QTreeWidgetItem *item, int column) -{ - Q_UNUSED(column) - - if(w) { - w->addNewTab(QUrl::fromUserInput(item->text(1))); - } -} - -void BookmarksDialog::showItemDetails() -{ - QTreeWidgetItem *item = ui->treeWidget->currentItem(); - if(!item) { - ui->title_lineEdit->setText(""); - ui->href_label->setText(""); - return; - } - ui->title_lineEdit->setText(item->text(0)); - ui->href_lineEdit->setText(item->text(1)); -} |