| Reference Manual of the tinymail framework | ||||
|---|---|---|---|---|
#define TNY_TYPE_FOLDER_STORE_QUERY_ITEM #define TNY_FOLDER_STORE_QUERY_ITEM (obj) #define TNY_FOLDER_STORE_QUERY_ITEM_CLASS (vtable) #define TNY_IS_FOLDER_STORE_QUERY_ITEM (obj) #define TNY_IS_FOLDER_STORE_QUERY_ITEM_CLASS(vtable) #define TNY_FOLDER_STORE_QUERY_ITEM_GET_CLASS(inst) #define TNY_TYPE_FOLDER_STORE_QUERY_OPTION TnyFolderStoreQueryItem; TnyFolderStoreQuery; GType tny_folder_store_query_item_get_type (void); GType tny_folder_store_query_option_get_type (void); TnyFolderStoreQuery* tny_folder_store_query_new (void); void tny_folder_store_query_add_item (TnyFolderStoreQuery *query, const gchar *pattern, TnyFolderStoreQueryOption options); TnyList* tny_folder_store_query_get_items (TnyFolderStoreQuery *query); TnyFolderStoreQueryOption tny_folder_store_query_item_get_options (TnyFolderStoreQueryItem *item); const regex_t* tny_folder_store_query_item_get_regex (TnyFolderStoreQueryItem *item); const gchar* tny_folder_store_query_item_get_pattern (TnyFolderStoreQueryItem *item);
#define TNY_TYPE_FOLDER_STORE_QUERY_ITEM (tny_folder_store_query_item_get_type ())
#define TNY_FOLDER_STORE_QUERY_ITEM(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), TNY_TYPE_FOLDER_STORE_QUERY_ITEM, TnyFolderStoreQueryItem))
obj : |
#define TNY_FOLDER_STORE_QUERY_ITEM_CLASS(vtable) (G_TYPE_CHECK_CLASS_CAST ((vtable), TNY_TYPE_FOLDER_STORE_QUERY_ITEM, TnyFolderStoreQueryItemClass))
vtable : |
#define TNY_IS_FOLDER_STORE_QUERY_ITEM(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), TNY_TYPE_FOLDER_STORE_QUERY_ITEM))
obj : |
#define TNY_IS_FOLDER_STORE_QUERY_ITEM_CLASS(vtable) (G_TYPE_CHECK_CLASS_TYPE ((vtable), TNY_TYPE_FOLDER_STORE_QUERY_ITEM))
vtable : |
#define TNY_FOLDER_STORE_QUERY_ITEM_GET_CLASS(inst) (G_TYPE_INSTANCE_GET_CLASS ((inst), TNY_TYPE_FOLDER_STORE_QUERY_ITEM, TnyFolderStoreQueryItemClass))
inst : |
#define TNY_TYPE_FOLDER_STORE_QUERY_OPTION (tny_folder_store_query_option_get_type())
typedef struct _TnyFolderStoreQuery TnyFolderStoreQuery;
A query for filtering folders when getting them from a store
free-function: g_object_unref
GType tny_folder_store_query_item_get_type
(void);
GType system helper function
| Returns : | a GType |
GType tny_folder_store_query_option_get_type
(void);
GType system helper function
| Returns : | a GType |
TnyFolderStoreQuery* tny_folder_store_query_new (void);
Create a new TnyFolderStoreQuery instance
| Returns : | (caller-owns): a new TnyFolderStoreQuery instance |
Since 1.0 audience: application-developer
void tny_folder_store_query_add_item (TnyFolderStoreQuery *query, const gchar *pattern, TnyFolderStoreQueryOption options);
Add a query-item to query.
If the options contain TNY_FOLDER_STORE_QUERY_OPTION_MATCH_ON_NAME or
TNY_FOLDER_STORE_QUERY_OPTION_MATCH_ON_ID and pattern is not NULL, then
pattern will be used as regular expression for matching the property of
the folders. The tny_folder_get_name() and tny_folder_get_id() are used
while matching in those cases.
Example:
FolderStoreQuery *query = tny_folder_store_query_new ();
TnyList *folders = tny_simple_list_new ();
TnyFolderStore *store = ...; TnyIterator *iter;
tny_folder_store_query_add_item (query, ".*GNOME.*",
TNY_FOLDER_STORE_QUERY_OPTION_MATCH_ON_NAME);
tny_folder_store_get_folders (store, folders, query);
iter = tny_list_create_iterator (folders);
while (!tny_iterator_is_done (iter))
{
TnyFolder *folder = TNY_FOLDER (tny_iterator_get_current (iter));
g_print ("%s\n", tny_folder_get_name (folder));
g_object_unref (folder);
tny_iterator_next (iter);
}
g_object_unref (iter);
g_object_unref (folders);
g_object_unref (query);
For the options TNY_FOLDER_STORE_QUERY_OPTION_SUBSCRIBED and TNY_FOLDER_STORE_QUERY_OPTION_UNSUBSCRIBED, the folder subscription status is used.
Example:
FolderStoreQuery *query = tny_folder_store_query_new ();
TnyList *folders = tny_simple_list_new ();
TnyFolderStore *store = ...; TnyIterator *iter;
tny_folder_store_query_add_item (query, NULL,
TNY_FOLDER_STORE_QUERY_OPTION_SUBSCRIBED);
tny_folder_store_get_folders (store, folders, query);
iter = tny_list_create_iterator (folders);
while (!tny_iterator_is_done (iter))
{
TnyFolder *folder = TNY_FOLDER (tny_iterator_get_current (iter));
g_print ("%s\n", tny_folder_get_name (folder));
g_object_unref (folder);
tny_iterator_next (iter);
}
g_object_unref (iter);
g_object_unref (folders);
g_object_unref (query);
query : |
a TnyFolderStoreQuery |
pattern : |
(null-ok): a regular expression or NULL |
options : |
a TnyFolderStoreQueryOption enum |
TnyList* tny_folder_store_query_get_items (TnyFolderStoreQuery *query);
Get a list of query items in query. The return value must be unreferenced
after use.
query : |
a TnyFolderStoreQuery |
| Returns : | (caller-owns): a list of query items |
Since 1.0 audience: tinymail-developer
TnyFolderStoreQueryOption tny_folder_store_query_item_get_options (TnyFolderStoreQueryItem *item);
Get the options of item as a TnyFolderStoreQueryOption enum.
item : |
a TnyFolderStoreQueryItem |
| Returns : | the options of a query item |
Since 1.0 audience: tinymail-developer
const regex_t* tny_folder_store_query_item_get_regex
(TnyFolderStoreQueryItem *item);
Get the compiled regular expression of item. You must not free the returned
value.
item : |
a TnyFolderStoreQueryItem |
| Returns : | (null-ok): the compiled regular expression of a query item |
Since 1.0 audience: tinymail-developer
const gchar* tny_folder_store_query_item_get_pattern
(TnyFolderStoreQueryItem *item);
Get the regular expression's pattern of item. You must not free the returned
value.
item : |
a TnyFolderStoreQueryItem |
| Returns : | (null-ok): the pattern of the regular expression of a query item |
Since 1.0 audience: tinymail-developer