author | ulf69 <ulf69> | 2004-07-13 15:04:53 (UTC) |
---|---|---|
committer | ulf69 <ulf69> | 2004-07-13 15:04:53 (UTC) |
commit | f88d48384d2c012fbaa3ffaa613d6eaa3694fab7 (patch) (side-by-side diff) | |
tree | c96af4b67257a2a2021ba0601042ce77aff9d69d | |
parent | 2450dd81505b6212ec5bf59c168b53c52bd08f53 (diff) | |
download | kdepimpi-f88d48384d2c012fbaa3ffaa613d6eaa3694fab7.zip kdepimpi-f88d48384d2c012fbaa3ffaa613d6eaa3694fab7.tar.gz kdepimpi-f88d48384d2c012fbaa3ffaa613d6eaa3694fab7.tar.bz2 |
intial implementation of the qtopia converter
-rw-r--r-- | Makefile.Embedded | 14 | ||||
-rw-r--r-- | kabc/converter/qtopia/qtopiaE.pro | 12 | ||||
-rw-r--r-- | kabc/converter/qtopia/qtopiaconverter.cpp | 46 | ||||
-rw-r--r-- | kabc/converter/qtopia/qtopiaconverter.h | 4 |
4 files changed, 45 insertions, 31 deletions
diff --git a/Makefile.Embedded b/Makefile.Embedded index aaba10a..3160017 100644 --- a/Makefile.Embedded +++ b/Makefile.Embedded @@ -1,9 +1,10 @@ DISTPATH = $(shell pwd) DISTDIR = $(shell basename $(DISTPATH)) SUBDIRS = libical/src/libical libical/src/libicalss qtcompat microkde \ - libkcal libkdepim kabc kabc/converter/opie kabc/formats/binary kabc/plugins/file kabc/plugins/dir \ + libkcal libkdepim kabc kabc/converter/opie kabc/converter/qtopia kabc/formats/binary \ + kabc/plugins/file kabc/plugins/dir \ kabc/plugins/ldap kabc/plugins/opie kabc/plugins/qtopia \ korganizer kalarmd kaddressbook/xxport/opie kaddressbook all: tmake for i in $(SUBDIRS); do pushd $$i; \ @@ -40,14 +41,16 @@ tmake: objects qtcompat/Makefile$(PLATFORM) microkde/Makefile$(PLATFORM) \ libical/src/libical/Makefile$(PLATFORM) \ libical/src/libicalss/Makefile$(PLATFORM) \ kabc/Makefile$(PLATFORM) \ kabc/converter/opie/Makefile$(PLATFORM) \ + kabc/converter/qtopia/Makefile$(PLATFORM) \ kabc/formats/binary/Makefile$(PLATFORM) \ kabc/plugins/file/Makefile$(PLATFORM) \ kabc/plugins/dir/Makefile$(PLATFORM) \ kabc/plugins/ldap/Makefile$(PLATFORM) \ kabc/plugins/opie/Makefile$(PLATFORM) \ - kabc/plugins/qtopia/Makefile$(PLATFORM) kaddressbook/xxport/opie/Makefile$(PLATFORM) \ + kabc/plugins/qtopia/Makefile$(PLATFORM) \ + kaddressbook/xxport/opie/Makefile$(PLATFORM) \ kaddressbook/Makefile$(PLATFORM) @@ -78,10 +81,13 @@ libical/src/libicalss/Makefile$(PLATFORM): libical/src/libicalss/libicalssE.pro kabc/Makefile$(PLATFORM): kabc/kabcE.pro cd kabc; tmake "CONFIG+=$(RELEASE_DEBUG)" kabcE.pro -o Makefile$(PLATFORM) -kabc/converter/opie/Makefile$(PLATFORM): kabc/converter/opie/opieconverterE.pro - cd kabc/converter/opie; tmake "CONFIG+=$(RELEASE_DEBUG)" opieconverterE.pro -o Makefile$(PLATFORM) +kabc/converter/opie/Makefile$(PLATFORM): kabc/converter/opie/opieE.pro + cd kabc/converter/opie; tmake "CONFIG+=$(RELEASE_DEBUG)" opieE.pro -o Makefile$(PLATFORM) + +kabc/converter/qtopia/Makefile$(PLATFORM): kabc/converter/qtopia/qtopiaE.pro + cd kabc/converter/qtopia; tmake "CONFIG+=$(RELEASE_DEBUG)" qtopiaE.pro -o Makefile$(PLATFORM) kabc/formats/binary/Makefile$(PLATFORM): kabc/formats/binary/kabcformat_binaryE.pro cd kabc/formats/binary; tmake "CONFIG+=$(RELEASE_DEBUG)" kabcformat_binaryE.pro -o Makefile$(PLATFORM) diff --git a/kabc/converter/qtopia/qtopiaE.pro b/kabc/converter/qtopia/qtopiaE.pro index e026f2a..4241b8b 100644 --- a/kabc/converter/qtopia/qtopiaE.pro +++ b/kabc/converter/qtopia/qtopiaE.pro @@ -1,6 +1,6 @@ TEMPLATE = lib -INCLUDEPATH += . ../.. ../../../microkde ../../../microkde/kdecore $(OPIEDIR)/include $(OPEDIR)/include +INCLUDEPATH += . ../.. ../../../microkde ../../../microkde/kdecore $(QPEDIR)/include #CONFIG += staticlib OBJECTS_DIR = obj/$(PLATFORM) MOC_DIR = moc/$(PLATFORM) @@ -13,20 +13,18 @@ DESTDIR=$(QPEDIR)/lib LIBS += -lmicrokde LIBS += -lmicrokabc LIBS += -L$(QPEDIR)/lib LIBS += -L$(OPIEDIR)/lib -LIBS += -lopie +LIBS += -lqpepim LIBS += -lqpe -LIBS += -lqte - -TARGET = microkabc_opieconverter +TARGET = microkabc_qtopiaconverter # Input HEADERS += \ - opieconverter.h \ + qtopiaconverter.h \ SOURCES += \ - opieconverter.cpp \ + qtopiaconverter.cpp \ diff --git a/kabc/converter/qtopia/qtopiaconverter.cpp b/kabc/converter/qtopia/qtopiaconverter.cpp index 7aa76fe..e3dd3e6 100644 --- a/kabc/converter/qtopia/qtopiaconverter.cpp +++ b/kabc/converter/qtopia/qtopiaconverter.cpp @@ -30,9 +30,9 @@ $Id$ #include "qtopiaconverter.h" -//US #include <qpe/categories.h> +#include <qpe/categories.h> //US #include <qpe/categoryselect.h> using namespace KABC; @@ -47,9 +47,8 @@ QtopiaConverter::~QtopiaConverter() } bool QtopiaConverter::init() { -/*US catDB = new Categories(); if (catDB) { catDB->load( categoryFileName() ); @@ -58,21 +57,17 @@ bool QtopiaConverter::init() else { return false; } -*/ -return true; } void QtopiaConverter::deinit() { -/*US if (catDB) { delete catDB; catDB = 0; } -*/ } bool QtopiaConverter::qtopiaToAddressee( const PimContact &contact, Addressee &addr ) { @@ -80,9 +75,9 @@ bool QtopiaConverter::qtopiaToAddressee( const PimContact &contact, Addressee &a addr.setFormattedName(contact.fileAs()); addr.setFamilyName( contact.lastName() ); addr.setGivenName( contact.firstName() ); addr.setAdditionalName( contact.middleName() ); - addr.setPrefix( contact.title() ); + addr.setPrefix( contact.nameTitle() ); addr.setSuffix( contact.suffix() ); // email @@ -203,9 +198,14 @@ bool QtopiaConverter::qtopiaToAddressee( const PimContact &contact, Addressee &a addr.insertCustom( "KADDRESSBOOK", "X-Office", contact.office() ); //personal addr.insertCustom( "KADDRESSBOOK", "X-SpousesName", contact.spouse() ); - addr.insertCustom( "KADDRESSBOOK", "X-Gender", contact.gender() ); + // qtopia uses this categorization: + // enum GenderType { UnspecifiedGender=0, Male, Female }; + if (contact.gender() == PimContact::Male) + addr.insertCustom( "KADDRESSBOOK", "X-Gender", "male"); + else if (contact.gender() == PimContact::Female) + addr.insertCustom( "KADDRESSBOOK", "X-Gender", "female"); if (contact.anniversary().isValid()) { QString dt = KGlobal::locale()->formatDate(contact.anniversary(), true, KLocale::ISODate); //US @@ -230,14 +230,16 @@ bool QtopiaConverter::qtopiaToAddressee( const PimContact &contact, Addressee &a //US QString groups() const { return find( Qtopia::Groups ); } //US QStringList groupList() const; + QArray<int> catArray = contact.categories(); + QString cat; - QStringList cats = contact.categoryNames("Contacts"); - addr.setCategories( cats ); -// for ( QStringList::Iterator it = cats.begin(); it != cats.end(); ++it ) { -// qDebug("Cat: %s", (*it).latin1()); -// } + for ( unsigned int i=0; i < catArray.size(); i++ ) { + cat = catDB->label("contact", catArray[i]); + if ( !cat.isEmpty() ) + addr.insertCategory( cat ); + } return true; } @@ -246,9 +248,9 @@ bool QtopiaConverter::addresseeToQtopia( const Addressee &addr, PimContact &cont // name contact.setLastName(addr.familyName()); contact.setFirstName(addr.givenName()); contact.setMiddleName(addr.additionalName()); - contact.setTitle(addr.prefix()); + contact.setNameTitle(addr.prefix()); contact.setSuffix(addr.suffix()); contact.setFileAs(); @@ -321,9 +323,18 @@ bool QtopiaConverter::addresseeToQtopia( const Addressee &addr, PimContact &cont contact.setOffice(addr.custom( "KADDRESSBOOK", "X-Office" )); //personal contact.setSpouse(addr.custom( "KADDRESSBOOK", "X-Spouse" )); - contact.setGender(addr.custom( "KADDRESSBOOK", "X-Gender" )); + // qtopia uses this categorization: + // enum GenderType { UnspecifiedGender=0, Male, Female }; + QString gt = addr.custom( "KADDRESSBOOK", "X-Gender" ); + if (gt = "male") + contact.setGender(PimContact::Male); + else if (gt = "female") + contact.setGender(PimContact::Female); + else + contact.setGender(PimContact::UnspecifiedGender); + QDate dt = KGlobal::locale()->readDate( addr.custom("KADDRESSBOOK", "X-Anniversary" ), "%Y-%m-%d"); // = Qt::ISODate contact.setAnniversary( dt ); @@ -339,15 +350,14 @@ bool QtopiaConverter::addresseeToQtopia( const Addressee &addr, PimContact &cont //US QString groups() const { return find( Qtopia::Groups ); } //US QStringList groupList() const; -/*US QStringList cats = addr.categories(); QArray<int> iar; if ( !cats.isEmpty() ) { - QArray<int> iar = catDB.ids("contact", cats); + QArray<int> iar = catDB->ids("contact", cats); contact.setCategories(iar); } -*/ + return true; } diff --git a/kabc/converter/qtopia/qtopiaconverter.h b/kabc/converter/qtopia/qtopiaconverter.h index aaa267a..7397113 100644 --- a/kabc/converter/qtopia/qtopiaconverter.h +++ b/kabc/converter/qtopia/qtopiaconverter.h @@ -31,9 +31,9 @@ $Id$ #include "addressee.h" #include <qpe/pim/contact.h> -//US class Categories; +class Categories; namespace KABC { class QtopiaConverter @@ -69,9 +69,9 @@ public: */ bool addresseeToQtopia( const Addressee &addr, PimContact &contact ); private: -//US Categories* catDB; + Categories* catDB; }; |