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

List:       koffice-devel
Subject:    [PATCH] Fix for kpresenter bug #63032
From:       Peter Simonsson <psn () linux ! se>
Date:       2003-10-04 20:39:14
[Download RAW message or body]

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi!
This patch should fix kpresenter bug 63032: When resizing a frame it does not 
snap to the grid

Ok to commit?
- -- 
LLaP
Peter Simonsson

Kivio (KOffice Flowcharting Application) - http://www.koffice.org/kivio/
Kexi - http://www.koffice.org/kexi/
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)

iD8DBQE/fy/7jR6JKcrOq3sRAuKzAJ9YMvxJ99RKcGYQcM2ACwmDl+cT6wCgzAv/
8LIJI6DodKkLwfYKNyvu9y4=
=9+ma
-----END PGP SIGNATURE-----

["kpresenter.diff" (text/x-diff)]

Index: kprcanvas.cc
===================================================================
RCS file: /home/kde/koffice/kpresenter/kprcanvas.cc,v
retrieving revision 1.371
diff -u -p -r1.371 kprcanvas.cc
--- kprcanvas.cc	9 Sep 2003 10:13:23 -0000	1.371
+++ kprcanvas.cc	4 Oct 2003 20:31:27 -0000
@@ -1667,7 +1667,7 @@ void KPrCanvas::mouseMoveEvent( QMouseEv
                     int y = e->y() + diffy();
                     moveObject( x - m_origPos.x(), y - m_origPos.y(), false );
                 } else if ( modType != MT_NONE && resizeObjNum ) {
-                    resizeObject( modType, mx - oldMx, my - oldMy );
+                    resizeObject( modType, mx - m_origPos.x(), my - m_origPos.y() );
                 }
 
                 oldMx = e->x()+diffx();
@@ -5480,11 +5480,11 @@ void KPrCanvas::resizeObject( ModifyType
             dy=0;
         if ( keepRatio && ratio != 0.0 )
             calcRatio( dx, dy, _modType, ratio );
-        kpobject->resizeBy( -dx, -dy );
+        kpobject->setSize(m_origBRect.width() + dx, m_origBRect.height() + dy);
         if ( objSize.width() != (kpobject->getSize()).width() )
-            kpobject->moveBy( KoPoint( dx, 0 ) );
+            kpobject->setOrig(m_origBRect.x() - dx, kpobject->getOrig().y());
         if ( objSize.height() != (kpobject->getSize()).height() )
-            kpobject->moveBy( KoPoint( 0, dy ) );
+            kpobject->setOrig(kpobject->getOrig().x(), m_origBRect.y() - dy);
     } break;
     case MT_RESIZE_LF: {
         dy = 0;
@@ -5492,9 +5492,9 @@ void KPrCanvas::resizeObject( ModifyType
             dx=0;
         if ( keepRatio && ratio != 0.0 )
             calcRatio( dx, dy, _modType, ratio );
-        kpobject->resizeBy( -dx, -dy );
+        kpobject->setSize(m_origBRect.width() + dx, m_origBRect.height() + dy);
         if ( objSize != kpobject->getSize() )
-            kpobject->moveBy( KoPoint( dx, 0 ) );
+            kpobject->setOrig(m_origBRect.x() - dx, kpobject->getOrig().y());
     } break;
     case MT_RESIZE_LD: {
         if( (point.y()+objRect.height()+dy) > pageRect.height())
@@ -5503,9 +5503,9 @@ void KPrCanvas::resizeObject( ModifyType
             dx=0;
         if ( keepRatio && ratio != 0.0 )
             calcRatio( dx, dy, _modType, ratio );
-        kpobject->resizeBy( -dx, dy );
+        kpobject->setSize(m_origBRect.width() + dx, m_origBRect.height() + dy);
         if ( objSize.width() != (kpobject->getSize()).width() )
-            kpobject->moveBy( KoPoint( dx, 0 ) );
+            kpobject->setOrig(m_origBRect.x() - dx, kpobject->getOrig().y());
     } break;
     case MT_RESIZE_RU: {
         if( (point.x()+objRect.width()+dx) > pageRect.width())
@@ -5514,9 +5514,9 @@ void KPrCanvas::resizeObject( ModifyType
             dy=0;
         if ( keepRatio && ratio != 0.0 )
             calcRatio( dx, dy, _modType, ratio );
-        kpobject->resizeBy( dx, -dy );
+        kpobject->setSize(m_origBRect.width() + dx, m_origBRect.height() + dy);
         if ( objSize.height() != (kpobject->getSize()).height() )
-            kpobject->moveBy( KoPoint( 0, dy ) );
+            kpobject->setOrig(kpobject->getOrig().x(), m_origBRect.y() - dy);
     } break;
     case MT_RESIZE_RT: {
         dy = 0;
@@ -5524,7 +5524,7 @@ void KPrCanvas::resizeObject( ModifyType
             dx=0;
         if ( keepRatio && ratio != 0.0 )
             calcRatio( dx, dy, _modType, ratio );
-        kpobject->resizeBy( dx, dy );
+        kpobject->setSize(m_origBRect.width() + dx, m_origBRect.height() + dy);
     } break;
     case MT_RESIZE_RD: {
         if( (point.y()+objRect.height()+dy) > pageRect.height())
@@ -5533,7 +5533,7 @@ void KPrCanvas::resizeObject( ModifyType
             dx=0;
         if ( keepRatio && ratio != 0.0 )
             calcRatio( dx, dy, _modType, ratio );
-        kpobject->resizeBy( KoSize( dx, dy ) );
+        kpobject->setSize(m_origBRect.width() + dx, m_origBRect.height() + dy);
     } break;
     case MT_RESIZE_UP: {
         dx = 0;
@@ -5541,9 +5541,9 @@ void KPrCanvas::resizeObject( ModifyType
             dy=0;
         if ( keepRatio && ratio != 0.0 )
             calcRatio( dx, dy, _modType, ratio );
-        kpobject->resizeBy( -dx, -dy );
+        kpobject->setSize(m_origBRect.width() + dx, m_origBRect.height() + dy);
         if ( objSize != kpobject->getSize() )
-            kpobject->moveBy( KoPoint( 0, dy ) );
+            kpobject->setOrig(kpobject->getOrig().x(), m_origBRect.y() - dy);
     } break;
     case MT_RESIZE_DN: {
         dx = 0;
@@ -5551,7 +5551,7 @@ void KPrCanvas::resizeObject( ModifyType
             dy=0;
         if ( keepRatio && ratio != 0.0 )
             calcRatio( dx, dy, _modType, ratio );
-        kpobject->resizeBy( dx, dy );
+        kpobject->setSize(m_origBRect.width() + dx, m_origBRect.height() + dy);
     } break;
     default: break;
     }


_______________________________________________
koffice-devel mailing list
koffice-devel@mail.kde.org
http://mail.kde.org/mailman/listinfo/koffice-devel


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

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