| # kdecore Library API Documentation
Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Namespaces | Source Files

# KIconEffect Class Reference

Applies effects to icons. More...

`#include <kiconeffect.h>`

Collaboration diagram for KIconEffect:

[legend]
List of all members.

## Public Types
enum | Effects { NoEffect, ToGray, Colorize, ToGamma, DeSaturate, ToMonochrome, LastEffect }
## Public Member Functions
| KIconEffect ()
void | init ()
bool | hasEffect (int group, int state) const
QString | fingerprint (int group, int state) const
QImage | apply (QImage src, int group, int state) const
QImage | apply (QImage src, int effect, float value, const QColor rgb, bool trans) const
QImage | apply (QImage src, int effect, float value, const QColor rgb, const QColor rgb2, bool trans) const
QPixmap | apply (QPixmap src, int group, int state) const
QPixmap | apply (QPixmap src, int effect, float value, const QColor rgb, bool trans) const
QPixmap | apply (QPixmap src, int effect, float value, const QColor rgb, const QColor rgb2, bool trans) const
QImage | doublePixels (QImage src) const
## Static Public Member Functions
static void | visualActivate (QWidget *widget, QRect rect)
static void | toGray (QImage &image, float value)
static void | colorize (QImage &image, const QColor &col, float value)
static void | toMonochrome (QImage &image, const QColor &black, const QColor &white, float value)
static void | deSaturate (QImage &image, float value)
static void | toGamma (QImage &image, float value)
static void | semiTransparent (QImage &image)
static void | semiTransparent (QPixmap &pixmap)
static void | overlay (QImage &src, QImage &overlay)

## Detailed Description

Applies effects to icons.

This class applies effects to icons depending on their state and group. For example, it can be used to make all disabled icons in a toolbar gray.

See also:
  KIcon

Definition at line 34 of file kiconeffect.h.

## Member Enumeration Documentation

enum KIconEffect::Effects

  | This is the enumeration of all possible icon effects. Note that 'LastEffect' is no valid icon effect but only used internally to check for invalid icon effects. NoEffect: Don't apply any icon effect ToGray: Tints the icon gray Colorize: Tints the icon with an other color ToGamma: Change the gamma value of the icon DeSaturate: Reduce the saturation of the icon ToMonochrome: Produces a monochrome icon Enumeration values:
  ToMonochrome | Since: 3.4
Definition at line 55 of file kiconeffect.h.

## Constructor & Destructor Documentation

KIconEffect::KIconEffect | ( |  | ) |

| Create a new KIconEffect. Definition at line 49 of file kiconeffect.cpp. References init().

## Member Function Documentation

void KIconEffect::init | ( |  | ) |

| Rereads configuration. Definition at line 61 of file kiconeffect.cpp. References KGlobal::config(), KConfigBase::readBoolEntry(), KConfigBase::readColorEntry(), KConfigBase::readDoubleNumEntry(), KConfigBase::readEntry(), KConfigBase::setGroup(), and ToMonochrome. Referenced by KIconEffect().

bool KIconEffect::hasEffect | ( | int | group,
|  | int | state
| ) | const

  | Tests whether an effect has been configured for the given icon group. Parameters:
  | group | the group to check, see KIcon::Group
  | state | the state to check, see KIcon::States
Returns: true if an effect is configured for the given `group` in `state`, otherwise false. See also: KIcon::Group KIcon::States Definition at line 137 of file kiconeffect.cpp.

QString KIconEffect::fingerprint | ( | int | group,
|  | int | state
| ) | const

  | Returns a fingerprint for the effect by encoding the given `group` and `state` into a QString. This is useful for caching. Parameters:
  | group | the group, see KIcon::Group
  | state | the state, see KIcon::States
Returns: the fingerprint of the given `group+`state`` Definition at line 142 of file kiconeffect.cpp. References QString::fromLatin1(), QString::isEmpty(), QColor::name(), QString::setNum(), and ToMonochrome.

QImage KIconEffect::apply | ( | QImage | src,
|  | int | group,
|  | int | state
| ) | const

  | Applies an effect to an image. The effect to apply depends on the `group` and `state` parameters, and is configured by the user. Parameters:
  | src | The image.
  | group | The group for the icon, see KIcon::Group
  | state | The icon's state, see KIcon::States
Returns: An image with the effect applied. Definition at line 172 of file kiconeffect.cpp. Referenced by apply().

QImage KIconEffect::apply | ( | QImage | src,
|  | int | effect,
|  | float | value,
|  | const QColor | rgb,
|  | bool | trans
| ) | const

  | Applies an effect to an image. Parameters:
  | src | The image.
  | effect | The effect to apply, one of KIconEffect::Effects.
  | value | Strength of the effect. 0 <= `value` <= 1.
  | rgb | Color parameter for effects that need one.
  | trans | Add Transparency if trans = true.
Returns: An image with the effect applied. Definition at line 188 of file kiconeffect.cpp. References apply().

QImage KIconEffect::apply | ( | QImage | src,
|  | int | effect,
|  | float | value,
|  | const QColor | rgb,
|  | const QColor | rgb2,
|  | bool | trans
| ) | const

| Since: 3.4 Definition at line 193 of file kiconeffect.cpp. References colorize(), deSaturate(), semiTransparent(), toGamma(), toGray(), toMonochrome(), and ToMonochrome.

QPixmap KIconEffect::apply | ( | QPixmap | src,
|  | int | group,
|  | int | state
| ) | const

  | Applies an effect to a pixmap. Parameters:
  | src | The pixmap.
  | group | The group for the icon, see KIcon::Group
  | state | The icon's state, see KIcon::States
Returns: A pixmap with the effect applied. Definition at line 229 of file kiconeffect.cpp. References apply().

