aboutsummaryrefslogtreecommitdiffstats
path: root/filter/score-rule.c
diff options
context:
space:
mode:
authorJeffrey Stedfast <fejj@helixcode.com>2000-09-19 04:49:51 +0800
committerJeffrey Stedfast <fejj@src.gnome.org>2000-09-19 04:49:51 +0800
commit635f31e410676a42bd3f0cf3c1571dd2cf156f28 (patch)
tree4077b9a9200de9b121cec5a00f66d41f3752505b /filter/score-rule.c
parent69f189090877a8a60fd3a0fdbe0416f67346de26 (diff)
downloadgsoc2013-evolution-635f31e410676a42bd3f0cf3c1571dd2cf156f28.tar
gsoc2013-evolution-635f31e410676a42bd3f0cf3c1571dd2cf156f28.tar.gz
gsoc2013-evolution-635f31e410676a42bd3f0cf3c1571dd2cf156f28.tar.bz2
gsoc2013-evolution-635f31e410676a42bd3f0cf3c1571dd2cf156f28.tar.lz
gsoc2013-evolution-635f31e410676a42bd3f0cf3c1571dd2cf156f28.tar.xz
gsoc2013-evolution-635f31e410676a42bd3f0cf3c1571dd2cf156f28.tar.zst
gsoc2013-evolution-635f31e410676a42bd3f0cf3c1571dd2cf156f28.zip
Modified to use more intuitive naming
2000-09-18 Jeffrey Stedfast <fejj@helixcode.com> * filtertypes.xml: Modified to use more intuitive naming * score-rule.c (xml_decode): Make sure the score is within our range (get_widget): Changed range to -3 to +3 * filter-score.c (get_widget): Changed range to -3 to +3 (xml_decode): Make sure the score is within our range * filter-rule.c (get_widget): Rearranged widgets. * filter-filter.c (get_widget): Rearranged widgets. * filter-editor.c (filter_editor_construct): Updated to allow for double-clicking on a rule to edit it. svn path=/trunk/; revision=5492
Diffstat (limited to 'filter/score-rule.c')
-rw-r--r--filter/score-rule.c115
1 files changed, 67 insertions, 48 deletions
diff --git a/filter/score-rule.c b/filter/score-rule.c
index 8eb51b6821..7ad73a8df3 100644
--- a/filter/score-rule.c
+++ b/filter/score-rule.c
@@ -2,6 +2,7 @@
* Copyright (C) 2000 Helix Code Inc.
*
* Authors: Not Zed <notzed@lostzed.mmc.com.au>
+ * Jeffrey Stedfast <fejj@helixcode.com>
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public License
@@ -61,7 +62,7 @@ score_rule_get_type (void)
(GtkArgGetFunc)NULL
};
- type = gtk_type_unique(filter_rule_get_type (), &type_info);
+ type = gtk_type_unique (filter_rule_get_type (), &type_info);
}
return type;
@@ -72,37 +73,37 @@ score_rule_class_init (ScoreRuleClass *class)
{
GtkObjectClass *object_class;
FilterRuleClass *rule_class = (FilterRuleClass *)class;
-
+
object_class = (GtkObjectClass *)class;
- parent_class = gtk_type_class(filter_rule_get_type ());
-
+ parent_class = gtk_type_class (filter_rule_get_type ());
+
object_class->finalize = score_rule_finalise;
-
+
/* override methods */
rule_class->xml_encode = xml_encode;
rule_class->xml_decode = xml_decode;
/* rule_class->build_code = build_code;*/
rule_class->get_widget = get_widget;
-
+
/* signals */
-
- gtk_object_class_add_signals(object_class, signals, LAST_SIGNAL);
+
+ gtk_object_class_add_signals (object_class, signals, LAST_SIGNAL);
}
static void
score_rule_init (ScoreRule *o)
{
- o->priv = g_malloc0(sizeof(*o->priv));
+ o->priv = g_malloc0 (sizeof (*o->priv));
}
static void
-score_rule_finalise(GtkObject *obj)
+score_rule_finalise (GtkObject *obj)
{
ScoreRule *o = (ScoreRule *)obj;
-
+
o = o;
-
- ((GtkObjectClass *)(parent_class))->finalize(obj);
+
+ ((GtkObjectClass *)(parent_class))->finalize (obj);
}
/**
@@ -113,44 +114,55 @@ score_rule_finalise(GtkObject *obj)
* Return value: A new #ScoreRule object.
**/
ScoreRule *
-score_rule_new(void)
+score_rule_new (void)
{
- ScoreRule *o = (ScoreRule *)gtk_type_new(score_rule_get_type ());
+ ScoreRule *o = (ScoreRule *)gtk_type_new (score_rule_get_type ());
return o;
}
-static xmlNodePtr xml_encode(FilterRule *fr)
+static xmlNodePtr
+xml_encode (FilterRule *fr)
{
ScoreRule *sr = (ScoreRule *)fr;
xmlNodePtr node, value;
char number[16];
-
- node = ((FilterRuleClass *)(parent_class))->xml_encode(fr);
- sprintf(number, "%d", sr->score);
- value = xmlNewNode(NULL, "score");
- xmlSetProp(value, "value", number);
- xmlAddChild(node, value);
+
+ node = ((FilterRuleClass *)(parent_class))->xml_encode (fr);
+ sprintf (number, "%d", sr->score);
+ value = xmlNewNode (NULL, "score");
+ xmlSetProp (value, "value", number);
+ xmlAddChild (node, value);
+
return node;
}
-static int xml_decode(FilterRule *fr, xmlNodePtr node, struct _RuleContext *f)
+static int
+xml_decode (FilterRule *fr, xmlNodePtr node, struct _RuleContext *f)
{
ScoreRule *sr = (ScoreRule *)fr;
xmlNodePtr value;
int result;
char *str;
-
- result = ((FilterRuleClass *)(parent_class))->xml_decode(fr, node, f);
+
+ result = ((FilterRuleClass *)(parent_class))->xml_decode (fr, node, f);
if (result != 0)
return result;
+
value = node->childs;
while (value) {
- if (!strcmp(value->name, "score")) {
- str = xmlGetProp(value, "value");
- sscanf(str, "%d", &sr->score);
+ if (!strcmp (value->name, "score")) {
+ str = xmlGetProp (value, "value");
+ sscanf (str, "%d", &sr->score);
+
+ /* score range is -3 to +3 */
+ if (sr->score > 3)
+ sr->score = 3;
+ else if (sr->score < -3)
+ sr->score = -3;
}
value = value->next;
}
+
return 0;
}
@@ -158,33 +170,40 @@ static int xml_decode(FilterRule *fr, xmlNodePtr node, struct _RuleContext *f)
{
}*/
-static void spin_changed(GtkAdjustment *adj, ScoreRule *sr)
+static void
+spin_changed (GtkAdjustment *adj, ScoreRule *sr)
{
sr->score = adj->value;
}
-static GtkWidget *get_widget(FilterRule *fr, struct _RuleContext *f)
+static GtkWidget *
+get_widget (FilterRule *fr, struct _RuleContext *f)
{
GtkWidget *widget;
- GtkFrame *frame;
- GtkLabel *label;
- GtkHBox *hbox;
+ GtkWidget *frame;
+ GtkWidget *label;
+ GtkWidget *hbox;
GtkAdjustment *adj;
ScoreRule *sr = (ScoreRule *)fr;
- GtkSpinButton *spin;
-
- widget = ((FilterRuleClass *)(parent_class))->get_widget(fr, f);
- frame = (GtkFrame *)gtk_frame_new("Score");
- hbox = (GtkHBox *)gtk_hbox_new(FALSE, 3);
- label = (GtkLabel *)gtk_label_new("Score");
- gtk_box_pack_start((GtkBox *)hbox, (GtkWidget *)label, FALSE, FALSE, 3);
- adj = (GtkAdjustment *)gtk_adjustment_new((float)sr->score, -100, 100, 1, 10, 10);
- gtk_signal_connect((GtkObject *)adj, "value_changed", spin_changed, sr);
- spin = (GtkSpinButton *)gtk_spin_button_new(adj, 1.0, 0);
- gtk_box_pack_start((GtkBox *)hbox, (GtkWidget *)spin, FALSE, FALSE, 3);
- gtk_container_add((GtkContainer *)frame, (GtkWidget *)hbox);
- gtk_widget_show_all((GtkWidget *)frame);
-
- gtk_box_pack_start((GtkBox *)widget, (GtkWidget *)frame, FALSE, FALSE, 3);
+ GtkWidget *spin;
+
+ widget = ((FilterRuleClass *)(parent_class))->get_widget (fr, f);
+
+ frame = gtk_frame_new (_("Score"));
+ hbox = gtk_hbox_new (FALSE, 3);
+ label = gtk_label_new (_("Score"));
+
+ gtk_box_pack_start (GTK_BOX (hbox), label, FALSE, FALSE, 3);
+ adj = (GtkAdjustment *)gtk_adjustment_new ((float) sr->score, -3.0, 3.0, 1.0, 1.0, 1.0);
+ gtk_signal_connect (GTK_OBJECT (adj), "value_changed", spin_changed, sr);
+
+ spin = gtk_spin_button_new (adj, 1.0, 0);
+ gtk_box_pack_start (GTK_BOX (hbox), spin, FALSE, FALSE, 3);
+ gtk_container_add (GTK_CONTAINER (frame), hbox);
+
+ gtk_widget_show_all (frame);
+
+ gtk_box_pack_start (GTK_BOX (widget), frame, FALSE, FALSE, 3);
+
return widget;
}