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

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

class ScreenReaderSettings : public KConfigSkeleton
{
  Q_OBJECT
  public:

    ScreenReaderSettings( QObject *parent = nullptr );
    ~ScreenReaderSettings() override;

    /**
      Set Enable Screen Reader
    */
    void setEnabled( bool v )
    {
      if (v != mEnabled && !isEnabledImmutable()) {
        mEnabled = v;
        Q_EMIT EnabledChanged();
      }
    }

    Q_PROPERTY(bool enabled READ enabled WRITE setEnabled NOTIFY EnabledChanged)
    Q_PROPERTY(bool isEnabledImmutable READ isEnabledImmutable CONSTANT)
    Q_PROPERTY(bool defaultEnabledValue READ defaultEnabledValue CONSTANT)
    /**
      Get Enable Screen Reader
    */
    bool enabled() const
    {
      return mEnabled;
    }

    /**
      Is Enable Screen Reader Immutable
    */
    bool isEnabledImmutable() const
    {
      return isImmutable( QStringLiteral( "Enabled" ) );
    }

    /**
      Get Enable Screen Reader default value
    */
    bool defaultEnabledValue() const
    {
        return defaultEnabledValue_helper();
    }


    enum {
      signalEnabledChanged = 1
    };

  Q_SIGNALS:
    void EnabledChanged();

  private:
    void itemChanged(quint64 signalFlag);

  protected:

    // ScreenReader
    bool mEnabled;
    bool defaultEnabledValue_helper() const;
};

#endif

