diff options
Diffstat (limited to 'src/quick/items/qquickrectangle.cpp')
-rw-r--r-- | src/quick/items/qquickrectangle.cpp | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/quick/items/qquickrectangle.cpp b/src/quick/items/qquickrectangle.cpp index 8ac982f74c..65284eb532 100644 --- a/src/quick/items/qquickrectangle.cpp +++ b/src/quick/items/qquickrectangle.cpp @@ -90,6 +90,7 @@ void QQuickPen::setWidth(qreal w) m_width = w; m_valid = m_color.alpha() && (qRound(m_width) >= 1 || (!m_aligned && m_width > 0)); + static_cast<QQuickItem*>(parent())->update(); emit penChanged(); } @@ -102,6 +103,7 @@ void QQuickPen::setColor(const QColor &c) { m_color = c; m_valid = m_color.alpha() && (qRound(m_width) >= 1 || (!m_aligned && m_width > 0)); + static_cast<QQuickItem*>(parent())->update(); emit penChanged(); } @@ -116,6 +118,7 @@ void QQuickPen::setPixelAligned(bool aligned) return; m_aligned = aligned; m_valid = m_color.alpha() && (qRound(m_width) >= 1 || (!m_aligned && m_width > 0)); + static_cast<QQuickItem*>(parent())->update(); emit penChanged(); } @@ -356,7 +359,11 @@ void QQuickRectangle::doUpdate() QQuickPen *QQuickRectangle::border() { Q_D(QQuickRectangle); - return d->getPen(); + if (!d->pen) { + d->pen = new QQuickPen; + QQml_setParent_noEvent(d->pen, this); + } + return d->pen; } /*! |