20 #include "specialmailcollections.h"
21 #include "akonadi/entitydisplayattribute.h"
22 #include "akonadi/collectionmodifyjob.h"
23 #include "specialmailcollectionssettings.h"
27 #include "akonadi/agentinstance.h"
29 using namespace Akonadi;
31 class Akonadi::SpecialMailCollectionsPrivate
34 SpecialMailCollectionsPrivate();
35 ~SpecialMailCollectionsPrivate();
40 typedef SpecialMailCollectionsSettings Settings;
42 K_GLOBAL_STATIC( SpecialMailCollectionsPrivate, sInstance )
55 default:
return QByteArray();
break;
59 SpecialMailCollectionsPrivate::SpecialMailCollectionsPrivate()
64 SpecialMailCollectionsPrivate::~SpecialMailCollectionsPrivate()
69 SpecialMailCollections::SpecialMailCollections( SpecialMailCollectionsPrivate *dd )
70 : SpecialCollections( Settings::self() ),
77 return sInstance->mInstance;
105 void SpecialMailCollections::verifyI18nDefaultCollection( Type type )
112 defaultI18n = i18nc(
"local mail folder",
"inbox" );
115 defaultI18n = i18nc(
"local mail folder",
"outbox" );
118 defaultI18n = i18nc(
"local mail folder",
"sent-mail" );
121 defaultI18n = i18nc(
"local mail folder",
"trash" );
124 defaultI18n = i18nc(
"local mail folder",
"drafts" );
127 defaultI18n = i18nc(
"local mail folder",
"templates" );
132 if(!defaultI18n.isEmpty()) {
133 if(collection.hasAttribute<Akonadi::EntityDisplayAttribute>()) {
134 if( collection.attribute<Akonadi::EntityDisplayAttribute>()->displayName() != defaultI18n) {
135 collection.attribute<Akonadi::EntityDisplayAttribute>()->setDisplayName( defaultI18n );
136 Akonadi::CollectionModifyJob *job =
new Akonadi::CollectionModifyJob( collection,
this );
137 connect( job, SIGNAL(result(KJob*)),
this, SLOT(slotCollectionModified(KJob*)) );
143 void SpecialMailCollections::slotCollectionModified(KJob*job)
145 if ( job->error() ) {
146 kDebug()<<
" Error when we modified collection";
151 #include "specialmailcollections.moc"