Add clipping capabilities to overlay scripting api

This commit is contained in:
Marcus Huderle
2022-10-10 11:22:38 -05:00
parent fc2f91023f
commit 47b6669feb
4 changed files with 54 additions and 0 deletions

View File

@@ -32,6 +32,10 @@ public:
Q_INVOKABLE void setX(int x);
Q_INVOKABLE void setY(int y, int layer);
Q_INVOKABLE void setY(int y);
Q_INVOKABLE void setClippingRect(int x, int y, int width, int height, int layer);
Q_INVOKABLE void setClippingRect(int x, int y, int width, int height);
Q_INVOKABLE void clearClippingRect(int layer);
Q_INVOKABLE void clearClippingRect();
Q_INVOKABLE QJSValue getPosition(int layer = 0);
Q_INVOKABLE void setPosition(int x, int y, int layer);
Q_INVOKABLE void setPosition(int x, int y);

View File

@@ -76,6 +76,7 @@ public:
this->y = 0;
this->hidden = false;
this->opacity = 1.0;
this->clippingRect = nullptr;
}
~Overlay() {
this->clearItems();
@@ -88,6 +89,8 @@ public:
int getY();
void setX(int x);
void setY(int y);
void setClippingRect(QRectF rect);
void clearClippingRect();
void setPosition(int x, int y);
void move(int deltaX, int deltaY);
void renderItems(QPainter *painter);
@@ -103,6 +106,7 @@ private:
int y;
bool hidden;
qreal opacity;
QRectF *clippingRect;
};
#endif // OVERLAY_H