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

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

#include <kfontrequester.h>

class KitenConfigSkeleton : public KConfigSkeleton
{
  public:

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

    /**
      Set List of dictionary Types, used internally, do not touch
    */
    static
    void setDictionary_list( const QStringList & v )
    {
      if (!self()->isDictionary_listImmutable())
        self()->mDictionary_list = v;
    }

    /**
      Get List of dictionary Types, used internally, do not touch
    */
    static
    QStringList dictionary_list()
    {
      return self()->mDictionary_list;
    }

    /**
      Is List of dictionary Types, used internally, do not touch Immutable
    */
    static
    bool isDictionary_listImmutable()
    {
      return self()->isImmutable( QStringLiteral( "dictionary_list" ) );
    }

    /**
      Set Edict dictionary files
    */
    static
    void setEdict__NAMES( const QStringList & v )
    {
      if (!self()->isEdict__NAMESImmutable())
        self()->mEdict__NAMES = v;
    }

    /**
      Get Edict dictionary files
    */
    static
    QStringList edict__NAMES()
    {
      return self()->mEdict__NAMES;
    }

    /**
      Is Edict dictionary files Immutable
    */
    static
    bool isEdict__NAMESImmutable()
    {
      return self()->isImmutable( QStringLiteral( "edict__NAMES" ) );
    }

    /**
      Set Use preinstalled edict
    */
    static
    void setEdict__useGlobal( bool v )
    {
      if (!self()->isEdict__useGlobalImmutable())
        self()->mEdict__useGlobal = v;
    }

    /**
      Get Use preinstalled edict
    */
    static
    bool edict__useGlobal()
    {
      return self()->mEdict__useGlobal;
    }

    /**
      Is Use preinstalled edict Immutable
    */
    static
    bool isEdict__useGlobalImmutable()
    {
      return self()->isImmutable( QStringLiteral( "edict__useGlobal" ) );
    }

    /**
      Set Set of fields to display for this dictionary type
    */
    static
    void setEdict__displayFields( const QStringList & v )
    {
      if (!self()->isEdict__displayFieldsImmutable())
        self()->mEdict__displayFields = v;
    }

    /**
      Get Set of fields to display for this dictionary type
    */
    static
    QStringList edict__displayFields()
    {
      return self()->mEdict__displayFields;
    }

    /**
      Is Set of fields to display for this dictionary type Immutable
    */
    static
    bool isEdict__displayFieldsImmutable()
    {
      return self()->isImmutable( QStringLiteral( "edict__displayFields" ) );
    }

    /**
      Set Kanjidic dictionary files
    */
    static
    void setKanjidic__NAMES( const QStringList & v )
    {
      if (!self()->isKanjidic__NAMESImmutable())
        self()->mKanjidic__NAMES = v;
    }

    /**
      Get Kanjidic dictionary files
    */
    static
    QStringList kanjidic__NAMES()
    {
      return self()->mKanjidic__NAMES;
    }

    /**
      Is Kanjidic dictionary files Immutable
    */
    static
    bool isKanjidic__NAMESImmutable()
    {
      return self()->isImmutable( QStringLiteral( "kanjidic__NAMES" ) );
    }

    /**
      Set Use preinstalled kanjidic
    */
    static
    void setKanjidic__useGlobal( bool v )
    {
      if (!self()->isKanjidic__useGlobalImmutable())
        self()->mKanjidic__useGlobal = v;
    }

    /**
      Get Use preinstalled kanjidic
    */
    static
    bool kanjidic__useGlobal()
    {
      return self()->mKanjidic__useGlobal;
    }

    /**
      Is Use preinstalled kanjidic Immutable
    */
    static
    bool isKanjidic__useGlobalImmutable()
    {
      return self()->isImmutable( QStringLiteral( "kanjidic__useGlobal" ) );
    }

    /**
      Set Set of fields to display for this dictionary type
    */
    static
    void setKanjidic__displayFields( const QStringList & v )
    {
      if (!self()->isKanjidic__displayFieldsImmutable())
        self()->mKanjidic__displayFields = v;
    }

    /**
      Get Set of fields to display for this dictionary type
    */
    static
    QStringList kanjidic__displayFields()
    {
      return self()->mKanjidic__displayFields;
    }

