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


//                 Generated by preSip
//            module kdecore  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.,
// 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.


class KIcon
{
%TypeHeaderCode
#include <kicontheme.h>
%End


public:
                         KIcon ();
    bool                 isValid () const;

    enum Context
    {
        Any, 
        Action, 
        Application, 
        Device, 
        FileSystem, 
        MimeType
    };


    enum Type
    {
        Fixed, 
        Scalable, 
        Threshold
    };


    enum MatchType
    {
        MatchExact, 
        MatchBest
    };


%If ( KDE_3_2_0 -  )

    enum Group
    {
        NoGroup, 
        Desktop, 
        FirstGroup, 
        Toolbar, 
        MainToolbar, 
        Small, 
        Panel, 
        LastGroup, 
        User
    };


%If ( KDE_3_3_1 -  )

    enum StdSizes
    {
        SizeSmall, 
        SizeSmallMedium, 
        SizeMedium, 
        SizeLarge, 
        SizeHuge, 
        SizeEnormous
    };

%End

%End


    enum States
    {
        DefaultState, 
        ActiveState, 
        DisabledState, 
        LastState
    };


%If ( KDE_3_1_0 -  )

    enum Overlays
    {
        LockOverlay, 
        ZipOverlay, 
        LinkOverlay, 
        HiddenOverlay, 
        ShareOverlay, 
        OverlayMask
    };

%End

    int                  size;
    Context              context;
    Type                 type;
    int                  threshold;
    QString              path;

public:

%If ( KDE_3_3_0 - KDE_3_3_1 )

    enum StdSizes
    {
        SizeSmall, 
        SizeSmallMedium, 
        SizeMedium, 
        SizeLarge, 
        SizeHuge
    };

%End


public:

%If ( KDE_3_2_0 - KDE_3_3_0 )

    enum StdSizes
    {
        SizeSmall, 
        SizeMedium, 
        SizeLarge, 
        SizeHuge
    };

%End


public:

%If (  - KDE_3_2_0 )

    enum Group
    {
        NoGroup, 
        Desktop, 
        FirstGroup, 
        Toolbar, 
        MainToolbar, 
        Small, 
        Panel, 
        LastGroup, 
        User
    };


    enum StdSizes
    {
        SizeSmall, 
        SizeMedium, 
        SizeLarge
    };

%End


public:

%If (  - KDE_3_1_0 )

    enum Overlays
    {
        LockOverlay, 
        ZipOverlay, 
        LinkOverlay, 
        HiddenOverlay, 
        OverlayMask
    };

%End


};  // class KIcon


class KIconTheme
{
%TypeHeaderCode
#include <kicontheme.h>
%End


public:
                         KIconTheme (const QString&, const QString& = QString ::null );
    QString              name () const;
    QString              description () const;
    QString              example () const;
    QString              screenshot () const;
    QString              linkOverlay () const;
    QString              zipOverlay () const;
    QString              lockOverlay () const;

%If ( KDE_3_1_0 -  )
    QString              shareOverlay () const;
%End

    QString              dir () const;
    QStringList          inherits () const;
    bool                 isValid () const;

%If ( KDE_3_1_0 -  )
    bool                 isHidden () const;
%End

    int                  depth () const;
    int                  defaultSize (KIcon::Group) const;
    QValueList<int>      querySizes (KIcon::Group) const;
    QStringList          queryIcons (int, KIcon::Context = KIcon ::Any ) const;
    QStringList          queryIconsByContext (int, KIcon::Context = KIcon ::Any ) const;
    KIcon                iconPath (const QString&, int, KIcon::MatchType) const;
    static QStringList   list ();
    static QString       current ();
    static void          reconfigure ();

%If ( KDE_3_1_0 -  )
    static QString       defaultThemeName ();
%End


};  // class KIconTheme

