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 TQDateTime;
00028
00029 namespace TDEABC {
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 TQString createVCards( Addressee::List list, VCard::Version version = VCard::v3_0 );
00048
00052 Addressee::List parseVCards( const TQString& vcard );
00053
00054 private:
00059 TQStringList splitString( const TQChar &sep, const TQString &value );
00060
00061 TQDateTime parseDateTime( const TQString &str );
00062 TQString createDateTime( const TQDateTime &dateTime );
00063
00064 Picture parsePicture( const VCardLine &line );
00065 VCardLine createPicture( const TQString &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 TQMap<TQString, int> mAddressTypeMap;
00080 TQMap<TQString, int> mPhoneTypeMap;
00081
00082 class VCardToolPrivate;
00083 VCardToolPrivate *d;
00084 };
00085
00086 }
00087
00088 #endif