forked from qt-creator/qt-creator
ProjectExplorer: De-virtualize FolderNode::showWhenEmpty
Change-Id: Id3d019f449afcfe72b92d505c7822c3b10e2e8e7 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
@@ -762,7 +762,7 @@ bool FolderNode::showInSimpleTree() const
|
|||||||
|
|
||||||
bool FolderNode::showWhenEmpty() const
|
bool FolderNode::showWhenEmpty() const
|
||||||
{
|
{
|
||||||
return false;
|
return m_showWhenEmpty;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
@@ -904,6 +904,11 @@ void FolderNode::handleSubTreeChanged(FolderNode *node)
|
|||||||
parent->handleSubTreeChanged(node);
|
parent->handleSubTreeChanged(node);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void FolderNode::setShowWhenEmpty(bool showWhenEmpty)
|
||||||
|
{
|
||||||
|
m_showWhenEmpty = showWhenEmpty;
|
||||||
|
}
|
||||||
|
|
||||||
ContainerNode::ContainerNode(Project *project)
|
ContainerNode::ContainerNode(Project *project)
|
||||||
: FolderNode(project->projectDirectory()), m_project(project)
|
: FolderNode(project->projectDirectory()), m_project(project)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -281,8 +281,10 @@ public:
|
|||||||
|
|
||||||
// determines if node will be shown in the flat view, by default folder and projects aren't shown
|
// determines if node will be shown in the flat view, by default folder and projects aren't shown
|
||||||
virtual bool showInSimpleTree() const;
|
virtual bool showInSimpleTree() const;
|
||||||
|
|
||||||
// determines if node will always be shown when hiding empty directories
|
// determines if node will always be shown when hiding empty directories
|
||||||
virtual bool showWhenEmpty() const;
|
bool showWhenEmpty() const;
|
||||||
|
void setShowWhenEmpty(bool showWhenEmpty);
|
||||||
|
|
||||||
void addNode(std::unique_ptr<Node> &&node);
|
void addNode(std::unique_ptr<Node> &&node);
|
||||||
std::unique_ptr<Node> takeNode(Node *node);
|
std::unique_ptr<Node> takeNode(Node *node);
|
||||||
@@ -302,6 +304,7 @@ private:
|
|||||||
QString m_displayName;
|
QString m_displayName;
|
||||||
QString m_addFileFilter;
|
QString m_addFileFilter;
|
||||||
mutable QIcon m_icon;
|
mutable QIcon m_icon;
|
||||||
|
bool m_showWhenEmpty = false;
|
||||||
};
|
};
|
||||||
|
|
||||||
class PROJECTEXPLORER_EXPORT VirtualFolderNode : public FolderNode
|
class PROJECTEXPLORER_EXPORT VirtualFolderNode : public FolderNode
|
||||||
|
|||||||
@@ -489,11 +489,6 @@ bool ResourceTopLevelNode::showInSimpleTree() const
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool ResourceTopLevelNode::showWhenEmpty() const
|
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
ResourceFolderNode::ResourceFolderNode(const QString &prefix, const QString &lang, ResourceTopLevelNode *parent)
|
ResourceFolderNode::ResourceFolderNode(const QString &prefix, const QString &lang, ResourceTopLevelNode *parent)
|
||||||
: FolderNode(FileName(parent->filePath()).appendPath(prefix)),
|
: FolderNode(FileName(parent->filePath()).appendPath(prefix)),
|
||||||
// TOOD Why add existing directory doesn't work
|
// TOOD Why add existing directory doesn't work
|
||||||
@@ -501,7 +496,7 @@ ResourceFolderNode::ResourceFolderNode(const QString &prefix, const QString &lan
|
|||||||
m_prefix(prefix),
|
m_prefix(prefix),
|
||||||
m_lang(lang)
|
m_lang(lang)
|
||||||
{
|
{
|
||||||
|
setShowWhenEmpty(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
ResourceFolderNode::~ResourceFolderNode() = default;
|
ResourceFolderNode::~ResourceFolderNode() = default;
|
||||||
|
|||||||
@@ -50,7 +50,6 @@ public:
|
|||||||
|
|
||||||
AddNewInformation addNewInformation(const QStringList &files, Node *context) const override;
|
AddNewInformation addNewInformation(const QStringList &files, Node *context) const override;
|
||||||
bool showInSimpleTree() const override;
|
bool showInSimpleTree() const override;
|
||||||
bool showWhenEmpty() const override;
|
|
||||||
bool removeNonExistingFiles();
|
bool removeNonExistingFiles();
|
||||||
|
|
||||||
QString contents() const { return m_contents; }
|
QString contents() const { return m_contents; }
|
||||||
|
|||||||
Reference in New Issue
Block a user