Thanks a lot.
The Memento design pattern could be used to implement Redo and Undo functionality in any OO language. Its a classic GoF design pattern. In brief, the Memento object is responsible for capturing and storing just enough information to restore the state of the object that needs to support undo/redo feature.
Take a look at
http://www.dofactory.com/Patterns/PatternMemento.aspx