[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [digikam/development/3.0.0] /: new deprecated method based on uchar* image data container ported to
From:       Gilles Caulier <caulier.gilles () gmail ! com>
Date:       2012-09-01 6:07:16
Message-ID: 20120901060716.9132CA6094 () git ! kde ! org
[Download RAW message or body]

Git commit 4153acde275710d2001b725f39140d47241d588f by Gilles Caulier.
Committed on 01/09/2012 at 08:06.
Pushed by cgilles into branch 'development/3.0.0'.

new deprecated method based on uchar* image data container ported to DImg

M  +1    -1    imageplugins/decorate/bordertool.cpp
M  +1    -1    imageplugins/enhance/antivignettingtool.cpp
M  +1    -2    imageplugins/enhance/inpaintingtool.cpp
M  +1    -1    imageplugins/enhance/lensautofixtool.cpp
M  +1    -1    imageplugins/enhance/lensdistortiontool.cpp
M  +1    -1    imageplugins/enhance/redeyetool.cpp
M  +2    -2    imageplugins/filters/colorfxtool.cpp
M  +1    -1    imageplugins/filters/distortionfxtool.cpp
M  +1    -1    imageplugins/filters/raindroptool.cpp
M  +1    -1    imageplugins/transform/contentawareresizetool.cpp
M  +1    -1    imageplugins/transform/freerotationtool.cpp
M  +2    -2    imageplugins/transform/perspectivewidget.cpp
M  +1    -1    imageplugins/transform/resizetool.cpp
M  +1    -1    imageplugins/transform/sheartool.cpp
M  +17   -6    utilities/imageeditor/editor/imageiface.cpp
M  +6    -7    utilities/imageeditor/editor/imageiface.h

http://commits.kde.org/digikam/4153acde275710d2001b725f39140d47241d588f

diff --git a/imageplugins/decorate/bordertool.cpp \
b/imageplugins/decorate/bordertool.cpp index f50b8c4..c2c8a9f 100644
--- a/imageplugins/decorate/bordertool.cpp
+++ b/imageplugins/decorate/bordertool.cpp
@@ -165,7 +165,7 @@ void BorderTool::putPreviewData()
 
     imDest.bitBltImage(&imTemp, (w-imTemp.width())/2, (h-imTemp.height())/2);
 
-    iface->putPreviewImage(imDest.bits());
+    iface->putPreview(imDest);
     d->previewWidget->updatePreview();
 }
 
diff --git a/imageplugins/enhance/antivignettingtool.cpp \
b/imageplugins/enhance/antivignettingtool.cpp index 8756950..a1c446c 100644
--- a/imageplugins/enhance/antivignettingtool.cpp
+++ b/imageplugins/enhance/antivignettingtool.cpp
@@ -163,7 +163,7 @@ void AntiVignettingTool::putPreviewData()
 {
     ImageIface* iface = d->previewWidget->imageIface();
     DImg preview      = \
filter()->getTargetImage().smoothScale(iface->previewWidth(), \
                iface->previewHeight());
-    iface->putPreviewImage(preview.bits());
+    iface->putPreview(preview);
     d->previewWidget->updatePreview();
 }
 
diff --git a/imageplugins/enhance/inpaintingtool.cpp \
b/imageplugins/enhance/inpaintingtool.cpp index 7f10661..d4f4ed7 100644
--- a/imageplugins/enhance/inpaintingtool.cpp
+++ b/imageplugins/enhance/inpaintingtool.cpp
@@ -448,8 +448,7 @@ void InPaintingTool::putPreviewData()
                   iface->selectedWidth(), iface->selectedHeight());
     DImg imDest = d->cropImage.copy(cropSel);
 
-    iface->putPreviewImage((imDest.smoothScale(iface->previewWidth(),
-                                               iface->previewHeight())).bits());
+    iface->putPreview(imDest.smoothScale(iface->previewWidth(), \
iface->previewHeight()));  d->previewWidget->updatePreview();
     d->isComputed = true;
     d->lastFilterAction = filter()->filterAction();
