/* * This file is part of the KDE project * * SPDX-FileCopyrightText: 2010-2011 Alejandro Fiestas Olivares * SPDX-FileCopyrightText: 2010-2011 UFO Coders * * SPDX-License-Identifier: LGPL-2.0-or-later */ #include "selectdeviceandfilespage.h" #include "../discoverwidget.h" #include "../sendfilewizard.h" #include #include #include #include #include #include #include #include SelectDeviceAndFilesPage::SelectDeviceAndFilesPage(SendFileWizard *wizard) : QWizardPage(wizard) , m_wizard(wizard) { setupUi(this); DiscoverWidget *widget = new DiscoverWidget(m_wizard->manager(), this); widget->setContentsMargins(0, 0, 0, 0); discoverLayout->addWidget(widget); int buttonSize = selectBtn->sizeHint().height(); selectBtn->setFixedSize(buttonSize, buttonSize); selectBtn->setIcon(QIcon::fromTheme(QStringLiteral("document-open"))); connect(widget, &DiscoverWidget::deviceSelected, this, &SelectDeviceAndFilesPage::deviceSelected); connect(selectBtn, &QPushButton::clicked, this, &SelectDeviceAndFilesPage::openFileDialog); } void SelectDeviceAndFilesPage::deviceSelected(BluezQt::DevicePtr device) { static_cast(wizard())->setDevice(device); Q_EMIT completeChanged(); } void SelectDeviceAndFilesPage::openFileDialog() { const QStringList &files = QFileDialog::getOpenFileNames(this, // i18n("Open file…"), QStandardPaths::writableLocation(QStandardPaths::HomeLocation), QStringLiteral("*")); if (files.isEmpty()) { selectLbl->setText(i18n("Select one or more files:")); } else { QStringList fileNames; for (const QString &file : files) { QFileInfo info(file); fileNames.append(info.fileName()); } selectLbl->setText(i18n("Selected files: %1", fileNames.join(QStringLiteral(", ")))); } m_wizard->setFiles(files); Q_EMIT completeChanged(); } bool SelectDeviceAndFilesPage::isComplete() const { if (!m_wizard->device()) { return false; } if (m_wizard->files().isEmpty()) { return false; } return true; } #include "moc_selectdeviceandfilespage.cpp"