One thing: right now subsequent arrow-key movements are stored as
separate
undo steps. I'd like to combine all adjacent moves in one direction
(only
horizontal or only vertical) in one step. Is there already a mechanism
for
that, or do I have to dig into the undo system to implement it?
Yes, there's already a facility present for that: sp_document_maybe_done().
Thanks for the pointer. I tried this but it did not work until I replaced:
doc->actionkey = NULL;
by
doc->actionkey = key;
in sp_document_maybe_done(). This fix seems logical to me, but it's not my code so please confirm that it's correct. I've just committed a version that puts subsequent same-direction arrow-key movements into one undo step (in both selector and node edit) so you can test how it works. Previously, maybe_done was only used in the item properties dialog (which is planned for elimination btw).
_________________________________________________________________ Protect your PC - get McAfee.com VirusScan Online http://clinic.mcafee.com/clinic/ibuy/campaign.asp?cid=3963