summaryrefslogtreecommitdiff
authoreilers <eilers>2005-03-18 16:06:14 (UTC)
committer eilers <eilers>2005-03-18 16:06:14 (UTC)
commite8df4b3938c8f97aa958708a56794797f16b24c7 (patch) (side-by-side diff)
tree1e70153934960abc8e493a4da506021cf535e2d0
parentb37f4395889351829e295d6fd1b4535ad3a67728 (diff)
downloadopie-e8df4b3938c8f97aa958708a56794797f16b24c7.zip
opie-e8df4b3938c8f97aa958708a56794797f16b24c7.tar.gz
opie-e8df4b3938c8f97aa958708a56794797f16b24c7.tar.bz2
Fixing problem with categories: "unfiled" and "all" show the same list.
Previous patch removed correct use of the pim backend. Therefore I had reimplemented it.
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/addressbook/abview.cpp20
1 files changed, 15 insertions, 5 deletions
diff --git a/core/pim/addressbook/abview.cpp b/core/pim/addressbook/abview.cpp
index 34035fd..8a2db96 100644
--- a/core/pim/addressbook/abview.cpp
+++ b/core/pim/addressbook/abview.cpp
@@ -148,29 +148,39 @@ bool AbView::save()
// odebug << "AbView::Save data" << oendl;
return m_contactdb->save();
}
void AbView::load()
{
odebug << "AbView::Load data" << oendl;
// Letter Search is stopped at this place
emit signalClearLetterPicker();
- m_list = m_contactdb->sorted( true, Opie::OPimContactAccess::SortFileAsName,
- Opie::OPimContactAccess::FilterCategory, m_curr_category );
-
-// if ( m_curr_category != -1 )
-// clearForCategory();
+ odebug << "selected Category: " << m_curr_category << oendl;
+
+ if ( m_curr_category == -1 ) {
+ // Show just unfiled contacts
+ m_list = m_contactdb->sorted( true, Opie::OPimContactAccess::SortFileAsName,
+ Opie::OPimContactAccess::DoNotShowWithCategory, 0 );
+ } else if ( m_curr_category == 0 ){
+ // Just show all contacts
+ m_list = m_contactdb->sorted( true, Opie::OPimContactAccess::SortFileAsName,
+ Opie::OPimBase::FilterOff, 0 );
+ } else {
+ // Show contacts with given categories
+ m_list = m_contactdb->sorted( true, Opie::OPimContactAccess::SortFileAsName,
+ Opie::OPimBase::FilterCategory, m_curr_category );
+ }
odebug << "Number of contacts: " << m_list.count() << oendl;
updateView( true );
}
void AbView::reload()
{
odebug << "AbView::::reload()" << oendl;
m_contactdb->reload();