X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Usermode%2FApplications%2Faxwin4_src%2FServer%2Finclude%2FCRect.hpp;h=3c344b259f796e62aaf27dd992fc5cb6a3f5832b;hb=ba78deafcc3016555469ed263d7a0370fa99db4b;hp=69e7c1941311ef63a8e1cbc1bf406a846212321a;hpb=340e7923b1e95c39ac85a4b22af7f1b53b315cd9;p=tpg%2Facess2.git diff --git a/Usermode/Applications/axwin4_src/Server/include/CRect.hpp b/Usermode/Applications/axwin4_src/Server/include/CRect.hpp index 69e7c194..3c344b25 100644 --- a/Usermode/Applications/axwin4_src/Server/include/CRect.hpp +++ b/Usermode/Applications/axwin4_src/Server/include/CRect.hpp @@ -8,9 +8,30 @@ namespace AxWin { class CRect { public: - CRect(int X, int Y, int W, int H); + CRect(): + CRect(0,0,0,0) + { + }; + CRect(int X, int Y, unsigned int W, unsigned int H); - bool Contains(const CRect& other) const; + void Translate(int DX, int DY) { + m_x += DX; m_x2 += DX; + m_y += DY; m_y2 += DY; + } + void Move(int NewX, int NewY); + void Resize(int NewW, int NewH); + + bool HasIntersection(const CRect& other) const; + CRect Intersection(const CRect& other) const; + + CRect RelativeIntersection(const CRect& area); + + int m_x; + int m_y; + int m_w; + int m_h; + int m_x2; + int m_y2; }; }; // namespace AxWin