Commit graph

30 commits

Author SHA1 Message Date
Jehan
811d356953 app: GimpAction now has a "reason" parameter to explain being disabled.
In some cases, in particular for actions generated from plug-in
procedure right now, we were displaying the reason of the insensitivity
(typically right now, only the drawable type is cited). This was done by
appending the reason to the tooltip, separated by 2 newlines, which
resulted in extra ugly design, no nice way to style this info directly
(with pango for instance if the widget display allows it, or on a
separate info widget in a possible future, or whatnot).

Also it would mean that the action search could match a disabled action
by mistake if a search word happens to be in the reason message.

This improves the situation with the following changes:
* gimp_action_set_sensitive() now takes an optional reason string to set
  the reason message.
* Same for gimp_action_group_set_action_sensitive().
* gimp_action_get_sensitive() returns an optional reason string.
* gimp_procedure_get_sensitive()'s tooltip return value now becomes a
  reason (it won't contain anymore the tooltip and the reason
  concatenated, only the reason for separate processing).
2021-04-23 19:43:30 +02:00
Jehan
2cae9b9acf app: make "gegl:introspect" an optional operation dependency.
Check at runtime for the operation availability and set the "Show Image
Graph" action active depending on this check.

This goes with discussions to make this operation optional with a
runtime check for the tool `dot`.
See: https://gitlab.gnome.org/GNOME/gegl/-/merge_requests/84
2020-12-14 20:01:45 +01:00
Michael Natterer
3b6b3fc189 app: GtkAction -> GAction madness part two
Change all action callbacks so they can be invoked by a GAction:

- add GimpActionCallback typedef:
  void (* cb) (GimpAction*, GVariant*, gpointer)
- change all action callbacks to the GimpActionCallback signature
- add "gimp-activate" and "gimp-change-state" signals to GimpAction,
  with the same signature as the resp. GAction signals
- remove all other custom action signals and only use the new
  GimpAction signals
- pass around appropriate GVariants containing booleans, int32,
  strings
- badly hack around to force a GimpProcedure pointer into a
  uint64 variant
- remove all G_CALLBACK() casts from all action callbacks,
  they all have the same signature now
2019-07-04 01:11:48 +02:00
Michael Natterer
5f700549e7 Change the license URL from http://www.gnu.org/licenses/ to https:// 2018-07-11 23:29:46 +02:00
Michael Natterer
669127dbd6 app, menus: add new menu item Debug -> Start GtkInspector
so it can by launchaed at any time even if not requested via
GTK_DEBUG=interactive and without enabling the magic keyboard
shortcut.
2018-06-20 20:43:41 +02:00
luz.paz
4a77ff2d3d Bug 795557 - Misc. typo fixes in source, comments and doxygen (pt3)
Found via `codespell` and grep.
2018-04-25 23:49:06 +02:00
Ell
53c145c0be app: add --show-debug-menu command-line option
The debug menu is currently not included in stable versions.

Include the menu unconditionally, but hide it, and its associated
actions, by default in stable versions.  Allow enabling the menu
using a new --show-debug-menu command-line option, in the same vein
as --show-playground.
2018-03-29 05:26:03 -04:00
Michael Natterer
41148e8996 app: bring back Debug -> Benchmark Projection 2014-06-02 21:32:00 +02:00
Michael Natterer
aea161c9a5 app: also include <gegl.h> when we include "libgimpwidgets/gimpwidgets.h" 2013-11-01 22:28:18 +01:00
Michael Natterer
eec5e9968e app: remove Debug -> Benchmark Projection 2012-05-20 20:13:59 +02:00
Martin Nordholts
1c33708f5a app: Add File -> Debug -> Dump Keyboard Shortcuts menu command
Add a Debug menu item 'Dump Keyboard Shortcuts' that can for example
be used to see what keyboard shortcuts that are unused or to simply
get an overview of what current keyboard shortcuts we hvae. Based on
code in gimp_action_view_new().
2009-05-08 20:13:27 +02:00
Martin Nordholts
c9b62622db Add a Show Image Graph item to the Debug menu
Add a Show Image Graph item to the Debug menu that creates a new image
showing the GEGL graph for the image. Would benefit from an enhanced
gegl:introspect op with a clearer graph, but still quite interesting
in its current shape.

