summaryrefslogtreecommitdiffabout
path: root/kabc/plugins
authorulf69 <ulf69>2004-08-02 18:32:08 (UTC)
committer ulf69 <ulf69>2004-08-02 18:32:08 (UTC)
commit863c4c3678e59ef125c08c00e9532ded5b540f67 (patch) (side-by-side diff)
tree449428c45689ffe10ff1ce4caa18f959c4dfe402 /kabc/plugins
parent983127ce46c9ff6663d08dedd450da3fe7dd549b (diff)
downloadkdepimpi-863c4c3678e59ef125c08c00e9532ded5b540f67.zip
kdepimpi-863c4c3678e59ef125c08c00e9532ded5b540f67.tar.gz
kdepimpi-863c4c3678e59ef125c08c00e9532ded5b540f67.tar.bz2
added support for syncprofiles for resources and export/import capabilities
Diffstat (limited to 'kabc/plugins') (more/less context) (ignore whitespace changes)
-rw-r--r--kabc/plugins/dir/dir.pro2
-rw-r--r--kabc/plugins/dir/dirE.pro2
-rw-r--r--kabc/plugins/dir/resourcedir.cpp35
-rw-r--r--kabc/plugins/dir/resourcedir.h6
-rw-r--r--kabc/plugins/file/file.pro2
-rw-r--r--kabc/plugins/file/fileE.pro2
-rw-r--r--kabc/plugins/file/resourcefile.cpp74
-rw-r--r--kabc/plugins/file/resourcefile.h8
-rw-r--r--kabc/plugins/ldap/ldapE.pro2
-rw-r--r--kabc/plugins/ldap/resourceldap.cpp7
-rw-r--r--kabc/plugins/ldap/resourceldap.h2
-rw-r--r--kabc/plugins/opie/opieE.pro2
-rw-r--r--kabc/plugins/opie/resourceopie.cpp302
-rw-r--r--kabc/plugins/opie/resourceopie.h40
-rw-r--r--kabc/plugins/qtopia/qtopiaE.pro2
-rw-r--r--kabc/plugins/qtopia/resourceqtopia.cpp182
-rw-r--r--kabc/plugins/qtopia/resourceqtopia.h35
-rw-r--r--kabc/plugins/sharpdtm/resourcesharpdtm.cpp35
-rw-r--r--kabc/plugins/sharpdtm/resourcesharpdtm.h32
-rw-r--r--kabc/plugins/sharpdtm/sharpdtmE.pro2
20 files changed, 419 insertions, 355 deletions
diff --git a/kabc/plugins/dir/dir.pro b/kabc/plugins/dir/dir.pro
index 0555484..a7c1503 100644
--- a/kabc/plugins/dir/dir.pro
+++ b/kabc/plugins/dir/dir.pro
@@ -4,5 +4,5 @@ CONFIG += qt warn_on release
TARGET = microkabc_dir
-INCLUDEPATH += ../.. ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../microkde/kio/kio ../../../qtcompat
+INCLUDEPATH += ../.. ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../microkde/kio/kio ../../../microkde/kresources ../../../qtcompat
DESTDIR = ../../../bin
#LIBS += -lmicrokde -lmicrokabc
diff --git a/kabc/plugins/dir/dirE.pro b/kabc/plugins/dir/dirE.pro
index 729f4ce..9066556 100644
--- a/kabc/plugins/dir/dirE.pro
+++ b/kabc/plugins/dir/dirE.pro
@@ -4,5 +4,5 @@ CONFIG += qt warn_on release
TARGET = microkabc_dir
-INCLUDEPATH += ../.. ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../microkde/kio/kio ../../../qtcompat
+INCLUDEPATH += ../.. ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../microkde/kio/kio ../../../microkde/kresources ../../../qtcompat
OBJECTS_DIR = obj/$(PLATFORM)
MOC_DIR = moc/$(PLATFORM)
diff --git a/kabc/plugins/dir/resourcedir.cpp b/kabc/plugins/dir/resourcedir.cpp
index 52863d5..d978e61 100644
--- a/kabc/plugins/dir/resourcedir.cpp
+++ b/kabc/plugins/dir/resourcedir.cpp
@@ -58,4 +58,5 @@ $Id$
#include "resourcedir.h"
+#include "syncwidget.h"
using namespace KABC;
@@ -63,5 +64,5 @@ using namespace KABC;
extern "C"
#ifdef _WIN32_
-__declspec(dllexport)
+__declspec(dllexport)
#else
{
@@ -71,5 +72,5 @@ __declspec(dllexport)
void *init_microkabc_dir()
{
- return new KRES::PluginFactory<ResourceDir,ResourceDirConfig>();
+ return new KRES::PluginFactory<ResourceDir,ResourceDirConfig, KRES::SyncWidget>();
}
#ifndef _WIN32_
@@ -77,6 +78,6 @@ __declspec(dllexport)
#endif
-ResourceDir::ResourceDir( const KConfig *config )
- : Resource( config )
+ResourceDir::ResourceDir( const KConfig *config, bool syncable )
+ : Resource( config, syncable )
{
QString path;
@@ -102,5 +103,5 @@ ResourceDir::ResourceDir( const KConfig *config )
}
-/*US
+/*US
//US qDebug("ResourceDir::ResourceDir initialized with format %s ", mFormatName.latin1());
if (mFormatName == "vcard")
@@ -111,5 +112,5 @@ ResourceDir::ResourceDir( const KConfig *config )
qDebug("ResourceFile::init format unknown !!! %s ", mFormatName.latin1());
*/
-
+
connect( &mDirWatch, SIGNAL( dirty(const QString&) ), SLOT( pathChanged() ) );
connect( &mDirWatch, SIGNAL( created(const QString&) ), SLOT( pathChanged() ) );
@@ -126,6 +127,6 @@ ResourceDir::~ResourceDir()
void ResourceDir::writeConfig( KConfig *config )
-{
- config->setGroup( "Resource_" + identifier() );
+{
+ config->setGroup( "Resource_" + identifier() );
Resource::writeConfig( config );
@@ -242,8 +243,8 @@ bool ResourceDir::lock( const QString &path )
//US p.replace( QRegExp("/"), "_" );
//US QString lockName = locateLocal( "data", "kabc/lock/" + p + ".lock" );
- KURL url(p);
+ KURL url(p);
QString lockName = locateLocal( "data", "kabc/lock/" + url.fileName() + ".lock" );
-
-
+
+
kdDebug(5700) << "-- lock name: " << lockName << endl;
@@ -253,8 +254,8 @@ bool ResourceDir::lock( const QString &path )
lockUniqueName = p + KApplication::randomString( 8 );
- url = lockUniqueName;
+ url = lockUniqueName;
//US mLockUniqueName = locateLocal( "data", "kabc/lock/" + lockUniqueName );
mLockUniqueName = locateLocal( "data", "kabc/lock/" + url.fileName() );
-
+
kdDebug(5700) << "-- lock unique name: " << mLockUniqueName << endl;
@@ -286,5 +287,5 @@ void ResourceDir::unlock( const QString &path )
//US p.replace( QRegExp( "/" ), "_" );
//US QString lockName = locate( "data", "kabc/lock/" + p + ".lock" );
- KURL url(p);
+ KURL url(p);
QString lockName = locate( "data", "kabc/lock/" + url.fileName() + ".lock" );
@@ -298,5 +299,5 @@ void ResourceDir::setPath( const QString &path )
mDirWatch.stopScan();
mDirWatch.removeDir( mPath );
-
+
mPath = path;
@@ -304,5 +305,5 @@ void ResourceDir::setPath( const QString &path )
mDirWatch.startScan();
-//US simulate KDirWatch event
+//US simulate KDirWatch event
//US pathChanged();
@@ -323,5 +324,5 @@ void ResourceDir::setFormat( const QString &format )
FormatFactory *factory = FormatFactory::self();
mFormat = factory->format( mFormatName );
-/*US
+/*US
qDebug("ResourceDir::setFormat initialized with format %s ", format.latin1());
if (mFormatName == "vcard")
diff --git a/kabc/plugins/dir/resourcedir.h b/kabc/plugins/dir/resourcedir.h
index 6e35695..c2aedad 100644
--- a/kabc/plugins/dir/resourcedir.h
+++ b/kabc/plugins/dir/resourcedir.h
@@ -50,5 +50,5 @@ class ResourceDir : public Resource
public:
- ResourceDir( const KConfig* );
+ ResourceDir( const KConfig*, bool syncable );
~ResourceDir();
@@ -57,5 +57,5 @@ public:
virtual bool doOpen();
virtual void doClose();
-
+
virtual Ticket *requestSaveTicket();
@@ -82,5 +82,5 @@ public:
*/
QString format() const;
-
+
/**
* Remove a addressee from its source.
diff --git a/kabc/plugins/file/file.pro b/kabc/plugins/file/file.pro
index 32555a2..154ef2a 100644
--- a/kabc/plugins/file/file.pro
+++ b/kabc/plugins/file/file.pro
@@ -4,5 +4,5 @@ CONFIG += qt warn_on release
TARGET = microkabc_file
-INCLUDEPATH += ../.. ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../microkde/kio/kio ../../../qtcompat
+INCLUDEPATH += ../.. ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../microkde/kio/kio ../../../microkde/kresources ../../../qtcompat
DESTDIR = ../../../bin
diff --git a/kabc/plugins/file/fileE.pro b/kabc/plugins/file/fileE.pro
index d19a26d..3015806 100644
--- a/kabc/plugins/file/fileE.pro
+++ b/kabc/plugins/file/fileE.pro
@@ -4,5 +4,5 @@ CONFIG += qt warn_on release
TARGET = microkabc_file
-INCLUDEPATH += ../.. ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../microkde/kio/kio ../../../qtcompat
+INCLUDEPATH += ../.. ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../microkde/kio/kio ../../../microkde/kresources ../../../qtcompat
OBJECTS_DIR = obj/$(PLATFORM)
MOC_DIR = moc/$(PLATFORM)
diff --git a/kabc/plugins/file/resourcefile.cpp b/kabc/plugins/file/resourcefile.cpp
index 1d3acec..361b36b 100644
--- a/kabc/plugins/file/resourcefile.cpp
+++ b/kabc/plugins/file/resourcefile.cpp
@@ -52,4 +52,6 @@ $Id$
#include "resourcefile.h"
+#include "syncwidget.h"
+
using namespace KABC;
@@ -57,5 +59,5 @@ using namespace KABC;
extern "C"
#ifdef _WIN32_
-__declspec(dllexport)
+__declspec(dllexport)
#else
{
@@ -65,5 +67,5 @@ __declspec(dllexport)
void *init_microkabc_file()
{
- return new KRES::PluginFactory<ResourceFile,ResourceFileConfig>();
+ return new KRES::PluginFactory<ResourceFile,ResourceFileConfig, KRES::SyncWidget>();
}
#ifndef _WIN32_
@@ -71,6 +73,6 @@ __declspec(dllexport)
#endif
-ResourceFile::ResourceFile( const KConfig *config )
- : Resource( config ) , mFormat( 0 )
+ResourceFile::ResourceFile( const KConfig *config, bool syncable )
+ : Resource( config, syncable ) , mFormat( 0 )
{
QString fileName, formatName;
@@ -90,7 +92,7 @@ ResourceFile::ResourceFile( const KConfig *config )
}
-ResourceFile::ResourceFile( const QString &fileName,
+ResourceFile::ResourceFile( const QString &fileName, bool syncable ,
const QString &formatName )
- : Resource( 0 )
+ : Resource( 0, syncable )
{
// qDebug("ResourceFile::ResourceFile : 3 %s, %s", fileName.latin1(), formatName.latin1());
@@ -140,12 +142,12 @@ void ResourceFile::writeConfig( KConfig *config )
{
- config->setGroup( "Resource_" + identifier() );
+ config->setGroup( "Resource_" + identifier() );
Resource::writeConfig( config );
config->writeEntry( "FileName", mFileName );
config->writeEntry( "FileFormat", mFormatName );
-
+
// qDebug("ResourceFile::writeConfig format %s, %s", mFileName.latin1(), mFormatName.latin1());
-
+
}
@@ -198,5 +200,5 @@ void ResourceFile::doClose()
bool ResourceFile::load()
{
-
+
QFile file( mFileName );
@@ -207,5 +209,5 @@ bool ResourceFile::load()
// qDebug("ResourceFile::load format %s, %s", mFileName.latin1(), mFormatName.latin1());
-
+
return mFormat->loadAll( addressBook(), this, &file );
}
@@ -214,11 +216,11 @@ bool ResourceFile::save( Ticket *ticket )
{
// qDebug("ResourceFile::save format %s, %s", mFileName.latin1(), mFormatName.latin1());
-
+
// create backup file
QString extension = "_" + QString::number( QDate::currentDate().dayOfWeek() );
-
+
/*US we use a simpler method to create a backupfile
-
+
(void) KSaveFile::backupFile( mFileName, QString::null
,extension );
@@ -233,5 +235,5 @@ bool ResourceFile::save( Ticket *ticket )
*/
-//US ToDo: write backupfile
+//US ToDo: write backupfile
QFile info;
info.setName( mFileName );
@@ -239,18 +241,18 @@ bool ResourceFile::save( Ticket *ticket )
if ( ok ) {
mFormat->saveAll( addressBook(), this, &info );
-
+
info.close();
ok = true;
}
else {
-
+
}
-
+
if ( !ok )
addressBook()->error( i18n( "Unable to save file '%1'." ).arg( mFileName ) );
-
+
delete ticket;
unlock( mFileName );
-
+
return ok;
@@ -261,5 +263,5 @@ bool ResourceFile::save( Ticket *ticket )
bool ResourceFile::lock( const QString &fileName )
{
-
+
QString fn = fileName;
@@ -268,9 +270,9 @@ bool ResourceFile::lock( const QString &fileName )
//US fn.replace( QRegExp("/"), "_" );
//US QString lockName = locateLocal( "data", "kabc/lock/" + fn + ".lock" );
-
- KURL url(fn);
+
+ KURL url(fn);
QString lockName = locateLocal( "data", "kabc/lock/" + url.fileName() + ".lock" );
-
-
+
+
if (QFile::exists( lockName )) return false;
@@ -278,6 +280,6 @@ bool ResourceFile::lock( const QString &fileName )
QString lockUniqueName;
lockUniqueName = fn + KApplication::randomString( 8 );
-
- url = lockUniqueName;
+
+ url = lockUniqueName;
//US mLockUniqueName = locateLocal( "data", "kabc/lock/" + lockUniqueName );
mLockUniqueName = locateLocal( "data", "kabc/lock/" + url.fileName() );
@@ -312,7 +314,7 @@ void ResourceFile::unlock( const QString &fileName )
//US QString lockName = locateLocal( "data", "kabc/lock/" + fn + ".lock" );
//US QString lockName = fn + ".lock";
- KURL url(fn);
+ KURL url(fn);
QString lockName = locateLocal( "data", "kabc/lock/" + url.fileName() + ".lock" );
-
+
QFile::remove( lockName );
QFile::remove( mLockUniqueName );
@@ -324,12 +326,12 @@ void ResourceFile::setFileName( const QString &fileName )
mDirWatch.stopScan();
mDirWatch.removeFile( mFileName );
-
+
mFileName = fileName;
-
+
mDirWatch.addFile( mFileName );
mDirWatch.startScan();
-//US simulate KDirWatch event
+//US simulate KDirWatch event
//US fileChanged();
}
@@ -347,5 +349,5 @@ void ResourceFile::setFormat( const QString &format )
FormatFactory *factory = FormatFactory::self();
mFormat = factory->format( mFormatName );
-/*US
+/*US
//qDebug("ResourceFile::setFormat initialized with format %s ", format.latin1());
if (mFormatName == "vcard") {
@@ -360,5 +362,5 @@ void ResourceFile::setFormat( const QString &format )
qDebug("ResourceFile::setFormat format unknown !!! %s ", format.latin1());
*/
-
+
}
@@ -374,6 +376,6 @@ void ResourceFile::fileChanged()
if (!addressBook())
return;
-
-
+
+
QString text( i18n( "File resource '%1'<br> has been changed by third party.<br>Do you want to reload?").arg( mFileName ) );
if ( readOnly() || KMessageBox::questionYesNo( 0, text ) == KMessageBox::Yes ) {
diff --git a/kabc/plugins/file/resourcefile.h b/kabc/plugins/file/resourcefile.h
index 4522d78..0a3027c 100644
--- a/kabc/plugins/file/resourcefile.h
+++ b/kabc/plugins/file/resourcefile.h
@@ -59,10 +59,10 @@ public:
@param cfg The config object where custom resource settings are stored.
*/
- ResourceFile( const KConfig *cfg );
+ ResourceFile( const KConfig *cfg, bool syncable );
/**
Construct file resource on file @arg fileName using format @arg formatName.
*/
- ResourceFile( const QString &fileName, const QString &formatName = "vcard" );
+ ResourceFile( const QString &fileName, bool syncable , const QString &formatName = "vcard" );
/**
@@ -86,5 +86,5 @@ public:
*/
virtual void doClose();
-
+
/**
* Requests a save ticket, that is used by @ref save()
@@ -154,5 +154,5 @@ private:
QString mLockUniqueName;
-
+
KDirWatch mDirWatch;
};
diff --git a/kabc/plugins/ldap/ldapE.pro b/kabc/plugins/ldap/ldapE.pro
index f6ca586..2e79fc0 100644
--- a/kabc/plugins/ldap/ldapE.pro
+++ b/kabc/plugins/ldap/ldapE.pro
@@ -4,5 +4,5 @@ CONFIG += qt warn_on release
TARGET = microkabc_ldap
-INCLUDEPATH += ../.. ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../qtcompat $(QPEDIR)/include
+INCLUDEPATH += ../.. ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../microkde/kresources ../../../qtcompat $(QPEDIR)/include
OBJECTS_DIR = obj/$(PLATFORM)
MOC_DIR = moc/$(PLATFORM)
diff --git a/kabc/plugins/ldap/resourceldap.cpp b/kabc/plugins/ldap/resourceldap.cpp
index 55c43af..4b9dede 100644
--- a/kabc/plugins/ldap/resourceldap.cpp
+++ b/kabc/plugins/ldap/resourceldap.cpp
@@ -37,4 +37,5 @@ $Id$
#include "resourceldap.h"
#include "resourceldapconfig.h"
+#include "syncwidget.h"
using namespace KABC;
@@ -45,5 +46,5 @@ extern "C"
void *init_microkabc_ldap()
{
- return new KRES::PluginFactory<ResourceLDAP,ResourceLDAPConfig>();
+ return new KRES::PluginFactory<ResourceLDAP,ResourceLDAPConfig, KRES::SyncWidget>();
}
}
@@ -52,6 +53,6 @@ void addModOp( LDAPMod ***pmods, const QString &attr, const QString &value );
-ResourceLDAP::ResourceLDAP( const KConfig *config )
- : Resource( config ), mPort( 389 ), mLdap( 0 )
+ResourceLDAP::ResourceLDAP( const KConfig *config, bool syncable )
+ : Resource( config, syncable ), mPort( 389 ), mLdap( 0 )
{
KConfig *cfg = (KConfig *)config;
diff --git a/kabc/plugins/ldap/resourceldap.h b/kabc/plugins/ldap/resourceldap.h
index 0625f30..0aad3c1 100644
--- a/kabc/plugins/ldap/resourceldap.h
+++ b/kabc/plugins/ldap/resourceldap.h
@@ -44,5 +44,5 @@ class ResourceLDAP : public Resource
public:
- ResourceLDAP( const KConfig* );
+ ResourceLDAP( const KConfig*, bool syncable );
virtual void writeConfig( KConfig* );
diff --git a/kabc/plugins/opie/opieE.pro b/kabc/plugins/opie/opieE.pro
index 8d45c3d..912e596 100644
--- a/kabc/plugins/opie/opieE.pro
+++ b/kabc/plugins/opie/opieE.pro
@@ -4,5 +4,5 @@ CONFIG += qt warn_on
TARGET = microkabc_opie
-INCLUDEPATH += ../.. ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../microkde/kio/kio ../../../qtcompat $(QPEDIR)/include $(OPIEDIR)/include
+INCLUDEPATH += ../.. ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../microkde/kio/kio ../../../microkde/kresources ../../../qtcompat $(QPEDIR)/include $(OPIEDIR)/include
diff --git a/kabc/plugins/opie/resourceopie.cpp b/kabc/plugins/opie/resourceopie.cpp
index aaee801..1222242 100644
--- a/kabc/plugins/opie/resourceopie.cpp
+++ b/kabc/plugins/opie/resourceopie.cpp
@@ -51,4 +51,5 @@ $Id$
#include "resourceopieconfig.h"
#include "stdaddressbook.h"
+#include "syncwidget.h"
#include "opieconverter.h"
@@ -61,10 +62,10 @@ extern "C"
void *init_microkabc_opie()
{
- return new KRES::PluginFactory<ResourceOpie,ResourceOpieConfig>();
+ return new KRES::PluginFactory<ResourceOpie,ResourceOpieConfig, KRES::SyncWidget>();
}
}
-ResourceOpie::ResourceOpie( const KConfig *config )
- : Resource( config ), mConverter (0)
+ResourceOpie::ResourceOpie( const KConfig *config, bool syncable )
+ : Resource( config, syncable ), mAccess(0), mConverter (0)
{
QString fileName = QDir::homeDirPath() + "/Applications/addressbook/addressbook.xml";
@@ -73,14 +74,14 @@ ResourceOpie::ResourceOpie( const KConfig *config )
if ( cfg ) {
fileName = cfg->readEntry( "FileName", fileName );
-
+
}
// qDebug("ResourceOpie::ResourceOpie : %s", fileName.latin1() );
-
+
init( fileName );
}
-ResourceOpie::ResourceOpie( const QString &fileName )
- : Resource( 0 )
+ResourceOpie::ResourceOpie( const QString &fileName, bool syncable )
+ : Resource( 0, syncable )
{
// qDebug("ResourceOpie::ResourceOpie : 3 %s", fileName.latin1());
@@ -94,8 +95,8 @@ void ResourceOpie::init( const QString &fileName )
connect( &mDirWatch, SIGNAL( created(const QString&) ), SLOT( fileChanged() ) );
connect( &mDirWatch, SIGNAL( deleted(const QString&) ), SLOT( fileChanged() ) );
-
+
setFileName( fileName );
-
+
}
@@ -104,4 +105,8 @@ ResourceOpie::~ResourceOpie()
if (mConverter != 0)
delete mConverter;
+
+ if(mAccess != 0)
+ delete mAccess;
+
}
@@ -110,8 +115,5 @@ void ResourceOpie::writeConfig( KConfig *config )
Resource::writeConfig( config );
- config->writeEntry( "FileName", mFileName );
-
-// qDebug("ResourceFile::writeConfig format %s, %s", mFileName.latin1(), mFormatName.latin1());
-
+ config->writeEntry( "FileName", fileName() );
}
@@ -120,9 +122,11 @@ Ticket *ResourceOpie::requestSaveTicket()
kdDebug(5700) << "ResourceOpie::requestSaveTicket()" << endl;
+ qDebug("ResourceOpie::requestSaveTicket: %s", fileName().latin1());
+
if ( !addressBook() ) return 0;
- if ( !lock( mFileName ) ) {
+ if ( !lock( fileName() ) ) {
kdDebug(5700) << "ResourceOpie::requestSaveTicket(): Unable to lock file '"
- << mFileName << "'" << endl;
+ << fileName() << "'" << endl;
return 0;
}
@@ -133,69 +137,26 @@ Ticket *ResourceOpie::requestSaveTicket()
bool ResourceOpie::doOpen()
{
-// qDebug("ResourceOpie::doOpen() %s", mFileName.latin1());
-/*US
- QFile file( mFileName );
-
- if ( !file.exists() ) {
- // try to create the file
- bool ok = file.open( IO_WriteOnly );
- if ( ok )
- file.close();
-
- return ok;
- } else {
- if ( !file.open( IO_ReadWrite ) )
- return false;
-
- if ( file.size() == 0 ) {
- file.close();
- return true;
- }
+ qDebug("ResourceOpie::doOpen: %s", fileName().latin1());
-//US bool ok = mFormat->checkFormat( &file );
- bool ok = true;
-
- file.close();
+ OContactAccessBackend_XML* backend = new OContactAccessBackend_XML( "KDEPim/Pi", fileName() );
+ mAccess = new OContactAccess("KDEPim/Pi", 0l, backend, false);
- return ok;
+ if ( !mAccess ) {
+ qDebug("Unable to load file() %s", fileName().latin1());
+ return false;
}
-*/
- qDebug("ResourceOpie::doOpen() has to be fixed - %s", mFileName.latin1());
- return true;
-}
-void ResourceOpie::doClose()
-{
-// qDebug("ResourceOpie::doClose() %s", mFileName.latin1());
-}
+ mAccess->setReadAhead( 32 ); // Use ReadAhead-Cache if available
-bool ResourceOpie::load()
-{
-// qDebug("ResourceOpie::load() %s", mFileName.latin1());
- kdDebug(5700) << "ResourceOpie::load(): '" << mFileName << "'" << endl;
-
- qDebug("ResourceOpie::load: Try to load file() %s", mFileName.latin1());
-
- OContactAccessBackend_XML* backend = new OContactAccessBackend_XML( "KDEPim/Pi", mFileName );
- OContactAccess* access = new OContactAccess("KDEPim/Pi", 0l, backend, false);
-
- if ( !access ) {
- qDebug("Unable to load file() %s", mFileName.latin1());
- addressBook()->error( i18n( "Unable to load file '%1'." ).arg( mFileName ) );
- return false;
- }
-
- access -> setReadAhead( 32 ); // Use ReadAhead-Cache if available
- bool res = false;
if (mConverter == 0)
{
mConverter = new OpieConverter();
- res = mConverter->init();
+ bool res = mConverter->init();
if ( !res )
{
qDebug("Unable to initialize opie converter. Most likely a problem with the category file");
- addressBook()->error( i18n( "Unable to initialize opie converter. Most likely a problem with the category file" ) );
- delete access;
+ delete mAccess;
+ mAccess = 0;
return false;
}
@@ -203,14 +164,41 @@ bool ResourceOpie::load()
- OContactAccess::List::Iterator it;
- OContactAccess::List allList = access->allRecords();
+
+ return true;
+}
+
+void ResourceOpie::doClose()
+{
+ qDebug("ResourceOpie::doClose: %s", fileName().latin1());
+
+ if(mAccess)
+ {
+ delete mAccess;
+ mAccess = 0;
+ }
+ // it seems so, that deletion of access deletes backend as well
+ //delete backend;
+
+ return;
+
+}
+
+
+bool ResourceOpie::load()
+{
+ qDebug("ResourceOpie::load: %s", fileName().latin1());
+
+ bool res = false;
+
+ OContactAccess::List::Iterator it;
+ OContactAccess::List allList = mAccess->allRecords();
for ( it = allList.begin(); it != allList.end(); ++it )
{
const OContact c = (*it);
-
+
KABC::Addressee addressee;
-
- res = mConverter->opieToAddressee( c, addressee );
-
+
+ res = mConverter->opieToAddressee( c, addressee );
+
if ( !addressee.isEmpty() && res )
{
@@ -218,12 +206,8 @@ bool ResourceOpie::load()
addressBook()->insertAddressee( addressee );
}
-
-// qDebug("found %s", c.fullName().latin1());
+
}
-
- delete access;
- // it seems so, that deletion of access deletes backend as well
- //delete backend;
-
+
+
return true;
}
@@ -231,69 +215,54 @@ bool ResourceOpie::load()
bool ResourceOpie::save( Ticket *ticket )
{
- qDebug("ResourceOpie::save() has to be fixed - %s", mFileName.latin1());
-/*US
-
- qDebug("ResourceOpie::save %s", mFileName.latin1());
- kdDebug(5700) << "ResourceOpie::save()" << endl;
-
- // create backup file
- QString extension = "_" + QString::number( QDate::currentDate().dayOfWeek() );
-*/
-/*US we use a simpler method to create a backupfile
-
- (void) KSaveFile::backupFile( mFileName, QString::null
- ,extension );
-
- KSaveFile saveFile( mFileName );
- bool ok = false;
- if ( saveFile.status() == 0 && saveFile.file() )
- {
- mFormat->saveAll( addressBook(), this, saveFile.file() );
- ok = saveFile.close();
- }
-*/
-/*US
-//US ToDo: write backupfile
- QFile info;
- info.setName( mFileName );
- bool ok = info.open( IO_WriteOnly );
- if ( ok ) {
-//US mFormat->saveAll( addressBook(), this, &info );
-
- info.close();
- ok = true;
- }
- else {
-
+ qDebug("ResourceOpie::save: %s", fileName().latin1());
+
+
+
+ KABC::AddressBook::Iterator it;
+ bool res;
+
+ for ( it = addressBook()->begin(); it != addressBook()->end(); ++it ) {
+ OContact c;
+ KABC::Addressee addressee = (*it);
+
+ res = mConverter->addresseeToOpie( *it, c );
+ if (res == true)
+ {
+ res = mAccess->add(c);
+ if (res == false)
+ qDebug("Unable to append Contact %s", c.fullName().latin1());
+ }
+ else
+ {
+ qDebug("Unable to convert Addressee %s", addressee.formattedName().latin1());
+ }
}
-
- if ( !ok )
- addressBook()->error( i18n( "Unable to save file '%1'." ).arg( mFileName ) );
-
+
+ mAccess->save();
+
delete ticket;
- unlock( mFileName );
-
- return ok;
+ unlock( fileName() );
- qDebug("ResourceOpie::save has to be changed");
-*/
return true;
-
+
}
-bool ResourceOpie::lock( const QString &fileName )
+bool ResourceOpie::lock( const QString &lockfileName )
{
+ qDebug("ResourceOpie::lock: %s", fileName().latin1());
+
+
// qDebug("ResourceOpie::lock() %s", fileName.latin1());
kdDebug(5700) << "ResourceOpie::lock()" << endl;
- QString fn = fileName;
+ QString fn = lockfileName;
//US change the implementation how the lockfilename is getting created
//US fn.replace( QRegExp("/"), "_" );
//US QString lockName = locateLocal( "data", "kabc/lock/" + fn + ".lock" );
-
- KURL url(fn);
+
+ KURL url(fn);
QString lockName = locateLocal( "data", "kabc/lock/" + url.fileName() + ".lock" );
-
+
kdDebug(5700) << "-- lock name: " << lockName << endl;
@@ -302,6 +271,6 @@ bool ResourceOpie::lock( const QString &fileName )
QString lockUniqueName;
lockUniqueName = fn + KApplication::randomString( 8 );
-
- url = lockUniqueName;
+
+ url = lockUniqueName;
//US mLockUniqueName = locateLocal( "data", "kabc/lock/" + lockUniqueName );
mLockUniqueName = locateLocal( "data", "kabc/lock/" + url.fileName() );
@@ -331,6 +300,6 @@ bool ResourceOpie::lock( const QString &fileName )
void ResourceOpie::unlock( const QString &fileName )
{
-// qDebug("ResourceOpie::unlock() %s", fileName.latin1());
-
+ qDebug("ResourceOpie::unlock() %s", fileName.latin1());
+
QString fn = fileName;
//US change the implementation how the lockfilename is getting created
@@ -338,7 +307,7 @@ void ResourceOpie::unlock( const QString &fileName )
//US QString lockName = locateLocal( "data", "kabc/lock/" + fn + ".lock" );
//US QString lockName = fn + ".lock";
- KURL url(fn);
+ KURL url(fn);
QString lockName = locateLocal( "data", "kabc/lock/" + url.fileName() + ".lock" );
-
+
QFile::remove( lockName );
QFile::remove( mLockUniqueName );
@@ -346,22 +315,16 @@ void ResourceOpie::unlock( const QString &fileName )
}
-void ResourceOpie::setFileName( const QString &fileName )
+void ResourceOpie::setFileName( const QString &newFileName )
{
mDirWatch.stopScan();
- mDirWatch.removeFile( mFileName );
-
- mFileName = fileName;
-
- mDirWatch.addFile( mFileName );
+ mDirWatch.removeFile( fileName() );
+
+ Resource::setFileName( newFileName );
+
+ mDirWatch.addFile( fileName() );
mDirWatch.startScan();
-//US simulate KDirWatch event
-//US fileChanged();
}
-QString ResourceOpie::fileName() const
-{
- return mFileName;
-}
void ResourceOpie::fileChanged()
@@ -371,11 +334,11 @@ void ResourceOpie::fileChanged()
if (!addressBook())
return;
-
- QString text( i18n( "Opie resource '%1'<br> has been changed by third party.<br>Do you want to reload?").arg( mFileName ) );
+
+ QString text( i18n( "Opie resource '%1'<br> has been changed by third party.<br>Do you want to reload?").arg( fileName() ) );
if ( readOnly() || KMessageBox::questionYesNo( 0, text ) == KMessageBox::Yes ) {
load();
addressBook()->emitAddressBookChanged();
}
-
+
load();
addressBook()->emitAddressBookChanged();
@@ -390,6 +353,39 @@ void ResourceOpie::cleanUp()
// qDebug("ResourceOpie::cleanup() %s", mFileName.latin1());
- unlock( mFileName );
+ unlock( fileName() );
+}
+
+
+/**
+ * This method returns the number of elements that are currently in the resource.
+ */
+int ResourceOpie::count() const
+{
+ qDebug("ResourceOpie::count: %x", mAccess);
+
+ if (mAccess != 0)
+ {
+ OContactAccess::List contactList = mAccess->allRecords();
+ return contactList.count();
+ }
+ else
+ return 0;
+}
+
+
+/**
+ * This method removes all elements from the resource!! (Not from the addressbook)
+ */
+bool ResourceOpie::clear()
+{
+ if (mAccess != 0) {
+ mAccess->clear();
+ return true;
+ }
+ else
+ return false;
}
+
+
//US #include "resourceopie.moc"
diff --git a/kabc/plugins/opie/resourceopie.h b/kabc/plugins/opie/resourceopie.h
index 9db9485..ca30fee 100644
--- a/kabc/plugins/opie/resourceopie.h
+++ b/kabc/plugins/opie/resourceopie.h
@@ -38,10 +38,8 @@ $Id$
-//class QTimer;
-//class FormatPlugin;
+class OContactAccess;
namespace KABC {
-//US class FormatPlugin;
class ResourceConfigWidget;
class OpieConverter;
@@ -60,10 +58,10 @@ public:
@param cfg The config object where custom resource settings are stored.
*/
- ResourceOpie( const KConfig *cfg );
+ ResourceOpie( const KConfig *cfg, bool syncable );
/**
Construct file resource on file @arg fileName using format @arg formatName.
*/
- ResourceOpie( const QString &fileName );
+ ResourceOpie( const QString &fileName, bool syncable );
/**
@@ -87,5 +85,5 @@ public:
*/
virtual void doClose();
-
+
/**
* Requests a save ticket, that is used by @ref save()
@@ -107,13 +105,4 @@ public:
virtual bool save( Ticket *ticket );
- /**
- * Set name of file to be used for saving.
- */
- void setFileName( const QString & );
-
- /**
- * Return name of file used for loading and saving the address book.
- */
- QString fileName() const;
/**
@@ -124,4 +113,9 @@ public:
/**
+ * Set name of file to be used for saving.
+ */
+ virtual void setFileName( const QString & );
+
+ /**
* This method is called by an error handler if the application
* crashed
@@ -129,4 +123,15 @@ public:
virtual void cleanUp();
+ /**
+ * This method returns the number of elements that are currently in the resource.
+ */
+ virtual int count() const;
+
+ /**
+ * This method removes all elements from the resource!! (Not from the addressbook)
+ */
+ virtual bool clear();
+
+
protected slots:
void fileChanged();
@@ -139,10 +144,9 @@ protected:
private:
+ OContactAccess* mAccess;
OpieConverter* mConverter;
-
- QString mFileName;
QString mLockUniqueName;
-
+
KDirWatch mDirWatch;
};
diff --git a/kabc/plugins/qtopia/qtopiaE.pro b/kabc/plugins/qtopia/qtopiaE.pro
index 56eae87..d956519 100644
--- a/kabc/plugins/qtopia/qtopiaE.pro
+++ b/kabc/plugins/qtopia/qtopiaE.pro
@@ -4,5 +4,5 @@ CONFIG += qt warn_on
TARGET = microkabc_qtopia
-INCLUDEPATH += ../.. ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../microkde/kio/kio ../../../qtcompat $(QPEDIR)/include
+INCLUDEPATH += ../.. ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../microkde/kio/kio ../../../microkde/kresources ../../../qtcompat $(QPEDIR)/include
OBJECTS_DIR = obj/$(PLATFORM)
diff --git a/kabc/plugins/qtopia/resourceqtopia.cpp b/kabc/plugins/qtopia/resourceqtopia.cpp
index 7e10e46..dc88272 100644
--- a/kabc/plugins/qtopia/resourceqtopia.cpp
+++ b/kabc/plugins/qtopia/resourceqtopia.cpp
@@ -50,4 +50,5 @@ $Id$
#include "qtopiaconverter.h"
+#include "syncwidget.h"
#include "resourceqtopia.h"
@@ -58,10 +59,10 @@ extern "C"
void *init_microkabc_qtopia()
{
- return new KRES::PluginFactory<ResourceQtopia,ResourceQtopiaConfig>();
+ return new KRES::PluginFactory<ResourceQtopia,ResourceQtopiaConfig, KRES::SyncWidget>();
}
}
-ResourceQtopia::ResourceQtopia( const KConfig *config )
- : Resource( config ), mConverter (0)
+ResourceQtopia::ResourceQtopia( const KConfig *config, bool syncable )
+ : Resource( config, syncable ), mConverter (0)
{
// we can not choose the filename. Therefore use the default to display
@@ -71,6 +72,6 @@ ResourceQtopia::ResourceQtopia( const KConfig *config )
}
-ResourceQtopia::ResourceQtopia( const QString &fileName )
- : Resource( 0 )
+ResourceQtopia::ResourceQtopia( const QString &fileName, bool syncable )
+ : Resource( 0, syncable )
{
// qDebug("ResourceFile::ResourceFile : 3 %s, %s", fileName.latin1(), formatName.latin1());
@@ -93,4 +94,6 @@ ResourceQtopia::~ResourceQtopia()
delete mConverter;
+ if(mAccess != 0)
+ delete mAccess;
}
@@ -106,7 +109,7 @@ Ticket *ResourceQtopia::requestSaveTicket()
if ( !addressBook() ) return 0;
- if ( !lock( mFileName ) ) {
+ if ( !lock( fileName() ) ) {
kdDebug(5700) << "ResourceQtopia::requestSaveTicket(): Unable to lock file '"
- << mFileName << "'" << endl;
+ << fileName() << "'" << endl;
return 0;
}
@@ -117,49 +120,10 @@ Ticket *ResourceQtopia::requestSaveTicket()
bool ResourceQtopia::doOpen()
{
-/*US
- QFile file( mFileName );
-
- if ( !file.exists() ) {
- // try to create the file
- bool ok = file.open( IO_WriteOnly );
- if ( ok )
- file.close();
-
- return ok;
- } else {
- if ( !file.open( IO_ReadWrite ) )
- return false;
-
- if ( file.size() == 0 ) {
- file.close();
- return true;
- }
-
-//US bool ok = mFormat->checkFormat( &file );
- bool ok = true;
-
- file.close();
-
- return ok;
- }
-*/
- return true;
-}
-
-void ResourceQtopia::doClose()
-{
-}
+ qDebug("ResourceQtopia::doOpen(): %s", fileName().latin1());
-bool ResourceQtopia::load()
-{
- kdDebug(5700) << "ResourceQtopia::load(): '" << mFileName << "'" << endl;
-
-// qDebug("ResourceQtopia::load: Try to load file() %s", mFileName.latin1());
+ mAccess = new AddressBookAccess();
- AddressBookAccess* access = new AddressBookAccess();
-
- if ( !access ) {
- qDebug("Unable to load file() %s", mFileName.latin1());
- addressBook()->error( i18n( "Unable to load file '%1'." ).arg( mFileName ) );
+ if ( !mAccess ) {
+ qDebug("Unable to load file() %s", fileName().latin1());
return false;
}
@@ -174,30 +138,51 @@ bool ResourceQtopia::load()
QString msg("Unable to initialize qtopia converter. Most likely a problem with the category file");
qDebug(msg);
- addressBook()->error( i18n( msg ) );
- delete access;
+ delete mAccess;
+ mAccess = 0;
return false;
}
}
- { //create a new scope
- AddressBookIterator it(*access);
- const PimContact* contact;
+ return true;
+}
- for (contact=it.toFirst(); it.current(); ++it) {
- contact = it.current();
+void ResourceQtopia::doClose()
+{
+ qDebug("ResourceQtopia::doClose: %s", fileName().latin1());
- KABC::Addressee addressee;
+ if(mAccess)
+ {
+ delete mAccess;
+ mAccess = 0;
+ }
+ // it seems so, that deletion of access deletes backend as well
+ //delete backend;
+
+ return;
+}
+
+bool ResourceQtopia::load()
+{
+ qDebug("ResourceQtopia::load: %s", fileName().latin1());
- res = mConverter->qtopiaToAddressee( (*contact), addressee );
+ AddressBookIterator it(*mAccess);
+ const PimContact* contact;
+ bool res;
+
+ for (contact=it.toFirst(); it.current(); ++it)
+ {
+ contact = it.current();
- if ( !addressee.isEmpty() && res )
- {
- addressee.setResource( this );
- addressBook()->insertAddressee( addressee );
- }
+ KABC::Addressee addressee;
+
+ res = mConverter->qtopiaToAddressee( (*contact), addressee );
+
+ if ( !addressee.isEmpty() && res )
+ {
+ addressee.setResource( this );
+ addressBook()->insertAddressee( addressee );
}
}
- delete access;
return true;
}
@@ -250,5 +235,10 @@ bool ResourceQtopia::save( Ticket *ticket )
qDebug("ResourceQtopia::save has to be changed");
+
+
+ access->save();
+
*/
+
return true;
}
@@ -313,22 +303,15 @@ void ResourceQtopia::unlock( const QString &fileName )
}
-void ResourceQtopia::setFileName( const QString &fileName )
+void ResourceQtopia::setFileName( const QString &newFileName )
{
mDirWatch.stopScan();
- mDirWatch.removeFile( mFileName );
+ mDirWatch.removeFile( fileName() );
- mFileName = fileName;
+ Resource::setFileName( newFileName );
- mDirWatch.addFile( mFileName );
+ mDirWatch.addFile( fileName() );
mDirWatch.startScan();
-
-//US simulate KDirWatch event
-//US fileChanged();
}
-QString ResourceQtopia::fileName() const
-{
- return mFileName;
-}
void ResourceQtopia::fileChanged()
@@ -339,5 +322,5 @@ void ResourceQtopia::fileChanged()
return;
- QString text( i18n( "Qtopia resource '%1'<br> has been changed by third party.<br>Do you want to reload?").arg( mFileName ) );
+ QString text( i18n( "Qtopia resource '%1'<br> has been changed by third party.<br>Do you want to reload?").arg( fileName() ) );
if ( readOnly() || KMessageBox::questionYesNo( 0, text ) == KMessageBox::Yes ) {
load();
@@ -352,6 +335,49 @@ void ResourceQtopia::removeAddressee( const Addressee &addr )
void ResourceQtopia::cleanUp()
{
- unlock( mFileName );
+ unlock( fileName() );
}
+
+
+/**
+ * This method returns the number of elements that are currently in the resource.
+ */
+int ResourceQtopia::count() const
+{
+ if (mAccess != 0)
+ {
+ int counter = 0;
+ AddressBookIterator it2(*mAccess);
+ for (it2.toFirst(); it2.current(); ++it2) {
+ counter++;
+ }
+
+ return counter;
+ }
+ else
+ return 0;
+}
+
+
+/**
+ * This method removes all elements from the resource!! (Not from the addressbook)
+ */
+bool ResourceQtopia::clear()
+{
+ if (mAccess != 0)
+ {
+ AddressBookIterator it2(*mAccess);
+ for (it2.toFirst(); it2.current(); ++it2) {
+ mAccess->removeContact(*it2.current());
+ }
+ return true;
+ }
+ else
+ return false;
+}
+
+
+
+
+
//US #include "resourceqtopia.moc"
diff --git a/kabc/plugins/qtopia/resourceqtopia.h b/kabc/plugins/qtopia/resourceqtopia.h
index bf9dd45..90ab1f4 100644
--- a/kabc/plugins/qtopia/resourceqtopia.h
+++ b/kabc/plugins/qtopia/resourceqtopia.h
@@ -37,4 +37,5 @@ $Id$
#include "resource.h"
+class AddressBookAccess;
namespace KABC {
@@ -58,10 +59,10 @@ public:
@param cfg The config object where custom resource settings are stored.
*/
- ResourceQtopia( const KConfig *cfg );
+ ResourceQtopia( const KConfig *cfg, bool syncable );
/**
Construct file resource on file @arg fileName using format @arg formatName.
*/
- ResourceQtopia( const QString &fileName );
+ ResourceQtopia( const QString &fileName, bool syncable );
/**
@@ -85,5 +86,5 @@ public:
*/
virtual void doClose();
-
+
/**
* Requests a save ticket, that is used by @ref save()
@@ -106,24 +107,29 @@ public:
/**
+ * Remove a addressee from its source.
+ * This method is mainly called by KABC::AddressBook.
+ */
+ virtual void removeAddressee( const Addressee& addr );
+
+ /**
* Set name of file to be used for saving.
*/
- void setFileName( const QString & );
+ virtual void setFileName( const QString & );
/**
- * Return name of file used for loading and saving the address book.
+ * This method is called by an error handler if the application
+ * crashed
*/
- QString fileName() const;
+ virtual void cleanUp();
/**
- * Remove a addressee from its source.
- * This method is mainly called by KABC::AddressBook.
+ * This method returns the number of elements that are currently in the resource.
*/
- virtual void removeAddressee( const Addressee& addr );
+ virtual int count() const;
/**
- * This method is called by an error handler if the application
- * crashed
+ * This method removes all elements from the resource!! (Not from the addressbook)
*/
- virtual void cleanUp();
+ virtual bool clear();
protected slots:
@@ -137,10 +143,9 @@ protected:
private:
+ AddressBookAccess* mAccess;
QtopiaConverter* mConverter;
-
- QString mFileName;
QString mLockUniqueName;
-
+
KDirWatch mDirWatch;
};
diff --git a/kabc/plugins/sharpdtm/resourcesharpdtm.cpp b/kabc/plugins/sharpdtm/resourcesharpdtm.cpp
index 31b99ca..7b909de 100644
--- a/kabc/plugins/sharpdtm/resourcesharpdtm.cpp
+++ b/kabc/plugins/sharpdtm/resourcesharpdtm.cpp
@@ -1,5 +1,5 @@
/*
This file is part of libkabc.
- Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org>
+ Copyright (c) 2004 Ulf Schenk
This library is free software; you can redistribute it and/or
@@ -63,6 +63,6 @@ extern "C"
}
-ResourceSharpDTM::ResourceSharpDTM( const KConfig *config )
- : Resource( config ), mConverter (0)
+ResourceSharpDTM::ResourceSharpDTM( const KConfig *config, bool syncable )
+ : Resource( config, syncable ), mConverter (0)
{
// we can not choose the filename. Therefore use the default to display
@@ -72,6 +72,6 @@ ResourceSharpDTM::ResourceSharpDTM( const KConfig *config )
}
-ResourceSharpDTM::ResourceSharpDTM( const QString &fileName )
- : Resource( 0 )
+ResourceSharpDTM::ResourceSharpDTM( const QString &fileName, bool syncable )
+ : Resource( 0, syncable )
{
// qDebug("ResourceFile::ResourceSharpDTM : 3 %s, %s", fileName.latin1(), formatName.latin1());
@@ -356,2 +356,27 @@ void ResourceSharpDTM::cleanUp()
}
+/**
+ * This method returns the number of elements that are currently in the resource.
+ */
+int ResourceSharpDTM::count() const
+{
+ if (mAccess != 0)
+ return mAccess->count();
+ else
+ return 0;
+}
+
+
+/**
+ * This method removes all elements from the resource!! (Not from the addressbook)
+ */
+bool ResourceSharpDTM::clear()
+{
+ if (mAccess != 0)
+ return mAccess->deleteCard(0, SlZDataBase::AllCard );
+ else
+ return false;
+}
+
+
+
diff --git a/kabc/plugins/sharpdtm/resourcesharpdtm.h b/kabc/plugins/sharpdtm/resourcesharpdtm.h
index d2e2a52..f495e9d 100644
--- a/kabc/plugins/sharpdtm/resourcesharpdtm.h
+++ b/kabc/plugins/sharpdtm/resourcesharpdtm.h
@@ -1,5 +1,5 @@
/*
This file is part of libkabc.
- Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org>
+ Copyright (c) 2004 Ulf Schenk
This library is free software; you can redistribute it and/or
@@ -57,10 +57,10 @@ public:
@param cfg The config object where custom resource settings are stored.
*/
- ResourceSharpDTM( const KConfig *cfg );
+ ResourceSharpDTM( const KConfig *cfg, bool syncable );
/**
Construct file resource on file @arg fileName using format @arg formatName.
*/
- ResourceSharpDTM( const QString &fileName );
+ ResourceSharpDTM( const QString &fileName, bool syncable );
/**
@@ -105,24 +105,30 @@ public:
/**
+ * Remove a addressee from its source.
+ * This method is mainly called by KABC::AddressBook.
+ */
+ virtual void removeAddressee( const Addressee& addr );
+
+ /**
* Set name of file to be used for saving.
*/
- void setFileName( const QString & );
+ virtual void setFileName( const QString & );
/**
- * Return name of file used for loading and saving the address book.
+ * This method is called by an error handler if the application
+ * crashed
*/
- QString fileName() const;
+ virtual void cleanUp();
/**
- * Remove a addressee from its source.
- * This method is mainly called by KABC::AddressBook.
+ * This method returns the number of elements that are currently in the resource.
*/
- virtual void removeAddressee( const Addressee& addr );
+ virtual int count() const;
/**
- * This method is called by an error handler if the application
- * crashed
+ * This method removes all elements from the resource!! (Not from the addressbook)
*/
- virtual void cleanUp();
+ virtual bool clear();
+
protected slots:
@@ -138,6 +144,4 @@ private:
SharpDTMConverter* mConverter;
- QString mFileName;
-
QString mLockUniqueName;
diff --git a/kabc/plugins/sharpdtm/sharpdtmE.pro b/kabc/plugins/sharpdtm/sharpdtmE.pro
index 54ef083..52bc10f 100644
--- a/kabc/plugins/sharpdtm/sharpdtmE.pro
+++ b/kabc/plugins/sharpdtm/sharpdtmE.pro
@@ -3,5 +3,5 @@ CONFIG += qt warn_on
TARGET = microkabc_sharpdtm
-INCLUDEPATH += ../.. $(SHARPDTMSDK)/include ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../microkde/kio/kio ../../../qtcompat $(QPEDIR)/include
+INCLUDEPATH += ../.. $(SHARPDTMSDK)/include ../../../microkde ../../../microkde/kdecore ../../../microkde/kio/kfile ../../../microkde/kio/kio ../../../microkde/kresources ../../../qtcompat $(QPEDIR)/include