summaryrefslogtreecommitdiffstats
path: root/tests/manual/dialogs/filedialogpanel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/manual/dialogs/filedialogpanel.cpp')
-rw-r--r--tests/manual/dialogs/filedialogpanel.cpp49
1 files changed, 17 insertions, 32 deletions
diff --git a/tests/manual/dialogs/filedialogpanel.cpp b/tests/manual/dialogs/filedialogpanel.cpp
index e234835cdb..2ae6241849 100644
--- a/tests/manual/dialogs/filedialogpanel.cpp
+++ b/tests/manual/dialogs/filedialogpanel.cpp
@@ -40,6 +40,7 @@
****************************************************************************/
#include "filedialogpanel.h"
+#include "utils.h"
#include <QGridLayout>
#include <QVBoxLayout>
@@ -48,7 +49,6 @@
#include <QFormLayout>
#include <QSpacerItem>
#include <QGroupBox>
-#include <QComboBox>
#include <QPushButton>
#include <QCheckBox>
#include <QLineEdit>
@@ -60,25 +60,19 @@
#include <QTimer>
#include <QDebug>
-struct ComboData
-{
- const char *description;
- int value;
-};
-
-const ComboData acceptModeComboData[] =
+const FlagData acceptModeComboData[] =
{
{"AcceptOpen", QFileDialog::AcceptOpen },
{"AcceptSave", QFileDialog::AcceptSave }
};
-const ComboData viewModeComboData[] =
+const FlagData viewModeComboData[] =
{
{"Detail", QFileDialog::Detail},
{"List", QFileDialog::List}
};
-const ComboData fileModeComboData[] =
+const FlagData fileModeComboData[] =
{
{"AnyFile", QFileDialog::AnyFile},
{"ExistingFile", QFileDialog::ExistingFile},
@@ -87,25 +81,6 @@ const ComboData fileModeComboData[] =
{"DirectoryOnly", QFileDialog::DirectoryOnly}
};
-static QComboBox *createCombo(QWidget *parent, const ComboData *d, size_t size)
-{
- QComboBox *c = new QComboBox(parent);
- for (size_t i = 0; i < size; ++i)
- c->addItem(QLatin1String(d[i].description), QVariant(d[i].value));
- return c;
-}
-
-template <class Enum>
-Enum comboBoxValue(const QComboBox *c)
-{
- return static_cast<Enum>(c->itemData(c->currentIndex()).toInt());
-}
-
-inline void setComboBoxValue(QComboBox *c, int v)
-{
- c->setCurrentIndex(c->findData(QVariant(v)));
-}
-
static inline QPushButton *addButton(const QString &description, QGridLayout *layout,
int &row, int column, QObject *receiver, const char *slotFunc)
{
@@ -155,9 +130,9 @@ FileDialogPanel::FileDialogPanel(QWidget *parent)
, m_resolveSymLinks(new QCheckBox(tr("Resolve symlinks")))
, m_native(new QCheckBox(tr("Use native dialog")))
, m_customDirIcons(new QCheckBox(tr("Don't use custom directory icons")))
- , m_acceptMode(createCombo(this, acceptModeComboData, sizeof(acceptModeComboData)/sizeof(ComboData)))
- , m_fileMode(createCombo(this, fileModeComboData, sizeof(fileModeComboData)/sizeof(ComboData)))
- , m_viewMode(createCombo(this, viewModeComboData, sizeof(viewModeComboData)/sizeof(ComboData)))
+ , m_acceptMode(createCombo(this, acceptModeComboData, sizeof(acceptModeComboData)/sizeof(FlagData)))
+ , m_fileMode(createCombo(this, fileModeComboData, sizeof(fileModeComboData)/sizeof(FlagData)))
+ , m_viewMode(createCombo(this, viewModeComboData, sizeof(viewModeComboData)/sizeof(FlagData)))
, m_allowedSchemes(new QLineEdit(this))
, m_defaultSuffix(new QLineEdit(this))
, m_directory(new QLineEdit(this))
@@ -355,6 +330,7 @@ void FileDialogPanel::getOpenFileNames()
void FileDialogPanel::getOpenFileUrls()
{
+#if QT_VERSION >= 0x050000
QString selectedFilter = m_selectedNameFilter->text().trimmed();
const QList<QUrl> files =
QFileDialog::getOpenFileUrls(this, tr("getOpenFileNames Qt %1").arg(QLatin1String(QT_VERSION_STR)),
@@ -367,6 +343,7 @@ void FileDialogPanel::getOpenFileUrls()
<< "\nName filter: " << selectedFilter;
QMessageBox::information(this, tr("getOpenFileNames"), result, QMessageBox::Ok);
}
+#endif // Qt 5
}
void FileDialogPanel::getOpenFileName()
@@ -386,6 +363,7 @@ void FileDialogPanel::getOpenFileName()
void FileDialogPanel::getOpenFileUrl()
{
+#if QT_VERSION >= 0x050000
QString selectedFilter = m_selectedNameFilter->text().trimmed();
const QUrl file =
QFileDialog::getOpenFileUrl(this, tr("getOpenFileUrl Qt %1").arg(QLatin1String(QT_VERSION_STR)),
@@ -398,6 +376,7 @@ void FileDialogPanel::getOpenFileUrl()
<< "\nName filter: " << selectedFilter;
QMessageBox::information(this, tr("getOpenFileName"), result, QMessageBox::Ok);
}
+#endif // Qt 5
}
void FileDialogPanel::getSaveFileName()
@@ -417,6 +396,7 @@ void FileDialogPanel::getSaveFileName()
void FileDialogPanel::getSaveFileUrl()
{
+#if QT_VERSION >= 0x050000
QString selectedFilter = m_selectedNameFilter->text().trimmed();
const QUrl file =
QFileDialog::getSaveFileUrl(this, tr("getSaveFileName Qt %1").arg(QLatin1String(QT_VERSION_STR)),
@@ -429,6 +409,7 @@ void FileDialogPanel::getSaveFileUrl()
<< "\nName filter: " << selectedFilter;
QMessageBox::information(this, tr("getSaveFileNames"), result, QMessageBox::Ok);
}
+#endif // Qt 5
}
void FileDialogPanel::getExistingDirectory()
@@ -442,12 +423,14 @@ void FileDialogPanel::getExistingDirectory()
void FileDialogPanel::getExistingDirectoryUrl()
{
+#if QT_VERSION >= 0x050000
const QUrl dir =
QFileDialog::getExistingDirectoryUrl(this, tr("getExistingDirectory Qt %1").arg(QLatin1String(QT_VERSION_STR)),
QUrl(m_directory->text()), options() | QFileDialog::ShowDirsOnly,
allowedSchemes());
if (!dir.isEmpty())
QMessageBox::information(this, tr("getExistingDirectory"), QLatin1String("Directory: ") + dir.toString(), QMessageBox::Ok);
+#endif // Qt 5
}
void FileDialogPanel::restoreDefaults()
@@ -493,9 +476,11 @@ void FileDialogPanel::applySettings(QFileDialog *d) const
if (!filter.isEmpty())
d->selectNameFilter(filter);
} else {
+#if QT_VERSION >= 0x050000
d->setMimeTypeFilters(filters);
if (!filter.isEmpty())
d->selectMimeTypeFilter(filter);
+#endif // Qt 5
}
foreach (LabelLineEdit *l, m_labelLineEdits)
l->apply(d);