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

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

class KDarkLightState : public KConfigSkeleton
{
  Q_OBJECT
  public:

    KDarkLightState( );
    ~KDarkLightState() override;

    /**
      Set Available
    */
    void setAvailable( bool v )
    {
      if (v != mAvailable && !isAvailableImmutable()) {
        mAvailable = v;
        Q_EMIT AvailableChanged();
      }
    }

    Q_PROPERTY(bool available READ available WRITE setAvailable NOTIFY AvailableChanged)
    Q_PROPERTY(bool isAvailableImmutable READ isAvailableImmutable CONSTANT)
    /**
      Get Available
    */
    bool available() const
    {
      return mAvailable;
    }

    /**
      Is Available Immutable
    */
    bool isAvailableImmutable() const
    {
      return isImmutable( QStringLiteral( "Available" ) );
    }

    /**
      Set Latitude
    */
    void setLatitude( double v )
    {
      if (v != mLatitude && !isLatitudeImmutable()) {
        mLatitude = v;
        Q_EMIT LatitudeChanged();
      }
    }

    Q_PROPERTY(double latitude READ latitude WRITE setLatitude NOTIFY LatitudeChanged)
    Q_PROPERTY(bool isLatitudeImmutable READ isLatitudeImmutable CONSTANT)
    /**
      Get Latitude
    */
    double latitude() const
    {
      return mLatitude;
    }

    /**
      Is Latitude Immutable
    */
    bool isLatitudeImmutable() const
    {
      return isImmutable( QStringLiteral( "Latitude" ) );
    }

    /**
      Set Longitude
    */
    void setLongitude( double v )
    {
      if (v != mLongitude && !isLongitudeImmutable()) {
        mLongitude = v;
        Q_EMIT LongitudeChanged();
      }
    }

    Q_PROPERTY(double longitude READ longitude WRITE setLongitude NOTIFY LongitudeChanged)
    Q_PROPERTY(bool isLongitudeImmutable READ isLongitudeImmutable CONSTANT)
    /**
      Get Longitude
    */
    double longitude() const
    {
      return mLongitude;
    }

    /**
      Is Longitude Immutable
    */
    bool isLongitudeImmutable() const
    {
      return isImmutable( QStringLiteral( "Longitude" ) );
    }


    enum {
      signalAvailableChanged = 1,
      signalLatitudeChanged = 2,
      signalLongitudeChanged = 3
    };

  Q_SIGNALS:
    void AvailableChanged();

    void LatitudeChanged();

    void LongitudeChanged();

  private:
    void itemChanged(quint64 signalFlag);

  protected:

    // AutomaticLocation
    bool mAvailable;
    double mLatitude;
    double mLongitude;
};

#endif

