Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QGraphicsDropShadowEffect Class Reference

The QGraphicsDropShadowEffect class provides a drop shadow effect. More...

#include <qgraphicseffect.h>

+ Inheritance diagram for QGraphicsDropShadowEffect:
+ Collaboration diagram for QGraphicsDropShadowEffect:

Public Slots

void setOffset (const QPointF &ofs)
 
void setOffset (qreal dx, qreal dy)
 
void setOffset (qreal d)
 
void setXOffset (qreal dx)
 
void setYOffset (qreal dy)
 
void setBlurRadius (qreal blurRadius)
 
void setColor (const QColor &color)
 
- Public Slots inherited from QGraphicsEffect
void setEnabled (bool enable)
 
void update ()
 Schedules a redraw of the effect.
 
- Public Slots inherited from QObject
void deleteLater ()
 \threadsafe
 

Signals

void offsetChanged (const QPointF &offset)
 This signal is emitted whenever the effect's shadow offset changes.
 
void blurRadiusChanged (qreal blurRadius)
 This signal is emitted whenever the effect's blur radius changes.
 
void colorChanged (const QColor &color)
 This signal is emitted whenever the effect's color changes.
 
- Signals inherited from QGraphicsEffect
void enabledChanged (bool enabled)
 This signal is emitted whenever the effect is enabled or disabled.
 
- Signals inherited from QObject
void destroyed (QObject *=nullptr)
 This signal is emitted immediately before the object obj is destroyed, after any instances of QPointer have been notified, and cannot be blocked.
 
void objectNameChanged (const QString &objectName, QPrivateSignal)
 This signal is emitted after the object's name has been changed.
 

Public Member Functions

 QGraphicsDropShadowEffect (QObject *parent=nullptr)
 Constructs a new QGraphicsDropShadowEffect instance.
 
 ~QGraphicsDropShadowEffect ()
 Destroys the effect.
 
QRectF boundingRectFor (const QRectF &rect) const override
 \reimp
 
QPointF offset () const
 
qreal xOffset () const
 
qreal yOffset () const
 
qreal blurRadius () const
 
QColor color () const
 
- Public Member Functions inherited from QGraphicsEffect
 QGraphicsEffect (QObject *parent=nullptr)
 Constructs a new QGraphicsEffect instance having the specified parent.
 
virtual ~QGraphicsEffect ()
 Removes the effect from the source, and destroys the graphics effect.
 
QRectF boundingRect () const
 Returns the effective bounding rectangle for this effect, i.e., the bounding rectangle of the source in device coordinates, adjusted by any margins applied by the effect itself.
 
bool isEnabled () const
 
QGraphicsEffectSourcesource () const
 
- Public Member Functions inherited from QObject
Q_INVOKABLE QObject (QObject *parent=nullptr)
 Constructs an object with parent object parent.
 
virtual ~QObject ()
 Destroys the object, deleting all its child objects.
 
virtual bool event (QEvent *event)
 This virtual function receives events to an object and should return true if the event e was recognized and processed.
 
virtual bool eventFilter (QObject *watched, QEvent *event)
 Filters events if this object has been installed as an event filter for the watched object.
 
QString objectName () const
 
Q_WEAK_OVERLOAD void setObjectName (const QString &name)
 Sets the object's name to name.
 
void setObjectName (QAnyStringView name)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
QBindable< QStringbindableObjectName ()
 
bool isWidgetType () const
 Returns true if the object is a widget; otherwise returns false.
 
bool isWindowType () const
 Returns true if the object is a window; otherwise returns false.
 
bool isQuickItemType () const
 Returns true if the object is a QQuickItem; otherwise returns false.
 
bool signalsBlocked () const noexcept
 Returns true if signals are blocked; otherwise returns false.
 
bool blockSignals (bool b) noexcept
 If block is true, signals emitted by this object are blocked (i.e., emitting a signal will not invoke anything connected to it).
 
QThreadthread () const
 Returns the thread in which the object lives.
 
bool moveToThread (QThread *thread QT6_DECL_NEW_OVERLOAD_TAIL)
 Changes the thread affinity for this object and its children and returns true on success.
 
int startTimer (int interval, Qt::TimerType timerType=Qt::CoarseTimer)
 This is an overloaded function that will start a timer of type timerType and a timeout of interval milliseconds.
 
int startTimer (std::chrono::nanoseconds time, Qt::TimerType timerType=Qt::CoarseTimer)
 
