[evolution] Remove e_tree_row_count().



commit 6abeaa322335645149113e406f85a3a1b75a19f1
Author: Matthew Barnes <mbarnes redhat com>
Date:   Thu Jun 20 13:19:46 2013 -0400

    Remove e_tree_row_count().
    
    Reducing API bloat.  Do this instead:
    
      adapter = e_tree_get_table_adapter (tree);
      row_count = e_table_model_row_count (E_TABLE_MODEL (adapter));

 .../evolution-util/evolution-util-sections.txt     |    1 -
 e-util/e-tree.c                                    |    8 --
 e-util/e-tree.h                                    |    1 -
 mail/message-list.c                                |  114 ++++++++++++--------
 4 files changed, 67 insertions(+), 57 deletions(-)
---
diff --git a/doc/reference/evolution-util/evolution-util-sections.txt 
b/doc/reference/evolution-util/evolution-util-sections.txt
index 10b10da..b230bdf 100644
--- a/doc/reference/evolution-util/evolution-util-sections.txt
+++ b/doc/reference/evolution-util/evolution-util-sections.txt
@@ -4207,7 +4207,6 @@ e_tree_drag_source_set
 e_tree_drag_source_unset
 e_tree_drag_begin
 e_tree_is_dragging
-e_tree_row_count
 e_tree_get_tooltip
 ETreeFindNextParams
 e_tree_find_next
diff --git a/e-util/e-tree.c b/e-util/e-tree.c
index d9f723b..7ae1283 100644
--- a/e-util/e-tree.c
+++ b/e-util/e-tree.c
@@ -2196,14 +2196,6 @@ e_tree_view_to_model_row (ETree *tree,
                return view_row;
 }
 
