summaryrefslogtreecommitdiff
path: root/Source/Core/DolphinQt/QtUtils/DolphinFileDialog.h
blob: 0f7956e8b9e90b7bb1673d4546fc5aa5aefcbbbd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
// Copyright 2021 Dolphin Emulator Project
// SPDX-License-Identifier: GPL-2.0-or-later

#pragma once

#include "Core/HotkeyManager.h"

#include <QFileDialog>
#include <QObject>
#include <QString>

namespace DolphinFileDialog
{
class HotkeyDisabler final
{
public:
  HotkeyDisabler() { HotkeyManagerEmu::Enable(false); }
  ~HotkeyDisabler() { HotkeyManagerEmu::Enable(true); }
};

QString getExistingDirectory(QWidget* parent = nullptr, const QString& caption = QString(),
                             const QString& dir = QString(),
                             QFileDialog::Options options = QFileDialog::ShowDirsOnly);

QString getOpenFileName(QWidget* parent = nullptr, const QString& caption = QString(),
                        const QString& dir = QString(), const QString& filter = QString(),
                        QString* selectedFilter = nullptr,
                        QFileDialog::Options options = QFileDialog::Options());

QStringList getOpenFileNames(QWidget* parent = nullptr, const QString& caption = QString(),
                             const QString& dir = QString(), const QString& filter = QString(),
                             QString* selectedFilter = nullptr,
                             QFileDialog::Options options = QFileDialog::Options());

QString getSaveFileName(QWidget* parent = nullptr, const QString& caption = QString(),
                        const QString& dir = QString(), const QString& filter = QString(),
                        QString* selectedFilter = nullptr,
                        QFileDialog::Options options = QFileDialog::Options());

}  // namespace DolphinFileDialog