summaryrefslogtreecommitdiffstats
path: root/src/widgets/qprogressbar.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/widgets/qprogressbar.cpp')
-rw-r--r--src/widgets/qprogressbar.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/widgets/qprogressbar.cpp b/src/widgets/qprogressbar.cpp
index d5011da..99dedb0 100644
--- a/src/widgets/qprogressbar.cpp
+++ b/src/widgets/qprogressbar.cpp
@@ -429,8 +429,10 @@ void QProgressBar::drawContents( QPainter *p )
QWMatrix oldMatrix = buffer.painter()->worldMatrix();
- QStyleControlElementData ceData = populateControlElementDataFromWidget(this, QStyleOption());
- QStyle::ControlElementFlags elementFlags = getControlElementFlagsForObject(this, ceData.widgetObjectTypes, QStyleOption());
+ const QStyleControlElementData &ceData = populateControlElementDataFromWidget(this, QStyleOption());
+ QStyle::ControlElementFlags elementFlags = getControlElementFlagsForObject(this, QStyleOption());
+
+ QRect ceDataRectOrig = ceData.rect;
// Draw contents
if (m_orientation == Qt::Vertical) {
@@ -447,7 +449,7 @@ void QProgressBar::drawContents( QPainter *p )
buffer.painter()->setWorldMatrix(m, TRUE);
- ceData.rect = QRect(ceData.rect.y(), ceData.rect.x(), ceData.rect.height(), ceData.rect.width());
+ const_cast<QStyleControlElementData&>(ceData).rect = QRect(ceData.rect.y(), ceData.rect.x(), ceData.rect.height(), ceData.rect.width());
}
style().drawControl(QStyle::CE_ProgressBarContents, buffer.painter(), ceData, elementFlags,
@@ -461,6 +463,8 @@ void QProgressBar::drawContents( QPainter *p )
QStyle::visualRect(style().subRect(QStyle::SR_ProgressBarLabel, this), this ),
colorGroup(), flags);
}
+
+ const_cast<QStyleControlElementData&>(ceData).rect = ceDataRectOrig;
}
#endif