//
//     Copyright 2006 Jim Bublitz <jbublitz@nwinternet.com>
//     Earlier copyrights 1998 - 2005 Jim Bublitz and/or Phil Thompson
//     may also apply


//                 Generated by preSip
//            module tdefx  version KDE 3.5.3


// This software is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public License as
// published by the Free Software Foundation; either version 2 of
// the License, or (at your option) any later version.
//
// This software 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 library; see the file COPYING.
// If not, write to the Free Software Foundation, Inc.,
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.


class KPixmapEffect
{
%TypeHeaderCode
#include <kpixmapeffect.h>
%End


public:

    enum GradientType
    {
        VerticalGradient, 
        HorizontalGradient, 
        DiagonalGradient, 
        CrossDiagonalGradient, 
        PyramidGradient, 
        RectangleGradient, 
        PipeCrossGradient, 
        EllipticGradient
    };


    enum RGBComponent
    {
        Red, 
        Green, 
        Blue
    };


    enum Lighting
    {
        NorthLite, 
        NWLite, 
        WestLite, 
        SWLite, 
        SouthLite, 
        SELite, 
        EastLite, 
        NELite
    };

    static KPixmap&      gradient (KPixmap&, const TQColor&, const TQColor&, KPixmapEffect::GradientType, int = 3);
    static KPixmap&      unbalancedGradient (KPixmap&, const TQColor&, const TQColor&, KPixmapEffect::GradientType, int = 100, int = 100, int = 3);
    static KPixmap       createTiled (const KPixmap&, TQSize);
    static KPixmap&      intensity (KPixmap&, float);
    static KPixmap&      channelIntensity (KPixmap&, float, KPixmapEffect::RGBComponent);
    static KPixmap&      blend (KPixmap&, float, const TQColor&, KPixmapEffect::GradientType, bool = 0, int = 3);
    static KPixmap&      hash (KPixmap&, KPixmapEffect::Lighting = NorthLite , uint = 0, int = 3);
    static KPixmap       pattern (const KPixmap&, TQSize, const TQColor&, const TQColor&, int = 8);
    static KPixmap&      fade (KPixmap&, double, const TQColor&);
    static KPixmap&      toGray (KPixmap&, bool = 0);
    static KPixmap&      desaturate (KPixmap&, float = 0.3);
    static KPixmap&      contrast (KPixmap&, int);
    static KPixmap&      dither (KPixmap&, const TQColor*, int);
    static KPixmap       selectedPixmap (const KPixmap&, const TQColor&);

};  // class KPixmapEffect

