ui: fixed non-collapsible nodes got also collapsed with more than 20 children

<description>
This commit is contained in:
Eberhard Graether
2017-11-08 22:00:34 +01:00
parent 0e7dc3242d
commit adf32d1d22
4 changed files with 19 additions and 12 deletions
@@ -1345,10 +1345,7 @@ void GraphController::layoutNestingRecursive(DummyNode* node) const
width = margins.charWidth * node->name.size();
Node::NodeTypeMask mask =
Node::NODE_NON_INDEXED | Node::NODE_TYPE | Node::NODE_BUILTIN_TYPE |
Node::NODE_CLASS | Node::NODE_STRUCT | Node::NODE_ENUM | Node::NODE_UNION;
if (node->data->isType(mask) && node->data->getChildCount() > 0)
if (node->data->isType(Node::NODE_COLLAPSIBLE_TYPE) && node->data->getChildCount() > 0)
{
addExpandToggleNode(node);
}
+16 -7
View File
@@ -11,13 +11,22 @@
#include "data/graph/token_component/TokenComponentStatic.h"
#include "data/graph/token_component/TokenComponentFilePath.h"
const Node::NodeTypeMask Node::NODE_NOT_VISIBLE = NODE_NAMESPACE | NODE_PACKAGE;
const Node::NodeTypeMask Node::NODE_USEABLE_TYPE = NODE_NON_INDEXED | NODE_BUILTIN_TYPE | NODE_STRUCT | NODE_CLASS |
NODE_ENUM | NODE_UNION | NODE_INTERFACE | NODE_TYPEDEF;
const Node::NodeTypeMask Node::NODE_INHERITABLE_TYPE = NODE_NON_INDEXED | NODE_BUILTIN_TYPE | NODE_TYPE | NODE_STRUCT |
NODE_CLASS | NODE_INTERFACE;
const Node::NodeTypeMask Node::NODE_MEMBER_TYPE = NODE_METHOD | NODE_FIELD | NODE_CLASS | NODE_INTERFACE | NODE_STRUCT |
NODE_UNION | NODE_TYPEDEF | NODE_ENUM;
const Node::NodeTypeMask Node::NODE_NOT_VISIBLE =
NODE_NAMESPACE | NODE_PACKAGE;
const Node::NodeTypeMask Node::NODE_USEABLE_TYPE =
NODE_NON_INDEXED | NODE_BUILTIN_TYPE | NODE_STRUCT | NODE_CLASS | NODE_ENUM | NODE_UNION | NODE_INTERFACE |
NODE_TYPEDEF;
const Node::NodeTypeMask Node::NODE_INHERITABLE_TYPE =
NODE_NON_INDEXED | NODE_BUILTIN_TYPE | NODE_TYPE | NODE_STRUCT | NODE_CLASS | NODE_INTERFACE;
const Node::NodeTypeMask Node::NODE_MEMBER_TYPE =
NODE_METHOD | NODE_FIELD | NODE_CLASS | NODE_INTERFACE | NODE_STRUCT | NODE_UNION | NODE_TYPEDEF | NODE_ENUM;
const Node::NodeTypeMask Node::NODE_COLLAPSIBLE_TYPE =
NODE_NON_INDEXED | NODE_TYPE | NODE_BUILTIN_TYPE | NODE_CLASS | NODE_STRUCT | NODE_ENUM | NODE_UNION |
NODE_INTERFACE;
std::string Node::getUnderscoredTypeString(NodeType type)
{
+1
View File
@@ -62,6 +62,7 @@ public:
static const NodeTypeMask NODE_USEABLE_TYPE;
static const NodeTypeMask NODE_INHERITABLE_TYPE;
static const NodeTypeMask NODE_MEMBER_TYPE;
static const NodeTypeMask NODE_COLLAPSIBLE_TYPE;
Node(Id id, NodeType type, NameHierarchy nameHierarchy, bool defined);
Node(const Node& other);
+1 -1
View File
@@ -928,7 +928,7 @@ std::shared_ptr<Graph> PersistentStorage::getGraphForActiveTokenIds(
m_hierarchyCache.addFirstChildIdsForNodeId(elementId, &nodeIds, &edgeIds);
// don't expand active node if it has more than 20 child nodes
if (nodeIds.size() > 20)
if (nodeIds.size() > 20 && nodeType & Node::NODE_COLLAPSIBLE_TYPE)
{
nodeIds.clear();
}