diff options
Diffstat (limited to 'e-util/e-util.c')
-rw-r--r-- | e-util/e-util.c | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/e-util/e-util.c b/e-util/e-util.c index f05c9d907a..215a494df9 100644 --- a/e-util/e-util.c +++ b/e-util/e-util.c @@ -46,6 +46,8 @@ #endif #include <libedataserver/e-data-server-util.h> +#include <libedataserver/e-categories.h> +#include "filter/filter-option.h" #include "e-util.h" #include "e-util-private.h" @@ -1224,3 +1226,23 @@ e_util_read_file (const char *filename, gboolean filename_is_uri, char **buffer, return res; } +GSList * +e_util_get_category_filter_options (void) +{ + GSList *res = NULL; + GList *clist, *l; + + clist = e_categories_get_list (); + for (l = clist; l; l = l->next) { + const char *cname = l->data; + struct _filter_option *fo = g_new0 (struct _filter_option, 1); + + fo->title = g_strdup (cname); + fo->value = g_strdup (cname); + res = g_slist_prepend (res, fo); + } + + g_list_free (clist); + + return g_slist_reverse (res); +} |