[balsa/wip/gtk4: 208/351] Use gtk_container_foreach
- From: Peter Bloomfield <peterb src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [balsa/wip/gtk4: 208/351] Use gtk_container_foreach
- Date: Wed, 23 May 2018 21:34:26 +0000 (UTC)
commit e5886f90069da5544972638c4f49a425e9cb30fa
Author: Peter Bloomfield <PeterBloomfield bellsouth net>
Date: Tue Mar 6 18:00:15 2018 -0500
Use gtk_container_foreach
…instead of getting the list of children, and in one place leaking it.
src/balsa-index.c | 13 ++++++++-----
src/filter-edit-callbacks.c | 13 +++++++++----
2 files changed, 17 insertions(+), 9 deletions(-)
---
diff --git a/src/balsa-index.c b/src/balsa-index.c
index 9e10acc..9dbbf64 100644
--- a/src/balsa-index.c
+++ b/src/balsa-index.c
@@ -1893,12 +1893,17 @@ bndx_popup_menu_create(BalsaIndex * index)
*/
static void
+bndx_set_sensitive_func(GtkWidget * item, gpointer sensitive)
+{
+ gtk_widget_set_sensitive(item, GPOINTER_TO_INT(sensitive));
+}
+
+static void
bndx_do_popup(BalsaIndex * index, const GdkEvent * event)
{
GtkWidget *menu = index->popup_menu;
GtkWidget *submenu;
LibBalsaMailbox* mailbox;
- GList *list, *l;
gboolean any;
gboolean any_deleted = FALSE;
gboolean any_not_deleted = FALSE;
@@ -1920,10 +1925,8 @@ bndx_do_popup(BalsaIndex * index, const GdkEvent * event)
any = selected->len > 0;
balsa_index_selected_msgnos_free(index, selected);
- l = gtk_container_get_children(GTK_CONTAINER(menu));
- for (list = l; list; list = list->next)
- gtk_widget_set_sensitive(GTK_WIDGET(list->data), any);
- g_list_free(l);
+ gtk_container_foreach(GTK_CONTAINER(menu), bndx_set_sensitive_func,
+ GINT_TO_POINTER(any));
mailbox = index->mailbox_node->mailbox;
gtk_widget_set_sensitive(index->delete_item,
diff --git a/src/filter-edit-callbacks.c b/src/filter-edit-callbacks.c
index d7832e4..8893bf2 100644
--- a/src/filter-edit-callbacks.c
+++ b/src/filter-edit-callbacks.c
@@ -1532,6 +1532,12 @@ fe_action_selected(GtkWidget * widget, gpointer data)
*
* Callback for the "toggled" signal of the action buttons.
*/
+static void
+fe_button_toggled_func(GtkWidget * child, gpointer active)
+{
+ gtk_widget_set_sensitive(child, GPOINTER_TO_INT(active));
+}
+
void
fe_button_toggled(GtkWidget * widget, gpointer data)
{
@@ -1539,10 +1545,9 @@ fe_button_toggled(GtkWidget * widget, gpointer data)
gboolean active = gtk_toggle_button_get_active(button);
if (GTK_IS_CONTAINER(data)) {
- GList *list;
- for (list = gtk_container_get_children(GTK_CONTAINER(data));
- list != NULL; list = list->next)
- gtk_widget_set_sensitive(GTK_WIDGET(list->data), active);
+ gtk_container_foreach(GTK_CONTAINER(data),
+ fe_button_toggled_func,
+ GINT_TO_POINTER(active));
} else
gtk_widget_set_sensitive(GTK_WIDGET(data), active);
set_button_sensitivities(TRUE);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]