The GS team is working out a graph tool gem that allows easy creation of graph driven tools.
Looking at the functionality with the lens of "upstream" being the framework, and "downstream" being your custom tool, I've been chipping at a suite of toggleable features that make the graph part more about your custom nodes and features... not just having a graph at all.
Here we have:
- Main window/system registration.
- Dynamic Node registration.
- Framework defaults propogating into downstream editors.
- And custom per-editor nodes.
- Window handling. Enabling multiple windows beyond just the base Graph window.
- Toggleable execution flow lines.
- Toggleable variable system features.
- Overriding the "drop node into empty window" event to enable unique behaviour.
- Saving and Loading, and Recent Files.
- Saving can extend across multiple graphs and tabs.
- Saving can be massively customized. In this case a base dialogue database combining global variables settings, and an array of custom graphs. All fully saved.
- Not tested yet, but node execution logic.
- You can instance n number of graphs.
- You can execute any of the instances.
- You can change variables programmatically to modulate the graph instance behaviour.
A long way to go for stability and range of features, but I think it's incredibly cool.