4 #include "specialmailcollectionssettings.h"
7 #include <QtCore/QFile>
11 using namespace Akonadi;
15 class SpecialMailCollectionsSettingsHelper
18 SpecialMailCollectionsSettingsHelper() : q(0) {}
19 ~SpecialMailCollectionsSettingsHelper() {
delete q; }
20 SpecialMailCollectionsSettings *q;
24 K_GLOBAL_STATIC(SpecialMailCollectionsSettingsHelper, s_globalSpecialMailCollectionsSettings)
25 SpecialMailCollectionsSettings *SpecialMailCollectionsSettings::self()
27 if (!s_globalSpecialMailCollectionsSettings->q)
28 kFatal() <<
"you need to call SpecialMailCollectionsSettings::instance before using";
29 return s_globalSpecialMailCollectionsSettings->q;
32 void SpecialMailCollectionsSettings::instance(
const QString& cfgfilename)
34 if (s_globalSpecialMailCollectionsSettings->q) {
35 kDebug() <<
"SpecialMailCollectionsSettings::instance called after the first use - ignoring";
38 new SpecialMailCollectionsSettings(cfgfilename);
39 s_globalSpecialMailCollectionsSettings->q->readConfig();
42 SpecialMailCollectionsSettings::SpecialMailCollectionsSettings(
const QString& config )
43 : KConfigSkeleton( config )
45 Q_ASSERT(!s_globalSpecialMailCollectionsSettings->q);
46 s_globalSpecialMailCollectionsSettings->q =
this;
47 setCurrentGroup( QLatin1String(
"SpecialCollections" ) );
49 mDefaultResourceIdItem =
new KConfigSkeleton::ItemString( currentGroup(), QLatin1String(
"DefaultResourceId" ), mDefaultResourceId );
50 addItem( mDefaultResourceIdItem, QLatin1String(
"DefaultResourceId" ) );
53 SpecialMailCollectionsSettings::~SpecialMailCollectionsSettings()
55 if (!s_globalSpecialMailCollectionsSettings.isDestroyed()) {
56 s_globalSpecialMailCollectionsSettings->q = 0;