summaryrefslogtreecommitdiffabout
path: root/kaddressbook/xxport/sharpdtm_xxport.cpp
authorulf69 <ulf69>2004-08-03 20:49:15 (UTC)
committer ulf69 <ulf69>2004-08-03 20:49:15 (UTC)
commitbe52d7d03e57620919b23cb0cbb33ac22d0920e0 (patch) (side-by-side diff)
tree34e8e29a221c828424126694f865d702c7635f97 /kaddressbook/xxport/sharpdtm_xxport.cpp
parentd5358380edce9a2c39f3eea4df741a148338880c (diff)
downloadkdepimpi-be52d7d03e57620919b23cb0cbb33ac22d0920e0.zip
kdepimpi-be52d7d03e57620919b23cb0cbb33ac22d0920e0.tar.gz
kdepimpi-be52d7d03e57620919b23cb0cbb33ac22d0920e0.tar.bz2
hopefully last modifications of resource based export/import functionality
for opie, qtopia and sharpdtm
Diffstat (limited to 'kaddressbook/xxport/sharpdtm_xxport.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--kaddressbook/xxport/sharpdtm_xxport.cpp228
1 files changed, 8 insertions, 220 deletions
diff --git a/kaddressbook/xxport/sharpdtm_xxport.cpp b/kaddressbook/xxport/sharpdtm_xxport.cpp
index 8c2e07a..130bc00 100644
--- a/kaddressbook/xxport/sharpdtm_xxport.cpp
+++ b/kaddressbook/xxport/sharpdtm_xxport.cpp
@@ -28,32 +28,8 @@ Copyright (c) 2004 Ulf Schenk
$Id$
*/
-#include <qdir.h>
-
-#include <kfiledialog.h>
-#include <kmessagebox.h>
-
-//US #include <sl/slzdb.h>
-
-#include "addressbook.h"
-
-/*US
-#include <qfile.h>
-#include <qtextstream.h>
-
-#include <kabc/vcardconverter.h>
-#ifndef KAB_EMBEDDED
-#include <kio/netaccess.h>
-#endif //KAB_EMBEDDED
-
-#include <klocale.h>
-#include <kmessagebox.h>
-#include <ktempfile.h>
-#include <kurl.h>
-*/
-
+#include "addressee.h"
#include "xxportmanager.h"
-
#include "sharpdtm_xxport.h"
/*US
@@ -78,207 +54,19 @@ extern "C"
SharpDTMXXPort::SharpDTMXXPort( KABC::AddressBook *ab, QWidget *parent, const char *name )
: XXPortResourceObject( ab, parent, name )
{
- KRES::Factory* mFactory = KRES::Factory::self( "contact" );
-
- if ( mFactory )
+ if ( mFactory && !mFactory->typeName( "sharpdtm" ).isEmpty() )
{
- mResource = (KABC::Resource*)(mFactory->resource( "sharpdtm", 0, false ));
- if ( mResource )
- {
- createImportAction( i18n( "Import Sharp..." ) );
- createExportAction( i18n( "Export Sharp..." ) );
- }
+ createImportAction( i18n( "Import Sharp..." ) );
+ createExportAction( i18n( "Export Sharp..." ) );
}
}
-bool SharpDTMXXPort::exportContacts( const KABC::AddresseeList &list, const QString &data )
+bool SharpDTMXXPort::exportContacts( const KABC::AddresseeList &list, const QString &identifier )
{
-/*US
- // we can not choose the filename. Therefore use the default to display
- QString fileName = SlZDataBase::addressbookFileName();
-
- SlZDataBase* access = new SlZDataBase(fileName,
- SlZDataBase::addressbookItems());
-
- if ( !access ) {
- QString text( i18n( "Unable to access file '%1'." ).arg( fileName ) );
- qDebug(text.latin1());
- KMessageBox::error( parentWidget(), text );
- addressBook()->error( text );
- return false;
- }
-
- KABC::SharpDTMConverter mConverter;
-
- bool res = mConverter.init();
- if (!res)
- {
- QString text( i18n( "Unable to initialize sharpdtm converter.<br>Most likely a problem with the category file." ) );
- qDebug(text);
- KMessageBox::error( parentWidget(), text );
- delete access;
- return false;
- }
-
- //Now check if the file has already entries, and ask the user if he wants to delete them first.
- if (access->count() > 0)
- {
- QString text( i18n( "Do you want to remove<br>all existing entries from<br>%1<br>before exporting.?" ) );
- if ( KMessageBox::questionYesNo( parentWidget(), text.arg( fileName ) ) == KMessageBox::Yes ) {
- // Clean the database..
- access->deleteCard(0, SlZDataBase::AllCard );
- }
- }
-
- KABC::Addressee::List::ConstIterator it;
- for ( it = list.begin(); it != list.end(); ++it ) {
- CardId c;
- res = access->editNewCard();
-
- if (res == true)
- {
- res = mConverter.addresseeToSharp( *it, access, c );
-
- if (res == true)
- access->finishEditCard(&c);
- else
- access->cancelEditCard();
- }
- }
-
- delete access;
-
- return true;
-*/
-
- if (mResource == 0)
- return false;
-
- // we can not choose the filename. Therefore use the default to display
- QString fileName = mResource->fileName();
-
- if ( fileName.isEmpty() )
- return false;
-
- //Now check if the file has already entries, and ask the user if he wants to delete them first.
- if (mResource->count() > 0)
- {
- QString text( i18n( "Do you want to remove<br>all existing entries from<br>%1<br>before exporting.?" ) );
- if ( KMessageBox::questionYesNo( parentWidget(), text.arg( fileName ) ) == KMessageBox::Yes ) {
- // Clean the database..
- mResource->clear();
- }
- }
-
- KABC::AddressBook tmpAB;
-
- tmpAB.addResource( mResource );
-
-//US debug
- QPtrList<KABC::Resource> kabcResources = tmpAB.resources();
- QPtrListIterator<KABC::Resource> resIt( kabcResources );
- KABC::Resource *resource;
- while ( ( resource = resIt.current() ) != 0 ) {
- ++resIt;
- qDebug("tmpAB has resource: %s", resource->identifier().latin1());
- }
-
-
- KABC::Addressee::List::ConstIterator it;
- for ( it = list.begin(); it != list.end(); ++it ) {
- tmpAB.insertAddressee(*it);
- }
-
- KABC::Ticket * ticket = mResource->requestSaveTicket();
- return tmpAB.save( ticket );
-
-
+ return _exportContacts( list, identifier, QString::null );
}
-KABC::AddresseeList SharpDTMXXPort::importContacts( const QString& ) const
+KABC::AddresseeList SharpDTMXXPort::importContacts( const QString &identifier ) const
{
-/*US
- KABC::AddresseeList adrlst;
-
- QString fileName = SlZDataBase::addressbookFileName();
-
- // the last parameter in the SlZDataBase constructor means "readonly"
- SlZDataBase* access = new SlZDataBase(fileName,
- SlZDataBase::addressbookItems(), NULL, true);
-
-
- if ( !access ) {
- QString text( i18n( "Unable to access file '%1'." ).arg( fileName ) );
- qDebug(text.latin1());
- addressBook()->error( text );
- KMessageBox::error( parentWidget(), text );
- return KABC::AddresseeList();
- }
-
- KABC::SharpDTMConverter mConverter;
-
- bool res = mConverter.init();
- if (!res)
- {
- QString text( i18n( "Unable to initialize sharp converter.<br>Most likely a problem with the category file." ) );
- qDebug(text);
- KMessageBox::error( parentWidget(), text );
- delete access;
- return KABC::AddresseeList();
- }
-
-
- { //create a new scope
- CardId id;
-
- for (bool res=access->first(); res == true; res=access->next()) {
- id = access->cardId();
-
- KABC::Addressee addressee;
-
- res = mConverter.sharpToAddressee( id, access, addressee );
-
- if ( !addressee.isEmpty() && res )
- {
- adrlst.append( addressee );
- }
- }
- }
-
- delete access;
-
- return adrlst;
-*/
-
- if (mResource == 0)
- return KABC::AddresseeList();
-
- KABC::AddresseeList adrlst;
-
- QString fileName = mResource->fileName();
-
- if ( fileName.isEmpty() )
- return KABC::AddresseeList();
-
- mResource->setFileName( fileName );
-
-
- KABC::AddressBook tmpAB;
-
- tmpAB.addResource( mResource );
-
-//US debug
- QPtrList<KABC::Resource> kabcResources = tmpAB.resources();
- QPtrListIterator<KABC::Resource> resIt( kabcResources );
- KABC::Resource *resource;
- while ( ( resource = resIt.current() ) != 0 ) {
- ++resIt;
- qDebug("tmpAB has resource: %s", resource->identifier().latin1());
- }
-
- bool res = tmpAB.load();
-
- return tmpAB.allAddressees();
-
-
+ return _importContacts( identifier, QString::null );
}