In order to let tests run against the source dir, allow them to
override the menus directory. Add utility functions for this and
adjust gimpuimanager.c accordingly.
Get rid of artificial compiler warnings generated with the #warning
directive. They pollute the build output and don't work as incentives
for fixing stuff.
2009-01-24 Michael Natterer <mitch@gimp.org>
Bug 568890 – don't rely on GtkAction implementation details
* app/widgets/gimpuimanager.c (gimp_ui_manager_menu_item_select):
use gtk_widget_get_action() instead of g_object_get_data(),
which relies on the name of the data key.
svn path=/trunk/; revision=27939
2009-01-17 Michael Natterer <mitch@gimp.org>
* all files with a GPL header and all COPYING files:
Change licence to GPLv3 (and to LGPLv3 for libgimp).
Cleaned up some copyright headers and regenerated the parsers in
the ImageMap plugin.
svn path=/trunk/; revision=27913
2008-08-27 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpuimanager.c (gimp_ui_manager_item_key_press):
try the find_widget_under_pointer() hack only if the menu item's
parent is really a GtkMenu (not a GtkMenuBar). Fixes crash spotted
by rubikcube.
svn path=/trunk/; revision=26796
2008-08-20 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpuimanager.c: reindent prototypes.
Steal find_widget_under_pointer() from gtktooltip.c
(gimp_ui_manager_item_key_press): use the function to invoke help
for the widget under the pointer if there is no selected menu
item. Makes F1 work on insensitive menu items.
svn path=/trunk/; revision=26684
2008-01-10 Sven Neumann <sven@gimp.org>
* app/widgets/gimpuimanager.c (gimp_ui_manager_ui_popup):
gracefully deal with a NULL return value from
gtk_ui_manager_get_widget(). This happens when the XML menu
definitions are not found.
svn path=/trunk/; revision=24594
2007-03-31 Michael Natterer <mitch@gimp.org>
Statusbar messages shouldn't depend on the emission of unrelated
signals:
* app/widgets/gimpuimanager.c (gimp_ui_manager_connect_proxy):
connect to the menu items' "select" and "deselect" signals here...
(gimp_ui_manager_item_realize): ...instead of here.
svn path=/trunk/; revision=22206
2006-12-15 Sven Neumann <sven@gimp.org>
* app/widgets/gimpuimanager.[ch]: added new function
gimp_ui_manager_activate_action() as a shortcut for looking up the
action and activating it.
* app/actions/dialogs-actions.c
* app/display/gimpdisplayshell-close.c
* app/widgets/gimpcolormapeditor.c
* app/widgets/gimpitemtreeview.c
* app/widgets/gimppaletteeditor.c
* app/widgets/gimptoolbox.c
* app/widgets/gimptooloptionseditor.c: use the new function.
* app/actions/file-commands.c
* app/dialogs/file-save-dialog.c: minor code cleanup.
2006-03-10 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpuimanager.c: connect to the menu items' "select"
and "deselect" signals instead of "enter-notify-event" and
"leave-notify-event", so tooltips work with keynav.
2006-03-09 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpuimanager.[ch]: added "show-tooltip" and
"hide-tooltip" signals. Connect to each menu item's
enter-notify-event and leave-notify-event. On enter, emit
show-tooltip, on leave emit hide-tooltip.
* app/display/gimpdisplayshell.c: connect to the menubar ui
manager's show-tooltip and hide-tooltip signals and show the tip
in the display's status bar.
2006-01-18 Michael Natterer <mitch@gimp.org>
* app/config/config-types.c: define GIMP_PARAM_STATIC_STRINGS
which is G_PARAM_STATIC_NAME|NICK|BLURB. Also define
GIMP_PARAM_READABLE, _WRITABLE and _READWRITE which include
GIMP_PARAM_STATIC_STRINGS.
* app/*/*.c: use them for all object properties so their
strings are not copied.
2005-08-06 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpuimanager.c (gimp_ui_manager_ui_popup): applied
patch from Robert Ögren that frees the event returned by
gtk_get_current_event(). Fixes bug #312017.
2005-05-11 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpuimanager.c (gimp_ui_manager_find_action): allow
to pass a NULL group_name and iterate all action groups to find
the action in that case.
* app/widgets/gimpcontrollereditor.c: show the action's stock icon
in the "Action" column, using above function.
2005-02-08 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpuimanager.[ch]: removed gimp_ui_manager_ui_get()
and implement the new virtual functions GtkUIManager::get_widget()
and ::get_action() instead. Menu loading happens transparently now.
* app/display/gimpdisplayshell.c
* app/widgets/gimpdockable.c
* app/widgets/gimptexteditor.c
* app/widgets/gimptoolbox.c
* app/widgets/gimptooloptionseditor.c: use
gtk_ui_manager_get_widget() instead of the removed
gimp_ui_manager_ui_get().
2004-12-08 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpuimanager.[ch]: renamed
gimp_ui_manager_get_action() to gimp_ui_manager_find_action().
* app/widgets/gimpcolormapeditor.c
* app/widgets/gimpitemtreeview.c
* app/widgets/gimppaletteeditor.c
* app/widgets/gimptoolbox.c
* app/widgets/gimptooloptionseditor.c
* app/display/gimpdisplayshell-close.c: changed accordingly.
(this change is quite useless as it stands, but will help keeping
the diff between 2.2 and 2.3 small as soon as we're branched).
* app/widgets/gimpcolormapeditor.c
(gimp_colormap_preview_button_press): invoke the "edit-color", not
"new-color" action upon double click.
(palette_editor_select_entry): update the ui manager after
selecting the entry so the entry-specific actions become sensitive
if there was no entry selected before.
2004-10-29 Sven Neumann <sven@gimp.org>
* app/widgets/gimpuimanager.c (gimp_ui_manager_entry_load)
* app/widgets/gimpclipboard.c (gimp_clipboard_init): only be
verbose on request.
* app/plug-in/plug-in.c (plug_in_close): turned warnings into
messages and respect gimp->be_verbose.
2004-10-16 Michael Natterer <mitch@gimp.org>
* app/widgets/gimpuimanager.[ch]: added utility function
gimp_ui_manager_get_action() which takes "group_name" and
"action_name".
* app/display/gimpdisplayshell-close.c
* app/widgets/gimpitemtreeview.c
* app/widgets/gimptoolbox.c
* app/widgets/gimptooloptionseditor.c: use it.
2004-09-16 Michael Natterer <mitch@gimp.org>
* configure.in: depend on GLib >= 2.4.5 and GTK+ >= 2.4.4.
* app/gui/gui.c: changed accordingly.
* app/sanity.c: ditto. Added check for GLib and put each check
into its own utility function. Enabled #if 0'ed check for
FreeType >= 6.2.7.
* app/widgets/gimpactiongroup.c
* app/widgets/gimpcursor.c
* app/widgets/gimpselectiondata.c
* app/widgets/gimpuimanager.c
* app/widgets/gimpwidgets-utils.c: removed workarounds for library
versions we refuse to start with.
2004-05-24 Michael Natterer <mitch@gimp.org>
* app/config/gimpconfigwriter.c
* app/core/gimpstrokeoptions.c
* app/widgets/gimpactiongroup.c
* app/widgets/gimpcolorframe.h
* app/widgets/gimpcolorpanel.h
* app/widgets/gimpcontainerview.[ch]
* app/widgets/gimptooldialog.h
* app/widgets/gimpuimanager.c
* app/widgets/widgets-types.h: fixed various small issues I
stumbled across when updating the API reference for app/.
2004-05-17 Michael Natterer <mitch@gimp.org>
* menus/menus.xsl: put the image popup menu into a dummy menubar
to work around the silly GtkUIManager restriction that popup menus
can't have tearoff items.
* app/menus/menus.c
* app/menus/image-menu.c
* app/display/gimpdisplayshell-callbacks.c
* app/gui/gui-vtable.c
* app/menus/plug-in-menus.c: changed accordingly.
* app/gui/gui.c (gui_restore_after_callback): connect to
"notify::tearoff-menus" of GimpGuiConfig and reconfigure the
global image UI manager accordingly.
* app/config/gimpguiconfig.c: removed GIMP_PARAM_RESTART from the
"tearoff-menus" property because GtkUIManager can change this on
the fly.
* app/display/gimpdisplayshell.[ch]: added the menubar to the
GimpDisplayShell struct. Some cleanup in gimp_display_shell_new().
* app/display/gimpdisplayshell-appearance.c
(gimp_display_shell_set_show_menubar): use shell->menubar instead
of asking the UI manager.
* app/widgets/gimpuimanager.[ch]: changed gimp_ui_manager_ui_get()
to transparently load the XML files even if a sub-widget was
requested. Reordered parameters of gimp_ui_manager_ui_popup().
Lots of internal cleanups.
* app/widgets/gimpdockable.c
* app/widgets/gimptooloptionseditor.c: simplified accordingly.
* app/widgets/gimpeditor.[ch]: added new function
gimp_editor_popup_menu() which takes a GimpMenuPositionFunc and
updates/shows the editor's menu.
* app/widgets/gimpcolormapeditor.c
* app/widgets/gimpcomponenteditor.c
* app/widgets/gimpcontainereditor.c
* app/widgets/gimpcontainergridview.c
* app/widgets/gimpcontainertreeview.c
* app/widgets/gimperrorconsole.c
* app/widgets/gimpgradienteditor.c
* app/widgets/gimpitemtreeview.c
* app/widgets/gimppaletteeditor.c: use gimp_editor_popup_menu().
* app/widgets/gimptoolbox.c: moved all code from
gimp_toolbox_new() to GObject::constructor().