summaryrefslogtreecommitdiffstats
path: root/src/declarative/canvas
diff options
context:
space:
mode:
authorRoberto Raggi <roberto.raggi@nokia.com>2009-05-19 08:08:09 (GMT)
committerRoberto Raggi <roberto.raggi@nokia.com>2009-05-19 08:08:09 (GMT)
commit23c781b67c838b120e7fba42bc9008d38f191330 (patch)
tree4254e4dfd099ad7066b4b02330c1edbee8398086 /src/declarative/canvas
parent6e8f112492dec917cdcd9bc50b992eca5d41b998 (diff)
parent6db78166ddfe935a0c968a6e6205a10253d50138 (diff)
downloadQt-23c781b67c838b120e7fba42bc9008d38f191330.zip
Qt-23c781b67c838b120e7fba42bc9008d38f191330.tar.gz
Qt-23c781b67c838b120e7fba42bc9008d38f191330.tar.bz2
Merge branch 'kinetic-declarativeui' of git@scm.dev.nokia.troll.no:qt/kinetic into kinetic-declarativeui
Diffstat (limited to 'src/declarative/canvas')
-rw-r--r--src/declarative/canvas/qsimplecanvasitem.cpp10
-rw-r--r--src/declarative/canvas/qsimplecanvasitem.h1
-rw-r--r--src/declarative/canvas/qsimplecanvasitem_p.h3
3 files changed, 12 insertions, 2 deletions
diff --git a/src/declarative/canvas/qsimplecanvasitem.cpp b/src/declarative/canvas/qsimplecanvasitem.cpp
index dfe02c0..fb20e95 100644
--- a/src/declarative/canvas/qsimplecanvasitem.cpp
+++ b/src/declarative/canvas/qsimplecanvasitem.cpp
@@ -181,10 +181,18 @@ void QSimpleCanvasItem::childrenChanged()
{
}
+int QSimpleCanvasItem::setPaintMargin(qreal margin)
+{
+ Q_D(QSimpleCanvasItem);
+ if (margin < d->paintmargin)
+ update(); // schedule repaint of old boundingRect
+ d->paintmargin = margin;
+}
+
QRectF QSimpleCanvasItem::boundingRect() const
{
Q_D(const QSimpleCanvasItem);
- return QRectF(0., 0., d->width, d->height);
+ return QRectF(-d->paintmargin, -d->paintmargin, d->width+d->paintmargin*2, d->height+d->paintmargin*2);
}
void QSimpleCanvasItem::paintContents(QPainter &)
diff --git a/src/declarative/canvas/qsimplecanvasitem.h b/src/declarative/canvas/qsimplecanvasitem.h
index 63be27b..2d65469 100644
--- a/src/declarative/canvas/qsimplecanvasitem.h
+++ b/src/declarative/canvas/qsimplecanvasitem.h
@@ -183,6 +183,7 @@ public:
};
+ int setPaintMargin(qreal margin);
QRectF boundingRect() const;
virtual void paintContents(QPainter &);
virtual void paintGLContents(GLPainter &);
diff --git a/src/declarative/canvas/qsimplecanvasitem_p.h b/src/declarative/canvas/qsimplecanvasitem_p.h
index 34880f0..f0b44e0 100644
--- a/src/declarative/canvas/qsimplecanvasitem_p.h
+++ b/src/declarative/canvas/qsimplecanvasitem_p.h
@@ -142,7 +142,7 @@ public:
focusable(false), wantsActiveFocusPanelPendingCanvas(false),
hasBeenActiveFocusPanel(false),
hasFocus(false), hasActiveFocus(false), needsZOrder(false),
- widthValid(false), heightValid(false), width(0), height(0), scale(1),
+ widthValid(false), heightValid(false), width(0), height(0), paintmargin(0), scale(1),
graphicsItem(0), data_ptr(0)
{
}
@@ -176,6 +176,7 @@ public:
qreal width;
qreal height;
+ qreal paintmargin;
qreal scale;
QSimpleGraphicsItem *graphicsItem;