summaryrefslogtreecommitdiffabout
path: root/korganizer/koprefs.cpp
Unidiff
Diffstat (limited to 'korganizer/koprefs.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/koprefs.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/korganizer/koprefs.cpp b/korganizer/koprefs.cpp
index a886735..f1f1442 100644
--- a/korganizer/koprefs.cpp
+++ b/korganizer/koprefs.cpp
@@ -433,60 +433,64 @@ void KOPrefs::usrReadConfig()
433 fillMailDefaults(); 433 fillMailDefaults();
434 434
435 config()->setGroup("Category Colors"); 435 config()->setGroup("Category Colors");
436 QStringList::Iterator it; 436 QStringList::Iterator it;
437 for (it = mCustomCategories.begin();it != mCustomCategories.end();++it ) { 437 for (it = mCustomCategories.begin();it != mCustomCategories.end();++it ) {
438 setCategoryColor(*it,config()->readColorEntry(*it,&mDefaultCategoryColor)); 438 setCategoryColor(*it,config()->readColorEntry(*it,&mDefaultCategoryColor));
439 439
440 } 440 }
441 KConfig fc (locateLocal("config","kopicalendarrc")); 441 KConfig fc (locateLocal("config","kopicalendarrc"));
442 fc.setGroup("CC"); 442 fc.setGroup("CC");
443 int numCals = fc.readNumEntry("NumberCalendars",0 ); 443 int numCals = fc.readNumEntry("NumberCalendars",0 );
444 mNextAvailableCalendar = 1; 444 mNextAvailableCalendar = 1;
445 if ( numCals == 0 ) { 445 if ( numCals == 0 ) {
446 KopiCalendarFile *kkf = getNewCalendar(); 446 KopiCalendarFile *kkf = getNewCalendar();
447 kkf->isStandard = true; 447 kkf->isStandard = true;
448 kkf->mName = i18n("Standard"); 448 kkf->mName = i18n("Standard");
449 kkf->mFileName = locateLocal( "data", "korganizer/mycalendar.ics" ); 449 kkf->mFileName = locateLocal( "data", "korganizer/mycalendar.ics" );
450 } 450 }
451 while ( mNextAvailableCalendar <= numCals ) { 451 while ( mNextAvailableCalendar <= numCals ) {
452 //qDebug("Read cal #%d ", mNextAvailableCalendar ); 452 //qDebug("Read cal #%d ", mNextAvailableCalendar );
453 QString prefix = "Cal_" +QString::number( mNextAvailableCalendar ); 453 QString prefix = "Cal_" +QString::number( mNextAvailableCalendar );
454 KopiCalendarFile *kkf = getNewCalendar(); 454 KopiCalendarFile *kkf = getNewCalendar();
455 kkf->isStandard = fc.readBoolEntry( prefix+"_isStandard", false ); 455 kkf->isStandard = fc.readBoolEntry( prefix+"_isStandard", false );
456 kkf->isEnabled = fc.readBoolEntry( prefix+"_isEnabled", true); 456 kkf->isEnabled = fc.readBoolEntry( prefix+"_isEnabled", true);
457 kkf->isRelative = fc.readBoolEntry( prefix+"_isRelative", false );
457 kkf->isAlarmEnabled = fc.readBoolEntry( prefix+"_isAlarmEnabled", true); 458 kkf->isAlarmEnabled = fc.readBoolEntry( prefix+"_isAlarmEnabled", true);
458 kkf->isReadOnly = fc.readBoolEntry( prefix+"_isReadOnly", false); 459 kkf->isReadOnly = fc.readBoolEntry( prefix+"_isReadOnly", false);
459 kkf->mName = fc.readEntry( prefix+"_Name", "Calendar"); 460 kkf->mName = fc.readEntry( prefix+"_Name", "Calendar");
460 kkf->mFileName = fc.readEntry( prefix+"_FileName", kkf->mFileName); 461 kkf->mFileName = fc.readEntry( prefix+"_FileName", kkf->mFileName);
462 kkf->mSavedFileName = fc.readEntry( prefix+"_SavedFileName", kkf->mFileName);
461 kkf->mDefaultColor = fc.readColorEntry( prefix+"_Color",&mEventColor); 463 kkf->mDefaultColor = fc.readColorEntry( prefix+"_Color",&mEventColor);
462 if ( kkf->mCalNumber == 1 ) { 464 if ( kkf->mCalNumber == 1 ) {
463 kkf->mFileName = locateLocal( "data", "korganizer/mycalendar.ics" ); 465 kkf->mFileName = locateLocal( "data", "korganizer/mycalendar.ics" );
464 } 466 }
465 //qDebug("NAME %s %s", kkf->mName.latin1(), i18n("Birthdays").latin1() ); 467 //qDebug("NAME %s %s", kkf->mName.latin1(), i18n("Birthdays").latin1() );
466 if ( kkf->mName == i18n("Birthdays") ) { 468 if ( kkf->mName == i18n("Birthdays") ) {
467 kkf->mFileName = locateLocal( "data", "korganizer/birthdays.ics" ); 469 kkf->mFileName = locateLocal( "data", "korganizer/birthdays.ics" );
468 } 470 }
471 if ( kkf->isRelative )
472 kkf->mFileName = KGlobalSettings::calendarDir() + kkf->mSavedFileName;
469 } 473 }
470 474
471 KPimPrefs::usrReadConfig(); 475 KPimPrefs::usrReadConfig();
472} 476}
473 477
474KopiCalendarFile * KOPrefs::getCalendar( int num ) 478KopiCalendarFile * KOPrefs::getCalendar( int num )
475{ 479{
476 return mDefCalColors[num-1]; 480 return mDefCalColors[num-1];
477} 481}
478 482
479KopiCalendarFile * KOPrefs::getNewCalendar() 483KopiCalendarFile * KOPrefs::getNewCalendar()
480{ 484{
481 KopiCalendarFile * kkf = new KopiCalendarFile(); 485 KopiCalendarFile * kkf = new KopiCalendarFile();
482 kkf->mCalNumber = mNextAvailableCalendar; 486 kkf->mCalNumber = mNextAvailableCalendar;
483 mDefCalColors.resize( mNextAvailableCalendar ); 487 mDefCalColors.resize( mNextAvailableCalendar );
484 mDefCalColors[mNextAvailableCalendar-1] = kkf; 488 mDefCalColors[mNextAvailableCalendar-1] = kkf;
485 ++mNextAvailableCalendar; 489 ++mNextAvailableCalendar;
486 kkf->mDefaultColor = mEventColor; 490 kkf->mDefaultColor = mEventColor;
487 kkf->mName = i18n("New Calendar"); 491 kkf->mName = i18n("New Calendar");
488 mCalendars.append( kkf ); 492 mCalendars.append( kkf );
489 return kkf; 493 return kkf;
490} 494}
491void KOPrefs::deleteCalendar( int num ) 495void KOPrefs::deleteCalendar( int num )
492{ 496{
@@ -531,50 +535,52 @@ void KOPrefs::usrWriteConfig()
531 535
532 config()->setGroup("Category Colors"); 536 config()->setGroup("Category Colors");
533 QDictIterator<QColor> it(mCategoryColors); 537 QDictIterator<QColor> it(mCategoryColors);
534 while (it.current()) { 538 while (it.current()) {
535 config()->writeEntry(it.currentKey(),*(it.current())); 539 config()->writeEntry(it.currentKey(),*(it.current()));
536 ++it; 540 ++it;
537 } 541 }
538 KConfig fc (locateLocal("config","kopicalendarrc")); 542 KConfig fc (locateLocal("config","kopicalendarrc"));
539 fc.setGroup("CC"); 543 fc.setGroup("CC");
540 fc.writeEntry("NumberCalendars",mCalendars.count()); 544 fc.writeEntry("NumberCalendars",mCalendars.count());
541 int numCal = 1; 545 int numCal = 1;
542 int writeCal = 0; 546 int writeCal = 0;
543 while ( numCal < mNextAvailableCalendar ) { 547 while ( numCal < mNextAvailableCalendar ) {
544 KopiCalendarFile * kkf = mCalendars.first(); 548 KopiCalendarFile * kkf = mCalendars.first();
545 while ( kkf ) { 549 while ( kkf ) {
546 //qDebug("cal num %d %d ", kkf->mCalNumber, numCal); 550 //qDebug("cal num %d %d ", kkf->mCalNumber, numCal);
547 if ( kkf->mCalNumber == numCal ) { 551 if ( kkf->mCalNumber == numCal ) {
548 ++writeCal; 552 ++writeCal;
549 //qDebug("Write calendar %d %d ", numCal , writeCal); 553 //qDebug("Write calendar %d %d ", numCal , writeCal);
550 QString prefix = "Cal_" + QString::number( writeCal ); 554 QString prefix = "Cal_" + QString::number( writeCal );
551 fc.writeEntry( prefix+"_isStandard", kkf->isStandard ); 555 fc.writeEntry( prefix+"_isStandard", kkf->isStandard );
552 fc.writeEntry( prefix+"_isEnabled", kkf->isEnabled ); 556 fc.writeEntry( prefix+"_isEnabled", kkf->isEnabled );
553 fc.writeEntry( prefix+"_isAlarmEnabled", kkf->isAlarmEnabled ); 557 fc.writeEntry( prefix+"_isAlarmEnabled", kkf->isAlarmEnabled );
554 fc.writeEntry( prefix+"_isReadOnly", kkf->isReadOnly ); 558 fc.writeEntry( prefix+"_isReadOnly", kkf->isReadOnly );
559 fc.writeEntry( prefix+"_isRelative", kkf->isRelative );
555 fc.writeEntry( prefix+"_Name", kkf->mName); 560 fc.writeEntry( prefix+"_Name", kkf->mName);
556 fc.writeEntry( prefix+"_FileName", kkf->mFileName); 561 fc.writeEntry( prefix+"_FileName", kkf->mFileName);
562 fc.writeEntry( prefix+"_SavedFileName", kkf->mSavedFileName);
557 fc.writeEntry( prefix+"_Color",kkf->mDefaultColor); 563 fc.writeEntry( prefix+"_Color",kkf->mDefaultColor);
558 } 564 }
559 kkf = mCalendars.next(); 565 kkf = mCalendars.next();
560 } 566 }
561 ++numCal; 567 ++numCal;
562 } 568 }
563 fc.sync(); 569 fc.sync();
564 KPimPrefs::usrWriteConfig(); 570 KPimPrefs::usrWriteConfig();
565} 571}
566 572
567void KOPrefs::setCategoryColor(QString cat,const QColor & color) 573void KOPrefs::setCategoryColor(QString cat,const QColor & color)
568{ 574{
569 mCategoryColors.replace(cat,new QColor(color)); 575 mCategoryColors.replace(cat,new QColor(color));
570} 576}
571 577
572QColor *KOPrefs::categoryColor(QString cat) 578QColor *KOPrefs::categoryColor(QString cat)
573{ 579{
574 QColor *color = 0; 580 QColor *color = 0;
575 581
576 if (!cat.isEmpty()) color = mCategoryColors[cat]; 582 if (!cat.isEmpty()) color = mCategoryColors[cat];
577 583
578 if (color) return color; 584 if (color) return color;
579 else return &mDefaultCategoryColor; 585 else return &mDefaultCategoryColor;
580} 586}