void killTimer (int id)
 Kills the timer with timer identifier, id.
 
void killTimer (Qt::TimerId id)
 
template<typename T >
findChild (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns the child of this object that can be cast into type T and that is called name, or \nullptr if there is no such object.
 
template<typename T >
QList< T > findChildren (QAnyStringView aName, Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 Returns all children of this object with the given name that can be cast to type T, or an empty list if there are no such objects.
 
template<typename T >
findChild (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
template<typename T >
QList< T > findChildren (Qt::FindChildOptions options=Qt::FindChildrenRecursively) const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
 
const QObjectListchildren () const
 Returns a list of child objects.
 
void setParent (QObject *parent)
 Makes the object a child of parent.
 
void installEventFilter (QObject *filterObj)
 Installs an event filter filterObj on this object.
 
void removeEventFilter (QObject *obj)
 Removes an event filter object obj from this object.
 
QMetaObject::Connection connect (const QObject *sender, const char *signal, const char *member, Qt::ConnectionType type=Qt::AutoConnection) const
 
bool disconnect (const char *signal=nullptr, const QObject *receiver=nullptr, const char *member=nullptr) const
 
bool disconnect (const QObject *receiver, const char *member=nullptr) const
 
void dumpObjectTree () const
 Dumps a tree of children to the debug output.
 
void dumpObjectInfo () const
 Dumps information about signal connections, etc.
 
bool setProperty (const char *name, const QVariant &value)
 Sets the value of the object's name property to value.
 
bool setProperty (const char *name, QVariant &&value)
 
QVariant property (const char *name) const
 Returns the value of the object's name property.
 
QList< QByteArraydynamicPropertyNames () const
 
QBindingStoragebindingStorage ()
 
const QBindingStoragebindingStorage () const
 
QObjectparent () const
 Returns a pointer to the parent object.
 
bool inherits (const char *classname) const
 Returns true if this object is an instance of a class that inherits className or a QObject subclass that inherits className; otherwise returns false.
 

Protected Member Functions

void draw (QPainter *painter) override
 \reimp
 
- Protected Member Functions inherited from QGraphicsEffect
 QGraphicsEffect (QGraphicsEffectPrivate &d, QObject *parent=nullptr)
 
virtual void sourceChanged (ChangeFlags flags)
 This virtual function is called by QGraphicsEffect to notify the effect that the source has changed.
 
void updateBoundingRect ()
 This function notifies the effect framework when the effect's bounding rectangle has changed.
 
bool sourceIsPixmap () const
 Returns true if the source effectively is a pixmap, e.g., a QGraphicsPixmapItem.
 
QRectF sourceBoundingRect (Qt::CoordinateSystem system=Qt::LogicalCoordinates) const
 Returns the bounding rectangle of the source mapped to the given system.
 
void drawSource (QPainter *painter)
 Draws the source directly using the given painter.
 
QPixmap sourcePixmap (Qt::CoordinateSystem system=Qt::LogicalCoordinates, QPoint *offset=nullptr, PixmapPadMode mode=PadToEffectiveBoundingRect) const
 Returns a pixmap with the source painted into it.
 
- Protected Member Functions inherited from QObject
QObjectsender () const
 Returns a pointer to the object that sent the signal, if called in a slot activated by a signal; otherwise it returns \nullptr.
 
int senderSignalIndex () const
 
int receivers (const char *signal) const
 Returns the number of receivers connected to the signal.
 
bool isSignalConnected (const QMetaMethod &signal) const
 
virtual void timerEvent (QTimerEvent *event)
 This event handler can be reimplemented in a subclass to receive timer events for the object.
 
virtual void childEvent (QChildEvent *event)
 This event handler can be reimplemented in a subclass to receive child events.
 
virtual void customEvent (QEvent *event)
 This event handler can be reimplemented in a subclass to receive custom events.
 
virtual void connectNotify (const QMetaMethod &signal)
 
virtual void disconnectNotify (const QMetaMethod &signal)
 
 QObject (QObjectPrivate &dd, QObject *parent=nullptr)
 

Properties

QPointF offset
 the shadow offset in pixels.
 
qreal xOffset
 the horizontal shadow offset in pixels.
 
qreal yOffset
 the vertical shadow offset in pixels.
 
qreal blurRadius
 the blur radius in pixels of the drop shadow.
 
QColor color
 the color of the drop shadow.
 
- Properties inherited from QGraphicsEffect
bool enabled
 whether the effect is enabled or not.
 
- Properties inherited from QObject
QString objectName
 the name of this object
 

Additional Inherited Members

- Public Types inherited from QGraphicsEffect
enum  ChangeFlag { SourceAttached = 0x1 , SourceDetached = 0x2 , SourceBoundingRectChanged = 0x4 , SourceInvalidated = 0x8 }
 This enum describes what has changed in QGraphicsEffectSource. More...
 
enum  PixmapPadMode { NoPad , PadToTransparentBorder , PadToEffectiveBoundingRect }
 This enum describes how the pixmap returned from sourcePixmap should be padded. More...
 
- Static Public Member Functions inherited from QObject
static QMetaObject::Connection connect (const QObject *sender, const char *signal, const QObject *receiver, const char *member, Qt::ConnectionType=Qt::AutoConnection)
 \threadsafe
 
static QMetaObject::Connection connect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &method, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::ContextTypeForFunctor< Func2 >::ContextType *context, Func2 &&slot, Qt::ConnectionType type=Qt::AutoConnection)
 
template<typename Func1 , typename Func2 >
static QMetaObject::Connection connect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, Func2 &&slot)
 
static bool disconnect (const QObject *sender, const char *signal, const QObject *receiver, const char *member)
 \threadsafe
 
static bool disconnect (const QObject *sender, const QMetaMethod &signal, const QObject *receiver, const QMetaMethod &member)
 
static bool disconnect (const QMetaObject::Connection &)
 Disconnect a connection.
 
template<typename Func1 , typename Func2 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const typename QtPrivate::FunctionPointer< Func2 >::Object *receiver, Func2 slot)
 
