-rw-r--r-- | korganizer/calendarview.cpp | 8 | ||||
-rw-r--r-- | korganizer/calendarview.h | 1 | ||||
-rw-r--r-- | korganizer/koagendaitem.cpp | 6 | ||||
-rw-r--r-- | korganizer/kofilterview.cpp | 4 | ||||
-rw-r--r-- | korganizer/kofilterview.h | 1 | ||||
-rw-r--r-- | korganizer/komonthview.cpp | 4 | ||||
-rw-r--r-- | korganizer/kotodoview.cpp | 52 | ||||
-rw-r--r-- | korganizer/kotodoviewitem.cpp | 2 | ||||
-rw-r--r-- | korganizer/kowhatsnextview.cpp | 4 |
9 files changed, 49 insertions, 33 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp index 07ec459..6e60c56 100644 --- a/korganizer/calendarview.cpp +++ b/korganizer/calendarview.cpp @@ -464,4 +464,7 @@ void CalendarView::init() connect( mCalEditView, SIGNAL( calendarReadonly(int,bool) ),mCalendar, SLOT( setReadOnly(int,bool)) ); connect( mCalEditView, SIGNAL( setCalendarDefault(int) ),mCalendar, SLOT( setDefaultCalendar(int)) ); + connect( mCalEditView, SIGNAL( removeCalendar(int) ),mCalendar, SLOT( setCalendarRemove(int)) ); + connect( mCalEditView, SIGNAL( calendarAdded(int) ),this, SLOT( addCalendarId(int)) ); + connect( mCalEditView, SIGNAL( needsUpdate() ),this, SLOT( updateView()) ); mTodoList->setNavigator( mNavigator ); #if 0 @@ -1870,4 +1873,9 @@ bool CalendarView::restoreCalendarSettings() } } +void CalendarView::addCalendarId( int id ) +{ + KopiCalendarFile * cal = KOPrefs::instance()->getCalendar( id ); + addCalendar( cal ); +} bool CalendarView::addCalendar( KopiCalendarFile * cal ) { diff --git a/korganizer/calendarview.h b/korganizer/calendarview.h index 0144ba4..ec5b7ab 100644 --- a/korganizer/calendarview.h +++ b/korganizer/calendarview.h @@ -228,4 +228,5 @@ class CalendarView : public KOrg::CalendarViewBase, public KCal::Calendar::Obser bool restoreCalendarSettings(); bool addCalendar( KopiCalendarFile * ); + void addCalendarId( int id ); bool syncCalendar(QString filename,int mode = 0 ); diff --git a/korganizer/koagendaitem.cpp b/korganizer/koagendaitem.cpp index 5a3c4d2..c7bc6eb 100644 --- a/korganizer/koagendaitem.cpp +++ b/korganizer/koagendaitem.cpp @@ -122,10 +122,10 @@ void KOAgendaItem::init ( Incidence *incidence, QDate qd ) mBackgroundColor =KOPrefs::instance()->mTodoDoneColor; else - mBackgroundColor =KOPrefs::instance()->mEventColor; + mBackgroundColor =KOPrefs::instance()->defaultColor( incidence->calID() ); } else { mBackgroundColor = *KOPrefs::instance()->categoryColor(cat); if ( (incidence->typeID() == todoID ) &&((static_cast<Todo*>(incidence))->isCompleted()) ) { if ( mBackgroundColor == KOPrefs::instance()->mEventColor ) - mBackgroundColor =KOPrefs::instance()->mTodoDoneColor; + mBackgroundColor = KOPrefs::instance()->mTodoDoneColor; } } @@ -202,5 +202,5 @@ bool KOAgendaItem::updateIcons(QPainter * p, bool horLayout) ++yOff; } - if (mIncidence->isAlarmEnabled()) { + if (mIncidence->isAlarmEnabled() && mIncidence->alarmEnabled()) { p->fillRect ( xOff*( 1 +AGENDA_ICON_SIZE )+x, yOff*( 1 +AGENDA_ICON_SIZE)+y, AGENDA_ICON_SIZE, AGENDA_ICON_SIZE, red ); if ( horLayout ) diff --git a/korganizer/kofilterview.cpp b/korganizer/kofilterview.cpp index 29a4393..2b16347 100644 --- a/korganizer/kofilterview.cpp +++ b/korganizer/kofilterview.cpp @@ -159,4 +159,5 @@ void KOCalEditView::selectCal(int id ,bool b) KOPrefs::instance()->getCalendar( id )->isEnabled = b; emit calendarEnabled ( id, b ); + emit needsUpdate(); } @@ -200,4 +201,5 @@ void KOCalEditView::selectCalAlarm(int id ,bool b ) KOPrefs::instance()->getCalendar( id )->isAlarmEnabled = b; emit alarmEnabled ( id , b ); + emit needsUpdate(); } void KOCalEditView::selectReadOnly(int id ,bool b ) @@ -205,4 +207,5 @@ void KOCalEditView::selectReadOnly(int id ,bool b ) KOPrefs::instance()->getCalendar( id )->isReadOnly = b; emit calendarReadonly ( id , b ); + emit needsUpdate(); } @@ -210,4 +213,5 @@ void KOCalEditView::setColor( const QColor& c, int id ) { KOPrefs::instance()->getCalendar( id )->mDefaultColor = c; + emit needsUpdate(); } void KOCalEditView::deleteCal( int id ) diff --git a/korganizer/kofilterview.h b/korganizer/kofilterview.h index aaf0eb6..4a0cd8a 100644 --- a/korganizer/kofilterview.h +++ b/korganizer/kofilterview.h @@ -139,4 +139,5 @@ class KOCalEditView : public QWidget void removeCalendar ( int cal ); void calendarAdded( int ); + void needsUpdate(); private: diff --git a/korganizer/komonthview.cpp b/korganizer/komonthview.cpp index c868270..96f2502 100644 --- a/korganizer/komonthview.cpp +++ b/korganizer/komonthview.cpp @@ -749,5 +749,5 @@ int MonthViewCell::insertEvent(Event *event) item->setPalette( pal ); item->setRecur( event->recurrence()->doesRecur() ); - item->setAlarm( event->isAlarmEnabled() && multiday < 2 ); + item->setAlarm( event->isAlarmEnabled() && multiday < 2 && event->alarmEnabled() ); item->setMoreInfo( event->description().length() > 0 ); #ifdef DESKTOP_VERSION @@ -830,5 +830,5 @@ void MonthViewCell::insertTodo(Todo *todo) item->setPalette( pal ); item->setRecur( todo->recurrence()->doesRecur() ); - item->setAlarm( todo->isAlarmEnabled() ); + item->setAlarm( todo->isAlarmEnabled() && todo->alarmEnabled() ); item->setMoreInfo( todo->description().length() > 0 ); insertItem( item , count()); diff --git a/korganizer/kotodoview.cpp b/korganizer/kotodoview.cpp index 2602487..35c2a9f 100644 --- a/korganizer/kotodoview.cpp +++ b/korganizer/kotodoview.cpp @@ -702,8 +702,8 @@ void KOTodoView::updateView() // qDebug("todo %s ", todo->summary().latin1()); Incidence *incidence = todo->relatedTo(); - while ( incidence ) { + while ( incidence ) { if ( incidence->typeID() == todoID ) { //qDebug("related %s ",incidence->summary().latin1() ); - if ( !(todoList.contains ( ((Todo* )incidence ) ) )) { + if ( !(todoList.contains ( ((Todo* )incidence ) ) ) && incidence->calEnabled() ) { //qDebug("related not found "); todoList.remove( ); @@ -837,32 +837,34 @@ void KOTodoView::restoreItemState( QListViewItem *item ) QMap<Todo *,KOTodoViewItem *>::ConstIterator - KOTodoView::insertTodoItem(Todo *todo) +KOTodoView::insertTodoItem(Todo *todo) { -// kdDebug() << "KOTodoView::insertTodoItem(): " << todo->getSummary() << endl; - // TODO: Check, if dynmaic cast is necessary + // kdDebug() << "KOTodoView::insertTodoItem(): " << todo->getSummary() << endl; + // TODO: Check, if dynmaic cast is necessary pendingSubtodo = 0; - Incidence *incidence = todo->relatedTo(); - if (incidence && incidence->typeID() == todoID ) { - Todo *relatedTodo = static_cast<Todo *>(incidence); - -// kdDebug() << " has Related" << endl; - QMap<Todo *,KOTodoViewItem *>::ConstIterator itemIterator; - itemIterator = mTodoMap.find(relatedTodo); - if (itemIterator == mTodoMap.end()) { -// kdDebug() << " related not yet in list" << endl; - itemIterator = insertTodoItem (relatedTodo); + Incidence *incidence = todo->relatedTo(); + while ( incidence && !incidence->calEnabled() ) + incidence = incidence->relatedTo(); + if (incidence && incidence->typeID() == todoID ) { + Todo *relatedTodo = static_cast<Todo *>(incidence); + + // kdDebug() << " has Related" << endl; + QMap<Todo *,KOTodoViewItem *>::ConstIterator itemIterator; + itemIterator = mTodoMap.find(relatedTodo); + if (itemIterator == mTodoMap.end()) { + // kdDebug() << " related not yet in list" << endl; + itemIterator = insertTodoItem (relatedTodo); + } + // isn't this pretty stupid? We give one Todo to the KOTodoViewItem + // and one into the map. Sure finding is more easy but why? -zecke + KOTodoViewItem *todoItem = new KOTodoViewItem(*itemIterator,todo,this); + return mTodoMap.insert(todo,todoItem); + } else { + // kdDebug() << " no Related" << endl; + // see above -zecke + KOTodoViewItem *todoItem = new KOTodoViewItem(mTodoListView,todo,this); + return mTodoMap.insert(todo,todoItem); } - // isn't this pretty stupid? We give one Todo to the KOTodoViewItem - // and one into the map. Sure finding is more easy but why? -zecke - KOTodoViewItem *todoItem = new KOTodoViewItem(*itemIterator,todo,this); - return mTodoMap.insert(todo,todoItem); - } else { -// kdDebug() << " no Related" << endl; - // see above -zecke - KOTodoViewItem *todoItem = new KOTodoViewItem(mTodoListView,todo,this); - return mTodoMap.insert(todo,todoItem); - } } diff --git a/korganizer/kotodoviewitem.cpp b/korganizer/kotodoviewitem.cpp index 8cb6b83..f987b63 100644 --- a/korganizer/kotodoviewitem.cpp +++ b/korganizer/kotodoviewitem.cpp @@ -196,5 +196,5 @@ void KOTodoViewItem::setMyPixmap() pixSize += size; } - if ( mTodo->isAlarmEnabled() ) { + if ( mTodo->isAlarmEnabled() && mTodo->alarmEnabled()) { pixi.resize(size, pixSize+size); pPix.fill( Qt::red ); diff --git a/korganizer/kowhatsnextview.cpp b/korganizer/kowhatsnextview.cpp index e8574a0..221debc 100644 --- a/korganizer/kowhatsnextview.cpp +++ b/korganizer/kowhatsnextview.cpp @@ -596,5 +596,5 @@ bool KOWhatsNextView::appendEvent(Incidence *ev, bool reply, bool notRed, bool a } - if ( ev->isAlarmEnabled() ) { + if ( ev->isAlarmEnabled() && ev->alarmEnabled()) { if ( !needClose) tempText +="["; @@ -670,5 +670,5 @@ bool KOWhatsNextView::appendTodo(Incidence *ev, QString ind , bool isSub ) } - if ( ev->isAlarmEnabled() ) { + if ( ev->isAlarmEnabled() && ev->alarmEnabled() ) { if ( !needClose) mText +="["; |