ui: Show namespace label on left side of graph nodes

* Added arrow indicating namespace and package name on left side of node
* Show namespace label when hovering arrow
* Activate namespace when clicking label
* New design for namespace nodes
This commit is contained in:
Eberhard Graether
2016-11-28 16:28:52 +01:00
parent 1b15933819
commit e9cadbed8d
18 changed files with 397 additions and 73 deletions
@@ -7,6 +7,7 @@
#include "utility/utilityString.h"
#include "data/graph/token_component/TokenComponentAccess.h"
#include "data/name/NameHierarchy.h"
class Node;
@@ -42,6 +43,7 @@ public:
, expanded(false)
, autoExpanded(false)
, hasParent(true)
, hasQualifier(false)
, accessKind(ACCESS_NONE)
, invisibleSubNodeCount(0)
, layoutBucket(0, 0)
@@ -61,7 +63,7 @@ public:
bool isExpandToggleNode() const
{
return !isGraphNode() && !isAccessNode() && !isBundleNode();
return !isGraphNode() && !isAccessNode() && !isBundleNode() && !isQualifierNode();
}
bool isBundleNode() const
@@ -69,6 +71,11 @@ public:
return bundledNodes.size() > 0;
}
bool isQualifierNode() const
{
return qualifierName.size();
}
bool isExpanded() const
{
return expanded;
@@ -222,6 +229,7 @@ public:
bool expanded;
bool autoExpanded;
bool hasParent;
bool hasQualifier;
// AccessNode
AccessKind accessKind;
@@ -238,6 +246,9 @@ public:
// BundleNode
std::vector<std::shared_ptr<DummyNode>> bundledNodes;
size_t bundledNodeCount;
// QualifierNode
NameHierarchy qualifierName;
};
#endif // DUMMY_NODE_H