priv->group = g_slist_prepend (NULL, radio_button);
_gtk_button_set_depressed (GTK_BUTTON (radio_button), TRUE);
- gtk_widget_set_state (GTK_WIDGET (radio_button), GTK_STATE_ACTIVE);
+ gtk_widget_set_state_flags (GTK_WIDGET (radio_button), GTK_STATE_FLAG_ACTIVE, TRUE);
}
static void
GtkRadioButtonPrivate *priv = radio_button->priv;
GtkToggleButton *toggle_button = GTK_TOGGLE_BUTTON (button);
GtkToggleButton *tmp_button;
- GtkStateType new_state;
+ GtkStateFlags new_state = 0;
GSList *tmp_list;
gint toggled;
gboolean depressed;
if (!tmp_button)
{
- new_state = (button->priv->in_button ? GTK_STATE_PRELIGHT : GTK_STATE_ACTIVE);
+ if (button->priv->in_button)
+ new_state |= GTK_STATE_FLAG_PRELIGHT;
+
+ new_state |= GTK_STATE_FLAG_ACTIVE;
}
else
{
toggled = TRUE;
_gtk_toggle_button_set_active (toggle_button,
!gtk_toggle_button_get_active (toggle_button));
- new_state = (button->priv->in_button ? GTK_STATE_PRELIGHT : GTK_STATE_NORMAL);
+
+ if (button->priv->in_button)
+ new_state |= GTK_STATE_FLAG_PRELIGHT;
}
}
else
}
}
- new_state = (button->priv->in_button ? GTK_STATE_PRELIGHT : GTK_STATE_ACTIVE);
+ if (button->priv->in_button)
+ new_state |= GTK_STATE_FLAG_PRELIGHT;
+
+ new_state |= GTK_STATE_FLAG_ACTIVE;
}
if (gtk_toggle_button_get_inconsistent (toggle_button))
else
depressed = gtk_toggle_button_get_active (toggle_button);
- if (gtk_widget_get_state (GTK_WIDGET (button)) != new_state)
- gtk_widget_set_state (GTK_WIDGET (button), new_state);
+ if (gtk_widget_get_state_flags (GTK_WIDGET (button)) != new_state)
+ gtk_widget_set_state_flags (GTK_WIDGET (button), new_state, TRUE);
if (toggled)
{