svn path=/trunk/; revision=28069
2009-02-23 20:43:30 +00:00
Michael Natterer
d9b5207aa2 Change licence to GPLv3 (and to LGPLv3 for libgimp).
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
2009-01-17 22:28:01 +00:00
Sven Neumann
74e76f2c6a added an extra parameter for the translation context to all
2008-12-03  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpactiongroup.[ch]: added an extra parameter for
	the translation context to all gimp_action_group_add methods.

	* app/actions/*.c: added a translation context to all action
	labels. Also unified and improved the labels and tooltips in a 
few
	places.


svn path=/trunk/; revision=27754
2008-12-03 15:27:42 +00:00
Martin Nordholts
a8c54971e1 Fix mnemonics for the Debug sub menu and the Benchmark Projection item.
* app/actions/debug-actions.c: Fix mnemonics for the Debug sub
menu and the Benchmark Projection item.

svn path=/trunk/; revision=27656
2008-11-15 12:31:36 +00:00
Martin Nordholts
7c351200b4 menus/image-menu.xml.in app/actions/debug-actions.c Create dump and
* menus/image-menu.xml.in
* app/actions/debug-actions.c
* app/actions/debug-commands.c: Create dump and non-dump
groups. Also added a tooltip to the Benchmark Projection action
and removed report of number of layers.

svn path=/trunk/; revision=27343
2008-10-20 17:21:21 +00:00
Michael Natterer
c75ce5af09 app/actions/debug-actions.c app/actions/debug-commands.[ch] rename
2008-10-19  Michael Natterer  <mitch@gimp.org>

	* app/actions/debug-actions.c
	* app/actions/debug-commands.[ch]
	* menus/image-menu.xml.in: rename
	debug-dump-projection-benchmarking to debug-benchmark-projection.


svn path=/trunk/; revision=27334
2008-10-19 17:05:03 +00:00
Martin Nordholts
9d91e6b343 menus/image-menu.xml.in app/actions/debug-actions.c
* menus/image-menu.xml.in
* app/actions/debug-actions.c
* app/actions/debug-commands.h
* app/actions/debug-commands.c: Added a 'Dump Projection
Benchmarking' item to the Debug Menu so that we can test how
different GEGL graph setups affect performance.

svn path=/trunk/; revision=27317
2008-10-19 07:59:08 +00:00
Sven Neumann
a8cc137009 Move the "Use GEGL" check-box to the Colors menu (bug #548760):
2008-09-23  Sven Neumann  <sven@gimp.org>

	Move the "Use GEGL" check-box to the Colors menu (bug #548760):

	* app/actions/Makefile.am
	* app/actions/config-actions.[ch]
	* app/actions/config-commands.[ch]: new files holding the 
"config"
	action group that includes the "use-gegl" toggle action.

	* app/actions/debug-actions.c
	* app/actions/debug-commands.[ch]: removed the "use-gegl" 
action
	here.

	* app/menus/menus.c
	* app/actions/actions.c: added the new action group.

	* app/widgets/gimphelp-ids.h: added a help ID for the 
"use-gegl"
	action.

	* menus/image-menu.xml.in: moved the "Use GEGL" check-box to 
the
	Colors menu.


svn path=/trunk/; revision=27035
2008-09-23 07:02:24 +00:00
Sven Neumann
bf89d956a4 removed the "Use GEGL" check-box from the toolbox.
2008-08-22  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimptoolbox.c: removed the "Use GEGL" check-box
	from the toolbox.

	* app/config/gimpcoreconfig.c: changed the default for 
"use-gegl"
	to FALSE (in preparation of the 2.6 release).

	* app/actions/debug-commands.[ch]
	* app/actions/debug-actions.c
	* menus/image-menu.xml.in: added a "Use GEGL" check-box to the
	Debug menu. Temporary solution until a final decision is made.


svn path=/trunk/; revision=26711
2008-08-22 15:33:02 +00:00
Sven Neumann
41237259c9 In all files, changed the standard copyright notice to say "GIMP - The GNU
2006-12-09  Sven Neumann  <sven@gimp.org>

        * In all files, changed the standard copyright notice to say
        "GIMP - The GNU Image Manipulation Program".
2006-12-09 21:33:38 +00:00
Michael Natterer
42e9548379 app/actions/debug-actions.c app/actions/debug-commands.[ch] added "Dump
2006-09-05  Michael Natterer  <mitch@gimp.org>

	* app/actions/debug-actions.c
	* app/actions/debug-commands.[ch]
	* menus/toolbox-menu.xml.in: added "Dump Attached Data" menu item
	which prints the stuff that is attached to the gimp and
	user_context objects.
2006-09-05 21:36:20 +00:00
Sven Neumann
86d022aee4 no need to be extra concise here.
2006-06-16  Sven Neumann  <sven@gimp.org>

	* app/actions/debug-actions.c: no need to be extra concise here.
2006-06-16 09:24:43 +00:00
Sven Neumann
12920b5a17 take const arrays of action entries.
2006-04-10  Sven Neumann  <sven@gimp.org>

	* app/widgets/gimpactiongroup.[ch]: take const arrays of action
	entries.

	* app/actions/*-actions.c: declare action arrays as const.
2006-04-10 08:06:18 +00:00
Hans Breuer
b56eb39ead updated app/actions/makefile.msc app/menus/makefile.msc : (new files)
2004-07-11  Hans Breuer  <hans@breuer.org>

	* **/makefile.msc : updated
	  app/actions/makefile.msc app/menus/makefile.msc : (new files)
	  app/actions/Makefile.msc app/menus/Makefile.am : added to EXTRA_DIST

	* libgimpbase/gimputils.c libgimpwidgets/gimpmemsizeentry.c
	  app/widgets/gimppropwidgets.c : bumped compiler version check,
	msvc6 still can't cast from unsigned __int64 to double

	* app/actions/debug-actions.c : only use debug_*_callback
	and thus debug_action if ENABLE_DEBUG_MENU

	* app/core/gimpalette-import.c : added gimpwin32-io.h

	* plug-ins/common/convmatrix.c : s/snprintf/g_snprintf/

	* plug-ins/common/screenshot.c : make it compile with msvc,
	but still no win32 specific implementation ...
