aboutsummaryrefslogtreecommitdiff
path: root/src/forms
diff options
context:
space:
mode:
authorAqua-sama <aqua@iserlohn-fortress.net>2017-09-04 16:20:09 +0200
committerAqua-sama <aqua@iserlohn-fortress.net>2017-09-04 16:20:09 +0200
commit02980eb506e2b624d539a2dfb29bbe1834dd07a0 (patch)
tree3efd42ae40652c7085bc45843c3f890c07c1aea3 /src/forms
parentImplemented Print to PDF action (diff)
downloadsmolbote-02980eb506e2b624d539a2dfb29bbe1834dd07a0.tar.xz
Split off Bookmarks into static lib
Diffstat (limited to 'src/forms')
-rw-r--r--src/forms/bookmarksform.ui104
-rw-r--r--src/forms/bookmarkswidget.cpp108
-rw-r--r--src/forms/bookmarkswidget.h61
-rw-r--r--src/forms/profilesdialog.cpp2
4 files changed, 2 insertions, 273 deletions
diff --git a/src/forms/bookmarksform.ui b/src/forms/bookmarksform.ui
deleted file mode 100644
index 2df0c4b..0000000
--- a/src/forms/bookmarksform.ui
+++ /dev/null
@@ -1,104 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ui version="4.0">
- <class>BookmarksDialog</class>
- <widget class="QWidget" name="BookmarksDialog">
- <property name="geometry">
- <rect>
- <x>0</x>
- <y>0</y>
- <width>420</width>
- <height>600</height>
- </rect>
- </property>
- <property name="minimumSize">
- <size>
- <width>420</width>
- <height>600</height>
- </size>
- </property>
- <property name="windowTitle">
- <string>Bookmarks</string>
- </property>
- <layout class="QVBoxLayout" name="verticalLayout">
- <item>
- <layout class="QHBoxLayout" name="horizontalLayout_2">
- <item>
- <widget class="QToolButton" name="addFolder_toolButton">
- <property name="text">
- <string>...</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QToolButton" name="addBookmark_toolButton">
- <property name="text">
- <string>...</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QToolButton" name="addSeparator_toolButton">
- <property name="text">
- <string>...</string>
- </property>
- </widget>
- </item>
- <item>
- <widget class="QToolButton" name="deleteItem_toolButton">
- <property name="text">
- <string>...</string>
- </property>
- </widget>
- </item>
- </layout>
- </item>
- <item>
- <widget class="QTreeWidget" name="treeWidget">
- <property name="dragEnabled">
- <bool>true</bool>
- </property>
- <property name="dragDropMode">
- <enum>QAbstractItemView::InternalMove</enum>
- </property>
- <property name="defaultDropAction">
- <enum>Qt::MoveAction</enum>
- </property>
- <column>
- <property name="text">
- <string notr="true">Title</string>
- </property>
- </column>
- <column>
- <property name="text">
- <string>href</string>
- </property>
- </column>
- </widget>
- </item>
- <item>
- <widget class="QGroupBox" name="groupBox">
- <property name="title">
- <string>Details</string>
- </property>
- <layout class="QFormLayout" name="formLayout">
- <item row="1" column="0">
- <widget class="QLabel" name="href_label">
- <property name="text">
- <string>href</string>
- </property>
- </widget>
- </item>
- <item row="1" column="1">
- <widget class="QLineEdit" name="href_lineEdit"/>
- </item>
- <item row="0" column="1">
- <widget class="QLineEdit" name="title_lineEdit"/>
- </item>
- </layout>
- </widget>
- </item>
- </layout>
- </widget>
- <resources/>
- <connections/>
-</ui>
diff --git a/src/forms/bookmarkswidget.cpp b/src/forms/bookmarkswidget.cpp
deleted file mode 100644
index 9a43224..0000000
--- a/src/forms/bookmarkswidget.cpp
+++ /dev/null
@@ -1,108 +0,0 @@
-/*******************************************************************************
- **
- ** 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 "bookmarkswidget.h"
-#include "ui_bookmarksform.h"
-#include "browser.h"
-#include <QTreeWidget>
-
-BookmarksWidget::BookmarksWidget(QWidget *parent) :
- DockingWidget(tr("Bookmarks"), 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());
- });
-}
-
-BookmarksWidget::~BookmarksWidget()
-{
- qDebug("Destroying BookmarksManager");
-
- if(ui->treeWidget->topLevelItemCount() > 0) {
- xbel->write(sSettings->value("bookmarks.path").toString());
- }
-
- delete xbel;
- delete ui;
-}
-
-void BookmarksWidget::show()
-{
- // show() gets called by a QAction in MainWindow
- window = qobject_cast<MainWindow *>(sender()->parent());
-
- DockingWidget::show();
-}
-
-void BookmarksWidget::deleteCurrentItem()
-{
- delete ui->treeWidget->currentItem();
-}
-
-void BookmarksWidget::openItem(QTreeWidgetItem *item, int column)
-{
- Q_UNUSED(column)
-
- if(window) {
- window->newTab(QUrl::fromUserInput(item->text(1)));
- } else {
- qWarning("Trying to open a link without a MainWindow set");
- }
-}
-
-void BookmarksWidget::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));
-}
diff --git a/src/forms/bookmarkswidget.h b/src/forms/bookmarkswidget.h
deleted file mode 100644
index ba0b361..0000000
--- a/src/forms/bookmarkswidget.h
+++ /dev/null
@@ -1,61 +0,0 @@
-/*******************************************************************************
- **
- ** 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/>.
- **
- ******************************************************************************/
-
-#ifndef BOOKMARKSDIALOG_H
-#define BOOKMARKSDIALOG_H
-
-#include "widgets/dockingwidget.h"
-#include <QDockWidget>
-#include "xbel.h"
-#include "mainwindow.h"
-
-namespace Ui {
-class BookmarksDialog;
-}
-
-class BookmarksWidget : public DockingWidget
-{
- Q_OBJECT
-
-public:
- explicit BookmarksWidget(QWidget *parent = 0);
- ~BookmarksWidget();
-
-signals:
- void openUrl(const QUrl &url);
-
-public slots:
- void show();
- // void addFolder(const QString &title);
- // void addBookmark(const QString &title, const QString &href);
- // void addSeparator();
- void deleteCurrentItem();
-
-private slots:
- void openItem(QTreeWidgetItem *item, int column);
- void showItemDetails();
-
-private:
- MainWindow *window;
- Ui::BookmarksDialog *ui;
- Xbel *xbel;
-};
-
-#endif // BOOKMARKSDIALOG_H
diff --git a/src/forms/profilesdialog.cpp b/src/forms/profilesdialog.cpp
index 557d865..00e4920 100644
--- a/src/forms/profilesdialog.cpp
+++ b/src/forms/profilesdialog.cpp
@@ -28,6 +28,8 @@
#include <QPushButton>
#include <QInputDialog>
+#include "mainwindow.h"
+
ProfilesDialog::ProfilesDialog(MainWindow *window, QWidget *parent) :
QDialog(parent),
ui(new Ui::ProfilesDialog)