![]() |
![]() |
![]() |
Reference Manual of the tinymail framework | ![]() |
---|---|---|---|---|
TnyMergeFolder; TnyFolder* tny_merge_folder_new (const gchar *folder_name); TnyFolder* tny_merge_folder_new_with_ui_locker (const gchar *folder_name, TnyLockable *ui_locker); void tny_merge_folder_set_ui_locker (TnyMergeFolder *self, TnyLockable *ui_locker); void tny_merge_folder_add_folder (TnyMergeFolder *self, TnyFolder *folder); void tny_merge_folder_remove_folder (TnyMergeFolder *self, TnyFolder *folder); void tny_merge_folder_set_folder_type (TnyMergeFolder *self, TnyFolderType folder_type); void tny_merge_folder_get_folders (TnyMergeFolder *self, TnyList *list);
typedef struct _TnyMergeFolder TnyMergeFolder;
A TnyFolder that merges other folders together
free-function: g_object_unref
TnyFolder* tny_merge_folder_new (const gchar *folder_name);
Creates a a new TnyMergeFolder instance that can merge multiple TnyFolder instances together (partly read only, though).
Important consideration: if you use this type within a Gtk+ application, you probably want to use tny_merge_folder_new_with_ui_locker in stead. If your UI toolkid isn't thread safe (most aren't), but so-called thread aware because it has a UI context lock (like Gtk+ has), then you must create this type with a TnyLockable that aquires and releases this lock correctly. For Gtk+ there's a default implementation called TnyGtkLockable available in libtinymailui-gtk. Please use this, else you can have threading related problems in your user interface software.
folder_name : |
the name of the merged folder |
Returns : | (caller-owns): a new TnyMergeFolder instance |
Since 1.0 audience: application-developer
TnyFolder* tny_merge_folder_new_with_ui_locker (const gchar *folder_name, TnyLockable *ui_locker);
Creates a a new TnyMergeFolder instance that can merge multiple TnyFolder instances together (partly read only, though). Upon construction it instantly sets the ui locker. For Gtk+ you should use a TnyGtkLockable here.
folder_name : |
the name of the merged folder |
ui_locker : |
a TnyLockable for locking your ui |
Returns : | (caller-owns): a new TnyMergeFolder instance |
Since 1.0 audience: application-developer
void tny_merge_folder_set_ui_locker (TnyMergeFolder *self, TnyLockable *ui_locker);
Sets the ui locker. For Gtk+ you should use a TnyGtkLockable here.
self : |
a TnyMergeFolder |
ui_locker : |
a TnyLockable locker for locking your ui |
Since 1.0 audience: application-developer
void tny_merge_folder_add_folder (TnyMergeFolder *self, TnyFolder *folder);
Add folder
to the list of folders that are merged by self
.
self : |
a TnyMergeFolder |
folder : |
a TnyFolder |
Since 1.0 audience: application-developer
void tny_merge_folder_remove_folder (TnyMergeFolder *self, TnyFolder *folder);
Removes folder
from the list of folders that are merged by
self
.
self : |
a TnyMergeFolder |
folder : |
a TnyFolder |
Since 1.0 audience: application-developer
void tny_merge_folder_set_folder_type (TnyMergeFolder *self, TnyFolderType folder_type);
Set the folder type of the TnyMergeFolder. The default is TNY_FOLDER_TYPE_MERGE
but you can change this to any folder type. It will not affect anything except
that tny_folder_get_folder_type()
will return the new type.
self : |
a TnyMergeFolder |
folder_type : |
the new folder |
Since 1.0 audience: application-developer
void tny_merge_folder_get_folders (TnyMergeFolder *self, TnyList *list);
Get the folders that are merged in the merge folder self
.
self : |
a TnyMergeFolder |
list : |
a TnyList to which the folders will be prepended |
Since 1.0 audience: application-developer