cutter
cutter copied to clipboard
Support all r2 graphs
Is your feature request related to a problem? Please describe.
R2 can generate multiple kinds of graphs Cutter currently only supports function basic block graph.
Describe the solution you'd like
Dedicated widgets instead of some generic widget because that allows implementing content specific features
- Context menu and other interaction with objects represented by nodes.
- Adjusting node and edge style based on data.
- Choosing the most suitable layout algorithm by default.
Even though issue asks for dedicated widgets large part of code can probably be shared.
Dedicated widget for:
- [ ] data reference graph
- [ ] global data reference graph
- [x] function callgraph #406
- [x] global callgraph #1776
- [ ] diff graph
- [ ] imports graph
- [ ] references graph
- [ ] global references graph
- [ ] cross references graph
- [ ] axg find paths to reach a point #1085
Describe alternatives you've considered Additional context
Related: Cutter's Deep Graph plugin
Regarding the dedicated widget, not sure how it is worthy in terms of inner implementation. If the data looks the same, they all can share the same widget while the data provided will be different, as well as widget's title.
@ITAYC0HEN Deep graph plugin just binds buttons to r2 "ag*" commands. It doesn't really help implementing this issue more than writing ag?
in r2 console.
As for sharing the same widget read the issue description
Even though issue asks for dedicated widgets large part of code can probably be shared.