void _moo_action_set_accel_path (gpointer action, const char *accel_path) { g_return_if_fail (MOO_IS_ACTION_BASE (action)); gtk_action_set_accel_path (GTK_ACTION (action), accel_path); }
void actions_toggle_add(GtkActionGroup *act_group, const struct _actionhooks *ahs, int count) { int i; GtkToggleAction *action; char *nel = malloc(max_path); for (i = 0; i < count; i++) { char *label = gettext(ahs[i].label); action = gtk_toggle_action_new(ahs[i].name, label, ahs[i].tooltip == NULL ? label : gettext(ahs[i].tooltip), ahs[i].icon == NULL ? ahs[i].name : ahs[i].icon); sprintf(nel, "<Actions>/actions/%s", ahs[i].name); gtk_action_set_accel_path(GTK_ACTION(action), nel); //gtk_action_connect_accelerator(action); g_signal_connect(G_OBJECT(action), "activate", ahs[i].handler, GINT_TO_POINTER(ahs[i].parameter)); gtk_action_group_add_action_with_accel(act_group, GTK_ACTION(action), NULL); } free(nel); }
static void node_added_cb (EphyNode *parent, EphyNode *child, GtkActionGroup *action_group) { GObject *action_object; GtkAction *action; char name[EPHY_OPEN_TABS_ACTION_NAME_BUFFER_SIZE]; char accel[256]; EPHY_OPEN_TABS_ACTION_NAME_PRINTF (name, child); /* FIXME !!!! */ action = gtk_action_new (name, _("Open in New _Tabs"), _("Open the bookmarks in this topic in new tabs"), NULL); action_object = (GObject *)action; g_object_set_data (action_object, "ephy-node", child); g_object_set_data (action_object, "ephy-link", EPHY_LINK (action_group)); g_signal_connect (action, "activate", G_CALLBACK (activate_cb), NULL); g_snprintf (accel, sizeof (accel), "<Actions>/%s/%s", gtk_action_group_get_name (action_group), name); gtk_action_set_accel_path (action, accel); gtk_action_group_add_action (action_group, action); g_object_unref (action); }
void edit_actions_setup (GimpActionGroup *group) { GimpContext *context = gimp_get_user_context (group->gimp); GimpRGB color; GimpPattern *pattern; GtkAction *action; gimp_action_group_add_actions (group, "edit-action", edit_actions, G_N_ELEMENTS (edit_actions)); gimp_action_group_add_enum_actions (group, "edit-action", edit_fill_actions, G_N_ELEMENTS (edit_fill_actions), G_CALLBACK (edit_fill_cmd_callback)); action = gtk_action_group_get_action (GTK_ACTION_GROUP (group), "edit-paste-as-new-short"); gtk_action_set_accel_path (action, "<Actions>/edit/edit-paste-as-new"); action = gtk_action_group_get_action (GTK_ACTION_GROUP (group), "edit-fill-pattern"); g_object_set (action, "context", context, NULL); g_signal_connect_object (context, "foreground-changed", G_CALLBACK (edit_actions_foreground_changed), group, 0); g_signal_connect_object (context, "background-changed", G_CALLBACK (edit_actions_background_changed), group, 0); g_signal_connect_object (context, "pattern-changed", G_CALLBACK (edit_actions_pattern_changed), group, 0); gimp_context_get_foreground (context, &color); edit_actions_foreground_changed (context, &color, group); gimp_context_get_background (context, &color); edit_actions_background_changed (context, &color, group); pattern = gimp_context_get_pattern (context); edit_actions_pattern_changed (context, pattern, group); #define SET_ALWAYS_SHOW_IMAGE(action,show) \ gimp_action_group_set_action_always_show_image (group, action, show) SET_ALWAYS_SHOW_IMAGE ("edit-fill-fg", TRUE); SET_ALWAYS_SHOW_IMAGE ("edit-fill-bg", TRUE); SET_ALWAYS_SHOW_IMAGE ("edit-fill-pattern", TRUE); #undef SET_ALWAYS_SHOW_IMAGE }
void tools_actions_setup (GimpActionGroup *group) { GtkAction *action; GList *list; gimp_action_group_add_actions (group, "tools-action", tools_actions, G_N_ELEMENTS (tools_actions)); gimp_action_group_add_string_actions (group, "tools-action", tools_alternative_actions, G_N_ELEMENTS (tools_alternative_actions), G_CALLBACK (tools_select_cmd_callback)); action = gtk_action_group_get_action (GTK_ACTION_GROUP (group), "tools-by-color-select-short"); gtk_action_set_accel_path (action, "<Actions>/tools/tools-by-color-select"); gimp_action_group_add_enum_actions (group, NULL, tools_color_average_radius_actions, G_N_ELEMENTS (tools_color_average_radius_actions), G_CALLBACK (tools_color_average_radius_cmd_callback)); gimp_action_group_add_enum_actions (group, NULL, tools_paint_brush_size_actions, G_N_ELEMENTS (tools_paint_brush_size_actions), G_CALLBACK (tools_paint_brush_size_cmd_callback)); gimp_action_group_add_enum_actions (group, NULL, tools_paint_brush_angle_actions, G_N_ELEMENTS (tools_paint_brush_angle_actions), G_CALLBACK (tools_paint_brush_angle_cmd_callback)); gimp_action_group_add_enum_actions (group, NULL, tools_paint_brush_aspect_ratio_actions, G_N_ELEMENTS (tools_paint_brush_aspect_ratio_actions), G_CALLBACK (tools_paint_brush_aspect_ratio_cmd_callback)); gimp_action_group_add_enum_actions (group, NULL, tools_ink_blob_size_actions, G_N_ELEMENTS (tools_ink_blob_size_actions), G_CALLBACK (tools_ink_blob_size_cmd_callback)); gimp_action_group_add_enum_actions (group, NULL, tools_ink_blob_aspect_actions, G_N_ELEMENTS (tools_ink_blob_aspect_actions), G_CALLBACK (tools_ink_blob_aspect_cmd_callback)); gimp_action_group_add_enum_actions (group, NULL, tools_ink_blob_angle_actions, G_N_ELEMENTS (tools_ink_blob_angle_actions), G_CALLBACK (tools_ink_blob_angle_cmd_callback)); gimp_action_group_add_enum_actions (group, NULL, tools_foreground_select_brush_size_actions, G_N_ELEMENTS (tools_foreground_select_brush_size_actions), G_CALLBACK (tools_fg_select_brush_size_cmd_callback)); gimp_action_group_add_enum_actions (group, NULL, tools_transform_preview_opacity_actions, G_N_ELEMENTS (tools_transform_preview_opacity_actions), G_CALLBACK (tools_transform_preview_opacity_cmd_callback)); gimp_action_group_add_enum_actions (group, NULL, tools_value_1_actions, G_N_ELEMENTS (tools_value_1_actions), G_CALLBACK (tools_value_1_cmd_callback)); gimp_action_group_add_enum_actions (group, NULL, tools_value_2_actions, G_N_ELEMENTS (tools_value_2_actions), G_CALLBACK (tools_value_2_cmd_callback)); gimp_action_group_add_enum_actions (group, NULL, tools_value_3_actions, G_N_ELEMENTS (tools_value_3_actions), G_CALLBACK (tools_value_3_cmd_callback)); gimp_action_group_add_enum_actions (group, NULL, tools_value_4_actions, G_N_ELEMENTS (tools_value_4_actions), G_CALLBACK (tools_value_4_cmd_callback)); gimp_action_group_add_enum_actions (group, NULL, tools_object_1_actions, G_N_ELEMENTS (tools_object_1_actions), G_CALLBACK (tools_object_1_cmd_callback)); gimp_action_group_add_enum_actions (group, NULL, tools_object_2_actions, G_N_ELEMENTS (tools_object_2_actions), G_CALLBACK (tools_object_2_cmd_callback)); for (list = gimp_get_tool_info_iter (group->gimp); list; list = g_list_next (list)) { GimpToolInfo *tool_info = list->data; if (tool_info->menu_path) { GimpStringActionEntry entry; const gchar *stock_id; const gchar *identifier; gchar *tmp; gchar *name; stock_id = gimp_viewable_get_stock_id (GIMP_VIEWABLE (tool_info)); identifier = gimp_object_get_name (tool_info); tmp = g_strndup (identifier + strlen ("gimp-"), strlen (identifier) - strlen ("gimp--tool")); name = g_strdup_printf ("tools-%s", tmp); g_free (tmp); entry.name = name; entry.stock_id = stock_id; entry.label = tool_info->menu_path; entry.accelerator = tool_info->menu_accel; entry.tooltip = tool_info->help; entry.help_id = tool_info->help_id; entry.value = identifier; gimp_action_group_add_string_actions (group, NULL, &entry, 1, G_CALLBACK (tools_select_cmd_callback)); g_free (name); } } }
static VALUE rg_set_accel_path(VALUE self, VALUE accel_path) { gtk_action_set_accel_path(_SELF(self), RVAL2CSTR(accel_path)); return self; }