Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qwasmfiledialoghelper.h
Go to the documentation of this file.
1// Copyright (C) 2025 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
3
4#ifndef QWASMFILEDIALOGHELPER_H
5#define QWASMFILEDIALOGHELPER_H
6
7#include <QtCore/QObject>
8#include <QtCore/QUrl>
9#include <QtCore/QEventLoop>
10#include <QtGui/qpa/qplatformdialoghelper.h>
11#include <QtGui/private/qwasmlocalfileaccess_p.h>
12
13QT_BEGIN_NAMESPACE
14
15class QWasmFileDialogHelper : public QPlatformFileDialogHelper
16{
17 Q_OBJECT
18public:
19 QWasmFileDialogHelper();
20 ~QWasmFileDialogHelper();
21public:
22 virtual void exec() override;
23 virtual bool show(Qt::WindowFlags windowFlags,
24 Qt::WindowModality windowModality,
25 QWindow *parent) override;
26 virtual void hide() override;
27 virtual bool defaultNameFilterDisables() const override;
28 virtual void setDirectory(const QUrl &directory) override;
29 virtual QUrl directory() const override;
30 virtual void selectFile(const QUrl &filename) override;
31 virtual QList<QUrl> selectedFiles() const override;
32 virtual void setFilter() override;
33 virtual void selectNameFilter(const QString &filter) override;
34 virtual QString selectedNameFilter() const override;
35 static QStringList cleanFilterList(const QString &filter);
36signals:
37 void fileDone(const QUrl &);
38private:
39 void showFileDialog();
40 void onOpenDialogClosed(bool accepted, std::vector<qstdweb::File> files);
41 void onSaveDialogClosed(bool accepted, qstdweb::FileSystemFileHandle file);
42
43 QList<QUrl> m_selectedFiles;
44 QEventLoop *m_eventLoop;
45};
46
48
49#endif // QWASMFILEDIALOGHELPER_H
Combined button and popup list for selecting options.