akregator/src
tag.h00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef AKREGATOR_TAG_H
00026 #define AKREGATOR_TAG_H
00027
00028 #include <qstring.h>
00029
00030 namespace Akregator {
00031
00032 class TagSet;
00033
00044 class Tag
00045 {
00046 friend class TagSet;
00047
00048 public:
00049
00051 Tag(const QString& id, const QString& name=QString::null, const QString& scheme=QString::null);
00052
00054 Tag();
00055
00056 Tag(const Tag& other);
00057
00076 static Tag fromCategory(const QString& term, const QString& scheme=QString::null, const QString& name=QString::null);
00077
00078 virtual ~Tag();
00079
00082 bool isNull() const;
00083
00085 QString id() const;
00086
00088 QString name() const;
00089
00091 QString scheme() const;
00092
00093 void setName(const QString& name);
00094
00095 QString icon() const;
00096 void setIcon(const QString& icon);
00097
00098 Tag& operator=(const Tag& other);
00099
00102 bool operator<(const Tag& other) const;
00103
00105 bool operator==(const Tag& other) const;
00106
00107
00108 protected:
00110 void addedToTagSet(TagSet* tagSet) const;
00111
00113 void removedFromTagSet(TagSet* tagSet) const;
00114 private:
00115
00116 class TagPrivate;
00117 TagPrivate* d;
00118 };
00119
00120
00121 }
00122
00123 #endif // AKREGATOR_TAG_H
|