diff options
author | Stanislav Ionascu <stanislav.ionascu@nokia.com> | 2010-07-19 16:10:05 +0300 |
---|---|---|
committer | Sergiy Dubovik <sergiy.dubovik@nokia.com> | 2010-07-21 13:14:04 +0300 |
commit | 0cc8bab7a60adcac984559da8660efa16e605875 (patch) | |
tree | b5ec1c273d60842b2f12917f348a3489754181b6 /src/views/mimagewidgetview.h | |
parent | 0e733e08291da0a1adcd5edbf0620331f4f16aa6 (diff) |
Changes: Make MImageWidget draw the QImage instead of transforming it into QPixmap.
RevBy: Sergiy
Details: QPixmap::fromImage is a very slow operation on X11, so use QImage for drawing
instead of transforming it on each set into QPixmap.
Also do not calculate source and draw rectangles on each draw contents call. Because
it will be recalculated on each draw pass.
Some major refactoring involved such as separating draw, source rectangle calculations in
their own functions. Refactored border draw code into own function, added caching of style
parameters.
Diffstat (limited to 'src/views/mimagewidgetview.h')
-rw-r--r-- | src/views/mimagewidgetview.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/views/mimagewidgetview.h b/src/views/mimagewidgetview.h index 0f1d0040..fd4c80e0 100644 --- a/src/views/mimagewidgetview.h +++ b/src/views/mimagewidgetview.h @@ -72,6 +72,9 @@ protected: //! \reimp virtual void drawContents(QPainter *painter, const QStyleOptionGraphicsItem *option) const; virtual QSizeF sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const; + virtual void setGeometry(const QRectF &rect); + virtual void applyStyle(); + virtual void updateData(const QList<const char *> &modifications); //! \reimp_end //! \internal |