fazendo desfazer em python

primeiro de tudo .. desculpe se o meu inglês foi ruim. é meu terceiro idioma
estou trabalhando em um software de pintura que desenhar sobre as imagens e salvá-los novamente (para comentar propondo)
Eu uso pilha e wxpython. mas ainda estou tendo problemas com alguns recursos ..
qual é a maneira ideal de fazer a opção desfazer?
outra pergunta .. quando o usuário dimensiona a imagem (ampliando o quadro de desenho), as linhas não são dimensionadas. Como faço para que isso aconteça?

Eu me livrei de todos esses problemas salvando imagens temporárias no disco rígido sempre que o usuário termina uma linha e atribui aquela nova imagem (a antiga com uma linha nela) ao quadro. desfazer e refazer é feito, alternando entre as imagens ... assim quando a imagem de escala do usuário a linha vai escalar também. mas isso é ruim, já que é preciso muito espaço em HD (quando você desenha 1000 linhas) e é lento, pois atribui uma nova imagem toda vez que um usuário desenha uma linha

espero que minha ideia seja clara

Alguém tem uma solução melhor?

questionAnswers(2)

yourAnswerToTheQuestion