Top |
Functions
Functions
camel_store_summary_new ()
CamelStoreSummary *
camel_store_summary_new (void
);
Create a new CamelStoreSummary object.
camel_store_summary_set_filename ()
void camel_store_summary_set_filename (CamelStoreSummary *summary
,const gchar *filename
);
Set the filename where the summary will be loaded to/saved from.
camel_store_summary_load ()
gint
camel_store_summary_load (CamelStoreSummary *summary
);
Load the summary off disk.
camel_store_summary_save ()
gint
camel_store_summary_save (CamelStoreSummary *summary
);
Writes the summary to disk. The summary is only written if changes have occurred.
camel_store_summary_touch ()
void
camel_store_summary_touch (CamelStoreSummary *summary
);
Mark the summary as changed, so that a save will force it to be written back to disk.
camel_store_summary_add ()
void camel_store_summary_add (CamelStoreSummary *summary
,CamelStoreInfo *info
);
Adds a new info
record to the summary. If info->uid
is NULL
,
then a new uid is automatically re-assigned by calling
camel_store_summary_next_uid_string()
.
The info
record should have been generated by calling one of the
info_new_*() functions, as it will be free'd based on the summary
class. And MUST NOT be allocated directly using malloc.
camel_store_summary_add_from_path ()
CamelStoreInfo * camel_store_summary_add_from_path (CamelStoreSummary *summary
,const gchar *path
);
Build a new info record based on the name, and add it to the summary.
camel_store_summary_info_new ()
CamelStoreInfo *
camel_store_summary_info_new (CamelStoreSummary *summary
);
Allocate a new CamelStoreInfo, suitable for adding to this summary.
camel_store_summary_info_ref ()
CamelStoreInfo * camel_store_summary_info_ref (CamelStoreSummary *summary
,CamelStoreInfo *info
);
Add an extra reference to info
.
camel_store_summary_info_unref ()
void camel_store_summary_info_unref (CamelStoreSummary *summary
,CamelStoreInfo *info
);
Unref and potentially free info
, and all associated memory.
camel_store_summary_remove ()
void camel_store_summary_remove (CamelStoreSummary *summary
,CamelStoreInfo *info
);
Remove a specific info
record from the summary.
camel_store_summary_remove_path ()
void camel_store_summary_remove_path (CamelStoreSummary *summary
,const gchar *path
);
Remove a specific info record from the summary, by path
.
camel_store_summary_count ()
gint
camel_store_summary_count (CamelStoreSummary *summary
);
Get the number of summary items stored in this summary.
camel_store_summary_path ()
CamelStoreInfo * camel_store_summary_path (CamelStoreSummary *summary
,const gchar *path
);
Retrieve a summary item by path name.
The returned CamelStoreInfo is referenced for thread-safety and should be
unreferenced with camel_store_summary_info_unref()
when finished with it.
camel_store_summary_array ()
GPtrArray *
camel_store_summary_array (CamelStoreSummary *summary
);
Obtain a copy of the summary array. This is done atomically, so cannot contain empty entries.
It must be freed using camel_store_summary_array_free()
.
camel_store_summary_array_free ()
void camel_store_summary_array_free (CamelStoreSummary *summary
,GPtrArray *array
);
Free the folder summary array.
Parameters
summary |
a CamelStoreSummary object |
|
array |
the summary array as gotten from |
[element-type CamelStoreInfo] |
camel_store_info_set_string ()
void camel_store_info_set_string (CamelStoreSummary *summary
,CamelStoreInfo *info
,gint type
,const gchar *value
);
Set a specific string on the info
.
Parameters
summary |
a CamelStoreSummary object |
|
info |
||
type |
specific string being set |
|
value |
string value to set |
camel_store_info_path ()
const gchar * camel_store_info_path (CamelStoreSummary *summary
,CamelStoreInfo *info
);
Returns the path string from info
.
camel_store_info_name ()
const gchar * camel_store_info_name (CamelStoreSummary *summary
,CamelStoreInfo *info
);
Returns the last segment of the path string from info
.
camel_store_summary_connect_folder_summary ()
gboolean camel_store_summary_connect_folder_summary (CamelStoreSummary *summary
,const gchar *path
,struct _CamelFolderSummary *folder_summary
);
Connects listeners for count changes on folder_summary
to keep
CamelStoreInfo.total and CamelStoreInfo.unread in sync transparently.
The folder_summary
is stored in summary
as path
. Use
camel_store_summary_disconnect_folder_summary()
to disconnect from
listening.
Parameters
summary |
a CamelStoreSummary object |
|
path |
used path for |
|
folder_summary |
a CamelFolderSummary object |
Since: 3.4
camel_store_summary_disconnect_folder_summary ()
gboolean camel_store_summary_disconnect_folder_summary (CamelStoreSummary *summary
,struct _CamelFolderSummary *folder_summary
);
Diconnects count change listeners previously connected
by camel_store_summary_connect_folder_summary()
.
Since: 3.4