author | zautrix <zautrix> | 2004-08-20 23:53:07 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2004-08-20 23:53:07 (UTC) |
commit | ab07441b413dff6d478e2c3a39b823b4269931c5 (patch) (unidiff) | |
tree | 5de6576a6c0e20e4af2db7baa5019aa983e2195a | |
parent | bc33238f8038a03e04f25ea608c53e784616fee6 (diff) | |
download | kdepimpi-ab07441b413dff6d478e2c3a39b823b4269931c5.zip kdepimpi-ab07441b413dff6d478e2c3a39b823b4269931c5.tar.gz kdepimpi-ab07441b413dff6d478e2c3a39b823b4269931c5.tar.bz2 |
Sync fixes and fix of config loading bug
-rw-r--r-- | korganizer/koprefs.cpp | 118 | ||||
-rw-r--r-- | libkcal/phoneformat.cpp | 44 | ||||
-rw-r--r-- | libkcal/vcalformat.cpp | 19 | ||||
-rw-r--r-- | libkcal/vcalformat.h | 5 |
4 files changed, 115 insertions, 71 deletions
diff --git a/korganizer/koprefs.cpp b/korganizer/koprefs.cpp index 0db8e6d..dd978bf 100644 --- a/korganizer/koprefs.cpp +++ b/korganizer/koprefs.cpp | |||
@@ -392,63 +392,65 @@ void KOPrefs::usrReadConfig() | |||
392 | { | 392 | { |
393 | mLocaleDict = 0; | 393 | mLocaleDict = 0; |
394 | // pending LR fix translation | 394 | // pending LR fix translation |
395 | // qDebug("KOPrefs::usrReadConfig() fix translation "); | 395 | // qDebug("KOPrefs::usrReadConfig() fix translation "); |
396 | if ( mPreferredLanguage == 1 ) { | 396 | if ( mPreferredLanguage > 0 && mPreferredLanguage < 4 ) { |
397 | mLocaleDict = new QDict<QString>; | 397 | if ( mPreferredLanguage == 1 ) { |
398 | int i = 0; | ||
399 | QString fw ( germanwords[i] [0]); | ||
400 | while ( !fw.isEmpty() ) { | ||
401 | mLocaleDict->insert( fw, new QString (germanwords[i] [1] )); | ||
402 | ++i; | ||
403 | fw = germanwords[i] [0]; | ||
404 | } | ||
405 | |||
406 | setLocaleDict( mLocaleDict ); | ||
407 | } else { | ||
408 | QString fileName ; | ||
409 | if ( mPreferredLanguage == 3 ) | ||
410 | fileName = MainWindow::resourcePath()+"usertranslation.txt"; | ||
411 | else if ( mPreferredLanguage == 2 ) | ||
412 | fileName = MainWindow::resourcePath()+"frenchtranslation.txt"; | ||
413 | else return; | ||
414 | QFile file( fileName ); | ||
415 | if (file.open( IO_ReadOnly ) ) { | ||
416 | QTextStream ts( &file ); | ||
417 | ts.setCodec( QTextCodec::codecForLocale() ); | ||
418 | QString text = ts.read(); | ||
419 | file.close(); | ||
420 | text.replace( QRegExp("\\\\n"), "\n" ); | ||
421 | QString line; | ||
422 | QString we; | ||
423 | QString wt; | ||
424 | int br = 0; | ||
425 | int nbr; | ||
426 | nbr = text.find ( "},", br ); | ||
427 | line = text.mid( br, nbr - br ); | ||
428 | br = nbr+1; | ||
429 | int se, ee, st, et; | ||
430 | mLocaleDict = new QDict<QString>; | 398 | mLocaleDict = new QDict<QString>; |
431 | QString end = "{ \"\",\"\" }"; | 399 | int i = 0; |
432 | while ( (line != end) && (br > 1) ) { | 400 | QString fw ( germanwords[i] [0]); |
433 | //qDebug("%d *%s* ", br, line.latin1()); | 401 | while ( !fw.isEmpty() ) { |
434 | se = line.find("\"")+1; | 402 | mLocaleDict->insert( fw, new QString (germanwords[i] [1] )); |
435 | et = line.findRev("\"",-1); | 403 | ++i; |
436 | ee = line.find("\",\""); | 404 | fw = germanwords[i] [0]; |
437 | st = ee+3; | ||
438 | we = line.mid( se, ee-se ); | ||
439 | wt = line.mid( st, et-st ); | ||
440 | //qDebug("*%s* *%s* ", we.latin1(), wt.latin1()); | ||
441 | mLocaleDict->insert( we, new QString (wt) ); | ||
442 | nbr = text.find ( "}", br ); | ||
443 | line = text.mid( br, nbr - br ); | ||
444 | br = nbr+1; | ||
445 | } | 405 | } |
446 | //qDebug("end *%s* ", end.latin1()); | 406 | |
447 | |||
448 | setLocaleDict( mLocaleDict ); | 407 | setLocaleDict( mLocaleDict ); |
449 | } else { | 408 | } else { |
450 | qDebug("KO: Cannot find translation file %s",fileName.latin1() ); | 409 | QString fileName ; |
451 | } | 410 | if ( mPreferredLanguage == 3 ) |
411 | fileName = MainWindow::resourcePath()+"usertranslation.txt"; | ||
412 | else if ( mPreferredLanguage == 2 ) | ||
413 | fileName = MainWindow::resourcePath()+"frenchtranslation.txt"; | ||
414 | QFile file( fileName ); | ||
415 | if (file.open( IO_ReadOnly ) ) { | ||
416 | QTextStream ts( &file ); | ||
417 | ts.setEncoding( QTextStream::Latin1 ); | ||
418 | //ts.setCodec( QTextCodec::latin1 ); | ||
419 | QString text = ts.read(); | ||
420 | file.close(); | ||
421 | text.replace( QRegExp("\\\\n"), "\n" ); | ||
422 | QString line; | ||
423 | QString we; | ||
424 | QString wt; | ||
425 | int br = 0; | ||
426 | int nbr; | ||
427 | nbr = text.find ( "},", br ); | ||
428 | line = text.mid( br, nbr - br ); | ||
429 | br = nbr+1; | ||
430 | int se, ee, st, et; | ||
431 | mLocaleDict = new QDict<QString>; | ||
432 | QString end = "{ \"\",\"\" }"; | ||
433 | while ( (line != end) && (br > 1) ) { | ||
434 | //qDebug("%d *%s* ", br, line.latin1()); | ||
435 | se = line.find("\"")+1; | ||
436 | et = line.findRev("\"",-1); | ||
437 | ee = line.find("\",\""); | ||
438 | st = ee+3; | ||
439 | we = line.mid( se, ee-se ); | ||
440 | wt = line.mid( st, et-st ); | ||
441 | //qDebug("*%s* *%s* ", we.latin1(), wt.latin1()); | ||
442 | mLocaleDict->insert( we, new QString (wt) ); | ||
443 | nbr = text.find ( "}", br ); | ||
444 | line = text.mid( br, nbr - br ); | ||
445 | br = nbr+1; | ||
446 | } | ||
447 | //qDebug("end *%s* ", end.latin1()); | ||
448 | |||
449 | setLocaleDict( mLocaleDict ); | ||
450 | } else { | ||
451 | qDebug("KO: Cannot find translation file %s",fileName.latin1() ); | ||
452 | } | ||
452 | 453 | ||
453 | } | 454 | } |
455 | } | ||
454 | config()->setGroup("General"); | 456 | config()->setGroup("General"); |
@@ -462,4 +464,4 @@ void KOPrefs::usrReadConfig() | |||
462 | if (mLocationDefaults.isEmpty()) { | 464 | if (mLocationDefaults.isEmpty()) { |
463 | mLocationDefaults << i18n("Home") << i18n("Office") << i18n("Libary") << i18n("School") << i18n("Doctor") << i18n("Beach") | 465 | mLocationDefaults << i18n("Home") << i18n("Office") << i18n("Library") << i18n("School") << i18n("Doctor") << i18n("Beach") |
464 | << i18n("University") << i18n("Restaurant") << i18n("Bar") << i18n("Conference room") << i18n("Cinema") << i18n("Lake") << i18n("Kindergarden") | 466 | << i18n("University") << i18n("Restaurant") << i18n("Bar") << i18n("Conference room") << i18n("Cinema") << i18n("Lake") << i18n("Kindergarten") |
465 | << i18n("Germany") << i18n("Sweden") << i18n("Forest") << i18n("Desert") << i18n("Kitchen") ; | 467 | << i18n("Germany") << i18n("Sweden") << i18n("Forest") << i18n("Desert") << i18n("Kitchen") ; |
diff --git a/libkcal/phoneformat.cpp b/libkcal/phoneformat.cpp index 6276498..1769b37 100644 --- a/libkcal/phoneformat.cpp +++ b/libkcal/phoneformat.cpp | |||
@@ -448,6 +448,11 @@ public: | |||
448 | 448 | ||
449 | QStringList categoryList; | 449 | QStringList cat = event->categories(); |
450 | categoryList << getCategory( Note ); | 450 | QString nCat = getCategory( Note ); |
451 | event->setCategories( categoryList ); | 451 | |
452 | // strange 0 semms to mean: alarm enabled | 452 | if ( !nCat.isEmpty() ) |
453 | if ( !cat.contains( nCat )) { | ||
454 | cat << nCat; | ||
455 | event->setCategories( cat ); | ||
456 | } | ||
457 | |||
453 | if ( alarm ) { | 458 | if ( alarm ) { |
@@ -534,3 +539,3 @@ public: | |||
534 | case GSM_CAL_CALL : CATEGORY = QString("Call"); break; | 539 | case GSM_CAL_CALL : CATEGORY = QString("Call"); break; |
535 | case GSM_CAL_MEETING : CATEGORY = QString("Meeting"); break; | 540 | //case GSM_CAL_MEETING : CATEGORY = QString("Meeting"); break; |
536 | case GSM_CAL_BIRTHDAY : CATEGORY = QString("Birthday"); break; | 541 | case GSM_CAL_BIRTHDAY : CATEGORY = QString("Birthday"); break; |
@@ -1072,2 +1077,5 @@ bool PhoneFormat::save( Calendar *calendar) | |||
1072 | while (Backup.Calendar[max]!=NULL) max++; | 1077 | while (Backup.Calendar[max]!=NULL) max++; |
1078 | |||
1079 | GSM_DateTime*dtp; | ||
1080 | |||
1073 | for (i=0;i<max;i++) { | 1081 | for (i=0;i<max;i++) { |
@@ -1076,5 +1084,29 @@ bool PhoneFormat::save( Calendar *calendar) | |||
1076 | Note = *Backup.Calendar[i]; | 1084 | Note = *Backup.Calendar[i]; |
1085 | |||
1086 | #if 0 | ||
1087 | int j; | ||
1088 | for (j=0;j<Note.EntriesNum;j++) { | ||
1089 | //qDebug(" for ev"); | ||
1090 | switch (Note.Entries[j].EntryType) { | ||
1091 | case CAL_START_DATETIME: | ||
1092 | //Note->Entries[i].Date.Hour = 5; | ||
1093 | dtp = &Note.Entries[j].Date; | ||
1094 | qDebug("start event %d %d %d - %d %d %d", dtp->Year, dtp->Month, dtp->Day, dtp->Hour, dtp->Minute, dtp->Second ); | ||
1095 | break; | ||
1096 | case CAL_END_DATETIME: | ||
1097 | dtp = &Note.Entries[j].Date; | ||
1098 | qDebug("end event %d %d %d - %d %d %d", dtp->Year, dtp->Month, dtp->Day, dtp->Hour, dtp->Minute, dtp->Second ); | ||
1099 | break; | ||
1100 | } | ||
1101 | } | ||
1102 | int type = Note.Type; | ||
1103 | qDebug(" event type %d - %d %d - %d %d %d",type, GSM_CAL_CALL , GSM_CAL_MEETING ,GSM_CAL_BIRTHDAY, GSM_CAL_MEMO ,GSM_CAL_ALARM ); | ||
1104 | #endif | ||
1105 | |||
1106 | Note.Type = GSM_CAL_MEETING; | ||
1107 | // pending: fix in gammu GSM_ReadBackupFile the type settings | ||
1108 | int loc = Note.Location; | ||
1077 | Note.Location = 0; | 1109 | Note.Location = 0; |
1078 | error=Phone->AddCalendar(&s,&Note); | 1110 | error=Phone->AddCalendar(&s,&Note); |
1079 | qDebug("add event %d %d", error, Note.Location ); | 1111 | qDebug("add event %d %d %d", error, Note.Location, loc ); |
1080 | } | 1112 | } |
diff --git a/libkcal/vcalformat.cpp b/libkcal/vcalformat.cpp index 9307f12..0ebd7d1 100644 --- a/libkcal/vcalformat.cpp +++ b/libkcal/vcalformat.cpp | |||
@@ -31,2 +31,3 @@ | |||
31 | #include <kdebug.h> | 31 | #include <kdebug.h> |
32 | #include <kglobal.h> | ||
32 | #include <kmessagebox.h> | 33 | #include <kmessagebox.h> |
@@ -48,2 +49,3 @@ VCalFormat::VCalFormat() | |||
48 | mCalendar = 0; | 49 | mCalendar = 0; |
50 | useLocalTime = false; | ||
49 | } | 51 | } |
@@ -168,5 +170,8 @@ bool VCalFormat::fromString( Calendar *calendar, const QString &text ) | |||
168 | 170 | ||
169 | QString VCalFormat::eventToString( Event * event, Calendar *calendar) | 171 | QString VCalFormat::eventToString( Event * event, Calendar *calendar, bool useLocal) |
170 | { | 172 | { |
173 | |||
171 | if ( !event ) return QString::null; | 174 | if ( !event ) return QString::null; |
175 | bool useL = useLocalTime; | ||
176 | useLocalTime = useLocal; | ||
172 | mCalendar = calendar; | 177 | mCalendar = calendar; |
@@ -176,7 +181,11 @@ QString VCalFormat::eventToString( Event * event, Calendar *calendar) | |||
176 | cleanVObject( vevent ); | 181 | cleanVObject( vevent ); |
182 | useLocalTime = useL; | ||
177 | return result; | 183 | return result; |
178 | } | 184 | } |
179 | QString VCalFormat::todoToString( Todo * todo, Calendar *calendar ) | 185 | QString VCalFormat::todoToString( Todo * todo, Calendar *calendar, bool useLocal ) |
180 | { | 186 | { |
187 | |||
181 | if ( !todo ) return QString::null; | 188 | if ( !todo ) return QString::null; |
189 | bool useL = useLocalTime; | ||
190 | useLocalTime = useLocal; | ||
182 | mCalendar = calendar; | 191 | mCalendar = calendar; |
@@ -186,2 +195,3 @@ QString VCalFormat::todoToString( Todo * todo, Calendar *calendar ) | |||
186 | cleanVObject( vevent ); | 195 | cleanVObject( vevent ); |
196 | useLocalTime = useL; | ||
187 | return result; | 197 | return result; |
@@ -1436,5 +1446,4 @@ QString VCalFormat::qDateTimeToISO(const QDateTime &qdt, bool zulu) | |||
1436 | ASSERT(qdt.time().isValid()); | 1446 | ASSERT(qdt.time().isValid()); |
1437 | if (zulu) { | 1447 | if (zulu && !useLocalTime ) { |
1438 | QDateTime tmpDT(qdt); | 1448 | QDateTime tmpDT = qdt.addSecs ( -KGlobal::locale()->localTimeOffset( qdt )*60); |
1439 | tmpDT = tmpDT.addSecs(60*(-mCalendar->getTimeZone())); // correct to GMT. | ||
1440 | tmpStr.sprintf("%.2d%.2d%.2dT%.2d%.2d%.2dZ", | 1449 | tmpStr.sprintf("%.2d%.2d%.2dT%.2d%.2d%.2dZ", |
diff --git a/libkcal/vcalformat.h b/libkcal/vcalformat.h index 7b9ca26..848be78 100644 --- a/libkcal/vcalformat.h +++ b/libkcal/vcalformat.h | |||
@@ -64,4 +64,4 @@ class VCalFormat : public CalFormat { | |||
64 | QString toString( Calendar * ); | 64 | QString toString( Calendar * ); |
65 | QString eventToString( Event *, Calendar *calendar ); | 65 | QString eventToString( Event *, Calendar *calendar, bool useLocalTime = true ); |
66 | QString todoToString( Todo * ,Calendar *calendar ); | 66 | QString todoToString( Todo * ,Calendar *calendar, bool useLocalTime = true ); |
67 | 67 | ||
@@ -102,2 +102,3 @@ class VCalFormat : public CalFormat { | |||
102 | Calendar *mCalendar; | 102 | Calendar *mCalendar; |
103 | bool useLocalTime; | ||
103 | 104 | ||