logic: Group nodes in inheritance graph who have the same base and derived nodes (issue #459)

* added graph node for grouping nodes with separate sub-layout
* group nodes show name in top left corner
* clicking on single edge activates source locations of all edges
* removed separate setters for token components
* fixed text nodes missing or too many in list layout
* moved simple row and column layouts to ListLayouter
* added skewed layout type to ListLayouter

fortune cookie message = Sometimes you should have the courage and risk something.
This commit is contained in:
Eberhard Graether
2018-03-26 23:57:05 +02:00
parent f93638bcd1
commit bbd003f047
31 changed files with 770 additions and 273 deletions
@@ -107,6 +107,8 @@ private:
void addCharacterIndex();
bool hasCharacterIndex() const;
void groupTrailNodes(NodeType::GroupType groupType);
void layoutNesting();
void layoutNestingRecursive(DummyNode* node) const;
void addExpandToggleNode(DummyNode* node) const;
@@ -118,7 +120,7 @@ private:
void assignBundleIds();
DummyNode* getDummyGraphNodeById(Id tokenId) const;
std::shared_ptr<DummyNode> getDummyGraphNodeById(Id tokenId) const;
DummyEdge* getDummyGraphEdgeById(Id tokenId) const;
void buildGraph(MessageBase* message, bool centerActiveNode, bool animatedTransition, bool scrollToTop);