forked from qt-creator/qt-creator
Let QmlProjectItem return always absolute paths
We're converting the path to absolute ones in QmlProject anyway ...
This commit is contained in:
@@ -93,12 +93,12 @@ void FileFilterBaseItem::updateFileList()
|
|||||||
|
|
||||||
if (newFiles != m_files) {
|
if (newFiles != m_files) {
|
||||||
// update watched files
|
// update watched files
|
||||||
foreach (const QString &file, m_files - newFiles) {
|
const QSet<QString> unwatchFiles = QSet<QString>(m_files - newFiles);
|
||||||
m_fsWatcher.removePath(QDir(projectDir).absoluteFilePath(file));
|
const QSet<QString> watchFiles = QSet<QString>(newFiles - m_files);
|
||||||
}
|
if (!unwatchFiles.isEmpty())
|
||||||
foreach (const QString &file, newFiles - m_files) {
|
m_fsWatcher.removePaths(unwatchFiles.toList());
|
||||||
m_fsWatcher.addPath(QDir(projectDir).absoluteFilePath(file));
|
if (!watchFiles.isEmpty())
|
||||||
}
|
m_fsWatcher.addPaths(QSet<QString>(newFiles - m_files).toList());
|
||||||
|
|
||||||
m_files = newFiles;
|
m_files = newFiles;
|
||||||
|
|
||||||
@@ -106,13 +106,13 @@ void FileFilterBaseItem::updateFileList()
|
|||||||
}
|
}
|
||||||
|
|
||||||
// update watched directories
|
// update watched directories
|
||||||
QSet<QString> watchedDirectories = m_fsWatcher.directories().toSet();
|
const QSet<QString> watchedDirectories = m_fsWatcher.directories().toSet();
|
||||||
foreach (const QString &dir, watchedDirectories - dirsToBeWatched) {
|
const QSet<QString> unwatchDirs = watchedDirectories - dirsToBeWatched;
|
||||||
m_fsWatcher.removePath(QDir(projectDir).absoluteFilePath(dir));
|
const QSet<QString> watchDirs = dirsToBeWatched - watchedDirectories;
|
||||||
}
|
if (!unwatchDirs.isEmpty())
|
||||||
foreach (const QString &dir, dirsToBeWatched - watchedDirectories) {
|
m_fsWatcher.removePaths(unwatchDirs.toList());
|
||||||
m_fsWatcher.addPath(QDir(projectDir).absoluteFilePath(dir));
|
if (!watchDirs.isEmpty())
|
||||||
}
|
m_fsWatcher.addPaths(watchDirs.toList());
|
||||||
}
|
}
|
||||||
|
|
||||||
QSet<QString> FileFilterBaseItem::filesInSubTree(const QDir &rootDir, const QDir &dir, QSet<QString> *parsedDirs)
|
QSet<QString> FileFilterBaseItem::filesInSubTree(const QDir &rootDir, const QDir &dir, QSet<QString> *parsedDirs)
|
||||||
@@ -124,7 +124,7 @@ QSet<QString> FileFilterBaseItem::filesInSubTree(const QDir &rootDir, const QDir
|
|||||||
|
|
||||||
foreach (const QFileInfo &file, dir.entryInfoList(QDir::Files)) {
|
foreach (const QFileInfo &file, dir.entryInfoList(QDir::Files)) {
|
||||||
if (m_regex.exactMatch(file.fileName())) {
|
if (m_regex.exactMatch(file.fileName())) {
|
||||||
fileSet.insert(rootDir.relativeFilePath(file.absoluteFilePath()));
|
fileSet.insert(file.absoluteFilePath());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -78,6 +78,7 @@ void QmlProjectItem::setSourceDirectory(const QString &directoryPath)
|
|||||||
emit sourceDirectoryChanged();
|
emit sourceDirectoryChanged();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* Returns list of absolute paths */
|
||||||
QStringList QmlProjectItem::qmlFiles() const
|
QStringList QmlProjectItem::qmlFiles() const
|
||||||
{
|
{
|
||||||
const Q_D(QmlProjectItem);
|
const Q_D(QmlProjectItem);
|
||||||
|
|||||||
@@ -49,7 +49,8 @@ void TestProject::testQmlFileFilter()
|
|||||||
|
|
||||||
project->setSourceDirectory(testDataDir);
|
project->setSourceDirectory(testDataDir);
|
||||||
|
|
||||||
QStringList expectedFiles(QStringList() << "file1.qml" << "file2.qml");
|
QStringList expectedFiles(QStringList() << testDataDir + "/file1.qml"
|
||||||
|
<< testDataDir + "/file2.qml");
|
||||||
QCOMPARE(project->qmlFiles().toSet(), expectedFiles.toSet());
|
QCOMPARE(project->qmlFiles().toSet(), expectedFiles.toSet());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -75,7 +76,9 @@ void TestProject::testQmlFileFilter()
|
|||||||
|
|
||||||
project->setSourceDirectory(testDataDir);
|
project->setSourceDirectory(testDataDir);
|
||||||
|
|
||||||
QStringList expectedFiles(QStringList() << "file1.qml" << "file2.qml" << "subdir/file3.qml");
|
QStringList expectedFiles(QStringList() << testDataDir + "/file1.qml"
|
||||||
|
<< testDataDir + "/file2.qml"
|
||||||
|
<< testDataDir + "/subdir/file3.qml");
|
||||||
QCOMPARE(project->qmlFiles().toSet(), expectedFiles.toSet());
|
QCOMPARE(project->qmlFiles().toSet(), expectedFiles.toSet());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -101,7 +104,7 @@ void TestProject::testQmlFileFilter()
|
|||||||
|
|
||||||
project->setSourceDirectory(testDataDir);
|
project->setSourceDirectory(testDataDir);
|
||||||
|
|
||||||
QStringList expectedFiles(QStringList() << "subdir/file3.qml");
|
QStringList expectedFiles(QStringList() << testDataDir + "/subdir/file3.qml");
|
||||||
QCOMPARE(project->qmlFiles().toSet(), expectedFiles.toSet());
|
QCOMPARE(project->qmlFiles().toSet(), expectedFiles.toSet());
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -130,7 +133,9 @@ void TestProject::testQmlFileFilter()
|
|||||||
|
|
||||||
project->setSourceDirectory(testDataDir);
|
project->setSourceDirectory(testDataDir);
|
||||||
|
|
||||||
QStringList expectedFiles(QStringList() << "file1.qml" << "file2.qml" << "subdir/file3.qml");
|
QStringList expectedFiles(QStringList() << testDataDir + "/file1.qml"
|
||||||
|
<< testDataDir + "/file2.qml"
|
||||||
|
<< testDataDir + "/subdir/file3.qml");
|
||||||
QCOMPARE(project->qmlFiles().size(), 3);
|
QCOMPARE(project->qmlFiles().size(), 3);
|
||||||
QCOMPARE(project->qmlFiles().toSet(), expectedFiles.toSet());
|
QCOMPARE(project->qmlFiles().toSet(), expectedFiles.toSet());
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user