diff --git a/imageplugins/enhance/lensautofixtool.cpp \
b/imageplugins/enhance/lensautofixtool.cpp index 08b46ae..f50cf8e 100644
--- a/imageplugins/enhance/lensautofixtool.cpp
+++ b/imageplugins/enhance/lensautofixtool.cpp
@@ -240,7 +240,7 @@ void LensAutoFixTool::prepareFinal()
 
 void LensAutoFixTool::putPreviewData()
 {
-    d->previewWidget->imageIface()->putPreviewImage(filter()->getTargetImage().bits());
 +    d->previewWidget->imageIface()->putPreview(filter()->getTargetImage());
     d->previewWidget->updatePreview();
 }
 
diff --git a/imageplugins/enhance/lensdistortiontool.cpp \
b/imageplugins/enhance/lensdistortiontool.cpp index e758b19..e038e27 100644
--- a/imageplugins/enhance/lensdistortiontool.cpp
+++ b/imageplugins/enhance/lensdistortiontool.cpp
@@ -314,7 +314,7 @@ void LensDistortionTool::putPreviewData()
 {
     ImageIface* iface = d->previewWidget->imageIface();
     DImg imDest       = \
filter()->getTargetImage().smoothScale(iface->previewWidth(), \
                iface->previewHeight());
-    iface->putPreviewImage(imDest.bits());
+    iface->putPreview(imDest);
 
     d->previewWidget->updatePreview();
 }
diff --git a/imageplugins/enhance/redeyetool.cpp \
b/imageplugins/enhance/redeyetool.cpp index 9bc82bd..947acb5 100644
--- a/imageplugins/enhance/redeyetool.cpp
+++ b/imageplugins/enhance/redeyetool.cpp
@@ -393,7 +393,7 @@ void RedEyeTool::slotEffect()
 
     DImg preview = selection.smoothScale(iface->previewWidth(), \
iface->previewHeight());  
-    iface->putPreviewImage(preview.bits());
+    iface->putPreview(preview);
     d->previewWidget->updatePreview();
 
     // Update histogram.
diff --git a/imageplugins/filters/colorfxtool.cpp \
b/imageplugins/filters/colorfxtool.cpp index 1e44695..554a298 100644
--- a/imageplugins/filters/colorfxtool.cpp
+++ b/imageplugins/filters/colorfxtool.cpp
@@ -365,9 +365,9 @@ void ColorFxTool::putPreviewData()
     ImageIface* iface = d->previewWidget->imageIface();
     DImg preview = filter()->getTargetImage();
     DImg imDest  = preview.smoothScale(iface->previewWidth(), \
                iface->previewHeight());
-    iface->putPreviewImage(imDest.bits());
+    iface->putPreview(imDest);
     d->gboxSettings->histogramBox()->histogram()->updateData(preview.bits(), \
                preview.width(), preview.height(),
-            preview.sixteenBit(), 0, 0, 0, false);
+                                                             preview.sixteenBit(), \
0, 0, 0, false);  
     d->previewWidget->updatePreview();
 }
diff --git a/imageplugins/filters/distortionfxtool.cpp \
b/imageplugins/filters/distortionfxtool.cpp index fe28921..ab388ed 100644
--- a/imageplugins/filters/distortionfxtool.cpp
+++ b/imageplugins/filters/distortionfxtool.cpp
@@ -372,7 +372,7 @@ void DistortionFXTool::putPreviewData()
 {
     ImageIface* iface = d->previewWidget->imageIface();
     DImg imDest       = \
filter()->getTargetImage().smoothScale(iface->previewWidth(), \
                iface->previewHeight());
-    iface->putPreviewImage(imDest.bits());
+    iface->putPreview(imDest);
 
     d->previewWidget->updatePreview();
 }
diff --git a/imageplugins/filters/raindroptool.cpp \
b/imageplugins/filters/raindroptool.cpp index 1e57392..982f0d1 100644
--- a/imageplugins/filters/raindroptool.cpp
+++ b/imageplugins/filters/raindroptool.cpp
@@ -240,7 +240,7 @@ void RainDropTool::putPreviewData()
 {
     ImageIface* iface = d->previewWidget->imageIface();
     DImg imDest       = \
filter()->getTargetImage().smoothScale(iface->previewWidth(), \
                iface->previewHeight());
-    iface->putPreviewImage(imDest.bits());
+    iface->putPreview(imDest);
 
     d->previewWidget->updatePreview();
 }
