author | zautrix <zautrix> | 2004-10-14 10:19:14 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2004-10-14 10:19:14 (UTC) |
commit | dddcb44c8428e9054a91eea0c7483ee88ee03452 (patch) (side-by-side diff) | |
tree | 0c6b26192c70f8cfccd00f527f56a39109a11f2d /libkcal | |
parent | 3d79ab275374292196c7d032ffd2e321841c8cb0 (diff) | |
download | kdepimpi-dddcb44c8428e9054a91eea0c7483ee88ee03452.zip kdepimpi-dddcb44c8428e9054a91eea0c7483ee88ee03452.tar.gz kdepimpi-dddcb44c8428e9054a91eea0c7483ee88ee03452.tar.bz2 |
phone calendar fixes
-rw-r--r-- | libkcal/phoneformat.cpp | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/libkcal/phoneformat.cpp b/libkcal/phoneformat.cpp index 3555dc6..281434e 100644 --- a/libkcal/phoneformat.cpp +++ b/libkcal/phoneformat.cpp @@ -275,51 +275,49 @@ ulong PhoneFormat::getCsum( const QStringList & attList) cSum += add; } } } //QString dump = attList.join(","); //qDebug("csum: %d %s", cSum,dump.latin1()); return cSum; } //extern "C" GSM_Error GSM_InitConnection(GSM_StateMachine *s, int ReplyNum); #include <stdlib.h> #define DEBUGMODE false bool PhoneFormat::load( Calendar *calendar, Calendar *existingCal) { QString fileName; #ifdef _WIN32_ fileName = locateLocal("tmp", "phonefile.vcs"); #else fileName = "/tmp/phonefile.vcs"; #endif QString command; - int ret = PhoneAccess::readFromPhone( fileName ); - if ( ret != 0 ) { - qDebug("Error::command returned %d", ret); + if ( ! PhoneAccess::readFromPhone( fileName )) { return false; } VCalFormat vfload; vfload.setLocalTime ( true ); qDebug("loading file ..."); if ( ! vfload.load( calendar, fileName ) ) return false; QPtrList<Event> er = calendar->rawEvents(); Event* ev = er.first(); qDebug("reading events... "); while ( ev ) { QStringList cat = ev->categories(); if ( cat.contains( "MeetingDEF" )) { ev->setCategories( QStringList() ); } int id = ev->pilotId(); Event *event; event = existingCal->event( mProfileName ,QString::number( id ) ); if ( event ) { event = (Event*)event->clone(); copyEvent( event, ev ); calendar->deleteEvent( ev ); calendar->addEvent( event); @@ -466,50 +464,53 @@ void PhoneFormat::copyTodo( Todo* to, Todo* from ) void PhoneFormat::afterSave( Incidence* inc) { uint csum; inc->removeID( mProfileName ); if ( inc->type() == "Event") csum = PhoneFormat::getCsumEvent( (Event*) inc ); else csum = PhoneFormat::getCsumTodo( (Todo*) inc ); inc->setCsum( mProfileName, QString::number( csum )); inc->setTempSyncStat( SYNC_TEMPSTATE_NEW_ID ); } bool PhoneFormat::writeToPhone( Calendar * calendar) { #ifdef _WIN32_ QString fileName = locateLocal("tmp", "tempfile.vcs"); #else QString fileName = "/tmp/kdepimtemp.vcs"; #endif VCalFormat vfsave; vfsave.setLocalTime ( true ); + QString id = calendar->timeZoneId(); + calendar->setLocalTime(); if ( ! vfsave.save( calendar, fileName ) ) return false; + calendar->setTimeZoneId( id ); return PhoneAccess::writeToPhone( fileName ); } bool PhoneFormat::save( Calendar *calendar) { QLabel status ( i18n(" Opening device ..."), 0 ); int w = status.sizeHint().width()+20 ; if ( w < 200 ) w = 230; int h = status.sizeHint().height()+20 ; int dw = QApplication::desktop()->width(); int dh = QApplication::desktop()->height(); status.setCaption(i18n("Writing to phone...") ); status.setGeometry( (dw-w)/2, (dh - h )/2 ,w,h ); status.show(); status.raise(); qApp->processEvents(); QString message; // 1 remove events which should be deleted QPtrList<Event> er = calendar->rawEvents(); Event* ev = er.first(); while ( ev ) { if ( ev->tempSyncStat() == SYNC_TEMPSTATE_DELETE ) { calendar->deleteEvent( ev ); } else { |