Add 'change_state' callback to GActionEntry

This commit is contained in:
Ryan Lortie 2011-06-29 16:04:09 +01:00 committed by Javier Jardon
parent 535dcf4f22
commit 276750aa7a
2 changed files with 11 additions and 1 deletions

View File

@ -393,6 +393,8 @@ g_simple_action_group_remove (GSimpleActionGroup *simple,
* format. The state is parsed with no extra type information,
* so type tags must be added to the string if they are
* necessary.
* @change_state: the callback to connect to the "change-state" signal
* of the action
*
* This struct defines a single action. It is for use with
* g_simple_action_group_add_entries().
@ -523,6 +525,10 @@ g_simple_action_group_add_entries (GSimpleActionGroup *simple,
g_signal_connect (action, "activate",
G_CALLBACK (entry->activate), user_data);
if (entry->change_state != NULL)
g_signal_connect (action, "change-state",
G_CALLBACK (entry->change_state), user_data);
g_simple_action_group_insert (simple, G_ACTION (action));
g_object_unref (action);
}

View File

@ -96,8 +96,12 @@ struct _GActionEntry
const gchar *state;
void (* change_state) (GSimpleAction *action,
GVariant *value,
gpointer user_data);
/*< private >*/
gsize padding[4];
gsize padding[3];
};
void g_simple_action_group_add_entries (GSimpleActionGroup *simple,