summaryrefslogtreecommitdiffabout
authorzautrix <zautrix>2006-02-27 22:49:08 (UTC)
committer zautrix <zautrix>2006-02-27 22:49:08 (UTC)
commita388f4f019ccf2b7c138a6814b44b9e8f2a5f570 (patch) (unidiff)
tree5fe3d6341dee12d97200cf3ce1abe2feedb56782
parent4e2553b95b2787ed7917073f6b628819b1f017c3 (diff)
downloadkdepimpi-a388f4f019ccf2b7c138a6814b44b9e8f2a5f570.zip
kdepimpi-a388f4f019ccf2b7c138a6814b44b9e8f2a5f570.tar.gz
kdepimpi-a388f4f019ccf2b7c138a6814b44b9e8f2a5f570.tar.bz2
trying to readonly problem
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/koprefs.cpp1
-rw-r--r--korganizer/koprefs.h12
2 files changed, 7 insertions, 6 deletions
diff --git a/korganizer/koprefs.cpp b/korganizer/koprefs.cpp
index 9147af3..5078c57 100644
--- a/korganizer/koprefs.cpp
+++ b/korganizer/koprefs.cpp
@@ -335,256 +335,257 @@ KOPrefs::KOPrefs() :
335 mCalendars.setAutoDelete( true ); 335 mCalendars.setAutoDelete( true );
336} 336}
337 337
338 338
339KOPrefs::~KOPrefs() 339KOPrefs::~KOPrefs()
340{ 340{
341 if (mInstance == this) 341 if (mInstance == this)
342 mInstance = insd.setObject(0); 342 mInstance = insd.setObject(0);
343 mCalendars.setAutoDelete( true ); 343 mCalendars.setAutoDelete( true );
344 mCalendars.clear(); 344 mCalendars.clear();
345 //qDebug("KOPrefs::~KOPrefs() "); 345 //qDebug("KOPrefs::~KOPrefs() ");
346} 346}
347 347
348 348
349KOPrefs *KOPrefs::instance() 349KOPrefs *KOPrefs::instance()
350{ 350{
351 if (!mInstance) { 351 if (!mInstance) {
352 mInstance = insd.setObject(new KOPrefs()); 352 mInstance = insd.setObject(new KOPrefs());
353 mInstance->readConfig(); 353 mInstance->readConfig();
354 } 354 }
355 355
356 return mInstance; 356 return mInstance;
357} 357}
358 358
359void KOPrefs::usrSetDefaults() 359void KOPrefs::usrSetDefaults()
360{ 360{
361 361
362} 362}
363 363
364void KOPrefs::fillMailDefaults() 364void KOPrefs::fillMailDefaults()
365{ 365{
366 if (mName.isEmpty()) mName = i18n("Anonymous"); 366 if (mName.isEmpty()) mName = i18n("Anonymous");
367 if (mEmail.isEmpty()) mEmail = i18n("nobody@nowhere"); 367 if (mEmail.isEmpty()) mEmail = i18n("nobody@nowhere");
368} 368}
369 369
370void KOPrefs::setTimeZoneIdDefault() 370void KOPrefs::setTimeZoneIdDefault()
371{ 371{
372 ; 372 ;
373} 373}
374 374
375void KOPrefs::setAllDefaults() 375void KOPrefs::setAllDefaults()
376{ 376{
377 setCategoryDefaults(); 377 setCategoryDefaults();
378 mEventSummaryUser = getDefaultList() ; 378 mEventSummaryUser = getDefaultList() ;
379 mTodoSummaryUser = getDefaultList() ; 379 mTodoSummaryUser = getDefaultList() ;
380 mJournalSummaryUser = getDefaultList() ; 380 mJournalSummaryUser = getDefaultList() ;
381 mLocationDefaults = getLocationDefaultList(); 381 mLocationDefaults = getLocationDefaultList();
382} 382}
383 383
384void KOPrefs::setCategoryDefaults() 384void KOPrefs::setCategoryDefaults()
385{ 385{
386 mCustomCategories.clear(); 386 mCustomCategories.clear();
387 mCustomCategories = getDefaultList(); 387 mCustomCategories = getDefaultList();
388 388
389 QStringList::Iterator it; 389 QStringList::Iterator it;
390 for (it = mCustomCategories.begin();it != mCustomCategories.end();++it ) { 390 for (it = mCustomCategories.begin();it != mCustomCategories.end();++it ) {
391 setCategoryColor(*it,mDefaultCategoryColor); 391 setCategoryColor(*it,mDefaultCategoryColor);
392 } 392 }
393} 393}
394QStringList KOPrefs::getLocationDefaultList() 394QStringList KOPrefs::getLocationDefaultList()
395{ 395{
396 QStringList retval ; 396 QStringList retval ;
397 retval << i18n("Home") << i18n("Office") << i18n("Library") << i18n("School") << i18n("Doctor") << i18n("Beach") 397 retval << i18n("Home") << i18n("Office") << i18n("Library") << i18n("School") << i18n("Doctor") << i18n("Beach")
398 << i18n("University") << i18n("Restaurant") << i18n("Bar") << i18n("Conference room") 398 << i18n("University") << i18n("Restaurant") << i18n("Bar") << i18n("Conference room")
399 << i18n("Cinema") << i18n("Lake") << i18n("Kindergarten") 399 << i18n("Cinema") << i18n("Lake") << i18n("Kindergarten")
400 << i18n("Germany") << i18n("Sweden") << i18n("Forest") << i18n("Desert") << i18n("Kitchen") ; 400 << i18n("Germany") << i18n("Sweden") << i18n("Forest") << i18n("Desert") << i18n("Kitchen") ;
401 // << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") 401 // << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("") << i18n("")
402 402
403 retval.sort(); 403 retval.sort();
404 return retval; 404 return retval;
405} 405}
406QStringList KOPrefs::getDefaultList() 406QStringList KOPrefs::getDefaultList()
407{ 407{
408 QStringList retval ; 408 QStringList retval ;
409 retval << i18n("Anniversary") << i18n("Appointment") << i18n("Birthday") << i18n("Business") << i18n("Customer") 409 retval << i18n("Anniversary") << i18n("Appointment") << i18n("Birthday") << i18n("Business") << i18n("Customer")
410 << i18n("Break") 410 << i18n("Break")
411 << i18n("Family") << i18n("Favorites") << i18n("Fishing") << i18n("Gifts") 411 << i18n("Family") << i18n("Favorites") << i18n("Fishing") << i18n("Gifts")
412 << i18n("Holiday") << i18n("Holiday Cards")<< i18n("Hot Contacts") 412 << i18n("Holiday") << i18n("Holiday Cards")<< i18n("Hot Contacts")
413 << i18n("Meeting") << i18n("Miscellaneous") << i18n("Partner") << i18n("Personal") 413 << i18n("Meeting") << i18n("Miscellaneous") << i18n("Partner") << i18n("Personal")
414 << i18n("PHB") << i18n("Phone Calls") << i18n("Shopping") 414 << i18n("PHB") << i18n("Phone Calls") << i18n("Shopping")
415 << i18n("Sports") << i18n("Talk") << i18n("Travel") << i18n("TV") 415 << i18n("Sports") << i18n("Talk") << i18n("Travel") << i18n("TV")
416 << i18n("Vacation") ; 416 << i18n("Vacation") ;
417 retval.sort(); 417 retval.sort();
418 //qDebug("cat %s ", retval.join("-").latin1()); 418 //qDebug("cat %s ", retval.join("-").latin1());
419 return retval; 419 return retval;
420} 420}
421// << i18n("Business Travel") << i18n("Education") << i18n("Hiking") << i18n("Hunting") << i18n("Recurring") << i18n("Personal Travel") << i18n("Speach") << i18n("Festival") << i18n("Competition")<< i18n("Party")<< i18n("Projects")<< i18n("Kids") << i18n("Special Occasion")<< i18n("Breakfast")<< i18n("Dinner") << i18n("Lunch")<< i18n("University")<< i18n("School")<< i18n("Flight")<< i18n("Key Customer") << i18n("VIP") << i18n("SyncEvent") << i18n("Cinema") 421// << i18n("Business Travel") << i18n("Education") << i18n("Hiking") << i18n("Hunting") << i18n("Recurring") << i18n("Personal Travel") << i18n("Speach") << i18n("Festival") << i18n("Competition")<< i18n("Party")<< i18n("Projects")<< i18n("Kids") << i18n("Special Occasion")<< i18n("Breakfast")<< i18n("Dinner") << i18n("Lunch")<< i18n("University")<< i18n("School")<< i18n("Flight")<< i18n("Key Customer") << i18n("VIP") << i18n("SyncEvent") << i18n("Cinema")
422void KOPrefs::usrReadConfig() 422void KOPrefs::usrReadConfig()
423{ 423{
424 config()->setGroup("General"); 424 config()->setGroup("General");
425 425
426 //qDebug("KOPrefs::usrReadConfig() "); 426 //qDebug("KOPrefs::usrReadConfig() ");
427 mCustomCategories = config()->readListEntry("Custom Categories"); 427 mCustomCategories = config()->readListEntry("Custom Categories");
428 mOldLoadedLanguage = mOldLanguage ; 428 mOldLoadedLanguage = mOldLanguage ;
429 mOldLanguage = KPimGlobalPrefs::instance()->mPreferredLanguage; 429 mOldLanguage = KPimGlobalPrefs::instance()->mPreferredLanguage;
430 if (mLocationDefaults.isEmpty()) { 430 if (mLocationDefaults.isEmpty()) {
431 mLocationDefaults = getLocationDefaultList(); 431 mLocationDefaults = getLocationDefaultList();
432 } 432 }
433 433
434 if (mEventSummaryUser.isEmpty()) { 434 if (mEventSummaryUser.isEmpty()) {
435 mEventSummaryUser = getDefaultList() ; 435 mEventSummaryUser = getDefaultList() ;
436 } 436 }
437 if (mTodoSummaryUser.isEmpty()) { 437 if (mTodoSummaryUser.isEmpty()) {
438 mTodoSummaryUser = getDefaultList() ; 438 mTodoSummaryUser = getDefaultList() ;
439 } 439 }
440 440
441 if (mCustomCategories.isEmpty()) setCategoryDefaults(); 441 if (mCustomCategories.isEmpty()) setCategoryDefaults();
442 442
443 config()->setGroup("Personal Settings"); 443 config()->setGroup("Personal Settings");
444 mName = config()->readEntry("user_name",""); 444 mName = config()->readEntry("user_name","");
445 mEmail = config()->readEntry("user_email",""); 445 mEmail = config()->readEntry("user_email","");
446 fillMailDefaults(); 446 fillMailDefaults();
447 447
448 config()->setGroup("Category Colors"); 448 config()->setGroup("Category Colors");
449 QStringList::Iterator it; 449 QStringList::Iterator it;
450 for (it = mCustomCategories.begin();it != mCustomCategories.end();++it ) { 450 for (it = mCustomCategories.begin();it != mCustomCategories.end();++it ) {
451 setCategoryColor(*it,config()->readColorEntry(*it,&mDefaultCategoryColor)); 451 setCategoryColor(*it,config()->readColorEntry(*it,&mDefaultCategoryColor));
452 452
453 } 453 }
454 KConfig fc (locateLocal("config","kopicalendarrc")); 454 KConfig fc (locateLocal("config","kopicalendarrc"));
455 fc.setGroup("CC"); 455 fc.setGroup("CC");
456 int numCals = fc.readNumEntry("NumberCalendars",0 ); 456 int numCals = fc.readNumEntry("NumberCalendars",0 );
457 mNextAvailableCalendar = 1; 457 mNextAvailableCalendar = 1;
458 if ( numCals == 0 ) { 458 if ( numCals == 0 ) {
459 KopiCalendarFile *kkf = getNewCalendar(); 459 KopiCalendarFile *kkf = getNewCalendar();
460 kkf->isStandard = true; 460 kkf->isStandard = true;
461 kkf->mName = i18n("Standard"); 461 kkf->mName = i18n("Standard");
462 kkf->mFileName = QDir::convertSeparators( locateLocal( "data", "korganizer/mycalendar.ics" ) ); 462 kkf->mFileName = QDir::convertSeparators( locateLocal( "data", "korganizer/mycalendar.ics" ) );
463 kkf->isReadOnly = false;
463 } 464 }
464 while ( mNextAvailableCalendar <= numCals ) { 465 while ( mNextAvailableCalendar <= numCals ) {
465 //qDebug("Read cal #%d ", mNextAvailableCalendar ); 466 //qDebug("Read cal #%d ", mNextAvailableCalendar );
466 QString prefix = "Cal_" +QString::number( mNextAvailableCalendar ); 467 QString prefix = "Cal_" +QString::number( mNextAvailableCalendar );
467 KopiCalendarFile *kkf = getNewCalendar(); 468 KopiCalendarFile *kkf = getNewCalendar();
468 kkf->isStandard = fc.readBoolEntry( prefix+"_isStandard", false ); 469 kkf->isStandard = fc.readBoolEntry( prefix+"_isStandard", false );
469 kkf->isEnabled = fc.readBoolEntry( prefix+"_isEnabled", true); 470 kkf->isEnabled = fc.readBoolEntry( prefix+"_isEnabled", true);
470 kkf->isRelative = fc.readBoolEntry( prefix+"_isRelative", false ); 471 kkf->isRelative = fc.readBoolEntry( prefix+"_isRelative", false );
471 kkf->isAlarmEnabled = fc.readBoolEntry( prefix+"_isAlarmEnabled", true); 472 kkf->isAlarmEnabled = fc.readBoolEntry( prefix+"_isAlarmEnabled", true);
472 kkf->isReadOnly = fc.readBoolEntry( prefix+"_isReadOnly", false); 473 kkf->isReadOnly = fc.readBoolEntry( prefix+"_isReadOnly", false);
473 kkf->mName = fc.readEntry( prefix+"_Name", "Calendar"); 474 kkf->mName = fc.readEntry( prefix+"_Name", "Calendar");
474 kkf->mFileName = QDir::convertSeparators( fc.readEntry( prefix+"_FileName", kkf->mFileName) ); 475 kkf->mFileName = QDir::convertSeparators( fc.readEntry( prefix+"_FileName", kkf->mFileName) );
475 kkf->mSavedFileName = QDir::convertSeparators( fc.readEntry( prefix+"_SavedFileName", kkf->mFileName) ); 476 kkf->mSavedFileName = QDir::convertSeparators( fc.readEntry( prefix+"_SavedFileName", kkf->mFileName) );
476 kkf->mDefaultColor = fc.readColorEntry( prefix+"_Color",&mEventColor); 477 kkf->mDefaultColor = fc.readColorEntry( prefix+"_Color",&mEventColor);
477 if ( kkf->mCalNumber == 1 ) { 478 if ( kkf->mCalNumber == 1 ) {
478 kkf->mFileName = locateLocal( "data", "korganizer/mycalendar.ics" ); 479 kkf->mFileName = locateLocal( "data", "korganizer/mycalendar.ics" );
479 } 480 }
480 //qDebug("NAME %s %s", kkf->mName.latin1(), i18n("Birthdays").latin1() ); 481 //qDebug("NAME %s %s", kkf->mName.latin1(), i18n("Birthdays").latin1() );
481 if ( kkf->mName == i18n("Birthdays") ) { 482 if ( kkf->mName == i18n("Birthdays") ) {
482 kkf->mFileName = locateLocal( "data", "korganizer/birthdays.ics" ); 483 kkf->mFileName = locateLocal( "data", "korganizer/birthdays.ics" );
483 } 484 }
484 if ( kkf->isRelative ) 485 if ( kkf->isRelative )
485 kkf->mFileName = QDir::convertSeparators( KGlobalSettings::calendarDir() + kkf->mSavedFileName ); 486 kkf->mFileName = QDir::convertSeparators( KGlobalSettings::calendarDir() + kkf->mSavedFileName );
486 } 487 }
487 488
488 KPimPrefs::usrReadConfig(); 489 KPimPrefs::usrReadConfig();
489} 490}
490 491
491KopiCalendarFile * KOPrefs::getCalendar( int num ) 492KopiCalendarFile * KOPrefs::getCalendar( int num )
492{ 493{
493 return mDefCalColors[num-1]; 494 return mDefCalColors[num-1];
494} 495}
495 496
496KopiCalendarFile * KOPrefs::getNewCalendar() 497KopiCalendarFile * KOPrefs::getNewCalendar()
497{ 498{
498 KopiCalendarFile * kkf = new KopiCalendarFile(); 499 KopiCalendarFile * kkf = new KopiCalendarFile();
499 kkf->mCalNumber = mNextAvailableCalendar; 500 kkf->mCalNumber = mNextAvailableCalendar;
500 mDefCalColors.resize( mNextAvailableCalendar ); 501 mDefCalColors.resize( mNextAvailableCalendar );
501 mDefCalColors[mNextAvailableCalendar-1] = kkf; 502 mDefCalColors[mNextAvailableCalendar-1] = kkf;
502 ++mNextAvailableCalendar; 503 ++mNextAvailableCalendar;
503 kkf->mDefaultColor = mEventColor; 504 kkf->mDefaultColor = mEventColor;
504 kkf->mName = i18n("New Calendar"); 505 kkf->mName = i18n("New Calendar");
505 mCalendars.append( kkf ); 506 mCalendars.append( kkf );
506 return kkf; 507 return kkf;
507} 508}
508void KOPrefs::deleteCalendar( int num ) 509void KOPrefs::deleteCalendar( int num )
509{ 510{
510 KopiCalendarFile * kkf = mCalendars.first(); 511 KopiCalendarFile * kkf = mCalendars.first();
511 while ( kkf ) { 512 while ( kkf ) {
512 if ( kkf->mCalNumber == num ) { 513 if ( kkf->mCalNumber == num ) {
513 qDebug("KOPrefs::deleteCalendar %d ", num ); 514 qDebug("KOPrefs::deleteCalendar %d ", num );
514 mCalendars.remove( kkf ); 515 mCalendars.remove( kkf );
515 delete kkf; 516 delete kkf;
516 return; 517 return;
517 } 518 }
518 kkf = mCalendars.next(); 519 kkf = mCalendars.next();
519 } 520 }
520} 521}
521int KOPrefs::getCalendarID( const QString & name ) 522int KOPrefs::getCalendarID( const QString & name )
522{ 523{
523 KopiCalendarFile * kkf = mCalendars.first(); 524 KopiCalendarFile * kkf = mCalendars.first();
524 while ( kkf ) { 525 while ( kkf ) {
525 if ( name == kkf->mName) 526 if ( name == kkf->mName)
526 return kkf->mCalNumber; 527 return kkf->mCalNumber;
527 kkf = mCalendars.next(); 528 kkf = mCalendars.next();
528 } 529 }
529 return 1; 530 return 1;
530} 531}
531int KOPrefs::getFuzzyCalendarID( const QString & name ) 532int KOPrefs::getFuzzyCalendarID( const QString & name )
532{ 533{
533 KopiCalendarFile * kkf = mCalendars.first(); 534 KopiCalendarFile * kkf = mCalendars.first();
534 while ( kkf ) { 535 while ( kkf ) {
535 if ( name.lower() == kkf->mName.lower()) 536 if ( name.lower() == kkf->mName.lower())
536 return kkf->mCalNumber; 537 return kkf->mCalNumber;
537 kkf = mCalendars.next(); 538 kkf = mCalendars.next();
538 } 539 }
539 QString name2 = name; 540 QString name2 = name;
540 name2.replace (QRegExp ("_")," " ); 541 name2.replace (QRegExp ("_")," " );
541 kkf = mCalendars.first(); 542 kkf = mCalendars.first();
542 while ( kkf ) { 543 while ( kkf ) {
543 if ( name2.lower() == kkf->mName.lower()) 544 if ( name2.lower() == kkf->mName.lower())
544 return kkf->mCalNumber; 545 return kkf->mCalNumber;
545 kkf = mCalendars.next(); 546 kkf = mCalendars.next();
546 } 547 }
547 return 0; 548 return 0;
548} 549}
549QString KOPrefs::calName( int calNum) const 550QString KOPrefs::calName( int calNum) const
550{ 551{
551 return (mDefCalColors[calNum-1])->mName; 552 return (mDefCalColors[calNum-1])->mName;
552} 553}
553QColor KOPrefs::defaultColor( int calNum ) const 554QColor KOPrefs::defaultColor( int calNum ) const
554{ 555{
555 if ( calNum == 1 ) return mEventColor; 556 if ( calNum == 1 ) return mEventColor;
556 return (mDefCalColors[calNum-1])->mDefaultColor; 557 return (mDefCalColors[calNum-1])->mDefaultColor;
557} 558}
558void KOPrefs::usrWriteConfig() 559void KOPrefs::usrWriteConfig()
559{ 560{
560 config()->setGroup("General"); 561 config()->setGroup("General");
561 config()->writeEntry("Custom Categories",mCustomCategories); 562 config()->writeEntry("Custom Categories",mCustomCategories);
562 563
563 config()->setGroup("Personal Settings"); 564 config()->setGroup("Personal Settings");
564 config()->writeEntry("user_name",mName); 565 config()->writeEntry("user_name",mName);
565 config()->writeEntry("user_email",mEmail); 566 config()->writeEntry("user_email",mEmail);
566 567
567 config()->setGroup("Category Colors"); 568 config()->setGroup("Category Colors");
568 QDictIterator<QColor> it(mCategoryColors); 569 QDictIterator<QColor> it(mCategoryColors);
569 while (it.current()) { 570 while (it.current()) {
570 config()->writeEntry(it.currentKey(),*(it.current())); 571 config()->writeEntry(it.currentKey(),*(it.current()));
571 ++it; 572 ++it;
572 } 573 }
573 KConfig fc (locateLocal("config","kopicalendarrc")); 574 KConfig fc (locateLocal("config","kopicalendarrc"));
574 fc.setGroup("CC"); 575 fc.setGroup("CC");
575 fc.deleteGroup( "CC"); 576 fc.deleteGroup( "CC");
576 fc.setGroup("CC"); 577 fc.setGroup("CC");
577 fc.writeEntry("NumberCalendars",mCalendars.count()); 578 fc.writeEntry("NumberCalendars",mCalendars.count());
578 int numCal = 1; 579 int numCal = 1;
579 int writeCal = 0; 580 int writeCal = 0;
580 while ( numCal < mNextAvailableCalendar ) { 581 while ( numCal < mNextAvailableCalendar ) {
581 KopiCalendarFile * kkf = mCalendars.first(); 582 KopiCalendarFile * kkf = mCalendars.first();
582 while ( kkf ) { 583 while ( kkf ) {
583 //qDebug("cal num %d %d ", kkf->mCalNumber, numCal); 584 //qDebug("cal num %d %d ", kkf->mCalNumber, numCal);
584 if ( kkf->mCalNumber == numCal ) { 585 if ( kkf->mCalNumber == numCal ) {
585 ++writeCal; 586 ++writeCal;
586 //qDebug("Write calendar %d %d ", numCal , writeCal); 587 //qDebug("Write calendar %d %d ", numCal , writeCal);
587 QString prefix = "Cal_" + QString::number( writeCal ); 588 QString prefix = "Cal_" + QString::number( writeCal );
588 fc.writeEntry( prefix+"_isStandard", kkf->isStandard ); 589 fc.writeEntry( prefix+"_isStandard", kkf->isStandard );
589 fc.writeEntry( prefix+"_isEnabled", kkf->isEnabled ); 590 fc.writeEntry( prefix+"_isEnabled", kkf->isEnabled );
590 fc.writeEntry( prefix+"_isAlarmEnabled", kkf->isAlarmEnabled ); 591 fc.writeEntry( prefix+"_isAlarmEnabled", kkf->isAlarmEnabled );
diff --git a/korganizer/koprefs.h b/korganizer/koprefs.h
index 70da096..94bdd33 100644
--- a/korganizer/koprefs.h
+++ b/korganizer/koprefs.h
@@ -1,200 +1,200 @@
1/* 1/*
2 This file is part of KOrganizer. 2 This file is part of KOrganizer.
3 Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org> 3 Copyright (c) 2000,2001 Cornelius Schumacher <schumacher@kde.org>
4 4
5 This program is free software; you can redistribute it and/or modify 5 This program is free software; you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by 6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation; either version 2 of the License, or 7 the Free Software Foundation; either version 2 of the License, or
8 (at your option) any later version. 8 (at your option) any later version.
9 9
10 This program is distributed in the hope that it will be useful, 10 This program is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details. 13 GNU General Public License for more details.
14 14
15 You should have received a copy of the GNU General Public License 15 You should have received a copy of the GNU General Public License
16 along with this program; if not, write to the Free Software 16 along with this program; if not, write to the Free Software
17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. 17 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
18 18
19 As a special exception, permission is given to link this program 19 As a special exception, permission is given to link this program
20 with any edition of Qt, and distribute the resulting executable, 20 with any edition of Qt, and distribute the resulting executable,
21 without including the source code for Qt in the source distribution. 21 without including the source code for Qt in the source distribution.
22*/ 22*/
23#ifndef KOPREFS_H 23#ifndef KOPREFS_H
24#define KOPREFS_H 24#define KOPREFS_H
25 25
26 26
27#include <libkdepim/kpimprefs.h> 27#include <libkdepim/kpimprefs.h>
28#include <qdict.h> 28#include <qdict.h>
29#include <qdir.h> 29#include <qdir.h>
30#include <qobject.h> 30#include <qobject.h>
31 31
32class KConfig; 32class KConfig;
33class QFont; 33class QFont;
34class QColor; 34class QColor;
35class QStringList; 35class QStringList;
36 36
37#define VIEW_WN_VIEW 1 37#define VIEW_WN_VIEW 1
38#define VIEW_NX_VIEW 2 38#define VIEW_NX_VIEW 2
39#define VIEW_J_VIEW 3 39#define VIEW_J_VIEW 3
40#define VIEW_A_VIEW 4 40#define VIEW_A_VIEW 4
41#define VIEW_ML_VIEW 5 41#define VIEW_ML_VIEW 5
42#define VIEW_M_VIEW 6 42#define VIEW_M_VIEW 6
43#define VIEW_L_VIEW 7 43#define VIEW_L_VIEW 7
44#define VIEW_T_VIEW 8 44#define VIEW_T_VIEW 8
45 45
46class KopiCalendarFile : public QObject 46class KopiCalendarFile : public QObject
47{ 47{
48 public: 48 public:
49 KopiCalendarFile( ) : QObject( ) 49 KopiCalendarFile( ) : QObject( )
50 { 50 {
51 isStandard = false; 51 isStandard = false;
52 isEnabled = true; 52 isEnabled = true;
53 isAlarmEnabled = true; 53 isAlarmEnabled = true;
54 isReadOnly = false; 54 isReadOnly = false;
55 mErrorOnLoad = false;
56 isRelative = false;
57 mCalNumber = 0;
58 mDefaultColor = Qt::red;
55 mName = "Calendar"; 59 mName = "Calendar";
56 mFileName = QDir::homeDirPath() + "/icalfile.ics"; 60 mFileName = QDir::homeDirPath() + "/icalfile.ics";
57 mSavedFileName = "icalfile.ics"; 61 mSavedFileName = "icalfile.ics";
58 mCalNumber = 0;
59 mDefaultColor = Qt::red;
60 mErrorOnLoad = false;
61 isRelative = false;
62 } 62 }
63 bool isStandard; 63 bool isStandard;
64 bool isEnabled; 64 bool isEnabled;
65 bool isAlarmEnabled; 65 bool isAlarmEnabled;
66 bool isReadOnly; 66 bool isReadOnly;
67 bool mErrorOnLoad; 67 bool mErrorOnLoad;
68 bool isRelative;
69 int mCalNumber;
68 QString mName; 70 QString mName;
69 QString mFileName; 71 QString mFileName;
70 QString mSavedFileName; 72 QString mSavedFileName;
71 bool isRelative;
72 int mCalNumber;
73 QColor mDefaultColor; 73 QColor mDefaultColor;
74 QDateTime mLoadDt; 74 QDateTime mLoadDt;
75}; 75};
76class KOPrefs : public KPimPrefs 76class KOPrefs : public KPimPrefs
77{ 77{
78 public: 78 public:
79 enum { FormatVCalendar, FormatICalendar }; 79 enum { FormatVCalendar, FormatICalendar };
80 enum { MailClientKMail, MailClientSendmail }; 80 enum { MailClientKMail, MailClientSendmail };
81 enum { IMIPDummy, IMIPKMail }; 81 enum { IMIPDummy, IMIPKMail };
82 enum { IMIPOutbox, IMIPdirectsend }; 82 enum { IMIPOutbox, IMIPdirectsend };
83 enum { neverAuto, addressbookAuto, selectedAuto }; 83 enum { neverAuto, addressbookAuto, selectedAuto };
84 enum { standardDestination, askDestination }; 84 enum { standardDestination, askDestination };
85 85
86 virtual ~KOPrefs(); 86 virtual ~KOPrefs();
87 87
88 /** Get instance of KOPrefs. It is made sure that there is only one 88 /** Get instance of KOPrefs. It is made sure that there is only one
89 instance. */ 89 instance. */
90 static KOPrefs *instance(); 90 static KOPrefs *instance();
91 91
92 /** Set preferences to default values */ 92 /** Set preferences to default values */
93 void usrSetDefaults(); 93 void usrSetDefaults();
94 94
95 /** Read preferences from config file */ 95 /** Read preferences from config file */
96 void usrReadConfig(); 96 void usrReadConfig();
97 97
98 /** Write preferences to config file */ 98 /** Write preferences to config file */
99 void usrWriteConfig(); 99 void usrWriteConfig();
100 void setCategoryDefaults(); 100 void setCategoryDefaults();
101 void setAllDefaults(); 101 void setAllDefaults();
102 KopiCalendarFile * getNewCalendar(); 102 KopiCalendarFile * getNewCalendar();
103 KopiCalendarFile * getCalendar( int ); 103 KopiCalendarFile * getCalendar( int );
104 void deleteCalendar( int ); 104 void deleteCalendar( int );
105 QColor defaultColor( int ) const; 105 QColor defaultColor( int ) const;
106 QString calName( int ) const; 106 QString calName( int ) const;
107 int getCalendarID( const QString & name ); 107 int getCalendarID( const QString & name );
108 int getFuzzyCalendarID( const QString & name ); 108 int getFuzzyCalendarID( const QString & name );
109 protected: 109 protected:
110 void setTimeZoneIdDefault(); 110 void setTimeZoneIdDefault();
111 111
112 /** Fill empty mail fields with default values. */ 112 /** Fill empty mail fields with default values. */
113 void fillMailDefaults(); 113 void fillMailDefaults();
114 114
115 private: 115 private:
116 /** Constructor disabled for public. Use instance() to create a KOPrefs 116 /** Constructor disabled for public. Use instance() to create a KOPrefs
117 object. */ 117 object. */
118 KOPrefs(); 118 KOPrefs();
119 119
120 static KOPrefs *mInstance; 120 static KOPrefs *mInstance;
121 QStringList getDefaultList(); 121 QStringList getDefaultList();
122 QStringList getLocationDefaultList(); 122 QStringList getLocationDefaultList();
123 public: 123 public:
124 // preferences data 124 // preferences data
125 KConfig* getConfig(); 125 KConfig* getConfig();
126 void setFullName(const QString &); 126 void setFullName(const QString &);
127 QString fullName(); 127 QString fullName();
128 void setEmail(const QString &); 128 void setEmail(const QString &);
129 QString email(); 129 QString email();
130 130
131 QString mAdditional; 131 QString mAdditional;
132 132
133 bool mEmailControlCenter; 133 bool mEmailControlCenter;
134 134
135 bool mBcc; 135 bool mBcc;
136 bool mAutoSave; 136 bool mAutoSave;
137 int mAutoSaveInterval; 137 int mAutoSaveInterval;
138 bool mConfirm; 138 bool mConfirm;
139 139
140 bool mEnableGroupScheduling; 140 bool mEnableGroupScheduling;
141 bool mEnableProjectView; 141 bool mEnableProjectView;
142 142
143 int mDefaultFormat; 143 int mDefaultFormat;
144 int mMailClient; 144 int mMailClient;
145 145
146 int mStartTime; 146 int mStartTime;
147 int mDefaultDuration; 147 int mDefaultDuration;
148 int mAlarmTime; 148 int mAlarmTime;
149 149
150 int mWorkingHoursStart; 150 int mWorkingHoursStart;
151 int mWorkingHoursEnd; 151 int mWorkingHoursEnd;
152 bool mExcludeHolidays; 152 bool mExcludeHolidays;
153 bool mExcludeSaturdays; 153 bool mExcludeSaturdays;
154 bool mMarcusBainsShowSeconds; 154 bool mMarcusBainsShowSeconds;
155 155
156 QFont mTimeBarFont; 156 QFont mTimeBarFont;
157 QFont mMonthViewFont; 157 QFont mMonthViewFont;
158 QFont mAgendaViewFont; 158 QFont mAgendaViewFont;
159 QFont mMarcusBainsFont; 159 QFont mMarcusBainsFont;
160 QFont mTimeLabelsFont; 160 QFont mTimeLabelsFont;
161 QFont mTodoViewFont; 161 QFont mTodoViewFont;
162 QFont mListViewFont; 162 QFont mListViewFont;
163 QFont mDateNavigatorFont; 163 QFont mDateNavigatorFont;
164 QFont mEditBoxFont; 164 QFont mEditBoxFont;
165 QFont mJornalViewFont; 165 QFont mJornalViewFont;
166 QFont mWhatsNextFont; 166 QFont mWhatsNextFont;
167 QFont mEventViewFont; 167 QFont mEventViewFont;
168 168
169 169
170 170
171 171
172 QColor mHolidayColor; 172 QColor mHolidayColor;
173 QColor mHighlightColor; 173 QColor mHighlightColor;
174 QColor mEventColor; 174 QColor mEventColor;
175 QColor mTodoDoneColor; 175 QColor mTodoDoneColor;
176 QColor mAgendaBgColor; 176 QColor mAgendaBgColor;
177 QColor mWorkingHoursColor; 177 QColor mWorkingHoursColor;
178 QColor mTodoDueTodayColor; 178 QColor mTodoDueTodayColor;
179 QColor mTodoOverdueColor; 179 QColor mTodoOverdueColor;
180 QColor mTodoRunColor; 180 QColor mTodoRunColor;
181 QColor mMonthViewEvenColor; 181 QColor mMonthViewEvenColor;
182 QColor mMonthViewOddColor; 182 QColor mMonthViewOddColor;
183 QColor mMonthViewHolidayColor; 183 QColor mMonthViewHolidayColor;
184 bool mMonthViewUsesDayColors; 184 bool mMonthViewUsesDayColors;
185 bool mMonthViewSatSunTog; 185 bool mMonthViewSatSunTog;
186 bool mMonthViewWeek; 186 bool mMonthViewWeek;
187 bool mMonthViewWeekRowlayout; 187 bool mMonthViewWeekRowlayout;
188 QColor mAppColor1; 188 QColor mAppColor1;
189 QColor mAppColor2; 189 QColor mAppColor2;
190 bool mUseAppColors; 190 bool mUseAppColors;
191 191
192 int mDayBegins; 192 int mDayBegins;
193 int mHourSize; 193 int mHourSize;
194 int mAllDaySize; 194 int mAllDaySize;
195 bool mShowFullMenu; 195 bool mShowFullMenu;
196 bool mDailyRecur; 196 bool mDailyRecur;
197 bool mWeeklyRecur; 197 bool mWeeklyRecur;
198 bool mLongAllday; 198 bool mLongAllday;
199 bool mMonthDailyRecur; 199 bool mMonthDailyRecur;
200 bool mMonthWeeklyRecur; 200 bool mMonthWeeklyRecur;