aboutsummaryrefslogtreecommitdiffstats
path: root/filter/filter-rule.c
diff options
context:
space:
mode:
Diffstat (limited to 'filter/filter-rule.c')
-rw-r--r--filter/filter-rule.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/filter/filter-rule.c b/filter/filter-rule.c
index 9e1da43164..9c47af6daf 100644
--- a/filter/filter-rule.c
+++ b/filter/filter-rule.c
@@ -133,6 +133,12 @@ filter_rule_new(void)
return o;
}
+void filter_rule_set_name (FilterRule *fr, const char *name)
+{
+ g_free(fr->name);
+ fr->name = g_strdup(name);
+}
+
xmlNodePtr filter_rule_xml_encode (FilterRule *fr)
{
return ((FilterRuleClass *)((GtkObject *)fr)->klass)->xml_encode(fr);
@@ -523,3 +529,15 @@ FilterRule *filter_rule_next_list (GList *l, FilterRule *last)
return node->data;
return NULL;
}
+
+FilterRule *filter_rule_find_list (GList *l, const char *name)
+{
+ while (l) {
+ FilterRule *rule = l->data;
+ if (!strcmp(rule->name, name))
+ return rule;
+ l = g_list_next(l);
+ }
+ return NULL;
+}
+