app/widgets/Makefile.am app/widgets/widgets-types.h new GtkAction subclass

2004-04-27  Michael Natterer  <mitch@gimp.org>

	* app/widgets/Makefile.am
	* app/widgets/widgets-types.h
	* app/widgets/gimppluginaction.[ch]: new GtkAction subclass which
	remembers the PlugInProcDef.

	* app/widgets/gimpactiongroup.[ch]: added "gpointer user_data" to
	the GimpActionGroup struct and to gimp_action_group_new(). Removed
	the user_data parameter from gimp_action_group_add_*_actions().

	* app/widgets/gimpactionfactory.[ch]: changed accordingly.

	* app/actions/*-actions.[ch]: removed user_data from all setup_funcs.

	* app/actions/plug-in-actions.c: use a GimpPlugInAction and
	finally use the right user_data for the callback so plug-in
	callbacks have a proper context.

	* app/gui/plug-in-menus.[ch]: renamed plug_in_menus_create2() to
	plug_in_menus_setup().

	* app/gui/image-menu.c
	* app/gui/toolbox-menu.c: changed accordingly.
This commit is contained in:
Michael Natterer
2004-04-27 13:55:26 +00:00
committed by Michael Natterer
parent a5130581db
commit aae726ee94
83 changed files with 470 additions and 317 deletions

View File

@ -1,3 +1,28 @@
2004-04-27 Michael Natterer <mitch@gimp.org>
* app/widgets/Makefile.am
* app/widgets/widgets-types.h
* app/widgets/gimppluginaction.[ch]: new GtkAction subclass which
remembers the PlugInProcDef.
* app/widgets/gimpactiongroup.[ch]: added "gpointer user_data" to
the GimpActionGroup struct and to gimp_action_group_new(). Removed
the user_data parameter from gimp_action_group_add_*_actions().
* app/widgets/gimpactionfactory.[ch]: changed accordingly.
* app/actions/*-actions.[ch]: removed user_data from all setup_funcs.
* app/actions/plug-in-actions.c: use a GimpPlugInAction and
finally use the right user_data for the callback so plug-in
callbacks have a proper context.
* app/gui/plug-in-menus.[ch]: renamed plug_in_menus_create2() to
plug_in_menus_setup().
* app/gui/image-menu.c
* app/gui/toolbox-menu.c: changed accordingly.
2004-04-27 Michael Natterer <mitch@gimp.org> 2004-04-27 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpactiongroup.[ch]: removed "translation-domain" * app/widgets/gimpactiongroup.[ch]: removed "translation-domain"

View File

@ -71,13 +71,11 @@ static GimpActionEntry brushes_actions[] =
void void
brushes_actions_setup (GimpActionGroup *group, brushes_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
brushes_actions, brushes_actions,
G_N_ELEMENTS (brushes_actions), G_N_ELEMENTS (brushes_actions));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __BRUSHES_ACTIONS_H__ #define __BRUSHES_ACTIONS_H__
void brushes_actions_setup (GimpActionGroup *group, void brushes_actions_setup (GimpActionGroup *group);
gpointer data);
void brushes_actions_update (GimpActionGroup *group, void brushes_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -64,13 +64,11 @@ static GimpActionEntry buffers_actions[] =
void void
buffers_actions_setup (GimpActionGroup *group, buffers_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
buffers_actions, buffers_actions,
G_N_ELEMENTS (buffers_actions), G_N_ELEMENTS (buffers_actions));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __BUFFERS_ACTIONS_H__ #define __BUFFERS_ACTIONS_H__
void buffers_actions_setup (GimpActionGroup *group, void buffers_actions_setup (GimpActionGroup *group);
gpointer data);
void buffers_actions_update (GimpActionGroup *group, void buffers_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -108,19 +108,16 @@ static GimpEnumActionEntry channels_to_selection_actions[] =
void void
channels_actions_setup (GimpActionGroup *group, channels_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
channels_actions, channels_actions,
G_N_ELEMENTS (channels_actions), G_N_ELEMENTS (channels_actions));
data);
gimp_action_group_add_enum_actions (group, gimp_action_group_add_enum_actions (group,
channels_to_selection_actions, channels_to_selection_actions,
G_N_ELEMENTS (channels_to_selection_actions), G_N_ELEMENTS (channels_to_selection_actions),
G_CALLBACK (channels_to_selection_cmd_callback), G_CALLBACK (channels_to_selection_cmd_callback));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __CHANNELS_ACTIONS_H__ #define __CHANNELS_ACTIONS_H__
void channels_actions_setup (GimpActionGroup *group, void channels_actions_setup (GimpActionGroup *group);
gpointer data);
void channels_actions_update (GimpActionGroup *group, void channels_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -62,19 +62,16 @@ static GimpEnumActionEntry colormap_editor_add_color_actions[] =
void void
colormap_editor_actions_setup (GimpActionGroup *group, colormap_editor_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
colormap_editor_actions, colormap_editor_actions,
G_N_ELEMENTS (colormap_editor_actions), G_N_ELEMENTS (colormap_editor_actions));
data);
gimp_action_group_add_enum_actions (group, gimp_action_group_add_enum_actions (group,
colormap_editor_add_color_actions, colormap_editor_add_color_actions,
G_N_ELEMENTS (colormap_editor_add_color_actions), G_N_ELEMENTS (colormap_editor_add_color_actions),
G_CALLBACK (colormap_editor_add_color_cmd_callback), G_CALLBACK (colormap_editor_add_color_cmd_callback));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __COLORMAP_EDITOR_ACTIONS_H__ #define __COLORMAP_EDITOR_ACTIONS_H__
void colormap_editor_actions_setup (GimpActionGroup *group, void colormap_editor_actions_setup (GimpActionGroup *group);
gpointer data);
void colormap_editor_actions_update (GimpActionGroup *group, void colormap_editor_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -62,19 +62,16 @@ static GimpEnumActionEntry colormap_editor_add_color_actions[] =
void void
colormap_editor_actions_setup (GimpActionGroup *group, colormap_editor_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
colormap_editor_actions, colormap_editor_actions,
G_N_ELEMENTS (colormap_editor_actions), G_N_ELEMENTS (colormap_editor_actions));
data);
gimp_action_group_add_enum_actions (group, gimp_action_group_add_enum_actions (group,
colormap_editor_add_color_actions, colormap_editor_add_color_actions,
G_N_ELEMENTS (colormap_editor_add_color_actions), G_N_ELEMENTS (colormap_editor_add_color_actions),
G_CALLBACK (colormap_editor_add_color_cmd_callback), G_CALLBACK (colormap_editor_add_color_cmd_callback));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __COLORMAP_EDITOR_ACTIONS_H__ #define __COLORMAP_EDITOR_ACTIONS_H__
void colormap_editor_actions_setup (GimpActionGroup *group, void colormap_editor_actions_setup (GimpActionGroup *group);
gpointer data);
void colormap_editor_actions_update (GimpActionGroup *group, void colormap_editor_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -48,13 +48,11 @@ static GimpActionEntry debug_actions[] =
void void
debug_actions_setup (GimpActionGroup *group, debug_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
debug_actions, debug_actions,
G_N_ELEMENTS (debug_actions), G_N_ELEMENTS (debug_actions));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __DEBUG_ACTIONS_H__ #define __DEBUG_ACTIONS_H__
void debug_actions_setup (GimpActionGroup *group, void debug_actions_setup (GimpActionGroup *group);
gpointer data);
void debug_actions_update (GimpActionGroup *group, void debug_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -202,25 +202,21 @@ static GimpStringActionEntry dialogs_toplevel_actions[] =
void void
dialogs_actions_setup (GimpActionGroup *group, dialogs_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
dialogs_actions, dialogs_actions,
G_N_ELEMENTS (dialogs_actions), G_N_ELEMENTS (dialogs_actions));
data);
gimp_action_group_add_string_actions (group, gimp_action_group_add_string_actions (group,
dialogs_dockable_actions, dialogs_dockable_actions,
G_N_ELEMENTS (dialogs_dockable_actions), G_N_ELEMENTS (dialogs_dockable_actions),
G_CALLBACK (dialogs_create_dockable_cmd_callback), G_CALLBACK (dialogs_create_dockable_cmd_callback));
data);
gimp_action_group_add_string_actions (group, gimp_action_group_add_string_actions (group,
dialogs_toplevel_actions, dialogs_toplevel_actions,
G_N_ELEMENTS (dialogs_toplevel_actions), G_N_ELEMENTS (dialogs_toplevel_actions),
G_CALLBACK (dialogs_create_toplevel_cmd_callback), G_CALLBACK (dialogs_create_toplevel_cmd_callback));
data);
} }
void void

View File

@ -24,8 +24,7 @@ extern GimpStringActionEntry dialogs_dockable_actions[];
extern gint n_dialogs_dockable_actions; extern gint n_dialogs_dockable_actions;
void dialogs_actions_setup (GimpActionGroup *group, void dialogs_actions_setup (GimpActionGroup *group);
gpointer data);
void dialogs_actions_update (GimpActionGroup *group, void dialogs_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -133,45 +133,38 @@ static GimpRadioActionEntry dockable_view_type_actions[] =
void void
dockable_actions_setup (GimpActionGroup *group, dockable_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
dockable_actions, dockable_actions,
G_N_ELEMENTS (dockable_actions), G_N_ELEMENTS (dockable_actions));
data);
gimp_action_group_add_toggle_actions (group, gimp_action_group_add_toggle_actions (group,
dockable_toggle_actions, dockable_toggle_actions,
G_N_ELEMENTS (dockable_toggle_actions), G_N_ELEMENTS (dockable_toggle_actions));
data);
gimp_action_group_add_string_actions (group, gimp_action_group_add_string_actions (group,
dialogs_dockable_actions, dialogs_dockable_actions,
n_dialogs_dockable_actions, n_dialogs_dockable_actions,
G_CALLBACK (dockable_add_tab_cmd_callback), G_CALLBACK (dockable_add_tab_cmd_callback));
data);
gimp_action_group_add_radio_actions (group, gimp_action_group_add_radio_actions (group,
dockable_preview_size_actions, dockable_preview_size_actions,
G_N_ELEMENTS (dockable_preview_size_actions), G_N_ELEMENTS (dockable_preview_size_actions),
GIMP_PREVIEW_SIZE_MEDIUM, GIMP_PREVIEW_SIZE_MEDIUM,
G_CALLBACK (dockable_preview_size_cmd_callback), G_CALLBACK (dockable_preview_size_cmd_callback));
data);
gimp_action_group_add_radio_actions (group, gimp_action_group_add_radio_actions (group,
dockable_tab_style_actions, dockable_tab_style_actions,
G_N_ELEMENTS (dockable_tab_style_actions), G_N_ELEMENTS (dockable_tab_style_actions),
GIMP_TAB_STYLE_PREVIEW, GIMP_TAB_STYLE_PREVIEW,
G_CALLBACK (dockable_tab_style_cmd_callback), G_CALLBACK (dockable_tab_style_cmd_callback));
data);
gimp_action_group_add_radio_actions (group, gimp_action_group_add_radio_actions (group,
dockable_view_type_actions, dockable_view_type_actions,
G_N_ELEMENTS (dockable_view_type_actions), G_N_ELEMENTS (dockable_view_type_actions),
GIMP_VIEW_TYPE_LIST, GIMP_VIEW_TYPE_LIST,
G_CALLBACK (dockable_toggle_view_cmd_callback), G_CALLBACK (dockable_toggle_view_cmd_callback));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __DOCKABLE_ACTIONS_H__ #define __DOCKABLE_ACTIONS_H__
void dockable_actions_setup (GimpActionGroup *group, void dockable_actions_setup (GimpActionGroup *group);
gpointer data);
void dockable_actions_update (GimpActionGroup *group, void dockable_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -79,13 +79,11 @@ static GimpActionEntry documents_actions[] =
void void
documents_actions_setup (GimpActionGroup *group, documents_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
documents_actions, documents_actions,
G_N_ELEMENTS (documents_actions), G_N_ELEMENTS (documents_actions));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __DOCUMENTS_ACTIONS_H__ #define __DOCUMENTS_ACTIONS_H__
void documents_actions_setup (GimpActionGroup *group, void documents_actions_setup (GimpActionGroup *group);
gpointer data);
void documents_actions_update (GimpActionGroup *group, void documents_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -98,25 +98,21 @@ static GimpEnumActionEntry drawable_rotate_actions[] =
void void
drawable_actions_setup (GimpActionGroup *group, drawable_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
drawable_actions, drawable_actions,
G_N_ELEMENTS (drawable_actions), G_N_ELEMENTS (drawable_actions));
data);
gimp_action_group_add_enum_actions (group, gimp_action_group_add_enum_actions (group,
drawable_flip_actions, drawable_flip_actions,
G_N_ELEMENTS (drawable_flip_actions), G_N_ELEMENTS (drawable_flip_actions),
G_CALLBACK (drawable_flip_cmd_callback), G_CALLBACK (drawable_flip_cmd_callback));
data);
gimp_action_group_add_enum_actions (group, gimp_action_group_add_enum_actions (group,
drawable_rotate_actions, drawable_rotate_actions,
G_N_ELEMENTS (drawable_rotate_actions), G_N_ELEMENTS (drawable_rotate_actions),
G_CALLBACK (drawable_rotate_cmd_callback), G_CALLBACK (drawable_rotate_cmd_callback));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __DRAWABLE_ACTIONS_H__ #define __DRAWABLE_ACTIONS_H__
void drawable_actions_setup (GimpActionGroup *group, void drawable_actions_setup (GimpActionGroup *group);
gpointer data);
void drawable_actions_update (GimpActionGroup *group, void drawable_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -148,22 +148,19 @@ static GimpEnumActionEntry edit_fill_actions[] =
void void
edit_actions_setup (GimpActionGroup *group, edit_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
GimpContext *user_context; GimpContext *user_context;
GimpRGB color; GimpRGB color;
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
edit_actions, edit_actions,
G_N_ELEMENTS (edit_actions), G_N_ELEMENTS (edit_actions));
data);
gimp_action_group_add_enum_actions (group, gimp_action_group_add_enum_actions (group,
edit_fill_actions, edit_fill_actions,
G_N_ELEMENTS (edit_fill_actions), G_N_ELEMENTS (edit_fill_actions),
G_CALLBACK (edit_fill_cmd_callback), G_CALLBACK (edit_fill_cmd_callback));
data);
g_signal_connect_object (group->gimp, "buffer_changed", g_signal_connect_object (group->gimp, "buffer_changed",
G_CALLBACK (edit_actions_buffer_changed), G_CALLBACK (edit_actions_buffer_changed),

View File

@ -20,8 +20,7 @@
#define __EDIT_ACTIONS_H__ #define __EDIT_ACTIONS_H__
void edit_actions_setup (GimpActionGroup *group, void edit_actions_setup (GimpActionGroup *group);
gpointer data);
void edit_actions_update (GimpActionGroup *group, void edit_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -56,13 +56,11 @@ static GimpActionEntry error_console_actions[] =
void void
error_console_actions_setup (GimpActionGroup *group, error_console_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
error_console_actions, error_console_actions,
G_N_ELEMENTS (error_console_actions), G_N_ELEMENTS (error_console_actions));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __ERROR_CONSOLE_ACIONS_H__ #define __ERROR_CONSOLE_ACIONS_H__
void error_console_actions_setup (GimpActionGroup *group, void error_console_actions_setup (GimpActionGroup *group);
gpointer data);
void error_console_actions_update (GimpActionGroup *group, void error_console_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -109,8 +109,7 @@ static GimpActionEntry file_actions[] =
void void
file_actions_setup (GimpActionGroup *group, file_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
GimpEnumActionEntry *entries; GimpEnumActionEntry *entries;
gint n_entries; gint n_entries;
@ -118,8 +117,7 @@ file_actions_setup (GimpActionGroup *group,
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
file_actions, file_actions,
G_N_ELEMENTS (file_actions), G_N_ELEMENTS (file_actions));
data);
n_entries = GIMP_GUI_CONFIG (group->gimp->config)->last_opened_size; n_entries = GIMP_GUI_CONFIG (group->gimp->config)->last_opened_size;
@ -143,8 +141,7 @@ file_actions_setup (GimpActionGroup *group,
} }
gimp_action_group_add_enum_actions (group, entries, n_entries, gimp_action_group_add_enum_actions (group, entries, n_entries,
G_CALLBACK (file_last_opened_cmd_callback), G_CALLBACK (file_last_opened_cmd_callback));
data);
for (i = 0; i < n_entries; i++) for (i = 0; i < n_entries; i++)
{ {

View File

@ -20,8 +20,7 @@
#define __FILE_ACTIONS_H__ #define __FILE_ACTIONS_H__
void file_actions_setup (GimpActionGroup *group, void file_actions_setup (GimpActionGroup *group);
gpointer data);
void file_actions_update (GimpActionGroup *group, void file_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -51,13 +51,11 @@ static GimpActionEntry fonts_actions[] =
void void
fonts_actions_setup (GimpActionGroup *group, fonts_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
fonts_actions, fonts_actions,
G_N_ELEMENTS (fonts_actions), G_N_ELEMENTS (fonts_actions));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __FONTS_ACTIONS_H__ #define __FONTS_ACTIONS_H__
void fonts_actions_setup (GimpActionGroup *group, void fonts_actions_setup (GimpActionGroup *group);
gpointer data);
void fonts_actions_update (GimpActionGroup *group, void fonts_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -300,52 +300,44 @@ static GimpRadioActionEntry gradient_editor_coloring_actions[] =
void void
gradient_editor_actions_setup (GimpActionGroup *group, gradient_editor_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
gradient_editor_actions, gradient_editor_actions,
G_N_ELEMENTS (gradient_editor_actions), G_N_ELEMENTS (gradient_editor_actions));
data);
gimp_action_group_add_enum_actions (group, gimp_action_group_add_enum_actions (group,
gradient_editor_load_left_actions, gradient_editor_load_left_actions,
G_N_ELEMENTS (gradient_editor_load_left_actions), G_N_ELEMENTS (gradient_editor_load_left_actions),
G_CALLBACK (gradient_editor_load_left_cmd_callback), G_CALLBACK (gradient_editor_load_left_cmd_callback));
data);
gimp_action_group_add_enum_actions (group, gimp_action_group_add_enum_actions (group,
gradient_editor_save_left_actions, gradient_editor_save_left_actions,
G_N_ELEMENTS (gradient_editor_save_left_actions), G_N_ELEMENTS (gradient_editor_save_left_actions),
G_CALLBACK (gradient_editor_save_left_cmd_callback), G_CALLBACK (gradient_editor_save_left_cmd_callback));
data);
gimp_action_group_add_enum_actions (group, gimp_action_group_add_enum_actions (group,
gradient_editor_load_right_actions, gradient_editor_load_right_actions,
G_N_ELEMENTS (gradient_editor_load_right_actions), G_N_ELEMENTS (gradient_editor_load_right_actions),
G_CALLBACK (gradient_editor_load_right_cmd_callback), G_CALLBACK (gradient_editor_load_right_cmd_callback));
data);
gimp_action_group_add_enum_actions (group, gimp_action_group_add_enum_actions (group,
gradient_editor_save_right_actions, gradient_editor_save_right_actions,
G_N_ELEMENTS (gradient_editor_save_right_actions), G_N_ELEMENTS (gradient_editor_save_right_actions),
G_CALLBACK (gradient_editor_save_right_cmd_callback), G_CALLBACK (gradient_editor_save_right_cmd_callback));
data);
gimp_action_group_add_radio_actions (group, gimp_action_group_add_radio_actions (group,
gradient_editor_blending_actions, gradient_editor_blending_actions,
G_N_ELEMENTS (gradient_editor_blending_actions), G_N_ELEMENTS (gradient_editor_blending_actions),
0, 0,
G_CALLBACK (gradient_editor_blending_func_cmd_callback), G_CALLBACK (gradient_editor_blending_func_cmd_callback));
data);
gimp_action_group_add_radio_actions (group, gimp_action_group_add_radio_actions (group,
gradient_editor_coloring_actions, gradient_editor_coloring_actions,
G_N_ELEMENTS (gradient_editor_coloring_actions), G_N_ELEMENTS (gradient_editor_coloring_actions),
0, 0,
G_CALLBACK (gradient_editor_coloring_type_cmd_callback), G_CALLBACK (gradient_editor_coloring_type_cmd_callback));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __GRADIENT_EDITOR_ACTIONS_H__ #define __GRADIENT_EDITOR_ACTIONS_H__
void gradient_editor_actions_setup (GimpActionGroup *group, void gradient_editor_actions_setup (GimpActionGroup *group);
gpointer data);
void gradient_editor_actions_update (GimpActionGroup *group, void gradient_editor_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -42,7 +42,7 @@
static GimpActionEntry gradients_actions[] = static GimpActionEntry gradients_actions[] =
{ {
{ "gradients-popup", NULL, N_("Gradients Menu") }, { "gradients-popup", GIMP_STOCK_GRADIENT, N_("Gradients Menu") },
{ "gradients-edit", GIMP_STOCK_EDIT, { "gradients-edit", GIMP_STOCK_EDIT,
N_("_Edit Gradient..."), NULL, NULL, N_("_Edit Gradient..."), NULL, NULL,
@ -77,13 +77,11 @@ static GimpActionEntry gradients_actions[] =
void void
gradients_actions_setup (GimpActionGroup *group, gradients_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
gradients_actions, gradients_actions,
G_N_ELEMENTS (gradients_actions), G_N_ELEMENTS (gradients_actions));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __GRADIENTS_ACTIONS_H__ #define __GRADIENTS_ACTIONS_H__
void gradients_actions_setup (GimpActionGroup *group, void gradients_actions_setup (GimpActionGroup *group);
gpointer data);
void gradients_actions_update (GimpActionGroup *group, void gradients_actions_update (GimpActionGroup *group,
gpointer user_data); gpointer user_data);

View File

@ -51,13 +51,11 @@ static GimpActionEntry help_actions[] =
void void
help_actions_setup (GimpActionGroup *group, help_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
help_actions, help_actions,
G_N_ELEMENTS (help_actions), G_N_ELEMENTS (help_actions));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __HELP_ACTIONS_H__ #define __HELP_ACTIONS_H__
void help_actions_setup (GimpActionGroup *group, void help_actions_setup (GimpActionGroup *group);
gpointer data);
void help_actions_update (GimpActionGroup *group, void help_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -137,25 +137,21 @@ static GimpEnumActionEntry image_rotate_actions[] =
void void
image_actions_setup (GimpActionGroup *group, image_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
image_actions, image_actions,
G_N_ELEMENTS (image_actions), G_N_ELEMENTS (image_actions));
data);
gimp_action_group_add_enum_actions (group, gimp_action_group_add_enum_actions (group,
image_flip_actions, image_flip_actions,
G_N_ELEMENTS (image_flip_actions), G_N_ELEMENTS (image_flip_actions),
G_CALLBACK (image_flip_cmd_callback), G_CALLBACK (image_flip_cmd_callback));
data);
gimp_action_group_add_enum_actions (group, gimp_action_group_add_enum_actions (group,
image_rotate_actions, image_rotate_actions,
G_N_ELEMENTS (image_rotate_actions), G_N_ELEMENTS (image_rotate_actions),
G_CALLBACK (image_rotate_cmd_callback), G_CALLBACK (image_rotate_cmd_callback));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __IMAGE_ACTIONS_H__ #define __IMAGE_ACTIONS_H__
void image_actions_setup (GimpActionGroup *group, void image_actions_setup (GimpActionGroup *group);
gpointer data);
void image_actions_update (GimpActionGroup *group, void image_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -59,13 +59,11 @@ static GimpActionEntry images_actions[] =
void void
images_actions_setup (GimpActionGroup *group, images_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
images_actions, images_actions,
G_N_ELEMENTS (images_actions), G_N_ELEMENTS (images_actions));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __IMAGES_ACTIONS_H__ #define __IMAGES_ACTIONS_H__
void images_actions_setup (GimpActionGroup *group, void images_actions_setup (GimpActionGroup *group);
gpointer data);
void images_actions_update (GimpActionGroup *group, void images_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -233,25 +233,21 @@ static GimpEnumActionEntry layers_alpha_to_selection_actions[] =
}; };
void void
layers_actions_setup (GimpActionGroup *group, layers_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
layers_actions, layers_actions,
G_N_ELEMENTS (layers_actions), G_N_ELEMENTS (layers_actions));
data);
gimp_action_group_add_enum_actions (group, gimp_action_group_add_enum_actions (group,
layers_mask_to_selection_actions, layers_mask_to_selection_actions,
G_N_ELEMENTS (layers_mask_to_selection_actions), G_N_ELEMENTS (layers_mask_to_selection_actions),
G_CALLBACK (layers_mask_to_selection_cmd_callback), G_CALLBACK (layers_mask_to_selection_cmd_callback));
data);
gimp_action_group_add_enum_actions (group, gimp_action_group_add_enum_actions (group,
layers_alpha_to_selection_actions, layers_alpha_to_selection_actions,
G_N_ELEMENTS (layers_alpha_to_selection_actions), G_N_ELEMENTS (layers_alpha_to_selection_actions),
G_CALLBACK (layers_alpha_to_selection_cmd_callback), G_CALLBACK (layers_alpha_to_selection_cmd_callback));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __LAYERS_ACTIONS_H__ #define __LAYERS_ACTIONS_H__
void layers_actions_setup (GimpActionGroup *group, void layers_actions_setup (GimpActionGroup *group);
gpointer data);
void layers_actions_update (GimpActionGroup *group, void layers_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -76,13 +76,11 @@ static GimpActionEntry palette_editor_actions[] =
void void
palette_editor_actions_setup (GimpActionGroup *group, palette_editor_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
palette_editor_actions, palette_editor_actions,
G_N_ELEMENTS (palette_editor_actions), G_N_ELEMENTS (palette_editor_actions));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __PALETTE_EDITOR_ACTIONS_H__ #define __PALETTE_EDITOR_ACTIONS_H__
void palette_editor_actions_setup (GimpActionGroup *group, void palette_editor_actions_setup (GimpActionGroup *group);
gpointer data);
void palette_editor_actions_update (GimpActionGroup *group, void palette_editor_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -82,13 +82,11 @@ static GimpActionEntry palettes_actions[] =
void void
palettes_actions_setup (GimpActionGroup *group, palettes_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
palettes_actions, palettes_actions,
G_N_ELEMENTS (palettes_actions), G_N_ELEMENTS (palettes_actions));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __PALETTES_ACTIONS_H__ #define __PALETTES_ACTIONS_H__
void palettes_actions_setup (GimpActionGroup *group, void palettes_actions_setup (GimpActionGroup *group);
gpointer data);
void palettes_actions_update (GimpActionGroup *group, void palettes_actions_update (GimpActionGroup *group,
gpointer user_data); gpointer user_data);

View File

@ -71,13 +71,11 @@ static GimpActionEntry patterns_actions[] =
void void
patterns_actions_setup (GimpActionGroup *group, patterns_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
patterns_actions, patterns_actions,
G_N_ELEMENTS (patterns_actions), G_N_ELEMENTS (patterns_actions));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __PATTERNS_ACTIONS_H__ #define __PATTERNS_ACTIONS_H__
void patterns_actions_setup (GimpActionGroup *group, void patterns_actions_setup (GimpActionGroup *group);
gpointer data);
void patterns_actions_update (GimpActionGroup *group, void patterns_actions_update (GimpActionGroup *group,
gpointer user_data); gpointer user_data);

View File

@ -40,6 +40,7 @@
#include "widgets/gimpactiongroup.h" #include "widgets/gimpactiongroup.h"
#include "widgets/gimphelp-ids.h" #include "widgets/gimphelp-ids.h"
#include "widgets/gimpitemtreeview.h" #include "widgets/gimpitemtreeview.h"
#include "widgets/gimppluginaction.h"
#include "display/gimpdisplay.h" #include "display/gimpdisplay.h"
#include "display/gimpdisplayshell.h" #include "display/gimpdisplayshell.h"
@ -101,21 +102,18 @@ static GimpEnumActionEntry plug_in_repeat_actions[] =
/* public functions */ /* public functions */
void void
plug_in_actions_setup (GimpActionGroup *group, plug_in_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
GSList *list; GSList *list;
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
plug_in_actions, plug_in_actions,
G_N_ELEMENTS (plug_in_actions), G_N_ELEMENTS (plug_in_actions));
data);
gimp_action_group_add_enum_actions (group, gimp_action_group_add_enum_actions (group,
plug_in_repeat_actions, plug_in_repeat_actions,
G_N_ELEMENTS (plug_in_repeat_actions), G_N_ELEMENTS (plug_in_repeat_actions),
G_CALLBACK (plug_in_repeat_cmd_callback), G_CALLBACK (plug_in_repeat_cmd_callback));
data);
for (list = group->gimp->plug_in_proc_defs; for (list = group->gimp->plug_in_proc_defs;
list; list;
@ -290,21 +288,23 @@ plug_in_actions_add_proc (GimpActionGroup *group,
if (p1 && p2) if (p1 && p2)
{ {
gchar *label; gchar *label;
GtkAction *action; GimpPlugInAction *action;
label = p2 + 1; label = p2 + 1;
g_print ("adding plug-in action '%s' (%s)\n", g_print ("adding plug-in action '%s' (%s)\n",
proc_def->db_info.name, label); proc_def->db_info.name, label);
action = gtk_action_new (proc_def->db_info.name, label, NULL, NULL); action = gimp_plug_in_action_new (proc_def->db_info.name,
label, NULL, NULL,
proc_def);
g_signal_connect (action, "activate", g_signal_connect (action, "selected",
G_CALLBACK (plug_in_run_cmd_callback), G_CALLBACK (plug_in_run_cmd_callback),
&proc_def->db_info); group->user_data);
gtk_action_group_add_action_with_accel (GTK_ACTION_GROUP (group), gtk_action_group_add_action_with_accel (GTK_ACTION_GROUP (group),
action, GTK_ACTION (action),
proc_def->accelerator); proc_def->accelerator);
g_object_unref (action); g_object_unref (action);

View File

@ -20,8 +20,7 @@
#define __PLUG_IN_ACTIONS_H__ #define __PLUG_IN_ACTIONS_H__
void plug_in_actions_setup (GimpActionGroup *group, void plug_in_actions_setup (GimpActionGroup *group);
gpointer data);
void plug_in_actions_update (GimpActionGroup *group, void plug_in_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -58,8 +58,7 @@
void void
plug_in_run_cmd_callback (GtkWidget *widget, plug_in_run_cmd_callback (GtkWidget *widget,
gpointer data, gpointer data)
guint action)
{ {
GtkItemFactory *item_factory; GtkItemFactory *item_factory;
Gimp *gimp; Gimp *gimp;

View File

@ -21,8 +21,7 @@
void plug_in_run_cmd_callback (GtkWidget *widget, void plug_in_run_cmd_callback (GtkWidget *widget,
gpointer data, gpointer data);
guint action);
void plug_in_repeat_cmd_callback (GtkWidget *widget, void plug_in_repeat_cmd_callback (GtkWidget *widget,
gpointer data, gpointer data,
guint action); guint action);

View File

@ -72,25 +72,21 @@ static GimpRadioActionEntry qmask_invert_actions[] =
void void
qmask_actions_setup (GimpActionGroup *group, qmask_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
qmask_actions, qmask_actions,
G_N_ELEMENTS (qmask_actions), G_N_ELEMENTS (qmask_actions));
data);
gimp_action_group_add_toggle_actions (group, gimp_action_group_add_toggle_actions (group,
qmask_toggle_actions, qmask_toggle_actions,
G_N_ELEMENTS (qmask_toggle_actions), G_N_ELEMENTS (qmask_toggle_actions));
data);
gimp_action_group_add_radio_actions (group, gimp_action_group_add_radio_actions (group,
qmask_invert_actions, qmask_invert_actions,
G_N_ELEMENTS (qmask_invert_actions), G_N_ELEMENTS (qmask_invert_actions),
FALSE, FALSE,
G_CALLBACK (qmask_invert_cmd_callback), G_CALLBACK (qmask_invert_cmd_callback));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __QMASK_ACTIONS_H__ #define __QMASK_ACTIONS_H__
void qmask_actions_setup (GimpActionGroup *group, void qmask_actions_setup (GimpActionGroup *group);
gpointer data);
void qmask_actions_update (GimpActionGroup *group, void qmask_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -72,25 +72,21 @@ static GimpRadioActionEntry qmask_invert_actions[] =
void void
qmask_actions_setup (GimpActionGroup *group, qmask_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
qmask_actions, qmask_actions,
G_N_ELEMENTS (qmask_actions), G_N_ELEMENTS (qmask_actions));
data);
gimp_action_group_add_toggle_actions (group, gimp_action_group_add_toggle_actions (group,
qmask_toggle_actions, qmask_toggle_actions,
G_N_ELEMENTS (qmask_toggle_actions), G_N_ELEMENTS (qmask_toggle_actions));
data);
gimp_action_group_add_radio_actions (group, gimp_action_group_add_radio_actions (group,
qmask_invert_actions, qmask_invert_actions,
G_N_ELEMENTS (qmask_invert_actions), G_N_ELEMENTS (qmask_invert_actions),
FALSE, FALSE,
G_CALLBACK (qmask_invert_cmd_callback), G_CALLBACK (qmask_invert_cmd_callback));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __QMASK_ACTIONS_H__ #define __QMASK_ACTIONS_H__
void qmask_actions_setup (GimpActionGroup *group, void qmask_actions_setup (GimpActionGroup *group);
gpointer data);
void qmask_actions_update (GimpActionGroup *group, void qmask_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -123,19 +123,16 @@ static GimpStringActionEntry select_tool_actions[] =
void void
select_actions_setup (GimpActionGroup *group, select_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
select_actions, select_actions,
G_N_ELEMENTS (select_actions), G_N_ELEMENTS (select_actions));
data);
gimp_action_group_add_string_actions (group, gimp_action_group_add_string_actions (group,
select_tool_actions, select_tool_actions,
G_N_ELEMENTS (select_tool_actions), G_N_ELEMENTS (select_tool_actions),
G_CALLBACK (tools_select_cmd_callback), G_CALLBACK (tools_select_cmd_callback));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __SELECT_ACTIONS_H__ #define __SELECT_ACTIONS_H__
void select_actions_setup (GimpActionGroup *group, void select_actions_setup (GimpActionGroup *group);
gpointer data);
void select_actions_update (GimpActionGroup *group, void select_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -69,13 +69,11 @@ static GimpActionEntry templates_actions[] =
void void
templates_actions_setup (GimpActionGroup *group, templates_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
templates_actions, templates_actions,
G_N_ELEMENTS (templates_actions), G_N_ELEMENTS (templates_actions));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __TEMPLATES_ACTIONS_H__ #define __TEMPLATES_ACTIONS_H__
void templates_actions_setup (GimpActionGroup *group, void templates_actions_setup (GimpActionGroup *group);
gpointer data);
void templates_actions_update (GimpActionGroup *group, void templates_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -87,13 +87,11 @@ static GimpActionEntry tool_options_actions[] =
gimp_action_group_set_action_important (group, action, (condition) != 0) gimp_action_group_set_action_important (group, action, (condition) != 0)
void void
tool_options_actions_setup (GimpActionGroup *group, tool_options_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
tool_options_actions, tool_options_actions,
G_N_ELEMENTS (tool_options_actions), G_N_ELEMENTS (tool_options_actions));
data);
SET_IMPORTANT ("tool-options-restore-menu", FALSE); SET_IMPORTANT ("tool-options-restore-menu", FALSE);
SET_IMPORTANT ("tool-options-rename-menu", FALSE); SET_IMPORTANT ("tool-options-rename-menu", FALSE);

View File

@ -20,8 +20,7 @@
#define __TOOL_OPTIONS_ACTIONS_H__ #define __TOOL_OPTIONS_ACTIONS_H__
void tool_options_actions_setup (GimpActionGroup *group, void tool_options_actions_setup (GimpActionGroup *group);
gpointer data);
void tool_options_actions_update (GimpActionGroup *group, void tool_options_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -60,15 +60,13 @@ static GimpActionEntry tools_actions[] =
void void
tools_actions_setup (GimpActionGroup *group, tools_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
GList *list; GList *list;
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
tools_actions, tools_actions,
G_N_ELEMENTS (tools_actions), G_N_ELEMENTS (tools_actions));
data);
for (list = GIMP_LIST (group->gimp->tool_info_list)->list; for (list = GIMP_LIST (group->gimp->tool_info_list)->list;
list; list;
@ -101,8 +99,7 @@ tools_actions_setup (GimpActionGroup *group,
gimp_action_group_add_string_actions (group, gimp_action_group_add_string_actions (group,
&entry, 1, &entry, 1,
G_CALLBACK (tools_select_cmd_callback), G_CALLBACK (tools_select_cmd_callback));
data);
g_free (name); g_free (name);
} }

View File

@ -20,8 +20,7 @@
#define __TOOLS_ACTIONS_H__ #define __TOOLS_ACTIONS_H__
void tools_actions_setup (GimpActionGroup *group, void tools_actions_setup (GimpActionGroup *group);
gpointer data);
void tools_actions_update (GimpActionGroup *group, void tools_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -148,19 +148,16 @@ static GimpEnumActionEntry vectors_to_selection_actions[] =
void void
vectors_actions_setup (GimpActionGroup *group, vectors_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
vectors_actions, vectors_actions,
G_N_ELEMENTS (vectors_actions), G_N_ELEMENTS (vectors_actions));
data);
gimp_action_group_add_enum_actions (group, gimp_action_group_add_enum_actions (group,
vectors_to_selection_actions, vectors_to_selection_actions,
G_N_ELEMENTS (vectors_to_selection_actions), G_N_ELEMENTS (vectors_to_selection_actions),
G_CALLBACK (vectors_to_selection_cmd_callback), G_CALLBACK (vectors_to_selection_cmd_callback));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __VECTORS_ACTIONS_H__ #define __VECTORS_ACTIONS_H__
void vectors_actions_setup (GimpActionGroup *group, void vectors_actions_setup (GimpActionGroup *group);
gpointer data);
void vectors_actions_update (GimpActionGroup *group, void vectors_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -232,25 +232,21 @@ static GimpRadioActionEntry view_zoom_actions[] =
void void
view_actions_setup (GimpActionGroup *group, view_actions_setup (GimpActionGroup *group)
gpointer data)
{ {
gimp_action_group_add_actions (group, gimp_action_group_add_actions (group,
view_actions, view_actions,
G_N_ELEMENTS (view_actions), G_N_ELEMENTS (view_actions));
data);
gimp_action_group_add_toggle_actions (group, gimp_action_group_add_toggle_actions (group,
view_toggle_actions, view_toggle_actions,
G_N_ELEMENTS (view_toggle_actions), G_N_ELEMENTS (view_toggle_actions));
data);
gimp_action_group_add_radio_actions (group, gimp_action_group_add_radio_actions (group,
view_zoom_actions, view_zoom_actions,
G_N_ELEMENTS (view_zoom_actions), G_N_ELEMENTS (view_zoom_actions),
10000, 10000,
G_CALLBACK (view_zoom_cmd_callback), G_CALLBACK (view_zoom_cmd_callback));
data);
} }
void void

View File

@ -20,8 +20,7 @@
#define __VIEW_ACTIONS_H__ #define __VIEW_ACTIONS_H__
void view_actions_setup (GimpActionGroup *group, void view_actions_setup (GimpActionGroup *group);
gpointer data);
void view_actions_update (GimpActionGroup *group, void view_actions_update (GimpActionGroup *group,
gpointer data); gpointer data);

View File

@ -1140,7 +1140,7 @@ image_menu_setup2 (GimpUIManager *manager,
const gchar *ui_path) const gchar *ui_path)
{ {
menus_open_recent_add (manager, ui_path); menus_open_recent_add (manager, ui_path);
plug_in_menus_create2 (manager, ui_path); plug_in_menus_setup (manager, ui_path);
} }
void void

View File

@ -123,7 +123,7 @@ plug_in_menus_init (Gimp *gimp,
} }
void void
plug_in_menus_create2 (GimpUIManager *manager, plug_in_menus_setup (GimpUIManager *manager,
const gchar *ui_path) const gchar *ui_path)
{ {
GTree *menu_entries; GTree *menu_entries;

View File

@ -24,7 +24,7 @@ void plug_in_menus_init (Gimp *gimp,
GSList *plug_in_defs, GSList *plug_in_defs,
const gchar *std_plugins_domain); const gchar *std_plugins_domain);
void plug_in_menus_create2 (GimpUIManager *manager, void plug_in_menus_setup (GimpUIManager *manager,
const gchar *ui_path); const gchar *ui_path);
void plug_in_menus_add_proc (GimpUIManager *manager, void plug_in_menus_add_proc (GimpUIManager *manager,
const gchar *ui_path, const gchar *ui_path,

View File

@ -290,7 +290,7 @@ toolbox_menu_setup2 (GimpUIManager *manager,
const gchar *ui_path) const gchar *ui_path)
{ {
menus_open_recent_add (manager, ui_path); menus_open_recent_add (manager, ui_path);
plug_in_menus_create2 (manager, ui_path); plug_in_menus_setup (manager, ui_path);
} }
void void

View File

@ -1140,7 +1140,7 @@ image_menu_setup2 (GimpUIManager *manager,
const gchar *ui_path) const gchar *ui_path)
{ {
menus_open_recent_add (manager, ui_path); menus_open_recent_add (manager, ui_path);
plug_in_menus_create2 (manager, ui_path); plug_in_menus_setup (manager, ui_path);
} }
void void

View File

@ -123,7 +123,7 @@ plug_in_menus_init (Gimp *gimp,
} }
void void
plug_in_menus_create2 (GimpUIManager *manager, plug_in_menus_setup (GimpUIManager *manager,
const gchar *ui_path) const gchar *ui_path)
{ {
GTree *menu_entries; GTree *menu_entries;

View File

@ -24,7 +24,7 @@ void plug_in_menus_init (Gimp *gimp,
GSList *plug_in_defs, GSList *plug_in_defs,
const gchar *std_plugins_domain); const gchar *std_plugins_domain);
void plug_in_menus_create2 (GimpUIManager *manager, void plug_in_menus_setup (GimpUIManager *manager,
const gchar *ui_path); const gchar *ui_path);
void plug_in_menus_add_proc (GimpUIManager *manager, void plug_in_menus_add_proc (GimpUIManager *manager,
const gchar *ui_path, const gchar *ui_path,

View File

@ -290,7 +290,7 @@ toolbox_menu_setup2 (GimpUIManager *manager,
const gchar *ui_path) const gchar *ui_path)
{ {
menus_open_recent_add (manager, ui_path); menus_open_recent_add (manager, ui_path);
plug_in_menus_create2 (manager, ui_path); plug_in_menus_setup (manager, ui_path);
} }
void void

View File

@ -148,6 +148,8 @@ libappwidgets_a_sources = \
gimppaletteeditor.h \ gimppaletteeditor.h \
gimppatternfactoryview.c \ gimppatternfactoryview.c \
gimppatternfactoryview.h \ gimppatternfactoryview.h \
gimppluginaction.c \
gimppluginaction.h \
gimppreview.c \ gimppreview.c \
gimppreview.h \ gimppreview.h \
gimppreview-popup.c \ gimppreview-popup.c \

View File

@ -149,7 +149,7 @@ gimp_action_factory_group_register (GimpActionFactory *factory,
GimpActionGroup * GimpActionGroup *
gimp_action_factory_group_new (GimpActionFactory *factory, gimp_action_factory_group_new (GimpActionFactory *factory,
const gchar *identifier, const gchar *identifier,
gpointer setup_data) gpointer user_data)
{ {
GList *list; GList *list;
@ -166,10 +166,11 @@ gimp_action_factory_group_new (GimpActionFactory *factory,
group = gimp_action_group_new (factory->gimp, group = gimp_action_group_new (factory->gimp,
entry->identifier, entry->identifier,
user_data,
entry->update_func); entry->update_func);
if (entry->setup_func) if (entry->setup_func)
entry->setup_func (group, setup_data); entry->setup_func (group);
return group; return group;
} }

View File

@ -71,7 +71,7 @@ void gimp_action_factory_group_register (GimpActionFactory *factory,
GimpActionGroup * gimp_action_factory_group_new (GimpActionFactory *factory, GimpActionGroup * gimp_action_factory_group_new (GimpActionFactory *factory,
const gchar *identifier, const gchar *identifier,
gpointer setup_data); gpointer user_data);
#endif /* __GIMP_ACTION_FACTORY_H__ */ #endif /* __GIMP_ACTION_FACTORY_H__ */

View File

@ -235,6 +235,7 @@ gimp_action_group_get_property (GObject *object,
GimpActionGroup * GimpActionGroup *
gimp_action_group_new (Gimp *gimp, gimp_action_group_new (Gimp *gimp,
const gchar *name, const gchar *name,
gpointer user_data,
GimpActionGroupUpdateFunc update_func) GimpActionGroupUpdateFunc update_func)
{ {
GimpActionGroup *group; GimpActionGroup *group;
@ -247,6 +248,7 @@ gimp_action_group_new (Gimp *gimp,
"name", name, "name", name,
NULL); NULL);
group->user_data = user_data;
group->update_func = update_func; group->update_func = update_func;
return group; return group;
@ -282,8 +284,7 @@ gimp_action_group_update (GimpActionGroup *group,
void void
gimp_action_group_add_actions (GimpActionGroup *group, gimp_action_group_add_actions (GimpActionGroup *group,
GimpActionEntry *entries, GimpActionEntry *entries,
guint n_entries, guint n_entries)
gpointer user_data)
{ {
gint i; gint i;
@ -304,7 +305,7 @@ gimp_action_group_add_actions (GimpActionGroup *group,
if (entries[i].callback) if (entries[i].callback)
g_signal_connect (action, "activate", g_signal_connect (action, "activate",
entries[i].callback, entries[i].callback,
user_data); group->user_data);
gtk_action_group_add_action_with_accel (GTK_ACTION_GROUP (group), gtk_action_group_add_action_with_accel (GTK_ACTION_GROUP (group),
action, action,
@ -316,8 +317,7 @@ gimp_action_group_add_actions (GimpActionGroup *group,
void void
gimp_action_group_add_toggle_actions (GimpActionGroup *group, gimp_action_group_add_toggle_actions (GimpActionGroup *group,
GimpToggleActionEntry *entries, GimpToggleActionEntry *entries,
guint n_entries, guint n_entries)
gpointer user_data)
{ {
gint i; gint i;
@ -340,7 +340,7 @@ gimp_action_group_add_toggle_actions (GimpActionGroup *group,
if (entries[i].callback) if (entries[i].callback)
g_signal_connect (action, "toggled", g_signal_connect (action, "toggled",
entries[i].callback, entries[i].callback,
user_data); group->user_data);
gtk_action_group_add_action_with_accel (GTK_ACTION_GROUP (group), gtk_action_group_add_action_with_accel (GTK_ACTION_GROUP (group),
GTK_ACTION (action), GTK_ACTION (action),
@ -354,8 +354,7 @@ gimp_action_group_add_radio_actions (GimpActionGroup *group,
GimpRadioActionEntry *entries, GimpRadioActionEntry *entries,
guint n_entries, guint n_entries,
gint value, gint value,
GCallback callback, GCallback callback)
gpointer user_data)
{ {
GtkRadioAction *first_action = NULL; GtkRadioAction *first_action = NULL;
GSList *radio_group = NULL; GSList *radio_group = NULL;
@ -394,15 +393,14 @@ gimp_action_group_add_radio_actions (GimpActionGroup *group,
if (callback && first_action) if (callback && first_action)
g_signal_connect (first_action, "changed", g_signal_connect (first_action, "changed",
callback, callback,
user_data); group->user_data);
} }
void void
gimp_action_group_add_enum_actions (GimpActionGroup *group, gimp_action_group_add_enum_actions (GimpActionGroup *group,
GimpEnumActionEntry *entries, GimpEnumActionEntry *entries,
guint n_entries, guint n_entries,
GCallback callback, GCallback callback)
gpointer user_data)
{ {
gint i; gint i;
@ -424,7 +422,7 @@ gimp_action_group_add_enum_actions (GimpActionGroup *group,
if (callback) if (callback)
g_signal_connect (action, "selected", g_signal_connect (action, "selected",
callback, callback,
user_data); group->user_data);
gtk_action_group_add_action_with_accel (GTK_ACTION_GROUP (group), gtk_action_group_add_action_with_accel (GTK_ACTION_GROUP (group),
GTK_ACTION (action), GTK_ACTION (action),
@ -437,8 +435,7 @@ void
gimp_action_group_add_string_actions (GimpActionGroup *group, gimp_action_group_add_string_actions (GimpActionGroup *group,
GimpStringActionEntry *entries, GimpStringActionEntry *entries,
guint n_entries, guint n_entries,
GCallback callback, GCallback callback)
gpointer user_data)
{ {
gint i; gint i;
@ -460,7 +457,7 @@ gimp_action_group_add_string_actions (GimpActionGroup *group,
if (callback) if (callback)
g_signal_connect (action, "selected", g_signal_connect (action, "selected",
callback, callback,
user_data); group->user_data);
gtk_action_group_add_action_with_accel (GTK_ACTION_GROUP (group), gtk_action_group_add_action_with_accel (GTK_ACTION_GROUP (group),
GTK_ACTION (action), GTK_ACTION (action),

View File

@ -40,6 +40,7 @@ struct _GimpActionGroup
GtkActionGroup parent_instance; GtkActionGroup parent_instance;
Gimp *gimp; Gimp *gimp;
gpointer user_data;
GimpActionGroupUpdateFunc update_func; GimpActionGroupUpdateFunc update_func;
}; };
@ -116,6 +117,7 @@ struct _GimpStringActionEntry
GType gimp_action_group_get_type (void); GType gimp_action_group_get_type (void);
GimpActionGroup *gimp_action_group_new (Gimp *gimp, GimpActionGroup *gimp_action_group_new (Gimp *gimp,
const gchar *name, const gchar *name,
gpointer user_data,
GimpActionGroupUpdateFunc update_func); GimpActionGroupUpdateFunc update_func);
GList *gimp_action_groups_from_name (const gchar *name); GList *gimp_action_groups_from_name (const gchar *name);
@ -125,29 +127,24 @@ void gimp_action_group_update (GimpActionGroup *group,
void gimp_action_group_add_actions (GimpActionGroup *group, void gimp_action_group_add_actions (GimpActionGroup *group,
GimpActionEntry *entries, GimpActionEntry *entries,
guint n_entries, guint n_entries);
gpointer user_data);
void gimp_action_group_add_toggle_actions (GimpActionGroup *group, void gimp_action_group_add_toggle_actions (GimpActionGroup *group,
GimpToggleActionEntry *entries, GimpToggleActionEntry *entries,
guint n_entries, guint n_entries);
gpointer user_data);
void gimp_action_group_add_radio_actions (GimpActionGroup *group, void gimp_action_group_add_radio_actions (GimpActionGroup *group,
GimpRadioActionEntry *entries, GimpRadioActionEntry *entries,
guint n_entries, guint n_entries,
gint value, gint value,
GCallback on_change, GCallback on_change);
gpointer user_data);
void gimp_action_group_add_enum_actions (GimpActionGroup *group, void gimp_action_group_add_enum_actions (GimpActionGroup *group,
GimpEnumActionEntry *entries, GimpEnumActionEntry *entries,
guint n_entries, guint n_entries,
GCallback callback, GCallback callback);
gpointer user_data);
void gimp_action_group_add_string_actions (GimpActionGroup *group, void gimp_action_group_add_string_actions (GimpActionGroup *group,
GimpStringActionEntry *entries, GimpStringActionEntry *entries,
guint n_entries, guint n_entries,
GCallback callback, GCallback callback);
gpointer user_data);
void gimp_action_group_set_action_visible (GimpActionGroup *group, void gimp_action_group_set_action_visible (GimpActionGroup *group,
const gchar *action_name, const gchar *action_name,

View File

@ -0,0 +1,196 @@
/* The GIMP -- an image manipulation program
* Copyright (C) 1995 Spencer Kimball and Peter Mattis
*
* gimppluginaction.c
* Copyright (C) 2004 Michael Natterer <mitch@gimp.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#include "config.h"
#include <gtk/gtk.h>
#include "widgets-types.h"
#include "core/gimpmarshal.h"
#include "gimppluginaction.h"
enum
{
SELECTED,
LAST_SIGNAL
};
enum
{
PROP_0,
PROP_PROC_DEF
};
static void gimp_plug_in_action_init (GimpPlugInAction *action);
static void gimp_plug_in_action_class_init (GimpPlugInActionClass *klass);
static void gimp_plug_in_action_set_property (GObject *object,
guint prop_id,
const GValue *value,
GParamSpec *pspec);
static void gimp_plug_in_action_get_property (GObject *object,
guint prop_id,
GValue *value,
GParamSpec *pspec);
static void gimp_plug_in_action_activate (GtkAction *action);
static GtkActionClass *parent_class = NULL;
static guint action_signals[LAST_SIGNAL] = { 0 };
GType
gimp_plug_in_action_get_type (void)
{
static GType type = 0;
if (!type)
{
static const GTypeInfo type_info =
{
sizeof (GimpPlugInActionClass),
(GBaseInitFunc) NULL,
(GBaseFinalizeFunc) NULL,
(GClassInitFunc) gimp_plug_in_action_class_init,
(GClassFinalizeFunc) NULL,
NULL,
sizeof (GimpPlugInAction),
0, /* n_preallocs */
(GInstanceInitFunc) gimp_plug_in_action_init,
};
type = g_type_register_static (GTK_TYPE_ACTION,
"GimpPlugInAction",
&type_info, 0);
}
return type;
}
static void
gimp_plug_in_action_class_init (GimpPlugInActionClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
GtkActionClass *action_class = GTK_ACTION_CLASS (klass);
parent_class = g_type_class_peek_parent (klass);
object_class->set_property = gimp_plug_in_action_set_property;
object_class->get_property = gimp_plug_in_action_get_property;
action_class->activate = gimp_plug_in_action_activate;
g_object_class_install_property (object_class, PROP_PROC_DEF,
g_param_spec_pointer ("proc-def",
NULL, NULL,
G_PARAM_READWRITE));
action_signals[SELECTED] =
g_signal_new ("selected",
G_TYPE_FROM_CLASS (klass),
G_SIGNAL_RUN_FIRST,
G_STRUCT_OFFSET (GimpPlugInActionClass, selected),
NULL, NULL,
gimp_marshal_VOID__POINTER,
G_TYPE_NONE, 1,
G_TYPE_POINTER);
}
static void
gimp_plug_in_action_init (GimpPlugInAction *action)
{
action->proc_def = NULL;
}
static void
gimp_plug_in_action_get_property (GObject *object,
guint prop_id,
GValue *value,
GParamSpec *pspec)
{
GimpPlugInAction *action = GIMP_PLUG_IN_ACTION (object);
switch (prop_id)
{
case PROP_PROC_DEF:
g_value_set_pointer (value, action->proc_def);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
static void
gimp_plug_in_action_set_property (GObject *object,
guint prop_id,
const GValue *value,
GParamSpec *pspec)
{
GimpPlugInAction *action = GIMP_PLUG_IN_ACTION (object);
switch (prop_id)
{
case PROP_PROC_DEF:
action->proc_def = g_value_get_pointer (value);
break;
default:
G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
break;
}
}
GimpPlugInAction *
gimp_plug_in_action_new (const gchar *name,
const gchar *label,
const gchar *tooltip,
const gchar *stock_id,
PlugInProcDef *proc_def)
{
return g_object_new (GIMP_TYPE_PLUG_IN_ACTION,
"name", name,
"label", label,
"tooltip", tooltip,
"stock_id", stock_id,
"proc-def", proc_def,
NULL);
}
static void
gimp_plug_in_action_activate (GtkAction *action)
{
GimpPlugInAction *plug_in_action = GIMP_PLUG_IN_ACTION (action);
gimp_plug_in_action_selected (plug_in_action);
}
void
gimp_plug_in_action_selected (GimpPlugInAction *action)
{
g_return_if_fail (GIMP_IS_PLUG_IN_ACTION (action));
g_signal_emit (action, action_signals[SELECTED], 0, action->proc_def);
}

View File

@ -0,0 +1,64 @@
/* The GIMP -- an image manipulation program
* Copyright (C) 1995 Spencer Kimball and Peter Mattis
*
* gimppluginaction.h
* Copyright (C) 2004 Michael Natterer <mitch@gimp.org>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
#ifndef __GIMP_PLUG_IN_ACTION_H__
#define __GIMP_PLUG_IN_ACTION_H__
#include <gtk/gtkaction.h>
#define GIMP_TYPE_PLUG_IN_ACTION (gimp_plug_in_action_get_type ())
#define GIMP_PLUG_IN_ACTION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), GIMP_TYPE_PLUG_IN_ACTION, GimpPlugInAction))
#define GIMP_PLUG_IN_ACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), GIMP_TYPE_PLUG_IN_ACTION, GimpPlugInActionClass))
#define GIMP_IS_PLUG_IN_ACTION(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GIMP_TYPE_PLUG_IN_ACTION))
#define GIMP_IS_PLUG_IN_ACTION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((obj), GIMP_TYPE_PLUG_IN_ACTION))
#define GIMP_PLUG_IN_ACTION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), GIMP_TYPE_PLUG_IN_ACTION, GimpPlugInActionClass))
typedef struct _GimpPlugInActionClass GimpPlugInActionClass;
struct _GimpPlugInAction
{
GtkAction parent_instance;
PlugInProcDef *proc_def;
};
struct _GimpPlugInActionClass
{
GtkActionClass parent_class;
void (* selected) (GimpPlugInAction *action,
PlugInProcDef *proc_def);
};
GType gimp_plug_in_action_get_type (void);
GimpPlugInAction * gimp_plug_in_action_new (const gchar *name,
const gchar *label,
const gchar *tooltip,
const gchar *stock_id,
PlugInProcDef *proc_def);
void gimp_plug_in_action_selected (GimpPlugInAction *action);
#endif /* __GIMP_PLUG_IN_ACTION_H__ */

View File

@ -36,6 +36,7 @@ typedef struct _GimpMenuFactory GimpMenuFactory;
typedef struct _GimpActionFactory GimpActionFactory; typedef struct _GimpActionFactory GimpActionFactory;
typedef struct _GimpActionGroup GimpActionGroup; typedef struct _GimpActionGroup GimpActionGroup;
typedef struct _GimpEnumAction GimpEnumAction; typedef struct _GimpEnumAction GimpEnumAction;
typedef struct _GimpPlugInAction GimpPlugInAction;
typedef struct _GimpStringAction GimpStringAction; typedef struct _GimpStringAction GimpStringAction;
typedef struct _GimpUIManager GimpUIManager; typedef struct _GimpUIManager GimpUIManager;
@ -145,9 +146,8 @@ typedef struct _GimpSessionInfoAux GimpSessionInfoAux;
/* function types */ /* function types */
typedef void (* GimpActionGroupSetupFunc) (GimpActionGroup *factory, typedef void (* GimpActionGroupSetupFunc) (GimpActionGroup *group);
gpointer data); typedef void (* GimpActionGroupUpdateFunc) (GimpActionGroup *group,
typedef void (* GimpActionGroupUpdateFunc) (GimpActionGroup *factory,
gpointer data); gpointer data);
typedef void (* GimpUIManagerSetupFunc) (GimpUIManager *manager, typedef void (* GimpUIManagerSetupFunc) (GimpUIManager *manager,