summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/calendarview.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp
index 427d71b..9674921 100644
--- a/korganizer/calendarview.cpp
+++ b/korganizer/calendarview.cpp
@@ -2747,65 +2747,69 @@ void CalendarView::changeIncidenceDisplay(Incidence *which, int action)
2747 if ( mEventViewerDialog ) 2747 if ( mEventViewerDialog )
2748 mEventViewerDialog->hide(); 2748 mEventViewerDialog->hide();
2749 } 2749 }
2750 else 2750 else
2751 mCalendar->checkAlarmForIncidence( which , false ); 2751 mCalendar->checkAlarmForIncidence( which , false );
2752} 2752}
2753 2753
2754// most of the changeEventDisplays() right now just call the view's 2754// most of the changeEventDisplays() right now just call the view's
2755// total update mode, but they SHOULD be recoded to be more refresh-efficient. 2755// total update mode, but they SHOULD be recoded to be more refresh-efficient.
2756void CalendarView::changeEventDisplay(Event *which, int action) 2756void CalendarView::changeEventDisplay(Event *which, int action)
2757{ 2757{
2758 // kdDebug() << "CalendarView::changeEventDisplay" << endl; 2758 // kdDebug() << "CalendarView::changeEventDisplay" << endl;
2759 changeIncidenceDisplay((Incidence *)which, action); 2759 changeIncidenceDisplay((Incidence *)which, action);
2760 static bool clearallviews = false; 2760 static bool clearallviews = false;
2761 if ( KOPrefs::instance()->mGlobalUpdateDisabled ) { 2761 if ( KOPrefs::instance()->mGlobalUpdateDisabled ) {
2762 if ( clearallviews ) { 2762 if ( clearallviews ) {
2763 clearAllViews(); 2763 clearAllViews();
2764 clearallviews = false; 2764 clearallviews = false;
2765 } 2765 }
2766 return; 2766 return;
2767 } 2767 }
2768 clearallviews = true; 2768 clearallviews = true;
2769 mDateNavigator->updateView(); 2769 mDateNavigator->updateView();
2770 //mDialogManager->updateSearchDialog(); 2770 //mDialogManager->updateSearchDialog();
2771 if (which) { 2771 if (which) {
2772 // If there is an event view visible update the display 2772 // If there is an event view visible update the display
2773 mViewManager->currentView()->changeEventDisplay(which,action); 2773 mViewManager->currentView()->changeEventDisplay(which,action);
2774 // TODO: check, if update needed 2774 // TODO: check, if update needed
2775 // if (which->getTodoStatus()) { 2775 // if (which->getTodoStatus()) {
2776 mTodoList->updateView(); 2776 mTodoList->updateView();
2777 if ( action != KOGlobals::EVENTDELETED ) { 2777 if ( action != KOGlobals::EVENTDELETED ) {
2778 mConflictingEvent = which ; 2778 mConflictingEvent = which ;
2779 QTimer::singleShot( 1000, this, SLOT ( checkConflictForEvent() ) ); 2779 int time = 1000;
2780#ifdef DESKTOP_VERSION
2781 time = 500;
2782#endif
2783 QTimer::singleShot( time, this, SLOT ( checkConflictForEvent() ) );
2780 } 2784 }
2781 // } 2785 // }
2782 } else { 2786 } else {
2783 mViewManager->currentView()->updateView(); 2787 mViewManager->currentView()->updateView();
2784 } 2788 }
2785} 2789}
2786void CalendarView::checkConflictForEvent() 2790void CalendarView::checkConflictForEvent()
2787{ 2791{
2788 2792
2789 if (!KOPrefs::instance()->mConfirm) 2793 if (!KOPrefs::instance()->mConfirm)
2790 return; 2794 return;
2791 if ( ! mConflictingEvent ) return; 2795 if ( ! mConflictingEvent ) return;
2792 QDateTime current = QDateTime::currentDateTime(); 2796 QDateTime current = QDateTime::currentDateTime();
2793 if ( ! mConflictingEvent->matchTime( &current, 0 ) ) { 2797 if ( ! mConflictingEvent->matchTime( &current, 0 ) ) {
2794 mConflictingEvent = 0; 2798 mConflictingEvent = 0;
2795 return; 2799 return;
2796 } 2800 }
2797 QPtrList<Event> testlist = mCalendar->events(); 2801 QPtrList<Event> testlist = mCalendar->events();
2798 Event * test = testlist.first(); 2802 Event * test = testlist.first();
2799 QDateTime conflict; 2803 QDateTime conflict;
2800 QDateTime retVal; 2804 QDateTime retVal;
2801 bool found = false; 2805 bool found = false;
2802 Event * cE = 0; 2806 Event * cE = 0;
2803 topLevelWidget()->setCaption( i18n("Checking conflicts ... please wait") ); 2807 topLevelWidget()->setCaption( i18n("Checking conflicts ... please wait") );
2804 while ( test ) { 2808 while ( test ) {
2805 qApp->processEvents(); 2809 qApp->processEvents();
2806 bool skip = false; 2810 bool skip = false;
2807 if ( found ) 2811 if ( found )
2808 skip = !test->matchTime( &current, &conflict ); 2812 skip = !test->matchTime( &current, &conflict );
2809 else 2813 else
2810 skip = !test->matchTime( &current, 0 ); 2814 skip = !test->matchTime( &current, 0 );
2811 if ( !skip && !test->doesFloat() ) { 2815 if ( !skip && !test->doesFloat() ) {