Vernünftige UNDO-Funktion



  • Hi zusammen,
    ich hab eine SDI-Anwendung die von CView abgeleitet ist.
    Hierfür würde ich jetzt gerne eine UNDO-Funktion bereitstellen, z.B. 100* UNDO oder sowas!

    Meine Frage ist jetzt:
    Wie kann man sowas vernünftig machen?

    Bei mir kann man Punkte zeichen/löschen, Linien zeichen/löschen, Punkte verschieben, Punkte verbinden/Verbindung löschen, etc...
    Meine Idee war, ich bastel mir eine "Super-Klasse", die alle möglichen Aktionen speichern kann und lege für jede Aktion so einen Typ an, also dann z.B. ein UNDO-Array mit 100 Elementen.
    Bin mir aber nicht sicher, ob das das Gelbe vom Ei ist!

    Vielen Dank für ein paar Ratschläge!
    Gruss, Tobias





  • Guck dir mal das Command-Pattern an. In dem Buch "Entwurfsmuster" von Addison Wesley wird beschrieben wie man damit eine Undo/Redo-Klasse realisieren kann. Ist nur zu empfehlen das Buch.


Anmelden zum Antworten