5 #ifndef PPAPI_CPP_RECT_H_
6 #define PPAPI_CPP_RECT_H_
10 #include "ppapi/c/pp_rect.h"
30 rect_.size.height = 0;
38 Rect(
const PP_Rect& rect) {
51 Rect(int32_t w, int32_t h) {
66 Rect(int32_t
x, int32_t
y, int32_t w, int32_t h) {
105 operator PP_Rect()
const {
128 return rect_.point.x;
135 rect_.point.x = in_x;
142 return rect_.point.y;
149 rect_.point.y = in_y;
156 return rect_.size.width;
167 rect_.size.width = w;
174 return rect_.size.height;
185 rect_.size.height = h;
192 return Point(rect_.point);
200 rect_.point = origin;
207 return Size(rect_.size);
215 rect_.size.width = s.
width();
216 rect_.size.height = s.
height();
247 void SetRect(int32_t
x, int32_t
y, int32_t w, int32_t h) {
268 void Inset(int32_t horizontal, int32_t vertical) {
269 Inset(horizontal, vertical, horizontal, vertical);
291 void Offset(int32_t horizontal, int32_t vertical);
306 return rect_.size.width == 0 || rect_.size.height == 0;
317 bool Contains(int32_t point_x, int32_t point_y)
const;
409 rect_.point.x = 0.0f;
410 rect_.point.y = 0.0f;
411 rect_.size.width = 0.0f;
412 rect_.size.height = 0.0f;
487 operator PP_FloatRect()
const {
513 return rect_.point.x;
520 rect_.point.x = in_x;
527 return rect_.point.y;
534 rect_.point.y = in_y;
541 return rect_.size.width;
552 rect_.size.width = w;
559 return rect_.size.height;
570 rect_.size.height = h;
585 rect_.point = origin;
600 rect_.size.width = s.
width();
601 rect_.size.height = s.
height();
653 void Inset(
float horizontal,
float vertical) {
654 Inset(horizontal, vertical, horizontal, vertical);
676 void Offset(
float horizontal,
float vertical);
691 return rect_.size.width == 0.0f || rect_.size.height == 0.0f;
702 bool Contains(
float point_x,
float point_y)
const;
797 return lhs.
x() == rhs.
x() &&
798 lhs.
y() == rhs.
y() &&
811 return !(lhs == rhs);
824 return lhs.
x() == rhs.
x() &&
825 lhs.
y() == rhs.
y() &&
839 return !(lhs == rhs);
float height() const
Definition: rect.h:558
bool Intersects(const FloatRect &rect) const
float x() const
Definition: rect.h:512
Rect(int32_t x, int32_t y, int32_t w, int32_t h)
Definition: rect.h:66
PP_Rect & pp_rect()
Definition: rect.h:119
Point CenterPoint() const
int32_t x() const
Definition: rect.h:127
float bottom() const
Definition: rect.h:622
float right() const
Definition: rect.h:611
void Inset(float horizontal, float vertical)
Definition: rect.h:653
float y() const
Definition: rect.h:526
Rect Union(const Rect &rect) const
void set_height(float h)
Definition: rect.h:565
Rect()
Definition: rect.h:26
Rect Subtract(const Rect &rect) const
void SetRect(int32_t x, int32_t y, int32_t w, int32_t h)
Definition: rect.h:247
FloatPoint CenterPoint() const
A size of an object based on width and height.
Definition: size.h:149
#define PP_DCHECK(a)
Definition: logging.h:16
A 2 dimensional point with 0,0 being the upper-left starting coordinate.
Definition: point.h:18
int32_t y() const
Definition: rect.h:141
void SetRect(float x, float y, float w, float h)
Definition: rect.h:632
Rect(const Size &s)
Definition: rect.h:78
bool Intersects(const Rect &rect) const
int32_t y() const
Definition: point.h:86
bool IsEmpty() const
Definition: rect.h:305
FloatPoint point() const
Definition: rect.h:576
void Offset(const FloatPoint &point)
Definition: rect.h:682
Rect(const PP_Rect &rect)
Definition: rect.h:38
Rect AdjustToFit(const Rect &rect) const
FloatRect(const PP_FloatRect &rect)
Definition: rect.h:420
void set_y(float in_y)
Definition: rect.h:533
void set_size(const Size &s)
Definition: rect.h:214
void set_x(float in_x)
Definition: rect.h:519
void SetRect(const PP_FloatRect &rect)
Definition: rect.h:642
PP_FloatRect & pp_float_rect()
Definition: rect.h:504
void set_y(int32_t in_y)
Definition: rect.h:148
int height() const
Definition: size.h:96
void Offset(float horizontal, float vertical)
float width() const
Definition: rect.h:540
~Rect()
Destructor.
Definition: rect.h:98
float y() const
Definition: point.h:225
A size of an object based on width and height.
Definition: size.h:18
int32_t right() const
Definition: rect.h:226
Rect Intersect(const Rect &rect) const
int32_t height() const
Definition: rect.h:173
Point point() const
Definition: rect.h:191
FloatSize Floatsize() const
Definition: rect.h:591
Rect(const Point &origin, const Size &size)
Definition: rect.h:92
int32_t x() const
Definition: point.h:74
FloatRect(float x, float y, float w, float h)
Definition: rect.h:448
void set_x(int32_t in_x)
Definition: rect.h:134
FloatRect Intersect(const FloatRect &rect) const
void Offset(const Point &point)
Definition: rect.h:297
bool Contains(const Point &point) const
Definition: rect.h:325
float x() const
Definition: point.h:213
bool operator!=(const pp::Rect &lhs, const pp::Rect &rhs)
Definition: rect.h:810
Size size() const
Definition: rect.h:206
bool IsEmpty() const
Definition: rect.h:690
FloatRect(float w, float h)
Definition: rect.h:433
Rect(int32_t w, int32_t h)
Definition: rect.h:51
~FloatRect()
Destructor.
Definition: rect.h:480
int width() const
Definition: size.h:78
FloatRect()
Definition: rect.h:408
void Inset(int32_t horizontal, int32_t vertical)
Definition: rect.h:268
bool Contains(const FloatPoint &point) const
Definition: rect.h:710
void SetRect(const PP_Rect &rect)
Definition: rect.h:257
bool Contains(int32_t point_x, int32_t point_y) const
void set_point(const Point &origin)
Definition: rect.h:199
FloatRect AdjustToFit(const FloatRect &rect) const
bool operator==(const pp::Rect &lhs, const pp::Rect &rhs)
Definition: rect.h:796
float width() const
Definition: size.h:212
FloatRect Subtract(const FloatRect &rect) const
float height() const
Definition: size.h:230
FloatRect(const FloatSize &s)
Definition: rect.h:460
FloatRect(const FloatPoint &origin, const FloatSize &size)
Definition: rect.h:474
void set_point(const FloatPoint &origin)
Definition: rect.h:584
bool SharesEdgeWith(const FloatRect &rect) const
void set_width(int32_t w)
Definition: rect.h:162
bool SharesEdgeWith(const Rect &rect) const
const PP_Rect & pp_rect() const
Definition: rect.h:112
bool Contains(float point_x, float point_y) const
void set_width(float w)
Definition: rect.h:547
void set_size(const FloatSize &s)
Definition: rect.h:599
void Offset(int32_t horizontal, int32_t vertical)
int32_t width() const
Definition: rect.h:155
const PP_FloatRect & pp_float_rect() const
Definition: rect.h:496
FloatRect Union(const FloatRect &rect) const
int32_t bottom() const
Definition: rect.h:237
void set_height(int32_t h)
Definition: rect.h:180