template<typename Func1 >
static bool disconnect (const typename QtPrivate::FunctionPointer< Func1 >::Object *sender, Func1 signal, const QObject *receiver, void **zero)
 
- Protected Attributes inherited from QObject
QScopedPointer< QObjectDatad_ptr
 

Detailed Description

The QGraphicsDropShadowEffect class provides a drop shadow effect.

Since
4.6 \inmodule QtWidgets

A drop shadow effect renders the source with a drop shadow. The color of the drop shadow can be modified using the setColor() function. The drop shadow offset can be modified using the setOffset() function and the blur radius of the drop shadow can be changed with the setBlurRadius() function.

By default, the drop shadow is a semi-transparent dark gray (QColor(63, 63, 63, 180)) shadow, blurred with a radius of 1 at an offset of 8 pixels towards the lower right. The drop shadow offset is specified in device coordinates.

See also
QGraphicsBlurEffect, QGraphicsColorizeEffect, QGraphicsOpacityEffect

Definition at line 160 of file qgraphicseffect.h.

Constructor & Destructor Documentation

◆ QGraphicsDropShadowEffect()

QGraphicsDropShadowEffect::QGraphicsDropShadowEffect ( QObject * parent = nullptr)

Constructs a new QGraphicsDropShadowEffect instance.

The parent parameter is passed to QGraphicsEffect's constructor.

Definition at line 867 of file qgraphicseffect.cpp.

◆ ~QGraphicsDropShadowEffect()

QGraphicsDropShadowEffect::~QGraphicsDropShadowEffect ( )

Destroys the effect.

Definition at line 875 of file qgraphicseffect.cpp.

Member Function Documentation

◆ blurRadius()

qreal QGraphicsDropShadowEffect::blurRadius ( ) const

Definition at line 945 of file qgraphicseffect.cpp.

References d.

◆ blurRadiusChanged

void QGraphicsDropShadowEffect::blurRadiusChanged ( qreal blurRadius)
signal

This signal is emitted whenever the effect's blur radius changes.

The blurRadius parameter holds the effect's new blur radius.

Referenced by setBlurRadius().

+ Here is the caller graph for this function:

◆ boundingRectFor()

QRectF QGraphicsDropShadowEffect::boundingRectFor ( const QRectF & rect) const
overridevirtual

\reimp

Reimplemented from QGraphicsEffect.

Definition at line 1005 of file qgraphicseffect.cpp.

References d, and rect.

◆ color()

QColor QGraphicsDropShadowEffect::color ( ) const

Definition at line 978 of file qgraphicseffect.cpp.

References d.

◆ colorChanged

void QGraphicsDropShadowEffect::colorChanged ( const QColor & color)
signal

This signal is emitted whenever the effect's color changes.

The color parameter holds the effect's new color.

◆ draw()

void QGraphicsDropShadowEffect::draw ( QPainter * painter)
overrideprotectedvirtual

