forked from qt-creator/qt-creator
ProjectExplorer: Do not use QFlags
Using QFlags here increases the size of a Node by extending the m_flags from 16bit to 32bit and adds needless padding. Change-Id: I9169585a7f91da5b85433fcd6f4d1bb7d39e65c1 Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
@@ -131,17 +131,17 @@ void Node::setPriority(int p)
|
|||||||
void Node::setListInProject(bool l)
|
void Node::setListInProject(bool l)
|
||||||
{
|
{
|
||||||
if (l)
|
if (l)
|
||||||
m_flags |= FlagListInProject;
|
m_flags = static_cast<NodeFlag>(m_flags | FlagListInProject);
|
||||||
else
|
else
|
||||||
m_flags &= ~FlagListInProject;
|
m_flags = static_cast<NodeFlag>(m_flags & ~FlagListInProject);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Node::setIsGenerated(bool g)
|
void Node::setIsGenerated(bool g)
|
||||||
{
|
{
|
||||||
if (g)
|
if (g)
|
||||||
m_flags |= FlagIsGenerated;
|
m_flags = static_cast<NodeFlag>(m_flags | FlagIsGenerated);
|
||||||
else
|
else
|
||||||
m_flags &= ~FlagIsGenerated;
|
m_flags = static_cast<NodeFlag>(m_flags & ~FlagIsGenerated);
|
||||||
}
|
}
|
||||||
|
|
||||||
void Node::setAbsoluteFilePathAndLine(const Utils::FileName &path, int line)
|
void Node::setAbsoluteFilePathAndLine(const Utils::FileName &path, int line)
|
||||||
@@ -170,7 +170,7 @@ int Node::priority() const
|
|||||||
*/
|
*/
|
||||||
bool Node::listInProject() const
|
bool Node::listInProject() const
|
||||||
{
|
{
|
||||||
return m_flags.testFlag(FlagListInProject);
|
return (m_flags & FlagListInProject) == FlagListInProject;
|
||||||
}
|
}
|
||||||
|
|
||||||
/*!
|
/*!
|
||||||
@@ -239,7 +239,7 @@ QString Node::tooltip() const
|
|||||||
|
|
||||||
bool Node::isEnabled() const
|
bool Node::isEnabled() const
|
||||||
{
|
{
|
||||||
if (!m_flags.testFlag(FlagIsEnabled))
|
if ((m_flags & FlagIsEnabled) == 0)
|
||||||
return false;
|
return false;
|
||||||
FolderNode *parent = parentFolderNode();
|
FolderNode *parent = parentFolderNode();
|
||||||
return parent ? parent->isEnabled() : true;
|
return parent ? parent->isEnabled() : true;
|
||||||
@@ -261,9 +261,9 @@ bool Node::supportsAction(ProjectAction, const Node *) const
|
|||||||
void Node::setEnabled(bool enabled)
|
void Node::setEnabled(bool enabled)
|
||||||
{
|
{
|
||||||
if (enabled)
|
if (enabled)
|
||||||
m_flags |= FlagIsEnabled;
|
m_flags = static_cast<NodeFlag>(m_flags | FlagIsEnabled);
|
||||||
else
|
else
|
||||||
m_flags &= ~FlagIsEnabled;
|
m_flags = static_cast<NodeFlag>(m_flags & ~FlagIsEnabled);
|
||||||
}
|
}
|
||||||
|
|
||||||
bool Node::sortByPath(const Node *a, const Node *b)
|
bool Node::sortByPath(const Node *a, const Node *b)
|
||||||
|
@@ -173,8 +173,7 @@ private:
|
|||||||
FlagIsGenerated = 1 << 1,
|
FlagIsGenerated = 1 << 1,
|
||||||
FlagListInProject = 1 << 2,
|
FlagListInProject = 1 << 2,
|
||||||
};
|
};
|
||||||
using NodeFlags = QFlags<NodeFlag>;
|
NodeFlag m_flags = FlagIsEnabled;
|
||||||
NodeFlags m_flags = FlagIsEnabled;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class PROJECTEXPLORER_EXPORT FileNode : public Node
|
class PROJECTEXPLORER_EXPORT FileNode : public Node
|
||||||
|
Reference in New Issue
Block a user