KEMailSettings::KEMailSettings() : p(new KEMailSettingsPrivate()) { p->m_sCurrentProfile.clear(); p->m_pConfig = new KConfig(QStringLiteral("emaildefaults")); const QStringList groups = p->m_pConfig->groupList(); for (QStringList::ConstIterator it = groups.begin(); it != groups.end(); ++it) { if ((*it).startsWith(QLatin1String("PROFILE_"))) { p->profiles += (*it).mid(8, (*it).length()); } } KConfigGroup cg(p->m_pConfig, "Defaults"); p->m_sDefaultProfile = cg.readEntry("Profile", tr("Default")); if (!p->m_sDefaultProfile.isNull()) { if (!p->m_pConfig->hasGroup(QStringLiteral("PROFILE_") + p->m_sDefaultProfile)) { setDefault(tr("Default")); } else { setDefault(p->m_sDefaultProfile); } } else { if (!p->profiles.isEmpty()) { setDefault(p->profiles[0]); } else { setDefault(tr("Default")); } } setProfile(defaultProfileName()); }
QgsUserProfile *QgsUserProfileManager::getProfile( const QString &defaultProfile, bool createNew, bool initSettings ) { QString profileName = defaultProfile.isEmpty() ? defaultProfileName() : defaultProfile; if ( createNew && !profileExists( defaultProfile ) ) { createUserProfile( profileName ); } QgsUserProfile *profile = profileForName( profileName ); if ( initSettings ) profile->initSettings(); return profile; }