From 351af76f9bce9b78ef10cb403c635e7b121e883b Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Mon, 29 Jul 2013 12:25:57 +0300 Subject: COMMON: Added copy constructors and copier to Rect and Point. --- common/rect.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/common/rect.h b/common/rect.h index 5790cf7c0f..31e0b5152f 100644 --- a/common/rect.h +++ b/common/rect.h @@ -38,11 +38,14 @@ struct Point { Point() : x(0), y(0) {} Point(int16 x1, int16 y1) : x(x1), y(y1) {} + Point(const Point &p) : x(p.x), y(p.y) {} bool operator==(const Point &p) const { return x == p.x && y == p.y; } bool operator!=(const Point &p) const { return x != p.x || y != p.y; } Point operator+(const Point &delta) const { return Point(x + delta.x, y + delta.y); } Point operator-(const Point &delta) const { return Point(x - delta.x, y - delta.y); } + void copy(const Point &p) { x = p.x; y = p.y; } + void operator+=(const Point &delta) { x += delta.x; y += delta.y; @@ -99,9 +102,12 @@ struct Rect { Rect(int16 x1, int16 y1, int16 x2, int16 y2) : top(y1), left(x1), bottom(y2), right(x2) { assert(isValidRect()); } + Rect(const Rect &r) : top(r.top), left(r.left), bottom(r.bottom), right(r.right) {} bool operator==(const Rect &rhs) const { return equals(rhs); } bool operator!=(const Rect &rhs) const { return !equals(rhs); } + void copy(const Rect &r) { top = r.top; left = r.left; bottom = r.bottom; right = r.right; } + int16 width() const { return right - left; } int16 height() const { return bottom - top; } -- cgit v1.2.3