## EFilterPart EFilterPart |

## Synopsis

    struct              EFilterPart;
    EFilterPart *       e_filter_part_new                   (void);
    gboolean            e_filter_part_validate              (EFilterPart *part,
                                                             EAlert **alert);
    gint                e_filter_part_eq                    (EFilterPart *part_a,
                                                             EFilterPart *part_b);
    gint                e_filter_part_xml_create            (EFilterPart *part,
                                                             xmlNodePtr node,
                                                             struct _ERuleContext *rc);
    xmlNodePtr          e_filter_part_xml_encode            (EFilterPart *fe);
    gint                e_filter_part_xml_decode            (EFilterPart *fe,
                                                             xmlNodePtr node);
    EFilterPart *       e_filter_part_clone                 (EFilterPart *part);
    void                e_filter_part_copy_values           (EFilterPart *dst_part,
                                                             EFilterPart *src_part);
    EFilterElement *    e_filter_part_find_element          (EFilterPart *part,
                                                             const gchar *name);
    GtkWidget *         e_filter_part_get_widget            (EFilterPart *part);
    void                e_filter_part_build_code            (EFilterPart *part,
                                                             GString *out);
    void                e_filter_part_expand_code           (EFilterPart *part,
                                                             const gchar *str,
                                                             GString *out);
    void                e_filter_part_build_code_list       (GList *list,
                                                             GString *out);
    EFilterPart *       e_filter_part_find_list             (GList *list,
                                                             const gchar *name);
    EFilterPart *       e_filter_part_next_list             (GList *list,
                                                             EFilterPart *last);

## Object Hierarchy

      GObject
       +----EFilterPart

## Description

## Details

### struct EFilterPart

    struct EFilterPart;

### e_filter_part_new ()

    EFilterPart *       e_filter_part_new                   (void);

Create a new EFilterPart object.

Returns : | A new EFilterPart object.

### e_filter_part_validate ()

    gboolean            e_filter_part_validate              (EFilterPart *part,
                                                             EAlert **alert);

### e_filter_part_eq ()

    gint                e_filter_part_eq                    (EFilterPart *part_a,
                                                             EFilterPart *part_b);

### e_filter_part_xml_create ()

    gint                e_filter_part_xml_create            (EFilterPart *part,
                                                             xmlNodePtr node,
                                                             struct _ERuleContext *rc);

### e_filter_part_xml_encode ()

    xmlNodePtr          e_filter_part_xml_encode            (EFilterPart *fe);

### e_filter_part_xml_decode ()

    gint                e_filter_part_xml_decode            (EFilterPart *fe,
                                                             xmlNodePtr node);

### e_filter_part_clone ()

    EFilterPart *       e_filter_part_clone                 (EFilterPart *part);

### e_filter_part_copy_values ()

    void                e_filter_part_copy_values           (EFilterPart *dst_part,
                                                             EFilterPart *src_part);

### e_filter_part_find_element ()

    EFilterElement *    e_filter_part_find_element          (EFilterPart *part,
                                                             const gchar *name);

### e_filter_part_get_widget ()

    GtkWidget *         e_filter_part_get_widget            (EFilterPart *part);

### e_filter_part_build_code ()

    void                e_filter_part_build_code            (EFilterPart *part,
                                                             GString *out);

Outputs the code of a part.

### e_filter_part_expand_code ()

    void                e_filter_part_expand_code           (EFilterPart *part,
                                                             const gchar *str,
                                                             GString *out);

Expands the variables in string `str` based on the values of the part.

### e_filter_part_build_code_list ()

    void                e_filter_part_build_code_list       (GList *list,
                                                             GString *out);

Construct a list of the filter parts code into a single string.

### e_filter_part_find_list ()

    EFilterPart *       e_filter_part_find_list             (GList *list,
                                                             const gchar *name);

Find a filter part stored in a list.

### e_filter_part_next_list ()

    EFilterPart *       e_filter_part_next_list             (GList *list,
                                                             EFilterPart *last);

Iterate through a filter part list.

`last` : | The last item retrieved, or NULL to start from the beginning of the list.
Returns : | The next value in the list, or NULL if the list is expired.