kabc
vcard.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef VCARDPARSER_VCARD_H
00022 #define VCARDPARSER_VCARD_H
00023
00024 #include <QtCore/QMap>
00025 #include <QtCore/QStringList>
00026
00027 #include "vcardline.h"
00028
00029 namespace KABC {
00030
00031 class VCard
00032 {
00033 public:
00034 typedef QList<VCard> List;
00035 typedef QMap<QString, VCardLine::List> LineMap;
00036
00037 enum Version {
00038 v2_1,
00039 v3_0
00040 };
00041
00042 VCard();
00043 VCard( const VCard &card );
00044
00045 ~VCard();
00046
00047 VCard &operator=( const VCard &card );
00048
00052 void clear();
00053
00057 QStringList identifiers() const;
00058
00062 void addLine( const VCardLine &line );
00063
00067 VCardLine::List lines( const QString &identifier ) const;
00068
00072 VCardLine line( const QString &identifier ) const;
00073
00077 void setVersion( Version version );
00078
00082 Version version() const;
00083
00084 private:
00085 LineMap mLineMap;
00086
00087 class VCardPrivate;
00088 VCardPrivate *d;
00089 };
00090
00091 }
00092
00093 #endif