diff --git a/src/plugins/qmldesignerbase/studio/studiosettingspage.cpp b/src/plugins/qmldesignerbase/studio/studiosettingspage.cpp index d88c4cf409b..d94efbd666b 100644 --- a/src/plugins/qmldesignerbase/studio/studiosettingspage.cpp +++ b/src/plugins/qmldesignerbase/studio/studiosettingspage.cpp @@ -178,15 +178,15 @@ void StudioSettingsPage::apply() QSettings *s = Core::ICore::settings(); const QString value = m_pathChooserExamples->filePath().toString(); - if (s->value(Paths::exampleDownloadPath, false).toString() != value) { - s->setValue(Paths::exampleDownloadPath, value); + if (s->value(Paths::exampleDownloadPath.toString(), false).toString() != value) { + s->setValue(Paths::exampleDownloadPath.toString(), value); emit examplesDownloadPathChanged(value); } const QString bundlesPath = m_pathChooserBundles->filePath().toString(); - if (s->value(Paths::bundlesDownloadPath).toString() != bundlesPath) { - s->setValue(Paths::bundlesDownloadPath, bundlesPath); + if (s->value(Paths::bundlesDownloadPath.toString()).toString() != bundlesPath) { + s->setValue(Paths::bundlesDownloadPath.toString(), bundlesPath); emit bundlesDownloadPathChanged(bundlesPath); const QString restartText = tr("Changing bundle path will take effect after restart."); diff --git a/src/plugins/qmldesignerbase/utils/designerpaths.cpp b/src/plugins/qmldesignerbase/utils/designerpaths.cpp index d4ae2a46456..53b4b7ea37e 100644 --- a/src/plugins/qmldesignerbase/utils/designerpaths.cpp +++ b/src/plugins/qmldesignerbase/utils/designerpaths.cpp @@ -31,14 +31,14 @@ Utils::FilePath defaultBundlesPath() QString examplesPathSetting() { return Core::ICore::settings() - ->value(exampleDownloadPath, defaultExamplesPath().toString()) + ->value(exampleDownloadPath.toString(), defaultExamplesPath().toString()) .toString(); } QString bundlesPathSetting() { return Core::ICore::settings() - ->value(bundlesDownloadPath, defaultBundlesPath().toString()) + ->value(bundlesDownloadPath.toString(), defaultBundlesPath().toString()) .toString(); } diff --git a/src/plugins/qmlprojectmanager/buildsystem/qmlbuildsystem.cpp b/src/plugins/qmlprojectmanager/buildsystem/qmlbuildsystem.cpp index 2b600210736..81a157f1b6f 100644 --- a/src/plugins/qmlprojectmanager/buildsystem/qmlbuildsystem.cpp +++ b/src/plugins/qmlprojectmanager/buildsystem/qmlbuildsystem.cpp @@ -37,6 +37,8 @@ #include "texteditor/textdocument.h" +#include + using namespace ProjectExplorer; namespace QmlProjectManager { diff --git a/src/plugins/qmlprojectmanager/qmlproject.cpp b/src/plugins/qmlprojectmanager/qmlproject.cpp index ce2f363cd41..31fa3429d21 100644 --- a/src/plugins/qmlprojectmanager/qmlproject.cpp +++ b/src/plugins/qmlprojectmanager/qmlproject.cpp @@ -248,7 +248,7 @@ bool QmlProject::allowOnlySingleProject() { QSettings *settings = Core::ICore::settings(); auto key = "QML/Designer/AllowMultipleProjects"; - return !settings->value(key, false).toBool(); + return !settings->value(QString::fromUtf8(key), false).toBool(); } } // namespace QmlProjectManager diff --git a/tests/auto/qml/qmlprojectmanager/fileformat/fileformat.qbs b/tests/auto/qml/qmlprojectmanager/fileformat/fileformat.qbs index 7abe08bf40b..f32bd21c05d 100644 --- a/tests/auto/qml/qmlprojectmanager/fileformat/fileformat.qbs +++ b/tests/auto/qml/qmlprojectmanager/fileformat/fileformat.qbs @@ -10,6 +10,8 @@ QtcAutotest { name: "Files from QmlProjectManager" prefix: product.fileFormatDir + '/' files: [ + "converters.cpp", + "converters.h", "filefilteritems.cpp", "filefilteritems.h", "qmlprojectitem.cpp", diff --git a/tests/auto/qml/qmlprojectmanager/fileformat/tst_fileformat.cpp b/tests/auto/qml/qmlprojectmanager/fileformat/tst_fileformat.cpp index bd7695b53db..b8b5f11dee7 100644 --- a/tests/auto/qml/qmlprojectmanager/fileformat/tst_fileformat.cpp +++ b/tests/auto/qml/qmlprojectmanager/fileformat/tst_fileformat.cpp @@ -2,8 +2,6 @@ // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only WITH Qt-GPL-exception-1.0 #include "qmlprojectitem.h" -#include "filefilteritems.h" -#include "qmlprojectfileformat.h" #include @@ -43,29 +41,27 @@ tst_FileFormat::tst_FileFormat() const QString testDataDir = QLatin1String(SRCDIR "/data"); const FilePath testDataDirPath = FilePath::fromString(testDataDir); -static std::unique_ptr loadQmlProject(QString name, QString *error) +static std::unique_ptr loadQmlProject(QString name) { - return QmlProjectFileFormat::parseProjectFile( - Utils::FilePath::fromString(testDataDir).pathAppended(name + ".qmlproject"), error); + return std::unique_ptr(new QmlProjectItem( + testDataDirPath.pathAppended(name + ".qmlproject"))); } void tst_FileFormat::testFileFilter() { - QString error; - // // Search for qml files in directory + subdirectories // { - auto project = loadQmlProject(QLatin1String("testFileFilter1"), &error); + auto project = loadQmlProject(QLatin1String("testFileFilter1")); QVERIFY(project); - QVERIFY(error.isEmpty()); + QVERIFY(!project->project().isEmpty()); - project->setSourceDirectory(testDataDirPath); - - QStringList expectedFiles(QStringList() << testDataDir + "/file1.qml" - << testDataDir + "/file2.qml" - << testDataDir + "/subdir/file3.qml"); + FilePaths expectedFiles{ + testDataDirPath / "file1.qml", + testDataDirPath / "file2.qml", + testDataDirPath / "subdir/file3.qml" + }; COMPARE_AS_SETS(project->files(), expectedFiles); } @@ -73,14 +69,11 @@ void tst_FileFormat::testFileFilter() // search for all qml files in directory // { - auto project = loadQmlProject(QLatin1String("testFileFilter2"), &error); + auto project = loadQmlProject(QLatin1String("testFileFilter2")); QVERIFY(project); - QVERIFY(error.isEmpty()); + QVERIFY(!project->project().isEmpty()); - project->setSourceDirectory(testDataDirPath); - - QStringList expectedFiles(QStringList() << testDataDir + "/file1.qml" - << testDataDir + "/file2.qml"); + FilePaths expectedFiles{ testDataDirPath / "file1.qml", testDataDirPath / "file2.qml" }; COMPARE_AS_SETS(project->files(), expectedFiles); } @@ -88,13 +81,11 @@ void tst_FileFormat::testFileFilter() // search for all qml files in subdirectory // { - auto project = loadQmlProject(QLatin1String("testFileFilter3"), &error); + auto project = loadQmlProject(QLatin1String("testFileFilter3")); QVERIFY(project); - QVERIFY(error.isEmpty()); + QVERIFY(!project->project().isEmpty()); - project->setSourceDirectory(testDataDirPath); - - QStringList expectedFiles(QStringList() << testDataDir + "/subdir/file3.qml"); + FilePaths expectedFiles{ testDataDirPath / "subdir/file3.qml" }; COMPARE_AS_SETS(project->files(), expectedFiles); } @@ -102,15 +93,15 @@ void tst_FileFormat::testFileFilter() // multiple entries // { - auto project = loadQmlProject(QLatin1String("testFileFilter4"), &error); + auto project = loadQmlProject(QLatin1String("testFileFilter4")); QVERIFY(project); - QVERIFY(error.isEmpty()); + QVERIFY(!project->project().isEmpty()); - project->setSourceDirectory(testDataDirPath); - - QStringList expectedFiles(QStringList() << testDataDir + "/file1.qml" - << testDataDir + "/file2.qml" - << testDataDir + "/subdir/file3.qml"); + FilePaths expectedFiles{ + testDataDirPath / "file1.qml", + testDataDirPath / "file2.qml", + testDataDirPath / "/subdir/file3.qml" + }; QCOMPARE(project->files().size(), 3); COMPARE_AS_SETS(project->files(), expectedFiles); } @@ -119,14 +110,11 @@ void tst_FileFormat::testFileFilter() // include specific list // { - auto project = loadQmlProject(QLatin1String("testFileFilter5"), &error); + auto project = loadQmlProject(QLatin1String("testFileFilter5")); QVERIFY(project); - QVERIFY(error.isEmpty()); + QVERIFY(!project->project().isEmpty()); - project->setSourceDirectory(testDataDirPath); - - QStringList expectedFiles(QStringList() << testDataDir + "/file1.qml" - << testDataDir + "/file2.qml"); + FilePaths expectedFiles{ testDataDirPath / "file1.qml", testDataDirPath / "file2.qml" }; COMPARE_AS_SETS(project->files(), expectedFiles); } @@ -134,13 +122,11 @@ void tst_FileFormat::testFileFilter() // include specific list // { - auto project = loadQmlProject(QLatin1String("testFileFilter6"), &error); + auto project = loadQmlProject(QLatin1String("testFileFilter6")); QVERIFY(project); - QVERIFY(error.isEmpty()); + QVERIFY(!project->project().isEmpty()); - project->setSourceDirectory(testDataDirPath); - - QStringList expectedFiles(QStringList() << testDataDir + "/image.gif"); + FilePaths expectedFiles{ testDataDirPath / "image.gif" }; COMPARE_AS_SETS(project->files(), expectedFiles); } @@ -148,13 +134,11 @@ void tst_FileFormat::testFileFilter() // use wildcards // { - auto project = loadQmlProject(QLatin1String("testFileFilter7"), &error); + auto project = loadQmlProject(QLatin1String("testFileFilter7")); QVERIFY(project); - QVERIFY(error.isEmpty()); + QVERIFY(!project->project().isEmpty()); - project->setSourceDirectory(testDataDirPath); - - QStringList expectedFiles(QStringList() << testDataDir + "/image.gif"); + FilePaths expectedFiles{ testDataDirPath / "image.gif" }; COMPARE_AS_SETS(project->files(), expectedFiles); } @@ -162,28 +146,23 @@ void tst_FileFormat::testFileFilter() // use Files element (1.1) // { - auto project = loadQmlProject(QLatin1String("testFileFilter8"), &error); + auto project = loadQmlProject(QLatin1String("testFileFilter8")); QVERIFY(project); - QVERIFY(error.isEmpty()); + QVERIFY(!project->project().isEmpty()); - project->setSourceDirectory(testDataDirPath); - - QStringList expectedFiles(QStringList() << testDataDir + "/image.gif"); + FilePaths expectedFiles{ testDataDirPath / "image.gif" }; COMPARE_AS_SETS(project->files(), expectedFiles); } } void tst_FileFormat::testMatchesFile() { - QString error; // // search for qml files in local directory // - auto project = loadQmlProject(QLatin1String("testMatchesFile"), &error); + auto project = loadQmlProject(QLatin1String("testMatchesFile")); QVERIFY(project); - QVERIFY(error.isEmpty()); - - project->setSourceDirectory(testDataDirPath); + QVERIFY(!project->project().isEmpty()); QVERIFY(project->matchesFile(testDataDir + "/file1.qml")); QVERIFY(project->matchesFile(testDataDir + "/notyetexistingfile.qml")); @@ -194,15 +173,12 @@ void tst_FileFormat::testMatchesFile() void tst_FileFormat::testLibraryPaths() { - QString error; // // search for qml files in local directory // - auto project = loadQmlProject(QLatin1String("testLibraryPaths"), &error); + auto project = loadQmlProject(QLatin1String("testLibraryPaths")); QVERIFY(project); - QVERIFY(error.isEmpty()); - - project->setSourceDirectory(testDataDirPath); + QVERIFY(!project->project().isEmpty()); const QDir base(testDataDir); const QStringList expectedPaths({base.relativeFilePath(SRCDIR "/otherLibrary"), @@ -212,13 +188,12 @@ void tst_FileFormat::testLibraryPaths() void tst_FileFormat::testMainFile() { - QString error; // // search for qml files in local directory // - auto project = loadQmlProject(QLatin1String("testMainFile"), &error); + auto project = loadQmlProject(QLatin1String("testMainFile")); QVERIFY(project); - QVERIFY(error.isEmpty()); + QVERIFY(!project->project().isEmpty()); QCOMPARE(project->mainFile(), QString("file1.qml")); }