As we explain every time this comes up ( yes, Barthvis, question no 1001 and still no search on the forum after all these years?
in a live application is a bit problematic, and very different to how undo
works in for instance Photoshop. You also might notice that other live performance applications almost never have undo
. If they do, they switch between an arrangement and performance view, where one has undo
and one hasn't.
We were able to add undo
in the Advanced Output, because everything you do there is a user action. So it's easy to keep a list of the actions that were taken, and revert them.
In the main interface, there are users actions but there is also a lot automation that happens without any user action. Clips play, effects modulate their parameters, autopilot triggers new clips, etc etc. To Resolume, it makes no difference if it was you that set the clip playhead to a different time, or if it jumped there because it was set to random playback. And was that clip triggered by the autopilot or did you actually mean to click it and is that what you want to undo
? Should triggers even be undoable actions at all?
Of course we understand how annoying it is to accidentally delete a clip and then have no way to go back. And we get that it seems like the simplest thing in the world to make. From a programmer point of view, the lines between undoable user action and automated program action are very blurry, especially considering all the things that Resolume can do. We almost have to decide on a case by case basis what's undoable and what isn't. Finding a way to make this work properly is a huge, huge undertaking, and we just don't have the time for it.