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
@@ -128,69 +128,79 @@ void AbView::replaceEntry( const Opie::OPimContact &contact )
}
Opie::OPimContact AbView::currentEntry()
{
Opie::OPimContact currentContact;
switch ( (int) m_curr_View ) {
case TableView:
currentContact = m_abTable -> currentEntry();
break;
case CardView:
currentContact = m_ablabel -> currentEntry();
break;
}
m_curr_Contact = currentContact.uid();
return currentContact;
}
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();
load();
}
void AbView::clear()
{
// :SX
}
void AbView::setShowByCategory( const QString& cat )
{
odebug << "AbView::setShowCategory( const QString& cat )" << oendl;
int intCat = 0;
// Unfiled will be stored as -1
if ( cat == tr( "Unfiled" ) )
intCat = -1;
else if ( cat.isNull() )
intCat = 0;
else