00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
#ifndef KABC_VCARDTOOL_H
00022
#define KABC_VCARDTOOL_H
00023
00024
#include "addressee.h"
00025
#include "vcardparser.h"
00026
00027
class QDateTime;
00028
00029
namespace KABC {
00030
00031
class Agent;
00032
class Key;
00033
class Picture;
00034
class Secrecy;
00035
class Sound;
00036
00037
class KABC_EXPORT VCardTool
00038 {
00039
public:
00040 VCardTool();
00041 ~VCardTool();
00042
00047
QString createVCards( Addressee::List list, VCard::Version version = VCard::v3_0 );
00048
00052 Addressee::List parseVCards(
const QString& vcard );
00053
00054
private:
00059
QStringList splitString(
const QChar &sep,
const QString &value );
00060
00061
QDateTime parseDateTime(
const QString &str );
00062
QString createDateTime(
const QDateTime &dateTime );
00063
00064 Picture parsePicture(
const VCardLine &line );
00065 VCardLine createPicture(
const QString &identifier,
const Picture &pic );
00066
00067 Sound parseSound(
const VCardLine &line );
00068 VCardLine createSound(
const Sound &snd );
00069
00070
Key parseKey(
const VCardLine &line );
00071 VCardLine createKey(
const Key &key );
00072
00073 Secrecy parseSecrecy(
const VCardLine &line );
00074 VCardLine createSecrecy(
const Secrecy &secrecy );
00075
00076
Agent parseAgent(
const VCardLine &line );
00077 VCardLine createAgent( VCard::Version version,
const Agent &agent );
00078
00079
QMap<QString, int> mAddressTypeMap;
00080
QMap<QString, int> mPhoneTypeMap;
00081
00082
class VCardToolPrivate;
00083 VCardToolPrivate *d;
00084 };
00085
00086 }
00087
00088
#endif