// This file is generated by kconfig_compiler_kf5 from lokalize.kcfg.
#ifndef SETTINGS_H
#define SETTINGS_H

#include <QCoreApplication>

#include <QLocale>
#include <QColor>
#include <QFontDatabase>
class Settings: public QObject
{
    Q_OBJECT
public:

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

    void save();

public slots:
    static void setAuthorName(const QString& v){self()->mAuthorName = v;}
    static void setAuthorEmail(const QString& v){self()->mAuthorEmail = v;}

public:
    static QString authorName() {return self()->mAuthorName;}
    static QString authorLocalizedName() {return self()->mAuthorLocalizedName;}
    static QString authorEmail() {return self()->mAuthorEmail;}

    static
    QString defaultLangCode()
    {
      return self()->mDefaultLangCode;
    }

    static
    QString defaultMailingList()
    {
      return self()->mDefaultMailingList;
    }

    static
    QColor addColor()
    {
      return self()->mAddColor;
    }

    static
    QColor delColor()
    {
      return self()->mDelColor;
    }

    static
    bool highlightSpaces()
    {
      return self()->mHighlightSpaces;
    }

    static
    QFont msgFont()
    {
      return self()->mMsgFont;
    }

    static
    void setLeds( bool v )
    {
        self()->mLeds = v;
    }

    static
    bool leds()
    {
      return self()->mLeds;
    }

    static
    bool autoApprove()
    {
      return self()->mAutoApprove;
    }

    static
    void setAutoSpellcheck( bool v )
    {
        self()->mAutoSpellcheck = v;
    }

    static
    bool autoSpellcheck()
    {
      return self()->mAutoSpellcheck;
    }

    static
    bool mouseWheelGo()
    {
      return self()->mMouseWheelGo;
    }

    static
    bool altTransViewEverShownWithData()
    {
        return self()->mAltTransViewEverShownWithData;
    }

    static
    void setAltTransViewEverShownWithData( bool v )
    {
        self()->mAltTransViewEverShownWithData = v;
    }

    static
    int wordCompletionLength()
    {
      return self()->mWordCompletionLength;
    }

    static
    bool prefetchTM()
    {
      return self()->mPrefetchTM;
    }

    static
    int suggCount()
    {
      return self()->mSuggCount;
    }

    static
    bool autoaddTM()
    {
      return self()->mAutoaddTM;
    }

    static
    bool scanToTMOnOpen()
    {
      return self()->mScanToTMOnOpen;
    }

  protected:
    Settings();
    friend class SettingsHelper;


    // Identity
    QString mAuthorName;
    QString mAuthorLocalizedName;
    QString mAuthorEmail;
    QString mDefaultLangCode;
    QString mDefaultMailingList;

    // Appearance
    QColor mAddColor;
    QColor mDelColor;
    QFont mMsgFont;
    bool mHighlightSpaces;
    bool mLeds;

    // Editor
    bool mAutoApprove;
    bool mAutoSpellcheck;
    bool mMouseWheelGo;
    bool mAltTransViewEverShownWithData;

    // TM
    bool mPrefetchTM;
    bool mAutoaddTM;
    bool mScanToTMOnOpen;

    int mWordCompletionLength;
    int mSuggCount;
};

#endif

