Package: qt
Version: 1.44-26mdk

When I use the method,
QPainter::drawImage(int x, int y, const QImage &, int sx=0, int sy=0, int sw, int sh);
, the region of the QImage is incorrectly copied onto the paint device.


I have attached a patch file to fix this bug.  This patch is used to apply
in qt-1.45, but it can also be used to patch the 1.44 version.


  diff -ur qt-1.45/src/kernel/qpainter.cpp qt-1.45.fixed/src/kernel/qpainter.cpp
  --- qt-1.45/src/kernel/qpainter.cpp     Fri Nov 12 23:57:27 1999
  +++ qt-1.45.fixed/src/kernel/qpainter.cpp       Fri Aug 25 01:42:07 2000
  @@ -1670,7 +1670,7 @@
       if ( image.rect().intersect(QRect(sx,sy,sw,sh)) == image.rect() )
          subimage = image;
       else
  -       subimage = image.copy(sx,sy,sw,wh);
  +       subimage = image.copy(sx,sy,sw,sh);
  
       QPixmap pm;
       pm.convertFromImage( subimage );


I have suggested this to Trolltech, but they told that they have already 
freezed the qt-1.xx maintenance.  But I still need qt-1.xx, because when I 
develop my KDE application, qt2 doesn't work with the kdelibs-1.1.2 
that come with mandrake 7.1 distribution.

Can you suggest me how to link qt2 with kdelibs-1.1.2 ?  Or I have to use
KDE 2.0 ?


Regards,
Anon Sricharoenchai.
diff -ur qt-1.45/src/kernel/qpainter.cpp qt-1.45.fixed/src/kernel/qpainter.cpp
--- qt-1.45/src/kernel/qpainter.cpp     Fri Nov 12 23:57:27 1999
+++ qt-1.45.fixed/src/kernel/qpainter.cpp       Fri Aug 25 01:42:07 2000
@@ -1670,7 +1670,7 @@
     if ( image.rect().intersect(QRect(sx,sy,sw,sh)) == image.rect() )
        subimage = image;
     else
-       subimage = image.copy(sx,sy,sw,wh);
+       subimage = image.copy(sx,sy,sw,sh);
 
     QPixmap pm;
     pm.convertFromImage( subimage );

Reply via email to