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
qxdgdesktopportalfiledialog_p.h
Go to the documentation of this file.
1
// Copyright (C) 2017-2018 Red Hat, Inc
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
// Qt-Security score:significant reason:default
4
#
ifndef
QXDGDESKTOPPORTALFILEDIALOG_P_H
5
#
define
QXDGDESKTOPPORTALFILEDIALOG_P_H
6
7
#
include
<
qpa
/
qplatformdialoghelper
.
h
>
8
#
include
<
QList
>
9
10
QT_BEGIN_NAMESPACE
11
12
class
QXdgDesktopPortalFileDialogPrivate;
13
14
class
QXdgDesktopPortalFileDialog
:
public
QPlatformFileDialogHelper
15
{
16
Q_OBJECT
17
Q_DECLARE_PRIVATE(
QXdgDesktopPortalFileDialog
)
18
public
:
19
enum
FallbackType
{
20
GenericFallback
,
21
OpenFallback
22
};
23
24
enum
ConditionType
:
uint
{
25
GlobalPattern
= 0,
26
MimeType
= 1
27
};
28
// Filters a(sa(us))
29
// Example: [('Images', [(0, '*.ico'), (1, 'image/png')]), ('Text', [(0, '*.txt')])]
30
struct
FilterCondition
{
31
ConditionType
type
;
32
QString
pattern
;
// E.g. '*ico' or 'image/png'
33
};
34
typedef
QList
<
FilterCondition
>
FilterConditionList
;
35
36
struct
Filter
{
37
QString
name
;
// E.g. 'Images' or 'Text
38
FilterConditionList
filterConditions
;;
// E.g. [(0, '*.ico'), (1, 'image/png')] or [(0, '*.txt')]
39
};
40
typedef
QList
<
Filter
>
FilterList
;
41
42
QXdgDesktopPortalFileDialog
(QPlatformFileDialogHelper *nativeFileDialog =
nullptr
, uint fileChooserPortalVersion = 0);
43
~
QXdgDesktopPortalFileDialog
();
44
45
bool
defaultNameFilterDisables
()
const
override
;
46
QUrl
directory
()
const
override
;
47
void
setDirectory
(
const
QUrl &directory)
override
;
48
void
selectFile
(
const
QUrl &filename)
override
;
49
QList
<
QUrl
>
selectedFiles
()
const
override
;
50
void
setFilter
()
override
;
51
void
selectNameFilter
(
const
QString &filter)
override
;
52
QString
selectedNameFilter
()
const
override
;
53
void
selectMimeTypeFilter
(
const
QString &filter)
override
;
54
QString
selectedMimeTypeFilter
()
const
override
;
55
56
void
exec
()
override
;
57
bool
show
(Qt::WindowFlags windowFlags, Qt::WindowModality windowModality, QWindow *parent)
override
;
58
void
hide
()
override
;
59
60
private
Q_SLOTS
:
61
void
gotResponse
(
uint
response
,
const
QVariantMap
&
results
);
62
63
private
:
64
void
initializeDialog();
65
void
openPortal(Qt::WindowFlags windowFlags, Qt::WindowModality windowModality, QWindow *parent);
66
bool
useNativeFileDialog(FallbackType fallbackType = GenericFallback)
const
;
67
68
QScopedPointer<QXdgDesktopPortalFileDialogPrivate> d_ptr;
69
};
70
71
QT_END_NAMESPACE
72
73
Q_DECLARE_METATYPE
(
QXdgDesktopPortalFileDialog
::
FilterCondition
);
74
Q_DECLARE_METATYPE
(
QXdgDesktopPortalFileDialog
::
FilterConditionList
);
75
Q_DECLARE_METATYPE
(
QXdgDesktopPortalFileDialog
::
Filter
);
76
Q_DECLARE_METATYPE
(
QXdgDesktopPortalFileDialog
::
FilterList
);
77
78
#
endif
// QXDGDESKTOPPORTALFILEDIALOG_P_H
QXdgDesktopPortalFileDialogPrivate
Definition
qxdgdesktopportalfiledialog.cpp:75
QXdgDesktopPortalFileDialogPrivate::failedToOpen
bool failedToOpen
Definition
qxdgdesktopportalfiledialog.cpp:95
QXdgDesktopPortalFileDialogPrivate::userVisibleToNameFilter
QMap< QString, QString > userVisibleToNameFilter
Definition
qxdgdesktopportalfiledialog.cpp:89
QXdgDesktopPortalFileDialogPrivate::directoryMode
bool directoryMode
Definition
qxdgdesktopportalfiledialog.cpp:96
QXdgDesktopPortalFileDialogPrivate::loop
QEventLoop loop
Definition
qxdgdesktopportalfiledialog.cpp:82
QXdgDesktopPortalFileDialogPrivate::nativeFileDialog
std::unique_ptr< QPlatformFileDialogHelper > nativeFileDialog
Definition
qxdgdesktopportalfiledialog.cpp:93
QXdgDesktopPortalFileDialogPrivate::saveFile
bool saveFile
Definition
qxdgdesktopportalfiledialog.cpp:98
QXdgDesktopPortalFileDialogPrivate::multipleFiles
bool multipleFiles
Definition
qxdgdesktopportalfiledialog.cpp:97
QXdgDesktopPortalFileDialogPrivate::selectedFiles
QStringList selectedFiles
Definition
qxdgdesktopportalfiledialog.cpp:92
QXdgDesktopPortalFileDialogPrivate::fileChooserPortalVersion
uint fileChooserPortalVersion
Definition
qxdgdesktopportalfiledialog.cpp:94
QXdgDesktopPortalFileDialogPrivate::selectedMimeTypeFilter
QString selectedMimeTypeFilter
Definition
qxdgdesktopportalfiledialog.cpp:90
QXdgDesktopPortalFileDialogPrivate::title
QString title
Definition
qxdgdesktopportalfiledialog.cpp:85
QXdgDesktopPortalFileDialogPrivate::QXdgDesktopPortalFileDialogPrivate
QXdgDesktopPortalFileDialogPrivate(QPlatformFileDialogHelper *nativeFileDialog, uint fileChooserPortalVersion)
Definition
qxdgdesktopportalfiledialog.cpp:77
QXdgDesktopPortalFileDialogPrivate::acceptLabel
QString acceptLabel
Definition
qxdgdesktopportalfiledialog.cpp:83
QXdgDesktopPortalFileDialogPrivate::selectedNameFilter
QString selectedNameFilter
Definition
qxdgdesktopportalfiledialog.cpp:91
QXdgDesktopPortalFileDialogPrivate::nameFilters
QStringList nameFilters
Definition
qxdgdesktopportalfiledialog.cpp:86
QXdgDesktopPortalFileDialogPrivate::mimeTypesFilters
QStringList mimeTypesFilters
Definition
qxdgdesktopportalfiledialog.cpp:87
QXdgDesktopPortalFileDialogPrivate::directory
QUrl directory
Definition
qxdgdesktopportalfiledialog.cpp:84
QXdgDesktopPortalFileDialog
Definition
qxdgdesktopportalfiledialog_p.h:15
QXdgDesktopPortalFileDialog::selectedNameFilter
QString selectedNameFilter() const override
Definition
qxdgdesktopportalfiledialog.cpp:396
QXdgDesktopPortalFileDialog::selectNameFilter
void selectNameFilter(const QString &filter) override
Definition
qxdgdesktopportalfiledialog.cpp:386
QXdgDesktopPortalFileDialog::ConditionType
ConditionType
Definition
qxdgdesktopportalfiledialog_p.h:24
QXdgDesktopPortalFileDialog::GlobalPattern
@ GlobalPattern
Definition
qxdgdesktopportalfiledialog_p.h:25
QXdgDesktopPortalFileDialog::MimeType
@ MimeType
Definition
qxdgdesktopportalfiledialog_p.h:26
QXdgDesktopPortalFileDialog::selectedMimeTypeFilter
QString selectedMimeTypeFilter() const override
Definition
qxdgdesktopportalfiledialog.cpp:380
QXdgDesktopPortalFileDialog::FilterConditionList
QList< FilterCondition > FilterConditionList
Definition
qxdgdesktopportalfiledialog_p.h:34
QXdgDesktopPortalFileDialog::hide
void hide() override
Definition
qxdgdesktopportalfiledialog.cpp:415
QXdgDesktopPortalFileDialog::setFilter
void setFilter() override
Definition
qxdgdesktopportalfiledialog.cpp:361
QXdgDesktopPortalFileDialog::defaultNameFilterDisables
bool defaultNameFilterDisables() const override
Definition
qxdgdesktopportalfiledialog.cpp:308
QXdgDesktopPortalFileDialog::show
bool show(Qt::WindowFlags windowFlags, Qt::WindowModality windowModality, QWindow *parent) override
Definition
qxdgdesktopportalfiledialog.cpp:423
QXdgDesktopPortalFileDialog::selectMimeTypeFilter
void selectMimeTypeFilter(const QString &filter) override
Definition
qxdgdesktopportalfiledialog.cpp:371
QXdgDesktopPortalFileDialog::~QXdgDesktopPortalFileDialog
~QXdgDesktopPortalFileDialog()
Definition
qxdgdesktopportalfiledialog.cpp:116
QXdgDesktopPortalFileDialog::setDirectory
void setDirectory(const QUrl &directory) override
Definition
qxdgdesktopportalfiledialog.cpp:313
QXdgDesktopPortalFileDialog::selectFile
void selectFile(const QUrl &filename) override
Definition
qxdgdesktopportalfiledialog.cpp:335
QXdgDesktopPortalFileDialog::directory
QUrl directory() const override
Definition
qxdgdesktopportalfiledialog.cpp:325
QXdgDesktopPortalFileDialog::exec
void exec() override
Definition
qxdgdesktopportalfiledialog.cpp:402
QXdgDesktopPortalFileDialog::QXdgDesktopPortalFileDialog
QXdgDesktopPortalFileDialog(QPlatformFileDialogHelper *nativeFileDialog=nullptr, uint fileChooserPortalVersion=0)
Definition
qxdgdesktopportalfiledialog.cpp:101
QXdgDesktopPortalFileDialog::selectedFiles
QList< QUrl > selectedFiles() const override
Definition
qxdgdesktopportalfiledialog.cpp:347
QXdgDesktopPortalFileDialog::FilterList
QList< Filter > FilterList
Definition
qxdgdesktopportalfiledialog_p.h:40
operator>>
const QDBusArgument & operator>>(const QDBusArgument &argument, QXdgDBusImageVector &iconVector)
Definition
qdbustraytypes.cpp:130
operator<<
QTextStream & operator<<(QTextStream &s, QTextStreamFunction f)
Definition
qtextstream.h:212
operator<<
QDBusArgument & operator<<(QDBusArgument &arg, const QXdgDesktopPortalFileDialog::FilterCondition &filterCondition)
Definition
qxdgdesktopportalfiledialog.cpp:32
operator>>
const QDBusArgument & operator>>(const QDBusArgument &arg, QXdgDesktopPortalFileDialog::FilterCondition &filterCondition)
Definition
qxdgdesktopportalfiledialog.cpp:40
Q_DECLARE_METATYPE
Q_DECLARE_METATYPE(QXdgDesktopPortalFileDialog::FilterList)
Q_DECLARE_METATYPE
Q_DECLARE_METATYPE(QXdgDesktopPortalFileDialog::FilterConditionList)
Q_DECLARE_METATYPE
Q_DECLARE_METATYPE(QXdgDesktopPortalFileDialog::Filter)
Q_DECLARE_METATYPE
QT_END_NAMESPACE Q_DECLARE_METATYPE(QXdgDesktopPortalFileDialog::FilterCondition)
QXdgDesktopPortalFileDialog::FilterCondition
Definition
qxdgdesktopportalfiledialog_p.h:30
QXdgDesktopPortalFileDialog::FilterCondition::pattern
QString pattern
Definition
qxdgdesktopportalfiledialog_p.h:32
QXdgDesktopPortalFileDialog::FilterCondition::type
ConditionType type
Definition
qxdgdesktopportalfiledialog_p.h:31
QXdgDesktopPortalFileDialog::Filter
Definition
qxdgdesktopportalfiledialog_p.h:36
QXdgDesktopPortalFileDialog::Filter::filterConditions
FilterConditionList filterConditions
Definition
qxdgdesktopportalfiledialog_p.h:38
QXdgDesktopPortalFileDialog::Filter::name
QString name
Definition
qxdgdesktopportalfiledialog_p.h:37
qtbase
src
plugins
platformthemes
xdgdesktopportal
qxdgdesktopportalfiledialog_p.h
Generated on
for Qt by
1.14.0