ProjectExplorer: Create initial project tree

Create an initial project tree with a ProjectNode and a FileNode for
the project file itself.

Fix the Projects to not implement their own tree before they have
better data.

Change-Id: I147ccd5603d22d1d60880a97f30fd8c271eac88c
Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
Tobias Hunger
2017-03-03 17:10:00 +01:00
parent 2fde3fffa9
commit 49fef0ae24
15 changed files with 35 additions and 47 deletions

View File

@@ -70,17 +70,17 @@ GenericProject::GenericProject(const Utils::FileName &fileName)
{
setId(Constants::GENERICPROJECT_ID);
setDocument(new GenericProjectFile(this, fileName, GenericProject::Everything));
setRootProjectNode(new GenericProjectNode(this));
setProjectContext(Context(GenericProjectManager::Constants::PROJECTCONTEXT));
setProjectLanguages(Context(ProjectExplorer::Constants::CXX_LANGUAGE_ID));
const QFileInfo fileInfo = projectFilePath().toFileInfo();
const QDir dir = fileInfo.dir();
m_projectName = fileInfo.completeBaseName();
m_filesFileName = QFileInfo(dir, m_projectName + ".files").absoluteFilePath();
m_includesFileName = QFileInfo(dir, m_projectName + ".includes").absoluteFilePath();
m_configFileName = QFileInfo(dir, m_projectName + ".config").absoluteFilePath();
const QString projectName = fileInfo.completeBaseName();
m_filesFileName = QFileInfo(dir, projectName + ".files").absoluteFilePath();
m_includesFileName = QFileInfo(dir, projectName + ".includes").absoluteFilePath();
m_configFileName = QFileInfo(dir, projectName + ".config").absoluteFilePath();
m_filesIDocument = new GenericProjectFile(this, FileName::fromString(m_filesFileName), GenericProject::Files);
m_includesIDocument = new GenericProjectFile(this, FileName::fromString(m_includesFileName), GenericProject::Configuration);
@@ -407,7 +407,7 @@ QStringList GenericProject::files() const
QString GenericProject::displayName() const
{
return m_projectName;
return projectFilePath().toFileInfo().completeBaseName();
}
QStringList GenericProject::files(FilesMode fileMode) const