forked from AuroraMiddleware/gtk
sizegroup: Refactor function
Get rid of continues in loop. This allows doing more complex things in future commits.
This commit is contained in:
parent
0721d964e4
commit
1f2e21ab9a
@ -239,43 +239,36 @@ queue_resize_on_widget (GtkWidget *widget,
|
|||||||
|
|
||||||
while (parent)
|
while (parent)
|
||||||
{
|
{
|
||||||
GSList *widget_groups;
|
|
||||||
GHashTableIter iter;
|
|
||||||
gpointer current;
|
|
||||||
|
|
||||||
if (widget == parent)
|
if (widget == parent)
|
||||||
real_queue_resize (widget);
|
real_queue_resize (widget);
|
||||||
|
|
||||||
if (widget == parent && !check_siblings)
|
if (!check_siblings || _gtk_widget_get_sizegroups (parent) == NULL)
|
||||||
{
|
{
|
||||||
parent = _gtk_widget_get_parent (parent);
|
check_siblings = TRUE;
|
||||||
continue;
|
|
||||||
}
|
}
|
||||||
|
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);
|
||||||
|
|
||||||
widget_groups = _gtk_widget_get_sizegroups (parent);
|
g_hash_table_iter_init (&iter, widgets);
|
||||||
if (!widget_groups)
|
while (g_hash_table_iter_next (&iter, ¤t, NULL))
|
||||||
{
|
|
||||||
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)
|
|
||||||
{
|
{
|
||||||
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);
|
parent = _gtk_widget_get_parent (parent);
|
||||||
|
Loading…
Reference in New Issue
Block a user