From cfb79828cf3a252034c23ac47462308ad176e6e2 Mon Sep 17 00:00:00 2001 From: dt <qtc-committer@nokia.com> Date: Tue, 7 Sep 2010 17:48:37 +0200 Subject: [PATCH] CMake ProjectManager: Hide generated files The heuristic to detect generated files is pretty basic and tries to match the filenames against 3 patterns. Task-Nr: QTCREATORBUG-2077 --- src/plugins/cmakeprojectmanager/cmakeproject.cpp | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/src/plugins/cmakeprojectmanager/cmakeproject.cpp b/src/plugins/cmakeprojectmanager/cmakeproject.cpp index bee7b10d37e..ef877036702 100644 --- a/src/plugins/cmakeprojectmanager/cmakeproject.cpp +++ b/src/plugins/cmakeprojectmanager/cmakeproject.cpp @@ -201,7 +201,8 @@ bool CMakeProject::parseCMakeLists() } else { // Manually add the CMakeLists.txt file QString cmakeListTxt = projectDirectory() + "/CMakeLists.txt"; - fileList.append(new ProjectExplorer::FileNode(cmakeListTxt, ProjectExplorer::ProjectFileType, false)); + bool generated = false; + fileList.append(new ProjectExplorer::FileNode(cmakeListTxt, ProjectExplorer::ProjectFileType, generated)); projectFiles.insert(cmakeListTxt); } @@ -911,10 +912,17 @@ void CMakeCbpParser::parseUnit() if (m_parsingCmakeUnit) { m_cmakeFileList.append( new ProjectExplorer::FileNode(fileName, ProjectExplorer::ProjectFileType, false)); } else { + bool generated = false; + QString onlyFileName = QFileInfo(fileName).fileName(); + if ( (onlyFileName.startsWith("moc_") && onlyFileName.endsWith(".cxx")) + || (onlyFileName.startsWith("ui_") && onlyFileName.endsWith(".h")) + || (onlyFileName.startsWith("qrc_") && onlyFileName.endsWith(".cxx"))) + generated = true; + if (fileName.endsWith(QLatin1String(".qrc"))) - m_fileList.append( new ProjectExplorer::FileNode(fileName, ProjectExplorer::ResourceType, false)); + m_fileList.append( new ProjectExplorer::FileNode(fileName, ProjectExplorer::ResourceType, generated)); else - m_fileList.append( new ProjectExplorer::FileNode(fileName, ProjectExplorer::SourceType, false)); + m_fileList.append( new ProjectExplorer::FileNode(fileName, ProjectExplorer::SourceType, generated)); } m_processedUnits.insert(fileName); } -- GitLab