00001 /* -*-mode:c++; c-file-style: "gnu";-*- */ 00002 /* 00003 * $Id: HTMLAttribute_8cpp-source.html,v 1.1 2007/07/03 19:20:06 sebdiaz Exp $ 00004 * 00005 * Copyright (C) 1996 - 2004 Stephen F. Booth <sbooth@gnu.org> 00006 * 2007 Sebastien DIAZ <sebastien.diaz@gmail.com> 00007 * Part of the GNU cgicc library, http://www.gnu.org/software/cgicc 00008 * 00009 * This library is free software; you can redistribute it and/or 00010 * modify it under the terms of the GNU Lesser General Public 00011 * License as published by the Free Software Foundation; either 00012 * version 3 of the License, or (at your option) any later version. 00013 * 00014 * This library is distributed in the hope that it will be useful, 00015 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00016 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00017 * Lesser General Public License for more details. 00018 * 00019 * You should have received a copy of the GNU Lesser General Public 00020 * License along with this library; if not, write to the Free Software 00021 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110, USA 00022 */ 00023 00024 #ifdef __GNUG__ 00025 # pragma implementation 00026 #endif 00027 00028 #include "cgicc/HTMLAttribute.h" 00029 #include "cgicc/CgiUtils.h" 00030 00031 // ============================================================ 00032 // Class HTMLAttribute 00033 // ============================================================ 00034 cgicc::HTMLAttribute::HTMLAttribute() 00035 {} 00036 00037 cgicc::HTMLAttribute::HTMLAttribute(const std::string& name) 00038 : fName(name), 00039 fValue(name) 00040 {} 00041 00042 cgicc::HTMLAttribute::HTMLAttribute(const std::string& name, 00043 const std::string& value) 00044 : fName(name), 00045 fValue(value) 00046 {} 00047 00048 cgicc::HTMLAttribute::HTMLAttribute(const HTMLAttribute& attribute) 00049 : MStreamable(), 00050 fName(attribute.fName), 00051 fValue(attribute.fValue) 00052 {} 00053 00054 cgicc::HTMLAttribute::~HTMLAttribute() 00055 {} 00056 00057 bool 00058 cgicc::HTMLAttribute::operator== (const HTMLAttribute& att) const 00059 { 00060 return (stringsAreEqual(fName, att.fName) 00061 && stringsAreEqual(fValue, att.fValue)); 00062 } 00063 00064 cgicc::HTMLAttribute& 00065 cgicc::HTMLAttribute::operator= (const HTMLAttribute& att) 00066 { 00067 fName = att.fName; 00068 fValue = att.fValue; 00069 00070 return *this; 00071 } 00072 00073 void 00074 cgicc::HTMLAttribute::render(std::ostream& out) const 00075 { 00076 out << getName() << "=\"" << getValue() << "\""; 00077 }