-rw-r--r-- | korganizer/searchdialog.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/korganizer/searchdialog.cpp b/korganizer/searchdialog.cpp index 0e9f64c..72359df 100644 --- a/korganizer/searchdialog.cpp +++ b/korganizer/searchdialog.cpp | |||
@@ -209,24 +209,27 @@ void SearchDialog::raiseAndSelect() | |||
209 | else if ( KOPrefs::instance()->mCurrentDisplayedView == VIEW_T_VIEW ) { | 209 | else if ( KOPrefs::instance()->mCurrentDisplayedView == VIEW_T_VIEW ) { |
210 | newState = VIEW_T_VIEW; | 210 | newState = VIEW_T_VIEW; |
211 | } | 211 | } |
212 | else { | 212 | else { |
213 | newState = VIEW_A_VIEW; | 213 | newState = VIEW_A_VIEW; |
214 | } | 214 | } |
215 | if ( newState != currentState ) { | 215 | if ( newState != currentState ) { |
216 | if ( KOPrefs::instance()->mCurrentDisplayedView == VIEW_J_VIEW ) { | 216 | if ( KOPrefs::instance()->mCurrentDisplayedView == VIEW_J_VIEW ) { |
217 | if ( ! mSearchJournal->isChecked() ) { | 217 | if ( ! mSearchJournal->isChecked() ) { |
218 | mSearchJournal->setChecked( true ); | 218 | mSearchJournal->setChecked( true ); |
219 | mSearchTodo->setChecked( false ); | 219 | mSearchTodo->setChecked( false ); |
220 | mSearchEvent->setChecked( false ); | 220 | mSearchEvent->setChecked( false ); |
221 | mSummaryCheck->setChecked( true ); | ||
222 | mDescriptionCheck->setChecked( true ); | ||
223 | |||
221 | } | 224 | } |
222 | } | 225 | } |
223 | else if ( KOPrefs::instance()->mCurrentDisplayedView == VIEW_T_VIEW ) { | 226 | else if ( KOPrefs::instance()->mCurrentDisplayedView == VIEW_T_VIEW ) { |
224 | if ( ! mSearchTodo->isChecked() ) { | 227 | if ( ! mSearchTodo->isChecked() ) { |
225 | mSearchTodo->setChecked( true ); | 228 | mSearchTodo->setChecked( true ); |
226 | mSearchJournal->setChecked( false ); | 229 | mSearchJournal->setChecked( false ); |
227 | mSearchEvent->setChecked( false ); | 230 | mSearchEvent->setChecked( false ); |
228 | } | 231 | } |
229 | } | 232 | } |
230 | else { | 233 | else { |
231 | if ( ! mSearchEvent->isChecked() ) { | 234 | if ( ! mSearchEvent->isChecked() ) { |
232 | mSearchEvent->setChecked( true ); | 235 | mSearchEvent->setChecked( true ); |
@@ -541,37 +544,53 @@ void SearchDialog::search(const QRegExp &re) | |||
541 | QPtrList<Journal> journals; | 544 | QPtrList<Journal> journals; |
542 | if ( !mAddItems->isChecked() && !mSubItems->isChecked() ) { | 545 | if ( !mAddItems->isChecked() && !mSubItems->isChecked() ) { |
543 | if ( mRefineItems->isChecked() ) journals = mMatchedJournals ; | 546 | if ( mRefineItems->isChecked() ) journals = mMatchedJournals ; |
544 | mMatchedJournals.clear(); | 547 | mMatchedJournals.clear(); |
545 | } | 548 | } |
546 | if (mSearchJournal->isChecked() ) { | 549 | if (mSearchJournal->isChecked() ) { |
547 | if ( ! mRefineItems->isChecked() ) journals = mCalendar->journals(); | 550 | if ( ! mRefineItems->isChecked() ) journals = mCalendar->journals(); |
548 | Journal* journ; | 551 | Journal* journ; |
549 | 552 | ||
550 | for(journ=journals.first();journ;journ=journals.next()) { | 553 | for(journ=journals.first();journ;journ=journals.next()) { |
551 | if ( journ->dtStart().date() <= mEndDate->date() | 554 | if ( journ->dtStart().date() <= mEndDate->date() |
552 | &&journ->dtStart().date() >= mStartDate->date()) { | 555 | &&journ->dtStart().date() >= mStartDate->date()) { |
556 | if (mDescriptionCheck->isChecked()) { | ||
553 | #if QT_VERSION >= 0x030000 | 557 | #if QT_VERSION >= 0x030000 |
554 | if (re.search(journ->description()) != -1) | 558 | if (re.search(journ->description()) != -1) |
555 | #else | 559 | #else |
556 | if (re.match(journ->description()) != -1) | 560 | if (re.match(journ->description()) != -1) |
557 | #endif | 561 | #endif |
558 | { | 562 | { |
559 | if ( mSubItems->isChecked() ) | 563 | if ( mSubItems->isChecked() ) |
560 | mMatchedJournals.remove(journ); | 564 | mMatchedJournals.remove(journ); |
561 | else if (!mMatchedJournals.contains( journ )) | 565 | else if (!mMatchedJournals.contains( journ )) |
562 | mMatchedJournals.append(journ); | 566 | mMatchedJournals.append(journ); |
563 | continue; | 567 | continue; |
564 | } | 568 | } |
565 | } | 569 | } |
570 | if (mSummaryCheck->isChecked()) { | ||
571 | #if QT_VERSION >= 0x030000 | ||
572 | if (re.search(journ->summary()) != -1) | ||
573 | #else | ||
574 | if (re.match(journ->summary()) != -1) | ||
575 | #endif | ||
576 | { | ||
577 | if ( mSubItems->isChecked() ) | ||
578 | mMatchedJournals.remove(journ); | ||
579 | else if (!mMatchedJournals.contains( journ )) | ||
580 | mMatchedJournals.append(journ); | ||
581 | continue; | ||
582 | } | ||
583 | } | ||
584 | } | ||
566 | } | 585 | } |
567 | } | 586 | } |
568 | if ( mMatchedEvents.count() + mMatchedJournals.count() + mMatchedTodos.count() < 1 ) { | 587 | if ( mMatchedEvents.count() + mMatchedJournals.count() + mMatchedTodos.count() < 1 ) { |
569 | qDebug("count %d ", mMatchedEvents.count() + mMatchedJournals.count() + mMatchedTodos.count() ); | 588 | qDebug("count %d ", mMatchedEvents.count() + mMatchedJournals.count() + mMatchedTodos.count() ); |
570 | if ( mRefineItems->isChecked() ) | 589 | if ( mRefineItems->isChecked() ) |
571 | mRefineItems->setChecked( false ); | 590 | mRefineItems->setChecked( false ); |
572 | else if ( mSubItems->isChecked() ) | 591 | else if ( mSubItems->isChecked() ) |
573 | mSubItems->setChecked( false ); | 592 | mSubItems->setChecked( false ); |
574 | } | 593 | } |
575 | } | 594 | } |
576 | 595 | ||
577 | void SearchDialog::keyPressEvent ( QKeyEvent *e) | 596 | void SearchDialog::keyPressEvent ( QKeyEvent *e) |