3. Desfazendo

Quase tudo que você faz para uma imagem no GIMP pode ser desfeito. Você pode desfazer a ação mais recente, escolhendo EditarDesfazer no menu imagem, mas isso é feito com tanta frequência que você realmente deveria memorizar o atalho do teclado Ctrl+Z.

A própria ação de Desfazer pode ser desfeita. Depois de ter desfeito uma ação, você pode refazer, selecionando EditarRefazer a partir do menu de imagem, ou usar o atalho de teclado Ctrl+Y. Muitas vezes, é útil para avaliar o efeito de uma ação várias vezes desfazendo e refazendo. Isto é normalmente muito rápido, e não consome quaisquer recursos adicionais nem altera o histórico de desfazer, de modo que nunca há mal nenhum nisso.

[Cuidado] Cuidado

Se você desfizer uma ou mais ações e operar na imagem de alguma forma, exceto usando Desfazer ou Refazer, deixará de ser possível refazer essas ações: elas serão perdidas para sempre. A solução, se isso for um problema para você, é duplicar a imagem, depois de desfazer até o ponto desejado, e testar as novas operações na cópia. (Não testar na imagem original, porque o histórico de desfazer/refazer não é copiado quando você duplica uma imagem.)

Se você costuma ficar desfazendo e refazendo muitos passos de cada vez, pode ser mais conveniente para trabalhar com o diálogo de Histórico do Desfazer, um diálogo de encaixe que mostra um pequeno esboço de cada ponto no Histórico de desfazer, permitindo-lhe voltar ou andar pra frente até esse ponto, só clicando no mesmo.

Undo is performed on an image-specific basis: the "Undo History" is one of the components of an image. GIMP allocates a certain amount of memory to each image for this purpose. You can customize your Preferences to increase or decrease the amount, using the System Resources page of the Preferences dialog. There are two important variables: the minimal number of undo levels, which GIMP will maintain regardless of how much memory they consume, and the maximum undo memory, beyond which GIMP will begin to delete the oldest items from the Undo History.

[Nota] Nota

Mesmo que o Histórico de desfazer seja um componente de uma imagem, ele não é salvo quando você salva a imagem usando o formato XCF nativo do GIMP, que preserva todas as outras propriedades da imagem. Quando a imagem é reaberta, ela terá um Histórico do desfazer vazio.

A implementação de Desfazer do GIMP é bastante sofisticada. Muitas operações exigem muito pouca memória para Desfazer (por exemplo, alterar a visibilidade de uma camada), para que você possa realizar longas sequências delas antes que elas saiam do histórico de desfazer. Algumas operações, como alterar a visibilidade da camada, são compactadas, para que fazê-las várias vezes em uma série produza apenas um único ponto no histórico de desfazer. No entanto, há outras operações que podem consumir uma grande quantidade de memória para desfazer. A maioria dos filtros são implementados por plug-ins, desta forma o núcleo do GIMP não tem nenhuma maneira eficiente de saber o que mudou. Como tal, não há maneira de implementar Desfazer exceto memorizando os conteúdos inteiros da camada antes e depois da operação ser executada . Pode ser que você seja capaz de realizar apenas algumas dessas operações antes delas saírem do histórico do desfazer.

3.1. Coisas que não podem ser desfeitas

A maioria das ações que alteram uma imagem podem ser desfeitas. Ações que não alteram a imagem geralmente não podem ser desfeitas. Exemplos incluem salvar a imagem em um arquivo, duplicar a imagem, copiar parte da imagem para a área de transferência, etc. Elas também incluem a maioria das ações que afetam a visualização da imagem sem alterar os dados da imagem subjacente. O exemplo mais importante é o zoom. Existem, no entanto, as exceções: Alternar a Máscara Rápida para ligada ou desligada pode ser desfeito, mesmo que isso não altere os dados de imagem.

Existem algumas ações importantes que alteraram uma imagem e não podem ser desfeitas:

Fechar a imagem

The Undo History is a component of the image, so when the image is closed and all of its resources are freed, the Undo History is gone. Because of this, unless the image has not been modified since the last time it was saved, GIMP always asks you to confirm that you really want to close the image.

Reverter a imagem

Reverter significa recarregar a imagem do arquivo. O GIMP implementa isso fechando a imagem e criando uma nova imagem, e portanto, o histórico de desfazer é perdido como consequência. Devido a isso, se a imagem foi alterada, o GIMP lhe pede para confirmar se você realmente quer reverter a imagem.

Pedaços de ações

Algumas ferramentas requerem que você realize uma série complexa de manipulações antes que eles entrem em vigor, mas só permitem desfazer a coisa toda em vez de elementos individuais. Por exemplo, as Tesouras Inteligentes exigem a criação de um caminho fechado, clicando em vários pontos na imagem, e em seguida, clicando no interior do caminho para criar uma seleção. Você não pode desfazer os cliques individuais: desfazer depois que você termina leva todo o caminho de volta ao ponto de partida. Em outro exemplo, quando você está trabalhando com a ferramenta de texto, você não pode desfazer letras individuais, alterações de fonte, etc: desfazer depois que você termina remove a camada de texto recém-criada.

Filtros e outras ações realizadas por plug-ins ou scripts, podem ser desfeitos assim como ações implementadas pelo núcleo do GIMP, mas isso requer que os mesmos façam uso correto das funções de Desfazer do GIMP. Se o código não está correto, um plug-in pode possivelmente corromper o histórico de desfazer, de modo que não apenas a ação do plug-in, mas também ações anteriores não possam mais serem desfeitas adequadamente. Acredita-se que plug-ins e scripts distribuídos junto com o GIMP estão todos configurados corretamente, mas, claro que nenhuma garantia pode ser dada para plug-ins que você obtenha de outras fontes. Além disso, mesmo se o código estiver correto, o cancelamento de um plug-in durante a execução pode corromper o histórico de desfazer, por isso é melhor evitar fazer isso a menos que você, acidentalmente, tenha feito algo cujas consequências vão ser muito prejudiciais.