Bug 312742 - Mirroring Layer along X or Y with non-even image size creates a one-pixel line at left/top
Summary: Mirroring Layer along X or Y with non-even image size creates a one-pixel lin...
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: Tools/Transform (show other bugs)
Version: git master (please specify the git hash!)
Platform: Other Linux
: NOR normal
Target Milestone: ---
Assignee: Dmitry Kazakov
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-01-06 12:42 UTC by Dmitry Kazakov
Modified: 2013-01-14 03:30 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dmitry Kazakov 2013-01-06 12:42:54 UTC
subj
Comment 1 Dmitry Kazakov 2013-01-08 15:25:36 UTC
Git commit 98f3d8f453faeb49f0f2cc99c18cb393a7542835 by Dmitry Kazakov.
Committed on 08/01/2013 at 16:18.
Pushed by dkazakov into branch 'master'.

Fixed several bugs of transforming Shape/Paint layers

This patch fixes several problems:
1) Fixes the updates of the clone layer, when changing
   its source's mask
2) Fixes updates for undo of a transformation of a layer
   having both clone and a mask
3) Fixes Mirroring of a paint layer with odd size
4) Fixes Undo for transformations on Shape Layers
5) Adds a Unit Test for all this.
Related: bug 251168, bug 312734, bug 312750

M  +6    -0    krita/image/kis_base_rects_walker.h
M  +13   -0    krita/image/kis_image.cc
M  +29   -0    krita/image/kis_image.h
M  +3    -0    krita/image/kis_image_interfaces.h
M  +1    -0    krita/image/kis_mask.cc
M  +44   -2    krita/image/kis_processing_applicator.cpp
M  +2    -2    krita/image/kis_transform_worker.cc
M  +28   -0    krita/sdk/tests/qimage_based_test.h
A  +159  -0    krita/sdk/tests/ui_manager_test.h     [License: GPL (v2+)]
M  +23   -13   krita/ui/flake/kis_shape_layer_canvas.cpp
M  +6    -3    krita/ui/flake/kis_shape_layer_canvas.h
M  +6    -0    krita/ui/tests/CMakeLists.txt
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_tmask1_paintDevice.png
A  +202  -0    krita/ui/tests/kis_node_manager_test.cpp     [License: GPL (v2+)]
A  +40   -0    krita/ui/tests/kis_node_manager_test.h     [License: GPL (v2+)]
M  +3    -121  krita/ui/tests/kis_selection_manager_test.cpp

http://commits.kde.org/calligra/98f3d8f453faeb49f0f2cc99c18cb393a7542835
Comment 2 Inge Wallin 2013-01-14 03:30:51 UTC
Git commit eaa023c1e36b2daad2def75c44f1170684dadd24 by Inge Wallin, on behalf of Dmitry Kazakov.
Committed on 08/01/2013 at 16:18.
Pushed by ingwa into branch 'text-annotations-ingwa'.

Fixed several bugs of transforming Shape/Paint layers

This patch fixes several problems:
1) Fixes the updates of the clone layer, when changing
   its source's mask
2) Fixes updates for undo of a transformation of a layer
   having both clone and a mask
3) Fixes Mirroring of a paint layer with odd size
4) Fixes Undo for transformations on Shape Layers
5) Adds a Unit Test for all this.
Related: bug 251168, bug 312734, bug 312750

M  +6    -0    krita/image/kis_base_rects_walker.h
M  +13   -0    krita/image/kis_image.cc
M  +29   -0    krita/image/kis_image.h
M  +3    -0    krita/image/kis_image_interfaces.h
M  +1    -0    krita/image/kis_mask.cc
M  +44   -2    krita/image/kis_processing_applicator.cpp
M  +2    -2    krita/image/kis_transform_worker.cc
M  +28   -0    krita/sdk/tests/qimage_based_test.h
A  +159  -0    krita/sdk/tests/ui_manager_test.h     [License: GPL (v2+)]
M  +23   -13   krita/ui/flake/kis_shape_layer_canvas.cpp
M  +6    -3    krita/ui/flake/kis_shape_layer_canvas.h
M  +6    -0    krita/ui/tests/CMakeLists.txt
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/initial/initial_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorX/paint_mirrorX_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_mirrorY/paint_mirrorY_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_rotated_30/paint_rotated_30_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_scale_0.5/paint_scale_0.5_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/paint_shear_30/paint_shear_30_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_mirrorX/shape_mirrorX_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_rotated_30/shape_rotated_30_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_scale_0.5/shape_scale_0.5_tmask1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_blur1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_blur1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_blur1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_clone1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_clone1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_paint1_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_paint1_paintDevice.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_paint1_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_root_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_root_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_shape_original.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_shape_projection.png
A  +-    --    krita/ui/tests/data/node_manager_test/shape_shear_30/shape_shear_30_tmask1_paintDevice.png
A  +202  -0    krita/ui/tests/kis_node_manager_test.cpp     [License: GPL (v2+)]
A  +40   -0    krita/ui/tests/kis_node_manager_test.h     [License: GPL (v2+)]
M  +3    -121  krita/ui/tests/kis_selection_manager_test.cpp

http://commits.kde.org/calligra/eaa023c1e36b2daad2def75c44f1170684dadd24