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

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

class SkanpageConfigurationPrivate;

class SkanpageConfiguration : public KConfigSkeleton
{
  Q_OBJECT
  public:

    static SkanpageConfiguration *self();
    ~SkanpageConfiguration() override;

    /**
      Set defaultNameFilterIndex
    */
    static
    void setDefaultNameFilterIndex( int v );

    Q_PROPERTY(int defaultNameFilterIndex READ defaultNameFilterIndex WRITE setDefaultNameFilterIndex NOTIFY defaultNameFilterIndexChanged)
    Q_PROPERTY(bool isDefaultNameFilterIndexImmutable READ isDefaultNameFilterIndexImmutable CONSTANT)
    /**
      Get defaultNameFilterIndex
    */
    static
    int defaultNameFilterIndex();

    /**
      Is defaultNameFilterIndex Immutable
    */
    static
    bool isDefaultNameFilterIndexImmutable();

    /**
      Set defaultFolder
    */
    static
    void setDefaultFolder( const QUrl & v );

    Q_PROPERTY(QUrl defaultFolder READ defaultFolder WRITE setDefaultFolder NOTIFY defaultFolderChanged)
    Q_PROPERTY(bool isDefaultFolderImmutable READ isDefaultFolderImmutable CONSTANT)
    /**
      Get defaultFolder
    */
    static
    QUrl defaultFolder();

    /**
      Is defaultFolder Immutable
    */
    static
    bool isDefaultFolderImmutable();

    /**
      Set showAllDevices
    */
    static
    void setShowAllDevices( bool v );

    Q_PROPERTY(bool showAllDevices READ showAllDevices WRITE setShowAllDevices NOTIFY showAllDevicesChanged)
    Q_PROPERTY(bool isShowAllDevicesImmutable READ isShowAllDevicesImmutable CONSTANT)
    /**
      Get showAllDevices
    */
    static
    bool showAllDevices();

    /**
      Is showAllDevices Immutable
    */
    static
    bool isShowAllDevicesImmutable();

    /**
      Set nameTemplate
    */
    static
    void setNameTemplate( const QString & v );

    Q_PROPERTY(QString nameTemplate READ nameTemplate WRITE setNameTemplate NOTIFY nameTemplateChanged)
    Q_PROPERTY(bool isNameTemplateImmutable READ isNameTemplateImmutable CONSTANT)
    /**
      Get nameTemplate
    */
    static
    QString nameTemplate();

    /**
      Is nameTemplate Immutable
    */
    static
    bool isNameTemplateImmutable();


    enum {
      signalDefaultNameFilterIndexChanged = 1,
      signalDefaultFolderChanged = 2,
      signalShowAllDevicesChanged = 3,
      signalNameTemplateChanged = 4
    };

  Q_SIGNALS:
    void defaultNameFilterIndexChanged();

    void defaultFolderChanged();

    void showAllDevicesChanged();

    void nameTemplateChanged();

  private:
    void itemChanged(quint64 signalFlag);

  protected:
    SkanpageConfiguration();
    friend class SkanpageConfigurationHelper;

  private:
    SkanpageConfigurationPrivate *d;
};

#endif

