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


//                 Generated by preSip
//            module tdecore  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 TDEIcon
{
%TypeHeaderCode
#include <kicontheme.h>
%End


public:
                         TDEIcon ();
    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;
    TQString              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 TDEIcon


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


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

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

    TQString              dir () const;
    TQStringList          inherits () const;
    bool                 isValid () const;

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

    int                  depth () const;
    int                  defaultSize (TDEIcon::Group) const;
    TQValueList<int>      querySizes (TDEIcon::Group) const;
    TQStringList          queryIcons (int, TDEIcon::Context = TDEIcon ::Any ) const;
    TQStringList          queryIconsByContext (int, TDEIcon::Context = TDEIcon ::Any ) const;
    TDEIcon                iconPath (const TQString&, int, TDEIcon::MatchType) const;
    static TQStringList   list ();
    static TQString       current ();
    static void          reconfigure ();

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


};  // class TDEIconTheme

