summaryrefslogtreecommitdiff
path: root/src/plugins
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins')
-rw-r--r--src/plugins/compilationdatabaseprojectmanager/compilationdatabaseproject.cpp3
-rw-r--r--src/plugins/projectexplorer/projectnodes.cpp26
-rw-r--r--src/plugins/projectexplorer/projectnodes.h11
-rw-r--r--src/plugins/qbsprojectmanager/qbsnodetreebuilder.cpp3
4 files changed, 25 insertions, 18 deletions
diff --git a/src/plugins/compilationdatabaseprojectmanager/compilationdatabaseproject.cpp b/src/plugins/compilationdatabaseprojectmanager/compilationdatabaseproject.cpp
index 720f539e39..34e5922b6a 100644
--- a/src/plugins/compilationdatabaseprojectmanager/compilationdatabaseproject.cpp
+++ b/src/plugins/compilationdatabaseprojectmanager/compilationdatabaseproject.cpp
@@ -249,8 +249,7 @@ QStringList relativeDirsList(Utils::FileName currentPath, const Utils::FileName
FolderNode *addChildFolderNode(FolderNode *parent, const QString &childName)
{
Utils::FileName parentPath = parent->filePath();
- auto node = std::make_unique<FolderNode>(
- parentPath.appendPath(childName), NodeType::Folder);
+ auto node = std::make_unique<FolderNode>(parentPath.appendPath(childName));
FolderNode *childNode = node.get();
childNode->setDisplayName(childName);
parent->addNode(std::move(node));
diff --git a/src/plugins/projectexplorer/projectnodes.cpp b/src/plugins/projectexplorer/projectnodes.cpp
index e41395b80a..d789f1a502 100644
--- a/src/plugins/projectexplorer/projectnodes.cpp
+++ b/src/plugins/projectexplorer/projectnodes.cpp
@@ -119,9 +119,7 @@ static FolderNode *recursiveFindOrCreateFolderNode(FolderNode *folder,
\sa ProjectExplorer::NodesWatcher
*/
-Node::Node(NodeType nodeType)
- : m_nodeType(nodeType)
-{ }
+Node::Node() = default;
void Node::setPriority(int p)
{
@@ -310,6 +308,11 @@ FileType Node::fileTypeForFileName(const Utils::FileName &file)
Utils::MimeMatchMode::MatchExtension));
}
+void Node::setNodeType(NodeType nodeType)
+{
+ m_nodeType = nodeType;
+}
+
/*!
\class ProjectExplorer::FileNode
@@ -321,7 +324,6 @@ FileType Node::fileTypeForFileName(const Utils::FileName &file)
*/
FileNode::FileNode(const Utils::FileName &filePath, const FileType fileType) :
- Node(NodeType::File),
m_fileType(fileType)
{
setFilePath(filePath);
@@ -422,9 +424,9 @@ bool FileNode::supportsAction(ProjectAction action, const Node *node) const
\sa ProjectExplorer::FileNode, ProjectExplorer::ProjectNode
*/
-FolderNode::FolderNode(const Utils::FileName &folderPath, NodeType nodeType) :
- Node(nodeType)
+FolderNode::FolderNode(const Utils::FileName &folderPath)
{
+ setNodeType(NodeType::Folder);
setFilePath(folderPath);
setPriority(DefaultFolderPriority);
setListInProject(false);
@@ -781,8 +783,9 @@ bool FolderNode::showWhenEmpty() const
\sa ProjectExplorer::FileNode, ProjectExplorer::ProjectNode
*/
VirtualFolderNode::VirtualFolderNode(const Utils::FileName &folderPath, int priority) :
- FolderNode(folderPath, NodeType::VirtualFolder)
+ FolderNode(folderPath)
{
+ setNodeType(NodeType::VirtualFolder);
setPriority(priority);
}
@@ -807,8 +810,9 @@ QString VirtualFolderNode::addFileFilter() const
Creates an uninitialized project node object.
*/
ProjectNode::ProjectNode(const Utils::FileName &projectFilePath) :
- FolderNode(projectFilePath, NodeType::Project)
+ FolderNode(projectFilePath)
{
+ setNodeType(NodeType::Project);
setPriority(DefaultProjectPriority);
setListInProject(true);
setDisplayName(projectFilePath.fileName());
@@ -917,8 +921,10 @@ void FolderNode::handleSubTreeChanged(FolderNode *node)
}
ContainerNode::ContainerNode(Project *project)
- : FolderNode(project->projectDirectory(), NodeType::Project), m_project(project)
-{}
+ : FolderNode(project->projectDirectory()), m_project(project)
+{
+ setNodeType(NodeType::Project);
+}
QString ContainerNode::displayName() const
{
diff --git a/src/plugins/projectexplorer/projectnodes.h b/src/plugins/projectexplorer/projectnodes.h
index e117abdc2e..6c59686115 100644
--- a/src/plugins/projectexplorer/projectnodes.h
+++ b/src/plugins/projectexplorer/projectnodes.h
@@ -111,7 +111,7 @@ public:
};
virtual ~Node();
- Node(const Node &other) = delete;
+
NodeType nodeType() const;
int priority() const;
@@ -159,8 +159,10 @@ public:
static FileType fileTypeForFileName(const Utils::FileName &file);
protected:
- explicit Node(NodeType nodeType);
+ Node();
+ Node(const Node &other) = delete;
+ void setNodeType(NodeType nodeType);
void setPriority(int priority);
void setLine(int line);
void setFilePath(const Utils::FileName &filePath);
@@ -170,7 +172,8 @@ private:
Utils::FileName m_filePath;
int m_line = -1;
int m_priority = DefaultPriority;
- const NodeType m_nodeType;
+ NodeType m_nodeType = NodeType::File;
+
enum NodeFlag : quint16 {
FlagNone = 0,
FlagIsEnabled = 1 << 0,
@@ -206,7 +209,7 @@ private:
class PROJECTEXPLORER_EXPORT FolderNode : public Node
{
public:
- explicit FolderNode(const Utils::FileName &folderPath, NodeType nodeType = NodeType::Folder);
+ explicit FolderNode(const Utils::FileName &folderPath);
QString displayName() const override;
QIcon icon() const;
diff --git a/src/plugins/qbsprojectmanager/qbsnodetreebuilder.cpp b/src/plugins/qbsprojectmanager/qbsnodetreebuilder.cpp
index c863cf6747..50c547ac5f 100644
--- a/src/plugins/qbsprojectmanager/qbsnodetreebuilder.cpp
+++ b/src/plugins/qbsprojectmanager/qbsnodetreebuilder.cpp
@@ -214,8 +214,7 @@ std::unique_ptr<QbsRootProjectNode> QbsNodeTreeBuilder::buildTree(QbsProject *pr
auto root = std::make_unique<QbsRootProjectNode>(project);
setupProjectNode(root.get(), project->qbsProjectData(), project->qbsProject());
auto buildSystemFiles
- = std::make_unique<ProjectExplorer::FolderNode>(project->projectDirectory(),
- ProjectExplorer::NodeType::Folder);
+ = std::make_unique<ProjectExplorer::FolderNode>(project->projectDirectory());
buildSystemFiles->setDisplayName(QCoreApplication::translate("QbsRootProjectNode", "Qbs files"));
Utils::FileName base = project->projectDirectory();