3
0
mirror of https://github.com/Qortal/Brooklyn.git synced 2025-02-22 15:15:53 +00:00
Scare Crowe d2ebfd0519 QortalOS Titan 5.60.12
Screw the description like that inbred T3Q
2022-03-05 21:17:59 +05:00

53 lines
1.1 KiB
C++

/*
SPDX-FileCopyrightText: 2014 Eike Hein <hein@kde.org>
SPDX-License-Identifier: GPL-2.0-or-later
*/
#include "directorypicker.h"
#include <QFileDialog>
#include <QStandardPaths>
#include <KLocalizedString>
DirectoryPicker::DirectoryPicker(QObject *parent)
: QObject(parent)
{
}
DirectoryPicker::~DirectoryPicker()
{
delete m_dialog;
}
QUrl DirectoryPicker::url() const
{
return m_url;
}
void DirectoryPicker::open()
{
if (!m_dialog) {
m_dialog = new QFileDialog(nullptr, i18n("Select Folder"), QStandardPaths::standardLocations(QStandardPaths::HomeLocation).at(0));
m_dialog->setFileMode(QFileDialog::Directory);
m_dialog->setOption(QFileDialog::ShowDirsOnly, true);
connect(m_dialog, &QDialog::accepted, this, &DirectoryPicker::dialogAccepted);
}
m_dialog->show();
m_dialog->raise();
m_dialog->activateWindow();
}
void DirectoryPicker::dialogAccepted()
{
const QList<QUrl> &urls = m_dialog->selectedUrls();
if (!urls.isEmpty()) {
m_url = urls.at(0);
Q_EMIT urlChanged();
}
}