Il 31/03/08, jacopo<[EMAIL PROTECTED]> ha scritto:
> Fantastico, pero' non mi e' chiaro cosa significhi "rimuovi cerchio"...
> L'idea che mi sono fatto io e' che per fare l'undo si debba cancellare
> tutto e rieseguire tutti i comandi finora eseguiti tranne l'ultimo, non
> penso esistano metodi
Fantastico, pero' non mi e' chiaro cosa significhi "rimuovi cerchio"...
L'idea che mi sono fatto io e' che per fare l'undo si debba cancellare
tutto e rieseguire tutti i comandi finora eseguiti tranne l'ultimo, non
penso esistano metodi che permettano di cancellare l'ultima azione fatta
sul devi
Quindi per ogni oggetto che esegue un comando definisco anche il suo
undo (e redo), tipo
history = {}
def drawCircle(param)
def do
"disegna il cerchio"
push(history, param)
def undo
pop(history, param)
"rimuovi il ce
+ o meno, tu mantieni una lista di comandi eseguiti. ogni comando
e un oggetto con un metodo do e un metodo undo.
ecc.
Il 31/03/08, jacopo<[EMAIL PROTECTED]> ha scritto:
> Grazie mille, scusa se rispondo solo ora ma mi sono documentato sui
> pattern e sopratutto sulle metaclassi che non conoscevo
Grazie mille, scusa se rispondo solo ora ma mi sono documentato sui
pattern e sopratutto sulle metaclassi che non conoscevo in python.
Ora volevo chiedervi se l'idea che mi sono fatto fosse giusta prima di
provare ad implementarla.
E' sufficente mantenere una cache (una lista) di tuple di elemen
Ti serve il design pattern Memento+Command.
Per il memento in Python, vedi il post di valentino:
http://aspn.activestate.com/ASPN/Cookbook/Python/Recipe/286132
Ti salvi nella cache i comandi che hai eseguito, senza salvare le immagini.
io feci qualcosa di simile con le wx in C++ qualche hanno fa.
Ciao a tutti,
stiamo sviluppando un applicazione simil-paint utilizzando le librerie
wx 2.8.7.1-1, e siamo arrivati al punto in cui abbiamo necessita' di
implementare una funzione di undo/redo...
Abbiamo pensato di implementarla mantenendo uno stack di bmp su disco,
ma prima di caricare di lav