• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdepimlibs API Reference
  • KDE Home
  • Contact Us
 

syndication/rss2

  • sources
  • kde-4.14
  • kdepimlibs
  • syndication
  • rss2
item.h
1 /*
2  * This file is part of the syndication library
3  *
4  * Copyright (C) 2005 Frank Osterfeld <osterfeld@kde.org>
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Library General Public
8  * License as published by the Free Software Foundation; either
9  * version 2 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  * Library General Public License for more details.
15  *
16  * You should have received a copy of the GNU Library General Public License
17  * along with this library; see the file COPYING.LIB. If not, write to
18  * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19  * Boston, MA 02110-1301, USA.
20  *
21  */
22 
23 #ifndef SYNDICATION_RSS2_ITEM_H
24 #define SYNDICATION_RSS2_ITEM_H
25 
26 #include <syndication/rss2/document.h>
27 #include <syndication/elementwrapper.h>
28 #include <boost/shared_ptr.hpp>
29 #include <syndication/specificitem.h>
30 
31 #include <ctime>
32 
33 class QDomElement;
34 class QString;
35 template <class T> class QList;
36 
37 namespace Syndication {
38 
39 class SpecificItemVisitor;
40 
41 namespace RSS2 {
42 
43 class Category;
44 class Enclosure;
45 class Source;
46 
52 class SYNDICATION_EXPORT Item : public ElementWrapper, public Syndication::SpecificItem
53 {
54  public:
55 
60  explicit Item(boost::shared_ptr<Document> doc=boost::shared_ptr<Document>());
61 
68  explicit Item(const QDomElement& element, boost::shared_ptr<Document> doc=boost::shared_ptr<Document>());
69 
76  Item(const Item& other);
77 
81  ~Item();
82 
89  Item& operator=(const Item& other);
90 
91 
97  bool accept(SpecificItemVisitor* visitor);
98 
106  QString title() const;
107 
114  QString link() const;
115 
125  QString description() const;
126 
137  QString content() const;
138 
144  QList<Category> categories() const;
145 
151  QString comments() const;
152 
166  QString author() const;
167 
176  QList<Enclosure> enclosures() const;
177 
189  QString guid() const;
190 
199  bool guidIsPermaLink() const;
200 
211  time_t pubDate() const;
212 
221  time_t expirationDate() const;
222 
230  QString rating() const;
231 
239  Source source() const;
240 
245  QList<QDomElement> unhandledElements() const;
246 
247 
254  QString debugInfo() const;
255 
256  //@cond PRIVATE
262  QString originalDescription() const;
263 
269  QString originalTitle() const;
270  //@endcond
271 
272  private:
273 
274  class ItemPrivate;
275  boost::shared_ptr<ItemPrivate> d;
276 };
277 
278 } // namespace RSS2
279 } // namespace Syndication
280 
281 #endif // SYNDICATION_RSS2_ITEM_H
QString
QList
Definition: document.h:35
QDomElement
This file is part of the KDE documentation.
Documentation copyright © 1996-2020 The KDE developers.
Generated on Mon Jun 22 2020 13:37:41 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

syndication/rss2

Skip menu "syndication/rss2"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Members
  • File List

kdepimlibs API Reference

Skip menu "kdepimlibs API Reference"
  • akonadi
  •   contact
  •   kmime
  •   socialutils
  • kabc
  • kalarmcal
  • kblog
  • kcal
  • kcalcore
  • kcalutils
  • kholidays
  • kimap
  • kioslave
  •   imap4
  •   mbox
  •   nntp
  • kldap
  • kmbox
  • kmime
  • kontactinterface
  • kpimidentities
  • kpimtextedit
  • kpimutils
  • kresources
  • ktnef
  • kxmlrpcclient
  • mailtransport
  • microblog
  • qgpgme
  • syndication
  •   atom
  •   rdf
  •   rss2

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal