ui: graph edges clickable

The graph views edges are now clickable. On click the edge and its connected nodes will be displayed.

fortune cookie message = Be prepared to accept an exciting opportunity in the future.
This commit is contained in:
Manuel Dobusch
2014-07-17 12:19:28 +02:00
parent 2c9c83d003
commit 7157f0d127
11 changed files with 228 additions and 88 deletions
+13 -8
View File
@@ -62,13 +62,18 @@ public:
virtual std::string getNameForNodeWithId(Id id) const;
virtual std::vector<std::string> getNamesForNodesWithNamePrefix(const std::string& prefix) const;
virtual std::vector<Id> getIdsOfNeighbours(const Id id) const;
virtual std::vector<std::pair<Id, Id>> getNeighbourEdgesOfNode(const Id id) const;
virtual std::vector<std::pair<Id, Id>> getMemberEdgesOfNode(const Id id) const;
virtual std::vector<std::pair<Id, Id>> getUsageEdgesOfNode(const Id id) const;
virtual std::vector<std::pair<Id, Id>> getCallEdgesOfNode(const Id id) const;
virtual std::vector<std::pair<Id, Id>> getTypeOfEdgesOfNode(const Id id) const;
virtual std::vector<std::pair<Id, Id>> getReturnTypeOfEdgesOfNode(const Id id) const;
virtual std::vector<std::pair<Id, Id>> getParameterOfEdgesOfNode(const Id id) const;
virtual std::vector<std::tuple<Id, Id, Id>> getNeighbourEdgesOfNode(const Id id) const;
virtual std::vector<std::tuple<Id, Id, Id>> getMemberEdgesOfNode(const Id id) const;
virtual std::vector<std::tuple<Id, Id, Id>> getUsageEdgesOfNode(const Id id) const;
virtual std::vector<std::tuple<Id, Id, Id>> getCallEdgesOfNode(const Id id) const;
virtual std::vector<std::tuple<Id, Id, Id>> getTypeOfEdgesOfNode(const Id id) const;
virtual std::vector<std::tuple<Id, Id, Id>> getReturnTypeOfEdgesOfNode(const Id id) const;
virtual std::vector<std::tuple<Id, Id, Id>> getParameterOfEdgesOfNode(const Id id) const;
virtual std::vector<std::tuple<Id, Id, Id>> getInheritanceEdgesOfNode(const Id id) const;
virtual std::pair<Id, Id> getNodesOfEdge(const Id id) const;
virtual bool checkTokenIsNode(const Id id) const;
// LocationAccess implementation
virtual TokenLocationCollection getTokenLocationsForTokenId(Id locationId) const;
@@ -84,7 +89,7 @@ private:
void log(std::string type, std::string str, const ParseLocation& location) const;
std::vector<std::pair<Id, Id>> getEdgesOfTypeOfNode(const Id id, const Edge::EdgeType type) const;
std::vector<std::tuple<Id, Id, Id>> getEdgesOfTypeOfNode(const Id id, const Edge::EdgeType type) const;
Graph m_graph;
TokenLocationCollection m_locationCollection;