kabc Library API Documentation

addressee.h

00001 /*** Warning! This file has been generated by the script makeaddressee ***/
00002 /*
00003     This file is part of libkabc.
00004     Copyright (c) 2001 Cornelius Schumacher <schumacher@kde.org>
00005 
00006     This library is free software; you can redistribute it and/or
00007     modify it under the terms of the GNU Library General Public
00008     License as published by the Free Software Foundation; either
00009     version 2 of the License, or (at your option) any later version.
00010 
00011     This library is distributed in the hope that it will be useful,
00012     but WITHOUT ANY WARRANTY; without even the implied warranty of
00013     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014     Library General Public License for more details.
00015 
00016     You should have received a copy of the GNU Library General Public License
00017     along with this library; see the file COPYING.LIB.  If not, write to
00018     the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
00019     Boston, MA 02111-1307, USA.
00020 */
00021 
00022 #ifndef KABC_ADDRESSEE_H
00023 #define KABC_ADDRESSEE_H
00024 
00025 #include <qdatetime.h>
00026 #include <qstring.h>
00027 #include <qstringlist.h>
00028 #include <qvaluelist.h>
00029 
00030 #include <ksharedptr.h>
00031 #include <kurl.h>
00032 
00033 #include "address.h"
00034 #include "agent.h"
00035 #include "geo.h"
00036 #include "key.h"
00037 #include "phonenumber.h"
00038 #include "picture.h"
00039 #include "secrecy.h"
00040 #include "sound.h"
00041 #include "timezone.h"
00042 
00043 namespace KABC {
00044 
00045 class Resource;
00046 
00073 class Addressee
00074 {
00075     friend QDataStream &operator<<( QDataStream &, const Addressee & );
00076     friend QDataStream &operator>>( QDataStream &, Addressee & );
00077 
00078   public:
00079     typedef QValueList<Addressee> List;
00080 
00084     Addressee();
00085     ~Addressee();
00086 
00087     Addressee( const Addressee & );
00088     Addressee &operator=( const Addressee & );
00089 
00090     bool operator==( const Addressee & ) const;
00091     bool operator!=( const Addressee & ) const;
00092 
00096     bool isEmpty() const;
00097 
00101     void setUid( const QString &uid );
00105     QString uid() const;
00109     static QString uidLabel();
00110 
00114     void setName( const QString &name );
00118     QString name() const;
00122     static QString nameLabel();
00123 
00127     void setFormattedName( const QString &formattedName );
00131     QString formattedName() const;
00135     static QString formattedNameLabel();
00136 
00140     void setFamilyName( const QString &familyName );
00144     QString familyName() const;
00148     static QString familyNameLabel();
00149 
00153     void setGivenName( const QString &givenName );
00157     QString givenName() const;
00161     static QString givenNameLabel();
00162 
00166     void setAdditionalName( const QString &additionalName );
00170     QString additionalName() const;
00174     static QString additionalNameLabel();
00175 
00179     void setPrefix( const QString &prefix );
00183     QString prefix() const;
00187     static QString prefixLabel();
00188 
00192     void setSuffix( const QString &suffix );
00196     QString suffix() const;
00200     static QString suffixLabel();
00201 
00205     void setNickName( const QString &nickName );
00209     QString nickName() const;
00213     static QString nickNameLabel();
00214 
00218     void setBirthday( const QDateTime &birthday );
00222     QDateTime birthday() const;
00226     static QString birthdayLabel();
00227 
00231     static QString homeAddressStreetLabel();
00232 
00236     static QString homeAddressLocalityLabel();
00237 
00241     static QString homeAddressRegionLabel();
00242 
00246     static QString homeAddressPostalCodeLabel();
00247 
00251     static QString homeAddressCountryLabel();
00252 
00256     static QString homeAddressLabelLabel();
00257 
00261     static QString businessAddressStreetLabel();
00262 
00266     static QString businessAddressLocalityLabel();
00267 
00271     static QString businessAddressRegionLabel();
00272 
00276     static QString businessAddressPostalCodeLabel();
00277 
00281     static QString businessAddressCountryLabel();
00282 
00286     static QString businessAddressLabelLabel();
00287 
00291     static QString homePhoneLabel();
00292 
00296     static QString businessPhoneLabel();
00297 
00301     static QString mobilePhoneLabel();
00302 
00306     static QString homeFaxLabel();
00307 
00311     static QString businessFaxLabel();
00312 
00316     static QString carPhoneLabel();
00317 
00321     static QString isdnLabel();
00322 
00326     static QString pagerLabel();
00327 
00331     static QString emailLabel();
00332 
00336     void setMailer( const QString &mailer );
00340     QString mailer() const;
00344     static QString mailerLabel();
00345 
00349     void setTimeZone( const TimeZone &timeZone );
00353     TimeZone timeZone() const;
00357     static QString timeZoneLabel();
00358 
00362     void setGeo( const Geo &geo );
00366     Geo geo() const;
00370     static QString geoLabel();
00371 
00375     void setTitle( const QString &title );
00379     QString title() const;
00383     static QString titleLabel();
00384 
00388     void setRole( const QString &role );
00392     QString role() const;
00396     static QString roleLabel();
00397 
00401     void setOrganization( const QString &organization );
00405     QString organization() const;
00409     static QString organizationLabel();
00410 
00414     void setNote( const QString &note );
00418     QString note() const;
00422     static QString noteLabel();
00423 
00427     void setProductId( const QString &productId );
00431     QString productId() const;
00435     static QString productIdLabel();
00436 
00440     void setRevision( const QDateTime &revision );
00444     QDateTime revision() const;
00448     static QString revisionLabel();
00449 
00453     void setSortString( const QString &sortString );
00457     QString sortString() const;
00461     static QString sortStringLabel();
00462 
00466     void setUrl( const KURL &url );
00470     KURL url() const;
00474     static QString urlLabel();
00475 
00479     void setSecrecy( const Secrecy &secrecy );
00483     Secrecy secrecy() const;
00487     static QString secrecyLabel();
00488 
00492     void setLogo( const Picture &logo );
00496     Picture logo() const;
00500     static QString logoLabel();
00501 
00505     void setPhoto( const Picture &photo );
00509     Picture photo() const;
00513     static QString photoLabel();
00514 
00518     void setSound( const Sound &sound );
00522     Sound sound() const;
00526     static QString soundLabel();
00527 
00531     void setAgent( const Agent &agent );
00535     Agent agent() const;
00539     static QString agentLabel();
00540 
00546     void setNameFromString( const QString & );
00547 
00552     QString realName() const;
00553 
00557     QString assembledName() const;
00558     
00565     QString fullEmail( const QString &email=QString::null ) const;
00566     
00575     void insertEmail( const QString &email, bool preferred=false );
00576 
00580     void removeEmail( const QString &email );
00581 
00586     QString preferredEmail() const;
00587 
00591     QStringList emails() const;
00592     
00597     void insertPhoneNumber( const PhoneNumber &phoneNumber );
00598 
00603     void removePhoneNumber( const PhoneNumber &phoneNumber );
00604 
00608     PhoneNumber phoneNumber( int type ) const;
00609 
00613     PhoneNumber::List phoneNumbers() const;
00614 
00618     PhoneNumber::List phoneNumbers( int type ) const;
00619 
00623     PhoneNumber findPhoneNumber( const QString &id ) const;
00624 
00629     void insertKey( const Key &key );
00630 
00635     void removeKey( const Key &key );
00636 
00643     Key key( int type, QString customTypeString = QString::null ) const;
00644 
00648     Key::List keys() const;
00649 
00656     Key::List keys( int type, QString customTypeString = QString::null  ) const;
00657 
00661     Key findKey( const QString &id ) const;
00662     
00667     void insertAddress( const Address &address );
00668 
00673     void removeAddress( const Address &address );
00674 
00678     Address address( int type ) const;
00679 
00683     Address::List addresses() const;
00684 
00688     Address::List addresses( int type ) const;
00689     
00693     Address findAddress( const QString &id ) const;
00694 
00698     void insertCategory( const QString & );
00699 
00703     void removeCategory( const QString & );
00704 
00708     bool hasCategory( const QString & ) const;
00709 
00713     void setCategories( const QStringList & );
00714 
00718     QStringList categories() const;
00719 
00725     void insertCustom( const QString &app, const QString &name,
00726                        const QString &value );
00727 
00731     void removeCustom( const QString &app, const QString &name );
00732 
00736     QString custom( const QString &app, const QString &name ) const;
00737 
00741     void setCustoms( const QStringList & );
00742 
00746     QStringList customs() const;
00747 
00751     static void parseEmailAddress( const QString &rawEmail, QString &fullName,
00752                                    QString &email );
00753 
00757     void dump() const;
00758 
00762     QString asString() const;
00763 
00767     void setResource( Resource *resource );
00768 
00772     Resource *resource() const;
00773   
00777     void setChanged( bool value );
00778 
00782       bool changed() const;
00783 
00784   private:
00785     Addressee copy();
00786     void detach();
00787 
00788     struct AddresseeData;
00789     KSharedPtr<AddresseeData> mData;
00790 };
00791 
00792 QDataStream &operator<<( QDataStream &, const Addressee & );
00793 QDataStream &operator>>( QDataStream &, Addressee & );
00794 
00795 }
00796 
00797 #endif
KDE Logo
This file is part of the documentation for kdelibs Version 3.1.0.
Documentation copyright © 1996-2002 the KDE developers.
Generated on Wed Oct 8 12:22:07 2003 by doxygen 1.2.18 written by Dimitri van Heesch, © 1997-2001