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

#include "textautogeneratetext_export.h"

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

#include <QFontDatabase>

namespace TextAutoGenerateText {

class TEXTAUTOGENERATETEXT_EXPORT TextAutogenerateTextGlobalConfig : public KConfigSkeleton
{
  public:

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

    /**
      Set EnableTextToSpeech
    */
    static
    void setEnableTextToSpeech( bool v )
    {
      if (!self()->isEnableTextToSpeechImmutable())
        self()->mEnableTextToSpeech = v;
    }

    /**
      Get EnableTextToSpeech
    */
    static
    bool enableTextToSpeech()
    {
      return self()->mEnableTextToSpeech;
    }

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

    /**
      Get Item object corresponding to EnableTextToSpeech()
    */
    ItemBool *enableTextToSpeechItem()
    {
      return mEnableTextToSpeechItem;
    }

    /**
      Set UseCustomFont
    */
    static
    void setUseCustomFont( bool v )
    {
      if (!self()->isUseCustomFontImmutable())
        self()->mUseCustomFont = v;
    }

    /**
      Get UseCustomFont
    */
    static
    bool useCustomFont()
    {
      return self()->mUseCustomFont;
    }

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

    /**
      Get Item object corresponding to UseCustomFont()
    */
    ItemBool *useCustomFontItem()
    {
      return mUseCustomFontItem;
    }

    /**
      Set GeneralFont
    */
    static
    void setGeneralFont( const QFont & v )
    {
      if (!self()->isGeneralFontImmutable())
        self()->mGeneralFont = v;
    }

    /**
      Get GeneralFont
    */
    static
    QFont generalFont()
    {
      return self()->mGeneralFont;
    }

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

    /**
      Get Item object corresponding to GeneralFont()
    */
    ItemFont *generalFontItem()
    {
      return mGeneralFontItem;
    }

  protected:
    TextAutogenerateTextGlobalConfig();
    friend class TextAutogenerateTextGlobalConfigHelper;


    // View
    bool mEnableTextToSpeech;

    // Font
    bool mUseCustomFont;
    QFont mGeneralFont;

  private:
    ItemBool *mEnableTextToSpeechItem;
    ItemBool *mUseCustomFontItem;
    ItemFont *mGeneralFontItem;
};

}

#endif

