[balsa/wip/gtk4: 56/351] Use G_N_ELEMENTS macro



commit 971471adaf0940200c7d369ff5fd45859ca5293f
Author: Peter Bloomfield <PeterBloomfield bellsouth net>
Date:   Tue Nov 7 19:23:19 2017 -0500

    Use G_N_ELEMENTS macro
    
    … instead of Balsa's own ELEMENTS macro, defined in two separate places.

 libbalsa/filter-funcs.c     |    6 +++---
 libbalsa/identity.c         |    3 +--
 libbalsa/libbalsa.c         |    4 ++--
 libbalsa/libbalsa.h         |    2 --
 libbalsa/mailbox.c          |    2 +-
 src/balsa-index.c           |    4 ++--
 src/balsa-mblist.c          |    2 +-
 src/filter-edit-callbacks.c |    2 +-
 src/filter-edit-dialog.c    |    4 ++--
 src/mailbox-conf.c          |    4 ++--
 src/main-window.c           |    4 ++--
 src/sendmsg-window.c        |   14 +++++++-------
 12 files changed, 24 insertions(+), 27 deletions(-)
---
diff --git a/libbalsa/filter-funcs.c b/libbalsa/filter-funcs.c
index 77d8f31..859c8b1 100644
--- a/libbalsa/filter-funcs.c
+++ b/libbalsa/filter-funcs.c
@@ -300,7 +300,7 @@ libbalsa_condition_new_from_string(gchar **string)
         *string += 4;
     } else negated = FALSE;
 
-    for(i=0; i<ELEMENTS(cond_types); i++)
+    for(i=0; i<G_N_ELEMENTS(cond_types); i++)
         if(strncmp(*string, cond_types[i].key, cond_types[i].keylen) == 0) {
             *string += cond_types[i].keylen;
             return cond_types[i].parser(negated, string);
@@ -390,7 +390,7 @@ append_header_names(LibBalsaCondition *cond, GString *res)
         g_string_append_printf(res, _("Header:%s"),
                                cond->match.string.user_header);
     }