    /**
      Is Set of fields to display for this dictionary type Immutable
    */
    static
    bool isKanjidic__displayFieldsImmutable()
    {
      return self()->isImmutable( QStringLiteral( "kanjidic__displayFields" ) );
    }

    /**
      Set Do we search for "jiten" on startup
    */
    static
    void setInitialSearch( bool v )
    {
      if (!self()->isInitialSearchImmutable())
        self()->mInitialSearch = v;
    }

    /**
      Get Do we search for "jiten" on startup
    */
    static
    bool initialSearch()
    {
      return self()->mInitialSearch;
    }

    /**
      Is Do we search for "jiten" on startup Immutable
    */
    static
    bool isInitialSearchImmutable()
    {
      return self()->isImmutable( QStringLiteral( "initialSearch" ) );
    }

    /**
      Set Case sensitive searches
    */
    static
    void setCaseSensitive( bool v )
    {
      if (!self()->isCaseSensitiveImmutable())
        self()->mCaseSensitive = v;
    }

    /**
      Get Case sensitive searches
    */
    static
    bool caseSensitive()
    {
      return self()->mCaseSensitive;
    }

    /**
      Is Case sensitive searches Immutable
    */
    static
    bool isCaseSensitiveImmutable()
    {
      return self()->isImmutable( QStringLiteral( "caseSensitive" ) );
    }

    /**
      Set Enable Sorting By Dictionary
    */
    static
    void setDictionary_enable( const QString & v )
    {
      if (!self()->isDictionary_enableImmutable())
        self()->mDictionary_enable = v;
    }

    /**
      Get Enable Sorting By Dictionary
    */
    static
    QString dictionary_enable()
    {
      return self()->mDictionary_enable;
    }

    /**
      Is Enable Sorting By Dictionary Immutable
    */
    static
    bool isDictionary_enableImmutable()
    {
      return self()->isImmutable( QStringLiteral( "dictionary_enable" ) );
    }

    /**
      Set What order do we sort the dictionaries in?
    */
    static
    void setDictionary_sortlist( const QStringList & v )
    {
      if (!self()->isDictionary_sortlistImmutable())
        self()->mDictionary_sortlist = v;
    }

    /**
      Get What order do we sort the dictionaries in?
    */
    static
    QStringList dictionary_sortlist()
    {
      return self()->mDictionary_sortlist;
    }

    /**
      Is What order do we sort the dictionaries in? Immutable
    */
    static
    bool isDictionary_sortlistImmutable()
    {
      return self()->isImmutable( QStringLiteral( "dictionary_sortlist" ) );
    }

    /**
      Set What order do we sort the fields in?
    */
    static
    void setField_sortlist( const QStringList & v )
    {
      if (!self()->isField_sortlistImmutable())
        self()->mField_sortlist = v;
    }

    /**
      Get What order do we sort the fields in?
    */
    static
    QStringList field_sortlist()
    {
      return self()->mField_sortlist;
    }

    /**
      Is What order do we sort the fields in? Immutable
    */
    static
    bool isField_sortlistImmutable()
    {
      return self()->isImmutable( QStringLiteral( "field_sortlist" ) );
    }

    /**
      Set font
    */
    static
    void setFont( const QFont & v )
    {
      if (!self()->isFontImmutable())
        self()->mFont = v;
    }

    /**
      Get font
    */
    static
    QFont font()
    {
      return self()->mFont;
    }

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

    /**
      Set textSameSize
    */
    static
    void setTextSameSize( bool v )
    {
      if (!self()->isTextSameSizeImmutable())
        self()->mTextSameSize = v;
    }

    /**
      Get textSameSize
    */
    static
    bool textSameSize()
    {
      return self()->mTextSameSize;
    }

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

    /**
      Set textKanjiBig
    */
    static
    void setTextKanjiBig( bool v )
    {
      if (!self()->isTextKanjiBigImmutable())
        self()->mTextKanjiBig = v;
    }

    /**
      Get textKanjiBig
    */
    static
    bool textKanjiBig()
    {
      return self()->mTextKanjiBig;
    }

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

    /**
      Set textMainWordBig
    */
    static
    void setTextMainWordBig( bool v )
    {
      if (!self()->isTextMainWordBigImmutable())
        self()->mTextMainWordBig = v;
    }

