Bug 87105

Summary: wish: undo function in editor
Product: [Applications] digikam Reporter: Wilbert Berendsen <wbsoft>
Component: ImageEditor-UndoAssignee: Digikam Developers <digikam-bugs-null>
Status: RESOLVED FIXED    
Severity: wishlist CC: caulier.gilles
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In: 7.5.0

Description Wilbert Berendsen 2004-08-13 09:26:02 UTC
Version:           0.7.0-cvs (using KDE 3.3.0, compiled sources)
Compiler:          gcc version 3.3.4 20040623 (Gentoo Linux 3.3.4-r1, ssp-3.3.2-2, pie-8.7.6)
OS:                Linux (i686) release 2.6.7-gentoo-r11

In the image editor it would be very nice to have a undo/redo functionality.
Comment 1 Renchi Raju 2005-02-06 18:51:03 UTC
CVS commit by pahlibar: 


Undo for digiKam image-editor. The undo-stack design is very simple: actions
are either reversible (rotate,flip) or irreversible (rest of the actions
and all of the plugin actions). The reversible undos are implemented by just
saving the commands and for the irreversible undos image copies are saved
into a temporary database.

At some later stage, this will be improved and redos & "History based undo-redo"
will be implemented
BUG: 87105


  A            utilities/imageeditor/undoaction.cpp   1.1 [GPL]
  A            utilities/imageeditor/undoaction.h   1.1 [GPL]
  A            utilities/imageeditor/undocache.cpp   1.1 [GPL]
  A            utilities/imageeditor/undocache.h   1.1 [GPL]
  A            utilities/imageeditor/undomanager.cpp   1.1 [GPL]
  A            utilities/imageeditor/undomanager.h   1.1 [GPL]
  M +2 -1      showfoto/Makefile.am   1.6
  M +3 -2      utilities/imageeditor/Makefile.am   1.19
  M +10 -90    utilities/imageeditor/canvas.cpp   1.32
  M +2 -1      utilities/imageeditor/canvas.h   1.20
  M +2 -0      utilities/imageeditor/digikamimagewindowui.rc   1.4
  M +5 -0      utilities/imageeditor/imagewindow.cpp   1.81
  M +1 -0      utilities/imageeditor/imagewindow.h   1.34
  M +127 -25   utilities/imageeditor/imlibinterface.cpp   1.42
  M +10 -9     utilities/imageeditor/imlibinterface.h   1.21



Comment 2 Joern Ahrens 2005-03-07 14:11:35 UTC
CVS commit by jahrens: 

Added a redo operation for the image editor. 
Now it is possible to undo/redo operations in the image editor.
Next step is the history based undo/redo.

CCBUG: 87105
CCMAIL: joern.ahrens@kdemail.net


  M +4 -0      showfoto/showfoto.cpp   1.22
  M +1 -0      showfoto/showfoto.h   1.15
  M +2 -0      showfoto/showfotoui.rc   1.11
  M +12 -7     utilities/imageeditor/canvas.cpp   1.34
  M +3 -2      utilities/imageeditor/canvas.h   1.22
  M +2 -0      utilities/imageeditor/digikamimagewindowui.rc   1.6
  M +14 -8     utilities/imageeditor/imagewindow.cpp   1.88
  M +2 -1      utilities/imageeditor/imagewindow.h   1.36
  M +35 -20    utilities/imageeditor/imlibinterface.cpp   1.44
  M +2 -1      utilities/imageeditor/imlibinterface.h   1.23
  M +43 -7     utilities/imageeditor/undoaction.cpp   1.3
  M +18 -7     utilities/imageeditor/undoaction.h   1.3
  M +41 -12    utilities/imageeditor/undocache.cpp   1.5
  M +7 -4      utilities/imageeditor/undocache.h   1.2
  M +103 -30   utilities/imageeditor/undomanager.cpp   1.2
  M +12 -2     utilities/imageeditor/undomanager.h   1.2



Comment 3 Joern Ahrens 2005-03-07 22:30:08 UTC
CVS commit by jahrens: 

