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

#include "kleo_export.h"

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

namespace Kleo {

class KLEO_EXPORT OpenPGPCertificateCreationConfig : public KConfigSkeleton
{
  public:

    OpenPGPCertificateCreationConfig( );
    ~OpenPGPCertificateCreationConfig() override;

    /**
      Set Contains a list of the required attributes (case insensitive): NAME! , EMAIL!
    */
    void setRequiredFields( const QStringList & v )
    {
      if (!isRequiredFieldsImmutable())
        mRequiredFields = v;
    }

    /**
      Get Contains a list of the required attributes (case insensitive): NAME! , EMAIL!
    */
    QStringList requiredFields() const
    {
      return mRequiredFields;
    }

    /**
      Is Contains a list of the required attributes (case insensitive): NAME! , EMAIL! Immutable
    */
    bool isRequiredFieldsImmutable() const
    {
      return isImmutable( QStringLiteral( "requiredFields" ) );
    }

    /**
      Set Placeholder for CN
    */
    void setCnPlaceholder( const QString & v )
    {
      if (!isCnPlaceholderImmutable())
        mCnPlaceholder = v;
    }

    /**
      Get Placeholder for CN
    */
    QString cnPlaceholder() const
    {
      return mCnPlaceholder;
    }

    /**
      Is Placeholder for CN Immutable
    */
    bool isCnPlaceholderImmutable() const
    {
      return isImmutable( QStringLiteral( "cnPlaceholder" ) );
    }

    /**
      Set Prefill CN automatically
    */
    void setPrefillCN( bool v )
    {
      if (!isPrefillCNImmutable())
        mPrefillCN = v;
    }

    /**
      Get Prefill CN automatically
    */
    bool prefillCN() const
    {
      return mPrefillCN;
    }

    /**
      Is Prefill CN automatically Immutable
    */
    bool isPrefillCNImmutable() const
    {
      return isImmutable( QStringLiteral( "prefillCN" ) );
    }

    /**
      Get Prefill CN automatically default value
    */
    bool defaultPrefillCNValue() const
    {
        return defaultPrefillCNValue_helper();
    }

    /**
      Set Hint for EMAIL (deprecated use emailHint instead)
    */
    void setEmailPlaceholder( const QString & v )
    {
      if (!isEmailPlaceholderImmutable())
        mEmailPlaceholder = v;
    }

    /**
      Get Hint for EMAIL (deprecated use emailHint instead)
    */
    QString emailPlaceholder() const
    {
      return mEmailPlaceholder;
    }

    /**
      Is Hint for EMAIL (deprecated use emailHint instead) Immutable
    */
    bool isEmailPlaceholderImmutable() const
    {
      return isImmutable( QStringLiteral( "emailPlaceholder" ) );
    }

    /**
      Set Hint for EMAIL
    */
    void setEmailHint( const QString & v )
    {
      if (!isEmailHintImmutable())
        mEmailHint = v;
    }

    /**
      Get Hint for EMAIL
    */
    QString emailHint() const
    {
      return mEmailHint;
    }

    /**
      Is Hint for EMAIL Immutable
    */
    bool isEmailHintImmutable() const
    {
      return isImmutable( QStringLiteral( "emailHint" ) );
    }

    /**
      Set Label for EMAIL
    */
    void setEmailLabel( const QString & v )
    {
      if (!isEmailLabelImmutable())
        mEmailLabel = v;
    }

    /**
      Get Label for EMAIL
    */
    QString emailLabel() const
    {
      return mEmailLabel;
    }

    /**
      Is Label for EMAIL Immutable
    */
    bool isEmailLabelImmutable() const
    {
      return isImmutable( QStringLiteral( "emailLabel" ) );
    }

    /**
      Set Prefill EMAIL automatically
    */
    void setPrefillEmail( bool v )
    {
      if (!isPrefillEmailImmutable())
        mPrefillEmail = v;
    }

    /**
      Get Prefill EMAIL automatically
    */
    bool prefillEmail() const
    {
      return mPrefillEmail;
    }

    /**
      Is Prefill EMAIL automatically Immutable
    */
    bool isPrefillEmailImmutable() const
    {
      return isImmutable( QStringLiteral( "prefillEmail" ) );
    }

    /**
      Get Prefill EMAIL automatically default value
    */
    bool defaultPrefillEmailValue() const
    {
        return defaultPrefillEmailValue_helper();
    }

    /**
      Set Regex for EMAIL
    */
    void setEmailRegex( const QString & v )
    {
      if (!isEmailRegexImmutable())
        mEmailRegex = v;
    }

