summaryrefslogtreecommitdiffabout
authorzautrix <zautrix>2005-04-08 11:36:36 (UTC)
committer zautrix <zautrix>2005-04-08 11:36:36 (UTC)
commitba04f6a4b6b651dcff11ca17103cba42330e52be (patch) (unidiff)
treec8c02a1327abbd87cf5f019399e8e7bf1940a2bc
parent59fb8a0ac35bf3b81f1c4e2e4fc6b61356d064ef (diff)
downloadkdepimpi-ba04f6a4b6b651dcff11ca17103cba42330e52be.zip
kdepimpi-ba04f6a4b6b651dcff11ca17103cba42330e52be.tar.gz
kdepimpi-ba04f6a4b6b651dcff11ca17103cba42330e52be.tar.bz2
fix
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/kotodoview.cpp21
-rw-r--r--korganizer/kotodoview.h2
2 files changed, 17 insertions, 6 deletions
diff --git a/korganizer/kotodoview.cpp b/korganizer/kotodoview.cpp
index 395325c..935a5f5 100644
--- a/korganizer/kotodoview.cpp
+++ b/korganizer/kotodoview.cpp
@@ -702,104 +702,115 @@ void KOTodoView::updateView()
702 } 702 }
703 } else 703 } else
704 incidence = 0; 704 incidence = 0;
705 } 705 }
706 if ( next ) 706 if ( next )
707 todo = todoList.next(); 707 todo = todoList.next();
708 } 708 }
709// qDebug("again .... "); 709// qDebug("again .... ");
710// for(todo = todoList.first(); todo; todo = todoList.next()) { 710// for(todo = todoList.first(); todo; todo = todoList.next()) {
711 711
712// qDebug("yytodo %s ", todo->summary().latin1()); 712// qDebug("yytodo %s ", todo->summary().latin1());
713// } 713// }
714 //qDebug("for "); 714 //qDebug("for ");
715 for(todo = todoList.first(); todo; todo = todoList.next()) { 715 for(todo = todoList.first(); todo; todo = todoList.next()) {
716 if (!mTodoMap.contains(todo) && checkTodo( todo ) ) 716 if (!mTodoMap.contains(todo) && checkTodo( todo ) )
717 { 717 {
718 insertTodoItem(todo); 718 insertTodoItem(todo);
719 } 719 }
720 } 720 }
721 //qDebug("for end "); 721 //qDebug("for end ");
722 // Restore opened/closed state 722 // Restore opened/closed state
723 mTodoListView->blockSignals( true ); 723 mTodoListView->blockSignals( true );
724 if( mDocPrefs ) restoreItemState( mTodoListView->firstChild() ); 724 if( mDocPrefs ) restoreItemState( mTodoListView->firstChild() );
725 mTodoListView->blockSignals( false ); 725 mTodoListView->blockSignals( false );
726 resetCurrentItem(); 726 resetCurrentItem();
727 processSelectionChange(); 727 processSelectionChange();
728} 728}
729 729
730void KOTodoView::storeCurrentItem() 730void KOTodoView::storeCurrentItem()
731{ 731{
732 mCurItem = 0; 732 mCurItem = 0;
733 mCurItemRootParent = 0; 733 mCurItemRootParent = 0;
734 mCurItemParent = 0;
734 mCurItemAbove = 0; 735 mCurItemAbove = 0;
735 mActiveItem = (KOTodoViewItem*)mTodoListView->currentItem(); 736 mActiveItem = (KOTodoViewItem*)mTodoListView->currentItem();
736 if (mActiveItem) { 737 if (mActiveItem) {
737 mCurItem = mActiveItem->todo(); 738 mCurItem = mActiveItem->todo();
738 KOTodoViewItem* activeItemAbove = (KOTodoViewItem*)mActiveItem->itemAbove (); 739 KOTodoViewItem* activeItemAbove = (KOTodoViewItem*)mActiveItem->itemAbove ();
739 if ( activeItemAbove ) 740 if ( activeItemAbove )
740 mCurItemAbove = activeItemAbove->todo(); 741 mCurItemAbove = activeItemAbove->todo();
741 mCurItemRootParent = mCurItem; 742 mCurItemRootParent = mCurItem;
743 mCurItemParent = mCurItemRootParent->relatedTo();
742 while ( mCurItemRootParent->relatedTo() != 0 ) 744 while ( mCurItemRootParent->relatedTo() != 0 )
743 mCurItemRootParent = mCurItemRootParent->relatedTo(); 745 mCurItemRootParent = mCurItemRootParent->relatedTo();
744 } 746 }
745 mActiveItem = 0; 747 mActiveItem = 0;
746} 748}
747 749
748void KOTodoView::resetCurrentItem() 750void KOTodoView::resetCurrentItem()
749{ 751{
750 mTodoListView->setFocus(); 752 mTodoListView->setFocus();
751 KOTodoViewItem* foundItem = 0; 753 KOTodoViewItem* foundItem = 0;
752 KOTodoViewItem* foundItemRoot = 0; 754 KOTodoViewItem* foundItemRoot = 0;
755 KOTodoViewItem* foundItemParent = 0;
753 KOTodoViewItem* foundItemAbove = 0; 756 KOTodoViewItem* foundItemAbove = 0;
754 if ( mTodoListView->firstChild () ) { 757 if ( mTodoListView->firstChild () ) {
755 if ( mCurItem ) { 758 if ( mCurItem ) {
756 KOTodoViewItem* item = (KOTodoViewItem*)mTodoListView->firstChild (); 759 KOTodoViewItem* item = (KOTodoViewItem*)mTodoListView->firstChild ();
757 while ( item ) { 760 while ( item ) {
758 if ( item->todo() == mCurItem ) { 761 if ( item->todo() == mCurItem ) {
759 foundItem = item; 762 foundItem = item;
760 break; 763 break;
761 } else if ( item->todo() == mCurItemAbove ) { 764 } else if ( item->todo() == mCurItemAbove ) {
762 foundItemAbove = item; 765 foundItemAbove = item;
763 766
764 } else if ( item->todo() == mCurItemRootParent ) { 767 }
768 if ( item->todo() == mCurItemRootParent ) {
765 foundItemRoot = item; 769 foundItemRoot = item;
766 } 770 }
771 if ( item->todo() == mCurItemParent ) {
772 foundItemParent = item;
773 }
767 item = (KOTodoViewItem*)item->itemBelow(); 774 item = (KOTodoViewItem*)item->itemBelow();
768 } 775 }
769 if ( ! foundItem ) { 776 if ( ! foundItem ) {
770 if ( foundItemRoot ) 777 if ( foundItemParent ) {
771 foundItem = foundItemRoot; 778 foundItem = foundItemParent;
772 else 779 } else {
773 foundItem = foundItemAbove; 780 if ( foundItemRoot )
781 foundItem = foundItemRoot;
782 else
783 foundItem = foundItemAbove;
784 }
774 } 785 }
775 } 786 }
776 if ( foundItem ) { 787 if ( foundItem ) {
777 mTodoListView->setCurrentItem( foundItem ); 788 mTodoListView->setCurrentItem( foundItem );
778 mTodoListView->ensureItemVisible( foundItem ); 789 mTodoListView->ensureItemVisible( foundItem );
779 } else { 790 } else {
780 mTodoListView->setCurrentItem( mTodoListView->firstChild () ); 791 mTodoListView->setCurrentItem( mTodoListView->firstChild () );
781 } 792 }
782 } 793 }
783 mTodoListView->setFocus(); 794 mTodoListView->setFocus();
784} 795}
785//Incidence * mCurItem, *mCurItemRootParent,*mCurItemAbove; 796//Incidence * mCurItem, *mCurItemRootParent,*mCurItemAbove;
786bool KOTodoView::checkTodo( Todo * todo ) 797bool KOTodoView::checkTodo( Todo * todo )
787{ 798{
788 799
789 if ( !KOPrefs::instance()->mShowCompletedTodo && todo->isCompleted() ) 800 if ( !KOPrefs::instance()->mShowCompletedTodo && todo->isCompleted() )
790 return false; 801 return false;
791 if ( !todo->isCompleted() ) { 802 if ( !todo->isCompleted() ) {
792 if ( todo->hasDueDate() && todo->dtDue().date() <= QDate::currentDate() ) 803 if ( todo->hasDueDate() && todo->dtDue().date() <= QDate::currentDate() )
793 return true; 804 return true;
794 } 805 }
795 if ( KOPrefs::instance()->mHideNonStartedTodos && mNavigator ) { 806 if ( KOPrefs::instance()->mHideNonStartedTodos && mNavigator ) {
796 if ( todo->hasStartDate() ) 807 if ( todo->hasStartDate() )
797 if ( mNavigator->selectedDates().last() < todo->dtStart().date() ) 808 if ( mNavigator->selectedDates().last() < todo->dtStart().date() )
798 return false; 809 return false;
799 if ( todo->hasDueDate() ) 810 if ( todo->hasDueDate() )
800 if ( mNavigator->selectedDates().first() > todo->dtDue().date() ) 811 if ( mNavigator->selectedDates().first() > todo->dtDue().date() )
801 return false; 812 return false;
802 } 813 }
803 return true; 814 return true;
804} 815}
805 816
diff --git a/korganizer/kotodoview.h b/korganizer/kotodoview.h
index 39976cf..d0788a9 100644
--- a/korganizer/kotodoview.h
+++ b/korganizer/kotodoview.h
@@ -228,36 +228,36 @@ class KOTodoView : public KOrg::BaseView
228 bool mPendingUpdateBeforeRepaint; 228 bool mPendingUpdateBeforeRepaint;
229 friend class KOTodoViewItem; 229 friend class KOTodoViewItem;
230 QMap<Todo *,KOTodoViewItem *>::ConstIterator insertTodoItem(Todo *todo); 230 QMap<Todo *,KOTodoViewItem *>::ConstIterator insertTodoItem(Todo *todo);
231 void restoreItemState( QListViewItem * ); 231 void restoreItemState( QListViewItem * );
232 232
233 bool checkTodo( Todo * ); 233 bool checkTodo( Todo * );
234 bool isFlatDisplay; 234 bool isFlatDisplay;
235 void setOpen( QListViewItem*, bool setOpen); 235 void setOpen( QListViewItem*, bool setOpen);
236 KOTodoListView *mTodoListView; 236 KOTodoListView *mTodoListView;
237 QPopupMenu *mItemPopupMenu; 237 QPopupMenu *mItemPopupMenu;
238 QPopupMenu *mPopupMenu; 238 QPopupMenu *mPopupMenu;
239 QPopupMenu *mPriorityPopupMenu; 239 QPopupMenu *mPriorityPopupMenu;
240 QPopupMenu *mPercentageCompletedPopupMenu; 240 QPopupMenu *mPercentageCompletedPopupMenu;
241 QPopupMenu *mCategoryPopupMenu; 241 QPopupMenu *mCategoryPopupMenu;
242 242
243 QMap<int, int> mPercentage; 243 QMap<int, int> mPercentage;
244 QMap<int, int> mPriority; 244 QMap<int, int> mPriority;
245 QMap<int, QString> mCategory; 245 QMap<int, QString> mCategory;
246 KOTodoViewItem *mActiveItem; 246 KOTodoViewItem *mActiveItem;
247 247
248 QMap<Todo *,KOTodoViewItem *> mTodoMap; 248 QMap<Todo *,KOTodoViewItem *> mTodoMap;
249 QString mName; 249 QString mName;
250 250
251 DocPrefs *mDocPrefs; 251 DocPrefs *mDocPrefs;
252 QString mCurrentDoc; 252 QString mCurrentDoc;
253 KOQuickTodo *mQuickAdd; 253 KOQuickTodo *mQuickAdd;
254 bool mBlockUpdate; 254 bool mBlockUpdate;
255 void keyPressEvent ( QKeyEvent * ) ; 255 void keyPressEvent ( QKeyEvent * ) ;
256 KOTodoViewItem * pendingSubtodo; 256 KOTodoViewItem * pendingSubtodo;
257 DateNavigator* mNavigator; 257 DateNavigator* mNavigator;
258 void storeCurrentItem(); 258 void storeCurrentItem();
259 void resetCurrentItem(); 259 void resetCurrentItem();
260 Incidence * mCurItem, *mCurItemRootParent,*mCurItemAbove; 260 Incidence * mCurItem, *mCurItemRootParent, *mCurItemParent,*mCurItemAbove;
261}; 261};
262 262
263#endif 263#endif