summaryrefslogtreecommitdiff
authortille <tille>2003-05-14 14:19:22 (UTC)
committer tille <tille>2003-05-14 14:19:22 (UTC)
commit3c4a67b8b8d3fb554c5259f9f5ca35c5c826b13c (patch) (unidiff)
tree2d2ab90c571dfa51bb65116d4df0134b65750084
parent79fdef27944117811eb1ef51c45a0a630b85a9ad (diff)
downloadopie-3c4a67b8b8d3fb554c5259f9f5ca35c5c826b13c.zip
opie-3c4a67b8b8d3fb554c5259f9f5ca35c5c826b13c.tar.gz
opie-3c4a67b8b8d3fb554c5259f9f5ca35c5c826b13c.tar.bz2
get the field where the hit was
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--libopie/pim/ocontact.cpp1
-rw-r--r--libopie/pim/ocontact.h5
-rw-r--r--libopie2/opiepim/ocontact.cpp1
-rw-r--r--libopie2/opiepim/ocontact.h5
4 files changed, 10 insertions, 2 deletions
diff --git a/libopie/pim/ocontact.cpp b/libopie/pim/ocontact.cpp
index a38b62b..aeb69ee 100644
--- a/libopie/pim/ocontact.cpp
+++ b/libopie/pim/ocontact.cpp
@@ -897,128 +897,129 @@ QStringList OContact::fields()
897 list.append( "BusinessCity" ); 897 list.append( "BusinessCity" );
898 list.append( "BusinessState" ); 898 list.append( "BusinessState" );
899 list.append( "BusinessZip" ); 899 list.append( "BusinessZip" );
900 list.append( "BusinessCountry" ); 900 list.append( "BusinessCountry" );
901 list.append( "BusinessPager" ); 901 list.append( "BusinessPager" );
902 list.append( "BusinessWebPage" ); 902 list.append( "BusinessWebPage" );
903 903
904 list.append( "Office" ); 904 list.append( "Office" );
905 list.append( "Profession" ); 905 list.append( "Profession" );
906 list.append( "Assistant" ); 906 list.append( "Assistant" );
907 list.append( "Manager" ); 907 list.append( "Manager" );
908 908
909 list.append( "HomeStreet" ); 909 list.append( "HomeStreet" );
910 list.append( "HomeCity" ); 910 list.append( "HomeCity" );
911 list.append( "HomeState" ); 911 list.append( "HomeState" );
912 list.append( "HomeZip" ); 912 list.append( "HomeZip" );
913 list.append( "HomeCountry" ); 913 list.append( "HomeCountry" );
914 list.append( "HomeWebPage" ); 914 list.append( "HomeWebPage" );
915 915
916 list.append( "Spouse" ); 916 list.append( "Spouse" );
917 list.append( "Gender" ); 917 list.append( "Gender" );
918 list.append( "Birthday" ); 918 list.append( "Birthday" );
919 list.append( "Anniversary" ); 919 list.append( "Anniversary" );
920 list.append( "Nickname" ); 920 list.append( "Nickname" );
921 list.append( "Children" ); 921 list.append( "Children" );
922 922
923 list.append( "Notes" ); 923 list.append( "Notes" );
924 list.append( "Groups" ); 924 list.append( "Groups" );
925 925
926 return list; 926 return list;
927} 927}
928 928
929 929
930/*! 930/*!
931 Sets the list of email address for contact to those contained in \a str. 931 Sets the list of email address for contact to those contained in \a str.
932 Email address should be separated by ';'s. 932 Email address should be separated by ';'s.
933*/ 933*/
934void OContact::setEmails( const QString &str ) 934void OContact::setEmails( const QString &str )
935{ 935{
936 replace( Qtopia::Emails, str ); 936 replace( Qtopia::Emails, str );
937 if ( str.isEmpty() ) 937 if ( str.isEmpty() )
938 setDefaultEmail( QString::null ); 938 setDefaultEmail( QString::null );
939} 939}
940 940
941/*! 941/*!
942 Sets the list of children for the contact to those contained in \a str. 942 Sets the list of children for the contact to those contained in \a str.
943*/ 943*/
944void OContact::setChildren( const QString &str ) 944void OContact::setChildren( const QString &str )
945{ 945{
946 replace( Qtopia::Children, str ); 946 replace( Qtopia::Children, str );
947} 947}
948 948
949/*! 949/*!
950 \overload 950 \overload
951 Returns TRUE if the contact matches the regular expression \a regexp. 951 Returns TRUE if the contact matches the regular expression \a regexp.
952 Otherwise returns FALSE. 952 Otherwise returns FALSE.
953*/ 953*/
954bool OContact::match( const QRegExp &r ) const 954bool OContact::match( const QRegExp &r ) const
955{ 955{
956 bool match; 956 bool match;
957 match = false; 957 match = false;
958 QMap<int, QString>::ConstIterator it; 958 QMap<int, QString>::ConstIterator it;
959 for ( it = mMap.begin(); it != mMap.end(); ++it ) { 959 for ( it = mMap.begin(); it != mMap.end(); ++it ) {
960 if ( (*it).find( r ) > -1 ) { 960 if ( (*it).find( r ) > -1 ) {
961 setLastHitField( it.key() );
961 match = true; 962 match = true;
962 break; 963 break;
963 } 964 }
964 } 965 }
965 return match; 966 return match;
966} 967}
967 968
968 969
969QString OContact::toShortText() const 970QString OContact::toShortText() const
970{ 971{
971 return ( fullName() ); 972 return ( fullName() );
972} 973}
973QString OContact::type() const 974QString OContact::type() const
974{ 975{
975 return QString::fromLatin1( "OContact" ); 976 return QString::fromLatin1( "OContact" );
976} 977}
977 978
978// Definition is missing ! (se) 979// Definition is missing ! (se)
979QMap<QString,QString> OContact::toExtraMap() const 980QMap<QString,QString> OContact::toExtraMap() const
980{ 981{
981 qWarning ("Function not implemented: OContact::toExtraMap()"); 982 qWarning ("Function not implemented: OContact::toExtraMap()");
982 QMap <QString,QString> useless; 983 QMap <QString,QString> useless;
983 return useless; 984 return useless;
984} 985}
985 986
986class QString OContact::recordField( int pos ) const 987class QString OContact::recordField( int pos ) const
987{ 988{
988 QStringList SLFIELDS = fields(); // ?? why this ? (se) 989 QStringList SLFIELDS = fields(); // ?? why this ? (se)
989 return SLFIELDS[pos]; 990 return SLFIELDS[pos];
990} 991}
991 992
992// In future releases, we should store birthday and anniversary 993// In future releases, we should store birthday and anniversary
993// internally as QDate instead of QString ! 994// internally as QDate instead of QString !
994// QString is always too complicate to interprete (DD.MM.YY, DD/MM/YY, MM/DD/YY, etc..)(se) 995// QString is always too complicate to interprete (DD.MM.YY, DD/MM/YY, MM/DD/YY, etc..)(se)
995 996
996/*! \fn void OContact::setBirthday( const QDate& date ) 997/*! \fn void OContact::setBirthday( const QDate& date )
997 Sets the birthday for the contact to \a date. If date is null 998 Sets the birthday for the contact to \a date. If date is null
998 the current stored date will be removed. 999 the current stored date will be removed.
999*/ 1000*/
1000void OContact::setBirthday( const QDate &v ) 1001void OContact::setBirthday( const QDate &v )
1001{ 1002{
1002 if ( v.isNull() ){ 1003 if ( v.isNull() ){
1003 qWarning( "Remove Birthday"); 1004 qWarning( "Remove Birthday");
1004 replace( Qtopia::Birthday, QString::null ); 1005 replace( Qtopia::Birthday, QString::null );
1005 return; 1006 return;
1006 } 1007 }
1007 1008
1008 if ( v.isValid() ) 1009 if ( v.isValid() )
1009 replace( Qtopia::Birthday, OConversion::dateToString( v ) ); 1010 replace( Qtopia::Birthday, OConversion::dateToString( v ) );
1010 1011
1011} 1012}
1012 1013
1013 1014
1014/*! \fn void OContact::setAnniversary( const QDate &date ) 1015/*! \fn void OContact::setAnniversary( const QDate &date )
1015 Sets the anniversary of the contact to \a date. If date is 1016 Sets the anniversary of the contact to \a date. If date is
1016 null, the current stored date will be removed. 1017 null, the current stored date will be removed.
1017*/ 1018*/
1018void OContact::setAnniversary( const QDate &v ) 1019void OContact::setAnniversary( const QDate &v )
1019{ 1020{
1020 if ( v.isNull() ){ 1021 if ( v.isNull() ){
1021 qWarning( "Remove Anniversary"); 1022 qWarning( "Remove Anniversary");
1022 replace( Qtopia::Anniversary, QString::null ); 1023 replace( Qtopia::Anniversary, QString::null );
1023 return; 1024 return;
1024 } 1025 }
diff --git a/libopie/pim/ocontact.h b/libopie/pim/ocontact.h
index 0e6cbd2..f79f0f3 100644
--- a/libopie/pim/ocontact.h
+++ b/libopie/pim/ocontact.h
@@ -153,89 +153,92 @@ public:
153 QString displayHomeAddress() const; 153 QString displayHomeAddress() const;
154 154
155 // business 155 // business
156 QString company() const { return find( Qtopia::Company ); } 156 QString company() const { return find( Qtopia::Company ); }
157 QString businessStreet() const { return find( Qtopia::BusinessStreet ); } 157 QString businessStreet() const { return find( Qtopia::BusinessStreet ); }
158 QString businessCity() const { return find( Qtopia::BusinessCity ); } 158 QString businessCity() const { return find( Qtopia::BusinessCity ); }
159 QString businessState() const { return find( Qtopia::BusinessState ); } 159 QString businessState() const { return find( Qtopia::BusinessState ); }
160 QString businessZip() const { return find( Qtopia::BusinessZip ); } 160 QString businessZip() const { return find( Qtopia::BusinessZip ); }
161 QString businessCountry() const { return find( Qtopia::BusinessCountry ); } 161 QString businessCountry() const { return find( Qtopia::BusinessCountry ); }
162 QString businessWebpage() const { return find( Qtopia::BusinessWebPage ); } 162 QString businessWebpage() const { return find( Qtopia::BusinessWebPage ); }
163 QString jobTitle() const { return find( Qtopia::JobTitle ); } 163 QString jobTitle() const { return find( Qtopia::JobTitle ); }
164 QString department() const { return find( Qtopia::Department ); } 164 QString department() const { return find( Qtopia::Department ); }
165 QString office() const { return find( Qtopia::Office ); } 165 QString office() const { return find( Qtopia::Office ); }
166 QString businessPhone() const { return find( Qtopia::BusinessPhone ); } 166 QString businessPhone() const { return find( Qtopia::BusinessPhone ); }
167 QString businessFax() const { return find( Qtopia::BusinessFax ); } 167 QString businessFax() const { return find( Qtopia::BusinessFax ); }
168 QString businessMobile() const { return find( Qtopia::BusinessMobile ); } 168 QString businessMobile() const { return find( Qtopia::BusinessMobile ); }
169 QString businessPager() const { return find( Qtopia::BusinessPager ); } 169 QString businessPager() const { return find( Qtopia::BusinessPager ); }
170 QString profession() const { return find( Qtopia::Profession ); } 170 QString profession() const { return find( Qtopia::Profession ); }
171 QString assistant() const { return find( Qtopia::Assistant ); } 171 QString assistant() const { return find( Qtopia::Assistant ); }
172 QString manager() const { return find( Qtopia::Manager ); } 172 QString manager() const { return find( Qtopia::Manager ); }
173 /** Multi line string containing all non-empty address info in the form 173 /** Multi line string containing all non-empty address info in the form
174 * Street 174 * Street
175 * City, State Zip 175 * City, State Zip
176 * Country 176 * Country
177 */ 177 */
178 QString displayBusinessAddress() const; 178 QString displayBusinessAddress() const;
179 179
180 //personal 180 //personal
181 QString spouse() const { return find( Qtopia::Spouse ); } 181 QString spouse() const { return find( Qtopia::Spouse ); }
182 QString gender() const { return find( Qtopia::Gender ); } 182 QString gender() const { return find( Qtopia::Gender ); }
183 QDate birthday() const; 183 QDate birthday() const;
184 QDate anniversary() const; 184 QDate anniversary() const;
185 QString nickname() const { return find( Qtopia::Nickname ); } 185 QString nickname() const { return find( Qtopia::Nickname ); }
186 QString children() const { return find( Qtopia::Children ); } 186 QString children() const { return find( Qtopia::Children ); }
187 QStringList childrenList() const; 187 QStringList childrenList() const;
188 188
189 // other 189 // other
190 QString notes() const { return find( Qtopia::Notes ); } 190 QString notes() const { return find( Qtopia::Notes ); }
191 QString groups() const { return find( Qtopia::Groups ); } 191 QString groups() const { return find( Qtopia::Groups ); }
192 QStringList groupList() const; 192 QStringList groupList() const;
193 193
194// // custom 194// // custom
195// const QString &customField( const QString &key ) 195// const QString &customField( const QString &key )
196// { return find( Custom- + key ); } 196// { return find( Custom- + key ); }
197 197
198 198
199 QString toRichText() const; 199 QString toRichText() const;
200 QMap<int, QString> toMap() const; 200 QMap<int, QString> toMap() const;
201 QString field( int key ) const { return find( key ); } 201 QString field( int key ) const { return find( key ); }
202 202
203 203
204 void setUid( int i ); 204 void setUid( int i );
205 205
206 QString toShortText()const; 206 QString toShortText()const;
207 QString OContact::type()const; 207 QString OContact::type()const;
208 QMap<QString,QString> OContact::toExtraMap() const; 208 QMap<QString,QString> OContact::toExtraMap() const;
209 class QString OContact::recordField(int) const; 209 class QString OContact::recordField(int) const;
210 210
211 // Why private ? (eilers,se) 211 // Why private ? (eilers,se)
212 QString emailSeparator() const { return " "; } 212 QString emailSeparator() const { return " "; }
213 // the emails should be seperated by a comma 213 // the emails should be seperated by a comma
214 void setEmails( const QString &v ); 214 void setEmails( const QString &v );
215 QString emails() const { return find( Qtopia::Emails ); } 215 QString emails() const { return find( Qtopia::Emails ); }
216 static int rtti(); 216 static int rtti();
217 217 int lastHitField() const {return m_lastHitField;};
218protected:
219 mutable int m_lastHitField;
220 void setLastHitField(int i) const { m_lastHitField = i; };
218 221
219private: 222private:
220 // The XML-Backend needs some access to the private functions 223 // The XML-Backend needs some access to the private functions
221 friend class OContactAccessBackend_XML; 224 friend class OContactAccessBackend_XML;
222 225
223 void insert( int key, const QString &value ); 226 void insert( int key, const QString &value );
224 void replace( int key, const QString &value ); 227 void replace( int key, const QString &value );
225 QString find( int key ) const; 228 QString find( int key ) const;
226 static QStringList fields(); 229 static QStringList fields();
227 230
228 void save( QString &buf ) const; 231 void save( QString &buf ) const;
229 232
230 QString displayAddress( const QString &street, 233 QString displayAddress( const QString &street,
231 const QString &city, 234 const QString &city,
232 const QString &state, 235 const QString &state,
233 const QString &zip, 236 const QString &zip,
234 const QString &country ) const; 237 const QString &country ) const;
235 238
236 QMap<int, QString> mMap; 239 QMap<int, QString> mMap;
237 ContactPrivate *d; 240 ContactPrivate *d;
238}; 241};
239 242
240 243
241#endif 244#endif
diff --git a/libopie2/opiepim/ocontact.cpp b/libopie2/opiepim/ocontact.cpp
index a38b62b..aeb69ee 100644
--- a/libopie2/opiepim/ocontact.cpp
+++ b/libopie2/opiepim/ocontact.cpp
@@ -897,128 +897,129 @@ QStringList OContact::fields()
897 list.append( "BusinessCity" ); 897 list.append( "BusinessCity" );
898 list.append( "BusinessState" ); 898 list.append( "BusinessState" );
899 list.append( "BusinessZip" ); 899 list.append( "BusinessZip" );
900 list.append( "BusinessCountry" ); 900 list.append( "BusinessCountry" );
901 list.append( "BusinessPager" ); 901 list.append( "BusinessPager" );
902 list.append( "BusinessWebPage" ); 902 list.append( "BusinessWebPage" );
903 903
904 list.append( "Office" ); 904 list.append( "Office" );
905 list.append( "Profession" ); 905 list.append( "Profession" );
906 list.append( "Assistant" ); 906 list.append( "Assistant" );
907 list.append( "Manager" ); 907 list.append( "Manager" );
908 908
909 list.append( "HomeStreet" ); 909 list.append( "HomeStreet" );
910 list.append( "HomeCity" ); 910 list.append( "HomeCity" );
911 list.append( "HomeState" ); 911 list.append( "HomeState" );
912 list.append( "HomeZip" ); 912 list.append( "HomeZip" );
913 list.append( "HomeCountry" ); 913 list.append( "HomeCountry" );
914 list.append( "HomeWebPage" ); 914 list.append( "HomeWebPage" );
915 915
916 list.append( "Spouse" ); 916 list.append( "Spouse" );
917 list.append( "Gender" ); 917 list.append( "Gender" );
918 list.append( "Birthday" ); 918 list.append( "Birthday" );
919 list.append( "Anniversary" ); 919 list.append( "Anniversary" );
920 list.append( "Nickname" ); 920 list.append( "Nickname" );
921 list.append( "Children" ); 921 list.append( "Children" );
922 922
923 list.append( "Notes" ); 923 list.append( "Notes" );
924 list.append( "Groups" ); 924 list.append( "Groups" );
925 925
926 return list; 926 return list;
927} 927}
928 928
929 929
930/*! 930/*!
931 Sets the list of email address for contact to those contained in \a str. 931 Sets the list of email address for contact to those contained in \a str.
932 Email address should be separated by ';'s. 932 Email address should be separated by ';'s.
933*/ 933*/
934void OContact::setEmails( const QString &str ) 934void OContact::setEmails( const QString &str )
935{ 935{
936 replace( Qtopia::Emails, str ); 936 replace( Qtopia::Emails, str );
937 if ( str.isEmpty() ) 937 if ( str.isEmpty() )
938 setDefaultEmail( QString::null ); 938 setDefaultEmail( QString::null );
939} 939}
940 940
941/*! 941/*!
942 Sets the list of children for the contact to those contained in \a str. 942 Sets the list of children for the contact to those contained in \a str.
943*/ 943*/
944void OContact::setChildren( const QString &str ) 944void OContact::setChildren( const QString &str )
945{ 945{
946 replace( Qtopia::Children, str ); 946 replace( Qtopia::Children, str );
947} 947}
948 948
949/*! 949/*!
950 \overload 950 \overload
951 Returns TRUE if the contact matches the regular expression \a regexp. 951 Returns TRUE if the contact matches the regular expression \a regexp.
952 Otherwise returns FALSE. 952 Otherwise returns FALSE.
953*/ 953*/
954bool OContact::match( const QRegExp &r ) const 954bool OContact::match( const QRegExp &r ) const
955{ 955{
956 bool match; 956 bool match;
957 match = false; 957 match = false;
958 QMap<int, QString>::ConstIterator it; 958 QMap<int, QString>::ConstIterator it;
959 for ( it = mMap.begin(); it != mMap.end(); ++it ) { 959 for ( it = mMap.begin(); it != mMap.end(); ++it ) {
960 if ( (*it).find( r ) > -1 ) { 960 if ( (*it).find( r ) > -1 ) {
961 setLastHitField( it.key() );
961 match = true; 962 match = true;
962 break; 963 break;
963 } 964 }
964 } 965 }
965 return match; 966 return match;
966} 967}
967 968
968 969
969QString OContact::toShortText() const 970QString OContact::toShortText() const
970{ 971{
971 return ( fullName() ); 972 return ( fullName() );
972} 973}
973QString OContact::type() const 974QString OContact::type() const
974{ 975{
975 return QString::fromLatin1( "OContact" ); 976 return QString::fromLatin1( "OContact" );
976} 977}
977 978
978// Definition is missing ! (se) 979// Definition is missing ! (se)
979QMap<QString,QString> OContact::toExtraMap() const 980QMap<QString,QString> OContact::toExtraMap() const
980{ 981{
981 qWarning ("Function not implemented: OContact::toExtraMap()"); 982 qWarning ("Function not implemented: OContact::toExtraMap()");
982 QMap <QString,QString> useless; 983 QMap <QString,QString> useless;
983 return useless; 984 return useless;
984} 985}
985 986
986class QString OContact::recordField( int pos ) const 987class QString OContact::recordField( int pos ) const
987{ 988{
988 QStringList SLFIELDS = fields(); // ?? why this ? (se) 989 QStringList SLFIELDS = fields(); // ?? why this ? (se)
989 return SLFIELDS[pos]; 990 return SLFIELDS[pos];
990} 991}
991 992
992// In future releases, we should store birthday and anniversary 993// In future releases, we should store birthday and anniversary
993// internally as QDate instead of QString ! 994// internally as QDate instead of QString !
994// QString is always too complicate to interprete (DD.MM.YY, DD/MM/YY, MM/DD/YY, etc..)(se) 995// QString is always too complicate to interprete (DD.MM.YY, DD/MM/YY, MM/DD/YY, etc..)(se)
995 996
996/*! \fn void OContact::setBirthday( const QDate& date ) 997/*! \fn void OContact::setBirthday( const QDate& date )
997 Sets the birthday for the contact to \a date. If date is null 998 Sets the birthday for the contact to \a date. If date is null
998 the current stored date will be removed. 999 the current stored date will be removed.
999*/ 1000*/
1000void OContact::setBirthday( const QDate &v ) 1001void OContact::setBirthday( const QDate &v )
1001{ 1002{
1002 if ( v.isNull() ){ 1003 if ( v.isNull() ){
1003 qWarning( "Remove Birthday"); 1004 qWarning( "Remove Birthday");
1004 replace( Qtopia::Birthday, QString::null ); 1005 replace( Qtopia::Birthday, QString::null );
1005 return; 1006 return;
1006 } 1007 }
1007 1008
1008 if ( v.isValid() ) 1009 if ( v.isValid() )
1009 replace( Qtopia::Birthday, OConversion::dateToString( v ) ); 1010 replace( Qtopia::Birthday, OConversion::dateToString( v ) );
1010 1011
1011} 1012}
1012 1013
1013 1014
1014/*! \fn void OContact::setAnniversary( const QDate &date ) 1015/*! \fn void OContact::setAnniversary( const QDate &date )
1015 Sets the anniversary of the contact to \a date. If date is 1016 Sets the anniversary of the contact to \a date. If date is
1016 null, the current stored date will be removed. 1017 null, the current stored date will be removed.
1017*/ 1018*/
1018void OContact::setAnniversary( const QDate &v ) 1019void OContact::setAnniversary( const QDate &v )
1019{ 1020{
1020 if ( v.isNull() ){ 1021 if ( v.isNull() ){
1021 qWarning( "Remove Anniversary"); 1022 qWarning( "Remove Anniversary");
1022 replace( Qtopia::Anniversary, QString::null ); 1023 replace( Qtopia::Anniversary, QString::null );
1023 return; 1024 return;
1024 } 1025 }
diff --git a/libopie2/opiepim/ocontact.h b/libopie2/opiepim/ocontact.h
index 0e6cbd2..f79f0f3 100644
--- a/libopie2/opiepim/ocontact.h
+++ b/libopie2/opiepim/ocontact.h
@@ -153,89 +153,92 @@ public:
153 QString displayHomeAddress() const; 153 QString displayHomeAddress() const;
154 154
155 // business 155 // business
156 QString company() const { return find( Qtopia::Company ); } 156 QString company() const { return find( Qtopia::Company ); }
157 QString businessStreet() const { return find( Qtopia::BusinessStreet ); } 157 QString businessStreet() const { return find( Qtopia::BusinessStreet ); }
158 QString businessCity() const { return find( Qtopia::BusinessCity ); } 158 QString businessCity() const { return find( Qtopia::BusinessCity ); }
159 QString businessState() const { return find( Qtopia::BusinessState ); } 159 QString businessState() const { return find( Qtopia::BusinessState ); }
160 QString businessZip() const { return find( Qtopia::BusinessZip ); } 160 QString businessZip() const { return find( Qtopia::BusinessZip ); }
161 QString businessCountry() const { return find( Qtopia::BusinessCountry ); } 161 QString businessCountry() const { return find( Qtopia::BusinessCountry ); }
162 QString businessWebpage() const { return find( Qtopia::BusinessWebPage ); } 162 QString businessWebpage() const { return find( Qtopia::BusinessWebPage ); }
163 QString jobTitle() const { return find( Qtopia::JobTitle ); } 163 QString jobTitle() const { return find( Qtopia::JobTitle ); }
164 QString department() const { return find( Qtopia::Department ); } 164 QString department() const { return find( Qtopia::Department ); }
165 QString office() const { return find( Qtopia::Office ); } 165 QString office() const { return find( Qtopia::Office ); }
166 QString businessPhone() const { return find( Qtopia::BusinessPhone ); } 166 QString businessPhone() const { return find( Qtopia::BusinessPhone ); }
167 QString businessFax() const { return find( Qtopia::BusinessFax ); } 167 QString businessFax() const { return find( Qtopia::BusinessFax ); }
168 QString businessMobile() const { return find( Qtopia::BusinessMobile ); } 168 QString businessMobile() const { return find( Qtopia::BusinessMobile ); }
169 QString businessPager() const { return find( Qtopia::BusinessPager ); } 169 QString businessPager() const { return find( Qtopia::BusinessPager ); }
170 QString profession() const { return find( Qtopia::Profession ); } 170 QString profession() const { return find( Qtopia::Profession ); }
171 QString assistant() const { return find( Qtopia::Assistant ); } 171 QString assistant() const { return find( Qtopia::Assistant ); }
172 QString manager() const { return find( Qtopia::Manager ); } 172 QString manager() const { return find( Qtopia::Manager ); }
173 /** Multi line string containing all non-empty address info in the form 173 /** Multi line string containing all non-empty address info in the form
174 * Street 174 * Street
175 * City, State Zip 175 * City, State Zip
176 * Country 176 * Country
177 */ 177 */
178 QString displayBusinessAddress() const; 178 QString displayBusinessAddress() const;
179 179
180 //personal 180 //personal
181 QString spouse() const { return find( Qtopia::Spouse ); } 181 QString spouse() const { return find( Qtopia::Spouse ); }
182 QString gender() const { return find( Qtopia::Gender ); } 182 QString gender() const { return find( Qtopia::Gender ); }
183 QDate birthday() const; 183 QDate birthday() const;
184 QDate anniversary() const; 184 QDate anniversary() const;
185 QString nickname() const { return find( Qtopia::Nickname ); } 185 QString nickname() const { return find( Qtopia::Nickname ); }
186 QString children() const { return find( Qtopia::Children ); } 186 QString children() const { return find( Qtopia::Children ); }
187 QStringList childrenList() const; 187 QStringList childrenList() const;
188 188
189 // other 189 // other
190 QString notes() const { return find( Qtopia::Notes ); } 190 QString notes() const { return find( Qtopia::Notes ); }
191 QString groups() const { return find( Qtopia::Groups ); } 191 QString groups() const { return find( Qtopia::Groups ); }
192 QStringList groupList() const; 192 QStringList groupList() const;
193 193
194// // custom 194// // custom
195// const QString &customField( const QString &key ) 195// const QString &customField( const QString &key )
196// { return find( Custom- + key ); } 196// { return find( Custom- + key ); }
197 197
198 198
199 QString toRichText() const; 199 QString toRichText() const;
200 QMap<int, QString> toMap() const; 200 QMap<int, QString> toMap() const;
201 QString field( int key ) const { return find( key ); } 201 QString field( int key ) const { return find( key ); }
202 202
203 203
204 void setUid( int i ); 204 void setUid( int i );
205 205
206 QString toShortText()const; 206 QString toShortText()const;
207 QString OContact::type()const; 207 QString OContact::type()const;
208 QMap<QString,QString> OContact::toExtraMap() const; 208 QMap<QString,QString> OContact::toExtraMap() const;
209 class QString OContact::recordField(int) const; 209 class QString OContact::recordField(int) const;
210 210
211 // Why private ? (eilers,se) 211 // Why private ? (eilers,se)
212 QString emailSeparator() const { return " "; } 212 QString emailSeparator() const { return " "; }
213 // the emails should be seperated by a comma 213 // the emails should be seperated by a comma
214 void setEmails( const QString &v ); 214 void setEmails( const QString &v );
215 QString emails() const { return find( Qtopia::Emails ); } 215 QString emails() const { return find( Qtopia::Emails ); }
216 static int rtti(); 216 static int rtti();
217 217 int lastHitField() const {return m_lastHitField;};
218protected:
219 mutable int m_lastHitField;
220 void setLastHitField(int i) const { m_lastHitField = i; };
218 221
219private: 222private:
220 // The XML-Backend needs some access to the private functions 223 // The XML-Backend needs some access to the private functions
221 friend class OContactAccessBackend_XML; 224 friend class OContactAccessBackend_XML;
222 225
223 void insert( int key, const QString &value ); 226 void insert( int key, const QString &value );
224 void replace( int key, const QString &value ); 227 void replace( int key, const QString &value );
225 QString find( int key ) const; 228 QString find( int key ) const;
226 static QStringList fields(); 229 static QStringList fields();
227 230
228 void save( QString &buf ) const; 231 void save( QString &buf ) const;
229 232
230 QString displayAddress( const QString &street, 233 QString displayAddress( const QString &street,
231 const QString &city, 234 const QString &city,
232 const QString &state, 235 const QString &state,
233 const QString &zip, 236 const QString &zip,
234 const QString &country ) const; 237 const QString &country ) const;
235 238
236 QMap<int, QString> mMap; 239 QMap<int, QString> mMap;
237 ContactPrivate *d; 240 ContactPrivate *d;
238}; 241};
239 242
240 243
241#endif 244#endif