ProjectExplorer: De-virtualize FolderNode::showWhenEmpty

Change-Id: Id3d019f449afcfe72b92d505c7822c3b10e2e8e7
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
This commit is contained in:
hjk
2019-03-01 17:46:45 +01:00
parent d410e87829
commit 92da9d1e67
4 changed files with 11 additions and 9 deletions

View File

@@ -762,7 +762,7 @@ bool FolderNode::showInSimpleTree() const
bool FolderNode::showWhenEmpty() const
{
return false;
return m_showWhenEmpty;
}
/*!
@@ -904,6 +904,11 @@ void FolderNode::handleSubTreeChanged(FolderNode *node)
parent->handleSubTreeChanged(node);
}
void FolderNode::setShowWhenEmpty(bool showWhenEmpty)
{
m_showWhenEmpty = showWhenEmpty;
}
ContainerNode::ContainerNode(Project *project)
: FolderNode(project->projectDirectory()), m_project(project)
{

View File

@@ -281,8 +281,10 @@ public:
// determines if node will be shown in the flat view, by default folder and projects aren't shown
virtual bool showInSimpleTree() const;
// 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);
std::unique_ptr<Node> takeNode(Node *node);
@@ -302,6 +304,7 @@ private:
QString m_displayName;
QString m_addFileFilter;
mutable QIcon m_icon;
bool m_showWhenEmpty = false;
};
class PROJECTEXPLORER_EXPORT VirtualFolderNode : public FolderNode

View File

@@ -489,11 +489,6 @@ bool ResourceTopLevelNode::showInSimpleTree() const
return true;
}
bool ResourceTopLevelNode::showWhenEmpty() const
{
return true;
}
ResourceFolderNode::ResourceFolderNode(const QString &prefix, const QString &lang, ResourceTopLevelNode *parent)
: FolderNode(FileName(parent->filePath()).appendPath(prefix)),
// TOOD Why add existing directory doesn't work
@@ -501,7 +496,7 @@ ResourceFolderNode::ResourceFolderNode(const QString &prefix, const QString &lan
m_prefix(prefix),
m_lang(lang)
{
setShowWhenEmpty(true);
}
ResourceFolderNode::~ResourceFolderNode() = default;

View File

@@ -50,7 +50,6 @@ public:
AddNewInformation addNewInformation(const QStringList &files, Node *context) const override;
bool showInSimpleTree() const override;
bool showWhenEmpty() const override;
bool removeNonExistingFiles();
QString contents() const { return m_contents; }