aboutsummaryrefslogtreecommitdiff
path: root/src/plugins/FileDialogs/QmmpFileDialog
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/FileDialogs/QmmpFileDialog')
-rw-r--r--src/plugins/FileDialogs/QmmpFileDialog/qmmpfiledialog.cpp12
-rw-r--r--src/plugins/FileDialogs/QmmpFileDialog/qmmpfiledialog.h4
-rw-r--r--src/plugins/FileDialogs/QmmpFileDialog/qmmpfiledialogimpl.h2
3 files changed, 17 insertions, 1 deletions
diff --git a/src/plugins/FileDialogs/QmmpFileDialog/qmmpfiledialog.cpp b/src/plugins/FileDialogs/QmmpFileDialog/qmmpfiledialog.cpp
index 871337e8f..dce394398 100644
--- a/src/plugins/FileDialogs/QmmpFileDialog/qmmpfiledialog.cpp
+++ b/src/plugins/FileDialogs/QmmpFileDialog/qmmpfiledialog.cpp
@@ -56,6 +56,18 @@ void QmmpFileDialog::raise(const QString &dir, Mode mode, const QString &caption
m_dialog->raise();
}
+QString QmmpFileDialog::existingDirectory(QWidget *parent, const QString &caption, const QString &dir)
+{
+ QmmpFileDialogImpl *dialog = new QmmpFileDialogImpl(parent);
+ dialog->setWindowTitle(caption);
+ dialog->setModeAndMask(dir, FileDialog::AddDir);
+ QStringList l;
+ if (dialog->exec() == QDialog::Accepted)
+ l = dialog->selectedFiles();
+ dialog->deleteLater();
+ return l.isEmpty() ? QString() : l.at(0);
+}
+
QString QmmpFileDialog::openFileName(QWidget *parent, const QString &caption,
const QString &dir, const QString &filter, QString*)
{
diff --git a/src/plugins/FileDialogs/QmmpFileDialog/qmmpfiledialog.h b/src/plugins/FileDialogs/QmmpFileDialog/qmmpfiledialog.h
index d05cdb609..6fdc9f28b 100644
--- a/src/plugins/FileDialogs/QmmpFileDialog/qmmpfiledialog.h
+++ b/src/plugins/FileDialogs/QmmpFileDialog/qmmpfiledialog.h
@@ -39,6 +39,10 @@ public:
const QString &caption = QString(),
const QStringList &mask = QStringList());
+ QString existingDirectory(QWidget *parent = 0,
+ const QString &caption = QString(),
+ const QString &dir = QString());
+
QString openFileName(QWidget *parent = 0,
const QString &caption = QString(),
const QString &dir = QString(),
diff --git a/src/plugins/FileDialogs/QmmpFileDialog/qmmpfiledialogimpl.h b/src/plugins/FileDialogs/QmmpFileDialog/qmmpfiledialogimpl.h
index 443e54c5a..76eb1f4e0 100644
--- a/src/plugins/FileDialogs/QmmpFileDialog/qmmpfiledialogimpl.h
+++ b/src/plugins/FileDialogs/QmmpFileDialog/qmmpfiledialogimpl.h
@@ -42,7 +42,7 @@ public:
~QmmpFileDialogImpl();
- void setModeAndMask(const QString&,FileDialog::Mode m, const QStringList& mask);
+ void setModeAndMask(const QString&,FileDialog::Mode m, const QStringList& mask = QStringList());
QStringList selectedFiles ();
protected slots: