[gtk+/wip/otte/queue-resize: 17/33] sizegroup: Refactor function
- From: Benjamin Otte <otte src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gtk+/wip/otte/queue-resize: 17/33] sizegroup: Refactor function
- Date: Thu, 1 Oct 2015 21:55:56 +0000 (UTC)
commit 9739d92f17770996f693bb53ea6043e11972f7da
Author: Benjamin Otte <otte redhat com>
Date: Fri Sep 18 03:49:09 2015 +0200
sizegroup: Refactor function
Get rid of continues in loop. This allows doing more complex things in
future commits.
gtk/gtksizegroup.c | 53 ++++++++++++++++++++++-----------------------------
1 files changed, 23 insertions(+), 30 deletions(-)
---
diff --git a/gtk/gtksizegroup.c b/gtk/gtksizegroup.c
index 091bcc9..d6276a9 100644
--- a/gtk/gtksizegroup.c
+++ b/gtk/gtksizegroup.c
@@ -239,43 +239,36 @@ queue_resize_on_widget (GtkWidget *widget,
while (parent)
{
- GSList *widget_groups;
- GHashTableIter iter;
- gpointer current;
-
if (widget == parent)
real_queue_resize (widget);
- if (widget == parent && !check_siblings)
+ if (!check_siblings || _gtk_widget_get_sizegroups (parent) == NULL)
{
- parent = _gtk_widget_get_parent (parent);
- continue;
+ check_siblings = TRUE;
}
-
- widget_groups = _gtk_widget_get_sizegroups (parent);
- if (!widget_groups)
- {
- parent = _gtk_widget_get_parent (parent);
- continue;
- }
-
- g_hash_table_remove_all (widgets);
- g_hash_table_remove_all (groups);
- add_widget_to_closure (widgets, groups, parent, -1);
-
- g_hash_table_iter_init (&iter, widgets);
- while (g_hash_table_iter_next (&iter, ¤t, NULL))
- {
- if (current == parent)
- {
- /* do nothing */
- }
- else if (current == widget)
+ else
+ {
+ GHashTableIter iter;
+ gpointer current;
+
+ g_hash_table_remove_all (widgets);
+ g_hash_table_remove_all (groups);
+ add_widget_to_closure (widgets, groups, parent, -1);
+
+ g_hash_table_iter_init (&iter, widgets);
+ while (g_hash_table_iter_next (&iter, ¤t, NULL))
{
- g_warning ("A container and its child are part of this SizeGroup");
+ if (current == parent)
+ {
+ /* do nothing */
+ }
+ else if (current == widget)
+ {
+ g_warning ("A container and its child are part of this SizeGroup");
+ }
+ else
+ queue_resize_on_widget (current, FALSE);
}
- else
- queue_resize_on_widget (current, FALSE);
}
parent = _gtk_widget_get_parent (parent);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]