kitchensync

konnectormanager.cpp

00001 /*
00002     This file is part of KitchenSync.
00003 
00004     Copyright (c) 2002 Holger Freyther <zecke@handhelds.org>
00005 
00006     This library is free software; you can redistribute it and/or
00007     modify it under the terms of the GNU Library General Public
00008     License as published by the Free Software Foundation; either
00009     version 2 of the License, or (at your option) any later version.
00010 
00011     This library is distributed in the hope that it will be useful,
00012     but WITHOUT ANY WARRANTY; without even the implied warranty of
00013     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014     Library General Public License for more details.
00015 
00016     You should have received a copy of the GNU Library General Public License
00017     along with this library; see the file COPYING.LIB.  If not, write to
00018     the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00019     Boston, MA 02110-1301, USA.
00020 */
00021 
00022 #include <qdir.h>
00023 
00024 #include <dcopclient.h>
00025 #include <kapplication.h>
00026 #include <kdebug.h>
00027 #include <kstandarddirs.h>
00028 
00029 #include "konnectorinfo.h"
00030 
00031 #include "konnectormanager.h"
00032 
00033 using namespace KSync;
00034 
00035 KonnectorManager::KonnectorManager()
00036   : KRES::Manager<Konnector>( "konnector" )
00037 {
00038   connectSignals();
00039 }
00040 
00041 KonnectorManager::~KonnectorManager()
00042 {
00043 }
00044 
00045 void KonnectorManager::connectSignals()
00046 {
00047   Iterator it;
00048   for ( it = begin(); it != end(); ++it ) {
00049     connect( *it, SIGNAL( synceesRead( KSync::Konnector * ) ),
00050              SIGNAL( synceesRead( KSync::Konnector * ) ) );
00051     connect( *it, SIGNAL( synceeReadError( KSync::Konnector * ) ),
00052              SIGNAL( synceeReadError( KSync::Konnector * ) ) );
00053     connect( *it, SIGNAL( synceesWritten( KSync::Konnector * ) ),
00054              SIGNAL( synceesWritten( KSync::Konnector * ) ) );
00055     connect( *it, SIGNAL( synceeWriteError( KSync::Konnector * ) ),
00056              SIGNAL( synceeWriteError( KSync::Konnector * ) ) );
00057   }
00058 }
00059 
00060 void KonnectorManager::readConfig( KConfig *config )
00061 {
00062   KRES::Manager<Konnector>::readConfig( config );
00063 
00064   ActiveIterator it;
00065   for ( it = activeBegin(); it != activeEnd(); ++it ) {
00066     (*it)->initDefaultFilters();
00067 
00068     Filter::List filters = (*it)->filters();
00069     Filter::List::Iterator filterIt;
00070     for ( filterIt = filters.begin(); filterIt != filters.end(); ++filterIt ) {
00071       KConfigGroupSaver saver( config, QString( "ResourceFilter_%1_%2" )
00072                               .arg( (*filterIt)->type() ).arg( (*it)->identifier() ) );
00073       (*filterIt)->load( config );
00074     }
00075   }
00076 }
00077 
00078 void KonnectorManager::writeConfig( KConfig *config )
00079 {
00080   KRES::Manager<Konnector>::writeConfig( config );
00081 
00082   ActiveIterator it;
00083   for ( it = activeBegin(); it != activeEnd(); ++it ) {
00084     const Filter::List filters = (*it)->filters();
00085     Filter::List::ConstIterator filterIt;
00086     for ( filterIt = filters.begin(); filterIt != filters.end(); ++filterIt ) {
00087       KConfigGroupSaver saver( config, QString( "ResourceFilter_%1_%2" )
00088                               .arg( (*filterIt)->type() ).arg( (*it)->identifier() ) );
00089       (*filterIt)->save( config );
00090     }
00091   }
00092 }
00093 
00094 void KonnectorManager::emitFinished()
00095 {
00096   emit syncFinished();
00097 }
00098 
00099 #include "konnectormanager.moc"
KDE Home | KDE Accessibility Home | Description of Access Keys