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"
void signalChanged(TreeNode *)
Notification mechanism: emitted, when the node was modified and notification is enabled.
virtual ~TreeNode()
Standard destructor.
virtual TreeNode * prevSibling() const
Get the previous sibling.
Represents a folder (containing feeds and/or other folders)
virtual void nodeModified()
call this if you modified the actual node (title, unread count).
virtual void articlesModified()
call this if the articles in the node were changed.
virtual uint id() const
returns the ID of this node.
virtual void setNotificationMode(bool doNotify, bool notifyOccurredChanges=true)
virtual void setTitle(const TQString &title)
Sets the title of the node.
virtual TreeNode * nextSibling() const
Get the next sibling.
virtual void setParent(Folder *parent)
Sets parent node; Don't call this directly, is done automatically by insertChild-methods in Folder.
Abstract base class for all kind of elements in the feed tree, like feeds and feed groups (and search...
virtual void doArticleNotification()
reimplement this in subclasses to do the actual notification called by articlesModified
TreeNode()
Standard constructor.
virtual Folder * parent() const
Returns the parent node.
void signalDestroyed(TreeNode *)
Emitted when this object is deleted.
virtual void setId(uint id)
sets the ID
virtual const TQString & title() const
Get title of node.