    /**
      Get Regex for EMAIL
    */
    QString emailRegex() const
    {
      return mEmailRegex;
    }

    /**
      Is Regex for EMAIL Immutable
    */
    bool isEmailRegexImmutable() const
    {
      return isImmutable( QStringLiteral( "emailRegex" ) );
    }

    /**
      Set Value of EMAIL
    */
    void setEmail( const QString & v )
    {
      if (!isEmailImmutable())
        mEmail = v;
    }

    /**
      Get Value of EMAIL
    */
    QString email() const
    {
      return mEmail;
    }

    /**
      Is Value of EMAIL Immutable
    */
    bool isEmailImmutable() const
    {
      return isImmutable( QStringLiteral( "email" ) );
    }

    /**
      Set Hint for NAME (deprecated use NAME_hint instead)
    */
    void setNamePlaceholder( const QString & v )
    {
      if (!isNamePlaceholderImmutable())
        mNamePlaceholder = v;
    }

    /**
      Get Hint for NAME (deprecated use NAME_hint instead)
    */
    QString namePlaceholder() const
    {
      return mNamePlaceholder;
    }

    /**
      Is Hint for NAME (deprecated use NAME_hint instead) Immutable
    */
    bool isNamePlaceholderImmutable() const
    {
      return isImmutable( QStringLiteral( "namePlaceholder" ) );
    }

    /**
      Set Regex for NAME
    */
    void setNameRegex( const QString & v )
    {
      if (!isNameRegexImmutable())
        mNameRegex = v;
    }

    /**
      Get Regex for NAME
    */
    QString nameRegex() const
    {
      return mNameRegex;
    }

    /**
      Is Regex for NAME Immutable
    */
    bool isNameRegexImmutable() const
    {
      return isImmutable( QStringLiteral( "nameRegex" ) );
    }

    /**
      Set Hint for NAME
    */
    void setNameHint( const QString & v )
    {
      if (!isNameHintImmutable())
        mNameHint = v;
    }

    /**
      Get Hint for NAME
    */
    QString nameHint() const
    {
      return mNameHint;
    }

    /**
      Is Hint for NAME Immutable
    */
    bool isNameHintImmutable() const
    {
      return isImmutable( QStringLiteral( "nameHint" ) );
    }

    /**
      Set Label for NAME
    */
    void setNameLabel( const QString & v )
    {
      if (!isNameLabelImmutable())
        mNameLabel = v;
    }

    /**
      Get Label for NAME
    */
    QString nameLabel() const
    {
      return mNameLabel;
    }

    /**
      Is Label for NAME Immutable
    */
    bool isNameLabelImmutable() const
    {
      return isImmutable( QStringLiteral( "nameLabel" ) );
    }

    /**
      Set Prefill NAME automatically
    */
    void setPrefillName( bool v )
    {
      if (!isPrefillNameImmutable())
        mPrefillName = v;
    }

    /**
      Get Prefill NAME automatically
    */
    bool prefillName() const
    {
      return mPrefillName;
    }

    /**
      Is Prefill NAME automatically Immutable
    */
    bool isPrefillNameImmutable() const
    {
      return isImmutable( QStringLiteral( "prefillName" ) );
    }

    /**
      Get Prefill NAME automatically default value
    */
    bool defaultPrefillNameValue() const
    {
        return defaultPrefillNameValue_helper();
    }

    /**
      Set Value of NAME
    */
    void setName( const QString & v )
    {
      if (!isNameImmutable())
        mName = v;
    }

    /**
      Get Value of NAME
    */
    QString name() const
    {
      return mName;
    }

    /**
      Is Value of NAME Immutable
    */
    bool isNameImmutable() const
    {
      return isImmutable( QStringLiteral( "name" ) );
    }

    /**
      Set Default validity period
    */
    void setValidityPeriodInDays( int v )
    {
      if (!isValidityPeriodInDaysImmutable())
        mValidityPeriodInDays = v;
    }

    /**
      Get Default validity period
    */
    int validityPeriodInDays() const
    {
      return mValidityPeriodInDays;
    }

    /**
      Is Default validity period Immutable
    */
    bool isValidityPeriodInDaysImmutable() const
    {
      return isImmutable( QStringLiteral( "ValidityPeriodInDays" ) );
    }

    /**
      Get Default validity period default value
    */
    int defaultValidityPeriodInDaysValue() const
    {
        return defaultValidityPeriodInDaysValue_helper();
    }

    /**
      Set Minimum validity period
    */
    void setValidityPeriodInDaysMin( int v )
    {
      if (!isValidityPeriodInDaysMinImmutable())
        mValidityPeriodInDaysMin = v;
    }

