After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 670031 - Would like to undo intelligent scissors selections in progress
Would like to undo intelligent scissors selections in progress
Status: RESOLVED FIXED
Product: GIMP
Classification: Other
Component: Tools
2.6.11
Other All
: Normal enhancement
: 2.10
Assigned To: GIMP Bugs
GIMP Bugs
Depends on:
Blocks:
 
 
Reported: 2012-02-14 02:35 UTC by Phil Manning
Modified: 2015-03-28 20:34 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Phil Manning 2012-02-14 02:35:43 UTC
Overview:
    When using Intelligent Scissors, partial selections can't be undone to fix mis-clicks or clicking in the incorrect location.

Steps:
    1) Open GIMP and create a new image.
    2) Using pencil, paintbrush, etc., make some general marks within the image window.
    3) Select the "Intelligent Scissors" tool.
    4) Click anywhere on image to set scissors first 'node'.
    5) Click anywhere on the image a second time to set scissor second 'node'.
    6) Select 'Undo' from the Edit menu, or press CTRL+Z to undo.

Actual Results: 
    Image created in step 2 has it's last operation undone. Nodes created with scissors remain unchanged.

Expected Results: 
   It would be preferable to undo the scissors' last node. This is in case of an error within a long series of complex 'cuts' with the scissor tool. I would like to be able to undo the mistake instead of having to start over.

Build Date & Platform: 
    Feb-10th-2012 on Windows 7 Home Premium 64-bit.
Comment 1 Michael Natterer 2015-03-28 20:34:35 UTC
Fixed in master:

commit 4842e2a14ff14f58f3eba6985fa7c77f961de24a
Author: Michael Natterer <mitch@gimp.org>
Date:   Sat Mar 28 21:31:03 2015 +0100

    Bug 670031 - Would like to undo intelligent scissors selections in progress
    
    Add undo to the Isissors tool, along with some refactoring:
    
    - Always modify the actual curve, instead of a set of obscure states
      kept around in the tool instance
    - On cancel, simply go back to the curve on the undo stack
    - Draw handles on top of curve segments
    - Draw the currently edited segments and handles in the highlight color

 app/tools/gimpiscissorstool.c | 717 +++++++++++++++++++++++++++++++++++------------------
 app/tools/gimpiscissorstool.h |  15 +-
 2 files changed, 485 insertions(+), 247 deletions(-)