Podpora pre undo / redo. Do hlavného menu treba pridať sekciu:
Upraviť:
Vrátiť zmeny -> vráti sa o jeden krok dozadu (Ctrl + Z)
Opakovať -> ak sa používateľ vrátil o krok dozadu, ale ešte nič nezmenil, má možnosť ísť naspäť (Ctrl + Shift + Z)
Implementačný návrh:
Vytvoriť zásobník dokumentov (backstack), kam sa pri každej "reanalýze" vloží stav dokumentu pred zmenou.
V nastaveniach treba mať maximálny počet krokov, koľko sa dá vrátiť a pri prekročení tejto hodnoty "zabúdať" staršie stavy, aby sme nepreťažovali RAM
Pri použití undo, treba aktuálny stav dokumentu vloźiť do nového zásobníka (forwardstack). Aktuálny stav dokumentu treba nahradiť za hodnotu z vrchu backstacku
Pri použití redo treba aktuálnu hodnotu dokumentu vrátiť do backstacku a zobrať hodnotu z forwardstacku
Pri manuálnej zmene v dokumente treba vyčistiť forwardstack
Podpora pre undo / redo. Do hlavného menu treba pridať sekciu:
Upraviť:
Vrátiť zmeny -> vráti sa o jeden krok dozadu (Ctrl + Z) Opakovať -> ak sa používateľ vrátil o krok dozadu, ale ešte nič nezmenil, má možnosť ísť naspäť (Ctrl + Shift + Z)
Implementačný návrh: