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

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

class KnutSettings : public KConfigSkeleton
{
  public:

    KnutSettings( KSharedConfig::Ptr config = KSharedConfig::openConfig() );
    ~KnutSettings();

    /**
      Set Path to the Knut data file.
    */
    void setDataFile( const QString & v )
    {
      if (!isImmutable( QStringLiteral( "DataFile" ) ))
        mDataFile = v;
    }

    /**
      Get Path to the Knut data file.
    */
    QString dataFile() const
    {
      return mDataFile;
    }

    /**
      Get Item object corresponding to DataFile()
    */
    ItemPath *dataFileItem()
    {
      return mDataFileItem;
    }

    /**
      Set Do not change the actual backend data.
    */
    void setReadOnly( bool v )
    {
      if (!isImmutable( QStringLiteral( "ReadOnly" ) ))
        mReadOnly = v;
    }

    /**
      Get Do not change the actual backend data.
    */
    bool readOnly() const
    {
      return mReadOnly;
    }

    /**
      Get Item object corresponding to ReadOnly()
    */
    ItemBool *readOnlyItem()
    {
      return mReadOnlyItem;
    }

    /**
      Set FileWatchingEnabled
    */
    void setFileWatchingEnabled( bool v )
    {
      if (!isImmutable( QStringLiteral( "FileWatchingEnabled" ) ))
        mFileWatchingEnabled = v;
    }

    /**
      Get FileWatchingEnabled
    */
    bool fileWatchingEnabled() const
    {
      return mFileWatchingEnabled;
    }

    /**
      Get Item object corresponding to FileWatchingEnabled()
    */
    ItemBool *fileWatchingEnabledItem()
    {
      return mFileWatchingEnabledItem;
    }

  protected:

    // General
    QString mDataFile;
    bool mReadOnly;
    bool mFileWatchingEnabled;

  private:
    ItemPath *mDataFileItem;
    ItemBool *mReadOnlyItem;
    ItemBool *mFileWatchingEnabledItem;
};

#endif

