Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6c7f25af authored by Mathias Agopian's avatar Mathias Agopian
Browse files

reformat Rect.{cpp|h}

Change-Id: I45b1f6646541a1abacce1e70df00a770e47b820e
parent b6df7d0e
Loading
Loading
Loading
Loading
+40 −32
Original line number Diff line number Diff line
@@ -35,14 +35,25 @@ public:

    inline Rect() {
    }

    inline Rect(int32_t w, int32_t h) {
        left = top = 0; right = w; bottom = h;
        left = top = 0;
        right = w;
        bottom = h;
    }

    inline Rect(int32_t l, int32_t t, int32_t r, int32_t b) {
        left = l; top = t; right = r; bottom = b;
        left = l;
        top = t;
        right = r;
        bottom = b;
    }

    inline Rect(const Point& lt, const Point& rb) {
        left = lt.x; top = lt.y; right = rb.x; bottom = rb.y;
        left = lt.x;
        top = lt.y;
        right = rb.x;
        bottom = rb.y;
    }

    void makeInvalid();
@@ -53,16 +64,12 @@ public:

    // a valid rectangle has a non negative width and height
    inline bool isValid() const {
        return (width()>=0) && (height()>=0);
        return (getWidth() >= 0) && (getHeight() >= 0);
    }

    // an empty rect has a zero width or height, or is invalid
    inline bool isEmpty() const {
        return (width()<=0) || (height()<=0);
    }

    inline void set(const Rect& rhs) {
        operator = (rhs);
        return (getWidth() <= 0) || (getHeight() <= 0);
    }

    // rectangle's width
