logic: don't show implicit or undefined child nodes in graph unless connected
* visit implicit declarations in ASTVisitor * show implicit and undefined child nodes only when connected * fixed some bundle edges couldn't be split * add "implicit" to tooltip * show undefiend and implicit nodes hatched
This commit is contained in:
@@ -458,7 +458,11 @@ std::vector<Id> Storage::getNodeIdsForLocationIds(const std::vector<Id>& locatio
|
||||
}
|
||||
else
|
||||
{
|
||||
nodeIds.insert(elementId);
|
||||
StorageNode node = m_sqliteStorage.getNodeById(elementId);
|
||||
if (node.id != 0 && intToDefinitionType(node.definitionType) == DEFINITION_EXPLICIT)
|
||||
{
|
||||
nodeIds.insert(elementId);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -757,13 +761,23 @@ void Storage::addNodesToGraph(const std::vector<Id>& nodeIds, Graph* graph) cons
|
||||
NameHierarchy nameHierarchy = NameHierarchy::deserialize(storageNode.serializedName);
|
||||
|
||||
Node::NodeType type = Node::intToType(storageNode.type);
|
||||
DefinitionType defType = intToDefinitionType(storageNode.definitionType);
|
||||
Node* node = graph->createNode(
|
||||
storageNode.id,
|
||||
type,
|
||||
nameHierarchy,
|
||||
intToDefinitionType(storageNode.definitionType) != DEFINITION_NONE
|
||||
defType != DEFINITION_NONE
|
||||
);
|
||||
|
||||
if (defType == DEFINITION_IMPLICIT)
|
||||
{
|
||||
node->setImplicit(true);
|
||||
}
|
||||
else if (defType == DEFINITION_EXPLICIT)
|
||||
{
|
||||
node->setExplicit(true);
|
||||
}
|
||||
|
||||
if (type == Node::NODE_FUNCTION || type == Node::NODE_METHOD)
|
||||
{
|
||||
std::string signatureString = nameHierarchy.getRawNameWithSignature();
|
||||
|
||||
Reference in New Issue
Block a user