Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qlocalfileapi_p.h
Go to the documentation of this file.
1// Copyright (C) 2022 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef QLOCALFILEAPI_P_H
5#define QLOCALFILEAPI_P_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists purely as an
12// implementation detail. This header file may change from version to
13// version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include <private/qglobal_p.h>
19#include <qstringview.h>
20#include <emscripten/val.h>
21#include <cstdint>
22#include <functional>
23
25
26namespace LocalFileApi {
28{
29public:
30 class Accept {
31 public:
32 class MimeType {
33 public:
34 class Extension {
35 public:
36 static std::optional<Extension> fromQt(QStringView extension);
37
39
40 const QStringView &value() const { return m_value; }
41
42 private:
44
45 QStringView m_value;
46 };
47
50
51 void addExtension(Extension type);
52
53 const std::vector<Extension> &extensions() const { return m_extensions; }
54
55 private:
56 std::vector<Extension> m_extensions;
57 };
58
59 static std::optional<Accept> fromQt(QStringView type);
60
62
63 void setMimeType(MimeType mimeType);
64
65 const MimeType &mimeType() const { return m_mimeType; }
66
67 private:
68 Accept();
69 MimeType m_mimeType;
70 };
71
72 Type(QStringView description, std::optional<Accept> accept);
74
75 static std::optional<Type> fromQt(QStringView type);
76 const QStringView &description() const { return m_description; }
77 const std::optional<Accept> &accept() const { return m_accept; }
78
79private:
80 QStringView m_description;
81 std::optional<Accept> m_accept;
82};
83
84Q_AUTOTEST_EXPORT emscripten::val makeOpenFileOptions(const QStringList &filterList,
85 bool acceptMultiple);
86Q_AUTOTEST_EXPORT emscripten::val makeSaveFileOptions(const QStringList &filterList,
87 const std::string &suggestedName);
88
89Q_AUTOTEST_EXPORT std::string makeFileInputAccept(const QStringList &filterList);
90
91} // namespace LocalFileApi
93
94#endif // QLOCALFILEAPI_P_H
NSString * m_mimeType
const std::vector< Extension > & extensions() const
const MimeType & mimeType() const
const QStringView & description() const
const std::optional< Accept > & accept() const
\inmodule QtCore
\inmodule QtCore
Definition qstringview.h:78
void extension()
[6]
Definition dialogs.cpp:230
std::string makeFileInputAccept(const QStringList &filterList)
emscripten::val makeOpenFileOptions(const QStringList &filterList, bool acceptMultiple)
emscripten::val makeSaveFileOptions(const QStringList &filterList, const std::string &suggestedName)
Combined button and popup list for selecting options.
const char * mimeType
GLenum type
#define Q_AUTOTEST_EXPORT