Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
qpixmapfilter_p.h
Go to the documentation of this file.
1
// Copyright (C) 2016 The Qt Company Ltd.
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
// Qt-Security score:significant reason:default
4
5
#
ifndef
QPIXMAPFILTER_H
6
#
define
QPIXMAPFILTER_H
7
8
//
9
// W A R N I N G
10
// -------------
11
//
12
// This file is not part of the Qt API. It exists purely as an
13
// implementation detail. This header file may change from version to
14
// version without notice, or even be removed.
15
//
16
// We mean it.
17
//
18
19
#
include
<
QtWidgets
/
private
/
qtwidgetsglobal_p
.
h
>
20
#
include
<
QtCore
/
qnamespace
.
h
>
21
#
include
<
QtGui
/
qpixmap
.
h
>
22
#
include
<
QtWidgets
/
qgraphicseffect
.
h
>
23
24
QT_REQUIRE_CONFIG
(
graphicseffect
);
25
26
QT_BEGIN_NAMESPACE
27
28
class
QPainter;
29
class
QPlatformPixmap;
30
31
class
QPixmapFilterPrivate
;
32
33
class
Q_WIDGETS_EXPORT
QPixmapFilter
:
public
QObject
34
{
35
Q_OBJECT
36
Q_DECLARE_PRIVATE(QPixmapFilter)
37
public
:
38
virtual
~QPixmapFilter() = 0;
39
40
enum
FilterType {
41
ConvolutionFilter,
42
ColorizeFilter,
43
DropShadowFilter,
44
BlurFilter,
45
46
UserFilter = 1024
47
};
48
49
FilterType type()
const
;
50
51
virtual
QRectF boundingRectFor(
const
QRectF &rect)
const
;
52
53
virtual
void
draw(QPainter *painter,
const
QPointF &p,
const
QPixmap &src,
const
QRectF &srcRect = QRectF())
const
= 0;
54
55
protected
:
56
QPixmapFilter(QPixmapFilterPrivate &d, FilterType type, QObject *parent);
57
QPixmapFilter(FilterType type, QObject *parent);
58
};
59
60
class
QPixmapConvolutionFilterPrivate
;
61
62
class
Q_WIDGETS_EXPORT
QPixmapConvolutionFilter
:
public
QPixmapFilter
63
{
64
Q_OBJECT
65
Q_DECLARE_PRIVATE(QPixmapConvolutionFilter)
66
67
public
:
68
QPixmapConvolutionFilter(QObject *parent =
nullptr
);
69
~QPixmapConvolutionFilter();
70
71
void
setConvolutionKernel(
const
qreal *matrix,
int
rows,
int
columns);
72
73
QRectF boundingRectFor(
const
QRectF &rect)
const
override;
74
void
draw(QPainter *painter,
const
QPointF &dest,
const
QPixmap &src,
const
QRectF &srcRect = QRectF())
const
override;
75
76
private
:
77
friend
class
QVGPixmapConvolutionFilter;
78
const
qreal *convolutionKernel()
const
;
79
int
rows()
const
;
80
int
columns()
const
;
81
};
82
83
class
QPixmapBlurFilterPrivate
;
84
85
class
Q_WIDGETS_EXPORT
QPixmapBlurFilter
:
public
QPixmapFilter
86
{
87
Q_OBJECT
88
Q_DECLARE_PRIVATE(QPixmapBlurFilter)
89
90
public
:
91
QPixmapBlurFilter(QObject *parent =
nullptr
);
92
~QPixmapBlurFilter();
93
94
void
setRadius(qreal radius);
95
void
setBlurHints(QGraphicsBlurEffect::BlurHints hints);
96
97
qreal radius()
const
;
98
QGraphicsBlurEffect::BlurHints blurHints()
const
;
99
100
QRectF boundingRectFor(
const
QRectF &rect)
const
override;
101
void
draw(QPainter *painter,
const
QPointF &dest,
const
QPixmap &src,
const
QRectF &srcRect = QRectF())
const
override;
102
};
103
104
class
QPixmapColorizeFilterPrivate
;
105
106
class
Q_WIDGETS_EXPORT
QPixmapColorizeFilter
:
public
QPixmapFilter
107
{
108
Q_OBJECT
109
Q_DECLARE_PRIVATE(QPixmapColorizeFilter)
110
111
public
:
112
QPixmapColorizeFilter(QObject *parent =
nullptr
);
113
~QPixmapColorizeFilter();
114
115
void
setColor(
const
QColor& color);
116
QColor color()
const
;
117
118
void
setStrength(qreal strength);
119
qreal strength()
const
;
120
121
void
draw(QPainter *painter,
const
QPointF &dest,
const
QPixmap &src,
const
QRectF &srcRect = QRectF())
const
override;
122
};
123
124
class
QPixmapDropShadowFilterPrivate
;
125
126
class
Q_WIDGETS_EXPORT
QPixmapDropShadowFilter
:
public
QPixmapFilter
127
{
128
Q_OBJECT
129
Q_DECLARE_PRIVATE(QPixmapDropShadowFilter)
130
131
public
:
132
QPixmapDropShadowFilter(QObject *parent =
nullptr
);
133
~QPixmapDropShadowFilter();
134
135
QRectF boundingRectFor(
const
QRectF &rect)
const
override;
136
void
draw(QPainter *p,
const
QPointF &pos,
const
QPixmap &px,
const
QRectF &src = QRectF())
const
override;
137
138
qreal blurRadius()
const
;
139
void
setBlurRadius(qreal radius);
140
141
QColor color()
const
;
142
void
setColor(
const
QColor &color);
143
144
QPointF offset()
const
;
145
void
setOffset(
const
QPointF &offset);
146
inline
void
setOffset(qreal dx, qreal dy) { setOffset(QPointF(dx, dy)); }
147
};
148
149
QT_END_NAMESPACE
150
151
#
endif
// QPIXMAPFILTER_H
QPaintEngine::QPainter
friend class QPainter
Definition
qpaintengine.h:220
QPixmapBlurFilterPrivate
Definition
qpixmapfilter.cpp:464
QPixmapBlurFilterPrivate::radius
qreal radius
Definition
qpixmapfilter.cpp:468
QPixmapBlurFilterPrivate::QPixmapBlurFilterPrivate
QPixmapBlurFilterPrivate()
Definition
qpixmapfilter.cpp:466
QPixmapBlurFilterPrivate::hints
QGraphicsBlurEffect::BlurHints hints
Definition
qpixmapfilter.cpp:469
QPixmapBlurFilter
The QPixmapBlurFilter class provides blur filtering for pixmaps.
Definition
qpixmapfilter_p.h:86
QPixmapColorizeFilterPrivate
Definition
qpixmapfilter.cpp:663
QPixmapColorizeFilterPrivate::padding
quint32 padding
Definition
qpixmapfilter.cpp:670
QPixmapColorizeFilterPrivate::strength
qreal strength
Definition
qpixmapfilter.cpp:667
QPixmapColorizeFilterPrivate::opaque
quint32 opaque
Definition
qpixmapfilter.cpp:668
QPixmapColorizeFilterPrivate::alphaBlend
quint32 alphaBlend
Definition
qpixmapfilter.cpp:669
QPixmapColorizeFilter
The QPixmapColorizeFilter class provides colorizing filtering for pixmaps.
Definition
qpixmapfilter_p.h:107
QPixmapConvolutionFilterPrivate
Definition
qpixmapfilter.cpp:173
QPixmapConvolutionFilterPrivate::QPixmapConvolutionFilterPrivate
QPixmapConvolutionFilterPrivate()
Definition
qpixmapfilter.cpp:175
QPixmapConvolutionFilterPrivate::~QPixmapConvolutionFilterPrivate
~QPixmapConvolutionFilterPrivate()
Definition
qpixmapfilter.cpp:176
QPixmapConvolutionFilterPrivate::convolutionKernel
qreal * convolutionKernel
Definition
qpixmapfilter.cpp:180
QPixmapConvolutionFilterPrivate::convoluteAlpha
bool convoluteAlpha
Definition
qpixmapfilter.cpp:183
QPixmapConvolutionFilterPrivate::kernelWidth
int kernelWidth
Definition
qpixmapfilter.cpp:181
QPixmapConvolutionFilterPrivate::kernelHeight
int kernelHeight
Definition
qpixmapfilter.cpp:182
QPixmapConvolutionFilter
The QPixmapConvolutionFilter class provides convolution filtering for pixmaps.
Definition
qpixmapfilter_p.h:63
QPixmapDropShadowFilterPrivate
Definition
qpixmapfilter.cpp:807
QPixmapDropShadowFilterPrivate::color
QColor color
Definition
qpixmapfilter.cpp:813
QPixmapDropShadowFilterPrivate::offset
QPointF offset
Definition
qpixmapfilter.cpp:812
QPixmapDropShadowFilterPrivate::radius
qreal radius
Definition
qpixmapfilter.cpp:814
QPixmapDropShadowFilterPrivate::QPixmapDropShadowFilterPrivate
QPixmapDropShadowFilterPrivate()
Definition
qpixmapfilter.cpp:809
QPixmapDropShadowFilter
The QPixmapDropShadowFilter class is a convenience class for drawing pixmaps with drop shadows.
Definition
qpixmapfilter_p.h:127
QPixmapFilterPrivate
Definition
qpixmapfilter.cpp:26
QPixmapFilter
The QPixmapFilter class provides the basic functionality for pixmap filter classes....
Definition
qpixmapfilter_p.h:34
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qsequentialanimationgroup.cpp:47
QT_REQUIRE_CONFIG
QT_REQUIRE_CONFIG(liburing)
qt_scaleForTransform
Q_GUI_EXPORT bool qt_scaleForTransform(const QTransform &transform, qreal *scale)
Definition
qtransform.cpp:2160
qt_blurImage
Q_GUI_EXPORT void qt_blurImage(QPainter *p, QImage &blurImage, qreal radius, bool quality, bool alphaOnly, int transposed=0)
Definition
qimageeffects.cpp:293
radiusScale
const qreal radiusScale
Definition
qpixmapfilter.cpp:546
grayscale
static void grayscale(const QImage &image, QImage &dest, const QRect &rect=QRect())
Definition
qpixmapfilter.cpp:606
convolute
static void convolute(QImage *destImage, const QPointF &pos, const QImage &srcImage, const QRectF &srcRect, QPainter::CompositionMode mode, qreal *kernel, int kernelWidth, int kernelHeight)
Definition
qpixmapfilter.cpp:275
qtbase
src
widgets
effects
qpixmapfilter_p.h
Generated on
for Qt by
1.18.0