summaryrefslogtreecommitdiffstats
path: root/src/gui/image/qpixmapfilter_p.h
diff options
context:
space:
mode:
authorRhys Weatherley <rhys.weatherley@nokia.com>2009-07-23 13:53:06 +1000
committerRhys Weatherley <rhys.weatherley@nokia.com>2009-07-23 13:53:06 +1000
commit787f2252077434581101df64d0f0d576c26b7ce8 (patch)
treee0ff51ac86c3df457648f6857c4e8a54566140c2 /src/gui/image/qpixmapfilter_p.h
parente0c84298b2d4ed0b8b564dd491e5687296b75ebc (diff)
Add QPixmapBlurFilter for non-convolution blur effects.
Reviewed-by: trustme
Diffstat (limited to 'src/gui/image/qpixmapfilter_p.h')
-rw-r--r--src/gui/image/qpixmapfilter_p.h28
1 files changed, 28 insertions, 0 deletions
diff --git a/src/gui/image/qpixmapfilter_p.h b/src/gui/image/qpixmapfilter_p.h
index 51292b3d61..ca27cbfcd7 100644
--- a/src/gui/image/qpixmapfilter_p.h
+++ b/src/gui/image/qpixmapfilter_p.h
@@ -78,6 +78,7 @@ public:
ConvolutionFilter,
ColorizeFilter,
DropShadowFilter,
+ BlurFilter,
UserFilter = 1024
};
@@ -158,6 +159,33 @@ public:
inline void setOffset(qreal dx, qreal dy) { setOffset(QPointF(dx, dy)); }
};
+class QPixmapBlurFilterPrivate;
+
+class Q_GUI_EXPORT QPixmapBlurFilter : public QPixmapFilter
+{
+ Q_OBJECT
+ Q_DECLARE_PRIVATE(QPixmapBlurFilter)
+
+public:
+ QPixmapBlurFilter(QObject *parent = 0);
+ ~QPixmapBlurFilter();
+
+ enum BlurQuality
+ {
+ Fast,
+ High
+ };
+
+ BlurQuality blurQuality() const;
+ void setBlurQuality(BlurQuality blurQuality);
+
+ qreal blurRadius() const;
+ void setBlurRadius(qreal blurRadius);
+
+ QRectF boundingRectFor(const QRectF &rect) const;
+ void draw(QPainter *painter, const QPointF &dest, const QPixmap &src, const QRectF &srcRect = QRectF()) const;
+};
+
QT_END_NAMESPACE
QT_END_HEADER