-rw-r--r-- | kabc/plugins/opie/resourceopie.cpp | 16 | ||||
-rw-r--r-- | kabc/plugins/opie/resourceopieconfig.cpp | 11 | ||||
-rw-r--r-- | kabc/plugins/opie/resourceopieconfig.h | 3 |
3 files changed, 16 insertions, 14 deletions
diff --git a/kabc/plugins/opie/resourceopie.cpp b/kabc/plugins/opie/resourceopie.cpp index 3b2a6b7..a7d271f 100644 --- a/kabc/plugins/opie/resourceopie.cpp +++ b/kabc/plugins/opie/resourceopie.cpp @@ -88,40 +88,40 @@ ResourceOpie::ResourceOpie( const QString &fileName ) init( fileName ); } void ResourceOpie::init( const QString &fileName ) { /*US we have no KDirWatch. SO simulate the signals from inside the apropriate methods connect( &mDirWatch, SIGNAL( dirty(const QString&) ), SLOT( fileChanged() ) ); connect( &mDirWatch, SIGNAL( created(const QString&) ), SLOT( fileChanged() ) ); connect( &mDirWatch, SIGNAL( deleted(const QString&) ), SLOT( fileChanged() ) ); */ //US opie addressbook is always readonly - setReadOnly( true ); +//US setReadOnly( true ); setFileName( fileName ); } ResourceOpie::~ResourceOpie() { if (mConverter != 0) delete mConverter; } void ResourceOpie::writeConfig( KConfig *config ) { //US opie addressbook is always readonly - setReadOnly( true ); +//US setReadOnly( true ); Resource::writeConfig( config ); config->writeEntry( "FileName", mFileName ); // qDebug("ResourceFile::writeConfig format %s, %s", mFileName.latin1(), mFormatName.latin1()); } Ticket *ResourceOpie::requestSaveTicket() { kdDebug(5700) << "ResourceOpie::requestSaveTicket()" << endl; @@ -185,31 +185,41 @@ bool ResourceOpie::load() 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(); + 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; + return false; + } + } OContactAccess::List::Iterator it; OContactAccess::List allList = access->allRecords(); - bool res = false; for ( it = allList.begin(); it != allList.end(); ++it ) { OContact c = (*it); KABC::Addressee addressee; res = mConverter->opieToAddressee( c, addressee ); if ( !addressee.isEmpty() && res ) { addressee.setResource( this ); addressBook()->insertAddressee( addressee ); diff --git a/kabc/plugins/opie/resourceopieconfig.cpp b/kabc/plugins/opie/resourceopieconfig.cpp index f4cc4f9..eef9cc9 100644 --- a/kabc/plugins/opie/resourceopieconfig.cpp +++ b/kabc/plugins/opie/resourceopieconfig.cpp @@ -53,47 +53,42 @@ ResourceOpieConfig::ResourceOpieConfig( QWidget* parent, const char* name ) QGridLayout *mainLayout = new QGridLayout( this, 1, 2, 0, KDialog::spacingHint() ); QLabel *label = new QLabel( i18n( "Location:" ), this ); mFileNameEdit = new KURLRequester( this ); connect( mFileNameEdit, SIGNAL( textChanged( const QString & ) ), SLOT( checkFilePermissions( const QString & ) ) ); mainLayout->addWidget( label, 0, 0 ); mainLayout->addWidget( mFileNameEdit, 0, 1 ); - -//US mInEditMode = false; -} -/*US -void ResourceOpieConfig::setEditMode( bool value ) -{ - mInEditMode = value; } -*/ void ResourceOpieConfig::loadSettings( KRES::Resource *res ) { //US ResourceFile *resource = dynamic_cast<ResourceFile*>( res ); ResourceOpie *resource = (ResourceOpie*)( res ); if ( !resource ) { kdDebug(5700) << "ResourceOpieConfig::loadSettings(): cast failed" << endl; return; } mFileNameEdit->setURL( resource->fileName() ); if ( mFileNameEdit->url().isEmpty() ) mFileNameEdit->setURL( QDir::homeDirPath() + "/Applications/addressbook/addressbook.xml" ); + + //US Opie resources are ReadOnly by definition + emit setPersistentReadOnly( true ); } void ResourceOpieConfig::saveSettings( KRES::Resource *res ) { //US ResourceFile *resource = dynamic_cast<ResourceFile*>( res ); ResourceOpie *resource = (ResourceOpie*)( res ); if ( !resource ) { kdDebug(5700) << "ResourceOpieConfig::saveSettings(): cast failed" << endl; return; } diff --git a/kabc/plugins/opie/resourceopieconfig.h b/kabc/plugins/opie/resourceopieconfig.h index 533b7f4..8cc192c 100644 --- a/kabc/plugins/opie/resourceopieconfig.h +++ b/kabc/plugins/opie/resourceopieconfig.h @@ -33,29 +33,26 @@ $Id$ #include <kresources/configwidget.h> namespace KABC { class ResourceOpieConfig : public KRES::ConfigWidget { Q_OBJECT public: ResourceOpieConfig( QWidget* parent = 0, const char* name = 0 ); -//US void setEditMode( bool value ); - public slots: void loadSettings( KRES::Resource *resource ); void saveSettings( KRES::Resource *resource ); protected slots: void checkFilePermissions( const QString& fileName ); private: KURLRequester* mFileNameEdit; -//US bool mInEditMode; }; } #endif |