// This file is generated by kconfig_compiler_kf6 from imapresource.kcfg.
// All changes you do to this file will be lost.

#include "settingsbase.h"

#include <klocalizedstring.h>

SettingsBase::SettingsBase( KSharedConfig::Ptr config )
  : KConfigSkeleton( std::move( config ) )
{
  setCurrentGroup( QStringLiteral( "network" ) );

  KConfigSkeleton::ItemString  *itemName;
  itemName = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "name" ), mName );
  itemName->setLabel( i18n("name") );
  addItem( itemName, QStringLiteral( "name" ) );
  KConfigSkeleton::ItemString  *itemImapServer;
  itemImapServer = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "ImapServer" ), mImapServer );
  itemImapServer->setLabel( i18n("IMAP server") );
  addItem( itemImapServer, QStringLiteral( "ImapServer" ) );
  KConfigSkeleton::ItemInt  *itemImapPort;
  itemImapPort = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "ImapPort" ), mImapPort, 993 );
  itemImapPort->setLabel( i18n("Defines the port the IMAP service is running on") );
  addItem( itemImapPort, QStringLiteral( "ImapPort" ) );
  KConfigSkeleton::ItemString  *itemUserName;
  itemUserName = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "UserName" ), mUserName );
  itemUserName->setLabel( i18n("Username") );
  addItem( itemUserName, QStringLiteral( "UserName" ) );
  KConfigSkeleton::ItemString  *itemSafety;
  itemSafety = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "Safety" ), mSafety, QStringLiteral( "SSL" ) );
  itemSafety->setLabel( i18n("Defines the encryption type to use") );
  addItem( itemSafety, QStringLiteral( "Safety" ) );
  KConfigSkeleton::ItemString  *itemOverrideEncryption;
  itemOverrideEncryption = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "OverrideEncryption" ), mOverrideEncryption );
  itemOverrideEncryption->setLabel( i18n("Override configured encryption mode") );
  addItem( itemOverrideEncryption, QStringLiteral( "OverrideEncryption" ) );
  KConfigSkeleton::ItemInt  *itemAuthentication;
  itemAuthentication = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "Authentication" ), mAuthentication, 1 );
  itemAuthentication->setLabel( i18n("Defines the authentication type to use") );
  addItem( itemAuthentication, QStringLiteral( "Authentication" ) );
  KConfigSkeleton::ItemBool  *itemSubscriptionEnabled;
  itemSubscriptionEnabled = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "SubscriptionEnabled" ), mSubscriptionEnabled, false );
  itemSubscriptionEnabled->setLabel( i18n("Defines if the server side subscription is enabled") );
  addItem( itemSubscriptionEnabled, QStringLiteral( "SubscriptionEnabled" ) );
  KConfigSkeleton::ItemInt  *itemSessionTimeout;
  itemSessionTimeout = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "SessionTimeout" ), mSessionTimeout, 30 );
  itemSessionTimeout->setLabel( i18n("SessionTimeout") );
  addItem( itemSessionTimeout, QStringLiteral( "SessionTimeout" ) );
  KConfigSkeleton::ItemBool  *itemUseProxy;
  itemUseProxy = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "UseProxy" ), mUseProxy, false );
  itemUseProxy->setLabel( i18n("Connect using the system proxy settings") );
  itemUseProxy->setWhatsThis( i18n("If checked, the system proxy settings will be used to connect to the mail server.") );
  addItem( itemUseProxy, QStringLiteral( "UseProxy" ) );

  setCurrentGroup( QStringLiteral( "cache" ) );

  KConfigSkeleton::ItemBool  *itemDisconnectedModeEnabled;
  itemDisconnectedModeEnabled = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "DisconnectedModeEnabled" ), mDisconnectedModeEnabled, true );
  itemDisconnectedModeEnabled->setLabel( i18n("Defines if all the IMAP data should be cached locally all the time") );
  addItem( itemDisconnectedModeEnabled, QStringLiteral( "DisconnectedModeEnabled" ) );
  KConfigSkeleton::ItemBool  *itemIntervalCheckEnabled;
  itemIntervalCheckEnabled = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "IntervalCheckEnabled" ), mIntervalCheckEnabled, true );
  itemIntervalCheckEnabled->setLabel( i18n("Defines if interval checking is enabled.") );
  addItem( itemIntervalCheckEnabled, QStringLiteral( "IntervalCheckEnabled" ) );
  KConfigSkeleton::ItemInt  *itemIntervalCheckTime;
  itemIntervalCheckTime = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "IntervalCheckTime" ), mIntervalCheckTime, 5 );
  itemIntervalCheckTime->setLabel( i18n("Check interval in minutes") );
  addItem( itemIntervalCheckTime, QStringLiteral( "IntervalCheckTime" ) );
  KConfigSkeleton::ItemBool  *itemRetrieveMetadataOnFolderListing;
  itemRetrieveMetadataOnFolderListing = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "RetrieveMetadataOnFolderListing" ), mRetrieveMetadataOnFolderListing, true );
  itemRetrieveMetadataOnFolderListing->setLabel( i18n("Defines if the annotations, ACLs and quota information of mailboxes should\n"
"             also be retrieved when the mailboxes get listed.") );
  addItem( itemRetrieveMetadataOnFolderListing, QStringLiteral( "RetrieveMetadataOnFolderListing" ) );
  KConfigSkeleton::ItemBool  *itemAutomaticExpungeEnabled;
  itemAutomaticExpungeEnabled = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "AutomaticExpungeEnabled" ), mAutomaticExpungeEnabled, true );
  itemAutomaticExpungeEnabled->setLabel( i18n("Defines if the expunge command is issued automatically, otherwise it should be\n"
"             triggered manually through the D-Bus interface.") );
  addItem( itemAutomaticExpungeEnabled, QStringLiteral( "AutomaticExpungeEnabled" ) );
  KConfigSkeleton::ItemLongLong  *itemTrashCollection;
  itemTrashCollection = new KConfigSkeleton::ItemLongLong( currentGroup(), QStringLiteral( "TrashCollection" ), mTrashCollection, -1 );
  itemTrashCollection->setLabel( i18n("Define which folder is used for trash") );
  addItem( itemTrashCollection, QStringLiteral( "TrashCollection" ) );
  KConfigSkeleton::ItemBool  *itemTrashCollectionMigrated;
  itemTrashCollectionMigrated = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "TrashCollectionMigrated" ), mTrashCollectionMigrated, false );
  itemTrashCollectionMigrated->setLabel( i18n("Define if the trash collection received the special attribute") );
  addItem( itemTrashCollectionMigrated, QStringLiteral( "TrashCollectionMigrated" ) );
  KConfigSkeleton::ItemBool  *itemUseDefaultIdentity;
  itemUseDefaultIdentity = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "UseDefaultIdentity" ), mUseDefaultIdentity, true );
  itemUseDefaultIdentity->setLabel( i18n("Define if account uses the default identity") );
  addItem( itemUseDefaultIdentity, QStringLiteral( "UseDefaultIdentity" ) );
  KConfigSkeleton::ItemInt  *itemAccountIdentity;
  itemAccountIdentity = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "AccountIdentity" ), mAccountIdentity );
  itemAccountIdentity->setLabel( i18n("Identity account") );
  addItem( itemAccountIdentity, QStringLiteral( "AccountIdentity" ) );
  KConfigSkeleton::ItemStringList  *itemKnownMailBoxes;
  itemKnownMailBoxes = new KConfigSkeleton::ItemStringList( currentGroup(), QStringLiteral( "KnownMailBoxes" ), mKnownMailBoxes );
  itemKnownMailBoxes->setLabel( i18n("List of mailbox names reported by the server the last time") );
  addItem( itemKnownMailBoxes, QStringLiteral( "KnownMailBoxes" ) );

  setCurrentGroup( QStringLiteral( "idle" ) );

  KConfigSkeleton::ItemStringList  *itemIdleRidPath;
  itemIdleRidPath = new KConfigSkeleton::ItemStringList( currentGroup(), QStringLiteral( "IdleRidPath" ), mIdleRidPath );
  itemIdleRidPath->setLabel( i18n("RID path to the mailbox to watch for changes") );
  addItem( itemIdleRidPath, QStringLiteral( "IdleRidPath" ) );

  setCurrentGroup( QStringLiteral( "siever" ) );

  KConfigSkeleton::ItemBool  *itemSieveSupport;
  itemSieveSupport = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "SieveSupport" ), mSieveSupport, false );
  itemSieveSupport->setLabel( i18n("Define if server supports sieve") );
  addItem( itemSieveSupport, QStringLiteral( "SieveSupport" ) );
  KConfigSkeleton::ItemBool  *itemSieveReuseConfig;
  itemSieveReuseConfig = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "SieveReuseConfig" ), mSieveReuseConfig, true );
  itemSieveReuseConfig->setLabel( i18n("Define if we reuse host and login configuration") );
  addItem( itemSieveReuseConfig, QStringLiteral( "SieveReuseConfig" ) );
  KConfigSkeleton::ItemInt  *itemSievePort;
  itemSievePort = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "SievePort" ), mSievePort, 4190 );
  itemSievePort->setLabel( i18n("Define sieve port") );
  addItem( itemSievePort, QStringLiteral( "SievePort" ) );
  KConfigSkeleton::ItemString  *itemSieveAlternateUrl;
  itemSieveAlternateUrl = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "SieveAlternateUrl" ), mSieveAlternateUrl );
  itemSieveAlternateUrl->setLabel( i18n("Define alternate URL") );
  addItem( itemSieveAlternateUrl, QStringLiteral( "SieveAlternateUrl" ) );
  KConfigSkeleton::ItemInt  *itemAlternateAuthentication;
  itemAlternateAuthentication = new KConfigSkeleton::ItemInt( currentGroup(), QStringLiteral( "AlternateAuthentication" ), mAlternateAuthentication, 1 );
  itemAlternateAuthentication->setLabel( i18n("Defines the authentication type to use for alternate server") );
  addItem( itemAlternateAuthentication, QStringLiteral( "AlternateAuthentication" ) );
  KConfigSkeleton::ItemString  *itemSieveVacationFilename;
  itemSieveVacationFilename = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "SieveVacationFilename" ), mSieveVacationFilename, QStringLiteral( "kmail-vacation.siv" ) );
  itemSieveVacationFilename->setLabel( i18n("Define default sieve vacation filename") );
  addItem( itemSieveVacationFilename, QStringLiteral( "SieveVacationFilename" ) );
  KConfigSkeleton::ItemString  *itemSieveCustomUsername;
  itemSieveCustomUsername = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "SieveCustomUsername" ), mSieveCustomUsername );
  itemSieveCustomUsername->setLabel( i18n("Define username used from custom server sieve url") );
  addItem( itemSieveCustomUsername, QStringLiteral( "SieveCustomUsername" ) );
  KConfigSkeleton::ItemString  *itemSieveCustomAuthentification;
  itemSieveCustomAuthentification = new KConfigSkeleton::ItemString( currentGroup(), QStringLiteral( "SieveCustomAuthentification" ), mSieveCustomAuthentification, QStringLiteral( "ImapUserPassword" ) );
  itemSieveCustomAuthentification->setLabel( i18n("Defines the type of identification used by custom sieve server") );
  addItem( itemSieveCustomAuthentification, QStringLiteral( "SieveCustomAuthentification" ) );

  setCurrentGroup( QStringLiteral( "Activities" ) );

  KConfigSkeleton::ItemBool  *itemActivitiesEnabled;
  itemActivitiesEnabled = new KConfigSkeleton::ItemBool( currentGroup(), QStringLiteral( "ActivitiesEnabled" ), mActivitiesEnabled, false );
  itemActivitiesEnabled->setLabel( i18n("Whether the activities support of the agent is enabled") );
  addItem( itemActivitiesEnabled, QStringLiteral( "ActivitiesEnabled" ) );
  KConfigSkeleton::ItemStringList  *itemActivities;
  itemActivities = new KConfigSkeleton::ItemStringList( currentGroup(), QStringLiteral( "Activities" ), mActivities );
  itemActivities->setLabel( i18n("The activities of the agent") );
  addItem( itemActivities, QStringLiteral( "Activities" ) );
}

SettingsBase::~SettingsBase()
{
}

