// This file is generated by kconfig_compiler_kf5 from kget.kcfg.
// All changes you do to this file will be lost.
#ifndef SETTINGS_H
#define SETTINGS_H

#include <kconfigskeleton.h>
#include <QCoreApplication>
#include <QDebug>

#include <KGlobalSettings>
class Q_DECL_EXPORT Settings : public KConfigSkeleton
{
  public:

    static Settings *self();
    ~Settings();

    /**
      Set HeaderState
    */
    static
    void setHeaderState( const QString & v )
    {
      if (!self()->isImmutable( QStringLiteral( "HeaderState" ) ))
        self()->mHeaderState = v;
    }

    /**
      Get HeaderState
    */
    static
    QString headerState()
    {
      return self()->mHeaderState;
    }

    /**
      Set TransferSettingsHeaderState
    */
    static
    void setTransferSettingsHeaderState( const QString & v )
    {
      if (!self()->isImmutable( QStringLiteral( "TransferSettingsHeaderState" ) ))
        self()->mTransferSettingsHeaderState = v;
    }

    /**
      Get TransferSettingsHeaderState
    */
    static
    QString transferSettingsHeaderState()
    {
      return self()->mTransferSettingsHeaderState;
    }

    /**
      Set VerificationHeaderState
    */
    static
    void setVerificationHeaderState( const QString & v )
    {
      if (!self()->isImmutable( QStringLiteral( "VerificationHeaderState" ) ))
        self()->mVerificationHeaderState = v;
    }

    /**
      Get VerificationHeaderState
    */
    static
    QString verificationHeaderState()
    {
      return self()->mVerificationHeaderState;
    }

    /**
      Set AutoPasteHeaderState
    */
    static
    void setAutoPasteHeaderState( const QString & v )
    {
      if (!self()->isImmutable( QStringLiteral( "AutoPasteHeaderState" ) ))
        self()->mAutoPasteHeaderState = v;
    }

    /**
      Get AutoPasteHeaderState
    */
    static
    QString autoPasteHeaderState()
    {
      return self()->mAutoPasteHeaderState;
    }

