19#include "ui_downloadoptionsdialog.h"
23#include <QMimeDatabase>
24#include <QWebEngineDownloadRequest>
29 , m_downloadItem(downloadItem)
30 , m_signalEmited(false)
34 ui->fileName->setText(
QSL(
"<b>") + fileName +
QSL(
"</b>"));
35 ui->fromServer->setText(m_downloadItem->url().host());
40 const QMimeType mime = db.mimeTypeForName(downloadItem->mimeType());
41 if (mime.isValid() && !mime.isDefault()) {
42 ui->mimeName->setText(mime.comment());
43 ui->iconLabel->setPixmap(QIcon::fromTheme(mime.iconName(), fileIcon).pixmap(22));
45 ui->mimeFrame->hide();
46 ui->iconLabel->setPixmap(fileIcon.pixmap(22));
49 setWindowTitle(tr(
"Opening %1").arg(fileName));
51 ui->buttonBox->setFocus();
54 connect(
this, &QDialog::finished,
this, &DownloadOptionsDialog::emitDialogFinished);
59 ui->radioExternal->setVisible(show);
64 ui->fromFrame->setVisible(show);
71 if (!ui->radioExternal->isHidden()) {
72 ui->radioExternal->setChecked(
true);
78 ui->radioOpen->setChecked(
true);
82 ui->radioSave->setChecked(
true);
92 int status = QDialog::exec();
95 if (ui->radioOpen->isChecked()) {
98 else if (ui->radioSave->isChecked()) {
101 else if (ui->radioExternal->isChecked()) {
109void DownloadOptionsDialog::copyDownloadLink()
111 QApplication::clipboard()->setText(m_downloadItem->url().toString());
112 ui->copyDownloadLink->setText(tr(
"Download link copied."));
115void DownloadOptionsDialog::emitDialogFinished(
int status)
118 if (ui->radioOpen->isChecked()) {
121 else if (ui->radioSave->isChecked()) {
124 else if (ui->radioExternal->isChecked()) {
129 m_signalEmited =
true;
135 if (!m_signalEmited) {
void showExternalManagerOption(bool show)
void showFromLine(bool show)
~DownloadOptionsDialog() override
void setLastDownloadOption(const DownloadManager::DownloadOption &option)
DownloadOptionsDialog(const QString &fileName, QWebEngineDownloadRequest *downloadItem, QWidget *parent=nullptr)
static IconProvider * instance()
static QIcon standardIcon(QStyle::StandardPixmap icon)