Merge remote-tracking branch 'origin/9.0' into qds/dev

Change-Id: I02fd6f492c27d85b88af7ec8bc18ff62f2c6ed14
This commit is contained in:
Tim Jenssen
2022-11-09 12:51:00 +01:00
149 changed files with 89684 additions and 74780 deletions

View File

@@ -81,8 +81,36 @@ static void setupProjectInfoQmlBundles(ModelManagerInterface::ProjectInfo &proje
}
}
static void findAllQrcFiles(const FilePath &filePath, FilePaths &out)
{
filePath.iterateDirectory(
[&out](const FilePath &path) {
out.append(path.canonicalPath());
return true;
},
{{"*.qrc"}, QDir::Files});
}
static FilePaths findGeneratedQrcFiles(const ModelManagerInterface::ProjectInfo &pInfo,
const FilePaths &hiddenRccFolders)
{
FilePaths result;
// Search in Application Directories for directories named ".rcc"
// and add all .qrc files in there to the resource file list.
for (const Utils::FilePath &path : pInfo.applicationDirectories) {
Utils::FilePath generatedQrcDir = path.pathAppended(".rcc");
findAllQrcFiles(generatedQrcDir, result);
}
for (const Utils::FilePath &hiddenRccFolder : hiddenRccFolders) {
findAllQrcFiles(hiddenRccFolder, result);
}
return result;
}
ModelManagerInterface::ProjectInfo ModelManager::defaultProjectInfoForProject(
Project *project) const
Project *project, const FilePaths &hiddenRccFolders) const
{
ModelManagerInterface::ProjectInfo projectInfo;
projectInfo.project = project;
@@ -187,6 +215,7 @@ ModelManagerInterface::ProjectInfo ModelManager::defaultProjectInfoForProject(
}
setupProjectInfoQmlBundles(projectInfo);
projectInfo.generatedQrcFiles = findGeneratedQrcFiles(projectInfo, hiddenRccFolders);
return projectInfo;
}
@@ -298,7 +327,7 @@ void ModelManager::updateDefaultProjectInfo()
Project *currentProject = SessionManager::startupProject();
setDefaultProject(containsProject(currentProject)
? projectInfo(currentProject)
: defaultProjectInfoForProject(currentProject),
: defaultProjectInfoForProject(currentProject, {}),
currentProject);
}