The first version of a program like this I wrote with a colleague in the mid-80's. For several years it was an important part of our toolkit as we studied Siemion Fajtlowicz's Graffiti conjectures (automated conjecture creation in graph theory). This version had "drag-and-trash" and I included it in my second (Java) version. To tell you the truth, I'd forgotten about it until I saw the instructions on Rado's latest JSProcessing version, and I was pleasantly surprised to be reminded about it. The only argument in favor that I can give is
(a) I used it frequently (b) I found it easy, quick, intuitive, and useful (c) I can't recall making unintended deletions I imagine we could vigorously debate "intuitive" and (c) is debatable given that I didn't even recall it was a "feature." ;-) Of course, a compromise would be to make the behavior configurable. In any event, the Fateman/Chen paper reminded me that an undo facility might be a good idea - either saving the entire graph, or since basic operations would seem to be easily reversible, maybe saving the atomic action needed to reverse an edit. The first could get expensive in space, and the second makes a good argument for keeping the functionality simple as both Rado and Fateman/Chen have suggested. Rado - this is very nice work! I'd imagine the next step is figuring out how to integrate it with the notebook and the command-line, especially with regard to communicating changes back to the underlying data structure. Maybe the code for plot() and TinyMCE would give some hints on invoking a graph editor properly (at the command-line, and at the notebook, respectively). Sage has various mechanisms for communication, but I wouldn't know which to suggest. Thanks for the contribution - this will be a great addition to Sage. Rob --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---