// This file is generated by kconfig_compiler_kf6 from kioslave.kcfg.
// All changes you do to this file will be lost.
#ifndef PROXYSETTINGS_H
#define PROXYSETTINGS_H

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

#include <kio/ioworker_defaults.h>

class ProxySettings : public KConfigSkeleton
{
  public:

    ProxySettings( );
    ~ProxySettings() override;

    /**
      Set ProxyUrlDisplayFlags
    */
    void setProxyUrlDisplayFlags( int v )
    {
      if (!isProxyUrlDisplayFlagsImmutable())
        mProxyUrlDisplayFlags = v;
    }

    /**
      Get ProxyUrlDisplayFlags
    */
    int proxyUrlDisplayFlags() const
    {
      return mProxyUrlDisplayFlags;
    }

    /**
      Is ProxyUrlDisplayFlags Immutable
    */
    bool isProxyUrlDisplayFlagsImmutable() const
    {
      return isImmutable( QStringLiteral( "ProxyUrlDisplayFlags" ) );
    }

    /**
      Set Mark partially uploaded files
    */
    void setMarkPartial( bool v )
    {
      if (!isMarkPartialImmutable())
        mMarkPartial = v;
    }

    /**
      Get Mark partially uploaded files
    */
    bool markPartial() const
    {
      return mMarkPartial;
    }

    /**
      Is Mark partially uploaded files Immutable
    */
    bool isMarkPartialImmutable() const
    {
      return isImmutable( QStringLiteral( "MarkPartial" ) );
    }

    /**
      Set AuthMode
    */
    void setAuthMode( const QString & v )
    {
      if (!isAuthModeImmutable())
        mAuthMode = v;
    }

    /**
      Get AuthMode
    */
    QString authMode() const
    {
      return mAuthMode;
    }

    /**
      Is AuthMode Immutable
    */
    bool isAuthModeImmutable() const
    {
      return isImmutable( QStringLiteral( "AuthMode" ) );
    }

    /**
      Set ReversedException
    */
    void setUseReverseProxy( bool v )
    {
      if (!isUseReverseProxyImmutable())
        mUseReverseProxy = v;
    }

    /**
      Get ReversedException
    */
    bool useReverseProxy() const
    {
      return mUseReverseProxy;
    }

    /**
      Is ReversedException Immutable
    */
    bool isUseReverseProxyImmutable() const
    {
      return isImmutable( QStringLiteral( "UseReverseProxy" ) );
    }

    /**
      Set ftpProxy
    */
    void setFtpProxy( const QString & v )
    {
      if (!isFtpProxyImmutable())
        mFtpProxy = v;
    }

    /**
      Get ftpProxy
    */
    QString ftpProxy() const
    {
      return mFtpProxy;
    }

    /**
      Is ftpProxy Immutable
    */
    bool isFtpProxyImmutable() const
    {
      return isImmutable( QStringLiteral( "ftpProxy" ) );
    }

    /**
      Set httpProxy
    */
    void setHttpProxy( const QString & v )
    {
      if (!isHttpProxyImmutable())
        mHttpProxy = v;
    }

    /**
      Get httpProxy
    */
    QString httpProxy() const
    {
      return mHttpProxy;
    }

    /**
      Is httpProxy Immutable
    */
    bool isHttpProxyImmutable() const
    {
      return isImmutable( QStringLiteral( "httpProxy" ) );
    }

    /**
      Set httpsProxy
    */
    void setHttpsProxy( const QString & v )
    {
      if (!isHttpsProxyImmutable())
        mHttpsProxy = v;
    }

    /**
      Get httpsProxy
    */
    QString httpsProxy() const
    {
      return mHttpsProxy;
    }

    /**
      Is httpsProxy Immutable
    */
    bool isHttpsProxyImmutable() const
    {
      return isImmutable( QStringLiteral( "httpsProxy" ) );
    }

    /**
      Set socksProxy
    */
    void setSocksProxy( const QString & v )
    {
      if (!isSocksProxyImmutable())
        mSocksProxy = v;
    }

    /**
      Get socksProxy
    */
    QString socksProxy() const
    {
      return mSocksProxy;
    }

    /**
      Is socksProxy Immutable
    */
    bool isSocksProxyImmutable() const
    {
      return isImmutable( QStringLiteral( "socksProxy" ) );
    }

    /**
      Set Proxy Config Script
    */
    void setProxyConfigScript( const QString & v )
    {
      if (!isProxyConfigScriptImmutable())
        mProxyConfigScript = v;
    }

    /**
      Get Proxy Config Script
    */
    QString proxyConfigScript() const
    {
      return mProxyConfigScript;
    }

    /**
      Is Proxy Config Script Immutable
    */
    bool isProxyConfigScriptImmutable() const
    {
      return isImmutable( QStringLiteral( "proxyConfigScript" ) );
    }

    /**
      Set NoProxyFor
    */
    void setNoProxyFor( const QString & v )
    {
      if (!isNoProxyForImmutable())
        mNoProxyFor = v;
    }

    /**
      Get NoProxyFor
    */
    QString noProxyFor() const
    {
      return mNoProxyFor;
    }

    /**
      Is NoProxyFor Immutable
    */
    bool isNoProxyForImmutable() const
    {
      return isImmutable( QStringLiteral( "NoProxyFor" ) );
    }

    /**
      Set ProxyType
    */
    void setProxyType( int v )
    {
      if (!isProxyTypeImmutable())
        mProxyType = v;
    }

    /**
      Get ProxyType
    */
    int proxyType() const
    {
      return mProxyType;
    }

    /**
      Is ProxyType Immutable
    */
    bool isProxyTypeImmutable() const
    {
      return isImmutable( QStringLiteral( "ProxyType" ) );
    }

  protected:

    // <default>
    int mProxyUrlDisplayFlags;
    bool mMarkPartial;

    // Proxy Settings
    QString mAuthMode;
    bool mUseReverseProxy;
    QString mFtpProxy;
    QString mHttpProxy;
    QString mHttpsProxy;
    QString mSocksProxy;
    QString mProxyConfigScript;
    QString mNoProxyFor;
    int mProxyType;
};

#endif

