diff options
Diffstat (limited to 'e-util/e-util.h')
-rw-r--r-- | e-util/e-util.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/e-util/e-util.h b/e-util/e-util.h index e636a0fbbf..65a8d0d618 100644 --- a/e-util/e-util.h +++ b/e-util/e-util.h @@ -75,6 +75,40 @@ GtkType l##_get_type(void)\ return type;\ } +#define GET_STRING_ARRAY_FROM_ELLIPSIS(labels, first_string) \ + { \ + va_list args; \ + int i; \ + char *s; \ + \ + va_start (args, (first_string)); \ + \ + i = 0; \ + for (s = (first_string); s; s = va_arg (args, char *)) \ + i++; \ + va_end (args); \ + \ + (labels) = g_new (char *, i + 1); \ + \ + va_start (args, (first_string)); \ + i = 0; \ + for (s = (first_string); s; s = va_arg (args, char *)) \ + (labels)[i++] = s; \ + \ + va_end (args); \ + (labels)[i] = NULL; \ + } + + +#define GET_DUPLICATED_STRING_ARRAY_FROM_ELLIPSIS(labels, first_string) \ + { \ + int i; \ + GET_STRING_ARRAY_FROM_ELLIPSIS ((labels), (first_string)); \ + for (i = 0; labels[i]; i++) \ + labels[i] = g_strdup (labels[i]); \ + } + + #if 1 # define E_OBJECT_CLASS_ADD_SIGNALS(oc,sigs,last) \ gtk_object_class_add_signals (oc, sigs, last) @@ -118,6 +152,7 @@ void e_filename_make_safe (gcha gchar *e_format_number (gint number); gchar *e_format_number_float (gfloat number); gboolean e_create_directory (gchar *directory); +gchar **e_strdupv (const gchar **str_array); typedef int (*ESortCompareFunc) (const void *first, |