aboutsummaryrefslogtreecommitdiffstats
path: root/filter/filter-element.c
diff options
context:
space:
mode:
Diffstat (limited to 'filter/filter-element.c')
-rw-r--r--filter/filter-element.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/filter/filter-element.c b/filter/filter-element.c
index 21df744fe5..ad6e133a6a 100644
--- a/filter/filter-element.c
+++ b/filter/filter-element.c
@@ -31,6 +31,7 @@
#include "filter-folder.h"
#include "filter-url.h"
+static gboolean validate (FilterElement *fe, gpointer data);
static void xml_create(FilterElement *fe, xmlNodePtr node);
static FilterElement *clone(FilterElement *fe);
@@ -83,6 +84,7 @@ filter_element_class_init (FilterElementClass *class)
object_class->finalize = filter_element_finalise;
/* override methods */
+ class->validate = validate;
class->xml_create = xml_create;
class->clone = clone;
@@ -121,6 +123,12 @@ filter_element_new (void)
return o;
}
+gboolean
+filter_element_validate (FilterElement *fe, gpointer data)
+{
+ return ((FilterElementClass *)((GtkObject *)fe)->klass)->validate (fe, data);
+}
+
/**
* filter_element_xml_create:
* @fe: filter element
@@ -261,6 +269,12 @@ filter_element_new_type_name (const char *type)
}
/* default implementations */
+static gboolean
+validate (FilterElement *fe, gpointer data)
+{
+ return TRUE;
+}
+
static void
xml_create (FilterElement *fe, xmlNodePtr node)
{
@@ -280,5 +294,3 @@ clone (FilterElement *fe)
return new;
}
-
-