« Choc et Effroi '03 | Main | Alpaca & Stone »

Scriptable Node-Graph Editor (prototype)

scriptable%20node-graph%20editor.png

This is a fully scriptable node-graph editor I built recently using Qt 4.3 and QSA. I have extended the DiagramItem example (ships with Qt 4.x sourcecode) to allow the user to draw the shapes (like in visio), as well as style the stroke, fill, and double-click to add labels to each node.

I then integrated the QSA engine so that you can use ECMA script to extend the interface. At the moment, you can procedurally change the formatting, size, etc. of each node or link; as well as topology checking. This means that you can write custom event handlers in the script editor (right-hand drawer in screencap) to change the color of node based on how you have linked them up. This is extremely useful for things like checking for circular, ping-pong, or other types of invalid references.

It can also read in an XML file and convert it to a nodegraph (based on a standard format). Eventually I will make it so it can also write to XML.

Many of the gestures and the overall design gestalt are drawn from OmniGraffle -- one of my absolutely favorite apps ever.

I will eventually be open sourcing this, but it'll take me a bit more time to clean it up -- especially with my job and dissertation work taking priority ;)

TrackBack

TrackBack URL for this entry:
http://s159415912.onlinehome.us/mt/mt-tb.cgi/35

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)

About

This page contains a single entry from the blog posted on June 20, 2007 9:55 PM.

The previous post in this blog was Choc et Effroi '03.

The next post in this blog is Alpaca & Stone.

Many more can be found on the main index page or by looking through the archives.

Creative Commons License
This weblog is licensed under a Creative Commons License.
Powered by
Movable Type 3.32