ClassValue.cpp
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
This file is part of the documentation for kdelibs Version 3.1.5.