summaryrefslogtreecommitdiffabout
path: root/korganizer
Unidiff
Diffstat (limited to 'korganizer') (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/kodaymatrix.cpp87
-rw-r--r--korganizer/kodaymatrix.h1
-rw-r--r--korganizer/komonthview.cpp3
-rw-r--r--korganizer/koprefsdialog.cpp13
-rw-r--r--korganizer/koviewmanager.cpp9
-rw-r--r--korganizer/mainwindow.cpp13
-rw-r--r--korganizer/mainwindow.h2
7 files changed, 92 insertions, 36 deletions
diff --git a/korganizer/kodaymatrix.cpp b/korganizer/kodaymatrix.cpp
index 17a1d13..df606d0 100644
--- a/korganizer/kodaymatrix.cpp
+++ b/korganizer/kodaymatrix.cpp
@@ -273,363 +273,400 @@ void KODayMatrix::addSelectedDaysTo(DateList& selDays)
273 } 273 }
274 i0 = 0; 274 i0 = 0;
275 } 275 }
276 276
277 //cope with selection being out of matrix limits at bottom (> NUMDAYS-1) 277 //cope with selection being out of matrix limits at bottom (> NUMDAYS-1)
278 if (mSelEnd > NUMDAYS-1) { 278 if (mSelEnd > NUMDAYS-1) {
279 for (int i = i0; i <= NUMDAYS-1; i++) { 279 for (int i = i0; i <= NUMDAYS-1; i++) {
280 selDays.append(days[i]); 280 selDays.append(days[i]);
281 } 281 }
282 for (int i = NUMDAYS; i < mSelEnd; i++) { 282 for (int i = NUMDAYS; i < mSelEnd; i++) {
283 selDays.append(days[0].addDays(i)); 283 selDays.append(days[0].addDays(i));
284 } 284 }
285 285
286 // apply normal routine to selection being entirely within matrix limits 286 // apply normal routine to selection being entirely within matrix limits
287 } else { 287 } else {
288 for (int i = i0; i <= mSelEnd; i++) { 288 for (int i = i0; i <= mSelEnd; i++) {
289 selDays.append(days[i]); 289 selDays.append(days[i]);
290 } 290 }
291 } 291 }
292} 292}
293 293
294bool KODayMatrix::setSelectedDaysFrom(const QDate& start, const QDate& end) 294bool KODayMatrix::setSelectedDaysFrom(const QDate& start, const QDate& end)
295{ 295{
296 mRedrawNeeded = true; 296 mRedrawNeeded = true;
297 bool noSel = (mSelEnd == NOSELECTION && mSelStart == NOSELECTION ); 297 bool noSel = (mSelEnd == NOSELECTION && mSelStart == NOSELECTION );
298 mSelStart = startdate.daysTo(start); 298 mSelStart = startdate.daysTo(start);
299 if ( mSelStart < 0 ) 299 if ( mSelStart < 0 )
300 mSelStart = 0; 300 mSelStart = 0;
301 mSelEnd = startdate.daysTo(end); 301 mSelEnd = startdate.daysTo(end);
302 if ( mSelEnd > NUMDAYS-1 ) 302 if ( mSelEnd > NUMDAYS-1 )
303 mSelEnd = NUMDAYS-1; 303 mSelEnd = NUMDAYS-1;
304 if ( mSelEnd < 0 || mSelStart > NUMDAYS-1 ) { 304 if ( mSelEnd < 0 || mSelStart > NUMDAYS-1 ) {
305 clearSelection(); 305 clearSelection();
306 if ( noSel ) 306 if ( noSel )
307 return false; 307 return false;
308 } 308 }
309 309
310 return true; 310 return true;
311} 311}
312void KODayMatrix::clearSelection() 312void KODayMatrix::clearSelection()
313{ 313{
314 mSelEnd = mSelStart = NOSELECTION; 314 mSelEnd = mSelStart = NOSELECTION;
315} 315}
316 316
317 317
318void KODayMatrix::recalculateToday() 318void KODayMatrix::recalculateToday()
319{ 319{
320 today = -1; 320 today = -1;
321 for (int i=0; i<NUMDAYS; i++) { 321 for (int i=0; i<NUMDAYS; i++) {
322 //events[i] = 0; 322 //events[i] = 0;
323 days[i] = startdate.addDays(i); 323 days[i] = startdate.addDays(i);
324 daylbls[i] = QString::number( KOGlobals::self()->calendarSystem()->day( days[i] )); 324 daylbls[i] = QString::number( KOGlobals::self()->calendarSystem()->day( days[i] ));
325 325
326 // if today is in the currently displayed month, hilight today 326 // if today is in the currently displayed month, hilight today
327 if (days[i].year() == QDate::currentDate().year() && 327 if (days[i].year() == QDate::currentDate().year() &&
328 days[i].month() == QDate::currentDate().month() && 328 days[i].month() == QDate::currentDate().month() &&
329 days[i].day() == QDate::currentDate().day()) { 329 days[i].day() == QDate::currentDate().day()) {
330 today = i; 330 today = i;
331 } 331 }
332 } 332 }
333 // qDebug(QString("Today is visible at %1.").arg(today)); 333 // qDebug(QString("Today is visible at %1.").arg(today));
334} 334}
335 335
336void KODayMatrix::updateView() 336void KODayMatrix::updateView()
337{ 337{
338 updateView(startdate); 338 updateView(startdate);
339} 339}
340void KODayMatrix::repaintViewTimed() 340void KODayMatrix::repaintViewTimed()
341{ 341{
342 mRedrawNeeded = true; 342 mRedrawNeeded = true;
343 // bDays.fill( false); 343 // bDays.fill( false);
344 //pDays.fill( false); 344 //pDays.fill( false);
345 //hDays.fill( false); 345 //hDays.fill( false);
346 //eDays.fill( false); 346 //eDays.fill( false);
347 mRepaintTimer->stop(); 347 mRepaintTimer->stop();
348 int startDay = days[0].dayOfWeek(); // 1...7 7 = sunday 348 int startDay = days[0].dayOfWeek(); // 1...7 7 = sunday
349 int i; 349 int i;
350 for(i = 0; i < NUMDAYS; i++) { 350 for(i = 0; i < NUMDAYS; i++) {
351 if ( ( (i+startDay) % 7 == 0 ) ) { 351 if ( ( (i+startDay) % 7 == 0 ) ) {
352 pDays.setBit(i); 352 pDays.setBit(i);
353 } 353 }
354 } 354 }
355 repaint(false); 355 repaint(false);
356} 356}
357void KODayMatrix::computeEvent(Event *event, int i ) 357void KODayMatrix::computeEvent(Event *event, int i )
358{ 358{
359 QString holiStr = mHolidays[i]; 359 QString holiStr = mHolidays[i];
360 if ( event->isHoliday()) { 360 if ( event->isHoliday()) {
361 pDays.setBit(i); 361 pDays.setBit(i);
362 hDays.setBit(i); 362 hDays.setBit(i);
363 if ( !holiStr.isEmpty() ) 363 if ( !holiStr.isEmpty() )
364 holiStr += "\n"; 364 holiStr += "\n";
365 holiStr += event->summary(); 365 holiStr += event->summary();
366 if ( !event->location().isEmpty() ) 366 if ( !event->location().isEmpty() )
367 holiStr += " (" + event->location() + ")"; 367 holiStr += " (" + event->location() + ")";
368 mHolidays[i] =holiStr ; 368 mHolidays[i] =holiStr ;
369 eDays.setBit(i);
369 } 370 }
370 if ( event->isBirthday()) { 371 if ( KOPrefs::instance()->mCurrentDisplayedView != VIEW_T_VIEW && KOPrefs::instance()->mCurrentDisplayedView != VIEW_J_VIEW ) {
371 pDays.setBit(i); 372 if ( event->isBirthday()) {
372 if ( !holiStr.isEmpty() ) 373 pDays.setBit(i);
373 holiStr += "\n"; 374 if ( !holiStr.isEmpty() )
374 holiStr += i18n("Birthday") + ": "+event->summary(); 375 holiStr += "\n";
375 if ( !event->location().isEmpty() ) 376 holiStr += i18n("Birthday") + ": "+event->summary();
376 holiStr += " (" + event->location() + ")"; 377 if ( !event->location().isEmpty() )
377 bDays.setBit(i); 378 holiStr += " (" + event->location() + ")";
378 mHolidays[i] =holiStr ; 379 bDays.setBit(i);
380 mHolidays[i] =holiStr ;
381 }
379 } 382 }
380 eDays.setBit(i); 383 if ( KOPrefs::instance()->mCurrentDisplayedView != VIEW_J_VIEW )
384 eDays.setBit(i);
381} 385}
382void KODayMatrix::updateViewTimed() 386void KODayMatrix::updateViewTimed()
383{ 387{
384 mUpdateTimer->stop(); 388 mUpdateTimer->stop();
385 if ( !mCalendar ) { 389 if ( !mCalendar ) {
386 qDebug("NOT CAL "); 390 qDebug("NOT CAL ");
387 return; 391 return;
388 } 392 }
389#if 1 393#if 1
390 394
395
391 int i; 396 int i;
392 int timeSpan = NUMDAYS-1; 397 int timeSpan = NUMDAYS-1;
393 QPtrList<Event> events = mCalendar->events(); 398 QPtrList<Event> events = mCalendar->events();
394 Event *event; 399 Event *event;
395 QDateTime dt; 400 QDateTime dt;
396 bool ok; 401 bool ok;
397 bDays.fill( false); 402 bDays.fill( false);
398 pDays.fill( false); 403 pDays.fill( false);
399 hDays.fill( false); 404 hDays.fill( false);
400 eDays.fill( false); 405 eDays.fill( false);
401 mHolidays.clear(); 406 mHolidays.clear();
402 QDate mStartDate = days[0]; 407 QDate mStartDate = days[0];
403 QDate endDate = mStartDate.addDays( timeSpan ); 408 QDate endDate = mStartDate.addDays( timeSpan );
404 for( event = events.first(); event; event = events.next() ) { // for event 409 for( event = events.first(); event; event = events.next() ) { // for event
405 ushort recurType = event->recurrence()->doesRecur(); 410 ushort recurType = event->recurrence()->doesRecur();
406 if ((recurType == Recurrence::rDaily && !KOPrefs::instance()->mDailyRecur) || 411 if ((recurType == Recurrence::rDaily && !KOPrefs::instance()->mDailyRecur) ||
407 (recurType == Recurrence::rWeekly && !KOPrefs::instance()->mWeeklyRecur)) { 412 (recurType == Recurrence::rWeekly && !KOPrefs::instance()->mWeeklyRecur)) {
408 continue; 413 continue;
409 } 414 }
410 if ( event->doesRecur() ) { 415 if ( event->doesRecur() ) {
411 bool last; 416 bool last;
412 QDateTime incidenceStart = event->recurrence()->getPreviousDateTime( QDateTime( mStartDate ) , &last ); 417 QDateTime incidenceStart = event->recurrence()->getPreviousDateTime( QDateTime( mStartDate ) , &last );
413 QDateTime incidenceEnd; 418 QDateTime incidenceEnd;
414 int eventlen = event->dtStart().date().daysTo ( event->dtEnd().date() ); 419 int eventlen = event->dtStart().date().daysTo ( event->dtEnd().date() );
415 bool invalid = false; 420 bool invalid = false;
416 while( true ) { 421 while( true ) {
417 if ( incidenceStart.isValid() ) { 422 if ( incidenceStart.isValid() ) {
418 incidenceEnd = incidenceStart.addDays( eventlen ); 423 incidenceEnd = incidenceStart.addDays( eventlen );
419 int st = incidenceStart.date().daysTo( endDate ); 424 int st = incidenceStart.date().daysTo( endDate );
420 if ( st >= 0 ) { // start before timeend 425 if ( st >= 0 ) { // start before timeend
421 int end = mStartDate.daysTo( incidenceEnd.date() ); 426 int end = mStartDate.daysTo( incidenceEnd.date() );
422 if ( end >= 0 ) { // end after timestart --- got one! 427 if ( end >= 0 ) { // end after timestart --- got one!
423 //normalize 428 //normalize
424 st = timeSpan - st; 429 st = timeSpan - st;
425 if ( st < 0 ) st = 0; 430 if ( st < 0 ) st = 0;
426 if ( end > timeSpan ) end = timeSpan; 431 if ( end > timeSpan ) end = timeSpan;
427 int iii; 432 int iii;
428 //qDebug("found %s %d %d ",event->summary().latin1(), st, end ); 433 //qDebug("found %s %d %d ",event->summary().latin1(), st, end );
429 for ( iii = st;iii<= end;++iii) { 434 for ( iii = st;iii<= end;++iii) {
430 computeEvent( event, iii ); 435 computeEvent( event, iii );
431 } 436 }
432 } 437 }
433 } 438 }
434 } else { 439 } else {
435 if ( invalid ) 440 if ( invalid )
436 break; 441 break;
437 invalid = true; 442 invalid = true;
438 //qDebug("invalid %s", event->summary().latin1()); 443 //qDebug("invalid %s", event->summary().latin1());
439 incidenceStart = QDateTime( mStartDate ).addSecs( -2 );; 444 incidenceStart = QDateTime( mStartDate ).addSecs( -2 );;
440 } 445 }
441 if ( last ) 446 if ( last )
442 break; 447 break;
443 bool ok; 448 bool ok;
444 incidenceStart = event->getNextOccurence( incidenceStart.addSecs( 1 ) ,&ok ); 449 incidenceStart = event->getNextOccurence( incidenceStart.addSecs( 1 ) ,&ok );
445 if ( ! ok ) 450 if ( ! ok )
446 break; 451 break;
447 if ( incidenceStart.date() > endDate ) 452 if ( incidenceStart.date() > endDate )
448 break; 453 break;
449 } 454 }
450 } else { // no recur 455 } else { // no recur
451 int st = event->dtStart().date().daysTo( endDate ); 456 int st = event->dtStart().date().daysTo( endDate );
452 if ( st >= 0 ) { // start before timeend 457 if ( st >= 0 ) { // start before timeend
453 int end = mStartDate.daysTo( event->dtEnd().date() ); 458 int end = mStartDate.daysTo( event->dtEnd().date() );
454 if ( end >= 0 ) { // end after timestart --- got one! 459 if ( end >= 0 ) { // end after timestart --- got one!
455 //normalize 460 //normalize
456 st = timeSpan - st; 461 st = timeSpan - st;
457 if ( st < 0 ) st = 0; 462 if ( st < 0 ) st = 0;
458 if ( end > timeSpan ) end = timeSpan; 463 if ( end > timeSpan ) end = timeSpan;
459 int iii; 464 int iii;
460 for ( iii = st;iii<= end;++iii) 465 for ( iii = st;iii<= end;++iii)
461 computeEvent( event, iii ); 466 computeEvent( event, iii );
462 } 467 }
463 } 468 }
464 } 469 }
465 } 470 }
466 int startDay = days[0].dayOfWeek(); // 1...7 7 = sunday 471 int startDay = days[0].dayOfWeek(); // 1...7 7 = sunday
467 for(i = 0; i < NUMDAYS; i++) { 472 for(i = 0; i < NUMDAYS; i++) {
468 if ( ( (i+startDay) % 7 == 0 ) ) { 473 if ( ( (i+startDay) % 7 == 0 ) ) {
469 pDays.setBit(i); 474 pDays.setBit(i);
470 } 475 }
471 } 476 }
472 477 if ( KOPrefs::instance()->mCurrentDisplayedView == VIEW_T_VIEW ) {
473#if 0 478 bDays.fill( false);
474 // insert due todos 479 // insert due todos
475 QPtrList<Todo> todos = calendar()->todos( ); 480 QPtrList<Todo> todos = mCalendar->todos( );
476 Todo *todo; 481 Todo *todo;
477 for(todo = todos.first(); todo; todo = todos.next()) { 482 for(todo = todos.first(); todo; todo = todos.next()) {
478 //insertTodo( todo ); 483 //insertTodo( todo );
479 if ( todo->hasDueDate() ) { 484 if ( todo->hasDueDate() ) {
480 int day = mStartDate.daysTo( todo->dtDue().date() ); 485 int day = mStartDate.daysTo( todo->dtDue().date() );
486 if ( day >= 0 && day < timeSpan + 1) {
487 int i = day;
488 QString holiStr = mHolidays[i];
489 pDays.setBit(i);
490 if ( !holiStr.isEmpty() )
491 holiStr += "\n";
492 holiStr += i18n("Todo") + ": "+todo->summary();
493 if ( !todo->location().isEmpty() )
494 holiStr += " (" + todo->location() + ")";
495 bDays.setBit(i);
496 mHolidays[i] =holiStr ;
497 eDays.setBit(i);
498 }
499 }
500 }
501 }
502 if ( KOPrefs::instance()->mCurrentDisplayedView == VIEW_J_VIEW ) {
503 bDays.fill( false);
504 // insert due todos
505 QPtrList<Journal> todos = mCalendar->journals( );
506 Journal *todo;
507 for(todo = todos.first(); todo; todo = todos.next()) {
508 int day = mStartDate.daysTo( todo->dtStart().date() );
481 if ( day >= 0 && day < timeSpan + 1) { 509 if ( day >= 0 && day < timeSpan + 1) {
482 (*cells)[day]->insertTodo( todo ); 510 int i = day;
511 QString holiStr = mHolidays[i];
512 pDays.setBit(i);
513 if ( !holiStr.isEmpty() )
514 holiStr += "\n";
515 holiStr += i18n("Journal");
516 bDays.setBit(i);
517 mHolidays[i] =holiStr ;
518 eDays.setBit(i);
519
483 } 520 }
484 } 521 }
485 } 522 }
486#endif
487
488#else 523#else
489 //qDebug("KODayMatrix::updateViewTimed "); 524 //qDebug("KODayMatrix::updateViewTimed ");
490 for(int i = 0; i < NUMDAYS; i++) { 525 for(int i = 0; i < NUMDAYS; i++) {
491 // if events are set for the day then remember to draw it bold 526 // if events are set for the day then remember to draw it bold
492 QPtrList<Event> eventlist = mCalendar->events(days[i]); 527 QPtrList<Event> eventlist = mCalendar->events(days[i]);
493 Event *event; 528 Event *event;
494 int numEvents = eventlist.count(); 529 int numEvents = eventlist.count();
495 QString holiStr = ""; 530 QString holiStr = "";
496 bDays.clearBit(i); 531 bDays.clearBit(i);
497 hDays.clearBit(i); 532 hDays.clearBit(i);
498 eDays.clearBit(i); 533 eDays.clearBit(i);
499 for(event=eventlist.first();event != 0;event=eventlist.next()) { 534 for(event=eventlist.first();event != 0;event=eventlist.next()) {
500 ushort recurType = event->recurrence()->doesRecur(); 535 ushort recurType = event->recurrence()->doesRecur();
501 if ((recurType == Recurrence::rDaily && !KOPrefs::instance()->mDailyRecur) || 536 if ((recurType == Recurrence::rDaily && !KOPrefs::instance()->mDailyRecur) ||
502 (recurType == Recurrence::rWeekly && !KOPrefs::instance()->mWeeklyRecur)) { 537 (recurType == Recurrence::rWeekly && !KOPrefs::instance()->mWeeklyRecur)) {
503 numEvents--; 538 numEvents--;
504 } 539 }
505 if ( event->isHoliday()) { 540 if ( event->isHoliday()) {
506 hDays.setBit(i); 541 hDays.setBit(i);
507 if ( !holiStr.isEmpty() ) 542 if ( !holiStr.isEmpty() )
508 holiStr += "\n"; 543 holiStr += "\n";
509 holiStr += event->summary(); 544 holiStr += event->summary();
510 if ( !event->location().isEmpty() ) 545 if ( !event->location().isEmpty() )
511 holiStr += " (" + event->location() + ")"; 546 holiStr += " (" + event->location() + ")";
512 } 547 }
513 if ( event->isBirthday()) { 548 if ( event->isBirthday()) {
514 if ( !holiStr.isEmpty() ) 549 if ( !holiStr.isEmpty() )
515 holiStr += "\n"; 550 holiStr += "\n";
516 holiStr += i18n("Birthday") + ": "+event->summary(); 551 holiStr += i18n("Birthday") + ": "+event->summary();
517 if ( !event->location().isEmpty() ) 552 if ( !event->location().isEmpty() )
518 holiStr += " (" + event->location() + ")"; 553 holiStr += " (" + event->location() + ")";
519 bDays.setBit(i); 554 bDays.setBit(i);
520 } 555 }
521 } 556 }
522 if ( numEvents ) 557 if ( numEvents )
523 eDays.setBit(i); 558 eDays.setBit(i);
524 //if it is a holy day then draw it red. Sundays are consider holidays, too 559 //if it is a holy day then draw it red. Sundays are consider holidays, too
525 if ( (KOGlobals::self()->calendarSystem()->dayOfWeek(days[i]) == KOGlobals::self()->calendarSystem()->weekDayOfPray()) || 560 if ( (KOGlobals::self()->calendarSystem()->dayOfWeek(days[i]) == KOGlobals::self()->calendarSystem()->weekDayOfPray()) ||
526 !holiStr.isEmpty()) { 561 !holiStr.isEmpty()) {
527 mHolidays[i] = holiStr; 562 mHolidays[i] = holiStr;
528 } else { 563 } else {
529 mHolidays[i] = QString::null; 564 mHolidays[i] = QString::null;
530 } 565 }
531 } 566 }
532#endif 567#endif
533 mRedrawNeeded = true; 568 mRedrawNeeded = true;
534 if ( ! mPendingUpdateBeforeRepaint ) 569 if ( ! mPendingUpdateBeforeRepaint )
535 repaint(false); 570 repaint(false);
536} 571}
537void KODayMatrix::updateView(QDate actdate) 572void KODayMatrix::updateView(QDate actdate)
538{ 573{
539 574 if ( mLastView != KOPrefs::instance()->mCurrentDisplayedView )
575 mRedrawNeeded = true;
576 mLastView = KOPrefs::instance()->mCurrentDisplayedView;
540 if ( ! actdate.isValid() ) { 577 if ( ! actdate.isValid() ) {
541 //qDebug("date not valid "); 578 //qDebug("date not valid ");
542 return; 579 return;
543 } 580 }
544 mDayChanged = false; 581 mDayChanged = false;
545 //flag to indicate if the starting day of the matrix has changed by this call 582 //flag to indicate if the starting day of the matrix has changed by this call
546 //mDayChanged = false; 583 //mDayChanged = false;
547 // if a new startdate is to be set then apply Cornelius's calculation 584 // if a new startdate is to be set then apply Cornelius's calculation
548 // of the first day to be shown 585 // of the first day to be shown
549 if (actdate != startdate) { 586 if (actdate != startdate) {
550 // reset index of selection according to shift of starting date from startdate to actdate 587 // reset index of selection according to shift of starting date from startdate to actdate
551 if (mSelStart != NOSELECTION) { 588 if (mSelStart != NOSELECTION) {
552 int tmp = actdate.daysTo(startdate); 589 int tmp = actdate.daysTo(startdate);
553 //kdDebug() << "Shift of Selection1: " << mSelStart << " - " << mSelEnd << " -> " << tmp << "(" << offset << ")" << endl; 590 //kdDebug() << "Shift of Selection1: " << mSelStart << " - " << mSelEnd << " -> " << tmp << "(" << offset << ")" << endl;
554 // shift selection if new one would be visible at least partly ! 591 // shift selection if new one would be visible at least partly !
555 592
556 if (mSelStart+tmp < NUMDAYS && mSelEnd+tmp >= 0) { 593 if (mSelStart+tmp < NUMDAYS && mSelEnd+tmp >= 0) {
557 // nested if is required for next X display pushed from a different month - correction required 594 // nested if is required for next X display pushed from a different month - correction required
558 // otherwise, for month forward and backward, it must be avoided 595 // otherwise, for month forward and backward, it must be avoided
559 if( mSelStart > NUMDAYS || mSelStart < 0 ) 596 if( mSelStart > NUMDAYS || mSelStart < 0 )
560 mSelStart = mSelStart + tmp; 597 mSelStart = mSelStart + tmp;
561 if( mSelEnd > NUMDAYS || mSelEnd < 0 ) 598 if( mSelEnd > NUMDAYS || mSelEnd < 0 )
562 mSelEnd = mSelEnd + tmp; 599 mSelEnd = mSelEnd + tmp;
563 } 600 }
564 } 601 }
565 startdate = actdate; 602 startdate = actdate;
566 mDayChanged = true; 603 mDayChanged = true;
567 recalculateToday(); 604 recalculateToday();
568 mRedrawNeeded = true; 605 mRedrawNeeded = true;
569 } 606 }
570 //qDebug("restart Timer %d vis: %d", mDayChanged, isVisible() ); 607 //qDebug("restart Timer %d vis: %d", mDayChanged, isVisible() );
571 if ( !isVisible() ) { 608 if ( !isVisible() ) {
572 mPendingUpdateBeforeRepaint = true; 609 mPendingUpdateBeforeRepaint = true;
573 } else { 610 } else {
574#ifdef DESKTOP_VERSION 611#ifdef DESKTOP_VERSION
575 //mRepaintTimer->start( 100 ); 612 //mRepaintTimer->start( 100 );
576 //updateViewTimed(); 613 //updateViewTimed();
577 mUpdateTimer->start( 50 ); 614 mUpdateTimer->start( 50 );
578#else 615#else
579 mRepaintTimer->start( 350 ); 616 mRepaintTimer->start( 350 );
580 mUpdateTimer->start( 800 ); 617 mUpdateTimer->start( 800 );
581#endif 618#endif
582 } 619 }
583} 620}
584void KODayMatrix::updateEvents() 621void KODayMatrix::updateEvents()
585{ 622{
586 if ( !mCalendar ) return; 623 if ( !mCalendar ) return;
587 624
588 for( int i = 0; i < NUMDAYS; i++ ) { 625 for( int i = 0; i < NUMDAYS; i++ ) {
589 // if events are set for the day then remember to draw it bold 626 // if events are set for the day then remember to draw it bold
590 QPtrList<Event> eventlist = mCalendar->events( days[ i ] ); 627 QPtrList<Event> eventlist = mCalendar->events( days[ i ] );
591 int numEvents = eventlist.count(); 628 int numEvents = eventlist.count();
592 Event *event; 629 Event *event;
593 for( event = eventlist.first(); event != 0;event=eventlist.next()) { 630 for( event = eventlist.first(); event != 0;event=eventlist.next()) {
594 ushort recurType = event->doesRecur(); 631 ushort recurType = event->doesRecur();
595 632
596 if ( ( recurType == Recurrence::rDaily && 633 if ( ( recurType == Recurrence::rDaily &&
597 !KOPrefs::instance()->mDailyRecur ) || 634 !KOPrefs::instance()->mDailyRecur ) ||
598 ( recurType == Recurrence::rWeekly && 635 ( recurType == Recurrence::rWeekly &&
599 !KOPrefs::instance()->mWeeklyRecur ) ) { 636 !KOPrefs::instance()->mWeeklyRecur ) ) {
600 numEvents--; 637 numEvents--;
601 } 638 }
602 } 639 }
603 if ( numEvents ) 640 if ( numEvents )
604 eDays.setBit(i); 641 eDays.setBit(i);
605 else 642 else
606 eDays.clearBit(i); 643 eDays.clearBit(i);
607 } 644 }
608} 645}
609 646
610const QDate& KODayMatrix::getDate(int offset) 647const QDate& KODayMatrix::getDate(int offset)
611{ 648{
612 if (offset < 0 || offset > NUMDAYS-1) { 649 if (offset < 0 || offset > NUMDAYS-1) {
613 qDebug("Wrong offset2 %d", offset); 650 qDebug("Wrong offset2 %d", offset);
614 return days[0]; 651 return days[0];
615 } 652 }
616 return days[offset]; 653 return days[offset];
617} 654}
618 655
619QString KODayMatrix::getHolidayLabel(int offset) 656QString KODayMatrix::getHolidayLabel(int offset)
620{ 657{
621 if (offset < 0 || offset > NUMDAYS-1) { 658 if (offset < 0 || offset > NUMDAYS-1) {
622 qDebug("Wrong offset1 %d", offset); 659 qDebug("Wrong offset1 %d", offset);
623 return QString(); 660 return QString();
624 } 661 }
625 return mHolidays[offset]; 662 return mHolidays[offset];
626} 663}
627 664
628int KODayMatrix::getDayIndexFrom(int x, int y) 665int KODayMatrix::getDayIndexFrom(int x, int y)
629{ 666{
630 int colModulo = (width()-2) % 7; 667 int colModulo = (width()-2) % 7;
631 int rowModulo = (height()-2) % 6; 668 int rowModulo = (height()-2) % 6;
632#if 0 669#if 0
633 return 7*(y/daysize.height()) + (KOGlobals::self()->reverseLayout() ? 670 return 7*(y/daysize.height()) + (KOGlobals::self()->reverseLayout() ?
634 6 - x/daysize.width() : x/daysize.width()); 671 6 - x/daysize.width() : x/daysize.width());
635#endif 672#endif
@@ -959,171 +996,171 @@ void KODayMatrix::paintEvent(QPaintEvent * pevent)
959 //qDebug("esl %d ",selw ); 996 //qDebug("esl %d ",selw );
960 int add = 0; 997 int add = 0;
961 if ( colModulo ) { 998 if ( colModulo ) {
962 add = 7 - colModulo; 999 add = 7 - colModulo;
963 if ( selw > add ) 1000 if ( selw > add )
964 add = selw - add; 1001 add = selw - add;
965 else 1002 else
966 add = 0; 1003 add = 0;
967 } 1004 }
968 //qDebug("add %d ", add); 1005 //qDebug("add %d ", add);
969 p.fillRect(isRTL ? (7-selw)*dwidth : 1, (row+selh)*dheight+addRow, 1006 p.fillRect(isRTL ? (7-selw)*dwidth : 1, (row+selh)*dheight+addRow,
970 selw*dwidth+add, dheight+1, selcol); 1007 selw*dwidth+add, dheight+1, selcol);
971 } 1008 }
972 } 1009 }
973 } 1010 }
974 1011
975 // iterate over all days in the matrix and draw the day label in appropriate colors 1012 // iterate over all days in the matrix and draw the day label in appropriate colors
976 QColor actcol = mDefaultTextColorShaded; 1013 QColor actcol = mDefaultTextColorShaded;
977 p.setPen(actcol); 1014 p.setPen(actcol);
978 QPen tmppen; 1015 QPen tmppen;
979 for(int i = 0; i < NUMDAYS; i++) { 1016 for(int i = 0; i < NUMDAYS; i++) {
980 row = i/7; 1017 row = i/7;
981 col = isRTL ? 6-(i-row*7) : i-row*7; 1018 col = isRTL ? 6-(i-row*7) : i-row*7;
982 1019
983 // if it is the first day of a month switch color from normal to shaded and vice versa 1020 // if it is the first day of a month switch color from normal to shaded and vice versa
984 if ( KOGlobals::self()->calendarSystem()->day( days[i] ) == 1) { 1021 if ( KOGlobals::self()->calendarSystem()->day( days[i] ) == 1) {
985 if (actcol == mDefaultTextColorShaded) { 1022 if (actcol == mDefaultTextColorShaded) {
986 actcol = mDefaultTextColor; 1023 actcol = mDefaultTextColor;
987 } else { 1024 } else {
988 actcol = mDefaultTextColorShaded; 1025 actcol = mDefaultTextColorShaded;
989 } 1026 }
990 p.setPen(actcol); 1027 p.setPen(actcol);
991 } 1028 }
992 if (actcol == mDefaultTextColorShaded) { 1029 if (actcol == mDefaultTextColorShaded) {
993 if ( ! mouseDown ) { 1030 if ( ! mouseDown ) {
994 continue; 1031 continue;
995 } 1032 }
996 } 1033 }
997 //Reset pen color after selected days block 1034 //Reset pen color after selected days block
998 if (i == mSelEndT+1) { 1035 if (i == mSelEndT+1) {
999 p.setPen(actcol); 1036 p.setPen(actcol);
1000 } 1037 }
1001 1038
1002 // if today then draw rectangle around day 1039 // if today then draw rectangle around day
1003 if (today == i) { 1040 if (today == i) {
1004 tmppen = p.pen(); 1041 tmppen = p.pen();
1005 QPen mTodayPen(p.pen()); 1042 QPen mTodayPen(p.pen());
1006 if ( daysize.width() < 20 ) 1043 if ( daysize.width() < 20 )
1007 mTodayPen.setWidth(1); 1044 mTodayPen.setWidth(1);
1008 else 1045 else
1009 mTodayPen.setWidth(mTodayMarginWidth); 1046 mTodayPen.setWidth(mTodayMarginWidth);
1010 //draw red rectangle for holidays 1047 //draw red rectangle for holidays
1011 if (pDays.testBit(i)) { 1048 if (pDays.testBit(i)) {
1012 if (actcol == mDefaultTextColor) { 1049 if (actcol == mDefaultTextColor) {
1013 mTodayPen.setColor(KOPrefs::instance()->mHolidayColor); 1050 mTodayPen.setColor(KOPrefs::instance()->mHolidayColor);
1014 } else { 1051 } else {
1015 mTodayPen.setColor(mHolidayColorShaded); 1052 mTodayPen.setColor(mHolidayColorShaded);
1016 } 1053 }
1017 } 1054 }
1018 //draw gray rectangle for today if in selection 1055 //draw gray rectangle for today if in selection
1019 if (i >= mSelStartT && i <= mSelEndT) { 1056 if (i >= mSelStartT && i <= mSelEndT) {
1020 QColor grey("grey"); 1057 QColor grey("grey");
1021 mTodayPen.setColor(grey); 1058 mTodayPen.setColor(grey);
1022 } 1059 }
1023 p.setPen(mTodayPen); 1060 p.setPen(mTodayPen);
1024 1061
1025 1062
1026 int addCol = 0; 1063 int addCol = 0;
1027 int addRow = 0; 1064 int addRow = 0;
1028 if (rowModulo) { 1065 if (rowModulo) {
1029 if ( row >= 6 - rowModulo ) 1066 if ( row >= 6 - rowModulo )
1030 addRow = row - 5 + rowModulo; 1067 addRow = row - 5 + rowModulo;
1031 } 1068 }
1032 if ( colModulo ) { 1069 if ( colModulo ) {
1033 if ( col >= 7 - colModulo ) 1070 if ( col >= 7 - colModulo )
1034 addCol = col - 6 + colModulo-1; 1071 addCol = col - 6 + colModulo-1;
1035 } 1072 }
1036 1073
1037 addCol += 1; 1074 addCol += 1;
1038 if ( row == 0 ) 1075 if ( row == 0 )
1039 addRow = 1; 1076 addRow = 1;
1040 p.drawRect(col*dwidth+addCol, row*dheight+addRow, dwidth+1, dheight+1); 1077 p.drawRect(col*dwidth+addCol, row*dheight+addRow, dwidth+1, dheight+1);
1041 p.setPen(tmppen); 1078 p.setPen(tmppen);
1042 } 1079 }
1043 1080
1044 // if any events are on that day then draw it using a bold font 1081 // if any events are on that day then draw it using a bold font
1045 if ( eDays.testBit(i) ) { 1082 if ( eDays.testBit(i) ) {
1046 QFont myFont = font(); 1083 QFont myFont = font();
1047 myFont.setBold(true); 1084 myFont.setBold(true);
1048 p.setFont(myFont); 1085 p.setFont(myFont);
1049 } 1086 }
1050 1087
1051 // if it is a holiday then use the default holiday color 1088 // if it is a holiday then use the default holiday color
1052 if ( pDays.testBit(i)) { 1089 if ( pDays.testBit(i)) {
1053 if ( bDays.testBit(i) ) { 1090 if ( bDays.testBit(i) ) {
1054 if ( hDays.testBit(i) ) 1091 if ( hDays.testBit(i) )
1055 p.setPen(QColor(Qt::green)); 1092 p.setPen(QColor(0,200,0));
1056 else 1093 else
1057 p.setPen(QColor(Qt::green).dark()); 1094 p.setPen(QColor(Qt::blue));
1058 } else { 1095 } else {
1059 if (actcol == mDefaultTextColor ) { 1096 if (actcol == mDefaultTextColor ) {
1060 p.setPen(KOPrefs::instance()->mHolidayColor); 1097 p.setPen(KOPrefs::instance()->mHolidayColor);
1061 } else { 1098 } else {
1062 p.setPen(mHolidayColorShaded); 1099 p.setPen(mHolidayColorShaded);
1063 } 1100 }
1064 } 1101 }
1065 } 1102 }
1066 1103
1067 // draw selected days with special color 1104 // draw selected days with special color
1068 // DO NOT specially highlight holidays in selection ! 1105 // DO NOT specially highlight holidays in selection !
1069 if (i >= mSelStartT && i <= mSelEndT) { 1106 if (i >= mSelStartT && i <= mSelEndT) {
1070 ;//p.setPen(mSelectedDaysColor); 1107 ;//p.setPen(mSelectedDaysColor);
1071 } 1108 }
1072 1109
1073 int addCol = 0; 1110 int addCol = 0;
1074 int addRow = 0; 1111 int addRow = 0;
1075 if ( colModulo ) { 1112 if ( colModulo ) {
1076 if ( col >= 7 - colModulo ) 1113 if ( col >= 7 - colModulo )
1077 addCol = col - 7 + colModulo; 1114 addCol = col - 7 + colModulo;
1078 } 1115 }
1079 if ( rowModulo ) { 1116 if ( rowModulo ) {
1080 if ( row >= 6 - rowModulo ) 1117 if ( row >= 6 - rowModulo )
1081 addRow = row - 5 + rowModulo; 1118 addRow = row - 5 + rowModulo;
1082 } 1119 }
1083 //qDebug("add %d %d -- %d %d ", col, addCol, row, addRow); 1120 //qDebug("add %d %d -- %d %d ", col, addCol, row, addRow);
1084 ++addCol;//++addCol; 1121 ++addCol;//++addCol;
1085 if ( row == 0) 1122 if ( row == 0)
1086 addRow = 1; 1123 addRow = 1;
1087 p.drawText(col*dwidth+addCol, row*dheight+addRow, dwidth, dheight, 1124 p.drawText(col*dwidth+addCol, row*dheight+addRow, dwidth, dheight,
1088 Qt::AlignHCenter | Qt::AlignVCenter, daylbls[i]); 1125 Qt::AlignHCenter | Qt::AlignVCenter, daylbls[i]);
1089 1126
1090 // reset color to actual color 1127 // reset color to actual color
1091 if (pDays.testBit(i)) { 1128 if (pDays.testBit(i)) {
1092 p.setPen(actcol); 1129 p.setPen(actcol);
1093 } 1130 }
1094 // reset bold font to plain font 1131 // reset bold font to plain font
1095 if ( eDays.testBit(i)) { 1132 if ( eDays.testBit(i)) {
1096 QFont myFont = font(); 1133 QFont myFont = font();
1097 myFont.setBold(false); 1134 myFont.setBold(false);
1098 p.setFont(myFont); 1135 p.setFont(myFont);
1099 } 1136 }
1100 } 1137 }
1101 } else { 1138 } else {
1102 //qDebug("NO redraw "); 1139 //qDebug("NO redraw ");
1103 } 1140 }
1104 1141
1105 bitBlt (this, pevent->rect().topLeft(), &myPix , pevent->rect() ,CopyROP); 1142 bitBlt (this, pevent->rect().topLeft(), &myPix , pevent->rect() ,CopyROP);
1106 mRedrawNeeded = false; 1143 mRedrawNeeded = false;
1107} 1144}
1108 1145
1109// ---------------------------------------------------------------------------- 1146// ----------------------------------------------------------------------------
1110// R E SI Z E E V E N T H A N D L I N G 1147// R E SI Z E E V E N T H A N D L I N G
1111// ---------------------------------------------------------------------------- 1148// ----------------------------------------------------------------------------
1112 1149
1113void KODayMatrix::resizeEvent(QResizeEvent *) 1150void KODayMatrix::resizeEvent(QResizeEvent *)
1114{ 1151{
1115 QRect sz = frameRect(); 1152 QRect sz = frameRect();
1116 daysize.setHeight(sz.height()*7 / NUMDAYS); 1153 daysize.setHeight(sz.height()*7 / NUMDAYS);
1117 daysize.setWidth(sz.width() / 7); 1154 daysize.setWidth(sz.width() / 7);
1118} 1155}
1119 1156
1120QSize KODayMatrix::sizeHint() const 1157QSize KODayMatrix::sizeHint() const
1121{ 1158{
1122 1159
1123 QFontMetrics fm ( font() ); 1160 QFontMetrics fm ( font() );
1124 int wid = fm.width( "30") *7+3; 1161 int wid = fm.width( "30") *7+3;
1125 int hei = fm.height() * 6+3; 1162 int hei = fm.height() * 6+3;
1126 //qDebug("KODayMatrix::sizeHint()********************* %d %d", wid , hei); 1163 //qDebug("KODayMatrix::sizeHint()********************* %d %d", wid , hei);
1127 return QSize ( wid, hei ); 1164 return QSize ( wid, hei );
1128 1165
1129} 1166}
diff --git a/korganizer/kodaymatrix.h b/korganizer/kodaymatrix.h
index b686bd7..a3216d6 100644
--- a/korganizer/kodaymatrix.h
+++ b/korganizer/kodaymatrix.h
@@ -134,192 +134,193 @@ public:
134 */ 134 */
135 void updateView(QDate actdate); 135 void updateView(QDate actdate);
136 void updateEvents(); 136 void updateEvents();
137 137
138 /** returns the QDate object associated with day indexed by the 138 /** returns the QDate object associated with day indexed by the
139 * supplied offset. 139 * supplied offset.
140 */ 140 */
141 const QDate& getDate(int offset); 141 const QDate& getDate(int offset);
142 void setCalendar( Calendar * ); 142 void setCalendar( Calendar * );
143 /** returns the official name of this holy day or 0 if there is no label 143 /** returns the official name of this holy day or 0 if there is no label
144 * for this day. 144 * for this day.
145 */ 145 */
146 QString getHolidayLabel(int offset); 146 QString getHolidayLabel(int offset);
147 147
148 /** adds all actual selected days from mSelStart to mSelEnd to the supplied 148 /** adds all actual selected days from mSelStart to mSelEnd to the supplied
149 * DateList. 149 * DateList.
150 */ 150 */
151 void addSelectedDaysTo(DateList&); 151 void addSelectedDaysTo(DateList&);
152 152
153 /** sets the actual to be displayed selection in the day matrix starting from 153 /** sets the actual to be displayed selection in the day matrix starting from
154 * start and ending with end. Theview must be manually updated by calling 154 * start and ending with end. Theview must be manually updated by calling
155 * repaint. (?) 155 * repaint. (?)
156 */ 156 */
157 bool setSelectedDaysFrom(const QDate& start, const QDate& end); 157 bool setSelectedDaysFrom(const QDate& start, const QDate& end);
158 void clearSelection(); 158 void clearSelection();
159 159
160 /** Is today visible in the view? Keep this in sync with 160 /** Is today visible in the view? Keep this in sync with
161 * the values today (below) can take. 161 * the values today (below) can take.
162 */ 162 */
163 bool isTodayVisible() const { return today>=0; } ; 163 bool isTodayVisible() const { return today>=0; } ;
164 164
165 /** If today is visible, then we can find out if today is 165 /** If today is visible, then we can find out if today is
166 * near the beginning or the end of the month. 166 * near the beginning or the end of the month.
167 * This is dependent on today remaining the index 167 * This is dependent on today remaining the index
168 * in the array of visible dates and going from 168 * in the array of visible dates and going from
169 * top left (0) to bottom right (41). 169 * top left (0) to bottom right (41).
170 */ 170 */
171 bool isBeginningOfMonth() const { return today<=8; } ; 171 bool isBeginningOfMonth() const { return today<=8; } ;
172 bool isEndOfMonth() const { return today>=27; } ; 172 bool isEndOfMonth() const { return today>=27; } ;
173 QString getWhatsThisText( QPoint ) ; 173 QString getWhatsThisText( QPoint ) ;
174 QSize sizeHint() const; 174 QSize sizeHint() const;
175 QRect frameRect () const { int wid = frameWidth(); return QRect(0+wid,0+wid,width()-wid-wid,height()-wid-wid);} 175 QRect frameRect () const { int wid = frameWidth(); return QRect(0+wid,0+wid,width()-wid-wid,height()-wid-wid);}
176public slots: 176public slots:
177 /** Recalculates all the flags of the days in the matrix like holidays or events 177 /** Recalculates all the flags of the days in the matrix like holidays or events
178 * on a day (Actually calls above method with the actual startdate). 178 * on a day (Actually calls above method with the actual startdate).
179 */ 179 */
180 void updateView(); 180 void updateView();
181 void updateViewTimed(); 181 void updateViewTimed();
182 void repaintViewTimed(); 182 void repaintViewTimed();
183 183
184 /** 184 /**
185 * Calculate which square in the matrix should be 185 * Calculate which square in the matrix should be
186 * hilighted to indicate it's today. 186 * hilighted to indicate it's today.
187 */ 187 */
188 void recalculateToday(); 188 void recalculateToday();
189 189
190/* 190/*
191 void setStartDate(QDate); 191 void setStartDate(QDate);
192*/ 192*/
193 193
194signals: 194signals:
195 195
196 /** emitted if the user selects a block of days with the mouse by dragging a rectangle 196 /** emitted if the user selects a block of days with the mouse by dragging a rectangle
197 * inside the matrix 197 * inside the matrix
198 * 198 *
199 * @param daylist list of days that have been selected by the user 199 * @param daylist list of days that have been selected by the user
200 */ 200 */
201 void selected( const KCal::DateList &daylist ); 201 void selected( const KCal::DateList &daylist );
202 202
203 /** emitted if the user has dropped an event inside the matrix 203 /** emitted if the user has dropped an event inside the matrix
204 * 204 *
205 * @param event the dropped calendar event 205 * @param event the dropped calendar event
206 */ 206 */
207 void eventDropped(Event *event); 207 void eventDropped(Event *event);
208 208
209protected: 209protected:
210 210
211 void paintEvent(QPaintEvent *ev); 211 void paintEvent(QPaintEvent *ev);
212 212
213 void mousePressEvent (QMouseEvent* e); 213 void mousePressEvent (QMouseEvent* e);
214 214
215 void mouseReleaseEvent (QMouseEvent* e); 215 void mouseReleaseEvent (QMouseEvent* e);
216 216
217 void mouseMoveEvent (QMouseEvent* e); 217 void mouseMoveEvent (QMouseEvent* e);
218 218
219 void dragEnterEvent(QDragEnterEvent *); 219 void dragEnterEvent(QDragEnterEvent *);
220 220
221 void dragMoveEvent(QDragMoveEvent *); 221 void dragMoveEvent(QDragMoveEvent *);
222 222
223 void dragLeaveEvent(QDragLeaveEvent *); 223 void dragLeaveEvent(QDragLeaveEvent *);
224 224
225 void dropEvent(QDropEvent *); 225 void dropEvent(QDropEvent *);
226 226
227 void resizeEvent(QResizeEvent *); 227 void resizeEvent(QResizeEvent *);
228 228
229private: 229private:
230 int mLastView;
230 void computeEvent(Event *even, int dayindex ); 231 void computeEvent(Event *even, int dayindex );
231 int oldW, oldH; 232 int oldW, oldH;
232 bool mRedrawNeeded; 233 bool mRedrawNeeded;
233 KODaymatrixWhatsThis* mKODaymatrixWhatsThis; 234 KODaymatrixWhatsThis* mKODaymatrixWhatsThis;
234 bool mouseDown; 235 bool mouseDown;
235 QBitArray bDays; 236 QBitArray bDays;
236 QBitArray hDays; 237 QBitArray hDays;
237 QBitArray eDays; 238 QBitArray eDays;
238 QBitArray pDays; 239 QBitArray pDays;
239 QPixmap myPix; 240 QPixmap myPix;
240 QTimer* mUpdateTimer; 241 QTimer* mUpdateTimer;
241 QTimer* mRepaintTimer; 242 QTimer* mRepaintTimer;
242 bool mDayChanged; 243 bool mDayChanged;
243 bool mPendingUpdateBeforeRepaint; 244 bool mPendingUpdateBeforeRepaint;
244 245
245 /** returns the index of the day located at the matrix's widget (x,y) position. 246 /** returns the index of the day located at the matrix's widget (x,y) position.
246 * 247 *
247 * @param x horizontal coordinate 248 * @param x horizontal coordinate
248 * @param y vertical coordinate 249 * @param y vertical coordinate
249 */ 250 */
250 int getDayIndexFrom(int x, int y); 251 int getDayIndexFrom(int x, int y);
251 252
252 /** calculates a "shaded" color from the supplied color object. 253 /** calculates a "shaded" color from the supplied color object.
253 * (Copied from Cornelius's kdpdatebutton.cpp) 254 * (Copied from Cornelius's kdpdatebutton.cpp)
254 * 255 *
255 * @param color source based on which a shaded color should be calculated. 256 * @param color source based on which a shaded color should be calculated.
256 */ 257 */
257 QColor getShadedColor(QColor color); 258 QColor getShadedColor(QColor color);
258 259
259 /** number of days to be displayed. For now there is no support for any other number then 42. 260 /** number of days to be displayed. For now there is no support for any other number then 42.
260 so change it at your own risk :o) */ 261 so change it at your own risk :o) */
261 static const int NUMDAYS; 262 static const int NUMDAYS;
262 263
263 /** calendar instance to be queried for holidays, events, ... */ 264 /** calendar instance to be queried for holidays, events, ... */
264 Calendar *mCalendar; 265 Calendar *mCalendar;
265 266
266 /** starting date of the matrix */ 267 /** starting date of the matrix */
267 QDate startdate; 268 QDate startdate;
268 269
269 /** array of day labels to optimeize drawing performance. */ 270 /** array of day labels to optimeize drawing performance. */
270 QString *daylbls; 271 QString *daylbls;
271 272
272 /** array of days displayed to reduce memory consumption by 273 /** array of days displayed to reduce memory consumption by
273 subsequently calling QDate::addDays(). */ 274 subsequently calling QDate::addDays(). */
274 QDate *days; 275 QDate *days;
275 276
276 /** array of storing the number of events on a given day. 277 /** array of storing the number of events on a given day.
277 * used for drawing a bold font if there is at least one event on that day. 278 * used for drawing a bold font if there is at least one event on that day.
278 */ 279 */
279 //int *events; 280 //int *events;
280 281
281 /** stores holiday names of the days shown in the matrix. */ 282 /** stores holiday names of the days shown in the matrix. */
282 QMap<int,QString> mHolidays; 283 QMap<int,QString> mHolidays;
283 284
284 /** indey of today or -1 if today is not visible in the matrix. */ 285 /** indey of today or -1 if today is not visible in the matrix. */
285 int today; 286 int today;
286 287
287 /** index of day where dragged selection was initiated. 288 /** index of day where dragged selection was initiated.
288 used to detect "negative" timely selections */ 289 used to detect "negative" timely selections */
289 int mSelInit; 290 int mSelInit;
290 291
291 /** if mSelStart has this value it indicates that there is no 292 /** if mSelStart has this value it indicates that there is no
292 actual selection in the matrix. */ 293 actual selection in the matrix. */
293 static const int NOSELECTION; 294 static const int NOSELECTION;
294 295
295 /** index of first selected day. */ 296 /** index of first selected day. */
296 int mSelStart; 297 int mSelStart;
297 298
298 /** index of last selected day. */ 299 /** index of last selected day. */
299 int mSelEnd; 300 int mSelEnd;
300 301
301 /** dynamic tooltip to handle mouse dependent tips for each day in the matrix. */ 302 /** dynamic tooltip to handle mouse dependent tips for each day in the matrix. */
302 DynamicTip* mToolTip; 303 DynamicTip* mToolTip;
303 304
304 305
305 /** default background colour of the matrix. */ 306 /** default background colour of the matrix. */
306 QColor mDefaultBackColor; 307 QColor mDefaultBackColor;
307 308
308 /** default text color of the matrix. */ 309 /** default text color of the matrix. */
309 QColor mDefaultTextColor; 310 QColor mDefaultTextColor;
310 311
311 /** default text color for days not in the actual month. */ 312 /** default text color for days not in the actual month. */
312 QColor mDefaultTextColorShaded; 313 QColor mDefaultTextColorShaded;
313 314
314 /** default text color for holidays not in the actual month. */ 315 /** default text color for holidays not in the actual month. */
315 QColor mHolidayColorShaded; 316 QColor mHolidayColorShaded;
316 317
317 /** text color for selected days. */ 318 /** text color for selected days. */
318 QColor mSelectedDaysColor; 319 QColor mSelectedDaysColor;
319 320
320 /** default width of the frame drawn around today if it is visible in the matrix. */ 321 /** default width of the frame drawn around today if it is visible in the matrix. */
321 int mTodayMarginWidth; 322 int mTodayMarginWidth;
322 323
323 /** stores actual size of each day in the widget so that I dont need to ask this data 324 /** stores actual size of each day in the widget so that I dont need to ask this data
324 * on every repaint. 325 * on every repaint.
325 */ 326 */
diff --git a/korganizer/komonthview.cpp b/korganizer/komonthview.cpp
index 843526d..ae61db6 100644
--- a/korganizer/komonthview.cpp
+++ b/korganizer/komonthview.cpp
@@ -1464,192 +1464,195 @@ void KOMonthView::showDates(const QDate &start, const QDate &)
1464 // first week that contains a thursday. Thus we must subtract off 4, 1464 // first week that contains a thursday. Thus we must subtract off 4,
1465 // not just 1. 1465 // not just 1.
1466 int dayOfYear = date.dayOfYear(); 1466 int dayOfYear = date.dayOfYear();
1467 if (dayOfYear % 7 != 0) 1467 if (dayOfYear % 7 != 0)
1468 wno = dayOfYear / 7 + 1; 1468 wno = dayOfYear / 7 + 1;
1469 else 1469 else
1470 wno =dayOfYear / 7; 1470 wno =dayOfYear / 7;
1471 (*weekLabels)[i]->setWeekNum( wno ); 1471 (*weekLabels)[i]->setWeekNum( wno );
1472 date = date.addDays( 7 ); 1472 date = date.addDays( 7 );
1473 } 1473 }
1474 updateView(); 1474 updateView();
1475} 1475}
1476 1476
1477void KOMonthView::showEvents(QPtrList<Event>) 1477void KOMonthView::showEvents(QPtrList<Event>)
1478{ 1478{
1479 qDebug("KOMonthView::selectEvents is not implemented yet. "); 1479 qDebug("KOMonthView::selectEvents is not implemented yet. ");
1480} 1480}
1481 1481
1482void KOMonthView::changeEventDisplay(Event *, int) 1482void KOMonthView::changeEventDisplay(Event *, int)
1483{ 1483{
1484 // this should be re-written to be much more efficient, but this 1484 // this should be re-written to be much more efficient, but this
1485 // quick-and-dirty-hack gets the job done for right now. 1485 // quick-and-dirty-hack gets the job done for right now.
1486 //qDebug("KOMonthView::changeEventDisplay "); 1486 //qDebug("KOMonthView::changeEventDisplay ");
1487 updateView(); 1487 updateView();
1488} 1488}
1489 1489
1490void KOMonthView::updateView() 1490void KOMonthView::updateView()
1491{ 1491{
1492 1492
1493 if ( !updatePossible ) 1493 if ( !updatePossible )
1494 return; 1494 return;
1495 //qDebug("UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU "); 1495 //qDebug("UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU ");
1496 //QTime ti; 1496 //QTime ti;
1497 //ti.start(); 1497 //ti.start();
1498 clearSelection(); 1498 clearSelection();
1499 QPtrVector<MonthViewCell> *cells; 1499 QPtrVector<MonthViewCell> *cells;
1500 if ( mShowWeekView ) { 1500 if ( mShowWeekView ) {
1501 cells = &mCellsW; 1501 cells = &mCellsW;
1502 } else { 1502 } else {
1503 cells = &mCells; 1503 cells = &mCells;
1504 } 1504 }
1505#if 1 1505#if 1
1506 int i; 1506 int i;
1507 int timeSpan = (*cells).size()-1; 1507 int timeSpan = (*cells).size()-1;
1508 if ( KOPrefs::instance()->mMonthViewWeek ) 1508 if ( KOPrefs::instance()->mMonthViewWeek )
1509 timeSpan = 6; 1509 timeSpan = 6;
1510 for( i = 0; i < timeSpan + 1; ++i ) { 1510 for( i = 0; i < timeSpan + 1; ++i ) {
1511 (*cells)[i]->startUpdateCell(); 1511 (*cells)[i]->startUpdateCell();
1512 } 1512 }
1513 1513
1514 QPtrList<Event> events = calendar()->events(); 1514 QPtrList<Event> events = calendar()->events();
1515 Event *event; 1515 Event *event;
1516 QDateTime dt; 1516 QDateTime dt;
1517 bool ok; 1517 bool ok;
1518 QDate endDate = mStartDate.addDays( timeSpan ); 1518 QDate endDate = mStartDate.addDays( timeSpan );
1519 for( event = events.first(); event; event = events.next() ) { // for event 1519 for( event = events.first(); event; event = events.next() ) { // for event
1520 if ( event->doesRecur() ) { 1520 if ( event->doesRecur() ) {
1521 bool last; 1521 bool last;
1522 QDateTime incidenceStart = event->recurrence()->getPreviousDateTime( QDateTime( mStartDate ) , &last ); 1522 QDateTime incidenceStart = event->recurrence()->getPreviousDateTime( QDateTime( mStartDate ) , &last );
1523 QDateTime incidenceEnd; 1523 QDateTime incidenceEnd;
1524 int eventlen = event->dtStart().date().daysTo ( event->dtEnd().date() ); 1524 int eventlen = event->dtStart().date().daysTo ( event->dtEnd().date() );
1525 bool invalid = false; 1525 bool invalid = false;
1526 while( true ) { 1526 while( true ) {
1527 if ( incidenceStart.isValid() ) { 1527 if ( incidenceStart.isValid() ) {
1528 incidenceEnd = incidenceStart.addDays( eventlen ); 1528 incidenceEnd = incidenceStart.addDays( eventlen );
1529 int st = incidenceStart.date().daysTo( endDate ); 1529 int st = incidenceStart.date().daysTo( endDate );
1530 if ( st >= 0 ) { // start before timeend 1530 if ( st >= 0 ) { // start before timeend
1531 int end = mStartDate.daysTo( incidenceEnd.date() ); 1531 int end = mStartDate.daysTo( incidenceEnd.date() );
1532 if ( end >= 0 ) { // end after timestart --- got one! 1532 if ( end >= 0 ) { // end after timestart --- got one!
1533 //normalize 1533 //normalize
1534 st = timeSpan - st; 1534 st = timeSpan - st;
1535 if ( st < 0 ) st = 0; 1535 if ( st < 0 ) st = 0;
1536 if ( end > timeSpan ) end = timeSpan; 1536 if ( end > timeSpan ) end = timeSpan;
1537 int iii; 1537 int iii;
1538 //qDebug("found %s %d %d ",event->summary().latin1(), st, end ); 1538 //qDebug("found %s %d %d ",event->summary().latin1(), st, end );
1539 for ( iii = st;iii<= end;++iii) 1539 for ( iii = st;iii<= end;++iii)
1540 (*cells)[iii]->insertEvent( event ); 1540 (*cells)[iii]->insertEvent( event );
1541 } 1541 }
1542 } 1542 }
1543 } else { 1543 } else {
1544 if ( invalid ) 1544 if ( invalid )
1545 break; 1545 break;
1546 invalid = true; 1546 invalid = true;
1547 //qDebug("invalid %s", event->summary().latin1()); 1547 //qDebug("invalid %s", event->summary().latin1());
1548 incidenceStart = QDateTime( mStartDate ).addSecs( -2 );; 1548 incidenceStart = QDateTime( mStartDate ).addSecs( -2 );;
1549 } 1549 }
1550 if ( last ) 1550 if ( last )
1551 break; 1551 break;
1552 bool ok; 1552 bool ok;
1553 incidenceStart = event->getNextOccurence( incidenceStart.addSecs( 1 ) ,&ok ); 1553 incidenceStart = event->getNextOccurence( incidenceStart.addSecs( 1 ) ,&ok );
1554 if ( ! ok ) 1554 if ( ! ok )
1555 break; 1555 break;
1556 if ( incidenceStart.date() > endDate ) 1556 if ( incidenceStart.date() > endDate )
1557 break; 1557 break;
1558 } 1558 }
1559 } else { // no recur 1559 } else { // no recur
1560 if ( !KOPrefs::instance()->mShowSyncEvents && event->uid().left(2) == QString("la") )
1561 if ( event->uid().left(15) == QString("last-syncEvent-") )
1562 continue;
1560 int st = event->dtStart().date().daysTo( endDate ); 1563 int st = event->dtStart().date().daysTo( endDate );
1561 if ( st >= 0 ) { // start before timeend 1564 if ( st >= 0 ) { // start before timeend
1562 int end = mStartDate.daysTo( event->dtEnd().date() ); 1565 int end = mStartDate.daysTo( event->dtEnd().date() );
1563 if ( end >= 0 ) { // end after timestart --- got one! 1566 if ( end >= 0 ) { // end after timestart --- got one!
1564 //normalize 1567 //normalize
1565 st = timeSpan - st; 1568 st = timeSpan - st;
1566 if ( st < 0 ) st = 0; 1569 if ( st < 0 ) st = 0;
1567 if ( end > timeSpan ) end = timeSpan; 1570 if ( end > timeSpan ) end = timeSpan;
1568 int iii; 1571 int iii;
1569 for ( iii = st;iii<= end;++iii) 1572 for ( iii = st;iii<= end;++iii)
1570 (*cells)[iii]->insertEvent( event ); 1573 (*cells)[iii]->insertEvent( event );
1571 } 1574 }
1572 } 1575 }
1573 } 1576 }
1574 } 1577 }
1575 // insert due todos 1578 // insert due todos
1576 QPtrList<Todo> todos = calendar()->todos( ); 1579 QPtrList<Todo> todos = calendar()->todos( );
1577 Todo *todo; 1580 Todo *todo;
1578 for(todo = todos.first(); todo; todo = todos.next()) { 1581 for(todo = todos.first(); todo; todo = todos.next()) {
1579 //insertTodo( todo ); 1582 //insertTodo( todo );
1580 if ( todo->hasDueDate() ) { 1583 if ( todo->hasDueDate() ) {
1581 int day = mStartDate.daysTo( todo->dtDue().date() ); 1584 int day = mStartDate.daysTo( todo->dtDue().date() );
1582 if ( day >= 0 && day < timeSpan + 1) { 1585 if ( day >= 0 && day < timeSpan + 1) {
1583 (*cells)[day]->insertTodo( todo ); 1586 (*cells)[day]->insertTodo( todo );
1584 } 1587 }
1585 } 1588 }
1586 } 1589 }
1587 1590
1588 for( i = 0; i < timeSpan+1; ++i ) { 1591 for( i = 0; i < timeSpan+1; ++i ) {
1589 (*cells)[i]->finishUpdateCell(); 1592 (*cells)[i]->finishUpdateCell();
1590 } 1593 }
1591 processSelectionChange(); 1594 processSelectionChange();
1592 //qApp->processEvents(); 1595 //qApp->processEvents();
1593 for( i = 0; i < timeSpan+1; ++i ) { 1596 for( i = 0; i < timeSpan+1; ++i ) {
1594 (*cells)[i]->repaintfinishUpdateCell(); 1597 (*cells)[i]->repaintfinishUpdateCell();
1595 } 1598 }
1596 setKeyBFocus(); 1599 setKeyBFocus();
1597#else 1600#else
1598 // old code 1601 // old code
1599 //qDebug("+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ "); 1602 //qDebug("+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ");
1600 int i; 1603 int i;
1601 for( i = 0; i < (*cells).count(); ++i ) { 1604 for( i = 0; i < (*cells).count(); ++i ) {
1602 (*cells)[i]->updateCell(); 1605 (*cells)[i]->updateCell();
1603 } 1606 }
1604 1607
1605 //qDebug("KOMonthView::updateView() "); 1608 //qDebug("KOMonthView::updateView() ");
1606 processSelectionChange(); 1609 processSelectionChange();
1607 // qDebug("---------------------------------------------------------------------+ "); 1610 // qDebug("---------------------------------------------------------------------+ ");
1608 (*cells)[0]->setFocus(); 1611 (*cells)[0]->setFocus();
1609#endif 1612#endif
1610 1613
1611 //qDebug("update time %d ", ti.elapsed()); 1614 //qDebug("update time %d ", ti.elapsed());
1612} 1615}
1613 1616
1614void KOMonthView::setKeyBoardFocus() 1617void KOMonthView::setKeyBoardFocus()
1615{ 1618{
1616 //qDebug("KOMonthView::setKeyBoardFocus() "); 1619 //qDebug("KOMonthView::setKeyBoardFocus() ");
1617 bool shootAgain = false; 1620 bool shootAgain = false;
1618 if ( mShowWeekView ) { 1621 if ( mShowWeekView ) {
1619 shootAgain = !mWeekLabelsW[1]->hasFocus(); 1622 shootAgain = !mWeekLabelsW[1]->hasFocus();
1620 mWeekLabelsW[1]->setFocus(); 1623 mWeekLabelsW[1]->setFocus();
1621 } 1624 }
1622 else { 1625 else {
1623 shootAgain = !mWeekLabels[mNumWeeks]->hasFocus(); 1626 shootAgain = !mWeekLabels[mNumWeeks]->hasFocus();
1624 mWeekLabels[mNumWeeks]->setFocus(); 1627 mWeekLabels[mNumWeeks]->setFocus();
1625 } 1628 }
1626 if ( shootAgain ) { 1629 if ( shootAgain ) {
1627 QTimer::singleShot( 0, this, SLOT ( setKeyBFocus() ) ); 1630 QTimer::singleShot( 0, this, SLOT ( setKeyBFocus() ) );
1628 } 1631 }
1629} 1632}
1630void KOMonthView::setKeyBFocus() 1633void KOMonthView::setKeyBFocus()
1631{ 1634{
1632 //qDebug("KOMonthView::setKeyBFocus() "); 1635 //qDebug("KOMonthView::setKeyBFocus() ");
1633 QTimer::singleShot( 0, this, SLOT ( setKeyBoardFocus() ) ); 1636 QTimer::singleShot( 0, this, SLOT ( setKeyBoardFocus() ) );
1634} 1637}
1635void KOMonthView::resizeEvent(QResizeEvent * e) 1638void KOMonthView::resizeEvent(QResizeEvent * e)
1636{ 1639{
1637 //qDebug("KOMonthView::resizeEvent %d %d -- %d %d ", e->size().width(), e->size().height(), e->oldSize().width(), e->oldSize().height()); 1640 //qDebug("KOMonthView::resizeEvent %d %d -- %d %d ", e->size().width(), e->size().height(), e->oldSize().width(), e->oldSize().height());
1638 if ( isVisible() ) { 1641 if ( isVisible() ) {
1639 //qDebug("KOMonthView::isVisible "); 1642 //qDebug("KOMonthView::isVisible ");
1640 slotComputeLayout(); 1643 slotComputeLayout();
1641 } else 1644 } else
1642 mComputeLayoutTimer->start( 100 ); 1645 mComputeLayoutTimer->start( 100 );
1643} 1646}
1644 1647
1645void KOMonthView::slotComputeLayout() 1648void KOMonthView::slotComputeLayout()
1646{ 1649{
1647 mComputeLayoutTimer->stop(); 1650 mComputeLayoutTimer->stop();
1648 //qDebug("KOMonthView::Post - resizeEvent %d %d ", width(), height() ); 1651 //qDebug("KOMonthView::Post - resizeEvent %d %d ", width(), height() );
1649 computeLayout(); 1652 computeLayout();
1650 clPending = true; 1653 clPending = true;
1651 setKeyBFocus(); 1654 setKeyBFocus();
1652} 1655}
1653void KOMonthView::computeLayoutWeek() 1656void KOMonthView::computeLayoutWeek()
1654{ 1657{
1655 static int lastWid = 0; 1658 static int lastWid = 0;
diff --git a/korganizer/koprefsdialog.cpp b/korganizer/koprefsdialog.cpp
index cb9c272..d9d7924 100644
--- a/korganizer/koprefsdialog.cpp
+++ b/korganizer/koprefsdialog.cpp
@@ -763,289 +763,292 @@ void KOPrefsDialog::setupViewsTab()
763 &(KOPrefs::instance()->mMonthShowShort),habo); 763 &(KOPrefs::instance()->mMonthShowShort),habo);
764 weeklyRecur = 764 weeklyRecur =
765 addWidBool(i18n("icons"), 765 addWidBool(i18n("icons"),
766 &(KOPrefs::instance()->mMonthShowIcons),habo); 766 &(KOPrefs::instance()->mMonthShowIcons),habo);
767 weeklyRecur = 767 weeklyRecur =
768 addWidBool(i18n("times"), 768 addWidBool(i18n("times"),
769 &(KOPrefs::instance()->mMonthShowTimes),habo); 769 &(KOPrefs::instance()->mMonthShowTimes),habo);
770 topLayout->addMultiCellWidget(habo,ii, ii,0,1); 770 topLayout->addMultiCellWidget(habo,ii, ii,0,1);
771 ii++; 771 ii++;
772#ifdef DESKTOP_VERSION 772#ifdef DESKTOP_VERSION
773 KPrefsDialogWidBool *enableMonthScroll = 773 KPrefsDialogWidBool *enableMonthScroll =
774 addWidBool(i18n("Enable scrollbars in month view cells"), 774 addWidBool(i18n("Enable scrollbars in month view cells"),
775 &(KOPrefs::instance()->mEnableMonthScroll),topFrame); 775 &(KOPrefs::instance()->mEnableMonthScroll),topFrame);
776 topLayout->addWidget(enableMonthScroll->checkBox(),ii++,0); 776 topLayout->addWidget(enableMonthScroll->checkBox(),ii++,0);
777#endif 777#endif
778 dummy = 778 dummy =
779 addWidBool(i18n("Week view mode uses bigger font"), 779 addWidBool(i18n("Week view mode uses bigger font"),
780 &(KOPrefs::instance()->mMonthViewUsesBigFont),topFrame); 780 &(KOPrefs::instance()->mMonthViewUsesBigFont),topFrame);
781 topLayout->addWidget(dummy->checkBox(),ii++,0); 781 topLayout->addWidget(dummy->checkBox(),ii++,0);
782 dummy = 782 dummy =
783 addWidBool(i18n("Show Sat/Sun together"), 783 addWidBool(i18n("Show Sat/Sun together"),
784 &(KOPrefs::instance()->mMonthViewSatSunTog),topFrame); 784 &(KOPrefs::instance()->mMonthViewSatSunTog),topFrame);
785 topLayout->addWidget(dummy->checkBox(),ii++,0); 785 topLayout->addWidget(dummy->checkBox(),ii++,0);
786 786
787 KPrefsDialogWidBool *coloredCategoriesInMonthView = 787 KPrefsDialogWidBool *coloredCategoriesInMonthView =
788 addWidBool(i18n("Month view uses category colors"), 788 addWidBool(i18n("Month view uses category colors"),
789 &(KOPrefs::instance()->mMonthViewUsesCategoryColor),topFrame); 789 &(KOPrefs::instance()->mMonthViewUsesCategoryColor),topFrame);
790 topLayout->addWidget(coloredCategoriesInMonthView->checkBox(),ii++,0); 790 topLayout->addWidget(coloredCategoriesInMonthView->checkBox(),ii++,0);
791 791
792 dummy = 792 dummy =
793 addWidBool(i18n("Categorie colors are applied to text"), 793 addWidBool(i18n("Categorie colors are applied to text"),
794 &(KOPrefs::instance()->mMonthViewUsesForegroundColor),topFrame); 794 &(KOPrefs::instance()->mMonthViewUsesForegroundColor),topFrame);
795 topLayout->addWidget(dummy->checkBox(),ii++,0); 795 topLayout->addWidget(dummy->checkBox(),ii++,0);
796 coloredCategoriesInMonthView = 796 coloredCategoriesInMonthView =
797 addWidBool(i18n("Month view uses day colors"), 797 addWidBool(i18n("Month view uses day colors"),
798 &(KOPrefs::instance()->mMonthViewUsesDayColors),topFrame); 798 &(KOPrefs::instance()->mMonthViewUsesDayColors),topFrame);
799 topLayout->addWidget(coloredCategoriesInMonthView->checkBox(),ii++,0); 799 topLayout->addWidget(coloredCategoriesInMonthView->checkBox(),ii++,0);
800 800
801 KPrefsDialogWidColor *holidayColor = 801 KPrefsDialogWidColor *holidayColor =
802 addWidColor(i18n("Day color odd months"), 802 addWidColor(i18n("Day color odd months"),
803 &(KOPrefs::instance()->mMonthViewOddColor),topFrame); 803 &(KOPrefs::instance()->mMonthViewOddColor),topFrame);
804 topLayout->addWidget(holidayColor->label(),ii,0); 804 topLayout->addWidget(holidayColor->label(),ii,0);
805 topLayout->addWidget(holidayColor->button(),ii++,1); 805 topLayout->addWidget(holidayColor->button(),ii++,1);
806 806
807 holidayColor = 807 holidayColor =
808 addWidColor(i18n("Day color even months"), 808 addWidColor(i18n("Day color even months"),
809 &(KOPrefs::instance()->mMonthViewEvenColor),topFrame); 809 &(KOPrefs::instance()->mMonthViewEvenColor),topFrame);
810 topLayout->addWidget(holidayColor->label(),ii,0); 810 topLayout->addWidget(holidayColor->label(),ii,0);
811 topLayout->addWidget(holidayColor->button(),ii++,1); 811 topLayout->addWidget(holidayColor->button(),ii++,1);
812 812
813 813
814 holidayColor = 814 holidayColor =
815 addWidColor(i18n("Color for Sundays + category \"Holiday\""), 815 addWidColor(i18n("Color for Sundays + category \"Holiday\""),
816 &(KOPrefs::instance()->mMonthViewHolidayColor),topFrame); 816 &(KOPrefs::instance()->mMonthViewHolidayColor),topFrame);
817 topLayout->addWidget(holidayColor->label(),ii,0); 817 topLayout->addWidget(holidayColor->label(),ii,0);
818 topLayout->addWidget(holidayColor->button(),ii++,1); 818 topLayout->addWidget(holidayColor->button(),ii++,1);
819 // *********************** What'sNext View 819 // *********************** What'sNext View
820 topFrame = addPage(i18n("What's Next View"),0,0); 820 topFrame = addPage(i18n("What's Next View"),0,0);
821 // DesktopIcon("viewmag",KIcon::SizeMedium)); 821 // DesktopIcon("viewmag",KIcon::SizeMedium));
822 822
823 topLayout = new QGridLayout(topFrame,4,1); 823 topLayout = new QGridLayout(topFrame,4,1);
824 topLayout->setSpacing(mSpacingHint); 824 topLayout->setSpacing(mSpacingHint);
825 topLayout->setMargin(mMarginHint); 825 topLayout->setMargin(mMarginHint);
826 ii = 0; 826 ii = 0;
827 827
828 828
829 QHBox* hdummy = new QHBox(topFrame); 829 QHBox* hdummy = new QHBox(topFrame);
830 new QLabel(i18n("Days in What's Next:"),hdummy); 830 new QLabel(i18n("Days in What's Next:"),hdummy);
831 mWhatsNextSpin = new QSpinBox(1,14,1,hdummy); 831 mWhatsNextSpin = new QSpinBox(1,14,1,hdummy);
832 832
833 topLayout->addWidget(hdummy,ii++,0); 833 topLayout->addWidget(hdummy,ii++,0);
834 834
835 QHBox *prioBox = new QHBox(topFrame); 835 QHBox *prioBox = new QHBox(topFrame);
836 // intervalBox->setSpacing(mSpacingHint); 836 // intervalBox->setSpacing(mSpacingHint);
837 topLayout->addWidget(prioBox,ii++,0); 837 topLayout->addWidget(prioBox,ii++,0);
838 838
839 QLabel *prioLabel = new QLabel(i18n("Number of max.displayed todo prios:"), prioBox); 839 QLabel *prioLabel = new QLabel(i18n("Number of max.displayed todo prios:"), prioBox);
840 mPrioSpin = new QSpinBox(0,5,1,prioBox); 840 mPrioSpin = new QSpinBox(0,5,1,prioBox);
841 if ( QApplication::desktop()->width() < 300 ) 841 if ( QApplication::desktop()->width() < 300 )
842 mPrioSpin->setFixedWidth( 40 ); 842 mPrioSpin->setFixedWidth( 40 );
843 843
844 KPrefsDialogWidBool *passwdk = 844 KPrefsDialogWidBool *passwdk =
845 845
846 addWidBool(i18n("Show events, that are done"), 846 addWidBool(i18n("Show events, that are done"),
847 &(KOPrefs::instance()->mWNViewShowsPast),topFrame); 847 &(KOPrefs::instance()->mWNViewShowsPast),topFrame);
848 topLayout->addWidget(passwdk->checkBox(), ii++,0); 848 topLayout->addWidget(passwdk->checkBox(), ii++,0);
849 passwdk = 849 passwdk =
850 addWidBool(i18n("Show parent To-Do's"), 850 addWidBool(i18n("Show parent To-Do's"),
851 &(KOPrefs::instance()->mWNViewShowsParents),topFrame); 851 &(KOPrefs::instance()->mWNViewShowsParents),topFrame);
852 topLayout->addWidget(passwdk->checkBox(), ii++,0); 852 topLayout->addWidget(passwdk->checkBox(), ii++,0);
853 853
854 passwdk = 854 passwdk =
855 addWidBool(i18n("Show location"), 855 addWidBool(i18n("Show location"),
856 &(KOPrefs::instance()->mWNViewShowLocation),topFrame); 856 &(KOPrefs::instance()->mWNViewShowLocation),topFrame);
857 topLayout->addWidget(passwdk->checkBox(), ii++,0); 857 topLayout->addWidget(passwdk->checkBox(), ii++,0);
858 858
859 passwdk = 859
860 addWidBool(i18n("Show Sync Events in WN+Agenda"),
861 &(KOPrefs::instance()->mShowSyncEvents),topFrame);
862 topLayout->addWidget(passwdk->checkBox(), ii++,0);
863 passwdk = 860 passwdk =
864 addWidBool(i18n("Use short date in WN+Event view"), 861 addWidBool(i18n("Use short date in WN+Event view"),
865 &(KOPrefs::instance()->mShortDateInViewer),topFrame); 862 &(KOPrefs::instance()->mShortDateInViewer),topFrame);
866 topLayout->addWidget(passwdk->checkBox(), ii++,0); 863 topLayout->addWidget(passwdk->checkBox(), ii++,0);
867 864
868 865
869 866
870 867
871 // *********************** Todo View 868 // *********************** Todo View
872 869
873 topFrame = addPage(i18n("Todo View"),0,0); 870 topFrame = addPage(i18n("Todo View"),0,0);
874 // DesktopIcon("viewmag",KIcon::SizeMedium)); 871 // DesktopIcon("viewmag",KIcon::SizeMedium));
875 872
876 topLayout = new QGridLayout(topFrame,4,1); 873 topLayout = new QGridLayout(topFrame,4,1);
877 topLayout->setSpacing(mSpacingHint); 874 topLayout->setSpacing(mSpacingHint);
878 topLayout->setMargin(mMarginHint); 875 topLayout->setMargin(mMarginHint);
879 ii = 0; 876 ii = 0;
880dummy = 877dummy =
881 addWidBool(i18n("Hide not running Todos in To-do view"), 878 addWidBool(i18n("Hide not running Todos in To-do view"),
882 &(KOPrefs::instance()->mHideNonStartedTodos),topFrame); 879 &(KOPrefs::instance()->mHideNonStartedTodos),topFrame);
883 topLayout->addWidget(dummy->checkBox(),ii++,0); 880 topLayout->addWidget(dummy->checkBox(),ii++,0);
884 881
885 882
886 KPrefsDialogWidBool *showCompletedTodo = 883 KPrefsDialogWidBool *showCompletedTodo =
887 addWidBool(i18n("To-do view shows completed Todos"), 884 addWidBool(i18n("To-do view shows completed Todos"),
888 &(KOPrefs::instance()->mShowCompletedTodo),topFrame); 885 &(KOPrefs::instance()->mShowCompletedTodo),topFrame);
889 topLayout->addWidget(showCompletedTodo->checkBox(),ii++,0); 886 topLayout->addWidget(showCompletedTodo->checkBox(),ii++,0);
890 dummy = 887 dummy =
891 addWidBool(i18n("To-do view shows complete as 'xx %'"), 888 addWidBool(i18n("To-do view shows complete as 'xx %'"),
892 &(KOPrefs::instance()->mTodoViewShowsPercentage),topFrame); 889 &(KOPrefs::instance()->mTodoViewShowsPercentage),topFrame);
893 topLayout->addWidget(dummy->checkBox(),ii++,0); 890 topLayout->addWidget(dummy->checkBox(),ii++,0);
894 891
895 dummy = 892 dummy =
896 addWidBool(i18n("Small To-do view uses smaller font"), 893 addWidBool(i18n("Small To-do view uses smaller font"),
897 &(KOPrefs::instance()->mTodoViewUsesSmallFont),topFrame); 894 &(KOPrefs::instance()->mTodoViewUsesSmallFont),topFrame);
898 topLayout->addWidget(dummy->checkBox(),ii++,0); 895 topLayout->addWidget(dummy->checkBox(),ii++,0);
899 896
900 897
901 898
902 dummy = 899 dummy =
903 addWidBool(i18n("Todo view uses category colors"), 900 addWidBool(i18n("Todo view uses category colors"),
904 &(KOPrefs::instance()->mTodoViewUsesCatColors),topFrame); 901 &(KOPrefs::instance()->mTodoViewUsesCatColors),topFrame);
905 topLayout->addWidget(dummy->checkBox(),ii++,0); 902 topLayout->addWidget(dummy->checkBox(),ii++,0);
906 903
907 904
908 QWidget* wid = new QWidget( topFrame ); 905 QWidget* wid = new QWidget( topFrame );
909 // Todo run today color 906 // Todo run today color
910 KPrefsDialogWidColor *todoRunColor = 907 KPrefsDialogWidColor *todoRunColor =
911 addWidColor(i18n("Color for running todos:"), 908 addWidColor(i18n("Color for running todos:"),
912 &(KOPrefs::instance()->mTodoRunColor),wid); 909 &(KOPrefs::instance()->mTodoRunColor),wid);
913 QHBoxLayout *widLayout = new QHBoxLayout(wid); 910 QHBoxLayout *widLayout = new QHBoxLayout(wid);
914 widLayout->addWidget( todoRunColor->label() ); 911 widLayout->addWidget( todoRunColor->label() );
915 widLayout->addWidget( todoRunColor->button() ); 912 widLayout->addWidget( todoRunColor->button() );
916 topLayout->addWidget(wid,ii++,0); 913 topLayout->addWidget(wid,ii++,0);
917 914
918 wid = new QWidget( topFrame ); 915 wid = new QWidget( topFrame );
919 // Todo due today color 916 // Todo due today color
920 KPrefsDialogWidColor *todoDueTodayColor = 917 KPrefsDialogWidColor *todoDueTodayColor =
921 addWidColor(i18n("Todo due today color:"), 918 addWidColor(i18n("Todo due today color:"),
922 &(KOPrefs::instance()->mTodoDueTodayColor),wid); 919 &(KOPrefs::instance()->mTodoDueTodayColor),wid);
923 widLayout = new QHBoxLayout(wid); 920 widLayout = new QHBoxLayout(wid);
924 widLayout->addWidget( todoDueTodayColor->label() ); 921 widLayout->addWidget( todoDueTodayColor->label() );
925 widLayout->addWidget( todoDueTodayColor->button() ); 922 widLayout->addWidget( todoDueTodayColor->button() );
926 topLayout->addWidget(wid,ii++,0); 923 topLayout->addWidget(wid,ii++,0);
927 //topLayout->addWidget(todoDueTodayColor->button(),ii++,1); 924 //topLayout->addWidget(todoDueTodayColor->button(),ii++,1);
928 925
929 // Todo overdue color 926 // Todo overdue color
930 wid = new QWidget( topFrame ); 927 wid = new QWidget( topFrame );
931 widLayout = new QHBoxLayout(wid); 928 widLayout = new QHBoxLayout(wid);
932 KPrefsDialogWidColor *todoOverdueColor = 929 KPrefsDialogWidColor *todoOverdueColor =
933 addWidColor(i18n("Todo overdue color:"), 930 addWidColor(i18n("Todo overdue color:"),
934 &(KOPrefs::instance()->mTodoOverdueColor),wid); 931 &(KOPrefs::instance()->mTodoOverdueColor),wid);
935 widLayout->addWidget(todoOverdueColor->label()); 932 widLayout->addWidget(todoOverdueColor->label());
936 widLayout->addWidget(todoOverdueColor->button()); 933 widLayout->addWidget(todoOverdueColor->button());
937 topLayout->addWidget(wid,ii++,0); 934 topLayout->addWidget(wid,ii++,0);
938 935
939 dummy = 936 dummy =
940 addWidBool(i18n("Colors are applied to text"), 937 addWidBool(i18n("Colors are applied to text"),
941 &(KOPrefs::instance()->mTodoViewUsesForegroundColor),topFrame); 938 &(KOPrefs::instance()->mTodoViewUsesForegroundColor),topFrame);
942 topLayout->addWidget(dummy->checkBox(),ii++,0); 939 topLayout->addWidget(dummy->checkBox(),ii++,0);
943 940
944 dummy = 941 dummy =
945 addWidBool(i18n("Allday Agenda view shows todos"), 942 addWidBool(i18n("Allday Agenda view shows todos"),
946 &(KOPrefs::instance()->mShowTodoInAgenda),topFrame); 943 &(KOPrefs::instance()->mShowTodoInAgenda),topFrame);
947 topLayout->addWidget(dummy->checkBox(),ii++,0); 944 topLayout->addWidget(dummy->checkBox(),ii++,0);
948 945
949 946
950 topFrame = addPage(i18n("View Options"),0,0); 947 topFrame = addPage(i18n("View Options"),0,0);
951 948
952 topLayout = new QGridLayout(topFrame,4,1); 949 topLayout = new QGridLayout(topFrame,4,1);
953 topLayout->setSpacing(mSpacingHint); 950 topLayout->setSpacing(mSpacingHint);
954 topLayout->setMargin(mMarginHint); 951 topLayout->setMargin(mMarginHint);
955 ii = 0; 952 ii = 0;
953
954 dummy =
955 addWidBool(i18n("Show Sync Events"),
956 &(KOPrefs::instance()->mShowSyncEvents),topFrame);
957 topLayout->addWidget(dummy->checkBox(), ii++,0);
958
956 lab = new QLabel( i18n("Show in todo/event viewer:"), topFrame); 959 lab = new QLabel( i18n("Show in todo/event viewer:"), topFrame);
957 topLayout->addWidget(lab ,ii++,0); 960 topLayout->addWidget(lab ,ii++,0);
958 961
959 dummy = addWidBool(i18n("Details"), 962 dummy = addWidBool(i18n("Details"),
960 &(KOPrefs::instance()->mEVshowDetails),topFrame); 963 &(KOPrefs::instance()->mEVshowDetails),topFrame);
961 topLayout->addWidget(dummy->checkBox(),ii++,0); 964 topLayout->addWidget(dummy->checkBox(),ii++,0);
962 dummy = addWidBool(i18n("Created time"), 965 dummy = addWidBool(i18n("Created time"),
963 &(KOPrefs::instance()->mEVshowCreated),topFrame); 966 &(KOPrefs::instance()->mEVshowCreated),topFrame);
964 topLayout->addWidget(dummy->checkBox(),ii++,0); 967 topLayout->addWidget(dummy->checkBox(),ii++,0);
965 dummy = addWidBool(i18n("Last modified time"), 968 dummy = addWidBool(i18n("Last modified time"),
966 &(KOPrefs::instance()->mEVshowChanged),topFrame); 969 &(KOPrefs::instance()->mEVshowChanged),topFrame);
967 topLayout->addWidget(dummy->checkBox(),ii++,0); 970 topLayout->addWidget(dummy->checkBox(),ii++,0);
968 971
969 972
970 lab = new QLabel( i18n("Show in What'sThis quick overview:"), topFrame); 973 lab = new QLabel( i18n("Show in What'sThis quick overview:"), topFrame);
971 topLayout->addWidget(lab ,ii++,0); 974 topLayout->addWidget(lab ,ii++,0);
972 975
973 dummy = addWidBool(i18n("Details"), 976 dummy = addWidBool(i18n("Details"),
974 &(KOPrefs::instance()->mWTshowDetails),topFrame); 977 &(KOPrefs::instance()->mWTshowDetails),topFrame);
975 topLayout->addWidget(dummy->checkBox(),ii++,0); 978 topLayout->addWidget(dummy->checkBox(),ii++,0);
976 dummy = addWidBool(i18n("Created time"), 979 dummy = addWidBool(i18n("Created time"),
977 &(KOPrefs::instance()->mWTshowCreated),topFrame); 980 &(KOPrefs::instance()->mWTshowCreated),topFrame);
978 topLayout->addWidget(dummy->checkBox(),ii++,0); 981 topLayout->addWidget(dummy->checkBox(),ii++,0);
979 dummy = addWidBool(i18n("Last modified time"), 982 dummy = addWidBool(i18n("Last modified time"),
980 &(KOPrefs::instance()->mWTshowChanged),topFrame); 983 &(KOPrefs::instance()->mWTshowChanged),topFrame);
981 topLayout->addWidget(dummy->checkBox(),ii++,0); 984 topLayout->addWidget(dummy->checkBox(),ii++,0);
982 985
983 986
984 topFrame = addPage(i18n("Alarm"),0,0); 987 topFrame = addPage(i18n("Alarm"),0,0);
985 // DesktopIcon("viewmag",KIcon::SizeMedium)); 988 // DesktopIcon("viewmag",KIcon::SizeMedium));
986 989
987 topLayout = new QGridLayout(topFrame,2,1); 990 topLayout = new QGridLayout(topFrame,2,1);
988 topLayout->setSpacing(mSpacingHint); 991 topLayout->setSpacing(mSpacingHint);
989 topLayout->setMargin(mMarginHint); 992 topLayout->setMargin(mMarginHint);
990 int iii = 0; 993 int iii = 0;
991 994
992 dummy = 995 dummy =
993 addWidBool(i18n("Use internal alarm notification"), 996 addWidBool(i18n("Use internal alarm notification"),
994 &(KOPrefs::instance()->mUseInternalAlarmNotification),topFrame); 997 &(KOPrefs::instance()->mUseInternalAlarmNotification),topFrame);
995 topLayout->addWidget(dummy->checkBox(),iii++,0); 998 topLayout->addWidget(dummy->checkBox(),iii++,0);
996 lab = new QLabel( i18n("Note: KO/Pi must be running to notify you about an alarm. Recommended for use on Zaurus: Disable this option and install KO/Pi alarm applet.\n"), topFrame); 999 lab = new QLabel( i18n("Note: KO/Pi must be running to notify you about an alarm. Recommended for use on Zaurus: Disable this option and install KO/Pi alarm applet.\n"), topFrame);
997 1000
998 topLayout->addWidget(lab ,iii++,0); 1001 topLayout->addWidget(lab ,iii++,0);
999#ifndef DESKTOP_VERSION 1002#ifndef DESKTOP_VERSION
1000 lab->setAlignment( AlignLeft|WordBreak|AlignTop); 1003 lab->setAlignment( AlignLeft|WordBreak|AlignTop);
1001#else 1004#else
1002 lab->setAlignment( AlignLeft|BreakAnywhere|WordBreak|AlignTop); 1005 lab->setAlignment( AlignLeft|BreakAnywhere|WordBreak|AlignTop);
1003 lab->setSizePolicy( QSizePolicy( QSizePolicy::Ignored , QSizePolicy::Ignored,true) ); 1006 lab->setSizePolicy( QSizePolicy( QSizePolicy::Ignored , QSizePolicy::Ignored,true) );
1004#endif 1007#endif
1005 1008
1006 QHBox* dummyBox = new QHBox(topFrame); 1009 QHBox* dummyBox = new QHBox(topFrame);
1007 new QLabel(i18n("Play beeps count:"),dummyBox); 1010 new QLabel(i18n("Play beeps count:"),dummyBox);
1008 mAlarmPlayBeeps = new QSpinBox(0,500,1,dummyBox); 1011 mAlarmPlayBeeps = new QSpinBox(0,500,1,dummyBox);
1009 topLayout->addWidget(dummyBox,iii++,0); 1012 topLayout->addWidget(dummyBox,iii++,0);
1010 1013
1011 dummyBox = new QHBox(topFrame); 1014 dummyBox = new QHBox(topFrame);
1012 new QLabel(i18n("Beeps interval in sec:"),dummyBox); 1015 new QLabel(i18n("Beeps interval in sec:"),dummyBox);
1013 mAlarmBeepInterval = new QSpinBox(1,600,1,dummyBox); 1016 mAlarmBeepInterval = new QSpinBox(1,600,1,dummyBox);
1014 topLayout->addWidget(dummyBox,iii++,0); 1017 topLayout->addWidget(dummyBox,iii++,0);
1015 1018
1016 dummyBox = new QHBox(topFrame); 1019 dummyBox = new QHBox(topFrame);
1017 new QLabel(i18n("Default suspend time in min:"),dummyBox); 1020 new QLabel(i18n("Default suspend time in min:"),dummyBox);
1018 mAlarmSuspendTime = new QSpinBox(1,600,1,dummyBox); 1021 mAlarmSuspendTime = new QSpinBox(1,600,1,dummyBox);
1019 topLayout->addWidget(dummyBox,iii++,0); 1022 topLayout->addWidget(dummyBox,iii++,0);
1020 1023
1021 dummyBox = new QHBox(topFrame); 1024 dummyBox = new QHBox(topFrame);
1022 new QLabel(i18n("Auto suspend count:"),dummyBox); 1025 new QLabel(i18n("Auto suspend count:"),dummyBox);
1023 mAlarmSuspendCount = new QSpinBox(0,60,1,dummyBox); 1026 mAlarmSuspendCount = new QSpinBox(0,60,1,dummyBox);
1024 topLayout->addWidget(dummyBox,iii++,0); 1027 topLayout->addWidget(dummyBox,iii++,0);
1025 1028
1026 1029
1027 1030
1028 1031
1029 1032
1030 1033
1031 1034
1032 QHBox* hbo = new QHBox ( topFrame ); 1035 QHBox* hbo = new QHBox ( topFrame );
1033 mDefaultAlarmFile = new QLineEdit(hbo); 1036 mDefaultAlarmFile = new QLineEdit(hbo);
1034 QPushButton * loadTemplate = new QPushButton(hbo); 1037 QPushButton * loadTemplate = new QPushButton(hbo);
1035 QPixmap icon; 1038 QPixmap icon;
1036 if ( QApplication::desktop()->width() < 321 ) 1039 if ( QApplication::desktop()->width() < 321 )
1037 icon = SmallIcon("fileimport16"); 1040 icon = SmallIcon("fileimport16");
1038 else 1041 else
1039 icon = SmallIcon("fileimport"); 1042 icon = SmallIcon("fileimport");
1040 loadTemplate->setIconSet (icon ) ; 1043 loadTemplate->setIconSet (icon ) ;
1041 connect( loadTemplate, SIGNAL( clicked() ), this , SLOT( selectSoundFile() ) ); 1044 connect( loadTemplate, SIGNAL( clicked() ), this , SLOT( selectSoundFile() ) );
1042 int size = loadTemplate->sizeHint().height(); 1045 int size = loadTemplate->sizeHint().height();
1043 loadTemplate->setFixedSize( size, size ); 1046 loadTemplate->setFixedSize( size, size );
1044 //lab = new QLabel( i18n("This setting is useless for 5500 user!"), topFrame); 1047 //lab = new QLabel( i18n("This setting is useless for 5500 user!"), topFrame);
1045 // topLayout->addWidget(lab ,iii++,0); 1048 // topLayout->addWidget(lab ,iii++,0);
1046 lab = new QLabel( i18n("Alarm *.wav file for newly created alarm:"), topFrame); 1049 lab = new QLabel( i18n("Alarm *.wav file for newly created alarm:"), topFrame);
1047 topLayout->addWidget(lab ,iii++,0); 1050 topLayout->addWidget(lab ,iii++,0);
1048 topLayout->addWidget(hbo,iii++,0); 1051 topLayout->addWidget(hbo,iii++,0);
1049 // lab = new QLabel( i18n("Note: This does not mean, that for every alarm this file is replayed. This file here is associated with a newly created alarm."), topFrame); 1052 // lab = new QLabel( i18n("Note: This does not mean, that for every alarm this file is replayed. This file here is associated with a newly created alarm."), topFrame);
1050 1053
1051// topLayout->addWidget(lab ,iii++,0); 1054// topLayout->addWidget(lab ,iii++,0);
diff --git a/korganizer/koviewmanager.cpp b/korganizer/koviewmanager.cpp
index 3aa9b6c..2e5a943 100644
--- a/korganizer/koviewmanager.cpp
+++ b/korganizer/koviewmanager.cpp
@@ -224,603 +224,612 @@ void KOViewManager::showNextView()
224 if (mCurrentView == mListView ) goto TODO; 224 if (mCurrentView == mListView ) goto TODO;
225 // if (mCurrentView == mTodoView ) goto NEXT; 225 // if (mCurrentView == mTodoView ) goto NEXT;
226 NEXT: 226 NEXT:
227 if ( KOPrefs::instance()->mShowIconNext ) { showWhatsNextView();goto ENTE ;} 227 if ( KOPrefs::instance()->mShowIconNext ) { showWhatsNextView();goto ENTE ;}
228 NEXT_X: 228 NEXT_X:
229 if ( KOPrefs::instance()->mShowIconNextDays ) { 229 if ( KOPrefs::instance()->mShowIconNextDays ) {
230 showNextXView(); 230 showNextXView();
231 goto ENTE ; 231 goto ENTE ;
232 } 232 }
233 JOURNAL: 233 JOURNAL:
234 if ( KOPrefs::instance()->mShowIconJournal ) { 234 if ( KOPrefs::instance()->mShowIconJournal ) {
235 resetDateSilent( baseCycleDate , 1 ); 235 resetDateSilent( baseCycleDate , 1 );
236 showJournalView() ;goto ENTE ;} 236 showJournalView() ;goto ENTE ;}
237 DAY_1: 237 DAY_1:
238 if ( KOPrefs::instance()->mShowIconDay1 ) { 238 if ( KOPrefs::instance()->mShowIconDay1 ) {
239 resetDateSilent( baseCycleDate , 2 ); 239 resetDateSilent( baseCycleDate , 2 );
240 showDayView() ;goto ENTE ;} 240 showDayView() ;goto ENTE ;}
241 DAY_5: 241 DAY_5:
242 if ( KOPrefs::instance()->mShowIconDay5 ) { 242 if ( KOPrefs::instance()->mShowIconDay5 ) {
243 resetDateSilent( baseCycleDate , 2 ); 243 resetDateSilent( baseCycleDate , 2 );
244 showWorkWeekView() ;goto ENTE ;} 244 showWorkWeekView() ;goto ENTE ;}
245 DAY_7: 245 DAY_7:
246 if ( KOPrefs::instance()->mShowIconDay7 ) { 246 if ( KOPrefs::instance()->mShowIconDay7 ) {
247 resetDateSilent( baseCycleDate , 2 ); 247 resetDateSilent( baseCycleDate , 2 );
248 showWeekView();goto ENTE ;} 248 showWeekView();goto ENTE ;}
249 DAY_6: 249 DAY_6:
250 if ( KOPrefs::instance()->mShowIconDay6 ) { 250 if ( KOPrefs::instance()->mShowIconDay6 ) {
251 resetDateSilent( baseCycleDate , 2 ); 251 resetDateSilent( baseCycleDate , 2 );
252 showMonthViewWeek();goto ENTE ;} 252 showMonthViewWeek();goto ENTE ;}
253 MONTH: 253 MONTH:
254 if ( KOPrefs::instance()->mShowIconMonth ) { 254 if ( KOPrefs::instance()->mShowIconMonth ) {
255 resetDateSilent( baseCycleDate , 2 ); 255 resetDateSilent( baseCycleDate , 2 );
256 showMonthView();goto ENTE ;} 256 showMonthView();goto ENTE ;}
257 LIST: 257 LIST:
258 if ( KOPrefs::instance()->mShowIconList ) { 258 if ( KOPrefs::instance()->mShowIconList ) {
259 resetDateSilent( baseCycleDate , 2 ); 259 resetDateSilent( baseCycleDate , 2 );
260 showListView() ;goto ENTE ;} 260 showListView() ;goto ENTE ;}
261 TODO: 261 TODO:
262 if ( KOPrefs::instance()->mShowIconTodoview ) { showTodoView() ;goto ENTE ;} 262 if ( KOPrefs::instance()->mShowIconTodoview ) { showTodoView() ;goto ENTE ;}
263 if ( KOPrefs::instance()->mShowIconNext ) { goto NEXT ;} 263 if ( KOPrefs::instance()->mShowIconNext ) { goto NEXT ;}
264 if ( KOPrefs::instance()->mShowIconNextDays ) { goto NEXT_X ;} 264 if ( KOPrefs::instance()->mShowIconNextDays ) { goto NEXT_X ;}
265 if ( KOPrefs::instance()->mShowIconJournal ) { goto JOURNAL;} 265 if ( KOPrefs::instance()->mShowIconJournal ) { goto JOURNAL;}
266 if ( KOPrefs::instance()->mShowIconDay1 ) { goto DAY_1 ;} 266 if ( KOPrefs::instance()->mShowIconDay1 ) { goto DAY_1 ;}
267 if ( KOPrefs::instance()->mShowIconDay5 ) { goto DAY_5 ;} 267 if ( KOPrefs::instance()->mShowIconDay5 ) { goto DAY_5 ;}
268 if ( KOPrefs::instance()->mShowIconDay7 ) { goto DAY_7 ;} 268 if ( KOPrefs::instance()->mShowIconDay7 ) { goto DAY_7 ;}
269 if ( KOPrefs::instance()->mShowIconDay6 ) { goto DAY_6 ;} 269 if ( KOPrefs::instance()->mShowIconDay6 ) { goto DAY_6 ;}
270 if ( KOPrefs::instance()->mShowIconMonth ) {goto MONTH ;} 270 if ( KOPrefs::instance()->mShowIconMonth ) {goto MONTH ;}
271 if ( KOPrefs::instance()->mShowIconList ) { goto LIST ;} 271 if ( KOPrefs::instance()->mShowIconList ) { goto LIST ;}
272 //if ( KOPrefs::instance()->mShowIconTodoview ) { showTodoView() ;goto ENTE ;} 272 //if ( KOPrefs::instance()->mShowIconTodoview ) { showTodoView() ;goto ENTE ;}
273 ENTE: 273 ENTE:
274 flagResetViewChangeDate = 0; 274 flagResetViewChangeDate = 0;
275 selecteddatescount = mMainView->dateNavigator()->selectedDates().count(); 275 selecteddatescount = mMainView->dateNavigator()->selectedDates().count();
276 selecteddate = mMainView->dateNavigator()->selectedDates().first(); 276 selecteddate = mMainView->dateNavigator()->selectedDates().first();
277 277
278} 278}
279void KOViewManager::resetDateSilent( QDate date , int days ) 279void KOViewManager::resetDateSilent( QDate date , int days )
280{ 280{
281 mMainView->dateNavigator()->blockSignals( true ); 281 mMainView->dateNavigator()->blockSignals( true );
282 mMainView->dateNavigator()->selectDates( date , days ); 282 mMainView->dateNavigator()->selectDates( date , days );
283 mMainView->dateNavigator()->blockSignals( false ); 283 mMainView->dateNavigator()->blockSignals( false );
284} 284}
285void KOViewManager::showView(KOrg::BaseView *view, bool fullScreen ) 285void KOViewManager::showView(KOrg::BaseView *view, bool fullScreen )
286{ 286{
287 if ( flagResetViewChangeDate < 10 ) 287 if ( flagResetViewChangeDate < 10 )
288 ++flagResetViewChangeDate; 288 ++flagResetViewChangeDate;
289 //mFlagShowNextxDays = false; 289 //mFlagShowNextxDays = false;
290 //if(view == mCurrentView) return; 290 //if(view == mCurrentView) return;
291 if ( view == 0 ) { 291 if ( view == 0 ) {
292 view = mCurrentView; 292 view = mCurrentView;
293 if ( view == 0 ) 293 if ( view == 0 )
294 return; 294 return;
295 } 295 }
296 bool callupdate = !(view == mCurrentView); 296 bool callupdate = !(view == mCurrentView);
297 bool full = fullScreen; 297 bool full = fullScreen;
298 if(view == mCurrentView && view != mWhatsNextView ) { 298 if(view == mCurrentView && view != mWhatsNextView ) {
299 if ( mCurrentAgendaView < 0 ) 299 if ( mCurrentAgendaView < 0 )
300 return; 300 return;
301 if ( view != mMonthView ) 301 if ( view != mMonthView )
302 full = mMainView->leftFrame()->isVisible(); 302 full = mMainView->leftFrame()->isVisible();
303 } else { 303 } else {
304 if ( view == mMonthView && mMonthView) 304 if ( view == mMonthView && mMonthView)
305 ;//mMonthView->skipResize = true ; 305 ;//mMonthView->skipResize = true ;
306 mCurrentView = view; 306 mCurrentView = view;
307 // bool full = fullScreen; 307 // bool full = fullScreen;
308 bool isFull = !mMainView->leftFrame()->isVisible(); 308 bool isFull = !mMainView->leftFrame()->isVisible();
309 if ( isFull && KOPrefs::instance()->mViewChangeHoldFullscreen ) 309 if ( isFull && KOPrefs::instance()->mViewChangeHoldFullscreen )
310 full = true; 310 full = true;
311 if ( !isFull && KOPrefs::instance()->mViewChangeHoldNonFullscreen ) 311 if ( !isFull && KOPrefs::instance()->mViewChangeHoldNonFullscreen )
312 full = false; 312 full = false;
313 } 313 }
314 if ( mAgendaView ) mAgendaView->deleteSelectedDateTime(); 314 if ( mAgendaView ) mAgendaView->deleteSelectedDateTime();
315 //raiseCurrentView( full ); 315 //raiseCurrentView( full );
316 mMainView->processIncidenceSelection( 0 ); 316 mMainView->processIncidenceSelection( 0 );
317 //mMainView->updateView(); 317 //mMainView->updateView();
318 raiseCurrentView( full, callupdate ); 318 raiseCurrentView( full, callupdate );
319 mMainView->adaptNavigationUnits(); 319 mMainView->adaptNavigationUnits();
320 mMainView->updateUnmanagedViews();
320} 321}
321 322
322void KOViewManager::raiseCurrentView( bool fullScreen, bool callUpdateView ) 323void KOViewManager::raiseCurrentView( bool fullScreen, bool callUpdateView )
323{ 324{
324 mCurrentAgendaView = 0; 325 mCurrentAgendaView = 0;
325 if ( fullScreen ) { 326 if ( fullScreen ) {
326 mMainView->leftFrame()->hide(); 327 mMainView->leftFrame()->hide();
327 } else { 328 } else {
328 mMainView->leftFrame()->show(); 329 mMainView->leftFrame()->show();
329 } 330 }
330 //if ( mCurrentView == mMonthView ) qApp->processEvents(); 331 //if ( mCurrentView == mMonthView ) qApp->processEvents();
331 emit signalFullScreen( !fullScreen ); 332 emit signalFullScreen( !fullScreen );
332 if ( callUpdateView ) 333 if ( callUpdateView )
333 mMainView->updateView(); 334 mMainView->updateView();
334 335
335 if ( globalFlagBlockAgenda == 5 ) { 336 if ( globalFlagBlockAgenda == 5 ) {
336 globalFlagBlockAgenda = 4; 337 globalFlagBlockAgenda = 4;
337 globalFlagBlockAgendaItemPaint = 1; 338 globalFlagBlockAgendaItemPaint = 1;
338 } 339 }
339 mMainView->viewStack()->raiseWidget(mCurrentView); 340 mMainView->viewStack()->raiseWidget(mCurrentView);
340 if ( globalFlagBlockAgenda == 4 ) { 341 if ( globalFlagBlockAgenda == 4 ) {
341 if ( mCurrentView == mAgendaView ) { 342 if ( mCurrentView == mAgendaView ) {
342 //globalFlagBlockAgenda =1 ; 343 //globalFlagBlockAgenda =1 ;
343 if ( KOPrefs::instance()->mSetTimeToDayStartAt ) 344 if ( KOPrefs::instance()->mSetTimeToDayStartAt )
344 mAgendaView->setStartHour( KOPrefs::instance()->mDayBegins ); 345 mAgendaView->setStartHour( KOPrefs::instance()->mDayBegins );
345 else if ( KOPrefs::instance()->mCenterOnCurrentTime ) 346 else if ( KOPrefs::instance()->mCenterOnCurrentTime )
346 mAgendaView->setStartHour( QTime::currentTime ().hour() ); 347 mAgendaView->setStartHour( QTime::currentTime ().hour() );
347 qApp->processEvents(); 348 qApp->processEvents();
348 //qDebug("qApp->processEvents() "); 349 //qDebug("qApp->processEvents() ");
349 globalFlagBlockAgenda = 0; 350 globalFlagBlockAgenda = 0;
350 mAgendaView->repaintAgenda(); 351 mAgendaView->repaintAgenda();
351 352
352 } 353 }
353 globalFlagBlockAgenda = 0; 354 globalFlagBlockAgenda = 0;
354 } 355 }
355 emit signalAgendaView( mCurrentView == mAgendaView ); 356 emit signalAgendaView( mCurrentView == mAgendaView );
356 //qDebug("raiseCurrentView ende "); 357 //qDebug("raiseCurrentView ende ");
357 358
358} 359}
359 360
360void KOViewManager::updateView() 361void KOViewManager::updateView()
361{ 362{
362 // qDebug("KOViewManager::updateView() "); 363 // qDebug("KOViewManager::updateView() ");
363 // if we are updating mTodoView, we get endless recursion 364 // if we are updating mTodoView, we get endless recursion
364 if ( mTodoView == mCurrentView ) 365 if ( mTodoView == mCurrentView )
365 return; 366 return;
366 if ( mCurrentView ) mCurrentView->updateView(); 367 if ( mCurrentView ) mCurrentView->updateView();
367 368
368} 369}
369 370
370void KOViewManager::updateView(const QDate &start, const QDate &end) 371void KOViewManager::updateView(const QDate &start, const QDate &end)
371{ 372{
372 // kdDebug() << "KOViewManager::updateView()" << endl; 373 // kdDebug() << "KOViewManager::updateView()" << endl;
373 374
374 if (mCurrentView) mCurrentView->showDates(start, end); 375 if (mCurrentView) mCurrentView->showDates(start, end);
375 376
376 if (mTodoView && mTodoView == mCurrentView ) mTodoView->updateView(); 377 if (mTodoView && mTodoView == mCurrentView ) mTodoView->updateView();
377} 378}
378 379
379 380
380void KOViewManager::updateWNview() 381void KOViewManager::updateWNview()
381{ 382{
382 if ( mCurrentView == mWhatsNextView && mWhatsNextView ) 383 if ( mCurrentView == mWhatsNextView && mWhatsNextView )
383 mWhatsNextView->updateView(); 384 mWhatsNextView->updateView();
384 if ( mCurrentView == mMonthView && mMonthView ) 385 if ( mCurrentView == mMonthView && mMonthView )
385 mMonthView->updateView(); 386 mMonthView->updateView();
386 387
387} 388}
388void KOViewManager::showWhatsNextView() 389void KOViewManager::showWhatsNextView()
389{ 390{
390 if (!mWhatsNextView) { 391 if (!mWhatsNextView) {
391 mWhatsNextView = new KOWhatsNextView(mMainView->calendar(),mMainView->viewStack(), 392 mWhatsNextView = new KOWhatsNextView(mMainView->calendar(),mMainView->viewStack(),
392 "KOViewManager::WhatsNextView"); 393 "KOViewManager::WhatsNextView");
393 mWhatsNextView->setEventViewer( mMainView->getEventViewerDialog()); 394 mWhatsNextView->setEventViewer( mMainView->getEventViewerDialog());
394 connect(mMainView, SIGNAL(configChanged()), mWhatsNextView, SLOT(updateConfig())); 395 connect(mMainView, SIGNAL(configChanged()), mWhatsNextView, SLOT(updateConfig()));
395 addView(mWhatsNextView); 396 addView(mWhatsNextView);
396 connect(this, SIGNAL( printWNV() ), 397 connect(this, SIGNAL( printWNV() ),
397 mWhatsNextView, SLOT( printMe() ) ); 398 mWhatsNextView, SLOT( printMe() ) );
398 } 399 }
399 globalFlagBlockAgenda = 1; 400 globalFlagBlockAgenda = 1;
401 KOPrefs::instance()->mCurrentDisplayedView = VIEW_WN_VIEW;
400 showView(mWhatsNextView, true ); 402 showView(mWhatsNextView, true );
401 //mWhatsNextView->updateView(); 403 //mWhatsNextView->updateView();
402 KOPrefs::instance()->mCurrentDisplayedView = VIEW_WN_VIEW; 404 KOPrefs::instance()->mCurrentDisplayedView = VIEW_WN_VIEW;
403} 405}
404 406
405void KOViewManager::slotprintWNV() 407void KOViewManager::slotprintWNV()
406{ 408{
407 if (!mWhatsNextView) 409 if (!mWhatsNextView)
408 showWhatsNextView(); 410 showWhatsNextView();
409 emit printWNV(); 411 emit printWNV();
410 412
411} 413}
412void KOViewManager::showListView() 414void KOViewManager::showListView()
413{ 415{
414 if (!mListView) { 416 if (!mListView) {
415 mListView = new KOListView(mMainView->calendar(), mMainView->viewStack(), "KOViewManager::ListView"); 417 mListView = new KOListView(mMainView->calendar(), mMainView->viewStack(), "KOViewManager::ListView");
416 addView(mListView); 418 addView(mListView);
417 419
418 connect(mListView, SIGNAL(showIncidenceSignal(Incidence *)), 420 connect(mListView, SIGNAL(showIncidenceSignal(Incidence *)),
419 mMainView, SLOT(showIncidence(Incidence *))); 421 mMainView, SLOT(showIncidence(Incidence *)));
420 connect(mListView, SIGNAL(editIncidenceSignal(Incidence *)), 422 connect(mListView, SIGNAL(editIncidenceSignal(Incidence *)),
421 mMainView, SLOT(editIncidence(Incidence *))); 423 mMainView, SLOT(editIncidence(Incidence *)));
422 connect(mListView, SIGNAL(deleteIncidenceSignal(Incidence *)), 424 connect(mListView, SIGNAL(deleteIncidenceSignal(Incidence *)),
423 mMainView, SLOT(deleteIncidence(Incidence *))); 425 mMainView, SLOT(deleteIncidence(Incidence *)));
424 connect( mListView, SIGNAL( incidenceSelected( Incidence * ) ), 426 connect( mListView, SIGNAL( incidenceSelected( Incidence * ) ),
425 mMainView, SLOT( processMainViewSelection( Incidence * ) ) ); 427 mMainView, SLOT( processMainViewSelection( Incidence * ) ) );
426 connect( mListView, SIGNAL( signalNewEvent() ), 428 connect( mListView, SIGNAL( signalNewEvent() ),
427 mMainView, SLOT( newEvent() ) ); 429 mMainView, SLOT( newEvent() ) );
428 connect(mMainView, SIGNAL(configChanged()), mListView, SLOT(updateConfig())); 430 connect(mMainView, SIGNAL(configChanged()), mListView, SLOT(updateConfig()));
429 connect( mListView, SIGNAL( cloneIncidenceSignal( Incidence * ) ), 431 connect( mListView, SIGNAL( cloneIncidenceSignal( Incidence * ) ),
430 mMainView, SLOT ( cloneIncidence( Incidence * ) ) ); 432 mMainView, SLOT ( cloneIncidence( Incidence * ) ) );
431 connect( mListView, SIGNAL( cancelIncidenceSignal( Incidence * ) ), 433 connect( mListView, SIGNAL( cancelIncidenceSignal( Incidence * ) ),
432 mMainView, SLOT ( cancelIncidence( Incidence * ) ) ); 434 mMainView, SLOT ( cancelIncidence( Incidence * ) ) );
433 connect( mListView, SIGNAL( moveIncidenceSignal( Incidence * ) ), 435 connect( mListView, SIGNAL( moveIncidenceSignal( Incidence * ) ),
434 mMainView, SLOT ( moveIncidence( Incidence * ) ) ); 436 mMainView, SLOT ( moveIncidence( Incidence * ) ) );
435 connect( mListView, SIGNAL( beamIncidenceSignal( Incidence * ) ), 437 connect( mListView, SIGNAL( beamIncidenceSignal( Incidence * ) ),
436 mMainView, SLOT ( beamIncidence( Incidence * ) ) ); 438 mMainView, SLOT ( beamIncidence( Incidence * ) ) );
437 } 439 }
438 // bool temp = mFlagShowNextxDays; 440 // bool temp = mFlagShowNextxDays;
439 //globalFlagBlockPainting = true; 441 //globalFlagBlockPainting = true;
440 globalFlagBlockAgenda = 1; 442 globalFlagBlockAgenda = 1;
441 if ( KOPrefs::instance()->mListViewMonthTimespan ) { 443 if ( KOPrefs::instance()->mListViewMonthTimespan ) {
442 mMainView->setBlockShowDates( true ); 444 mMainView->setBlockShowDates( true );
443 mMainView->dateNavigator()->selectMonth(); 445 mMainView->dateNavigator()->selectMonth();
444 mMainView->setBlockShowDates( false ); 446 mMainView->setBlockShowDates( false );
445 } 447 }
448 KOPrefs::instance()->mCurrentDisplayedView = VIEW_L_VIEW;
446 showView(mListView, KOPrefs::instance()->mFullViewTodo); 449 showView(mListView, KOPrefs::instance()->mFullViewTodo);
447 //mFlagShowNextxDays = temp; 450 //mFlagShowNextxDays = temp;
448 KOPrefs::instance()->mCurrentDisplayedView = VIEW_L_VIEW; 451 KOPrefs::instance()->mCurrentDisplayedView = VIEW_L_VIEW;
449} 452}
450 453
451void KOViewManager::showAgendaView( bool fullScreen ) 454void KOViewManager::showAgendaView( bool fullScreen )
452{ 455{
453 456
454 mMainView->dialogManager()->hideSearchDialog(); 457 mMainView->dialogManager()->hideSearchDialog();
455 // qDebug("KOViewManager::showAgendaView "); 458 // qDebug("KOViewManager::showAgendaView ");
456 bool full; 459 bool full;
457 full = fullScreen; 460 full = fullScreen;
458 if (!mAgendaView) { 461 if (!mAgendaView) {
459 full = false; 462 full = false;
460 mAgendaView = new KOAgendaView(mMainView->calendar(), mMainView->viewStack(), "KOViewManager::AgendaView"); 463 mAgendaView = new KOAgendaView(mMainView->calendar(), mMainView->viewStack(), "KOViewManager::AgendaView");
461 addView(mAgendaView); 464 addView(mAgendaView);
462#ifndef DESKTOP_VERSION 465#ifndef DESKTOP_VERSION
463 QPEApplication::setStylusOperation( mAgendaView, QPEApplication::RightOnHold ); 466 QPEApplication::setStylusOperation( mAgendaView, QPEApplication::RightOnHold );
464#endif 467#endif
465 connect( mAgendaView, SIGNAL( incidenceChanged(Incidence *, int )), 468 connect( mAgendaView, SIGNAL( incidenceChanged(Incidence *, int )),
466 mMainView, SLOT( changeIncidenceDisplay( Incidence *, int ) )); 469 mMainView, SLOT( changeIncidenceDisplay( Incidence *, int ) ));
467 470
468 // SIGNALS/SLOTS FOR DAY/WEEK VIEW 471 // SIGNALS/SLOTS FOR DAY/WEEK VIEW
469 472
470 connect(mAgendaView,SIGNAL(showDateView( int, QDate )),SLOT(showDateView( int, QDate ))); 473 connect(mAgendaView,SIGNAL(showDateView( int, QDate )),SLOT(showDateView( int, QDate )));
471 474
472 connect(mAgendaView,SIGNAL(newTodoSignal(QDateTime,bool)), 475 connect(mAgendaView,SIGNAL(newTodoSignal(QDateTime,bool)),
473 mMainView, SLOT(newTodoDateTime(QDateTime,bool))); 476 mMainView, SLOT(newTodoDateTime(QDateTime,bool)));
474 connect(mAgendaView,SIGNAL(newEventSignal(QDateTime)), 477 connect(mAgendaView,SIGNAL(newEventSignal(QDateTime)),
475 mMainView, SLOT(newEvent(QDateTime))); 478 mMainView, SLOT(newEvent(QDateTime)));
476 connect(mAgendaView,SIGNAL(newEventSignal(QDateTime,QDateTime)), 479 connect(mAgendaView,SIGNAL(newEventSignal(QDateTime,QDateTime)),
477 mMainView, SLOT(newEvent(QDateTime,QDateTime))); 480 mMainView, SLOT(newEvent(QDateTime,QDateTime)));
478 connect(mAgendaView,SIGNAL(newEventSignal(QDate)), 481 connect(mAgendaView,SIGNAL(newEventSignal(QDate)),
479 mMainView, SLOT(newEvent(QDate))); 482 mMainView, SLOT(newEvent(QDate)));
480 483
481 connect(mAgendaView, SIGNAL(editIncidenceSignal(Incidence *)), 484 connect(mAgendaView, SIGNAL(editIncidenceSignal(Incidence *)),
482 mMainView, SLOT(editIncidence(Incidence *))); 485 mMainView, SLOT(editIncidence(Incidence *)));
483 connect(mAgendaView, SIGNAL(showIncidenceSignal(Incidence *)), 486 connect(mAgendaView, SIGNAL(showIncidenceSignal(Incidence *)),
484 mMainView, SLOT(showIncidence(Incidence *))); 487 mMainView, SLOT(showIncidence(Incidence *)));
485 connect(mAgendaView, SIGNAL(deleteIncidenceSignal(Incidence *)), 488 connect(mAgendaView, SIGNAL(deleteIncidenceSignal(Incidence *)),
486 mMainView, SLOT(deleteIncidence(Incidence *))); 489 mMainView, SLOT(deleteIncidence(Incidence *)));
487 490
488 connect( mAgendaView, SIGNAL( incidenceSelected( Incidence * ) ), 491 connect( mAgendaView, SIGNAL( incidenceSelected( Incidence * ) ),
489 mMainView, SLOT( processMainViewSelection( Incidence * ) ) ); 492 mMainView, SLOT( processMainViewSelection( Incidence * ) ) );
490 493
491 connect(mAgendaView, SIGNAL( toggleExpand() ), 494 connect(mAgendaView, SIGNAL( toggleExpand() ),
492 mMainView, SLOT( toggleExpand() ) ); 495 mMainView, SLOT( toggleExpand() ) );
493 496
494 connect( mAgendaView, SIGNAL( cloneIncidenceSignal(Incidence *) ), 497 connect( mAgendaView, SIGNAL( cloneIncidenceSignal(Incidence *) ),
495 mMainView, SLOT(cloneIncidence(Incidence *) ) ) ; 498 mMainView, SLOT(cloneIncidence(Incidence *) ) ) ;
496 connect( mAgendaView, SIGNAL( cancelIncidenceSignal(Incidence *) ), 499 connect( mAgendaView, SIGNAL( cancelIncidenceSignal(Incidence *) ),
497 mMainView, SLOT(cancelIncidence(Incidence *) ) ) ; 500 mMainView, SLOT(cancelIncidence(Incidence *) ) ) ;
498 connect(mMainView, SIGNAL(configChanged()), mAgendaView, SLOT(updateConfig())); 501 connect(mMainView, SIGNAL(configChanged()), mAgendaView, SLOT(updateConfig()));
499 connect( mMainView, SIGNAL( todoModified( Todo *, int )), mAgendaView, 502 connect( mMainView, SIGNAL( todoModified( Todo *, int )), mAgendaView,
500 SLOT( updateTodo( Todo *, int ) ) ); 503 SLOT( updateTodo( Todo *, int ) ) );
501 connect( mAgendaView,SIGNAL( todoMoved( Todo *, int )), 504 connect( mAgendaView,SIGNAL( todoMoved( Todo *, int )),
502 mMainView, SIGNAL( todoModified( Todo *, int ))); 505 mMainView, SIGNAL( todoModified( Todo *, int )));
503 connect( mAgendaView, SIGNAL( moveIncidenceSignal( Incidence * ) ), 506 connect( mAgendaView, SIGNAL( moveIncidenceSignal( Incidence * ) ),
504 mMainView, SLOT ( moveIncidence( Incidence * ) ) ); 507 mMainView, SLOT ( moveIncidence( Incidence * ) ) );
505 connect( mAgendaView, SIGNAL( beamIncidenceSignal( Incidence * ) ), 508 connect( mAgendaView, SIGNAL( beamIncidenceSignal( Incidence * ) ),
506 mMainView, SLOT ( beamIncidence( Incidence * ) ) ); 509 mMainView, SLOT ( beamIncidence( Incidence * ) ) );
507 connect( mAgendaView, SIGNAL( selectWeekNum( int ) ), 510 connect( mAgendaView, SIGNAL( selectWeekNum( int ) ),
508 mMainView->dateNavigator(), SLOT ( selectWeek( int ) ) ); 511 mMainView->dateNavigator(), SLOT ( selectWeek( int ) ) );
509 mAgendaView->readSettings(); 512 mAgendaView->readSettings();
510 mAgendaView->updateConfig(); 513 mAgendaView->updateConfig();
511 } 514 }
512 515
516 KOPrefs::instance()->mCurrentDisplayedView = VIEW_A_VIEW;
513 showView( mAgendaView, full); 517 showView( mAgendaView, full);
514 KOPrefs::instance()->mCurrentDisplayedView = VIEW_A_VIEW; 518 KOPrefs::instance()->mCurrentDisplayedView = VIEW_A_VIEW;
515} 519}
516 520
517void KOViewManager::showDayView() 521void KOViewManager::showDayView()
518{ 522{
519 mCurrentAgendaView = mMainView->dateNavigator()->selectedDates().count(); 523 mCurrentAgendaView = mMainView->dateNavigator()->selectedDates().count();
520 mFlagShowNextxDays = false; 524 mFlagShowNextxDays = false;
521 globalFlagBlockLabel = 1; 525 globalFlagBlockLabel = 1;
522 globalFlagBlockAgenda = 1; 526 globalFlagBlockAgenda = 1;
523 if ( mCurrentAgendaView != 1 ) 527 if ( mCurrentAgendaView != 1 )
524 mCurrentAgendaView = -1; 528 mCurrentAgendaView = -1;
525 showAgendaView(); 529 showAgendaView();
526 qApp->processEvents(); 530 qApp->processEvents();
527 globalFlagBlockAgenda = 2; 531 globalFlagBlockAgenda = 2;
528 globalFlagBlockLabel = 0; 532 globalFlagBlockLabel = 0;
529 mMainView->dateNavigator()->selectDates( 1 ); 533 mMainView->dateNavigator()->selectDates( 1 );
530 mCurrentAgendaView = 1 ; 534 mCurrentAgendaView = 1 ;
531 535
532} 536}
533 537
534void KOViewManager::showWorkWeekView() 538void KOViewManager::showWorkWeekView()
535{ 539{
536 mCurrentAgendaView = mMainView->dateNavigator()->selectedDates().count(); 540 mCurrentAgendaView = mMainView->dateNavigator()->selectedDates().count();
537 mFlagShowNextxDays = false; 541 mFlagShowNextxDays = false;
538 globalFlagBlockAgenda = 1; 542 globalFlagBlockAgenda = 1;
539 globalFlagBlockLabel = 1; 543 globalFlagBlockLabel = 1;
540 if ( mCurrentAgendaView != 5 ) 544 if ( mCurrentAgendaView != 5 )
541 mCurrentAgendaView = -1; 545 mCurrentAgendaView = -1;
542 showAgendaView(); 546 showAgendaView();
543 qApp->processEvents(); 547 qApp->processEvents();
544 globalFlagBlockAgenda = 2; 548 globalFlagBlockAgenda = 2;
545 globalFlagBlockLabel = 0; 549 globalFlagBlockLabel = 0;
546 mMainView->dateNavigator()->selectWorkWeek(); 550 mMainView->dateNavigator()->selectWorkWeek();
547 mCurrentAgendaView = 5 ; 551 mCurrentAgendaView = 5 ;
548 552
549} 553}
550 554
551void KOViewManager::showWeekView() 555void KOViewManager::showWeekView()
552{ 556{
553 557
554 mCurrentAgendaView = mMainView->dateNavigator()->selectedDates().count(); 558 mCurrentAgendaView = mMainView->dateNavigator()->selectedDates().count();
555 mFlagShowNextxDays = false; 559 mFlagShowNextxDays = false;
556 globalFlagBlockAgenda = 1; 560 globalFlagBlockAgenda = 1;
557 globalFlagBlockLabel = 1; 561 globalFlagBlockLabel = 1;
558 if ( mCurrentAgendaView != 7 ) 562 if ( mCurrentAgendaView != 7 )
559 mCurrentAgendaView = -1; 563 mCurrentAgendaView = -1;
560 showAgendaView(); 564 showAgendaView();
561 qApp->processEvents(); 565 qApp->processEvents();
562 globalFlagBlockAgenda = 2; 566 globalFlagBlockAgenda = 2;
563 globalFlagBlockLabel = 0; 567 globalFlagBlockLabel = 0;
564 mMainView->dateNavigator()->selectWeek(); 568 mMainView->dateNavigator()->selectWeek();
565 mCurrentAgendaView = 7 ; 569 mCurrentAgendaView = 7 ;
566} 570}
567 571
568void KOViewManager::showNextXView() 572void KOViewManager::showNextXView()
569{ 573{
570 574
575 KOPrefs::instance()->mCurrentDisplayedView = VIEW_NX_VIEW;
571 globalFlagBlockAgenda = 1; 576 globalFlagBlockAgenda = 1;
572 if ( mCurrentAgendaView != 3 ) 577 if ( mCurrentAgendaView != 3 )
573 mCurrentAgendaView = -1; 578 mCurrentAgendaView = -1;
574 showAgendaView(KOPrefs::instance()->mFullViewMonth); 579 showAgendaView(KOPrefs::instance()->mFullViewMonth);
575 globalFlagBlockAgenda = 2; 580 globalFlagBlockAgenda = 2;
576 mMainView->dateNavigator()->selectDates( QDate::currentDate(), 581 mMainView->dateNavigator()->selectDates( QDate::currentDate(),
577 KOPrefs::instance()->mNextXDays ); 582 KOPrefs::instance()->mNextXDays );
578 mFlagShowNextxDays = true; 583 mFlagShowNextxDays = true;
579 mCurrentAgendaView = 3 ; 584 mCurrentAgendaView = 3 ;
580 KOPrefs::instance()->mCurrentDisplayedView = VIEW_NX_VIEW; 585 KOPrefs::instance()->mCurrentDisplayedView = VIEW_NX_VIEW;
581} 586}
582bool KOViewManager::showsNextDays() 587bool KOViewManager::showsNextDays()
583{ 588{
584 return mFlagShowNextxDays; 589 return mFlagShowNextxDays;
585} 590}
586void KOViewManager::createMonthView() 591void KOViewManager::createMonthView()
587{ 592{
588if (!mMonthView) { 593if (!mMonthView) {
589 mMonthView = new KOMonthView(mMainView->calendar(), mMainView->viewStack(), "KOViewManager::MonthView"); 594 mMonthView = new KOMonthView(mMainView->calendar(), mMainView->viewStack(), "KOViewManager::MonthView");
590 595
591 addView(mMonthView); 596 addView(mMonthView);
592 // mMonthView->show(); 597 // mMonthView->show();
593 // SIGNALS/SLOTS FOR MONTH VIEW 598 // SIGNALS/SLOTS FOR MONTH VIEW
594 599
595 connect(mMonthView,SIGNAL(showJournalSignal( int, QDate )),SLOT(showDateView( int, QDate ))); 600 connect(mMonthView,SIGNAL(showJournalSignal( int, QDate )),SLOT(showDateView( int, QDate )));
596 601
597 connect(mMonthView, SIGNAL(newTodoSignal(QDateTime,bool)), 602 connect(mMonthView, SIGNAL(newTodoSignal(QDateTime,bool)),
598 mMainView, SLOT(newTodoDateTime(QDateTime, bool))); 603 mMainView, SLOT(newTodoDateTime(QDateTime, bool)));
599 604
600 605
601 connect(mMonthView, SIGNAL(newEventSignal(QDateTime)), 606 connect(mMonthView, SIGNAL(newEventSignal(QDateTime)),
602 mMainView, SLOT(newEvent(QDateTime))); 607 mMainView, SLOT(newEvent(QDateTime)));
603 608
604 connect(mMonthView, SIGNAL(showIncidenceSignal(Incidence *)), 609 connect(mMonthView, SIGNAL(showIncidenceSignal(Incidence *)),
605 mMainView, SLOT(showIncidence(Incidence *))); 610 mMainView, SLOT(showIncidence(Incidence *)));
606 connect(mMonthView, SIGNAL(editIncidenceSignal(Incidence *)), 611 connect(mMonthView, SIGNAL(editIncidenceSignal(Incidence *)),
607 mMainView, SLOT(editIncidence(Incidence *))); 612 mMainView, SLOT(editIncidence(Incidence *)));
608 connect(mMonthView, SIGNAL(deleteIncidenceSignal(Incidence *)), 613 connect(mMonthView, SIGNAL(deleteIncidenceSignal(Incidence *)),
609 mMainView, SLOT(deleteIncidence(Incidence *))); 614 mMainView, SLOT(deleteIncidence(Incidence *)));
610 615
611 connect( mMonthView, SIGNAL( incidenceSelected( Incidence * ) ), 616 connect( mMonthView, SIGNAL( incidenceSelected( Incidence * ) ),
612 mMainView, SLOT( processMainViewSelection( Incidence * ) ) ); 617 mMainView, SLOT( processMainViewSelection( Incidence * ) ) );
613 connect( mMonthView, SIGNAL( cloneIncidenceSignal( Incidence * ) ), 618 connect( mMonthView, SIGNAL( cloneIncidenceSignal( Incidence * ) ),
614 mMainView, SLOT ( cloneIncidence( Incidence * ) ) ); 619 mMainView, SLOT ( cloneIncidence( Incidence * ) ) );
615 connect( mMonthView, SIGNAL( cancelIncidenceSignal( Incidence * ) ), 620 connect( mMonthView, SIGNAL( cancelIncidenceSignal( Incidence * ) ),
616 mMainView, SLOT ( cancelIncidence( Incidence * ) ) ); 621 mMainView, SLOT ( cancelIncidence( Incidence * ) ) );
617 622
618 connect( mMonthView, SIGNAL( moveIncidenceSignal( Incidence * ) ), 623 connect( mMonthView, SIGNAL( moveIncidenceSignal( Incidence * ) ),
619 mMainView, SLOT ( moveIncidence( Incidence * ) ) ); 624 mMainView, SLOT ( moveIncidence( Incidence * ) ) );
620 connect( mMonthView, SIGNAL( beamIncidenceSignal( Incidence * ) ), 625 connect( mMonthView, SIGNAL( beamIncidenceSignal( Incidence * ) ),
621 mMainView, SLOT ( beamIncidence( Incidence * ) ) ); 626 mMainView, SLOT ( beamIncidence( Incidence * ) ) );
622 connect( mMonthView, SIGNAL( selectWeekNum( int ) ), 627 connect( mMonthView, SIGNAL( selectWeekNum( int ) ),
623 mMainView->dateNavigator(), SLOT ( selectWeekFromMonthView( int ) ) ); 628 mMainView->dateNavigator(), SLOT ( selectWeekFromMonthView( int ) ) );
624 connect( mMonthView, SIGNAL( selectMonth() ), 629 connect( mMonthView, SIGNAL( selectMonth() ),
625 mMainView->dateNavigator(), SLOT ( selectMonthFromMonthview() ) ); 630 mMainView->dateNavigator(), SLOT ( selectMonthFromMonthview() ) );
626 connect( mMonthView, SIGNAL( showDaySignal( QDate ) ), 631 connect( mMonthView, SIGNAL( showDaySignal( QDate ) ),
627 mMainView, SLOT ( showDay( QDate ) ) ); 632 mMainView, SLOT ( showDay( QDate ) ) );
628 connect(mMainView, SIGNAL(configChanged()), mMonthView, SLOT(updateConfig())); 633 connect(mMainView, SIGNAL(configChanged()), mMonthView, SLOT(updateConfig()));
629 connect( mMonthView, SIGNAL(nextMonth() ), 634 connect( mMonthView, SIGNAL(nextMonth() ),
630 mMonthView->navigatorBar(), SIGNAL(goNextMonth() ) ); 635 mMonthView->navigatorBar(), SIGNAL(goNextMonth() ) );
631 connect( mMonthView, SIGNAL(prevMonth() ), 636 connect( mMonthView, SIGNAL(prevMonth() ),
632 mMonthView->navigatorBar(), SIGNAL(goPrevMonth() ) ); 637 mMonthView->navigatorBar(), SIGNAL(goPrevMonth() ) );
633 connect( mMonthView->navigatorBar(), SIGNAL( goPrevYear() ), 638 connect( mMonthView->navigatorBar(), SIGNAL( goPrevYear() ),
634 mMainView->dateNavigator(), SLOT( selectPreviousYear() ) ); 639 mMainView->dateNavigator(), SLOT( selectPreviousYear() ) );
635 connect( mMonthView->navigatorBar(), SIGNAL( goNextYear() ), 640 connect( mMonthView->navigatorBar(), SIGNAL( goNextYear() ),
636 mMainView->dateNavigator(), SLOT( selectNextYear() ) ); 641 mMainView->dateNavigator(), SLOT( selectNextYear() ) );
637 connect( mMonthView->navigatorBar(), SIGNAL( goPrevMonth() ), 642 connect( mMonthView->navigatorBar(), SIGNAL( goPrevMonth() ),
638 mMainView->dateNavigator(), SLOT( selectPreviousMonth() ) ); 643 mMainView->dateNavigator(), SLOT( selectPreviousMonth() ) );
639 connect( mMonthView->navigatorBar(), SIGNAL( goNextMonth() ), 644 connect( mMonthView->navigatorBar(), SIGNAL( goNextMonth() ),
640 mMainView->dateNavigator(), SLOT( selectNextMonth() ) ); 645 mMainView->dateNavigator(), SLOT( selectNextMonth() ) );
641 connect( mMonthView->navigatorBar(), SIGNAL( goPrevWeek() ), 646 connect( mMonthView->navigatorBar(), SIGNAL( goPrevWeek() ),
642 mMainView->dateNavigator(), SLOT( selectPreviousWeek() ) ); 647 mMainView->dateNavigator(), SLOT( selectPreviousWeek() ) );
643 connect( mMonthView->navigatorBar(), SIGNAL( goNextWeek() ), 648 connect( mMonthView->navigatorBar(), SIGNAL( goNextWeek() ),
644 mMainView->dateNavigator(), SLOT( selectNextWeek() ) ); 649 mMainView->dateNavigator(), SLOT( selectNextWeek() ) );
645 650
646 connect( mMainView->dateNavigator(), SIGNAL( datesSelected( const KCal::DateList & ) ), 651 connect( mMainView->dateNavigator(), SIGNAL( datesSelected( const KCal::DateList & ) ),
647 mMonthView->navigatorBar(), SLOT( selectDates( const KCal::DateList & ) ) ); 652 mMonthView->navigatorBar(), SLOT( selectDates( const KCal::DateList & ) ) );
648 653
649 654
650 connect( mMonthView->navigatorBar(), SIGNAL( monthSelected ( int ) ), 655 connect( mMonthView->navigatorBar(), SIGNAL( monthSelected ( int ) ),
651 mMainView->dateNavigator(), SLOT( slotMonthSelect( int ) ) ); 656 mMainView->dateNavigator(), SLOT( slotMonthSelect( int ) ) );
652 657
653 } 658 }
654} 659}
655void KOViewManager::showMonthViewWeek() 660void KOViewManager::showMonthViewWeek()
656{ 661{
657 createMonthView(); 662 createMonthView();
663 KOPrefs::instance()->mCurrentDisplayedView = VIEW_ML_VIEW ;
658 globalFlagBlockAgenda = 1; 664 globalFlagBlockAgenda = 1;
659 bool full = true; 665 bool full = true;
660 if ( mCurrentView == mMonthView) 666 if ( mCurrentView == mMonthView)
661 full = mMainView->leftFrame()->isVisible(); 667 full = mMainView->leftFrame()->isVisible();
662 if ( !KOPrefs::instance()->mMonthViewWeek ) { 668 if ( !KOPrefs::instance()->mMonthViewWeek ) {
663 mMonthView->switchView(); 669 mMonthView->switchView();
664 if ( KOPrefs::instance()->mViewChangeHoldNonFullscreen && mMainView->leftFrame()->isVisible() ) 670 if ( KOPrefs::instance()->mViewChangeHoldNonFullscreen && mMainView->leftFrame()->isVisible() )
665 full = false; 671 full = false;
666 else 672 else
667 full = true; 673 full = true;
668 } 674 }
669 mMainView->dateNavigator()->selectWeek(); 675 mMainView->dateNavigator()->selectWeek();
670 showView(mMonthView, full ); 676 showView(mMonthView, full );
671 mMonthView->setKeyBFocus(); 677 mMonthView->setKeyBFocus();
672 KOPrefs::instance()->mCurrentDisplayedView = VIEW_ML_VIEW ; 678 KOPrefs::instance()->mCurrentDisplayedView = VIEW_ML_VIEW ;
673} 679}
674 680
675void KOViewManager::showMonth( const QDate & date ) 681void KOViewManager::showMonth( const QDate & date )
676{ 682{
677 mMainView->dateNavigator()->blockSignals( true ); 683 mMainView->dateNavigator()->blockSignals( true );
678 mMainView->dateNavigator()->selectDate( date ); 684 mMainView->dateNavigator()->selectDate( date );
679 mMainView->dateNavigator()->blockSignals( false ); 685 mMainView->dateNavigator()->blockSignals( false );
680 showMonthView(); 686 showMonthView();
681} 687}
682void KOViewManager::showMonthView() 688void KOViewManager::showMonthView()
683 { 689 {
684 690
685 createMonthView(); 691 createMonthView();
692 KOPrefs::instance()->mCurrentDisplayedView = VIEW_M_VIEW ;
686 globalFlagBlockAgenda = 1; 693 globalFlagBlockAgenda = 1;
687 //mFlagShowNextxDays = false; 694 //mFlagShowNextxDays = false;
688 bool full = true; 695 bool full = true;
689 if ( mCurrentView == mMonthView) 696 if ( mCurrentView == mMonthView)
690 full = mMainView->leftFrame()->isVisible(); 697 full = mMainView->leftFrame()->isVisible();
691 // if(mMonthView == mCurrentView) return; 698 // if(mMonthView == mCurrentView) return;
692 if ( KOPrefs::instance()->mMonthViewWeek ) { 699 if ( KOPrefs::instance()->mMonthViewWeek ) {
693 mMonthView->switchView(); 700 mMonthView->switchView();
694 if ( KOPrefs::instance()->mViewChangeHoldNonFullscreen && mMainView->leftFrame()->isVisible() ) 701 if ( KOPrefs::instance()->mViewChangeHoldNonFullscreen && mMainView->leftFrame()->isVisible() )
695 full = false; 702 full = false;
696 else 703 else
697 full = true; 704 full = true;
698 } 705 }
699 mMainView->dateNavigator()->selectMonth(); 706 mMainView->dateNavigator()->selectMonth();
700 707
701 showView(mMonthView, full ); 708 showView(mMonthView, full );
702 mMonthView->setKeyBFocus(); 709 mMonthView->setKeyBFocus();
703 KOPrefs::instance()->mCurrentDisplayedView = VIEW_M_VIEW ; 710 KOPrefs::instance()->mCurrentDisplayedView = VIEW_M_VIEW ;
704 711
705} 712}
706 713
707void KOViewManager::showTodoView() 714void KOViewManager::showTodoView()
708{ 715{
709 //mFlagShowNextxDays = false; 716 //mFlagShowNextxDays = false;
710 if ( !mTodoView ) { 717 if ( !mTodoView ) {
711 mTodoView = new KOTodoView( mMainView->calendar(), mMainView->viewStack(), 718 mTodoView = new KOTodoView( mMainView->calendar(), mMainView->viewStack(),
712 "KOViewManager::TodoView" ); 719 "KOViewManager::TodoView" );
713 720
714 addView( mTodoView ); 721 addView( mTodoView );
715 // QPEApplication::setStylusOperation( mTodoView, QPEApplication::RightOnHold ); 722 // QPEApplication::setStylusOperation( mTodoView, QPEApplication::RightOnHold );
716 723
717 // SIGNALS/SLOTS FOR TODO VIEW 724 // SIGNALS/SLOTS FOR TODO VIEW
718 connect( mTodoView, SIGNAL( newTodoSignal() ), 725 connect( mTodoView, SIGNAL( newTodoSignal() ),
719 mMainView, SLOT( newTodo() ) ); 726 mMainView, SLOT( newTodo() ) );
720 connect( mTodoView, SIGNAL( newSubTodoSignal( Todo * ) ), 727 connect( mTodoView, SIGNAL( newSubTodoSignal( Todo * ) ),
721 mMainView, SLOT( newSubTodo( Todo *) ) ); 728 mMainView, SLOT( newSubTodo( Todo *) ) );
722 connect( mTodoView, SIGNAL( showTodoSignal( Todo *) ), 729 connect( mTodoView, SIGNAL( showTodoSignal( Todo *) ),
723 mMainView, SLOT( showTodo( Todo * ) ) ); 730 mMainView, SLOT( showTodo( Todo * ) ) );
724 connect( mTodoView, SIGNAL( editTodoSignal( Todo * ) ), 731 connect( mTodoView, SIGNAL( editTodoSignal( Todo * ) ),
725 mMainView, SLOT( editTodo( Todo * ) ) ); 732 mMainView, SLOT( editTodo( Todo * ) ) );
726 connect( mTodoView, SIGNAL( deleteTodoSignal( Todo * ) ), 733 connect( mTodoView, SIGNAL( deleteTodoSignal( Todo * ) ),
727 mMainView, SLOT( deleteTodo( Todo * ) ) ); 734 mMainView, SLOT( deleteTodo( Todo * ) ) );
728 connect( mTodoView, SIGNAL( purgeCompletedSignal() ), 735 connect( mTodoView, SIGNAL( purgeCompletedSignal() ),
729 mMainView, SLOT( purgeCompleted() ) ); 736 mMainView, SLOT( purgeCompleted() ) );
730 737
731 connect( mTodoView, SIGNAL( incidenceSelected( Incidence * ) ), 738 connect( mTodoView, SIGNAL( incidenceSelected( Incidence * ) ),
732 mMainView, SLOT( processMainViewSelection( Incidence * ) ) ); 739 mMainView, SLOT( processMainViewSelection( Incidence * ) ) );
733 740
734 connect( mMainView, SIGNAL( configChanged() ), mTodoView, 741 connect( mMainView, SIGNAL( configChanged() ), mTodoView,
735 SLOT( updateConfig() ) ); 742 SLOT( updateConfig() ) );
736 connect( mMainView, SIGNAL( todoModified( Todo *, int )), mTodoView, 743 connect( mMainView, SIGNAL( todoModified( Todo *, int )), mTodoView,
737 SLOT( updateTodo( Todo *, int ) ) ); 744 SLOT( updateTodo( Todo *, int ) ) );
738 connect( mTodoView, SIGNAL( todoModifiedSignal( Todo *, int ) ), 745 connect( mTodoView, SIGNAL( todoModifiedSignal( Todo *, int ) ),
739 mMainView, SIGNAL ( todoModified( Todo *, int ) ) ); 746 mMainView, SIGNAL ( todoModified( Todo *, int ) ) );
740 connect( mTodoView, SIGNAL( cloneTodoSignal( Incidence * ) ), 747 connect( mTodoView, SIGNAL( cloneTodoSignal( Incidence * ) ),
741 mMainView, SLOT ( cloneIncidence( Incidence * ) ) ); 748 mMainView, SLOT ( cloneIncidence( Incidence * ) ) );
742 connect( mTodoView, SIGNAL( cancelTodoSignal( Incidence * ) ), 749 connect( mTodoView, SIGNAL( cancelTodoSignal( Incidence * ) ),
743 mMainView, SLOT ( cancelIncidence( Incidence * ) ) ); 750 mMainView, SLOT ( cancelIncidence( Incidence * ) ) );
744 connect( mTodoView, SIGNAL( unparentTodoSignal( Todo * ) ), 751 connect( mTodoView, SIGNAL( unparentTodoSignal( Todo * ) ),
745 mMainView, SLOT ( todo_unsub( Todo * ) ) ); 752 mMainView, SLOT ( todo_unsub( Todo * ) ) );
746 connect( mTodoView, SIGNAL( reparentTodoSignal( Todo *,Todo * ) ), 753 connect( mTodoView, SIGNAL( reparentTodoSignal( Todo *,Todo * ) ),
747 mMainView, SLOT ( todo_resub( Todo *, Todo *) ) ); 754 mMainView, SLOT ( todo_resub( Todo *, Todo *) ) );
748 connect( mTodoView, SIGNAL( moveTodoSignal( Incidence * ) ), 755 connect( mTodoView, SIGNAL( moveTodoSignal( Incidence * ) ),
749 mMainView, SLOT ( moveIncidence( Incidence * ) ) ); 756 mMainView, SLOT ( moveIncidence( Incidence * ) ) );
750 connect( mTodoView, SIGNAL( beamTodoSignal( Incidence * ) ), 757 connect( mTodoView, SIGNAL( beamTodoSignal( Incidence * ) ),
751 mMainView, SLOT ( beamIncidence( Incidence * ) ) ); 758 mMainView, SLOT ( beamIncidence( Incidence * ) ) );
752 KConfig *config = KOGlobals::config(); 759 KConfig *config = KOGlobals::config();
753 mTodoView->restoreLayout(config,"Todo View"); 760 mTodoView->restoreLayout(config,"Todo View");
754 mTodoView->setNavigator( mMainView->dateNavigator() ); 761 mTodoView->setNavigator( mMainView->dateNavigator() );
755 } 762 }
756 763
764 KOPrefs::instance()->mCurrentDisplayedView = VIEW_T_VIEW ;
757 globalFlagBlockAgenda = 1; 765 globalFlagBlockAgenda = 1;
758 showView( mTodoView, true ); 766 showView( mTodoView, true );
759 KOPrefs::instance()->mCurrentDisplayedView = VIEW_T_VIEW ; 767 KOPrefs::instance()->mCurrentDisplayedView = VIEW_T_VIEW ;
760 768
761} 769}
762 770
763void KOViewManager::showJournalView() 771void KOViewManager::showJournalView()
764{ 772{
765 //mFlagShowNextxDays = false; 773 //mFlagShowNextxDays = false;
766 if (!mJournalView) { 774 if (!mJournalView) {
767 mJournalView = new KOJournalView(mMainView->calendar(),mMainView->viewStack(), 775 mJournalView = new KOJournalView(mMainView->calendar(),mMainView->viewStack(),
768 "KOViewManager::JournalView"); 776 "KOViewManager::JournalView");
769 connect( mMainView, SIGNAL( configChanged() ), mJournalView, 777 connect( mMainView, SIGNAL( configChanged() ), mJournalView,
770 SLOT( updateConfig() ) ); 778 SLOT( updateConfig() ) );
771 connect(mJournalView, SIGNAL(deleteJournal(Journal *) ), mMainView,SLOT(deleteJournal(Journal *)) ); 779 connect(mJournalView, SIGNAL(deleteJournal(Journal *) ), mMainView,SLOT(deleteJournal(Journal *)) );
772 addView(mJournalView); 780 addView(mJournalView);
773 } 781 }
774 782
783 KOPrefs::instance()->mCurrentDisplayedView = VIEW_J_VIEW ;
775 showView(mJournalView); 784 showView(mJournalView);
776 mMainView->dateNavigator()->selectDates( 1 ); 785 mMainView->dateNavigator()->selectDates( 1 );
777 KOPrefs::instance()->mCurrentDisplayedView = VIEW_J_VIEW ; 786 KOPrefs::instance()->mCurrentDisplayedView = VIEW_J_VIEW ;
778} 787}
779 788
780void KOViewManager::showTimeSpanView() 789void KOViewManager::showTimeSpanView()
781{ 790{
782 //mFlagShowNextxDays = false; 791 //mFlagShowNextxDays = false;
783 if (!mTimeSpanView) { 792 if (!mTimeSpanView) {
784 mTimeSpanView = new KOTimeSpanView(mMainView->calendar(),mMainView->viewStack(), 793 mTimeSpanView = new KOTimeSpanView(mMainView->calendar(),mMainView->viewStack(),
785 "KOViewManager::TimeSpanView"); 794 "KOViewManager::TimeSpanView");
786 addView(mTimeSpanView); 795 addView(mTimeSpanView);
787 796
788 mTimeSpanView->readSettings(); 797 mTimeSpanView->readSettings();
789 } 798 }
790 799
791 showView(mTimeSpanView); 800 showView(mTimeSpanView);
792} 801}
793 802
794Incidence *KOViewManager::currentSelection() 803Incidence *KOViewManager::currentSelection()
795{ 804{
796 if (!mCurrentView) return 0; 805 if (!mCurrentView) return 0;
797 if ( mCurrentView == mListView ) { 806 if ( mCurrentView == mListView ) {
798 if ( mListView->currentItem() ) 807 if ( mListView->currentItem() )
799 return mListView->currentItem(); 808 return mListView->currentItem();
800 } 809 }
801 return mCurrentView->selectedIncidences().first(); 810 return mCurrentView->selectedIncidences().first();
802} 811}
803 812
804QDate KOViewManager::currentSelectionDate() 813QDate KOViewManager::currentSelectionDate()
805{ 814{
806 QDate qd; 815 QDate qd;
807 if (mCurrentView) { 816 if (mCurrentView) {
808 DateList qvl = mCurrentView->selectedDates(); 817 DateList qvl = mCurrentView->selectedDates();
809 if (!qvl.isEmpty()) qd = qvl.first(); 818 if (!qvl.isEmpty()) qd = qvl.first();
810 } 819 }
811 return qd; 820 return qd;
812} 821}
813 822
814void KOViewManager::addView(KOrg::BaseView *view) 823void KOViewManager::addView(KOrg::BaseView *view)
815{ 824{
816#if QT_VERSION >= 0x030000 825#if QT_VERSION >= 0x030000
817 mMainView->viewStack()->addWidget( view ); 826 mMainView->viewStack()->addWidget( view );
818#else 827#else
819 mMainView->viewStack()->addWidget( view, 1 ); 828 mMainView->viewStack()->addWidget( view, 1 );
820#endif 829#endif
821} 830}
822 831
823void KOViewManager::setDocumentId( const QString &id ) 832void KOViewManager::setDocumentId( const QString &id )
824{ 833{
825 if (mTodoView) mTodoView->setDocumentId( id ); 834 if (mTodoView) mTodoView->setDocumentId( id );
826} 835}
diff --git a/korganizer/mainwindow.cpp b/korganizer/mainwindow.cpp
index 95bef66..87cef20 100644
--- a/korganizer/mainwindow.cpp
+++ b/korganizer/mainwindow.cpp
@@ -93,202 +93,205 @@ class KOex2phonePrefs : public QDialog
93 lay->addWidget( temphb ); 93 lay->addWidget( temphb );
94 temphb = new QHBox( this ); 94 temphb = new QHBox( this );
95 new QLabel( i18n("Connection: "), temphb ); 95 new QLabel( i18n("Connection: "), temphb );
96 mPhoneConnection = new QLineEdit( temphb); 96 mPhoneConnection = new QLineEdit( temphb);
97 lay->addWidget( temphb ); 97 lay->addWidget( temphb );
98 temphb = new QHBox( this ); 98 temphb = new QHBox( this );
99 new QLabel( i18n("Model(opt.): "), temphb ); 99 new QLabel( i18n("Model(opt.): "), temphb );
100 mPhoneModel = new QLineEdit( temphb); 100 mPhoneModel = new QLineEdit( temphb);
101 lay->addWidget( temphb ); 101 lay->addWidget( temphb );
102 mWriteBackFuture= new QCheckBox( i18n("Write back events in future only"), this ); 102 mWriteBackFuture= new QCheckBox( i18n("Write back events in future only"), this );
103 mWriteBackFuture->setChecked( true ); 103 mWriteBackFuture->setChecked( true );
104 lay->addWidget( mWriteBackFuture ); 104 lay->addWidget( mWriteBackFuture );
105 temphb = new QHBox( this ); 105 temphb = new QHBox( this );
106 new QLabel( i18n("Max. weeks in future: ") , temphb ); 106 new QLabel( i18n("Max. weeks in future: ") , temphb );
107 mWriteBackFutureWeeks= new QSpinBox(1,104, 1, temphb); 107 mWriteBackFutureWeeks= new QSpinBox(1,104, 1, temphb);
108 mWriteBackFutureWeeks->setValue( 8 ); 108 mWriteBackFutureWeeks->setValue( 8 );
109 lay->addWidget( temphb ); 109 lay->addWidget( temphb );
110 lay->addWidget(lab = new QLabel( i18n("NOTE: This will remove all old\ntodo/calendar data on phone!"), this ) ); 110 lay->addWidget(lab = new QLabel( i18n("NOTE: This will remove all old\ntodo/calendar data on phone!"), this ) );
111 lab->setAlignment (AlignHCenter ); 111 lab->setAlignment (AlignHCenter );
112 QPushButton * ok = new QPushButton( i18n("Export to mobile phone!"), this ); 112 QPushButton * ok = new QPushButton( i18n("Export to mobile phone!"), this );
113 lay->addWidget( ok ); 113 lay->addWidget( ok );
114 QPushButton * cancel = new QPushButton( i18n("Cancel"), this ); 114 QPushButton * cancel = new QPushButton( i18n("Cancel"), this );
115 lay->addWidget( cancel ); 115 lay->addWidget( cancel );
116 connect ( ok,SIGNAL(clicked() ),this , SLOT ( accept() ) ); 116 connect ( ok,SIGNAL(clicked() ),this , SLOT ( accept() ) );
117 connect (cancel, SIGNAL(clicked() ), this, SLOT ( reject()) ); 117 connect (cancel, SIGNAL(clicked() ), this, SLOT ( reject()) );
118 resize( 220, 240 ); 118 resize( 220, 240 );
119 qApp->processEvents(); 119 qApp->processEvents();
120 int dw = QApplication::desktop()->width(); 120 int dw = QApplication::desktop()->width();
121 int dh = QApplication::desktop()->height(); 121 int dh = QApplication::desktop()->height();
122 move( (dw-width())/2, (dh - height() )/2 ); 122 move( (dw-width())/2, (dh - height() )/2 );
123 } 123 }
124 124
125public: 125public:
126 QLineEdit* mPhoneConnection, *mPhoneDevice, *mPhoneModel; 126 QLineEdit* mPhoneConnection, *mPhoneDevice, *mPhoneModel;
127 QCheckBox* mWriteBackFuture; 127 QCheckBox* mWriteBackFuture;
128 QSpinBox* mWriteBackFutureWeeks; 128 QSpinBox* mWriteBackFutureWeeks;
129}; 129};
130 130
131int globalFlagBlockStartup; 131int globalFlagBlockStartup;
132MainWindow::MainWindow( QWidget *parent, const char *name, QString msg) : 132MainWindow::MainWindow( QWidget *parent, const char *name, QString msg) :
133 QMainWindow( parent, name ) 133 QMainWindow( parent, name )
134{ 134{
135 135
136 mClosed = false; 136 mClosed = false;
137 //QString confFile = KStandardDirs::appDir() + "config/korganizerrc"; 137 //QString confFile = KStandardDirs::appDir() + "config/korganizerrc";
138 QString confFile = locateLocal("config","korganizerrc"); 138 QString confFile = locateLocal("config","korganizerrc");
139 QFileInfo finf ( confFile ); 139 QFileInfo finf ( confFile );
140 bool showWarning = !finf.exists(); 140 bool showWarning = !finf.exists();
141 setIcon(SmallIcon( "ko24" ) ); 141 setIcon(SmallIcon( "ko24" ) );
142 mBlockAtStartup = true; 142 mBlockAtStartup = true;
143 mFlagKeyPressed = false; 143 mFlagKeyPressed = false;
144 setCaption("KO/Pi"); 144 setCaption("KO/Pi");
145 KOPrefs *p = KOPrefs::instance(); 145 KOPrefs *p = KOPrefs::instance();
146 KPimGlobalPrefs::instance()->setGlobalConfig(); 146 KPimGlobalPrefs::instance()->setGlobalConfig();
147 p->mCurrentDisplayedView = 0; 147 p->mCurrentDisplayedView = 0;
148 if ( p->mHourSize > 22 ) 148 if ( p->mHourSize > 22 )
149 p->mHourSize = 22; 149 p->mHourSize = 22;
150 QMainWindow::ToolBarDock tbd; 150 QMainWindow::ToolBarDock tbd;
151 if ( p->mToolBarHor ) { 151 if ( p->mToolBarHor ) {
152 if ( p->mToolBarUp ) 152 if ( p->mToolBarUp )
153 tbd = Bottom; 153 tbd = Bottom;
154 else 154 else
155 tbd = Top; 155 tbd = Top;
156 } 156 }
157 else { 157 else {
158 if ( p->mToolBarUp ) 158 if ( p->mToolBarUp )
159 tbd = Right; 159 tbd = Right;
160 else 160 else
161 tbd = Left; 161 tbd = Left;
162 } 162 }
163 if ( KOPrefs::instance()->mUseAppColors ) 163 if ( KOPrefs::instance()->mUseAppColors )
164 QApplication::setPalette( QPalette (KOPrefs::instance()->mAppColor1, KOPrefs::instance()->mAppColor2), true ); 164 QApplication::setPalette( QPalette (KOPrefs::instance()->mAppColor1, KOPrefs::instance()->mAppColor2), true );
165 globalFlagBlockStartup = 1; 165 globalFlagBlockStartup = 1;
166 iconToolBar = new QPEToolBar( this ); 166 iconToolBar = new QPEToolBar( this );
167 addToolBar (iconToolBar , tbd ); 167 addToolBar (iconToolBar , tbd );
168 168
169#ifdef DESKTOP_VERSION 169#ifdef DESKTOP_VERSION
170 if ( KOPrefs::instance()->mShowIconFilter ) 170 if ( KOPrefs::instance()->mShowIconFilter )
171#else 171#else
172 if ( KOPrefs::instance()->mShowIconFilter || !p->mShowIconOnetoolbar ) 172 if ( KOPrefs::instance()->mShowIconFilter || !p->mShowIconOnetoolbar )
173#endif 173#endif
174 174
175{ 175{
176 if ( p->mToolBarHorF ) { 176 if ( p->mToolBarHorF ) {
177 if ( p->mToolBarUpF ) 177 if ( p->mToolBarUpF )
178 tbd = Bottom; 178 tbd = Bottom;
179 else 179 else
180 tbd = Top; 180 tbd = Top;
181 } 181 }
182 else { 182 else {
183 if ( p->mToolBarUpF ) 183 if ( p->mToolBarUpF )
184 tbd = Right; 184 tbd = Right;
185 else 185 else
186 tbd = Left; 186 tbd = Left;
187 } 187 }
188 filterToolBar = new QPEToolBar ( this ); 188 filterToolBar = new QPEToolBar ( this );
189 filterMenubar = new QPEMenuBar( filterToolBar ); 189 filterMenubar = new QMenuBar( filterToolBar );
190 QFontMetrics fm ( filterMenubar->font() ); 190 QFontMetrics fm ( filterMenubar->font() );
191 191
192 filterPopupMenu = new QPopupMenu( this ); 192 filterPopupMenu = new QPopupMenu( this );
193 filterMenubar->insertItem( i18n("No Filter"), filterPopupMenu,0 ); 193 filterMenubar->insertItem( i18n("No Filter"), filterPopupMenu,0 );
194 QString addTest = "Ax"; 194 QString addTest = "A";
195 filterMenubar->setMinimumWidth( fm.width( i18n("No Filter")+addTest ) );
195#ifdef DESKTOP_VERSION 196#ifdef DESKTOP_VERSION
196 addTest = "AAAx"; 197 addTest = "AAABBBCCCx";
197#endif 198#else
198 filterMenubar->setFixedWidth( fm.width( i18n("No Filter")+addTest ) ); 199 addTest = "AAx";
200#endif
201 filterMenubar->setMaximumWidth( fm.width( i18n("No Filter")+addTest ) );
199 addToolBar (filterToolBar , tbd ); 202 addToolBar (filterToolBar , tbd );
200 connect ( filterPopupMenu , SIGNAL( activated ( int ) ), this, SLOT (selectFilterPopup( int ) ) ); 203 connect ( filterPopupMenu , SIGNAL( activated ( int ) ), this, SLOT (selectFilterPopup( int ) ) );
201 connect ( filterPopupMenu , SIGNAL( aboutToShow() ), this, SLOT (fillFilterMenuPopup() ) ); 204 connect ( filterPopupMenu , SIGNAL( aboutToShow() ), this, SLOT (fillFilterMenuPopup() ) );
202 if ( !KOPrefs::instance()->mShowIconFilter && !p->mShowIconOnetoolbar ) 205 if ( !KOPrefs::instance()->mShowIconFilter && !p->mShowIconOnetoolbar )
203 filterToolBar->hide(); 206 filterToolBar->hide();
204 } else { 207 } else {
205 filterToolBar = 0; 208 filterToolBar = 0;
206 filterMenubar = 0; 209 filterMenubar = 0;
207 filterPopupMenu = 0; 210 filterPopupMenu = 0;
208 } 211 }
209 if ( p->mShowIconOnetoolbar ) { 212 if ( p->mShowIconOnetoolbar ) {
210 viewToolBar = iconToolBar ; 213 viewToolBar = iconToolBar ;
211 navigatorToolBar = iconToolBar ; 214 navigatorToolBar = iconToolBar ;
212 } else { 215 } else {
213#ifndef DESKTOP_VERSION 216#ifndef DESKTOP_VERSION
214 setToolBarsMovable( false ); 217 setToolBarsMovable( false );
215#endif 218#endif
216 if ( p->mToolBarHorV ) { 219 if ( p->mToolBarHorV ) {
217 if ( p->mToolBarUpV ) 220 if ( p->mToolBarUpV )
218 tbd = Bottom; 221 tbd = Bottom;
219 else 222 else
220 tbd = Top; 223 tbd = Top;
221 } 224 }
222 else { 225 else {
223 if ( p->mToolBarUpV ) 226 if ( p->mToolBarUpV )
224 tbd = Right; 227 tbd = Right;
225 else 228 else
226 tbd = Left; 229 tbd = Left;
227 } 230 }
228 viewToolBar = new QPEToolBar( this ); 231 viewToolBar = new QPEToolBar( this );
229 addToolBar (viewToolBar , tbd ); 232 addToolBar (viewToolBar , tbd );
230 if ( p->mToolBarHorN ) { 233 if ( p->mToolBarHorN ) {
231 if ( p->mToolBarUpN ) 234 if ( p->mToolBarUpN )
232 tbd = Bottom; 235 tbd = Bottom;
233 else 236 else
234 tbd = Top; 237 tbd = Top;
235 } 238 }
236 else { 239 else {
237 if ( p->mToolBarUpN ) 240 if ( p->mToolBarUpN )
238 tbd = Right; 241 tbd = Right;
239 else 242 else
240 tbd = Left; 243 tbd = Left;
241 } 244 }
242 navigatorToolBar = new QPEToolBar( this ); 245 navigatorToolBar = new QPEToolBar( this );
243 addToolBar (navigatorToolBar , tbd ); 246 addToolBar (navigatorToolBar , tbd );
244 } 247 }
245 248
246 249
247 250
248 mCalendarModifiedFlag = false; 251 mCalendarModifiedFlag = false;
249 QLabel* splash = new QLabel(i18n("KO/Pi is starting ... "), this ); 252 QLabel* splash = new QLabel(i18n("KO/Pi is starting ... "), this );
250 splash->setAlignment ( AlignCenter ); 253 splash->setAlignment ( AlignCenter );
251 setCentralWidget( splash ); 254 setCentralWidget( splash );
252#ifndef DESKTOP_VERSION 255#ifndef DESKTOP_VERSION
253 showMaximized(); 256 showMaximized();
254#endif 257#endif
255 258
256 //qDebug("Mainwidget x %d y %d w %d h %d", x(), y(), width(), height ()); 259 //qDebug("Mainwidget x %d y %d w %d h %d", x(), y(), width(), height ());
257 setDefaultPreferences(); 260 setDefaultPreferences();
258 mCalendar = new CalendarLocal(); 261 mCalendar = new CalendarLocal();
259 mView = new CalendarView( mCalendar, this,"mCalendar " ); 262 mView = new CalendarView( mCalendar, this,"mCalendar " );
260 mView->hide(); 263 mView->hide();
261 //mView->resize(splash->size() ); 264 //mView->resize(splash->size() );
262 initActions(); 265 initActions();
263 mSyncManager = new KSyncManager((QWidget*)this, (KSyncInterface*)mView, KSyncManager::KOPI, KOPrefs::instance(), syncMenu); 266 mSyncManager = new KSyncManager((QWidget*)this, (KSyncInterface*)mView, KSyncManager::KOPI, KOPrefs::instance(), syncMenu);
264 mSyncManager->setBlockSave(false); 267 mSyncManager->setBlockSave(false);
265 mView->setSyncManager(mSyncManager); 268 mView->setSyncManager(mSyncManager);
266#ifndef DESKTOP_VERSION 269#ifndef DESKTOP_VERSION
267 iconToolBar->show(); 270 iconToolBar->show();
268 qApp->processEvents(); 271 qApp->processEvents();
269#endif 272#endif
270 //qDebug("Splashwidget x %d y %d w %d h %d", splash-> x(), splash->y(), splash->width(),splash-> height ()); 273 //qDebug("Splashwidget x %d y %d w %d h %d", splash-> x(), splash->y(), splash->width(),splash-> height ());
271 int vh = height() ; 274 int vh = height() ;
272 int vw = width(); 275 int vw = width();
273 //qDebug("Toolbar hei %d ",iconToolBar->height() ); 276 //qDebug("Toolbar hei %d ",iconToolBar->height() );
274 if ( iconToolBar->orientation () == Qt:: Horizontal ) { 277 if ( iconToolBar->orientation () == Qt:: Horizontal ) {
275 vh -= iconToolBar->height(); 278 vh -= iconToolBar->height();
276 } else { 279 } else {
277 vw -= iconToolBar->height(); 280 vw -= iconToolBar->height();
278 } 281 }
279 //mView->setMaximumSize( splash->size() ); 282 //mView->setMaximumSize( splash->size() );
280 //mView->resize( splash->size() ); 283 //mView->resize( splash->size() );
281 //qDebug("MainView x %d y %d w %d h %d", mView->x(),mView-> y(), mView->width(), mView->height ()); 284 //qDebug("MainView x %d y %d w %d h %d", mView->x(),mView-> y(), mView->width(), mView->height ());
282 mView->readSettings(); 285 mView->readSettings();
283 bool newFile = false; 286 bool newFile = false;
284 if( !QFile::exists( defaultFileName() ) ) { 287 if( !QFile::exists( defaultFileName() ) ) {
285 QFileInfo finfo ( defaultFileName() ); 288 QFileInfo finfo ( defaultFileName() );
286 QString oldFile = QDir::convertSeparators( QDir::homeDirPath()+"/Applications/korganizer/mycalendar.ics"); 289 QString oldFile = QDir::convertSeparators( QDir::homeDirPath()+"/Applications/korganizer/mycalendar.ics");
287 QString message = "You are starting KO/Pi for the\nfirst time after updating to a\nversion >= 1.9.1. The location of the\ndefault calendar file has changed.\nA mycalendar.ics file was detected\nat the old location.\nThis file will be loaded now\nand stored at the new location!\n(Config file location has changed, too!)\nPlease read menu Help-What's New!\n"; 290 QString message = "You are starting KO/Pi for the\nfirst time after updating to a\nversion >= 1.9.1. The location of the\ndefault calendar file has changed.\nA mycalendar.ics file was detected\nat the old location.\nThis file will be loaded now\nand stored at the new location!\n(Config file location has changed, too!)\nPlease read menu Help-What's New!\n";
288 finfo.setFile( oldFile ); 291 finfo.setFile( oldFile );
289 if (finfo.exists() ) { 292 if (finfo.exists() ) {
290 KMessageBox::information( this, message); 293 KMessageBox::information( this, message);
291 mView->openCalendar( oldFile ); 294 mView->openCalendar( oldFile );
292 qApp->processEvents(); 295 qApp->processEvents();
293 } else { 296 } else {
294 oldFile = QDir::convertSeparators( QDir::homeDirPath()+"/korganizer/mycalendar.ics"); 297 oldFile = QDir::convertSeparators( QDir::homeDirPath()+"/korganizer/mycalendar.ics");
diff --git a/korganizer/mainwindow.h b/korganizer/mainwindow.h
index 45ed04d..8fd3d24 100644
--- a/korganizer/mainwindow.h
+++ b/korganizer/mainwindow.h
@@ -30,137 +30,137 @@ namespace KCal {
30class CalendarLocal; 30class CalendarLocal;
31} 31}
32 32
33using namespace KCal; 33using namespace KCal;
34 34
35class MainWindow : public QMainWindow 35class MainWindow : public QMainWindow
36{ 36{
37 Q_OBJECT 37 Q_OBJECT
38 public: 38 public:
39 MainWindow( QWidget *parent = 0, const char *name = 0, QString command = ""); 39 MainWindow( QWidget *parent = 0, const char *name = 0, QString command = "");
40 ~MainWindow(); 40 ~MainWindow();
41 bool beamReceiveEnabled(); 41 bool beamReceiveEnabled();
42 static QString defaultFileName(); 42 static QString defaultFileName();
43 static QString syncFileName(); 43 static QString syncFileName();
44 static QString resourcePath(); 44 static QString resourcePath();
45 public slots: 45 public slots:
46 void setCaption ( const QString & ); 46 void setCaption ( const QString & );
47 void updateWeekNum(const KCal::DateList &); 47 void updateWeekNum(const KCal::DateList &);
48 void updateWeek(QDate); 48 void updateWeek(QDate);
49 void updateFilterToolbar(); 49 void updateFilterToolbar();
50 virtual void showMaximized (); 50 virtual void showMaximized ();
51 void configureAgenda( int ); 51 void configureAgenda( int );
52 void recieve( const QCString& msg, const QByteArray& data ); 52 void recieve( const QCString& msg, const QByteArray& data );
53 protected slots: 53 protected slots:
54 void setCaptionToDates(); 54 void setCaptionToDates();
55 void weekAction(); 55 void weekAction();
56 void about(); 56 void about();
57 void licence(); 57 void licence();
58 void faq(); 58 void faq();
59 void usertrans(); 59 void usertrans();
60 void features(); 60 void features();
61 void synchowto(); 61 void synchowto();
62 void storagehowto(); 62 void storagehowto();
63 void timetrackinghowto(); 63 void timetrackinghowto();
64 void kdesynchowto(); 64 void kdesynchowto();
65 void multisynchowto(); 65 void multisynchowto();
66 void whatsNew(); 66 void whatsNew();
67 void keyBindings(); 67 void keyBindings();
68 void aboutAutoSaving();; 68 void aboutAutoSaving();;
69 void aboutKnownBugs(); 69 void aboutKnownBugs();
70 70
71 void processIncidenceSelection( Incidence * ); 71 void processIncidenceSelection( Incidence * );
72 72
73 void importQtopia(); 73 void importQtopia();
74 void importBday(); 74 void importBday();
75 void importOL(); 75 void importOL();
76 void importIcal(); 76 void importIcal();
77 void importFile( QString, bool ); 77 void importFile( QString, bool );
78 void quickImportIcal(); 78 void quickImportIcal();
79 79
80 void slotModifiedChanged( bool ); 80 void slotModifiedChanged( bool );
81 81
82 void save(); 82 void save();
83 void saveStopTimer(); 83 void saveStopTimer();
84 void configureToolBar( int ); 84 void configureToolBar( int );
85 void printSel(); 85 void printSel();
86 void printCal(); 86 void printCal();
87 void saveCalendar(); 87 void saveCalendar();
88 void loadCalendar(); 88 void loadCalendar();
89 void exportVCalendar(); 89 void exportVCalendar();
90 void fillFilterMenu(); 90 void fillFilterMenu();
91 void fillFilterMenuTB(); 91 void fillFilterMenuTB();
92 void selectFilter( int ); 92 void selectFilter( int );
93 void fillFilterMenuPopup(); 93 void fillFilterMenuPopup();
94 void selectFilterPopup( int ); 94 void selectFilterPopup( int );
95 void exportToPhone( int ); 95 void exportToPhone( int );
96 void toggleBeamReceive(); 96 void toggleBeamReceive();
97 void disableBR(bool); 97 void disableBR(bool);
98 signals: 98 signals:
99 void selectWeek ( int ); 99 void selectWeek ( int );
100 private slots: 100 private slots:
101 void showConfigureAgenda(); 101 void showConfigureAgenda();
102 void getFile( bool ); 102 void getFile( bool );
103 void syncFileRequest(); 103 void syncFileRequest();
104 104
105 protected: 105 protected:
106 void hideEvent ( QHideEvent * ); 106 void hideEvent ( QHideEvent * );
107 QString sentSyncFile(); 107 QString sentSyncFile();
108 void displayText( QString, QString); 108 void displayText( QString, QString);
109 void enableIncidenceActions( bool ); 109 void enableIncidenceActions( bool );
110 110
111 private: 111 private:
112 bool mBRdisabled; 112 bool mBRdisabled;
113#ifndef DESKTOP_VERSION 113#ifndef DESKTOP_VERSION
114 QCopChannel* infrared; 114 QCopChannel* infrared;
115#endif 115#endif
116 QAction* brAction; 116 QAction* brAction;
117 KSyncManager* mSyncManager; 117 KSyncManager* mSyncManager;
118 bool mClosed; 118 bool mClosed;
119 void saveOnClose(); 119 void saveOnClose();
120 bool mFlagKeyPressed; 120 bool mFlagKeyPressed;
121 bool mBlockAtStartup; 121 bool mBlockAtStartup;
122 QPEToolBar *iconToolBar; 122 QPEToolBar *iconToolBar;
123 QPEToolBar *viewToolBar; 123 QPEToolBar *viewToolBar;
124 QPEToolBar *navigatorToolBar; 124 QPEToolBar *navigatorToolBar;
125 QPEToolBar *filterToolBar; 125 QPEToolBar *filterToolBar;
126 QPEMenuBar *filterMenubar; 126 QMenuBar *filterMenubar;
127 QPopupMenu * filterPopupMenu; 127 QPopupMenu * filterPopupMenu;
128 void initActions(); 128 void initActions();
129 void setDefaultPreferences(); 129 void setDefaultPreferences();
130 void resizeEvent( QResizeEvent* e); 130 void resizeEvent( QResizeEvent* e);
131 void keyPressEvent ( QKeyEvent * ) ; 131 void keyPressEvent ( QKeyEvent * ) ;
132 void keyReleaseEvent ( QKeyEvent * ) ; 132 void keyReleaseEvent ( QKeyEvent * ) ;
133 QPopupMenu *configureToolBarMenu; 133 QPopupMenu *configureToolBarMenu;
134 QPopupMenu *selectFilterMenu; 134 QPopupMenu *selectFilterMenu;
135 QPopupMenu *selectFilterMenuTB; 135 QPopupMenu *selectFilterMenuTB;
136 QPopupMenu *configureAgendaMenu, *syncMenu; 136 QPopupMenu *configureAgendaMenu, *syncMenu;
137 CalendarLocal *mCalendar; 137 CalendarLocal *mCalendar;
138 CalendarView *mView; 138 CalendarView *mView;
139 QAction *mNewSubTodoAction; 139 QAction *mNewSubTodoAction;
140 QAction *mWeekAction; 140 QAction *mWeekAction;
141 QFont mWeekFont; 141 QFont mWeekFont;
142 QPixmap mWeekPixmap; 142 QPixmap mWeekPixmap;
143 QColor mWeekBgColor; 143 QColor mWeekBgColor;
144 144
145 QAction *mShowAction; 145 QAction *mShowAction;
146 QAction *mEditAction; 146 QAction *mEditAction;
147 QAction *mDeleteAction; 147 QAction *mDeleteAction;
148 QAction *mCloneAction; 148 QAction *mCloneAction;
149 QAction *mMoveAction; 149 QAction *mMoveAction;
150 QAction *mBeamAction; 150 QAction *mBeamAction;
151 QAction *mCancelAction; 151 QAction *mCancelAction;
152 152
153 QAction *mToggleNav; 153 QAction *mToggleNav;
154 QAction *mToggleFilter; 154 QAction *mToggleFilter;
155 QAction *mToggleAllday; 155 QAction *mToggleAllday;
156 QAction *actionFilterMenuTB; 156 QAction *actionFilterMenuTB;
157 157
158 void closeEvent( QCloseEvent* ce ); 158 void closeEvent( QCloseEvent* ce );
159 QTimer mSaveTimer; 159 QTimer mSaveTimer;
160 //bool mBlockSaveFlag; 160 //bool mBlockSaveFlag;
161 bool mCalendarModifiedFlag; 161 bool mCalendarModifiedFlag;
162 QPixmap loadPixmap( QString ); 162 QPixmap loadPixmap( QString );
163}; 163};
164 164
165 165
166#endif 166#endif