[evolution] ERuleEditor: Remove dead code.



commit a87a779e0b64032cceecaa4593c8c08b5fbad203
Author: Matthew Barnes <mbarnes redhat com>
Date:   Mon Jul 8 20:23:01 2013 -0400

    ERuleEditor: Remove dead code.
    
    Unfinished undo framework from ages past.
    
    Nice idea I guess, but not worth the complexity.

 .../evolution-util/evolution-util-sections.txt     |    1 -
 e-util/e-rule-editor.c                             |  140 --------------------
 e-util/e-rule-editor.h                             |   21 ---
 3 files changed, 0 insertions(+), 162 deletions(-)
---
diff --git a/doc/reference/evolution-util/evolution-util-sections.txt 
b/doc/reference/evolution-util/evolution-util-sections.txt
index a7185c0..dc2d3c0 100644
--- a/doc/reference/evolution-util/evolution-util-sections.txt
+++ b/doc/reference/evolution-util/evolution-util-sections.txt
@@ -2843,7 +2843,6 @@ ERuleContextPrivate
 <FILE>e-rule-editor</FILE>
 <TITLE>ERuleEditor</TITLE>
 ERuleEditor
-ERuleEditorUndo
 e_rule_editor_new
 e_rule_editor_construct
 e_rule_editor_set_source
diff --git a/e-util/e-rule-editor.c b/e-util/e-rule-editor.c
index c063ae4..d836096 100644
--- a/e-util/e-rule-editor.c
+++ b/e-util/e-rule-editor.c
@@ -40,8 +40,6 @@
        (G_TYPE_INSTANCE_GET_PRIVATE \
        ((obj), E_TYPE_RULE_EDITOR, ERuleEditorPrivate))
 