2004-07-11 21:53:17 +00:00
Michael Natterer
9d08d3ed43 app/actions/debug-actions.c app/actions/debug-commands.[ch] added action &
2004-05-05  Michael Natterer  <mitch@gimp.org>

	* app/actions/debug-actions.c
	* app/actions/debug-commands.[ch]
	* menus/toolbox-menu.xml.in: added action & callback which XML-dump
	all UI managers.
2004-05-05 15:54:42 +00:00
Michael Natterer
4654280114 Switch from GtkItemFactory to GtkUIManager. The migration is almost
2004-04-29  Michael Natterer  <mitch@gimp.org>

	Switch from GtkItemFactory to GtkUIManager. The migration is
	almost complete, still stuff missing/incomplete, definitely added
	a bunch of new bugs...

	* app/actions/*-commands.[ch]: converted all callback from
	GtkItemFactory callbacks to GtkAction callbacks.

	* app/actions/debug-actions.c
	* app/actions/gradient-editor-actions.c
	* app/actions/help-actions.c
	* app/actions/plug-in-actions.c
	* app/actions/qmask-actions.c
	* app/actions/tool-options-actions.c: various fixes.

	* app/display/gimpdisplay.[ch]
	* app/display/gimpdisplayshell-appearance.[ch]
	* app/display/gimpdisplayshell-callbacks.c
	* app/display/gimpdisplayshell.[ch]: move everything from
	GtkItemFactory to GtkUIManager.

	* app/gui/dialogs.[ch]: added new function dialogs_get_toolbox().
	Needed because the action callbacks don't have a widget parameter
	and sometimes we need a parent window for showing dialogs.

	* app/gui/Makefile.am
	* app/gui/brushes-menu.[ch]
	* app/gui/buffers-menu.[ch]
	* app/gui/channels-menu.[ch]
	* app/gui/colormap-editor-menu.[ch]
	* app/gui/dialogs-menu.[ch]
	* app/gui/documents-menu.[ch]
	* app/gui/error-console-menu.[ch]
	* app/gui/fonts-menu.[ch]
	* app/gui/gradient-editor-menu.[ch]
	* app/gui/gradients-menu.[ch]
	* app/gui/images-menu.[ch]
	* app/gui/layers-menu.[ch]
	* app/gui/palette-editor-menu.[ch]
	* app/gui/palettes-menu.[ch]
	* app/gui/patterns-menu.[ch]
	* app/gui/qmask-menu.[ch]
	* app/gui/templates-menu.[ch]
	* app/gui/vectors-menu.[ch]: removed these files.

	* app/gui/gui.c: create a global UI manager for the image popup
	menu and the toolbox menubar.

	* app/gui/menus.[ch]: removed all GtkItemFactory code.

	* app/gui/image-menu.[ch]
	* app/gui/toolbox-menu.[ch]: removed everything except the trivial
	setup_funcs.

	* app/gui/file-open-menu.c
	* app/gui/file-save-menu.c
	* app/gui/tool-options-menu.c: don't use the macros from menus.h
	any more, they are gone.

	* app/gui/gui-vtable.c
	* app/gui/plug-in-menus.[ch]: create/destroy the dynamic plug-in
	menu entries.

	* app/tools/gimpimagemaptool.c: s/gimp_item_factory_update/
	gimp_ui_manager_update/g

	* app/widgets/gimpuimanager.[ch]: added API to get an action
	group by name.

	* app/widgets/gimpmenufactory.c: don't choke on the item_factory
	entries being NULL.

	* app/widgets/gimpactiongroup.c: make sure booleans set using
	g_object_set() only have TRUE or FALSE values.

	* app/widgets/gimpcolormapeditor.c
	* app/widgets/gimpcomponenteditor.c
	* app/widgets/gimpcontainereditor.[ch]
	* app/widgets/gimpcontainergridview.c
	* app/widgets/gimpcontainertreeview.c
	* app/widgets/gimpdockable.[ch]
	* app/widgets/gimpdocked.[ch]
	* app/widgets/gimpeditor.[ch]
	* app/widgets/gimperrorconsole.c
	* app/widgets/gimpgradienteditor.c
	* app/widgets/gimpitemtreeview.c
	* app/widgets/gimppaletteeditor.c
	* app/widgets/gimptoolbox.c
	* app/widgets/gimptooloptionseditor.c: removed all GtkItemFactory
	code and enable the #if 0'ed UI manager stuff.

	* menus/gradient-editor-menu.xml: fixed typos.

	* menus/image-menu.xml: duplicate everything so we have both
	an image menubar and an image popup menu. Badly cries for an
	XSL processor.

	* menus/toolbox-menu.xml: added an "Extensions" placeholder.
2004-04-29 12:52:29 +00:00
Michael Natterer
aae726ee94 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.
2004-04-27 13:55:26 +00:00
Michael Natterer
661f6ddeb8 removed...
2004-04-20  Michael Natterer  <mitch@gimp.org>

	* app/gui/*-commands.[ch]: removed...

	* app/actions/*-commands.[ch]: ...and added here.

	* app/gui/Makefile.am
	* app/gui/*-menu.c
	* app/gui/dialogs-constructors.c
	* app/gui/gui.c
	* app/gui/menus.c
	* app/actions/Makefile.am
	* app/actions/*-actions.c: changed accordingly.

	* app/actions/plug-in-actions.[ch]
	* app/actions/tools-actions.[ch]: new files.

	* app/Makefile.am: had to add more -u evilness because gui/
	and actions/ have cyclic dependencies.

	* menus/image-menu.xml: added some more items.
2004-04-20 13:25:55 +00:00
Michael Natterer
8848558f95 More GtkAction stuff (still unused):
2004-04-19  Michael Natterer  <mitch@gimp.org>

	More GtkAction stuff (still unused):

	* configure.in: added new directories menus/ and app/actions/

	* Makefile.am: build menus/

	* menus/.cvsignore
	* menus/Makefile.am
	* menus/*-menu.xml: new files: XML menu descriptions for each menu
	which is now defined in gui/*-menu.c.

	* app/widgets/widgets-types.h: some typedefs for GimpActionGroup.

	* app/widgets/gimpactiongroup.[ch]: added a "Gimp" construct-only
	property. Added APIs to set actions visible/sensitive/active
	and an unimplemented stub for setting the action's color.

	* app/Makefile.am: build actions/ and link libappactions.a

	* app/actions/.cvsignore
	* app/actions/Makefile.am
	* app/actions/*-actions.[ch]: new files: GtkActions for each
	*-commands.c file in gui/. Ported all "update" functions from the
	*-menu.c files.
	(everything completely unused, untested and partly #if 0'ed)

	* app/core/gimpimage.[ch]: for reasons of (action-) symmetry, added
	API to raise/lower channels/vectors to top/bottom.

	* app/gui/channels-commands.[ch]
	* app/gui/vectors-commands.[ch]: added callbacks for the new
	to top/bottom functions.

	* app/gui/Makefile.am
	* app/gui/dockable-commands.[ch]: new files split out of
	dialogs-commands.[ch].

	* app/gui/dialogs-commands.[ch]
	* app/gui/dialogs-menu.c: changed accordingly.

	* app/gui/edit-commands.[ch]: added edit_paste_into_cmd_callback()
	and remove usage of "guint action".

	* app/gui/image-menu.c: changed accordingly.

	* app/gui/palette-editor-commands.[ch]: split
	+palette_editor_new_color_cmd_callback() into separate callbacks
	for adding from FG and BG.

	* app/gui/palette-editor-menu.c: changed accordingly.
2004-04-19 14:54:24 +00:00