added signal "update" which is G_SIGNAL_RUN_LAST, so handlers can hook in

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

	* app/widgets/gimpuimanager.[ch]: added signal "update" which
	is G_SIGNAL_RUN_LAST, so handlers can hook in before and after
	the default implementation. Update the action groups
	in the default implementations.

	(gimp_ui_manager_ui_get): make sure we always return a widget
	by calling gtk_ui_manager_ensure_update().

	* app/widgets/gimpdockable.c (gimp_dockable_show_menu): make
	sure the dockable menu is loaded before trying to access its
	widgets/actions.

	Resurrected the dynamic tool options menus:

	* app/actions/tool-options-actions.c: dynamically destroy/create
	actions for the tool options' presets.

	* app/actions/tool-options-commands.[ch]: all callbacks are
	GimpEnumAction::selected() callbacks now.

	* app/gui/tool-options-menu.[ch]: connect and connect_after to
	GimpUIManager::update(). Remove the old preset menu items
	in the former callback, create the new ones in the latter.
	Removed the last item factory entries.

	* app/gui/menus.c
	* app/widgets/gimptooloptionseditor.c: changed accordingly.
This commit is contained in:
Michael Natterer
2004-04-30 15:29:11 +00:00
committed by Michael Natterer
parent 9f5496147d
commit 7d7ef188fa
14 changed files with 422 additions and 505 deletions

View File

@ -20,14 +20,8 @@
#define __TOOL_OPTIONS_MENU_H__
extern GimpItemFactoryEntry tool_options_menu_entries[];
extern gint n_tool_options_menu_entries;
void tool_options_menu_setup (GimpItemFactory *factory,
gpointer callback_data);
void tool_options_menu_update (GtkItemFactory *factory,
gpointer update_data);
void tool_options_menu_setup (GimpUIManager *manager,
const gchar *ui_path);
#endif /* __TOOL_OPTIONS_MENU_H__ */