diff --git a/imageplugins/transform/contentawareresizetool.cpp \
b/imageplugins/transform/contentawareresizetool.cpp index 84223cf..2254bc9 100644
--- a/imageplugins/transform/contentawareresizetool.cpp
+++ b/imageplugins/transform/contentawareresizetool.cpp
@@ -770,7 +770,7 @@ void ContentAwareResizeTool::putPreviewData()
     imDest.fill(DColor(background, filter()->getTargetImage().sixteenBit()));
     imDest.bitBltImage(&imTemp, (w-imTemp.width())/2, (h-imTemp.height())/2);
 
-    iface->putPreviewImage((imDest.smoothScale(iface->previewWidth(), \
iface->previewHeight())).bits()); +    \
iface->putPreview(imDest.smoothScale(iface->previewWidth(), iface->previewHeight())); \
d->previewWidget->updatePreview();  }
 
diff --git a/imageplugins/transform/freerotationtool.cpp \
b/imageplugins/transform/freerotationtool.cpp index cd10ba2..966cc7a 100644
--- a/imageplugins/transform/freerotationtool.cpp
+++ b/imageplugins/transform/freerotationtool.cpp
@@ -344,7 +344,7 @@ void FreeRotationTool::putPreviewData()
     imDest.fill(DColor(background, filter()->getTargetImage().sixteenBit()));
     imDest.bitBltImage(&imTemp, (w-imTemp.width())/2, (h-imTemp.height())/2);
 
-    iface->putPreviewImage((imDest.smoothScale(iface->previewWidth(), \
iface->previewHeight())).bits()); +    \
iface->putPreview(imDest.smoothScale(iface->previewWidth(), iface->previewHeight())); \
d->previewWidget->updatePreview();  
     QString temp;
diff --git a/imageplugins/transform/perspectivewidget.cpp \
b/imageplugins/transform/perspectivewidget.cpp index 619bf6d..01f09b7 100644
--- a/imageplugins/transform/perspectivewidget.cpp
+++ b/imageplugins/transform/perspectivewidget.cpp
@@ -420,7 +420,7 @@ void PerspectiveWidget::updatePixmap()
                                                 d->topLeftPoint, d->topRightPoint,
                                                 d->bottomLeftPoint, \
d->bottomRightPoint);  
-        d->iface->putPreviewImage(d->preview.bits());
+        d->iface->putPreview(d->preview);
         d->iface->paint(d->pixmap, d->rect.x(), d->rect.y(),
                         d->rect.width(), d->rect.height());
     }
@@ -440,7 +440,7 @@ void PerspectiveWidget::updatePixmap()
                                                 d->bottomLeftPoint, \
                d->bottomRightPoint,
                                                 &d->preview, &destImage, \
background);  
-        d->iface->putPreviewImage(destImage.bits());
+        d->iface->putPreview(destImage);
 
         // Draw image
 
diff --git a/imageplugins/transform/resizetool.cpp \
b/imageplugins/transform/resizetool.cpp index 1b6375e..ee40a9b 100644
--- a/imageplugins/transform/resizetool.cpp
+++ b/imageplugins/transform/resizetool.cpp
@@ -540,7 +540,7 @@ void ResizeTool::putPreviewData()
     imDest.fill(DColor(background, filter()->getTargetImage().sixteenBit()));
     imDest.bitBltImage(&imTemp, (w-imTemp.width())/2, (h-imTemp.height())/2);
 
-    iface->putPreviewImage((imDest.smoothScale(iface->previewWidth(), \
iface->previewHeight())).bits()); +    \
iface->putPreview(imDest.smoothScale(iface->previewWidth(), iface->previewHeight())); \
d->previewWidget->updatePreview();  }
 
diff --git a/imageplugins/transform/sheartool.cpp \
b/imageplugins/transform/sheartool.cpp index 7132233..4278c25 100644
--- a/imageplugins/transform/sheartool.cpp
+++ b/imageplugins/transform/sheartool.cpp
@@ -325,7 +325,7 @@ void ShearTool::putPreviewData()
                         filter()->getTargetImage().sixteenBit()) );
     imDest.bitBltImage(&imTemp, (w-imTemp.width())/2, (h-imTemp.height())/2);
 