QPixmap KIconEffect::apply | ( | QPixmap | src,
|  | int | effect,
|  | float | value,
|  | const QColor | rgb,
|  | bool | trans
| ) | const

  | Applies an effect to a pixmap. Parameters:
  | src | The pixmap.
  | effect | The effect to apply, one of KIconEffect::Effects.
  | value | Strength of the effect. 0 <= `value` <= 1.
  | rgb | Color parameter for effects that need one.
  | trans | Add Transparency if trans = true.
Returns: A pixmap with the effect applied. Definition at line 245 of file kiconeffect.cpp. References apply().

QPixmap KIconEffect::apply | ( | QPixmap | src,
|  | int | effect,
|  | float | value,
|  | const QColor | rgb,
|  | const QColor | rgb2,
|  | bool | trans
| ) | const

| Since: 3.4 Definition at line 251 of file kiconeffect.cpp. References apply(), QPixmap::convertFromImage(), QPixmap::convertToImage(), and semiTransparent().

QImage KIconEffect::doublePixels | ( | QImage | src | ) | const

  | Returns an image twice as large, consisting of 2x2 pixels. Parameters:
  | src | the image.
Returns: the scaled image. Definition at line 540 of file kiconeffect.cpp. References QImage::bytesPerLine(), QImage::color(), QImage::create(), QImage::depth(), QImage::hasAlphaBuffer(), QImage::height(), QImage::numColors(), QImage::scanLine(), QImage::setAlphaBuffer(), QImage::setColor(), and QImage::width().

void KIconEffect::visualActivate | ( | QWidget * | widget,
|  | QRect | rect
| ) | `[static]`

  | Provides visual feedback to show activation of an icon on a widget. Not strictly an 'icon effect', but in practice that's what it looks like. This method does nothing if the global 'Visual feedback on activation' option is not activated (See kcontrol/Peripherals/Mouse). Parameters:
  | widget | The widget on which the effect should be painted
  | rect | This rectangle defines the effect's borders
Definition at line 704 of file kiconeffect.cpp. References QRect::center(), QPainter::drawRect(), QPainter::flush(), QRect::height(), QPainter::setPen(), QPainter::setRasterOp(), QRect::setRect(), KGlobalSettings::visualActivateSpeed(), QRect::width(), QPoint::x(), and QPoint::y().

void KIconEffect::toGray | ( | QImage & | image,
|  | float | value
| ) | `[static]`

  | Tints an image gray. Parameters:
  | image | The image
  | value | Strength of the effect. 0 <= `value` <= 1
Definition at line 282 of file kiconeffect.cpp. References QPixmap::depth(), QPixmap::height(), and QPixmap::width(). Referenced by apply().

void KIconEffect::colorize | ( | QImage & | image,
|  | const QColor & | col,
|  | float | value
| ) | `[static]`

  | Colorizes an image with a specific color. Parameters:
  | image | The image
  | col | The color with which the `image` is tinted
  | value | Strength of the effect. 0 <= `value` <= 1
Definition at line 304 of file kiconeffect.cpp. References QPixmap::depth(), QPixmap::height(), and QPixmap::width(). Referenced by apply().

void KIconEffect::toMonochrome | ( | QImage & | image,
|  | const QColor & | black,
|  | const QColor & | white,
|  | float | value
| ) | `[static]`

  | Produces a monochrome icon with a given foreground and background color. Parameters:
  | image | The image
  | white | The color with which the white parts of `image` are painted
  | black | The color with which the black parts of `image` are painted
  | value | Strength of the effect. 0 <= `value` <= 1
Since: 3.4 Definition at line 345 of file kiconeffect.cpp. References QPixmap::depth(), QPixmap::height(), and QPixmap::width(). Referenced by apply().

void KIconEffect::deSaturate | ( | QImage & | image,
|  | float | value
| ) | `[static]`

  | Desaturates an image. Parameters:
  | image | The image
  | value | Strength of the effect. 0 <= `value` <= 1
Definition at line 395 of file kiconeffect.cpp. References QColor::blue(), QColor::green(), QPixmap::height(), QColor::red(), QColor::setHsv(), QColor::setRgb(), and QPixmap::width(). Referenced by apply().

void KIconEffect::toGamma | ( | QImage & | image,
|  | float | value
| ) | `[static]`

  | Changes the gamma value of an image. Parameters:
  | image | The image
  | value | Strength of the effect. 0 <= `value` <= 1
Definition at line 413 of file kiconeffect.cpp. References QColor::rgb(), and QColor::setRgb(). Referenced by apply().

void KIconEffect::semiTransparent | ( | QImage & | image | ) | `[static]`

  | Renders an image semi-transparent. Parameters:
  | image | The image
Definition at line 435 of file kiconeffect.cpp. Referenced by apply(), and semiTransparent().

void KIconEffect::semiTransparent | ( | QPixmap & | pixmap | ) | `[static]`

  | Renders a pixmap semi-transparent. Parameters:
  | pixmap | The pixmap
Definition at line 509 of file kiconeffect.cpp. References QImage::create(), QImage::fill(), QImage::height(), QImage::scanLine(), semiTransparent(), and QImage::width().

void KIconEffect::overlay | ( | QImage & | src,
|  | QImage & | overlay
| ) | `[static]`

  | Overlays an image with an other image. Parameters:
  | src | The image
  | overlay | The image to overlay `src` with
Definition at line 589 of file kiconeffect.cpp. References overlay(). Referenced by KIconLoader::loadIcon(), and overlay().

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

- kiconeffect.h
- kiconeffect.cpp

This file is part of the documentation for kdecore Library Version 3.4.1.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Sat Jun 11 20:18:40 2005 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003