\reimp

Implements QGraphicsEffect.

Definition at line 1014 of file qgraphicseffect.cpp.

References d, Qt::DeviceCoordinates, QGraphicsEffect::drawSource(), offset, QGraphicsEffect::PadToEffectiveBoundingRect, painter, pixmap, QPainter::setWorldTransform(), QGraphicsEffect::sourcePixmap(), and QPainter::worldTransform().

+ Here is the call graph for this function:

◆ offset()

QPointF QGraphicsDropShadowEffect::offset ( ) const

Definition at line 890 of file qgraphicseffect.cpp.

References d.

◆ offsetChanged

void QGraphicsDropShadowEffect::offsetChanged ( const QPointF & offset)
signal

This signal is emitted whenever the effect's shadow offset changes.

The offset parameter holds the effect's new shadow offset.

Referenced by setOffset().

+ Here is the caller graph for this function:

◆ setBlurRadius

void QGraphicsDropShadowEffect::setBlurRadius ( qreal blurRadius)
slot

Definition at line 951 of file qgraphicseffect.cpp.

References blurRadius, blurRadiusChanged(), d, emit, qFuzzyCompare(), and QGraphicsEffect::updateBoundingRect().

+ Here is the call graph for this function:

◆ setColor

void QGraphicsDropShadowEffect::setColor ( const QColor & color)
slot

Definition at line 984 of file qgraphicseffect.cpp.

References colorChanged(), d, emit, and QGraphicsEffect::update().

+ Here is the call graph for this function:

◆ setOffset [1/3]

void QGraphicsDropShadowEffect::setOffset ( const QPointF & ofs)
slot

Definition at line 896 of file qgraphicseffect.cpp.

References d, emit, offsetChanged(), and QGraphicsEffect::updateBoundingRect().

+ Here is the call graph for this function:

◆ setOffset [2/3]

void QGraphicsDropShadowEffect::setOffset ( qreal d)
inlineslot

Definition at line 190 of file qgraphicseffect.h.

References d.

◆ setOffset [3/3]

void QGraphicsDropShadowEffect::setOffset ( qreal dx,
qreal dy )
inlineslot

Definition at line 187 of file qgraphicseffect.h.

◆ setXOffset

void QGraphicsDropShadowEffect::setXOffset ( qreal dx)
inlineslot

Definition at line 193 of file qgraphicseffect.h.

◆ setYOffset

void QGraphicsDropShadowEffect::setYOffset ( qreal dy)
inlineslot

Definition at line 196 of file qgraphicseffect.h.

◆ xOffset()

qreal QGraphicsDropShadowEffect::xOffset ( ) const
inline

Definition at line 175 of file qgraphicseffect.h.

◆ yOffset()

qreal QGraphicsDropShadowEffect::yOffset ( ) const
inline

Definition at line 178 of file qgraphicseffect.h.

Property Documentation

◆ blurRadius

QGraphicsDropShadowEffect::blurRadius
readwrite

the blur radius in pixels of the drop shadow.

Using a smaller radius results in a sharper shadow, whereas using a bigger radius results in a more blurred shadow.

By default, the blur radius is 1 pixel.

See also
color(), offset()

Definition at line 166 of file qgraphicseffect.h.

Referenced by setBlurRadius().

◆ color

QGraphicsDropShadowEffect::color
readwrite

the color of the drop shadow.

By default, the drop color is a semi-transparent dark gray (QColor(63, 63, 63, 180)).

See also
offset(), blurRadius()

Definition at line 167 of file qgraphicseffect.h.

◆ offset

QGraphicsDropShadowEffect::offset
readwrite

the shadow offset in pixels.

By default, the offset is 8 pixels towards the lower right.

The offset is given in device coordinates, which means it is unaffected by scale.

See also
xOffset(), yOffset(), blurRadius(), color()

Definition at line 163 of file qgraphicseffect.h.

Referenced by draw().

◆ xOffset

QGraphicsDropShadowEffect::xOffset
readwrite

the horizontal shadow offset in pixels.

By default, the horizontal shadow offset is 8 pixels.

See also
yOffset(), offset()

Definition at line 164 of file qgraphicseffect.h.

◆ yOffset

QGraphicsDropShadowEffect::yOffset
readwrite

the vertical shadow offset in pixels.

By default, the vertical shadow offset is 8 pixels.

See also
xOffset(), offset()

Definition at line 165 of file qgraphicseffect.h.


The documentation for this class was generated from the following files: