From 9ddabfee03542411d02851a1b1f144707ce32b82 Mon Sep 17 00:00:00 2001 From: Not Zed Date: Mon, 31 Jul 2000 15:03:23 +0000 Subject: Set value of a simple type to a new string. 2000-07-31 Not Zed * filter-input.c (filter_input_set_value): Set value of a simple type to a new string. * filter-option.c (filter_option_set_current): New function to set the current value of an option. * filter-rule.c (filter_rule_find_list): New function to find a rule in a list, by name. (filter_rule_set_name): Let you set the name of a rule. * rule-context.c (rule_context_find_rule): Find a rule by name. (rule_context_create_part): Helper to find and clone a part by name. * filter-folder.c (button_clicked): Fix warning. * filter.glade: Add new widgets for vfolder rule editor. * vfolder-context.c (vfolder_context_init): Changed to use vfolder rule as the rule type. * vfolder-rule.c: New class to encode extra information required for vfolder rules. svn path=/trunk/; revision=4421 --- filter/vfolder-rule.h | 59 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 filter/vfolder-rule.h (limited to 'filter/vfolder-rule.h') diff --git a/filter/vfolder-rule.h b/filter/vfolder-rule.h new file mode 100644 index 0000000000..c3fa130c84 --- /dev/null +++ b/filter/vfolder-rule.h @@ -0,0 +1,59 @@ +/* + * Copyright (C) 2000 Helix Code Inc. + * + * Authors: Not Zed + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public License + * as published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this program; if not, write to the Free Software + * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#ifndef _VFOLDER_RULE_H +#define _VFOLDER_RULE_H + +#include +#include "filter-rule.h" + +#define VFOLDER_RULE(obj) GTK_CHECK_CAST (obj, vfolder_rule_get_type (), VfolderRule) +#define VFOLDER_RULE_CLASS(klass) GTK_CHECK_CLASS_CAST (klass, vfolder_rule_get_type (), VfolderRuleClass) +#define IS_VFOLDER_RULE(obj) GTK_CHECK_TYPE (obj, vfolder_rule_get_type ()) + +typedef struct _VfolderRule VfolderRule; +typedef struct _VfolderRuleClass VfolderRuleClass; + +struct _VfolderRule { + FilterRule parent; + struct _VfolderRulePrivate *priv; + + GList *sources; /* uri's of the source folders */ +}; + +struct _VfolderRuleClass { + FilterRuleClass parent_class; + + /* virtual methods */ + + /* signals */ +}; + +guint vfolder_rule_get_type (void); +VfolderRule *vfolder_rule_new (void); + +/* methods */ +void vfolder_rule_add_source (VfolderRule *vr, const char *uri); +void vfolder_rule_remove_source (VfolderRule *vr, const char *uri); +const char *vfolder_rule_find_source (VfolderRule *vr, const char *uri); +const char *vfolder_rule_next_source (VfolderRule *vr, const char *last); + +#endif /* ! _VFOLDER_RULE_H */ + -- cgit v1.2.3