-static gint enable_undo = 0;
-
 enum {
        BUTTON_ADD,
        BUTTON_EDIT,
@@ -63,73 +61,6 @@ G_DEFINE_TYPE (
        GTK_TYPE_DIALOG)
 
 static void
-rule_editor_add_undo (ERuleEditor *editor,
-                      gint type,
-                      EFilterRule *rule,
-                      gint rank,
-                      gint newrank)
-{
-       ERuleEditorUndo *undo;
-
-       if (!editor->undo_active && enable_undo) {
-               undo = g_malloc0 (sizeof (*undo));
-               undo->rule = rule;
-               undo->type = type;
-               undo->rank = rank;
-               undo->newrank = newrank;
-
-               undo->next = editor->undo_log;
-               editor->undo_log = undo;
-       } else {
-               g_object_unref (rule);
-       }
-}
-
-static void
-rule_editor_play_undo (ERuleEditor *editor)
-{
-       ERuleEditorUndo *undo, *next;
-       EFilterRule *rule;
-
-       editor->undo_active = TRUE;
-       undo = editor->undo_log;
-       editor->undo_log = NULL;
-       while (undo) {
-               next = undo->next;
-               switch (undo->type) {
-               case E_RULE_EDITOR_LOG_EDIT:
-                       rule = e_rule_context_find_rank_rule (editor->context, undo->rank, 
undo->rule->source);
-                       if (rule) {
-                               e_filter_rule_copy (rule, undo->rule);
-                       } else {
-                               g_warning ("Could not find the right rule to undo against?");
-                       }
-                       break;
-               case E_RULE_EDITOR_LOG_ADD:
-                       rule = e_rule_context_find_rank_rule (editor->context, undo->rank, 
undo->rule->source);
-                       if (rule)
-                               e_rule_context_remove_rule (editor->context, rule);
-                       break;
-               case E_RULE_EDITOR_LOG_REMOVE:
-                       g_object_ref (undo->rule);
-                       e_rule_context_add_rule (editor->context, undo->rule);
-                       e_rule_context_rank_rule (editor->context, undo->rule, editor->source, undo->rank);
-                       break;
-               case E_RULE_EDITOR_LOG_RANK:
-                       rule = e_rule_context_find_rank_rule (editor->context, undo->newrank, 
undo->rule->source);
-                       if (rule)
-                               e_rule_context_rank_rule (editor->context, rule, editor->source, undo->rank);
-                       break;
-               }
-
-               g_object_unref (undo->rule);
-               g_free (undo);
-               undo = next;
-       }
-       editor->undo_active = FALSE;
-}
-
-static void
 dialog_rule_changed (EFilterRule *fr,
                      GtkWidget *dialog)
 {
@@ -183,17 +114,6 @@ add_editor_response (GtkWidget *dialog,
 
                editor->current = editor->edit;
                e_rule_context_add_rule (editor->context, editor->current);
-
-               g_object_ref (editor->current);
-               rule_editor_add_undo (
-                       editor,
-                       E_RULE_EDITOR_LOG_ADD,
-                       editor->current,
-                       e_rule_context_get_rank_rule (
-                               editor->context,
-                               editor->current,
-                               editor->current->source),
-                       0);
        }
 
        gtk_widget_destroy (dialog);
@@ -242,29 +162,6 @@ cursor_changed (GtkTreeView *treeview,
 }
 
 static void
-editor_response (GtkWidget *dialog,
-                 gint button,
-                 ERuleEditor *editor)
-{
-       if (button == GTK_RESPONSE_CANCEL) {
-               if (enable_undo)
-                       rule_editor_play_undo (editor);
-               else {
-                       ERuleEditorUndo *undo, *next;
-
-                       undo = editor->undo_log;
-                       editor->undo_log = NULL;
-                       while (undo) {
-                               next = undo->next;
-                               g_object_unref (undo->rule);
-                               g_free (undo);
-                               undo = next;
-                       }
-               }
-       }
-}
-
-static void
 rule_add (GtkWidget *widget,
           ERuleEditor *editor)
 {
@@ -356,11 +253,6 @@ edit_editor_response (GtkWidget *dialog,
                                editor->model, &iter,
                                0, editor->edit->name, -1);
 
-                       rule_editor_add_undo (
-                               editor, E_RULE_EDITOR_LOG_EDIT,
-                               e_filter_rule_clone (editor->current),
-                               pos, 0);
-
                        /* replace the old rule with the new rule */
                        e_filter_rule_copy (editor->current, editor->edit);
                }
@@ -441,18 +333,7 @@ rule_delete (GtkWidget *widget,
                gtk_list_store_remove (editor->model, &iter);
                gtk_tree_path_free (path);
 
-               rule_editor_add_undo (
-                       editor,
-                       E_RULE_EDITOR_LOG_REMOVE,
-                       delete_rule,
-                       e_rule_context_get_rank_rule (
-                               editor->context,
-                               delete_rule,
-                               delete_rule->source),
-                       0);
-#if 0
                g_object_unref (delete_rule);
-#endif
 
                /* now select the next rule */
                len = gtk_tree_model_iter_n_children (GTK_TREE_MODEL (editor->model), NULL);
@@ -492,12 +373,6 @@ rule_move (ERuleEditor *editor,
        GtkTreeIter iter;
        EFilterRule *rule;
 
-       rule_editor_add_undo (
-               editor, E_RULE_EDITOR_LOG_RANK,
-               g_object_ref (editor->current),
-               e_rule_context_get_rank_rule (editor->context,
-               editor->current, editor->source), to);
-
        e_rule_context_rank_rule (
                editor->context, editor->current, editor->source, to);
 
@@ -607,18 +482,9 @@ static void
 rule_editor_finalize (GObject *object)
 {
        ERuleEditor *editor = E_RULE_EDITOR (object);
-       ERuleEditorUndo *undo, *next;
 
        g_object_unref (editor->context);
 
-       undo = editor->undo_log;
-       while (undo) {
-               next = undo->next;
-               g_object_unref (undo->rule);
-               g_free (undo);
-               undo = next;
-       }
-
        /* Chain up to parent's finalize() method. */
        G_OBJECT_CLASS (e_rule_editor_parent_class)->finalize (object);
 }
@@ -709,9 +575,6 @@ e_rule_editor_class_init (ERuleEditorClass *class)
        class->set_source = rule_editor_set_source;
        class->set_sensitive = rule_editor_set_sensitive;
        class->create_rule = rule_editor_create_rule;
-
-       /* TODO: Remove when it works (or never will) */
-       enable_undo = getenv ("EVOLUTION_RULE_UNDO") != NULL;
 }
 
 static void
@@ -907,9 +770,6 @@ e_rule_editor_construct (ERuleEditor *editor,
        gtk_label_set_mnemonic_widget (
                GTK_LABEL (widget), GTK_WIDGET (editor->list));
 
-       g_signal_connect (
-               editor, "response",
-               G_CALLBACK (editor_response), editor);
        rule_editor_set_source (editor, source);
 
        gtk_dialog_add_buttons (
diff --git a/e-util/e-rule-editor.h b/e-util/e-rule-editor.h
index 39d2066..834ac57 100644
--- a/e-util/e-rule-editor.h
+++ b/e-util/e-rule-editor.h
@@ -58,8 +58,6 @@ typedef struct _ERuleEditor ERuleEditor;
 typedef struct _ERuleEditorClass ERuleEditorClass;
 typedef struct _ERuleEditorPrivate ERuleEditorPrivate;
 
-typedef struct _ERuleEditorUndo ERuleEditorUndo;
-
 struct _ERuleEditor {
        GtkDialog parent;
 
@@ -74,9 +72,6 @@ struct _ERuleEditor {
 
        gchar *source;
 
-       ERuleEditorUndo *undo_log;      /* cancel/undo log */
-       guint undo_active:1; /* we're performing undo */
-
        ERuleEditorPrivate *priv;
 };
 
@@ -90,22 +85,6 @@ struct _ERuleEditorClass {
        EFilterRule *   (*create_rule)          (ERuleEditor *editor);
 };
 
-enum {
-       E_RULE_EDITOR_LOG_EDIT,
-       E_RULE_EDITOR_LOG_ADD,
-       E_RULE_EDITOR_LOG_REMOVE,
-       E_RULE_EDITOR_LOG_RANK
-};
-
-struct _ERuleEditorUndo {
-       ERuleEditorUndo *next;
-
-       guint type;
-       EFilterRule *rule;
-       gint rank;
-       gint newrank;
-};
-
 GType          e_rule_editor_get_type          (void) G_GNUC_CONST;
 ERuleEditor *  e_rule_editor_new               (ERuleContext *context,
                                                 const gchar *source,


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]