00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef KABC_KEY_H
00022 #define KABC_KEY_H
00023
00024 #include <tqvaluelist.h>
00025
00026 #include <tdelibs_export.h>
00027
00028 namespace TDEABC {
00029
00033 class KABC_EXPORT Key
00034 {
00035 friend KABC_EXPORT TQDataStream &operator<<( TQDataStream &, const Key & );
00036 friend KABC_EXPORT TQDataStream &operator>>( TQDataStream &, Key & );
00037
00038 public:
00039 typedef TQValueList<Key> List;
00040 typedef TQValueList<int> TypeList;
00041
00049 enum Types {
00050 X509,
00051 PGP,
00052 Custom
00053 };
00054
00061 Key( const TQString &text = TQString::null, int type = PGP );
00062
00066 ~Key();
00067
00068 bool operator==( const Key & ) const;
00069 bool operator!=( const Key & ) const;
00070
00074 void setId( const TQString &id );
00075
00079 TQString id() const;
00080
00084 void setBinaryData( const TQByteArray &binary );
00085
00089 TQByteArray binaryData() const;
00090
00094 void setTextData( const TQString &text );
00095
00099 TQString textData() const;
00100
00104 bool isBinary() const;
00105
00109 void setType( int type );
00110
00114 void setCustomTypeString( const TQString &custom );
00115
00119 int type() const;
00120
00124 TQString customTypeString() const;
00125
00129 static TypeList typeList();
00130
00134 static TQString typeLabel( int type );
00135
00136 private:
00137 TQByteArray mBinaryData;
00138 TQString mId;
00139 TQString mTextData;
00140 TQString mCustomTypeString;
00141
00142 int mIsBinary;
00143 int mType;
00144 };
00145
00146 KABC_EXPORT TQDataStream &operator<<( TQDataStream &, const Key & );
00147 KABC_EXPORT TQDataStream &operator>>( TQDataStream &, Key & );
00148
00149 }
00150 #endif