@@ -79,9 +86,6 @@ public:
        return Rect(right - left, bottom - top);
    }

    inline int32_t width() const { return getWidth(); }
    inline int32_t height() const { return getHeight(); }

    void setLeftTop(const Point& lt) {
        left = lt.x;
        top = lt.y;
@@ -120,6 +124,16 @@ public:
    // vectors.
    bool operator < (const Rect& rhs) const;

    const Rect operator + (const Point& rhs) const;
    const Rect operator - (const Point& rhs) const;

    Rect& operator += (const Point& rhs) {
        return offsetBy(rhs.x, rhs.y);
    }
    Rect& operator -= (const Point& rhs) {
        return offsetBy(-rhs.x, -rhs.y);
    }

    Rect& offsetToOrigin() {
        right -= left;
        bottom -= top;
@@ -132,21 +146,10 @@ public:
    Rect& offsetBy(const Point& dp) {
        return offsetBy(dp.x, dp.y);
    }
    Rect& operator += (const Point& rhs) {
        return offsetBy(rhs.x, rhs.y);
    }
    Rect& operator -= (const Point& rhs) {
        return offsetBy(-rhs.x, -rhs.y);
    }
    const Rect operator + (const Point& rhs) const;
    const Rect operator - (const Point& rhs) const;

    void translate(int32_t dx, int32_t dy) { // legacy, don't use.
        offsetBy(dx, dy);
    }

    Rect& offsetTo(int32_t x, int32_t y);
    Rect& offsetBy(int32_t x, int32_t y);

    bool intersect(const Rect& with, Rect* result) const;

    // Create a new Rect by transforming this one using a graphics HAL
@@ -156,6 +159,11 @@ public:
    // (height, width).  Otherwise the output rectangle is in the same space as
    // the input.
    Rect transform(uint32_t xform, int32_t width, int32_t height) const;

    // for backward compatibility
    inline int32_t width() const { return getWidth(); }
    inline int32_t height() const { return getHeight(); }
    inline void set(const Rect& rhs) { operator = (rhs); }
};

ANDROID_BASIC_TYPES_TRAITS(Rect)
+24 −30
Original line number Diff line number Diff line
@@ -34,8 +34,7 @@ void Rect::makeInvalid() {
    bottom = -1;
}

bool Rect::operator < (const Rect& rhs) const
{
bool Rect::operator <(const Rect& rhs) const {
    if (top < rhs.top) {
        return true;
    } else if (top == rhs.top) {
@@ -54,8 +53,7 @@ bool Rect::operator < (const Rect& rhs) const
    return false;
}

Rect& Rect::offsetTo(int32_t x, int32_t y)
{
Rect& Rect::offsetTo(int32_t x, int32_t y) {
    right -= left - x;
    bottom -= top - y;
    left = x;
@@ -63,8 +61,7 @@ Rect& Rect::offsetTo(int32_t x, int32_t y)
    return *this;
}

Rect& Rect::offsetBy(int32_t x, int32_t y)
{
Rect& Rect::offsetBy(int32_t x, int32_t y) {
    left += x;
    top += y;
    right += x;
@@ -72,20 +69,17 @@ Rect& Rect::offsetBy(int32_t x, int32_t y)
    return *this;
}

const Rect Rect::operator + (const Point& rhs) const
{
const Rect Rect::operator +(const Point& rhs) const {
    const Rect result(left + rhs.x, top + rhs.y, right + rhs.x, bottom + rhs.y);
    return result;
}

const Rect Rect::operator - (const Point& rhs) const
{
const Rect Rect::operator -(const Point& rhs) const {
    const Rect result(left - rhs.x, top - rhs.y, right - rhs.x, bottom - rhs.y);
    return result;
}

bool Rect::intersect(const Rect& with, Rect* result) const
{
bool Rect::intersect(const Rect& with, Rect* result) const {
    result->left = max(left, with.left);
    result->top = max(top, with.top);
    result->right = min(right, with.right);
@@ -96,12 +90,12 @@ bool Rect::intersect(const Rect& with, Rect* result) const
Rect Rect::transform(uint32_t xform, int32_t width, int32_t height) const {
    Rect result(*this);
    if (xform & HAL_TRANSFORM_FLIP_H) {
        result = Rect(width - result.right, result.top,
                width - result.left, result.bottom);
        result = Rect(width - result.right, result.top, width - result.left,
                result.bottom);
    }
    if (xform & HAL_TRANSFORM_FLIP_V) {
        result = Rect(result.left, height - result.bottom,
                result.right, height - result.top);
        result = Rect(result.left, height - result.bottom, result.right,
                height - result.top);
    }
    if (xform & HAL_TRANSFORM_ROT_90) {
        int left = height - result.bottom;
+1 −1
Original line number Diff line number Diff line
@@ -697,7 +697,7 @@ void Region::translate(Region& reg, int dx, int dy)
        size_t count = reg.mStorage.size();
        Rect* rects = reg.mStorage.editArray();
        while (count) {
            rects->translate(dx, dy);
            rects->offsetBy(dx, dy);
            rects++;
            count--;
        }
+1 −1
Original line number Diff line number Diff line
@@ -416,7 +416,7 @@ void DisplayDevice::setProjection(int orientation,

    mScissor = mGlobalTransform.transform(viewport);
    if (mScissor.isEmpty()) {
        mScissor.set(getBounds());
        mScissor = getBounds();
    }

    mOrientation = orientation;
+4 −0
Original line number Diff line number Diff line
@@ -276,6 +276,8 @@ Rect Layer::computeBounds() const {
    if (!s.active.crop.isEmpty()) {
        win.intersect(s.active.crop, &win);
    }
    // subtract the transparent region and snap to the bounds
    win = Region(win).subtract(s.activeTransparentRegion).getBounds();
    return win;
}

@@ -666,6 +668,8 @@ void Layer::computeGeometry(const sp<const DisplayDevice>& hw, LayerMesh* mesh)
    if (!s.active.crop.isEmpty()) {
        win.intersect(s.active.crop, &win);
    }
    // subtract the transparent region and snap to the bounds
    win = Region(win).subtract(s.activeTransparentRegion).getBounds();
    if (mesh) {
        tr.transform(mesh->mVertices[0], win.left,  win.top);
        tr.transform(mesh->mVertices[1], win.left,  win.bottom);