syndication/rss2
image.cpp
00001 /* 00002 * This file is part of the syndication library 00003 * 00004 * Copyright (C) 2005 Frank Osterfeld <osterfeld@kde.org> 00005 * 00006 * This library is free software; you can redistribute it and/or 00007 * modify it under the terms of the GNU Library General Public 00008 * License as published by the Free Software Foundation; either 00009 * version 2 of the License, or (at your option) any later version. 00010 * 00011 * This library is distributed in the hope that it will be useful, 00012 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 * Library General Public License for more details. 00015 * 00016 * You should have received a copy of the GNU Library General Public License 00017 * along with this library; see the file COPYING.LIB. If not, write to 00018 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 00019 * Boston, MA 02110-1301, USA. 00020 * 00021 */ 00022 00023 #include "image.h" 00024 00025 #include <QtCore/QString> 00026 00027 namespace Syndication { 00028 namespace RSS2 { 00029 00030 Image::Image() : ElementWrapper() 00031 { 00032 } 00033 00034 Image::Image(const QDomElement& element) : ElementWrapper(element) 00035 { 00036 } 00037 00038 QString Image::url() const 00039 { 00040 return extractElementTextNS(QString(), QString::fromUtf8("url")); 00041 } 00042 00043 QString Image::title() const 00044 { 00045 return extractElementTextNS(QString(), QString::fromUtf8("title")); 00046 00047 } 00048 00049 QString Image::link() const 00050 { 00051 return extractElementTextNS(QString(), QString::fromUtf8("link")); 00052 00053 } 00054 00055 uint Image::width() const 00056 { 00057 QString text; 00058 bool ok; 00059 uint c; 00060 00061 text = extractElementTextNS(QString(), QString::fromUtf8("width")); 00062 c = text.toUInt(&ok); 00063 return ok ? c : 88; // set to default if not parsable 00064 } 00065 00066 uint Image::height() const 00067 { 00068 QString text; 00069 bool ok; 00070 uint c; 00071 00072 text = extractElementTextNS(QString(), QString::fromUtf8("height")); 00073 c = text.toUInt(&ok); 00074 return ok ? c : 31; // set to default if not parsable 00075 } 00076 00077 QString Image::description() const 00078 { 00079 return extractElementTextNS(QString(), QString::fromUtf8("description")); 00080 } 00081 00082 QString Image::debugInfo() const 00083 { 00084 QString info; 00085 info += "### Image: ###################\n"; 00086 if (!title().isNull()) 00087 info += "title: #" + title() + "#\n"; 00088 if (!link().isNull()) 00089 info += "link: #" + link() + "#\n"; 00090 if (!description().isNull()) 00091 info += "description: #" + description() + "#\n"; 00092 if (!url().isNull()) 00093 info += "url: #" + url() + "#\n"; 00094 info += "width: #" + QString::number(width()) + "#\n"; 00095 info += "height: #" + QString::number(height()) + "#\n"; 00096 info += "### Image end ################\n"; 00097 return info; 00098 } 00099 00100 } // namespace RSS2 00101 } //namespace Syndication