// This file is generated by kconfig_compiler_kf6 from languageconfig.kcfg.
// All changes you do to this file will be lost.

#include "languageconfig.h"

#include <qglobal.h>
#include <QFile>

class LanguageConfigHelper
{
  public:
    LanguageConfigHelper() noexcept : q(nullptr) {}
    ~LanguageConfigHelper() noexcept { delete q; q = nullptr; }
    LanguageConfigHelper(const LanguageConfigHelper&) = delete;
    LanguageConfigHelper& operator=(const LanguageConfigHelper&) = delete;
    LanguageConfig *q;
};
Q_GLOBAL_STATIC(LanguageConfigHelper, s_globalLanguageConfig)
LanguageConfig *LanguageConfig::self()
{
  if (!s_globalLanguageConfig()->q) {
    new LanguageConfig;
    s_globalLanguageConfig()->q->read();
  }

  return s_globalLanguageConfig()->q;
}

LanguageConfig::LanguageConfig( )
  : KConfigSkeleton( QStringLiteral( "kdeveloprc" ) )
{
  Q_ASSERT(!s_globalLanguageConfig()->q);
  s_globalLanguageConfig()->q = this;
  setCurrentGroup( QStringLiteral( "Language Support" ) );

  mAutomaticInvocationItem = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "Automatic Invocation" ), mAutomaticInvocation, true );
  mAutomaticInvocationItem->setLabel( QCoreApplication::translate("LanguageConfig", "Automatic Invocation") );
  addItem( mAutomaticInvocationItem, QStringLiteral( "automaticInvocation" ) );
  mHighlightSemanticProblemsItem = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "highlightSemanticProblems" ), mHighlightSemanticProblems, true );
  mHighlightSemanticProblemsItem->setLabel( QCoreApplication::translate("LanguageConfig", "highlightSemanticProblems") );
  addItem( mHighlightSemanticProblemsItem, QStringLiteral( "highlightSemanticProblems" ) );
  mHighlightProblematicLinesItem = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "highlightProblematicLines" ), mHighlightProblematicLines, false );
  mHighlightProblematicLinesItem->setLabel( QCoreApplication::translate("LanguageConfig", "highlightProblematicLines") );
  addItem( mHighlightProblematicLinesItem, QStringLiteral( "highlightProblematicLines" ) );
  mBoldDeclarationsItem = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "boldDeclarations" ), mBoldDeclarations, true );
  mBoldDeclarationsItem->setLabel( QCoreApplication::translate("LanguageConfig", "boldDeclarations") );
  addItem( mBoldDeclarationsItem, QStringLiteral( "boldDeclarations" ) );
  mShowMultiLineSelectionInformationItem = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "showMultiLineSelectionInformation" ), mShowMultiLineSelectionInformation, false );
  mShowMultiLineSelectionInformationItem->setLabel( QCoreApplication::translate("LanguageConfig", "showMultiLineSelectionInformation") );
  addItem( mShowMultiLineSelectionInformationItem, QStringLiteral( "showMultiLineSelectionInformation" ) );
  mLocalColorizationItem = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "localColorization" ), mLocalColorization, 170 );
  mLocalColorizationItem->setLabel( QCoreApplication::translate("LanguageConfig", "localColorization") );
  addItem( mLocalColorizationItem, QStringLiteral( "localColorization" ) );
  QList<KConfigSkeleton::ItemEnum::Choice> valuesglobalColorSource;
  {
    KConfigSkeleton::ItemEnum::Choice choice;
    choice.name = QStringLiteral("AutoGenerated");
    valuesglobalColorSource.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice choice;
    choice.name = QStringLiteral("FromTheme");
    valuesglobalColorSource.append( choice );
  }
  mGlobalColorSourceItem = new KConfigSkeleton::ItemEnum( currentGroup(), QStringLiteral( "globalColorSource" ), mGlobalColorSource, valuesglobalColorSource );
  mGlobalColorSourceItem->setLabel( QCoreApplication::translate("LanguageConfig", "globalColorSource") );
  addItem( mGlobalColorSourceItem, QStringLiteral( "globalColorSource" ) );
  mGlobalColorizationItem = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "globalColorization" ), mGlobalColorization, 255 );
  mGlobalColorizationItem->setLabel( QCoreApplication::translate("LanguageConfig", "globalColorization") );
  addItem( mGlobalColorizationItem, QStringLiteral( "globalColorization" ) );
  mMinFilesForSimplifiedParsingItem = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "minFilesForSimplifiedParsing" ), mMinFilesForSimplifiedParsing, 100000 );
  mMinFilesForSimplifiedParsingItem->setLabel( QCoreApplication::translate("LanguageConfig", "minFilesForSimplifiedParsing") );
  addItem( mMinFilesForSimplifiedParsingItem, QStringLiteral( "minFilesForSimplifiedParsing" ) );
  mTodoMarkerWordsItem = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "todoMarkerWords" ), mTodoMarkerWords, QStringLiteral( "TODO FIXME" ) );
  mTodoMarkerWordsItem->setLabel( QCoreApplication::translate("LanguageConfig", "todoMarkerWords") );
  addItem( mTodoMarkerWordsItem, QStringLiteral( "todoMarkerWords" ) );
  QList<KConfigSkeleton::ItemEnum::Choice> valuescompletionDetail;
  {
    KConfigSkeleton::ItemEnum::Choice choice;
    choice.name = QStringLiteral("Minimal");
    valuescompletionDetail.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice choice;
    choice.name = QStringLiteral("MinimalWhenAutomatic");
    valuescompletionDetail.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice choice;
    choice.name = QStringLiteral("AlwaysFull");
    valuescompletionDetail.append( choice );
  }
  mCompletionDetailItem = new KConfigSkeleton::ItemEnum( currentGroup(), QStringLiteral( "completionDetail" ), mCompletionDetail, valuescompletionDetail, int(EnumCompletionDetail::MinimalWhenAutomatic) );
  mCompletionDetailItem->setLabel( QCoreApplication::translate("LanguageConfig", "completionDetail") );
  addItem( mCompletionDetailItem, QStringLiteral( "completionDetail" ) );
  QList<KConfigSkeleton::ItemEnum::Choice> valuesproblemInlineNotesLevel;
  mProblemInlineNotesLevelItem = new KConfigSkeleton::ItemEnum( currentGroup(), QStringLiteral( "problemInlineNotesLevel" ), mProblemInlineNotesLevel, valuesproblemInlineNotesLevel, int(KDevelop::ICompletionSettings::WarningsAndErrorsProblemInlineNotesLevel) );
  mProblemInlineNotesLevelItem->setLabel( QCoreApplication::translate("LanguageConfig", "problemInlineNotesLevel") );
  addItem( mProblemInlineNotesLevelItem, QStringLiteral( "problemInlineNotesLevel" ) );
  QList<KConfigSkeleton::ItemEnum::Choice> valuesprecompiledPreambleStorage;
  {
    KConfigSkeleton::ItemEnum::Choice choice;
    choice.name = QStringLiteral("Memory");
    valuesprecompiledPreambleStorage.append( choice );
  }
  {
    KConfigSkeleton::ItemEnum::Choice choice;
    choice.name = QStringLiteral("SessionTemporaryDirectory");
    valuesprecompiledPreambleStorage.append( choice );
  }
  mPrecompiledPreambleStorageItem = new KConfigSkeleton::ItemEnum( currentGroup(), QStringLiteral( "precompiledPreambleStorage" ), mPrecompiledPreambleStorage, valuesprecompiledPreambleStorage, int(EnumPrecompiledPreambleStorage::Memory) );
  mPrecompiledPreambleStorageItem->setLabel( QCoreApplication::translate("LanguageConfig", "precompiledPreambleStorage") );
  addItem( mPrecompiledPreambleStorageItem, QStringLiteral( "precompiledPreambleStorage" ) );
}

LanguageConfig::~LanguageConfig()
{
  if (s_globalLanguageConfig.exists() && !s_globalLanguageConfig.isDestroyed()) {
    s_globalLanguageConfig()->q = nullptr;
  }
}

