diff options
Diffstat (limited to 'src/idoactionhelper.c')
-rw-r--r-- | src/idoactionhelper.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/idoactionhelper.c b/src/idoactionhelper.c index f0e300b..a4eb51d 100644 --- a/src/idoactionhelper.c +++ b/src/idoactionhelper.c @@ -403,6 +403,30 @@ ido_action_helper_activate (IdoActionHelper *helper) } /** + * ido_action_helper_activate_with_parameter: + * @helper: an #IdoActionHelper + * @parameter: a #GVariant containing the parameter + * + * Activates the action that is associated with this helper passing + * @parameter instead the "target" associated with the menu item this + * helper is bound to. + */ +void +ido_action_helper_activate_with_parameter (IdoActionHelper *helper, + GVariant *parameter) +{ + g_return_if_fail (IDO_IS_ACTION_HELPER (helper)); + g_return_if_fail (parameter != NULL); + + g_variant_ref_sink (parameter); + + if (helper->actions && helper->action_name) + g_action_group_activate_action (helper->actions, helper->action_name, parameter); + + g_variant_unref (parameter); +} + +/** * ido_action_helper_change_action_state: * @helper: an #IdoActionHelper * @state: the proposed new state of the action |