diff options
author | Milan Crha <mcrha@redhat.com> | 2010-10-07 01:26:08 +0800 |
---|---|---|
committer | Milan Crha <mcrha@redhat.com> | 2010-10-07 01:26:08 +0800 |
commit | 1c6f2d154e74f908e2c4a137de0233b5faf4f6b6 (patch) | |
tree | 77a33236e48ed59a7c7c65e8a1c91481dd09f3eb /mail/em-folder-tree.c | |
parent | 1b2fefb086c3e34089beb8b89b22d79005cc7725 (diff) | |
download | gsoc2013-evolution-1c6f2d154e74f908e2c4a137de0233b5faf4f6b6.tar.gz gsoc2013-evolution-1c6f2d154e74f908e2c4a137de0233b5faf4f6b6.tar.zst gsoc2013-evolution-1c6f2d154e74f908e2c4a137de0233b5faf4f6b6.zip |
Bug #631320 - GtkObject is gone in GTK3
Diffstat (limited to 'mail/em-folder-tree.c')
-rw-r--r-- | mail/em-folder-tree.c | 56 |
1 files changed, 20 insertions, 36 deletions
diff --git a/mail/em-folder-tree.c b/mail/em-folder-tree.c index 512aa9b026..db23df4969 100644 --- a/mail/em-folder-tree.c +++ b/mail/em-folder-tree.c @@ -702,8 +702,28 @@ static void folder_tree_dispose (GObject *object) { EMFolderTreePrivate *priv; + GtkTreeModel *model; priv = EM_FOLDER_TREE_GET_PRIVATE (object); + model = gtk_tree_view_get_model (GTK_TREE_VIEW (object)); + + if (priv->loaded_row_id != 0) { + g_signal_handler_disconnect (model, priv->loaded_row_id); + priv->loaded_row_id = 0; + } + + if (priv->autoscroll_id != 0) { + g_source_remove (priv->autoscroll_id); + priv->autoscroll_id = 0; + } + + if (priv->autoexpand_id != 0) { + gtk_tree_row_reference_free (priv->autoexpand_row); + priv->autoexpand_row = NULL; + + g_source_remove (priv->autoexpand_id); + priv->autoexpand_id = 0; + } if (priv->text_renderer != NULL) { g_object_unref (priv->text_renderer); @@ -734,38 +754,6 @@ folder_tree_finalize (GObject *object) G_OBJECT_CLASS (parent_class)->finalize (object); } -static void -em_folder_tree_destroy (GtkObject *object) -{ - EMFolderTreePrivate *priv; - GtkTreeModel *model; - - priv = EM_FOLDER_TREE_GET_PRIVATE (object); - - model = gtk_tree_view_get_model (GTK_TREE_VIEW (object)); - - if (priv->loaded_row_id != 0) { - g_signal_handler_disconnect (model, priv->loaded_row_id); - priv->loaded_row_id = 0; - } - - if (priv->autoscroll_id != 0) { - g_source_remove (priv->autoscroll_id); - priv->autoscroll_id = 0; - } - - if (priv->autoexpand_id != 0) { - gtk_tree_row_reference_free (priv->autoexpand_row); - priv->autoexpand_row = NULL; - - g_source_remove (priv->autoexpand_id); - priv->autoexpand_id = 0; - } - - /* Chain up to parent's destroy() method. */ - GTK_OBJECT_CLASS (parent_class)->destroy (object); -} - static gboolean folder_tree_button_press_event (GtkWidget *widget, GdkEventButton *event) @@ -964,7 +952,6 @@ static void folder_tree_class_init (EMFolderTreeClass *class) { GObjectClass *object_class; - GtkObjectClass *gtk_object_class; GtkWidgetClass *widget_class; GtkTreeViewClass *tree_view_class; @@ -975,9 +962,6 @@ folder_tree_class_init (EMFolderTreeClass *class) object_class->dispose = folder_tree_dispose; object_class->finalize = folder_tree_finalize; - gtk_object_class = GTK_OBJECT_CLASS (class); - gtk_object_class->destroy = em_folder_tree_destroy; - widget_class = GTK_WIDGET_CLASS (class); widget_class->button_press_event = folder_tree_button_press_event; widget_class->key_press_event = folder_tree_key_press_event; |