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

#include "gravatar_export.h"

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

namespace Gravatar {

class GRAVATAR_EXPORT GravatarSettings : public KConfigSkeleton
{
  public:

    static GravatarSettings *self();
    ~GravatarSettings() override;

    /**
      Set GravatarSupportEnabled
    */
    static
    void setGravatarSupportEnabled( bool v )
    {
      if (!self()->isGravatarSupportEnabledImmutable())
        self()->mGravatarSupportEnabled = v;
    }

    /**
      Get GravatarSupportEnabled
    */
    static
    bool gravatarSupportEnabled()
    {
      return self()->mGravatarSupportEnabled;
    }

    /**
      Is GravatarSupportEnabled Immutable
    */
    static
    bool isGravatarSupportEnabledImmutable()
    {
      return self()->isImmutable( QStringLiteral( "GravatarSupportEnabled" ) );
    }

    /**
      Get Item object corresponding to GravatarSupportEnabled()
    */
    ItemBool *gravatarSupportEnabledItem()
    {
      return mGravatarSupportEnabledItem;
    }

    /**
      Set GravatarUseDefaultImage
    */
    static
    void setGravatarUseDefaultImage( bool v )
    {
      if (!self()->isGravatarUseDefaultImageImmutable())
        self()->mGravatarUseDefaultImage = v;
    }

    /**
      Get GravatarUseDefaultImage
    */
    static
    bool gravatarUseDefaultImage()
    {
      return self()->mGravatarUseDefaultImage;
    }

    /**
      Is GravatarUseDefaultImage Immutable
    */
    static
    bool isGravatarUseDefaultImageImmutable()
    {
      return self()->isImmutable( QStringLiteral( "GravatarUseDefaultImage" ) );
    }

    /**
      Get Item object corresponding to GravatarUseDefaultImage()
    */
    ItemBool *gravatarUseDefaultImageItem()
    {
      return mGravatarUseDefaultImageItem;
    }

    /**
      Set GravatarCacheSize
    */
    static
    void setGravatarCacheSize( int v )
    {
      if (!self()->isGravatarCacheSizeImmutable())
        self()->mGravatarCacheSize = v;
    }

    /**
      Get GravatarCacheSize
    */
    static
    int gravatarCacheSize()
    {
      return self()->mGravatarCacheSize;
    }

    /**
      Is GravatarCacheSize Immutable
    */
    static
    bool isGravatarCacheSizeImmutable()
    {
      return self()->isImmutable( QStringLiteral( "GravatarCacheSize" ) );
    }

    /**
      Get Item object corresponding to GravatarCacheSize()
    */
    ItemInt *gravatarCacheSizeItem()
    {
      return mGravatarCacheSizeItem;
    }

    /**
      Set FallbackToGravatar
    */
    static
    void setFallbackToGravatar( bool v )
    {
      if (!self()->isFallbackToGravatarImmutable())
        self()->mFallbackToGravatar = v;
    }

    /**
      Get FallbackToGravatar
    */
    static
    bool fallbackToGravatar()
    {
      return self()->mFallbackToGravatar;
    }

    /**
      Is FallbackToGravatar Immutable
    */
    static
    bool isFallbackToGravatarImmutable()
    {
      return self()->isImmutable( QStringLiteral( "FallbackToGravatar" ) );
    }

    /**
      Get Item object corresponding to FallbackToGravatar()
    */
    ItemBool *fallbackToGravatarItem()
    {
      return mFallbackToGravatarItem;
    }

    /**
      Set LibravatarSupportEnabled
    */
    static
    void setLibravatarSupportEnabled( bool v )
    {
      if (!self()->isLibravatarSupportEnabledImmutable())
        self()->mLibravatarSupportEnabled = v;
    }

    /**
      Get LibravatarSupportEnabled
    */
    static
    bool libravatarSupportEnabled()
    {
      return self()->mLibravatarSupportEnabled;
    }

    /**
      Is LibravatarSupportEnabled Immutable
    */
    static
    bool isLibravatarSupportEnabledImmutable()
    {
      return self()->isImmutable( QStringLiteral( "LibravatarSupportEnabled" ) );
    }

    /**
      Get Item object corresponding to LibravatarSupportEnabled()
    */
    ItemBool *libravatarSupportEnabledItem()
    {
      return mLibravatarSupportEnabledItem;
    }

  protected:
    GravatarSettings();
    friend class GravatarSettingsHelper;


    // Gravatar
    bool mGravatarSupportEnabled;
    bool mGravatarUseDefaultImage;
    int mGravatarCacheSize;
    bool mFallbackToGravatar;
    bool mLibravatarSupportEnabled;

  private:
    ItemBool *mGravatarSupportEnabledItem;
    ItemBool *mGravatarUseDefaultImageItem;
    ItemInt *mGravatarCacheSizeItem;
    ItemBool *mFallbackToGravatarItem;
    ItemBool *mLibravatarSupportEnabledItem;
};

}

#endif

