[Digikam-devel] extragear/graphics/digikam/libs/widgets/imageplugins

Gilles Caulier caulier.gilles at gmail.com
Tue Apr 17 09:52:34 BST 2007


SVN commit 654897 by cgilles:

digikam from trunk : Important improvements here !

The zoom functions available on image editor plugins have been completly rewritten. We use now the new common preview widget. The plugins affected by these changes are Noise Reduction, Restoration, Sharpen, Gaussian Blur, Hot Pixels, Infrared Film, Oil Paint, Emboss, Film Grain, Blur FX, and Charcoal.

Let's me explain the difference between the old an new implementations.

With old stuff, the zoom function is very limited :

- zoom factors from x1 to x3 with step 0.5
- huge memory allocation duing to pre-zoomed picture rendering.
- very slow.
- Can frozen the computer when swap is require (with huge pictures)
- Effect rendering is computed on a redimentionned part of image. It Slow

The new zoom function is completly different :

- Zoom factors from x1 to x12. Free value can be set.
- No more memory allocation. You can use it with huge pictures. No swap is require.
- Zooming/paning is based on new common preview widget witch use a QPixmap cache in memory. 
- It's very very fast to change zoom. Can be done in live.
- Effect is computed on crop 1:1 image. render is more fast.

Note : the mouse handling to pan/zoom in preview pannel is the same than Image Editor Canvas and Preview Mode from Album Gui.

With Urls given below, you can see the Sharpen Tool in action using the new implementation. Note the new zoom slider on the bottom/left of dialog.

http://digikam3rdparty.free.fr/Screenshots/digikam0.9.2-newimagepluginszoomfunction1.png
http://digikam3rdparty.free.fr/Screenshots/digikam0.9.2-newimagepluginszoomfunction2.png

You will seen than it's now a real pleasure to navigate over the image to test an effect...

CCMAIL: digikam-devel at kde.org




 M  +80 -96    imagepannelwidget.cpp  
 M  +19 -19    imagepannelwidget.h  
 M  +207 -241  imageregionwidget.cpp  
 M  +21 -24    imageregionwidget.h  





More information about the Digikam-devel mailing list