Dmitry Marakasov
4ab3906b07
Whitespace fixes
2016-10-18 17:43:27 +03:00
Dmitry Marakasov
e6f9cdbf4c
Add two arguments rect extension methods
2015-11-27 16:42:30 +03:00
Dmitry Marakasov
95142b065c
Add Point and Rect less-than operator
...
This allows using them as map and set keys
2015-11-26 12:57:36 +03:00
Dmitry Marakasov
539e6c8fd1
Constexprify even more Rect methods
2015-07-07 21:28:30 +03:00
Dmitry Marakasov
beaa9ed3b8
Constexprify more Rect methods
2015-07-07 16:27:03 +03:00
Dmitry Marakasov
4f3256fda5
Constexprify Rect constructors
2015-07-07 15:42:03 +03:00
Dmitry Marakasov
fdcbcddc1d
Implement stream output operators for Point and Rect
2015-01-20 02:56:34 +03:00
Dmitry Marakasov
ead93d1d69
Implement Rect::IntersectLine
2015-01-19 20:18:41 +03:00
Dmitry Marakasov
14f352dddd
Implement Rect::Extend
2015-01-19 19:57:40 +03:00
Dmitry Marakasov
0de09713c9
Add mutating Union method
2015-01-19 19:51:43 +03:00
Dmitry Marakasov
c22b50e62e
Add missing return
2015-01-19 01:08:27 +03:00
Dmitry Marakasov
40e8f71efa
Make setters return reference to self: Point and Rect
2015-01-19 00:47:25 +03:00
Dmitry Marakasov
feaec6838b
Remove deprecated functions
2015-01-11 06:39:50 +03:00
Dmitry Marakasov
0f4eea5aab
Add another variant of Rect::Contains()
2015-01-08 06:53:25 +03:00
Dmitry Marakasov
325a7fef2a
Simplify logic
2014-12-30 00:14:21 +03:00
Dmitry Marakasov
c584b1a005
Add Rect intersection and union methods
2014-12-30 00:14:14 +03:00
Dmitry Marakasov
837772dac0
Add various Rect constructors
2014-12-30 00:13:27 +03:00
Dmitry Marakasov
a5d558b1c1
Remove unused includes
2014-12-30 00:12:54 +03:00
Dmitry Marakasov
7506b05a77
Implement Rect::Contains(Rect), add corresponding test
2014-12-29 22:04:43 +03:00
Dmitry Marakasov
a1d01e89d4
Add Point/Rect constructors taking SDL_Point/SDL_Rect
2014-12-27 21:21:29 +03:00
Dmitry Marakasov
6d0213810b
Switch to Optional
...
Remove "valid" flag from Rect and Point, derive them directly from
SDL_Rect and SDL_Point structures, simplify logic. Now x/y/w/h member
variables are directly accessible and Rect/Point may be passed as
SDL_Rect/SDL_Point via pointer or reference.
Change all cases where Null Rects and Points were used to Optional.
invalid state related functions like Null(), IsNull() and Get() are
now deprecated but are not removed yet for compatibility sake.
2014-12-25 19:10:41 +03:00
Dmitry Marakasov
f8c6b2a9fb
Add operators to offset a Rect by a Point
2014-12-20 18:04:28 +03:00
Dmitry Marakasov
46591a9cbf
Update project comment
2014-12-18 02:52:08 +03:00
Dmitry Marakasov
0124e2703a
Update copyright years
2014-12-18 02:51:49 +03:00
Dmitry Marakasov
359a0e93c8
Implement Rect::Contains(Point)
2014-11-24 01:52:49 +03:00
Dmitry Marakasov
5a61a8f51b
Fix Get() for null Points and Rects, add tests for it
2014-02-21 23:46:37 +04:00
Dmitry Marakasov
7b4b6c051a
Don't use allocations inside Point and Rect
...
Instead, use boolean validity flag, which is much more practical
2014-02-21 17:11:48 +04:00
Dmitry Marakasov
f6d6572602
Fix Rect::FromCenter and add test for it
2014-02-11 06:01:36 +04:00
Dmitry Marakasov
66f4d5b57a
Properly handle self-assignment
2014-02-11 05:51:15 +04:00
Dmitry Marakasov
1e4e1cb560
Define default ctors/assignments in source files to avoid using objects of incomplete type in them
2014-02-11 05:51:13 +04:00
Dmitry Marakasov
0365329dc0
Add Point and Rect comparison operators
2014-02-11 05:44:08 +04:00
Dmitry Marakasov
802322ef1b
Add Point and Rect setters
...
While here, fix Rect::GetX2 and Rect::GetY2 off-by-one errors
2014-02-11 04:33:24 +04:00
Dmitry Marakasov
14819ba188
Remove Swap() methods as there's std::swap for this
2014-02-11 04:19:51 +04:00
Dmitry Marakasov
92925a9620
Add a way to swap some types of objects
2013-12-18 06:15:46 +04:00
Dmitry Marakasov
aa615060e4
Add getters and checks for nullness
2013-09-18 03:04:47 +04:00
Dmitry Marakasov
3011a62589
Add another named constructor for Rect
2013-09-06 02:03:47 +04:00
Dmitry Marakasov
c122f11643
Initial import
2013-09-06 01:47:05 +04:00