# kdecore Library API Documentation

Overview | Class Hierarchy | Classes | Classes (annotated) | Members | Namespaces | Source Files

# kiconeffect.h

    00001 /* vi: ts=8 sts=4 sw=4
    00002  *
    00003  * This file is part of the KDE project, module kdecore.
    00004  * Copyright (C) 2000 Geert Jansen <jansen@kde.org>
    00005  * with minor additions and based on ideas from
    00006  * Torsten Rahn <torsten@kde.org>
    00007  *
    00008  * This is free software; it comes under the GNU Library General
    00009  * Public License, version 2. See the file "COPYING.LIB" for the
    00010  * exact licensing terms.
    00011  */
    00012
    00013 #ifndef __KIconEffect_h_Included__
    00014 #define __KIconEffect_h_Included__
    00015
    00016 #include <qimage.h>
    00017 #include <qpixmap.h>
    00018 #include <qcolor.h>
    00019 #include <qrect.h>
    00020 #include "kdelibs_export.h"
    00021
    00022 class QWidget;
    00023
    00024 class KIconEffectPrivate;
    00025
    00034 class KDECORE_EXPORT KIconEffect
    00035 {
    00036 public:
    00040     KIconEffect();
    00041     ~KIconEffect();
    00042
    00055     enum Effects { NoEffect, ToGray, Colorize, ToGamma, DeSaturate,
    00056                    ToMonochrome,
    00057            LastEffect };
    00058
    00062     void init();
    00063
    00073     bool hasEffect(int group, int state) const;
    00074
    00083      QString fingerprint(int group, int state) const;
    00084
    00093     QImage apply(QImage src, int group, int state) const;
    00094
    00104     // KDE4: make them references
    00105     QImage apply(QImage src, int effect, float value, const QColor rgb, bool trans) const;
    00109     QImage apply(QImage src, int effect, float value, const QColor rgb, const QColor rgb2, bool trans) const;
    00110
    00118     QPixmap apply(QPixmap src, int group, int state) const;
    00119
    00129     QPixmap apply(QPixmap src, int effect, float value, const QColor rgb, bool trans) const;
    00133     QPixmap apply(QPixmap src, int effect, float value, const QColor rgb, const QColor rgb2, bool trans) const;
    00134
    00140     QImage doublePixels(QImage src) const;
    00141
    00154     static void visualActivate(QWidget *widget, QRect rect);
    00155
    00162     static void toGray(QImage &image, float value);
    00163
    00171     static void colorize(QImage &image, const QColor &col, float value);
    00172
    00182     static void toMonochrome(QImage &image, const QColor &black, const QColor &white, float value);
    00183
    00190     static void deSaturate(QImage &image, float value);
    00191
    00198     static void toGamma(QImage &image, float value);
    00199
    00205     static void semiTransparent(QImage &image);
    00206
    00212     static void semiTransparent(QPixmap &pixmap);
    00213
    00220     static void overlay(QImage &src, QImage &overlay);
    00221
    00222 private:
    00223     int mEffect[6][3];
    00224     float mValue[6][3];
    00225     QColor mColor[6][3];
    00226     bool mTrans[6][3];
    00227     KIconEffectPrivate *d;
    00228 };
    00229
    00230 #endif

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:04 2005 by doxygen 1.4.1 written by Dimitri van Heesch, © 1997-2003