//
//     Copyright 2008 Jim Bublitz <jbublitz@nwinternet.com>
//     Earlier copyrights 1998 - 2007 Jim Bublitz also apply

//                 Generated by twine

// This file is part of PyKDE4.

// PyKDE4 is free software; you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as
// published by the Free Software Foundation; either version 2.1 of
// the License, or (at your option) any later version.

// PyKDE4 is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with this program.  If not, see <http://www.gnu.org/licenses/>.


class KIconEffect
{
%TypeHeaderCode
#include <kiconeffect.h>
%End

//force
                            KIconEffect (const KIconEffect& other);

//end
public:
                            KIconEffect ();

    enum Effects
    {
        NoEffect,
        ToGray,
        Colorize,
        ToGamma,
        DeSaturate,
        ToMonochrome,
        LastEffect
    };

    void                    init ();
    bool                    hasEffect (int group, int state) const;
    QString                 fingerprint (int group, int state) const;
    QImage                  apply (const QImage& src, int group, int state) const;
    QImage                  apply (const QImage& src, int effect, float value, const QColor& rgb, bool trans) const;
    QImage                  apply (const QImage& src, int effect, float value, const QColor& rgb, const QColor& rgb2, bool trans) const;
    QPixmap                 apply (const QPixmap& src, int group, int state) const;
    QPixmap                 apply (const QPixmap& src, int effect, float value, const QColor& rgb, bool trans) const;
    QPixmap                 apply (const QPixmap& src, int effect, float value, const QColor& rgb, const QColor& rgb2, bool trans) const;
    QImage                  doublePixels (const QImage& src) const;
    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);
    ~KIconEffect ();
};
// KIconEffect


