| Top |
| CamelFolderThreadNode * | camel_folder_thread_node_get_next () |
| CamelFolderThreadNode * | camel_folder_thread_node_get_parent () |
| CamelFolderThreadNode * | camel_folder_thread_node_get_child () |
| gpointer | camel_folder_thread_node_get_item () |
| void | (*CamelFolderThreadVoidFunc) () |
| const gchar * | (*CamelFolderThreadStrFunc) () |
| gint64 | (*CamelFolderThreadInt64Func) () |
| guint64 | (*CamelFolderThreadUint64Func) () |
| const GArray * | (*CamelFolderThreadArrayFunc) () |
| CamelFolderThread * | camel_folder_thread_new () |
| CamelFolderThread * | camel_folder_thread_new_items () |
| CamelFolderThreadNode * | camel_folder_thread_get_tree () |
| guint | camel_folder_thread_dump () |
CamelFolderThreadNode *
camel_folder_thread_node_get_next (CamelFolderThreadNode *self);
Gets the next node in the tree structure from the self
.
Since: 3.58
CamelFolderThreadNode *
camel_folder_thread_node_get_parent (CamelFolderThreadNode *self);
Gets the parent node in the tree structure from the self
.
Since: 3.58
CamelFolderThreadNode *
camel_folder_thread_node_get_child (CamelFolderThreadNode *self);
Gets the first child node in the tree structure from the self
.
the first child node in the tree structure from the self
, or NULL.
[nullable][transfer none]
Since: 3.58
gpointer
camel_folder_thread_node_get_item (CamelFolderThreadNode *self);
Gets associated data with the self
. The actual type of the item depends
on the way the self
was created. For the camel_folder_thread_new() it's
a CamelMessageInfo, for the camel_folder_thread_new_items() it's the member
of the used items array.
Since: 3.58
CamelFolderThread * camel_folder_thread_new (CamelFolder *folder,GPtrArray *uids,CamelFolderThreadFlags flags);
Thread a (subset) of the messages in a folder.
If flags
contain CAMEL_FOLDER_THREAD_FLAG_SUBJECT, messages with
related subjects will also be threaded. The default behaviour is to
only thread based on message-id.
folder |
||
uids |
The subset of uid's to thread. If |
[element-type utf8][nullable] |
flags |
bit-or of CamelFolderThreadFlags |
a new CamelFolderThread containing a tree of CamelFolderThreadNode-s which represent the threaded structure of the messages.
[transfer full]
Since: 3.58
CamelFolderThread * camel_folder_thread_new_items (GPtrArray *items,CamelFolderThreadFlags flags,CamelFolderThreadStrFunc get_uid_func,CamelFolderThreadStrFunc get_subject_func,CamelFolderThreadUint64Func get_message_id_func,CamelFolderThreadArrayFunc get_references_func,CamelFolderThreadInt64Func get_date_sent_func,CamelFolderThreadInt64Func get_date_received_func,CamelFolderThreadVoidFunc lock_func,CamelFolderThreadVoidFunc unlock_func);
Creates a folder tree of the provided items
, which can be accessed only
by the provided functions. The get_date_sent_func
and the get_date_received_func
can be NULL only when the flags
does not contain CAMEL_FOLDER_THREAD_FLAG_SORT.
The lock_func
and thed unlock_func
can be NULL, but both at the same time
can be set or unset.
The items
array is referenced and should not be manipulated
for the life time of the returned CamelFolderThread.
items |
items to thread. |
[transfer none][element-type gpointer] |
flags |
bit-or of CamelFolderThreadFlags |
|
get_uid_func |
an item get function, to get UID. |
[scope forever] |
get_subject_func |
an item get function, to get subject. |
[scope forever] |
get_message_id_func |
an item get function, to get encoded message ID. |
[scope forever] |
get_references_func |
an item get function, to get references. |
[scope forever] |
get_date_sent_func |
an item get function, to get sent date, or |
[scope forever][nullable] |
get_date_received_func |
an item get function, to get received date, or |
[scope forever][nullable] |
lock_func |
an item get function, to lock for changes, or |
[scope forever][nullable] |
unlock_func |
an item get function, to unlock for changes, or |
[scope forever][nullable] |
a new CamelFolderThread, containing a tree of CamelFolderThreadNode-s
which represent the threaded structure of the items
.
[transfer full]
Since: 3.58
CamelFolderThreadNode *
camel_folder_thread_get_tree (CamelFolderThread *self);
Gets the root node of the threaded tree of the items.
Since: 3.58