un-inline scale, assert non-zero denominators
authorFelix Domke <felix.domke@multimedia-labs.de>
Fri, 17 Jul 2009 10:46:37 +0000 (12:46 +0200)
committerFelix Domke <felix.domke@multimedia-labs.de>
Fri, 17 Jul 2009 10:46:37 +0000 (12:46 +0200)
lib/gdi/erect.cpp
lib/gdi/erect.h

index 43cefc533fd5dca38fdf8dc9880b13367cc47e34..c17c5cf330541db62283c7f79a896c4b927e07f1 100644 (file)
@@ -1,4 +1,5 @@
 #include <lib/gdi/erect.h>
+#include <lib/base/eerror.h>
 
 /*****************************************************************************
   eRect member functions
@@ -201,3 +202,13 @@ bool operator!=( const eRect &r1, const eRect &r2 )
 {
        return r1.x1!=r2.x1 || r1.x2!=r2.x2 || r1.y1!=r2.y1 || r1.y2!=r2.y2;
 }
+
+void eRect::scale(int x_n, int x_d, int y_n, int y_d) 
+{
+       ASSERT(x_d); ASSERT(y_d);
+       x1 *= x_n; x1 /= x_d; 
+       x2 *= x_n; x2 /= x_d; 
+       y1 *= y_n; y1 /= y_d; 
+       y2 *= y_n; y2 /= y_d; 
+}
+
index 34713ab40f2a5724907b1f8aa43e9d1055085166..35ebeda19901339252ba66d68fbb1b89999677e4 100644 (file)
@@ -119,13 +119,7 @@ public:
        static eRect emptyRect() { return eRect(0, 0, 0, 0); }
        static eRect invalidRect() { return eRect(); }
        
-       inline void scale(int x_n, int x_d, int y_n, int y_d) 
-       {
-               x1 *= x_n; x1 /= x_d; 
-               x2 *= x_n; x2 /= x_d; 
-               y1 *= y_n; y1 /= y_d; 
-               y2 *= y_n; y2 /= y_d; 
-       }
+       void scale(int x_n, int x_d, int y_n, int y_d);
        
 private:
        int x1;