-    for (i=0; i<ELEMENTS(header_name_map); ++i) {
+    for (i=0; i<G_N_ELEMENTS(header_name_map); ++i) {
         if (CONDITION_CHKMATCH(cond, header_name_map[i].header)) {
             if (res->len>0) {
                 g_string_append_printf(res, ",%s",
@@ -416,7 +416,7 @@ append_flag_names(LibBalsaCondition *cond, GString *res)
     };
     unsigned i;
     gsize len = res->len;
-    for (i=0; i<ELEMENTS(flag_name_map); ++i) {
+    for (i=0; i<G_N_ELEMENTS(flag_name_map); ++i) {
         if (cond->match.flags & flag_name_map[i].flag) {
             if (res->len == len) {
                 res = g_string_append(res, _(flag_name_map[i].flag_name));
diff --git a/libbalsa/identity.c b/libbalsa/identity.c
index dde657b..919d4fb 100644
--- a/libbalsa/identity.c
+++ b/libbalsa/identity.c
@@ -565,7 +565,6 @@ sd_response_ok(SelectDialogInfo * sdi)
  * The Manage Identities dialog; called from main window.
  */
 
-#define ELEMENTS(x) (sizeof (x) / sizeof (x[0]))
 typedef struct _IdentityDeleteInfo IdentityDeleteInfo;
 
 /* button actions */
@@ -1328,7 +1327,7 @@ md_sig_path_changed(gboolean active, GObject * dialog)
         "identity-sigpath",
     };
 
-    for (i = 0; i < ELEMENTS(button_key); i++) {
+    for (i = 0; i < G_N_ELEMENTS(button_key); i++) {
         GtkWidget *button = g_object_get_data(dialog, button_key[i]);
         gtk_widget_set_sensitive(button, active);
     }
diff --git a/libbalsa/libbalsa.c b/libbalsa/libbalsa.c
index 9fa485e..a4266ab 100644
--- a/libbalsa/libbalsa.c
+++ b/libbalsa/libbalsa.c
@@ -590,14 +590,14 @@ ask_cert_real(void *data)
                     acd->explanation);
 
     name = X509_NAME_oneline(X509_get_subject_name (cert), buf, sizeof (buf));
-    for (i = 0; i < ELEMENTS(part); i++) {
+    for (i = 0; i < G_N_ELEMENTS(part); i++) {
         g_string_append(str, x509_get_part (name, part[i]));
         g_string_append_c(str, '\n');
     }
 
     g_string_append(str, _("\n<b>This certificate was issued by:</b>\n"));
     name = X509_NAME_oneline(X509_get_issuer_name(cert), buf, sizeof (buf));
-    for (i = 0; i < ELEMENTS(part); i++) {
+    for (i = 0; i < G_N_ELEMENTS(part); i++) {
         g_string_append(str, x509_get_part (name, part[i]));
         g_string_append_c(str, '\n');
     }
diff --git a/libbalsa/libbalsa.h b/libbalsa/libbalsa.h
index b53d472..9fbdc5e 100644
--- a/libbalsa/libbalsa.h
+++ b/libbalsa/libbalsa.h
@@ -78,8 +78,6 @@ typedef void LibBalsaCanReachCallback(GObject * object,
 #include "mailbox_mh.h"
 #include "mailbox_maildir.h"
 
-#define ELEMENTS(x) (sizeof (x) / sizeof (x[0]))
-
 /*
  * Error domains for GError:
  */
diff --git a/libbalsa/mailbox.c b/libbalsa/mailbox.c
index 63c0432..9ab6631 100644
--- a/libbalsa/mailbox.c
+++ b/libbalsa/mailbox.c
@@ -2936,7 +2936,7 @@ mbox_model_get_value(GtkTreeModel *tree_model,
     
     g_return_if_fail(VALID_ITER(iter, tree_model));
     g_return_if_fail(column >= 0 &&
-                     column < (int) ELEMENTS(mbox_model_col_type));
+                     column < (gint) G_N_ELEMENTS(mbox_model_col_type));
  
     g_value_init (value, mbox_model_col_type[column]);
     msgno = GPOINTER_TO_UINT( ((GNode*)iter->user_data)->data );
diff --git a/src/balsa-index.c b/src/balsa-index.c
index 981d2c6..5ee3ea6 100644
--- a/src/balsa-index.c
+++ b/src/balsa-index.c
@@ -449,7 +449,7 @@ bndx_instance_init(BalsaIndex * index)
 
     gtk_drag_source_set(GTK_WIDGET (index),
                         GDK_BUTTON1_MASK | GDK_SHIFT_MASK | GDK_CONTROL_MASK,
-                        index_drag_types, ELEMENTS(index_drag_types),
+                        index_drag_types, G_N_ELEMENTS(index_drag_types),
                         GDK_ACTION_DEFAULT | GDK_ACTION_COPY |
                         GDK_ACTION_MOVE);
     g_signal_connect(index, "drag-data-get",
@@ -1818,7 +1818,7 @@ bndx_popup_menu_create(BalsaIndex * index)
 
     menu = gtk_menu_new();
 
-    for (i = 0; i < ELEMENTS(entries); i++)
+    for (i = 0; i < G_N_ELEMENTS(entries); i++)
         create_stock_menu_item(menu, _(entries[i].label),
                                entries[i].func, index);
 
diff --git a/src/balsa-mblist.c b/src/balsa-mblist.c
index 243a748..33279d7 100644
--- a/src/balsa-mblist.c
+++ b/src/balsa-mblist.c
@@ -1168,7 +1168,7 @@ balsa_mblist_default_signal_bindings(BalsaMBList * mblist)
                            G_CALLBACK(bmbl_column_resize), NULL);
     gtk_tree_view_enable_model_drag_dest(GTK_TREE_VIEW(mblist),
                                          bmbl_drop_types,
-                                         ELEMENTS(bmbl_drop_types),
+                                         G_N_ELEMENTS(bmbl_drop_types),
                                          GDK_ACTION_DEFAULT |
                                          GDK_ACTION_COPY |
                                          GDK_ACTION_MOVE);
diff --git a/src/filter-edit-callbacks.c b/src/filter-edit-callbacks.c
index 80dd1f2..ef1fd26 100644
--- a/src/filter-edit-callbacks.c
+++ b/src/filter-edit-callbacks.c
@@ -1181,7 +1181,7 @@ void build_condition_dialog(GtkWidget * condition_dialog)
     label = gtk_label_new_with_mnemonic(_("Search T_ype:"));
     gtk_box_pack_start(GTK_BOX(box), label);
     fe_search_option_menu =
-        fe_build_option_menu(fe_search_type, ELEMENTS(fe_search_type),
+        fe_build_option_menu(fe_search_type, G_N_ELEMENTS(fe_search_type),
                              G_CALLBACK(fe_typesmenu_cb), field_frame);
     gtk_box_pack_start(GTK_BOX(box), fe_search_option_menu);
     gtk_label_set_mnemonic_widget(GTK_LABEL(label), fe_search_option_menu);
diff --git a/src/filter-edit-dialog.c b/src/filter-edit-dialog.c
index a22dd71..f8540f1 100644
--- a/src/filter-edit-dialog.c
+++ b/src/filter-edit-dialog.c
@@ -280,7 +280,7 @@ build_match_page()
     gtk_grid_attach(GTK_GRID(page), box, 1, 1, 1, 1);
 
     fe_op_codes_option_menu = fe_build_option_menu(fe_op_codes,
-                                               ELEMENTS(fe_op_codes),
+                                               G_N_ELEMENTS(fe_op_codes),
                                                NULL, NULL);
     g_signal_connect(fe_op_codes_option_menu, "changed",
                      G_CALLBACK(fe_action_changed), NULL);
@@ -445,7 +445,7 @@ build_action_page(GtkWindow * window)
     gtk_container_add(GTK_CONTAINER(frame), box);
 
     fe_action_option_menu =
-        fe_build_option_menu(fe_actions, ELEMENTS(fe_actions),
+        fe_build_option_menu(fe_actions, G_N_ELEMENTS(fe_actions),
                              G_CALLBACK(fe_action_selected), NULL);
     gtk_widget_set_vexpand(fe_action_option_menu, TRUE);
     gtk_box_pack_start(GTK_BOX(box), fe_action_option_menu);
diff --git a/src/mailbox-conf.c b/src/mailbox-conf.c
index f014f57..999b6b1 100644
--- a/src/mailbox-conf.c
+++ b/src/mailbox-conf.c
@@ -230,7 +230,7 @@ balsa_server_conf_get_advanced_widget(BalsaServerConf *bsc, LibBalsaServer *s,
     bsc->tls_option = gtk_combo_box_text_new();
     gtk_widget_set_hexpand(bsc->tls_option, TRUE);
     mailbox_conf_combo_box_make(GTK_COMBO_BOX_TEXT(bsc->tls_option),
-                                ELEMENTS(tls_menu), tls_menu);
+                                G_N_ELEMENTS(tls_menu), tls_menu);
     gtk_combo_box_set_active(GTK_COMBO_BOX(bsc->tls_option),
                              s ? s->tls_mode : LIBBALSA_TLS_ENABLED);
     gtk_grid_attach(bsc->grid, bsc->tls_option, 1, 1, 1, 1);
@@ -1544,7 +1544,7 @@ mailbox_conf_view_new_full(LibBalsaMailbox * mailbox,
         view_info->chk_crypt = gtk_combo_box_text_new();
         gtk_label_set_mnemonic_widget(GTK_LABEL(label), view_info->chk_crypt);
         mailbox_conf_combo_box_make(GTK_COMBO_BOX_TEXT(view_info->chk_crypt),
-                                    ELEMENTS(chk_crypt_menu),
+                                    G_N_ELEMENTS(chk_crypt_menu),
                                     chk_crypt_menu);
         gtk_combo_box_set_active(GTK_COMBO_BOX(view_info->chk_crypt),
                                  libbalsa_mailbox_get_crypto_mode
diff --git a/src/main-window.c b/src/main-window.c
index aa1390e..359dbde 100644
--- a/src/main-window.c
+++ b/src/main-window.c
@@ -463,7 +463,7 @@ bw_create_index_widget(BalsaWindow *bw)
     GList *focusable_widgets;
 
     if(!view_filters_translated) {
-        for(i=0; i<ELEMENTS(view_filters); i++)
+        for(i=0; i<G_N_ELEMENTS(view_filters); i++)
             view_filters[i].str = _(view_filters[i].str);
         view_filters_translated = TRUE;
     }
@@ -472,7 +472,7 @@ bw_create_index_widget(BalsaWindow *bw)
 
     bw->filter_choice = gtk_combo_box_text_new();
     gtk_box_pack_start(GTK_BOX(bw->sos_bar), bw->filter_choice);
-    for(i=0; i<ELEMENTS(view_filters); i++)
+    for(i=0; i<G_N_ELEMENTS(view_filters); i++)
         gtk_combo_box_text_insert_text(GTK_COMBO_BOX_TEXT(bw->filter_choice),
                                        i, view_filters[i].str);
     gtk_combo_box_set_active(GTK_COMBO_BOX(bw->filter_choice), 0);
diff --git a/src/sendmsg-window.c b/src/sendmsg-window.c
index c176685..3a20132 100644
--- a/src/sendmsg-window.c
+++ b/src/sendmsg-window.c
@@ -683,7 +683,7 @@ find_locale_index_by_locale(const gchar * locale)
 
     if (!locale || strcmp(locale, "C") == 0)
         locale = "en_US";
-    for (i = 0; i < ELEMENTS(locales); i++) {
+    for (i = 0; i < G_N_ELEMENTS(locales); i++) {
        for (j = 0; locale[j] && locales[i].locale[j] == locale[j]; j++);
        if (j > maxfit) {
            maxfit = j;
@@ -2399,7 +2399,7 @@ create_email_entry(BalsaSendmsg         * bsmsg,
                     G_CALLBACK(address_book_cb), bsmsg);
     gtk_drag_dest_set(GTK_WIDGET(*view), GTK_DEST_DEFAULT_ALL,
                      email_field_drop_types,
-                     ELEMENTS(email_field_drop_types),
+                     G_N_ELEMENTS(email_field_drop_types),
                      GDK_ACTION_COPY | GDK_ACTION_MOVE);
 
     libbalsa_address_view_set_domain(*view, bsmsg->ident->domain);
@@ -2707,7 +2707,7 @@ sw_attachment_list(BalsaSendmsg *bsmsg)
     g_signal_connect(G_OBJECT(bsmsg->window), "drag_data_received",
                     G_CALLBACK(attachments_add), bsmsg);
     gtk_drag_dest_set(GTK_WIDGET(bsmsg->window), GTK_DEST_DEFAULT_ALL,
-                     drop_types, ELEMENTS(drop_types),
+                     drop_types, G_N_ELEMENTS(drop_types),
                      GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK);
 
     frame = gtk_frame_new(NULL);
@@ -2916,7 +2916,7 @@ create_text_area(BalsaSendmsg * bsmsg)
                     G_CALLBACK(drag_data_quote), bsmsg);
     /* GTK_DEST_DEFAULT_ALL in drag_set would trigger bug 150141 */
     gtk_drag_dest_set(GTK_WIDGET(bsmsg->text), 0,
-                     drop_types, ELEMENTS(drop_types),
+                     drop_types, G_N_ELEMENTS(drop_types),
                      GDK_ACTION_COPY | GDK_ACTION_MOVE | GDK_ACTION_LINK);
 
     gtk_widget_show(scroll);
@@ -4033,9 +4033,9 @@ create_lang_menu(GtkWidget * parent, BalsaSendmsg * bsmsg)
 #endif                          /* CAN_SEPARATE_RADIO_MENU_ITEMS */
 
     if (!locales_sorted) {
-        for (i = 0; i < ELEMENTS(locales); i++)
+        for (i = 0; i < G_N_ELEMENTS(locales); i++)
             locales[i].lang_name = _(locales[i].lang_name);
-        qsort(locales, ELEMENTS(locales), sizeof(struct SendLocales),
+        qsort(locales, G_N_ELEMENTS(locales), sizeof(struct SendLocales),
               comp_send_locales);
         locales_sorted = TRUE;
     }
@@ -4054,7 +4054,7 @@ create_lang_menu(GtkWidget * parent, BalsaSendmsg * bsmsg)
     enchant_broker_list_dicts(broker, sw_broker_cb, &lang_list);
 #endif                          /* HAVE_GTKSPELL_3_0_3 */
 
-    for (i = 0; i < ELEMENTS(locales); i++) {
+    for (i = 0; i < G_N_ELEMENTS(locales); i++) {
         gconstpointer found;
 
         if (locales[i].locale == NULL || locales[i].locale[0] == '\0')


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