summaryrefslogtreecommitdiffabout
authorzautrix <zautrix>2004-10-20 21:49:51 (UTC)
committer zautrix <zautrix>2004-10-20 21:49:51 (UTC)
commitbb235c5a639b914574e1e247d2de6e479517585f (patch) (side-by-side diff)
tree0f074ec87d93b6f5fb81b6893f0174cabc52c1df
parent8e00329a4a5f0b66d26d20f067ab6aefca17f17a (diff)
downloadkdepimpi-bb235c5a639b914574e1e247d2de6e479517585f.zip
kdepimpi-bb235c5a639b914574e1e247d2de6e479517585f.tar.gz
kdepimpi-bb235c5a639b914574e1e247d2de6e479517585f.tar.bz2
qtopia resource fixes
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--kabc/plugins/qtopia/qtopiaconverter.cpp24
-rw-r--r--kabc/plugins/qtopia/resourceqtopia.cpp98
-rw-r--r--microkde/kresources/managerimpl.cpp9
3 files changed, 45 insertions, 86 deletions
diff --git a/kabc/plugins/qtopia/qtopiaconverter.cpp b/kabc/plugins/qtopia/qtopiaconverter.cpp
index 040226c..106596f 100644
--- a/kabc/plugins/qtopia/qtopiaconverter.cpp
+++ b/kabc/plugins/qtopia/qtopiaconverter.cpp
@@ -292,7 +292,10 @@ bool QtopiaConverter::qtopiaToAddressee( const QDomElement& el, Addressee &adr )
if ( !el.attribute( "Spouse" ).isEmpty() )
adr.insertCustom( "KADDRESSBOOK", "X-SpousesName", el.attribute( "Spouse" ) );
- if ( !el.attribute( "Gender" ).isEmpty() )
- adr.insertCustom( "opie", "Gender", el.attribute( "Gender" ) );
-
+ if ( !el.attribute( "Gender" ).isEmpty() ) {
+ if ( el.attribute( "Gender" ) == "1" )
+ adr.insertCustom( "KADDRESSBOOK", "X-Gender", "male" );
+ else if ( el.attribute( "Gender" ) == "2" )
+ adr.insertCustom( "KADDRESSBOOK", "X-Gender", "female" );
+ }
QDate ann = dateFromString( el.attribute( "Anniversary" ) );
if ( ann.isValid() ) {
@@ -302,5 +305,5 @@ bool QtopiaConverter::qtopiaToAddressee( const QDomElement& el, Addressee &adr )
if ( !el.attribute( "Children" ).isEmpty() )
- adr.insertCustom("opie", "Children", el.attribute("Children") );
+ adr.insertCustom("KADDRESSBOOK", "X-Children", el.attribute("Children") );
if ( !el.attribute( "Office" ).isEmpty() )
adr.insertCustom("KADDRESSBOOK", "X-Office", el.attribute("Office") );
@@ -385,13 +388,14 @@ bool QtopiaConverter::addresseeToQtopia( const Addressee &ab, QTextStream *strea
*stream << "HomeWebPage=\"" << escape( ab.custom( "opie", "HomeWebPage" ) ) << "\" ";
*stream << "Spouse=\"" << escape( ab.custom( "KADDRESSBOOK", "X-SpousesName") ) << "\" ";
- *stream << "Gender=\"" << escape( ab.custom( "opie", "Gender") ) << "\" ";
+ QString gen = "0";
+ if ( ab.custom( "KADDRESSBOOK", "X-Gender") == "male" )
+ gen = "1";
+ else if ( ab.custom( "KADDRESSBOOK", "X-Gender") == "female" )
+ gen = "2";
+ *stream << "Gender=\"" << escape( gen ) << "\" ";
if ( ab.birthday().date().isValid() )
*stream << "Birthday=\"" << escape( dateToString(ab.birthday().date() ) ) << "\" ";
- /*
- * Anniversary block again
- * Go from ISO -> QDate -> toString and then escape
- */
{
QDate ann = KGlobal::locale()->readDate( ab.custom("KADDRESSBOOK", "X-Anniversary" ),
@@ -402,5 +406,5 @@ bool QtopiaConverter::addresseeToQtopia( const Addressee &ab, QTextStream *strea
}
*stream << "Nickname=\"" << escape( ab.nickName() ) << "\" ";
- *stream << "Children=\"" << escape( ab.custom("opie", "Children" ) ) << "\" ";
+ *stream << "Children=\"" << escape( ab.custom("KADDRESSBOOK", "X-Children" ) ) << "\" ";
*stream << "Notes=\"" << escape( ab.note() ) << "\" ";
*stream << "Categories=\"" << categoriesToNumber( ab.categories(), "Contacts") << "\" ";
diff --git a/kabc/plugins/qtopia/resourceqtopia.cpp b/kabc/plugins/qtopia/resourceqtopia.cpp
index b7263bb..4ee3c3c 100644
--- a/kabc/plugins/qtopia/resourceqtopia.cpp
+++ b/kabc/plugins/qtopia/resourceqtopia.cpp
@@ -79,9 +79,9 @@ ResourceQtopia::ResourceQtopia( const QString &fileName )
void ResourceQtopia::init( const QString &fileName )
{
-
+#ifdef _USE_DIRWATCH_
connect( &mDirWatch, SIGNAL( dirty(const QString&) ), SLOT( fileChanged() ) );
connect( &mDirWatch, SIGNAL( created(const QString&) ), SLOT( fileChanged() ) );
connect( &mDirWatch, SIGNAL( deleted(const QString&) ), SLOT( fileChanged() ) );
-
+#endif
setFileName( fileName );
}
@@ -166,5 +166,5 @@ bool ResourceQtopia::load()
QDomElement e = n.toElement();
if ( !e.isNull() ) {
- if ( e.tagName() == QString::fromLatin1( "Contacts" ) ) { // we're looking for them
+ if ( e.tagName() == QString::fromLatin1( "Contacts" ) ) {
QDomNode no = e.firstChild();
while ( !no.isNull() ) {
@@ -187,28 +187,4 @@ bool ResourceQtopia::load()
n = n.nextSibling();
}
-
-#if 0
-/ old code
- qDebug("ResourceQtopia::load: %s", fileName().latin1());
-
- AddressBookIterator it(*mAccess);
- const PimContact* contact;
- bool res;
-
- for (contact=it.toFirst(); it.current(); ++it)
- {
- contact = it.current();
-
- KABC::Addressee addressee;
-
- //LRres = mConverter->qtopiaToAddressee( (*contact), addressee );
-
- if ( !addressee.isEmpty() && res )
- {
- addressee.setResource( this );
- addressBook()->insertAddressee( addressee );
- }
- }
-#endif
return true;
}
@@ -216,10 +192,15 @@ bool ResourceQtopia::load()
bool ResourceQtopia::save( Ticket *ticket )
{
-
+#ifdef _USE_DIRWATCH_
mDirWatch.stopScan();
+#endif
KABC::AddressBook::Iterator it;
- bool res;
- //pending open file for stream
- QTextStream *stream;// = tempFile->textStream();
+ bool res;
+ QFile file( fileName() );
+ if (!file.open( IO_WriteOnly ) ) {
+ return false;
+ }
+ QTextStream ts( &file );
+ QTextStream *stream = &ts;
stream->setEncoding( QTextStream::UnicodeUTF8 );
*stream << "<?xml version=\"1.0\" encoding=\"UTF-8\"?><!DOCTYPE Addressbook ><AddressBook>" << endl;
@@ -237,48 +218,12 @@ bool ResourceQtopia::save( Ticket *ticket )
}
}
-
-
*stream << "</Contacts>" << endl;
*stream << "</AddressBook>" << endl;
- //pending close file
+ file.close();
+#ifdef _USE_DIRWATCH_
mDirWatch.startScan();
-
+#endif
delete ticket;
unlock( fileName() );
-
-
-#if 0
- //old code
- qDebug("ResourceQtopia::save: %s", fileName().latin1());
-
- mDirWatch.stopScan();
-
- KABC::AddressBook::Iterator it;
- bool res;
-
- for ( it = addressBook()->begin(); it != addressBook()->end(); ++it ) {
- PimContact c;
- KABC::Addressee addressee = (*it);
-
- //res = mConverter->addresseeToQtopia( *it, c );
- if (res == true)
- {
- mAccess->addContact(c);
-// if (res == false)
-// qDebug("Unable to append Contact %s", c.fullName().latin1());
- }
- else
- {
- qDebug("Unable to convert Addressee %s", addressee.formattedName().latin1());
- }
- }
-
-// mAccess->addressBookUpdated();
-
- mDirWatch.startScan();
-
- delete ticket;
- unlock( fileName() );
-#endif
return true;
}
@@ -286,8 +231,7 @@ bool ResourceQtopia::save( Ticket *ticket )
bool ResourceQtopia::lock( const QString &lockfileName )
{
+ //disabled
+ return true;
qDebug("ResourceQtopia::lock: %s", fileName().latin1());
-
- kdDebug(5700) << "ResourceQtopia::lock()" << endl;
-
QString fn = lockfileName;
@@ -295,6 +239,4 @@ bool ResourceQtopia::lock( const QString &lockfileName )
QString lockName = locateLocal( "data", "kabc/lock/" + url.fileName() + ".lock" );
- kdDebug(5700) << "-- lock name: " << lockName << endl;
-
if (QFile::exists( lockName ))
{
@@ -334,4 +276,6 @@ bool ResourceQtopia::lock( const QString &lockfileName )
void ResourceQtopia::unlock( const QString &fileName )
{
+ //disabled
+ return;
qDebug("ResourceQtopia::unlock() %s", fileName.latin1());
@@ -347,5 +291,7 @@ void ResourceQtopia::unlock( const QString &fileName )
void ResourceQtopia::setFileName( const QString &newFileName )
{
+#ifdef _USE_DIRWATCH_
mDirWatch.stopScan();
+#endif
mDirWatch.removeFile( fileName() );
@@ -353,5 +299,7 @@ void ResourceQtopia::setFileName( const QString &newFileName )
mDirWatch.addFile( fileName() );
+#ifdef _USE_DIRWATCH_
mDirWatch.startScan();
+#endif
}
diff --git a/microkde/kresources/managerimpl.cpp b/microkde/kresources/managerimpl.cpp
index 81bbbec..5bd9eb7 100644
--- a/microkde/kresources/managerimpl.cpp
+++ b/microkde/kresources/managerimpl.cpp
@@ -35,4 +35,5 @@ $Id$
#include <kconfig.h>
#include <kstandarddirs.h>
+#include <qfile.h>
#include "resource.h"
@@ -68,5 +69,11 @@ void ManagerImpl::createStandardConfig()
if ( !mStdConfig ) {
QString file = locateLocal( "data", KGlobal::getAppName()
- + "/kresources/" + mFamily + "rc" );
+ + "/kresources/" + mFamily + "rc" );
+ if ( mFamily == "tmpcontact" ) {
+ if (QFile::exists ( file ) ){
+ QFile::remove ( file );
+ qDebug("removed tmp rc file: %s ", file.latin1());
+ }
+ }
mStdConfig = new KConfig( file );
}