3. Vracení změn

Téměř vše, co s obrázkem v Gimpu provedete, lze vrátit zpět. Poslední akci vrátíte zpět volbou UpravitZpět z nabídky obrázku. Budete to ale pravděpodobně dělat tak často, že se vyplatí zapamatovat si klávesovou zkratku Ctrl-Z.

Vrátit zpět lze i vracení, Pokud jste nějakou akci vrátili zpět, můžete ji provést znovu volbou UpravitZnovu z nabídky obrázku nebo použít klávesovou zkratku Ctrl-Y. Občas je výhodné posoudit vliv nějaké akce jejím opakovaným vracením a znovuprováděním. Je to obvykle velmi rychlé a nespotřebovává zvláštní zdroje ani paměť historie změn, takže se není čeho obávat.

[Výstraha] Výstraha

Pokud vrátíte zpět jednu nebo více operací a a pak s obrázkem provedete další operaci s výjimkou Zpět/Znovu, jsou operace nenávratně ztraceny; již je nebude možné obnovit pomocí funkce Znovu. Řešením může být duplikování obrázku a práce s jeho kopií. ( Nikoliv originálem, protože historie změn se při duplikování obrázku nekopíruje.)

Pokud často vracíte a či obnovujete mnoho změn najednou, bude se vám lépe pracovat s dialogem Historie změn. Jedná se o dokovatelný dialog zobrazující náhled všech změn v historii a umožňující mezi jednotlivými body historie přecházet jednoduchým klikáním.

Historie změn je součástí obrázku, proto je udržována pro každý obrázek zvlášť. GIMP každému obrázku pro tento účel vyhradí určité množství paměti. Na stránce Předvoleb Prostředí můžete toto množství paměti nastavit. Existují dvě důležité volby: minimální počet kroků zpět, které GIMP dodrží bez ohledu na množství paměti, a maximální paměť vracení, po jejímž naplnění začne GIMP zapomínat nejstarší bodu z historie.

[Poznámka] Poznámka

Přestože je historie změn součástí obrázku, není s ním ukládána ani do nativního XCF formátu, který zachovává všechny ostatní vlastnosti obrázku. Znovuotevřený obrázek má historii prázdnou.

Implementace historie změn je v Gimpu poměrně složitá. Mnoho operací vyžaduje velmi málo paměti v historii změn (např. změna viditelnosti vrstvy), takže jich můžete provádět velmi mnoho, než je začne GIMP zapomínat. Některé operace (příkladem je opět změna viditelnosti vrstvy) se komprimují, takže pokud je učiníte několikrát přímo za sebou, budou reprezentovány pouze jedním bodem v historii změn. Některé jiné operace však mohou spotřebovat velké množství paměti v historii změn. Příkladem je většina filtrů: protože jsou implementovány jako zásuvné moduly, nemá GIMP možnost zjistit, co skutečně s obrázkem udělaly. Proto se v historii změn ukládá celý obsah vrstvy před i po použití filtru. Takových operací lze proto v historii změn uložit jen relativně málo.

3.1. Nevratné operace

Většina operací měnících obrázek lze vrátit zpět. Operace, které obrázek nemění, ale většinou vrátit nejdou. Patří mezi ně uložení obrázku do souboru, duplikování obrázku, zkopírování jeho části do schránky atd. Patří mezi ně také většina operací, které mění zobrazení obrázku, ale nikoliv obrazová data. Nejdůležitějším příkladem je přibližování (zoom). Existují ovšem i výjimky: lze vrátit přepínání rychlé masky, i když to nijak neovlivňuje obrazová data.

Existuje několik důležitých operací, které mění obrazová data, ale přesto je nelze vrátit zpět:

Zavření obrázku

Historie změn je součástí obrázku, proto, pokud je obrázek uzavřen a jím používané zdroje uvolněny, historie změn se ztratí. Proto se, pokud nebyl obrázek od poslední změny uložen, GIMP zeptá, zda zavření obrázku myslíte skutečně vážně. (Toto chování lze změnit na stránce Prostředí dialogu Předvolby; pokud tak učiníte, berete na sebe zodpovědnost za případné nechtěné zavření neuloženého obrázku.)

Navrácení obrázku

Navrácení znamená obnovení obrázku starší uloženou verzí ze souboru. GIMP tak ve skutečnosti činí zavřením stávajícího obrázku a jeho novým otevřením, proto je historie změn ztracena. Proto, pokud jsou v obrázku neuložené změny, požádá GIMP o potvrzení.

Části operací

Některé nástroje vyžadují pro své použití celou komplexní řadu akcí, ale umožňují vrátit jen celou tuto řadu jako celek, nikoliv její jednotlivé části. Například inteligentní nůžky vyžadují vytvoření uzavřené křivky klikáním na více bodů v obrázku a následné kliknutí do vymezené oblasti pro vytvoření výběru. Nelze však vracet jednotlivá kliknutí, příkaz Zpět vás vrátí na začátek, před použití nůžek. Jiným příkladem je textový nástroj, který neumožňuje vracet jednotlivá písmeny či změny formátování. Příkaz Zpět v vás opět vrátí na začátek, před použití textového nástroje.

Filtry a další operace prováděné skripty či zásuvnými moduly lze vracet stejně jako operace prováděné jádrem Gimpu, ale pouze v případě, že jsou správně napsány a správně používají funkce Gimpu pro historii změn. Pokud nejsou napsány správně, mohou poškodit historii změn tak, že nelze vrátit ani operaci provedenou filtrem, ani operace předchozí. Zásuvné moduly i skripty dodávané přímo s Gimpem pracují spolehlivě, nicméně to samozřejmě nelze zaručit u zásuvných modulů a skriptů z jiných zdrojů. I v případě, že je zásuvný modul napsán správně, může jeho zrušení během práce znamenat poškození historie změn. Proto je lépe běžící zásuvné moduly nepřerušovat, není-li to skutečně nezbytné.