Public Member Functions

DropShadowEffect Class Reference

An effect filter that adds a drop-shadow behind the image's content. More...

Inherits ImageEffectFilter.

List of all members.

Public Member Functions

 DropShadowEffect ()
 Creates a default drop-shadow effect.
 ~DropShadowEffect ()
 Destructor.
void setShadowProperties (float newRadius, float newOpacity, int newShadowOffsetX, int newShadowOffsetY)
 Sets up parameters affecting the shadow's appearance.
void applyEffect (Image &sourceImage, Graphics &destContext, float alpha)
 Overridden to render the effect.

Detailed Description

An effect filter that adds a drop-shadow behind the image's content.

(This will only work on images/components that aren't opaque, of course).

When added to a component, this effect will draw a soft-edged shadow based on what gets drawn inside it. The shadow will also be applied to the component's children.

For speed, this doesn't use a proper gaussian blur, but cheats by using a simple bilinear filter. If you need a really high-quality shadow, check out ImageConvolutionKernel::createGaussianBlur()

See also:
Component::setComponentEffect

Constructor & Destructor Documentation

DropShadowEffect::DropShadowEffect (  )

Creates a default drop-shadow effect.

To customise the shadow's appearance, use the setShadowProperties() method.

DropShadowEffect::~DropShadowEffect (  )

Destructor.


Member Function Documentation

void DropShadowEffect::setShadowProperties ( float  newRadius,
float  newOpacity,
int  newShadowOffsetX,
int  newShadowOffsetY 
)

Sets up parameters affecting the shadow's appearance.

Parameters:
newRadiusthe (approximate) radius of the blur used
newOpacitythe opacity with which the shadow is rendered
newShadowOffsetXallows the shadow to be shifted in relation to the component's contents
newShadowOffsetYallows the shadow to be shifted in relation to the component's contents
void DropShadowEffect::applyEffect ( Image sourceImage,
Graphics destContext,
float  alpha 
) [virtual]

Overridden to render the effect.

The implementation of this method must use the image that is passed in as its source, and should render its output to the graphics context passed in.

Parameters:
sourceImagethe image that the source component has just rendered with its paint() method. The image may or may not have an alpha channel, depending on whether the component is opaque.
destContextthe graphics context to use to draw the resultant image.
alphathe alpha with which to draw the resultant image to the target context

Implements ImageEffectFilter.


The documentation for this class was generated from the following file:
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines