kabc Library API Documentation

UTCValue.cpp

00001 /* 00002 libvcard - vCard parsing library for vCard version 3.0 00003 00004 Copyright (C) 1998 Rik Hemsley rik@kde.org 00005 00006 Permission is hereby granted, free of charge, to any person obtaining a copy 00007 of this software and associated documentation files (the "Software"), to 00008 deal in the Software without restriction, including without limitation the 00009 rights to use, copy, modify, merge, publish, distribute, sublicense, and/or 00010 sell copies of the Software, and to permit persons to whom the Software is 00011 furnished to do so, subject to the following conditions: 00012 00013 The above copyright notice and this permission notice shall be included in 00014 all copies or substantial portions of the Software. 00015 00016 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 00017 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 00018 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 00019 AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN 00020 ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 00021 WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 00022 */ 00023 00024 #include <VCardUTCValue.h> 00025 00026 #include <VCardValue.h> 00027 00028 using namespace VCARD; 00029 00030 UTCValue::UTCValue() 00031 : Value() 00032 { 00033 } 00034 00035 UTCValue::UTCValue(const UTCValue & x) 00036 : Value(x), positive_(x.positive_), hour_(x.hour_), minute_(x.minute_) 00037 00038 { 00039 } 00040 00041 UTCValue::UTCValue(const QCString & s) 00042 : Value(s) 00043 { 00044 } 00045 00046 UTCValue & 00047 UTCValue::operator = (UTCValue & x) 00048 { 00049 if (*this == x) return *this; 00050 00051 positive_ = x.positive_; 00052 hour_ = x.hour_; 00053 minute_ = x.minute_; 00054 00055 Value::operator = (x); 00056 return *this; 00057 } 00058 00059 UTCValue & 00060 UTCValue::operator = (const QCString & s) 00061 { 00062 Value::operator = (s); 00063 return *this; 00064 } 00065 00066 bool 00067 UTCValue::operator == (UTCValue & x) 00068 { 00069 x.parse(); 00070 00071 if (positive_ != x.positive_) return false; 00072 if (hour_ != x.hour_) return false; 00073 if (minute_ != x.minute_) return false; 00074 00075 return true; 00076 } 00077 00078 UTCValue::~UTCValue() 00079 { 00080 } 00081 00082 UTCValue * 00083 UTCValue::clone() 00084 { 00085 return new UTCValue( *this ); 00086 } 00087 00088 void 00089 UTCValue::_parse() 00090 { 00091 if ( strRep_.isEmpty() ) 00092 return; 00093 00094 positive_ = ( strRep_[0] == '+' ); 00095 00096 int colon = strRep_.find( ':' ); 00097 00098 if ( colon == -1 ) // Not valid. 00099 return; 00100 00101 hour_ = strRep_.mid( 1, 2 ).toInt(); 00102 minute_ = strRep_.right( 2 ).toInt(); 00103 } 00104 00105 void 00106 UTCValue::_assemble() 00107 { 00108 strRep_.sprintf( "%c%.2i:%.2i", (positive_ ? '+' : '-'), hour_, minute_ ); 00109 } 00110
KDE Logo
This file is part of the documentation for kabc Library Version 3.3.0.
Documentation copyright © 1996-2004 the KDE developers.
Generated on Wed Sep 29 09:44:37 2004 by doxygen 1.3.8 written by Dimitri van Heesch, © 1997-2003