add undo redo for translation