summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--core/pim/addressbook/ablabel.cpp12
-rw-r--r--core/pim/addressbook/ablabel.h8
2 files changed, 13 insertions, 7 deletions
diff --git a/core/pim/addressbook/ablabel.cpp b/core/pim/addressbook/ablabel.cpp
index 1139bd7..80b57ae 100644
--- a/core/pim/addressbook/ablabel.cpp
+++ b/core/pim/addressbook/ablabel.cpp
@@ -12,33 +12,33 @@
** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
**
** See http://www.trolltech.com/gpl/ for GPL licensing information.
**
** Contact info@trolltech.com if any conditions of this licensing are
** not clear to you.
**
**********************************************************************/
#include "ablabel.h"
#include <qpe/stringutil.h>
#include <qregexp.h>
#include <qstylesheet.h>
-AbLabel::AbLabel( QWidget *parent, const char *name ):
+AbLabel::AbLabel( QWidget *parent, const char *name ):
QTextView( parent, name ),
m_empty( false )
{
}
AbLabel::~AbLabel()
{
}
void AbLabel::setContacts( const OContactAccess::List& viewList )
{
m_viewList = viewList;
if (m_viewList.count() != 0){
m_empty = false;
m_itCurContact = m_viewList.begin();
sync();
@@ -57,33 +57,33 @@ int AbLabel::currentEntry_UID()
return 0;
else
return ( contact.uid() );
}
OContact AbLabel::currentEntry()
{
if ( ! m_empty )
return ( *m_itCurContact );
else
return OContact();
}
bool AbLabel::selectContact( int UID )
{
-
+
for ( m_itCurContact = m_viewList.begin(); m_itCurContact != m_viewList.end(); ++m_itCurContact){
if ( (*m_itCurContact).uid() == UID )
break;
}
sync();
return true;
}
void AbLabel::sync()
{
QString text = (*m_itCurContact).toRichText();
setText( text );
}
@@ -95,30 +95,36 @@ void AbLabel::keyPressEvent( QKeyEvent *e )
switch( e->key() ) {
case Qt::Key_Left:
qWarning( "Left..");
case Qt::Key_Right:
qWarning( "Right..");
case Qt::Key_F33:
qWarning( "OK..");
emit signalOkPressed();
break;
case Qt::Key_Up:
qWarning( "UP..");
--m_itCurContact;
if ( *m_itCurContact != OContact() )
sync();
else
m_itCurContact = m_viewList.end();
-
+
break;
case Qt::Key_Down:
qWarning( "DOWN..");
++m_itCurContact;
if ( *m_itCurContact != OContact() )
sync();
else
m_itCurContact = m_viewList.begin();
break;
+ case Qt::Key_Return: // fall through
+ case Qt::Key_Space: // fall through
+ case Qt::Key_Enter: // we want to switch back
+ emit signalOkPressed();
+ break;
+ default: break;
}
}
}
diff --git a/core/pim/addressbook/ablabel.h b/core/pim/addressbook/ablabel.h
index b1e35de..80336dc 100644
--- a/core/pim/addressbook/ablabel.h
+++ b/core/pim/addressbook/ablabel.h
@@ -20,45 +20,45 @@
#ifndef ABLABEL_H
#define ABLABEL_H
#include <opie/ocontact.h>
#include <qtextview.h>
#include <opie/ocontactaccess.h>
class AbLabel : public QTextView
{
Q_OBJECT
public:
AbLabel( QWidget *parent, const char *name = 0 );
~AbLabel();
- // Set the contacts
+ // Set the contacts
void setContacts( const OContactAccess::List& viewList );
- // Selects a contact
+ // Selects a contact
bool selectContact( int UID );
// Get the UID of the current selected Entry
int currentEntry_UID();
//
OContact currentEntry();
signals:
void signalOkPressed();
-
+
protected:
void sync();
void keyPressEvent( QKeyEvent * );
-
+
private:
OContactAccess::List m_viewList;
OContactAccess::List::Iterator m_itCurContact;
bool m_empty;
};
#endif // ABLABEL_H