00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
#include <VCardClassValue.h>
00025
00026
#include <VCardValue.h>
00027
00028
#include <kdebug.h>
00029
00030
using namespace VCARD;
00031
00032 ClassValue::ClassValue()
00033 : Value()
00034 {
00035 }
00036
00037 ClassValue::ClassValue(
const ClassValue & x)
00038 : Value(x),
00039 classType_(x.classType_)
00040 {
00041 }
00042
00043 ClassValue::ClassValue(
const QCString & s)
00044 : Value(s)
00045 {
00046 }
00047
00048 ClassValue &
00049 ClassValue::operator = (ClassValue & x)
00050 {
00051
if (*
this == x)
return *
this;
00052 x.parse();
00053
00054 classType_ = x.classType_;
00055
00056 Value::operator = (x);
00057
return *
this;
00058 }
00059
00060 ClassValue &
00061 ClassValue::operator = (
const QCString & s)
00062 {
00063 Value::operator = (s);
00064
return *
this;
00065 }
00066
00067
bool
00068 ClassValue::operator == (ClassValue & x)
00069 {
00070 x.parse();
00071
return ( classType_ == x.classType_ );
00072 }
00073
00074 ClassValue::~ClassValue()
00075 {
00076 }
00077
00078 ClassValue *
00079 ClassValue::clone()
00080 {
00081
return new ClassValue( *
this );
00082 }
00083
00084
void
00085 ClassValue::_parse()
00086 {
00087
if (qstricmp(strRep_,
"PUBLIC") == 0)
00088 classType_ = Public;
00089
00090
else if (qstricmp(strRep_,
"PRIVATE") == 0)
00091 classType_ = Private;
00092
00093
else if (qstricmp(strRep_,
"CONFIDENTIAL") == 0)
00094 classType_ = Confidential;
00095
00096
else classType_ = Other;
00097 }
00098
00099
void
00100 ClassValue::_assemble()
00101 {
00102
switch (classType_) {
00103
00104
case Public:
00105 strRep_ =
"PUBLIC";
00106
break;
00107
00108
case Private:
00109 strRep_ =
"PRIVATE";
00110
break;
00111
00112
case Confidential:
00113 strRep_ =
"CONFIDENTIAL";
00114
break;
00115
00116
default:
00117
break;
00118 }
00119 }
00120