-    iface->putPreviewImage((imDest.smoothScale(iface->previewWidth(), \
iface->previewHeight())).bits()); +    \
iface->putPreview(imDest.smoothScale(iface->previewWidth(), iface->previewHeight())); \
  d->previewWidget->updatePreview();
     QSize newSize = dynamic_cast<ShearFilter*>(filter())->getNewSize();
diff --git a/utilities/imageeditor/editor/imageiface.cpp \
b/utilities/imageeditor/editor/imageiface.cpp index dcd035a..fc70c28 100644
--- a/utilities/imageeditor/editor/imageiface.cpp
+++ b/utilities/imageeditor/editor/imageiface.cpp
@@ -426,12 +426,12 @@ void ImageIface::paint(QPaintDevice* device, int x, int y, int \
w, int h, QPainte  
 void ImageIface::putImgSelection(const QString& caller, const FilterAction& action, \
const DImg& img)  {
-    if (//img.hasAlpha()   != originalHasAlpha()     ||
+    if (//img.hasAlpha()   != originalHasAlpha()     ||                 // TODO \
doesn't work with RedEyes tool  img.sixteenBit() != originalSixteenBit()  ||
         img.size()       != QSize(selectedWidth(), selectedHeight())
        )
     {
-        kDebug() << "Properties of image to overwrite selection differs of original \
image"; +        kDebug() << "Properties of image to overwrite selection differs than \
original image";  return;
     }
 
@@ -439,19 +439,28 @@ void ImageIface::putImgSelection(const QString& caller, const \
FilterAction& acti  
     if (!data)
     {
-        kDebug() << "No image data to overwrite selection of original image";
+        kDebug() << "No image data to handle";
         return;
     }
 
     DImgInterface::defaultInterface()->putImageSelection(caller, action, data);
 }
 
-// Deprecated methods \
------------------------------------------------------------------------------------------------
                
-
-void ImageIface::putPreviewImage(uchar* data)
+void ImageIface::putPreview(const DImg& img)
 {
+    if (//img.hasAlpha()   != previewHasAlpha()   ||                    // TODO \
doesn't work with RedEyes tool +        img.sixteenBit() != previewSixteenBit()
+       )
+    {
+        kDebug() << "Properties of image differs than preview";
+        return;
+    }
+
+    uchar* const data = img.bits();
+
     if (!data)
     {
+        kDebug() << "No preview image data to handle";
         return;
     }
 
@@ -459,6 +468,8 @@ void ImageIface::putPreviewImage(uchar* data)
     d->targetPreviewImage.putImageData(data);
 }
 
+// Deprecated methods \
------------------------------------------------------------------------------------------------
 +
 void ImageIface::putOriginalImage(const QString& caller, const FilterAction& action, \
uchar* data, int w, int h)  {
     if (!data)
diff --git a/utilities/imageeditor/editor/imageiface.h \
b/utilities/imageeditor/editor/imageiface.h index afa1986..3e7c715 100644
--- a/utilities/imageeditor/editor/imageiface.h
+++ b/utilities/imageeditor/editor/imageiface.h
@@ -156,17 +156,16 @@ public:
      */
     void putImgSelection(const QString& caller, const FilterAction& action, const \
DImg& img);  
-    // Deprecated methods \
------------------------------------------------------------------------------------------------
                
-
-    /** Replace the stored target preview data with the given data.
+    /** Replace the stored target preview with the given image.
      *  The characteristics of the data must match the characteristics of the \
                current
      *  as returned by the preview...() methods.
-     *  The target preview data is used by the paint() and
+     *  The target preview image is used by the paint() and
      *  getColorInfoFromTargetPreviewImage() methods.
-     *  The data returned by getPreviewImage() is unaffected.
-     *  No ownership of the data pointer is assumed.
+     *  The image returned by getPreviewImg() is unaffected.
      */
-    /*KDE_DEPRECATED*/ void putPreviewImage(uchar* const data);
+    void putPreview(const DImg& img);
+
+    // Deprecated methods \
------------------------------------------------------------------------------------------------
  
     /** Replace the image data of the original image with the given data.
      *  The characteristics of the data must match the characteristics of


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic