Implement widget states as a set of flags

gtk_widget_(set|unset|get)_state_flags() has been added, using GtkStateFlags
to represent the widget state. GtkStateType API has been implemented on top
of the new one.
This commit is contained in:
Carlos Garnacho
2010-10-30 21:48:38 +02:00
parent 34b91a74e5
commit cd98204619
4 changed files with 271 additions and 80 deletions

View File

@ -225,6 +225,8 @@ struct _GtkWidgetClass
GtkAllocation *allocation);
void (* state_changed) (GtkWidget *widget,
GtkStateType previous_state);
void (* state_flags_changed) (GtkWidget *widget,
GtkStateFlags previous_state_flags);
void (* parent_set) (GtkWidget *widget,
GtkWidget *previous_parent);
void (* hierarchy_changed) (GtkWidget *widget,
@ -578,6 +580,13 @@ void gtk_widget_set_state (GtkWidget *widget,
GtkStateType state);
GtkStateType gtk_widget_get_state (GtkWidget *widget);
void gtk_widget_set_state_flags (GtkWidget *widget,
GtkStateFlags flags,
gboolean clear);
void gtk_widget_unset_state_flags (GtkWidget *widget,
GtkStateFlags flags);
GtkStateFlags gtk_widget_get_state_flags (GtkWidget *widget);
void gtk_widget_set_sensitive (GtkWidget *widget,
gboolean sensitive);
gboolean gtk_widget_get_sensitive (GtkWidget *widget);