29 #include <tqvaluelist.h>
35 class TreeNode::TreeNodePrivate
40 bool nodeChangeOccurred;
41 bool articleChangeOccurred;
45 bool signalDestroyedEmitted;
49 : TQObject(0, 0), d(new TreeNodePrivate)
52 d->nodeChangeOccurred =
false;
53 d->articleChangeOccurred =
false;
57 d->signalDestroyedEmitted =
false;
61 void TreeNode::emitSignalDestroyed()
63 if (!d->signalDestroyedEmitted)
66 d->signalDestroyedEmitted =
true;
85 if (d->title !=
title)
96 TQValueList<TreeNode*> children = d->parent->children();
99 int idx = children.findIndex(me);
101 return idx+1 < children.size() ? *(children.at(idx+1)) : 0L;
108 TQValueList<TreeNode*> children = d->parent->children();
111 int idx = children.findIndex(me);
112 return idx > 0 ? *(d->parent->children().at(idx-1)) : 0L;
127 if (doNotify && !d->doNotify)
130 if (d->nodeChangeOccurred && notifyOccurredChanges)
132 if (d->articleChangeOccurred && notifyOccurredChanges)
134 d->nodeChangeOccurred =
false;
135 d->articleChangeOccurred =
false;
137 if (!doNotify && d->doNotify)
139 d->nodeChangeOccurred =
false;
140 d->articleChangeOccurred =
false;
160 d->nodeChangeOccurred =
true;
168 d->articleChangeOccurred =
true;
177 #include "treenode.moc"
Represents a folder (containing feeds and/or other folders)
Abstract base class for all kind of elements in the feed tree, like feeds and feed groups (and search...
virtual TreeNode * nextSibling() const
Get the next sibling.
virtual uint id() const
returns the ID of this node.
virtual void setTitle(const TQString &title)
Sets the title of the node.
virtual TreeNode * prevSibling() const
Get the previous sibling.
virtual void setNotificationMode(bool doNotify, bool notifyOccurredChanges=true)
TreeNode()
Standard constructor.
virtual void doArticleNotification()
reimplement this in subclasses to do the actual notification called by articlesModified
virtual void articlesModified()
call this if the articles in the node were changed.
void signalChanged(TreeNode *)
Notification mechanism: emitted, when the node was modified and notification is enabled.
virtual ~TreeNode()
Standard destructor.
virtual void setId(uint id)
sets the ID
virtual const TQString & title() const
Get title of node.
virtual void setParent(Folder *parent)
Sets parent node; Don't call this directly, is done automatically by insertChild-methods in Folder.
virtual void nodeModified()
call this if you modified the actual node (title, unread count).
virtual Folder * parent() const
Returns the parent node.
void signalDestroyed(TreeNode *)
Emitted when this object is deleted.