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

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

class DesktopThemeSettings : public KConfigSkeleton
{
  Q_OBJECT
  public:

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

    /**
      Set Name of the current Plasma Style
    */
    void setName( const QString & v )
    {
      if (v != mName && !isNameImmutable()) {
        mName = v;
        Q_EMIT nameChanged();
      }
    }

    Q_PROPERTY(QString name READ name WRITE setName NOTIFY nameChanged)
    Q_PROPERTY(bool isNameImmutable READ isNameImmutable CONSTANT)
    Q_PROPERTY(QString defaultNameValue READ defaultNameValue CONSTANT)
    /**
      Get Name of the current Plasma Style
    */
    QString name() const
    {
      return mName;
    }

    /**
      Is Name of the current Plasma Style Immutable
    */
    bool isNameImmutable() const
    {
      return isImmutable( QStringLiteral( "name" ) );
    }

    /**
      Get Name of the current Plasma Style default value
    */
    QString defaultNameValue() const
    {
        return defaultNameValue_helper();
    }


    enum {
      signalNameChanged = 1
    };

  Q_SIGNALS:
    void nameChanged();

  private:
    void itemChanged(quint64 signalFlag);

  protected:

    // Theme
    QString mName;
    QString defaultNameValue_helper() const;
};

#endif

