-rw-r--r-- | korganizer/calendarview.cpp | 19 | ||||
-rw-r--r-- | korganizer/calendarview.h | 1 | ||||
-rw-r--r-- | korganizer/koagendaview.cpp | 7 | ||||
-rw-r--r-- | korganizer/koagendaview.h | 1 | ||||
-rw-r--r-- | korganizer/kojournalview.cpp | 4 | ||||
-rw-r--r-- | korganizer/kojournalview.h | 1 | ||||
-rw-r--r-- | korganizer/kolistview.cpp | 4 | ||||
-rw-r--r-- | korganizer/kolistview.h | 1 | ||||
-rw-r--r-- | korganizer/komonthview.cpp | 10 | ||||
-rw-r--r-- | korganizer/komonthview.h | 1 | ||||
-rw-r--r-- | korganizer/koviewmanager.cpp | 13 | ||||
-rw-r--r-- | korganizer/koviewmanager.h | 1 | ||||
-rw-r--r-- | korganizer/kowhatsnextview.cpp | 5 | ||||
-rw-r--r-- | korganizer/kowhatsnextview.h | 1 | ||||
-rw-r--r-- | korganizer/mainwindow.cpp | 1 |
15 files changed, 67 insertions, 3 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp index 608b73b..e13d0be 100644 --- a/korganizer/calendarview.cpp +++ b/korganizer/calendarview.cpp @@ -1141,12 +1141,13 @@ bool CalendarView::synchronizeCalendar( Calendar* local, Calendar* remote, int Event* eventR; QString uid; int take; Event* eventL; Event* eventRSync; Event* eventLSync; + clearAllViews(); QPtrList<Event> eventRSyncSharp = remote->getExternLastSyncEvents(); QPtrList<Event> eventLSyncSharp = local->getExternLastSyncEvents(); bool fullDateRange = false; local->resetTempSyncStat(); mLastCalendarSync = QDateTime::currentDateTime(); if ( mSyncManager->syncWithDesktop() ) { @@ -1833,14 +1834,14 @@ bool CalendarView::openCalendar(QString filename, bool merge) if (!QFile::exists(filename)) { KMessageBox::error(this,i18n("File does not exist:\n '%1'.").arg(filename)); return false; } globalFlagBlockAgenda = 1; + clearAllViews(); if (!merge) { - mTodoList->clearList(); mViewManager->setDocumentId( filename ); mCalendar->close(); } mStorage->setFileName( filename ); if ( mStorage->load() ) { @@ -1945,13 +1946,14 @@ bool CalendarView::checkFileVersion(QString fn) mSyncManager->mSyncAlgoPrefs = 3; mSyncManager->mWriteBackFile = false; mSyncManager->mWriteBackExistingOnly = false; mSyncManager->mShowSyncSummary = false; syncCalendar( fn, 3 ); Event * e = getLastSyncEvent(); - mCalendar->deleteEvent ( e ); + if ( e ) + deleteEvent ( e ); updateView(); return true; } bool CalendarView::saveCalendar( QString filename ) { @@ -1978,12 +1980,13 @@ bool CalendarView::saveCalendar( QString filename ) } void CalendarView::closeCalendar() { // child windows no longer valid + clearAllViews(); emit closingDown(); mCalendar->close(); setModified(false); updateView(); } @@ -2429,12 +2432,23 @@ void CalendarView::updateView(const QDate &start, const QDate &end) { mTodoList->updateView(); mViewManager->updateView(start, end); //mDateNavigator->updateView(); } +void CalendarView::clearAllViews() +{ + mTodoList->clearList(); + mViewManager->clearAllViews(); + SearchDialog * sd = mDialogManager->getSearchDialog(); + if ( sd ) { + KOListView* kol = sd->listview(); + if ( kol ) + kol->clearList(); + } +} void CalendarView::updateView() { DateList tmpList = mNavigator->selectedDates(); if ( KOPrefs::instance()->mHideNonStartedTodos ) mTodoList->updateView(); @@ -3940,12 +3954,13 @@ void CalendarView::takeOverEvent() } void CalendarView::takeOverCalendar() { // TODO: Create Calendar::allIncidences() function and use it here + clearAllViews(); QPtrList<Event> events = mCalendar->events(); for(uint i=0; i<events.count(); ++i) { events.at(i)->setOrganizer(KOPrefs::instance()->email()); events.at(i)->recreate(); events.at(i)->setReadOnly(false); } diff --git a/korganizer/calendarview.h b/korganizer/calendarview.h index 084b6db..4600090 100644 --- a/korganizer/calendarview.h +++ b/korganizer/calendarview.h @@ -328,12 +328,13 @@ class CalendarView : public KOrg::CalendarViewBase, public KCal::Calendar::Obser void todoChanged(Todo *); void todoToBeDeleted(Todo *); void todoDeleted(); void updateView(const QDate &start, const QDate &end); void updateView(); + void clearAllViews(); /** Full update of visible todo views */ void updateTodoViews(); void updateUnmanagedViews(); diff --git a/korganizer/koagendaview.cpp b/korganizer/koagendaview.cpp index fd9bf29..1320a2e 100644 --- a/korganizer/koagendaview.cpp +++ b/korganizer/koagendaview.cpp @@ -1328,12 +1328,19 @@ void KOAgendaView::repaintAgenda() void KOAgendaView::clearView() { // kdDebug() << "ClearView" << endl; mAllDayAgenda->clear(); mAgenda->clear(); } +void KOAgendaView::clearList() +{ + // kdDebug() << "ClearView" << endl; + clearView(); + mAllDayAgenda->hideUnused(); + mAgenda->hideUnused(); +} void KOAgendaView::printPreview(CalPrinter *calPrinter, const QDate &fd, const QDate &td) { #ifndef KORG_NOPRINTER if (fd == td) diff --git a/korganizer/koagendaview.h b/korganizer/koagendaview.h index c6e6602..cc953fc 100644 --- a/korganizer/koagendaview.h +++ b/korganizer/koagendaview.h @@ -163,12 +163,13 @@ class KOAgendaView : public KOEventView { /** returns the currently selected events */ virtual DateList selectedDates(); /** Remove all events from view */ void clearView(); + void clearList(); KOAgenda *agenda() { return mAgenda;} virtual void printPreview(CalPrinter *calPrinter, const QDate &, const QDate &); /** start-datetime of selection */ QDateTime selectionStart() {return mTimeSpanBegin;} diff --git a/korganizer/kojournalview.cpp b/korganizer/kojournalview.cpp index 6e6a939..bc16037 100644 --- a/korganizer/kojournalview.cpp +++ b/korganizer/kojournalview.cpp @@ -75,12 +75,16 @@ void KOJournalView::updateView() void KOJournalView::flushView() { mEntry->flushEntry(); } +void KOJournalView::clearList() +{ + mEntry->clear(); +} void KOJournalView::showDates(const QDate &start, const QDate &) { // kdDebug() << "KOJournalView::selectDates()" << endl; mEntry->setDate(start); diff --git a/korganizer/kojournalview.h b/korganizer/kojournalview.h index 1c0be82..445f940 100644 --- a/korganizer/kojournalview.h +++ b/korganizer/kojournalview.h @@ -40,12 +40,13 @@ class KOJournalView : public KOrg::BaseView public: KOJournalView(Calendar *calendar, QWidget *parent = 0, const char *name = 0); ~KOJournalView(); virtual int currentDateCount(); + void clearList(); virtual QPtrList<Incidence> selectedIncidences(); DateList selectedDates() {DateList q; return q;}; signals: void deleteJournal(Journal *); diff --git a/korganizer/kolistview.cpp b/korganizer/kolistview.cpp index 5f32e79..bc52281 100644 --- a/korganizer/kolistview.cpp +++ b/korganizer/kolistview.cpp @@ -360,12 +360,16 @@ QString KOListView::getWhatsThisText(QPoint p) void KOListView::updateList() { // qDebug(" KOListView::updateList() "); } +void KOListView::clearList() +{ + clear (); +} void KOListView::addCat( ) { setCategories( false ); } void KOListView::setCat() { diff --git a/korganizer/kolistview.h b/korganizer/kolistview.h index dee69f6..f4d6879 100644 --- a/korganizer/kolistview.h +++ b/korganizer/kolistview.h @@ -254,12 +254,13 @@ class KOListView : public KOEventView virtual void printPreview(CalPrinter *calPrinter, const QDate &, const QDate &); void readSettings(KConfig *config, QString setting = "KOListView Layout"); void writeSettings(KConfig *config, QString setting = "KOListView Layout"); void updateList(); + void clearList(); void setStartDate(const QDate &start); int count(); QString getWhatsThisText(QPoint p); signals: void signalNewEvent(); void beamIncidenceList(QPtrList<Incidence>); diff --git a/korganizer/komonthview.cpp b/korganizer/komonthview.cpp index 8ee1363..678cab6 100644 --- a/korganizer/komonthview.cpp +++ b/korganizer/komonthview.cpp @@ -1412,12 +1412,22 @@ void KOMonthView::updateDayLabels() } } } +void KOMonthView::clearList() +{ + unsigned int i; + for( i = 0; i < mCells.size(); ++i ) { + mCells[i]->clear(); + } + for( i = 0; i < mCellsW.size(); ++i ) { + mCellsW[i]->clear(); + } +} void KOMonthView::showDates(const QDate &start, const QDate &) { // kdDebug() << "KOMonthView::showDates(): " << start.toString() << endl; QPtrVector<MonthViewCell> *cells; QPtrVector<QLabel> *dayLabels; diff --git a/korganizer/komonthview.h b/korganizer/komonthview.h index de5c014..65b5e77 100644 --- a/korganizer/komonthview.h +++ b/korganizer/komonthview.h @@ -253,12 +253,13 @@ class KOMonthView: public KOEventView bool isMonthView() { return !mShowWeekView; } bool isUpdatePossible() { return updatePossible; } MonthViewCell * selectedCell(); bool skipResize; NavigatorBar* navigatorBar() { return mNavigatorBar ;} + void clearList(); public slots: void nextCell(); void prevCell(); virtual void updateView(); virtual void updateConfig(); virtual void showDates(const QDate &start, const QDate &end); diff --git a/korganizer/koviewmanager.cpp b/korganizer/koviewmanager.cpp index fb4de37..5d9af6d 100644 --- a/korganizer/koviewmanager.cpp +++ b/korganizer/koviewmanager.cpp @@ -355,12 +355,24 @@ void KOViewManager::raiseCurrentView( bool fullScreen, bool callUpdateView ) } emit signalAgendaView( mCurrentView == mAgendaView ); //qDebug("raiseCurrentView ende "); } +void KOViewManager::clearAllViews() +{ + + if ( mTodoView ) mTodoView->clearList(); + if ( mListView ) mListView->clearList(); + + if ( mAgendaView ) mAgendaView->clearList(); + if ( mMonthView ) mMonthView->clearList(); + if ( mWhatsNextView ) mWhatsNextView->clearList(); + if ( mJournalView ) mJournalView->clearList(); + +} void KOViewManager::updateView() { // qDebug("KOViewManager::updateView() "); // if we are updating mTodoView, we get endless recursion if ( mTodoView == mCurrentView ) return; @@ -829,10 +841,9 @@ void KOViewManager::addView(KOrg::BaseView *view) #endif } void KOViewManager::setDocumentId( const QString &id ) { if (mTodoView) { - mTodoView->clearList(); mTodoView->setDocumentId( id ); } } diff --git a/korganizer/koviewmanager.h b/korganizer/koviewmanager.h index 8dc03e0..838583b 100644 --- a/korganizer/koviewmanager.h +++ b/korganizer/koviewmanager.h @@ -64,12 +64,13 @@ class KOViewManager : public QObject KOrg::BaseView *currentView(); void setDocumentId( const QString & ); void updateView( const QDate &start, const QDate &end ); + void clearAllViews(); void raiseCurrentView( bool fullScreen = false , bool updateView = false); void addView(KOrg::BaseView *); Incidence *currentSelection(); diff --git a/korganizer/kowhatsnextview.cpp b/korganizer/kowhatsnextview.cpp index 65d8ac3..62d7ede 100644 --- a/korganizer/kowhatsnextview.cpp +++ b/korganizer/kowhatsnextview.cpp @@ -136,12 +136,17 @@ int KOWhatsNextView::maxDatesHint() int KOWhatsNextView::currentDateCount() { return 0; } +void KOWhatsNextView::clearList() +{ + mTimer->stop(); + mView->setText(" "); +} QPtrList<Incidence> KOWhatsNextView::selectedIncidences() { QPtrList<Incidence> eventList; return eventList; } diff --git a/korganizer/kowhatsnextview.h b/korganizer/kowhatsnextview.h index d6727ac..93574ef 100644 --- a/korganizer/kowhatsnextview.h +++ b/korganizer/kowhatsnextview.h @@ -56,12 +56,13 @@ class KOWhatsNextView : public KOrg::BaseView ~KOWhatsNextView(); virtual int maxDatesHint(); virtual int currentDateCount(); void setEventViewer(KOEventViewerDialog* v ); virtual QPtrList<Incidence> selectedIncidences(); + void clearList(); DateList selectedDates() {DateList q; return q;} virtual void printPreview(CalPrinter *calPrinter, const QDate &, const QDate &); diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp index 63053a5..d959a7a 100644 --- a/korganizer/mainwindow.cpp +++ b/korganizer/mainwindow.cpp @@ -1667,12 +1667,13 @@ void MainWindow::enableIncidenceActions( bool enabled ) mCancelAction->setEnabled( enabled ); } void MainWindow::importOL() { #ifdef _OL_IMPORT_ + mView->clearAllViews(); KOImportOLdialog *id = new KOImportOLdialog("Import from OL - select folder!" , mView->calendar(),this ); id->exec(); delete id; mView->updateView(); #endif } |