28std::unique_ptr<QPlatformDialogHelper> QQuickDialogImplFactory::createPlatformDialogHelper(QQuickDialogType type, QObject *parent)
30 std::unique_ptr<QPlatformDialogHelper> dialogHelper;
32 case QQuickDialogType::ColorDialog: {
33 auto *quickPlatformDialog =
new QQuickPlatformColorDialog(parent);
34 if (quickPlatformDialog->isValid())
35 dialogHelper.reset(quickPlatformDialog);
38#if QT_CONFIG(quick_listview) && QT_CONFIG(quick_draganddrop)
39 case QQuickDialogType::FileDialog: {
40 auto *quickPlatformDialog =
new QQuickPlatformFileDialog(parent);
41 if (quickPlatformDialog->isValid())
42 dialogHelper.reset(quickPlatformDialog);
45 case QQuickDialogType::FolderDialog: {
46 auto *quickPlatformDialog =
new QQuickPlatformFolderDialog(parent);
47 if (quickPlatformDialog->isValid())
48 dialogHelper.reset(quickPlatformDialog);
51 case QQuickDialogType::FontDialog: {
52 auto *quickPlatformDialog =
new QQuickPlatformFontDialog(parent);
53 if (quickPlatformDialog->isValid())
54 dialogHelper.reset(quickPlatformDialog);
58 case QQuickDialogType::MessageDialog: {
59 auto *quickPlatformDialog =
new QQuickPlatformMessageDialog(parent);
60 if (quickPlatformDialog->isValid())
61 dialogHelper.reset(quickPlatformDialog);