summaryrefslogtreecommitdiff
path: root/core/pim/addressbook/abview.cpp
Side-by-side diff
Diffstat (limited to 'core/pim/addressbook/abview.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/addressbook/abview.cpp24
1 files changed, 20 insertions, 4 deletions
diff --git a/core/pim/addressbook/abview.cpp b/core/pim/addressbook/abview.cpp
index d3ca783..664bd3f 100644
--- a/core/pim/addressbook/abview.cpp
+++ b/core/pim/addressbook/abview.cpp
@@ -13,24 +13,26 @@
**
**
**********************************************************************/
#include "abview.h"
#include <qlayout.h>
#include <qpe/global.h>
#include <opie/ocontactaccessbackend_vcard.h>
+#include <assert.h>
+
// Is defined in LibQPE
extern QString categoryFileName();
QString addressbookPersonalVCardName()
{
QString filename = Global::applicationFileName("addressbook",
"businesscard.vcf");
return filename;
}
@@ -151,25 +153,25 @@ void AbView::load()
// Letter Search is stopped at this place
emit signalClearLetterPicker();
if ( m_inPersonal )
// VCard Backend does not sort..
m_list = m_contactdb->allRecords();
else{
m_list = m_contactdb->sorted( true, 0, 0, 0 );
clearForCategory();
}
- // qWarning ("Number of contacts: %d", m_list.count());
+ qWarning ("Number of contacts: %d", m_list.count());
updateView( true );
}
void AbView::reload()
{
// qWarning( "void AbView::reload()" );
m_contactdb->reload();
load();
}
@@ -209,39 +211,53 @@ void AbView::setShowToView( Views view )
// qWarning ("Change the View (Category is: %d)", m_curr_category);
if ( m_curr_View != view ){
m_prev_View = m_curr_View;
m_curr_View = view;
updateView();
}
}
-void AbView::setShowByLetter( char c )
+void AbView::setShowByLetter( char c, AbConfig::LPSearchMode mode )
{
- // qWarning("void AbView::setShowByLetter( %c )", c );
+ qWarning("void AbView::setShowByLetter( %c, %d )", c, mode );
+
+ assert( mode < AbConfig::LASTELEMENT );
+
OContact query;
if ( c == 0 ){
load();
return;
}else{
// If the current Backend is unable to solve the query, we will
// ignore the request ..
if ( ! m_contactdb->hasQuerySettings( OContactAccess::WildCards | OContactAccess::IgnoreCase ) ){
return;
}
- query.setLastName( QString("%1*").arg(c) );
+ switch( mode ){
+ case AbConfig::LastName:
+ query.setLastName( QString("%1*").arg(c) );
+ break;
+ case AbConfig::FullName:
+ query.setFileAs( QString("%1*").arg(c) );
+ break;
+ default:
+ qWarning( "Unknown Searchmode for AbView::setShowByLetter ! -> %d", mode );
+ qWarning( "I will ignore it.." );
+ return;
+ }
m_list = m_contactdb->queryByExample( query, OContactAccess::WildCards | OContactAccess::IgnoreCase );
clearForCategory();
m_curr_Contact = 0;
}
updateView( true );
}
void AbView::setListOrder( const QValueList<int>& ordered )
{
m_orderedFields = ordered;
if ( m_abTable ){
m_abTable->setOrderedList( ordered );