    /**
      Set ShowMain
    */
    static
    void setShowMain( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "ShowMain" ) ))
        self()->mShowMain = v;
    }

    /**
      Get ShowMain
    */
    static
    bool showMain()
    {
      return self()->mShowMain;
    }

    /**
      Set ShowIndividual
    */
    static
    void setShowIndividual( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "ShowIndividual" ) ))
        self()->mShowIndividual = v;
    }

    /**
      Get ShowIndividual
    */
    static
    bool showIndividual()
    {
      return self()->mShowIndividual;
    }

    /**
      Set DockifyIndividual
    */
    static
    void setDockifyIndividual( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "DockifyIndividual" ) ))
        self()->mDockifyIndividual = v;
    }

    /**
      Get DockifyIndividual
    */
    static
    bool dockifyIndividual()
    {
      return self()->mDockifyIndividual;
    }

    /**
      Set ShowDropTarget
    */
    static
    void setShowDropTarget( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "ShowDropTarget" ) ))
        self()->mShowDropTarget = v;
    }

    /**
      Get ShowDropTarget
    */
    static
    bool showDropTarget()
    {
      return self()->mShowDropTarget;
    }

    /**
      Set AnimateDropTarget
    */
    static
    void setAnimateDropTarget( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "AnimateDropTarget" ) ))
        self()->mAnimateDropTarget = v;
    }

    /**
      Get AnimateDropTarget
    */
    static
    bool animateDropTarget()
    {
      return self()->mAnimateDropTarget;
    }

    /**
      Set KonquerorIntegration
    */
    static
    void setKonquerorIntegration( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "KonquerorIntegration" ) ))
        self()->mKonquerorIntegration = v;
    }

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

    /**
      Set AutoPaste
    */
    static
    void setAutoPaste( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "AutoPaste" ) ))
        self()->mAutoPaste = v;
    }

    /**
      Get AutoPaste
    */
    static
    bool autoPaste()
    {
      return self()->mAutoPaste;
    }

    /**
      Set AutoPasteCaseSensitive
    */
    static
    void setAutoPasteCaseSensitive( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "AutoPasteCaseSensitive" ) ))
        self()->mAutoPasteCaseSensitive = v;
    }

    /**
      Get AutoPasteCaseSensitive
    */
    static
    bool autoPasteCaseSensitive()
    {
      return self()->mAutoPasteCaseSensitive;
    }

    /**
      Set AutoPastePatterns
    */
    static
    void setAutoPastePatterns( const QStringList & v )
    {
      if (!self()->isImmutable( QStringLiteral( "AutoPastePatterns" ) ))
        self()->mAutoPastePatterns = v;
    }

    /**
      Get AutoPastePatterns
    */
    static
    QStringList autoPastePatterns()
    {
      return self()->mAutoPastePatterns;
    }

    /**
      Set AutoPasteTypes
    */
    static
    void setAutoPasteTypes( const QList<int> & v )
    {
      if (!self()->isImmutable( QStringLiteral( "AutoPasteTypes" ) ))
        self()->mAutoPasteTypes = v;
    }

    /**
      Get AutoPasteTypes
    */
    static
    QList<int> autoPasteTypes()
    {
      return self()->mAutoPasteTypes;
    }

    /**
      Set AutoPastePatternSyntaxes
    */
    static
    void setAutoPastePatternSyntaxes( const QList<int> & v )
    {
      if (!self()->isImmutable( QStringLiteral( "AutoPastePatternSyntaxes" ) ))
        self()->mAutoPastePatternSyntaxes = v;
    }

    /**
      Get AutoPastePatternSyntaxes
    */
    static
    QList<int> autoPastePatternSyntaxes()
    {
      return self()->mAutoPastePatternSyntaxes;
    }

    /**
      Set TimedDownload
    */
    static
    void setTimedDownload( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "TimedDownload" ) ))
        self()->mTimedDownload = v;
    }

    /**
      Get TimedDownload
    */
    static
    bool timedDownload()
    {
      return self()->mTimedDownload;
    }

    /**
      Set TimedDownloadDateTime
    */
    static
    void setTimedDownloadDateTime( const QDateTime & v )
    {
      if (!self()->isImmutable( QStringLiteral( "TimedDownloadDateTime" ) ))
        self()->mTimedDownloadDateTime = v;
    }

    /**
      Get TimedDownloadDateTime
    */
    static
    QDateTime timedDownloadDateTime()
    {
      return self()->mTimedDownloadDateTime;
    }

    /**
      Set TimedDisconnect
    */
    static
    void setTimedDisconnect( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "TimedDisconnect" ) ))
        self()->mTimedDisconnect = v;
    }

    /**
      Get TimedDisconnect
    */
    static
    bool timedDisconnect()
    {
      return self()->mTimedDisconnect;
    }

    /**
      Set TimedDisconnectDateTime
    */
    static
    void setTimedDisconnectDateTime( const QDateTime & v )
    {
      if (!self()->isImmutable( QStringLiteral( "TimedDisconnectDateTime" ) ))
        self()->mTimedDisconnectDateTime = v;
    }

    /**
      Get TimedDisconnectDateTime
    */
    static
    QDateTime timedDisconnectDateTime()
    {
      return self()->mTimedDisconnectDateTime;
    }

    /**
      Set EnableSystemTray
    */
    static
    void setEnableSystemTray( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "EnableSystemTray" ) ))
        self()->mEnableSystemTray = v;
    }

    /**
      Get EnableSystemTray
    */
    static
    bool enableSystemTray()
    {
      return self()->mEnableSystemTray;
    }

    /**
      Set AfterFinishActionEnabled
    */
    static
    void setAfterFinishActionEnabled( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "AfterFinishActionEnabled" ) ))
        self()->mAfterFinishActionEnabled = v;
    }

    /**
      Get AfterFinishActionEnabled
    */
    static
    bool afterFinishActionEnabled()
    {
      return self()->mAfterFinishActionEnabled;
    }

    /**
      Set AfterFinishAction
    */
    static
    void setAfterFinishAction( int v )
    {
      if (!self()->isImmutable( QStringLiteral( "AfterFinishAction" ) ))
        self()->mAfterFinishAction = v;
    }

    /**
      Get AfterFinishAction
    */
    static
    int afterFinishAction()
    {
      return self()->mAfterFinishAction;
    }

    /**
      Set EnableKUIServerIntegration
    */
    static
    void setEnableKUIServerIntegration( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "EnableKUIServerIntegration" ) ))
        self()->mEnableKUIServerIntegration = v;
    }

    /**
      Get EnableKUIServerIntegration
    */
    static
    bool enableKUIServerIntegration()
    {
      return self()->mEnableKUIServerIntegration;
    }

    /**
      Set ExportSingleTransfer
    */
    static
    void setExportSingleTransfer( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "ExportSingleTransfer" ) ))
        self()->mExportSingleTransfer = v;
    }

    /**
      Get ExportSingleTransfer
    */
    static
    bool exportSingleTransfer()
    {
      return self()->mExportSingleTransfer;
    }

    /**
      Set ExportGlobalJob
    */
    static
    void setExportGlobalJob( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "ExportGlobalJob" ) ))
        self()->mExportGlobalJob = v;
    }

    /**
      Get ExportGlobalJob
    */
    static
    bool exportGlobalJob()
    {
      return self()->mExportGlobalJob;
    }

    /**
      Set HistoryBackend
    */
    static
    void setHistoryBackend( int v )
    {
      if (!self()->isImmutable( QStringLiteral( "HistoryBackend" ) ))
        self()->mHistoryBackend = v;
    }

    /**
      Get HistoryBackend
    */
    static
    int historyBackend()
    {
      return self()->mHistoryBackend;
    }

    /**
      Set StartupAction
    */
    static
    void setStartupAction( int v )
    {
      if (!self()->isImmutable( QStringLiteral( "StartupAction" ) ))
        self()->mStartupAction = v;
    }

    /**
      Get StartupAction
    */
    static
    int startupAction()
    {
      return self()->mStartupAction;
    }

    /**
      Set FilesAlwaysAsk
    */
    static
    void setFilesAlwaysAsk( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "FilesAlwaysAsk" ) ))
        self()->mFilesAlwaysAsk = v;
    }

    /**
      Get FilesAlwaysAsk
    */
    static
    bool filesAlwaysAsk()
    {
      return self()->mFilesAlwaysAsk;
    }

    /**
      Set FilesAutomaticRename
    */
    static
    void setFilesAutomaticRename( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "FilesAutomaticRename" ) ))
        self()->mFilesAutomaticRename = v;
    }

    /**
      Get FilesAutomaticRename
    */
    static
    bool filesAutomaticRename()
    {
      return self()->mFilesAutomaticRename;
    }

    /**
      Set FilesOverwrite
    */
    static
    void setFilesOverwrite( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "FilesOverwrite" ) ))
        self()->mFilesOverwrite = v;
    }

    /**
      Get FilesOverwrite
    */
    static
    bool filesOverwrite()
    {
      return self()->mFilesOverwrite;
    }

    /**
      Set MaxConnections
    */
    static
    void setMaxConnections( int v )
    {
      if (!self()->isImmutable( QStringLiteral( "MaxConnections" ) ))
        self()->mMaxConnections = v;
    }

    /**
      Get MaxConnections
    */
    static
    int maxConnections()
    {
      return self()->mMaxConnections;
    }

    /**
      Set SpeedLimit
    */
    static
    void setSpeedLimit( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "SpeedLimit" ) ))
        self()->mSpeedLimit = v;
    }

    /**
      Get SpeedLimit
    */
    static
    bool speedLimit()
    {
      return self()->mSpeedLimit;
    }

    /**
      Set TransferSpeedLimit
    */
    static
    void setTransferSpeedLimit( int v )
    {
      if (!self()->isImmutable( QStringLiteral( "TransferSpeedLimit" ) ))
        self()->mTransferSpeedLimit = v;
    }

    /**
      Get TransferSpeedLimit
    */
    static
    int transferSpeedLimit()
    {
      return self()->mTransferSpeedLimit;
    }

    /**
      Set GlobalDownloadLimit
    */
    static
    void setGlobalDownloadLimit( int v )
    {
      if (!self()->isImmutable( QStringLiteral( "GlobalDownloadLimit" ) ))
        self()->mGlobalDownloadLimit = v;
    }

    /**
      Get GlobalDownloadLimit
    */
    static
    int globalDownloadLimit()
    {
      return self()->mGlobalDownloadLimit;
    }

    /**
      Set GlobalUploadLimit
    */
    static
    void setGlobalUploadLimit( int v )
    {
      if (!self()->isImmutable( QStringLiteral( "GlobalUploadLimit" ) ))
        self()->mGlobalUploadLimit = v;
    }

    /**
      Get GlobalUploadLimit
    */
    static
    int globalUploadLimit()
    {
      return self()->mGlobalUploadLimit;
    }

    /**
      Set ReconnectOnBroken
    */
    static
    void setReconnectOnBroken( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "ReconnectOnBroken" ) ))
        self()->mReconnectOnBroken = v;
    }

    /**
      Get ReconnectOnBroken
    */
    static
    bool reconnectOnBroken()
    {
      return self()->mReconnectOnBroken;
    }

    /**
      Set ReconnectRetries
    */
    static
    void setReconnectRetries( int v )
    {
      if (!self()->isImmutable( QStringLiteral( "ReconnectRetries" ) ))
        self()->mReconnectRetries = v;
    }

    /**
      Get ReconnectRetries
    */
    static
    int reconnectRetries()
    {
      return self()->mReconnectRetries;
    }

    /**
      Set ReconnectDelay
    */
    static
    void setReconnectDelay( int v )
    {
      if (!self()->isImmutable( QStringLiteral( "ReconnectDelay" ) ))
        self()->mReconnectDelay = v;
    }

    /**
      Get ReconnectDelay
    */
    static
    int reconnectDelay()
    {
      return self()->mReconnectDelay;
    }

    /**
      Set WebinterfaceEnabled
    */
    static
    void setWebinterfaceEnabled( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "WebinterfaceEnabled" ) ))
        self()->mWebinterfaceEnabled = v;
    }

    /**
      Get WebinterfaceEnabled
    */
    static
    bool webinterfaceEnabled()
    {
      return self()->mWebinterfaceEnabled;
    }

    /**
      Set WebinterfacePort
    */
    static
    void setWebinterfacePort( int v )
    {
      if (!self()->isImmutable( QStringLiteral( "WebinterfacePort" ) ))
        self()->mWebinterfacePort = v;
    }

    /**
      Get WebinterfacePort
    */
    static
    int webinterfacePort()
    {
      return self()->mWebinterfacePort;
    }

    /**
      Set WebinterfaceUser
    */
    static
    void setWebinterfaceUser( const QString & v )
    {
      if (!self()->isImmutable( QStringLiteral( "WebinterfaceUser" ) ))
        self()->mWebinterfaceUser = v;
    }

    /**
      Get WebinterfaceUser
    */
    static
    QString webinterfaceUser()
    {
      return self()->mWebinterfaceUser;
    }

    /**
      Set DirectoriesAsSuggestion
    */
    static
    void setDirectoriesAsSuggestion( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "DirectoriesAsSuggestion" ) ))
        self()->mDirectoriesAsSuggestion = v;
    }

    /**
      Get DirectoriesAsSuggestion
    */
    static
    bool directoriesAsSuggestion()
    {
      return self()->mDirectoriesAsSuggestion;
    }

    /**
      Set AskForDestination
    */
    static
    void setAskForDestination( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "AskForDestination" ) ))
        self()->mAskForDestination = v;
    }

    /**
      Get AskForDestination
    */
    static
    bool askForDestination()
    {
      return self()->mAskForDestination;
    }

    /**
      Set MainPosition
    */
    static
    void setMainPosition( const QPoint & v )
    {
      if (!self()->isImmutable( QStringLiteral( "MainPosition" ) ))
        self()->mMainPosition = v;
    }

    /**
      Get MainPosition
    */
    static
    QPoint mainPosition()
    {
      return self()->mMainPosition;
    }

    /**
      Set MainState
    */
    static
    void setMainState( int v )
    {
      if (!self()->isImmutable( QStringLiteral( "MainState" ) ))
        self()->mMainState = v;
    }

    /**
      Get MainState
    */
    static
    int mainState()
    {
      return self()->mMainState;
    }

    /**
      Set DropPosition
    */
    static
    void setDropPosition( const QPoint & v )
    {
      if (!self()->isImmutable( QStringLiteral( "DropPosition" ) ))
        self()->mDropPosition = v;
    }

    /**
      Get DropPosition
    */
    static
    QPoint dropPosition()
    {
      return self()->mDropPosition;
    }

    /**
      Set DropSticky
    */
    static
    void setDropSticky( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "DropSticky" ) ))
        self()->mDropSticky = v;
    }

    /**
      Get DropSticky
    */
    static
    bool dropSticky()
    {
      return self()->mDropSticky;
    }

    /**
      Set FirstRun
    */
    static
    void setFirstRun( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "FirstRun" ) ))
        self()->mFirstRun = v;
    }

    /**
      Get FirstRun
    */
    static
    bool firstRun()
    {
      return self()->mFirstRun;
    }

    /**
      Set LastDirectory
    */
    static
    void setLastDirectory( const QString & v )
    {
      if (!self()->isImmutable( QStringLiteral( "LastDirectory" ) ))
        self()->mLastDirectory = v;
    }

    /**
      Get LastDirectory
    */
    static
    QString lastDirectory()
    {
      return self()->mLastDirectory;
    }

    /**
      Set LastGroup
    */
    static
    void setLastGroup( const QString & v )
    {
      if (!self()->isImmutable( QStringLiteral( "LastGroup" ) ))
        self()->mLastGroup = v;
    }

    /**
      Get LastGroup
    */
    static
    QString lastGroup()
    {
      return self()->mLastGroup;
    }

    /**
      Set LinkViewFilterPatternSyntax
    */
    static
    void setLinkViewFilterPatternSyntax( int v )
    {
      if (!self()->isImmutable( QStringLiteral( "LinkViewFilterPatternSyntax" ) ))
        self()->mLinkViewFilterPatternSyntax = v;
    }

    /**
      Get LinkViewFilterPatternSyntax
    */
    static
    int linkViewFilterPatternSyntax()
    {
      return self()->mLinkViewFilterPatternSyntax;
    }

    /**
      Set The width of the columns in the history view
    */
    static
    void setHistoryColumnWidths( const QList<int> & v )
    {
      if (!self()->isImmutable( QStringLiteral( "HistoryColumnWidths" ) ))
        self()->mHistoryColumnWidths = v;
    }

    /**
      Get The width of the columns in the history view
    */
    static
    QList<int> historyColumnWidths()
    {
      return self()->mHistoryColumnWidths;
    }

    /**
      Set ChecksumAutomaticVerification
    */
    static
    void setChecksumAutomaticVerification( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "ChecksumAutomaticVerification" ) ))
        self()->mChecksumAutomaticVerification = v;
    }

    /**
      Get ChecksumAutomaticVerification
    */
    static
    bool checksumAutomaticVerification()
    {
      return self()->mChecksumAutomaticVerification;
    }

    /**
      Set ChecksumStrength
    */
    static
    void setChecksumStrength( int v )
    {
      if (!self()->isImmutable( QStringLiteral( "ChecksumStrength" ) ))
        self()->mChecksumStrength = v;
    }

    /**
      Get ChecksumStrength
    */
    static
    int checksumStrength()
    {
      return self()->mChecksumStrength;
    }

    /**
      Set SignatureAutomaticVerification
    */
    static
    void setSignatureAutomaticVerification( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "SignatureAutomaticVerification" ) ))
        self()->mSignatureAutomaticVerification = v;
    }

    /**
      Get SignatureAutomaticVerification
    */
    static
    bool signatureAutomaticVerification()
    {
      return self()->mSignatureAutomaticVerification;
    }

    /**
      Set SignatureAutomaticDownloading
    */
    static
    void setSignatureAutomaticDownloading( bool v )
    {
      if (!self()->isImmutable( QStringLiteral( "SignatureAutomaticDownloading" ) ))
        self()->mSignatureAutomaticDownloading = v;
    }

    /**
      Get SignatureAutomaticDownloading
    */
    static
    bool signatureAutomaticDownloading()
    {
      return self()->mSignatureAutomaticDownloading;
    }

    /**
      Set SignatureKeyServers
    */
    static
    void setSignatureKeyServers( const QStringList & v )
    {
      if (!self()->isImmutable( QStringLiteral( "SignatureKeyServers" ) ))
        self()->mSignatureKeyServers = v;
    }

    /**
      Get SignatureKeyServers
    */
    static
    QStringList signatureKeyServers()
    {
      return self()->mSignatureKeyServers;
    }

  protected:
    Settings();
    friend class SettingsHelper;


    // Appearance
    QString mHeaderState;
    QString mTransferSettingsHeaderState;
    QString mVerificationHeaderState;
    QString mAutoPasteHeaderState;
    bool mShowMain;
    bool mShowIndividual;
    bool mDockifyIndividual;
    bool mShowDropTarget;
    bool mAnimateDropTarget;

    // Advanced
    bool mKonquerorIntegration;
    bool mAutoPaste;
    bool mAutoPasteCaseSensitive;
    QStringList mAutoPastePatterns;
    QList<int> mAutoPasteTypes;
    QList<int> mAutoPastePatternSyntaxes;
    bool mTimedDownload;
    QDateTime mTimedDownloadDateTime;
    bool mTimedDisconnect;
    QDateTime mTimedDisconnectDateTime;
    bool mEnableSystemTray;
    bool mAfterFinishActionEnabled;
    int mAfterFinishAction;
    bool mEnableKUIServerIntegration;
    bool mExportSingleTransfer;
    bool mExportGlobalJob;
    int mHistoryBackend;
    int mStartupAction;
    bool mFilesAlwaysAsk;
    bool mFilesAutomaticRename;
    bool mFilesOverwrite;

    // Network
    int mMaxConnections;
    bool mSpeedLimit;
    int mTransferSpeedLimit;
    int mGlobalDownloadLimit;
    int mGlobalUploadLimit;
    bool mReconnectOnBroken;
    int mReconnectRetries;
    int mReconnectDelay;

    // Webinterface
    bool mWebinterfaceEnabled;
    int mWebinterfacePort;
    QString mWebinterfaceUser;

    // Groups
    bool mDirectoriesAsSuggestion;
    bool mAskForDestination;

    // Internal
    QPoint mMainPosition;
    int mMainState;
    QPoint mDropPosition;
    bool mDropSticky;
    bool mFirstRun;
    QString mLastDirectory;
    QString mLastGroup;
    int mLinkViewFilterPatternSyntax;

    // Geometry
    QList<int> mHistoryColumnWidths;

    // Verification
    bool mChecksumAutomaticVerification;
    int mChecksumStrength;
    bool mSignatureAutomaticVerification;
    bool mSignatureAutomaticDownloading;
    QStringList mSignatureKeyServers;

  private:
};

#endif