    /**
      Get Minimum validity period
    */
    int validityPeriodInDaysMin() const
    {
      return mValidityPeriodInDaysMin;
    }

    /**
      Is Minimum validity period Immutable
    */
    bool isValidityPeriodInDaysMinImmutable() const
    {
      return isImmutable( QStringLiteral( "ValidityPeriodInDaysMin" ) );
    }

    /**
      Get Minimum validity period default value
    */
    int defaultValidityPeriodInDaysMinValue() const
    {
        return defaultValidityPeriodInDaysMinValue_helper();
    }

    /**
      Set Maximum validity period
    */
    void setValidityPeriodInDaysMax( int v )
    {
      if (!isValidityPeriodInDaysMaxImmutable())
        mValidityPeriodInDaysMax = v;
    }

    /**
      Get Maximum validity period
    */
    int validityPeriodInDaysMax() const
    {
      return mValidityPeriodInDaysMax;
    }

    /**
      Is Maximum validity period Immutable
    */
    bool isValidityPeriodInDaysMaxImmutable() const
    {
      return isImmutable( QStringLiteral( "ValidityPeriodInDaysMax" ) );
    }

    /**
      Get Maximum validity period default value
    */
    int defaultValidityPeriodInDaysMaxValue() const
    {
        return defaultValidityPeriodInDaysMaxValue_helper();
    }

    /**
      Set Hide advanced settings
    */
    void setHideAdvanced( bool v )
    {
      if (!isHideAdvancedImmutable())
        mHideAdvanced = v;
    }

    /**
      Get Hide advanced settings
    */
    bool hideAdvanced() const
    {
      return mHideAdvanced;
    }

    /**
      Is Hide advanced settings Immutable
    */
    bool isHideAdvancedImmutable() const
    {
      return isImmutable( QStringLiteral( "HideAdvanced" ) );
    }

    /**
      Get Hide advanced settings default value
    */
    bool defaultHideAdvancedValue() const
    {
        return defaultHideAdvancedValue_helper();
    }

    /**
      Set Whether the certificate creation dialog require a passsphrase
    */
    void setWithPassphrase( bool v )
    {
      if (!isWithPassphraseImmutable())
        mWithPassphrase = v;
    }

    /**
      Get Whether the certificate creation dialog require a passsphrase
    */
    bool withPassphrase() const
    {
      return mWithPassphrase;
    }

    /**
      Is Whether the certificate creation dialog require a passsphrase Immutable
    */
    bool isWithPassphraseImmutable() const
    {
      return isImmutable( QStringLiteral( "WithPassphrase" ) );
    }

    /**
      Get Whether the certificate creation dialog require a passsphrase default value
    */
    bool defaultWithPassphraseValue() const
    {
        return defaultWithPassphraseValue_helper();
    }

  protected:

    // CertificateCreationWizard
    QStringList mRequiredFields;
    QStringList defaultRequiredFieldsValue_helper() const;
    QString mCnPlaceholder;
    QString defaultCnPlaceholderValue_helper() const;
    bool mPrefillCN;
    bool defaultPrefillCNValue_helper() const;
    QString mEmailPlaceholder;
    QString defaultEmailPlaceholderValue_helper() const;
    QString mEmailHint;
    QString defaultEmailHintValue_helper() const;
    QString mEmailLabel;
    QString defaultEmailLabelValue_helper() const;
    bool mPrefillEmail;
    bool defaultPrefillEmailValue_helper() const;
    QString mEmailRegex;
    QString defaultEmailRegexValue_helper() const;
    QString mEmail;
    QString defaultEmailValue_helper() const;
    QString mNamePlaceholder;
    QString defaultNamePlaceholderValue_helper() const;
    QString mNameRegex;
    QString defaultNameRegexValue_helper() const;
    QString mNameHint;
    QString defaultNameHintValue_helper() const;
    QString mNameLabel;
    QString defaultNameLabelValue_helper() const;
    bool mPrefillName;
    bool defaultPrefillNameValue_helper() const;
    QString mName;
    QString defaultNameValue_helper() const;
    int mValidityPeriodInDays;
    int defaultValidityPeriodInDaysValue_helper() const;
    int mValidityPeriodInDaysMin;
    int defaultValidityPeriodInDaysMinValue_helper() const;
    int mValidityPeriodInDaysMax;
    int defaultValidityPeriodInDaysMaxValue_helper() const;
    bool mHideAdvanced;
    bool defaultHideAdvancedValue_helper() const;
    bool mWithPassphrase;
    bool defaultWithPassphraseValue_helper() const;
};

}

#endif

