From abd011f7cf8d298b8bbbe30eedb329094d43c0b9 Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Thu, 23 Feb 2017 17:19:32 +0100 Subject: Download manager improvements Added shortcut for download dialog Dialog has proper title Settings replaces ~ with home location Showing download item details --- src/forms/downloaddialog.cpp | 16 ++++++++++++- src/forms/downloaddialog.h | 3 +++ src/forms/downloaddialog.ui | 53 +++++++++++++++++++++++++++++++++++++++++--- 3 files changed, 68 insertions(+), 4 deletions(-) (limited to 'src/forms') diff --git a/src/forms/downloaddialog.cpp b/src/forms/downloaddialog.cpp index 59756bf..7d26c4b 100644 --- a/src/forms/downloaddialog.cpp +++ b/src/forms/downloaddialog.cpp @@ -27,12 +27,15 @@ #include #include #include "webengine/downloaditemform.h" +#include "settings.h" DownloadDialog::DownloadDialog(QWidget *parent) : QDialog(parent), ui(new Ui::DownloadDialog) { ui->setupUi(this); + + connect(ui->listWidget, SIGNAL(currentRowChanged(int)), this, SLOT(showItemDetails(int))); } DownloadDialog::~DownloadDialog() @@ -42,8 +45,12 @@ DownloadDialog::~DownloadDialog() void DownloadDialog::addDownload(QWebEngineDownloadItem *item) { + Settings settings; + qDebug("download item: %s", qUtf8Printable(item->url().toString())); - QString filepath = QFileDialog::getSaveFileName(this, tr("Save")); + qDebug("download path: %s", qUtf8Printable(settings.value("downloads/path").toString())); + + QString filepath = QFileDialog::getSaveFileName(this, tr("Save"), settings.value("downloads/path").toString()); if(filepath.isEmpty()) { // user cancelled the save dialog @@ -64,3 +71,10 @@ void DownloadDialog::addDownload(QWebEngineDownloadItem *item) item->accept(); this->show(); } + +void DownloadDialog::showItemDetails(int index) +{ + DownloadItemForm *form = qobject_cast(ui->listWidget->itemWidget(ui->listWidget->item(index))); + ui->mimeType_label->setText(form->item()->mimeType()); + ui->path_label->setText(form->item()->path()); +} diff --git a/src/forms/downloaddialog.h b/src/forms/downloaddialog.h index a28dd92..9a74cf0 100644 --- a/src/forms/downloaddialog.h +++ b/src/forms/downloaddialog.h @@ -39,6 +39,9 @@ public: public slots: void addDownload(QWebEngineDownloadItem *item); +private slots: + void showItemDetails(int index); + private: Ui::DownloadDialog *ui; }; diff --git a/src/forms/downloaddialog.ui b/src/forms/downloaddialog.ui index 75a6faa..f9bc307 100644 --- a/src/forms/downloaddialog.ui +++ b/src/forms/downloaddialog.ui @@ -6,16 +6,63 @@ 0 0 - 640 + 820 480 - Dialog + Downloads - + + + + + + + + + 250 + 0 + + + + Details + + + + + + mime + + + + + + + + + + + + + + path + + + + + + + + + + + + + + -- cgit v1.2.1