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
@@ -16,25 +16,25 @@
** 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;
@@ -61,25 +61,25 @@ int AbLabel::currentEntry_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()
@@ -99,26 +99,32 @@ void AbLabel::keyPressEvent( QKeyEvent *e )
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
@@ -24,41 +24,41 @@
#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