-rw-r--r-- | bin/kdepim/WhatsNew.txt | 3 | ||||
-rw-r--r-- | bin/kdepim/korganizer/germantranslation.txt | 4 | ||||
-rw-r--r-- | korganizer/calendarview.cpp | 17 | ||||
-rw-r--r-- | korganizer/kofilterview.cpp | 32 | ||||
-rw-r--r-- | korganizer/kofilterview.h | 3 | ||||
-rw-r--r-- | korganizer/koprefs.cpp | 4 | ||||
-rw-r--r-- | korganizer/main.cpp | 1 | ||||
-rw-r--r-- | korganizer/mainwindow.cpp | 9 |
8 files changed, 60 insertions, 13 deletions
diff --git a/bin/kdepim/WhatsNew.txt b/bin/kdepim/WhatsNew.txt index dfc9553..2e120df 100644 --- a/bin/kdepim/WhatsNew.txt +++ b/bin/kdepim/WhatsNew.txt @@ -2,6 +2,9 @@ Info about the changes in new versions of KDE-Pim/Pi ********** VERSION 2.1.10 ************ +KO/Pi: +Importing Birthdays will now create another file resource "Birthdays" and import the birthday data from KA/Pi into that file. + ********** VERSION 2.1.9 ************ KO/Pi: diff --git a/bin/kdepim/korganizer/germantranslation.txt b/bin/kdepim/korganizer/germantranslation.txt index 2ade5bd..01c707e 100644 --- a/bin/kdepim/korganizer/germantranslation.txt +++ b/bin/kdepim/korganizer/germantranslation.txt @@ -1455,8 +1455,8 @@ { "Backup succesfully finished","Backup erfolgreich beendet" }, { "(Hint: You can enable automatic backup in the global settings!)","(Hinweis: Sie können ein automatisches Backup in den globalen Einstellungen konfigurieren!)" }, { "This will <b>backup all calendar files</b> to the directory %1 %2","Das schreibt ein <b>Backup aller Kalenderdateien</b> in das Verzeichnis %1 %2" }, -{ "","" }, -{ "","" }, +{ "Birthdays","Geburtstage" }, +{ "KO/Pi import information!","KO/Pi Import Information!" }, { "","" }, { "","" }, { "","" }, diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp index 08909ed..f179c58 100644 --- a/korganizer/calendarview.cpp +++ b/korganizer/calendarview.cpp @@ -1607,6 +1607,11 @@ bool CalendarView::importBday() #ifndef KORG_NOKABC #ifdef DESKTOP_VERSION + int curCal = mCalendar->defaultCalendar(); + int bd = mCalEditView->getBirtdayID(); + if ( bd == 0 ) + return; + mCalendar->setDefaultCalendar( bd ); KABC::StdAddressBook* AddressBook = KABC::StdAddressBook::self( true ); KABC::AddressBook::Iterator it; int count = 0; @@ -1645,6 +1650,7 @@ bool CalendarView::importBday() ++addCount; } } + mCalendar->setDefaultCalendar( curCal ); updateView(); topLevelWidget()->setCaption(QString::number( addCount )+ i18n(" birthdays/anniversaries added!")); #else //DESKTOP_VERSION @@ -1666,9 +1672,17 @@ void CalendarView::insertBirthdays(const QString& uid, const QStringList& birthd const QStringList& emailList, const QStringList& assembledNameList, const QStringList& uidList) { + //qDebug("KO::CalendarView::insertBirthdays"); if (uid == this->name()) - { + { + int curCal = mCalendar->defaultCalendar(); + int bd = mCalEditView->getBirtdayID(); + if ( bd == 0 ) + return; + mCalendar->setDefaultCalendar( bd ); + + int count = birthdayList.count(); int addCount = 0; KCal::Attendee* a = 0; @@ -1731,6 +1745,7 @@ void CalendarView::insertBirthdays(const QString& uid, const QStringList& birthd } } + mCalendar->setDefaultCalendar( curCal ); updateView(); topLevelWidget()->setCaption(QString::number( addCount )+ i18n(" birthdays/anniversaries added!")); diff --git a/korganizer/kofilterview.cpp b/korganizer/kofilterview.cpp index a8a3052..3cde103 100644 --- a/korganizer/kofilterview.cpp +++ b/korganizer/kofilterview.cpp @@ -354,7 +354,7 @@ void KOCalEditView::addCal() QString name, file; while ( tryagain ) { KONewCalPrefs prefs ( this ); - prefs.nameE->setText( name ); + prefs.nameE->setText( name ); prefs.url->setURL( file ); if ( ! prefs.exec() ) return; @@ -378,14 +378,20 @@ void KOCalEditView::addCal() kkf = KOPrefs::instance()->mCalendars.next(); } } + addCalendar ( name, file ); +} +int KOCalEditView::addCalendar( QString name, QString file, bool ask ) +{ + QFileInfo fi ( file ); if (!fi.exists() ) { - if ( KMessageBox::questionYesNo(this, i18n("The file\n%1\ndoes not exist!\nShall I create it for you?").arg( file ) )== KMessageBox::No ) - return; + 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 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") ); @@ -396,9 +402,23 @@ void KOCalEditView::addCal() kkf->mName = name; kkf->mFileName = file; emit calendarAdded( kkf->mCalNumber ); - emit needsUpdate(); - QTimer::singleShot( 0, this, SLOT ( readConfig() ) ); + 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 ); diff --git a/korganizer/kofilterview.h b/korganizer/kofilterview.h index b57a6e9..54fe2c5 100644 --- a/korganizer/kofilterview.h +++ b/korganizer/kofilterview.h @@ -208,7 +208,8 @@ class KOCalEditView : public QScrollView public: KOCalEditView( QWidget* parent=0,const char* name=0); ~KOCalEditView(); - + int addCalendar( QString calName, QString fileName, bool ask = true ); + int getBirtdayID(); public slots: void addCal(); void enableAll(); diff --git a/korganizer/koprefs.cpp b/korganizer/koprefs.cpp index a4ea3d3..7ba7269 100644 --- a/korganizer/koprefs.cpp +++ b/korganizer/koprefs.cpp @@ -460,6 +460,10 @@ void KOPrefs::usrReadConfig() if ( kkf->mCalNumber == 1 ) { kkf->mFileName = locateLocal( "data", "korganizer/mycalendar.ics" ); } + //qDebug("NAME %s %s", kkf->mName.latin1(), i18n("Birthdays").latin1() ); + if ( kkf->mName == i18n("Birthdays") ) { + kkf->mFileName = locateLocal( "data", "korganizer/birthdays.ics" ); + } } KPimPrefs::usrReadConfig(); diff --git a/korganizer/main.cpp b/korganizer/main.cpp index 2bf46b9..c9d1345 100644 --- a/korganizer/main.cpp +++ b/korganizer/main.cpp @@ -85,6 +85,7 @@ int main( int argc, char **argv ) KStandardDirs::setAppDir( QDir::convertSeparators(locateLocal("data", "korganizer"))); QApplication::setFont( KPimGlobalPrefs::instance()->mApplicationFont ); + KPimGlobalPrefs::instance()->setGlobalConfig(); MainWindow m; #ifndef DESKTOP_VERSION diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp index b9d8742..68233e8 100644 --- a/korganizer/mainwindow.cpp +++ b/korganizer/mainwindow.cpp @@ -173,7 +173,7 @@ MainWindow::MainWindow( QWidget *parent, const char *name, QString msg) : mFlagKeyPressed = false; setCaption("KO/Pi"); KOPrefs *p = KOPrefs::instance(); - KPimGlobalPrefs::instance()->setGlobalConfig(); + //KPimGlobalPrefs::instance()->setGlobalConfig(); p->mCurrentDisplayedView = 0; if ( p->mHourSize > 22 ) p->mHourSize = 22; @@ -1723,7 +1723,7 @@ void MainWindow::importOL() } void MainWindow::importBday() { - int result = QMessageBox::warning( this, i18n("KO/Pi: Warning!"), + int result = QMessageBox::warning( this, i18n("KO/Pi import information!"), i18n("When importing birthdays twice\nduplicated events will be ignored,\nif the event has not been\nchanged in KO/Pi!\n"), i18n("Import!"), i18n("Cancel"), 0, 0, 1 ); @@ -2310,7 +2310,6 @@ void MainWindow::configureAgenda( int item ) void MainWindow::saveCalendar() { - QString bupDir = KPimGlobalPrefs::instance()->mBackupDatadir; if ( KPimGlobalPrefs::instance()->mBackupUseDefaultDir) bupDir = KGlobalSettings::backupDataDir(); @@ -2319,6 +2318,10 @@ void MainWindow::saveCalendar() if ( !KPimGlobalPrefs::instance()->mBackupEnabled ) bupHint = i18n("(Hint: You can enable automatic backup in the global settings!)"); if ( KMessageBox::warningContinueCancel( this, i18n("This will <b>backup all calendar files</b> to the directory %1 %2").arg(bupDir).arg(bupHint),i18n("Information") ) != KMessageBox::Continue ) return; + bool enabled = KPimGlobalPrefs::instance()->mBackupEnabled; + KPimGlobalPrefs::instance()->mBackupEnabled = false; + save(); + KPimGlobalPrefs::instance()->mBackupEnabled = enabled; backupAllFiles(); } void MainWindow::loadCalendar() |