summaryrefslogtreecommitdiffstats
path: root/src/canvas.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/canvas.cpp')
-rw-r--r--src/canvas.cpp17
1 files changed, 10 insertions, 7 deletions
diff --git a/src/canvas.cpp b/src/canvas.cpp
index e5c6bf8..73adff3 100644
--- a/src/canvas.cpp
+++ b/src/canvas.cpp
@@ -46,11 +46,11 @@
Canvas::Canvas(QDeclarativeItem *parent)
: QDeclarativeItem(parent),
- m_context(new Context2D(this)),
- m_canvasWidth(0),
- m_canvasHeight(0),
- m_fillMode(Canvas::Stretch),
- m_color(Qt::white)
+ m_context(new Context2D(this)),
+ m_canvasWidth(0),
+ m_canvasHeight(0),
+ m_fillMode(Canvas::Stretch),
+ m_color(Qt::white)
{
setFlag(QGraphicsItem::ItemHasNoContents, false);
setCacheMode(QGraphicsItem::DeviceCoordinateCache);
@@ -66,6 +66,7 @@ void Canvas::componentComplete()
connect(m_context, SIGNAL(changed()), this, SLOT(requestPaint()));
emit init();
+ QDeclarativeItem::componentComplete();
}
void Canvas::paint(QPainter *painter, const QStyleOptionGraphicsItem *, QWidget *)
@@ -163,12 +164,13 @@ void Canvas::requestPaint()
update();
}
-void Canvas::geometryChanged(const QRectF &newGeometry, const QRectF &)
+void Canvas::geometryChanged(const QRectF &newGeometry, const QRectF &oldGeometry)
{
if (m_canvasWidth == 0 && m_canvasHeight == 0
- && newGeometry.width() > 0 && newGeometry.height() > 0) {
+ && newGeometry.width() > 0 && newGeometry.height() > 0) {
m_context->setSize(width(), height());
}
+ QDeclarativeItem::geometryChanged(newGeometry, oldGeometry);
}
void Canvas::setCanvasWidth(int newWidth)
@@ -248,3 +250,4 @@ void Canvas::clearInterval(const QScriptValue &handler)
{
CanvasTimer::removeTimer(handler);
}
+