Increase interoperability between wxPoint and wxRealPoint introducing constructors which convert between the two classes.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@64539 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -395,6 +395,16 @@ public:
|
|||||||
|
|
||||||
wxRealPoint() : x(0.0), y(0.0) { }
|
wxRealPoint() : x(0.0), y(0.0) { }
|
||||||
wxRealPoint(double xx, double yy) : x(xx), y(yy) { }
|
wxRealPoint(double xx, double yy) : x(xx), y(yy) { }
|
||||||
|
wxRealPoint(const wxPoint& pt);
|
||||||
|
|
||||||
|
// no copy ctor or assignment operator - the defaults are ok
|
||||||
|
|
||||||
|
//assignment operators
|
||||||
|
wxRealPoint& operator+=(const wxRealPoint& p) { x += p.x; y += p.y; return *this; }
|
||||||
|
wxRealPoint& operator-=(const wxRealPoint& p) { x -= p.x; y -= p.y; return *this; }
|
||||||
|
|
||||||
|
wxRealPoint& operator+=(const wxSize& s) { x += s.GetWidth(); y += s.GetHeight(); return *this; }
|
||||||
|
wxRealPoint& operator-=(const wxSize& s) { x -= s.GetWidth(); y -= s.GetHeight(); return *this; }
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
@@ -502,6 +512,7 @@ public:
|
|||||||
|
|
||||||
wxPoint() : x(0), y(0) { }
|
wxPoint() : x(0), y(0) { }
|
||||||
wxPoint(int xx, int yy) : x(xx), y(yy) { }
|
wxPoint(int xx, int yy) : x(xx), y(yy) { }
|
||||||
|
wxPoint(const wxRealPoint& pt) : x(pt.x), y(pt.y) { }
|
||||||
|
|
||||||
// no copy ctor or assignment operator - the defaults are ok
|
// no copy ctor or assignment operator - the defaults are ok
|
||||||
|
|
||||||
|
@@ -136,7 +136,49 @@ public:
|
|||||||
Initializes the point with the given coordinates.
|
Initializes the point with the given coordinates.
|
||||||
*/
|
*/
|
||||||
wxRealPoint(double x, double y);
|
wxRealPoint(double x, double y);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Converts the given wxPoint (with integer coordinates) to a wxRealPoint.
|
||||||
|
*/
|
||||||
|
wxRealPoint(const wxPoint& pt);
|
||||||
|
|
||||||
|
/**
|
||||||
|
@name Miscellaneous operators
|
||||||
|
|
||||||
|
Note that these operators are documented as class members
|
||||||
|
(to make them easier to find) but, as their prototype shows,
|
||||||
|
they are implemented as global operators; note that this is
|
||||||
|
transparent to the user but it helps to understand why the
|
||||||
|
following functions are documented to take the wxPoint they
|
||||||
|
operate on as an explicit argument.
|
||||||
|
*/
|
||||||
|
//@{
|
||||||
|
wxRealPoint& operator=(const wxRealPoint& pt);
|
||||||
|
|
||||||
|
bool operator ==(const wxRealPoint& p1, const wxRealPoint& p2);
|
||||||
|
bool operator !=(const wxRealPoint& p1, const wxRealPoint& p2);
|
||||||
|
|
||||||
|
wxRealPoint operator +(const wxRealPoint& p1, const wxRealPoint& p2);
|
||||||
|
wxRealPoint operator -(const wxRealPoint& p1, const wxRealPoint& p2);
|
||||||
|
|
||||||
|
wxRealPoint& operator +=(const wxRealPoint& pt);
|
||||||
|
wxRealPoint& operator -=(const wxRealPoint& pt);
|
||||||
|
|
||||||
|
wxRealPoint operator +(const wxRealPoint& pt, const wxSize& sz);
|
||||||
|
wxRealPoint operator -(const wxRealPoint& pt, const wxSize& sz);
|
||||||
|
wxRealPoint operator +(const wxSize& sz, const wxRealPoint& pt);
|
||||||
|
wxRealPoint operator -(const wxSize& sz, const wxRealPoint& pt);
|
||||||
|
|
||||||
|
wxRealPoint& operator +=(const wxSize& sz);
|
||||||
|
wxRealPoint& operator -=(const wxSize& sz);
|
||||||
|
|
||||||
|
wxSize operator /(const wxRealPoint& sz, int factor);
|
||||||
|
wxSize operator *(const wxRealPoint& sz, int factor);
|
||||||
|
wxSize operator *(int factor, const wxSize& sz);
|
||||||
|
wxSize& operator /=(int factor);
|
||||||
|
wxSize& operator *=(int factor);
|
||||||
|
//@}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
X coordinate of this point.
|
X coordinate of this point.
|
||||||
*/
|
*/
|
||||||
@@ -497,6 +539,12 @@ public:
|
|||||||
Initializes the point object with the given @a x and @a y coordinates.
|
Initializes the point object with the given @a x and @a y coordinates.
|
||||||
*/
|
*/
|
||||||
wxPoint(int x, int y);
|
wxPoint(int x, int y);
|
||||||
|
|
||||||
|
/**
|
||||||
|
Converts the given wxRealPoint (with floating point coordinates) to a
|
||||||
|
wxPoint instance.
|
||||||
|
*/
|
||||||
|
wxPoint(const wxRealPoint& pt);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@name Miscellaneous operators
|
@name Miscellaneous operators
|
||||||
|
@@ -252,6 +252,11 @@ wxRect operator*(const wxRect& r1, const wxRect& r2)
|
|||||||
return wxRect(x1, y1, x2-x1, y2-y1);
|
return wxRect(x1, y1, x2-x1, y2-y1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
wxRealPoint::wxRealPoint(const wxPoint& pt)
|
||||||
|
: x(pt.x), y(pt.y)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
// wxColourDatabase
|
// wxColourDatabase
|
||||||
// ============================================================================
|
// ============================================================================
|
||||||
|
Reference in New Issue
Block a user