Added a history based undo/redo function. The undo/redo icons
in the toolbar are popup-menus, which describes the actions
on the image.

CCBUG: 87105
CCMAIL: joern.ahrens@kdemail.net


  M +1 -1      digikam/imageplugins/imageeffect_blur.cpp   1.20
  M +1 -1      digikam/imageplugins/imageeffect_bwsepia.cpp   1.10
  M +1 -1      digikam/imageplugins/imageeffect_hsl.cpp   1.12
  M +1 -1      digikam/imageplugins/imageeffect_ratiocrop.cpp   1.30
  M +1 -1      digikam/imageplugins/imageeffect_rgb.cpp   1.19
  M +1 -1      digikam/imageplugins/imageeffect_sharpen.cpp   1.21
  M +5 -5      digikam/imageplugins/imageplugin_core.cpp   1.55
  M +22 -4     digikam/utilities/imageeditor/canvas.cpp   1.35
  M +7 -3      digikam/utilities/imageeditor/canvas.h   1.23
  M +2 -2      digikam/utilities/imageeditor/imageiface.cpp   1.9
  M +3 -1      digikam/utilities/imageeditor/imageiface.h   1.10
  M +50 -5     digikam/utilities/imageeditor/imagewindow.cpp   1.89
  M +39 -34    digikam/utilities/imageeditor/imagewindow.h   1.37
  M +22 -10    digikam/utilities/imageeditor/imlibinterface.cpp   1.45
  M +6 -1      digikam/utilities/imageeditor/imlibinterface.h   1.24
  M +26 -3     digikam/utilities/imageeditor/undoaction.cpp   1.4
  M +7 -1      digikam/utilities/imageeditor/undoaction.h   1.4
  M +23 -2     digikam/utilities/imageeditor/undomanager.cpp   1.4
  M +3 -0      digikam/utilities/imageeditor/undomanager.h   1.3
  M +1 -1      digikamimageplugins/adjustcurves/adjustcurves.cpp   1.16
  M +1 -1      digikamimageplugins/adjustlevels/adjustlevels.cpp   1.22
  M +1 -1      digikamimageplugins/antivignetting/imageeffect_antivignetting.cpp   1.8
  M +1 -1      digikamimageplugins/blurfx/imageeffect_blurfx.cpp   1.7
  M +1 -1      digikamimageplugins/border/imageeffect_border.cpp   1.30
  M +1 -1      digikamimageplugins/channelmixer/channelmixer.cpp   1.3
  M +1 -1      digikamimageplugins/charcoal/imageeffect_charcoal.cpp   1.31
  M +1 -1      digikamimageplugins/despeckle/despeckle.cpp   1.36
  M +1 -1      digikamimageplugins/distortionfx/imageeffect_distortionfx.cpp   1.4
  M +1 -1      digikamimageplugins/emboss/imageeffect_emboss.cpp   1.30
  M +1 -1      digikamimageplugins/filmgrain/imageeffect_filmgrain.cpp   1.28
  M +1 -1      digikamimageplugins/freerotation/imageeffect_freerotation.cpp   1.13
  M +1 -1      digikamimageplugins/infrared/imageeffect_infrared.cpp   1.3
  M +1 -1      digikamimageplugins/inserttext/imageeffect_inserttext.cpp   1.2
  M +1 -1      digikamimageplugins/lensdistortion/imageeffect_lensdistortion.cpp   1.15
  M +1 -1      digikamimageplugins/oilpaint/imageeffect_oilpaint.cpp   1.33
  M +2 -1      digikamimageplugins/perspective/perspectivewidget.cpp   1.13
  M +2 -2      digikamimageplugins/raindrop/imageeffect_raindrop.cpp   1.28
  M +1 -1      digikamimageplugins/sheartool/imageeffect_sheartool.cpp   1.11
  M +1 -1      digikamimageplugins/solarize/imageeffect_solarize.cpp   1.19
  M +1 -1      digikamimageplugins/superimpose/imageeffect_superimpose.cpp   1.16
  M +1 -1      digikamimageplugins/unsharp/unsharp.cpp   1.30