00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef VCARDLINE_H
00022 #define VCARDLINE_H
00023
00024 #include <QtCore/QMap>
00025 #include <QtCore/QString>
00026 #include <QtCore/QStringList>
00027 #include <QtCore/QVariant>
00028
00029 namespace KABC {
00030
00031 class VCardLine
00032 {
00033 public:
00034 typedef QList<VCardLine> List;
00035 typedef QMap<QString, QStringList> ParamMap;
00036
00037 VCardLine();
00038 VCardLine( const QString &identifier );
00039 VCardLine( const QString &identifier, const QVariant &value );
00040 VCardLine( const VCardLine &line );
00041
00042 ~VCardLine();
00043
00044 VCardLine &operator=( const VCardLine &line );
00045
00051 void setIdentifier( const QString &identifier );
00052
00056 QString identifier() const;
00057
00061 void setValue( const QVariant &value );
00062
00066 QVariant value() const;
00067
00071 void setGroup( const QString &group );
00072
00076 QString group() const;
00077
00081 bool hasGroup() const;
00082
00086 QStringList parameterList() const;
00087
00094 void addParameter( const QString ¶m, const QString &value );
00095
00102 QStringList parameters( const QString ¶m ) const;
00103
00110 QString parameter( const QString ¶m ) const;
00111
00112 private:
00113 ParamMap mParamMap;
00114 QString mIdentifier;
00115 QString mGroup;
00116 QVariant mValue;
00117
00118 class VCardLinePrivate;
00119 VCardLinePrivate *d;
00120 };
00121
00122 }
00123
00124 #endif