akregator/src
tagset.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_TAGSET_H
00026 #define AKREGATOR_TAGSET_H
00027
00028 #include <tqobject.h>
00029
00030 class TQDomDocument;
00031 template <class K,class T> class TQMap;
00032 class TQString;
00033 class TQStringList;
00034
00035 namespace Akregator {
00036
00037 class Tag;
00038
00047 class TagSet : public TQObject
00048 {
00049 friend class Tag;
00050 Q_OBJECT
00051 TQ_OBJECT
00052 public:
00053
00054 TagSet(TQObject* parent=0);
00055 virtual ~TagSet();
00056
00058 void insert(const Tag& tag);
00059
00061 void remove(const Tag& tag);
00062
00064 TQMap<TQString,Tag> toMap() const;
00065
00067 bool contains(const Tag& tag) const;
00068
00070 bool containsID(const TQString& id) const;
00071
00073 Tag findByID(const TQString& id) const;
00074
00077 void readFromXML(const TQDomDocument& doc);
00078
00091 TQDomDocument toXML() const;
00092
00093 signals:
00095 void signalTagAdded(const Tag&);
00097 void signalTagRemoved(const Tag&);
00099 void signalTagUpdated(const Tag&);
00100
00101 protected:
00103 void tagUpdated(const Tag& tag);
00104
00105 private:
00106 class TagSetPrivate;
00107 TagSetPrivate* d;
00108 };
00109
00110 }
00111
00112 #endif // AKREGATOR_TAGSET_H
|