    /**
      Get textMainWordBig
    */
    static
    bool textMainWordBig()
    {
      return self()->mTextMainWordBig;
    }

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

    /**
      Set 0=No filter, 1=Limit search results to "common" entries only, 2=Separate common and uncommon entries
    */
    static
    void setFilter_rare( int v )
    {
      if (!self()->isFilter_rareImmutable())
        self()->mFilter_rare = v;
    }

    /**
      Get 0=No filter, 1=Limit search results to "common" entries only, 2=Separate common and uncommon entries
    */
    static
    int filter_rare()
    {
      return self()->mFilter_rare;
    }

    /**
      Is 0=No filter, 1=Limit search results to "common" entries only, 2=Separate common and uncommon entries Immutable
    */
    static
    bool isFilter_rareImmutable()
    {
      return self()->isImmutable( QStringLiteral( "filter_rare" ) );
    }

    /**
      Set The user's last type of search, 0=Exact, 1=Match Start, 2=Match End, 3=Match Anywhere
    */
    static
    void setSearch_precision( int v )
    {
      if (!self()->isSearch_precisionImmutable())
        self()->mSearch_precision = v;
    }

    /**
      Get The user's last type of search, 0=Exact, 1=Match Start, 2=Match End, 3=Match Anywhere
    */
    static
    int search_precision()
    {
      return self()->mSearch_precision;
    }

    /**
      Is The user's last type of search, 0=Exact, 1=Match Start, 2=Match End, 3=Match Anywhere Immutable
    */
    static
    bool isSearch_precisionImmutable()
    {
      return self()->isImmutable( QStringLiteral( "search_precision" ) );
    }

    /**
      Set The user's last type of search, 0=Any, 1=Verb, 2=Noun, 3=Adjective, 4=Adverb, 5=Prefix, 6=Suffix, 7=Expression
    */
    static
    void setSearch_limit_to_wordtype( int v )
    {
      if (!self()->isSearch_limit_to_wordtypeImmutable())
        self()->mSearch_limit_to_wordtype = v;
    }

    /**
      Get The user's last type of search, 0=Any, 1=Verb, 2=Noun, 3=Adjective, 4=Adverb, 5=Prefix, 6=Suffix, 7=Expression
    */
    static
    int search_limit_to_wordtype()
    {
      return self()->mSearch_limit_to_wordtype;
    }

    /**
      Is The user's last type of search, 0=Any, 1=Verb, 2=Noun, 3=Adjective, 4=Adverb, 5=Prefix, 6=Suffix, 7=Expression Immutable
    */
    static
    bool isSearch_limit_to_wordtypeImmutable()
    {
      return self()->isImmutable( QStringLiteral( "search_limit_to_wordtype" ) );
    }

    /**
      Set Automatically search for clipboard entries?
    */
    static
    void setAutosearch( bool v )
    {
      if (!self()->isAutosearchImmutable())
        self()->mAutosearch = v;
    }

    /**
      Get Automatically search for clipboard entries?
    */
    static
    bool autosearch()
    {
      return self()->mAutosearch;
    }

    /**
      Is Automatically search for clipboard entries? Immutable
    */
    static
    bool isAutosearchImmutable()
    {
      return self()->isImmutable( QStringLiteral( "autosearch" ) );
    }

  protected:
    KitenConfigSkeleton();
    friend class KitenConfigSkeletonHelper;


    // dict_config_types
    QStringList mDictionary_list;

    // dicts_edict
    QStringList mEdict__NAMES;
    bool mEdict__useGlobal;
    QStringList mEdict__displayFields;

    // dicts_kanjidic
    QStringList mKanjidic__NAMES;
    bool mKanjidic__useGlobal;
    QStringList mKanjidic__displayFields;

    // Searching Options
    bool mInitialSearch;
    bool mCaseSensitive;

    // Sorting
    QString mDictionary_enable;
    QStringList mDictionary_sortlist;
    QStringList mField_sortlist;

    // Font
    QFont mFont;
    bool mTextSameSize;
    bool mTextKanjiBig;
    bool mTextMainWordBig;

    // app
    int mFilter_rare;
    int mSearch_precision;
    int mSearch_limit_to_wordtype;
    bool mAutosearch;
};

#endif

