Reviewed by Adam.
authorandersca <andersca@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 28 Nov 2006 03:01:11 +0000 (03:01 +0000)
committerandersca <andersca@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 28 Nov 2006 03:01:11 +0000 (03:01 +0000)
        Add an explicit IntRect constructor that takes a FloatRect.

        * platform/graphics/IntRect.cpp:
        (WebCore::IntRect::IntRect):
        * platform/graphics/IntRect.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@17900 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebCore/ChangeLog
WebCore/platform/graphics/IntRect.cpp
WebCore/platform/graphics/IntRect.h

index f0a93e79cc53f95f04377b836da0bc3070c976d3..94ddab6464de52cdcd7e35518c3d3f493b734fce 100644 (file)
@@ -1,3 +1,13 @@
+2006-11-27  Anders Carlsson  <acarlsson@apple.com>
+
+        Reviewed by Adam.
+
+        Add an explicit IntRect constructor that takes a FloatRect.
+        
+        * platform/graphics/IntRect.cpp:
+        (WebCore::IntRect::IntRect):
+        * platform/graphics/IntRect.h:
+
 2006-11-27  Ada Chan  <adachan@apple.com>
 
         Reviewed by Adam.
index eaa8fffa7126bed39db385938fb50b4e3edc8b35..764cf48a3ffddb3fdd7641d64300c6e4cfe5ef69 100644 (file)
@@ -26,6 +26,7 @@
 #include "config.h"
 #include "IntRect.h"
 
+#include "FloatRect.h"
 #include <algorithm>
 
 using std::max;
@@ -33,6 +34,12 @@ using std::min;
 
 namespace WebCore {
 
+IntRect::IntRect(const FloatRect& r)
+    : m_location(IntPoint(r.x(), r.y()))
+    , m_size(IntSize(r.width(), r.height()))
+{
+}
+
 bool IntRect::intersects(const IntRect& other) const
 {
     // Checking emptiness handles negative widths as well as zero.
index 4336ea2df622b0371bfb54ee425b50e576451a4d..d30852285b55bc3dbed5540891e74bfc318c7f6d 100644 (file)
@@ -52,6 +52,8 @@ class TRect;
 
 namespace WebCore {
 
+class FloatRect;
+
 class IntRect {
 public:
     IntRect() { }
@@ -60,6 +62,8 @@ public:
     IntRect(int x, int y, int width, int height)
         : m_location(IntPoint(x, y)), m_size(IntSize(width, height)) { }
 
+    explicit IntRect(const FloatRect& rect); // don't do this implicitly since it's lossy
+        
     IntPoint location() const { return m_location; }
     IntSize size() const { return m_size; }