summaryrefslogtreecommitdiff
authorzecke <zecke>2003-02-11 17:42:27 (UTC)
committer zecke <zecke>2003-02-11 17:42:27 (UTC)
commitf84b2b2bced083c3664099d5ae99e4732388812e (patch) (unidiff)
treea99ad30fad007e6817d7da5dd69957d6a6825e99
parentef4af5cbc3efd768e3ce9ca05e12e54a566d0ab1 (diff)
downloadopie-f84b2b2bced083c3664099d5ae99e4732388812e.zip
opie-f84b2b2bced083c3664099d5ae99e4732388812e.tar.gz
opie-f84b2b2bced083c3664099d5ae99e4732388812e.tar.bz2
implement the wish from 0000639
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
@@ -1,124 +1,130 @@
1/********************************************************************** 1/**********************************************************************
2** Copyright (C) 2000 Trolltech AS. All rights reserved. 2** Copyright (C) 2000 Trolltech AS. All rights reserved.
3** 3**
4** This file is part of Qt Palmtop Environment. 4** This file is part of Qt Palmtop Environment.
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information. 14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15** 15**
16** Contact info@trolltech.com if any conditions of this licensing are 16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you. 17** not clear to you.
18** 18**
19**********************************************************************/ 19**********************************************************************/
20 20
21#include "ablabel.h" 21#include "ablabel.h"
22 22
23#include <qpe/stringutil.h> 23#include <qpe/stringutil.h>
24 24
25#include <qregexp.h> 25#include <qregexp.h>
26#include <qstylesheet.h> 26#include <qstylesheet.h>
27 27
28AbLabel::AbLabel( QWidget *parent, const char *name ): 28AbLabel::AbLabel( QWidget *parent, const char *name ):
29 QTextView( parent, name ), 29 QTextView( parent, name ),
30 m_empty( false ) 30 m_empty( false )
31{ 31{
32} 32}
33 33
34AbLabel::~AbLabel() 34AbLabel::~AbLabel()
35{ 35{
36} 36}
37 37
38void AbLabel::setContacts( const OContactAccess::List& viewList ) 38void AbLabel::setContacts( const OContactAccess::List& viewList )
39{ 39{
40 m_viewList = viewList; 40 m_viewList = viewList;
41 if (m_viewList.count() != 0){ 41 if (m_viewList.count() != 0){
42 m_empty = false; 42 m_empty = false;
43 m_itCurContact = m_viewList.begin(); 43 m_itCurContact = m_viewList.begin();
44 sync(); 44 sync();
45 }else{ 45 }else{
46 // m_itCurContact.clear(); 46 // m_itCurContact.clear();
47 m_empty = true; 47 m_empty = true;
48 setText( "" ); 48 setText( "" );
49 } 49 }
50} 50}
51 51
52int AbLabel::currentEntry_UID() 52int AbLabel::currentEntry_UID()
53{ 53{
54 OContact contact = currentEntry(); 54 OContact contact = currentEntry();
55 55
56 if ( contact.isEmpty() ) 56 if ( contact.isEmpty() )
57 return 0; 57 return 0;
58 else 58 else
59 return ( contact.uid() ); 59 return ( contact.uid() );
60} 60}
61 61
62OContact AbLabel::currentEntry() 62OContact AbLabel::currentEntry()
63{ 63{
64 if ( ! m_empty ) 64 if ( ! m_empty )
65 return ( *m_itCurContact ); 65 return ( *m_itCurContact );
66 else 66 else
67 return OContact(); 67 return OContact();
68} 68}
69 69
70 70
71bool AbLabel::selectContact( int UID ) 71bool AbLabel::selectContact( int UID )
72{ 72{
73 73
74 for ( m_itCurContact = m_viewList.begin(); m_itCurContact != m_viewList.end(); ++m_itCurContact){ 74 for ( m_itCurContact = m_viewList.begin(); m_itCurContact != m_viewList.end(); ++m_itCurContact){
75 if ( (*m_itCurContact).uid() == UID ) 75 if ( (*m_itCurContact).uid() == UID )
76 break; 76 break;
77 } 77 }
78 sync(); 78 sync();
79 79
80 return true; 80 return true;
81} 81}
82 82
83 83
84 84
85void AbLabel::sync() 85void AbLabel::sync()
86{ 86{
87 QString text = (*m_itCurContact).toRichText(); 87 QString text = (*m_itCurContact).toRichText();
88 setText( text ); 88 setText( text );
89} 89}
90 90
91void AbLabel::keyPressEvent( QKeyEvent *e ) 91void AbLabel::keyPressEvent( QKeyEvent *e )
92{ 92{
93 // Commonly handled keys 93 // Commonly handled keys
94 if ( !m_empty ){ 94 if ( !m_empty ){
95 switch( e->key() ) { 95 switch( e->key() ) {
96 case Qt::Key_Left: 96 case Qt::Key_Left:
97 qWarning( "Left.."); 97 qWarning( "Left..");
98 case Qt::Key_Right: 98 case Qt::Key_Right:
99 qWarning( "Right.."); 99 qWarning( "Right..");
100 case Qt::Key_F33: 100 case Qt::Key_F33:
101 qWarning( "OK.."); 101 qWarning( "OK..");
102 emit signalOkPressed(); 102 emit signalOkPressed();
103 break; 103 break;
104 case Qt::Key_Up: 104 case Qt::Key_Up:
105 qWarning( "UP.."); 105 qWarning( "UP..");
106 --m_itCurContact; 106 --m_itCurContact;
107 if ( *m_itCurContact != OContact() ) 107 if ( *m_itCurContact != OContact() )
108 sync(); 108 sync();
109 else 109 else
110 m_itCurContact = m_viewList.end(); 110 m_itCurContact = m_viewList.end();
111 111
112 break; 112 break;
113 case Qt::Key_Down: 113 case Qt::Key_Down:
114 qWarning( "DOWN.."); 114 qWarning( "DOWN..");
115 ++m_itCurContact; 115 ++m_itCurContact;
116 if ( *m_itCurContact != OContact() ) 116 if ( *m_itCurContact != OContact() )
117 sync(); 117 sync();
118 else 118 else
119 m_itCurContact = m_viewList.begin(); 119 m_itCurContact = m_viewList.begin();
120 break; 120 break;
121 case Qt::Key_Return: // fall through
122 case Qt::Key_Space: // fall through
123 case Qt::Key_Enter: // we want to switch back
124 emit signalOkPressed();
125 break;
126 default: break;
121 } 127 }
122 } 128 }
123 129
124} 130}
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
@@ -1,64 +1,64 @@
1/********************************************************************** 1/**********************************************************************
2** Copyright (C) 2000 Trolltech AS. All rights reserved. 2** Copyright (C) 2000 Trolltech AS. All rights reserved.
3** 3**
4** This file is part of Qt Palmtop Environment. 4** This file is part of Qt Palmtop Environment.
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14** See http://www.trolltech.com/gpl/ for GPL licensing information. 14** See http://www.trolltech.com/gpl/ for GPL licensing information.
15** 15**
16** Contact info@trolltech.com if any conditions of this licensing are 16** Contact info@trolltech.com if any conditions of this licensing are
17** not clear to you. 17** not clear to you.
18** 18**
19**********************************************************************/ 19**********************************************************************/
20#ifndef ABLABEL_H 20#ifndef ABLABEL_H
21#define ABLABEL_H 21#define ABLABEL_H
22 22
23#include <opie/ocontact.h> 23#include <opie/ocontact.h>
24#include <qtextview.h> 24#include <qtextview.h>
25 25
26#include <opie/ocontactaccess.h> 26#include <opie/ocontactaccess.h>
27 27
28class AbLabel : public QTextView 28class AbLabel : public QTextView
29{ 29{
30 Q_OBJECT 30 Q_OBJECT
31 31
32public: 32public:
33 AbLabel( QWidget *parent, const char *name = 0 ); 33 AbLabel( QWidget *parent, const char *name = 0 );
34 ~AbLabel(); 34 ~AbLabel();
35 35
36 // Set the contacts 36 // Set the contacts
37 void setContacts( const OContactAccess::List& viewList ); 37 void setContacts( const OContactAccess::List& viewList );
38 38
39 // Selects a contact 39 // Selects a contact
40 bool selectContact( int UID ); 40 bool selectContact( int UID );
41 41
42 // Get the UID of the current selected Entry 42 // Get the UID of the current selected Entry
43 int currentEntry_UID(); 43 int currentEntry_UID();
44 44
45 // 45 //
46 OContact currentEntry(); 46 OContact currentEntry();
47 47
48signals: 48signals:
49 void signalOkPressed(); 49 void signalOkPressed();
50 50
51protected: 51protected:
52 void sync(); 52 void sync();
53 void keyPressEvent( QKeyEvent * ); 53 void keyPressEvent( QKeyEvent * );
54 54
55private: 55private:
56 OContactAccess::List m_viewList; 56 OContactAccess::List m_viewList;
57 OContactAccess::List::Iterator m_itCurContact; 57 OContactAccess::List::Iterator m_itCurContact;
58 58
59 bool m_empty; 59 bool m_empty;
60 60
61}; 61};
62 62
63#endif // ABLABEL_H 63#endif // ABLABEL_H
64 64