forked from qt-creator/qt-creator
CMakePM: Treat all sourceGroups as sourcesOrHeaders project nodes
Previously only "Source Files" and "Header Files" were treated as sourceOrHeaders project nodes. But source_group can introduce a new source group which needs to be also treated as sourcesOrHeaders project node. Fixes: QTCREATORBUG-29799 Change-Id: I833d80155fba3fb0269aeab149ea74b0d2edd271 Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
This commit is contained in:
@@ -19,13 +19,13 @@ namespace CMakeProjectManager::Internal {
|
||||
|
||||
std::unique_ptr<FolderNode> createCMakeVFolder(const Utils::FilePath &basePath,
|
||||
int priority,
|
||||
const QString &displayName)
|
||||
const QString &displayName,
|
||||
bool sourcesOrHeaders)
|
||||
{
|
||||
auto newFolder = std::make_unique<VirtualFolderNode>(basePath);
|
||||
newFolder->setPriority(priority);
|
||||
newFolder->setDisplayName(displayName);
|
||||
newFolder->setIsSourcesOrHeaders(displayName == "Source Files"
|
||||
|| displayName == "Header Files");
|
||||
newFolder->setIsSourcesOrHeaders(sourcesOrHeaders);
|
||||
return newFolder;
|
||||
}
|
||||
|
||||
@@ -33,13 +33,14 @@ void addCMakeVFolder(FolderNode *base,
|
||||
const Utils::FilePath &basePath,
|
||||
int priority,
|
||||
const QString &displayName,
|
||||
std::vector<std::unique_ptr<FileNode>> &&files)
|
||||
std::vector<std::unique_ptr<FileNode>> &&files,
|
||||
bool sourcesOrHeaders)
|
||||
{
|
||||
if (files.size() == 0)
|
||||
return;
|
||||
FolderNode *folder = base;
|
||||
if (!displayName.isEmpty()) {
|
||||
auto newFolder = createCMakeVFolder(basePath, priority, displayName);
|
||||
auto newFolder = createCMakeVFolder(basePath, priority, displayName, sourcesOrHeaders);
|
||||
folder = newFolder.get();
|
||||
base->addNode(std::move(newFolder));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user