[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: KDE/kdepim/kresources/akonadi/kabc
From: Kevin Krammer <kevin.krammer () gmx ! at>
Date: 2008-09-10 21:12:58
Message-ID: 1221081178.678501.31122.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 859654 by krake:
Write subresource properties into config sub groups
M +37 -10 resourceakonadi.cpp
--- trunk/KDE/kdepim/kresources/akonadi/kabc/resourceakonadi.cpp #859653:859654
@@ -49,14 +49,13 @@
class SubResource
{
public:
- SubResource( const Collection &collection )
+ SubResource( const Collection &collection, const KConfigGroup &parentGroup )
: mCollection( collection ), mLabel( collection.name() ),
mActive(true), mCompletionWeight(80)
{
+ readConfig( parentGroup );
}
- // TODO: need to use KConfigGroup instead
- // or probably a collection attribute?
void setActive( bool active )
{
mActive = active;
@@ -73,6 +72,25 @@
int completionWeight() const { return mCompletionWeight; }
+ void writeConfig( KConfigGroup &parentGroup ) const
+ {
+ KConfigGroup group( &parentGroup, mCollection.url().url() );
+
+ group.writeEntry( QLatin1String( "Active" ), mActive );
+ group.writeEntry( QLatin1String( "CompletionWeight" ), mCompletionWeight );
+ }
+
+ void readConfig( const KConfigGroup &parentGroup )
+ {
+ const QString collectionUrl = mCollection.url().url();
+ if ( !parentGroup.hasGroup( collectionUrl ) )
+ return;
+
+ KConfigGroup group( &parentGroup, collectionUrl );
+ mActive = group.readEntry<bool>( QLatin1String( "Active" ), true );
+ mCompletionWeight = group.readEntry<int>( QLatin1String( "CompletionWeight" ), 80 );
+ }
+
public:
Collection mCollection;
QString mLabel;
@@ -97,6 +115,8 @@
public:
ResourceAkonadi *mParent;
+ KConfigGroup mConfig;
+
Monitor *mMonitor;
ItemMap mItems;
@@ -156,12 +176,11 @@
{
KUrl url = group.readEntry( QLatin1String( "CollectionUrl" ), KUrl() );
- if ( !url.isValid() ) {
- // TODO error handling
- } else {
+ if ( url.isValid() )
d->mStoreCollection = Collection::fromUrl( url );
- }
+ d->mConfig = group;
+
init();
}
@@ -193,9 +212,17 @@
void ResourceAkonadi::writeConfig( KConfigGroup &group )
{
+ ResourceABC::writeConfig( group );
+
group.writeEntry( QLatin1String( "CollectionUrl" ), d->mStoreCollection.url() );
- ResourceABC::writeConfig( group );
+ SubResourceMap::const_iterator it = d->mSubResources.begin();
+ SubResourceMap::const_iterator endIt = d->mSubResources.end();
+ for (; it != endIt; ++it ) {
+ it.value()->writeConfig( group );
+ }
+
+ d->mConfig = group;
}
bool ResourceAkonadi::doOpen()
@@ -312,7 +339,7 @@
const QString collectionUrl = collection.url().url();
SubResource *subResource = d->mSubResources[ collectionUrl ];
if ( subResource == 0 ) {
- subResource = new SubResource( collection );
+ subResource = new SubResource( collection, d->mConfig );
d->mSubResources.insert( collectionUrl, subResource );
d->mSubResourceIds.insert( collectionUrl );
kDebug(5700) << "Adding subResource" << subResource->mLabel
@@ -832,7 +859,7 @@
SubResource *subResource = mSubResources[ collectionUrl ];
if ( subResource == 0 ) {
- subResource = new SubResource( collection );
+ subResource = new SubResource( collection, mConfig );
mSubResources.insert( collectionUrl, subResource );
mSubResourceIds.insert( collectionUrl );
kDebug(5700) << "Adding subResource" << subResource->mLabel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic