// This file is generated by tdeconfig_compiler from fileviewconfig.kcfg.
// All changes you do to this file will be lost.
#ifndef GWENVIEW_FILEVIEWCONFIG_H
#define GWENVIEW_FILEVIEWCONFIG_H

#include <gvcore/libgwenview_export.h>

#include <tdeconfigskeleton.h>
#include <kdebug.h>

#include <tqiconview.h>
namespace Gwenview {

class LIBGWENVIEW_EXPORT FileViewConfig : public TDEConfigSkeleton
{
  public:
    class EnumFilterMode
    {
      public:
      enum type { All, ImagesOnly, VideosOnly, COUNT };
    };

    static FileViewConfig *self();
    ~FileViewConfig();

    /**
      Set show dirs
    */
    static
    void setShowDirs( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "showDirs" ) ))
        self()->mShowDirs = v;
    }

    /**
      Get show dirs
    */
    static
    bool showDirs()
    {
      return self()->mShowDirs;
    }

    /**
      Set load metadata
    */
    static
    void setLoadMetadata( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "loadMetadata" ) ))
        self()->mLoadMetadata = v;
    }

    /**
      Get load metadata
    */
    static
    bool loadMetadata()
    {
      return self()->mLoadMetadata;
    }

    /**
      Set show dot files
    */
    static
    void setShowDotFiles( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "showDotFiles" ) ))
        self()->mShowDotFiles = v;
    }

    /**
      Get show dot files
    */
    static
    bool showDotFiles()
    {
      return self()->mShowDotFiles;
    }

    /**
      Set start with thumbnails
    */
    static
    void setStartWithThumbnails( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "startWithThumbnails" ) ))
        self()->mStartWithThumbnails = v;
    }

    /**
      Get start with thumbnails
    */
    static
    bool startWithThumbnails()
    {
      return self()->mStartWithThumbnails;
    }

    /**
      Set item text pos
    */
    static
    void setThumbnailTextPos( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "thumbnailTextPos" ) ))
        self()->mThumbnailTextPos = v;
    }

    /**
      Get item text pos
    */
    static
    int thumbnailTextPos()
    {
      return self()->mThumbnailTextPos;
    }

    /**
      Set thumbnail size
    */
    static
    void setThumbnailSize( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "thumbnailSize" ) ))
        self()->mThumbnailSize = v;
    }

    /**
      Get thumbnail size
    */
    static
    int thumbnailSize()
    {
      return self()->mThumbnailSize;
    }

    /**
      Set margin size
    */
    static
    void setThumbnailMarginSize( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "thumbnailMarginSize" ) ))
        self()->mThumbnailMarginSize = v;
    }

    /**
      Get margin size
    */
    static
    int thumbnailMarginSize()
    {
      return self()->mThumbnailMarginSize;
    }

    /**
      Set item details
    */
    static
    void setThumbnailDetails( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "thumbnailDetails" ) ))
        self()->mThumbnailDetails = v;
    }

    /**
      Get item details
    */
    static
    int thumbnailDetails()
    {
      return self()->mThumbnailDetails;
    }

    /**
      Set filterMode
    */
    static
    void setFilterMode( int v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "filterMode" ) ))
        self()->mFilterMode = v;
    }

    /**
      Get filterMode
    */
    static
    int filterMode()
    {
      return self()->mFilterMode;
    }

    /**
      Set showFilterBar
    */
    static
    void setShowFilterBar( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "showFilterBar" ) ))
        self()->mShowFilterBar = v;
    }

    /**
      Get showFilterBar
    */
    static
    bool showFilterBar()
    {
      return self()->mShowFilterBar;
    }

    /**
      Set nameFilter
    */
    static
    void setNameFilter( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "nameFilter" ) ))
        self()->mNameFilter = v;
    }

    /**
      Get nameFilter
    */
    static
    TQString nameFilter()
    {
      return self()->mNameFilter;
    }

    /**
      Set fromDateFilter
    */
    static
    void setFromDateFilter( const TQDateTime & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "fromDateFilter" ) ))
        self()->mFromDateFilter = v;
    }

    /**
      Get fromDateFilter
    */
    static
    TQDateTime fromDateFilter()
    {
      return self()->mFromDateFilter;
    }

    /**
      Set toDateFilter
    */
    static
    void setToDateFilter( const TQDateTime & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "toDateFilter" ) ))
        self()->mToDateFilter = v;
    }

    /**
      Get toDateFilter
    */
    static
    TQDateTime toDateFilter()
    {
      return self()->mToDateFilter;
    }

    /**
      Set path
    */
    static
    void setStoreThumbnailsInCache( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "storeThumbnailsInCache" ) ))
        self()->mStoreThumbnailsInCache = v;
    }

    /**
      Get path
    */
    static
    bool storeThumbnailsInCache()
    {
      return self()->mStoreThumbnailsInCache;
    }

    /**
      Set Delete Thumbnail Cache whe exit
    */
    static
    void setDeleteCacheOnExit( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "deleteCacheOnExit" ) ))
        self()->mDeleteCacheOnExit = v;
    }

    /**
      Get Delete Thumbnail Cache whe exit
    */
    static
    bool deleteCacheOnExit()
    {
      return self()->mDeleteCacheOnExit;
    }

    static
    void writeConfig()
    {
      static_cast<TDEConfigSkeleton*>(self())->writeConfig();
    }
  protected:
    FileViewConfig();
    static FileViewConfig *mSelf;


    // file widget
    bool mShowDirs;
    bool mLoadMetadata;
    bool mShowDotFiles;
    bool mStartWithThumbnails;
    int mThumbnailTextPos;
    int mThumbnailSize;
    int mThumbnailMarginSize;
    int mThumbnailDetails;
    int mFilterMode;
    bool mShowFilterBar;
    TQString mNameFilter;
    TQDateTime mFromDateFilter;
    TQDateTime mToDateFilter;

    // thumbnail loading
    bool mStoreThumbnailsInCache;

    // main window
    bool mDeleteCacheOnExit;

  private:
};

}

#endif

