close popup menu when node goes out of view area
reuse single context menu instance
add context menu
set content rect properly
hide invisible nodes explicitly
make view flickable and add margins to test behavior
extract GraphView component
highlight both parent and child edges
leverage unordered_map::at()
make switch statement exhaustive
move Role enum to implementation
show replica nodes
count number of rows reserved for descendant nodes
highlight parent edge on hover
extract GraphEdge
add nodeType property
move GraphLayoutNode to GraphLayoutModel's private
extract node item to GraphNode.qml
switch to scoped enum
emit dataChanged by updateLayout() to simplify interface
Next