I was unable to find any source code for an undo/redo system on the web when I needed it. Maybe this will help someone else in the future.
In the Borland environment (the mere mention of which dates this article something fierce), the Visual Class Library cannot use multiple inheritance with ‘forms’. Multiple inheritance must be accomplished via aggregation. (That held true until BCB6, I believe.) The following framework proved useful for implementing an undo/redo system in those conditions. Continue reading “Undo / Redo in C++”