-gint
-e_tree_row_count (ETree *tree)
-{
-       g_return_val_if_fail (E_IS_TREE (tree), -1);
-
-       return e_table_model_row_count (E_TABLE_MODEL (tree->priv->etta));
-}
-
 GtkWidget *
 e_tree_get_tooltip (ETree *tree)
 {
diff --git a/e-util/e-tree.h b/e-util/e-tree.h
index 6a2745c..5db26b4 100644
--- a/e-util/e-tree.h
+++ b/e-util/e-tree.h
@@ -272,7 +272,6 @@ GdkDragContext *e_tree_drag_begin           (ETree *tree,
 
 gboolean       e_tree_is_dragging              (ETree *tree);
 
-gint           e_tree_row_count                (ETree *tree);
 GtkWidget *    e_tree_get_tooltip              (ETree *tree);
 
 typedef enum {
diff --git a/mail/message-list.c b/mail/message-list.c
index ed37901..4ce861a 100644
--- a/mail/message-list.c
+++ b/mail/message-list.c
@@ -343,7 +343,9 @@ regen_data_new (MessageList *message_list,
        RegenData *regen_data;
        EActivity *activity;
        EMailSession *session;
+       ETreeTableAdapter *adapter;
        gboolean searching;
+       gint row_count;
 
        activity = e_activity_new ();
        e_activity_set_cancellable (activity, cancellable);
@@ -383,7 +385,10 @@ regen_data_new (MessageList *message_list,
 
        searching = (g_strcmp0 (message_list->search, " ") != 0);
 
-       if (e_tree_row_count (E_TREE (message_list)) <= 0) {
+       adapter = e_tree_get_table_adapter (E_TREE (message_list));
+       row_count = e_table_model_row_count (E_TABLE_MODEL (adapter));
+
+       if (row_count <= 0) {
                if (gtk_widget_get_visible (GTK_WIDGET (message_list))) {
                        gchar *txt;
 
@@ -396,11 +401,6 @@ regen_data_new (MessageList *message_list,
        } else if (regen_data->group_by_threads &&
                   !message_list->just_set_folder &&
                   !searching) {
-
-               ETreeTableAdapter *adapter;
-
-               adapter = e_tree_get_table_adapter (E_TREE (message_list));
-
                if (message_list->priv->any_row_changed) {
                        /* Something changed.  If it was an expand
                         * state change, then save the expand state. */
@@ -782,24 +782,30 @@ ml_search_path (MessageList *message_list,
                 guint32 flags,
                 guint32 mask)
 {
+       ETreeTableAdapter *adapter;
        GNode *node;
-       gint row, count;
-       ETreeTableAdapter *etta;
+       gint row_count;
+       gint row;
 
-       etta = e_tree_get_table_adapter (E_TREE (message_list));
+       if (message_list->cursor_uid == NULL)
+               return NULL;
 
-       if (message_list->cursor_uid == NULL
-           || (node = g_hash_table_lookup (message_list->uid_nodemap, message_list->cursor_uid)) == NULL)
+       node = g_hash_table_lookup (
+               message_list->uid_nodemap,
+               message_list->cursor_uid);
+       if (node == NULL)
                return NULL;
 
-       row = e_tree_table_adapter_row_of_node (etta, node);
+       adapter = e_tree_get_table_adapter (E_TREE (message_list));
+       row_count = e_table_model_row_count (E_TABLE_MODEL (adapter));
+
+       row = e_tree_table_adapter_row_of_node (adapter, node);
        if (row == -1)
                return NULL;
-       count = e_table_model_row_count ((ETableModel *) etta);
 
        if ((direction & MESSAGE_LIST_SELECT_DIRECTION) == MESSAGE_LIST_SELECT_NEXT)
                node = ml_search_forward (
-                       message_list, row + 1, count - 1, flags, mask);
+                       message_list, row + 1, row_count - 1, flags, mask);
        else
                node = ml_search_backward (
                        message_list, row - 1, 0, flags, mask);
@@ -810,7 +816,7 @@ ml_search_path (MessageList *message_list,
                                message_list, 0, row, flags, mask);
                else
                        node = ml_search_backward (
-                               message_list, count - 1, row, flags, mask);
+                               message_list, row_count - 1, row, flags, mask);
        }
 
        return node;
@@ -982,26 +988,33 @@ message_list_select_uid (MessageList *message_list,
 void
 message_list_select_next_thread (MessageList *message_list)
 {
+       ETreeTableAdapter *adapter;
        GNode *node;
-       ETreeTableAdapter *etta;
-       gint i, count, row;
+       gint row_count;
+       gint row;
+       gint ii;
 
        g_return_if_fail (IS_MESSAGE_LIST (message_list));
 
-       etta = e_tree_get_table_adapter (E_TREE (message_list));
+       if (message_list->cursor_uid == NULL)
+               return;
 
-       if (!message_list->cursor_uid
-           || (node = g_hash_table_lookup (message_list->uid_nodemap, message_list->cursor_uid)) == NULL)
+       node = g_hash_table_lookup (
+               message_list->uid_nodemap,
+               message_list->cursor_uid);
+       if (node == NULL)
                return;
 
-       row = e_tree_table_adapter_row_of_node (etta, node);
+       adapter = e_tree_get_table_adapter (E_TREE (message_list));
+       row_count = e_table_model_row_count ((ETableModel *) adapter);
+
+       row = e_tree_table_adapter_row_of_node (adapter, node);
        if (row == -1)
                return;
-       count = e_table_model_row_count ((ETableModel *) etta);
 
        /* find the next node which has a root parent (i.e. toplevel node) */
-       for (i = row + 1; i < count - 1; i++) {
-               node = e_tree_table_adapter_node_at_row (etta, i);
+       for (ii = row + 1; ii < row_count - 1; ii++) {
+               node = e_tree_table_adapter_node_at_row (adapter, ii);
                if (node != NULL && G_NODE_IS_ROOT (node->parent)) {
                        select_node (message_list, node);
                        return;
@@ -1012,20 +1025,26 @@ message_list_select_next_thread (MessageList *message_list)
 void
 message_list_select_prev_thread (MessageList *message_list)
 {
+       ETreeTableAdapter *adapter;
        GNode *node;
-       ETreeTableAdapter *etta;
-       gint i, row;
        gboolean skip_first;
+       gint row;
+       gint ii;
 
        g_return_if_fail (IS_MESSAGE_LIST (message_list));
 
-       etta = e_tree_get_table_adapter (E_TREE (message_list));
+       if (message_list->cursor_uid == NULL)
+               return;
 
-       if (!message_list->cursor_uid
-           || (node = g_hash_table_lookup (message_list->uid_nodemap, message_list->cursor_uid)) == NULL)
+       node = g_hash_table_lookup (
+               message_list->uid_nodemap,
+               message_list->cursor_uid);
+       if (node == NULL)
                return;
 
-       row = e_tree_table_adapter_row_of_node (etta, node);
+       adapter = e_tree_get_table_adapter (E_TREE (message_list));
+
+       row = e_tree_table_adapter_row_of_node (adapter, node);
        if (row == -1)
                return;
 
@@ -1033,8 +1052,8 @@ message_list_select_prev_thread (MessageList *message_list)
        skip_first = !G_NODE_IS_ROOT (node->parent);
 
        /* find the previous node which has a root parent (i.e. toplevel node) */
-       for (i = row - 1; i >= 0; i--) {
-               node = e_tree_table_adapter_node_at_row (etta, i);
+       for (ii = row - 1; ii >= 0; ii--) {
+               node = e_tree_table_adapter_node_at_row (adapter, ii);
                if (node != NULL && G_NODE_IS_ROOT (node->parent)) {
                        if (skip_first) {
                                skip_first = FALSE;
@@ -2641,13 +2660,16 @@ message_list_selectable_update_actions (ESelectable *selectable,
                                         GdkAtom *clipboard_targets,
                                         gint n_clipboard_targets)
 {
+       ETreeTableAdapter *adapter;
        GtkAction *action;
-       gboolean sensitive;
+       gint row_count;
+
+       adapter = e_tree_get_table_adapter (E_TREE (selectable));
+       row_count = e_table_model_row_count (E_TABLE_MODEL (adapter));
 
        action = e_focus_tracker_get_select_all_action (focus_tracker);
-       sensitive = (e_tree_row_count (E_TREE (selectable)) > 0);
        gtk_action_set_tooltip (action, _("Select all visible messages"));
-       gtk_action_set_sensitive (action, sensitive);
+       gtk_action_set_sensitive (action, row_count > 0);
 }
 
 static void
@@ -3541,16 +3563,14 @@ find_next_selectable (MessageList *message_list)
 {
        ETreeTableAdapter *adapter;
        GNode *node;
-       gint last;
        gint vrow_orig;
        gint vrow;
-       ETree *et = E_TREE (message_list);
+       gint row_count;
        CamelMessageInfo *info;
 
-       adapter = e_tree_get_table_adapter (E_TREE (message_list));
-
        node = g_hash_table_lookup (
-               message_list->uid_nodemap, message_list->cursor_uid);
+               message_list->uid_nodemap,
+               message_list->cursor_uid);
        if (node == NULL)
                return NULL;
 
@@ -3558,7 +3578,8 @@ find_next_selectable (MessageList *message_list)
        if (info && is_node_selectable (message_list, info))
                return NULL;
 
-       last = e_tree_row_count (et);
+       adapter = e_tree_get_table_adapter (E_TREE (message_list));
+       row_count = e_table_model_row_count (E_TABLE_MODEL (adapter));
 
        /* model_to_view_row etc simply dont work for sorted views.  Sigh. */
        vrow_orig = e_tree_table_adapter_row_of_node (adapter, node);
@@ -3566,7 +3587,7 @@ find_next_selectable (MessageList *message_list)
        /* We already checked this node. */
        vrow = vrow_orig + 1;
 
-       while (vrow < last) {
+       while (vrow < row_count) {
                node = e_tree_table_adapter_node_at_row (adapter, vrow);
                info = get_message_info (message_list, node);
                if (info && is_node_selectable (message_list, info))
@@ -5353,6 +5374,7 @@ message_list_regen_done_cb (GObject *source_object,
        ETree *tree;
        ETreeTableAdapter *adapter;
        gboolean searching;
+       gint row_count;
        GError *local_error = NULL;
 
        message_list = MESSAGE_LIST (source_object);
@@ -5468,6 +5490,8 @@ message_list_regen_done_cb (GObject *source_object,
                        regen_data->summary);
        }
 
+       row_count = e_table_model_row_count (E_TABLE_MODEL (adapter));
+
        if (regen_data->select_all) {
                message_list_select_all (message_list);
 
@@ -5478,10 +5502,6 @@ message_list_regen_done_cb (GObject *source_object,
                        regen_data->select_use_fallback);
 
        } else if (message_list->cursor_uid == NULL && regen_data->last_row != -1) {
-               gint row_count;
-
-               row_count = e_table_model_row_count (E_TABLE_MODEL (adapter));
-
                if (regen_data->last_row >= row_count)
                        regen_data->last_row = row_count;
 
@@ -5505,7 +5525,7 @@ message_list_regen_done_cb (GObject *source_object,
                        (*message_list->search != '\0') &&
                        (strcmp (message_list->search, " ") != 0);
 
-               if (e_tree_row_count (E_TREE (tree)) > 0) {
+               if (row_count > 0) {
                        info_message = NULL;
                } else if (have_search_expr) {
                        info_message =


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