author | eilers <eilers> | 2005-03-19 16:23:16 (UTC) |
---|---|---|
committer | eilers <eilers> | 2005-03-19 16:23:16 (UTC) |
commit | ea15abad0554edab0746f342fafddd461a0fb0eb (patch) (side-by-side diff) | |
tree | d645b3d8655bab11f9685f1989a854b21468e1d5 | |
parent | 34e42590a8ef21c1377f89c7b82f25bcf0aec3cb (diff) | |
download | opie-ea15abad0554edab0746f342fafddd461a0fb0eb.zip opie-ea15abad0554edab0746f342fafddd461a0fb0eb.tar.gz opie-ea15abad0554edab0746f342fafddd461a0fb0eb.tar.bz2 |
Minor update for generic sorted(): It will now ignory any categories if filter "DoNotShowCategories" is used..
-rw-r--r-- | libopie2/opiepim/ChangeLog | 2 | ||||
-rw-r--r-- | libopie2/opiepim/backend/ocontactaccessbackend.cpp | 41 |
2 files changed, 22 insertions, 21 deletions
diff --git a/libopie2/opiepim/ChangeLog b/libopie2/opiepim/ChangeLog index 52b3f6b..a1b4db0 100644 --- a/libopie2/opiepim/ChangeLog +++ b/libopie2/opiepim/ChangeLog @@ -1,12 +1,14 @@ +2005-03.19 Stefan Eilers <stefan@eilers-online.net> + * Minor update for sorted(). Now ignoring any category search if "DoNotShowWithCategory" filter is activated. 2005-03-18 Stefan Eilers <stefan@eilers-online.net> * Rewrote generic sorted filter and added filter for "DoNotShowWithCategory", needed by addressbook (other filters need to be added!) 2005-01-16 Stefan Eilers <stefan@eilers-online.net> * Added new OPimEventSortVector class, improved OPimSortVector * OPimAccessBackend now supports generic sorting. 2005-01-03 Stefan Eilers <stefan@eilers-online.net> * Fixing bug in API documentation * Moving hasQuerySettings() and querySettings() to OPimAccessTemplate to be available for all frontends 2004-12-28 Stefan Eilers <stefan@eilers-online.net> * Make improved query by example accessable via frontend * Some API documentation improvement * Cleanup of backend api.. diff --git a/libopie2/opiepim/backend/ocontactaccessbackend.cpp b/libopie2/opiepim/backend/ocontactaccessbackend.cpp index 6ac9934..e942905 100644 --- a/libopie2/opiepim/backend/ocontactaccessbackend.cpp +++ b/libopie2/opiepim/backend/ocontactaccessbackend.cpp @@ -247,49 +247,48 @@ UIDArray OPimContactAccessBackend::sorted( const UIDArray& ar, bool asc, int sor uint cat_count = categories.count(); uint eve_count = ar.count(); bool contactPassed = false; int cat; for ( uint i = 0; i < eve_count; ++i ) { OPimContact contact = find( ar[i], ar, i, Frontend::Forward ); if ( contact.isEmpty() ) continue; contactPassed = true; - // Filter all Contacts which have any category if ( (filter & OPimContactAccess::DoNotShowWithCategory) ? true : false ){ if ( !contact.categories().isEmpty() ) continue; + } else { + + if ( (filter & OPimContactAccess::FilterCategory) ? true : false ){ + /* show category */ + /* -1 == unfiled */ + for ( uint cat_nu = 0; cat_nu < cat_count; ++cat_nu ) { + cat = categories[cat_nu]; + + if ( cat == -1 ) { + // We should search unfiled contacts. + // Unfiled categories have no category set, thus continue if + // this contact has no empty category. + if( !contact.categories().isEmpty() ) + contactPassed = false; + } else if ( cat != 0 ) + if ( !contact.categories().contains( cat ) ) + contactPassed = false; + } + + } } - - /* show category */ - /* -1 == unfiled */ - for ( uint cat_nu = 0; cat_nu < cat_count; ++cat_nu ) { - cat = categories[cat_nu]; - - if ( (filter & OPimContactAccess::FilterCategory) ? true : false ){ - if ( cat == -1 ) { - // We should search unfiled contacts. - // Unfiled categories have no category set, thus continue if - // this contact has no empty category. - if( !contact.categories().isEmpty() ) - contactPassed = false; - } else if ( cat != 0 ) - if ( !contact.categories().contains( cat ) ) - contactPassed = false; - } - - } - /* * If none of the Categories matched * continue */ if ( !contactPassed ) continue; vector.insert(item++, contact ); } vector.resize( item ); /* sort it now */ |