aboutsummaryrefslogtreecommitdiffstats
path: root/filter/filter-arg.c
diff options
context:
space:
mode:
authorNotZed <NotZed@HelixCode.com>2000-02-25 11:04:30 +0800
committerMichael Zucci <zucchi@src.gnome.org>2000-02-25 11:04:30 +0800
commit675d1c25dbedaccbb135dc8ccd784e6706aa4aaa (patch)
tree6b3aa7679bb798df06a97a8067202b6b10438328 /filter/filter-arg.c
parentd83721f8b79ba10df2d067d7d0384c1a0790574e (diff)
downloadgsoc2013-evolution-675d1c25dbedaccbb135dc8ccd784e6706aa4aaa.tar
gsoc2013-evolution-675d1c25dbedaccbb135dc8ccd784e6706aa4aaa.tar.gz
gsoc2013-evolution-675d1c25dbedaccbb135dc8ccd784e6706aa4aaa.tar.bz2
gsoc2013-evolution-675d1c25dbedaccbb135dc8ccd784e6706aa4aaa.tar.lz
gsoc2013-evolution-675d1c25dbedaccbb135dc8ccd784e6706aa4aaa.tar.xz
gsoc2013-evolution-675d1c25dbedaccbb135dc8ccd784e6706aa4aaa.tar.zst
gsoc2013-evolution-675d1c25dbedaccbb135dc8ccd784e6706aa4aaa.zip
Functions for memory management.
2000-02-24 NotZed <NotZed@HelixCode.com> * filter-xml.c (filter_description_free): (filter_load_ruleset_free): (filter_load_optionset_free): Functions for memory management. * filter-arg.c (filter_arg_copy): Copy the values of one arg into another. * filter-druid.c: (option_name_changed): Update the option's description as the user enters it in. svn path=/trunk/; revision=1929
Diffstat (limited to 'filter/filter-arg.c')
-rw-r--r--filter/filter-arg.c19
1 files changed, 19 insertions, 0 deletions
diff --git a/filter/filter-arg.c b/filter/filter-arg.c
index 1d8affaadc..8adfb5576e 100644
--- a/filter/filter-arg.c
+++ b/filter/filter-arg.c
@@ -165,6 +165,24 @@ filter_arg_clone (FilterArg *arg)
}
void
+filter_arg_copy(FilterArg *dst, FilterArg *src)
+{
+ xmlNodePtr values;
+
+ g_return_if_fail( ((GtkObject *)src)->klass->type == ((GtkObject *)dst)->klass->type );
+
+ /* remove old values */
+ while (dst->values) {
+ filter_arg_remove(dst, dst->values->data);
+ }
+
+ /* clone values */
+ values = filter_arg_values_get_xml(src);
+ filter_arg_values_add_xml(dst, values);
+ xmlFreeNodeList(values);
+}
+
+void
filter_arg_add(FilterArg *arg, void *v)
{
g_return_if_fail(v != NULL);
@@ -181,6 +199,7 @@ filter_arg_remove(FilterArg *arg, void *v)
gtk_signal_emit(GTK_OBJECT(arg), signals[CHANGED]);
}
+
void
filter_arg_write_html(FilterArg *arg, GtkHTML *html, GtkHTMLStreamHandle *stream)
{