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

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

class ArkSettings : public TDEConfigSkeleton
{
  public:

    static ArkSettings *self();
    ~ArkSettings();

    /**
      Set Last folders used for extraction
    */
    static
    void setExtractionHistory( const TQStringList & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "extractionHistory" ) ))
        self()->mExtractionHistory = v;
    }

    /**
      Get Last folders used for extraction
    */
    static
    TQStringList extractionHistory()
    {
      return self()->mExtractionHistory;
    }

    /**
      Set Replace old files only with newer files
    */
    static
    void setReplaceOnlyWithNewer( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "replaceOnlyWithNewer" ) ))
        self()->mReplaceOnlyWithNewer = v;
    }

    /**
      Get Replace old files only with newer files
    */
    static
    bool replaceOnlyWithNewer()
    {
      return self()->mReplaceOnlyWithNewer;
    }

    /**
      Set Overwrite files (Zip, Tar, Zoo, Rar)
    */
    static
    void setExtractOverwrite( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "extractOverwrite" ) ))
        self()->mExtractOverwrite = v;
    }

    /**
      Get Overwrite files (Zip, Tar, Zoo, Rar)
    */
    static
    bool extractOverwrite()
    {
      return self()->mExtractOverwrite;
    }

    /**
      Set Ask for password when create archive if possible
    */
    static
    void setAskCreatePassword( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "askCreatePassword" ) ))
        self()->mAskCreatePassword = v;
    }

    /**
      Get Ask for password when create archive if possible
    */
    static
    bool askCreatePassword()
    {
      return self()->mAskCreatePassword;
    }

    /**
      Set Preserve permissions
    */
    static
    void setPreservePerms( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "preservePerms" ) ))
        self()->mPreservePerms = v;
    }

    /**
      Get Preserve permissions
    */
    static
    bool preservePerms()
    {
      return self()->mPreservePerms;
    }

    /**
      Set Force MS-DOS short filenames (Zip)
    */
    static
    void setForceMSDOS( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "forceMSDOS" ) ))
        self()->mForceMSDOS = v;
    }

    /**
      Get Force MS-DOS short filenames (Zip)
    */
    static
    bool forceMSDOS()
    {
      return self()->mForceMSDOS;
    }

    /**
      Set Translate LF to DOS CRLF
    */
    static
    void setConvertLF2CRLF( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "convertLF2CRLF" ) ))
        self()->mConvertLF2CRLF = v;
    }

    /**
      Get Translate LF to DOS CRLF
    */
    static
    bool convertLF2CRLF()
    {
      return self()->mConvertLF2CRLF;
    }

    /**
      Set Ignore folder names (Zip)
    */
    static
    void setExtractJunkPaths( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "extractJunkPaths" ) ))
        self()->mExtractJunkPaths = v;
    }

    /**
      Get Ignore folder names (Zip)
    */
    static
    bool extractJunkPaths()
    {
      return self()->mExtractJunkPaths;
    }

    /**
      Set Store symlinks as links (Zip, Rar)
    */
    static
    void setRarStoreSymlinks( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "rarStoreSymlinks" ) ))
        self()->mRarStoreSymlinks = v;
    }

    /**
      Get Store symlinks as links (Zip, Rar)
    */
    static
    bool rarStoreSymlinks()
    {
      return self()->mRarStoreSymlinks;
    }

    /**
      Set Recursively add subfolders (Zip, Rar)
    */
    static
    void setRarRecurseSubdirs( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "rarRecurseSubdirs" ) ))
        self()->mRarRecurseSubdirs = v;
    }

    /**
      Get Recursively add subfolders (Zip, Rar)
    */
    static
    bool rarRecurseSubdirs()
    {
      return self()->mRarRecurseSubdirs;
    }

    /**
      Set Convert filenames to lowercase (Zip, Rar)
    */
    static
    void setRarToLower( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "rarToLower" ) ))
        self()->mRarToLower = v;
    }

    /**
      Get Convert filenames to lowercase (Zip, Rar)
    */
    static
    bool rarToLower()
    {
      return self()->mRarToLower;
    }

    /**
      Set Convert filenames to uppercase
    */
    static
    void setRarToUpper( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "rarToUpper" ) ))
        self()->mRarToUpper = v;
    }

    /**
      Get Convert filenames to uppercase
    */
    static
    bool rarToUpper()
    {
      return self()->mRarToUpper;
    }

    /**
      Set Show search bar
    */
    static
    void setShowSearchBar( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "showSearchBar" ) ))
        self()->mShowSearchBar = v;
    }

    /**
      Get Show search bar
    */
    static
    bool showSearchBar()
    {
      return self()->mShowSearchBar;
    }

    /**
      Set Enable Konqueror integration
    */
    static
    void setKonquerorIntegration( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "KonquerorIntegration" ) ))
        self()->mKonquerorIntegration = v;
    }

    /**
      Get Enable Konqueror integration
    */
    static
    bool konquerorIntegration()
    {
      return self()->mKonquerorIntegration;
    }

    /**
      Set Use integrated viewer
    */
    static
    void setUseIntegratedViewer( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "UseIntegratedViewer" ) ))
        self()->mUseIntegratedViewer = v;
    }

    /**
      Get Use integrated viewer
    */
    static
    bool useIntegratedViewer()
    {
      return self()->mUseIntegratedViewer;
    }

    /**
      Set Tar Command
    */
    static
    void setTarExe( const TQString & v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "TarExe" ) ))
        self()->mTarExe = v;
    }

    /**
      Get Tar Command
    */
    static
    TQString tarExe()
    {
      return self()->mTarExe;
    }

    /**
      Set Open destination folder after extraction
    */
    static
    void setOpenDestinationFolder( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "OpenDestinationFolder" ) ))
        self()->mOpenDestinationFolder = v;
    }

    /**
      Get Open destination folder after extraction
    */
    static
    bool openDestinationFolder()
    {
      return self()->mOpenDestinationFolder;
    }

    /**
      Set Enable experimental support for loading ACE files
    */
    static
    void setAceSupport( bool v )
    {
      if (!self()->isImmutable( TQString::fromLatin1( "aceSupport" ) ))
        self()->mAceSupport = v;
    }

    /**
      Get Enable experimental support for loading ACE files
    */
    static
    bool aceSupport()
    {
      return self()->mAceSupport;
    }

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


    // generic
    TQStringList mExtractionHistory;
    bool mReplaceOnlyWithNewer;
    bool mExtractOverwrite;
    bool mAskCreatePassword;

    // Tar
    bool mPreservePerms;

    // Zip
    bool mForceMSDOS;
    bool mConvertLF2CRLF;
    bool mExtractJunkPaths;

    // Rar
    bool mRarStoreSymlinks;
    bool mRarRecurseSubdirs;
    bool mRarToLower;
    bool mRarToUpper;

    // ark
    bool mShowSearchBar;
    bool mKonquerorIntegration;
    bool mUseIntegratedViewer;
    TQString mTarExe;
    bool mOpenDestinationFolder;
    bool mAceSupport;

  private:
};

#endif

