Ação Desfazer / Refazer

Olá Pessoal!

Estou fazendo um pequeno aplicativo que contem alguns JTextField, e gostaria de adicionar as ações Desfazer / Refazer (Undo/Redo). Para que o usuário possa desfazer ou refazer ações cometidas. Já procurei no Fórum do PortalJava e outros lugares, mas nada encontrei.
Gostaria de saber qual método ou classe que devo implementar para poder ter essas ações.

Obrigado!

bom, no caso do JTextField você pode criar um vector e armazenar seu valor a cada X segundos ou a cada X caracteres, e a cada CTRL + Z vc pega o valor corrente do Vector e e incrementa UM, seta ele no campo :-).
Mas isso é coisa de se parar um pouco e pensar :-), as vezes pode ser mais vantajoso criar um arquivo temporario.