author | zautrix <zautrix> | 2005-06-27 00:49:23 (UTC) |
---|---|---|
committer | zautrix <zautrix> | 2005-06-27 00:49:23 (UTC) |
commit | 2e566a307bb50ac595fe729ebed0f5336f2af5a8 (patch) (side-by-side diff) | |
tree | 926a9346f1a3c3389e314e170da5cfa64811f9b6 /korganizer/kofilterview.cpp | |
parent | 72721fd5da5bc08f595cda85bc260112764b2bd8 (diff) | |
download | kdepimpi-2e566a307bb50ac595fe729ebed0f5336f2af5a8.zip kdepimpi-2e566a307bb50ac595fe729ebed0f5336f2af5a8.tar.gz kdepimpi-2e566a307bb50ac595fe729ebed0f5336f2af5a8.tar.bz2 |
fixesss
-rw-r--r-- | korganizer/kofilterview.cpp | 24 |
1 files changed, 22 insertions, 2 deletions
diff --git a/korganizer/kofilterview.cpp b/korganizer/kofilterview.cpp index a8a3052..3cde103 100644 --- a/korganizer/kofilterview.cpp +++ b/korganizer/kofilterview.cpp @@ -357,69 +357,89 @@ void KOCalEditView::addCal() prefs.nameE->setText( name ); prefs.url->setURL( file ); if ( ! prefs.exec() ) return; name = prefs.calName(); file = prefs.calFileName(); tryagain = false; KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first(); while ( kkf ) { if ( kkf->mName == name ) { KMessageBox::information( this, i18n("Sorry, the calendar name \n%1\nalready exists!\nPlease choose another name!").arg( name ) ); name = ""; tryagain = true; break; } if ( kkf->mFileName == file ) { KMessageBox::information( this, i18n("Sorry, the file \n%1\nis already loaded!\nPlease choose another file!").arg( KGlobal::formatMessage (file, 0 )) ); tryagain = true; file = ""; break; } kkf = KOPrefs::instance()->mCalendars.next(); } } + addCalendar ( name, file ); +} +int KOCalEditView::addCalendar( QString name, QString file, bool ask ) +{ + QFileInfo fi ( file ); if (!fi.exists() ) { + if ( ask ) if ( KMessageBox::questionYesNo(this, i18n("The file\n%1\ndoes not exist!\nShall I create it for you?").arg( file ) )== KMessageBox::No ) - return; + return 0; QFile fileIn( file ); if (!fileIn.open( IO_WriteOnly ) ) { KMessageBox::sorry( this, i18n("Sorry, cannot create the file\n%1!\nNo calendar added!").arg( file ) ); - return; + return 0; } QTextStream tsIn( &fileIn ); tsIn.setCodec( QTextCodec::codecForName("utf8") ); tsIn << "BEGIN:VCALENDAR\nPRODID:-//KDE-Pim//Platform-independent 2.1.0\nVERSION:2.0\nEND:VCALENDAR\n"; fileIn.close(); } KopiCalendarFile * kkf = KOPrefs::instance()->getNewCalendar(); kkf->mName = name; kkf->mFileName = file; emit calendarAdded( kkf->mCalNumber ); + if ( ask ) emit needsUpdate(); QTimer::singleShot( 0, this, SLOT ( readConfig() ) ); + return kkf->mCalNumber; +} +int KOCalEditView::getBirtdayID() +{ + KopiCalendarFile * kkf = KOPrefs::instance()->mCalendars.first(); + while ( kkf ) { + if ( kkf->mName == i18n("Birthdays") ) + return kkf->mCalNumber; + kkf = KOPrefs::instance()->mCalendars.next(); + } + QString file = locateLocal( "data", "korganizer/birthdays.ics" ); + return addCalendar( i18n("Birthdays"), file, false ); } + void KOCalEditView::enableAll() { toggleList( mEnabledB ); } void KOCalEditView::enableAlarm() { toggleList( mAlarmB ); } void KOCalEditView::disableRO() { toggleList( mROB ); } void KOCalEditView::toggleList ( QPtrList<KOCalCheckButton> list ) { bool dis = false; KOCalCheckButton* it = list.first(); while ( it ) { if ( !it->isChecked() ) { dis = true; break; } it = list.next(); } it = list.first(); |