src/hbcore/primitives/hbrichtextitem.cpp
changeset 23 e6ad4ef83b23
parent 21 4633027730f5
child 28 b7da29130b0e
--- a/src/hbcore/primitives/hbrichtextitem.cpp	Wed Aug 18 10:05:37 2010 +0300
+++ b/src/hbcore/primitives/hbrichtextitem.cpp	Thu Sep 02 20:44:51 2010 +0300
@@ -38,6 +38,7 @@
 #include <QAbstractTextDocumentLayout>
 #include <QApplication>
 #include <QWidget>
+#include <QStyleOptionGraphicsItem>
 
 const qreal KMinimumRichTextWidth = 6.0;
 
@@ -354,7 +355,7 @@
 void HbRichTextItem::setAlignment(Qt::Alignment alignment)
 {
     Q_D(HbRichTextItem);
-	d->setApiProtectionFlag(HbWidgetBasePrivate::AC_TextAlign, true);
+    d->setApiProtectionFlag(HbWidgetBasePrivate::AC_TextAlign, true);
     alignment &= Qt::AlignVertical_Mask | Qt::AlignHorizontal_Mask;
     if (d->mTextOption.alignment()!=alignment) {
         prepareGeometryChange();
@@ -383,23 +384,18 @@
                            const QStyleOptionGraphicsItem *option,
                            QWidget *widget)
 {
-    Q_UNUSED(option);
     Q_UNUSED(widget);
 
     Q_D(HbRichTextItem);
 
     // Save painter's state
-    QRegion oldClipRegion = painter->clipRegion();
-    QTransform oldTransform = painter->transform();
-
     painter->translate(d->mOffset);
     QAbstractTextDocumentLayout::PaintContext context;
+    context.clip = option->exposedRect;
     context.palette.setColor(QPalette::Text, textDefaultColor());
     d->mRtf->documentLayout()->draw(painter, context);
 
-    // Restore painter's state
-    painter->setClipRegion(oldClipRegion);
-    painter->setTransform(oldTransform);
+    painter->translate(-d->mOffset);
 }
 
 /*!
@@ -535,7 +531,7 @@
 void HbRichTextItem::setTextWrapping(Hb::TextWrapping mode)
 {
     Q_D(HbRichTextItem);
-	d->setApiProtectionFlag(HbWidgetBasePrivate::AC_TextWrapMode, true);
+    d->setApiProtectionFlag(HbWidgetBasePrivate::AC_TextWrapMode, true);
     QTextOption::WrapMode textWrapMode = static_cast<QTextOption::WrapMode>(mode);
 
     if (d->mTextOption.wrapMode()!=textWrapMode) {